* sim-main.h (FGRIDX): Remove, replace all uses with...
(FGR_BASE): New macro.
(FP0_REGNUM, FCRCS_REGNUM, FCRIR_REGNUM): New macros.
(_sim_cpu): Move 'fgr' member to be right before 'fpr_state' member.
(NR_FGR, FGR): Likewise.
* interp.c: Replace all uses of FGRIDX with FGR_BASE.
* mips.igen: Likewise.
* config/tc-mips.c (mips_after_parse_args): New function.
(md_begin): Move processing of defaults to mips_after_parse_args.
config/tc-mips.h (md_after_parse_args): Define.
Aidan Skinner [Tue, 4 Jun 2002 16:09:25 +0000 (16:09 +0000)]
* ada-exp.tab.c: New file
* ada-exp.y: New file
* ada-lang.c: New file
* ada-lang.h: New file
* ada-lex.c: New file
* ada-lex.l: New file
* ada-tasks.c: New file
* ada-typeprint.c: New file
* ada-valprint.c: New file
Alan Modra [Tue, 4 Jun 2002 05:28:52 +0000 (05:28 +0000)]
* elf32-openrisc.c (openrisc_elf_gc_mark_hook): Remove
ATTRIBUTE_UNUSED on used params.
* elf32-vax.c (elf_vax_gc_mark_hook): Remove unnecessary checks
before calling bfd_section_from_elf_index on local syms.
* elf64-sh64.c (sh_elf64_gc_mark_hook): Likewise.
Jason Thorpe [Tue, 4 Jun 2002 02:57:44 +0000 (02:57 +0000)]
bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.
gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.
ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.
opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
* sim-main.h (Nan, Infinity, Less, Equal, AbsoluteValue, Negate)
(Add, Sub, Multiply, Divide, Recip, SquareRoot): Move lower in
file, remove PARAMS from prototypes.
(value_fpr, store_fpr, convert): Likewise. Use SIM_STATE to provide
simulator state arguments.
(ValueFPR, StoreFPR, Convert): Move lower in file. Use SIM_ARGS to
pass simulator state arguments.
* cp1.c (SD): Redefine as CPU_STATE(cpu).
(store_fpr, convert): Remove 'sd' argument.
(value_fpr): Likewise. Convert to use 'SD' instead.
Alan Modra [Tue, 4 Jun 2002 01:06:16 +0000 (01:06 +0000)]
* config/obj-elf.c (obj_elf_change_section): Set and check elf
linkonce flag. Print all warnings.
(obj_elf_section): Parse ",comdat" for groups.
(elf_frob_file): Set SEC_LINK_ONCE on COMDAT groups. Check
consistency of comdat flag.
Alan Modra [Tue, 4 Jun 2002 01:05:21 +0000 (01:05 +0000)]
* elf.c (setup_group): Set SEC_LINK_ONCE on GRP_COMDAT groups.
(bfd_section_from_shdr): Likewise. Set section name of group
sections from signature.
(group_signature): Split out from setup_group. Ensure symbol table
is available.
(bfd_elf_discard_group): New function.
(_bfd_elf_make_section_from_shdr): Don't set SEC_LINK_ONCE on
.gnu.linkonce* sections if they are members of a group.
(set_group_contents): Set GRP_COMDAT flag.
* section.c (bfd_discard_group): New function.
* bfd-in.h (bfd_elf_discard_group): Declare.
* bfd-in2.h: Regenerate.
* elf-bfd.h (struct bfd_elf_section_data): Add linkonce_p field.
(elf_linkonce_p): Define.
* configure.in (mipsisa64sb1*-*-*): New target for supporting
Broadcom SiByte SB-1 processor configurations.
* configure: Regenerate.
* sb1.igen: New file.
* mips.igen: Include sb1.igen.
(sb1): New model.
* Makefile.in (IGEN_INCLUDE): Add sb1.igen.
* mdmx.igen: Add "sb1" model to all appropriate functions and
instructions.
* mdmx.c (AbsDiffOB, AvgOB, AccAbsDiffOB): New functions.
(ob_func, ob_acc): Reference the above.
(qh_acc): Adjust to keep the same size as ob_acc.
* sim-main.h (status_SBX, MX_VECT_ABSD, MX_VECT_AVG, MX_AbsDiff)
(MX_Avg, MX_VECT_ABSDA, MX_AbsDiffC): New macros.
* elf64-alpha.c (elf64_alpha_relocate_section): Don't dereference
null when there are no got entries for a symbol.
(elf64_alpha_relax_find_tls_segment): Rearrange to avoid
uninitialized variable warning.
* elf64-alpha.c (elf64_alpha_relax_with_lituse): Don't test for
undefined symbols here.
(elf64_alpha_relax_section): Do it here. Also test for not
defined in the current module.
(elf64_alpha_relocate_section_r): Split out of ...
(elf64_alpha_relocate_section): ... here. Don't dereference
NULL when looking up local got entries.
Andrew Cagney [Sat, 1 Jun 2002 20:44:21 +0000 (20:44 +0000)]
* stack.c (frame_info): Use frame_register_unwind instead of
saved_regs. Mention when the SP is on the stack or in a register.
* frame.h (frame_register_unwind_ftype): Define. Document.
(struct frame_info): Add field register_unwind and
register_unwind_cache.
(frame_register_unwind): Declare.
(generic_unwind_get_saved_register): Declare.
* frame.c (frame_register_unwind): New function.
(generic_unwind_get_saved_register): New function.
* blockframe.c (generic_call_dummy_register_unwind): New function.
(frame_saved_regs_register_unwind): New function.
(set_unwind_by_pc): New function.
(create_new_frame): New function.
(get_prev_frame): New function.
* config/tc-mips.c (mips_set_options): New "ase_mdmx" member.
(mips_opts): Initialize "ase_mdmx" member.
(file_ase_mdmx): New variable.
(CPU_HAS_MDMX): New macro.
(md_begin): Initialize mips_opts.ase_mdmx and file_ase_mdmx
based on command line options and configuration defaults.
(macro_build): Note in comment that use of MDMX in macros is
not currently allowed.
(validate_mips_insn): Add support for the "O", "Q", "X", "Y", and
"Z" MDMX operand types.
(mips_ip): Accept MDMX instructions if mips_opts.ase_mdmx is set,
and add support for the "O", "Q", "X", "Y", and "Z" MDMX operand
types.
(OPTION_MDMX, OPTION_NO_MDMX, md_longopts, md_parse_option):
Add support for "-mdmx" and "-no-mdmx" options.
(OPTION_ELF_BASE): Move to accomodate new options.
(s_mipsset): Support ".set mdmx" and ".set nomdmx".
(mips_elf_final_processing): Set MDMX ASE ELF header flag if
file_ase_mdmx was set.
* doc/as.texinfo: Document -mdmx and -no-mdmx options.
* doc/c-mips.texi: Likewise, and document ".set mdmx" and ".set
nomdmx" directives.
[ gas/testsuite/ChangeLog ]
2002-05-30 Chris G. Demetriou <[email protected]>
* gas/mips/mips64-mdmx.s: New file.
* gas/mips/mips64-mdmx.d: Likewise.
* gas/mips/mips.exp: Run new "mips64-mdmx" test.
[ include/opcode/ChangeLog ]
2002-05-30 Chris G. Demetriou <[email protected]>
* mips.h (OP_SH_ALN, OP_MASK_ALN, OP_SH_VSEL, OP_MASK_VSEL)
(MDMX_FMTSEL_IMM_QH, MDMX_FMTSEL_IMM_OB, MDMX_FMTSEL_VEC_QH)
(MDMX_FMTSEL_VEC_OB, INSN_READ_MDMX_ACC, INSN_WRITE_MDMX_ACC)
(INSN_MDMX): New constants, for MDMX support.
(opcode character list): Add "O", "Q", "X", "Y", and "Z" for MDMX.
* mips-dis.c (print_insn_arg): Add support for 'O', 'Q', 'X', 'Y',
and 'Z' formats, for MDMX.
(mips_isa_type): Add MDMX instructions to the ISA
bit mask for bfd_mach_mipsisa64.
* mips-opc.c: Add support for MDMX instructions.
(MX): New definition.
* mips-dis.c: Update copyright years to include 2002.
Jason Thorpe [Fri, 31 May 2002 00:19:47 +0000 (00:19 +0000)]
* Makefile.in (sparc-tdep.o): Add osabi.h to dependency list.
* sparc-tdep.c: Include osabi.h.
(gdbarch_tdep): Add osabi member.
(_initialize_sparc_tdep): Use gdbarch_register.
(sparc_gdbarch_init): Use generic OS ABI framework.
(sparc_dump_tdep): New function.
Thiemo Seufer [Thu, 30 May 2002 22:29:20 +0000 (22:29 +0000)]
* config/tc-mips.c (load_address): Use mips_gp_register instead
of hardcoded value. Remove dbl parameter, use HAVE_32BIT_ADDRESSES
instead.
(macro): Use mips_gp_register instead of hardcoded value.