Nick Lewycky [Thu, 14 Sep 2006 04:20:17 +0000 (04:20 +0000)]
Fix --enable-valgrind. Add room for the new arguments, and don't keep
a pointer to a temporary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30312
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Thu, 14 Sep 2006 03:49:54 +0000 (03:49 +0000)]
Add --enable-valgrind option to run optimizations through valgrind to
pick up on memory errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30311
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 14 Sep 2006 01:35:13 +0000 (01:35 +0000)]
GlobalValue with InternalLinkage may have operands with ExternalLinkage
type. Do not ignore these operands while finding external references.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30310
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 14 Sep 2006 01:27:42 +0000 (01:27 +0000)]
Avoid recursion in assignDFSNumber(). Move def from ET-Forest.h
to Dominators.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30309
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 23:37:16 +0000 (23:37 +0000)]
add note about switch lowering
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30308
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 21:27:00 +0000 (21:27 +0000)]
Second half of the fix for Transforms/Inline/inline_cleanup.ll
This folds unconditional branches that are often produced by code
specialization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30307
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Wed, 13 Sep 2006 19:32:53 +0000 (19:32 +0000)]
Add some more consistency checks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30305
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Wed, 13 Sep 2006 19:24:01 +0000 (19:24 +0000)]
Fix unionSets so that it can merge correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30304
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 19:23:57 +0000 (19:23 +0000)]
Implement the first half of Transforms/Inline/inline_cleanup.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30303
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 19:23:43 +0000 (19:23 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30302
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 13 Sep 2006 19:07:28 +0000 (19:07 +0000)]
Skip over first operand when determining REX prefix for two-address code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30300
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Wed, 13 Sep 2006 18:55:37 +0000 (18:55 +0000)]
Erase dead instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30298
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 17:58:57 +0000 (17:58 +0000)]
The sense of this branch was backwards
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30296
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 17:04:54 +0000 (17:04 +0000)]
Turn X < 0 -> TEST X,X js
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30294
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 16:56:12 +0000 (16:56 +0000)]
The sense of this branch was inverted :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30293
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 16:21:10 +0000 (16:21 +0000)]
Fix a ton of jit failures
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30292
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Wed, 13 Sep 2006 12:09:43 +0000 (12:09 +0000)]
add shifts to addressing mode 1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30291
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 06:02:42 +0000 (06:02 +0000)]
If LSR went through a lot of trouble to put constants (e.g. the addr of a global
in a specific BB, don't undo this!). This allows us to compile
CodeGen/X86/loop-hoist.ll into:
_foo:
xorl %eax, %eax
*** movl L_Arr$non_lazy_ptr, %ecx
movl 4(%esp), %edx
LBB1_1: #cond_true
movl %eax, (%ecx,%eax,4)
incl %eax
cmpl %edx, %eax
jne LBB1_1 #cond_true
LBB1_2: #return
ret
instead of:
_foo:
xorl %eax, %eax
movl 4(%esp), %ecx
LBB1_1: #cond_true
*** movl L_Arr$non_lazy_ptr, %edx
movl %eax, (%edx,%eax,4)
incl %eax
cmpl %ecx, %eax
jne LBB1_1 #cond_true
LBB1_2: #return
ret
This was noticed in 464.h264ref. This doesn't usually affect PPC,
but strikes X86 all the time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30290
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 05:59:25 +0000 (05:59 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30289
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 04:45:25 +0000 (04:45 +0000)]
Fix a regression in the 32-bit port from the 64-bit port landing.
We now compile CodeGen/X86/lea-2.ll into:
_test:
movl 4(%esp), %eax
movl 8(%esp), %ecx
leal -5(%ecx,%eax,4), %eax
ret
instead of:
_test:
movl 4(%esp), %eax
leal (,%eax,4), %eax
addl 8(%esp), %eax
addl $
4294967291, %eax
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30288
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 04:43:26 +0000 (04:43 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30287
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 04:19:50 +0000 (04:19 +0000)]
new note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30286
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 03:54:54 +0000 (03:54 +0000)]
new note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30285
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 03:50:39 +0000 (03:50 +0000)]
Compile X << 1 (where X is a long-long) to:
addl %ecx, %ecx
adcl %eax, %eax
instead of:
movl %ecx, %edx
addl %edx, %edx
shrl $31, %ecx
addl %eax, %eax
orl %ecx, %eax
and to:
addc r5, r5, r5
adde r4, r4, r4
instead of:
slwi r2,r9,1
srwi r0,r11,31
slwi r3,r11,1
or r2,r0,r2
on PPC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30284
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 03:22:10 +0000 (03:22 +0000)]
Compile X > -1 -> text X,X; js dest
This implements CodeGen/X86/jump_sign.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30283
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Sep 2006 03:21:27 +0000 (03:21 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30282
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 13 Sep 2006 01:02:26 +0000 (01:02 +0000)]
Initialize DontInternalize.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30281
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 12 Sep 2006 21:04:05 +0000 (21:04 +0000)]
Reflects MachineConstantPoolEntry changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30279
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 12 Sep 2006 21:00:35 +0000 (21:00 +0000)]
Added support for machine specific constantpool values. These are useful for
representing expressions that can only be resolved at link time, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30278
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 12 Sep 2006 20:59:59 +0000 (20:59 +0000)]
Reflect MachineConstantPoolEntry changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30277
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 12 Sep 2006 20:30:13 +0000 (20:30 +0000)]
Correct the URL to the attrib.incl file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30276
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Sep 2006 19:17:09 +0000 (19:17 +0000)]
An sinkable instruction may exist with uses, if those uses are in dead blocks.
Handle this. This fixes PR908 and Transforms/LICM/2006-09-12-DeadUserOfSunkInstr.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30275
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Sep 2006 19:16:04 +0000 (19:16 +0000)]
testcase for PR908
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30274
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Sep 2006 16:28:14 +0000 (16:28 +0000)]
Testcase that crashes the C++ FE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30273
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Sep 2006 06:36:01 +0000 (06:36 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30271
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Tue, 12 Sep 2006 00:18:28 +0000 (00:18 +0000)]
Add ability to remove nodes from DominatorTree, for when a BasicBlock
is being removed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30270
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Sep 2006 23:00:56 +0000 (23:00 +0000)]
Testcase noticed from PR906
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30269
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Sep 2006 22:57:51 +0000 (22:57 +0000)]
add compilable testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30268
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Sep 2006 22:48:23 +0000 (22:48 +0000)]
new testcase for PR906
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30267
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Sep 2006 21:43:16 +0000 (21:43 +0000)]
Fix PR905 and InstCombine/2006-09-11-EmptyStructCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30266
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Sep 2006 21:41:56 +0000 (21:41 +0000)]
new testcase for PR905
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30265
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 11 Sep 2006 19:24:19 +0000 (19:24 +0000)]
implement SRL and MUL
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30262
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 11 Sep 2006 19:23:32 +0000 (19:23 +0000)]
add the correct fallback for ARMDAGToDAGISel::SelectAddrMode1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30261
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Sep 2006 17:28:11 +0000 (17:28 +0000)]
burg is gone
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30253
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 11 Sep 2006 17:25:40 +0000 (17:25 +0000)]
partial implementation of the ARM Addressing Mode 1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30252
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Mon, 11 Sep 2006 17:23:34 +0000 (17:23 +0000)]
Skip the linear search if the answer is already known.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30251
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 11 Sep 2006 16:02:58 +0000 (16:02 +0000)]
No longer used, and confuses maintainers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30248
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Mon, 11 Sep 2006 14:52:26 +0000 (14:52 +0000)]
Include the UIUC CS department attribution on the main doxygen page.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30247
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 11 Sep 2006 12:49:38 +0000 (12:49 +0000)]
call AsmPrinter::doInitialization in ARMAsmPrinter::doInitialization
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30246
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 11 Sep 2006 05:35:17 +0000 (05:35 +0000)]
Updates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30245
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 11 Sep 2006 05:25:15 +0000 (05:25 +0000)]
Update README file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30244
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 11 Sep 2006 02:33:29 +0000 (02:33 +0000)]
Rename a test-not-cmp.ll to cmp-test.ll; add a test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30243
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 11 Sep 2006 02:24:43 +0000 (02:24 +0000)]
1) With X86 lowering change, the following can no longer happen since
the branch's chain is also produced by cmp.
[ch, r : ld]
^ ^
| |
[XX]--/ \- [flag : cmp]
^ ^
| |
\---[br flag]-
Remove an isel check which prevents loads from being folded into cmp / test
instructions.
2) Whenever possible, delete a selected node to allow more load folding
opportunities. Note not all nodes can be deleted after it has been
selected. Some may have simply morphed; some have not changed at all (e.g.
EntryToken).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30242
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 11 Sep 2006 02:19:56 +0000 (02:19 +0000)]
X86ISD::CMP now produces a chain as well as a flag. Make that the chain
operand of a conditional branch to allow load folding into CMP / TEST
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30241
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Sun, 10 Sep 2006 23:03:44 +0000 (23:03 +0000)]
Behold, more work on relocations. Things are looking pretty good now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30240
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 10 Sep 2006 21:17:03 +0000 (21:17 +0000)]
Removed unnecessary Mangler creation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30239
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Sep 2006 18:52:25 +0000 (18:52 +0000)]
add a testcase for this commit: lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20050606/026673.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30238
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Sep 2006 18:17:58 +0000 (18:17 +0000)]
Allow tail duplication in more cases, relaxing the previous restriction a
bit. This fixes Regression/Transforms/TailDup/MergeTest.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30237
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Sep 2006 06:36:57 +0000 (06:36 +0000)]
This code was trying too hard. By eliminating redundant edges in the CFG
due to switch cases going to the same place, it make #pred != #phi entries,
breaking live interval analysis.
This fixes 458.sjeng on x86 with llc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30236
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sun, 10 Sep 2006 02:27:07 +0000 (02:27 +0000)]
Replace EquivalenceClasses with a custom-built data structure. Many common
operations (like findProperties) should be faster, at the expense of
unionSets being slower in cases that are rare in practise.
Don't erase a dead Instruction. This fixes a memory corruption issue.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30235
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 22:02:56 +0000 (22:02 +0000)]
Implement Transforms/InstCombine/hoist_instr.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30234
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 22:02:25 +0000 (22:02 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30233
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 21:30:13 +0000 (21:30 +0000)]
Move ipsccp pass earlier to clean up obvious bogosities
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30232
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 20:40:44 +0000 (20:40 +0000)]
Make inlining costs more accurate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30231
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 20:26:32 +0000 (20:26 +0000)]
Turn div X, (Cond ? Y : 0) -> div X, Y
This implements select.ll::test18.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30230
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 20:26:04 +0000 (20:26 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30229
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sat, 9 Sep 2006 09:10:37 +0000 (09:10 +0000)]
Missing anchor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30227
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 06:17:12 +0000 (06:17 +0000)]
Add cbe support for powi
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30226
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 06:03:30 +0000 (06:03 +0000)]
Implement the fpowi now by lowering to a libcall
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30225
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 06:02:16 +0000 (06:02 +0000)]
(indirect) test for the __builtin_powi builtin which we now support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30224
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 05:55:44 +0000 (05:55 +0000)]
Implement new fpowi node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30223
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 9 Sep 2006 00:20:27 +0000 (00:20 +0000)]
Allow targets to custom lower expanded BIT_CONVERT's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30217
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 8 Sep 2006 22:42:09 +0000 (22:42 +0000)]
First pass at supporting relocations. Relocations are written correctly to
the file now, however the relocated address is currently wrong. Fixing
that will require some deep pondering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30207
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 21:08:13 +0000 (21:08 +0000)]
Fixed a FuseTwoAddrInst() bug: consider GlobalAddress and JumpTableIndex
in addition to immediate operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30205
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 20:21:31 +0000 (20:21 +0000)]
Non-allocatable physregs can be killed and dead, but don't treat them as
safe for later allocation. This fixes McCat/18-imp with llc-beta.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30204
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 19:11:11 +0000 (19:11 +0000)]
This fixes Benchmarks/Prolangs-C/unix-smail
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30198
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 19:03:30 +0000 (19:03 +0000)]
Fix a bunch of llc-beta failures on x86 yesterday. Don't allow selection
of unallocatable registers, just because an alias is allocatable. We were
picking registers like SIL just because ESI was being used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30197
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 18:33:49 +0000 (18:33 +0000)]
ok this really works :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30195
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Sep 2006 18:20:25 +0000 (18:20 +0000)]
Remove redundant include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30194
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 18:08:50 +0000 (18:08 +0000)]
Need to include Makefile.config to get the value of $(OS). Add a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30193
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 8 Sep 2006 18:00:43 +0000 (18:00 +0000)]
Enabling LTO building on Darwin only right now. This probably should be
removed after 'PIC vs non-PIC' problem solution
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30192
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Sep 2006 17:36:23 +0000 (17:36 +0000)]
implement shl and sra
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30191
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 17:03:56 +0000 (17:03 +0000)]
Use __USER_LABEL_PREFIX__ to get the prefix added by the current host.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30190
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Sep 2006 16:59:47 +0000 (16:59 +0000)]
add the eor (xor) instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30189
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Fri, 8 Sep 2006 13:06:56 +0000 (13:06 +0000)]
Missing tab
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30188
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Sep 2006 12:52:50 +0000 (12:52 +0000)]
fix select.ll to always test a select node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30187
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Sep 2006 12:47:03 +0000 (12:47 +0000)]
implement unconditional branches
fix select.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30186
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 07:26:39 +0000 (07:26 +0000)]
Generated isel should favors explicit constant operand (+2) over an operand with a predicate (+1).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30180
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 07:24:20 +0000 (07:24 +0000)]
New test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30179
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 06:56:55 +0000 (06:56 +0000)]
Remove TEST64mr. It's same as TEST64rm since and is commutative.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30178
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 06:48:29 +0000 (06:48 +0000)]
Committing X86-64 support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30177
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 06:43:00 +0000 (06:43 +0000)]
add powi intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30176
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Sep 2006 06:34:02 +0000 (06:34 +0000)]
new powi intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30175
91177308-0d34-0410-b5e6-
96231b3b80d8
Nate Begeman [Fri, 8 Sep 2006 03:42:15 +0000 (03:42 +0000)]
We actually do support object file writing, so don't return true (error)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30173
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 01:54:32 +0000 (01:54 +0000)]
Add a new test case for 'undef' shuffles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30172
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Sep 2006 01:50:06 +0000 (01:50 +0000)]
- Identify a vector_shuffle that can be turned into an undef, e.g.
shuffle V1, <undef>, <undef, undef, 4, 5>
- Fix some suspicious logic into LowerVectorShuffle that cause less than
optimal code by failing to identify MOVL (move to lowest element of a
vector).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30171
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 7 Sep 2006 23:39:26 +0000 (23:39 +0000)]
1. Remove condition on delete.
2. Protect and outline createTargetAsmInfo.
3. Misc. kruft.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30169
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Sep 2006 23:29:19 +0000 (23:29 +0000)]
Untabify.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30168
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Sep 2006 23:22:37 +0000 (23:22 +0000)]
Use iterative do-while loop instead of recursive DFSPass calls to
reduce amount of stack space used at runtime.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30167
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 7 Sep 2006 22:32:28 +0000 (22:32 +0000)]
add a new value for the command line optn
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30165
91177308-0d34-0410-b5e6-
96231b3b80d8