Chris Lattner
0f9f8c3759
Several non-functionality changing changes:
...
1. Use the varargs version of getOrInsertFunction to simplify code.
2. remove #include
3. Reduce the number of #ifdef's.
4. remove extraneous vertical whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25508 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-22 22:35:08 +00:00
Chris Lattner
a3818e6f9a
Fix a bug in a recent refactor that caused a bunch of programs to miscompile
...
or the compiler to crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25503 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 19:12:11 +00:00
Duraid Madina
19e5e141c1
insignificant, but next up is proper stack frame layout!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25497 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 14:27:19 +00:00
Chris Lattner
348e93c8f7
Fix CodeGen/PowerPC/2006-01-20-ShiftPartsCrash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25496 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 04:27: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
Evan Cheng
a9c2091cd3
Do some code refactoring on Jim's scheduler in preparation of the new list
...
scheduler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25493 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 02:32:06 +00:00
Chris Lattner
bc1c215453
trivial formatting improvement: don't insert extra blank lines between .comm
...
vars.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25492 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 01:35:26 +00:00
Jim Laskey
63ae85f194
Simplify search for abbreviations.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25491 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 01:13:18 +00:00
Jim Laskey
736832107b
Correct some simple errors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25490 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-21 00:59:54 +00:00
Jim Laskey
4002017e68
Right size integer values before emitting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25489 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 21:02:36 +00:00
Robert Bocchino
b78e8382e8
Make the C writer work with packed types. printContainedStructs is
...
still not quite right and will be fixed later.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25488 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 20:43:57 +00:00
Jim Laskey
d18e28964b
Reworked how Dwarf debug info entries and abbreviations are handled. Added
...
pubnames and debuy str sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25487 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 20:34:06 +00:00
Duraid Madina
bea99471c7
remove RET hack, add proper support for rets (watching out for ret voids)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25486 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 20:24:31 +00:00
Chris Lattner
14d9b20b78
Simplify CWriter::printContainedStructs, also allowing it to work with
...
PackedTypes as a side-effect.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25485 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 18:57:03 +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
Chris Lattner
a68d204843
remove some unintentionally committed code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25483 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 18:40:10 +00:00
Chris Lattner
4eebb60f84
If the target doesn't support f32 natively, insert the FP_EXTEND in target-indep
...
code, so that the LowerReturn code doesn't have to handle it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25482 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 18:38:32 +00:00
Robert Bocchino
7c2b7c7c75
Fixed InitializeMemory to handle ConstantPacked.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25481 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 18:18:40 +00:00
Chris Lattner
f690bc8c07
Remove dead expression.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25480 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 18:04:43 +00:00
Chris Lattner
75d3226b5e
Don't use invalidated use_iterator's. This fixes a crash compiling povray
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25479 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 18:01:41 +00:00
Duraid Madina
ecc1a1bb1e
fix sext breakage: now we correctly deal with functions that return
...
int vs uint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25478 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 16:10:05 +00:00
Duraid Madina
a7fb5bef55
fix storing bools! eek!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25476 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-20 03:40: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
Robert Bocchino
d900c6a8b3
ConstantFoldLoadThroughGEPConstantExpr wasn't handling pointers to
...
packed types correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25470 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 23:53:23 +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
Chris Lattner
a88eb9287e
add support for ConstantPacked to the linker
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25467 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 23:15:58 +00:00
Andrew Lenharth
394244717a
typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25464 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 21:10:38 +00:00
Andrew Lenharth
c6a335b72a
nasty nasty patterns
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25463 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 20:49:37 +00:00
Duraid Madina
12f1bea6e2
fix boolean XOR (which fixes up comparisons..)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25462 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 15:18:56 +00:00
Duraid Madina
95f59e1e76
BOOM!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25460 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 14:14:11 +00:00
Duraid Madina
c5f247089c
click click
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25459 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 14:13:11 +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
Reid Spencer
aa87e0523d
For PR696:
...
Don't do floor->floorf conversion if floorf is not available. This checks
the compiler's host, not its target, which is incorrect for cross-compilers
Not sure that's important as we don't build many cross-compilers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25456 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 08:36:56 +00:00
Duraid Madina
e7916e6986
fix calls that return f32
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25455 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 08:31:51 +00:00
Chris Lattner
bc528efa76
Implement casts.ll:test26: a cast from float -> double -> integer, doesn't
...
need the float->double part.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25452 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 07:40:22 +00:00
Chris Lattner
46030a6b0a
implement support for f32 arguments past the first 6 words
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25450 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 07:22:29 +00:00
Reid Spencer
e1e96c0820
1. Identify bytecode modules that have upgraded intrinsics by setting a
...
boolean flag if we read a function prototype that needs upgrading.
2. Don't upgrade the CallInst instruction until after its been inserted
into the basic block, and only if we know that we have seen an
upgraded intrinsic function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25448 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 07:02:16 +00:00
Reid Spencer
e559184d70
Don't forget about casting the result of an upgraded call to an intrinsic
...
in the case where it needs to cast back to a signed type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25447 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 07:00:29 +00:00
Reid Spencer
3e59546352
Add a flag to identify bytecode files that have intrinsic functions that
...
need to be upgraded.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25445 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 06:57:58 +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
Reid Spencer
ff696cc1fc
Make get_suffix faster by using a switch on getTypeID rather than a series
...
of comparisons on the various type objects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25441 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 05:37:27 +00:00
Evan Cheng
12f2274ba8
Another typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25440 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 04:54:52 +00:00
Chris Lattner
3cda14ff3e
add a note
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25439 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 02:09:38 +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
Reid Spencer
e812fb230a
Make sure intrinsic auto-upgrade is invoked correctly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25434 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 01:21:04 +00:00
Reid Spencer
d615bd9013
Don't accept the ctpop, cttz, or ctlz intrinsics with signed arguments. The
...
interface requires unsigned arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25433 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-19 01:20:03 +00:00