Dan Gohman
774149a878
Add RIP to GR64_NOREX. This fixed a MachineVerifier error when RIP
...
is used in an operand which requires GR64_NOREX.
llvm-svn: 83307
2009-10-05 15:42:08 +00:00
Dan Gohman
5d36b9c447
Fix a name in a comment.
...
llvm-svn: 83306
2009-10-05 15:23:17 +00:00
Chris Lattner
b1fe4b1f0c
callgraph changes came after the 2.6 branch.
...
llvm-svn: 83299
2009-10-05 07:07:29 +00:00
Chris Lattner
fdd8790718
strength reduce a ton of type equality tests to check the typeid (Through
...
the new predicates I added) instead of going through a context and doing a
pointer comparison. Besides being cheaper, this allows a smart compiler
to turn the if sequence into a switch.
llvm-svn: 83297
2009-10-05 05:54:46 +00:00
Chris Lattner
3a2e503e33
add more type predicates.
...
llvm-svn: 83296
2009-10-05 05:48:40 +00:00
Chris Lattner
59d939894b
teach the optimizer how to constant fold uadd/usub intrinsics.
...
llvm-svn: 83295
2009-10-05 05:26:04 +00:00
Chris Lattner
351534f9b1
simplify this code a bunch.
...
llvm-svn: 83294
2009-10-05 05:06:24 +00:00
Chris Lattner
cc1cfda9ea
add some helper functions.
...
llvm-svn: 83293
2009-10-05 05:05:57 +00:00
Chris Lattner
9ca7c0913a
code simplifications.
...
llvm-svn: 83292
2009-10-05 05:00:35 +00:00
Evan Cheng
ef716b04b3
Move implicit and paralle to a separate codegen specific section.
...
llvm-svn: 83291
2009-10-05 02:51:06 +00:00
Chris Lattner
463716d559
instcombine shouldn't delete all null checks for mallocs.
...
This fixes PR5130.
llvm-svn: 83290
2009-10-05 02:47:47 +00:00
Chris Lattner
ff00c3562a
stop MachineFunctionPass from claiming that it preserves LoopDependence info,
...
which causes dependence info to be linked into lli.
llvm-svn: 83289
2009-10-05 02:35:05 +00:00
Chris Lattner
cb08fb7b83
remove llvm-db: it is completely broken and if anyone wants to do a debugger,
...
they should not base it on llvm-db (which not following almost any "best practices").
llvm-svn: 83288
2009-10-05 02:29:51 +00:00
Chris Lattner
4002c8eeaa
add some completely unformated and probably incoherent notes about things
...
I saw while reading all the commits between the 2.5 and 2.6 release branches.
llvm-svn: 83287
2009-10-05 02:12:39 +00:00
Owen Anderson
b5049bebb3
Do away with the strange use of BitVectors in SSI, and just use normal sets. This makes the code much more C++/LLVM-ish.
...
llvm-svn: 83286
2009-10-04 18:49:55 +00:00
Jakob Stoklund Olesen
63c733faf9
Whitespace and formatting.
...
llvm-svn: 83285
2009-10-04 18:18:39 +00:00
Jakob Stoklund Olesen
befc8539d2
Remove trailing whitespace from build output.
...
llvm-svn: 83284
2009-10-04 17:54:36 +00:00
Owen Anderson
286feb16a9
Fix a typo in the comment.
...
llvm-svn: 83283
2009-10-04 17:52:13 +00:00
Owen Anderson
a62bf10651
SSI needs to require DT and DF transitively, since it uses them outside of its runOnFunction.
...
Similarly, it can be marked setPreservesAll, since it does no work in its runOnFunction.
llvm-svn: 83282
2009-10-04 17:47:39 +00:00
Oscar Fuentes
cfd4ec0226
CMake: remove .so file extension from library names when building
...
dependency info.
Patch by Peter Collingbourne!
llvm-svn: 83275
2009-10-04 06:24:57 +00:00
Evan Cheng
bb4ed2394b
Allow -inline-threshold override default threshold even if compiling to optimize for size.
...
llvm-svn: 83274
2009-10-04 06:13:54 +00:00
Evan Cheng
cd4c17aeaf
Rename enum NumOccurrences to NumOccurrencesFlag since there is a member named NumOccurrences.
...
llvm-svn: 83273
2009-10-04 05:25:42 +00:00
Nick Lewycky
ae4617c974
Requires element types in a constant initializer to match the element types of
...
of the constant. This reverts r6544 and r7428.
llvm-svn: 83270
2009-10-03 19:30:43 +00:00
Bob Wilson
d76b9b766c
Add a comment to describe letters used in multiclass name suffixes.
...
llvm-svn: 83257
2009-10-03 04:44:16 +00:00
Bob Wilson
a9abf57409
Fix encoding problem for VMLS instruction.
...
Thanks to Johnny Chen for pointing this out!
llvm-svn: 83256
2009-10-03 04:41:21 +00:00
Lang Hames
a7780905e7
Oops. Renamed remaining MachineInstrIndex references.
...
llvm-svn: 83255
2009-10-03 04:31:31 +00:00
Lang Hames
920301ecc5
Renamed MachineInstrIndex to LiveIndex.
...
llvm-svn: 83254
2009-10-03 04:21:37 +00:00
Benjamin Kramer
8de74bbbd8
Try to fix unit test linking on linux ...
...
llvm-svn: 83252
2009-10-02 19:52:33 +00:00
Benjamin Kramer
f01ee30328
MingW build fixes
...
- MingW needs -lpsapi (in ${LIBS}) linked after -lLLVMSystem.
Noticed by Ronald Pijnacker!
- Some parts of the System library must be build with exceptions on windows.
Based on a patch by Jay Foad!
llvm-svn: 83251
2009-10-02 19:36:31 +00:00
Benjamin Kramer
3b008a3a65
Fix a use-after-free in post-ra-scheduling.
...
MI->addOperand invalidates references to it's operands, avoid touching
the operand after a new one was added.
llvm-svn: 83249
2009-10-02 15:59:52 +00:00
Torok Edwin
b8de092f18
Fix make rule when objdir is inside srcdir.
...
llvm-svn: 83243
2009-10-02 09:30:03 +00:00
Evan Cheng
32a47ea7b6
getFunctionAlignment should return log2 alignment.
...
llvm-svn: 83242
2009-10-02 06:57:25 +00:00
Evan Cheng
4ad726b4be
Fix tests.
...
llvm-svn: 83241
2009-10-02 06:53:57 +00:00
Evan Cheng
9079fa2d27
Fix test.
...
llvm-svn: 83240
2009-10-02 06:50:50 +00:00
Evan Cheng
b5796a59c4
C++ member functions must be 2 byte aligned per ABI.
...
llvm-svn: 83239
2009-10-02 06:07:47 +00:00
Evan Cheng
b659dff4eb
Forgot about ARM::tPUSH. It also has a new writeback operand.
...
llvm-svn: 83237
2009-10-02 05:03:07 +00:00
Evan Cheng
2dcee28a61
Move load / store multiple before post-alloc scheduling.
...
llvm-svn: 83236
2009-10-02 04:57:15 +00:00
Evan Cheng
4b40bfd835
Test case for aligned attribute on function declaration.
...
llvm-svn: 83234
2009-10-02 04:45:37 +00:00
David Goodwin
d725159d9d
All callee-saved registers are live-out of a return block.
...
llvm-svn: 83223
2009-10-01 23:28:47 +00:00
David Goodwin
1cc6dd97da
Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default.
...
llvm-svn: 83218
2009-10-01 22:19:57 +00:00
Mike Stump
70cb67fcf4
Expand api out in the usual inserter way, though, I do have a
...
question, can we get rid of the BasicBlock versions of all inserters
and use Head == 0 to indicate the old case when GetInsertBlock == 0?
llvm-svn: 83216
2009-10-01 22:08:58 +00:00
David Goodwin
9a051a5922
Restore the -post-RA-scheduler flag as an override for the target specification. Remove -mattr for setting PostRAScheduler enable and instead use CPU string.
...
llvm-svn: 83215
2009-10-01 21:46:35 +00:00
Evan Cheng
6f012d83f2
ARM::tPOP and tPOP_RET each has an extra writeback operand now.
...
llvm-svn: 83214
2009-10-01 20:54:53 +00:00
Jim Grosbach
7dbc2652b9
remove trailing whitespace
...
llvm-svn: 83213
2009-10-01 20:45:06 +00:00
Devang Patel
75cc16c0f2
Add support to extract lexical scope information from DebugLoc attached with an machine instruction.
...
This is not yet enabled.
llvm-svn: 83210
2009-10-01 20:31:14 +00:00
David Goodwin
be3039e776
Use MachineFrameInfo.getPristineRegs() to determine which callee-saved registers are available for anti-dependency breaking. Some cleanup.
...
llvm-svn: 83208
2009-10-01 19:45:32 +00:00
Devang Patel
787f94c28d
Record first and last instruction of a scope in DbgScope.
...
llvm-svn: 83207
2009-10-01 18:25:23 +00:00
Dan Gohman
8cf7907ba4
Don't use identifiers that start with an underscore followed
...
by a capital letter, which invokes undefined behavior.
llvm-svn: 83206
2009-10-01 17:39:52 +00:00
Douglas Gregor
f99626ed11
Teach CMake to look for bidirectional_iterator, iterator, forward_iterator, uint64_t, and u_int64_t, from Yonggang Luo
...
llvm-svn: 83203
2009-10-01 17:25:36 +00:00
Evan Cheng
4fb2891396
Observe hasExtraSrcRegAllocReq and hasExtraDefRegAllocReq. Do not change
...
operands of instructions with these properties while breaking anti-dep.
llvm-svn: 83198
2009-10-01 08:26:23 +00:00