1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 13:02:52 +02:00
Commit Graph

45 Commits

Author SHA1 Message Date
Andrew Lenharth
b3f434b83d Add a simple pass to make sure that all (non-library) calls to malloc and free
are visible to analysis as intrinsics.  That is, make sure someone doesn't pass
free around by address in some struct (as happens in say 176.gcc).

This doesn't get rid of any indirect calls, just ensure calls to free and malloc
are always direct.

llvm-svn: 27560
2006-04-10 19:26:09 +00:00
Chris Lattner
211f996c92 add an option to the internalize pass
llvm-svn: 23782
2005-10-18 06:28:16 +00:00
Reid Spencer
a8e0496412 Declare a function to create the SimplifyLibCalls pass.
llvm-svn: 21523
2005-04-25 02:54:00 +00:00
Misha Brukman
58c97e67f3 Remove trailing whitespace
llvm-svn: 21412
2005-04-21 20:59:05 +00:00
Jeff Cohen
8b03a55724 Apply feedback from Chris.
llvm-svn: 19432
2005-01-10 04:23:32 +00:00
Jeff Cohen
ce541ade79 Add more missing createXxxPass functions.
llvm-svn: 19370
2005-01-08 17:21:40 +00:00
Chris Lattner
a856de4013 New prototype
llvm-svn: 18751
2004-12-10 07:55:01 +00:00
Chris Lattner
e2b8d886c9 Move the strip pass from Scalar to IPO lib
llvm-svn: 18438
2004-12-02 21:24:19 +00:00
Reid Spencer
a5b7b341a4 Declare a function in the correct namespace.
Patch contributed by Morten Ofstad. Thanks Morten!

llvm-svn: 17124
2004-10-18 14:43:45 +00:00
Chris Lattner
8ddca97a5a Rename pass
llvm-svn: 16801
2004-10-07 04:12:02 +00:00
Chris Lattner
a4d3f95fa3 Do not prototype any of these passes as returning Pass*. Instead, be specific
llvm-svn: 16431
2004-09-20 04:41:39 +00:00
Chris Lattner
872e4a14da Add a pass
llvm-svn: 15713
2004-08-13 03:03:44 +00:00
Chris Lattner
adff3f7355 Remove two dead passes
llvm-svn: 14456
2004-06-28 00:43:25 +00:00
Misha Brukman
1dc8e19185 Clarify the logic: the flag is renamed to `deleteFn' to signify it will delete
the function instead of isolating it. This also means the condition is reversed.

llvm-svn: 13112
2004-04-22 23:00:51 +00:00
Misha Brukman
94f0180757 Add a boolean flag to delete this function from module, leaving the rest behind.
Useful in manual debugging when bugpoint isn't quite up to snuff.

llvm-svn: 13110
2004-04-22 22:51:37 +00:00
Chris Lattner
fffee2b160 Rename createLoopExtractorPass to createSingleLoopExtractorPass
Doxygenify

llvm-svn: 12389
2004-03-14 20:00:37 +00:00
Chris Lattner
3bb91dafcd Move loop extractor to the IPO header
llvm-svn: 12374
2004-03-14 02:36:34 +00:00
Chris Lattner
db27e586bf Add prototype
llvm-svn: 12194
2004-03-07 21:30:08 +00:00
Chris Lattner
64cbbad38e Add prototype
llvm-svn: 11837
2004-02-25 21:34:51 +00:00
Brian Gaeke
98cfeec17b Fix typo in comment.
llvm-svn: 10487
2003-12-16 21:55:45 +00:00
Brian Gaeke
d25f86d683 Put all LLVM code into the llvm namespace, as per bug 109.
llvm-svn: 9903
2003-11-11 22:41:34 +00:00
Chris Lattner
5c551d6bd5 Split the DAE pass into DAE and DAH passes
llvm-svn: 9742
2003-11-05 21:43:42 +00:00
Chris Lattner
78d89a92b7 Include new prototype
llvm-svn: 9422
2003-10-23 16:51:49 +00:00
John Criswell
16c6cda9d5 Added LLVM copyright header (for lack of a better term).
llvm-svn: 9304
2003-10-20 20:19:47 +00:00
Chris Lattner
0c3066b0ae Add prototype for the lowersetjmp pass
llvm-svn: 8522
2003-09-15 05:05:23 +00:00
Chris Lattner
2ef2a63728 Change the RaiseAllocations pass from being a BasicBlockPass to being a Pass
llvm-svn: 8279
2003-09-01 03:14:00 +00:00
Chris Lattner
7dac86e5f5 Add accessor function for the PruneEH pass
llvm-svn: 8254
2003-08-31 16:30:25 +00:00
Chris Lattner
e3d0b99978 Add argument to DAE to allow operation on non-internal functions
llvm-svn: 6895
2003-06-25 04:12:49 +00:00
Chris Lattner
f6973b0f28 Add prototype for the new DAE pass
llvm-svn: 6703
2003-06-16 12:16:52 +00:00
Chris Lattner
4bb510896d Remove pool alloc accessor
llvm-svn: 5473
2003-02-03 19:08:33 +00:00
Chris Lattner
6423477181 Move inlining pass to IPO.h
llvm-svn: 4761
2002-11-19 20:43:24 +00:00
Chris Lattner
adea9960ab Move the function extractor pass from tools/extract into lib/Xform/IPO
llvm-svn: 4759
2002-11-19 18:42:59 +00:00
Chris Lattner
cbdfa73706 Converted SimpleStructMutation to take TargetData as a required pass.
llvm-svn: 3931
2002-09-26 00:17:18 +00:00
Chris Lattner
722320121c Move many files into IPO.h
llvm-svn: 3042
2002-07-24 17:10:58 +00:00
Chris Lattner
6669be024a * Rename to IPO.h
* Add ConstantMerge.h contents

llvm-svn: 3032
2002-07-23 19:56:27 +00:00
Chris Lattner
60265052c8 Prepare the file to become IPO.h
llvm-svn: 3029
2002-07-23 19:48:52 +00:00
Chris Lattner
86083cf0be Split the CleanupGCCOutput pass into two passes, and add real life actual
documentation on when they do.

llvm-svn: 2222
2002-04-10 20:31:22 +00:00
Chris Lattner
e2383e8592 Change over to use new style pass mechanism, now passes only expose small
creation functions in their public header file, unless they can help it.

llvm-svn: 1816
2002-02-26 21:46:54 +00:00
Chris Lattner
9d726159c1 Convert xforms over to use new pass structure
llvm-svn: 1596
2002-01-30 23:29:35 +00:00
Chris Lattner
83056c99ec Pull RaiseAllocations stuff out of the CleanGCC pass into it's own pass in
the ChangeAllocations.h header file.

llvm-svn: 1522
2002-01-22 00:13:51 +00:00
Chris Lattner
2521ae1011 Implement a more powerful, simpler, pass system. This pass system can figure
out how to run a collection of passes optimially given their behaviors and
charactaristics.

Convert code to use it.

llvm-svn: 1507
2002-01-21 07:31:50 +00:00
Chris Lattner
e19d5b4615 -cleangcc pass now remove type names that are never referenced and type names for pointers to primitive types.
llvm-svn: 1312
2001-11-15 04:34:46 +00:00
Chris Lattner
b7cb076c0e Expose method to merge identically named methods
llvm-svn: 1109
2001-11-03 19:49:54 +00:00
Chris Lattner
009d9de81c Implement code to convert %malloc and %free FUNCTION CALLS into the instruction equivalent
llvm-svn: 1065
2001-10-31 06:35:59 +00:00
Chris Lattner
ca01882422 New GCC cleanup pass interface
llvm-svn: 1061
2001-10-31 04:32:53 +00:00