| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
This mimics the behaviour in clang and lets us build cleanly
the libdispatch port on platforms where the base gcc is still
the default compiler.
Bump __FreeBSD_version for ports.
Tested by: theraven
MFC after: 3 days
|
|
|
|
|
| |
sparc64 from contrib/gcc/longlong.h, which are considered "heinous" GNU
extensions by clang.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
all of the features in the current working draft of the upcoming C++
standard, provisionally named C++1y.
The code generator's performance is greatly increased, and the loop
auto-vectorizer is now enabled at -Os and -O2 in addition to -O3. The
PowerPC backend has made several major improvements to code generation
quality and compile time, and the X86, SPARC, ARM32, Aarch64 and SystemZ
backends have all seen major feature work.
Release notes for llvm and clang can be found here:
<http://llvm.org/releases/3.4/docs/ReleaseNotes.html>
<http://llvm.org/releases/3.4/tools/clang/docs/ReleaseNotes.html>
MFC after: 1 month
|
|
|
|
|
|
|
|
|
| |
Support for warnings about missing prototypes in C++ was added by Apple
GCC (Radar 6261539). Most of the code crept into r260311 so it felt
natural to make use of it.
Obtained from: Apple GCC - 5646
MFC after: 5 days
|
|
|
|
|
|
|
|
|
|
|
|
| |
Among some of the objc changes from Apple that crept into r260311,
Radar 5355344 is incomplete and is not used since we don't carry
ObjC in the base system.
The dead code seems to have caused issues in some Tinderboxes so
get rid of it altogether.
Reported by: luigi
MFC after: 9 days
|
|
|
|
|
|
| |
Without this gcc would generate byte loads for a little-endian core.
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GCC-PR rtl-optimization/34628
* combine.c (try_combine): Stop and undo after the first combination
if an autoincrement side-effect on the first insn has effectively
been lost.
The issue was detected in OpenBSD but their fix was not very good. Huge
thanks to the upstream author, Eric Botcazou, for permitting the use of
this patch under GPLv2.
MFC after: 5 days
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
llvm-gcc backported some patches from gcc trunk:
http://gcc.gnu.org/ml/gcc-cvs/2007-05/msg00662.html
http://gcc.gnu.org/ml/gcc-cvs/2007-07/msg00019.html
http://gcc.gnu.org/ml/gcc-cvs/2007-08/msg00240.html
http://gcc.gnu.org/ml/gcc-cvs/2007-08/msg00493.html
The first two were always GPL2. The last two were
added after the GPL3 transition, but were written
by aaw@google.com and Rafael EspĂndola got permission
to relicense them under the GPL2 for inclusion in
llvm-gcc.
This fixes GCC-PR c++/31749
Obtained from: llvm-gcc (rev. 75463; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Block objects [1] are a C-level syntactic and runtime feature. They
are similar to standard C functions, but in addition to executable
code they may also contain variable bindings to automatic (stack)
or managed (heap) memory. A block can therefore maintain a set of
state (data) that it can use to impact behavior when executed.
This port is based on Apple's GCC 5646 with some bugfixes from
Apple GCC 5666.3. It has some small differences with the support
in clang, which remains the recommended compiler.
Perhaps the most notable difference is that in GCC that __block
is not actually a keyword, but a macro. There will be workaround
for this issue in a near future. Other issues can be consulted in
the clang documentation [2]
For better compatiblity with Apple's GCC and llvm-gcc some related
fixes and features from Apple have been included. Support for the
non-standard nested functions in GCC is now off by default.
No effort was made to update the ObjC support since FreeBSD doesn't
carry ObjC in the base system, but some of the code crept in and
was more difficult to remove than to adjust.
Reference:
[1]
https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html
[2]
http://clang.llvm.org/compatibility.html#block-variable-initialization
Obtained from: Apple GCC 4.2
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
| |
Fixes some bugs detected by Apple:
#error with unmatched quotes
pragma mark
Obtained from: Apple GCC 4.2 - 5553
MFC after: 1 week
|
|
|
|
|
|
|
|
| |
Unfortunately this causes ICE on powerpc and sparc64.
Reducing these differences against upstream is not important
anymore so hopefully I have finished breaking the compiler
occasionally.
|
|
|
|
|
|
| |
While here, point where we dropped the support for objc from r260014.
MFC after: 3 weeks
|
|
|
|
|
| |
Obtained from: gcc 4.3 (rev. 121464, 122528, 124106; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apple GCC has extensions to support for both label attributes and
an "unavailable" attribute. These are critical for objc but are
also useful in regular C/C++.
Apparently at least the label attributes might have found their way to
upstream GCC but the code doesn't seem available on the GPLv2 tree so
we are taking the code directly from Apple. To make this clearer we
are preserving the annoying "APPLE LOCAL" tags and the ChangeLogs
when they are available.
Obtained from: Apple GCC 4.2 - 5531
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
|
|
| |
Backport from mainline:
2007-04-24 Hui-May Chang <hm.chang@apple.com>
* reload1.c (merge_assigned_reloads) : Do not merge a RELOAD_OTHER
instruction with a RELOAD_FOR_OPERAND_ADDRESS instruction.
Obtained from: gcc 4.3 (rev. r124115: GPLv2)
MFC after: 1 week
|
|
|
|
|
|
|
| |
This is equivalent to -Wall -Wno-parentheses.
Obtained from: Apple GCC 4.2 - 5531
MFC after: 1 week
|
|
|
|
|
|
|
|
|
| |
Very small updates: fixes GCC-PR target/31152
Tested by building the cross-compiler.
Obtained from: gcc 4.3 (rev. r118461, 125973: GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
|
| |
DEBUG_PUBTYPES_SECTION is defined.
Obtained from: gcc 4.3 (rev. 118826; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
Minor mismatch in r259666.
Obtained from: Apple GCC 4.2 - 5646 (Radar 5764921)
MFC after: 1 week
|
|
|
|
|
| |
Obtained from: Apple GCC 4.2 - 5646 (Radar 5764921)
MFC after: 1 week
|
|
|
|
|
|
|
|
|
| |
Fixes GCC libstdc++/29286
The fix seems to work for amd64 but causes segfaults on powerpc.
At this time gcc is much more important on powerpc than on amd64.
Reported by: andreast
|
|
|
|
|
|
| |
They are very useful but at this time I prefer not to figure out
some minor conflicts with the bigger Apple's blocks support
patch that is being worked on for current.
|
|
|
|
|
|
|
|
|
|
| |
Fix for PR c++/29928
Add support for Rvalue references as described here:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html
Obtained from: gcc 4.3 (rev. 124724, 125211; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
Mostly cosmetical changes to aid further merges.
Obtained from: gcc 4.3 (rev. 120611, 124839; GPLv2)
MFC after: 1 week
|
|
|
|
|
|
|
| |
Fixes GCC libstdc++/29286
Obtained from: gcc 4.3 (rev. 125603, 125653; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
| |
Fix document: "Apple compatible" suits better the origin.
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GCC 4.2 and previous have always warned about
"No newline at end of file".
Upstream GCC removed the warning completely but
Apple made it an optional warning. Adopt it for
compatibility with older GCC and clang.
While here, add comment to complement r258712.
Obtained from: Apple Inc. (Apple GCC 4.2 - 5531)
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
| |
As recommended by the FSF in gcc/version.c :
"If you distribute a modified version of GCC, please change
this to refer to a document giving instructions for reporting
bugs to you, not us."
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
| |
Solves GCC issues:
PR middle-end/32602
PR middle-end/32603
Updates the to documentation and processing
improvement.
Obtained from: gcc 4.3 (rev. 119427, 126278, 126422; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
Solve build issue with previous change.
Obtained from: gcc 4.3 (rev. 120902; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
Solves GCC-PR target/30485
Obtained from: gcc 4.3 (rev. 120902; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Obtained from: gcc 4.3 (rev. 126088; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
|
|
| |
Mostly cosmetic change, again to reduce differences with Apple's gcc.
Obtained from: gcc 4.3 (rev. 125239; GPLv2)
MFC after: 3 weeks
|
|
|
|
| |
Obtained from: gcc 4.3 (rev. 120572, 120688; GPLv2)
|
|
|
|
|
|
|
|
| |
This fixes a nasty bug introduced in r258651.
Reported and tested by: Justin Hibbits
Obtained from: gcc pre-4.3 (rev. 125116; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is a new ChangeLog.gcc43 file but most notable:
* floatformat.c (get_field): Fix segfault with little-endian word
order on 64-bit hosts.
(put_field): Likewise.
(min): Move definition.
gcc/cp/ChangeLog
2007-05-04 Geoffrey Keating <geoffk@apple.com>
PR 31775
* mangle.c (write_mangled_name): Mangle static variable names.
(write_unqualified_name): Use local-source-name for
namespace-scope static variables.
(Completes FreeBSD's r258017 )
Obtained from: gcc 4.3 (rev. 118552, 120097, 20698, 120702,
121364, 122972, 126588; GPLv2)
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
| |
This solves GCC/32617 and contributes to reduce differences with
Apple's gcc42.
Complete some references in the ChangeLog while here.
Obtained from: gcc 4.3 (rev. 126529, 126588; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
| |
While it was brought in r258179 only to fix a build issue,
bringing the rest of the change has the advantage of fixing
GCC/19978.
Obtained from: gcc 4.3 (rev. 120505; GPLv2)
MFC after: 1 week
|
|
|
|
|
|
|
|
|
| |
gcc: Move conditions before an assert.
It is a bit cleaner to check the conditions before calling the assertion.
It also preserves the style from the rest of the code.
This is just a cosmetical change to match better what both Apple's gcc42
and Android's gcc-4.2.1 do.
|
|
|
|
|
| |
Obtained from: gcc pre-4.3 (rev. 124763; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
| |
Obtained from: gcc pre-4.3 (rev. 124763; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Google released and enhanced version of gcc-4.2.1 plus their local
patches for Android[1].
The patches are owned by Google and the license hasn't been changed
from the original GPLv2. We are only bringing a subset of the
available patches that may be helpful in FreeBSD. Changes specific
to android are not included.
From the README.google file[1].
Patches applied to google_vendor_src_branch/gcc/gcc-4.2.1:
gcc/Makefile.in
gcc/c-common.c
gcc/c-common.h
gcc/c-opts.c
gcc/c-typeck.c
gcc/cp/typeck.c
gcc/doc/invoke.texi
gcc/flags.h
gcc/opts.c
gcc/tree-flow.h
gcc/tree-ssa-alias-warnings.c
gcc/tree-ssa-alias.c
Backport of -Wstrict-aliasing from mainline.
Silvius Rus <rus@google.com>
gcc/coverage.c:
Patch coverage_checksum_string for PR 25351.
Seongbae Park <spark@google.com>
Not yet submitted to FSF.
gcc/c-opts.c
gcc/c-ppoutput.c
gcc/c.opt
gcc/doc/cppopts.texi
libcpp/Makefile.in
libcpp/directives-only.c
libcpp/directives.c
libcpp/files.c
libcpp/include/cpplib.h
libcpp/init.c
libcpp/internal.h
libcpp/macro.c
Support for -fdirectives-only.
Ollie Wild <aaw@google.com>.
Submitted to FSF but not yet approved.
libstdc++-v3/include/ext/hashtable.h
http://b/742065
http://b/629994
Reduce min size of hashtable for hash_map, hash_set from 53 to 5
libstdc++-v3/include/ext/hashtable.h
http://b/629994
Do not iterate over buckets if hashtable is empty.
gcc/common.opt
gcc/doc/invoke.texi
gcc/flags.h
gcc/gimplify.c
gcc/opts.c
Add Saito's patch for -finstrument-functions-exclude-* options.
gcc/common.opt
gcc/doc/invoke.texi
gcc/final.c
gcc/flags.h
gcc/opts.c
gcc/testsuite/gcc.dg/Wframe-larger-than.c
Add a new flag -Wframe-larger-than- which enables a new warning
when a frame size of a function is larger than specified.
This patch hasn't been integrated into gcc mainline yet.
gcc/tree-vrp.c
Add a hack to avoid using ivopts information for pointers starting
at constant values.
Reference:
[1]
https://android.googlesource.com/toolchain/gcc/+/master/gcc-4.2.1/
Obtained from: Google Inc.
MFC after: 3 weeks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
It is useful to update the ChangeLog with upstream references
related to our local r189824 and r255095.
MFC after: 3 weeks
|
|
|
|
|
|
|
|
| |
Reference:
http://gcc.gnu.org/ml/gcc-patches/2007-05/msg01636.html
Obtained from: gcc 4.3 (rev. 125037; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
| |
Obtained from: gcc 4.3 (rev. 123909; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
| |
Obtained from: gcc 4.3 (rev. 122851; GPLv2)
MFC after: 3 weeks
|
|
|
|
|
|
|
| |
http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/tree.h?revision=120505&view=markup
This repairs build breakage for non x86 arch's that use gcc to build
intruduced at svn R258157
|