Chad Rosier
fdca220a9e
Fix a few more places where TargetData/TargetLibraryInfo is not being passed.
...
Add FIXMEs to places that are non-trivial to fix.
llvm-svn: 145661
2011-12-02 01:26:24 +00:00
Jim Grosbach
d5c0c63223
ARM start parsing VLD1 single lane instructions.
...
The alias pseudos need cleaned up for size suffix handling, but this gets
the basics working. Will be cleaning up and adding more.
llvm-svn: 145655
2011-12-02 00:35:16 +00:00
Chad Rosier
a1a79d5df4
Abuse of mass replace isn't warranted even when the build is failing. Thanks
...
for the suggestion, Eric.
llvm-svn: 145643
2011-12-01 23:16:03 +00:00
Chad Rosier
c9879f3554
Fix build by not assuming TLI is guaranteed. Will have to track down cases where
...
TLI isn't being passed to ensure we don't miss opportunities to fold calls.
llvm-svn: 145641
2011-12-01 22:38:31 +00:00
Chad Rosier
4d25975a28
Prevent library calls from being folded if -fno-builtin has been specified.
...
rdar://10500969
llvm-svn: 145639
2011-12-01 22:14:50 +00:00
Dylan Noblesmith
afe4ff5324
TableGen: fix CMake build s'more
...
Oops, missed another missing file from r145629.
llvm-svn: 145636
2011-12-01 21:53:39 +00:00
Dylan Noblesmith
9678a90d8f
CodeGen: fix CMake build
...
Missing file from r145629.
llvm-svn: 145634
2011-12-01 21:49:23 +00:00
Dylan Noblesmith
ab2a910083
ExecutionEngine: honor optimization level
...
It was getting ignored after r144788.
Also fix an accidental implicit cast from the OptLevel enum
to an optional bool argument. MSVC warned on this, but gcc
didn't.
llvm-svn: 145633
2011-12-01 21:49:21 +00:00
Chad Rosier
0b4bd4832a
Last bit of TargetLibraryInfo propagation. Also fixed a case for TargetData
...
where it appeared beneficial to pass.
More of rdar://10500969
llvm-svn: 145630
2011-12-01 21:29:16 +00:00
Anshuman Dasgupta
f754c8bf8e
Add a deterministic finite automaton based packetizer for VLIW architectures
...
llvm-svn: 145629
2011-12-01 21:10:21 +00:00
David Blaikie
a787220c76
Fix unreachable return & simplify some branches.
...
llvm-svn: 145627
2011-12-01 20:58:30 +00:00
Daniel Dunbar
3c06b26f09
llvm-config: Replace with C++ version (was llvm-config-2).
...
- Another reapply of r144300, with hopefully one last fix.
llvm-svn: 145623
2011-12-01 20:18:09 +00:00
Daniel Dunbar
884620418e
llvm-config-2: Fix --cflags and --includedir which pointed at the wrong
...
directory when running from a build directory.
llvm-svn: 145622
2011-12-01 20:00:19 +00:00
Sanjoy Das
5cc5730434
Dummy commit to check commit access.
...
llvm-svn: 145619
2011-12-01 19:15:08 +00:00
Pete Cooper
c708e83499
Improved fix for abs(val) != 0 to check other similar case. Also fixed style issues and confusing comment
...
llvm-svn: 145618
2011-12-01 19:13:26 +00:00
Kostya Serebryany
78bd9e81b4
[asan] two minor fixes: use UnreachableInst after the neverreturn function call; use report_fatal_error when blacklist file can not be found
...
llvm-svn: 145611
2011-12-01 18:54:53 +00:00
Chad Rosier
aafbda2d54
Add missing functions.
...
llvm-svn: 145608
2011-12-01 18:26:19 +00:00
Benjamin Kramer
95a0674b1b
Autodetect bulldozers.
...
llvm-svn: 145607
2011-12-01 18:24:17 +00:00
Chad Rosier
7610c57a02
Add a few more functions to TargetLibraryInfo. More of rdar://10500969.
...
llvm-svn: 145596
2011-12-01 17:54:37 +00:00
Chris Lattner
7592e96900
fix broken tag
...
llvm-svn: 145590
2011-12-01 17:25:28 +00:00
Duncan Sands
84beef543d
Revert commit 145449 (ddunbar) since it is breaking the dragonegg buildbots.
...
Original commit message:
llvm-config: Replace with C++ version (was llvm-config-2).
- Reapply of r144300, with lots of fixes/migration easement in between.
llvm-svn: 145582
2011-12-01 10:50:19 +00:00
Eric Christopher
4aa8024569
For 64-bit the rest of the general regs are ok for the q constraint. Make
...
sure we can emit both the high and low versions of those registers.
Fixes rdar://10392864
llvm-svn: 145579
2011-12-01 08:12:41 +00:00
David Blaikie
d951c64db1
Add some missing anchors.
...
llvm-svn: 145578
2011-12-01 08:00:17 +00:00
Eli Friedman
ad916965a6
Pass AVX vectors which are arguments to varargs functions on the stack. <rdar://problem/10463281>.
...
llvm-svn: 145573
2011-12-01 04:49:21 +00:00
Pete Cooper
d4569610df
Removed use of grep from test and moved it to be with other icmp tests
...
llvm-svn: 145570
2011-12-01 04:35:26 +00:00
Pete Cooper
7e03b7250d
Added instcombine pattern to spot comparing -val or val against 0.
...
(val != 0) == (-val != 0) so "abs(val) != 0" becomes "val != 0"
Fixes <rdar://problem/10482509>
llvm-svn: 145563
2011-12-01 03:58:40 +00:00
Chad Rosier
49a66381f7
Propagate TargetLibraryInfo throughout ConstantFolding.cpp and
...
InstructionSimplify.cpp. Other fixups as needed.
Part of rdar://10500969
llvm-svn: 145559
2011-12-01 03:08:23 +00:00
Nick Lewycky
4047e7c476
Make use of "getScalarType()". No functionality change.
...
llvm-svn: 145556
2011-12-01 02:39:36 +00:00
Eli Friedman
85c0054183
Small fix for assembler generation on Darwin PPC64. Patch by Michael Kostylev. PR11437.
...
llvm-svn: 145553
2011-12-01 01:43:47 +00:00
Jim Grosbach
5c613a4c40
Replace an assert() with an actual diagnostic.
...
llvm-svn: 145535
2011-11-30 23:16:25 +00:00
Kostya Serebryany
aa616ec887
make asan work at -O0, llvm part. Patch by glider@google.com
...
llvm-svn: 145530
2011-11-30 22:19:26 +00:00
Jan Sjödin
2dfb343ffa
Support for encoding all FMA4 instructions and tablegen patterns for all
...
remaining FMA4 instructions and intrinsics with tests.
llvm-svn: 145525
2011-11-30 22:09:42 +00:00
Eli Friedman
2d9e4aa665
Make GlobalMerge honor the preferred alignment on globals without an explicitly specified alignment.
...
<rdar://problem/10497732>.
llvm-svn: 145523
2011-11-30 21:54:15 +00:00
Bill Wendling
a51c3c5a01
More cleanups. No content change.
...
llvm-svn: 145522
2011-11-30 21:52:43 +00:00
Bill Wendling
35f43aae70
Minor cleanup. No content change.
...
llvm-svn: 145521
2011-11-30 21:43:43 +00:00
Bob Wilson
e18f66ff91
Remove the install-clang-c makefile target.
...
When I did this before it broke a buildbot that was testing that target, but
we've removed that buildbot now.
llvm-svn: 145519
2011-11-30 21:06:12 +00:00
Bill Wendling
2d1421e389
Remove an XXX which hasn't been fixed yet. It's too late now.
...
llvm-svn: 145518
2011-11-30 20:53:52 +00:00
Matt Beaumont-Gay
07afe588d4
Remove unused variable
...
llvm-svn: 145517
2011-11-30 19:53:11 +00:00
Jim Grosbach
3129a92b38
Add some tests for all-lanes VLD1 parsing.
...
llvm-svn: 145512
2011-11-30 19:37:38 +00:00
Jim Grosbach
6b2f6389cc
ARM parsing for VLD1 all lanes, with writeback.
...
llvm-svn: 145510
2011-11-30 19:35:44 +00:00
Chad Rosier
8c6d695c1e
Add a few functions to TargetLibraryInfo.
...
llvm-svn: 145508
2011-11-30 19:19:00 +00:00
Jim Grosbach
fa9f6ccd62
ARM parsing for VLD1 two register all lanes, no writeback.
...
llvm-svn: 145504
2011-11-30 18:21:25 +00:00
Nadav Rotem
148d347bb7
Add test arch to make it pass on non x86 targets
...
llvm-svn: 145498
2011-11-30 17:34:28 +00:00
Benjamin Kramer
fbdf17c667
X86: Turns out bulldozer also supports sse42 and lzcnt.
...
While at it remove the barcelona/instanbul/shanghai subtargets, they're
unsupported by GCC and look pretty broken.
llvm-svn: 145494
2011-11-30 15:48:16 +00:00
Benjamin Kramer
359fde3539
X86: Add subtargets for AMD's bulldozer.
...
llvm-svn: 145493
2011-11-30 15:27:46 +00:00
Nadav Rotem
bef49f31be
Add a tripple to the test
...
llvm-svn: 145489
2011-11-30 11:20:56 +00:00
Nadav Rotem
f8e096f4ee
X86: PerformOrCombine introduced a vselect node with a wrong order of operands. This bug was introduced when a dedicated blend sdnode was replaced with the vselect node (in 139479).
...
llvm-svn: 145488
2011-11-30 10:13:37 +00:00
Craig Topper
2a0fc05456
Add instruction selection support for AVX2 horizontal add/sub instructions.
...
llvm-svn: 145487
2011-11-30 09:10:50 +00:00
Duncan Sands
54ca22353a
Mention that -O4 does result in more optimization when used with
...
-fplugin-arg-dragonegg-enable-gcc-optzns, though it usually isn't
a win.
llvm-svn: 145486
2011-11-30 08:46:05 +00:00
Craig Topper
0ac9bb8aa1
Merge VPERM2F128/VPERM2I128 ISD node types.
...
llvm-svn: 145485
2011-11-30 07:47:51 +00:00