Jeff Cohen
|
9471c8a93b
|
Improve compatibility with VC2005, patch by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25661 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-26 20:41:32 +00:00 |
|
Chris Lattner
|
38f7373018
|
Improve compatibility with VC2005, patch by Morten Ofstad!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25653 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-26 19:55:20 +00:00 |
|
Evan Cheng
|
97c7fc351e
|
Added preliminary x86 subtarget support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25645 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-26 09:53:06 +00:00 |
|
Evan Cheng
|
67caa39e4c
|
Work around some x86 Darwin assembler bugs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25638 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-26 02:27:43 +00:00 |
|
Evan Cheng
|
9bba894596
|
When trying to fold X86::SETCC into a Select, make a copy if it has more than
one use. This allows more CMOV instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25634 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-26 02:13:10 +00:00 |
|
Evan Cheng
|
71fb9ad5d9
|
Remove the uses of STATUS flag register. Rely on node property SDNPInFlag,
SDNPOutFlag, and SDNPOptInFlag instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25629 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-26 00:29:36 +00:00 |
|
Nate Begeman
|
acc398c195
|
First part of bug 680:
Remove TLI.LowerVA* and replace it with SDNodes that are lowered the same
way as everything else.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25606 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-25 18:21:52 +00:00 |
|
Evan Cheng
|
0b2afbd58a
|
X86 prefer scheduling for reduced register pressure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25602 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-25 09:15:17 +00:00 |
|
Evan Cheng
|
0d718e9afc
|
Fix a selectcc lowering bug. Make a copy of X86ISD::CMP when folding it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25596 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-25 09:05:09 +00:00 |
|
Chris Lattner
|
31e63881b3
|
Loosen up these checks to allow direct uses of ESP
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25595 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-25 08:00:36 +00:00 |
|
Chris Lattner
|
91cacc810b
|
use ESP directly, not a copy of ESP into some other register for fastcc calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25584 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-24 06:14:44 +00:00 |
|
Chris Lattner
|
af63bb03c5
|
Emit the copies out of call return registers *after* the ISD::CALLSEQ_END
node, fixing fastcc and the case where a function has a frame pointer due
to dynamic allocas.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25580 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-24 05:17:12 +00:00 |
|
Chris Lattner
|
6da23db69f
|
Allow jit-beta to work
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25578 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-24 04:50:48 +00:00 |
|
Chris Lattner
|
2c2c6c61f1
|
Add explicit #includes of <iostream>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25515 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-22 23:41:00 +00:00 |
|
Evan Cheng
|
86556a5f42
|
Rename fcmovae to fcmovnb and fcmova to fcmovnbe (following Intel manual).
Some assemblers can't recognize the aliases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25494 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-21 02:55:41 +00:00 |
|
Chris Lattner
|
1f16ff6f0a
|
LowerReturn now doesn't have to handle f32 returns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25484 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-20 18:41:25 +00:00 |
|
Evan Cheng
|
98f5dab8a7
|
Stop doing that accidental commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25474 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-20 01:14:05 +00:00 |
|
Evan Cheng
|
21d5443934
|
A few more SH{L|R}D peepholes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25473 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-20 01:13:30 +00:00 |
|
Evan Cheng
|
cce47faf52
|
Didn't mean to commit the last one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25469 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 23:27:08 +00:00 |
|
Evan Cheng
|
956044cf03
|
Added i16 SH{L|R}D patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25468 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 23:26:24 +00:00 |
|
Evan Cheng
|
dc8d2ab3e9
|
Avoid generating a redundant setcc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25457 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 08:52:46 +00:00 |
|
Evan Cheng
|
41b6dc8dbe
|
adc and sbb need an incoming flag to ensure it reads the carry flag
from add / sub.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25444 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 06:53:20 +00:00 |
|
Evan Cheng
|
68b951a5e5
|
Two peepholes:
(or (x >> c) | (y << (32 - c))) ==> (shrd x, y, c)
(or (x << c) | (y >> (32 - c))) ==> (shld x, y, c)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25438 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 01:56:29 +00:00 |
|
Evan Cheng
|
d9c45e9af9
|
Didn't mean to check that in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25436 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 01:52:56 +00:00 |
|
Evan Cheng
|
b7b5706340
|
A obvious typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25435 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-19 01:46:14 +00:00 |
|
Evan Cheng
|
99fa0a102a
|
SRA shift amount must be in i8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25416 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-18 09:26:46 +00:00 |
|
Evan Cheng
|
68e5d084f1
|
If a call return type is i1, insert a truncate from X86::AL to i1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25415 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-18 08:08:38 +00:00 |
|
Evan Cheng
|
357c58efde
|
Fix lowering of calls which return f32 values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25413 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-17 21:58:21 +00:00 |
|
Evan Cheng
|
e5d9343377
|
Zero extending load from i1 to i8.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25391 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-17 07:02:46 +00:00 |
|
Evan Cheng
|
6892f28e99
|
SSE does not support i64 SINT_TO_FP (FP stack doesn't either, but we custom
expand it), so ask legalizer to expand i32 UINT_TO_FP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25386 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-17 02:32:49 +00:00 |
|
Evan Cheng
|
2059f884aa
|
Added a FIXME comment about why FST is currently flagged to fpGETRESULT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25381 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-17 00:37:42 +00:00 |
|
Evan Cheng
|
42ef0bc6fb
|
Bug fixes: fpGETRESULT should produces a flag result and X86ISD::FST should
read a flag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25378 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-17 00:19:47 +00:00 |
|
Evan Cheng
|
b5d0b0bae5
|
More typo's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25375 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-16 23:26:53 +00:00 |
|
Evan Cheng
|
8a3f4c75fa
|
Some typo's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25374 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-16 22:48:46 +00:00 |
|
Evan Cheng
|
0cc3945efe
|
Fix FP_TO_INT**_IN_MEM lowering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25368 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-16 21:21:29 +00:00 |
|
Chris Lattner
|
1db4b4f5c4
|
transfer some notes from my email to somewhere useful.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25361 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-16 17:53:00 +00:00 |
|
Evan Cheng
|
cf74a7c762
|
Added patterns for 8-bit multiply
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25338 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-15 10:05:20 +00:00 |
|
Chris Lattner
|
e112552b5a
|
Use the default lowering of ISD::DYNAMIC_STACKALLOC, delete now dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25333 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-15 09:00:21 +00:00 |
|
Chris Lattner
|
b47fad9892
|
silence a warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25322 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-14 20:11:13 +00:00 |
|
Nate Begeman
|
d88fc03602
|
bswap implementation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25312 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-14 03:14:10 +00:00 |
|
Evan Cheng
|
e3703d44e9
|
A typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25307 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-14 01:18:49 +00:00 |
|
Evan Cheng
|
b8414333ac
|
Add truncstore i1 patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25296 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 21:45:19 +00:00 |
|
Chris Lattner
|
052d2ff5dd
|
Fix a bug in my last X86 checkin, pointed out by cozmic
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25293 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 20:19:44 +00:00 |
|
Evan Cheng
|
e90da97f3e
|
LHS = X86ISD::CMOVcc LHS, RHS means LHS = RHS if cc. So the operands must be
flipped around.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25290 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 19:51:46 +00:00 |
|
Chris Lattner
|
9edba7605e
|
Enable X86 support for savestack/restorestack
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25278 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 18:00:54 +00:00 |
|
Chris Lattner
|
b99329e8a0
|
expand unsupported stacksave/stackrestore nodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25272 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 02:42:53 +00:00 |
|
Evan Cheng
|
e08c270623
|
Minor update.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25263 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 01:20:42 +00:00 |
|
Evan Cheng
|
80ebe38118
|
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
|
2006-01-13 01:17:24 +00:00 |
|
Evan Cheng
|
189d01e8cc
|
Oops. Typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25260 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 01:06:49 +00:00 |
|
Evan Cheng
|
1bcee3602e
|
Fix a SETCC / BRCOND folding bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25259 91177308-0d34-0410-b5e6-96231b3b80d8
|
2006-01-13 01:03:02 +00:00 |
|