Evan Cheng
|
b463e81b83
|
Fix a selectcc lowering bug. Make a copy of X86ISD::CMP when folding it.
llvm-svn: 25596
|
2006-01-25 09:05:09 +00:00 |
|
Chris Lattner
|
8ddb0c3df8
|
Loosen up these checks to allow direct uses of ESP
llvm-svn: 25595
|
2006-01-25 08:00:36 +00:00 |
|
Chris Lattner
|
f2a2d62f48
|
use ESP directly, not a copy of ESP into some other register for fastcc calls
llvm-svn: 25584
|
2006-01-24 06:14:44 +00:00 |
|
Chris Lattner
|
c078165ea6
|
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.
llvm-svn: 25580
|
2006-01-24 05:17:12 +00:00 |
|
Chris Lattner
|
2873307819
|
Allow jit-beta to work
llvm-svn: 25578
|
2006-01-24 04:50:48 +00:00 |
|
Chris Lattner
|
aafc339b4e
|
Add explicit #includes of <iostream>
llvm-svn: 25515
|
2006-01-22 23:41:00 +00:00 |
|
Evan Cheng
|
2e4479d4a8
|
Rename fcmovae to fcmovnb and fcmova to fcmovnbe (following Intel manual).
Some assemblers can't recognize the aliases.
llvm-svn: 25494
|
2006-01-21 02:55:41 +00:00 |
|
Chris Lattner
|
eacfe56de8
|
LowerReturn now doesn't have to handle f32 returns.
llvm-svn: 25484
|
2006-01-20 18:41:25 +00:00 |
|
Evan Cheng
|
ffbc93d829
|
Stop doing that accidental commit.
llvm-svn: 25474
|
2006-01-20 01:14:05 +00:00 |
|
Evan Cheng
|
2b24240110
|
A few more SH{L|R}D peepholes.
llvm-svn: 25473
|
2006-01-20 01:13:30 +00:00 |
|
Evan Cheng
|
d2c0ccedd3
|
Didn't mean to commit the last one.
llvm-svn: 25469
|
2006-01-19 23:27:08 +00:00 |
|
Evan Cheng
|
e0f6454c5e
|
Added i16 SH{L|R}D patterns.
llvm-svn: 25468
|
2006-01-19 23:26:24 +00:00 |
|
Evan Cheng
|
680a8e070b
|
Avoid generating a redundant setcc.
llvm-svn: 25457
|
2006-01-19 08:52:46 +00:00 |
|
Evan Cheng
|
cfe9d47379
|
adc and sbb need an incoming flag to ensure it reads the carry flag
from add / sub.
llvm-svn: 25444
|
2006-01-19 06:53:20 +00:00 |
|
Evan Cheng
|
be2cf5f948
|
Two peepholes:
(or (x >> c) | (y << (32 - c))) ==> (shrd x, y, c)
(or (x << c) | (y >> (32 - c))) ==> (shld x, y, c)
llvm-svn: 25438
|
2006-01-19 01:56:29 +00:00 |
|
Evan Cheng
|
ddb170b73e
|
Didn't mean to check that in.
llvm-svn: 25436
|
2006-01-19 01:52:56 +00:00 |
|
Evan Cheng
|
aebece2f7b
|
A obvious typo
llvm-svn: 25435
|
2006-01-19 01:46:14 +00:00 |
|
Evan Cheng
|
92c122b26f
|
SRA shift amount must be in i8
llvm-svn: 25416
|
2006-01-18 09:26:46 +00:00 |
|
Evan Cheng
|
4d841aaa98
|
If a call return type is i1, insert a truncate from X86::AL to i1.
llvm-svn: 25415
|
2006-01-18 08:08:38 +00:00 |
|
Evan Cheng
|
208f5076a0
|
Fix lowering of calls which return f32 values.
llvm-svn: 25413
|
2006-01-17 21:58:21 +00:00 |
|
Evan Cheng
|
1e112de44a
|
Zero extending load from i1 to i8.
llvm-svn: 25391
|
2006-01-17 07:02:46 +00:00 |
|
Evan Cheng
|
759a96e1a3
|
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.
llvm-svn: 25386
|
2006-01-17 02:32:49 +00:00 |
|
Evan Cheng
|
53520a8cee
|
Added a FIXME comment about why FST is currently flagged to fpGETRESULT.
llvm-svn: 25381
|
2006-01-17 00:37:42 +00:00 |
|
Evan Cheng
|
3ce28c990a
|
Bug fixes: fpGETRESULT should produces a flag result and X86ISD::FST should
read a flag.
llvm-svn: 25378
|
2006-01-17 00:19:47 +00:00 |
|
Evan Cheng
|
e678b39014
|
More typo's
llvm-svn: 25375
|
2006-01-16 23:26:53 +00:00 |
|
Evan Cheng
|
f7c719fe10
|
Some typo's
llvm-svn: 25374
|
2006-01-16 22:48:46 +00:00 |
|
Evan Cheng
|
de33ca2831
|
Fix FP_TO_INT**_IN_MEM lowering.
llvm-svn: 25368
|
2006-01-16 21:21:29 +00:00 |
|
Chris Lattner
|
62ab456f6b
|
transfer some notes from my email to somewhere useful.
llvm-svn: 25361
|
2006-01-16 17:53:00 +00:00 |
|
Evan Cheng
|
fe83dd85c8
|
Added patterns for 8-bit multiply
llvm-svn: 25338
|
2006-01-15 10:05:20 +00:00 |
|
Chris Lattner
|
20f25dc8c2
|
Use the default lowering of ISD::DYNAMIC_STACKALLOC, delete now dead code.
llvm-svn: 25333
|
2006-01-15 09:00:21 +00:00 |
|
Chris Lattner
|
95882698e5
|
silence a warning
llvm-svn: 25322
|
2006-01-14 20:11:13 +00:00 |
|
Nate Begeman
|
85b2dc0c4e
|
bswap implementation
llvm-svn: 25312
|
2006-01-14 03:14:10 +00:00 |
|
Evan Cheng
|
d92410b194
|
A typo.
llvm-svn: 25307
|
2006-01-14 01:18:49 +00:00 |
|
Evan Cheng
|
4d9bab5789
|
Add truncstore i1 patterns.
llvm-svn: 25296
|
2006-01-13 21:45:19 +00:00 |
|
Chris Lattner
|
b839f31954
|
Fix a bug in my last X86 checkin, pointed out by cozmic
llvm-svn: 25293
|
2006-01-13 20:19:44 +00:00 |
|
Evan Cheng
|
a26ed7b9b2
|
LHS = X86ISD::CMOVcc LHS, RHS means LHS = RHS if cc. So the operands must be
flipped around.
llvm-svn: 25290
|
2006-01-13 19:51:46 +00:00 |
|
Chris Lattner
|
344642961e
|
Enable X86 support for savestack/restorestack
llvm-svn: 25278
|
2006-01-13 18:00:54 +00:00 |
|
Chris Lattner
|
80fed2d66e
|
expand unsupported stacksave/stackrestore nodes
llvm-svn: 25272
|
2006-01-13 02:42:53 +00:00 |
|
Evan Cheng
|
e43fbe0d93
|
Minor update.
llvm-svn: 25263
|
2006-01-13 01:20:42 +00:00 |
|
Evan Cheng
|
bed984a1c8
|
More typo's. I need new eye glasses...
llvm-svn: 25261
|
2006-01-13 01:17:24 +00:00 |
|
Evan Cheng
|
ae2915ac91
|
Oops. Typo.
llvm-svn: 25260
|
2006-01-13 01:06:49 +00:00 |
|
Evan Cheng
|
3f2ae15472
|
Fix a SETCC / BRCOND folding bug.
llvm-svn: 25259
|
2006-01-13 01:03:02 +00:00 |
|
Evan Cheng
|
794a7cf6fe
|
Fix sint_to_fp (fild*) support.
llvm-svn: 25257
|
2006-01-12 22:54:21 +00:00 |
|
Evan Cheng
|
169206c67f
|
Specify transformation from GlobalAddress to TargetGlobalAddress and
ExternalSymbol to TargetExternalSymbol.
llvm-svn: 25253
|
2006-01-12 19:36:31 +00:00 |
|
Evan Cheng
|
978f5581c4
|
X86ISD::SETCC (e.g. SETEr) produces a flag (so multiple SETCC can be
linked together).
llvm-svn: 25247
|
2006-01-12 08:27:59 +00:00 |
|
Evan Cheng
|
dd45d29b56
|
* Materialize GlobalAddress and ExternalSym with MOV32ri rather than
LEA32r.
* Do not lower GlobalAddress to TargetGlobalAddress. Let isel does it.
llvm-svn: 25246
|
2006-01-12 07:56:47 +00:00 |
|
Evan Cheng
|
5841005bdf
|
Added ROTL and ROTR.
llvm-svn: 25232
|
2006-01-11 23:20:05 +00:00 |
|
Evan Cheng
|
66540aa32c
|
Support for MEMCPY and MEMSET.
llvm-svn: 25226
|
2006-01-11 22:15:48 +00:00 |
|
Evan Cheng
|
3c3391632d
|
Select DYNAMIC_STACKALLOC
llvm-svn: 25225
|
2006-01-11 22:15:18 +00:00 |
|
Nate Begeman
|
cff96008ac
|
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
llvm-svn: 25222
|
2006-01-11 21:21:00 +00:00 |
|