Commit Graph

14338 Commits

Author SHA1 Message Date
Reid Spencer
8d7bab5e63 Add our own version of libtool.m4 instead of relying on the installed one.
This is a potential version mismatch problem because this file came from
libtool 1.5.10. If you're running a different version of libtool, the
checks in this file may not be quite right. Having our own version of this
file violates the spirit of libtool and is only provided to change the name
of "libtool" to "mklib". This is done so that the name "libtool" does not
conflict with the "lib" directory when doing tab completion and your
$objdir == $srcdir.

llvm-svn: 16411
2004-09-19 21:47:47 +00:00
Chris Lattner
cc0377196a better code
Move other things to the right sections

llvm-svn: 16410
2004-09-19 19:21:26 +00:00
Chris Lattner
f607a26457 Make isSafeToLoadUnconditionally a bit smarter, implementing PR362 and
Regression/Transforms/InstCombine/CPP_min_max.llx

llvm-svn: 16409
2004-09-19 19:18:10 +00:00
Chris Lattner
9b61bc84a7 New testcase for PR362: Icky code generated for std::min/std::max
llvm-svn: 16408
2004-09-19 19:17:10 +00:00
Chris Lattner
e6755fe307 Fix a nasty iterator invalidation problem I introduced yesterday. This
unfortunately is the cause of a bunch of failures from tonight, and the
reason the tester is running so slow :(

llvm-svn: 16407
2004-09-19 19:01:06 +00:00
Chris Lattner
98d434988e Remove a whole bunch of horrible hacky code that was used to promote allocas
whose addresses where used by trivial phi nodes and select instructions.  This
is now performed by the instcombine pass, which is more powerful, is much
simpler, and is faster.  This allows the deletion of a bunch of code, two
FIXME's and two gotos.

llvm-svn: 16406
2004-09-19 18:51:51 +00:00
Chris Lattner
980e6b99f7 Instcombine now helps out with these
llvm-svn: 16405
2004-09-19 18:45:45 +00:00
Chris Lattner
f45dc6dae6 Make instruction combining a bit more aggressive in the face of volatile
loads, and implement two new transforms: InstCombine/load.ll:test[56].

llvm-svn: 16404
2004-09-19 18:43:46 +00:00
Chris Lattner
c4cf835f45 Add two new testcases that instcombine should handle
llvm-svn: 16403
2004-09-19 18:43:01 +00:00
Reid Spencer
5eee940491 Minor correction to Signals implementation.
Patch submitted by Jeff Cohen. Thanks Jeff!

llvm-svn: 16401
2004-09-19 05:37:39 +00:00
Chris Lattner
188b4e4983 Add comment
llvm-svn: 16400
2004-09-19 01:05:16 +00:00
Chris Lattner
12bcdf2e01 Fix the inliner to always delete any edges from the external call node to
a function being deleted.  Due to optimizations done while inlining, there
can be edges from the external call node to a function node that were not
apparent any longer.

This fixes the compiler crash while compiling 175.vpr

llvm-svn: 16399
2004-09-18 21:37:03 +00:00
Chris Lattner
110bbafcf7 Add CallGraphNode::removeAnyCallEdgeTo method
llvm-svn: 16398
2004-09-18 21:34:34 +00:00
Reid Spencer
b503c250a3 Use the /dev/zero device as the device on which the pages are mapped.
Patch contributed by Henrik Bach. Thanks Henrik!

llvm-svn: 16397
2004-09-18 19:34:09 +00:00
Reid Spencer
fb3c25ded9 Porting of Unix implementation to Win32.
Patch contributed by Jeff Cohen. Thanks Jeff!

llvm-svn: 16396
2004-09-18 19:29:16 +00:00
Reid Spencer
9717ec42eb Get rid of file descriptor leak in create_file.
llvm-svn: 16395
2004-09-18 19:25:11 +00:00
Chris Lattner
cd2d763599 Misha implemented the ModuleProvider interface back in 9/18/2003.
llvm-svn: 16394
2004-09-18 16:16:28 +00:00
Chris Lattner
0e39c41ba3 Provide initial docs for CallGraphSCCPass's, and fix several grammar-o's and
other problems.

llvm-svn: 16393
2004-09-18 06:39:35 +00:00
Chris Lattner
fea8bb30c7 Make this HTML 4.01 strict
Update to reflect changes to the 'Register' tblgen class.

llvm-svn: 16392
2004-09-18 06:28:07 +00:00
Chris Lattner
30c93a192b Don't include libtool "object" files
llvm-svn: 16391
2004-09-18 04:40:46 +00:00
Chris Lattner
223e9d38b5 Convert this pass to be a CallGraphSCCPass instead of a Pass, which eliminates
the worklist and makes it more efficient.  This does not change functionality
at all.

llvm-svn: 16390
2004-09-18 00:34:13 +00:00
Chris Lattner
f31ae4da07 Make sure to remove the Select instruction as well
llvm-svn: 16389
2004-09-18 00:32:40 +00:00
Chris Lattner
53dea1ce37 When changing a function, make sure to update the CallGraphNode for the
function, not just the CallGraph.

llvm-svn: 16388
2004-09-18 00:27:20 +00:00
Chris Lattner
e9772b7a63 Implement new changeFunction method, nuke a never implemented one.
Add comments and doxygenify others.

llvm-svn: 16387
2004-09-18 00:22:43 +00:00
Chris Lattner
a9b80a3258 Implement new changeFunction method, nuke a never implemented one.
llvm-svn: 16386
2004-09-18 00:22:13 +00:00
John Criswell
4f0bd93c80 Changed the distclean target to handle the new location of config.h.
llvm-svn: 16385
2004-09-17 15:08:25 +00:00
Chris Lattner
228e66d208 Fix typo in comment
llvm-svn: 16384
2004-09-17 03:58:39 +00:00
Reid Spencer
fe3656ecc6 Make sure critical sections are entered before trying to leave them.
Add some additional commentary about the workings of this module.

Patch contributed by Jeff Cohen. Thanks Jeff!

llvm-svn: 16383
2004-09-17 03:02:27 +00:00
Reid Spencer
81f249245b Adjust the license files based on the actual content of llvm and llvm-test
after llvm-test was split out of llvm.

llvm-svn: 16382
2004-09-16 16:41:31 +00:00
Reid Spencer
08cba3070b Allow "bc" as suffix for bytecode files.
llvm-svn: 16381
2004-09-16 16:36:10 +00:00
Reid Spencer
c7ed215028 Implement the signals interface for Win32.
Patch provided by Jeff Cohen. Thanks Jeff!

llvm-svn: 16380
2004-09-16 15:53:16 +00:00
John Criswell
cb28d6a419 Add dependencies so that project tools are recompiled if LLVM libraries
are updated.

llvm-svn: 16378
2004-09-16 14:11:25 +00:00
Chris Lattner
e54e70266e Add a newline
llvm-svn: 16369
2004-09-15 17:53:52 +00:00
Reid Spencer
c6a8d70cff Convert code to compile with vc7.1.
Patch contributed by Paolo Invernizzi. Thanks Paolo!

llvm-svn: 16368
2004-09-15 17:06:42 +00:00
Chris Lattner
33596a1fba Make sure to update the list end when an element is removed from it. This
fixes a crash in LICM when processing povray.

llvm-svn: 16367
2004-09-15 17:00:41 +00:00
Chris Lattner
f1a0bf88c5 Add some assertions
llvm-svn: 16366
2004-09-15 16:59:47 +00:00
Reid Spencer
39ffebe6aa Stacker compiler library doesn't need to be shared and it can cause
problems on some platforms (like Solaris).

llvm-svn: 16365
2004-09-15 06:22:54 +00:00
Reid Spencer
0970ddbb09 Attempt to solve the libtool problem on Solaris.
llvm-svn: 16364
2004-09-15 06:19:53 +00:00
Reid Spencer
b985bbc08d Patches to make this file actually compile under windows.
Patches submitted by Jeff Cohen. Thanks Jeff!

llvm-svn: 16362
2004-09-15 05:49:50 +00:00
Reid Spencer
f8a8c7dd06 Initial version of the SysConfig abstraction for Win32.
llvm-svn: 16361
2004-09-15 05:48:49 +00:00
Reid Spencer
32525ca7db First version of a common header file for Win32 implementations.
llvm-svn: 16360
2004-09-15 05:48:11 +00:00
Reid Spencer
64076f59a3 Initial implementation of the Process abstraction for Win32.
llvm-svn: 16359
2004-09-15 05:47:40 +00:00
Reid Spencer
78f98e5b49 Fix the interface to ReleaseRWX to take MemoryBlock& not Memory&
llvm-svn: 16356
2004-09-15 03:55:45 +00:00
Chris Lattner
5751f19d86 Fix a bug in the previous checkin that broke 255.vortex
llvm-svn: 16355
2004-09-15 02:34:40 +00:00
Alkis Evlogimenos
95075646ab When creating constant arrays check that the initializer vector is the
same size as the one in the array type.

llvm-svn: 16354
2004-09-15 02:32:15 +00:00
Misha Brukman
9e5af08ef9 Fit long lines into 80 cols via creative space elimination
llvm-svn: 16353
2004-09-15 01:40:18 +00:00
Misha Brukman
20c26ca53b Wrap long line
llvm-svn: 16352
2004-09-15 01:34:42 +00:00
Misha Brukman
90cc1b0ed2 Targets are independent of each other, so compile them in parallel
llvm-svn: 16351
2004-09-15 01:34:25 +00:00
Chris Lattner
a826321f64 Bug fixed
llvm-svn: 16349
2004-09-15 01:09:25 +00:00
Chris Lattner
6833186048 Make sure to update alias analysis information as we transform the function.
This fixes PR420 and Regression/Transforms/LICM/2004-09-14-AliasAnalysisInvalidate.llx

llvm-svn: 16348
2004-09-15 01:04:07 +00:00