Chris Lattner
31ab1b3d74
Print the module ID as a comment.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20411 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 23:12:40 +00:00
Chris Lattner
4318a3d0e9
cleanup the cfg after lsr
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20410 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 21:56:00 +00:00
Andrew Lenharth
74d00d860e
remove 32 sign extend after 32 sextload and handle small negative constant
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20408 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 17:23:03 +00:00
Andrew Lenharth
e4f161c909
Added LSR as a beta pass for alpha
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20407 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 17:21:38 +00:00
Chris Lattner
0c7490617a
Add a temporary option for llc-beta: -enable-lsr-for-ppc, which turns on
...
Loop Strength Reduction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20399 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 06:19:22 +00:00
Reid Spencer
1af69a8131
Be slightly more accurate in an error message.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20397 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 05:45:56 +00:00
Chris Lattner
ded3613fef
Fix a nasty order of evaluation bug that Gabor Greif ran into. Here's an
...
explanation from IRC:
|sabre| I think it's an order of evaluation thing
|sabre| for me, the RHS of the assignment is evaluated first
|sabre| getTypeDescription checks to see if ConcreteTypeDescription[Ty] contains anything
|sabre| since it doesn't, it computes and returns the value
|sabre| this gets put into the map.
|sabre| For you, the LHS is evaluated first.
|sabre| Map[Ty] (aka ConcreteTypeDescriptions[Ty]) inserts an empty string into the map, returning a reference
|sabre| getTypeDesc then sees the empty string in the map
|sabre| and returns it
|sabre| bork :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20394 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 03:54:43 +00:00
Chris Lattner
e4666594d0
Now that type does not derive from Value, these do not need to be virtual.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20393 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-02 03:43:55 +00:00
Misha Brukman
00b95c311e
Fix HTML-4.01 Strict compliance
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20386 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-01 17:19:21 +00:00
Misha Brukman
98558aedbc
Use a colon instead of a period since we're introducing a command list
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20385 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-01 17:15:23 +00:00
Reid Spencer
e0acb769f4
Correct a typo in Makefile.rules.
...
Patch idea contributed by Vladimir Merzliakov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20384 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-01 16:27:06 +00:00
Jeff Cohen
0456e4a079
Fixed the following LSR bugs:
...
* Loop invariant code does not dominate the loop header, but rather
the end of the loop preheader.
* The base for a reduced GEP isn't a constant unless all of its
operands (preceding the induction variable) are constant.
* Allow induction variable elimination for the simple case after all.
Also made changes recommended by Chris for properly deleting
instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20383 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-01 03:46:11 +00:00
Alkis Evlogimenos
d0656fc94d
Lower llvm.isunordered(a, b) into a != a | b != b.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20382 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-01 02:07:58 +00:00
Chris Lattner
2a61536848
cleanup my miswording
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20381 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:47:14 +00:00
Chris Lattner
ca76f357b9
Remove tabs from file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20380 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:36:15 +00:00
Chris Lattner
47adf21d06
Add a test for llvm.prefetch.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20379 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:31:42 +00:00
Chris Lattner
33e9d29b3b
Add support to the C backend for llvm.prefetch. Patch contributed by
...
Justin Wick!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20378 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:29:46 +00:00
Chris Lattner
edac2d1a80
recognize llvm.prefetch. Patch contributed by Justin Wick!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20377 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:28:00 +00:00
Chris Lattner
6f72282e02
Verify llvm.prefetch.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20376 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:27:42 +00:00
Chris Lattner
0942b7caf1
Lower prefetch to a noop, patch contributed by Justin Wick!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20375 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:27:23 +00:00
Chris Lattner
f9d27a8967
Add a prefetch intrinsic, patch contributed by Justin Wick!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20374 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:25:57 +00:00
Chris Lattner
9a9d7ac835
Document llvm.prefetch, patch contributed by Justin Wick!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20373 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 19:24:19 +00:00
Andrew Lenharth
e699e95571
fix integer division and stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20372 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 17:22:18 +00:00
Chris Lattner
d7934542c6
Adam Treat implemented this :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20371 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 16:52:28 +00:00
Reid Spencer
837149c08d
Changes to enable creation of native executables directly from gccld and to
...
ensure that -L paths don't contain both bytecode and native libraries.
This patch contributed by Adam Treat.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20370 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 08:45:35 +00:00
Reid Spencer
f8b235dd8f
A few small steps toward HTML 4.01 Strict compliance.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20369 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 01:10:48 +00:00
Reid Spencer
5175b82ecc
Add a little more detail about the configuration process for projects.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20368 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 00:40:29 +00:00
Jeff Cohen
14dc638081
Fix crash in LSR due to attempt to remove original induction variable. However,
...
for reasons explained in the comments, I also deactivated this code as it needs
more thought.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20367 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-28 00:08:56 +00:00
Jeff Cohen
5e1e5e13ff
PHI nodes were incorrectly placed when more than one GEP is reduced in a loop.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20360 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 21:08:04 +00:00
Jeff Cohen
f465db6c6a
First pass at improved Loop Strength Reduction. Still not yet ready for prime time.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20358 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 19:37:07 +00:00
Chris Lattner
2a3cdf7e34
Bug fixed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20357 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 19:31:02 +00:00
Chris Lattner
81ddb8aaf3
New testcase for PR529
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20356 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 19:28:30 +00:00
Chris Lattner
a97cf21383
Fix this to create a recursive mutex. Patch by Evan Jones!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20355 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 19:07:36 +00:00
Chris Lattner
3e27952a8b
Use const iterators where possible. Patch by Evan Jones!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20354 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 19:06:10 +00:00
Chris Lattner
210bef19ef
Rename include guard, patch contributed by Evan Jones!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20353 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 19:05:24 +00:00
Chris Lattner
35c81b0b12
Teach globalopt how memset/cpy/move affect memory, to allow better optimization.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20352 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 18:58:52 +00:00
Chris Lattner
b503cc4363
new testcase globalopt should handle.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20351 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 18:48:19 +00:00
Chris Lattner
5926ca209e
new testcase globalopt should implement
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20350 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 18:47:17 +00:00
Chris Lattner
9e2888609c
Test that a global is marked constant when it can be.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20349 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 18:19:26 +00:00
Alkis Evlogimenos
eebaf33b5d
Add llc to tools.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20345 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 10:21:37 +00:00
Chris Lattner
da895d6337
Fix spelling, patch contributed by Gabor Greif!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20343 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 06:18:25 +00:00
Chris Lattner
f8db8a0432
Fix spelling, patch contributed by Gabor Greif
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20342 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 06:15:51 +00:00
Chris Lattner
47b72fbf29
Fix misspellings, patch contributed by Gabor Greif!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20341 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 06:14:21 +00:00
Chris Lattner
e56509c697
Remove some stuff I checked in accidentally
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20340 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-27 04:32:35 +00:00
Chris Lattner
7192e501eb
DCE a dead function
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20339 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-26 23:36:45 +00:00
Reid Spencer
eaa06bb979
Implement an isBytecodeArchive method to determine if an archive contains
...
bytecode file members or not.
Patch Contributed By Adam Treat
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20338 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-26 22:00:32 +00:00
Chris Lattner
7ffc07dcf7
1 + 100 + 51 == 152, not 52.
...
If we fold three constants together (c1+c2+c3), make sure to keep
LHSC updated, instead of reusing (in this case), the 1 instead of the
partial sum.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20337 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-26 18:50:19 +00:00
Chris Lattner
fe75292503
A testcase that we miscompile, noticed from the demo page.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20336 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-26 18:49:04 +00:00
Chris Lattner
803513b364
Fix a case where we incorrectly returned hasComputableLoopEvolution for
...
a ternary commutative expr. Remove FIXME that does not need to be fixed
(can't happen).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20335 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-26 18:40:02 +00:00
Chris Lattner
be54dcc8a9
remove extraneous cast
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20334 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-26 18:33:28 +00:00