Age | Commit message (Collapse) | Author | Files | Lines |
|
* mips-tdep.c (mips_o32o64_push_arguments): New function,
cloned from mips_push_arguments, tuned for o32/o64 ABI.
(mips_gdbarch_init): Set gdbarch_push_arguments to new func.
|
|
* vax-tdep.c (vax_get_saved_register): Delete function.
(vax_gdbarch_init): Update.
* ns32k-tdep.c (ns32k_get_saved_register): Delete function.
(ns32k_gdbarch_init): Update.
* alpha-tdep.c (alpha_get_saved_register): Delete function.
(alpha_gdbarch_init): Update.
|
|
|
|
|
|
* regcache.c (init_regcache_descr): Overallocate the
raw_register_valid_p array including space for NUM_PSEUDO_REGS.
(registers_changed): Replace NUM_REGS+NUM_PSEUDO_REGS with
num_raw_registers.
(set_register_cached): Add range checking assertions. Use
current_regcache.
|
|
* gas/m68hc11/insns12.s: New file to test specific 68HC12 insns.
* gas/m68hc11/insns12.d: New file.
* gas/m68hc11/branchs12.s: New test.
* gas/m68hc11/branchs12.d: New test.
* gas/m68hc11/all_insns.d: Dump the relocs to verify that they
are against symbols and not sections (for linker relaxation).
* gas/m68hc11/insns-dwarf2.d: Likewise.
* gas/m68hc11/insns.d: Likewise.
* gas/m68hc11/lbranch.d: Likewise.
* gas/m68hc11/lbranch-dwarf2.d: Likewise.
* gas/m68hc11/opers12.d: Likewise.
* gas/m68hc11/opers12-dwarf2.d: Likewise.
|
|
(TC_HANDLES_FX_DONE): Define to let md_apply_fix3 set fx_done flag
according to the reloc.
(tc_fix_adjustable, tc_m68hc11_fix_adjustable): Define.
(TC_FORCE_RELOCATION): Define.
(tc_m68hc11_force_relocation): Declare.
* config/tc-m68hc11.c (md_pseudo_table): Add relax command.
(s_m68hc11_relax): New function for relax group.
(build_insn, build_jump_insn): Emit a M68HC11_RL_JUMP reloc at
beginning of jump instruction.
(md_pcrel_from): Rename from md_pcrel_from_section and fix
address computation.
(tc-gen_reloc): Update.
(md_estimate_size_before_relax): Create the BFD_RELOC_16_PCREL as
PC-relative fixup.
(tc_m68hc11_force_relocation): New function, handle new relocs.
(tc_m68hc11_fix_adjustable): New to make sure there are enough
reloc for the linker relax pass.
(md_apply_fix3): Handle M68HC11_RL_JUMP, M68HC11_RL_GROUP
and VTABLE relocs.
|
|
|
|
numbers for MMX registers.
|
|
(md_pseudo_table): Add .mode, .far and .interrupt pseudo op.
(s_m68hc11_mode): New function for .mode pseudo op.
(s_m68hc11_mark_symbol): New function for .far and .interrupt
pseudo op.
* config/tc-m68hc11.h (elf_tc_final_processing): Define.
(m68hc11_elf_final_processing): Declare.
|
|
* gdb.texinfo (Maintenance Commands): Document "maint print
registers", "maint print raw-registers" and "maint print
cooked-registers".
|
|
page operand for call instruction.
(print_opcode_format): Likewise.
(check_range): Likewise for page range checking.
(get_operand): Don't skip a possible comma in operands.
(fixup8): Generate BFD_RELOC_M68HC11_PAGE reloc.
(fixup16): Likwise with BFD_RELOC_M68HC11_LO16.
(fixup24): New to handle call reloc.
(build_insn): Handle missing page operand for call instruction.
(find): Likewise.
(md_apply_fix3): Take into account new relocs.
(get_operand): Fix the mode for indexed indirect addressing.
(build_indexed_byte): Fix post index byte for indexed indirect mode.
|
|
(elf32_m68hc11_gc_sweep_hook): Likewise.
(elf_backend_gc_mark_hook): Define for GC section support.
(elf_backend_gc_sweep_hook): Likewise.
(elf_backend_can_gc_sections): Likewise.
* elf32-m68hc12.c: Likewise.
|
|
* elf32-m68hc11.c (elf_m68hc11_howto_table): Add the new relocs;
fix masks for PC-rel relocs.
(m68hc11_elf_ignore_reloc): New function.
|
|
(_bfd_m68hc11_elf_merge_private_bfd_data): New function.
(_bfd_m68hc11_elf_set_private_flags): New function.
Use them to set/check/print ELF flags specific to 68HC11.
* elf32-m68hc12.c (_bfd_m68hc12_elf_print_private_bfd_data): New.
(_bfd_m68hc12_elf_merge_private_bfd_data): New function.
(_bfd_m68hc12_elf_set_private_flags): New function.
Use them to set/check/print ELF flags specific to 68HC12.
|
|
fix masks for PC-rel relocs.
(m68hc11_elf_ignore_reloc): New function.
* elf32-m68hc12.c (m68hc12_elf_special_reloc): New to handle specific
68HC12 banked addressing relocs.
(m68hc12_phys_addr): New to compute physical address of banked memory.
(m68hc12_phys_page): Likewise for page.
(m68hc12_addr_is_banked): New to see if address is in banked area.
(elf_m68hc12_howto_table): Add new relocs and rename to xx12.
|
|
BFD_RELOC_M68HC11_LO16, BFD_RELOC_M68HC11_PAGE,
BFD_RELOC_M68HC11_24): New relocs for 68HC11/68HC12.
* bfd-in2.h: Regenerate.
|
|
generic_unwind_get_saved_register.
|
|
Identify instructions that are branches and calls to generate a
RL_JUMP relocation.
|
|
banks and fix disassembling of call instruction.
(print_indexed_operand): New param to tell whether
it was an indirect addressing operand (for disassembling call).
|
|
(M68HC12_BANK_VIRT, M68HC12_BANK_MASK, M68HC12_BANK_BASE,
M68HC12_BANK_SHIFT, M68HC12_BANK_PAGE_MASK): Define for 68HC12
memory banks.
(M6811_OC1M5, M6811_OC1M4, M6811_MODF): Fix value.
|
|
(init_procfs_ops): Define ``to_can_use_hw_breakpoint'' for procfs
target vector.
* config/mips/nm-irix5.h (TARGET_CAN_USE_HARDWARE_WATCHPOINT):
Delete. Add comment regarding this now-deleted target method.
|
|
(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.
|
|
(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.
|
|
(M68HC11_LAST_HARD_REG, m68hc11_register_names): Update.
(m68hc11_register_virtual_type): Return a 8-bit type for 8-bit
registers.
(m68hc11_register_raw_size): Likewise.
|
|
* 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.
|
|
* regcache.c (regcache_raw_read_as_address): Delete function.
(regcache_cooked_read_signed): New function.
(regcache_cooked_read_unsigned): New function.
* regcache.h (regcache_cooked_read_signed): Declare.
(regcache_cooked_read_unsigned): Declare.
(regcache_raw_read_as_address): Delete declaration.
* blockframe.c (generic_read_register_dummy): Use
regcache_cooked_read_unsigned.
* i386-tdep.c (i386_extract_struct_value_address): Use
regcache_cooked_read_unsigned.
|
|
* 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.
|
|
double sizes according to ELF ABI flags.
(gdbarch_tdep): Record elf_flags.
|
|
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.
|
|
(m6812_prolog): They can appear in 68HC12 function prologue.
(m68hc11_frame_chain): Cleanup.
|
|
|
|
reset vector and set cpu_use_elf_start to 1 if not found.
(sim_open): Do not set cpu_use_elf_start.
|
|
(sim_prepare_for_program): Use the sim_hw_configure exit code to
return SIM_RC_FAIL.
|
|
|
|
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.
|
|
* dv-m68hc11.c (m68hc11cpu_ports): Add cpu-write-port input.
(m68hc11cpu_port_event): Handle CPU_WRITE_PORT event.
|
|
when IO mapping changed, not when internal RAM mapping is changed.
|
|
* 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.
|
|
|
|
|
|
(MAXPAGESIZE): Set to 1.
* ld.h (ALIGN_N): Delete.
* ldexp.h (align_n): Declare.
* ldexp.c (align_n): New function.
(fold_binary): Use align_n instead of ALIGN_N.
(exp_fold_tree): Likewise.
* ldlang.c (lang_size_sections_1): Likewise.
(lang_one_common): Likewise.
|
|
|
|
|
|
* elflink.h (elf_add_default_symbol): Preserve section across
elf_merge_symbol.
|
|
* ld-elfvers/vers.exp: Add vers23.
* ld-elfvers/vers23.c: New.
* ld-elfvers/vers23.dsym: New.
* ld-elfvers/vers23.ver: New.
* ld-elfvers/vers23a.c: New.
* ld-elfvers/vers23a.dsym: New.
* ld-elfvers/vers23a.map: New.
* ld-elfvers/vers23a.sym: New.
* ld-elfvers/vers23a.ver: New.
* ld-elfvers/vers23b.c: New.
* ld-elfvers/vers23b.dsym: New.
* ld-elfvers/vers23b.map: New.
* ld-elfvers/vers23b.ver: New.
|
|
* i386-tdep.h (i386_register_byte, i386_register_raw_size): Delete
declarations.
* i386-linux-tdep.c (i386_linux_register_byte): Delete function.
(i386_linux_register_raw_size): Delete function.
i386_linux_init_abi): Update.
* i386-tdep.c (i386_register_raw_size): Delete function.
(i386_register_byte): Delete function.
(i386_gdbarch_init): Update.
(i386_register_size): Delete array.
(i386_register_offset): Delete array.
* config/i386/tm-symmetry.h (REGISTER_BYTE): Delete macro.
(REGISTER_RAW_SIZE): Delete macro.
* config/i386/tm-ptx.h (REGISTER_RAW_SIZE): Delete macro.
(REGISTER_BYTE): Delete macro.
|
|
listing.
* ld-sh/sh64/cmpct1.xd, ld-sh/sh64/mix1.xd, ld-sh/sh64/mix2.xd,
ld-sh/sh64/rel32.xd, ld-sh/sh64/shdl32.xd: Likewise.
|
|
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.
|
|
* config/tc-mips.c (mips_ip): Don't work out the value of
constant %hi()s here.
[gas/testsuite/]
* gas/mips/elf-consthilo.[sd]: New test.
* gas/mips/mips.exp: Run it.
|