Evan Cheng
6f29ad9170
Use cbz and cbnz instructions.
...
llvm-svn: 85698
2009-10-31 23:46:45 +00:00
Jim Grosbach
5cba8de2c8
vml[as].f32 cause stalls in following advanced SIMD instructions. Avoid using
...
them for scalar floating point operations for now.
llvm-svn: 85697
2009-10-31 22:57:36 +00:00
Jim Grosbach
403202aef1
Consolidate test files
...
llvm-svn: 85696
2009-10-31 22:20:56 +00:00
Jim Grosbach
c79fb530d4
Change to use FileCheck
...
llvm-svn: 85695
2009-10-31 22:16:14 +00:00
Jim Grosbach
69f364babc
Make tests more explicit about which instructions are expected.
...
llvm-svn: 85694
2009-10-31 22:14:17 +00:00
Jim Grosbach
259c37cc55
Grammar tweak to comments
...
llvm-svn: 85693
2009-10-31 22:12:44 +00:00
Chris Lattner
a546dcf418
Make sure PRE doesn't split crit edges from indirectbr.
...
llvm-svn: 85692
2009-10-31 22:11:15 +00:00
Jim Grosbach
2c3e618a06
Update test to be more explicit about what instruction sequences are expected for each operation.
...
llvm-svn: 85691
2009-10-31 22:10:38 +00:00
Chris Lattner
c872b09676
llvm::SplitEdge should refuse to split an edge from an indirectbr.
...
Fix CodeGenPrepare to not try to split edges from indirectbr.
llvm-svn: 85690
2009-10-31 22:04:43 +00:00
Jim Grosbach
0de95af62d
Update test to be more explicit about what instruction sequences are expected for each operation.
...
llvm-svn: 85689
2009-10-31 21:52:58 +00:00
Chris Lattner
ba364b0a9a
update the comment above llvm::SplitCriticalEdge, and make
...
it abort on IndirectBrInst as describe in the comment.
llvm-svn: 85688
2009-10-31 21:51:10 +00:00
Jim Grosbach
8fe6fd702d
Expand 64-bit logical shift right inline
...
llvm-svn: 85687
2009-10-31 21:42:19 +00:00
Edward O'Callaghan
73ee64d6a2
Fix CMakeLists.txt comment.
...
llvm-svn: 85686
2009-10-31 21:08:10 +00:00
Jim Grosbach
624fcb286e
Expand 64-bit arithmetic shift right inline
...
llvm-svn: 85685
2009-10-31 21:00:56 +00:00
Dan Gohman
ae6bb61594
Fix a missing newline in the dwarf output code.
...
llvm-svn: 85684
2009-10-31 20:59:09 +00:00
Benjamin Kramer
170a56f135
Add missing colons for FileCheck.
...
llvm-svn: 85683
2009-10-31 20:42:26 +00:00
Dan Gohman
34341e69c4
Make -print-machineinstrs more readable.
...
- Be consistent when referring to MachineBasicBlocks: BB#0.
- Be consistent when referring to virtual registers: %reg1024.
- Be consistent when referring to unknown physical registers: %physreg10.
- Be consistent when referring to known physical registers: %RAX
- Be consistent when referring to register 0: %reg0
- Be consistent when printing alignments: align=16
- Print jump table contents.
- Don't print host addresses, in general.
- and various other cleanups.
llvm-svn: 85682
2009-10-31 20:19:03 +00:00
Dan Gohman
18dc1c5c9e
Factor out more code into addCommonCodeGenPasses. The JIT wasn't
...
previously running CodePlacementOpt. Also print headers before
each dump in -print-machineinstrs mode, so that it's clear which
dump is which.
llvm-svn: 85681
2009-10-31 20:17:39 +00:00
Chris Lattner
3c89c53f35
adjust a couple xforms to work with null bb's in BlockAddress.
...
llvm-svn: 85680
2009-10-31 20:13:24 +00:00
Mike Stump
0a65b636ce
Fix -pthread on dragonfly. Patch by Sascha Wildner.
...
llvm-svn: 85679
2009-10-31 20:11:46 +00:00
Chris Lattner
b2c0e243c5
Make blockaddress(@func, null) be valid, and make 'deleting a basic
...
block with a blockaddress still referring to it' replace the invalid
blockaddress with a new blockaddress(@func, null) instead of a
inttoptr(1).
This changes the bitcode encoding format, and still needs codegen
support (this should produce a non-zero value, referring to the entry
block of the function would also be quite reasonable).
llvm-svn: 85678
2009-10-31 20:08:37 +00:00
Mike Stump
75ce573815
Refine vcall/vbase ordering with vtable construction.
...
llvm-svn: 85677
2009-10-31 20:06:59 +00:00
Benjamin Kramer
6ef6fe1c31
Force triple; darwin's ASM syntax differs from linux's.
...
llvm-svn: 85676
2009-10-31 19:54:06 +00:00
Jim Grosbach
5d994048dd
Expand 64 bit left shift inline rather than using the libcall. For now, this
...
is unconditional. Making it still use the libcall when optimizing for size
would be a good adjustment.
llvm-svn: 85675
2009-10-31 19:38:01 +00:00
Benjamin Kramer
7e06083a3a
Add missing colons for FileCheck.
...
llvm-svn: 85674
2009-10-31 19:22:24 +00:00
Jim Grosbach
bf1cb1343f
Convert to FileCheck
...
llvm-svn: 85673
2009-10-31 19:06:53 +00:00
Jim Grosbach
7a949d8b05
The universal SDKROOT should only be assigned when hosted. Otherwise the
...
SDKROOT can refer to the target when we're building for the host.
llvm-svn: 85672
2009-10-31 18:00:10 +00:00
Chris Lattner
a742b8f94f
add a comment.
...
llvm-svn: 85671
2009-10-31 17:48:31 +00:00
Dan Gohman
2d02ff8cbb
Revert r85667. LoopUnroll currently can't call utility functions which
...
auto-update the DominatorTree because it doesn't keep the DominatorTree
current while it works.
llvm-svn: 85670
2009-10-31 17:33:01 +00:00
Douglas Gregor
954de17977
Implement "incremental" template instantiation for non-type template
...
parameters and template type parameters, which occurs when
substituting into the declarations of member templates inside class
templates. This eliminates errors about our inability to "reduce
non-type template parameter depth", fixing PR5311.
Also fixes a bug when instantiating a template type parameter
declaration in a member template, where we weren't properly reducing
the template parameter's depth.
LLVM's StringSwitch header now parses.
llvm-svn: 85669
2009-10-31 17:21:17 +00:00
Dan Gohman
144694bcb7
Remove redundant code.
...
llvm-svn: 85668
2009-10-31 16:16:41 +00:00
Dan Gohman
041e2dbad1
Merge the enhancements from LoopUnroll's FoldBlockIntoPredecessor into
...
MergeBlockIntoPredecessor. This makes SimplifyCFG slightly more aggressive,
and makes it unnecessary for LoopUnroll to have its own copy of this code.
llvm-svn: 85667
2009-10-31 16:08:00 +00:00
Douglas Gregor
bff4e7d180
Fix the type of __builtin_expect, from Ed Schouten!
...
llvm-svn: 85666
2009-10-31 16:04:14 +00:00
Douglas Gregor
249c121883
Add two missing CINDEX_LINKAGE uses, in libCIndex, from Kovarththanan
...
Rajaratnam!
llvm-svn: 85665
2009-10-31 15:48:08 +00:00
Dan Gohman
880c92ac1c
Rename forgetLoopBackedgeTakenCount to forgetLoop, because it
...
clears out more information than just the stored backedge taken count.
llvm-svn: 85664
2009-10-31 15:04:55 +00:00
Dan Gohman
969e83a4ff
Replace LoopUnrollPass.cpp's custom code-size estimation code using
...
the new common CodeMetrics code.
llvm-svn: 85663
2009-10-31 14:54:17 +00:00
Dan Gohman
fa8969f70e
Simplify this code.
...
llvm-svn: 85662
2009-10-31 14:46:50 +00:00
Dan Gohman
af94015c18
Remove an unnecessary #include.
...
llvm-svn: 85661
2009-10-31 14:39:43 +00:00
Dan Gohman
f35b6640f6
Update CMakeLists for recent renames.
...
llvm-svn: 85660
2009-10-31 14:38:25 +00:00
Dan Gohman
f70e76c435
Rename UnrollLoop.cpp to LoopUnroll.cpp, and LoopUnroll.cpp to
...
LoopUnrollPass.cpp, for consistency with other passes which are
similarly split.
llvm-svn: 85659
2009-10-31 14:37:31 +00:00
Dan Gohman
fb7f0e57b6
Remove CodeGenLICM. It's largely obsoleted by MachineLICM's new ability
...
to unfold loop-invariant loads.
llvm-svn: 85657
2009-10-31 14:35:41 +00:00
Dan Gohman
ac45c9171d
Make ScalarEvolutionAliasAnalysis slightly more aggressive, by making an
...
underlying alias call even for non-identified-object values.
llvm-svn: 85656
2009-10-31 14:32:25 +00:00
Dan Gohman
930aa9d3d2
Reapply r85634, with the bug fixed.
...
llvm-svn: 85655
2009-10-31 14:22:52 +00:00
Dan Gohman
ba8735d25a
When discarding SrcValue information, discard all of it so that code
...
that uses this information knows to behave conservatively.
llvm-svn: 85654
2009-10-31 14:14:04 +00:00
Dan Gohman
97abba5b6f
Fix 80-column violation.
...
llvm-svn: 85653
2009-10-31 14:12:53 +00:00
Benjamin Kramer
6b289a9cf6
Update CMake file.
...
llvm-svn: 85652
2009-10-31 12:15:23 +00:00
Zhongxing Xu
b1c24724dd
Move CheckDivZero into its own files.
...
llvm-svn: 85651
2009-10-31 10:02:37 +00:00
Eric Christopher
a0ca9e944f
Fix warning with gcc-4.0 and signed/unsigned.
...
llvm-svn: 85648
2009-10-31 09:24:35 +00:00
Zhongxing Xu
358ced08d0
Move UndefDerefChecker into its own file.
...
llvm-svn: 85645
2009-10-31 08:44:33 +00:00
Zhongxing Xu
2261bcadd1
Add header comments.
...
llvm-svn: 85644
2009-10-31 04:12:21 +00:00