Evan Cheng
82a35b34fb
Avoid making unneeded load/mod/store transformation which can hurt performance.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29952 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-29 06:44:17 +00:00
Evan Cheng
1efba0ecb4
Move isCommutativeBinOp from SelectionDAG.cpp and DAGCombiner.cpp out. Make it a static method of SelectionDAG.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29951 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-29 06:42:35 +00:00
Owen Anderson
d648e140a5
Clean up a bit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29950 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-29 06:10:56 +00:00
Nate Begeman
06abd22b1a
Make ppc64 jit kinda work right. About 2/3 of Olden passes with this,
...
there are clearly some encoding bugs lurking in there somewhere.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29949 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-29 02:30:59 +00:00
Nick Lewycky
97198c9b1b
The list is sorted by name.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29948 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-29 01:42:47 +00:00
Nick Lewycky
05450ae128
Add PredicateSimplifier pass. Collapses equal variables into one form
...
and simplifies expressions. This implements the optimization described
in PR807.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29947 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 22:44:55 +00:00
Evan Cheng
67afeceaf0
On Mac, print jump table entries after the function to work around a linker issue.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29946 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 22:14:16 +00:00
Chris Lattner
181c359c9d
Add 2nd form of resize
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29945 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 21:52:08 +00:00
Evan Cheng
70e674e95e
Add an optional pass to preprocess the DAG before x86 isel to allow selecting more load/mod/store instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29943 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 20:10:17 +00:00
Chris Lattner
5e9b177cb5
Add a --disable-compression option like llvm-link/llvm-as etc have
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29941 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 17:31:55 +00:00
Chris Lattner
20c71001a4
remove extraneous space
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29940 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 17:30:49 +00:00
Bill Wendling
1644877280
Spell naively with the i-Umlaut...
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29939 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 03:04:05 +00:00
Bill Wendling
546c421c1d
Messed up and put a "To be written" in a section that was written.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29938 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 02:57:41 +00:00
Bill Wendling
91e10c42ea
Added some preliminary text to the TargetJITInfo class section.
...
Fixed some inconsistencies with format. Corrected some of the text.
Put code inside of "code" div tags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29937 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 02:26:32 +00:00
Owen Anderson
59312b19a6
Make LoopUnroll fold excessive BasicBlocks. This results in a significant speedup of
...
gccas on 252.eon
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29936 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 02:09:46 +00:00
Reid Spencer
6118eefe99
Back out last revision which should not have been committed (yet).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29935 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 01:08:45 +00:00
Reid Spencer
3a9ec2463d
For PR387:
...
Close out this long standing bug by removing the remaining overloaded
virtual functions in LLVM. The -Woverloaded-virtual option is now turned on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29934 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 01:02:49 +00:00
Chris Lattner
dc87725902
Update to match changes in RegisterAnalysisGroup usage
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29933 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 00:45:38 +00:00
Chris Lattner
a5370172b6
simplify AnalysisGroup registration, eliminating one typeid call.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29932 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 00:42:29 +00:00
Reid Spencer
84f82f7fac
Excise references to the now defunct "analyze" tool. Merge descriptions
...
where appropriate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29931 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 00:34:19 +00:00
Reid Spencer
f100dcc42e
Add virtual methods to all subclasses so they are not overloaded.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29930 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 00:12:25 +00:00
Chris Lattner
6e60002a73
Silence -Woverloaded-virtual warnings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29929 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-28 00:09:00 +00:00
Chris Lattner
c8603c2444
update doc: analyze is gone and passes should just use RegisterPass
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29928 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 23:18:52 +00:00
Chris Lattner
d52e1b0dbe
Update tests now that opt no longer reads .ll files
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29927 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:47:14 +00:00
Chris Lattner
c9b208c886
Adjust tests now that opt doesn't read .ll files.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29926 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:44:20 +00:00
Chris Lattner
7f8897f22e
eliminate RegisterOpt. It does the same thing as RegisterPass.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29925 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:42:52 +00:00
Chris Lattner
21a82e6fc7
opt no longer reads .ll files. Run llvm-as explicitly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29924 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:41:58 +00:00
Chris Lattner
3b2493e2a1
-analyze mode shouldn't output a .bc file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29923 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:40:26 +00:00
Chris Lattner
43d64b8526
Fit to 80 cols
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29922 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:31:12 +00:00
Chris Lattner
5d8925c7c5
Eliminate RegisterAnalysis. RegisterPass now does all that is necessary.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29921 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:30:17 +00:00
Chris Lattner
2dd3d423aa
We no longer care whether something is an opt vs analysis pass, only whether
...
something is a pass vs an analysis group now. Simplify interfaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29920 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:21:55 +00:00
Chris Lattner
a4be053d7d
analyze no longer exists, don't offer to run it :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29919 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:12:06 +00:00
Chris Lattner
f91e4f86c2
Remove a dead class.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29918 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:11:07 +00:00
Chris Lattner
232885873f
Minor code cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29917 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:10:29 +00:00
Chris Lattner
30967a54f4
eliminate only use of FilteredPassNameParser
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29916 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:07:43 +00:00
Chris Lattner
7f500f7f2a
Merge the 'analyze' mode code with the 'opt' mode code. Eliminate the
...
'autodetect .ll files' functionality.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29915 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 22:07:01 +00:00
Chris Lattner
1c548b645b
Move this test from Codegen/PowerPC to CodeGen/Generic. It fails on ia64,
...
but that's not the ppc backend's fault.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29914 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 20:52:00 +00:00
Chris Lattner
8dc728e440
Use compiler.h instead of hand rolling our own macro
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29913 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 13:16:24 +00:00
Chris Lattner
6f3241dbbf
add directive to disable inlining
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29912 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 13:16:05 +00:00
Chris Lattner
a4f0b3a084
s|llvm/Support/Visibility.h|llvm/Support/Compiler.h|
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29911 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 12:54:02 +00:00
Chris Lattner
c9d94d1290
typo fix
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29910 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 12:47:48 +00:00
Chris Lattner
7422a76100
Add external definitions for commonly-used template specializations and add
...
anchor methods to others. This eliminates the vtable/template method bloat
in .o files that defining a cl::opt used to impose (~4K per .o file for one
cp::opt<unsigned>).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29909 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 12:45:47 +00:00
Chris Lattner
0c0cc92762
New place to put compiler-specific functionality. This replaces Visibility.h,
...
and provides macros that can be used to make explicit instantiations of
template specializations, which is a gcc-specific feature.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29908 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 12:42:45 +00:00
Evan Cheng
0b828e08f9
Do not use getTargetNode() and SelectNodeTo() which takes more than 3
...
SDOperand arguments. Use the variants which take an array and number instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29907 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 08:14:06 +00:00
Evan Cheng
f037ca6245
Do not emit getTargetNode() and SelectNodeTo() which takes more than 3
...
SDOperand arguments. Use the variants which take an array and number instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29906 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 08:11:28 +00:00
Evan Cheng
694481ee01
Eliminate SelectNodeTo() and getTargetNode() variants which take more than
...
3 SDOperand operands. They are replaced by versions which take an array
of SDOperand and the number of operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29905 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 08:08:54 +00:00
Chris Lattner
c19bbba7d7
make optional pointer really optional
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29904 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-27 07:11:54 +00:00
Chris Lattner
16c7fe5ca3
Fix target matching weights, so that ppc-darwin modules are codegen with the
...
ppc target, not the itanium target, when run on an itanium machine.
This should fix the CodeGen/PowerPC regtest failures on itanium.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29903 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-26 21:33:05 +00:00
Nate Begeman
d2030e6c99
Properly size the string table, and emit symbol table and string table
...
entries in the correct order, fixing several fixmes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29902 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-26 15:46:34 +00:00
Evan Cheng
95514bae73
SelectNodeTo now returns a SDNode*.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29901 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-26 08:00:10 +00:00