Reid Spencer
00fc9639f4
For PR411:
...
Change getNamedFunction -> getFunction
Make llvm-extract run the StripDeadPrototypes pass.
llvm-svn: 33921
2007-02-05 21:17:53 +00:00
Reid Spencer
2e281b54c7
For PR411:
...
Clean up the Module::getFunction interface. getMainFunction and
getNamedFunction are now gone. Just use getFunction instead.
llvm-svn: 33920
2007-02-05 21:17:06 +00:00
Reid Spencer
0e2414dbbe
For PR411:
...
This test is not particularly useful without type planes.
llvm-svn: 33919
2007-02-05 20:59:45 +00:00
Reid Spencer
6af21b3029
For PR411:
...
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.
llvm-svn: 33918
2007-02-05 20:47:22 +00:00
Reid Spencer
d8c5428a48
For PR411:
...
This pass is no longer needed.
llvm-svn: 33917
2007-02-05 20:41:05 +00:00
Reid Spencer
4885d68272
Create a pass to strip dead function declarations (prototypes). This is
...
for use by llvm-extract and bugpoint.
llvm-svn: 33916
2007-02-05 20:24:25 +00:00
Devang Patel
a2287f3205
Fix PR1158
...
Do not insert Analysis pass, if it is already available.
llvm-svn: 33915
2007-02-05 19:34:17 +00:00
Devang Patel
cfae673742
Test case for PR1158
...
llvm-svn: 33914
2007-02-05 19:33:20 +00:00
Zhou Sheng
4967eb71b1
Add a class APInt to represent arbitrary precision constant integral values.
...
It is a functional replacement for common case integer type like "unsigned",
"uint64_t", but also allows non-byte-width integer type and large integer
value types such as 3-bits, 15-bits, or more than 64-bits of precision. For
more details, see pr1043.
llvm-svn: 33913
2007-02-05 17:29:16 +00:00
Reid Spencer
aabb0ec479
Regenerate.
...
llvm-svn: 33912
2007-02-05 17:04:00 +00:00
Reid Spencer
c48637fa58
! removal was a little over zealous. Put the ! back in asserts.
...
llvm-svn: 33911
2007-02-05 17:01:20 +00:00
Lauro Ramos Venancio
45504fb6b4
Fix unord test.
...
llvm-svn: 33910
2007-02-05 16:33:56 +00:00
Reid Spencer
28005c25b4
Regenerate.
...
llvm-svn: 33909
2007-02-05 10:18:06 +00:00
Reid Spencer
9ddf69cdd6
Assembler no longer prints ! at the end of its error messages.
...
llvm-svn: 33908
2007-02-05 10:17:51 +00:00
Reid Spencer
1479edf229
There is nothing exclamatory about an error message. No other compiler
...
or assembler uses ! at the end of every message. We shouldn't either.
llvm-svn: 33907
2007-02-05 10:16:10 +00:00
Reid Spencer
c7525207b8
Make the RUN: line readable.
...
llvm-svn: 33906
2007-02-05 10:09:41 +00:00
Reid Spencer
25f656a559
Don't prevent install target from descending into the utils directory.
...
It prevents "make install" on a clean directory from working.
llvm-svn: 33905
2007-02-05 09:43:17 +00:00
Chris Lattner
318e23e7fe
add a note
...
llvm-svn: 33904
2007-02-05 06:30:51 +00:00
Reid Spencer
b32cc501f5
Use opt to generate the list of passes to run.
...
llvm-svn: 33903
2007-02-05 06:10:19 +00:00
Chris Lattner
1441407576
Fix miscompilations of consumer-typeset, telecomm-gsm, and 176.gcc.
...
llvm-svn: 33902
2007-02-05 05:57:49 +00:00
Reid Spencer
21f40213a8
For PR1177:
...
Revert last patch which caused iteration invalidation.
llvm-svn: 33901
2007-02-05 05:23:32 +00:00
Chris Lattner
4402e15b4b
fix a miscompilation of 176.gcc
...
llvm-svn: 33900
2007-02-05 04:09:35 +00:00
Reid Spencer
b33f883a96
For PR411:
...
Don't re-use var names.
llvm-svn: 33899
2007-02-05 04:00:04 +00:00
Chris Lattner
c8c3e824e4
new testcase for 1174, currently xfailed
...
llvm-svn: 33898
2007-02-05 03:56:59 +00:00
Owen Anderson
0fbb2d629f
Use DenseMap for pointer->pointer maps.
...
llvm-svn: 33897
2007-02-05 02:39:47 +00:00
Bill Wendling
bc1c8e70ac
Use unsigned char& instead of std::vector<>::reference.
...
llvm-svn: 33896
2007-02-05 02:37:07 +00:00
Anton Korobeynikov
6af279f20d
Test for PR1173
...
llvm-svn: 33895
2007-02-05 02:28:56 +00:00
Chris Lattner
bcd1454361
fix bug number
...
llvm-svn: 33894
2007-02-05 02:26:07 +00:00
Chris Lattner
c61d845960
test for pr1173
...
llvm-svn: 33893
2007-02-05 02:19:09 +00:00
Chris Lattner
49be595b1f
rewrite shift/shift folding, now that types are not signed.
...
llvm-svn: 33892
2007-02-05 00:57:54 +00:00
Chris Lattner
6384117218
testcase for PR1175
...
llvm-svn: 33891
2007-02-04 23:55:04 +00:00
Nick Lewycky
7439ef2aba
Fix indenting, remove tabs.
...
Learn from sext and zext. The destination value falls within the range of the
source type.
Generalize properties regarding constant ints.
Get smarter about marking blocks as unreachable. If 1 >= 2 in order for this
block to execute, then it isn't reachable.
llvm-svn: 33889
2007-02-04 23:43:05 +00:00
Anton Korobeynikov
a4e7de7c93
Fixing silly "not-implemented" bug in AsmPrinter. This fixes PR1169.
...
llvm-svn: 33888
2007-02-04 23:27:42 +00:00
Reid Spencer
bf4d68efba
When using LINK_COMPONENTS, append the components to the end of the
...
libraries linked with. This permits a project to still use USEDLIBS to
specify its own libraries in conjunction with LINK_COMPONENTS. llvm-stacker
needs this after libLLVMTransforms.a went away.
llvm-svn: 33886
2007-02-04 22:12:25 +00:00
Reid Spencer
83e69f0b7f
Fix grammaro in output message.
...
llvm-svn: 33885
2007-02-04 22:08:16 +00:00
Chris Lattner
3e01807e87
Fix a miscompilation in the addr mode code trying to implement X | C and
...
X + C to promote LEA formation. We would incorrectly apply it in some cases
(test) and miss it in others.
This fixes CodeGen/X86/2007-02-04-OrAddrMode.ll
llvm-svn: 33884
2007-02-04 20:18:17 +00:00
Chris Lattner
4223274f91
new testcase for x86 backend miscompilation
...
llvm-svn: 33883
2007-02-04 20:15:15 +00:00
Chris Lattner
15fb4ef992
switch the VRBaseMap in the scheduler from an std::map to a DenseMap. This
...
speeds up the isel pass from 2.5570s to 2.4722s on kc++ (3.4%).
llvm-svn: 33879
2007-02-04 08:47:20 +00:00
Chris Lattner
59d7c680b5
Introduce new UnarySDNode/BinarySDNode/TernarySDNode nodes, which coallocate
...
their operands with the node itself. This reduces malloc traffic for operand
lists. This reduces isel time on kc++ from 2.6164 to 2.5570s, about 2.3%.
llvm-svn: 33878
2007-02-04 08:35:21 +00:00
Chris Lattner
22db3d9fca
Add a new SDNode ctor and InitOperands method. This allows the operands for
...
an SDNode to be allocated as part of the node itself, instead of being a
separate new[]'d object. Switch HandleSDNode, LoadSDNode, and StoreSDNode
to use this mechanism. This saves one heap allocation and free for each node
of this type that is allocated. This reduces isel time from 2.7638 to 2.6164s
on kc++, which is a 5.6% speedup.
llvm-svn: 33877
2007-02-04 08:13:53 +00:00
Chris Lattner
dcdf1edd93
eliminate the SDNode::setValueTypes method.
...
llvm-svn: 33876
2007-02-04 07:37:24 +00:00
Chris Lattner
2b6734a983
eliminate a bunch of duplicate ctors and helper functions.
...
llvm-svn: 33875
2007-02-04 07:28:00 +00:00
Reid Spencer
e86b73d7ce
Fix some comments and other minor sundry things.
...
llvm-svn: 33873
2007-02-04 04:43:17 +00:00
Reid Spencer
0759b38041
Ensure that visibility and section are properly propagated.
...
llvm-svn: 33872
2007-02-04 04:30:33 +00:00
Reid Spencer
080fc7bf3f
Back out last revision which was committed by accident.
...
llvm-svn: 33871
2007-02-04 04:29:21 +00:00
Reid Spencer
8fa4e4be1f
Make sure that section and visibility are properly propagated.
...
llvm-svn: 33870
2007-02-04 04:28:18 +00:00
Chris Lattner
8bbd45cd6e
move MorphNode to out of line and merge setNodeOperands into it. There is
...
no behavior or performance change here.
llvm-svn: 33869
2007-02-04 02:49:29 +00:00
Chris Lattner
ccd1f36346
simplify MorphNodeTo to take a VTList operand.
...
llvm-svn: 33868
2007-02-04 02:41:42 +00:00
Chris Lattner
7e8b8e7a68
eliminate some extraneous methods in SDNode
...
llvm-svn: 33867
2007-02-04 02:32:44 +00:00
Chris Lattner
f3b4a0cc95
Give each selectiondag node class a home for it's vtable and rtti info
...
llvm-svn: 33866
2007-02-04 02:23:32 +00:00