Dan Gohman
2ea51b7464
When looking for loop-invariant users, look through no-op instructions,
...
so that an unfortunately placed bitcast doesn't pin a value in a
register.
llvm-svn: 100883
2010-04-09 19:12:34 +00:00
Benjamin Kramer
f040734da3
Make sure this test tests something.
...
llvm-svn: 100879
2010-04-09 19:03:31 +00:00
Bob Wilson
adb1da2978
Fix a grammaro.
...
llvm-svn: 100877
2010-04-09 18:39:54 +00:00
Bob Wilson
ee7665078a
Add a testcase for svn r100568.
...
llvm-svn: 100876
2010-04-09 18:29:29 +00:00
Chris Lattner
5408e8a62b
"On SPU, variables in the .bss section that are allocated with the .lcomm directive are not aligned on 16 byte boundaries. This causes misaligned loads, as the generated assembly assumes this "default" alignment.
...
this patch disables .lcomm in favour of '.local .comm'
Patch by Kalle Raisklia!
llvm-svn: 100875
2010-04-09 18:27:03 +00:00
Dan Gohman
d142f14f78
Add a comment.
...
llvm-svn: 100874
2010-04-09 18:20:03 +00:00
Bob Wilson
ae630d5518
Fix up header comments to match the comment fixups I made in r100849.
...
llvm-svn: 100869
2010-04-09 16:24:49 +00:00
Devang Patel
55172d3571
Clear InsnsBeginScopeSet and InsnsEndScopeSet at the end of function.
...
llvm-svn: 100867
2010-04-09 16:04:20 +00:00
Gabor Greif
f63f840826
performance: cache result of looking up user
...
llvm-svn: 100862
2010-04-09 15:18:34 +00:00
Dan Gohman
a451b859f9
Merge a few fast-isel tests.
...
llvm-svn: 100860
2010-04-09 15:03:55 +00:00
Dan Gohman
1dbce98fac
Minor code simplification.
...
llvm-svn: 100859
2010-04-09 14:53:59 +00:00
Dan Gohman
f9cf2772f6
Delete this obsolete comment.
...
llvm-svn: 100858
2010-04-09 14:12:01 +00:00
Gabor Greif
6f820a041f
const-ize a predicate
...
llvm-svn: 100856
2010-04-09 10:57:00 +00:00
Chandler Carruth
362be7d46d
Add a missing dependency to this library when building with CMake.
...
llvm-svn: 100852
2010-04-09 05:55:25 +00:00
Bob Wilson
1fa38ca6fd
Use getNumImplicitDefs() and getNumImplicitUses().
...
llvm-svn: 100850
2010-04-09 04:46:43 +00:00
Bob Wilson
ed50c79a3a
Fix up some comments.
...
llvm-svn: 100849
2010-04-09 04:34:03 +00:00
Chris Lattner
bc47db9f8e
revert r100842 which broke several of the build bots.
...
llvm-svn: 100848
2010-04-09 04:24:20 +00:00
Daniel Dunbar
4ddbf8ad2c
lit: Add support to OneCommandPerFileTest format to take input directory from input path.
...
llvm-svn: 100846
2010-04-09 02:15:10 +00:00
Dan Gohman
5ff28f586e
Refactor the code for computing the insertion point for an expression into
...
a separate function.
llvm-svn: 100845
2010-04-09 02:00:38 +00:00
Sean Callanan
6a94ce3daf
Added a tester for the enhanced disassembler,
...
integrated into the llvm-mc testing tool.
llvm-svn: 100842
2010-04-09 01:43:16 +00:00
Dan Gohman
b07151b5dd
Add several more lint checks.
...
llvm-svn: 100841
2010-04-09 01:39:53 +00:00
Dan Gohman
853ff6b580
Fix a bug in IVUsers which was permitting non-affine addrecs to
...
be sent to LSR, which it isn't prepared to handle.
llvm-svn: 100839
2010-04-09 01:22:56 +00:00
Dan Gohman
6798e98b41
Don't use reserved identifiers.
...
llvm-svn: 100838
2010-04-09 01:19:28 +00:00
Chris Lattner
08fed5e338
fix a SCCP miscompilation that could happen when a
...
forced constant is changed to a constant, we would end
up adding the instruction to the wrong worklist,
preventing it from being properly revisited. This fixes
rdar://7832370
llvm-svn: 100837
2010-04-09 01:14:31 +00:00
Sean Callanan
736f3ecc4c
Bugfixes for edis. Code to initialize instruction
...
state was being executed too lazily, and the LLVM
assembly syntax for the disassembler was not being
written into the proper disassembler state variable.
llvm-svn: 100830
2010-04-09 00:11:15 +00:00
Dan Gohman
c33ea94108
Avoid allocating a value of zero in a register if the initial formula
...
inputs happen to negate each other.
llvm-svn: 100828
2010-04-08 23:36:27 +00:00
Dan Gohman
eeb89ac6d3
Add a few more lint checks.
...
llvm-svn: 100825
2010-04-08 23:05:57 +00:00
Dan Gohman
127f5c53e1
Add variants of ult, ule, etc. which take a uint64_t RHS, for convenience.
...
llvm-svn: 100824
2010-04-08 23:03:40 +00:00
Chris Lattner
e154403f78
delete a forwarding function.
...
llvm-svn: 100815
2010-04-08 21:34:17 +00:00
Chris Lattner
1cf4bded13
move elf section uniquing to MCContext. Along the way
...
merge XCore's section into MCSectionELF
llvm-svn: 100812
2010-04-08 21:26:26 +00:00
Johnny Chen
43b072e18d
Now that Evan Cheng has fixed the coalescer bug (r100804), the workaround code
...
to avoid memcpy() call is no longer necessary.
llvm-svn: 100811
2010-04-08 21:23:54 +00:00
Chris Lattner
0225dbbfee
remove the TargetLoweringObjectFileMachO::getMachoSection
...
api and update clients to use MCContext instead.
llvm-svn: 100808
2010-04-08 20:40:11 +00:00
Chris Lattner
60ff59e5c1
move macho section uniquing from MCParser and TLOF to MCContext where
...
the compiler and asmparser now unique to the same sections. This fixes
rdar://7835021.
llvm-svn: 100807
2010-04-08 20:30:37 +00:00
Evan Cheng
619f1b8a94
Coalescer should not delete copy instructions whose defs are partially dead. e.g.
...
%RDI<def,dead> = MOV64rr %RAX<kill>, %EDI<imp-def>
llvm-svn: 100804
2010-04-08 20:02:37 +00:00
Ted Kremenek
de32c8d8db
Update CMake build.
...
llvm-svn: 100802
2010-04-08 18:52:18 +00:00
Ted Kremenek
141d32b7e9
Fix -Wsign-compare warning (issued by clang++).
...
llvm-svn: 100799
2010-04-08 18:49:30 +00:00
Dan Gohman
6ad805d335
Add a -lint pass which checks for common sources of undefined or likely
...
unintended behavior.
llvm-svn: 100798
2010-04-08 18:47:09 +00:00
Devang Patel
17b5b1dd88
Rename a function.
...
llvm-svn: 100797
2010-04-08 18:43:56 +00:00
Chris Lattner
f6e9c0c4bd
implicit defs get added to the end of machine instrs sometimes. Scan the whole instruction for the metadata operand instead of assuming it will be at the end of the instruction.
...
llvm-svn: 100792
2010-04-08 18:20:52 +00:00
Dan Gohman
b2a87fa39d
Pointers to zero-sized objects don't point to overlapping objects.
...
llvm-svn: 100789
2010-04-08 18:11:50 +00:00
Dan Gohman
5bf62639ed
Print empty structs as {} rather than { }.
...
llvm-svn: 100787
2010-04-08 18:03:05 +00:00
Dan Gohman
95038973ce
Fix a comment.
...
llvm-svn: 100783
2010-04-08 17:41:04 +00:00
Jeffrey Yasskin
299019ff08
Touch configure so it regenerates Disassemblers.def to include ARM so
...
people stop seeing a broken build in EDDisassembler.cpp
llvm-svn: 100782
2010-04-08 17:19:20 +00:00
Devang Patel
89756fdbfc
One instruction may start (or end) multiple lexical scopes.
...
There is no need to remember labels identifying regions marked by such instructions in each scope.
llvm-svn: 100781
2010-04-08 16:50:29 +00:00
Gabor Greif
84d4f4ac57
clean up algorithm and remove operand order assumptions
...
llvm-svn: 100780
2010-04-08 16:46:24 +00:00
Dan Gohman
df4b5c45d5
Fix a comment.
...
llvm-svn: 100774
2010-04-08 15:57:10 +00:00
Devang Patel
3cc4a24666
Remove dead code.
...
llvm-svn: 100771
2010-04-08 15:48:02 +00:00
Devang Patel
b9f9a00513
Delete out of date comment.
...
llvm-svn: 100769
2010-04-08 15:41:13 +00:00
Devang Patel
9ada7b28a2
Refactor.
...
llvm-svn: 100768
2010-04-08 15:37:09 +00:00
Benjamin Kramer
3b7602b1fb
Various MSVC warning fixes about truncated 64 bit shifts and const pointers passed to free.
...
llvm-svn: 100767
2010-04-08 15:25:57 +00:00