summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Eliminate MachineOperand::isPhysicalRegister. The X86 backend should useChris Lattner2004-02-101-4/+0
| | | | | | | MRegisterInfo::isPhysicalRegister(MO.getReg()) and the Sparc backend should use isMachineRegister() llvm-svn: 11279
* Eliminate users of MachineOperand::isPhysicalRegisterChris Lattner2004-02-103-5/+8
| | | | llvm-svn: 11278
* Remove use of isPhysicalRegisterChris Lattner2004-02-101-1/+1
| | | | llvm-svn: 11277
* Don't use MachineOperator::is(Phys|Virt)RegisterChris Lattner2004-02-102-3/+3
| | | | llvm-svn: 11276
* Simplify condition, this does not change the predicate at all thoughChris Lattner2004-02-101-1/+3
| | | | llvm-svn: 11275
* Tighten up checksChris Lattner2004-02-101-2/+2
| | | | llvm-svn: 11274
* Right, define the LPROF variableChris Lattner2004-02-101-0/+1
| | | | llvm-svn: 11273
* Make sure to copy the null terminator at the end of the argv list. SomeChris Lattner2004-02-101-2/+2
| | | | | | programs use it instead of argc. llvm-svn: 11270
* * Added class commentsMisha Brukman2004-02-101-20/+32
| | | | | | | * Doxygenified existing comments * Compactified code to be more consistent llvm-svn: 11268
* Fix documentation bugsChris Lattner2004-02-101-6/+7
| | | | llvm-svn: 11267
* Make block profiling the defaultChris Lattner2004-02-101-6/+21
| | | | | | | add a new -function argument Add a new -o argument to specify where to put llvmprof.out data llvm-svn: 11265
* Allow the program to take a '-llvmprof-output filename' option to specifyChris Lattner2004-02-101-2/+30
| | | | | | where to output the profiling data, if llvmprof.out is not good enough. llvm-svn: 11264
* initialization calls now return argc. If the program uses the argc valueChris Lattner2004-02-101-17/+24
| | | | | | | passed into main, make sure they use the return value of the init call instead of the one passed in. llvm-svn: 11262
* Make the initialization calls return argc.Chris Lattner2004-02-104-9/+13
| | | | llvm-svn: 11261
* Doxygen-ify comments, make function prototypes more consistent in format.Misha Brukman2004-02-101-5/+8
| | | | llvm-svn: 11259
* Mention install, RPM, autoconf improvementsBrian Gaeke2004-02-101-2/+9
| | | | llvm-svn: 11257
* Bug fixedChris Lattner2004-02-101-0/+1
| | | | llvm-svn: 11256
* Fix PR228: [sparc] Boolean constants are emitted as true and falseChris Lattner2004-02-101-0/+2
| | | | | | | I will observe that the concept of using WriteAsOperand is completely broken, but then we all knew that, didn't we? llvm-svn: 11255
* RPM spec file for LLVM tools and libraries.Brian Gaeke2004-02-101-0/+56
| | | | llvm-svn: 11254
* Should fix pr220 - "make install" doesn't install header files whenBrian Gaeke2004-02-101-0/+3
| | | | | | BUILD_SRC_ROOT != BUILD_OBJ_ROOT llvm-svn: 11253
* Doxygenify comments.Misha Brukman2004-02-091-12/+9
| | | | llvm-svn: 11252
* Move this testcase out of /home/vadve/lattner/cvs/llvm/test/Programs/LLVMSource,Chris Lattner2004-02-091-0/+13
| | | | | | as it fails. llvm-svn: 11250
* Only add the global variable with the abort message if an unwind actuallyChris Lattner2004-02-091-14/+26
| | | | | | occurs in the program. llvm-svn: 11249
* Add global methods that prevent us from using ilist::iterators asAlkis Evlogimenos2004-02-091-0/+12
| | | | | | random access iterators. llvm-svn: 11248
* Fix PR#226: When emitting padding, always emit it as bytes. Bytes can beJohn Criswell2004-02-091-8/+5
| | | | | | placed into any alignment situation. llvm-svn: 11247
* Many things have been fixed, so move them out of the "known problems" sectionChris Lattner2004-02-091-32/+2
| | | | | | Also, PR137 is a code quality PR, not a bug llvm-svn: 11246
* QOI bug fixedChris Lattner2004-02-091-0/+1
| | | | llvm-svn: 11245
* It turns out that the two dimensional vectors were causing big slowdownsChris Lattner2004-02-091-32/+34
| | | | | | | | | | | | | | | | | in this for programs with lots of types (like the testcase in PR224). The problem was that the type ID that the outer vector was using was not very dense (as many types are getting resolved), so the vector is large and gets reallocated a lot. Since there are a lot of values in the program (the .ll file is 10M), each reallocation has to copy the subvectors, which is also quite slow (this wouldn't be a problem if C++ supported move semantics, but it doesn't, at least not yet :( Changing the outer data structure to a map speeds a release build of llvm-as up from 11.21s to 5.13s on the testcase in PR224. llvm-svn: 11244
* Remove the statisticsChris Lattner2004-02-091-11/+0
| | | | llvm-svn: 11243
* Speed up type resolution some more. On the testcase in PR224, for example,Chris Lattner2004-02-091-8/+27
| | | | | | | this speeds up a release llvm-as from 21.95s to 11.21s, because before it would do an expensive traversal of the type-graph of every type resolved. llvm-svn: 11242
* When resolving upreferences, if multiple uprefs will be resolved to the sameChris Lattner2004-02-091-6/+24
| | | | | | | | type at the same time, resolve the upreferences to each other before resolving it to the outer type. This shaves off some time from the testcase in PR224, from 25.41s -> 21.72s. llvm-svn: 11241
* SchedGraph doesn't need to be friends with SchedGraphNodeCommon anymore.Brian Gaeke2004-02-091-1/+0
| | | | llvm-svn: 11240
* Move InstrSchedule's iterator begin/end methods inline.Brian Gaeke2004-02-091-28/+4
| | | | llvm-svn: 11239
* Make SchedGraph::dump() use SchedGraphNodeCommon's const_iteratorBrian Gaeke2004-02-091-25/+14
| | | | | | | | | instead of randomly groping about inside its outEdges array. Make SchedGraph::addDummyEdges() use getNumOutEdges() instead of outEdges.size(). Get rid of ifdefed-out code in SchedGraph::buildGraph(). llvm-svn: 11238
* Implement the hashing scheme in an attempt to speed up the "slow" case inChris Lattner2004-02-091-50/+68
| | | | | | | | type resolution. Unfortunately it doesn't help. Also delete some dead debugging code. llvm-svn: 11237
* Fix bug in installation process: MKDIR must respect DESTDIR.Brian Gaeke2004-02-092-5/+5
| | | | llvm-svn: 11236
* This debugging hook is no longer needed.Chris Lattner2004-02-091-2/+0
| | | | llvm-svn: 11233
* Code cleanup in preparation for later changes. Now that ContainedTy's areChris Lattner2004-02-091-107/+75
| | | | | | | consistent across the various type classes, we can factor out a LOT more almost-identical code. Also, add a couple of temporary statistics. llvm-svn: 11232
* Now that all of the derived types have disciplined interfaces, we can eliminateChris Lattner2004-02-093-181/+76
| | | | | | | all of the ad-hoc storage of contained types. This allows getContainedType to not be virtual, and allows us to entirely delete the TypeIterator class. llvm-svn: 11230
* Don't depend on auto data conversionChris Lattner2004-02-091-1/+1
| | | | llvm-svn: 11229
* Adjust to the changed StructType interface. In particular, ↵Chris Lattner2004-02-0914-66/+56
| | | | | | getElementTypes() is gone. llvm-svn: 11228
* Increase encapsulation of the StructType class, eliminating the ↵Chris Lattner2004-02-091-9/+15
| | | | | | getElementTypes() member llvm-svn: 11227
* Method is goneChris Lattner2004-02-091-2/+0
| | | | llvm-svn: 11226
* Start using the new and improve interface to FunctionType argumentsChris Lattner2004-02-0912-104/+87
| | | | llvm-svn: 11224
* Improve encapsulation in the FunctionType class, by adding ↵Chris Lattner2004-02-091-4/+6
| | | | | | | | param_(iterator/begin/end) members, and eliminating the getParamTypes() method, and the associated typedef. llvm-svn: 11223
* This #include is not needed, it should have been removed with the last patchChris Lattner2004-02-091-1/+0
| | | | llvm-svn: 11222
* Instead of searching the entire type graph for a type to determine if itChris Lattner2004-02-091-8/+29
| | | | | | | | | | | contains the type we are looking for, just search the immediately used types. We can only do this because we keep the "current" type in the nesting level as we decrement upreferences. This change speeds up the testcase in PR224 from 50.4s to 22.08s, not too shabby. llvm-svn: 11221
* Upreferences are always OpaqueTypes, meaning that it is impossible for a ↵Chris Lattner2004-02-091-0/+1
| | | | | | | | | non-abstract type from containing one. This speeds up the asmparser on the testcase in PR224 from 61->50s. llvm-svn: 11220
* Another nice speedup for the register allocator. This time, we replaceChris Lattner2004-02-091-37/+55
| | | | | | | | the Virt2PhysRegMap std::map with an std::vector. This speeds up the register allocator another (almost) 40%, from .72->.45s in a release build of LLC on 253.perlbmk. llvm-svn: 11219
* Add a new (hidden) option that is useful for profiling.Chris Lattner2004-02-091-1/+5
| | | | llvm-svn: 11218
OpenPOWER on IntegriCloud