Stephane Carrez [Tue, 13 Aug 2002 19:09:01 +0000 (19:09 +0000)]
* m68hc11-opc.c: Update call operand to accept the page definition.
Identify instructions that are branches and calls to generate a
RL_JUMP relocation.
Stephane Carrez [Tue, 13 Aug 2002 19:01:25 +0000 (19:01 +0000)]
* m68hc11-dis.c (print_insn): Take into account 68HC12 memory
banks and fix disassembling of call instruction.
(print_indexed_operand): New param to tell whether
it was an indirect addressing operand (for disassembling call).
Stephane Carrez [Tue, 13 Aug 2002 17:24:50 +0000 (17:24 +0000)]
* m68hc11-tdep.c (M68HC12_NUM_PSEUDO_REGS): New define.
(M68HC12_HARD_PC_REGNUM): Define specific PC for 68HC12 (pseudo reg).
(m68hc11_pseudo_register_read): Compute the 68HC12 PC using the
real PC and the page number (if it's within the memory bank window).
(m68hc11_pseudo_register_write): Likewise when saving.
(m68hc11_register_name): Name the virtual pc 'pc' and the real one ppc.
(m68hc11_register_virtual_type): Return uint32 for virtual pc.
(m68hc11_register_raw_size): And use 32-bit for it.
(m68hc11_gdbarch_init): Use 32-bit address for 68HC12 if the
16K memory bank is used by the prog; also use the virtual pc.
Stephane Carrez [Tue, 13 Aug 2002 16:40:46 +0000 (16:40 +0000)]
* m68hc11-tdep.c (m68hc11_elf_make_msymbol_special): New function.
(m68hc11_gdbarch_init): Install it in gdbarch.
(MSYMBOL_SET_RTC, MSYMBOL_SET_RTI): New to set symbol specific flags.
(MSYMBOL_IS_RTC, MSYMBOL_IS_RTI): New to test these flags.
(MSYMBOL_SIZE): New for documentation.
(insn_return_kind): Enum to specify how a function returns.
(frame_extra_info): Cleanup and record the return mode.
(gdbarch_tdep, USE_PAGE_REGISTER): New to control the use of page
register in address computation.
(m68hc11_get_return_insn): New to obtain the return instruction used
by the function.
(m68hc11_frame_init_saved_regs): Take into account the return
instruction used by the function for far and interrupt functions.
(m68hc11_init_extra_frame_info): Take into account page register.
(m68hc11_frame_args_address): Adjust according to the return mode.
(show_regs): Print page register only when it's used.
Andrew Cagney [Tue, 13 Aug 2002 14:32:28 +0000 (14:32 +0000)]
2002-08-13 Andrew Cagney <cagney@redhat.com>
* i386-tdep.c (i386_register_name): Handle mmx registers.
(mmx_regnum_p): New function.
(i386_mmx_names): New array.
(mmx_num_regs): New variable.
(i386_pseudo_register_read): New function.
(i386_pseudo_register_write): New function.
(mmx_regnum_to_fp_regnum): New function. Code from Fernando Nasser.
* regcache.c (regcache_raw_read_unsigned): New function.
(regcache_raw_read_signed): New function.
* regcache.h (regcache_raw_read_unsigned): Declare.
(regcache_raw_read_signed): Declare.
H.J. Lu [Tue, 13 Aug 2002 13:39:02 +0000 (13:39 +0000)]
2002-08-13 H.J. Lu <hjl@gnu.org>
* objcopy.c (copy_object): Don't warn about the unsupported
architecture unless the input target is defaulted or the
output architecture is different from the input.
Stephane Carrez [Tue, 13 Aug 2002 13:02:25 +0000 (13:02 +0000)]
* m68hc11.h (E_M68HC12_BANKS, E_M68HC11_I32, E_M68HC11_F64,
EF_M68HC11_ABI): Define for ABI specification.
(STO_M68HC12_FAR, STO_M68HC12_INTERRUPT): Symbol flags for
linker and debugger.
(R_M68HC11_24, R_M68HC11_LO16, R_M68HC11_PAGE): New relocs.
(R_M68HC11_RL_JUMP, R_M68HC11_RL_GROUP): New reloc for linker
relaxation.
Stephane Carrez [Tue, 13 Aug 2002 11:03:42 +0000 (11:03 +0000)]
* m68hc11-tdep.c (M6812_OP_PSHX, M6812_OP_PSHY): New defines.
(m6812_prolog): They can appear in 68HC12 function prologue.
(m68hc11_frame_chain): Cleanup.
Stephane Carrez [Tue, 13 Aug 2002 08:52:02 +0000 (08:52 +0000)]
* interp.c (sim_prepare_for_program): Look up the image for the
reset vector and set cpu_use_elf_start to 1 if not found.
(sim_open): Do not set cpu_use_elf_start.
Stephane Carrez [Tue, 13 Aug 2002 08:38:09 +0000 (08:38 +0000)]
* dv-m68hc11.c (m68hc11cpu_io_read_buffer): Translate memory
bank window to some virtual address to read from extended memory.
(m68hc11cpu_io_write_buffer): Likewise for writing.
(attach_m68hc11_regs): When use_bank property is defined, attached
to the 68HC12 16K memory bank window.
* interp.c (sim_hw_configure): Create memory region for banked
memory.
Stephane Carrez [Tue, 13 Aug 2002 07:46:09 +0000 (07:46 +0000)]
* m68hc11_sim.c (cpu_special): Handle call and rtc instructions.
* sim-main.h (M6812_CALL_INDIRECT): Add to enum.
(m6811_regs): Add page register.
(cpu_set_page, cpu_get_page): New macros.
(phys_to_virt): New function.
(cpu_get_indexed_operand_addr, cpu_return): Declare.
* gencode.c: Identify indirect addressing mode for call and fix daa.
(gen_function_entry): New param to tell if src8/dst8 locals are
necessary.
(gen_interpreter): Use it to avoid generation of unused variables.
* interp.c (sim_fetch_register): Allow to read page register; page
register, A, B and CCR are only 1 byte wide.
(sim_store_register): Likewise for writing.
* ld-sh/sh64/abi32.xd: Adjust as type of linker-script-symbols
is no longer set to object.
* ld-sh/sh64/abi64.xd, ld-sh/sh64/cmpct1.xd, ld-sh/sh64/crange1.rd,
ld-sh/sh64/crange2.rd, ld-sh/sh64/crange3-cmpct.rd,
ld-sh/sh64/crange3-media.rd, ld-sh/sh64/crange3.rd,
ld-sh/sh64/mix1.xd, ld-sh/sh64/mix2.xd, ld-sh/sh64/shdl32.xd,
ld-sh/sh64/shdl64.xd: Likewise.
Aidan Skinner [Sun, 11 Aug 2002 18:15:49 +0000 (18:15 +0000)]
* ada-lang.c (ada_lookup_partial_symbol)
(to_fixed_variant_branch_type) (find_line_in_linetable): Fix
prototype names so that grep ^func works properly.
* ada-lang.c (ada_array_element_type)
(ada_lookup_partial_symbol): Fix typos in parameter list.
* ada-valprint.c (val_print_packed_array_elements) (ada_val_print_1):
Fix prototype names so that grep ^func works properly.
Alan Modra [Sat, 10 Aug 2002 14:49:48 +0000 (14:49 +0000)]
* config/tc-i386.c (tc_i386_fix_adjustable): Test OUTPUT_FLAVOR
for ELF, and don't bother checking ELF relocs when non-ELF.
(i386_immediate): Allow absolute_section expressions for aout.
(i386_displacement): Likewise. Also test bfd_is_com_section.
(md_estimate_size_before_relax): Test OUTPUT_FLAVOR for ELF.
(md_apply_fix3): Hack for bfd_install_relocation when fx_pcrel,
not when fx_addsy. Remove dead code.
Alan Modra [Sat, 10 Aug 2002 12:48:52 +0000 (12:48 +0000)]
* ld-discard/discard.exp: Don't run on linuxaout or linuxoldld.
* ld-linkonce/linkonce.exp: Likewise.
* ld-selective/sel-dump.exp: Likewise.
* ld-selective/selective.exp: Don't run on aout or bout.
Andrew Cagney [Sat, 10 Aug 2002 05:12:40 +0000 (05:12 +0000)]
2002-08-10 Andrew Cagney <cagney@redhat.com>
Elena Zannoni <ezannoni@redhat.com>
Martin M. Hunt <hunt@redhat.com>
* gdbtypes.c (build_builtin_type_vec128): Set the vector bit.
(build_builtin_type_vec128i): Set the vector bit.
* gdbtypes.h (builtin_type_vec64, builtin_type_vec64i): Declare.
* gdbtypes.c (builtin_type_vec64, builtin_type_vec64i): Define.
(build_builtin_type_vec64): New function.
(build_builtin_type_vec64i): New function.
(build_gdbtypes): Initialize builtin_type_vec64 and
builtin_type_vec64i.
Michael Snyder [Sat, 10 Aug 2002 00:34:04 +0000 (00:34 +0000)]
2002-08-09 Michael Snyder <msnyder@redhat.com>
* mips-tdep.c (ROUND_DOWN, ROUND_UP): Move to global scope.
(mips_push_arguments): Correct some comments. Use paddr_nz
for printing addresses in debug output. Replace static
allocation using MAX_REGISTER_RAW_SIZE with alloca.
(mips_n32n64_push_arguments): New function, cloned from
mips_push_arguments and tuned for the n32/n64 ABI.
(mips_push_register): Buffer needs dynamic allocation.
(mips_print_register): Ditto.
(do_gp_register_row): Ditto.
(mips_store_return_value): Ditto.
(mips_gdbarch_init): Set gdbarch_push_arguments per ABI.
Grace Sainsbury [Fri, 9 Aug 2002 16:41:25 +0000 (16:41 +0000)]
* remote.c: (remote_wait, remote_async_wait): Add check for awatch
T-packets; the 'a' is not taken as a register number.
(remote_check_watch_resources, remote_stopped_by_watchpoint)
(remote_stopped_data_address): New functions; add to target
vector.
(remote_insert_hw_breakpoint, remote_remove_hw_breakpoint): Change
prototypes to match other implementations of this
function. replace integer argument with pointer -- the length
field in the Z-packet is the length of what is pointed to or 1 if
pointer is null. Add to target vector.
(remote_insert_watchpoint, remote_remove_watchpoint): Add to
target vector.
From Mark Salter:
* remote.c (remote_wait): Add support to extract optional
watchpoint information from T-packet. Ignore unrecognized
optional info in T-packet.
(remote_async_wait): Ditto.
doc:
From Mark Salter:
* gdb.texinfo (Protocol): Document T packet extension to
allow watchpoint address reporting.
* config/tc-mips.c (macro): Handle a register plus a 16-bit
immediate offset in "dla" and "la" expansions.
* gas/mips/empic.d: Treat "addiu" and "daddiu" as equivalent when
$0 is source.
* mips-opc.c (mips_builtin_opcodes): Remove "dla" and "la" as
aliases to "daddiu" and "addiu".
Alan Modra [Fri, 9 Aug 2002 03:42:15 +0000 (03:42 +0000)]
* configure.in: bfd_gas=yes for all i386 targets. Formatting.
Remove "bfd_gas=yes" from target table when covered later.
Consolidate some entries.
* configure: Regenerate
Jakub Jelinek [Fri, 9 Aug 2002 00:10:19 +0000 (00:10 +0000)]
* config/tc-i386.c (output_insn): Save frag_now and frag_now_fix ()
at start of insn, pass it to output_disp and output_imm.
(output_disp): Added arguments. If _GLOBAL_OFFSET_TABLE_ is seen
in displacement for R_386_32 reloc, use R_386_GOTPC and compute
properly addend.
(output_imm): Added arguments. Compute properly addend for
R_386_GOTPC.
(md_apply_fix3): Remove R_386_GOTPC handling.
* testsuite/gas/i386/gotpc.s: New.
* testsuite/gas/i386/gotpc.d: New.
* testsuite/gas/i386/i386.exp: Add gotpc test.
Grace Sainsbury [Thu, 8 Aug 2002 19:45:50 +0000 (19:45 +0000)]
* remote.c (remote_wait, remote_async_wait): Change
thread_num from int to ULONGEST.
(unpack_varlen_hex): Change result parameter from
int * to ULONGEST *.
Michael Snyder [Wed, 7 Aug 2002 00:28:31 +0000 (00:28 +0000)]
2002-08-05 Michael Snyder <msnyder@redhat.com>
* mips-tdep.c (mips_find_saved_regs): Adjust stack according
to MIPS_SAVED_REGSIZE, not GDB_TARGET_IS_MIPS64. Enhance comment.
(mips_gdbarch_init): Set N32 target to be mips64.
Andrew Cagney [Tue, 6 Aug 2002 14:12:47 +0000 (14:12 +0000)]
2002-08-06 Andrew Cagney <cagney@redhat.com>
* configure.tgt: Make arc-*-* obsolete.
* NEWS: Mention that arc-*-* has been identifed as obsolete.
* MAINTAINERS: Make arc-elf obsolete.
* arc-tdep.c: Make file obsolete.
* config/arc/arc.mt: Ditto.
* config/arc/tm-arc.h: Ditto.