aboutsummaryrefslogtreecommitdiff
path: root/gdb/values.c
diff options
context:
space:
mode:
authorPeter Schauer <Peter.Schauer@mytum.de>1994-10-15 10:50:07 +0000
committerPeter Schauer <Peter.Schauer@mytum.de>1994-10-15 10:50:07 +0000
commit07aa9fdc6b069aa8c02333a37e5da34f19e10f8c (patch)
treebb8cf3a0a24744ae93f0bd11c81f04bbcb9dcea2 /gdb/values.c
parentdf3cf84a351b2ea91a4b175ca5a22346cd405469 (diff)
downloadgdb-07aa9fdc6b069aa8c02333a37e5da34f19e10f8c.zip
gdb-07aa9fdc6b069aa8c02333a37e5da34f19e10f8c.tar.gz
gdb-07aa9fdc6b069aa8c02333a37e5da34f19e10f8c.tar.bz2
* eval.c (evaluate_subexp): Make fnptr a LONGEST instead
of using longest_to_int. * infcmd.c (run_stack_dummy): Reinstate set_current_frame call, mips and alpha targets need the real breakpoint pc for creating the breakpoint frame. * stack.c (return_command): Cast return value to the return type of the function from which we return. * values.c (set_return_value): Pass VALUE_CONTENTS unmodified to STORE_RETURN_VALUE. * symtab.c (lookup_symbol): Remove search for `static mangled symbols', the search for `static symbols' already looks for mangled and demangled symbols via lookup_block_symbol. * valarith.c (value_binop): Use ANSI C arithmetic conversions when performing integral evaluations, implement BINOP_EQUAL and BINOP_LESS. (value_equal, value_less): Use value_binop to perform the comparison if both operands have TYPE_CODE_INT. * rs6000-tdep.c (pop_frame): Make sure all registers are valid, as they are written back later. Handle sp restore for frameless functions. Use fdata.nosavedpc instead of fdata.frameless to determine if the pc has been saved. (function_frame_info): Handle `mr r31,r1', which is generated by gcc-2.6, as a synonym for `oril r31,r1,0'. (skip_trampoline_code): Handle shared library trampolines. * xcoffread.c (read_xcoff_symtabs): Record XMC_GL symbols with their real name. Enables setting of breakpoints in shared libraries before the executable is run.
Diffstat (limited to 'gdb/values.c')
-rw-r--r--gdb/values.c16
1 files changed, 1 insertions, 15 deletions
diff --git a/gdb/values.c b/gdb/values.c
index 916bf6f..aa4a4f2 100644
--- a/gdb/values.c
+++ b/gdb/values.c
@@ -1466,8 +1466,6 @@ set_return_value (val)
value_ptr val;
{
register enum type_code code = TYPE_CODE (VALUE_TYPE (val));
- double dbuf;
- LONGEST lbuf;
if (code == TYPE_CODE_ERROR)
error ("Function return type unknown.");
@@ -1476,19 +1474,7 @@ set_return_value (val)
|| code == TYPE_CODE_UNION) /* FIXME, implement struct return. */
error ("GDB does not support specifying a struct or union return value.");
- /* FIXME, this is bogus. We don't know what the return conventions
- are, or how values should be promoted.... */
- if (code == TYPE_CODE_FLT)
- {
- dbuf = value_as_double (val);
-
- STORE_RETURN_VALUE (VALUE_TYPE (val), (char *)&dbuf);
- }
- else
- {
- lbuf = value_as_long (val);
- STORE_RETURN_VALUE (VALUE_TYPE (val), (char *)&lbuf);
- }
+ STORE_RETURN_VALUE (VALUE_TYPE (val), VALUE_CONTENTS (val));
}
void