Chad Rosier
18903ee2d3
Add partial support for using anonymous bitfields (e.g., int : 0) to enforce
...
alignment. This fixes cases where the anonymous bitfield is followed by a
non-bitfield member. E.g.,
struct t4
{
int foo : 1;
long : 0;
char bar;
};
Part of rdar://9859156
llvm-svn: 136858
2011-08-04 01:21:14 +00:00
Benjamin Kramer
558e37858b
Remove dead code flagged by GCC's -Wunused-but-set-variable.
...
llvm-svn: 136581
2011-07-31 01:06:41 +00:00
Eric Christopher
b081ba651c
Add support for the 'Q' arm memory constraint.
...
Fixes rdar://9866494
llvm-svn: 136524
2011-07-29 21:20:35 +00:00
Chad Rosier
99ee7829ff
After further discussion it has been determined that alignof should report
...
the preferred alignment. Thus, revert r135934, r135935, and r135940.
llvm-svn: 136062
2011-07-26 07:03:04 +00:00
Chad Rosier
b23ee96cd5
Allow target to specify about using minimum alignment vs preferred. Takes care of
...
FIXME: Override "preferred align" for double and long long for ARM apcs-gnu ABI.
Also part of rdar://9802874
llvm-svn: 135940
2011-07-25 19:39:39 +00:00
Chris Lattner
0e62c1cc0b
remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports
...
them into the clang namespace.
llvm-svn: 135852
2011-07-23 10:55:15 +00:00
Bruno Cardoso Lopes
3aa2f0a064
Define the _MIPS_SIM builtin macro on MIPS platforms. Patch by Robert Millan!
...
llvm-svn: 135675
2011-07-21 15:10:57 +00:00
Chad Rosier
b90e40256c
Refactor r135502 to avoid an empty if else condition, per Eric's suggestion (good call!).
...
llvm-svn: 135510
2011-07-19 20:00:06 +00:00
Chad Rosier
dcf7732065
Clang asserts "Invalid environment!" when using -ccc-host-triple
...
arch-pc-win32-macho (e.g., x86_64-pc-win32-macho), which appears to be a false
positive.
rdar://9786307
llvm-svn: 135502
2011-07-19 19:36:03 +00:00
Chris Lattner
2dc4b55bd8
simplify
...
llvm-svn: 135170
2011-07-14 18:45:41 +00:00
Chris Lattner
d386df4dbd
StringMap::first() is about to start returning a StringRef, adapt.
...
llvm-svn: 135166
2011-07-14 18:24:21 +00:00
Bruno Cardoso Lopes
3472838c7a
Disable avx feature from corei7-avx, and use -mavx for now. Right now, if -mavx is
...
specified, 128 avx code is used and we're not sure yet if this the behavior
we want (and if it does, some improvements are needed before relying on it).
llvm-svn: 134939
2011-07-11 23:33:46 +00:00
Bruno Cardoso Lopes
571419bae6
Enable "avx" feature, so it can be seen by llvm
...
llvm-svn: 134935
2011-07-11 22:50:13 +00:00
Eli Friedman
3346582bca
Change -mno-mmx to be more compatible with gcc. Specifically, -mno-mmx should not imply -mno-sse.
...
Note that because we don't usually touch the MMX registers anyway, all -mno-mmx needs to do is tweak the x86-32 calling convention a little for vectors that look like MMX vectors, and prevent the definition of __MMX__.
clang doesn't actually stop the user from using MMX inline asm operands or MMX builtins in -mno-mmx mode; as a QOI issue, it would be nice to diagnose, but I doubt it really matters much.
<rdar://problem/9694837>
llvm-svn: 134770
2011-07-08 23:31:17 +00:00
Evan Cheng
491f56d41e
Fix a FIXME in clang ARM driver that was exposed as a bug with ARM backend
...
change.
Previously clang was passing the following feature strings to the ARM backend
when CPU is cortex-a8: +neon,-vfp2,-vfp3
This used to work because -vfp2,-vfp3 had no effect after +neon. Now that the
features are controlled by individual bits (with implied hierarchy), the net
effect is all three features will be turned off.
llvm-svn: 134691
2011-07-08 06:40:11 +00:00
Eric Christopher
0c912c5f9b
Fix a typo in the fpsr register and add the fpcr register.
...
Fixes PR10299 and rdar://9740322
llvm-svn: 134654
2011-07-07 22:55:26 +00:00
Joerg Sonnenberger
c46e3ce58c
FreeBSD gets FreeBSD target, just mipsel.
...
llvm-svn: 134619
2011-07-07 17:01:45 +00:00
Joerg Sonnenberger
fbc0b3a826
Fix C&P error
...
llvm-svn: 134490
2011-07-06 11:00:56 +00:00
Eli Friedman
bb5c9ae425
Remove unused member of Builtin::Info.
...
llvm-svn: 134443
2011-07-05 21:53:01 +00:00
Joerg Sonnenberger
8360e523cf
Hook up mipsel-netbsd and mipsel-freebsd for OS specific handling.
...
llvm-svn: 134425
2011-07-05 18:24:04 +00:00
Joerg Sonnenberger
d60cccfecc
Use OS-specific configuration for mips-netbsd and mips-freebsd.
...
llvm-svn: 134422
2011-07-05 18:05:54 +00:00
Joerg Sonnenberger
870b3c5429
Don't define _BIG_ENDIAN for NetBSD/PowerPC.
...
llvm-svn: 134411
2011-07-05 14:56:12 +00:00
Joerg Sonnenberger
a6d11777f9
Fix indentation
...
llvm-svn: 134410
2011-07-05 14:54:41 +00:00
Joerg Sonnenberger
f031fd9e77
Add explicit default case for -Wswitch-enum.
...
llvm-svn: 134399
2011-07-04 23:11:58 +00:00
Joerg Sonnenberger
025949c366
Use switch(os) style consistently. Add a bunch of NetBSD branches.
...
llvm-svn: 134393
2011-07-04 21:59:44 +00:00
Joerg Sonnenberger
e72d9b1f85
On PowerPC, both FreeBSD and NetBSD use ints for (s)size_t
...
llvm-svn: 134392
2011-07-04 21:57:55 +00:00
Eric Christopher
bf15d2b311
Update for llvm commit r134291.
...
Fixes rdar://9714064
llvm-svn: 134292
2011-07-02 00:20:22 +00:00
Douglas Gregor
9fabd851c8
Add initial *-*-rtems* target, from Joel Sherrill
...
llvm-svn: 134283
2011-07-01 22:41:14 +00:00
Bob Wilson
1957a2feb5
Use preferred 64-bit alignment for i64 & f64 for Thumb targets. Radar 9695134.
...
llvm-svn: 134070
2011-06-29 16:09:20 +00:00
Eric Christopher
cdd3635b09
Move additional register names to their own lookup, separate from
...
register aliases. Fixes unnecessary renames of clobbers.
Fixes part of rdar://9425559
llvm-svn: 133485
2011-06-21 00:05:20 +00:00
John McCall
0c32925aa0
As a hopefully temporary workaround for a header mistake, treat
...
__bridge_retain as a synonym for __bridge_retained.
llvm-svn: 133295
2011-06-17 21:23:37 +00:00
Eric Christopher
d10485412d
Add some more memory constraints for ARM.
...
Part of rdar://9197685
llvm-svn: 133225
2011-06-17 01:40:49 +00:00
Eric Christopher
7d237c1882
On ARM make sure that we continue translating 'p' to 'r' for the
...
constraints.
rdar://9618597
llvm-svn: 133222
2011-06-17 00:40:18 +00:00
Evan Cheng
d863adb201
Stylistic fix: move virtual keyword before return type.
...
llvm-svn: 133181
2011-06-16 19:13:15 +00:00
John McCall
5d36a8cc70
Unconditionally #define the ARC ownership qualifiers, instead of #defining
...
them only on Darwin tool chains.
llvm-svn: 133112
2011-06-16 00:03:19 +00:00
John McCall
31168b077c
Automatic Reference Counting.
...
Language-design credit goes to a lot of people, but I particularly want
to single out Blaine Garst and Patrick Beard for their contributions.
Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself,
in no particular order.
llvm-svn: 133103
2011-06-15 23:02:42 +00:00
Stuart Hastings
5b7b11cedb
Followup to 132737; make two-character string explicit, add some
...
comments. rdar://problem/9037836
llvm-svn: 132752
2011-06-08 16:06:31 +00:00
Stuart Hastings
7fdc6707ac
Clang support for ARM Uv/Uy/Uq inline-asm constraints.
...
rdar://problem/9037836
llvm-svn: 132737
2011-06-07 23:45:05 +00:00
Akira Hatanaka
b579fe5f15
Add stuff for o32 ABI conformance.
...
llvm-svn: 132443
2011-06-02 00:09:17 +00:00
Benjamin Kramer
85e1664fb2
sandybridge is now called corei7-avx
...
llvm-svn: 131729
2011-05-20 15:11:23 +00:00
Bob Wilson
19c1b88c55
Define __ARM_NEON__ in both ARM and Thumb modes. Radar 9431992.
...
llvm-svn: 131301
2011-05-13 18:56:03 +00:00
John McCall
e155a3d8aa
__builtin_va_list is void* on ARM, not char*.
...
rdar://problem/9391966
llvm-svn: 131080
2011-05-09 02:19:37 +00:00
Daniel Dunbar
ea1f098dbe
Revert r130750, "Make the mno flags match GCC. Patch by Alexander Best!", it breaks tests.
...
llvm-svn: 130753
2011-05-03 15:34:01 +00:00
Michael J. Spencer
c30448222a
Make the mno flags match GCC. Patch by Alexander Best!
...
llvm-svn: 130750
2011-05-03 04:35:54 +00:00
Eric Christopher
956d96ce34
Remove this assert, I don't think it's being helpful and people have
...
been running into it.
llvm-svn: 130296
2011-04-27 05:48:06 +00:00
Daniel Dunbar
bbd482226e
Driver/Darwin: Allow OS X deployment targets like 10.4.11, even though they
...
can't be represented in the environment define.
llvm-svn: 129939
2011-04-21 21:27:33 +00:00
Justin Holewinski
514cce8e43
PTX: Add PTX intrinsics as builtins and add ptx32 and ptx64 as valid architectures for triples, e.g. ptx32-unknown-unknown
...
llvm-svn: 129870
2011-04-20 19:34:15 +00:00
Daniel Dunbar
fcd2389b7a
TWEAK
...
llvm-svn: 129835
2011-04-19 23:34:21 +00:00
Daniel Dunbar
308cfd045f
Driver/Darwin: Switch to using -macosx for OS name in triples.
...
llvm-svn: 129834
2011-04-19 23:34:17 +00:00
Daniel Dunbar
14ad22f09d
ADT/Triple: Switch to using .isOSDarwin() predicate.
...
llvm-svn: 129823
2011-04-19 21:43:27 +00:00