Simon Atanasyan
d3d173ddca
Mips: Define __mips_hard_float macro additional to __mips_single_float
...
when single float ABI is selected.
llvm-svn: 157996
2012-06-05 13:06:56 +00:00
Richard Smith
d106a98fe9
Use the standard values for the __cplusplus macro, even when in GNU mode. GCC
...
dropped its prior behavior of always defining __cplusplus to 1 in GNU mode in
version 4.7.
llvm-svn: 156113
2012-05-03 22:18:20 +00:00
Evgeniy Stepanov
94dc4c9783
Define __ANDROID__ macro on -androideabi targets.
...
llvm-svn: 155632
2012-04-26 12:08:09 +00:00
Simon Atanasyan
5e21c800e8
MIPS: Move tests check float ABI macros definitions to the more appropriate place.
...
llvm-svn: 154184
2012-04-06 17:51:49 +00:00
Simon Atanasyan
c3e45fece1
MIPS: Add tests for predefined macros for MIPS targets.
...
llvm-svn: 154168
2012-04-06 08:37:24 +00:00
Hal Finkel
2690838227
Fix an ABI problem with ptrdiff_t and intptr_t on PPC32
...
ptrdiff_t on PPC32 on Linux, etc. should be int not long.
This does not matter for C, but it does matter for C++ because of
name mangling.
The preprocessor test has been changed accordingly.
llvm-svn: 151935
2012-03-02 20:54:36 +00:00
Nico Weber
3435ede0ca
Fix "long double" and __SIZE_TYPE__ on powerpc, now with test fix.
...
Fixes PR11867. Patch from Jeremy Huddleston!
llvm-svn: 149334
2012-01-31 02:07:33 +00:00
Benjamin Kramer
cf5014771d
Add a target hook for FLT_EVAL_METHOD and use it to set the value on x86 with sse disabled.
...
x87 math evaluates everything with 80 bits precision, so we have to set FLT_EVAL_METHOD
to "2".
llvm-svn: 147311
2011-12-28 15:47:06 +00:00
James Molloy
c445be4b4b
AAPCS compliance - 32-bit wchar_t should be unsigned for both aapcs and aapcs-linux.
...
Original behaviour of defining wchar_t as signed int has been kept for apcs-gnu as I don't have any spec for this to validate against.
llvm-svn: 145102
2011-11-23 13:35:08 +00:00
Dan Gohman
c44b95c3b5
Remove more SystemZ (s390) tests.
...
llvm-svn: 142883
2011-10-25 00:15:21 +00:00
Dan Gohman
93127aecb9
Remove the Blackfin backend.
...
llvm-svn: 142881
2011-10-25 00:06:12 +00:00
Richard Smith
9ca5c42582
Update all tests other than Driver/std.cpp to use -std=c++11 rather than
...
-std=c++0x. Patch by Ahmed Charles!
llvm-svn: 141900
2011-10-13 22:29:44 +00:00
John McCall
9b0a7cea0f
Make -fobjc-nonfragile-abi the -cc1 default, since it's the
...
increasingly prevailing case to the point that new features
like ARC don't even support the fragile ABI anymore.
This required a little bit of reshuffling with exceptions
because a check was assuming that ObjCNonFragileABI was
only being set in ObjC mode, and that's actually a bit
obnoxious to do.
Most, though, it involved a perl script to translate a ton
of test cases.
Mostly no functionality change for driver users, although
there are corner cases with disabling language-specific
exceptions that we should handle more correctly now.
llvm-svn: 140957
2011-10-02 01:16:38 +00:00
Chandler Carruth
5ac1e8e6b1
Begin fixing Clang's predefined macros for various architectures. This
...
is *very* much a WIP that I'll be refining over the next several
commits, but I need to get this checkpoint in place for sanity.
This also adds a much more comprehensive test for architecture macros,
which is roughly generated by inspecting the behavior of a trunk build
of GCC. It still requires some massaging, but eventually I'll even check
in the script that generates these so that others can use it to append
more tests for more architectures, etc.
Next up is a bunch of simplification of the Targets.cpp code, followed
by a lot more test cases once we can reject invalid architectures.
llvm-svn: 140673
2011-09-28 02:59:25 +00:00
Douglas Gregor
b63ab9477c
Only predefine the __EXCEPTIONS macro if C++ exceptions are turned on.
...
Only predefine the OBJC_ZEROCOST_EXCEPTIONS macro if Objective-C
exceptions are turned on. Fixes PR10910.
llvm-svn: 139496
2011-09-12 15:17:19 +00:00
Douglas Gregor
10c1d268ea
Define __cplusplus to 201103L when in (non-GNU) C++0x mode.
...
llvm-svn: 133437
2011-06-20 15:00:58 +00:00
Francois Pichet
84133e41be
Upgrade Microsoft's __int8, __int16, __int32 and __int64 types from builtin defines to real types.
...
Otherwise statements like:
__int64 var = __int64(0);
would be expanded to:
long long var = long long(0);
and fail to compile.
llvm-svn: 130369
2011-04-28 01:59:37 +00:00
Chandler Carruth
30483fb188
Move all of the logic for __DEPRECATED to the driver based on comments
...
from dgregor.
llvm-svn: 130066
2011-04-23 19:48:40 +00:00
Daniel Dunbar
3b17a865bb
Change Clang's __VERSION__ to include the same basic info as in clang -v.
...
- Please never ever ever ever write a tool that sniffs this.
llvm-svn: 128599
2011-03-31 00:53:51 +00:00
Douglas Gregor
e6d6e51686
wint_t is defined as 'unsigned int' on Linux. Fixes PR8938.
...
llvm-svn: 123320
2011-01-12 21:19:25 +00:00
Chris Lattner
a09e8efd1f
Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if
...
it comes back, it will be largely a rewrite, so keeping the old codebase
in tree isn't helping anyone.
llvm-svn: 116191
2010-10-11 05:44:49 +00:00
Douglas Gregor
7617cb8440
Define _INTEGRAL_MAX_BITS for the win32 and win64 targets, from Per Lindén!
...
llvm-svn: 110442
2010-08-06 12:37:52 +00:00
Eli Friedman
865afc96f7
PR7795: Fix the definition of __WCHAR_MAX__ with -fshort-wchar.
...
llvm-svn: 110126
2010-08-03 17:34:19 +00:00
Daniel Dunbar
120a1e9d0f
Headers: Define __INT64_TYPE__ in terms of getInt64Type(), which isn't always
...
'long'. The practical upshot is so that the uint64_t we define in our stdint.h
ends up being compatible with that defined by gcc (at least on Darwin), which
otherwise could lead to type incompatibilities with other system headers.
llvm-svn: 107255
2010-06-30 06:30:56 +00:00
Daniel Dunbar
d7e887fb7f
clang: Derive version name from LLVM unless specified explicitly. This means
...
clang is now clang 2.8.
llvm-svn: 106914
2010-06-25 23:34:47 +00:00
Dan Gohman
04f8720118
Add several more predefines from modern versions of GCC.
...
llvm-svn: 104906
2010-05-28 00:27:15 +00:00
Douglas Gregor
dead00f902
Fix pasto in this test
...
llvm-svn: 102687
2010-04-30 03:07:23 +00:00
Douglas Gregor
6602c25c0c
Add Clang version inspection macros. Fixes PR6681.
...
llvm-svn: 102686
2010-04-30 02:51:06 +00:00
Douglas Gregor
d2b896ab69
Only predefine the macro _GNU_SOURCE in C++ mode when we're on a
...
platform that typically uses glibc. Fixes a Boost.Thread compilation
failure.
llvm-svn: 101450
2010-04-16 06:31:05 +00:00
Sanjiv Gupta
ecd2600c52
Re-applying 96173. Looks like finally I got the test case right.
...
llvm-svn: 96321
2010-02-16 03:37:11 +00:00
Sanjiv Gupta
9d23f93d52
reverting back 96242 as it still causes a test failure.
...
llvm-svn: 96244
2010-02-15 18:02:12 +00:00
Sanjiv Gupta
af56d377f1
Re-applying 96173 with corresponding changes in test.
...
llvm-svn: 96242
2010-02-15 17:19:13 +00:00
Anton Korobeynikov
485810ec0a
Forgot to commit these
...
llvm-svn: 93458
2010-01-14 21:36:52 +00:00
Daniel Dunbar
0def3d17cb
ARM: Honor -mfpu= and set __VFP_FP__ and __ARM_NEON__ "correctly".
...
- Correctly is in quotes, because we are following what I interpreted as GCC's
intent (which diverges from practice, naturally).
- Also, fix the arch define for arm1136jf-s.
llvm-svn: 91855
2009-12-21 23:28:17 +00:00
Daniel Dunbar
acde99ea52
ARM: Fix predefines (__ARM_ARCH_..., __REGISTER_PREFIX).
...
- This should be done leveraging the backend, but I'm a little refactored
out. I'll fix it one day, I promise.
llvm-svn: 91700
2009-12-18 18:42:37 +00:00
Daniel Dunbar
8fbe78f6fc
Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.
...
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).
llvm-svn: 91446
2009-12-15 20:14:24 +00:00
Daniel Dunbar
f4a72b06c2
Use '-x' 'foo' instead of '-x=foo'.
...
llvm-svn: 90069
2009-11-29 09:32:31 +00:00
Daniel Dunbar
7427fe28dc
Remove unnecessary -fms-extensions=0 from tests (this command line syntax is going away).
...
llvm-svn: 90066
2009-11-29 09:31:53 +00:00
Daniel Dunbar
5fe0866b9d
clang-cc: Change -fsigned-char=0 to -fno-unsigned-char and pass -pic-level using separate args.
...
llvm-svn: 90054
2009-11-29 02:39:08 +00:00
Ken Dyck
adc8511bc8
Define __SIG_ATOMIC_WIDTH__ for use in stdint.h.
...
llvm-svn: 89597
2009-11-22 15:41:04 +00:00
Ken Dyck
0138b9e1db
Define __WCHAR_WIDTH__ for use in stdint.h.
...
llvm-svn: 89353
2009-11-19 15:47:58 +00:00
Ken Dyck
a1f677c3d1
Add __WINT_WIDTH__ to paramaterize the limits of WINT_MIN and WINT_MAX in
...
stdint.h.
llvm-svn: 89348
2009-11-19 14:16:57 +00:00
Ken Dyck
575128656e
Add __SIZE_WIDTH__ to eventually replace __SIZE_TYPE__ in stdint.h.
...
llvm-svn: 89346
2009-11-19 13:42:09 +00:00
Ken Dyck
9b25f781c5
Restore __INTMAX_TYPE__, __UINTMAX_TYPE__, __PTRDIFF_TYPE__, and
...
__INTPTR_TYPE__ as the last is used in the test/CodeGen/const-init.c and all
could potentially be in use in the wild. My apologies.
llvm-svn: 89345
2009-11-19 13:18:59 +00:00
Ken Dyck
f982fc0b23
Remove __PTRDIFF_TYPE__ as it is no longer needed by stdint.h. It has been
...
replaced with __PTRDIFF_WIDTH__.
llvm-svn: 89344
2009-11-19 12:37:14 +00:00
Ken Dyck
056efe0fc7
Add __PTRDIFF_WIDTH__ macro to eventually replace __PTRDIFF_TYPE__ in stdint.h.
...
llvm-svn: 89342
2009-11-19 12:21:52 +00:00
Ken Dyck
cc11129fda
Remove __INTPTR_TYPE__ as it is no longer needed by stdint.h, which uses
...
__INTPTR_WIDTH__ instead.
llvm-svn: 89340
2009-11-19 12:15:31 +00:00
Ken Dyck
24cfcf15c3
Predefine __INTPTR_WIDTH__ for future use in stdint.h.
...
llvm-svn: 89231
2009-11-18 20:05:48 +00:00
Ken Dyck
fa01168a5c
Remove the __INTMAX_TYPE__ and __UINTMAX_TYPE__ built-in macros as they are no
...
longer used by stdint.h.
llvm-svn: 89230
2009-11-18 19:51:06 +00:00
Ken Dyck
c0c98291e0
Predefine __INTMAX_WIDTH__ for the future parameterization of INTMAX macros in
...
stdint.h.
llvm-svn: 89203
2009-11-18 13:52:57 +00:00