325 Commits

Author SHA1 Message Date
obrien
1307fb8ba8 Use the stock EGCS 1.1.2 file here. Our previous changes are OBE.
(code change by rev 1.3 has been removed, and 1.2 is not needed since
contrib/gcc/cp/except.c is now the stock one)
1999-08-30 10:50:39 +00:00
obrien
ba9b2147f2 Use the stock EGCS 1.1.2 file here. I cannot determine if our previous
changes for ObjC are still appropriate.
1999-08-30 10:27:11 +00:00
obrien
1d16d23ff8 This brings rev 1.2 into EGCS 1.1.2. Also tweaks gleemed from EGCS
ChangeLog's.  Note that rev 1.3 changes (HOST_PTR_PRINTF) was not
brought into EGCS 1.1.2 as that is the default.
1999-08-30 10:12:33 +00:00
obrien
537ee54f88 Fix conflicts. 1999-08-30 09:58:28 +00:00
obrien
903d244211 Use the stock EGCS 1.1.2 file here. Our previous changes are OBE. 1999-08-30 09:54:31 +00:00
obrien
2bce35da0a This add Alpha and proper x86 support to EGCS 1.1.2. Functionally speaking,
this covers revs 1.{2,3}.
1999-08-30 08:41:19 +00:00
obrien
0191a04a93 This brings rev 1.2 (reality check and document profiling extensions)
into EGCS 1.1.2.
1999-08-30 07:51:44 +00:00
obrien
237b828920 This brings rev 1.2 (document printf0()) into EGCS 1.1.2. 1999-08-30 07:38:42 +00:00
obrien
61f8ac135c Fix conflicts. 1999-08-30 07:28:52 +00:00
obrien
308b546022 Fix conflicts.
This adds rev 1.2 (-fformat-extensions) to EGCS 1.1.2.
1999-08-30 04:01:02 +00:00
obrien
1179e4387f Fix conflict. 1999-08-30 01:02:55 +00:00
obrien
48597b2c18 Fix conflicts. 1999-08-30 00:01:36 +00:00
obrien
ec9280070b This brings rev 1.2 (FREEBSD_NATIVE) and rev 1.5 (mixed ELF/aout support)
into EGCS 1.1.2.
1999-08-29 23:53:46 +00:00
obrien
23cf060089 Correct vfork()/exit() to vfork()/_exit().
Also return "1" rather than "-1".  According to bde: -1 is unrepresentable.
Exit statuses must be >= 0 and <= 255, at least if chars are 8 bits and
shorts are 16 bits.  This seems to only be documented indirectly in exit.2
by referring to wait.2.  WEXITSTATUS() throws away all except the low 8 bits
of the status returned by _exit(), and the kernel actually only stores 8
bits of it (if chars are 8 bits, etc.), so wait() can't return any more bits.

Obtained from: rev 1.4 of contrib/gcc/gcc.c
1999-08-29 23:46:20 +00:00
obrien
6ae2479e39 Fix conflicts.
This brings rev 1.2 (-fformat-extensions) into EGCS 1.1.2.
1999-08-28 11:46:53 +00:00
obrien
3a35f41abc Fix conflicts.
This brings revs 1.{2,3} minus rev 1.4 into EGCS 1.1.2.
1999-08-28 11:27:19 +00:00
obrien
f77ff8b800 Fix conflicts. 1999-08-28 08:14:14 +00:00
obrien
c4b74a1764 Fix conflicts. This brings rev 1.2 (fix stabs ordering for a.out) into
EGCS 1.1.2.
1999-08-28 07:19:03 +00:00
obrien
550b040d68 Fix conflicts. This brings in rev 1.2 (FreeBSD native support -- do not
search the multitude of extended include file paths that do not exist)
into EGCS 1.1.2.
1999-08-27 11:02:42 +00:00
obrien
b1e989f610 Fix conflicts. This brings the "printf0" addition into EGCS 1.1.2. 1999-08-27 10:58:48 +00:00
obrien
e7996da3fa Don't accept %q length specifiers in the kernel (more precisely,
if compiling with -fformat-extensions). Gcc's format checker never
actually supported %q length specifiers.  It treats %q as an alias
for %ll, which is correct if quad_t is long long (e.g., on i386's)
and broken otherwise (e.g., on alphas).

quad_t's currently should be printed in the same way that they
already need to be printed to avoid compiler warnings on all
supported systems: cast them to a standard type that is at least
as large (long or long long) and use the length specifier for that
(%l or %ll).  This is problematic since long long isn't standard
yet.  C9x's intmax_t should be implemented soon.

Don't accept %L length specifiers in the kernel either.  The only
legitimate ones are for long doubles, but the kernel doesn't even
support plain doubles.  (gcc bogusly accepts %Ld as an alias for
%lld, and it sometimes prints "q" in error messages about "ll" and
"L" length specifiers, becauses it represents all these specifiers
as 'q'.)

Submitted by:	bde
1999-08-27 10:05:08 +00:00
obrien
a774007e84 Fixed kernel format checking:
- plain %r and %z were disallowed.  The hard NULs in the warnings were
  hopefully caused by disallowing of plain formats being nonsense.
- new formats for shortening to a byte were allowed, but even the libc
  printf doesn't support them.
- old %hr and %hz formats were allowed, but the kernel printf doesn't
  support them.  The kernel doesn't support %hd either, but this is
  harder to fix.

Submitted by:	bde
1999-08-27 10:02:56 +00:00
obrien
2f0dd791ee Fix conflicts.
This brings revs 1.2 (-fformat-extensions) and 1.3 (printf0())
into EGCS 1.1.2.
1999-08-27 10:01:05 +00:00
obrien
426fcb8f55 Fix conflicts. 1999-08-27 09:36:15 +00:00
obrien
0bedf4fb30 Virgin import of gcc from EGCS 1.1.2 1999-08-26 09:30:50 +00:00
obrien
ad6db0c2d6 This commit was generated by cvs2svn to compensate for changes in r50397,
which included commits to RCS files with non-trunk default branches.
1999-08-26 09:30:50 +00:00
obrien
46e13824b3 * Consistantly surround macro parameters with ()
* Consistantly put spaces after "," in macro param lists
* Consistantly align continuation characters.
* Don't need to supply all variations of __FOO__ in CPP_PREDEFINES,
  gcc will do that for us.
1999-08-20 09:01:55 +00:00
obrien
5b15ba9a9b Move two of the DBX config directives to the common configuration header.
Also simply CPP_PREDEFINES a little.
1999-08-19 09:16:23 +00:00
obrien
b1194cd711 Move "WORD_SWITCH_TAKES_ARG" & "SWITCH_TAKES_ARG" to the general spec file
since their definitions were identical.  FreeBSD/MIPS will need to override
these two defintions, but it can #undef them and define them approapiately.
1999-08-15 22:02:50 +00:00
obrien
e873ea78b5 Move "LIBGCC_SPEC" to freebsd-native.h as it is not approapiate for
submitting to the GCC mainainers for folding into the stock GCC.
1999-08-15 21:59:46 +00:00
obrien
d4db5fb866 Virgin import of GCC 2.7.2.3 1999-07-10 23:03:59 +00:00
obrien
597d081113 This commit was generated by cvs2svn to compensate for changes in r48743,
which included commits to RCS files with non-trunk default branches.
1999-07-10 23:03:59 +00:00
obrien
972ce87b94 * The OBSTACK_CHUNK_SIZE #define was in the "Code generation parameters"
section rather than the "Miscellaneous parameters" where it belongs.

* Clarify what we are locating using the -m rule.

Submitted by:	bde
1999-07-02 19:26:45 +00:00
obrien
1b821b7e71 The GNU standard about putting 2 spaces after sentences in comments
was not consistantly followed.

Submitted by:	bde
1999-07-02 19:20:44 +00:00
obrien
11285d42bb Define "OBSTACK_CHUNK_SIZE" as getpagesize().
Our malloc can allocte pagesized blocks efficiently and the EGCS default size
of 4072 bytes is not optimal.

Submitted by:	Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
1999-06-28 09:05:56 +00:00
simokawa
e2ee147d6e Remove 'SET_ASM_OP' macro, which is unused now and rather harmful
for recent egcs.
1999-06-10 12:05:48 +00:00
jdp
68c20b8d38 Fix typo (#unset where #undef was meant). 1999-05-21 04:56:32 +00:00
obrien
7f4b070df4 Consistantly protect "#define FOO ..." with "#undef FOO". 1999-05-20 08:30:48 +00:00
obrien
0d3ecf09a3 Turn DEFAULT_VTABLE_THUNKS back on. It caused problems with undefined symbols
in libstdc++.

Until I have a chance to look at what that problem is and to carefully consider
the upgrade issues of turning it back on at a later date if we leave it turned
off for any extended peroid of time.
1999-04-30 19:12:51 +00:00
obrien
522e272a7b Rather than hack config/freebsd.h to contain our hacks for a native compiler,
just include them in tm.h (as built from cc/cc_tools/Makefile).

This will reduce the diffs from the vendor sources.

Excellent idea by:	jdp
1999-04-28 18:48:08 +00:00
obrien
152572105d Simplify the definition of FBSD_SWITCH_TAKES_ARG, and make sure
SWITCH_TAKES_ARG isn't defined (which svr4.h does) when we assign our
definition to it.
1999-04-27 19:29:44 +00:00
obrien
01aaff1d4d Wait until EGCS 1.2 to use more efficient ``thunks'' to implement C++ vtables.
While I have yet to hear of any problems with us using thunks.  The EGCS
mailing list notes some have problems with it and not using them are a
safer default.  People wanting to use them, can set the appropiate
compiler flag.
1999-04-27 15:43:56 +00:00
obrien
acbe0a68a9 Use new FBSD_SWITCH_TAKES_ARG' and FBSD_WORD_SWITCH_TAKES_ARG'. 1999-04-22 17:45:24 +00:00
obrien
dbaaa127aa Move SWITCH_TAKES_ARG' to FBSD_SWITCH_TAKES_ARG' and `WORD_SWITCH_TAKES_ARG'
to `FBSD_WORD_SWITCH_TAKES_ARG' which allows architectures to tweak these
values if needed.
1999-04-22 17:45:01 +00:00
obrien
9163a26c66 Support linking against libgcc_r.
Submitted by:	Luoqi Chen <luoqi@chen.ml.org>
1999-04-14 00:25:45 +00:00
bde
fa2c69b869 Removed unconditional definitions of __ELF__. They were redundant for
elf and wrong for i386-aout.
1999-04-08 13:57:13 +00:00
obrien
33869a012a Merge shared LIB_SPEC into share config header. 1999-04-08 07:49:24 +00:00
obrien
7b0c099985 merge alpha/freebsd-elf.h into alpha/freebsd.h
Submitted by:	Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
1999-04-08 07:48:49 +00:00
obrien
252934eed1 Mispelled global option in usage. 1999-04-06 13:09:24 +00:00
obrien
2a0996cae8 Fix space padding that was causing a problem in creating the final
CPP_PREDEFINES.
1999-04-04 22:46:18 +00:00