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
f72da72785
Rename TarjanSCCIterator -> scc_iterator
...
* Increases consistency with other iterators (e.g. df_iterator, po_iterator...)
* It's shorter
* We don't name classes by the implementation, we name it for the interface!
llvm-svn: 8273
2003-08-31 20:01:57 +00:00
Chris Lattner
076533d11b
ELIMINATE the SCC class completely. One less thing deriving from std::vector
...
llvm-svn: 8272
2003-08-31 19:55:31 +00:00
Chris Lattner
44378dc381
Move the HasLoop method from the SCC class to the iterator class
...
llvm-svn: 8268
2003-08-31 19:51:22 +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
a8dc1ecf58
* Cleanups
...
* operator* now returns a reference to the current SCC, instead of a possibly
null pointer
llvm-svn: 8261
2003-08-31 19:34:27 +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
7250c86571
Remove usage of unsigned long: unsigned should be enough!
...
Remove explicit use of a stack<>, use a vector instead
llvm-svn: 8246
2003-08-31 01:48:21 +00:00
Chris Lattner
31b633bf65
This file uses cerr without including <iostream>. Since it's just for debugging, comment it out
...
llvm-svn: 8245
2003-08-31 01:45:00 +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
926a2197ec
Fix compilation problems with G++ 3.4
...
llvm-svn: 8212
2003-08-29 14:22:29 +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
Chris Lattner
d5c685b6fc
Add new method
...
llvm-svn: 8204
2003-08-29 05:08:31 +00:00
Tanya Lattner
ff06e1a796
Moved index in BB to common graph class.
...
llvm-svn: 8175
2003-08-28 15:31:28 +00:00
Misha Brukman
c2bdd7230c
Spell `incompatible' correctly.
...
llvm-svn: 8163
2003-08-27 18:26:28 +00:00
Tanya Lattner
68f651356f
*** empty log message ***
...
llvm-svn: 8161
2003-08-27 15:52:23 +00:00
Tanya Lattner
93162e16d6
Cleaned up the code (spacing, not needed headers) and changed ostream function. Also made some functions inline.
...
llvm-svn: 8154
2003-08-27 02:45:08 +00:00
Tanya Lattner
9353c099ac
SchedGraphCommon header file. Contains class definition for SchedGraphCommon which is used by SchedGraph and ModuloSchedGraph (coming soon).
...
llvm-svn: 8149
2003-08-25 23:12:23 +00:00
Chris Lattner
e7a3a51c77
As it turns out, things will be simpler than I first expected. We no longer
...
need any exception handling intrinsics beyond llvm.unwind. (yaay)
llvm-svn: 8145
2003-08-25 22:35:01 +00:00
Chris Lattner
24b58d4b81
Targets now configure themselves based on the source module, not on the
...
ad-hoc "Config" flags
llvm-svn: 8134
2003-08-24 19:50:53 +00:00
Chris Lattner
90253d18b1
Targets should configure themselves based on the module, not some wierd flags
...
llvm-svn: 8131
2003-08-24 19:49:07 +00:00
Chris Lattner
c6135a9ea7
Allow modules to have 'any' pointer size and endianness.
...
llvm-svn: 8117
2003-08-24 13:46:37 +00:00
Chris Lattner
33a8b49795
rethrow is really the language independent primitive here. "throw" can be written
...
in terms of it and llvm.exc.setcurrent.
Rework these intrinsics.
llvm-svn: 8109
2003-08-24 12:24:03 +00:00
Chris Lattner
e61cdf5a6e
Add versions of InlineFunction which work on Invoke instructions and general call sites
...
llvm-svn: 8105
2003-08-24 06:58:32 +00:00
Chris Lattner
6fe728600d
Initial support for recognizing LLVM exception handling intrinsics
...
llvm-svn: 8102
2003-08-24 05:30:29 +00:00
Chris Lattner
851a6f8d37
Allow specifying the name for the newly split basic block
...
llvm-svn: 8097
2003-08-24 03:41:39 +00:00
Chris Lattner
028e23f032
Add period
...
llvm-svn: 8090
2003-08-23 23:15:10 +00:00
Chris Lattner
367cef7b75
Rename SwitchInst::dest_push_back -> addCase
...
Add new removeCase method
llvm-svn: 8088
2003-08-23 23:14:37 +00:00
Chris Lattner
035a14e67f
Of course, the copy ctor really should copy the operand as well
...
llvm-svn: 8077
2003-08-23 20:06:38 +00:00
Chris Lattner
2e682be3b2
Add more methods to be more value-like
...
llvm-svn: 8074
2003-08-23 19:51:10 +00:00
Chris Lattner
9b93eff8bb
Initial checkin of ValueHolder helper class
...
llvm-svn: 8073
2003-08-23 19:43:18 +00:00
Chris Lattner
8e9740071f
Add missing #include
...
llvm-svn: 8063
2003-08-22 23:08:55 +00:00
Chris Lattner
805dd2d1d7
Changes to work better with GCC3.4/LLVM G++
...
llvm-svn: 8054
2003-08-22 14:26:59 +00:00
Misha Brukman
cda7f97dbb
The word dependent' has no
a'.
...
llvm-svn: 8030
2003-08-21 22:14:26 +00:00
John Criswell
8bc390da1b
The JIT now passes the environment pointer to the main() function when it
...
starts a program. This allows the GNU env program to compile and JIT under
LLVM.
llvm-svn: 8022
2003-08-21 21:12:30 +00:00
Chris Lattner
e28c0bf667
Remove unused file
...
llvm-svn: 8021
2003-08-21 20:54:51 +00:00
Chris Lattner
5a88c2d371
Make assertion message more helpful in a case that might happen...
...
llvm-svn: 7975
2003-08-19 21:57:00 +00:00
Chris Lattner
2e6dfe808d
Add new methods, update comments
...
llvm-svn: 7962
2003-08-18 22:10:57 +00:00
Chris Lattner
2c6666efc6
Add intrinsics for the llvm.sig(set|long)jmp functions
...
llvm-svn: 7949
2003-08-18 15:41:24 +00:00
Misha Brukman
56f7db4178
Spell `necessary' correctly.
...
llvm-svn: 7944
2003-08-18 14:43:39 +00:00
Chris Lattner
0674b75f99
Fix bug: LoopPreheaders/2003-08-15-PreheadersFail.ll
...
llvm-svn: 7915
2003-08-16 20:57:16 +00:00
Brian Gaeke
294589d7f6
lib/Support/CommandLine.cpp:
...
Many changes suggested by Chris. It's okay, I'll recover from the emotional
damage...maybe someday. :-)
Collapse ParseCStringVector into ParseStringVector. Comment it.
Make it take a const input.
Use std::string::npos instead of -1 (what a mouthful!)
Make ParseEnvironmentOptions take const inputs.
Check its args at the very beginning.
Strdup all the contents of newArgv and free them all at the end.
include/Support/CommandLine.h:
Constify progName and envVar arguments to ParseEnvironmentOptions().
llvm-svn: 7905
2003-08-15 21:05:57 +00:00
Misha Brukman
52b0a71cee
hash_map and hash_set:
...
* Define HASH_NAMESPACE to `std' in the case of pre-3.0 GCC compilers
* Add comments to clarify the intent of all the #ifdef madness
* Add VIM directive to highlight files as C++
llvm-svn: 7903
2003-08-15 20:01:10 +00:00
Misha Brukman
2416155d3d
Reordered includes to be consistent with the LLVM style.
...
llvm-svn: 7887
2003-08-15 17:52:02 +00:00
Chris Lattner
09d58b8157
Remove extraneous #include
...
llvm-svn: 7881
2003-08-15 05:21:30 +00:00
Chris Lattner
d929db2450
Add support for basic blocks, unary/binary unspecs, conditional branches, ...
...
llvm-svn: 7874
2003-08-15 04:52:51 +00:00
Chris Lattner
6b9c20230f
Remove extraneous cl:: namespace qualifiers
...
llvm-svn: 7852
2003-08-14 22:04:41 +00:00
Brian Gaeke
1fea9addaa
Add support for reading command line arguments from an environment variable.
...
llvm-svn: 7851
2003-08-14 22:00:59 +00:00
Brian Gaeke
4651096037
Factory methods for function passes now return type FunctionPass *.
...
llvm-svn: 7839
2003-08-14 06:09:32 +00:00
Brian Gaeke
4d260a9317
Add new method to FunctionPassManager to add ImmutablePasses.
...
llvm-svn: 7838
2003-08-14 06:07:57 +00:00
Brian Gaeke
77c65be59e
Factory methods for FunctionPasses now return type FunctionPass *.
...
llvm-svn: 7823
2003-08-13 18:18:15 +00:00
Brian Gaeke
2e59087317
Deconstify parameter to getPointerToFunction().
...
llvm-svn: 7822
2003-08-13 18:17:54 +00:00
Brian Gaeke
299cf12f45
addPassesToJITCompile and addPassesToEmitMachineCode now take a
...
FunctionPassManager, to support function-at-a-time compilation and
emission of code.
llvm-svn: 7821
2003-08-13 18:17:27 +00:00
John Criswell
64631c7abe
Removing the pool allocator from the main CVS tree.
...
Use the poolalloc module in CVS from now on.
llvm-svn: 7810
2003-08-13 15:36:15 +00:00
Vikram S. Adve
1e41dd39ae
Make MInst2LVSetBI and MInst2LVSetAI be hash_maps instead of maps.
...
Add some comments and non-const methods to fix constness problems.
llvm-svn: 7797
2003-08-12 23:39:08 +00:00
Brian Gaeke
4243c7aa6a
Add FunctionPassManager - it's like a PassManager, but it only deals in
...
FunctionPasses.
llvm-svn: 7778
2003-08-12 17:22:39 +00:00
Brian Gaeke
0c25ceaba7
If we can't find INT64_MAX, set it to a reasonable default value,
...
instead of printing out an (incorrect) #error message.
llvm-svn: 7744
2003-08-11 20:04:57 +00:00
Chris Lattner
f918b0a5fc
Add support to the mangler for targets which require _'s on global symbols
...
llvm-svn: 7741
2003-08-11 19:34:29 +00:00
Chris Lattner
49f6244b56
Initial checkin of SelectionDAG header file
...
llvm-svn: 7716
2003-08-11 14:56:26 +00:00
Misha Brukman
ca83e0d56b
Remove references to `bugpoint' from the now-generic system utilities.
...
llvm-svn: 7693
2003-08-07 21:33:33 +00:00
Misha Brukman
1e83bc90b9
Moved removeFile() and getUniqueFilename() into FileUtilities.
...
llvm-svn: 7691
2003-08-07 21:28:50 +00:00
Sumant Kowshik
154c4b21ec
Added a flag which is set when all data structures are not pool allocated
...
llvm-svn: 7660
2003-08-07 04:37:52 +00:00
Chris Lattner
142e03de74
There was no reason for these to be bit-fields, they just need to be unique.
...
Also, add an isVoid item
llvm-svn: 7659
2003-08-07 00:17:00 +00:00
Chris Lattner
9d58af6fcf
Add a bunch of new Alpha Intrinsics for Rahul Joshi
...
llvm-svn: 7646
2003-08-06 20:08:25 +00:00
Chris Lattner
138a3fc9ab
Completely eliminate the per-machine-instruction regsUsed set.
...
This substantially shrinks the size of each machine instruction, which should
make allocation faster and the cache footprint of the machine code lighter.
Here are some timings for code generation of the larger benchmarks we have.
This are timings of code generation phases of the X86 JIT, when compiled in
debug mode:
Before After Diff
164.gzip:
InstSel 0.0878 0.0722 -21.6%
RegAlloc 0.2031 0.1757 -15.6%
TOTAL 0.5585 0.4999 -11.7%
Ptrdist-bc:
InstSel 0.0878 0.0722 -21.6%
RegAlloc 0.2070 0.1933 - 7.1%
TOTAL 0.6972 0.6464 - 7.9%
197.parser:
InstSel 0.2148 0.2148 - 0.0%
RegAlloc 0.4941 0.4277 -15.5%
TOTAL 1.3749 1.2851 - 7.0%
175.vpr:
InstSel 0.2519 0.2109 -19.4%
RegAlloc 0.5976 0.5663 - 5.5%
TOTAL 1.6933 1.6347 - 3.5%
254.gap:
InstSel 1.1328 0.9921 -14.2%
RegAlloc 2.6933 2.4804 - 8.6%
TOTAL 7.7871 7.2499 - 7.4%
llvm-svn: 7622
2003-08-05 22:39:13 +00:00
Chris Lattner
a826c8d485
Do not insert physical regsiters into the regsUsed set
...
llvm-svn: 7617
2003-08-05 21:55:20 +00:00
Chris Lattner
bd872cdaaf
Add a comment to the method decl
...
llvm-svn: 7609
2003-08-05 18:38:16 +00:00
Chris Lattner
8da1b00db6
Remove unused method
...
llvm-svn: 7608
2003-08-05 17:09:08 +00:00
Sumant Kowshik
9d60ea4810
Added declaration of mergeInGlobalsGraph
...
llvm-svn: 7607
2003-08-05 17:06:18 +00:00
Chris Lattner
b047a0d449
All callers of these methods actually wanted them to preserve the flags,
...
so get rid of the def/use parameters that were getting passed in.
**** This now changes the semantics of these methods to preserve the flags,
not clobber them!
llvm-svn: 7602
2003-08-05 16:58:46 +00:00
Sumant Kowshik
d0be623358
Added the declaration of InlineIndirectCalls
...
llvm-svn: 7601
2003-08-05 16:56:59 +00:00
Chris Lattner
4c675245b9
The NOOP instruction is no longer needed. Instead, use the
...
TargetInstrInfo::isNOPinstr method
llvm-svn: 7530
2003-08-03 18:52:15 +00:00
Chris Lattner
7ab0de6845
CVS, please don't tell us that we have a new config.h file, everyone knows that.
...
llvm-svn: 7527
2003-08-03 18:31:38 +00:00
Chris Lattner
1dd4e725c7
Move debugging support out of Statistic.h into Debug.h, implement the new DEBUG_TYPE facilities
...
llvm-svn: 7490
2003-08-01 22:12:40 +00:00
Chris Lattner
b3eb22c644
Including statistics into an anonymous namespace that gets #included into
...
every file is a bad idea.
llvm-svn: 7489
2003-08-01 22:12:07 +00:00
Chris Lattner
a1e4389087
New file
...
llvm-svn: 7482
2003-08-01 20:28:55 +00:00
Chris Lattner
2e42e72132
This file doesn't need this include
...
llvm-svn: 7479
2003-08-01 19:16:18 +00:00
Tanya Lattner
f3da6ac76f
Renamed trapping instruction function to be more consistent with other functions in the file.
...
llvm-svn: 7448
2003-07-31 05:08:02 +00:00
Tanya Lattner
8c2ac118ce
Added function to determine if an Instruction may trap.
...
llvm-svn: 7442
2003-07-31 04:05:50 +00:00
Chris Lattner
1fd37738b6
Code generation passes don't need access to raw LLVM types, this method is unnecessary.
...
llvm-svn: 7412
2003-07-30 05:29:45 +00:00
Vikram S. Adve
b73a1c0085
Unify all constant evaluations that depend on register size
...
in TargetInstrInfo::ConvertConstantToIntType.
llvm-svn: 7398
2003-07-29 20:30:20 +00:00
Vikram S. Adve
e02f966e3e
Moved insertCallerSavingCode() to PhyRegAlloc and
...
moved isRegVolatile and modifiedByCall here: they are all
machine independent. Remove all uses of PhyRegAlloc.
llvm-svn: 7387
2003-07-29 19:41:23 +00:00