| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 152029
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
Unconditionally define __C99FEATURES__ when using C++ on Solaris. This is a
(hopefully temporary) work around for libc++ exposing C99-but-not-C++98
features in C++98 mode.
llvm-svn: 151889
|
|
|
|
|
|
| |
clang (and linking clang against it).
llvm-svn: 151632
|
|
|
|
|
|
| |
order to not be broken (by Solaris standards).
llvm-svn: 150822
|
|
|
|
|
|
|
|
| |
Sascha Wildner.
Setting UserLabelPrefix correctly fixes PR11949.
llvm-svn: 150280
|
|
|
|
| |
llvm-svn: 149798
|
|
|
|
|
|
|
| |
I removed support for "*-darwin*-iphoneos" triples, since we now have
iOS listed as a separate OS in the triples.
llvm-svn: 149455
|
|
|
|
|
|
| |
Fixes PR11867. Patch from Jeremy Huddleston!
llvm-svn: 149334
|
|
|
|
| |
llvm-svn: 149301
|
|
|
|
|
|
| |
Fixes PR11867. Patch from Jeremy Huddleston!
llvm-svn: 149285
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
each of the targets. Use this for module requirements, so that we can
pin the availability of certain modules to certain target features,
e.g., provide a module for xmmintrin.h only when SSE support is
available.
Use these feature names to provide a nearly-complete module map for
Clang's built-in headers. Only mm_alloc.h and unwind.h are missing,
and those two are fairly specialized at the moment. Finishes
<rdar://problem/10710060>.
llvm-svn: 149227
|
|
|
|
|
|
|
|
| |
like Darwin that don't support it. We should also complain about
invalid -fvisibility=protected, but that information doesn't seem
to exist at the most appropriate time, so I've left a FIXME behind.
llvm-svn: 149186
|
|
|
|
| |
llvm-svn: 149181
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ARM supports clz and ctz directly and both operations have well-defined
results for zero. There is no disadvantage in performance to using the
defined-at-zero versions of llvm.ctlz/cttz intrinsics. We're running into
ARM-specific code written with the assumption that __builtin_clz(0) == 32,
even though that value is technically undefined. The code is failing now
because of llvm optimizations that are taking advantage of the undef
behavior (specifically svn r147255). There's nothing wrong with that
optimization on x86 where any incorrect assumptions about __builtin_clz(0)
will quickly be exposed. For ARM, though, optimizations based on that undef
behavior are likely to cause subtle bugs. Other targets with defined-at-zero
clz/ctz support may want to override the default behavior as well.
llvm-svn: 149086
|
|
|
|
| |
llvm-svn: 148582
|
|
|
|
|
|
| |
changes i64 alignment from 64 to 32 for powerpc-darwin
llvm-svn: 148345
|
|
|
|
|
|
| |
appropriate or when GCC requires it)
llvm-svn: 148292
|
|
|
|
| |
llvm-svn: 148141
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Patch from Jyotsna Verma:
I have made the changes to remove assertions in the Hexagon backend
specific clang driver. Instead of asserting on invalid arch name, it has
been modified to use the default value.
I have changed the implementation of the CPU flag validation for the
Hexagon backend. Earlier, the clang driver performed the check and
asserted on invalid inputs. In the new implementation, the driver passes
the last CPU flag (or sets to "v4" if not specified) to the compiler (and
also to the assembler and linker which perform their own check) instead of
asserting on incorrect values. This patch changes the setCPU function for
the Hexagon backend in clang/lib/Basic/Targets.cpp which causes the
compiler to error out on incorrect CPU flag values.
llvm-svn: 148139
|
|
|
|
| |
llvm-svn: 148138
|
|
|
|
|
|
|
|
|
| |
- Support gcc-compatible vfpv3 name in addition to vfp3.
- Support vfpv3-d16.
- Disable neon feature for -mfpu=vfp* (yes, we were emitting Neon instructions
for those!).
llvm-svn: 147943
|
|
|
|
| |
llvm-svn: 147849
|
|
|
|
| |
llvm-svn: 147848
|
|
|
|
| |
llvm-svn: 147847
|
|
|
|
| |
llvm-svn: 147771
|
|
|
|
|
|
| |
"double" rounding.
llvm-svn: 147669
|
|
|
|
|
|
|
| |
While the code took care of disabling the sse42 flag it didn't know
about popcnt. This broke -march=native on penryn.
llvm-svn: 147531
|
|
|
|
|
|
| |
imply sse3. Matches gcc behavior.
llvm-svn: 147370
|
|
|
|
|
|
| |
enabled, but can be disabled separately. Move popcnt intrinsics to popcntintrin.h to match gcc.
llvm-svn: 147340
|
|
|
|
|
|
|
|
|
| |
with sse disabled.
x87 math evaluates everything with 80 bits precision, so we have to set FLT_EVAL_METHOD
to "2".
llvm-svn: 147311
|
|
|
|
| |
llvm-svn: 147262
|
|
|
|
| |
llvm-svn: 147137
|
|
|
|
|
|
| |
actually know about the other OSes on X86-32 besides Linux...
llvm-svn: 147034
|
|
|
|
|
|
| |
But, warn too. // rdar://10597832
llvm-svn: 146904
|
|
|
|
|
|
| |
type.
llvm-svn: 146835
|
|
|
|
|
|
|
|
| |
This is equal to alignof(std::max_align_t) on the platform and equal to the
alignment provided by malloc. (Platform owners please double-check your
platform's value.)
llvm-svn: 146762
|
|
|
|
| |
llvm-svn: 146761
|
|
|
|
| |
llvm-svn: 146631
|
|
|
|
| |
llvm-svn: 146413
|
|
|
|
|
|
|
|
|
|
|
| |
. move compiler-rt to a separate directory so the -L argument only includes compiler-rt (thanks joerg)
. build all clang subdirs
. switches the Minix platform to ELF
. normalizes toolchain invocation
Patch by Ben Gras.
llvm-svn: 146206
|
|
|
|
|
|
|
|
|
| |
and update the Sema testcase with a register that we won't hit for a while
I hope.
Fixes rdar://10510405
llvm-svn: 145671
|
|
|
|
|
|
| |
use byval so we're sure the backend does the right thing. Fixes va_arg with illegal vectors and an obscure ABI mismatch with __m64 vectors.
llvm-svn: 145652
|
|
|
|
| |
llvm-svn: 145606
|
|
|
|
|
|
|
|
| |
* Enabling sse enables mmx.
* Disabling (-mno-mmx) mmx, doesn't disable sse (we got this right already).
* The order in not important. -msse -mno-mmx is the same as -mno-mmx -msse.
llvm-svn: 145194
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
llvm-svn: 144189
|
|
|
|
| |
llvm-svn: 143775
|
|
|
|
|
|
| |
Ahmed Charles!
llvm-svn: 143569
|
|
|
|
|
|
| |
double, make sure to use the objc_msgSend_fp2ret function which ensures that the return value will be {0, 0} if the receiver is nil.
llvm-svn: 143350
|