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
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
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
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
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
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
bbd553f2e6
Eliminate more RRS text warnings. Fix a few fatal_insns with g++.
1998-10-21 06:39:55 +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
matt
89f233dee8
Not all architecures are IEEE math. Don't define IEEE_drem on VAX.
1998-10-20 18:11:04 +00:00
kleink
069e8a5d77
GC empty `FILES' section.
1998-10-20 16:46:15 +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
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
40b1bb9563
A large number of changes to enable PIC support and shared libraries
...
for NetBSD/vax.
1998-10-19 03:01:52 +00:00
matt
f94bc8f4df
Add AUX_LABEL (need for VAX JSB/JMP "jmp" slots).
1998-10-19 00:30:57 +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
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
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
tv
cacab8b6b5
Define __arm__ in CPP_PREDEFINES as on other ARM OS's. Suggested by
...
<rearnsha@arm.com>.
1998-10-16 19:50:46 +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
scottr
153523c847
Revert last; this breaks compatibility with gcc-2.7.x-compiled
...
code.
1998-10-14 18:28:16 +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
38d1dc7ea7
Only build on gcc 2.7.x.
1998-10-14 15:05:30 +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
tv
451f0e3c25
Fix TARGET_DEFAULT as reported by <chas@cmf.nrl.navy.mil> in PR
...
port-m68k/6288.
1998-10-14 14:55:30 +00:00
tv
492d363964
Conflict resolution from 14 Oct import
1998-10-14 14:40:18 +00:00
tv
82ce0181bd
Import egcs 1.1 (branch), 14 Oct 1998 sources
1998-10-14 14:35:59 +00:00
tv
dd23d5aa0c
Import egcs 1.1 (branch), 14 Oct 1998 sources.
1998-10-14 14:28:50 +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
cc0b4bda88
DWARF2_UNWIND should be undefined otherwise dwarf2out.c won't compile
...
because it is expecting another macro which vax gcc doesn't have or need.
1998-10-14 01:47:05 +00:00
matt
048bef97f2
EGCS fix for VAX. It is illegal to shift by more bits than is can be
...
contained in the type. This was cc to die when initialize the
tetra long values on vax because it was trying to shift by -64.
This in turn was causing a reserved operand fault resulting in a SIGILL.
1998-10-14 01:45:16 +00:00
mark
55436d0a18
Don't define obj_fix_adjustable here as it is defined in obj-aout.h
1998-10-14 01:00:34 +00:00
matt
3e32065c73
Teach bfd that NetBSD/vax can have two MIDs.
1998-10-12 01:43:38 +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
b9fd5a00c7
Add a (missing?) SKIP_WHITESPACE at the beginning of obj_aout_type. This
...
was present in our "old" gas and at least on the pc532 ".type" creates
a symbol with a zero-length name without this.
1998-10-08 14:26:40 +00:00
matthias
ec002dcddf
tc-ns32k.h: make this work with te-nbsd.h.
...
tc-ns32k.c: frag_grow can't take negative arguments, revert to using
obstack_blank_fast in convert_iif.
1998-10-08 14:22:32 +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
tv
f10fec8d32
arm32 has no INCOMING_RETURN_ADDR_RTX. Fix the DWARF2_UNWIND_INFO goop.
1998-10-04 04:16:28 +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
jonathan
1d4590b75f
sa_mask (sigset_t) is no longer integral, so initialize to zero via
...
function call. Code is used on OSF/1, too, so no __sigemptyset.
1998-09-28 21:41:23 +00:00
jonathan
0663f303b1
Back out rev 1.6: passing "-nostdlib" to binutils ld results in
...
binaries that abort immediately on exec(). binutils ld apparently
treats "-nostdlib" as a set of one-char options?)
1998-09-28 21:37:11 +00:00
jonathan
054397a8ac
reach-over config headers for binutils as on mips.
1998-09-28 21:11:21 +00:00
tv
9c3d862cfb
Fix -nostdlib handling: don't make that option drop the "-e __start" from
...
the ld command line.
1998-09-28 19:25:28 +00:00
christos
0291468ee4
Fix reversed test
1998-09-27 18:48:10 +00:00
christos
a4aadf1ce4
Make this work as intended (when we don't have egcs or gcc-2.8x then
...
include the c++ builtin crap). Although libgcc2.c does not compile
properly with the old compiler so this does not work.
1998-09-27 18:05:10 +00:00
lukem
9dee5d2b46
don't install in /usr/share if NOSHARE is defined
1998-09-27 17:22:03 +00:00
pk
4d98b5ce9c
Prevent spurious matches matches against unwanted major versions.
...
Patch based on PR#6139.
1998-09-15 12:38:55 +00:00
tv
765a4daca2
Find the proper general VAX and NetBSD MI definitions.
1998-09-15 02:24:54 +00:00
tv
efa86546e9
Provide more informational errors when supplying the cpp option -Dname
...
where "name" is invalid, as requested by <woods@most.weird.com> in PR
bin/5767.
1998-09-15 00:22:02 +00:00
tv
bb19dacbf2
Increase "keylength" to 32, inspired by <prlw1@newn.cam.ac.uk> in PR
...
bin/5415. This will not be a significant performance hit, but allows
LOCALID keywords up to 32 characters long.
1998-09-14 18:36:07 +00:00
tv
1b8fb38794
Add -t (totals) option as requested by <mrg@eterna.com.au> in PR bin/6133.
...
Note that -w (warn on non-object archive members) is the libbfd default;
accept the option silently for compatibility.
1998-09-14 18:01:46 +00:00
tv
9f8406c6b8
Remove objcopy from all builds until it can be used on all systems.
...
strip(1) is a specialized objcopy, and has an equivalent on systems which
cannot yet use binutils.
1998-09-14 17:49:21 +00:00
tv
fe75b89f93
Nuke stdio.h's P_tmpdir and explicitly try /tmp after the environment
...
variables if hosted under NetBSD. Inspired by <tsutsui@ceres.dti.ne.jp>
in PR bin/5700.
1998-09-14 17:19:35 +00:00
tv
1428a599bf
Rethink the origins of LDSTATIC. Instead, use an option NOLINKLIB, which
...
builds and installs only what is necessary to link and run binaries, when
the library is not externally useable.
- NOPIC: Create and link against a static library.
- PIC: Create, link against, and install a shared object.
- PIC+LDSTATIC: Create and link against a static library; create and
install a shared object.
1998-09-13 23:25:18 +00:00
tv
a2e65ee4f1
Nuke libg++, leaving only libstdc++ for GCC 2.7-based systems.
1998-09-13 22:23:02 +00:00
tv
cd40dfec9f
Use tconfig.j to get the proper type definitions.
1998-09-13 20:32:04 +00:00
tv
c593074e24
Import of egcs 1.1 release (1.1b).
1998-09-13 16:51:44 +00:00
tv
c893c988b3
Conflict resolution.
1998-09-13 16:20:35 +00:00
tv
b37a043772
Import of egcs 1.1 release (1.1b).
1998-09-13 16:09:19 +00:00
tv
4995df0d60
Import of egcs 1.1 release (1.1b).
1998-09-13 16:08:57 +00:00