Wojciech Matyjewicz
86d51b896e
Make these loops follow GetGEPOperands() behavior.
...
Let: %q = GEP %p, X, ...
If %p is a GEP, we can chase baseptr further, only if X==0.
llvm-svn: 44999
2007-12-13 16:22:58 +00:00
Evan Cheng
2011df4e39
Fix typo.
...
llvm-svn: 44997
2007-12-13 07:50:36 +00:00
Owen Anderson
53b677e4e8
Add register pairs to the list to check for local interferences.
...
llvm-svn: 44987
2007-12-13 05:53:03 +00:00
Owen Anderson
1f93edd08a
Remove ugly and horrible code. It's not necessary for correctness, and can be added back later if it causes code quality issues.
...
llvm-svn: 44986
2007-12-13 05:43:37 +00:00
Evan Cheng
37c36ed79a
Be extra careful with extension use optimation. Now turned on by default.
...
llvm-svn: 44981
2007-12-13 03:32:53 +00:00
Nate Begeman
23ffde507f
Apply CBE/MSIL patch to autoconf
...
llvm-svn: 44980
2007-12-13 02:24:45 +00:00
Nate Begeman
938d8cb8d9
Add install-libs target which only installs libraries, not tools
...
llvm-svn: 44979
2007-12-13 02:17:17 +00:00
Zhou Sheng
461d8419a7
Remove this testcase as it will always fail on
...
platform like Darwin.
llvm-svn: 44977
2007-12-13 02:03:57 +00:00
Nate Begeman
272ee458cf
Do not build CBackend and MSIL regardless of configured targets
...
llvm-svn: 44973
2007-12-13 01:18:52 +00:00
Evan Cheng
827d30db19
Fold some and + shift in x86 addressing mode.
...
llvm-svn: 44970
2007-12-13 00:43:27 +00:00
Evan Cheng
687567bca5
Oops. Forgot these.
...
llvm-svn: 44969
2007-12-13 00:42:35 +00:00
Chris Lattner
f0fbf077d2
Fix for edge profiling, patch by 'Marc' for PR1857
...
llvm-svn: 44965
2007-12-13 00:04:46 +00:00
Evan Cheng
7df585d9c4
Cosmetic change.
...
llvm-svn: 44961
2007-12-12 23:15:59 +00:00
Evan Cheng
6e68381e02
Implicit def instructions, e.g. X86::IMPLICIT_DEF_GR32, are always re-materializable and they should not be spilled.
...
llvm-svn: 44960
2007-12-12 23:12:09 +00:00
Duncan Sands
fde556745b
Remove host endianness info from TargetData and
...
put it in a new header System/Host.h instead.
Instead of getting the endianness from configure,
calculate it directly.
llvm-svn: 44959
2007-12-12 23:03:45 +00:00
Dan Gohman
015982aa32
Remove a forward-declaration for a non-existant class.
...
llvm-svn: 44955
2007-12-12 22:25:09 +00:00
Dan Gohman
7a7742c2fe
Allow vector integer constants to be created with
...
SelectionDAG::getConstant, in the same way as vector floating-point
constants. This allows the legalize expansion code for @llvm.ctpop and
friends to be usable with vector types.
llvm-svn: 44954
2007-12-12 22:21:26 +00:00
Anton Korobeynikov
7ab71379b6
Use vector for child storage instead of map. This will also make
...
our life during future GraphTraits'ing slightly easier.
llvm-svn: 44952
2007-12-12 19:08:44 +00:00
Duncan Sands
9ab0943b86
Revert r44626, which turned off the use of readonly
...
and readnone for functions with bodies because it
broke llvm-gcc-4.2 bootstrap. It turns out that,
because of LLVM's array_ref hack, gcc was computing
pure/const attributes wrong (now fixed by turning
off the gcc ipa-pure-const pass).
llvm-svn: 44937
2007-12-12 16:01:40 +00:00
Wojciech Matyjewicz
309e5a723b
1. "Upgrage" comments.
...
2. Using zero-extended value of Scale and unsigned division is safe provided
that Scale doesn't have the sign bit set.
Previously these 2 instructions:
%p = bitcast [100 x {i8,i8,i8}]* %x to i8*
%q = getelementptr i8* %p, i32 -4
were combined into:
%q = getelementptr [100 x { i8, i8, i8 }]* %x, i32 0,
i32 1431655764, i32 0
what was incorrect.
llvm-svn: 44936
2007-12-12 15:21:32 +00:00
Christopher Lamb
17c405d29e
Regenerate.
...
llvm-svn: 44934
2007-12-12 08:45:45 +00:00
Christopher Lamb
25f5076612
Implement part of review feedback for address spaces.
...
llvm-svn: 44933
2007-12-12 08:44:39 +00:00
Evan Cheng
0f42730722
Use shuffles to implement insert_vector_elt for i32, i64, f32, and f64.
...
llvm-svn: 44929
2007-12-12 07:55:34 +00:00
Evan Cheng
0a1254f634
Add a test case for -optimize-ext-uses.
...
llvm-svn: 44928
2007-12-12 07:54:08 +00:00
Evan Cheng
2a98956796
Lower a build_vector with all constants into a constpool load unless it can be done with a move to low part.
...
llvm-svn: 44921
2007-12-12 06:45:40 +00:00
Zhou Sheng
3115ba39e8
Add a guard to cxxabi header as other platform may
...
not support it.
llvm-svn: 44914
2007-12-12 06:16:47 +00:00
Zhou Sheng
ed5d693d67
Fixed PR1629.
...
Make lli interpreter correctly call external functions sin()/cos(),
__cxa_guard_acquire() and __cxa_guard_release().
llvm-svn: 44910
2007-12-12 04:55:43 +00:00
Chris Lattner
b3ba3d9827
Fix a bug in my previous patch, thanks to Jay Foad for
...
pointing this out and correcting the patch!
llvm-svn: 44907
2007-12-12 03:56:54 +00:00
Evan Cheng
63d33cfd2b
Don't muck with phi nodes; bug fixes.
...
llvm-svn: 44905
2007-12-12 02:53:41 +00:00
Scott Michel
4a8bc7e105
Correct typo for Linux: s/esp/%rsp/
...
llvm-svn: 44904
2007-12-12 02:38:28 +00:00
Bill Wendling
bf85dd4f61
Bit masks conflicted. Needed to bump them by one.
...
llvm-svn: 44903
2007-12-12 01:51:58 +00:00
Owen Anderson
499e5bffcf
Forgot to remove a register from the PHI-union after I'd determined that it
...
interfered with other registers. Seems like that might be a good thing to do. :-)
llvm-svn: 44902
2007-12-12 01:25:08 +00:00
Gordon Henriksen
0a68fe2ffc
Add (very basic) bindings for ModuleProvider.
...
llvm-svn: 44899
2007-12-12 01:04:30 +00:00
Evan Cheng
7bc8942532
Bug fix. Only safe to perform extension uses optimization if the source of extension is also defined in the same BB as the extension.
...
llvm-svn: 44896
2007-12-12 00:51:06 +00:00
Daniel Berlin
0af43a1895
Changes from Curtis Dunham implementing lazy cycle detection algorithm.
...
Changes from me implementing different way of representing points-to anything.
Changes from me that improve slightly on LCD.
llvm-svn: 44895
2007-12-12 00:37:04 +00:00
Evan Cheng
6766d2fa4f
If deleting a reload instruction due to reuse (value is available in register R and reload is targeting R), make sure to invalidate the kill information of the last kill.
...
llvm-svn: 44894
2007-12-11 23:36:57 +00:00
Bill Wendling
38236ef6cb
Need to grow the indexed map. Added debug statements.
...
llvm-svn: 44892
2007-12-11 23:27:51 +00:00
Bill Wendling
642e15a7cb
Simplify slightly.
...
llvm-svn: 44881
2007-12-11 22:22:22 +00:00
Anton Korobeynikov
7f01ebefc6
Remove Trie::Edge class. Now edge labels are stored into nodes itself.
...
llvm-svn: 44880
2007-12-11 21:55:38 +00:00
Owen Anderson
f24dd1c1eb
More progress on StrongPHIElimination. Now we actually USE the DomForest!
...
llvm-svn: 44877
2007-12-11 20:12:11 +00:00
Bill Wendling
b678ae7c38
Blark! How in the world did this work without this?!
...
llvm-svn: 44874
2007-12-11 19:40:06 +00:00
Bill Wendling
7717a8a37d
- Update the virtual reg to machine instruction map when hoisting.
...
- Fix subtle bug when creating initially creating this map.
llvm-svn: 44873
2007-12-11 19:17:04 +00:00
Bill Wendling
5143d898c8
Checking for "zero operands" during the "CanHoistInst()" method isn't necessary
...
because those with side effects will be caught by other checks in here.
Also, simplify the check for a BB in a sub loop.
llvm-svn: 44871
2007-12-11 18:45:11 +00:00
Nate Begeman
6dc8b4ed13
Allow the JIT to encode MMX instructions
...
llvm-svn: 44869
2007-12-11 18:06:14 +00:00
Wojciech Matyjewicz
5bf9f01349
Use correct member access operator.
...
(my test commit as well)
llvm-svn: 44868
2007-12-11 17:46:25 +00:00
Dan Gohman
5e1f8472d2
Rename these tests to use the appropriate suffixes.
...
llvm-svn: 44867
2007-12-11 15:55:52 +00:00
Dan Gohman
b582867567
Use not instead of ignore when an exit status is expected to always
...
be non-zero.
llvm-svn: 44866
2007-12-11 15:50:23 +00:00
Dan Gohman
cfed707c12
Don't redirect stderr when it isn't needed.
...
llvm-svn: 44865
2007-12-11 15:41:11 +00:00
Duncan Sands
f41217d4fa
Fix compilation.
...
llvm-svn: 44864
2007-12-11 12:20:47 +00:00
Christopher Lamb
595798f041
Update credits.
...
llvm-svn: 44861
2007-12-11 09:32:07 +00:00