diff options
Diffstat (limited to 'gdb/arch-utils.c')
-rw-r--r-- | gdb/arch-utils.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c index e344ec05470..9289e7adeaf 100644 --- a/gdb/arch-utils.c +++ b/gdb/arch-utils.c @@ -23,6 +23,7 @@ #include "defs.h" #include "arch-utils.h" +#include "buildsym.h" #include "gdbcmd.h" #include "inferior.h" /* enum CALL_DUMMY_LOCATION et.al. */ #include "gdb_string.h" @@ -359,6 +360,23 @@ legacy_value_to_register (struct frame_info *frame, int regnum, put_frame_register (frame, regnum, to); } +int +default_stabs_argument_has_addr (struct gdbarch *gdbarch, struct type *type) +{ + if (DEPRECATED_REG_STRUCT_HAS_ADDR_P () + && DEPRECATED_REG_STRUCT_HAS_ADDR (processing_gcc_compilation, type)) + { + CHECK_TYPEDEF (type); + + return (TYPE_CODE (type) == TYPE_CODE_STRUCT + || TYPE_CODE (type) == TYPE_CODE_UNION + || TYPE_CODE (type) == TYPE_CODE_SET + || TYPE_CODE (type) == TYPE_CODE_BITSTRING); + } + + return 0; +} + /* Functions to manipulate the endianness of the target. */ |