Commit Graph

22160 Commits

Author SHA1 Message Date
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
Jeff Cohen
05ebc8d795 Make it even more portable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25605 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 17:18:50 +00:00
Jeff Cohen
44c687d0af Fix VC++ compilation error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25604 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 17:17:49 +00:00
Evan Cheng
7558b0e80c Default scheduling preference is SchedulingForLatency.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25603 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 09:15:54 +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
cd1419af1e Bottom up register usage reducing list scheduler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25601 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 09:14:32 +00:00
Evan Cheng
e0a5832374 Keep track of bottom / top element of a set of flagged nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25600 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 09:13:41 +00:00
Evan Cheng
3f23952404 If scheduler choice is the default (-sched=default), use target scheduling
preference to determine which scheduler to use. SchedulingForLatency ==
Breadth first; SchedulingForRegPressure == bottom up register reduction list
scheduler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25599 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 09:12:57 +00:00
Evan Cheng
d854b62afa Add a enum to specify target scheduling preference: SchedulingForLatency or
SchedulingForRegPressure. Added corresponding methods to set / get the value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25598 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 09:09:02 +00:00
Evan Cheng
0993f1d833 Some minor scheduler changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25597 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 09:07:50 +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
Jeff Cohen
fb709b6817 Portably cast a pointer to an integer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25594 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 02:40:10 +00:00
Duraid Madina
badf0d9614 add bundling! well not really, for now it's just stop-insertion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25593 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 02:23:38 +00:00
Andrew Lenharth
23918975bf maintaining stackpointer alignment. Perhaps it doesn't matter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25592 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-25 01:51:08 +00:00
Andrew Lenharth
50d1e8b70d fix build on 64 bit hosts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25591 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 21:26:43 +00:00
Evan Cheng
9789aaad63 Fix an optional in flag bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25590 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 20:46:50 +00:00
Evan Cheng
18667c4545 Optional InFlag was not being included in node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25588 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 20:07:38 +00:00
Chris Lattner
15256cb14e Fix Regression/Transforms/ScalarRepl/2006-01-24-IllegalUnionPromoteCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25587 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 19:36:27 +00:00
Chris Lattner
720d2108be testcase that crashes scalarrepl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25586 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 19:34:57 +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
34a05fbe51 This is still broken
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25583 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 06:13:48 +00:00
Chris Lattner
6a5428934b Fix an infinite loop I caused by making sure to legalize the flag operand
of CALLSEQ_* nodes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25582 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 05:48:21 +00:00
Chris Lattner
1e326009fa add a method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25581 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 05:47:05 +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
1695483505 new c front-end testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25579 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 05:01:39 +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
Jeff Cohen
2aa750a874 Fix VC++ compilation error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25577 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:43:17 +00:00
Jeff Cohen
83404e320d Remove unused variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25576 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:42:53 +00:00
Jeff Cohen
c73fe2ac0c Be consistent in using class/struct to keep Visual Studio happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25575 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:41:48 +00:00
Jeff Cohen
93c56e755f Add new files to Visual Studio.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25574 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:40:54 +00:00
Jeff Cohen
19832142c2 Track changes in config.h.in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25573 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:40:19 +00:00
Chris Lattner
3e2fa7a746 rename method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25572 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:16:34 +00:00
Chris Lattner
6631601eed Rename method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25571 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:14:29 +00:00
Chris Lattner
cc041ba03a Initial checkin of the InlineAsm class
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25570 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 04:13:11 +00:00
Jim Laskey
52060a0e71 Crude Dwarf global variable debugging.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25569 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 00:49:18 +00:00
Chris Lattner
42a162ed80 Pretty print file-scope asm blocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25568 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 00:45:30 +00:00
Chris Lattner
71cdba3177 syntax change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25567 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 00:40:17 +00:00
Chris Lattner
52599e17b1 minor syntax change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25566 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-24 00:37:20 +00:00
Chris Lattner
2c1b1597f2 Print file-scope inline asm blocks at the start of the output file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25565 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:47:53 +00:00
Chris Lattner
7e6db764b1 Add support for reading/writing inline asm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25564 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:43:17 +00:00
Chris Lattner
45f5051149 Update for file-scope inline asm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25563 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:38:09 +00:00
Chris Lattner
fb90fe35d0 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25562 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:24:13 +00:00
Chris Lattner
4e9aba7c12 document module-level inline asm support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25561 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:23:47 +00:00
Chris Lattner
e1b2e14f92 Add support for linking inline asm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25560 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:08:37 +00:00
Chris Lattner
9771aeafca When cloning a module, clone the inline asm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25559 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:06:28 +00:00
Chris Lattner
8335e84a4b regenerate
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25558 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:05:42 +00:00
Chris Lattner
ee45477a48 Add support for parsing global asm blocks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25557 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:05:15 +00:00
Chris Lattner
18365506eb Print out inline asm strings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25556 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:03:36 +00:00
Chris Lattner
49ebb90bd0 Add global scope asm support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25555 91177308-0d34-0410-b5e6-96231b3b80d8
2006-01-23 23:02:28 +00:00