Commit Graph

10215 Commits

Author SHA1 Message Date
Chris Lattner 1cb6d2697d Stop using this method
llvm-svn: 11282
2004-02-10 21:12:06 +00:00
Chris Lattner 8d0dc12c3e Remove uses of MachineOperand::isVirtualRegister
llvm-svn: 11281
2004-02-10 20:55:47 +00:00
Chris Lattner 2d5feb5e04 Remvoe use of MO.isVirtualRegister(), turn an assertion into an assert()
llvm-svn: 11280
2004-02-10 20:47:24 +00:00
Chris Lattner 0e615e6c20 Eliminate MachineOperand::isPhysicalRegister. The X86 backend should use
MRegisterInfo::isPhysicalRegister(MO.getReg()) and the Sparc backend should
use isMachineRegister()

llvm-svn: 11279
2004-02-10 20:42:11 +00:00
Chris Lattner 373fba5c1d Eliminate users of MachineOperand::isPhysicalRegister
llvm-svn: 11278
2004-02-10 20:41:10 +00:00
Chris Lattner 2aea68ccfd Remove use of isPhysicalRegister
llvm-svn: 11277
2004-02-10 20:35:42 +00:00
Chris Lattner 92252f42c3 Don't use MachineOperator::is(Phys|Virt)Register
llvm-svn: 11276
2004-02-10 20:31:28 +00:00
Chris Lattner 13d2f3bbc0 Simplify condition, this does not change the predicate at all though
llvm-svn: 11275
2004-02-10 20:30:40 +00:00
Chris Lattner 259e98ed27 Tighten up checks
llvm-svn: 11274
2004-02-10 20:25:13 +00:00
Chris Lattner 2711c12f48 Right, define the LPROF variable
llvm-svn: 11273
2004-02-10 19:46:14 +00:00
Chris Lattner 881d01f30c Make sure to copy the null terminator at the end of the argv list. Some
programs use it instead of argc.

llvm-svn: 11270
2004-02-10 19:14:44 +00:00
Misha Brukman 9a4b8f8263 * Added class comments
* Doxygenified existing comments
* Compactified code to be more consistent

llvm-svn: 11268
2004-02-10 18:44:16 +00:00
Chris Lattner cad1501db8 Fix documentation bugs
llvm-svn: 11267
2004-02-10 18:04:24 +00:00
Chris Lattner 7069bb2cd6 Make block profiling the default
add a new -function argument
Add a new -o argument to specify where to put llvmprof.out data

llvm-svn: 11265
2004-02-10 18:01:50 +00:00
Chris Lattner 6dc79e5d31 Allow the program to take a '-llvmprof-output filename' option to specify
where to output the profiling data, if llvmprof.out is not good enough.

llvm-svn: 11264
2004-02-10 18:01:00 +00:00
Chris Lattner 3232bbb9d8 initialization calls now return argc. If the program uses the argc value
passed into main, make sure they use the return value of the init call
instead of the one passed in.

llvm-svn: 11262
2004-02-10 17:41:01 +00:00
Chris Lattner b94ff3c67c Make the initialization calls return argc.
llvm-svn: 11261
2004-02-10 17:36:25 +00:00
Misha Brukman 78292b3e66 Doxygen-ify comments, make function prototypes more consistent in format.
llvm-svn: 11259
2004-02-10 16:39:05 +00:00
Brian Gaeke efae456cf5 Mention install, RPM, autoconf improvements
llvm-svn: 11257
2004-02-10 05:22:23 +00:00
Chris Lattner 6b3dea2cc0 Bug fixed
llvm-svn: 11256
2004-02-10 05:19:54 +00:00
Chris Lattner ff04d76c57 Fix PR228: [sparc] Boolean constants are emitted as true and false
I will observe that the concept of using WriteAsOperand is completely broken,
but then we all knew that, didn't we?

llvm-svn: 11255
2004-02-10 05:16:44 +00:00
Brian Gaeke 4766d0c680 RPM spec file for LLVM tools and libraries.
llvm-svn: 11254
2004-02-10 03:57:51 +00:00
Brian Gaeke c6d8be1137 Should fix pr220 - "make install" doesn't install header files when
BUILD_SRC_ROOT != BUILD_OBJ_ROOT

llvm-svn: 11253
2004-02-10 01:10:01 +00:00
Misha Brukman 7f7a842bd6 Doxygenify comments.
llvm-svn: 11252
2004-02-09 23:18:42 +00:00
Chris Lattner a52b206d91 Move this testcase out of /home/vadve/lattner/cvs/llvm/test/Programs/LLVMSource,
as it fails.

llvm-svn: 11250
2004-02-09 22:52:25 +00:00
Chris Lattner 37d46f4815 Only add the global variable with the abort message if an unwind actually
occurs in the program.

llvm-svn: 11249
2004-02-09 22:48:47 +00:00
Alkis Evlogimenos 56258ab1a2 Add global methods that prevent us from using ilist::iterators as
random access iterators.

llvm-svn: 11248
2004-02-09 22:40:50 +00:00
John Criswell 4dc5478fbc Fix PR#226: When emitting padding, always emit it as bytes. Bytes can be
placed into any alignment situation.

llvm-svn: 11247
2004-02-09 22:15:33 +00:00
Chris Lattner 24fa566960 Many things have been fixed, so move them out of the "known problems" section
Also, PR137 is a code quality PR, not a bug

llvm-svn: 11246
2004-02-09 21:22:51 +00:00
Chris Lattner 805e5e7e52 QOI bug fixed
llvm-svn: 11245
2004-02-09 21:16:16 +00:00
Chris Lattner 7289e62874 It turns out that the two dimensional vectors were causing big slowdowns
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
2004-02-09 21:03:38 +00:00
Chris Lattner 54b582f11d Remove the statistics
llvm-svn: 11243
2004-02-09 21:01:23 +00:00
Chris Lattner 478fac37e4 Speed up type resolution some more. On the testcase in PR224, for example,
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
2004-02-09 20:23:44 +00:00
Chris Lattner edd4500cf0 When resolving upreferences, if multiple uprefs will be resolved to the same
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
2004-02-09 18:53:54 +00:00
Brian Gaeke 0df4298547 SchedGraph doesn't need to be friends with SchedGraphNodeCommon anymore.
llvm-svn: 11240
2004-02-09 18:43:06 +00:00
Brian Gaeke 2e1cbb735d Move InstrSchedule's iterator begin/end methods inline.
llvm-svn: 11239
2004-02-09 18:42:46 +00:00
Brian Gaeke 312e3a28d2 Make SchedGraph::dump() use SchedGraphNodeCommon's const_iterator
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
2004-02-09 18:42:05 +00:00
Chris Lattner aedce9d6b1 Implement the hashing scheme in an attempt to speed up the "slow" case in
type resolution.  Unfortunately it doesn't help.

Also delete some dead debugging code.

llvm-svn: 11237
2004-02-09 18:32:40 +00:00
Brian Gaeke 12705d56ef Fix bug in installation process: MKDIR must respect DESTDIR.
llvm-svn: 11236
2004-02-09 17:38:52 +00:00
Chris Lattner e33ddf57f6 This debugging hook is no longer needed.
llvm-svn: 11233
2004-02-09 17:20:52 +00:00
Chris Lattner eecaba0c33 Code cleanup in preparation for later changes. Now that ContainedTy's are
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
2004-02-09 16:35:14 +00:00
Chris Lattner cbd34b2ae6 Now that all of the derived types have disciplined interfaces, we can eliminate
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
2004-02-09 05:40:24 +00:00
Chris Lattner e3af6f73ce Don't depend on auto data conversion
llvm-svn: 11229
2004-02-09 05:16:30 +00:00
Chris Lattner ac6db755c3 Adjust to the changed StructType interface. In particular, getElementTypes() is gone.
llvm-svn: 11228
2004-02-09 04:37:31 +00:00
Chris Lattner 4da68e2d7b Increase encapsulation of the StructType class, eliminating the getElementTypes() member
llvm-svn: 11227
2004-02-09 04:36:50 +00:00
Chris Lattner 66aef96171 Method is gone
llvm-svn: 11226
2004-02-09 04:14:46 +00:00
Chris Lattner fa829be4d3 Start using the new and improve interface to FunctionType arguments
llvm-svn: 11224
2004-02-09 04:14:01 +00:00
Chris Lattner f5a4e33e49 Improve encapsulation in the FunctionType class, by adding param_(iterator/begin/end)
members, and eliminating the getParamTypes() method, and the associated typedef.

llvm-svn: 11223
2004-02-09 04:12:57 +00:00
Chris Lattner a9634a0ee3 This #include is not needed, it should have been removed with the last patch
llvm-svn: 11222
2004-02-09 03:22:32 +00:00
Chris Lattner 3cb4167b26 Instead of searching the entire type graph for a type to determine if it
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
2004-02-09 03:19:29 +00:00