Commit Graph

231 Commits

Author SHA1 Message Date
joerg
2004814a3c Enable unwind tables by default. Assert the default in target-def.h to
make sure that it sticks.
2013-08-12 21:22:18 +00:00
joerg
be4584e4d4 Don't depend on ctype.h pulling in sys/ctype_bits.h, do so explicitly. 2013-04-26 17:34:55 +00:00
joerg
e8fa8f4db7 Extend ctype classification table to 16bit. Based on patch by
Takehiko Nozaki, with changes to compile fail when using the old names
and to exploit __BUILD_LEGACY
2013-04-13 10:21:20 +00:00
martin
ebfcfb962b Fix "ashq" second argument sign extension (the assembler does not treat
-1 as a 64bit value).
Upstream reported as http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875
Problemm noted by Jonny Billquist (in lint), hint for solution from mouse.
2013-04-08 12:10:53 +00:00
dholland
255fdbee78 Improve the output of gcc when a subprogram gets a signal. When OOMing
it gets signal 9, which prints "Killed" -- that this is actually
signal 9 and not a generic message is never clear and causes people to
file PRs unnecessarily.

Suggested by followups to PR 44096.

I applied this to gcc 4.5 ages ago, but this copy has been sitting
around in one of my trees for even longer and it may as well get
committed too.
2013-04-05 03:14:45 +00:00
joerg
34173e99da Fix template lookup. 2013-03-02 23:23:55 +00:00
matt
58ca788453 Make GCC define __ARM_PCS and __ARM_PCS_VFP as defined by the ARM C Language
Extentions (clang already defines them):
__ARM_PCS is defined to 1 if the default procedure calling standard for
the translation unit conforms to the "base PCS" defined in [AAPCS].
__ARM_PCS_VFP is defined to 1 if the default is to pass floating-point
parameters in hardware floating-point registers using the "VFP variant PCS"
defined in [AAPCS].
2013-01-25 08:31:43 +00:00
christos
8743a11216 Apply GCC/35998 from FreeBSD http://svnweb.freebsd.org/changeset/base/245024
gcc: avoid generating negative values to DW_AT_byte_size.

There is a bug in gcc (GCC/35998) where dwarf reports
sizes of unsigned -1 (0xffffffff).

On NetBSD this generated a faulty CTF entry which then
caused a segfault in ctfmerge. The issue was worked
around in NetBSD's Dtrace but since the issue originated
in gcc, it seems reasonable to fix it here.

Thanks to Christoph Mallon for pointing out a correct fix.
2013-01-17 20:01:37 +00:00
apb
6f1f99ca7a Teach gcc4.1's cpp about the magic __COUNTER__ macro,
which returns a unique integer each time it is expanded.
This code was written without reference to any other
implementation of the same feature.
2012-11-24 09:07:44 +00:00
matt
0bca5478cf Fix ffssi2 again.
Use a UNSPEC for the internal ffs.
use (match_dup 1) since Z will be set if it is 0 just as if tst:SI was done.
This can let gcc produce better code if you code appropriately.
2012-07-16 17:39:29 +00:00
ragge
f5b90a279f Bugfix builtin ffs, fixes PR port-vax/46677, fix from Paul Koning. 2012-07-11 13:34:45 +00:00
matt
703f2e538a Use REG_P, CONST_INT_P, and gcc_unreachable. 2012-02-05 17:34:34 +00:00
matt
a12df59a7e Handle another case the new gcc_assert(0) caught. 2012-02-02 18:33:03 +00:00
matt
b7a0413860 Fix a bug in movmemsi in which couldn't handle sym(reg) expressions properly. 2012-02-02 13:32:17 +00:00
joerg
3a4dc84ff4 Don't use dangling elses. 2012-01-06 15:16:02 +00:00
is
1ee229bdd2 Remove pattern for arith_adjacentmem in arm.md, thus fixing
PR toolchain/45576 at a very small run-time cost.

This was suggested by Richard Earnshaw.

A real fix is known to be in gcc 4.5.3 (as in NetBSD-current) and in
gcc-current; don't apply in that tree.
2011-11-07 20:35:39 +00:00
matt
8798b98c60 If we are compiling -msoft-float, define _SOFT_FLOAT 2011-06-11 00:57:29 +00:00
tsutsui
c2c4ea5e04 Pull following m68k softfloat fixes from upstream:
---
Revision 109143
2005-12-29  Paul Brook  <paul@codesourcery.com>
	* config/m68k/fpgnulib.c (__extendsfdf2): Handle negative zero.
	(__truncdfsf2): Ditto.
	(__extenddfxf2): Ditto.
	(__truncxfdf2): Ditto.
	* config/m68k/lb1sf68.asm (__addsf3): Return -0.0 for -0.0 + -0.0.
	(__adddf3): Ditto.
---
Revision 109145
2005-12-29  Paul Brook  <paul@codesourcery.com>
	* config/m68k/lb1sf68.asm (__cmpdf2): Fix typo in immediate mask.
	Create wrapper and rename body...
	(__cmpdf2_internal): ... to this.  Return correct value for unordered
	result.
	(__cmpsf2): Create wrapper and rename body...
	(__cmpsf2_internal): ... to this.  Return corerct value for unordered
	result.
	(__eqdf2, __nedf2, __gtdf2, __gedf2, __ltdf2, __ledf2): Use
	__cmpdf2_internal.
	(__eqsf2, __nesf2, __gtsf2, __gesf2, __ltsf2, __lesf2): Use
	__cmpsf2_internal.
---
Revision 110744
	* gcc/config/m68k/lb1sf68.asm (__divsf3, __divdf3, __mulsf3,
	__muldf3): Return a correctly signed zero.
---

Note:
 - lb1sf68.asm revision 110744 is still GPLv2.
 - fpgnulib.c is not GPLed.
2011-06-07 14:22:14 +00:00
tsutsui
078de69e1f Pull the following revision from upstream to provide __unordsf2() and
other missing softfloat functions:
---
Revision 108487
2005-12-13  Paul Brook  <paul@codesourcery.com>
	* config/m68k/fpgnulib.c (__unordsf2, __unorddf2, __unordxf2,
	__floatunsidf, __floatunsisf, __floatunsixf): New functions.
---

Fixes link errors of sources that refer isnan() on m68000.

Note this file is not GPLed.
2011-06-06 12:02:26 +00:00
joerg
7411798a6a Don't define explicit instantiation as inline. 2011-05-25 15:51:55 +00:00
christos
4c16c0afd2 Add missing prototype for __cmpdf2 2011-05-19 03:18:01 +00:00
christos
b58828d4bd Add a no_stack_protector function attribute to localize the effect
of disabling stack protection on a function-by-function level, as
opposed to per source file.
2011-05-08 01:49:32 +00:00
joerg
dd04acc9a4 Move the headers for compiler and platform specific intrinsincs from
/usr/include to /usr/include/gcc-4.1.
2011-04-15 13:42:22 +00:00
joerg
c5c155b784 Add back a stylish new line. 2011-04-10 21:25:56 +00:00
joerg
63235c7b3d Reduce difference between src/tools/gcc and src/gnu/usr.bin/gcc4
configuration. All but the target to helper programs should be the same.
Mark include directories as sysroot-relative.
2011-04-10 16:50:18 +00:00
joerg
6d711022e5 Don't install limits.h. 2011-04-10 16:48:51 +00:00
joerg
e9921aeb08 Don't install stddef.h and friends, they don't work as intended without
patching. Since our own versions are fine, don't bother.
2011-03-24 13:31:30 +00:00
matt
a1de880e3c Define HAVE_AS_TLS until our build tools figure out how to do it. 2011-03-12 07:57:38 +00:00
skrll
95e309863f Look for TLS on hppa on netbsd. 2011-03-10 15:14:49 +00:00
matt
3998b655ea Explicitly make sure TARGET_SECURE_PLT is defined correctly rather than
relying on HAVE_AS_REL16 from "auto-host.h".
2011-02-25 22:36:10 +00:00
matt
73f5a201e2 Default NetBSD to -msecure-plt now. 2011-02-10 07:18:29 +00:00
joerg
403637aa12 Explicitly use template to allow building with the more strict
template lookup in clang. From FreeBSD.
2011-02-05 00:37:40 +00:00
matt
b2fee41732 Default mips64 to softfloat. 2011-01-23 06:29:52 +00:00
matt
9925d622a5 Enable E500 (mpc85xx) support in GCC. 2011-01-18 00:19:28 +00:00
matt
bd081d44b9 Make the MIPS N32/N64 ABIs properly support 128-bit long doubles. With this
change, we should be fully conformant with the N32 and N64 ABIs.
Add {fpclassify,infinity,isnan,ininf,signbit}l_ieee754.c back to lib/libc/gen.
Note that infinityl_ieee754.c will work with either 64-bit, 80-bit, or
128-bit long doubles.
2011-01-17 23:53:03 +00:00
matt
fbd8cee2df Emit DWARF relocation in its expected form 2010-12-22 02:58:35 +00:00
wiz
3d3c5d42cb Observe the following spelling:
- wide character (noun)
- wide-character (adjective)

Inspired by jmc@OpenBSD.
2010-12-16 17:42:25 +00:00
joerg
674a655551 Prefix ctype bitmask macros with _CTYPE 2010-12-14 02:28:57 +00:00
skrll
4da31ee6bb Don't create weird notes section in hppa binaries.
XXX maybe pa_netbsd_file_start is the proper fix.
2010-11-25 21:37:04 +00:00
skrll
50eaa87a8f Update pa-netbsd.h to match pa-linux.h where it should. That is, remove
local definitions of

	ASM_PREFERRED_EH_DATA_FORMAT
	ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX

and make it obvious we're not using local ASM_OUTPUT_INTERNAL_LABEL

This fixes the current build problems (and probably more)
2010-11-10 18:28:29 +00:00
matt
f2d2b6453a Don't use/rely on a constraint. Move the constraint predicate
to the pattern's condition.
2010-07-27 16:30:38 +00:00
matt
6910a36f83 Only allow jbls/jblc x(r) iff (x & 3) == 0 2010-07-27 01:13:41 +00:00
jnemeth
60fc9fff98 PR/43642 - OKANO Takayoshi -- update bug reporting URL in GCC 2010-07-19 20:05:06 +00:00
mrg
2eb85043a2 don't use the __{BIG,LITTLE}_ENDIAN__ test on NetBSD. it doesn't give
the right result for some platforms, and the later valid tests are
never used.  (this problem seems fixed in newer autoconf...)
2010-05-08 02:58:33 +00:00
drochner
8d2b0eb1d3 make the stdc++ headers usable for clang++. clang wants that __weakref__
declarations are "static", gcc-4.1 uses "extern" here.
(gcc-4.2 uses "static" as well, so this looks like a bug in gcc.)
approved by mrg
2010-05-06 10:01:20 +00:00
mrg
1872638e5b don't include linux unwind support. we don't do this on 32 bit ppc,
we don't have the symbols to support it, and it breaks c++ linking.
from dennis.c.ferguson@gmail.com in PR#43041.
2010-03-27 20:11:06 +00:00
joerg
7780622b8d Use HUGE_VAL on VAX as INFINITY requires a warning according to ISO C99
on VAX. Use the less intrusive approach of a conditional here.
2010-03-01 00:15:47 +00:00
matt
36c802e628 Merge gcc mips64 support from matt-nb5-mips64. 2009-12-14 00:40:04 +00:00
joerg
62bcbea33d Add the -iremap option to gcc(1) and cpp(1). This option specifies a
prefix transformation rule for __FILE__ and can be used to avoid
hard-coding the location of the source tree in the resulting binary.
2009-11-11 19:03:52 +00:00
martin
5526bb0709 If TARGET_FLOAT_FORMAT is not IEEE_FLOAT_FORMAT (i.e. we have no NaNs),
do not compile special code to fix up different NaN values.
Re-enable complex support functions in libgcc for vax.
2009-10-01 20:07:09 +00:00