Commit Graph

332 Commits

Author SHA1 Message Date
kristerw 51bd2f0605 Use correct parameters (TARGET_PAGE_SIZE etc.) 1998-12-12 21:53:14 +00:00
christos 272c18109a Add -DLINTCOMMENT for the previous change so that it is easy to spot. 1998-12-09 14:50:02 +00:00
christos 875e080659 Add a new flag -CC, that preserves comments in macro definitions and expands
them in the right place in the file. Used for lint(1).
1998-12-09 12:26:17 +00:00
mycroft 21bf4404e6 GC some unused code. 1998-12-04 17:35:53 +00:00
mycroft 79410cf933 Switch the reloc type to GOT32 earlier, and do not permit GOT32 relocs to be
turned into section-relative relocs.
1998-12-04 17:22:52 +00:00
mycroft 3934bd1d8b More bug fixes from Richard Earnshaw:
* Fix problems with moving constants smaller than the word size.
* Fix problems with CSE trying to shortcut PIC references.
1998-12-03 16:05:47 +00:00
eeh d445f3c355 Need to select a DEFAULT_TARGET_CPU when building in-tree 1998-11-28 17:55:43 +00:00
mrg f1580cbe73 add __arch64__, __sparcv9__ and remove unix, from CPP_PREDEFINES. 1998-11-23 09:16:57 +00:00
mrg 1bf8dbcfa8 set ELFSIZE to 64 here, so that ELFALIGN gets set to 8, so ALIGN() gets called with an argument. 1998-11-23 02:47:59 +00:00
mrg c5121a9ba4 add sparc64--netbsd support 1998-11-23 02:47:37 +00:00
mrg eb11f92a79 make this work. seems it needed `long int' and `long unsigned int' *exactly*
otherwise it wanted to dump core.  strange.  seems to work OK now.
1998-11-22 07:54:00 +00:00
kristerw cc2b58be2a Prevent gdb from getting stuck in _PROCEDURE_LINKAGE_TABLE_ ()
Closes my PR bin/6323.
1998-11-21 23:43:48 +00:00
kristerw b502b56ff5 Changes to make strip and objcopy work for a.out 1998-11-21 22:42:32 +00:00
kristerw e39ec0adc1 NetBSD specific things needed by the shared library support. 1998-11-21 22:38:40 +00:00
mycroft 500c26b496 Post-1.1.1pre2 patches from me and Richard Earnshaw. Fixes problems with
allocation of the r10 register, and some cases where code would fail to
compile.
1998-11-21 22:09:32 +00:00
mycroft facb3de742 Post-1.1.1pre2 patch from Jeff Law, via the egcs repository, which fixes some
problems with register allocation.
In particular, this should fix if_we on the i386, and GNU malloc on the m68k.
1998-11-21 22:06:47 +00:00
mrg 8bb0deaa38 add sparc64--netbsd support. enable all sparc targets for sparcnetbsd_vec 1998-11-21 17:51:11 +00:00
mrg ea29f88089 add sparc64--netbsd support. 1998-11-21 17:50:09 +00:00
mrg d842fea8df EM_SPARC64 is 43 _NOT_ 11 (which is bad-endian RS6000 :). this was accepted by the binutils maintainers several months ago... 1998-11-21 17:29:15 +00:00
mrg 747cbdde89 deal with `sparc64--netbsd'. 1998-11-21 04:39:03 +00:00
mrg c1b5511954 these are my NetBSD/sparc64 compiler descriptions. treat only as "work in progress." 1998-11-21 04:28:59 +00:00
tv 5f9a39a821 Add %{R*} to the LINK_SPECs which don't have them, to make rpath options
consistent on the compiler's front end.  (Note that -Wl,-R/path/ is still
the preferred usage in third-party software for 1.2+ compatibility.)
1998-11-17 18:22:51 +00:00
tv 1e43fc94f3 Make -G an option letter that takes an argument. Also nuke HAVE_ATEXIT as
that's in the global netbsd.h.
1998-11-17 18:15:28 +00:00
kristerw 6c9bbc91b6 Fix some weak symbol lossage. 1998-11-15 19:06:28 +00:00
tv c33b9ddf0b Conflict resolution from 1.1.1pre2 import. 1998-11-14 04:27:16 +00:00
tv 7500a991df Import egcs 1.1.1 prerelease 2 1998-11-14 04:14:09 +00:00
mycroft ffe8316398 Fix a code generation bug in store_expr() when the rhs is a memory location
pointed to by a postincremented (or postdecremented) pointer and the value
of the assignment is reused.
1998-11-08 14:58:09 +00:00
jonathan 6850880028 Use Standard SVR4 ctor/dtor mechanism: emit vectors for C++ file-level
constructors/destructors in .ctor/.dtor sections, respectively.

[cf:  src/gnu/usr.bin/gcc/arch/mips/netbsd.h	rev 1.10]
1998-11-07 18:00:10 +00:00
jonathan 6d127dfb63 Revert previous patch. Replace with patch from Cygnus binutils
maintainers which implements gnu c++ exception dynsums while
preserving compatiblity with Irix5 linker. (by no longer identyifying
particular sections that appear inside the .dynsym section).
1998-11-01 22:01:14 +00:00
jonathan 7431d9c704 Fixup last line of previous revision (editor buffer mishap?) 1998-10-31 12:52:34 +00:00
jonathan fe7810c7dc egcs-1.1 netbsd/mips config fixes:
1. Change linkspec to not pass -nostdlib to binutils ld, since on mips,
      ld parses "-nostdlib" as a set of short options which produce
      nonworking binaries.
  2.  Turn off ASM_OUTPUT_DEF definition: the egcs iris6.h says that
      our old definition (from gcc 2.7.2.2 iris5.h isnt really whats
      wanted here.
  3.  Turn off SET_ASM_OP (which defaults to .set) to stop
      dwarf2out.c from emitting debug(?) info for C++ using ".set",
      since both gas and mips as use .set to control assembler
      optimizations, not for equating labels. From iris6.h.
      and nonzero -G values are incompatible with PIC.
  4.  Set default GVALUE (for -G) to 0; this target always produces PIC
      by default, and on mips, PIC is incompatible with `small' segment.
  5.  Set TARGET_DEFAULT to enable "-mdebuga" to defeat
      GO_IF_LEGITIMATE_ADDRESS "smarts". GO_IF_LEGITIMATE_ADDRESS pretends
      that mips supports an address mode of constant + register.
      For constants larger than 16 bits, that relies on assembler fixups
      via $at.  egcs 1.1 (expr.c delta 1.76) may break up those addresses
      such that the backend cannot output them as offsets in load or store
      instructions anymore; no other patterns match so egcs coredumps.
1998-10-31 12:07:01 +00:00
matt 6b48270d7f Add a "new" reloc since tells ld that the DISP32 can become a GLOB_DAT. 1998-10-31 09:45:55 +00:00
jonathan 945f042426 egcs-1.1 emits .gcc_exception_table sections for C++ exception info on
mips, which causes binutils-2.8.1 ld (also 2.9.1) to coredump due to
an unrecognized dynsym index.

add ".gcc_except_table" to the list of section names which can appear
in the .dynsym section of an elf-mips [irix5, sic] binary. Confirmed
to fix the coredump for both binutils 2.8.1 and 2.9.1 ld.

Patch from Castor Fu <castor@geocast.com>. Reported to bug-gnu-misc
with this patch, should appear in a future binutils release.
1998-10-31 01:55:24 +00:00
jonathan 0244692638 patch solib.c from gdb 4.16 to work around non-relocation and
misfeatures with ELF on mips. Without this, gdb gets addresess in
shared-libraries wrong and reports `heuristic fencepost' error.

(cf. the special-case solib functions duplicated in irix5-nat.c.)
1998-10-30 06:33:00 +00:00
matt d7585142e2 Include VAX instruction disassembly support into bfd. (XXX case[lbw] still
needs to be done.)
1998-10-29 17:31:10 +00:00
matt 87cd4ef9e6 More PIC fixes. 1998-10-28 15:56:20 +00:00
matt ba7ad80c79 Fix cut&paste error. 1998-10-28 15:54:46 +00:00
matt 540ce132a7 Many fixes. Produes correct code now for strtoq.c and gawk. 1998-10-28 15:53:24 +00:00
matt b185a88969 In non-BFD assemblers on NetBSD, use the NetBSD method of indicating
weak variables.
1998-10-25 00:26:36 +00:00
matt bbd553f2e6 Eliminate more RRS text warnings. Fix a few fatal_insns with g++. 1998-10-21 06:39:55 +00:00
matt b472384710 Another small PIC bug fix. 1998-10-20 15:36:48 +00:00
matt 85da69cb36 More PIC bug fixes. 1998-10-20 14:58:44 +00:00
matt d57a728bc2 If trying to covert operand to indirect and it already is
indirect, complain with a fatal error.
1998-10-19 23:35:07 +00:00
matt 40b1bb9563 A large number of changes to enable PIC support and shared libraries
for NetBSD/vax.
1998-10-19 03:01:52 +00:00
ragge 01921e4c4b TARGET_PAGE_SIZE should be 4k. 1998-10-18 08:48:59 +00:00
matt c04e8d03ca Fix bug where "calls x, *foo" went through PLT, not GOT. 1998-10-18 06:54:13 +00:00
matt 058ca7f5d6 Add PIC mode support. Note that most of the support for PIC mode on
the VAX is inside gas.  There are cooperative changes in gcc/egcs and
ld as well.
1998-10-17 18:55:23 +00:00
matt 6178b5ccd0 Add a M_VAX (old 1K MID) for gas. 1998-10-17 18:49:50 +00:00
matt d3b202ace6 Add a type label (needed for VAX assembly). 1998-10-17 18:49:09 +00:00
tv 57d34f92e8 Set MAX_OFILE_ALIGNMENT to 32 as suggested by <chas@cmf.nrl.navy.mil> in
PR port-m68k/6308.  Since m68k's can access doubles fine on a 32-bit
boundary, this does not need to be 64.
1998-10-16 20:07:15 +00:00