Anton Korobeynikov
6c6a70f999
- Fixed broken Win32 build
...
- Removed warning about clobbered parameter in Bytecode/Reader
llvm-svn: 30026
2006-09-01 20:35:17 +00:00
Evan Cheng
88c268b621
Remove extra spaces.
...
llvm-svn: 30025
2006-09-01 18:45:22 +00:00
Evan Cheng
31c99969a9
Last check-in was a mistake...
...
I've been told apple gcc version number is not guaranteed to increase
monotonically. Change the preprocess condition to make it less risky.
The configuration change is done during the middle 10.4 life cycle so we have
to check __APPLE_CC. For future OS X release, we should be able to assume
-fenable-cxa-atexit is the default.
llvm-svn: 30024
2006-09-01 18:42:59 +00:00
Evan Cheng
d176cdf76d
*** empty log message ***
...
llvm-svn: 30023
2006-09-01 18:40:46 +00:00
Evan Cheng
e93762d36e
Allow legalizer to expand ISD::MUL using only MULHS in the rare case that is
...
possible and the target only supports MULHS.
llvm-svn: 30022
2006-09-01 18:17:58 +00:00
Jim Laskey
5352d0cc4d
Corrections.
...
llvm-svn: 30021
2006-09-01 12:55:05 +00:00
Evan Cheng
4b8b6ae924
Better comments.
...
llvm-svn: 30017
2006-09-01 07:09:56 +00:00
Evan Cheng
c5fddc566c
Yikes. This requires checking apple gcc version.
...
llvm-svn: 30016
2006-09-01 07:00:46 +00:00
Chris Lattner
93c067dc2d
Pull some code out of a hot recursive function because the common case doesn't
...
need recursion.
llvm-svn: 30015
2006-09-01 07:00:23 +00:00
Chris Lattner
53ca302eb3
remove some particularly expensive assertions
...
llvm-svn: 30014
2006-09-01 06:57:35 +00:00
Chris Lattner
3eac2c87aa
Reserve space in the ValueNumberInfo vector. This speeds up live interval
...
analysis 16% on crafty.
Wrap long lines.
llvm-svn: 30012
2006-09-01 06:10:18 +00:00
Chris Lattner
6bfccbb08b
add a simple reserve method.
...
llvm-svn: 30011
2006-09-01 06:08:16 +00:00
Chris Lattner
f765351978
Iterative coallescing doesn't buy us anything (we get identical results on
...
crafty with and without it). Removing it speeds up live intervals 6%.
llvm-svn: 30010
2006-09-01 04:02:42 +00:00
Nick Lewycky
f6f529d008
Don't confuse canonicalize and lookup. Fixes predsimplify.reg4.ll. Also
...
corrects missing optimization opportunity removing cases from a switch.
llvm-svn: 30009
2006-09-01 03:26:35 +00:00
Evan Cheng
31305c45da
DAG combiner fix for rotates. Previously the outer-most condition checks
...
for ROTL availability. This prevents it from forming ROTR for targets that
has ROTR only.
llvm-svn: 29997
2006-08-31 07:41:12 +00:00
Chris Lattner
a700a19d04
Add a special case that speeds up coallescing a bit, but not enough.
...
llvm-svn: 29996
2006-08-31 06:48:26 +00:00
Chris Lattner
78cca7243c
Delete copies as they are coallesced instead of waiting until the end.
...
llvm-svn: 29995
2006-08-31 05:58:59 +00:00
Chris Lattner
aa36808fd3
avoid calling the virtual isMoveInstr method endlessly by caching its results.
...
llvm-svn: 29994
2006-08-31 05:54:43 +00:00
Chris Lattner
b096190f29
Add a note about C++ -> C with libstdc++
...
llvm-svn: 29993
2006-08-31 04:26:31 +00:00
Nick Lewycky
a24fdaea0b
This program crashes the PredicateSimplifier. Not marked XFAIL because
...
the PredicateSimplifier is skipped in make check anyways.
llvm-svn: 29992
2006-08-31 03:13:05 +00:00
Nick Lewycky
08674ab707
Properties where both Values weren't in the union (as being equal to
...
another Value) weren't being found by findProperties.
This fixes predsimplify.ll test6, a missed optimization opportunity.
llvm-svn: 29991
2006-08-31 00:39:16 +00:00
Chris Lattner
f5da261701
Bugfix for recent coallescer crash
...
llvm-svn: 29990
2006-08-30 23:03:35 +00:00
Chris Lattner
cb74860cce
Fix a compiler crash bootstrapping llvm-gcc.
...
llvm-svn: 29989
2006-08-30 23:02:29 +00:00
Chris Lattner
aea29af0bc
Restore source-level compatibility with clients of these functions.
...
llvm-svn: 29978
2006-08-30 20:47:48 +00:00
Chris Lattner
9543866c27
Guess what happens when asserts are disabled. :(
...
Also, the assert could never fire due to || instead of &&.
llvm-svn: 29977
2006-08-30 20:37:06 +00:00
Chris Lattner
69c32d5564
fix 80 column issue
...
llvm-svn: 29972
2006-08-30 05:56:52 +00:00
Chris Lattner
f5bed76353
Instantiate Statistic<> in one place, not in every .o file that uses it.
...
llvm-svn: 29971
2006-08-30 04:17:00 +00:00
Nick Lewycky
5f8f9af65c
Move to using the EquivalenceClass ADT. Removes SynSets.
...
If a branch's condition has become a ConstantBool, simplify it immediately.
Removing the edge saves work and exposes up more optimization opportunities
in the pass.
Add support for SelectInst.
llvm-svn: 29970
2006-08-30 02:46:48 +00:00
Chris Lattner
dcc8bcc04d
Code cleanups, no functionality change.
...
llvm-svn: 29969
2006-08-29 23:38:20 +00:00
Chris Lattner
34434e97c9
Teach the coallescer to coallesce live intervals joined by an arbitrary
...
number of copies, potentially defining live ranges that appear to have
differing value numbers that become identical when coallsced. Among other
things, this fixes CodeGen/X86/shift-coalesce.ll and PR687.
llvm-svn: 29968
2006-08-29 23:18:15 +00:00
Chris Lattner
faa6355510
new testcase for pr687
...
llvm-svn: 29967
2006-08-29 23:09:59 +00:00
Devang Patel
f489d0f85c
Do not rely on std::sort and std::erase to get list of unique
...
exit blocks. The output is dependent on addresses of basic block.
Add and use Loop::getUniqueExitBlocks.
llvm-svn: 29966
2006-08-29 22:29:16 +00:00
Evan Cheng
6d464146d0
Minor asm fix.
...
llvm-svn: 29965
2006-08-29 22:14:48 +00:00
Evan Cheng
8dd79a4c14
This is also a 32-bit only test. x86-64 would pass fp parameters through XMM registers.
...
llvm-svn: 29964
2006-08-29 22:01:39 +00:00
Evan Cheng
65c4409e63
Fix test case so it passes on x86-64.
...
llvm-svn: 29963
2006-08-29 21:49:58 +00:00
Evan Cheng
b28800f4d5
Remove dead code.
...
llvm-svn: 29962
2006-08-29 21:42:58 +00:00
Reid Spencer
014a2dd53d
Delete a no-longer-supported configuration item.
...
llvm-svn: 29960
2006-08-29 20:52:44 +00:00
Evan Cheng
abb02a35cf
Undo xfail.
...
llvm-svn: 29958
2006-08-29 18:49:41 +00:00
Evan Cheng
dfb85155dc
Don't performance load/op/store transformation if op produces a floating point
...
or vector result. X86 does not have load/mod/store variants of those
instructions.
llvm-svn: 29957
2006-08-29 18:37:37 +00:00
Evan Cheng
358b9ed98a
- Enable x86 isel preprocessing by default unless -fast is specified.
...
- Also disable isel load folding if -fast.
llvm-svn: 29956
2006-08-29 18:28:33 +00:00
Evan Cheng
9b675bd769
Issue cvs co with -P option to prune empty directories. Remove the unnecessary
...
update stage.
llvm-svn: 29955
2006-08-29 18:01:18 +00:00
Jim Laskey
2eebe8b05e
Handle callee saved registers in dwarf frame info (lead up to exception
...
handling.)
llvm-svn: 29954
2006-08-29 16:24:26 +00:00
Jim Laskey
82dc16c0a7
Tidy up options.
...
llvm-svn: 29953
2006-08-29 15:13:10 +00:00
Evan Cheng
c07feb14b0
Avoid making unneeded load/mod/store transformation which can hurt performance.
...
llvm-svn: 29952
2006-08-29 06:44:17 +00:00
Evan Cheng
e5570a4c3f
Move isCommutativeBinOp from SelectionDAG.cpp and DAGCombiner.cpp out. Make it a static method of SelectionDAG.
...
llvm-svn: 29951
2006-08-29 06:42:35 +00:00
Owen Anderson
a8a2e5c666
Clean up a bit.
...
llvm-svn: 29950
2006-08-29 06:10:56 +00:00
Nate Begeman
18f0329cfc
Make ppc64 jit kinda work right. About 2/3 of Olden passes with this,
...
there are clearly some encoding bugs lurking in there somewhere.
llvm-svn: 29949
2006-08-29 02:30:59 +00:00
Nick Lewycky
0b4e05a28c
The list is sorted by name.
...
llvm-svn: 29948
2006-08-29 01:42:47 +00:00
Nick Lewycky
b2e8ae1700
Add PredicateSimplifier pass. Collapses equal variables into one form
...
and simplifies expressions. This implements the optimization described
in PR807.
llvm-svn: 29947
2006-08-28 22:44:55 +00:00
Evan Cheng
00884b51c5
On Mac, print jump table entries after the function to work around a linker issue.
...
llvm-svn: 29946
2006-08-28 22:14:16 +00:00