Commit Graph

1527 Commits

Author SHA1 Message Date
Misha Brukman
fb31f22b76 Abstract interface for module providers, e.g. streaming bytecode reader.
llvm-svn: 8593
2003-09-18 16:16:32 +00:00
Chris Lattner
0d28d582e1 Add new deleteBody method
llvm-svn: 8571
2003-09-17 04:58:43 +00:00
Chris Lattner
2233d8b00a Do not segfault when the post-dominator tree is empty (ie, there are no return
or unwind instructions in the function)

llvm-svn: 8537
2003-09-15 15:47:40 +00:00
Chris Lattner
0c3066b0ae Add prototype for the lowersetjmp pass
llvm-svn: 8522
2003-09-15 05:05:23 +00:00
Chris Lattner
27fcbcd3a3 Get rid of the whole "Node2" business, rename getNode() ->getBlock() to
be more descriptive

llvm-svn: 8468
2003-09-11 16:25:06 +00:00
Chris Lattner
e7c33c0f65 Rework dominator and post dominator information so that we do not have to
unify all exit nodes of a function to compute post-dominance information.
This does not work with functions that have both unwind and return nodes,
because we cannot unify these blocks.  The new implementation is better
anyway. :)

llvm-svn: 8459
2003-09-10 20:36:51 +00:00
Chris Lattner
ee577bdc08 Expand the pass to unify all of the unwind blocks as well
llvm-svn: 8456
2003-09-10 20:34:51 +00:00
Brian Gaeke
7eaecc239a Make createVerifierPass return a FunctionPass *.
llvm-svn: 8449
2003-09-10 19:37:04 +00:00
Chris Lattner
58d4183a25 Fix spell-o's
llvm-svn: 8431
2003-09-10 05:29:43 +00:00
Chris Lattner
620f051422 Spelling fixes
llvm-svn: 8429
2003-09-10 05:24:09 +00:00
Chris Lattner
8c119fc9af Fix bug: InstCombine/2003-09-09-VolatileLoadElim.ll
Loads "mayWriteToMemory" if they are volatile

llvm-svn: 8422
2003-09-09 18:16:08 +00:00
Chris Lattner
4a708f1061 Eliminate the unwind intrinsic, it is now an instruction
llvm-svn: 8412
2003-09-08 19:44:47 +00:00
Chris Lattner
a1ae09f681 add support for the unwind inst
llvm-svn: 8406
2003-09-08 18:54:16 +00:00
Chris Lattner
3aeba4c6fc Add the unwind instruction class
llvm-svn: 8405
2003-09-08 18:54:09 +00:00
Chris Lattner
56bc7d4056 Add new unwind instruction. Happily there was a slot leftover from when the
'not' instruction was removed long ago

llvm-svn: 8404
2003-09-08 18:54:01 +00:00
Chris Lattner
2916eafa42 Add support for volatile loads/stores
llvm-svn: 8393
2003-09-08 17:45:59 +00:00
Brian Gaeke
83d2306098 No longer used
llvm-svn: 8374
2003-09-05 19:43:45 +00:00
Brian Gaeke
8e1bb0bcb2 Make getOperandValue and executeCastOperation methods of Interpreter.
This lets us protect a few more ExecutionEngine methods.

llvm-svn: 8367
2003-09-05 18:55:03 +00:00
Brian Gaeke
e157a77485 Make CreateArgv part of lli rather than part of ExecutionEngine.
Switch Interpreter and JIT's "run" methods to take a Function and a vector of
 GenericValues.
Move (almost all of) the stuff that constructs a canonical call to main()
 into lli (new methods "callAsMain", "makeStringVector").
Nuke getCurrentExecutablePath(), enableTracing(), getCurrentFunction(),
 isStopped(), and many dead decls from interpreter.
Add linux strdup() support to interpreter.
Make interpreter's atexit handler runner and JIT's runAtExitHandlers() look
 more alike, in preparation for refactoring.
atexit() is spelled "atexit", not "at_exit".

llvm-svn: 8366
2003-09-05 18:42:01 +00:00
Brian Gaeke
b42efb0e33 Zap some more unused static method decls
llvm-svn: 8364
2003-09-05 06:10:50 +00:00
Chris Lattner
2deb966337 Get friendly
llvm-svn: 8356
2003-09-05 02:30:18 +00:00
Chris Lattner
849c3fbdcc Reshuffling of APIs
llvm-svn: 8354
2003-09-05 02:15:36 +00:00
Chris Lattner
802d5a1717 Remove method
llvm-svn: 8349
2003-09-04 23:43:35 +00:00
Brian Gaeke
6d7d9f9cd9 Interpreter cleanups:
Get rid of support for DebugMode (make it always off).
Mung some comments.
Get rid of interpreter's PROFILE_STRUCTURE_FIELDS and PerformExitStuff
 which have been disabled forever.
Get rid of -abort-on-exception (make it always on).
Get rid of user interaction stuff (debug mode innards).
Simplify Interpreter's callMainFunction().

llvm-svn: 8344
2003-09-04 22:21:24 +00:00
Brian Gaeke
cec978e0ed ExecutionEngine.cpp: Move execution engine creation stuff into a new
static method here.
 Remove some extra blank lines.
ExecutionEngine.h: Add its prototype.
lli.cpp: Call it.

Make creation method for each type of EE into a static method of its
own subclass.

Interpreter/Interpreter.cpp: ExecutionEngine::createInterpreter -->
 Interpreter::create
Interpreter/Interpreter.h: Likewise.
JIT/JIT.cpp: ExecutionEngine::createJIT --> VM::create
JIT/VM.h: Likewise.

llvm-svn: 8343
2003-09-03 20:34:19 +00:00
Chris Lattner
2229f417a0 New method
llvm-svn: 8331
2003-09-02 21:54:56 +00:00
Chris Lattner
4636773d5b Remove the "recursive bit", not only is it unused by anyone, it was also
not correctly calculated, and calculating it wrong for fun seems rather
pointless.

llvm-svn: 8329
2003-09-02 21:40:33 +00:00
Chris Lattner
1ae014f939 The description is no longer stored directly in the type.
llvm-svn: 8319
2003-09-02 16:28:03 +00:00
Chris Lattner
f993c53f49 Dead header file
llvm-svn: 8317
2003-09-01 20:46:08 +00:00
Chris Lattner
603a7af227 Add RPR prototype here
llvm-svn: 8314
2003-09-01 20:44:42 +00:00
Chris Lattner
8ec3783590 Remove dead file
llvm-svn: 8313
2003-09-01 20:41:21 +00:00
Chris Lattner
feebbdd6d1 No longer require an OptInfo
llvm-svn: 8310
2003-09-01 20:40:43 +00:00
Chris Lattner
87d223c70e Remove header files that were privatized
llvm-svn: 8307
2003-09-01 20:33:38 +00:00
Chris Lattner
aeb98733eb This file is never #included
llvm-svn: 8300
2003-09-01 20:19:31 +00:00
Chris Lattner
ed0dcf3cf0 This file is just a subset of Cilkifier.h
llvm-svn: 8286
2003-09-01 16:42:43 +00:00
Chris Lattner
ef379b667e Other minor cleanups while I'm in the area
llvm-svn: 8284
2003-09-01 16:38:43 +00:00
Chris Lattner
eaed5602a7 Fix spell-o
llvm-svn: 8283
2003-09-01 16:35:30 +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
05498bc768 Remove explicit passing of SCC's around as objects.
llvm-svn: 8267
2003-08-31 19:46:48 +00:00
Chris Lattner
d96c9204b6 This should use Support/iterator, not <iterator>
llvm-svn: 8266
2003-08-31 19:46:22 +00:00
Chris Lattner
0295b0692d Cleanups, move the getAnalysisUsage method to the .cpp file
llvm-svn: 8265
2003-08-31 19:41:17 +00:00
Chris Lattner
dbde8ba630 Fix an FLAT OUT WRONG comment
llvm-svn: 8263
2003-08-31 19:37:29 +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
7407775435 Minor simplification
llvm-svn: 8251
2003-08-31 02:50:07 +00:00
Chris Lattner
0fd60ef271 Initial checkin of the CallGraphSCCPass class
llvm-svn: 8247
2003-08-31 01:54:59 +00:00
Chris Lattner
b860fafea2 s/Meth/F
llvm-svn: 8244
2003-08-31 01:38:00 +00:00
Chris Lattner
84474d02d0 Add new helper function which makes it even easier to do this sort of thing
llvm-svn: 8237
2003-08-31 00:19:18 +00:00
Chris Lattner
3521199bc1 Remove automagic support for Modules. Noone uses it now anyways, and GCC 3.4 doesn't want us to do this unless Module has been #included
llvm-svn: 8216
2003-08-29 14:48:21 +00:00
Chris Lattner
5ec6f80964 Move getAnalysisToUpdate to after the definition of AnalysisResolver.
GCC 3.4 apparently wants classes to be DEFINED before they are USED.  What is
it smoking.

llvm-svn: 8213
2003-08-29 14:26:51 +00:00
Chris Lattner
51f4550b50 Allow for "unsafe" replaceAllUsesWith operatations, for use during type resolution
llvm-svn: 8208
2003-08-29 05:36:05 +00:00