Age | Commit message (Collapse) | Author | Files | Lines |
|
* cris-dis.c (TRACE_CASE): Define as (disdata->trace_case).
(struct cris_disasm_data): New type.
(format_reg, format_hex, cris_constraint, print_flags)
(get_opcode_entry): Add struct cris_disasm_data * parameter. All
callers changed.
(format_sup_reg, print_insn_crisv32_with_register_prefix)
(print_insn_crisv32_without_register_prefix)
(print_insn_crisv10_v32_with_register_prefix)
(print_insn_crisv10_v32_without_register_prefix)
(cris_parse_disassembler_options): New functions.
(bytes_to_skip, cris_spec_reg): Add enum cris_disass_family
parameter. All callers changed.
(get_opcode_entry): Call malloc, not xmalloc. Return NULL on
failure.
(cris_constraint) <case 'Y', 'U'>: New cases.
(bytes_to_skip): Handle 'Y' and 'N' as 's'. Skip size is 4 bytes
for constraint 'n'.
(print_with_operands) <case 'Y'>: New case.
(print_with_operands) <case 'T', 'A', '[', ']', 'd', 'n', 'u'>
<case 'N', 'Y', 'Q'>: New cases.
(print_insn_cris_generic): Emit "bcc ." for zero and CRISv32.
(print_insn_cris_with_register_prefix)
(print_insn_cris_without_register_prefix): Call
cris_parse_disassembler_options.
* cris-opc.c (cris_spec_regs): Mention that this table isn't used
for CRISv32 and the size of immediate operands. New v32-only
entries for bz, pid, srs, wz, exs, eda, dz, ebp, erp, nrp, ccs and
spc. Add v32-only 4-byte entries for p2, p3, p5 and p6. Change
ccr, ibr, irp to be v0..v10. Change bar, dccr to be v8..v10.
Change brp to be v3..v10.
(cris_support_regs): New vector.
(cris_opcodes): Update head comment. New format characters '[',
']', space, 'A', 'd', 'N', 'n', 'Q', 'T', 'u', 'U', 'Y'.
Add new opcodes for v32 and adjust existing opcodes to accommodate
differences to earlier variants.
(cris_cond15s): New vector.
|
|
comments. Remove member cris_ver_sim. Add members
cris_ver_sim_v0_10, cris_ver_v0_10, cris_ver_v3_10,
cris_ver_v8_10, cris_ver_v10, cris_ver_v10p.
(struct cris_support_reg, struct cris_cond15): New types.
(cris_conds15): Declare.
(JUMP_PC_INCR_OPCODE_V32, BA_DWORD_OPCODE, NOP_OPCODE_COMMON)
(NOP_OPCODE_ZBITS_COMMON, LAPC_DWORD_OPCODE, LAPC_DWORD_Z_BITS)
(NOP_OPCODE_V32, NOP_Z_BITS_V32): New macros.
(NOP_Z_BITS): Define in terms of NOP_OPCODE.
(cris_imm_oprnd_size_type): New members SIZE_FIELD_SIGNED and
SIZE_FIELD_UNSIGNED.
|
|
(EF_CRIS_VARIANT_V32, EF_CRIS_VARIANT_COMMON_V10_V32): New
macros.
|
|
|
|
* elf64-ppc.h (ppc64_elf_edit_toc): Declare.
* elf64-ppc.c (struct ppc_link_hash_entry <adjust_done>): Update
comment.
(struct adjust_toc_info): New.
(adjust_toc_syms, ppc64_elf_edit_toc): New functions.
ld/
* emultempl/ppc64elf.em (no_tls_opt): Rename from notlsopt.
(no_opd_opt, no_toc_opt): New static vars.
(ppc_before_allocation): Don't edit opt if no_opd_opt. Call
ppc64_elf_edit_toc.
(OPTION_NO_OPD_OPT, OPTION_NO_TOC_OPT): Define.
(PARSE_AND_LIST_LONGOPTS): Add no-opd-optimize and no-toc-optimize.
(PARSE_AND_LIST_OPTIONS): Describe new options.
(PARSE_AND_LIST_ARGS_CASES): Handle them.
|
|
2004-11-04 Jan Beulich <jbeulich@novell.com>
* config/tc-i386.c (set_intel_syntax): Allow % in symbol names when
intel syntax and no register prefix, allow $ in symbol names when
intel syntax.
(set_16bit_gcc_code_flag): Replace literal 'l' by LONG_MNEM_SUFFIX.
(intel_float_operand): Add fourth return value indicating math control
operations. Make classification more precise.
(md_assemble): Complain if memory operand of mov[sz]x has no size
specified.
(parse_insn): Translate word operands to floating point instructions
operating on integers as well as control instructions to short ones
as expected by AT&T syntax. Translate 'd' suffix to short one only for
floating point instructions operating on non-integer operands.
(match_template): Remove fldcw special case. Adjust q-suffix handling
to permit it on fild/fistp/fisttp in AT&T mode.
(process_suffix): Don't guess DefaultSize insns' suffix from
stackop_size for certain floating point control instructions. Guess
suffix for branch and [ls][gi]dt based on flag_code. Split error
messages for Intel and AT&T syntax, and make the condition more strict
for the former. Adjust suppressing of generation of operand size
overrides.
(intel parser): Allow the full set of MASM operators. Add FWORD, TBYTE,
OWORD, and XMMWORD operand size specifiers (TBYTE replaces XWORD). Add
more error checking.
* config/tc-i386.h (BYTE_PTR WORD_PTR DWORD_PTR QWORD_PTR XWORD_PTR
SHORT OFFSET_FLAT FLAT NONE_FOUND): Remove unused defines.
gas/testsuite/
2004-11-04 Jan Beulich <jbeulich@novell.com>
* gas/i386/i386.exp: Execute new tests intelbad and intelok.
* gas/i386/intelbad.[sl]: New test to check for various things not
permitted in Intel mode.
* gas/i386/intel.d, gas/i386/opcode.d, gas/i386/x86-64-opcode.d:
Adjust for change to segment register store.
* gas/i386/intelok.[sd]: New test to check various Intel mode specific
things get handled correctly.
* gas/i386/x86_64.[sd]: Remove unsupported constructs referring to
'high' and 'low' parts of an operand, which the parser previously
accepted while neither telling that it's not supported nor that it
ignored the remainder of the line following these supposed keywords.
include/opcode/
2004-11-04 Jan Beulich <jbeulich@novell.com>
* i386.h (sldx_Suf): Remove.
(FP, l_FP, sl_FP, x_FP): Don't imply IgnoreSize.
(q_FP): Define, implying no REX64.
(x_FP, sl_FP): Imply FloatMF.
(i386_optab): Split reg and mem forms of moving from segment registers
so that the memory forms can ignore the 16-/32-bit operand size
distinction. Adjust a few others for Intel mode. Remove *FP uses from
all non-floating-point instructions. Unite 32- and 64-bit forms of
movsx, movzx, and movd. Adjust floating point operations for the above
changes to the *FP macros. Add DefaultSize to floating point control
insns operating on larger memory ranges. Remove left over comments
hinting at certain insns being Intel-syntax ones where the ones
actually meant are already gone.
opcodes/
2004-11-04 Jan Beulich <jbeulich@novell.com>
* i386-dis.c (Eq, Edqw, indirEp, Gdq, I1): Define.
(indirEb): Remove.
(Mp): Use f_mode rather than none at all.
(t_mode, dq_mode, dqw_mode, f_mode, const_1_mode): Define. t_mode
replaces what previously was x_mode; x_mode now means 128-bit SSE
operands.
(dis386): Make far jumps and calls have an 'l' prefix only in AT&T
mode. movmskpX's, pextrw's, and pmovmskb's first operands are Gdq.
pinsrw's second operand is Edqw.
(grps): 1-bit shifts' and rotates' second operands are I1. cmpxchg8b's
operand is Eq. movntq's and movntdq's first operands are EM. s[gi]dt,
fldenv, frstor, fsave, fstenv all should also have suffixes in Intel
mode when an operand size override is present or always suffixing.
More instructions will need to be added to this group.
(putop): Handle new macro chars 'C' (short/long suffix selector),
'I' (Intel mode override for following macro char), and 'J' (for
adding the 'l' prefix to far branches in AT&T mode). When an
alternative was specified in the template, honor macro character when
specified for Intel mode.
(OP_E): Handle new *_mode values. Correct pointer specifications for
memory operands. Consolidate output of index register.
(OP_G): Handle new *_mode values.
(OP_I): Handle const_1_mode.
(OP_ESreg, OP_DSreg): Generate pointer specifications. Indicate
respective opcode prefix bits have been consumed.
(OP_EM, OP_EX): Provide some default handling for generating pointer
specifications.
|
|
|
|
* Makefile.in (m32r-tdep.o): Update dependencies.
* m32r-tdep.c (m32r_gdbarch_init): Call gdbarch_init_osabi for
ABI-specific overrides.
|
|
if there are no segments.
|
|
* m32r-tdep.c (m32r_memory_insert_breakpoint): Remove
unnecessary parallel execution bit.
(m32r_memory_remove_breakpoint): Ditto.
(m32r_breakpoint_from_pc): Update.
|
|
|
|
* hppa-tdep.c (hppa_frame_cache): Use frame_pc_unwind instead of
frame_func_unwind to locate the unwind entry.
(hppa_frame_this_id): Likewise.
|
|
|
|
* gdb.base/savedregs.exp, gdb.base/savedregs.c: New files.
|
|
|
|
* gdb/NEWS: Mention internationalization, m32r-*-linux-gnu, 'p'
packet, obsolete configurations, end-of-life deprecated_registers.
|
|
sections.
|
|
unw_aux_info and unw_table_entry.
(find_symbol_for_address): Pass symtab and strtab info explicitly.
(dump_ia64_unwind): Rename unw_{aux_info,table_entry} with ia64_
prefix.
(slurp_ia64_unwind_table): Likewise.
(ia64_process_unwind): Rename from old process_unwind.
(hppa_unw_aux_info): New.
(dump_hppa_unwind): New.
(slurp_hppa_unwind_table): New.
(hppa_process_unwind): New.
(process_unwind): Factor out common unwinding checks; dispatch to
unwind handler based on machine type.
|
|
md_short_jump_size, md_long_jump_size.
* write.c [!WORKING_DOT_WORD]: Ditto.
* tc.h [!WORKING_DOT_WORD]: Declare them here. Drop const
qualifier.
* config/tc-cris.h (md_short_jump_size, md_long_jump_size): Don't
declare.
* config/tc-cris.c (md_short_jump_size, md_long_jump_size): Drop
const qualifier in these definitions.
* config/tc-i370.c, config/tc-m68k.c, config/tc-pdp11.c,
config/tc-s390.c, config/tc-tahoe.c, config/tc-vax.c: Ditto.
|
|
|
|
|
|
encodings as well as unsigned encodings.
|
|
|
|
* value.h (COERCE_VARYING_ARRAY): Delete.
* valops.c (value_cast, value_slice): Delete use.
* valarith.c (value_subscript, value_concat): Delete use.
|
|
|
|
|
|
produce a .debug_line section to match up with a user provided .debug_info
section.
|
|
|
|
|
|
|
|
ld-cris/expdyn7.d, ld-cris/gotplt1.d, ld-cris/gotplt2.d,
ld-cris/gotplt3.d, ld-cris/hiddef1.d, ld-cris/libdso-2.d,
ld-cris/locref1.d, ld-cris/locref2.d, ld-cris/weakref2.d,
ld-i386/tlsbin.rd, ld-i386/tlsnopic.rd, ld-i386/tlspic.rd,
ld-ia64/tlsbin.dd, ld-ia64/tlsbin.rd, ld-ia64/tlspic.dd,
ld-ia64/tlspic.rd, ld-powerpc/tlsexe32.d, ld-powerpc/tlsexe32.g,
ld-powerpc/tlsexe32.r, ld-powerpc/tlsexe32.t,
ld-powerpc/tlsso32.d, ld-powerpc/tlsso32.g, ld-powerpc/tlsso32.r,
ld-powerpc/tlsso32.t, ld-s390/tlsbin.dd, ld-s390/tlsbin.rd,
ld-s390/tlspic.rd, ld-sparc/tlssunbin32.rd,
ld-sparc/tlssunpic32.rd, ld-x86-64/tlsbin.rd, ld-x86-64/tlspic.dd,
ld-x86-64/tlspic.rd: Adjust for _GLOBAL_OFFSET_TABLE_ now hidden.
|
|
|
|
|
|
(amd64-sol2-tdep.o): Add dependencies.
* amd64-sol2-tdep.c, config/i386/sol2-64.mh,
config/i386/sol2-64.mt: New files.
* i386-sol2-nat.c (amd64_sol2_gregset64_reg_offset,
amd64_sol2_gregset32_reg_offset, _initialize_amd64_sol2_nat): New.
(supply_gregset): Correct order of arguments to
amd64_supply_native_gregset.
(fill_gregset): Correct order of arguments to
amd64_collect_native_gregset.
* configure.host (i[34567]86-*-solaris2.1[0-9]*): Add new case.
* configure.tgt (i[34567]86-*-solaris2.1[0-9]*): Likewise.
* configure.in (*-*-solaris2.[[6789]]): Add *-*-solaris2.1[[0-9]]
for definition of NEW_PROC_API.
* configure: Regenerate.
|
|
|
|
* configure.tgt: Mark d10v-*-* as obsolete.
* config/d10v/d10v.mt, d10v-tdep.c: Obsolete files.
|
|
don't fit in 32 bits. Use unsigned operations throughout and
simplify the code a bit. Document preconditions.
|
|
* config/pa/tm-linux.h: Delete #undef IN_SOLIB_CALL_TRAMPOLINE.
* config/tm-sysv4.h (IN_SOLIB_CALL_TRAMPOLINE): Delete.
(in_plt_section): Delete.
|
|
|
|
|
|
* mips-tdep.c (mips_in_solib_return_trampoline): Delete.
(mips_gdbarch_init): Do not set same.
|
|
* arch-utils.c (generic_in_solib_call_trampoline): Delete.
* arch-utils.h (generic_in_solib_call_trampoline): Delete.
|
|
* gdbarch.sh (in_solib_call_trampoline): Delete.
* gdbarch.h, gdbarch.c: Re-generate.
|
|
* hppa-tdep.c (hppa_stub_unwind_sniffer): Replace
IN_SOLIB_CALL_TRAMPOLINE with tdep.in_solib_call_trampoline.
* hppa-tdep.h (struct gdbarch_tdep): Add in_solib_call_trampoline.
* hppa-hpux-tdep.c (hppa_hpux_init_abi): Set same.
* hppa-linux-tdep.c (hppa_linux_init_abi): Ditto.
|
|
(mipsnbsd_fetch_inferior_registers): Rename from
fetch_inferior_registers. Make static.
(mipsnbsd_store_inferior_registers): Rename from
store_inferior_registers. Make static.
(_initialize_mipsnbsd_nat): New function and prototype.
* Makefile.in (mipsnbsd-nat.o): Update dependencies.
* config/mips/nbsd.mh (NAT_CLIBS, NAT_FILE): Remove variables.
(NATDEPFILES): Remove infptrace.o and inftarg.o. Add
inf-ptrace.o.
|
|
(fill_fpregset): Do not compile for 64-bit systems.
* i386-sol2-nat.c: Don't include "i386v4-nat.c".
* Makefile.in (i386-sol2-nat.o): Update dependencies.
* config/i386/i386sol2.mh (NATDEPFILES): Add back i386v4-nat.c.
|
|
* xstormy16-tdep.c (xstormy16_in_solib_call_trampoline)
(xstormy16_gdbarch_init): Do not set in_solib_call_trampoline,
delete corresponding unused function.
* armnbsd-tdep.c (arm_netbsd_aout_init_abi): Really do not set
in_solib_call_trampoline.
* config/arm/tm-embed.h (IN_SOLIB_CALL_TRAMPOLINE): Delete.
* config/powerpc/tm-linux.h: Delete #undef IN_SOLIB_CALL_TRAMPOLINE.
* config/mips/tm-nbsd.h: Ditto.
* config/arm/tm-linux.h: Ditto.
* config/mips/tm-linux.h: Ditto.
|
|
* armnbsd-tdep.c (arm_netbsd_aout_init_abi)
(arm_netbsd_aout_in_solib_call_trampoline): Do not set
in_solib_call_trampoline, delete corresponding unused function.
* vaxnbsd-tdep.c (vaxnbsd_aout_in_solib_call_trampoline)
(vaxnbsd_aout_init_abi): Ditto.
* sparcnbsd-tdep.c (sparcnbsd_aout_in_solib_call_trampoline)
(sparc32nbsd_aout_init_abi): Ditto.
* ppc-linux-tdep.c (ppc64_in_solib_call_trampoline)
(ppc_linux_init_abi): Ditto.
* ns32knbsd-tdep.c (ns32knbsd_aout_in_solib_call_trampoline)
(ns32knbsd_init_abi_aout): Ditto.
* mips-tdep.c (mips_in_call_stub, mips_gdbarch_init): Ditto.
* mips-linux-tdep.c (mips_linux_init_abi): Ditto.
* m68kbsd-tdep.c (m68kbsd_aout_in_solib_call_trampoline)
(m68kbsd_aout_init_abi): Ditto.
* i386-cygwin-tdep.c (i386_cygwin_in_solib_call_trampoline)
(i386_cygwin_init_abi): Ditto.
* i386bsd-tdep.c (i386bsd_aout_in_solib_call_trampoline)
(i386bsd_init_abi): Ditto.
|
|
* sparc-sol2-tdep.c (sparc32_sol2_init_abi): Do not set
in_solib_call_trampoline to in_plt_entry, IN_SOLIB_CALL_TRAMPOLINE
isn't used by this architecture.
* sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Ditto.
* sparc64obsd-tdep.c (sparc64obsd_init_abi): Ditto.
* sparc64nbsd-tdep.c (sparc64nbsd_init_abi): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* ppc-linux-tdep.c (ppc_linux_init_abi): Ditto.
* m68klinux-tdep.c (m68k_linux_init_abi): Ditto.
* i386-tdep.c (i386_svr4_init_abi): Ditto.
* i386-nto-tdep.c (i386nto_init_abi): Ditto.
* arm-linux-tdep.c (arm_linux_init_abi): Ditto.
* amd64-tdep.c (amd64_init_abi): Ditto.
|
|
* vaxnbsd-tdep.c (vaxnbsd_elf_init_abi): Do not set
in_solib_call_trampoline to its default value of
generic_in_solib_call_trampoline.
* ppcobsd-tdep.c (ppcobsd_init_abi): Ditto.
* m68kbsd-tdep.c (m68kbsd_elf_init_abi): Ditto.
* i386obsd-tdep.c (i386obsd_elf_init_abi): Ditto.
* i386nbsd-tdep.c (i386nbsdelf_init_abi): Ditto.
* i386fbsd-tdep.c (i386fbsd_init_abi): Ditto.
* hppabsd-tdep.c (hppabsd_init_abi): Ditto.
|