summaryrefslogtreecommitdiff
path: root/gnu/gcc
AgeCommit message (Collapse)Author
2012-04-02In r1.2, instead of making -fno-ident the default, its semantics have beenPascal Stumpf
totally fucked up, effectively leading to inverted behaviour of the -fident and -fno-ident flags (while keeping the .ident string in by default). Revert it back to normal and default to -fno-ident. ok millert@
2012-03-28Default to -mfix-r4000 -mfix-r4400 when building in big endian mode. This isMiod Vallat
a lifesaver for R4000 and R4400 operation; without these, every int->long promotion occuring shortly after an integer multiplication (such as an array element access when the array item size is not a power of two) loses horribly, and panic^Whilarity ensues. This mostly causes assembly insns to be shuffled, but almost no code size growth and no noticeable performance hit on processors which do not need these insn placement workarounds.
2012-03-06Define NO_UNSAFE_BUILTINS, overlooked when local changes got merged to gcc4.Pascal Stumpf
Found by Brad. Also, consider stpcpy an unsafe builtin and prevent it from being optimised away. ok miod@
2012-03-01Sync gcc3 and gcc4 knowledge of the kernel printf capabilities with reality:Miod Vallat
kprintf supports %z, doesn't support old ddb %n/%r%z anymore, and check of %b arguments have to occur on the next argument, like, duh. These changes will eventually allow for kernel to be compiled without -Wno-format, but some more casts or type changes are necessary, first. Discussed about six months ago at s2k11, time to put this in, so that I have no excuse not to work on the format fixes diffs.
2012-01-06zap double copy of this file, as noticed by brad@Marc Espie
2011-12-15Convert restrict -> __restrict. "restrict" is not a keyword in C90 andPascal Stumpf
C++98, so clang++ rightfully complains about it when in C++98 mode (the default). Found while investigating the other clang issue, with helpful input from espie@. ok jsg@
2011-12-15Remove the XXX_CHECK defines. This allows clang++ to include cstdioPascal Stumpf
without barfing about conflicting declarations. Issue reported by Amit Kulkarni, investigated by matthew@ and kettenis@. ok kettenis@
2011-12-04Restore MAX_OFILE_ALIGNMENT define (lost during the gcc3 -> gcc4 switch),Miod Vallat
and change ASM_OUTPUT_ALIGNED_COMMON to output an explicit .align directive, as gas will not compute it from the size (despite what comments elsewhere in gcc code say). This effectively makes __attribute__ ((aligned (N))) constructs work as intended for .bss objects. ok kettenis@
2011-11-25Final configuration bits for gcc4: require alignment of local arrays onMiod Vallat
word boundaries, and enable the builtins.c `one-byte memcpy' workaround.
2011-11-25Allow MD backend to prevent the optimization of a bcopy() or memmove() ofMiod Vallat
size 1 (the size being known at compile-time) into an inline mempcpy() expansion, which will in turn expand into a byte load and store operation. This expansion loses precious address alignment information at some point (because everybody knows that you can read a byte from any address, right?), and this loses bigtime on strict alignment platforms which lack the ability to accesse bytes directly, such as alpha (unless compiling with -mbwx and runnning on a BWX-capable cpu). An example of such call with size 1 is lib/libkvm/kvm.c line 780.
2011-11-02Remove '#if !defined(OpenBSD)' wrappers around wcsftime() and iswblank().Stefan Sperling
From brad. ok kettenis espie
2011-10-21change LINK_SPEC in such a way that -rdynamic will workJonathan Gray
(passes -export-dynamic to ld(1)) ok drahn@ miod@
2011-10-17Some wcsftime declarations were still wrapped in !defined(__OpenBSD__).Stefan Sperling
from brad; ok kettenis
2011-10-16Expose wscanf(3) and wcsftime(3) in the std:: namespace (gcc4) and bump major.Stefan Sperling
2011-09-15Port the -Wbounded extension from gcc3 to gcc4. Based on work started byNicholas Marriott
jasper@. This omits the sizeof(pointer) tracking which is very difficult to implement for gcc4 due to internal changes. Thanks to landry@ for running through a ports bulk build and both landry@ and jasper@ for fixing a few issues. ok deraadt millert jasper
2011-08-04Don't use 128-bit long doubles for now (and perhaps forever). It isn'tMark Kettenis
implemented in hardware anyway.
2011-08-04Add support for hppa64.Mark Kettenis
ok deraadt@
2011-07-04Let ia64 gcc compile.Paul Irofti
2011-06-25Remove ueberold a.out configuration leftovers.Miod Vallat
2011-06-25Fix gcc PR #35965 as suggested inMiod Vallat
http://gcc.gnu.org/ml/gcc-patches/2008-06/msg01641.html This fixes a stack protector code bug which only got triggered by some particular function patterns, such as libc's __vfprintf. ok drahn@
2011-04-28Bring back wprintf() for gcc4 libstdc++.Stefan Sperling
2011-04-27Merge from gcc3:Christian Weisgerber
Default gcc on alpha to -mfp-rounding-mode=d, to make code which assumes the rounding mode is always controlled by fpsetround() happy. ok martynas@, miod@
2011-04-24Back out wprintf diff and crank. Need to check more architectures first.Stefan Sperling
requested by and ok deraadt
2011-04-24Expose wprintf and friends in the std:: namespace. Major bump for libstdc++.Stefan Sperling
ok kettenis espie
2011-04-07Use the correct floating point type.Dale Rahn
2011-04-06Put in the infrastructure for OpenBSD/arm gcc4 support. Not working, but workDale Rahn
on this in-tree not diffs floating around for > 1 year. ok miod@
2011-03-14Fix compiler warning from recent HANDLE_PRAGMA_PACK_PUSH_POP addition.Dale Rahn
(Fix both ppc compilers in tree, was previously committed to wrong one). OK deraadt@ discusssed with millert@ otto@ and kettenis@
2011-03-02Fix patently broken handling of ios_base::showpos: "cout << showpos <<Matthew Dempsky
0" should output "+0", not "0". Diff from upstream (which is still GPLv2+) via Brad.
2011-03-02define HANDLE_PRAGMA_PACK_PUSH_POP just like on other platformsRobert Nagy
to get #pragma pack and #pragma push work in order to be compatible with MS compilers because there is some code out there (e.g. chromium) that uses these pragmas. ok kettenis@
2010-12-24define __throw_exception_again to something, so that g++ -fno-exceptionsMarc Espie
does not throw warnings for stuff like if () __throw_exception_again; which does happen in its own fucking headers. builds of qt3 should no longer warn... okay millert@, no objection kettenis@
2010-12-12Make sure GCC's idea about size_t and ptrdiff_t matches what we have inMark Kettenis
<sys/types.h>. ok miod@
2010-09-14Provide a LOCAL_ALIGNMENT() macro, as on other strict alignment architectures.Miod Vallat
2010-09-11Setup sane INCLUDE_DEFAULTS when cross compiling.Joel Sing
ok drahn@
2010-09-10Add infrastructure to build GCC 4.2.1 for OpenBSD/mips64. Only tested onMark Kettenis
loongson (mips64el). ok miod@
2010-09-09let gcc4 build on landiskJonathan Gray
initial diff from jasper, finished by me with help from miod ok jasper@ miod@ kettenis@
2010-08-29Make sure local arrays of chars are word-aligned on strict alignmentMark Kettenis
architectures, just like what is done for global ones. This isn't just an optiization. There is a long tradition of building packets in arrays of chars on the stack by using casts to types that require stricter alignment. Ignore the language lawyers say it isn't explicitly allowed by the C standard. Historically many (all?) C compilers have handled that just fine, so it is stupid to break this. Thanks to mikeb@ for finding the GCC bug report against upstream GCC 4.2.1. This fixes hppa/hppa64 and sparc/sparc64 as discuessed with miod@ (upstream only fixed sparc/sparc64). Other strict alignment architectures will need similar fixes. ok deraadt@, mikeb@, miod@
2010-08-01Add infrastructure to buil GCC 4.2.1 on OpenBSD/sparc.Mark Kettenis
2010-08-01Make __builtin_return_address(0) work with -fstack-protector. Old diffMark Kettenis
from Jakub Jelinek that never made it into upstream GCC. Fixes ld.so. Found by drahn@ and me; ok miod@
2010-07-26Turn on -Wsystem-headers by default, so that glitches in our headersPhilip Guenthe
aren't silently ignored but rather get warned about and fixed. Purely stylistic warnings like -Wredundant-decls are your own problem however. testing help from landry@, header fixes from kettenis@ ok deraadt@
2010-06-06Yet another underflow. Found while hunting down the ICEs that happenMatthias Kilian
from time to time when building the www/larbin port. This is an independent bugfix, and it's different from 4.5.0. ok espie@
2010-06-06prevent segfault on amd64 when -Wmissing-include-dirs -I/nonexistentMarc Espie
(happens even with empty files), as diagnosed with kili@ on evolution-database. We obviously need to check the token chain and go up if we're at the start of a buffer (unless we're really at the start unless we have to give up). Independent fix. Same functionality as code found on the gcc 4.5 branch, but completely different lines. okay miod@
2010-05-30Only enable -fstack-protector by default on targets that support it.Mark Kettenis
ok marco@
2010-05-30Fix ICE on hppa. Variant on minimal fix from GCC PR 34762.Mark Kettenis
ok deraadt@
2010-05-26make gcc4 lib sprintf/strcpy free.Marc Espie
activate proper C99 stuff. fix locale support when there's no locale. work common with kettenis@
2010-05-25Enable -fstack-protector by default.Robert Nagy
2010-05-24Link against libc_p and libpthread_p when -p or -pg is specified, like we didMark Kettenis
for gcc3. ok espie@
2010-05-23GCC PR C++/33094.Marc Espie
C++ semantics fix. Member constants can be file-local, if they're not external. Fixes build of py-tagpy, which barfs in Boost otherwise. (original fix, different text from gcc 4.2.4) okay deraadt@, kettenis@
2010-05-20turn off strict overflow for all optimizations on OpenBSD, also disable wrapv.Dale Rahn
ok kettenis@ robert@, tested by marco@, kevlo@ myself
2010-05-16Don't include -ftree-vrp in -O2 and higher as it has known bugs in gcc 4.2.Jonathan Gray
Fixes jdk builds among other things. ok robert@ espie@
2010-05-12wint_t is int on OpenBSD; ok kettenis@Christian Weisgerber