Reid Spencer
3c52e275ea
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
0b843a34f4
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
8100dcfa5e
For PR411:
...
This test is not particularly useful without type planes.
llvm-svn: 33919
2007-02-05 20:59:45 +00:00
Reid Spencer
3aaaa0b2bd
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
e84cf92141
For PR411:
...
This pass is no longer needed.
llvm-svn: 33917
2007-02-05 20:41:05 +00:00
Reid Spencer
ba09a3e5f0
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
3f806969ed
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
f21214c091
Test case for PR1158
...
llvm-svn: 33914
2007-02-05 19:33:20 +00:00
Zhou Sheng
85f9778f0b
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
ac6bfc5221
Regenerate.
...
llvm-svn: 33912
2007-02-05 17:04:00 +00:00
Reid Spencer
9894d6cba5
! 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
809cbf527f
Fix unord test.
...
llvm-svn: 33910
2007-02-05 16:33:56 +00:00
Reid Spencer
a7bb3e9673
Regenerate.
...
llvm-svn: 33909
2007-02-05 10:18:06 +00:00
Reid Spencer
22507b4fbf
Assembler no longer prints ! at the end of its error messages.
...
llvm-svn: 33908
2007-02-05 10:17:51 +00:00
Reid Spencer
de1d05f0f1
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
61ae7b7869
Make the RUN: line readable.
...
llvm-svn: 33906
2007-02-05 10:09:41 +00:00
Reid Spencer
f8094e4719
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
9132f16d6c
add a note
...
llvm-svn: 33904
2007-02-05 06:30:51 +00:00
Reid Spencer
c04536470a
Use opt to generate the list of passes to run.
...
llvm-svn: 33903
2007-02-05 06:10:19 +00:00
Chris Lattner
83ac5ae9f3
Fix miscompilations of consumer-typeset, telecomm-gsm, and 176.gcc.
...
llvm-svn: 33902
2007-02-05 05:57:49 +00:00
Reid Spencer
a1d35926b7
For PR1177:
...
Revert last patch which caused iteration invalidation.
llvm-svn: 33901
2007-02-05 05:23:32 +00:00
Chris Lattner
0a28e90f2c
fix a miscompilation of 176.gcc
...
llvm-svn: 33900
2007-02-05 04:09:35 +00:00
Reid Spencer
4e76c3a482
For PR411:
...
Don't re-use var names.
llvm-svn: 33899
2007-02-05 04:00:04 +00:00
Chris Lattner
0132cdda10
new testcase for 1174, currently xfailed
...
llvm-svn: 33898
2007-02-05 03:56:59 +00:00
Owen Anderson
f6fa108993
Use DenseMap for pointer->pointer maps.
...
llvm-svn: 33897
2007-02-05 02:39:47 +00:00
Bill Wendling
4573a8f613
Use unsigned char& instead of std::vector<>::reference.
...
llvm-svn: 33896
2007-02-05 02:37:07 +00:00
Anton Korobeynikov
d282d49e78
Test for PR1173
...
llvm-svn: 33895
2007-02-05 02:28:56 +00:00
Chris Lattner
044e099765
fix bug number
...
llvm-svn: 33894
2007-02-05 02:26:07 +00:00
Chris Lattner
7936b6585c
test for pr1173
...
llvm-svn: 33893
2007-02-05 02:19:09 +00:00
Chris Lattner
3e009e8b8f
rewrite shift/shift folding, now that types are not signed.
...
llvm-svn: 33892
2007-02-05 00:57:54 +00:00
Chris Lattner
c5fd530aaf
testcase for PR1175
...
llvm-svn: 33891
2007-02-04 23:55:04 +00:00
Nick Lewycky
15245953a5
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
465c0253c3
Fixing silly "not-implemented" bug in AsmPrinter. This fixes PR1169.
...
llvm-svn: 33888
2007-02-04 23:27:42 +00:00
Reid Spencer
4087017e4f
Make Stacker makefiles more compliant with LLVM standards.
...
Fix linkage problems after libLLVMTransforms.a was removed.
llvm-svn: 33887
2007-02-04 22:25:16 +00:00
Reid Spencer
1e86e65b83
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
7b4d83c252
Fix grammaro in output message.
...
llvm-svn: 33885
2007-02-04 22:08:16 +00:00
Chris Lattner
fe8c530d79
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
03503b5e31
new testcase for x86 backend miscompilation
...
llvm-svn: 33883
2007-02-04 20:15:15 +00:00
Chris Lattner
19083a4671
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
9af2c86bc8
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
69b02ab54c
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
22639f3d90
eliminate the SDNode::setValueTypes method.
...
llvm-svn: 33876
2007-02-04 07:37:24 +00:00
Chris Lattner
f17b4222e2
eliminate a bunch of duplicate ctors and helper functions.
...
llvm-svn: 33875
2007-02-04 07:28:00 +00:00
Reid Spencer
d3ba7d9b42
Fix some comments and other minor sundry things.
...
llvm-svn: 33873
2007-02-04 04:43:17 +00:00
Reid Spencer
2dc3653531
Ensure that visibility and section are properly propagated.
...
llvm-svn: 33872
2007-02-04 04:30:33 +00:00
Reid Spencer
90246aa71e
Back out last revision which was committed by accident.
...
llvm-svn: 33871
2007-02-04 04:29:21 +00:00
Reid Spencer
2ea1bb2b8a
Make sure that section and visibility are properly propagated.
...
llvm-svn: 33870
2007-02-04 04:28:18 +00:00
Chris Lattner
edfc7e5fa2
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
3bf17b6fa5
simplify MorphNodeTo to take a VTList operand.
...
llvm-svn: 33868
2007-02-04 02:41:42 +00:00
Chris Lattner
486edfbc6f
eliminate some extraneous methods in SDNode
...
llvm-svn: 33867
2007-02-04 02:32:44 +00:00