summaryrefslogtreecommitdiffstats
path: root/gdb/rs6000-tdep.c
Commit message (Collapse)AuthorAgeFilesLines
* * rs6000-tdep.c (rs6000_pop_frame): Use PC_IN_CALL_DUMMY to testPeter Schauer2000-09-241-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.
* Make GNU/Linux/PPC work again.Kevin Buettner2000-07-311-37/+149
|
* Protoization.Kevin Buettner2000-07-301-2/+2
|
* * ppcbug-rom.c (ppcbug_regnames[]): Make array size implicit.Nicholas Duffek2000-07-141-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.
* * xcoffread.c (read_symbol_nvalue): Return CORE_ADDR.Nicholas Duffek2000-07-071-2/+2
| | | | * rs6000-tdep.c (rs6000_pop_frame): Make addr CORE_ADDR type.
* * rs6000-tdep.c: Changes throughout for multi-arch 64-bitNicholas Duffek2000-06-161-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.
* Eliminate PARAMS from function pointer declarations.Kevin Buettner2000-06-041-1/+1
|
* PARAMS removal.Kevin Buettner2000-05-281-6/+6
|
* Changes to skip_prologue for PPC architecture.Kevin Buettner2000-02-261-11/+27
|
* Shared library, function calling fixes for GNU/Linux PPC port.Kevin Buettner2000-02-241-4/+4
|
* Changes for GNU/Linux PPC native port of gdb.Kevin Buettner2000-02-221-9/+6
|
* AIX 4.3 changes.Kevin Buettner2000-02-151-34/+74
|
* import gdb-1999-10-04 snapshotJason Molenda1999-10-051-1/+2
|
* import gdb-1999-09-08 snapshotStan Shebs1999-09-091-3/+0
|
* import gdb-1999-07-07 post reformatJason Molenda1999-07-071-575/+654
|
* import gdb-1999-06-14 snapshotJason Molenda1999-06-141-1/+1
|
* import gdb-1999-06-07 snapshotJason Molenda1999-06-071-1/+1
|
* import gdb-1999-05-25 snapshotJason Molenda1999-05-251-1/+1
|
* import gdb-19990504 snapshotStan Shebs1999-05-051-0/+10
|
* import gdb-19990422 snapshotStan Shebs1999-04-261-67/+59
|
* Initial creation of sourceware repositoryStan Shebs1999-04-161-0/+1800
|
* Initial creation of sourceware repositoryStan Shebs1999-04-161-1800/+0
|
* Allow PPC users to select which PPC/RS6000 variant they're debuggingJim Blandy1999-02-011-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.
* CARP: Mechanism to replace EXTRA_FRAME_INFO.Andrew Cagney1998-12-121-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.
* * rs6000-tdep.c (pop_frame): Correctly find the registers saved inJim Blandy1998-12-071-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.
* CARP:Andrew Cagney1998-11-271-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!).
* * rs6000-tdep.c (rs6000_breakpoint_from_pc): Change big_breakpointAndrew Cagney1998-11-261-2/+2
| | | | | | and little_breakpoint to char[] from char*. * remote-array.c (array_insert_breakpoint): Change bp_addr to CORE_ADDR type.
* CARP: *BREAKPOINT*Andrew Cagney1998-11-241-0/+19
| | | | | | | Convert mn10300, MIPS and powerpc/rs6000 targets to use BREAKPOINT_FROM_PC Delete global variable memory_breakpoint_size. Use BREAKPOINT_FROM_PC instead.
* * rs6000-tdep.c: Don't include tm.h twice.Mark Alexander1998-10-101-1/+0
|
* * rs6000-tdep.c (get_saved_register): Define only ifMark Alexander1998-10-081-0/+2
| | | | USE_GENERIC_DUMMY_FRAMES is defined.
* Patch from Dawn Perchik <dawn@cygnus.com>:Mark Alexander1998-09-231-6/+101
| | | | | | | | | | * rs6000-tdep.c (pop_frame): Handle generic dummy frames. (push_arguments): Likewise. (frame_saved_pc): Likewise. (rs6000_frame_chain): Likewise. (ppc_push_return_address): New function. (get_saved_register): New function. * config/powerpc/tm-ppc-eabi.h: Add generic dummy frame macros.
* Tue Jun 23 17:32:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com>Michael Snyder1998-06-241-29/+43
| | | | | | * rs6000-tdep.c (pop_dummy_frame): use memcpy. (push_arguments): use memset. (various other places): fix up indentation and long lines.
* * mips-tdep.c (mips_push_arguments): Tweak alignment of registerPeter Schauer1997-09-231-1/+17
| | | | | | | | value if the remaining length of a non-integral argument is smaller than the register size for big-endian non-EABI mode. * rs6000-tdep.c (branch_dest): Handle return from signal handler function via sigreturn kernel call.
* * infrun.c (wait_for_inferior): Add the symbols for anyPeter Schauer1997-08-151-128/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | newly loaded objects upon a TARGET_WAITKIND_LOADED event. Rewrite code which determines the TOC address for calling functions in the inferior under AIX. * rs6000-nat.c (find_toc_address): New function to determine the required TOC address from a function address. (_initialize_core_rs6000): Set up find_toc_address_hook to point to find_toc_address. (xcoff_relocate_symtab, xcoff_relocate_core): Remove add_text_to_loadinfo calls. (exec_one_dummy_insn): Change pid and status to int to get rid of compiler warnings. (xcoff_relocate_symtab): Cast ldi to `int *' when passing it to ptrace to get rid of compiler warnings. * rs6000-tdep.c: Add definition for find_toc_address_hook. (rs6000_fix_call_dummy): If find_toc_address_hook is non zero, patch TOC address load code in the call dummy with the value returned from find_toc_address_hook. (struct loadinfo, loadinfo, loadinfolen, loadinfotextindex, xcoff_init_loadinfo, free_loadinfo, xcoff_add_toc_to_loadinfo, add_text_to_loadinfo, find_toc_address): Remove. (_initialize_rs6000_tdep): Remove initialization of coff_add_toc_to_loadinfo_hook and xcoff_init_loadinfo_hook. * xcoffread.c (coff_add_toc_to_loadinfo_hook, xcoff_init_loadinfo_hook): Remove. (struct coff_symfile_info): Add toc_offset field. (scan_xcoff_symtab): Record toc_offset value in toc_offset field instead of calling xcoff_add_toc_to_loadinfo_hook. (get_toc_offset): New function to return the value of the toc_offset field for an object file. (xcoff_initial_scan): Remove call of xcoff_init_loadinfo_hook. * xcoffsolib.h (add_text_to_loadinfo): Remove declaration. * config/rs6000/tm-rs6000.h: Add declarations for find_toc_address_hook and get_toc_offset.
* * config/rs6000/tm-rs6000.h (SIG_FRAME_LR_OFFSET): Define.Peter Schauer1997-05-151-7/+28
| | | | | | | | | | | * rs6000-tdep.c (frameless_function_invocation): Mark frames with a zero PC as frameless to improve backtraces from core dumps caused by dereferencing a NULL function pointer. (frameless_function_invocation, frame_saved_pc, rs6000_frame_chain): Handle frameless functions interrupted by a signal. * sparc-tdep.c (sparc_init_extra_frame_info, sparc_frame_saved_pc): Handle frameless functions interrupted by a signal.
* * config/powerpc/tm-ppc-aix4.h, config/rs6000/tm-rs6000-aix4.hPeter Schauer1997-04-191-2/+3
| | | | | | | | | | | | | | | | | | | | | | | (DONT_RELOCATE_SYMFILE_OBJFILE): Removed. * xcoffsolib.h (struct vmap): Add new members tvma, toffs and dvma, remove tadj. * exec.c (bfdsec_to_vmap): Initialize new vmap members, initialize tstart and dstart with section VMA. * rs6000-nat.c (vmap_symtab): Relocate relative to the VMA in the object file. (vmap_ldinfo, xcoff_relocate_core): Adjust tstart by section offset of the text section, remove DONT_RELOCATE_SYMFILE_OBJFILE hack. (vmap_exec): Relocate relative to the VMA in the object file, relocate .bss section as well. (xcoff_relocate_core): No longer adjust section addresses by VMA. * rs6000-tdep.c (find_toc_address): Change type of tocbase to CORE_ADDR. * xcoffread.c (secnum_to_bfd_section): New routine to get BFD section from CS section number. (scan_xcoff_symtab): Make toc_offset section relative. * symtab.c (total_number_of_methods): Avoid core dump if baseclass type is still undefined.
* * rs6000-tdep.c: Fix typo in comment.Fred Fish1996-08-251-1/+1
| | | | | | | | | | | | | | | | | | | * valops.c (call_function_by_hand): Set using_gcc to 2 for code compiled without -g, per comment in code. * config/a29k/tm-a29k.h (STACK_ALIGN): Add comment. * config/sparc/tm-sparc.h (STACK_ALIGN): Add comment. * config/sparc/tm-sp64.h (STACK_ALIGN): Add comment. * config/pyr/tm-pyr.h (STACK_ALIGN): Add comment. * config/m88k/tm-m88k.h (STACK_ALIGN): Add comment. * config/pa/tm-hppa.h (PUSH_ARGUMENTS): Enclose args in ()'s. (STACK_ALIGN): Add comment, move to be with other associated macros, and document. * config/mips/tm-mips.h (PUSH_ARGUMENTS): Enclose args in ()'s. (STACK_ALIGN): Remove completely, handled by PUSH_ARGUMENTS. * config/alpha/tm-alpha.h (PUSH_ARGUMENTS): Enclose args in ()'s. * config/rs6000/tm-rs6000.h (STACK_ALIGN): Remove completely, handled by PUSH_ARGUMENTS. (PUSH_ARGUMENTS): Enclose args in ()'s.
* * rs6000-tdep.c (rs6000_fix_call_dummy): Add full set of arguments.Stan Shebs1996-08-171-3/+5
| | | | | * config/rs6000/tm-rs6000.h (FIX_CALL_DUMMY): Pass all arguments to function, declare function correctly.
* * rs6000-tdep.c (push_arguments): Remove unused variable "pc".Fred Fish1996-07-301-5/+9
| | | | | | | | | (branch_dest): Remove unused variable "offset". (pop_dummy_frame): Add prototype and make static. (push_arguments): Guard against using len uninitialized. (push_arguments): Guard against using arg uninitialized. (frame_saved_pc): Remove unused variable "frameless". (free_loadinfo): Ifdef out unused function.
* * rs6000-tdep.c (skip_prologue): Add missing parens aroundFred Fish1996-07-301-2/+2
| | | | | operands of logical-or so that first operand does not bind to previous logical-and.
* See gdb ChangeLog entry with header:Fred Fish1996-07-261-1/+1
| | | | | | | Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com> for a rather huge set of changes. I was going to put them here, but it made cvs dump core. :-(
* Do not do XCOFF hoooks for ELF systemsMichael Meissner1996-05-061-9/+10
|
* * Makefile.in (rs6000-nat.o): Dependant on xcoffsolib.h.Fred Fish1996-05-021-0/+15
| | | | | | | | | | | | | | | | | | * config/rs6000/rs6000.mh (NATDEPFILES): Move xcoffread.o ... * config/rs6000/rs6000.mt (TDEPFILES): ... to here * xcoffsolib.c (xcoff_relocate_symtab_hook): Define and initialize. (solib_info): Call xcoff_relocate_symtab via the hook. (sharedlibrary_command): Ditto. * xcoffread.c: Remove all FAKING_RS6000 comments and defines. (xcoff_add_toc_to_loadinfo_hook): Define and initialize here. (xcoff_init_loadinfo_hook): Define and initialize here. (scan_xcoff_symtab): Call xcoff_add_toc_to_loadinfo via the hook. (xcoff_initial_scan): Call xcoff_init_loadinfo via the hook. * xcoffsolib.h (xcoff_relocate_symtab_hook): Declare extern func. * rs6000-tdep.c (_initialize_rs6000_tdep): Add initializations of xcoff_add_toc_to_loadinfo_hook and xcoff_init_loadinfo_hook. * rs6000-nat.c (_initialize_core_rs6000): Add initialization of xcoff_relocate_symtab_hook.
* fix typoMichael Meissner1995-12-011-1/+1
|
* * alpha-tdep.c, c-exp.y, h8500-tdep.c, f-exp.y, f-valprint.c,Per Bothner1995-11-301-7/+9
| | | | | | findvar.c, hppa-tdep.c, infcmd.c, language.c, printcmd.c, rs6000-tdep.c, symmisc.c, symtab.c: Add check_typedef/CHECK_TYPEDEF as needed.
* * rs6000-tdep.c: Don't include a.out.h, improve some formatting.Stan Shebs1995-10-151-41/+38
|
* * rs6000-tdep.c (push_dummy_frame): Handle lr_offset of zeroPeter Schauer1995-09-231-1/+2
| | | | correctly.
* Sun Sep 10 10:24:48 1995 Michael Tiemann <tiemann@axon.cygnus.com>Michael Tiemann1995-09-101-2/+12
| | | | | | | | | | | | | | | | | * tm-ppc-eabi.h (PC_IN_CALL_DUMMY): Redefine this to work with the simulator. FIXME. * rs6000-tdep.c (push_dummy_frame): Calculate the correct link register offset from the current frame (don't assume it is always 8). (push_dummy_frame): Add comment about having only 4096 bytes of stack space in the simulator (by default). * remote-sim.c (gdbsim_create_inferior): Call `add_text_to_loadinfo' so that gdb can find TOC entries when calling functions in the inferior. With this changes, it is now possible to correctly call inferior functions in the PPC simulator.
* * configure.in: Recognize aix4 specially as some aspectsJeff Law1995-08-121-2/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | of aix4 need different handling than aix3. * configure: Updated. * config/powerpc/{aix4.mh,aix4.mt,tm-ppc-aix4.h}: New files specific to aix4 support on the power pc. * config/powerpc/tm-ppc-aix.h (DONT_RELOCATE_SYMFILE_OBJFILE): Do not defined. The aix4 specific target files will do that. * config/rs6000/{aix4,mh,aix4,mt,tm-rs6000-aix4.h}: New files specific to aix4 support on the rs6000. * config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR): Don't do the conversion if the pointer is not a magic aix function pointer. * rs6000-tdep.c: Include objfiles.h and symtab.h. (is_magic_function_pointer): New function. * rs6000-tdep.c (skip_prologue): Refine check for frameless functions. Handle b .+4 emitted by aix4 compilers. Only allow one load of a minimal toc pointer. Handle aix4 compiler's code for alloca. * rs6000-tdep.c (find_toc_address): Report an error if no toc was found rather than possibly core dumping. * partial-stab.h: Handle extra field generated by the aix4 compiler for enumerations. * stabsread.c (read_enum_type): Likewise.
* * rs6000-tdep.c (extract_return_value): Fix returning of valuesPeter Schauer1995-08-121-2/+9
| | | | whose length is less than the register size for big endian targets.
OpenPOWER on IntegriCloud