oota-llvm.git
18 years agoimplement stacksave/stackrestore on PPC
Chris Lattner [Fri, 13 Jan 2006 17:52:03 +0000 (17:52 +0000)]
implement stacksave/stackrestore on PPC

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

18 years agoIf a target specified a stack pointer with setStackPointerRegisterToSaveRestore,
Chris Lattner [Fri, 13 Jan 2006 17:48:44 +0000 (17:48 +0000)]
If a target specified a stack pointer with setStackPointerRegisterToSaveRestore,
lower STACKSAVE/STACKRESTORE into a copy from/to that register.

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

18 years agoProvide an interface for Targets to specify their stack pointer register
Chris Lattner [Fri, 13 Jan 2006 17:47:52 +0000 (17:47 +0000)]
Provide an interface for Targets to specify their stack pointer register
for llvm.stacksave/restore.

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

18 years agodon't be a doofus - this fixes storing bools
Duraid Madina [Fri, 13 Jan 2006 10:28:25 +0000 (10:28 +0000)]
don't be a doofus - this fixes storing bools

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

18 years agoCompile llvm.stacksave/restore into STACKSAVE/STACKRESTORE nodes, and allow
Chris Lattner [Fri, 13 Jan 2006 02:50:02 +0000 (02:50 +0000)]
Compile llvm.stacksave/restore into STACKSAVE/STACKRESTORE nodes, and allow
targets to custom expand them as they desire.

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

18 years agoexpand unsupported stacksave/stackrestore nodes
Chris Lattner [Fri, 13 Jan 2006 02:42:53 +0000 (02:42 +0000)]
expand unsupported stacksave/stackrestore nodes

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

18 years agonew nodes
Chris Lattner [Fri, 13 Jan 2006 02:40:58 +0000 (02:40 +0000)]
new nodes

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

18 years agoadd stacksave/stackrestore nodes
Chris Lattner [Fri, 13 Jan 2006 02:39:42 +0000 (02:39 +0000)]
add stacksave/stackrestore nodes

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

18 years agotestcase for the llvm.stacksave/llvm.stackrestore intrinsics.
Chris Lattner [Fri, 13 Jan 2006 02:25:08 +0000 (02:25 +0000)]
testcase for the llvm.stacksave/llvm.stackrestore intrinsics.

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

18 years agoAdd "support" for stacksave/stackrestore to the dag isel
Chris Lattner [Fri, 13 Jan 2006 02:24:42 +0000 (02:24 +0000)]
Add "support" for stacksave/stackrestore to the dag isel

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

18 years agoAdd "support" for the llvm.stacksave/stackrestore intrinsics, this is
Chris Lattner [Fri, 13 Jan 2006 02:22:08 +0000 (02:22 +0000)]
Add "support" for the llvm.stacksave/stackrestore intrinsics, this is
used by the C backend.

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

18 years agoAdd recognition and verification of new llvm.stacksave/llvm.stackrestore intrinsics
Chris Lattner [Fri, 13 Jan 2006 02:15:39 +0000 (02:15 +0000)]
Add recognition and verification of new llvm.stacksave/llvm.stackrestore intrinsics

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

18 years agoadd new llvm.stacksave/llvm.stackrestore intrinsics
Chris Lattner [Fri, 13 Jan 2006 02:15:02 +0000 (02:15 +0000)]
add new llvm.stacksave/llvm.stackrestore intrinsics

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

18 years agoAdd llvm.stacksave and llvm.stackrestore.
Chris Lattner [Fri, 13 Jan 2006 02:03:13 +0000 (02:03 +0000)]
Add llvm.stacksave and llvm.stackrestore.

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

18 years agoMinor update.
Evan Cheng [Fri, 13 Jan 2006 01:20:42 +0000 (01:20 +0000)]
Minor update.

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

18 years agovoid* is not legal in LLVM.
Chris Lattner [Fri, 13 Jan 2006 01:20:27 +0000 (01:20 +0000)]
void* is not legal in LLVM.

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

18 years agoMore typo's. I need new eye glasses...
Evan Cheng [Fri, 13 Jan 2006 01:17:24 +0000 (01:17 +0000)]
More typo's. I need new eye glasses...

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

18 years agoOops. Typo.
Evan Cheng [Fri, 13 Jan 2006 01:06:49 +0000 (01:06 +0000)]
Oops. Typo.

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

18 years agoFix a SETCC / BRCOND folding bug.
Evan Cheng [Fri, 13 Jan 2006 01:03:02 +0000 (01:03 +0000)]
Fix a SETCC / BRCOND folding bug.

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

18 years agoTest case for a SETCC / BRCOND folding bug.
Evan Cheng [Fri, 13 Jan 2006 01:02:22 +0000 (01:02 +0000)]
Test case for a SETCC / BRCOND folding bug.

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

18 years agoFix sint_to_fp (fild*) support.
Evan Cheng [Thu, 12 Jan 2006 22:54:21 +0000 (22:54 +0000)]
Fix sint_to_fp (fild*) support.

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

18 years agoAdd a simple missing fold to produce this:
Chris Lattner [Thu, 12 Jan 2006 20:22:43 +0000 (20:22 +0000)]
Add a simple missing fold to produce this:

        subfic r3, r2, 33

instead of this:

        subfic r2, r2, 32
        addi r3, r2, 1

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

18 years agoSpecify transformation from GlobalAddress to TargetGlobalAddress and
Evan Cheng [Thu, 12 Jan 2006 19:36:31 +0000 (19:36 +0000)]
Specify transformation from GlobalAddress to TargetGlobalAddress and
ExternalSymbol to TargetExternalSymbol.

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

18 years agoAllow transformation from GlobalAddress to TargetGlobalAddress and
Evan Cheng [Thu, 12 Jan 2006 19:35:54 +0000 (19:35 +0000)]
Allow transformation from GlobalAddress to TargetGlobalAddress and
ExternalSymbol to TargetExternalSymbol.

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

18 years agoIf using __main, emit global ctor/dtor list like any other global
Chris Lattner [Thu, 12 Jan 2006 19:17:23 +0000 (19:17 +0000)]
If using __main, emit global ctor/dtor list like any other global

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

18 years agoDon't create rotate instructions in unsupported types, because we don't have
Chris Lattner [Thu, 12 Jan 2006 18:57:33 +0000 (18:57 +0000)]
Don't create rotate instructions in unsupported types, because we don't have
promote/expand code yet.  This fixes the 177.mesa failure on PPC.

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

18 years agoFix branches on FP compares
Chris Lattner [Thu, 12 Jan 2006 17:05:32 +0000 (17:05 +0000)]
Fix branches on FP compares

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

18 years agoPatch #10 from Saem:
Chris Lattner [Thu, 12 Jan 2006 16:48:23 +0000 (16:48 +0000)]
Patch #10 from Saem:
"Extracts a few more methods, reduces some redundancy in the code at
the same time."

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

18 years agoX86ISD::SETCC (e.g. SETEr) produces a flag (so multiple SETCC can be
Evan Cheng [Thu, 12 Jan 2006 08:27:59 +0000 (08:27 +0000)]
X86ISD::SETCC (e.g. SETEr) produces a flag (so multiple SETCC can be
linked together).

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

18 years ago* Materialize GlobalAddress and ExternalSym with MOV32ri rather than
Evan Cheng [Thu, 12 Jan 2006 07:56:47 +0000 (07:56 +0000)]
* Materialize GlobalAddress and ExternalSym with MOV32ri rather than
  LEA32r.
* Do not lower GlobalAddress to TargetGlobalAddress. Let isel does it.

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

18 years agoGlobalAddress -> TargetGlobalAddress; ExternalSymbol -> TargetExternalSymbol
Evan Cheng [Thu, 12 Jan 2006 07:54:57 +0000 (07:54 +0000)]
GlobalAddress -> TargetGlobalAddress; ExternalSymbol -> TargetExternalSymbol

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

18 years agofix a bug in my previous checkin
Chris Lattner [Thu, 12 Jan 2006 07:38:04 +0000 (07:38 +0000)]
fix a bug in my previous checkin

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

18 years agoGive V8ISD nodes symbolic names in dumps
Chris Lattner [Thu, 12 Jan 2006 07:31:15 +0000 (07:31 +0000)]
Give V8ISD nodes symbolic names in dumps

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

18 years agoConvert the verifier over to use ETForest instead of DominatorSet. Patch
Chris Lattner [Thu, 12 Jan 2006 06:17:59 +0000 (06:17 +0000)]
Convert the verifier over to use ETForest instead of DominatorSet.  Patch
by Daniel Berlin

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

18 years agosabre's (correct) fix means these guys need to be flagged as well (else
Duraid Madina [Thu, 12 Jan 2006 03:28:40 +0000 (03:28 +0000)]
sabre's (correct) fix means these guys need to be flagged as well (else
the scheduler will complain)

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

18 years agoverily, sabre did leave
Duraid Madina [Thu, 12 Jan 2006 02:50:34 +0000 (02:50 +0000)]
verily, sabre did leave

and yea! Saem said "ARRR."

meanwhile, the pinksias and the campfires and the ET forests glowed.

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

18 years agoahem :)
Chris Lattner [Thu, 12 Jan 2006 02:05:36 +0000 (02:05 +0000)]
ahem :)

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

18 years agothese cases are autogenerated
Chris Lattner [Thu, 12 Jan 2006 02:01:45 +0000 (02:01 +0000)]
these cases are autogenerated

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

18 years agoremove dead code
Chris Lattner [Thu, 12 Jan 2006 01:54:15 +0000 (01:54 +0000)]
remove dead code

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

18 years agoGoodbye PPC pattern isel. You have served us well, but it is now time for
Chris Lattner [Thu, 12 Jan 2006 01:46:07 +0000 (01:46 +0000)]
Goodbye PPC pattern isel.  You have served us well, but it is now time for
you to ride off into the sunset.

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

18 years agoFix an itanium call lowering bug for duraid
Chris Lattner [Thu, 12 Jan 2006 01:33:08 +0000 (01:33 +0000)]
Fix an itanium call lowering bug for duraid

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

18 years agoinvert the sense of this switch and its name
Chris Lattner [Thu, 12 Jan 2006 01:28:56 +0000 (01:28 +0000)]
invert the sense of this switch and its name

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

18 years agoMissed a spot.
Nate Begeman [Wed, 11 Jan 2006 23:20:28 +0000 (23:20 +0000)]
Missed a spot.

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

18 years agoAdded ROTL and ROTR.
Evan Cheng [Wed, 11 Jan 2006 23:20:05 +0000 (23:20 +0000)]
Added ROTL and ROTR.

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

18 years agoFix an off-by-one error that Nate's eagle eyes caught
Chris Lattner [Wed, 11 Jan 2006 23:16:29 +0000 (23:16 +0000)]
Fix an off-by-one error that Nate's eagle eyes caught

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

18 years agoUse the auto-insert BuildMI constructor to avoid an explicit insert. No
Chris Lattner [Wed, 11 Jan 2006 23:07:57 +0000 (23:07 +0000)]
Use the auto-insert BuildMI constructor to avoid an explicit insert.  No
functionality change, just code cleanup.

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

18 years agoIf a function has a non-zero sized frame, use an add to adjust the stack
Chris Lattner [Wed, 11 Jan 2006 23:03:54 +0000 (23:03 +0000)]
If a function has a non-zero sized frame, use an add to adjust the stack
pointer in the epilog, not a load.

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

18 years agoAdd testcase for rotate by register and rotate by immediate
Nate Begeman [Wed, 11 Jan 2006 22:58:12 +0000 (22:58 +0000)]
Add testcase for rotate by register and rotate by immediate

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

18 years agoSome minor fixes.
Evan Cheng [Wed, 11 Jan 2006 22:16:13 +0000 (22:16 +0000)]
Some minor fixes.

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

18 years agoSupport for MEMCPY and MEMSET.
Evan Cheng [Wed, 11 Jan 2006 22:15:48 +0000 (22:15 +0000)]
Support for MEMCPY and MEMSET.

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

18 years agoSelect DYNAMIC_STACKALLOC
Evan Cheng [Wed, 11 Jan 2006 22:15:18 +0000 (22:15 +0000)]
Select DYNAMIC_STACKALLOC

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

18 years agoAllow custom lowering of DYNAMIC_STACKALLOC.
Evan Cheng [Wed, 11 Jan 2006 22:14:47 +0000 (22:14 +0000)]
Allow custom lowering of DYNAMIC_STACKALLOC.

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

18 years agoignore register #0
Evan Cheng [Wed, 11 Jan 2006 22:13:48 +0000 (22:13 +0000)]
ignore register #0

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

18 years agoAdd bswap, rotl, and rotr nodes
Nate Begeman [Wed, 11 Jan 2006 21:21:00 +0000 (21:21 +0000)]
Add bswap, rotl, and rotr nodes
Add dag combiner code to recognize rotl, rotr
Add ppc code to match rotl

Targets should add rotl/rotr patterns if they have them

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

18 years agoFix calls that need to store values in stack slots, to not copy the stack
Chris Lattner [Wed, 11 Jan 2006 19:55:07 +0000 (19:55 +0000)]
Fix calls that need to store values in stack slots, to not copy the stack
pointer.  This allows us to emit stuff like this:

        li r10, 0
        stw r10, 56(r1)
        or r3, r10, r10
        or r4, r10, r10
        or r5, r10, r10
        or r6, r10, r10
        or r7, r10, r10
        or r8, r10, r10
        or r9, r10, r10
        bl L_bar$stub

instead of this:

        or r2, r1, r1     ;; Extraneous copy.
        li r10, 0
        stw r10, 56(r2)
        or r3, r10, r10
        or r4, r10, r10
        or r5, r10, r10
        or r6, r10, r10
        or r7, r10, r10
        or r8, r10, r10
        or r9, r10, r10
        bl L_bar$stub

wowness.

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

18 years agotblgen does this now
Chris Lattner [Wed, 11 Jan 2006 19:53:22 +0000 (19:53 +0000)]
tblgen does this now

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

18 years agoThis is no longer needed
Chris Lattner [Wed, 11 Jan 2006 19:52:46 +0000 (19:52 +0000)]
This is no longer needed

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

18 years agoAlways select target registers to themselves
Chris Lattner [Wed, 11 Jan 2006 19:52:27 +0000 (19:52 +0000)]
Always select target registers to themselves

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

18 years agoDead FP arguments still use an incoming FP reg. This fixes
Chris Lattner [Wed, 11 Jan 2006 18:21:25 +0000 (18:21 +0000)]
Dead FP arguments still use an incoming FP reg.  This fixes
Regression/CodeGen/PowerPC/2006-01-11-darwin-fp-argument.ll, which was
distilled from a miscompilation in 252.eon.

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

18 years agoTestcase the PPC backend is miscompiling.
Chris Lattner [Wed, 11 Jan 2006 18:15:37 +0000 (18:15 +0000)]
Testcase the PPC backend is miscompiling.

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

18 years agoVisual Studio is feeling left out again.
Jeff Cohen [Wed, 11 Jan 2006 16:21:53 +0000 (16:21 +0000)]
Visual Studio is feeling left out again.

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

18 years agoFix VC++ compilation error.
Jeff Cohen [Wed, 11 Jan 2006 16:21:23 +0000 (16:21 +0000)]
Fix VC++ compilation error.

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

18 years agoPatch #9 from Saem:
Chris Lattner [Wed, 11 Jan 2006 16:14:49 +0000 (16:14 +0000)]
Patch #9 from Saem:

"Cut up the runPasses method into smaller pieces.  The small private
helpers should  be easier to deal with when code shuffling arising
from creating the new specialised batchers, not to mention, they're
much easier to understand.

I inlined them, in case function call overhead would be noticeable --
doubtful."

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

18 years agoUse Evan's outflag stuff to implement V8cmpicc. This allows us to write a
Chris Lattner [Wed, 11 Jan 2006 07:49:38 +0000 (07:49 +0000)]
Use Evan's outflag stuff to implement V8cmpicc.  This allows us to write a
pattern for SUBCCrr, and makes it trivial to add support for SUBCCri, eliminating
an instruction in the common "setcc X, imm" case.

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

18 years agoFix a bug in i32->f64 conversion lowering
Chris Lattner [Wed, 11 Jan 2006 07:27:40 +0000 (07:27 +0000)]
Fix a bug in i32->f64 conversion lowering

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

18 years agoUnbreak ret void :-/
Chris Lattner [Wed, 11 Jan 2006 07:15:43 +0000 (07:15 +0000)]
Unbreak ret void   :-/

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

18 years agoWrite this pattern in canonical form, allowing more patterns to match.
Chris Lattner [Wed, 11 Jan 2006 07:14:01 +0000 (07:14 +0000)]
Write this pattern in canonical form, allowing more patterns to match.
This implements Regression/CodeGen/SparcV8/xnor.ll

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

18 years agocatch all forms of xnor
Chris Lattner [Wed, 11 Jan 2006 07:13:22 +0000 (07:13 +0000)]
catch all forms of xnor

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

18 years ago* Add special entry code main() (to set x87 to 64-bit precision).
Evan Cheng [Wed, 11 Jan 2006 06:09:51 +0000 (06:09 +0000)]
* Add special entry code main() (to set x87 to 64-bit precision).
* Allow a register node as SelectAddr() base.
* ExternalSymbol -> TargetExternalSymbol as direct function callee.
* Use X86::ESP register rather than CopyFromReg(X86::ESP) as stack ptr for
  call parmater passing.

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

18 years agoSimple is good. CVS is for revision control, not file headers
Chris Lattner [Wed, 11 Jan 2006 05:39:45 +0000 (05:39 +0000)]
Simple is good.  CVS is for revision control, not file headers

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

18 years agoSimple is good
Chris Lattner [Wed, 11 Jan 2006 05:38:55 +0000 (05:38 +0000)]
Simple is good

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

18 years agoSimple is good, CVS log is for history, not the silly credits block
Chris Lattner [Wed, 11 Jan 2006 05:38:15 +0000 (05:38 +0000)]
Simple is good, CVS log is for history, not the silly credits block

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

18 years agoPreserve and update ETForest. Patch by Daniel Berlin
Chris Lattner [Wed, 11 Jan 2006 05:11:13 +0000 (05:11 +0000)]
Preserve and update ETForest.  Patch by Daniel Berlin

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

18 years agoSwitch these to using ETForest instead of DominatorSet to compute itself.
Chris Lattner [Wed, 11 Jan 2006 05:10:20 +0000 (05:10 +0000)]
Switch these to using ETForest instead of DominatorSet to compute itself.
Patch written by Daniel Berlin!

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

18 years agoSwitch this to using ETForest instead of DominatorSet to compute itself.
Chris Lattner [Wed, 11 Jan 2006 05:09:40 +0000 (05:09 +0000)]
Switch this to using ETForest instead of DominatorSet to compute itself.
Patch written by Daniel Berlin!

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

18 years agoSwitch loopinfo to using ETForest instead of DominatorSet to compute itself.Patch...
Chris Lattner [Wed, 11 Jan 2006 05:08:57 +0000 (05:08 +0000)]
Switch loopinfo to using ETForest instead of DominatorSet to compute itself.Patch by Daniel Berlin!

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

18 years agoSwitch loopinfo to using ETForest instead of DominatorSet to compute itself.
Chris Lattner [Wed, 11 Jan 2006 05:08:29 +0000 (05:08 +0000)]
Switch loopinfo to using ETForest instead of DominatorSet to compute itself.
Patch by Daniel Berlin!

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

18 years agocleanup GETFD
Duraid Madina [Wed, 11 Jan 2006 03:50:40 +0000 (03:50 +0000)]
cleanup GETFD

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

18 years agothis pattern was bogus
Andrew Lenharth [Wed, 11 Jan 2006 03:33:06 +0000 (03:33 +0000)]
this pattern was bogus

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

18 years agoRegenerate these files. FreeBSD apparently has issues with the version of
Chris Lattner [Wed, 11 Jan 2006 02:07:51 +0000 (02:07 +0000)]
Regenerate these files.  FreeBSD apparently has issues with the version of
lex/bison Rob used.

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

18 years agothis just might work
Duraid Madina [Wed, 11 Jan 2006 01:38:07 +0000 (01:38 +0000)]
this just might work

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

18 years agoEmit an error instead of an assertion if trying to do bogus things in result patterns.
Chris Lattner [Wed, 11 Jan 2006 01:33:49 +0000 (01:33 +0000)]
Emit an error instead of an assertion if trying to do bogus things in result patterns.

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

18 years agoadd support for selecting bools
Duraid Madina [Wed, 11 Jan 2006 01:21:12 +0000 (01:21 +0000)]
add support for selecting bools

FIXME: this is commented out because it makes tblgen go a bit fruity

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

18 years agoimplement FP_REG_KILL insertion for the dag-dag instruction selector
Chris Lattner [Wed, 11 Jan 2006 01:15:34 +0000 (01:15 +0000)]
implement FP_REG_KILL insertion for the dag-dag instruction selector

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

18 years agoFit into 80 cols
Chris Lattner [Wed, 11 Jan 2006 00:46:55 +0000 (00:46 +0000)]
Fit into 80 cols

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

18 years agoSSE cmov support.
Evan Cheng [Wed, 11 Jan 2006 00:33:36 +0000 (00:33 +0000)]
SSE cmov support.

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

18 years ago* fp to sint patterns.
Evan Cheng [Tue, 10 Jan 2006 22:22:02 +0000 (22:22 +0000)]
* fp to sint patterns.
* fiadd, fisub, etc.

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

18 years agoFP_TO_INT*_IN_MEM and x87 FP Select support.
Evan Cheng [Tue, 10 Jan 2006 20:26:56 +0000 (20:26 +0000)]
FP_TO_INT*_IN_MEM and x87 FP Select support.

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

18 years agoAdded constant folding support for the extractelement operation.
Robert Bocchino [Tue, 10 Jan 2006 20:03:46 +0000 (20:03 +0000)]
Added constant folding support for the extractelement operation.

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

18 years agonew testcase for extractelement instruction
Chris Lattner [Tue, 10 Jan 2006 20:00:20 +0000 (20:00 +0000)]
new testcase for extractelement instruction

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

18 years agosilence a bogus warning
Chris Lattner [Tue, 10 Jan 2006 19:45:18 +0000 (19:45 +0000)]
silence a bogus warning

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

18 years agosilence a warning
Chris Lattner [Tue, 10 Jan 2006 19:43:26 +0000 (19:43 +0000)]
silence a warning

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

18 years agoExpanded the documentation for constant expressions to cover select
Robert Bocchino [Tue, 10 Jan 2006 19:31:34 +0000 (19:31 +0000)]
Expanded the documentation for constant expressions to cover select
and extractelement.

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

18 years agoInt immediate loading fix
Andrew Lenharth [Tue, 10 Jan 2006 19:12:47 +0000 (19:12 +0000)]
Int immediate loading fix

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

18 years agoAdded support for the extractelement operation.
Robert Bocchino [Tue, 10 Jan 2006 19:05:34 +0000 (19:05 +0000)]
Added support for the extractelement operation.

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

18 years agoAdded lower packed support for the extractelement operation.
Robert Bocchino [Tue, 10 Jan 2006 19:05:05 +0000 (19:05 +0000)]
Added lower packed support for the extractelement operation.

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

18 years agoAdded selection DAG support for the extractelement operation.
Robert Bocchino [Tue, 10 Jan 2006 19:04:57 +0000 (19:04 +0000)]
Added selection DAG support for the extractelement operation.

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

18 years agoAdded bytecode support for the extractelement operation.
Robert Bocchino [Tue, 10 Jan 2006 19:04:39 +0000 (19:04 +0000)]
Added bytecode support for the extractelement operation.

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

18 years agoAdded lexer and parser support for the extractelement operation.
Robert Bocchino [Tue, 10 Jan 2006 19:04:32 +0000 (19:04 +0000)]
Added lexer and parser support for the extractelement operation.

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

18 years agoAdded an instruction and constant expression for the extractelement
Robert Bocchino [Tue, 10 Jan 2006 19:04:13 +0000 (19:04 +0000)]
Added an instruction and constant expression for the extractelement
operation.

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