Commit Graph

1476 Commits

Author SHA1 Message Date
pk 4ba42b7d80 shlib.c has been Moved to `src/libexec/ld.aout_so'
etc.c and ld.h have been obsoleted.
1998-12-17 15:41:48 +00:00
pk 0ea0854e75 These files now live in `src/libexec/ld.aout_so/arch' 1998-12-17 15:38:54 +00:00
pk aca560d3b4 Adjust include directories.
Enable standard gcc error checking.
1998-12-17 15:17:27 +00:00
pk e9e87c8bee Collect implementation definitions in `ld_i.h' and use that in other files.
Deal with missing and incorrect prototypes, so this compiles with gcc's
strict error checking turned on.
1998-12-17 14:34:51 +00:00
mrg ca73b352a6 - install ldscripts into /usr/libdata/ldscripts.
- fix makefile to set SCRIPTDIR to /usr/libdata, to stop ld from
  looking in /usr/libdata/ldscripts/ldscripts.
- enable elf32_sparc & sun4 emulation in ld.new (elf32_sparc appears
  to work correctly, sun4 untested).
- add elf64_sparc emul to the list while i'm here...
1998-12-17 13:59:05 +00:00
pk 9f709b3e8b The a.out version of ld.so now lives in `src/libexec/ld.aout_so' 1998-12-17 11:50:58 +00:00
pk cec94710e3 ldconfig(8) now lives in `src/sbin/ldconfig' 1998-12-17 11:47:20 +00:00
itohy 73de6f8893 Fix typo. :-) 1998-12-16 11:45:12 +00:00
pk b489374794 ldd & ldconfig are no longer here. 1998-12-15 22:36:24 +00:00
pk 1ad0913030 Cast down the prototype revolt for now.. 1998-12-15 22:34:38 +00:00
pk fc2f406a64 Pull in proper headers; deal with compiler warnings; miscelleneous KNF. 1998-12-15 22:27:14 +00:00
pk 6dc44fab77 ldd has moved to `src/usr.bin/ldd/ldd_aout' 1998-12-15 22:10:19 +00:00
pk b53366509b Deal with compiler warnings: format strings, prototypes, variable initialization. 1998-12-15 21:35:17 +00:00
pk c03c29c0e4 Prototypes. 1998-12-15 21:33:00 +00:00
pk f6f34d9c9f Pull in <a.out.h>. 1998-12-15 21:28:28 +00:00
pk 7e47c7f32b Add & correct prototypes. 1998-12-15 21:27:08 +00:00
pk 631ebffde3 Layout & compiler warnings. 1998-12-15 21:23:57 +00:00
pk ad3e459220 NetBSD -> __NetBSD__ 1998-12-15 21:22:52 +00:00
drochner becaf78b7b <bsd.own.mk> is still needed for OBJECT_FMT 1998-12-13 12:54:33 +00:00
tv 1343ef3796 GC old gcc 2.7.2.2. 1998-12-12 23:44:22 +00:00
kristerw 20c1f51323 Add sparc and i386 1998-12-12 21:57:19 +00:00
christos ff2bf3becc Add -DLINTCOMMENT 1998-12-09 14:44:03 +00:00
tron 4a605844ff Back out previous change, this is a swedish manual page. 1998-12-05 22:01:58 +00:00
tron 2026cecd29 Fix typo noted by Nigel Reed in PR install/6530. 1998-12-05 21:55:58 +00:00
mycroft dedf21f286 Put back code to use pc-relative branches in the PLT, and avoid doing cache
flushes.
1998-12-03 15:56:51 +00:00
mycroft 26fce3548b Use the `first' argument to md_fix_jmpslot(). 1998-12-03 15:46:28 +00:00
eeh 56fb54c1af Add sparc64 support. 1998-11-28 22:44:22 +00:00
mycroft b9f91bf762 Don't overwrite the n_other field, either. 1998-11-24 18:24:30 +00:00
mycroft f2a59297e3 Also avoid frobbing the EXT bit. 1998-11-24 18:13:19 +00:00
mycroft 2d3f6b20d7 Er, exempt only set symbols from being frobbed. 1998-11-24 18:07:03 +00:00
mycroft a9264c7e35 Do not screw with debugging symbols that have forward references.
Fixes an obscure problem with -O3 and global {con,de}structors with egcs.
1998-11-24 17:59:33 +00:00
mrg 5cb0850ffc build a sparc64 linker. 1998-11-23 09:44:35 +00:00
mrg dfc88dfc2b build a sparc64 assembler. 1998-11-23 09:40:27 +00:00
mrg b2e121ab60 build a sparc64 compiler. 1998-11-23 09:24:43 +00:00
kristerw c4ae740a91 Enable objcopy 1998-11-21 22:54:34 +00:00
kristerw 54cd15a72e Make gas.new default for i386 and sparc. 1998-11-16 18:49:54 +00:00
frueauf b9900d38da Make this work again if BSDOBJDIR is set. 1998-11-16 09:45:48 +00:00
jonathan 947b194cdf Add timestamp files and move-if-change logic for machine-generated source.
`make build UPDATE=1'  relinks the generators, forcing a rebuild
of insn-*.[ch]. Which, without move-if-change,  forces a full recompile.
1998-11-15 04:31:06 +00:00
mycroft cab96925f3 Grad the adddi3 pattern from egcs -- which prevents the insn from getting too
complicated to allocate all the registers it needs.
Fixes PR 5199.
1998-11-12 16:40:47 +00:00
mycroft 2ea86fa2ea Redo the previous:
GC all of the backward branch code (which wasn't used).
Separate the a.out stuff into a separate .h file.
Some other random cleanup.
Leave the arm_preserved_register() hack for now.
1998-11-12 11:03:23 +00:00
mycroft bc4bd03685 Various changes culled from 2.8/egcs to clean this up a bit. 1998-11-12 03:03:34 +00:00
mycroft 1ef4e62a74 Fix from 2.8/egcs to handle the case where a comparison is optimized out
during a reversal.  Fixes PR 5564.
1998-11-11 22:06:47 +00:00
mycroft b4380f21bb Remove an unneeded hack. 1998-11-11 21:19:44 +00:00
mycroft 21135fece3 Remove the useless S constraints in the casesi_internal pattern. 1998-11-11 20:39:21 +00:00
mycroft 6f8f9f2158 Remove a bogus -- and possibly dangerous -- hack to work around a bug in
genoutput.c.
1998-11-11 20:33:25 +00:00
mycroft d301e03afb Look inside USEs for dups. 1998-11-11 20:27:36 +00:00
mycroft 5116c09218 Changes from egcs to fix flow analysis bugs relating to -Wuninitialized and
-fomit-frame-pointer.
1998-11-11 19:03:36 +00:00
mycroft d6f5342639 Modify the ARM PIC changes to be the same as they were done in GCC 2.8. 1998-11-11 18:34:43 +00:00
mycroft 2faed9af34 Delete bogus comment. 1998-11-11 18:32:50 +00:00
mycroft 9612fc2c3b Remove duplicated comment. 1998-11-11 12:13:32 +00:00
mycroft 3f758b12b4 Import corrected load/store multiple code from egcs. 1998-11-11 09:07:17 +00:00
mycroft 5fedd08634 Work around the bug that causes unrecognizable smin insns.
This is truly gross.
1998-11-11 02:57:13 +00:00
mycroft 246ed829a5 Don't fold equality comparisons with constants if the operand is larger than
the word size.
1998-11-10 18:51:45 +00:00
lukem 41adf160f1 add install 1998-11-09 22:47:36 +00:00
mycroft f247710583 Change the version number again. 1998-11-09 18:22:04 +00:00
mycroft 100e0d5e7e From the 2.8 tree:
(find_dummy_reload): New parameter earlyclobber.  If set then don't
use IN for the reload if it also appears elsewhere in the insn.  All
callers changed.

This fixes problems compiling editors/emacs and games/abuse on the Shark.
1998-11-09 18:19:07 +00:00
mycroft 1ee9406232 (global_conflicts): Explicitly ignore real registers. 1998-11-09 18:16:15 +00:00
mycroft 7884b51fe1 From David Edelsohn, via the GCC 2.8 development sources:
* loop.c (combine_movables): Earlier insns don't match later ones.
This fixes compilation problems with sa(1) and pkgsrc/games/abuse.
1998-11-09 14:37:52 +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
mhitch b2b8303852 C++ support changes:
Generate .ctors and .dtors sections which contain the contructor and
deconstructor function addresses.

Use .init and .fini sections to call the functions to call those functions.

Include the crtbegin and crtend object files which perform those calls.
1998-11-06 04:33:43 +00:00
jonathan 9348758e57 GNU gprof does not support mips targets (lacks MD files.) 1998-11-05 04:14:56 +00:00
matt ce394ac326 Add hook to convert some DISP32 relocs to BASREL through a GOT entry.
[XXX not perfect since gotslot are allocated on a per-symbol basis but
not a per-symbol & addend tuple.  This makes impossible to have separate
GOT entries to ___sF (stdin), ___sF+88 (stdout), and ___sF+176 (stderr)]
1998-10-31 09:04:29 +00:00
matt 931b784473 Remove reference to unused include file. 1998-10-31 08:59:58 +00:00
matt 64f4491c2e Add a hook for converting "normal" DISP32 relocs that refer to data symbols
in a shared object to BASEREL relocs through a GOT entry.
1998-10-31 08:56:24 +00:00
jonathan 35721185e0 gcc uses "mips" as the config subdirectory and arch-dependent filename
(eg config/mips/mips.md) for all mips targets, irrespective of
endian-ness or int size.  Update Makefile to match.
XXX sparc64, others?
1998-10-31 02:16:38 +00:00
kristerw a2030d670f Revert last change, since it treats external SIZE symbols as
weak undefined symbols. The problem it tried to solve is
actually a bug in non bfd gas.new.

Fixes PR port-i386/6351 from Bernd Ernesti.
1998-10-24 21:07:15 +00:00
matt 8f7b610683 More fixes and optimizations for VAX shared library support. Including
one that makes vfork work.
1998-10-23 00:51:36 +00:00
matt 42ba16dee7 Make the BINDER debug messages a bit more useful (print index and jmpslot
address too).
1998-10-23 00:44:44 +00:00
matt 6ee7d63576 It seems that gas.new has new types to indicate weakness
of symbols.  Adapt our ld to it.
1998-10-21 06:13:08 +00:00
kleink 069e8a5d77 GC empty `FILES' section. 1998-10-20 16:46:15 +00:00
ross a029e1e7ca Also descend into ld/ldconfig even for ld.new platforms. 1998-10-19 07:06:51 +00:00
ross af935fa530 Even if we are a MACHINE_ARCH that builds ld.new, descend anyway into
ld/rtld & ld/ld.so so the man pages are installed.
1998-10-19 06:53:24 +00:00
ross 9883e3833c Descend into gprof if ${OBJECT_FMT} == "ELF". 1998-10-19 04:18:15 +00:00
ross 56fc9f5a6c Do some g/c and add -I${DESTDIR}/usr/include/bfd. The problem is that
bfd.h is a generated file and may end up in the objdir, which might be
.../obj, might be .../obj.${MACHINE} (but what about crosscompilers?)
etc etc. It seems best to use the one installed in DESTDIR; I hope
a DESTDIR setting is required for crosstool builds.
1998-10-19 04:15:10 +00:00
matt baff1e8043 Switch the NetBSD/vax over to gas.new 1998-10-19 03:12:50 +00:00
matt 4f1a79cfbd Back out change to md_make_gotreloc which added 4 arguement of got_t *.
Add argument to md_fix_jmpslot indicating whether this the first (i.e
tranfer) jmpslot or not.  Add better support for VAX (the VAX can support
pure text code; let ld that advantage of it).  Checking in verified and
working versions of rtld VAX support routines.
1998-10-19 03:09:31 +00:00
matt f94bc8f4df Add AUX_LABEL (need for VAX JSB/JMP "jmp" slots). 1998-10-19 00:30:57 +00:00
matt 25f52e1ec4 Add VAX support to gas.new. 1998-10-17 18:26:10 +00:00
itohy 102d06b78c 1. The 1st arg of sprintf() shall be nul terminated
(The C specification can read as such and our implementation of sprintf()
issues strlen() to the arg).
2. Eliminate memory leaks.
1998-10-17 17:14:01 +00:00
itohy 9d79a50f6a Correct return value of md_midcompat(). 1998-10-17 17:08:21 +00:00
tv e1ceba9eb2 Split the .NOPATH workaround into each cc1 Makefile, as f771 also uses
Makefile.cc1 and has a real parse.c....
1998-10-14 20:46:35 +00:00
tv a2335d74f8 One of the tabs somehow got transformed into spaces. 1998-10-14 16:58:18 +00:00
tv d6fc439bd1 Forcibly remove the "generated" files in gnu/dist automatically so they
will not interfere with a build.
1998-10-14 16:55:52 +00:00
tv 216cff3633 Revert <sys/param.h> workaround as approved by matt. 1998-10-14 16:53:43 +00:00
tv 334db9e84c Do not link in -lg++ by default, ever. It is not a supported library any
longer.
1998-10-14 15:01:09 +00:00
christos 228c19b92a Revert, I was wrong... 1998-10-14 12:32:37 +00:00
christos c80d25532b Only pick up the .c file. 1998-10-14 12:19:15 +00:00
christos dc95c94a01 Fix dependencies for parse.h 1998-10-14 12:10:15 +00:00
matt dbe1ebecab Pretend we don't have <sys/param.h>. Gcc doesn't really need it and
including it causes redefinitions of MIN and MAX.
1998-10-14 01:48:43 +00:00
matt bb27fa210f Get shared libraries a lot closer to working. 1998-10-12 01:33:35 +00:00
christos 228a8f9869 PR/6265: Chas Williams: minor bug in assembler output from gcc
(produces 'empty' symbols)
1998-10-09 11:13:21 +00:00
matthias 9e8e220306 Initial commit of gas.new support for NetBSD/pc532. 1998-10-08 14:17:18 +00:00
itohy 7597955012 ctype(3) functions do NOT take value of "char", but "unsigned char" plus EOF
(this is the same range as the return value of getc(3)).
Reference: ISO/IEC 9899:1990  7.3 Character handling <ctype.h>

Fixed illegal usage of NULL.
1998-10-07 08:15:15 +00:00
tv 9b1c81b5b2 Set -Wno-error on gcc 2.7. The warning-error on cexp.y is bogus (it is a
warning for never-executed code that egcs properly does not issue).
Unfortunately, that particular warning cannot be switched off individually.
1998-10-04 18:43:30 +00:00
matthias 78f9c9bd25 remove some vm_offset_t fallout. 1998-10-03 20:04:01 +00:00
jonathan f74feb4335 * rename gnu/usr.bin/ld.new/*.mk to _*.mk for consistency
with other  reachovers to GNU code.
* Add mips-elf config for binutils ld: add emul entries in ldemul-list.h,
  and endian-dependent default emul  in _mips.mk.
  add ld.new for to gnu/usr.bin subdirs for mips.

XXX ld, as manpages inconsistent between elf and a.out ports.
1998-09-30 16:47:47 +00:00
jonathan 584dba3f3d Build binutils gas on mips. 1998-09-30 02:57:34 +00:00
lukem 7f31e7febe don't install in /usr/share if NOSHARE is defined 1998-09-29 23:47:36 +00:00
jonathan 7e427d3923 Fix gas.new configuration for mips elf: needs emul support.
arch/mips: Set emul list (EMULATIONS) and default emul (DEFAULT_EMULATION)
    in Makefile.inc. Add mips-elf emul vector to SRCS.
  config.h: add #ifndef/#endif srapper around overridden tokens.
1998-09-29 05:32:23 +00:00
jonathan e70308f9ea cleanup: Use sigemptyset() if HAVE_SIGEMPTYSET defined,
otherwise zero out entire struct sigaction.
1998-09-28 22:36:09 +00:00