* Makefile.in: Add mips-linux-nat.c, mips-linux-tdep.c,
and sparc-linux-nat.c to ALLDEPFILES. Add dependencies.
* config/sparc/linux.mh: Add sparc-linux-nat.o to NATDEPFILES.
* sparc-linux-nat.c: New file, from Mark Kettenis.
Jim Blandy [Fri, 16 Nov 2001 21:40:36 +0000 (21:40 +0000)]
* s390-tdep.c: Tweak argument-passing to match GCC bugs.
(is_float_singleton, is_struct_like, is_float_like): New
functions, that isolate the weirdness.
(is_double_or_float, is_simple_arg, pass_by_copy_ref,
is_double_arg): Use is_struct_like and is_float_like, rather than
testing the type codes ourselves.
(s390_push_arguments): When passing args on the stack, align each
on to a four-byte boundary, regardless of what the type itself
needs.
Alan Modra [Thu, 15 Nov 2001 12:44:03 +0000 (12:44 +0000)]
* emultempl/elf32.em (gld${EMULATION_NAME}_finish): Only emit this
function when LDEMUL_FINISH isn't set to the same name. Don't
call ${LDEMUL_FINISH}.
(ld_${EMULATION_NAME}_emulation): Call $LDEMUL_FINISH if defined.
* emultempl/armelf.em (arm_elf_finish): Call
gld${EMULATION_NAME}_finish.
* emultempl/hppaelf.em (hppaelf_finish): Rename to
gld${EMULATION_NAME}_finish. Call bfd_elf32_discard_info and
hppaelf_layout_sections_again if necessary.
(need_laying_out): New var.
(hppaelf_layaout_sections_again): Rename to
hppaelf_layout_sections_again. Clear need_laying_out.
(PARSE_AND_LIST_OPTIONS): Format text.
Alan Modra [Thu, 15 Nov 2001 09:31:25 +0000 (09:31 +0000)]
* elflink.h (elf_link_input_bfd): Complain about all relocs
against local syms from discarded sections.
(elf_reloc_symbol_deleted_p): Don't try to swap in external syms.
* d10v-tdep.c (d10v_pointer_to_address): Use new type flag
TYPE_FLAG_CODE_SPACE to recognize a pointer that has been cast
into the instruction address space.
* Makefile.in (doublest.o): Add dependency on gdbtypes.h.
Michael Snyder [Thu, 15 Nov 2001 01:55:59 +0000 (01:55 +0000)]
2001-11-14 Michael Snyder <[email protected]>
Add address space identifiers to expression language for types.
* c-exp.y (space_identifier, cv_with_space_id,
const_or_volatile_or_space_identifier_noopt,
const_or_volatile_or_space_identifier): New terminals.
(ptype): Accept const_or_volatile_or_space_identifier.
(typebase): Accept const_or_volatile_or_space_identifier.
* c-typeprint.c (c_type_print_cv_qualifier): Rename to
c_type_print_modifier. Handle address space modified types.
* gdbtypes.h (TYPE_FLAG_CODE_SPACE, TYPE_FLAG_DATA_SPACE):
New type flags.
(struct type): Add new field as_type for addr-space qualified types.
(TYPE_AS_TYPE): New macro, retrieves the chain of types that are
identical to this one except for address-space qualification.
* gdbtypes.c (alloc_type): Initialize new field 'as_type'.
(address_space_name_to_int): New function.
(address_space_int_to_name): New function.
(make_type_with_address_space): New function.
(make_cv_type): Handle as_type field of new struct type object.
* parse.c (check_type_stack_depth): New function.
(push_type_address_space): New function.
(follow_types): Handle types with address-space qualifier.
* parser-defs.h (enum type_pieces): Add enum tp_space_identifier.
Jim Blandy [Wed, 14 Nov 2001 22:34:38 +0000 (22:34 +0000)]
* s390-tdep.c (s390_pop_frame_regular): On the S/390, the frame
pointer and the SP are often the same, so we can't pop the frame
by setting the SP to the FP; we need to get the old SP from
saved_regs.
Jim Blandy [Wed, 14 Nov 2001 21:55:21 +0000 (21:55 +0000)]
* symfile.c (simple_read_overlay_table): Make sure we can find
both `_novlys' and `_ovly_table' before we try anything else;
print a helpful error message.
(simple_overlay_update): No need to print error message here.
* elf32-s390.c (elf_s390_relocate_section): Use the "unresolved_reloc"
scheme to get rid of an ugly complicated test.
* elf64-s390.c (elf_s390_relocate_section): Likewise.
Merged from net gcc:
2001-07-30 Jeff Sturm <[email protected]>
* ltcf-c.sh: Use $objext, not $ac_objext.
2001-07-27 Mark Kettenis <[email protected]>
* ltcf-cxx.sh: Add support for GNU.
2001-07-22 Timothy Wall <[email protected]>
* ltcf-c.sh: Don't disable shared libraries for AIX5/IA64. Preserve
default settings if using GNU tools with that configuration.
* ltcf-cxx.sh: Ditto.
* ltcf-gcj.sh: Ditto.
2001-07-21 Michael Chastain <[email protected]>
* ltconfig: Set max_cmd_len to a maximum of 512Kb, as it seems some
HPUX 11.0 systems have trouble with 1MB. Mark as gcc-local.
* ltmain.sh: Mark as gcc-local.
* gdb.c++/templates.exp (test_template_breakpoints):
If we get an overload menu, but it does not match what
we expect, we still need to issue the "cancel" command.
* gdb.c++/templates.exp: Replace "void \\*" with "void ?\\*",
making the whitespace optional. Argument for "new" may be
"unsigned" as well as "unsigned int/long".
Jim Blandy [Tue, 13 Nov 2001 17:47:19 +0000 (17:47 +0000)]
* s390-tdep.c: Rewrite inferior function call code. This may
break zSeries support; that should be fixed soon.
#include "gdb_assert.h".
(is_integer_like, is_pointer_like, is_simple_arg,
pass_by_copy_ref, extend_simple_arg, is_double_arg, round_up,
round_down, alignment_of): New functions.
(s390_push_arguments): Rewritten to handle passing large arguments
by value, and to make more readable.
Jim Blandy [Tue, 13 Nov 2001 17:38:49 +0000 (17:38 +0000)]
* s390-tdep.c (s390_pop_frame): Call generic_pop_current_frame, to
interact correctly with generic dummy frames.
(s390_pop_frame_regular): Move the guts of the frame-popping code
to here, to be called by generic_pop_current_frame. Use the
frame's saved_regs array; this works for `return' as well as
inferior function calls.
Jim Blandy [Tue, 13 Nov 2001 17:26:46 +0000 (17:26 +0000)]
* s390-tdep.c (s390_gdbarch_init): Register the function
`standard_coerce_float_to_double', since GCC for the S/390 follows
the standard rules for passing floats.
Jim Blandy [Tue, 13 Nov 2001 16:42:50 +0000 (16:42 +0000)]
Patch from Peter Schauer:
* symtab.c (find_pc_sect_line): If we can't find the function
containing PC, we certainly won't have line number information for
that location, so return zero immediately.
Alan Modra [Tue, 13 Nov 2001 03:52:25 +0000 (03:52 +0000)]
* section.c (bfd_make_section_anyway): Don't increment section_id
and the BFD's section_count if adding the section failed.
* vms.c (vms_new_section_hook): Adjust for bfd_make_section_anyway
change.
Alan Modra [Tue, 13 Nov 2001 01:03:55 +0000 (01:03 +0000)]
* i386.h (i386_optab): Add entries for "sldr", "smsw" and "str" to
accept WordReg.
* i386-dis.c (grps): Change "sldt", "str", and "smsw" entries
to "sldtQ", "strQ", "smswQ" respectively; all with Ev operand
category instead of Ew.
Thiemo Seufer [Mon, 12 Nov 2001 22:22:20 +0000 (22:22 +0000)]
* config/tc-mips.c (support_64bit_objects): Define for OBJ_ELF only.
(md_longopts): Allow OPTION_MABI for ELF compilation only. RE-allow
OPTION_GP32, OPTION_GP64, OPTION_FP32 for non-ELF compilation.
Sort options a bit more logical.
(md_parse_option): Allow OPTION_32, OPTION_N32, OPTION_N64,
OPTION_MABI only for elf targets.
* gas/mips/mips.exp: Change naming of some conditionals to reflect
the object format they actually mean. Don't try mips-abi32 and
mips-abi32-pic tests for ecoff.