Chandler Carruth
13b475d4f6
Add pass printing support to BlockFrequencyInfo pass. The implementation
...
layer already had support for printing the results of this analysis, but
the wiring was missing.
Now that printing the analysis works, actually bring some of this
analysis, and the BranchProbabilityInfo analysis that it wraps, under
test! I'm planning on fixing some bugs and doing other work here, so
having a nice place to add regression tests and a way to observe the
results is really useful.
llvm-svn: 142491
2011-10-19 10:12:41 +00:00
Bill Wendling
29934af872
Duncan pointed out that sometimes CC and CXX are used to specify the compiler. Also that the configure script takes care of finding an appropriate compiler if one's not specified.
...
llvm-svn: 142489
2011-10-19 09:47:00 +00:00
Nadav Rotem
05587f317b
Add support for the vector-widening of vselect and vector-setcc
...
llvm-svn: 142488
2011-10-19 09:45:11 +00:00
Bill Wendling
c668bbe90f
Use bash instead.
...
llvm-svn: 142486
2011-10-19 09:25:49 +00:00
Bill Wendling
aebac9fc6c
Make sure we emit the 'movw' and 'movt' only if it's supported. Otherwise, use a constant pool.
...
llvm-svn: 142485
2011-10-19 09:24:02 +00:00
Bill Wendling
0da8817ea2
Remove some dead code.
...
llvm-svn: 142484
2011-10-19 09:04:11 +00:00
Bill Wendling
f28fe31f2e
Make changes so that this runs on FreeBSD.
...
llvm-svn: 142482
2011-10-19 08:42:07 +00:00
Craig Topper
b1fa647871
Rename PEXTR to PEXT. Add intrinsics for BMI instructions.
...
llvm-svn: 142480
2011-10-19 07:48:35 +00:00
Joe Abbey
1a12882b26
Adding dependencies to allow -DBUILD_SHARED_LIBS=true to complete.
...
llvm-svn: 142464
2011-10-19 00:13:13 +00:00
Lang Hames
03f36ab3f6
Added testcase for <rdar://problem/10215997>
...
llvm-svn: 142462
2011-10-18 23:50:52 +00:00
Bill Wendling
bc96b4c75a
Emit the MOVT instruction only if the # LPads is > 64K.
...
llvm-svn: 142460
2011-10-18 23:19:55 +00:00
Bill Wendling
72d4e0a695
For Thumb mode, we need to use a constant pool if the value is too large to be
...
used with the CMP instruction.
llvm-svn: 142458
2011-10-18 23:11:05 +00:00
Daniel Dunbar
548842dbed
Regenerate projects/sample/configure.
...
llvm-svn: 142457
2011-10-18 23:10:58 +00:00
Daniel Dunbar
d2a8c29880
projects/sample: Import adapted form of current LLVM autoconf/Makefile setup so that projects/sample is standalone and not tied to the LLVM build setup.
...
- This currently just moves over all of the behavior from LLVM. Eventually all of the configure checks that are directly needed by the LLVM build setup should probably go away, and the project should manage their own configuration checks if necessary.
- This is the 1st half of this work, the actual Makefile.common hasn't moved over yet. I've tried to stage this in such a way that incremental builds will properly reconfigure for most active developers (the Makefiles don't handle reconfiguring in a perfectly reliable way, and I haven't found an easy way to make them do so).
llvm-svn: 142456
2011-10-18 23:10:47 +00:00
Eric Christopher
d9e0c89f55
Revert "Turn on the vzeroupper pass by default."
...
This reverts commit 494f7ac3e8d2ab3d94e52317abf9c42a949fe1f3.
llvm-svn: 142455
2011-10-18 23:10:11 +00:00
Nadav Rotem
f9d8f801d9
Add additional element-promotion tests.
...
llvm-svn: 142442
2011-10-18 23:05:33 +00:00
Jim Grosbach
6a932d6ad1
ARM VTBL (one register) assembly parsing and encoding.
...
llvm-svn: 142441
2011-10-18 23:02:30 +00:00
Bill Wendling
da2d6a83c8
Use the integer compare when the value is small enough. Use the "move into a
...
register and then compare against that" method when it's too large. We have to
move the value into the register in the "movw, movt" pair of instructions.
llvm-svn: 142440
2011-10-18 22:52:20 +00:00
Eric Christopher
4046de9d18
Turn on the vzeroupper pass by default.
...
I'll remove/rename the option in a few days.
llvm-svn: 142439
2011-10-18 22:50:17 +00:00
Eric Christopher
341c5b689a
Whitespace.
...
llvm-svn: 142438
2011-10-18 22:50:13 +00:00
Bill Wendling
f200722cbc
Use the integer compare when the value is small enough. Use the "move into a
...
register and then compare against that" method when it's too large. We have to
move the value into the register in the "movw, movt" pair of instructions.
llvm-svn: 142437
2011-10-18 22:49:07 +00:00
Nick Lewycky
7624680f12
Missed a spot!
...
llvm-svn: 142436
2011-10-18 22:40:18 +00:00
Nick Lewycky
0de6ef455c
Fix some typo/formatting issues. No functionality change.
...
llvm-svn: 142435
2011-10-18 22:39:43 +00:00
Nadav Rotem
e435b9e2fd
Fix a bug in the legalization of vector anyext-load and trunc-store. Mem Index starts with zero.
...
llvm-svn: 142434
2011-10-18 22:32:43 +00:00
Lang Hames
ccf186dd30
Teach fast isel about vector stores, and make DoSelectCall return false when it fails to emit a store. This fixes <rdar://problem/10215997>.
...
llvm-svn: 142432
2011-10-18 22:11:33 +00:00
Bill Wendling
6900914506
The value we're comparing against may be too large for the ARM CMP
...
instruction. Move the value into a register and then use that for the CMP.
<rdar://problem/10305266>
llvm-svn: 142431
2011-10-18 22:11:18 +00:00
Bill Wendling
198609713e
The immediate may be too large for the CMP instruction. Move it into a register
...
and use that in the CMP.
<rdar://problem/10305266>
llvm-svn: 142429
2011-10-18 21:55:58 +00:00
Jim Grosbach
6110df7008
Tidy up formatting.
...
llvm-svn: 142422
2011-10-18 21:09:01 +00:00
Jim Grosbach
de82cec744
Tidy up formatting.
...
llvm-svn: 142421
2011-10-18 21:08:16 +00:00
Jim Grosbach
d748cf251f
Yet more ARM NEON assembly parsing for the lane index operand.
...
llvm-svn: 142416
2011-10-18 20:21:17 +00:00
Jim Grosbach
f0d2d6bfc1
Enable more encoded immediate tests.
...
llvm-svn: 142415
2011-10-18 20:20:51 +00:00
Jim Grosbach
8c1298946c
More vmov lane testcases.
...
llvm-svn: 142414
2011-10-18 20:19:48 +00:00
Jim Grosbach
ff8c26a53f
ARM vmla/vmls assembly parsing for the lane index operand.
...
llvm-svn: 142413
2011-10-18 20:14:56 +00:00
Jim Grosbach
ed5cb526e2
ARM vmov assembly parsing for the lane index operand.
...
llvm-svn: 142412
2011-10-18 20:10:47 +00:00
Jim Grosbach
1abb2e7e1b
The MCJITMemoryManager takes ownership of the JMM, so don't leak it.
...
llvm-svn: 142410
2011-10-18 19:57:38 +00:00
Michael J. Spencer
1b471da6b0
Object/COFF: Remove useless test.
...
llvm-svn: 142408
2011-10-18 19:51:36 +00:00
Michael J. Spencer
f21a701890
llvm-objdump: Add static symbol table dumping.
...
llvm-svn: 142404
2011-10-18 19:32:17 +00:00
Michael J. Spencer
cdfd6ee8bc
Object/COFF: Change type from a struct to a uint16_t. The struct would be
...
incorrect for bigendian systems.
llvm-svn: 142403
2011-10-18 19:31:59 +00:00
Daniel Dunbar
81780d9982
build: Tidy up a bunch of tool Makefiles, and simplify where possible using the
...
new all-targets pseudo-component.
llvm-svn: 142401
2011-10-18 19:27:24 +00:00
Daniel Dunbar
2299fff72b
llvm-ar: Remove local test target, this is no longer useful.
...
llvm-svn: 142400
2011-10-18 19:27:10 +00:00
Daniel Dunbar
ff8a3694fe
llvm-config: Add an all-targets pseudo-component.
...
llvm-svn: 142399
2011-10-18 19:27:08 +00:00
Daniel Dunbar
c5f0100c3a
build: Remove some unused code.
...
llvm-svn: 142398
2011-10-18 19:27:04 +00:00
Andrew Trick
1b84db85e7
Use ARM/t2PseudoInst class from ARM/Thumb2 special adds/subs patterns.
...
Clean up the patterns, fix comments, and avoid confusing both tools
and coders. Note that the special adds/subs SelectionDAG nodes no
longer have the dummy cc_out operand.
llvm-svn: 142397
2011-10-18 19:18:52 +00:00
Bob Wilson
bb191a9fef
Use isIntN and isUIntN to check for valid signed/unsigned numbers.
...
llvm-svn: 142395
2011-10-18 18:46:49 +00:00
Andrew Trick
5e61a8e533
whitespace
...
llvm-svn: 142394
2011-10-18 18:40:53 +00:00
Bill Wendling
92050387bb
A landing pad could have more than one predecessor. In that case, we want that
...
predecessor to remove the jump to it as well. Delay clearing the 'landing pad'
flag until after the jumps have been removed. (There is an implicit assumption
in several modules that an MBB which jumps to a landing pad has only two
successors.)
<rdar://problem/10304224>
llvm-svn: 142390
2011-10-18 18:30:49 +00:00
Jim Grosbach
988b8dd4ce
ARM vmla/vmls assembly parsing for the lane index operand.
...
llvm-svn: 142389
2011-10-18 18:27:07 +00:00
Owen Anderson
39a3d3305a
Another failing encoding.
...
llvm-svn: 142388
2011-10-18 18:23:03 +00:00
Jim Grosbach
de8f8bec78
Fix NEON mul encoding tests. Wrong file contents previously.
...
llvm-svn: 142387
2011-10-18 18:14:55 +00:00
Jim Grosbach
2752e0b869
ARM vqdmulh assembly parsing for the lane index operand.
...
llvm-svn: 142386
2011-10-18 18:12:09 +00:00