Chris Lattner
8a842cf828
Change one ReplaceAllUsesWith method to take an array of operands to replaceinstead of a vector of operands.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29617 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:46:44 +00:00
Chris Lattner
b9ea4a39b8
Change one ReplaceAllUsesWith method to take an array of operands to replace
...
instead of a vector of operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29616 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:46:28 +00:00
Chris Lattner
246db8de3d
Remove now-dead method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29615 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:40:26 +00:00
Chris Lattner
e219945348
Eliminate use of getNode that takes a vector.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29614 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:38:39 +00:00
Chris Lattner
3cf55848d9
remove a (now) unused getNode method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29613 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:25:05 +00:00
Chris Lattner
8742867f95
elimiante use of getNode that takes vector of operands.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29612 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:22:35 +00:00
Chris Lattner
e0e42d457e
eliminate use of getNode that takes vector of operands.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29611 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:21:12 +00:00
Chris Lattner
e21492bc4e
eliminate use of getNode that takes vector<SDOperand>. Wrap a really long line.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29610 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:19:54 +00:00
Chris Lattner
79e490aa23
Convert vectors to fixed sized arrays and smallvectors. Eliminate use of getNode that takes a vector.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29609 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 17:18:05 +00:00
Chris Lattner
325f0a129e
Fix miscompilation of float vector returns. Compile code to this:
...
_func:
vsldoi v2, v3, v2, 12
vsldoi v2, v2, v2, 4
blr
instead of:
_func:
vsldoi v2, v3, v2, 12
vsldoi v2, v2, v2, 4
*** vor f1, v2, v2
blr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29607 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 16:47:32 +00:00
Chris Lattner
84ff46b0d9
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29606 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 16:46:38 +00:00
Chris Lattner
8f652ebe89
Minor cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29605 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 16:37:02 +00:00
Evan Cheng
64a752f7c7
Match tablegen changes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29604 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 09:08:15 +00:00
Evan Cheng
bb7b844bec
CALLSEQ_* produces chain even if that's not needed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29603 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 09:03:33 +00:00
Evan Cheng
06d6470c65
- Prevent some functions from being inlined to eliminate the code size bloat
...
introduced by previous commit.
- SelectCode now returns a SDNode*. If it is not null, the selected node
produces the same number of results as the input node. The seletion loop
is responsible for calling ReplaceAllUsesWith() to replace the input node
with the output target node. For other cases, e.g. when load is folded,
the selection code is responsible for calling ReplaceAllUsesOfValueWith()
and SelectCode returns NULL.
- Other clean ups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29602 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 08:59:35 +00:00
Evan Cheng
311ace0391
Convert more calls of getNode() that takes a vector to pass in the start of an array.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29601 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-11 07:35:45 +00:00
Reid Spencer
23a0c7671d
Fix a typo noticed by Gordon Henriksen. Thanks!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29597 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-10 21:38:47 +00:00
Reid Spencer
48f706820a
llvm2cpp no longer reads LLVM assembly but LLVM bytecode instead. Adjust
...
the documentation to reflect this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29596 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-10 21:02:25 +00:00
Reid Spencer
f19ccf8b63
Add a cleaned-up version of the IRC conversation that spurred this FAQ.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29595 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-10 21:01:14 +00:00
Reid Spencer
e00906fbc2
Answer the most frequently asked question, about GEPs. The answer is
...
sufficiently long that I placed it in a separate file but it links from
the FAQ page. More might need to be added to GetElementPtr.html to
address additional confusion surrounding GEP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29594 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-10 20:15:58 +00:00
Chris Lattner
6c8d90d65f
Doxygenify some methods.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29592 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-10 06:00:40 +00:00
Tanya Lattner
9ceece5f7d
Adding notes from release experience.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29591 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-10 00:23:05 +00:00
Reid Spencer
a7465cafeb
Fix a comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29590 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 19:40:13 +00:00
Rafael Espindola
a1ab92d8b7
correctly set LocalAreaOffset of TargetFrameInfo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29589 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 17:37:45 +00:00
Tanya Lattner
049ccbe941
Fixed misspelling
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29588 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 17:08:27 +00:00
Chris Lattner
706d2d3608
Revert previous patch
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29585 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 16:44:44 +00:00
Tanya Lattner
8d4ccf0ad4
Reverting back to original 1.8 version so I can manually merge in patch.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29584 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 16:41:21 +00:00
Rafael Espindola
7a53bd0890
fix the spill code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29583 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 16:41:12 +00:00
Rafael Espindola
2c8cdc6c1a
fix the loading of the link register in emitepilogue
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29580 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 13:15:47 +00:00
Evan Cheng
dcffb0cf81
Merge some NightlyTest.pl changes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29579 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 05:45:12 +00:00
Evan Cheng
f4334c74e9
Recover the lost diff between 1.221 and 1.222.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29578 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 05:40:14 +00:00
Evan Cheng
888fac77de
Recover the lost diff between 1.5 and 1.6.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29577 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 05:38:51 +00:00
Tanya Lattner
df4283c8f9
Update credits and fix sorting issue.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29574 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 04:18:09 +00:00
Chris Lattner
7ea41e333d
Update from Anton Korobeynikov
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29573 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 04:10:32 +00:00
Chris Lattner
49e693e91e
Fixes from Anton Vayvod and Gabor Greif!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29572 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-09 04:08:52 +00:00
Rafael Espindola
46adf8119d
change the addressing mode of the str instruction to reg+imm
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29571 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 20:35:03 +00:00
Chris Lattner
d9ea017494
First draft of the llvm 1.8 release notes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29570 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 17:27:28 +00:00
John Criswell
fd3a9c7972
Describe and date modifications we made per LGPL requirements.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29569 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 14:47:54 +00:00
John Criswell
7fc20cafc3
Make information more complete.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29568 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 14:47:33 +00:00
Rafael Espindola
1a00946817
initial support for variable number of arguments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29567 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 13:02:29 +00:00
Chris Lattner
bd564bfc63
Start eliminating temporary vectors used to create DAG nodes. Instead, pass
...
in the start of an array and a count of operands where applicable. In many
cases, the number of operands is known, so this static array can be allocated
on the stack, avoiding the heap. In many other cases, a SmallVector can be
used, which has the same benefit in the common cases.
I updated a lot of code calling getNode that takes a vector, but ran out of
time. The rest of the code should be updated, and these methods should be
removed.
We should also do the same thing to eliminate the methods that take a
vector of MVT::ValueTypes.
It would be extra nice to convert the dagiselemitter to avoid creating vectors
for operands when calling getTargetNode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29566 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 02:23:42 +00:00
Patrick Jenkins
4257ccb1a7
Removed unneccesary output from nightly tester
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29565 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 02:03:53 +00:00
Chris Lattner
8e10f5b811
capacity is a pointer, not a value
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29564 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 01:54:17 +00:00
Reid Spencer
ebfe07fb18
Update the instructions for writing a pass as a loadable module per the
...
new definition in MakefileGuilde.html and Makefile.rules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29563 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 01:48:17 +00:00
Chris Lattner
1c567b5d92
add a new assign method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29562 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 01:44:16 +00:00
Chris Lattner
f06f35e30b
Eliminate some malloc traffic by allocating vectors on the stack. Change some
...
method that took std::vector<SDOperand> to take a pointer to a first operand
and #operands.
This speeds up isel on kc++ by about 3%.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29561 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 01:09:31 +00:00
Chris Lattner
8de353df9d
Add ctor that initializes from a range.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29560 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 00:37:50 +00:00
Evan Cheng
f4b4c416d3
Eliminate reachability matrix. It has to be calculated before any instruction
...
selection is done. That's rather expensive especially in situations where it
isn't really needed.
Move back to a searching the predecessors, but make use of topological order
to trim the search space.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29559 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-08 00:31:00 +00:00
Evan Cheng
080e187dfb
New test case.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29558 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-07 23:58:47 +00:00
Reid Spencer
d1001f2ac2
Fix an anchor name.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29557 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-07 23:44:59 +00:00