oota-llvm.git
18 years agobugfixes
Chris Lattner [Wed, 15 Feb 2006 07:23:05 +0000 (07:23 +0000)]
bugfixes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26207 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoConvert this over to work with the new makefiles
Chris Lattner [Wed, 15 Feb 2006 07:22:58 +0000 (07:22 +0000)]
Convert this over to work with the new makefiles

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26206 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoConvert the bison-output-checked-into-cvs makefile handling stuff to work
Chris Lattner [Wed, 15 Feb 2006 07:16:57 +0000 (07:16 +0000)]
Convert the bison-output-checked-into-cvs makefile handling stuff to work
like the flex stuff, which actually works when people do cvs updates and
get conflicts in the updated checked in file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26205 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSparc actually *DOES* have a directive for emitting zeros. In fact, it requires
Chris Lattner [Wed, 15 Feb 2006 07:07:14 +0000 (07:07 +0000)]
Sparc actually *DOES* have a directive for emitting zeros.  In fact, it requires
it, because this:

.bss
X:
.byte 0

results in the assembler warning: "initialization in bss segment".  Annoying.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26204 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agorandom lexer change to test the makefile updating stuff
Chris Lattner [Wed, 15 Feb 2006 07:02:59 +0000 (07:02 +0000)]
random lexer change to test the makefile updating stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26203 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix SingleSource/Regression/C/2004-08-12-InlinerAndAllocas.c on Sparc.
Chris Lattner [Wed, 15 Feb 2006 06:41:34 +0000 (06:41 +0000)]
Fix SingleSource/Regression/C/2004-08-12-InlinerAndAllocas.c on Sparc.

The ABI specifies that there is a register save area at the bottom of the
stack, which means the actual used pointer needs to be an offset from
the subtracted value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26202 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoHP aCC (and a bunch of other compilers, no doubt) don't share
Duraid Madina [Wed, 15 Feb 2006 03:23:26 +0000 (03:23 +0000)]
HP aCC (and a bunch of other compilers, no doubt) don't share
GCC's syntax for auto-dependency generation stuff. This should
be changed to be disabling dependency stuff unless GCC/ICC is
found.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26201 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agooops, I meant this
Duraid Madina [Wed, 15 Feb 2006 03:20:16 +0000 (03:20 +0000)]
oops, I meant this

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26200 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agozap
Duraid Madina [Wed, 15 Feb 2006 03:16:52 +0000 (03:16 +0000)]
zap

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26199 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agopreviously, configure would die if GCC or ICC was not found. Now it'll
Duraid Madina [Wed, 15 Feb 2006 03:15:55 +0000 (03:15 +0000)]
previously, configure would die if GCC or ICC was not found. Now it'll
go through, but we do want to know if we're using GCC/ICC since they
share certain funky command line options (for dependency generation
stuff)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26198 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove an entry.
Evan Cheng [Wed, 15 Feb 2006 01:56:48 +0000 (01:56 +0000)]
Remove an entry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26197 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUse .zerofill on x86/darwin.
Evan Cheng [Wed, 15 Feb 2006 01:56:23 +0000 (01:56 +0000)]
Use .zerofill on x86/darwin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26196 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoLower memcpy with small constant size operand into a series of load / store
Evan Cheng [Wed, 15 Feb 2006 01:54:51 +0000 (01:54 +0000)]
Lower memcpy with small constant size operand into a series of load / store
ops.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26195 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agomore refactoring, no functionality change.
Chris Lattner [Wed, 15 Feb 2006 01:44:42 +0000 (01:44 +0000)]
more refactoring, no functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26194 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agocvtsd2ss / cvtss2sd encoding bug.
Evan Cheng [Wed, 15 Feb 2006 00:31:03 +0000 (00:31 +0000)]
cvtsd2ss / cvtss2sd encoding bug.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26193 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agomovaps, movapd encoding bug.
Evan Cheng [Wed, 15 Feb 2006 00:11:37 +0000 (00:11 +0000)]
movaps, movapd encoding bug.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26192 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agopull some code out into a function
Chris Lattner [Wed, 15 Feb 2006 00:07:43 +0000 (00:07 +0000)]
pull some code out into a function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26191 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew testcase that broke unswitch due to loopsimplify not doing the right thing.
Chris Lattner [Tue, 14 Feb 2006 23:07:29 +0000 (23:07 +0000)]
new testcase that broke unswitch due to loopsimplify not doing the right thing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26190 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoCanonicalize inner loops before outer loops. Inner loop canonicalization
Chris Lattner [Tue, 14 Feb 2006 23:06:02 +0000 (23:06 +0000)]
Canonicalize inner loops before outer loops.  Inner loop canonicalization
can provide work for the outer loop to canonicalize.

This fixes a case that breaks unswitching.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26189 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDoh again!
Evan Cheng [Tue, 14 Feb 2006 23:05:54 +0000 (23:05 +0000)]
Doh again!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26188 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoWhen splitting exit edges to canonicalize loops, make sure to put the new
Chris Lattner [Tue, 14 Feb 2006 22:34:08 +0000 (22:34 +0000)]
When splitting exit edges to canonicalize loops, make sure to put the new
block in the appropriate loop nest.

Third time is the charm, right?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26187 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew note
Chris Lattner [Tue, 14 Feb 2006 22:19:54 +0000 (22:19 +0000)]
new note

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26186 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIf we have zero initialized data with external linkage, use .zerofill to
Chris Lattner [Tue, 14 Feb 2006 22:18:23 +0000 (22:18 +0000)]
If we have zero initialized data with external linkage, use .zerofill to
emit it (instead of .space), saving a bit of space in the .o file.

For example:
int foo[100];
int bar[100] = {};

when compiled with C++ or -fno-common results in shrinkage from 1160 to 360
bytes of space.  The X86 backend can also do this on darwin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26185 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUsing wrong DW_FORM.
Jim Laskey [Tue, 14 Feb 2006 22:01:57 +0000 (22:01 +0000)]
Using wrong DW_FORM.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26184 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDon't special case XS, XD prefixes.
Evan Cheng [Tue, 14 Feb 2006 21:52:51 +0000 (21:52 +0000)]
Don't special case XS, XD prefixes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26183 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBug fix: XS, XD prefixes were being emitted twice.
Evan Cheng [Tue, 14 Feb 2006 21:45:24 +0000 (21:45 +0000)]
Bug fix: XS, XD prefixes were being emitted twice.
XMM registers were not being handled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26182 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake sure that weak functions are aligned properly
Chris Lattner [Tue, 14 Feb 2006 20:42:33 +0000 (20:42 +0000)]
Make sure that weak functions are aligned properly

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26181 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDuh
Evan Cheng [Tue, 14 Feb 2006 20:37:37 +0000 (20:37 +0000)]
Duh

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26180 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove -disable-x86-sse
Evan Cheng [Tue, 14 Feb 2006 20:30:14 +0000 (20:30 +0000)]
Remove -disable-x86-sse

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26179 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoadd an assert
Chris Lattner [Tue, 14 Feb 2006 20:14:17 +0000 (20:14 +0000)]
add an assert

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26178 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoKeep to < 80 cols
Evan Cheng [Tue, 14 Feb 2006 20:12:38 +0000 (20:12 +0000)]
Keep to < 80 cols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26177 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMissed a break so memcpy cases fell through to memset. Doh.
Evan Cheng [Tue, 14 Feb 2006 19:45:56 +0000 (19:45 +0000)]
Missed a break so memcpy cases fell through to memset. Doh.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26176 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFixed a build breakage.
Evan Cheng [Tue, 14 Feb 2006 09:11:59 +0000 (09:11 +0000)]
Fixed a build breakage.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26175 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRename maxStoresPerMemSet to maxStoresPerMemset, etc.
Evan Cheng [Tue, 14 Feb 2006 08:38:30 +0000 (08:38 +0000)]
Rename maxStoresPerMemSet to maxStoresPerMemset, etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26174 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a entry.
Evan Cheng [Tue, 14 Feb 2006 08:25:32 +0000 (08:25 +0000)]
Add a entry.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26173 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSet maxStoresPerMemSet to 16. Ditto for maxStoresPerMemCpy and
Evan Cheng [Tue, 14 Feb 2006 08:25:08 +0000 (08:25 +0000)]
Set maxStoresPerMemSet to 16. Ditto for maxStoresPerMemCpy and
maxStoresPerMemMove. Although the last one is not used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26172 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoExpand memset dst, c, size to a series of stores if size falls below the
Evan Cheng [Tue, 14 Feb 2006 08:22:34 +0000 (08:22 +0000)]
Expand memset dst, c, size to a series of stores if size falls below the
target specific theshold, e.g. 16 for x86.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26171 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoEnable SSE (for the right subtargets)
Evan Cheng [Tue, 14 Feb 2006 08:07:58 +0000 (08:07 +0000)]
Enable SSE (for the right subtargets)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26169 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMatch changes to unix build system.
Jeff Cohen [Tue, 14 Feb 2006 06:12:08 +0000 (06:12 +0000)]
Match changes to unix build system.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26167 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonow that libcalls don't suck, we can remove this hack
Chris Lattner [Tue, 14 Feb 2006 05:39:35 +0000 (05:39 +0000)]
now that libcalls don't suck, we can remove this hack

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26164 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdjust to new style "generated files in CVS" mechanism for lex output
Chris Lattner [Tue, 14 Feb 2006 05:16:35 +0000 (05:16 +0000)]
Adjust to new style "generated files in CVS" mechanism for lex output

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26163 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoadjust to new style of handling lexer changes
Chris Lattner [Tue, 14 Feb 2006 05:14:46 +0000 (05:14 +0000)]
adjust to new style of handling lexer changes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26162 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdjust to new form of handling lexer dependencies, this way shouldn't have
Chris Lattner [Tue, 14 Feb 2006 05:13:13 +0000 (05:13 +0000)]
Adjust to new form of handling lexer dependencies, this way shouldn't have
the problems the old way did.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26161 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoImplement an alternative way of handling generated lex files in CVS. This
Chris Lattner [Tue, 14 Feb 2006 05:12:00 +0000 (05:12 +0000)]
Implement an alternative way of handling generated lex files in CVS.  This
should solve the "updating cvs when .l files change give me conflict markers
that break my build" issue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26160 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoWrap a couple more long lines
Chris Lattner [Tue, 14 Feb 2006 04:27:15 +0000 (04:27 +0000)]
Wrap a couple more long lines

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26159 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agowrap long lines
Chris Lattner [Tue, 14 Feb 2006 04:25:54 +0000 (04:25 +0000)]
wrap long lines

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26158 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUse statistics to keep track of what flavors of loops we are unswitching
Chris Lattner [Tue, 14 Feb 2006 01:01:41 +0000 (01:01 +0000)]
Use statistics to keep track of what flavors of loops we are unswitching

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26157 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix a latent bug in the call sequence handling stuff. Some targets (e.g. x86)
Chris Lattner [Tue, 14 Feb 2006 00:55:02 +0000 (00:55 +0000)]
Fix a latent bug in the call sequence handling stuff.  Some targets (e.g. x86)
create these nodes with flag results.  Remember that we legalized them.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26156 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoImplement Instcombine/and.ll:test34
Chris Lattner [Mon, 13 Feb 2006 23:07:23 +0000 (23:07 +0000)]
Implement Instcombine/and.ll:test34

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26155 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew testcase
Chris Lattner [Mon, 13 Feb 2006 23:07:02 +0000 (23:07 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26154 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix typo that caused build failures for things trying to use m_Or.
Chris Lattner [Mon, 13 Feb 2006 23:06:39 +0000 (23:06 +0000)]
Fix typo that caused build failures for things trying to use m_Or.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26153 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIf any of the sign extended bits are demanded, the input sign bit is demanded
Chris Lattner [Mon, 13 Feb 2006 22:41:07 +0000 (22:41 +0000)]
If any of the sign extended bits are demanded, the input sign bit is demanded
for a sign extension.

This fixes InstCombine/2006-02-13-DemandedMiscompile.ll and Ptrdist/bc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26152 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agotestcase reduced from Ptrdist/bc that is miscompiled by recent instcombine changes.
Chris Lattner [Mon, 13 Feb 2006 22:31:50 +0000 (22:31 +0000)]
testcase reduced from Ptrdist/bc that is miscompiled by recent instcombine changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26151 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAnother hack due to allowing multiple symbols with the same name.
Chris Lattner [Mon, 13 Feb 2006 22:22:42 +0000 (22:22 +0000)]
Another hack due to allowing multiple symbols with the same name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26150 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAnother work around for the 'symbols with different types can have the same
Chris Lattner [Mon, 13 Feb 2006 21:43:26 +0000 (21:43 +0000)]
Another work around for the 'symbols with different types can have the same
name' issue.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26149 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoimproved zap discovery
Andrew Lenharth [Mon, 13 Feb 2006 18:52:29 +0000 (18:52 +0000)]
improved zap discovery

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26148 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agotest for improved zap discovery
Andrew Lenharth [Mon, 13 Feb 2006 18:52:01 +0000 (18:52 +0000)]
test for improved zap discovery

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26147 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSync up the tag numbers with gcc4.
Jim Laskey [Mon, 13 Feb 2006 16:56:43 +0000 (16:56 +0000)]
Sync up the tag numbers with gcc4.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26146 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRename to better reflect usage (current and planned.)
Jim Laskey [Mon, 13 Feb 2006 12:50:39 +0000 (12:50 +0000)]
Rename to better reflect usage (current and planned.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26145 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoCompletely rewrite libcall insertion by the legalizer, providing the
Chris Lattner [Mon, 13 Feb 2006 09:18:02 +0000 (09:18 +0000)]
Completely rewrite libcall insertion by the legalizer, providing the
following handy-dandy properties:

1. it is always correct now
2. it is much faster than before
3. it is easier to understand

This implementation builds off of the recent simplifications of the
legalizer that made it single-pass instead of iterative.

This fixes JM/lencod, JM/ldecod, and
CodeGen/Generic/2006-02-12-InsertLibcall.ll (at least on PPC).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26144 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSwitch targets over to using SelectionDAG::getCALLSEQ_START to create
Chris Lattner [Mon, 13 Feb 2006 09:00:43 +0000 (09:00 +0000)]
Switch targets over to using SelectionDAG::getCALLSEQ_START to create
CALLSEQ_START nodes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26143 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSwitch to using getCALLSEQ_START instead of using our own creation calls
Chris Lattner [Mon, 13 Feb 2006 08:55:29 +0000 (08:55 +0000)]
Switch to using getCALLSEQ_START instead of using our own creation calls

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26142 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd a method
Chris Lattner [Mon, 13 Feb 2006 08:54:46 +0000 (08:54 +0000)]
Add a method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26141 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agothis passes now, due to Nate's recent efforts
Chris Lattner [Mon, 13 Feb 2006 07:26:36 +0000 (07:26 +0000)]
this passes now, due to Nate's recent efforts

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26140 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReduce this testcase a bit more, with the help of llvm-extract and some hand tweaks
Chris Lattner [Mon, 13 Feb 2006 07:02:50 +0000 (07:02 +0000)]
Reduce this testcase a bit more, with the help of llvm-extract and some hand tweaks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26139 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBe careful not to request or look at bits shifted in from outside the size
Chris Lattner [Mon, 13 Feb 2006 06:09:08 +0000 (06:09 +0000)]
Be careful not to request or look at bits shifted in from outside the size
of the input.  This fixes the mediabench/gsm/toast failure last night.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26138 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdded a test case for a libcall insertion bug.
Evan Cheng [Sun, 12 Feb 2006 10:24:00 +0000 (10:24 +0000)]
Added a test case for a libcall insertion bug.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26137 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd missing patterns for andi. and andis., fixing test/Regression/CodeGen/
Nate Begeman [Sun, 12 Feb 2006 09:09:52 +0000 (09:09 +0000)]
Add missing patterns for andi. and andis., fixing test/Regression/CodeGen/
PowerPC/and-imm.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26136 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoremove some more dead special case code
Chris Lattner [Sun, 12 Feb 2006 08:07:37 +0000 (08:07 +0000)]
remove some more dead special case code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26135 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoEliminate special case hacks that are superceded by general purpose hacks
Chris Lattner [Sun, 12 Feb 2006 08:02:11 +0000 (08:02 +0000)]
Eliminate special case hacks that are superceded by general purpose hacks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26134 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agotweaks
Chris Lattner [Sun, 12 Feb 2006 08:01:35 +0000 (08:01 +0000)]
tweaks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26133 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoThree changes:
Chris Lattner [Sun, 12 Feb 2006 02:07:56 +0000 (02:07 +0000)]
Three changes:
1. Teach GetConstantInType to handle boolean constants.
2. Teach instcombine to fold (compare X, CST) when X has known 0/1 bits.
   Testcase here: set.ll:test22
3. Improve the "(X >> c1) & C2 == 0" folding code to allow a noop cast
   between the shift and and.  More aggressive bitfolding for other reasons
   was turning signed shr's into unsigned shr's, leaving the noop cast in
   the way.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26131 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonew testcase
Chris Lattner [Sun, 12 Feb 2006 02:06:31 +0000 (02:06 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26130 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agomove a failing testcase from bit-tracking.ll to narrow.ll, and move the
Chris Lattner [Sun, 12 Feb 2006 02:02:43 +0000 (02:02 +0000)]
move a failing testcase from bit-tracking.ll to narrow.ll, and move the
xfail marker with it

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26129 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRevert my last patch. It too breaks stuff
Chris Lattner [Sun, 12 Feb 2006 01:59:10 +0000 (01:59 +0000)]
Revert my last patch.  It too breaks stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26128 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake these tests fail if opt crashes.
Chris Lattner [Sun, 12 Feb 2006 01:32:58 +0000 (01:32 +0000)]
Make these tests fail if opt crashes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26127 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix for my previously reverted patch
Chris Lattner [Sat, 11 Feb 2006 21:24:54 +0000 (21:24 +0000)]
Fix for my previously reverted patch

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26126 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUpdate comments to be actually accurate
Chris Lattner [Sat, 11 Feb 2006 09:37:07 +0000 (09:37 +0000)]
Update comments to be actually accurate

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26124 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoThis is implemented by the simplify-libcalls pass, not instcombine
Chris Lattner [Sat, 11 Feb 2006 09:33:28 +0000 (09:33 +0000)]
This is implemented by the simplify-libcalls pass, not instcombine

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26123 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoPort the recent innovations in ComputeMaskedBits to SimplifyDemandedBits.
Chris Lattner [Sat, 11 Feb 2006 09:31:47 +0000 (09:31 +0000)]
Port the recent innovations in ComputeMaskedBits to SimplifyDemandedBits.
This allows us to simplify on conditions where bits are not known, but they
are not demanded either!  This also fixes a couple of bugs in
ComputeMaskedBits that were exposed during this work.

In the future, swaths of instcombine should be removed, as this code
subsumes a bunch of ad-hockery.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26122 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agorevert my previous change, it exposed other problems.
Chris Lattner [Sat, 11 Feb 2006 08:47:47 +0000 (08:47 +0000)]
revert my previous change, it exposed other problems.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26121 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agofix storing booleans (grawp missed this one)
Duraid Madina [Sat, 11 Feb 2006 07:33:17 +0000 (07:33 +0000)]
fix storing booleans (grawp missed this one)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26120 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agonow short immediates will get matched (previously constants were all
Duraid Madina [Sat, 11 Feb 2006 07:32:15 +0000 (07:32 +0000)]
now short immediates will get matched (previously constants were all
triggering movl 64bit imm fat instructions)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26119 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake this check stricter. Disallow loop exit blocks from being shared by
Chris Lattner [Sat, 11 Feb 2006 02:13:17 +0000 (02:13 +0000)]
Make this check stricter.  Disallow loop exit blocks from being shared by
loops and their subloops.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26118 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoPrevent certain nodes that have already been selected from being folded into
Evan Cheng [Sat, 11 Feb 2006 02:05:36 +0000 (02:05 +0000)]
Prevent certain nodes that have already been selected from being folded into
X86 addressing mode. Currently we do not allow any node whose target node
produces a chain as well as any node that is at the root of the addressing
mode expression tree.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26117 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoremove dead expr
Chris Lattner [Sat, 11 Feb 2006 01:43:37 +0000 (01:43 +0000)]
remove dead expr

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26116 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReorg for integration with gcc4. Old style debug info will not be passed though
Jim Laskey [Sat, 11 Feb 2006 01:01:30 +0000 (01:01 +0000)]
Reorg for integration with gcc4.  Old style debug info will not be passed though
to SelIDAG.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26115 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoimplement unswitching of loops with switch stmts and selects in them
Chris Lattner [Sat, 11 Feb 2006 00:43:37 +0000 (00:43 +0000)]
implement unswitching of loops with switch stmts and selects in them

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26114 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUpdate PHI nodes in successors of exit blocks.
Chris Lattner [Fri, 10 Feb 2006 23:26:14 +0000 (23:26 +0000)]
Update PHI nodes in successors of exit blocks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26113 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoReform the unswitching code in terms of edge splitting, not block splitting.
Chris Lattner [Fri, 10 Feb 2006 23:16:39 +0000 (23:16 +0000)]
Reform the unswitching code in terms of edge splitting, not block splitting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26112 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoNicer code. :-)
Evan Cheng [Fri, 10 Feb 2006 22:46:26 +0000 (22:46 +0000)]
Nicer code. :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26111 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdded X86 isel debugging stuff.
Evan Cheng [Fri, 10 Feb 2006 22:24:32 +0000 (22:24 +0000)]
Added X86 isel debugging stuff.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26110 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove a level of indirection.
Chris Lattner [Fri, 10 Feb 2006 21:32:11 +0000 (21:32 +0000)]
Remove a level of indirection.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26109 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix a case where UnswitchTrivialCondition broke critical edges with
Chris Lattner [Fri, 10 Feb 2006 19:08:15 +0000 (19:08 +0000)]
Fix a case where UnswitchTrivialCondition broke critical edges with
phi's in the successors

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26108 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUse the auto-generated call matcher. Remove a broken impl of the frameaddr/returnaddr
Chris Lattner [Fri, 10 Feb 2006 07:35:42 +0000 (07:35 +0000)]
Use the auto-generated call matcher.  Remove a broken impl of the frameaddr/returnaddr
intrinsics.

Autogen frameindex matcher

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26107 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUpdate to new-style flags usage, simplifying the .td file
Chris Lattner [Fri, 10 Feb 2006 06:58:25 +0000 (06:58 +0000)]
Update to new-style flags usage, simplifying the .td file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26106 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove a completed entry; add a new entry about fisttp op
Evan Cheng [Fri, 10 Feb 2006 05:48:15 +0000 (05:48 +0000)]
Remove a completed entry; add a new entry about fisttp op

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26105 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoadd some notes, move some code around. Implement unswitching of loops
Chris Lattner [Fri, 10 Feb 2006 02:30:37 +0000 (02:30 +0000)]
add some notes, move some code around.  Implement unswitching of loops
with branches on partially invariant computations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26104 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMove code around to be more logical, no functionality change.
Chris Lattner [Fri, 10 Feb 2006 02:01:22 +0000 (02:01 +0000)]
Move code around to be more logical, no functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26103 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoWhen unswitching a trivial loop, do admit we are doing it! :)
Chris Lattner [Fri, 10 Feb 2006 01:36:35 +0000 (01:36 +0000)]
When unswitching a trivial loop, do admit we are doing it! :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26102 91177308-0d34-0410-b5e6-96231b3b80d8