aboutsummaryrefslogtreecommitdiff
path: root/gdb/rs6000-tdep.c
AgeCommit message (Collapse)AuthorFilesLines
2002-01-29* config/vax/tm-vax.h (INVALID_FLOAT): Move macro from here...Andrew Cagney1-7/+2
* vax-tdep.c (INVALID_FLOAT): To here. Document why it is broken. * rs6000-tdep.c (rs6000_do_registers_info): Delete code wrapped in #ifdef INVALID_FLOAT. * infcmd.c (do_registers_info): Ditto. * values.c (unpack_double): Ditto. Add comment. * config/ns32k/tm-umax.h (INVALID_FLOAT): Delete macro that was already commented out.
2002-01-152002-01-15 Elena Zannoni <ezannoni@redhat.com>Elena Zannoni1-1/+1
[Based on work by Jim Blandy] * gdbtypes.h (builtin_type_v16qi, builtin_type_v8hi): Export. (builtin_type_vec128): Export. * gdbtypes.c (builtin_type_v16qi, builtin_type_v8hi): New SIMD types. (builtin_type_vec128): New builtin type for 128 bit vector registers. (build_gdbtypes): Initialize builtin_type_v16qi and builtin_type_v8hi. Create the vec128 register builtin type structure. (build_builtin_type_vec128): New function. (_initialize_gdbtypes): Register builtin_type_v16qi and builtin_type_v8hi with gdbarch. Same for builtin_type_vec128. * rs6000-tdep.c (rs6000_register_virtual_type): Change type of AltiVec register to new builtin type.
2002-01-06last? remaining BIG_ENDIAN switchAndrew Cagney1-1/+1
2002-01-05s/BIG_ENDIAN/BFD_ENDIAN_BIG/Andrew Cagney1-5/+5
2001-12-302001-12-29 Elena Zannoni <ezannoni@redhat.com>Elena Zannoni1-4/+271
* Makefile.in (rs6000-tdep.o): Add dependency on parser-defs.h. * rs6000-tdep.c: Include parser-defs.h. (rs6000_register_virtual_type): Rewrite, including handling of AltiVec regs type. (altivec_register_p): New function. (rs6000_do_altivec_registers): New function. (rs6000_altivec_registers_info): New function. (rs6000_do_registers_info): New function. (R16): Define. (PPC_ALTIVEC_REGS): Define. (registers_powerpc): Add AltiVec registers. (registers_7400): Define. (variants): Add 7400 machine. (rs6000_gdbarch_init): Set the numbers of AltiVec registers. Initialize gdbarch_do)_registers_info. (rs6000_info_power_command): New function. (info_power_cmdlist): New static variable. (_initialize_rs6000_tdep): Add new 'info powerpc altivec' command. * ppc-tdep.h (struct gdbarch_tdep): Add altivec regnum fields. (altivec_register_p): Export.
2001-12-20* gdbarch.sh (TARGET_CHAR_SIGNED): New macro.Jim Blandy1-0/+1
* gdbarch.c, gdbarch.h: Regenerated. * gdbtypes.c (build_gdbtypes): If TARGET_CHAR_SIGNED is zero, set the TYPE_FLAG_UNSIGNED bit on the type. * s390-tdep.c (s390_gdbarch_init): On the S/390, characters are unsigned by default. * rs6000-tdep.c (rs6000_gdbarch_init): Same for PowerPC and RS6000.
2001-12-112001-12-11 Michael Snyder <msnyder@redhat.com>Michael Snyder1-10/+1
* d10v-tdep.c (d10v_register_virtual_size): Delete. (d10v_gdbarch_init): Use generic_register_virtual_size. * rs6000-tdep.c (rs6000_register_virtual_size): Delete. (rs6000_gdbarch_init): Use generic_register_virtual_size. * x86-64-tdep.c (x86_64_register_virtual_size): Delete. (i386_gdbarch_init): Use generic_register_virtual_size.
2001-12-092001-12-09 Elena Zannoni <ezannoni@redhat.com>Elena Zannoni1-23/+58
* config/rs6000/tm-rs6000.h (STAB_REG_TO_REGNUM): Remove definition, it is now multiarched. * ppc-tdep.h (struct gdbarch_tdep): Move from rs6000-tdep.c. Add fields for special register numbers. * rs6000-tdep.c (rs6000_gdbarch_init): Initialize new tdep special regnum fields. (rs6000_saved_pc_after_call): Use gdbarch_tdep registers fields instead of hardcoded macros. (branch_dest, rs6000_pop_frame, rs6000_fix_call_dummy, ppc_push_return_address, rs6000_frame_saved_pc, frame_get_saved_regs, rs6000_frame_chain, rs6000_store_return_value): Ditto. (rs6000_stab_reg_to_regnum): New function. * ppcnbsd-nat.c (fetch_inferior_registers, store_inferior_registers, fetch_core_registers): Ditto. * ppc-linux-tdep.c (ppc_linux_in_sigtramp, ppc_linux_frame_init_saved_regs): Ditto. * ppc-linux-nat.c (ppc_register_u_addr, supply_gregset, fill_gregset): Ditto. * ppc-bdm.c (bdm_ppc_fetch_registers, bdm_ppc_store_registers): Ditto.
2001-12-01Add cross platform SVR4 shared library support for PowerPC.Kevin Buettner1-0/+3
2001-10-21Add explicit #include of "value.h".Andrew Cagney1-0/+1
2001-09-29* rs6000-tdep.c (rs6000_gdbarch_init): Don't use the previousAndrew Cagney1-7/+3
architecture to infer the wordsize. Previous architecture may not be a PowerPC.
2001-08-01* defs.h (HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT)Andrew Cagney1-0/+1
(HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT) (HOST_LONG_DOUBLE_FORMAT, DOUBLEST) (floatformat_to_doublest, floatformat_from_doublest) (floatformat_is_negative, floatformat_is_nan) (floatformat_mantissa, store_floating) (extract_floating): Move declaration from here. * doublest.h: To here. New file. * utils.c (get_field, floatformat_to_doublest, put_field) (ldfrexp, floatformat_from_doublest, floatformat_is_negative) (floatformat_is_nan, floatformat_mantissa) (FLOATFORMAT_CHAR_BIT): Move from here. * doublest.c: To here. New file. * findvar.c (store_floating, extract_floating): Move from here. * doublest.c: To here. * Makefile.in (SFILES): Add doublest.c. (COMMON_OBS): Add doublest.o. (doublest.o): Specify dependencies. (doublest_h): Define. * config/m88k/tm-m88k.h: Include "doublest.h". * config/i960/tm-i960.h: Ditto. * config/i386/tm-symmetry.h: Ditto. * rs6000-tdep.c, valarith.c: Ditto. * valprint.c, stabsread.c, sh-tdep.c: Ditto. * ia64-tdep.c, i387-tdep.c, i386-tdep.c: Ditto. * values.c, arm-tdep.c, arm-linux-tdep.c: Ditto. * alpha-tdep.c, ax.h, expression.h: Ditto. * sh-tdep.c, parse.c, top.c, value.h: Ditto. * Makefile.in (arm-tdep.o): Add $(doublest_h). (i386-tdep.o, i387-tdep.o, ia64-tdep.o): Ditto. (rs6000-tdep.o, stabsread.o, valarith.o): Ditto. (values.o, valprint.o, arm-linux-tdep.o): Ditto. (alpha-tdep.o, ax_h, parse.o, top.o, value_h): Ditto. (parser_defs_h): Ditto. (expression_h): Add $(doublest_h) and $(symtab_h).
2001-07-15s/value_ptr/struct value */Andrew Cagney1-4/+4
2001-07-07* symtab.c (main_name): New function.Andrew Cagney1-1/+1
(set_main_name): New function. * symtab.h: Declare. * TODO: Update From 2000-03-05 Anthony Green <green@redhat.com>: * dbxread.c (process_one_symbol): Handle the N_MAIN stab by setting main_name. * blockframe.c (inside_main_func): Use main_name instead of "main". * symtab.c (find_main_psymtab): Ditto. * source.c (select_source_symtab): Ditto. * nlmread.c (nlm_symfile_read): Ditto. * rs6000-tdep.c (skip_prologue): Ditto.
2001-05-14Fix logic selecting a new architecture. Use the sequence:Andrew Cagney1-1/+1
o provided by INFO o hard-wired by (gdb) set ... o reversed engineered from INFO.abfd o default to previous architecture
2001-05-01 * config/rs6000/tm-rs6000.h (IN_SOLIB_RETURN_TRAMPOLINE): Define.Nicholas Duffek1-5/+56
(rs6000_in_solib_return_trampoline): Declare. * rs6000-tdep.c (rs6000_in_solib_return_trampoline): New function. (rs6000_skip_trampoline_code): Skip bigtoc fixup code. * xcoffread.c (read_xcoff_symtab): Perform the ISFCN function check after the CSECT check rather than before it. Allocate separate symtabs for CSECTs whose names begin with '@'. (scan_xcoff_symtab): Don't ignore symbols beginning with '@'. Activate the misc_func_recorded mechanism for whose names begin with '@'.
2001-03-21* target.h (enum target_signal): Move definition from here.Andrew Cagney1-1/+2
* defs.h (enum target_signal): To here. * config/arc/tm-arc.h (arc_software_single_step): Change type of first parameter to enum target_signal. * config/rs6000/tm-rs6000.h (rs6000_software_single_step): Ditto. * config/sparc/tm-sparc.h (sparc_software_single_step): Ditto. * rs6000-tdep.c (rs6000_software_single_step): Update.
2001-03-06Update/correct copyright notices.Kevin Buettner1-2/+2
2001-03-01Create new file regcache.h. Update all uses.Andrew Cagney1-0/+1
2001-02-08Add __FILE__ and __LINE__ parameter to internal_error() /Andrew Cagney1-3/+5
internal_verror().
2000-11-18Handle optimizer code motions into the prologue.Kevin Buettner1-6/+101
2000-11-09 Add auto-solib-add support for AIX, remove obsolete and unusedPeter Schauer1-1/+0
SOLIB_SYMBOLS_MANUAL code, cleanup of AIX shared library handling code. * rs6000-nat.c (vmap_symtab): Do not try to modify offsets if symbols are not yet loaded. (vmap_add_symbols): New function to add symbols for a vmap entry. (add_vmap): Turn errors into warnings, return NULL vmap upon failure. Add symbols via vmap_add_symbols only if requested. (xcoff_relocate_core): Allow debugging of core files without an executable file. Handle NULL returns from add_vmap gracefully. * xcoffsolib.c (solib_add): Remove, no longer needed. (solib_info): Do not check for new shared libraries if there is no inferior process. (sharedlibrary_command): Made static. Do not check for new shared libraries if there is no inferior process. Add symbols for requested shared libraries via vmap_add_symbols. (_initialize_solib): Add `set auto-solib-add' command. * xcoffsolib.h (vmap_add_symbols): Add prototype declaration. * config/rs6000/tm-rs6000.h (PC_LOAD_SEGMENT): Move from here ... * config/rs6000/nm-rs6000.h: ... to here, this is an AIX native feature. * config/powerpc/tm-macos.h, config/powerpc/tm-ppc-eabi.h, config/powerpc/tm-ppc-nw.h, config/rs6000/tm-rs6000ly.h: Remove #undef PC_LOAD_SEGMENT. * config/powerpc/aix.mt, config/rs6000/aix4.mt, config/rs6000/rs6000.mt (TDEPFILES): Move xcoffsolib.o from here ... * config/powerpc/aix.mh, config/rs6000/aix4.mh, config/rs6000/rs6000.mh (NATDEPFILES): ... to here, xcoffsolib.o contains AIX native code only. * rs6000-tdep.c: Remove #include xcoffsolib.h, no longer needed. * xcoffsolib.h (xcoff_relocate_symtab_hook): Remove declaration. * rs6000-nat.c (_initialize_core_rs6000): Remove setting of xcoff_relocate_symtab_hook, no longer needed. * xcoffsolib.c (solib_info, sharedlibrary_command): Remove xcoff_relocate_symtab_hook indirection, call xcoff_relocate_symtab directly, as xcoffsolib.c is now compiled in native AIX configurations only. * Makefile.in: Update dependencies for rs6000-tdep.o, rs6000-nat.o and xcoffsolib.o.
2000-10-26 * arch-utils.c, arch-utils.h (default_convert_from_func_ptr_addr):Peter Schauer1-3/+7
New function. * gdbarch.sh (CONVERT_FROM_FUNC_PTR_ADDR): Add. * gdbarch.c, gdbarch.h: Regenerate. * valops.c (find_function_addr): Use CONVERT_FROM_FUNC_PTR_ADDR unconditionally. * config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR): Delete definition. * config/powerpc/tm-linux.h (CONVERT_FROM_FUNC_PTR_ADDR): Remove undef. * rs6000-tdep.c (rs6000_convert_from_func_ptr_addr): Fix comment. (rs6000_gdbarch_init): Register rs6000_convert_from_func_ptr_addr if not ELFOSABI_LINUX.
2000-10-05Add a limit parameter for scanning the prologue.Kevin Buettner1-9/+10
2000-09-24 * rs6000-tdep.c (rs6000_pop_frame): Use PC_IN_CALL_DUMMY to testPeter Schauer1-3/+2
for call dummy instead of accessing stop_stack_dummy, which does not work if we `return' from a stop in a call dummy. (rs6000_gdbarch_init): Use generic_save_dummy_frame_tos for dummy_frame_tos function to make PC_IN_CALL_DUMMY work.
2000-07-31Make GNU/Linux/PPC work again.Kevin Buettner1-37/+149
2000-07-30Protoization.Kevin Buettner1-2/+2
2000-07-14 * ppcbug-rom.c (ppcbug_regnames[]): Make array size implicit.Nicholas Duffek1-4/+1
* rs6000-tdep.c (DEFAULT_LR_SAVE): Move to config/*/tm-*.h. (rs6000_gdbarch_init): Use generic_pc_in_call_dummy instead of rs6000_pc_in_call_dummy. * config/rs6000/tm-rs6000.h (DEFAULT_LR_SAVE): Move here from rs6000-tdep.c. * config/powerpc/tm-ppc-eabi.h: Remove various definitions handled by multi-arched rs6000-tdep.c.
2000-07-07 * xcoffread.c (read_symbol_nvalue): Return CORE_ADDR.Nicholas Duffek1-2/+2
* rs6000-tdep.c (rs6000_pop_frame): Make addr CORE_ADDR type.
2000-06-16 * rs6000-tdep.c: Changes throughout for multi-arch 64-bitNicholas Duffek1-672/+849
support. Incorporate most of tm-rs6000.h. (find_toc_address_hook): Rename to rs6000_find_toc_address_hook. (rs6000_set_host_arch_hook): Declare. (read_memory_addr): Define. (pop_frame): Rename to rs6000_pop_frame. (rs6000_pop_frame, rs6000_fix_call_dummy, rs6000_push_arguments, rs6000_frame_saved_pc, rs6000_frame_chain): Remove non-generic dummy frame handling. (branch_dest, rs6000_pop_frame, rs6000_skip_trampoline_code, rs6000_frame_saved_pc, frame_get_saved_regs, frame_initial_stack_address, rs6000_frame_chain, rs6000_convert_from_func_ptr_addr): Call read_memory_addr instead of read_memory_integer. (branch_dest, rs6000_pop_frame, rs6000_push_arguments, rs6000_skip_trampoline_code, rs6000_frame_saved_pc, frame_get_saved_regs, frame_initial_stack_address, rs6000_frame_chain): Replace 4 with TDEP->wordsize. (skip_prologue): Recognize some 64-bit stack adjustments. (push_dummy_frame, pop_dummy_frame, set_processor, show_processor): Delete. (frame_get_saved_regs): Manipulate saved register addresses using CORE_ADDR instead of int. (rs6000_create_inferior): New function. (register_names_*[]): Change to struct reg registers_*[]. (variants[]): Assimilate into multi-arch approach. (register_names_*[], variants[]): Refer to pre-PowerPC architectures as POWER instead of RS6000. * rs6000-nat.c: Ubiquitous changes for 64-bit support. (vmap_secs, xcoff_relocate_symtab): Cast addresses to unsigned long to avoid sign-extension errors. (set_host_arch): New function. (xcoff_relocate_symtab): Try disabling usleep(36000) workaround. (rs6000_core_fns): Use new bfd_target_xcoff_flavour. (_initialize_core_rs6000): Initialize rs6000_set_host_arch_hook. * symfile.c (find_sym_fns): Remove special xcoff kludge. * xcoffread.c (secnum_to_bfd_section): Initialize args.objfile. (process_linenos): Query line struct size from coff backend instead of using compile-time constant. (enter_line_range): Likewise. (read_xcoff_symtab): Pass "XCOFF64" instead of "XCOFF" to record_debugformat() if appropriate. (process_xcoff_symbol): Access symbol addresses using SYMBOL_VALUE_ADDRESS instead of SYMBOL_VALUE. (read_symbol_lineno): Retrieve XCOFF64 symbol names from strtbl. (scan_xcoff_symtab): Likewise. Query syment struct size from coff backend instead of using compile-time constant. (xcoff_sym_fns): Set flavour to bfd_target_xcoff_flavour. * Makefile.in (INTERNAL_LDFLAGS): Add $(MH_LDFLAGS) to list of flags that this Makefile variable get set to. (From Kevin Buettner.) * config/powerpc/aix.mh (MH_LDFLAGS): Add linker flags so that the TOC doesn't overflow. (From Kevin Buettner.) * config/powerpc/tm-ppc-aix.h: Move config decisions to multi-arched rs6000-tdep.c. * config/rs6000/tm-rs6000.h: Likewise. (GDB_MULTI_ARCH): Define. (skip_trampoline_code): Rename to rs6000_skip_trampoline_code. (is_magic_function_pointer): Replace with rs6000_convert_from_func_ptr_addr. (TARGET_CREATE_INFERIOR_HOOK): Define. (find_toc_address_hook): Rename to rs6000_find_toc_address_hook. (rs6000_set_host_arch_hook): Declare. * config/rs6000/nm-rs6000.h (CHILD_XFER_MEMORY): Define.
2000-06-04Eliminate PARAMS from function pointer declarations.Kevin Buettner1-1/+1
2000-05-28PARAMS removal.Kevin Buettner1-6/+6
2000-02-26Changes to skip_prologue for PPC architecture.Kevin Buettner1-11/+27
2000-02-24Shared library, function calling fixes for GNU/Linux PPC port.Kevin Buettner1-4/+4
2000-02-22Changes for GNU/Linux PPC native port of gdb.Kevin Buettner1-9/+6
2000-02-15AIX 4.3 changes.Kevin Buettner1-34/+74
1999-10-05import gdb-1999-10-04 snapshotJason Molenda1-1/+2
1999-09-09import gdb-1999-09-08 snapshotStan Shebs1-3/+0
1999-07-07import gdb-1999-07-07 post reformatJason Molenda1-575/+654
1999-06-14import gdb-1999-06-14 snapshotJason Molenda1-1/+1
1999-06-07import gdb-1999-06-07 snapshotJason Molenda1-1/+1
1999-05-25import gdb-1999-05-25 snapshotJason Molenda1-1/+1
1999-05-05import gdb-19990504 snapshotStan Shebs1-0/+10
1999-04-26import gdb-19990422 snapshotStan Shebs1-67/+59
1999-04-16Initial creation of sourceware repositorygdb-4_18-branchpointStan Shebs1-0/+1800
1999-04-16Initial creation of sourceware repositoryStan Shebs1-1800/+0
1999-02-01Allow PPC users to select which PPC/RS6000 variant they're debuggingJim Blandy1-2/+381
at run-time. At the moment, the only thing this affects is the set of registers visible. * config/rs6000/tm-rs6000.h (REGISTER_NAME): Define this as a call to the function rs6000_register_name. (rs6000_register_name): Include extern decl. (NUM_REGS): Bump to 183. What's the right way to do this? (FIRST_UISA_SP_REGNUM, LAST_UISA_SP_REGNUM): Renamed from FIRST_SP_REGNUM, LAST_SP_REGNUM. (REGISTER_BYTES): Recompute this. * rs6000-tdep.c: Renamed all uses of FIRST_SP_REGNUM and LAST_SP_REGNUM to FIRST_UISA_SP_REGNUM and LAST_UISA_SP_REGNUM, with some concomitant formatting changes. #include "gdbcmd.h", so we can define commands here. (struct variant): New structure. (COMMON_UISA_REG_NAMES, PPC_UISA_SPR_NAMES, PPC_SEGMENT_REG_NAMES, PPC_32_OEA_SPR_NAMES, num_registers): New macros. (register_names_rs6000, register_names_uisa, register_names_403, register_names_403GC, register_names_505, register_names_860, register_names_601, register_names_602, register_names_603, register_names_604, register_names_750, variants): New variables. (rs6000_register_name, install_variant, find_variant_by_name, install_variant_by_name, list_variants, show_current_variant, set_processor, show_processor): New functions. (_initialize_rs6000_tdep): Define new commands `set processor' and `show processor', and call install_variant_by_name to set the default variant. * rs6000-nat.c: Renamed all uses of FIRST_SP_REGNUM and LAST_SP_REGNUM to FIRST_UISA_SP_REGNUM and LAST_UISA_SP_REGNUM, with some concomitant formatting changes. * configure.in: Accept the `--with-cpu' flag, to specify a default processor variant. * acconfig.h: Provide a blurb for TARGET_CPU_DEFAULT, which is set by configure's `--with-cpu' flag. * config.in, configure: Regenerated.
1998-12-12CARP: Mechanism to replace EXTRA_FRAME_INFO.Andrew Cagney1-49/+111
Add two pointers (saved_regs, extra_info) to struct frame_info. Introduce new macro FRAME_INIT_SAVED_REGS which replaces FRAME_FIND_SAVED_REGS. Document. Use in mn10300 and rs6000 targets. Fix side effects on ALPHA, MIPS, Z8K and SPARC targets.
1998-12-07* rs6000-tdep.c (pop_frame): Correctly find the registers saved inJim Blandy1-13/+19
the stack frame. Their offset from the previous stack frame is in fdata.gpr_offset and fdata.fpr_offset, not fdata.offset. (gdb.base/return.exp) * config/rs6000/tm-rs6000.h: Doc fixes.
1998-11-27CARP:Andrew Cagney1-7/+4
STEP_SKIPS_DELAY - add STEP_SKIPS_DELAY_P and rewrite use removing #ifdef's. NO_SINGLE_STEP - replace with SOFTWARE_SINGLE_STEP_P + SOFTWARE_SINGLE_STEP. Replace global variable one_stepped with static singlestep_breakpoints_inserted_p. Cleanup infrun.c (scary!).