Commit Graph

304 Commits

Author SHA1 Message Date
David E. O'Brien
e743a6a21f Use the stock 3.1-snap file now.
I do not think our rev 1.2 changes are needed any longer.
2002-02-01 19:10:11 +00:00
David E. O'Brien
06c0bda4d1 The stock (3.1-snap) version of this file is used now.
The FreeBSD hacks now apply to `config.gcc'.
2002-02-01 18:56:12 +00:00
David E. O'Brien
27e13c821e Go back to stock [3.1-snap] file -- our previous mods are OBE. 2002-02-01 18:54:38 +00:00
David E. O'Brien
1a321c6fba We use the stock 3.1-snap file now.
All the -Wformat related code moved to c-format.c.
2002-02-01 18:53:34 +00:00
David E. O'Brien
dbefadbf9d Use the stock 3.1-snap file now.
I have folded all our local changes into the FSF CVS repo.
2002-02-01 18:50:05 +00:00
David E. O'Brien
11b18c4539 This commit was generated by cvs2svn to compensate for changes in r90075,
which included commits to RCS files with non-trunk default branches.
2002-02-01 18:16:02 +00:00
David E. O'Brien
1952e2e1c1 Enlist the FreeBSD-CURRENT users as testers of what is to become Gcc 3.1.0.
These bits are taken from the FSF anoncvs repo on 1-Feb-2002 08:20 PST.
2002-02-01 18:16:02 +00:00
David E. O'Brien
13696e0464 MFC: gcc.295/config/alpha/freebsd.h revision 1.12:
Remove our definition for FUNCTION_PROFILER as it is wrong.

Note that "jsr $28,_mcount" is a macro for
	ldq $27, _mcount($29)           !literal!1
	jsr $28, ($27), _mcount         !lituse_jsr!1

1. The call to _mcount is added by alpha_expand_prologue after we load the gp.
Our _mcount uses $27 for the incoming address, unlike OSF/1 and Linux,
which use $28.  This probably doesn't matter since we probably don't use $27
within _mcount itself.
2. You can't use this insn with _mcount because it uses the PLT, which clobbers
the return address in $28.  Note that the prologue_mcount pattern carefully
avoids adding the lituse_jsr relocation so that we call through the GOT
directly.

Submitted by:	Richard Henderson <rth@redhat.com>
2002-01-31 17:20:44 +00:00
Peter Wemm
d337ceafd7 Remove files that have been removed from vendor branch 2002-01-27 22:41:09 +00:00
Peter Wemm
418b22b96f This commit was generated by cvs2svn to compensate for changes in r89884,
which included commits to RCS files with non-trunk default branches.
2002-01-27 22:41:09 +00:00
David E. O'Brien
a6d80351b7 Re-initialize gp after a jsr.
When rtld runs the .fini section in a shared lib (C++), the code in
question from .../contrib/gdb/config/alpha/crtbegin.asm first calls
__do_globals_dtors_aux and then __do_frame_takedown.  Unfortunately, the
value of gp after a jsr is undefined and in this case had changed from before
the call, probably as a result of calling code in some other shared library.
The normal calling convention for alpha is to re-initialize gp using
'ldgp gp,0(ra)' after a jsr instruction but in this case no such
re-initialization is done. This leads to a bogus value being read for the
address of __do_frame_takedown and a quick segfault.

Submitted by:   dfr
Obtained from:  GCC 3.0
2001-08-17 22:54:26 +00:00
David E. O'Brien
d549989694 Add the `WANT_FORCE_OPTIMIZATION_DOWNGRADE' knob. If set to an integer
value, it forces GCC to not optimize above this level.  For intance, GCC
made with "WANT_FORCE_OPTIMIZATION_DOWNGRADE=1" is a good setting for the
Alpha platform when building ports.
2001-08-16 06:05:18 +00:00
David E. O'Brien
67c5850a34 Correct the version number. 2001-08-01 18:35:54 +00:00
David E. O'Brien
5a108f415b libiberty file list for the 11-July-2000 import. 2001-07-12 19:03:33 +00:00
David E. O'Brien
872825029c Support the environmental var "GCC_OPTIONS". Which can hold a set of
default options for GCC.  These options are interpreted first and can be
overwritten by explicit command line parameters.  This provides one way of
adding [temporary] options to your world build w/o editing /etc/make.conf.
2001-05-29 09:54:45 +00:00
David E. O'Brien
741a3bc754 Teach gcc about '%+' so it will not warn when using '%+' in a format
string when using strftime(), since our libc supports it.

PR:             26827
Submitted by:   Marc Olzheim <marcolz@ilse.nl>
2001-05-25 19:00:07 +00:00
David E. O'Brien
cb300ebf8e Make it easy for people to use define DWARF2 exceptions unwinding.
If "WANT_DWARF2_UNWIND" you get it.  Note that this is a different C++ ABI
than the FreeBSD default.  So you will need to recompile all your C++ apps
that uses exceptions if you turn this on.  I am adding it here for Yahoo!'s
use and for those that want to be early adopters to what I will make as the
default with the GCC 3.0 import.
2001-05-14 22:45:26 +00:00
David E. O'Brien
3cd4df5a77 Choose the right LIB_SPEC for threads based on "__FreeBSD_version".
This allows someone with an older -current to update their compiler [only].

Inspired by:	Loren James Rittle <rittle@rsch.comm.mot.com>
2001-05-12 04:57:49 +00:00
David E. O'Brien
370d222b7f Remove MIPS support.
It has rotted quite badly and no one has provided updates for it.
2001-04-11 00:12:48 +00:00
David E. O'Brien
66d7199d63 Import the setjump/longjump exception handling fixes from GCC 2.95.3.test3
that were removed from GCC 2.95.3.test4 and the subsequent release due
to problems on HP-UX.  However, they work just fine on all the BSD's.

W/o these patches the following program segmentation faults if compiled
with -O2 (but not -Os or -O or -O0):

#include <stdio.h>

class A {
public:
  A() { printf("c'tor A\n"); }
  ~A(){ printf("d'tor A\n"); }
};

class foo : public A {
public:
  foo()  { printf("C'tor foo\n"); throw 8; }
  ~foo() { printf("D'tor foo\n"); }
};

int main(){
  try { foo fii; }
  catch (int){ printf("catch ...\n"); }
  return 0;
}
2001-03-24 01:58:31 +00:00
David E. O'Brien
8338ba3e77 This commit was generated by cvs2svn to compensate for changes in r74722,
which included commits to RCS files with non-trunk default branches.
2001-03-24 01:58:31 +00:00
David E. O'Brien
41fd0c09eb Remove some files that are no longer in the FSF branch. 2001-03-19 19:50:17 +00:00
David E. O'Brien
1e1e1a599e Merge gcc-2.95.3 changes onto mainline. Update FreeBSD changes to converge
with changes made in the FSF tree.
2001-03-19 19:50:16 +00:00
David E. O'Brien
843b04fb90 Virgin import of the GCC 2.95.3 compilers 2001-03-19 19:46:16 +00:00
David E. O'Brien
59543307c9 This commit was generated by cvs2svn to compensate for changes in r74473,
which included commits to RCS files with non-trunk default branches.
2001-03-19 19:46:16 +00:00
David E. O'Brien
9dcc3a35a1 Change "NO_PROFILE_DATA" to "NO_PROFILE_COUNTERS" to match the commit by
the FSF/GCC people in the stock 2.97 source that is like our custom change
modulo the conditional compilation symbol.
2001-03-02 08:46:15 +00:00
David E. O'Brien
49bd150d88 Move the obvious bits of mixed ELF and a.out support down into this MD
header to reduce the difference of our sources to the stock GNU/FSF ones.
While the mix binary format support was nice to have in the FreeBSD MI
header as a frame work, it just clutters up too much and makes the FreeBSD
MI header more different from the FSF/GNU stock one than it needs to be.
2001-03-02 02:46:05 +00:00
David E. O'Brien
c04329d184 Push as much as was easy of the mixed ELF & a.out support for the i386
into the i386 MD FreeBSD header.  Also comment tweaking, continuation line
style changes, and other minor changes to make this closer to the latest
FSF/GNU 3.0 sources (to reduce my headache when 3.0 is imported).
2001-03-02 02:42:42 +00:00
David E. O'Brien
6ed0ce16ce Stylistic changes mirroring ones done in the FSF/GNU 3.0 development sources. 2001-02-28 22:37:32 +00:00
David E. O'Brien
6ec77f62cc Merge rev 1.2 (-fformat-extensions); 1.{7,9} (complain about -O2 on the
Alpha & FORCE_OPTIMIZATION_DOWNGRADE); 1.8 (-Wnon-const-format)
into GCC 2.95.3(RC#3).
2001-02-17 09:06:31 +00:00
David E. O'Brien
0e907ffc9a Merge gcc-2.95.3-test3 changes onto mainline. Bump FreeBSD cc version. 2001-02-17 08:35:00 +00:00
David E. O'Brien
c4ac962157 Enlist the FreeBSD-CURRENT users as testers of GCC 2.95.3 Release Candidate #3 2001-02-17 08:34:50 +00:00
David E. O'Brien
9520158aff This commit was generated by cvs2svn to compensate for changes in r72562,
which included commits to RCS files with non-trunk default branches.
2001-02-17 08:34:50 +00:00
David E. O'Brien
e09c90cd8a Bump __FreeBSD_cc_version to 500002 to show the -pthread option change. 2001-02-08 05:27:17 +00:00
John Polstra
747291735d Make the "-pthread" option work again, now that libc_r has to be
linked in addition to libc rather than instead of libc.

Ideally, "-pthread" would now be equivalent to adding "-lc_r" to the
end of the link command.  But it is slightly different in this
implementation.  Adding "-lc_r" to the link command would produce a
"ld" command line containing this:

    ... -lc_r /usr/lib/libgcc.a -lc /usr/lib/libgcc.a ...

but this implementation of the "-pthread" option produces this:

    ... /usr/lib/libgcc.a -lc_r -lc /usr/lib/libgcc.a ...

It would be possible to make them identical, but that doesn't fit
as nicely into GCC's way of doing things.  I don't think the ordering
change will make any difference in practice.
2001-01-25 18:57:13 +00:00
David E. O'Brien
5720952623 Upgrade instructions that describe the 11-July-2000 import. 2001-01-04 11:21:44 +00:00
David E. O'Brien
ac82a333b2 Merge rev 1.2 (-fformat-extensions); 1.{7,9} (complain about -O2 on the
Alpha & FORCE_OPTIMIZATION_DOWNGRADE); 1.8 (-Wnon-const-format)
into GCC 2.95.3(RC#1).
2001-01-03 18:05:31 +00:00
David E. O'Brien
f0ae320070 Merge gcc.2.95.3-test1 changes onto mainline 2001-01-03 17:17:01 +00:00
David E. O'Brien
14193a95b7 Merge gcc 2.95.3-test1 changes onto vendor branch 2001-01-03 17:17:00 +00:00
Peter Wemm
8f90f252f4 Enlist the FreeBSD-CURRENT users as testers of GCC 2.95.3 Release Candidate #1 2001-01-03 17:16:05 +00:00
David E. O'Brien
48f9f7204c This commit was generated by cvs2svn to compensate for changes in r70635,
which included commits to RCS files with non-trunk default branches.
2001-01-03 17:16:04 +00:00
David E. O'Brien
5401a9ce8b Enlist the FreeBSD-CURRENT users as testers of GCC 2.95.3 Release Candidate #1 2001-01-03 17:16:04 +00:00
David E. O'Brien
9ea458c501 Update the 3-June-2000 import delete list to keep mkdeps.[ch] which
is needed by the new C preprocessor.
2000-12-01 11:02:05 +00:00
David E. O'Brien
d14352244a Comment an endif. 2000-12-01 10:20:17 +00:00
David E. O'Brien
e4475bb03f Properly format the SUBTARGET_SWITCHES so that ``gcc -v --help'' prints
them out.

PR:		19326
Submitted by:	Naohiko Tsuji <yakisoba@f2.dion.ne.jp>
2000-11-11 04:50:51 +00:00
David E. O'Brien
7d6cccab42 Remove the -kthread option that matched [sort of] the LinuxThreads port.
This option depended on bits not part of the base system and required
people to install the LinuxThreads port in a manner non-consistent with
the workings of our Ports Collection.
The directions for properly linking with LinuxThreads are given by that
port at install time.

Requested by:	jasone
2000-11-07 21:49:08 +00:00
David E. O'Brien
2644e5e81b Start using crt[in].o to adhear to the ELF ABI
(and crtstuff.c's requirements).
2000-10-30 12:25:22 +00:00
David E. O'Brien
035d965568 Helper listing file specs to remove from a FSF/GCC anoncvs checkout
before importing new versions of GCC.  This differs from FREEBSD-Xlist
in that this is for use only with anoncvs checkouts, not tarball'ed
releases [snapshots].

This delete list applies to the 3-June-2000 import.
2000-10-13 11:35:53 +00:00
David E. O'Brien
86d0ff06b7 Upgrade instructions that describe the 3-June-2000 import. 2000-10-13 11:32:20 +00:00
David E. O'Brien
507f261243 Fix conflicts. 2000-05-27 02:43:50 +00:00