302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
269948 |
13-Aug-2014 |
dim |
Supplement r259111 by also using correct casts in gcc's emmintrin.h for the first argument of the following builtin function:
* __builtin_ia32_psrlqi128() takes __v2di instead of __v4si
This should fix the following errors when building the graphics/webp port with base gcc:
lossless_sse2.c:403: error: incompatible type for argument 1 of '__builtin_ia32_psrlqi128' lossless_sse2.c:404: error: incompatible type for argument 1 of '__builtin_ia32_psrlqi128'
Reported by: Jos Chrispijn <ports@webrz.net> MFC after: 3 days
|
265231 |
02-May-2014 |
pfg |
gcc: fix strict alignment.
From the OpenBSD log:
x86-64 ABI requires arrays greater than 16 bytes to be aligned to 16byte boundary. However, GCC 16-byte aligns arrays of >=16 BITS, not BYTES.
This diff improves bug detectability for code which has local arrays of [16 .. 127] bits: in those cases SSP will now detect even 1-byte overflows.
Obtained from: OpenBSD (CVS rev 1.4) MFC after: 1 week
|
259111 |
08-Dec-2013 |
dim |
Use correct casts in gcc's emmintrin.h for the first arguments of the following builtin functions:
* __builtin_ia32_pslldi128() takes __v4si instead of __v8hi * __builtin_ia32_psllqi128() takes __v2di instead of __v8hi * __builtin_ia32_psradi128() takes __v4si instead of __v8hi
This should fix the following errors when building the LINT kernel with gcc:
sys/crypto/aesni/aesni_wrap.c:191: error: incompatible type for argument 1 of '__builtin_ia32_psradi128' sys/crypto/aesni/aesni_wrap.c:195: error: incompatible type for argument 1 of '__builtin_ia32_pslldi128'
MFC after: 3 days
|
259005 |
05-Dec-2013 |
pfg |
gcc: Add -flax-vector-conversions
Obtained from: gcc 4.3 (rev. 120572, 120688; GPLv2)
|
258428 |
21-Nov-2013 |
pfg |
gcc: another round of merges from the gcc pre-43 branch.
Bring The following revisions from the gcc43 branch[1]:
118360, 118361, 118363, 118576, 119820, 123906, 125246, and 125721.
They all have in common that the were merged long ago into Apple's gcc and should help improve the general quality of the compiler and make it easier to bring new features from Apple's gcc42.
For details please review the additions to the files: gcc/ChangeLog.gcc43 gcc/cp/ChangeLog.gcc43 (new, adds previous revisions)
Reference: [1] http://gcc.gnu.org/viewcvs/gcc/trunk/?pathrev=126700
Obtained from: gcc pre4.3 (GPLv2) branch MFC after: 3 weeks
|
255185 |
03-Sep-2013 |
jmg |
add support to gcc for AES and PCLMUL intrinsics... This addes the -maes option, but not the -mpclmul option as I ran out of bits in the 32 bit flags field... You can -D__PCLMUL__ to get this, but it won't be compatible w/ clang and modern gcc...
Reviewed by: -current, -toolchain
|
251212 |
01-Jun-2013 |
pfg |
GCC: bring back experimental support for amdfam10/barcelona CPUs.
Initial support for the AMD amdfam10 chipsets has been available in the gcc43 branch under GPLv2. AMD and some linux distributions (OpenSUSE) did a backport of the amdfam10 support and made it available.
This is a revised subset of the support initially brought in in r236962 and later reverted. The collateral efects seem to have disappeared but it is still recommended to set the CPUTYPE with caution.
Reviewed by: jkim (ages ago) MFC after: 3 weeks
|
250392 |
08-May-2013 |
dim |
For some reason, the gcc intrinsics header tmmintrin.h was imported with two copies of itself pasted together. Remove the extraneous copy.
MFC after: 3 days
|
245952 |
26-Jan-2013 |
pfg |
Clean some 'svn:executable' properties in the tree.
Submitted by: Christoph Mallon MFC after: 3 days
|
242182 |
27-Oct-2012 |
kan |
Follow clang lead and include mm_malloc.h only in hosted configurations.
This makes the use of intrinsics easier in kernel environment, according to the submitter.
Requested by: jmg
|
238472 |
15-Jul-2012 |
kib |
Pass --enable-new-dtags to the linker invocation by default. If desired, one can turn off the generation of post-ELF standard dtags by overriding it with --disable-new-dtags after the default switch.
Immediate effect of the change is that -rpath path is now stored both in DT_RPATH and DT_RUNPATH tags, which is the right way to provide rpath for dynamic linker supporting DT_RUNPATH per specification.
Reviewed by: kan MFC after: 1 month
|
237021 |
13-Jun-2012 |
pfg |
Revert r236962 - Experimental amdfam10/barcelona support.
The patches are unexpectedly causing gcc to fail while building ports/graphics/ImageMagick even when the cpu flags are not used.
Reported by: Andreas Tobler
|
236962 |
12-Jun-2012 |
pfg |
Add experimental support for amdfam10/barcelona from the GCC 4.3 branch.
Initial support for the AMD barcelona chipsets has been available in the gcc43 branch under GPLv2 but was not included when the Core 2 support was brought to the system gcc.
AMD and some linux distributions (OpenSUSE) did a backport of the amdfam10 support and made them available. Unfortunately this is still experimental and while it can improve performance, enabling the CPUTYPE may break some C++ ports (like clang).
Special care was taken to make sure that the patches predate the GPLv3 switch upstream.
Tested by: Vladimir Kushnir Reviewed by: mm Approved by: jhb (mentor) MFC after: 2 weeks
|
236137 |
27-May-2012 |
kib |
Enable gnu hash generation for dynamic ELF binaries on x86.
Reviewed by: kan
|
226430 |
16-Oct-2011 |
stefanf |
Adjust posix_memalign() prototype to match what we define in stdlib.h for C++ compilation.
PR: standards/147210
|
219711 |
17-Mar-2011 |
mm |
Backport missing tunings for -march=core2: - enable extra 80387 mathematical constants (ext_80387_constants) [1] - enable compare and exchange 16 bytes (cmpxchg16b) [2]
Verified against llvm-gcc (and apple gcc)
Obtained from: gcc-4.3 (ref. svn revs. 119260 [1], 121140 [2]; GPLv2) MFC after: 2 weeks
|
219697 |
16-Mar-2011 |
mm |
Fix -march/-mtune=native autodetection for Intel Core 2 CPUs
Obtained from: gcc 4.3 (partial rev. 119454; GPLv2) MFC after: 2 weeks
|
219639 |
14-Mar-2011 |
mm |
Backport SSSE3 instruction set support to base gcc. Enabled by default for -march=core2
Obtained from: gcc 4.3 (rev. 117958, 121687, 121726, 123639; GPLv2) MFC after: 2 weeks
|
219374 |
07-Mar-2011 |
mm |
Backport Intel Core 2 and AMD Geode CPU types from gcc-4.3 (GPLv2) These options are supported in this shape in all newer GCC versions.
PR: gnu/155308 Obtained from: gcc 4.3 (rev. 118090, 118973, 120846; GPLv2) MFC after: 2 weeks
|
218895 |
20-Feb-2011 |
mm |
Backport svn r124339 from gcc 4.3 and add opteron-sse3, athlon64-sse3 and k8-sse3 cpu-types for -march=/-mtune= gcc options. These new cpu-types include the SSE3 instruction set that is supported by all newer AMD Athlon 64 and Opteron processors. All three cpu-types are supported by clang and all gcc versions starting with 4.3 SVN rev 124339 (at that time GPLv2 licensed).
PR: gnu/154906 Discussed with: kib, kan, dim Obtained from: gcc 4.3 (r124339, GPLv2 licensed) MFC after: 2 weeks
|
217098 |
07-Jan-2011 |
kib |
Make gcc emit the .note.GNU-stack section into the assembler files.
Reviewed by: kan
|
198344 |
21-Oct-2009 |
jhb |
Change gcc to assume a default machine architecture of 486 instead of 386 on "i386". Doing it in the compiler is deemed to be less fragile then attempting to provide a default -march setting via bsd.cpu.mk. FreeBSD itself has not supported plain 386 CPUs since 5.x.
Suggested by: kan Requested by: rdivacky MFC after: 1 month
|
182579 |
31-Aug-2008 |
obrien |
Turn cc_tools/Makefile and Makefile.tgt into a "linear" read. Shared parts of the configuration aren't duplicated, and arch-specific exceptions are made "in-place". Also clean up the FreeBSD/amd64 config a little.
|
181534 |
10-Aug-2008 |
das |
Make -mfancy-math-387 the default on FreeBSD, as it is on most other operating systems. Previously, gcc would inhibit the generation of fsqrt, fsin, and several other floating point instructions, for the benefit of the old in-kernel math emulator, which was removed over 5 years ago.
|
180079 |
28-Jun-2008 |
obrien |
White space fixes.
|
180078 |
28-Jun-2008 |
obrien |
Reduce diff to vendor.
|
171836 |
14-Aug-2007 |
kan |
Update locally changed files to GCC 4.2.1.
Approved by: re (kensmith)
|
171835 |
14-Aug-2007 |
kan |
Merge files that are no longer carry FreeBSD local changes.
Approved by: re (kensmith)
|
171826 |
14-Aug-2007 |
kan |
This commit was generated by cvs2svn to compensate for changes in r171825, which included commits to RCS files with non-trunk default branches.
|
169709 |
19-May-2007 |
kan |
This commit was generated by cvs2svn to compensate for changes in r169708, which included commits to RCS files with non-trunk default branches.
|
169706 |
19-May-2007 |
kan |
Update configuration files for GCC 4.2.
|
169705 |
19-May-2007 |
kan |
Merge local FreeBSD changes for -mno-align-long-strings.
|
169699 |
19-May-2007 |
kan |
FreeBSD uses unchanged versions of this files.
|
169690 |
19-May-2007 |
kan |
This commit was generated by cvs2svn to compensate for changes in r169689, which included commits to RCS files with non-trunk default branches.
|
161660 |
26-Aug-2006 |
kan |
Resolve conflicts after GCC 3.4.6 20060825 import.
|
148163 |
19-Jul-2005 |
obrien |
Fix bug where GCC thought athlon-tbird had SSE support.
|
146915 |
03-Jun-2005 |
kan |
Fix a typo from previos commit.
|
146909 |
03-Jun-2005 |
kan |
Catch up with changes in BDX_OUTPUT_[LR]BRAC callers.
|
146908 |
03-Jun-2005 |
kan |
Merge conflicts for GCC 3.4.4.
|
146906 |
03-Jun-2005 |
kan |
Stock files.
|
146896 |
03-Jun-2005 |
kan |
This commit was generated by cvs2svn to compensate for changes in r146895, which included commits to RCS files with non-trunk default branches.
|
133583 |
12-Aug-2004 |
kan |
This commit was generated by cvs2svn to compensate for changes in r133582, which included commits to RCS files with non-trunk default branches.
|
132857 |
29-Jul-2004 |
kan |
Remove obsolete ASM_FINAL_SPEC definition.
Reported by: green
|
132745 |
28-Jul-2004 |
kan |
Merge FreeBSD changes into GCC 3.4.2-prerelease: 1.2 Tweaks to make this file live beside our hacked config.
|
132744 |
28-Jul-2004 |
kan |
Merge r1.10 (-mno-align-long-strings) and r1.11 (make LONG_TYPE_SIZE overridable from the command line).
|
132743 |
28-Jul-2004 |
kan |
Merge r1.11 (-mno-align-long-strings).
|
132742 |
28-Jul-2004 |
kan |
Update Amd64 MD bits for GCC 3.4.2-prerelease.
|
132741 |
28-Jul-2004 |
kan |
Update i386 MD bits for GCC 3.4.2-prerelease.
|
132727 |
28-Jul-2004 |
kan |
Use stock GCC versions on these files.
|
132719 |
28-Jul-2004 |
kan |
This commit was generated by cvs2svn to compensate for changes in r132718, which included commits to RCS files with non-trunk default branches.
|
130744 |
19-Jun-2004 |
obrien |
Grrr. our rev 1.19 (FSF GCC rev 1.579) is causing some problems on 32-bit systems. So only use the rev 1.19 (FSF GCC rev 1.579) change on 64-bit systems.
|
130711 |
19-Jun-2004 |
obrien |
Merge FSF GCC rev 1.579 change ((x86_output_mi_thunk): Don't pass MEM to %P0, just SYMBOL_REF) into GCC 3.3.3. This fixes the bad C++ thunks code generation building Firefox on AMD64.
Submitted by: Sean McNeil <sean@mcneil.com>
|
124152 |
05-Jan-2004 |
kan |
This commit was generated by cvs2svn to compensate for changes in r124151, which included commits to RCS files with non-trunk default branches.
|
123715 |
22-Dec-2003 |
kan |
Fix ASM_OUTPUT_LABELREF to deal with TSL model prefixes GCC started to use internally. They need to be stripped before the name of the label or symbol is printed.
|
123561 |
16-Dec-2003 |
obrien |
One might want to correctly generate 32-bit code on an Opteron.
Submitted by: peter
|
123546 |
15-Dec-2003 |
obrien |
Consistently define __LP64__ on all our 64-bit platforms.
|
122194 |
07-Nov-2003 |
kan |
Merge r1.11 (-mno-align-long-strings).
|
122193 |
07-Nov-2003 |
kan |
Merge r1.10 (-mno-align-long-strings) and r1.11 (make LONG_TYPE_SIZE overridable from the command line).
|
122190 |
07-Nov-2003 |
kan |
No FreeBSD-local changes in these files.
|
122181 |
07-Nov-2003 |
kan |
This commit was generated by cvs2svn to compensate for changes in r122180, which included commits to RCS files with non-trunk default branches.
|
119414 |
24-Aug-2003 |
obrien |
Reformat FBSD_{START,END}FILE_SPEC to FSF coding standards. Use these in our i386, amd64, and alpha platforms.
|
119257 |
22-Aug-2003 |
kan |
This commit was generated by cvs2svn to compensate for changes in r119256, which included commits to RCS files with non-trunk default branches.
|
119016 |
17-Aug-2003 |
gordon |
Tell the toolchain to look for rtld in /libexec instead of /usr/libexec.
|
117694 |
17-Jul-2003 |
obrien |
This file became OBE when we went to GCC 3.
|
117479 |
12-Jul-2003 |
kan |
Do not override FP rounding options for 32bit platforms. amd64 doesn't need this.
|
117418 |
11-Jul-2003 |
kan |
Update for 3.3.1-prerelease.
|
117417 |
11-Jul-2003 |
kan |
Merge FreeBSD modifications into gcc 3.3.1-prerelease: 1.4 Look into right directory when linking 32-bit binaries.
|
117412 |
11-Jul-2003 |
kan |
Merge FreeBSD changes into GCC 3.3.1-prerelease: 1.2 Tweaks to make this file live beside our hacked config.
|
117408 |
11-Jul-2003 |
kan |
Merge FreeBSD modifications into gcc 3.3.1-prerelease: 1.11 -mno-align-long-strings.
|
117407 |
11-Jul-2003 |
kan |
Merge FreeBSD modifications into gcc 3.3.1-prerelease: 1.10 -mno-align-long-strings. 1.11 Allow the specification of LONG_TYPE_SIZE on the command line.
|
117404 |
11-Jul-2003 |
kan |
FreeBSD uses stock versions of these GCC files.
|
117396 |
11-Jul-2003 |
kan |
This commit was generated by cvs2svn to compensate for changes in r117395, which included commits to RCS files with non-trunk default branches.
|
114842 |
08-May-2003 |
obrien |
I goofed in rev 1.59 (a.out support axing) and missed getting FUNCTION_PROFILER fully clean. This resulted in inserted garbage into the produced assembly code when the gcc -pg and -fPIC options are used together.
PR: i386/50598 Submitted by: Don Lewis <truckman@freebsd.org>
|
114083 |
26-Apr-2003 |
obrien |
We're changing the platform name from x86[_-]86 to amd64.
|
114078 |
26-Apr-2003 |
obrien |
Fix the LINK_SPEC. Our i386 32-bit emulation name changed. We also need to look in the proper directory for 32-bit libs.
|
114077 |
26-Apr-2003 |
obrien |
Remove the last vestiges (I hope) of the mixed ELF/a.out support. As a plus we can use the stock CC1_SPEC and ASM_SPEC for AMD64.
|
113420 |
13-Apr-2003 |
kan |
Teach gcc how to put unitialized data into BSS on FreeBSD.
|
110629 |
10-Feb-2003 |
kan |
Merge FreeBSD modifications into gcc 3.2.2 release: 1.10 -mno-align-long-strings. 1.11 Allow the specification of LONG_TYPE_SIZE on the command line.
|
110628 |
10-Feb-2003 |
kan |
Merge FreeBSD modifications into gcc 3.2.2 release: 1.11 -mno-align-long-strings. Note the change 1.15 is not needed anymore.
|
110612 |
10-Feb-2003 |
kan |
This commit was generated by cvs2svn to compensate for changes in r110611, which included commits to RCS files with non-trunk default branches.
|
108173 |
22-Dec-2002 |
kan |
Fix a bug in GCC which effectively prevents DEFAULT_PCC_STRUCT_RETURN from having any effect. This restores a calling convention traditionally used by FreeBSD/i386 and which is expected by a number of assembly sources in libc.
Reviewed by: obrien Approved by: re (rwatson)
|
107605 |
04-Dec-2002 |
obrien |
Update HEAD with FSF branch 3.2.1 release files.
|
107604 |
04-Dec-2002 |
obrien |
Use pure stock files.
|
107598 |
04-Dec-2002 |
obrien |
Merge revs 1.10 (-mno-align-long-strings) and 1.11 (LONG_TYPE_SIZE override) into Gcc 3.2.1 release.
|
107597 |
04-Dec-2002 |
obrien |
Merge rev 1.11 (-mno-align-long-strings) into Gcc 3.2.1 release.
|
107591 |
04-Dec-2002 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r107590, which included commits to RCS files with non-trunk default branches.
|
107286 |
26-Nov-2002 |
obrien |
Remove our custom mixed ELF/a.out support. This means the base compiler now only produce ELF objects. It also makes us closer to stock GCC, and simplifies the set of changes we still need from stock GCC on every import.
Applauded by: peter Approved by: re
|
104768 |
10-Oct-2002 |
kan |
Merge FreeBSD modifications into gcc 3.2.1-prerelease: 1.10 -mno-align-long-strings 1.11 Allow the specification of LONG_TYPE_SIZE on the command line.
Approved by: obrien
|
104767 |
10-Oct-2002 |
kan |
Merge FreeBSD modifications into gcc 3.2.1-prerelease: 1.11 -mno-align-long-strings
Approved by: obrien
|
104753 |
10-Oct-2002 |
kan |
This commit was generated by cvs2svn to compensate for changes in r104752, which included commits to RCS files with non-trunk default branches.
|
102802 |
01-Sep-2002 |
kan |
Use the stock 3.2.1-prerelease file.
Approved by: obrien
|
102801 |
01-Sep-2002 |
kan |
Merge FreeBSD modifications into gcc 3.2.1-prerelease: 1.10 -mno-align-long-strings 1.11 Allow the specification of LONG_TYPE_SIZE on the command line.
Approved by: obrien
|
102800 |
01-Sep-2002 |
kan |
Merge FreeBSD modifications into gcc 3.2.1-prerelease: 1.11 -mno-align-long-strings
Approved by: obrien
|
102781 |
01-Sep-2002 |
kan |
This commit was generated by cvs2svn to compensate for changes in r102780, which included commits to RCS files with non-trunk default branches.
|
99884 |
12-Jul-2002 |
obrien |
Fix C++ exception handling. GCC was using the older BSD DBX register numbers rather than the ELF ABI/SVR4 ones in its DWARF unwinding.
Submitted by: Alexander Kabaev <ak03@gte.com>
|
99883 |
12-Jul-2002 |
obrien |
When I decided to use a stock dbxout.c rather than merge the rev 1.2 change (put the function stabs in traditional order on a.out, or gdb doesn't see function local variables), I failed to remove the related knobs here.
Effectively were overrode the ELF-wide definition in elfos.h w/o providing new infrastructure. This is what caused GDB to fail to debug applications compiled and linked with -stabs. This is because GCC was unconditionally inserts .stabs instruction for functions after the function body. GDB was getting confused because what it thinks is function beginning address is actually function ending address.
Submitted by: Alexander Kabaev <ak03@gte.com>
|
98599 |
21-Jun-2002 |
obrien |
Tweaks to make these files live beside our hacked config.
|
98597 |
21-Jun-2002 |
obrien |
Tweaks for the 64-bit compiler.
|
98572 |
21-Jun-2002 |
obrien |
BDE prefers this organization.
Submitted by: bde
|
98096 |
10-Jun-2002 |
obrien |
cvs -j -j gave me two copies of TARGET_VERSION and I didn't notice it before committing.
|
97943 |
06-Jun-2002 |
obrien |
Match the DBX_OUTPUT_MAIN_SOURCE_FILE_END definition in dbxelf.h.
Bug found by: bde
|
97912 |
06-Jun-2002 |
obrien |
Allow the specification of LONG_TYPE_SIZE on the command line.
Submitted by: bde
|
97911 |
06-Jun-2002 |
obrien |
Implement "-mno-align-long-strings" which prevents pessimization of strings for space. -Os could do this, but it was easy to hack an MD version. This saves a whole 32 bytes in boot2, so I think it is worth using it. (keep how much worse gcc 3.2 will compile boot2...)
Submitted by: bde (minus gcc 3.2 commentary)
|
97910 |
06-Jun-2002 |
obrien |
Didn't get them all in revision 1.50.
|
97908 |
06-Jun-2002 |
obrien |
Fix excessive alignment for the aout case, and unbreak genassym for that case. Our aout linker has alignment hacks and doesn't need gcc to do anything special.
Tested for a year by: bde :-)
|
97907 |
06-Jun-2002 |
obrien |
Tidy do-while.
Requested by: bde
|
97827 |
04-Jun-2002 |
obrien |
The brokenness in ix86_expand_clrstr is quite visible when you compare the function with ix86_expand_movstr.
Submitted by: Tor Egge
|
97543 |
30-May-2002 |
obrien |
Seems we are not ready for revision 1.8.
|
97532 |
30-May-2002 |
obrien |
Make our default predefines ANSI clean.
|
96466 |
12-May-2002 |
obrien |
do-while ASM_OUTPUT_ALIGN to enable its use in more places.
|
96447 |
12-May-2002 |
obrien |
Fixes for building a.out bits.
Submitted by: bde
|
96331 |
10-May-2002 |
obrien |
Remove files not part of GCC 3.1.
|
96294 |
09-May-2002 |
obrien |
Use the stock (3.1 pre) file.
|
96293 |
09-May-2002 |
obrien |
Use the stock file for now (but leave a note behind about our OBE changes).
|
96264 |
09-May-2002 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r96263, which included commits to RCS files with non-trunk default branches.
|
96144 |
07-May-2002 |
obrien |
Comment a knob.
|
96143 |
07-May-2002 |
obrien |
The default ASM_OUTPUT_ADDR_DIFF_ELT will now handle our mixed a.out/ELF.
|
95810 |
30-Apr-2002 |
obrien |
i386 MD bits for Gcc 3.1.
These are totally untested. Do these work? Hell if I know, I have yet to bootstrap using these bits. But people want them, so here they are.
|
95349 |
24-Apr-2002 |
obrien |
Style changes to reduce diff to things I did in the FSF repo.
|
95348 |
24-Apr-2002 |
obrien |
Fix bug where we were loosing our platform-wide ASM_COMMENT_START definition due to pollution in i386/unix.h.
|
93263 |
27-Mar-2002 |
obrien |
Switch register numbers for DWARF2_DEBUG also.
|
91221 |
25-Feb-2002 |
obrien |
Use the default 'ld' emulation rather than hard coding it. For FreeBSD, 'ld' 2.12.0 uses a different emulation than in the past. So this change makes the upgrade easier.
|
90286 |
06-Feb-2002 |
obrien |
Use the stock [3.l-snap] version of this.
|
90285 |
06-Feb-2002 |
obrien |
Use the stock [3.1-snap] file.
|
90284 |
06-Feb-2002 |
obrien |
Use the stock file for now.
The changes from GCC 2.95.3 to 3.1 are large and it is hard to figure out how to apply our changes. Once BDE can properly test GCC 3.1 he'll add back in our changes.
|
90076 |
01-Feb-2002 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r90075, which included commits to RCS files with non-trunk default branches.
|
89885 |
27-Jan-2002 |
peter |
This commit was generated by cvs2svn to compensate for changes in r89884, which included commits to RCS files with non-trunk default branches.
|
74478 |
19-Mar-2001 |
obrien |
Merge gcc-2.95.3 changes onto mainline. Update FreeBSD changes to converge with changes made in the FSF tree.
|
73325 |
02-Mar-2001 |
obrien |
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.
|
73305 |
02-Mar-2001 |
obrien |
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.
|
72564 |
17-Feb-2001 |
obrien |
Merge gcc-2.95.3-test3 changes onto mainline. Bump FreeBSD cc version.
|
70639 |
03-Jan-2001 |
obrien |
Merge gcc.2.95.3-test1 changes onto mainline
|
68601 |
11-Nov-2000 |
obrien |
Properly format the SUBTARGET_SWITCHES so that ``gcc -v --help'' prints them out.
PR: 19326 Submitted by: Naohiko Tsuji <yakisoba@f2.dion.ne.jp>
|
60776 |
22-May-2000 |
obrien |
Do not use DWARF2 unwinding mechanisms for C++ exceptions on all of our platforms.
|
60731 |
20-May-2000 |
obrien |
ASM_DECLARE_OBJECT_NAME and ASM_FINISH_DECLARE_OBJECT are ELF MI routines to generate the special .type and .size directives which are used to set the corresponding fields of the linker symbol table entries in the ELF object file. As such they are not i386-specific and thus belong in our MI header. Otherwise on the Alpha we don't properly give the type and size of dynamic symbols. Bintuil versions past 2.9.1 warn of this and w/o this change, `ld' generates a lot of warnings during a `make world'.
|
58478 |
23-Mar-2000 |
obrien |
Clean up the FreeBSD configuration files -- includes removing the usage of svr4.h on the i386, and moving all the shared arch neutral bits into the FreeBSD general config header.
|
56810 |
29-Jan-2000 |
obrien |
Fix our -mprofiler-epilogue code.
"The problem is that egcs/gcc-2.95's reorganisation of the prologue and epilogue code to use rtl instead of output_asm_insn() completely broke our hooks. rtl is emitted in a different order, only after optimisation, while output_asm_insn() is emitted immediately. rtl is presumably used so that the prologue and epilogue can be optimised.
I couldn't find any good examples to copy. gcc's own FUNCTION_BLOCK_PROFILER still uses output_asm_insn() and seems to be completely broken. One of the XXX comments points to this.
IIRC, the hacks here basically arrange to emit magic label names; then when the magic names are output, they are transformed into prologue and epilogue code."
Submitted by: bde
|
56391 |
22-Jan-2000 |
obrien |
Merge in the restore pic register fix from the vendor branch.
PR: 3441 Submitted by: Mark Diekhans <markd@Grizzly.COM>
|
56386 |
22-Jan-2000 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r56385, which included commits to RCS files with non-trunk default branches.
|
54813 |
19-Dec-1999 |
obrien |
Use symbolic values rather than constants in TARGET_DEFAULT.
Submitted by: bde on -current
|
54807 |
19-Dec-1999 |
obrien |
Use a unified CPP_SPEC.
|
54665 |
16-Dec-1999 |
obrien |
Fix my CPP_SPEC synatax screwup.
Totally pissed at self: obrien
|
54630 |
15-Dec-1999 |
obrien |
Remove the defining of __i486__ baesd on TARGET_CPU_DEFAULT and !m386 or m486.
|
53661 |
24-Nov-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r53660, which included commits to RCS files with non-trunk default branches.
|
53658 |
24-Nov-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r53657, which included commits to RCS files with non-trunk default branches.
|
53655 |
24-Nov-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r53654, which included commits to RCS files with non-trunk default branches.
|
53177 |
15-Nov-1999 |
obrien |
Add rev 1.2 profiling tweaks, to GCC 2.95.2.
|
53176 |
15-Nov-1999 |
obrien |
Use the stock 2.95.2 file here.
I cannot determine if our previous (rev 1.2) changes for ObjC are still appropriate.
|
52751 |
01-Nov-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r52750, which included commits to RCS files with non-trunk default branches.
|
52296 |
16-Oct-1999 |
obrien |
Use the stock file here. I cannot determine if our previous (rev 1.2) changes for ObjC are still appropriate.
|
52295 |
16-Oct-1999 |
obrien |
Use stock file here.
|
52294 |
16-Oct-1999 |
obrien |
Bring our profiling tweaks from rev 1.2 into GCC 2.95.1.
|
52285 |
16-Oct-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r52284, which included commits to RCS files with non-trunk default branches.
|
52269 |
15-Oct-1999 |
obrien |
Register the fact we want expand_main_function() to invoke __main.
|
52142 |
12-Oct-1999 |
obrien |
Remove a useless blank line, I accidently added.
|
52112 |
10-Oct-1999 |
obrien |
Style cleanups: * be consistant on protecting "#define FOO"s with "#undef FOO". * be consistant that macro params are upper case, and commas are followed by a space in the macro definition * protect macro param expansion by ()'s * break long lines * line continuations chars to consistant column * remove trailing spaces
|
52111 |
10-Oct-1999 |
obrien |
Remove things common to all FreeBSD platforms. They will now live in a FreeBSD wide config file.
This includes "WORD_SWITCH_TAKES_ARG" & "SWITCH_TAKES_ARG". Platforms such as FreeBSD/MIPS will need to override these two defintions, but it can #undef them and define them approapiately.
|
51411 |
19-Sep-1999 |
obrien |
Bring our profiling tweaks into EGCS 1.1.2.
|
51410 |
19-Sep-1999 |
obrien |
"COMMENT_BEGIN" is no longer used.
|
51409 |
19-Sep-1999 |
obrien |
Support linking against libgcc_r.
Submitted by: Luoqi Chen <luoqi@chen.ml.org>
|
51408 |
19-Sep-1999 |
obrien |
This should get us the same functionality we had with GCC 2.7.2.1.
* Support for our dual ELF/a.out building ability * Our custom ASM_* definitions * Our custom debugger and profiling related definitions * Our custom STARTFILE/ENDFILE specs
* The stock EGCS 1.1.2 freebsd-elf.h file depended on egcs-1.1.2/gcc/config/linux.h, which included "svr4.h". We will include "svr4.h" via our "tm.h" definition. So add the few bits from "linux.h" we actually needed.
* Using our current crtbegin.o/crtend.o we cannot support the DWARF2 unwinding mechanisms. In the future we will switch to the non-sjlj-exceptions type exception machanism. However the `make world' bootstrap problems with the EGCS crtstuff.c must be overcome first.
* Our a.out gas doesn't "know" to use NOP's for aligns while in the text section. Thus the a.out alignment generation needed tweaking from what we did with GCC 2.7.2. [from BDE]
* The definition of SUPPORTS_ONE_ONLY prevents the compiler from trying to use "linkonce" sections for a.out. The definition of NO_DBX_FUNCTION_END we had causes it to avoid .stabs symbols that the assembler cannot handle for a.out. [from JDP]
* The previous "EXCEPTION_SECTION_FUNCTION" is the wrong name for EGCS. It also needed tweaking for EGCS. [from JDP]
Also bump __FreeBSD_cc_version to 400002 in case we need to know we are using EGCS at some point.
|
50654 |
30-Aug-1999 |
obrien |
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)
|
50650 |
30-Aug-1999 |
obrien |
Use the stock EGCS 1.1.2 file here. I cannot determine if our previous changes for ObjC are still appropriate.
|
50398 |
26-Aug-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r50397, which included commits to RCS files with non-trunk default branches.
|
48744 |
10-Jul-1999 |
obrien |
This commit was generated by cvs2svn to compensate for changes in r48743, which included commits to RCS files with non-trunk default branches.
|
43052 |
22-Jan-1999 |
obrien |
Update __FreeBSD__ and __FreeBSD_cc_version to be consistant with __FreeBSD_version
Forgotten by: Eivind and Some anonymous release engineer
|
40736 |
29-Oct-1998 |
jdp |
Per request from ache, change the numbering scheme of __FreeBSD_cc_version. Its form is now like __FreeBSD_version, with the FreeBSD revision in the top digits.
|
40715 |
29-Oct-1998 |
jdp |
Add a new predefined preprocessor symbol "__FreeBSD_cc_version", with a numeric value that describes the feature level of the compiler. This can be used to check for the presence/absence of FreeBSD-specific compiler features. The value is a decimal number whose digits have the form VRRRRFF, where:
V = Compiler vendor. 0 (elided) means gcc. RRRR = Vendor's version number, e.g., 2721 for the current gcc version (2.7.2.1). FF = FreeBSD-specific revision level. 00 means the stock compiler from the vendor.
The value of "__FreeBSD_cc_version" is hard-coded in "src/contrib/gcc/config/i386/freebsd.h" and must be incremented when new FreeBSD-specific compiler features are added. I considered simply picking up the value of FreeBSD_version from <osreldate.h>. But that would break cross compiles of gcc.
PR: Part of the fix for gnu/8452 Suggested by: bde
|
38928 |
07-Sep-1998 |
jdp |
Make profiling work for ELF. gprof now autodetects the format of the executable file, so it will work for both a.out and ELF format files. I have split the object format specific code into separate source files. It's cleaner than it was before, but it's still pretty crufty.
Don't cheat on your make world for this update. A lot of things have to be rebuilt for it to work, including the compiler and all of the profiled libraries.
|
37312 |
30-Jun-1998 |
bde |
Fixed printf format errors.
|
35168 |
13-Apr-1998 |
peter |
-pg was causing a link with -lc_r... :-]
Submitted by: Dmitry Khrustalev <dima@xyzzy.machaon.ru> PR: 6287
|
34363 |
09-Mar-1998 |
peter |
Both our a.out (hacked) gas and the binutils gas support .weak
Prompted by: bde
|
34349 |
09-Mar-1998 |
peter |
Don't disable the use of $ in assembler labels.. It changes libstdc++ and libg++ so that they won't work with existing binaries (including netscape!!).
|
34314 |
08-Mar-1998 |
peter |
Spell -Bshareable correctly... :-]
|
34285 |
08-Mar-1998 |
peter |
svr4.h defines ASM_IDENTIFY_GCC, but neglects to define ASM_IDENTIFY_LANGUAGE. Use the osfrose.h method, because gdb assumes 'C' by default, so there's no need to further clutter the symbol table.
|
34284 |
08-Mar-1998 |
peter |
Cosmetic cleanup for a.out asm generation.. Don't put the end-of-file markers that the stabs-in-elf system uses.
|
34269 |
08-Mar-1998 |
peter |
Put the function stabs in traditional order on a.out, or gdb doesn't see function local variables.
|
34230 |
08-Mar-1998 |
peter |
Add hooks for John Birrell's kernel thread support library.
Submitted by: John Birrell <jb@cimlogic.com.au>
|
34229 |
08-Mar-1998 |
peter |
First round of changes to support generation of assembler for the old a.out gas and the binutils gas (elf or a.out) with a single compiler.
This uses other infrastructure not yet committed, in order to support both a.out and elf it needs to be able to get to both a.out and elf gas, ld, libs, crt* etc. So for now, the support is pretty much dormant.
The new freebsd.h file is based on the old freebsd-elf.h file (which has a long lineage, right back through linux and svr4 files). The change is pretty dramatic from a gcc internals standpoint as it overrides a lot of definitions in order to generate different output based on target mode. There is potential for screw-ups, so please be on the lookout - gcc's configuration mechanism wasn't really meant for this kind of thing. It's believed to compile world etc just fine under both a.out and elf, can handle global constructors and destructors, handles the differences in a.out and elf stabs, and what sections things like exceptions go in.
The initial idea came from i386/osfrose.h which is a dual rose/elf format target. These two are not as diverse as a.out and elf it would seem.
The cc front-end uses external configuration to determine default object format (still being thrashed out, so read the source if you want to see it so far), and has a '-aout' and '-elf' override command line switch. There are some other internal switches that can be accessed, namely -maout, -mno-aout, -munderscores and -mnounderscores. The underscore and local symbol prefixing rules are controllable seperately to the output format. (ie: it's possible to generate a.out without the _ prefixes on symbols and also to generate elf with the _ prefixes. This isn't quite optimal, but does seem to work pretty well, except the linkers don't always recognise the local symbols without their normal names)
The default format is a.out (still), nobody should see any major changes.
With both elf and a.out tools and libraries installed:
[1:26pm]/tmp-223> cc -elf -o hello hello.c peter@beast[1:27pm]/tmp-224> file hello hello: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), dynamically linked, not stripped [1:27pm]/tmp-225> ./hello hello world!
[1:27pm]/tmp-226> cc -aout -o hello hello.c [1:27pm]/tmp-227> file hello hello: FreeBSD/i386 compact demand paged dynamically linked executable not stripped 1:27pm]/tmp-228> ./hello hello world!
Since my co-conspirators put a lot of effort into this too, I'll add them so they can share the blame^H^H^H^H^Hglory. :-)
Reviewed by: sos, jdp
|
28882 |
29-Aug-1997 |
peter |
Merge in some of my changes with John's. I've used this to build an ELF system. I'm not sure about some of the things here. We definately need to go back and rationalize this.
|
28846 |
28-Aug-1997 |
jdp |
Add the necessary defines to the freebsd-elf configuration so that it can be built via BINFORMAT=elf in the environment. Most likely some of the directory defines such as STANDARD_EXEC_PREFIX will change again soon, as we settle on the proper locations for the various components.
Note, the build still fails when it tries to compile libgcc2.c using the ELF compiler, unless arrangements have been made for the compiler to find the ELF assembler instead of the a.out assembler.
|
25733 |
12-May-1997 |
peter |
The -pthread option was added to freebsd.h but missed from freebsd-elf.h
|
25400 |
03-May-1997 |
jb |
Let gcc know about libc_r. Use -pthread to link against libc_r instead of libc.
|
24758 |
09-Apr-1997 |
jdp |
Make "gcc -shared" work properly for building shared libraries. An up-to-date version of c++rt0.o is necessary for this to work right.
Closes PR gnu/3035: gcc -shared flag is broken.
|
24658 |
05-Apr-1997 |
jdp |
Disallow "-p" when linking, with a diagnostic that recommends using "-pg" and gprof(1) instead. FreeBSD does not support plain "-p" or prof(1).
Plain "-p" is still allowed when just compiling. In the compile phase, "-p" is identical "-pg". It is used by <bsd.lib.mk> for building profiled object files.
|
24295 |
26-Mar-1997 |
jdp |
Update the value of "__FreeBSD__" to 3 for the ELF compiler.
|
24257 |
25-Mar-1997 |
asami |
-current is now 3.0. NOT a 2.2 candidate. :)
|
23076 |
24-Feb-1997 |
obrien |
Undo rev 1.4 of freebsd.h and 1.2 freebsd-elf.h, where I added _BSD4_4 as a predefined symbol. People on the lists generally didn't care for it.
|
22809 |
16-Feb-1997 |
obrien |
Add _BSD4_4 as a predefined symbol. Peter Dufault (dufault@hda.com) suggested this is the most approate symbol to use.
2.2-R candidate.
|
19194 |
26-Oct-1996 |
peter |
Apparently this patch fixes the objc backend on the i386 platforms. Without this, compiled programs die with FP errors.
This is originally credited to: jlemon@netcom.com (Jonathan Lemon), and has been forwarded to me by quite a few of people.
|
18659 |
03-Oct-1996 |
jdp |
Fix a bug that caused incorrect PIC code to be generated for exceptions. The symptom was an assembler warning
"GOT relocation burb: `___EXCEPTION_TABLE__' should be global"
followed (sometimes) by a core dump. The fix makes the compiler generate the correct GOTOFF addressing for that symbol, rather than the GOT addressing it was emitting before.
Warning: There is still at least one serious bug in the i386 exception code for PIC. The exception code that is generated clobbers the GOT register (%ebx) and then tries to use it later. That leads to core dumps at program execution time. I know where the problem is, but I do not have a fix for it at this time. Until it is fixed, exceptions will not work in PIC code. This is a general problem for all i386 platforms; it is not specific to FreeBSD.
|
18604 |
01-Oct-1996 |
peter |
Activate the .weak code generation for libgcc.a and g++ now that it works.
|
18349 |
18-Sep-1996 |
peter |
Merge in freebsd-specific changes
|
18348 |
18-Sep-1996 |
peter |
Add in hooks to produce assembler output suitable for binutils+elf Obtained from: John Polstra <jdp@freebsd.org>, from his elfkit.
|
18337 |
18-Sep-1996 |
peter |
This commit was generated by cvs2svn to compensate for changes in r18336, which included commits to RCS files with non-trunk default branches.
|
18335 |
18-Sep-1996 |
peter |
This commit was generated by cvs2svn to compensate for changes in r18334, which included commits to RCS files with non-trunk default branches.
|