Evan Cheng [Mon, 21 May 2007 18:44:17 +0000 (18:44 +0000)]
BlockHasNoFallThrough() now returns true if block ends with a return instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37266
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sun, 20 May 2007 19:56:24 +0000 (19:56 +0000)]
Update
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37265
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 14:44:42 +0000 (14:44 +0000)]
Get the order of the hext digits right!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37261
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 07:25:21 +0000 (07:25 +0000)]
Adjust how LLVM names are produced:
1. Always use % for local and @ for global.
2. Replace NameNeedsQuotes with QuoteNameIfNeeded so that any adjustments
to the name can be done in one pass.
3. Implement generation of hex escapes so we don't get "wonky" characters
in the output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37260
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 07:22:24 +0000 (07:22 +0000)]
Make sure we can round-trip an escaped value in a name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37259
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 07:22:10 +0000 (07:22 +0000)]
Regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37258
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 07:21:26 +0000 (07:21 +0000)]
Make the %"..." syntax legal for local name. This just makes it symmetric
with global names which can already be @"..."
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37257
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 06:51:32 +0000 (06:51 +0000)]
Fix Transforms/InstCombine/2007-05-18-CastFoldBug.ll, a bug that devastates
objc code due to the way the FE lowers objc message sends.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37256
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 06:50:37 +0000 (06:50 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37255
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 01:36:17 +0000 (01:36 +0000)]
On Linux platforms and at optimization levels -O1 and above, llvm-gcc can
turn "putchar" calls into _IO_putc calls which is a lower-level interface.
This patch allows these calls to be executed by lli in interpreter mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37254
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 01:22:52 +0000 (01:22 +0000)]
add source
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37253
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 01:22:21 +0000 (01:22 +0000)]
Handle negative strides much more optimally. This compiles X86/lsr-negative-stride.ll
into:
_t:
movl 8(%esp), %ecx
movl 4(%esp), %eax
cmpl %ecx, %eax
je LBB1_3 #bb17
LBB1_1: #bb
cmpl %ecx, %eax
jg LBB1_4 #cond_true
LBB1_2: #cond_false
subl %eax, %ecx
cmpl %ecx, %eax
jne LBB1_1 #bb
LBB1_3: #bb17
ret
LBB1_4: #cond_true
subl %ecx, %eax
cmpl %ecx, %eax
jne LBB1_1 #bb
jmp LBB1_3 #bb17
instead of:
_t:
subl $4, %esp
movl %esi, (%esp)
movl 12(%esp), %ecx
movl 8(%esp), %eax
cmpl %ecx, %eax
je LBB1_4 #bb17
LBB1_1: #bb.outer
movl %ecx, %edx
negl %edx
LBB1_2: #bb
cmpl %ecx, %eax
jle LBB1_5 #cond_false
LBB1_3: #cond_true
addl %edx, %eax
cmpl %ecx, %eax
jne LBB1_2 #bb
LBB1_4: #bb17
movl (%esp), %esi
addl $4, %esp
ret
LBB1_5: #cond_false
movl %ecx, %edx
subl %eax, %edx
movl %eax, %esi
addl %esi, %esi
cmpl %ecx, %esi
je LBB1_4 #bb17
LBB1_6: #cond_false.bb.outer_crit_edge
movl %edx, %ecx
jmp LBB1_1 #bb.outer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37252
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 01:21:39 +0000 (01:21 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37251
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 00:46:51 +0000 (00:46 +0000)]
same patch as the previous one, but the symmetric case
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37249
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 00:43:44 +0000 (00:43 +0000)]
Disable the (A == (B-A)) -> 2*A == B xform when the sub has multiple uses (in
this case, the xform introduces an extra operation). This compiles
PowerPC/compare-duplicate.ll into:
_test:
subf r2, r3, r4
cmplw cr0, r2, r3
bne cr0, LBB1_2 ;F
instead of:
_test:
slwi r2, r3, 1
subf r3, r3, r4
cmplw cr0, r4, r2
bne cr0, LBB1_2 ;F
This is target independent of course.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37246
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 May 2007 00:41:40 +0000 (00:41 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37245
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 19 May 2007 00:29:55 +0000 (00:29 +0000)]
Fix an assertion introduced by my last change to the toString method. We
can't use getZExtValue() to extract the low order bits for each digit.
Instead, we need to access the low order word directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37242
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 18 May 2007 23:21:46 +0000 (23:21 +0000)]
Apply this patch:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20070514/049845.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37240
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 20:18:14 +0000 (20:18 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37239
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 18 May 2007 19:59:23 +0000 (19:59 +0000)]
Add a testcase for unrolling loops with unknown tripcounts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37238
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 19:32:08 +0000 (19:32 +0000)]
Clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37237
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 19:26:33 +0000 (19:26 +0000)]
Change to depth-first traversal.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37236
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 18 May 2007 18:46:40 +0000 (18:46 +0000)]
Document an inefficiency in tail merging.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37235
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 18 May 2007 18:44:07 +0000 (18:44 +0000)]
Use MVT::FIRST_VECTOR_VALUETYPE and MVT::LAST_VECTOR_VALUETYPE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37234
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 18 May 2007 18:41:29 +0000 (18:41 +0000)]
Qualify calls to getTypeForValueType with MVT:: too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37233
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 18:14:37 +0000 (18:14 +0000)]
Some restructuring in preparation for most aggressive if-conversion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37231
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 18 May 2007 17:52:13 +0000 (17:52 +0000)]
Qualify several calls to functions in the MVT namespace, for consistency.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37230
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 17:06:53 +0000 (17:06 +0000)]
Watch out for blocks that end with a return.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37227
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 18 May 2007 12:13:34 +0000 (12:13 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37224
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Fri, 18 May 2007 09:04:20 +0000 (09:04 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37223
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 07:07:05 +0000 (07:07 +0000)]
better portability for intptr_t.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37221
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 06:38:51 +0000 (06:38 +0000)]
finished the first draft
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37219
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 06:33:02 +0000 (06:33 +0000)]
crank out notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37218
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 18 May 2007 05:48:07 +0000 (05:48 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37207
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 05:38:44 +0000 (05:38 +0000)]
validation fix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37206
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 05:36:14 +0000 (05:36 +0000)]
validation fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37205
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 04:02:46 +0000 (04:02 +0000)]
Fix PR1434 and test/Linker/link-archive.ll, this is a regression from 1.9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37204
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 18 May 2007 03:46:50 +0000 (03:46 +0000)]
Add a test case for PR1434
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37203
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 18 May 2007 02:06:03 +0000 (02:06 +0000)]
Avoid an infinite loop when TestRunner.sh is run outside of the test dir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37201
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 01:55:58 +0000 (01:55 +0000)]
If true / false blocks fallthrough before ifcvt, add unconditional branches to ifcvt'd block.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37200
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 01:53:54 +0000 (01:53 +0000)]
Mark calls non-predicable for now. Need to ensure it's the last instruction in the if-converted block or make sure it preserve condition code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37199
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 18 May 2007 01:28:58 +0000 (01:28 +0000)]
Remove some unneeded branches. (spotted by Evan, thanks)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37198
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 01:19:57 +0000 (01:19 +0000)]
Silence some compilation warnings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37197
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 May 2007 00:44:29 +0000 (00:44 +0000)]
tweak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37196
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 00:20:58 +0000 (00:20 +0000)]
Make use of target specific block size limits; bug fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37195
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 00:19:34 +0000 (00:19 +0000)]
Set ARM if-conversion block size threshold to 10 instructions for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37194
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 00:18:17 +0000 (00:18 +0000)]
RemoveBranch() and InsertBranch() now returns number of instructions deleted / inserted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37193
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 00:05:48 +0000 (00:05 +0000)]
RemoveBranch() and InsertBranch() now returns number of instructions deleted / inserted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37192
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 18 May 2007 00:00:30 +0000 (00:00 +0000)]
Fix comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37191
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 17 May 2007 23:58:53 +0000 (23:58 +0000)]
Move isSuccessor() offline, change it to use std::find.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37190
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 17 May 2007 22:51:35 +0000 (22:51 +0000)]
Fix a problem with building .y files when BISON is not present.
Merged from the release_20 branch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37188
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 17 May 2007 22:10:15 +0000 (22:10 +0000)]
Fix PR1431
Test case at Transformations/SCCP/2007-05-16-InvokeCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37185
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 17 May 2007 22:05:20 +0000 (22:05 +0000)]
New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37184
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 22:03:43 +0000 (22:03 +0000)]
validation fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37183
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 22:02:24 +0000 (22:02 +0000)]
llvm-gcc now supports almost all gcc extensions. The key missing one is
builtin_apply.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37182
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 21:41:31 +0000 (21:41 +0000)]
add a section about API changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37181
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Thu, 17 May 2007 21:31:21 +0000 (21:31 +0000)]
More effective breakdown of memcpy into repeated load/store. These are now
in the order lod;lod;lod;sto;sto;sto which means the load-store optimizer
has a better chance of producing ldm/stm. Ideally you would get cooperation
from the RA as well but this is not there yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37179
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 17 May 2007 21:30:39 +0000 (21:30 +0000)]
Correct a name in a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37178
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 20:01:40 +0000 (20:01 +0000)]
silence some "comparison between signed and unsigned integer expressions"
warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37177
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 19:58:57 +0000 (19:58 +0000)]
minor tweak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37176
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 17 May 2007 19:23:02 +0000 (19:23 +0000)]
Get rid of leading zeros in the output of toString.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37175
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 17 May 2007 18:49:50 +0000 (18:49 +0000)]
New test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37174
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 17 May 2007 18:45:50 +0000 (18:45 +0000)]
Fix a bogus check that prevented folding VECTOR_SHUFFLE to UNDEF; add an optimization to fold VECTOR_SHUFFLE to a zero vector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37173
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 17 May 2007 18:44:37 +0000 (18:44 +0000)]
Added missing patterns for UNPCKH* and PUNPCKH*.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37172
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 17 May 2007 18:29:01 +0000 (18:29 +0000)]
Fix some sporadic segfaults that are triggered when SmallVector's heap
storage lands near the end of the available address space. In the expression
Begin+N > Capacity, the Begin+N was overflowing. Fix this by replacing it
by with an expression that doesn't involve computation of an address
beyond the end of allocated memory.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37171
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 18:22:37 +0000 (18:22 +0000)]
add testcase for 128-bit add/sub
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37170
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 18:19:23 +0000 (18:19 +0000)]
disable MaskedValueIsZero, ComputeMaskedBits, and SimplifyDemandedBits for
i128 integers. The 64-bit masks are not wide enough to represent the results.
These should be converted to APInt someday.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37169
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 18:15:41 +0000 (18:15 +0000)]
add expand support for ADDC/SUBC/ADDE/SUBE so we can codegen 128-bit add/sub on 32-bit (or less) targets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37168
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 17 May 2007 18:11:03 +0000 (18:11 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37166
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 17 May 2007 18:06:19 +0000 (18:06 +0000)]
Make Perl a required dependency and cause configure script to fail if it
is not found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37164
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 17:13:13 +0000 (17:13 +0000)]
This is the correct fix for PR1427. This fixes mmx-shuffle.ll and doesn't
cause other regressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37160
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Thu, 17 May 2007 07:50:14 +0000 (07:50 +0000)]
Revert patch for PR1427. It breaks almost all vector tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37159
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 06:52:46 +0000 (06:52 +0000)]
add support for 128-bit add/sub on ppc64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37158
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 17 May 2007 06:47:54 +0000 (06:47 +0000)]
Print integer values as both decimal and hexadecimal for convenience
of verifying result values when debugging.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37156
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 06:35:11 +0000 (06:35 +0000)]
add support for 128-bit integer add/sub
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37154
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 17 May 2007 06:26:29 +0000 (06:26 +0000)]
For lshr by 0 bits, just return *this as a short cut. This also prevents
undefined behavior when the width > 64 bits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37153
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 17 May 2007 06:22:12 +0000 (06:22 +0000)]
New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37151
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 03:29:42 +0000 (03:29 +0000)]
Fix PR1427 and test/CodeGen/X86/mmx-shuffle.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37141
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 May 2007 03:29:17 +0000 (03:29 +0000)]
testcase for PR1427
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37140
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 17 May 2007 00:11:35 +0000 (00:11 +0000)]
Remove. Not needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37139
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 23:53:44 +0000 (23:53 +0000)]
Default implementation of TargetInstrInfo::getBlockSize().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37138
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 23:45:53 +0000 (23:45 +0000)]
Add target hook to specify block size limit for if-conversion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37134
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 16 May 2007 23:25:46 +0000 (23:25 +0000)]
Merged in both release announcement guts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37131
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 16 May 2007 22:45:30 +0000 (22:45 +0000)]
Don't fold bitconvert(load) for preinc/postdec loads. Likewise stores.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37130
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 21:54:37 +0000 (21:54 +0000)]
isBlockPredicable() always ignore terminal instructions; add comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37126
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 21:53:43 +0000 (21:53 +0000)]
ARM::tB is also predicable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37125
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 21:53:07 +0000 (21:53 +0000)]
PredicateInstruction returns true if the operation was successful.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37124
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 21:20:37 +0000 (21:20 +0000)]
Add default implementation of PredicateInstruction().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37123
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:56:08 +0000 (20:56 +0000)]
Rename M_PREDICATED to M_PREDICABLE; Moved isPredicable() to MachineInstr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37121
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:52:46 +0000 (20:52 +0000)]
Move if-conversion after all passes that may use register scavenger.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37120
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:50:23 +0000 (20:50 +0000)]
Removed isPredicable().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37119
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:50:01 +0000 (20:50 +0000)]
Make ARM::B isPredicable; Make Bcc and MOVCC condition option a normal operand so they are not predicable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37118
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:47:01 +0000 (20:47 +0000)]
Added isPredicable bit to class Instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37117
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:45:24 +0000 (20:45 +0000)]
Rename M_PREDICATED to M_PREDICABLE; opcode can be specified isPredicable without having a PredicateOperand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37116
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 16 May 2007 20:43:42 +0000 (20:43 +0000)]
Rename M_PREDICATED to M_PREDICABLE; Move TargetInstrInfo::isPredicatable() to MachineInstr::isPredicable().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37115
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 16 May 2007 19:18:22 +0000 (19:18 +0000)]
Fix a bug in the "fromString" method where radix 2,8 and 16 values were
not being generated correctly because the shl operator does not mutate its
object but returns a new value. Also, make the distinction between radix
16 and the others more clear.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37111
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 16 May 2007 18:44:01 +0000 (18:44 +0000)]
Update for arbitrary precision integer types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37109
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 16 May 2007 17:56:56 +0000 (17:56 +0000)]
Fix PR1355: Only compute the SUBPATH and TESTDIR once.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37108
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 16 May 2007 16:51:31 +0000 (16:51 +0000)]
Fix PR number.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37107
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Wed, 16 May 2007 16:50:32 +0000 (16:50 +0000)]
New test for PR1417
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37106
91177308-0d34-0410-b5e6-
96231b3b80d8