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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								c44b95c3b5 
								
							 
						 
						
							
							
								
								Remove more SystemZ (s390) tests.  
							
							... 
							
							
							
							llvm-svn: 142883 
							
						 
						
							2011-10-25 00:15:21 +00:00  
				
					
						
							
							
								 
						
							
								93127aecb9 
								
							 
						 
						
							
							
								
								Remove the Blackfin backend.  
							
							... 
							
							
							
							llvm-svn: 142881 
							
						 
						
							2011-10-25 00:06:12 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								10c1d268ea 
								
							 
						 
						
							
							
								
								Define __cplusplus to 201103L when in (non-GNU) C++0x mode.  
							
							... 
							
							
							
							llvm-svn: 133437 
							
						 
						
							2011-06-20 15:00:58 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								e6d6e51686 
								
							 
						 
						
							
							
								
								wint_t is defined as 'unsigned int' on Linux. Fixes PR8938.  
							
							... 
							
							
							
							llvm-svn: 123320 
							
						 
						
							2011-01-12 21:19:25 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								865afc96f7 
								
							 
						 
						
							
							
								
								PR7795: Fix the definition of __WCHAR_MAX__ with -fshort-wchar.  
							
							... 
							
							
							
							llvm-svn: 110126 
							
						 
						
							2010-08-03 17:34:19 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								04f8720118 
								
							 
						 
						
							
							
								
								Add several more predefines from modern versions of GCC.  
							
							... 
							
							
							
							llvm-svn: 104906 
							
						 
						
							2010-05-28 00:27:15 +00:00  
				
					
						
							
							
								 
						
							
								dead00f902 
								
							 
						 
						
							
							
								
								Fix pasto in this test  
							
							... 
							
							
							
							llvm-svn: 102687 
							
						 
						
							2010-04-30 03:07:23 +00:00  
				
					
						
							
							
								 
						
							
								6602c25c0c 
								
							 
						 
						
							
							
								
								Add Clang version inspection macros. Fixes PR6681.  
							
							... 
							
							
							
							llvm-svn: 102686 
							
						 
						
							2010-04-30 02:51:06 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								ecd2600c52 
								
							 
						 
						
							
							
								
								Re-applying 96173. Looks like finally I got the test case right.  
							
							... 
							
							
							
							llvm-svn: 96321 
							
						 
						
							2010-02-16 03:37:11 +00:00  
				
					
						
							
							
								 
						
							
								9d23f93d52 
								
							 
						 
						
							
							
								
								reverting back 96242 as it still causes a test failure.  
							
							... 
							
							
							
							llvm-svn: 96244 
							
						 
						
							2010-02-15 18:02:12 +00:00  
				
					
						
							
							
								 
						
							
								af56d377f1 
								
							 
						 
						
							
							
								
								Re-applying 96173 with corresponding changes in test.  
							
							... 
							
							
							
							llvm-svn: 96242 
							
						 
						
							2010-02-15 17:19:13 +00:00  
				
					
						
							
							
								 
						
							
								485810ec0a 
								
							 
						 
						
							
							
								
								Forgot to commit these  
							
							... 
							
							
							
							llvm-svn: 93458 
							
						 
						
							2010-01-14 21:36:52 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								f4a72b06c2 
								
							 
						 
						
							
							
								
								Use '-x' 'foo' instead of '-x=foo'.  
							
							... 
							
							
							
							llvm-svn: 90069 
							
						 
						
							2009-11-29 09:32:31 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								adc8511bc8 
								
							 
						 
						
							
							
								
								Define __SIG_ATOMIC_WIDTH__ for use in stdint.h.  
							
							... 
							
							
							
							llvm-svn: 89597 
							
						 
						
							2009-11-22 15:41:04 +00:00  
				
					
						
							
							
								 
						
							
								0138b9e1db 
								
							 
						 
						
							
							
								
								Define __WCHAR_WIDTH__ for use in stdint.h.  
							
							... 
							
							
							
							llvm-svn: 89353 
							
						 
						
							2009-11-19 15:47:58 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								575128656e 
								
							 
						 
						
							
							
								
								Add __SIZE_WIDTH__ to eventually replace __SIZE_TYPE__ in stdint.h.  
							
							... 
							
							
							
							llvm-svn: 89346 
							
						 
						
							2009-11-19 13:42:09 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								056efe0fc7 
								
							 
						 
						
							
							
								
								Add __PTRDIFF_WIDTH__ macro to eventually replace __PTRDIFF_TYPE__ in stdint.h.  
							
							... 
							
							
							
							llvm-svn: 89342 
							
						 
						
							2009-11-19 12:21:52 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								24cfcf15c3 
								
							 
						 
						
							
							
								
								Predefine __INTPTR_WIDTH__ for future use in stdint.h.  
							
							... 
							
							
							
							llvm-svn: 89231 
							
						 
						
							2009-11-18 20:05:48 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								4656c53e12 
								
							 
						 
						
							
							
								
								Move -fnext-runtime defaulting to driver (and change clang-cc default to  
							
							... 
							
							
							
							-fnext-runtime), instead of using getDefaultLangOptions.
llvm-svn: 89058 
							
						 
						
							2009-11-17 07:07:28 +00:00  
				
					
						
							
							
								 
						
							
								d609b7bbe9 
								
							 
						 
						
							
							
								
								Move char-is-signed defaulting to driver, instead of using  
							
							... 
							
							
							
							getDefaultLangOptions.
llvm-svn: 89053 
							
						 
						
							2009-11-17 06:37:03 +00:00  
				
					
						
							
							
								 
						
							
								2dc8d5fa3e 
								
							 
						 
						
							
							
								
								Parameterize the constant-generating macros in stdint.h with new built-in  
							
							... 
							
							
							
							__INTn_C_SUFFIX__ macros that are defined for types with corresponding
constant suffixes (i.e. long and long long).
llvm-svn: 88914 
							
						 
						
							2009-11-16 16:36:33 +00:00  
				
					
						
							
							
								 
						
							
								55c9877b66 
								
							 
						 
						
							
							
								
								Generalize stdint.h for non-8-bit-multiple types, patch by  
							
							... 
							
							
							
							Ken Dyck!
"This adds definitions for types of 8-bit multiples
from 8 to 64 to stdint.h and rationalizes the selection of types 
for the exact-width definitions in InitPreprocessor.cpp."
llvm-svn: 86977 
							
						 
						
							2009-11-12 08:08:27 +00:00  
				
					
						
							
							
								 
						
							
								0fb5bbd401 
								
							 
						 
						
							
							
								
								do not store wchar/char16/char32/intmax width/alignment info  
							
							... 
							
							
							
							into TargetInfo, just derive this based on the underlying type.
This prevents them from getting out of synch, patch by Ken Dyck!
llvm-svn: 86976 
							
						 
						
							2009-11-12 08:04:33 +00:00  
				
					
						
							
							
								 
						
							
								34546ce43d 
								
							 
						 
						
							
							
								
								Remove RUN: true lines.  
							
							... 
							
							
							
							llvm-svn: 86432 
							
						 
						
							2009-11-08 01:47:25 +00:00