oota-llvm.git
18 years agoFixed minor typos.
John Criswell [Thu, 12 Feb 2004 18:11:53 +0000 (18:11 +0000)]
Fixed minor typos.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11356 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd support for the llvm.memmove intrinsic
Chris Lattner [Thu, 12 Feb 2004 18:11:20 +0000 (18:11 +0000)]
Add support for the llvm.memmove intrinsic

Patch graciously contributed by Reid Spencer!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11355 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd support for the llvm.memmove intrinsic.
Chris Lattner [Thu, 12 Feb 2004 18:10:10 +0000 (18:10 +0000)]
Add support for the llvm.memmove intrinsic.
Patch graciously contributed by Reid Spencer!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11354 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUrg, check in header I forgot. :(
Chris Lattner [Thu, 12 Feb 2004 17:57:11 +0000 (17:57 +0000)]
Urg, check in header I forgot.  :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11353 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoTest that we get rep movs when calling memcpy
Chris Lattner [Thu, 12 Feb 2004 17:53:43 +0000 (17:53 +0000)]
Test that we get rep movs when calling memcpy

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11352 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd support for the rep movs[bwd] instructions, and emit them when code
Chris Lattner [Thu, 12 Feb 2004 17:53:22 +0000 (17:53 +0000)]
Add support for the rep movs[bwd] instructions, and emit them when code
generating the llvm.memcpy intrinsic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11351 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDocument the llvm.memcpy intrinsic. Clean up some of the formatting of other
Chris Lattner [Thu, 12 Feb 2004 17:01:32 +0000 (17:01 +0000)]
Document the llvm.memcpy intrinsic.  Clean up some of the formatting of other
sections

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11350 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoImplement the llvm.memcpy intrinsic
Chris Lattner [Thu, 12 Feb 2004 17:01:09 +0000 (17:01 +0000)]
Implement the llvm.memcpy intrinsic

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11349 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRename the opCode instance variable to Opcode
Chris Lattner [Thu, 12 Feb 2004 16:09:53 +0000 (16:09 +0000)]
Rename the opCode instance variable to Opcode

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11348 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove a dead field from MachineInstr!
Chris Lattner [Thu, 12 Feb 2004 16:05:03 +0000 (16:05 +0000)]
Remove a dead field from MachineInstr!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11347 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoThis field is never read
Chris Lattner [Thu, 12 Feb 2004 16:04:49 +0000 (16:04 +0000)]
This field is never read

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11346 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoChange interface so that we can add to the end of a basic block
Alkis Evlogimenos [Thu, 12 Feb 2004 08:11:04 +0000 (08:11 +0000)]
Change interface so that we can add to the end of a basic block
without getting an assertion from ilist that we are dereferencing
ilist<T>::end().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11345 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd one more doxygen comment.
Brian Gaeke [Thu, 12 Feb 2004 04:26:49 +0000 (04:26 +0000)]
Add one more doxygen comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11344 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoExpress one of MachineOperand's many constructors in terms of another, by means of...
Brian Gaeke [Thu, 12 Feb 2004 04:15:00 +0000 (04:15 +0000)]
Express one of MachineOperand's many constructors in terms of another, by means of default arguments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11343 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove this MachineOpCodeFlags assertion - its test can never be false.
Brian Gaeke [Thu, 12 Feb 2004 04:01:07 +0000 (04:01 +0000)]
Remove this MachineOpCodeFlags assertion - its test can never be false.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11342 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove these MachineOpCodeFlags and their accessor - they are never set.
Brian Gaeke [Thu, 12 Feb 2004 04:00:55 +0000 (04:00 +0000)]
Remove these MachineOpCodeFlags and their accessor - they are never set.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11341 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoChange MachineBasicBlock's vector of MachineInstr pointers into an
Alkis Evlogimenos [Thu, 12 Feb 2004 02:27:10 +0000 (02:27 +0000)]
Change MachineBasicBlock's vector of MachineInstr pointers into an
ilist of MachineInstr objects. This allows constant time removal and
insertion of MachineInstr instances from anywhere in each
MachineBasicBlock. It also allows for constant time splicing of
MachineInstrs into or out of MachineBasicBlocks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11340 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agogetOpCode() --> getOpcode().
Brian Gaeke [Thu, 12 Feb 2004 01:34:05 +0000 (01:34 +0000)]
getOpCode() --> getOpcode().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11339 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove getOpCode(). Help doxygenify some comments.
Brian Gaeke [Thu, 12 Feb 2004 01:34:03 +0000 (01:34 +0000)]
Remove getOpCode(). Help doxygenify some comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11338 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoOoops, top-level C++-comments aren't recognized by flex.
Misha Brukman [Thu, 12 Feb 2004 00:03:08 +0000 (00:03 +0000)]
Ooops, top-level C++-comments aren't recognized by flex.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11337 91177308-0d34-0410-b5e6-96231b3b80d8

18 years ago* Convert C comments to C++ style (why are some one way, some another?!)
Misha Brukman [Thu, 12 Feb 2004 00:00:46 +0000 (00:00 +0000)]
* Convert C comments to C++ style (why are some one way, some another?!)
* Delete extra space, extra blank comment lines
* Convert function comments to doxygen

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11336 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMachineInstr::getOpCode() --> getOpcode() in SPARC back-end.
Brian Gaeke [Wed, 11 Feb 2004 20:47:34 +0000 (20:47 +0000)]
MachineInstr::getOpCode() --> getOpcode() in SPARC back-end.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11335 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIf a node has more than 64 outgoing edges, make the edges go from the 'truncated...
Chris Lattner [Wed, 11 Feb 2004 20:44:17 +0000 (20:44 +0000)]
If a node has more than 64 outgoing edges, make the edges go from the 'truncated' block,
instead of dropping them entirely.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11334 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix typos in comments.
Brian Gaeke [Wed, 11 Feb 2004 19:47:43 +0000 (19:47 +0000)]
Fix typos in comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11333 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agos/getOpCode/getOpcode
Chris Lattner [Wed, 11 Feb 2004 19:26:28 +0000 (19:26 +0000)]
s/getOpCode/getOpcode

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11332 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoCosmetic improvements to this option.
Chris Lattner [Wed, 11 Feb 2004 19:14:04 +0000 (19:14 +0000)]
Cosmetic improvements to this option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11331 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix bug in initial check - when recompiling everything with llvm-native-gcc,
Brian Gaeke [Wed, 11 Feb 2004 18:52:05 +0000 (18:52 +0000)]
Fix bug in initial check - when recompiling everything with llvm-native-gcc,
you have to erase the program and re-run the linker, too, before running the
checker.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11328 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoadd advice bullet about -check-exit-code
Brian Gaeke [Wed, 11 Feb 2004 18:44:55 +0000 (18:44 +0000)]
add advice bullet about -check-exit-code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11327 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoadd description of -check-exit-code
Brian Gaeke [Wed, 11 Feb 2004 18:40:04 +0000 (18:40 +0000)]
add description of -check-exit-code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11326 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd check-exit-code option, defaulting to true.
Brian Gaeke [Wed, 11 Feb 2004 18:37:32 +0000 (18:37 +0000)]
Add check-exit-code option, defaulting to true.

Add ProgramExitedNonzero argument to executeProgram(), and make it
tell its caller whether the program exited nonzero.

Move executeProgramWithCBE() out of line, to ExecutionDriver.cpp, and remove
its extra arguments which are always defaulted.  Make it turn off
check-exit-code if the program exits nonzero while generating a reference
output.

Make diffProgram() assume that any nonzero exit code is a failure, if
check-exit-code is turned on.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11325 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoActually load profiling information now! Block layout can use real, live,
Chris Lattner [Wed, 11 Feb 2004 18:21:05 +0000 (18:21 +0000)]
Actually load profiling information now!  Block layout can use real, live,
actual profile info, and works!  :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11324 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix a typeo
Chris Lattner [Wed, 11 Feb 2004 18:20:41 +0000 (18:20 +0000)]
Fix a typeo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11323 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIncrease constness.
Alkis Evlogimenos [Wed, 11 Feb 2004 17:55:09 +0000 (17:55 +0000)]
Increase constness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11322 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an important prototype
Chris Lattner [Wed, 11 Feb 2004 06:11:06 +0000 (06:11 +0000)]
Add an important prototype

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11320 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix copy-and-pastos
Chris Lattner [Wed, 11 Feb 2004 06:10:18 +0000 (06:10 +0000)]
Fix copy-and-pastos

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11319 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd skeleton profileinfoloader pass. This will be enhanced to actually LOAD
Chris Lattner [Wed, 11 Feb 2004 06:10:05 +0000 (06:10 +0000)]
Add skeleton profileinfoloader pass.  This will be enhanced to actually LOAD
a profile tommorow.  :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11318 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove assert as the only integer registers on the sparc are physical.
Alkis Evlogimenos [Wed, 11 Feb 2004 06:04:51 +0000 (06:04 +0000)]
Remove assert as the only integer registers on the sparc are physical.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11317 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFactor profile information loading OUT of llvm-prof into libanalysis
Chris Lattner [Wed, 11 Feb 2004 05:56:07 +0000 (05:56 +0000)]
Factor profile information loading OUT of llvm-prof into libanalysis

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11316 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix previous broken commit. A MachineOperand may have opType ==
Alkis Evlogimenos [Wed, 11 Feb 2004 05:55:00 +0000 (05:55 +0000)]
Fix previous broken commit. A MachineOperand may have opType ==
MO_VirtualRegister but if the register number is one of a physical
register is it considered as a physical register.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11315 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFactor this code out of llvm-prof
Chris Lattner [Wed, 11 Feb 2004 05:54:25 +0000 (05:54 +0000)]
Factor this code out of llvm-prof

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11314 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove obsolete comment. Unreachable blocks will automatically be left at the
Chris Lattner [Wed, 11 Feb 2004 05:20:50 +0000 (05:20 +0000)]
Remove obsolete comment.  Unreachable blocks will automatically be left at the
end of the function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11313 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBasic functionality testing.
Chris Lattner [Wed, 11 Feb 2004 05:00:27 +0000 (05:00 +0000)]
Basic functionality testing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11312 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd an _embarassingly simple_ implementation of basic block layout. This is
Chris Lattner [Wed, 11 Feb 2004 04:53:20 +0000 (04:53 +0000)]
Add an _embarassingly simple_ implementation of basic block layout.  This is
more of a testcase for profiling information than anything that should reasonably
be used, but it's a starting point.  When I have more time I will whip this into
better shape.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11311 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove assert as it is meaningless. MachineOperands can be tagged as
Alkis Evlogimenos [Wed, 11 Feb 2004 04:52:30 +0000 (04:52 +0000)]
Remove assert as it is meaningless. MachineOperands can be tagged as
MO_VirtualRegister but actually be representing a physical register.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11310 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake sure to register the 'no profile' implementation as the default for ProfileInfo
Chris Lattner [Wed, 11 Feb 2004 04:47:54 +0000 (04:47 +0000)]
Make sure to register the 'no profile' implementation as the default for ProfileInfo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11309 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSimplify implementation, and probably speed things up too.
Chris Lattner [Wed, 11 Feb 2004 03:57:16 +0000 (03:57 +0000)]
Simplify implementation, and probably speed things up too.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11308 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoImplement SimplifyCFG/PhiEliminate.ll
Chris Lattner [Wed, 11 Feb 2004 03:36:04 +0000 (03:36 +0000)]
Implement SimplifyCFG/PhiEliminate.ll

Having a proper 'select' instruction would allow the elimination of a lot
of the special case cruft in this patch, but we don't have one yet.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11307 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoNew feature testcase for simplifycfg.
Chris Lattner [Wed, 11 Feb 2004 03:35:04 +0000 (03:35 +0000)]
New feature testcase for simplifycfg.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11306 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoInitialize the count instance variable.
Chris Lattner [Wed, 11 Feb 2004 03:29:16 +0000 (03:29 +0000)]
Initialize the count instance variable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11305 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoExpose the "Other" value type to tablegen targets
Chris Lattner [Wed, 11 Feb 2004 03:08:45 +0000 (03:08 +0000)]
Expose the "Other" value type to tablegen targets

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11304 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove long obsolete method. switch instructions are first class entities in the...
Chris Lattner [Wed, 11 Feb 2004 01:17:58 +0000 (01:17 +0000)]
Remove long obsolete method.  switch instructions are first class entities in the CFG, and have been for a LOOOONG time.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11303 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove obsolete method
Chris Lattner [Wed, 11 Feb 2004 01:17:33 +0000 (01:17 +0000)]
Remove obsolete method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11302 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoThe hasConstantReferences predicate always returns false.
Chris Lattner [Wed, 11 Feb 2004 01:17:07 +0000 (01:17 +0000)]
The hasConstantReferences predicate always returns false.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11301 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUpdated to handle the new SPEC95 configuration options.
John Criswell [Tue, 10 Feb 2004 22:36:35 +0000 (22:36 +0000)]
Updated to handle the new SPEC95 configuration options.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11298 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdded support for configuring SPEC95.
John Criswell [Tue, 10 Feb 2004 22:29:06 +0000 (22:29 +0000)]
Added support for configuring SPEC95.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11295 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAn initial implementation of an LLVM ProfileInfo class which is designed to
Chris Lattner [Tue, 10 Feb 2004 22:11:42 +0000 (22:11 +0000)]
An initial implementation of an LLVM ProfileInfo class which is designed to
eventually allow Passes to use profiling information to direct them.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11294 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSprinkle liberally with comments, saute with doxygen until readable.
Misha Brukman [Tue, 10 Feb 2004 21:49:59 +0000 (21:49 +0000)]
Sprinkle liberally with comments, saute with doxygen until readable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11293 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDoxygenify comment.
Misha Brukman [Tue, 10 Feb 2004 21:48:12 +0000 (21:48 +0000)]
Doxygenify comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11292 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoUrg, the X86 backend DOES use virtual register operands. :(
Chris Lattner [Tue, 10 Feb 2004 21:43:11 +0000 (21:43 +0000)]
Urg, the X86 backend DOES use virtual register operands. :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11288 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove and simplify some of the bewildering collection of isFOORegister
Chris Lattner [Tue, 10 Feb 2004 21:21:17 +0000 (21:21 +0000)]
Remove and simplify some of the bewildering collection of isFOORegister
methods which have strangely different semantics in different backends,
and noone knew what any did.

Getting rid of these ALSO allows the dependence of MachineInstr.h on
MRegisterInfo.h to be removed, which makes me much happier, and probably
alkis too.  :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11287 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove some unneeded stuff
Chris Lattner [Tue, 10 Feb 2004 21:19:49 +0000 (21:19 +0000)]
Remove some unneeded stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11286 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd #include
Chris Lattner [Tue, 10 Feb 2004 21:18:55 +0000 (21:18 +0000)]
Add #include

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11285 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDo not use MachineOperand::isVirtualRegister either!
Chris Lattner [Tue, 10 Feb 2004 21:12:22 +0000 (21:12 +0000)]
Do not use MachineOperand::isVirtualRegister either!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11283 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoStop using this method
Chris Lattner [Tue, 10 Feb 2004 21:12:06 +0000 (21:12 +0000)]
Stop using this method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11282 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove uses of MachineOperand::isVirtualRegister
Chris Lattner [Tue, 10 Feb 2004 20:55:47 +0000 (20:55 +0000)]
Remove uses of MachineOperand::isVirtualRegister

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11281 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemvoe use of MO.isVirtualRegister(), turn an assertion into an assert()
Chris Lattner [Tue, 10 Feb 2004 20:47:24 +0000 (20:47 +0000)]
Remvoe use of MO.isVirtualRegister(), turn an assertion into an assert()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11280 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoEliminate MachineOperand::isPhysicalRegister. The X86 backend should use
Chris Lattner [Tue, 10 Feb 2004 20:42:11 +0000 (20:42 +0000)]
Eliminate MachineOperand::isPhysicalRegister.  The X86 backend should use
MRegisterInfo::isPhysicalRegister(MO.getReg()) and the Sparc backend should
use isMachineRegister()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11279 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoEliminate users of MachineOperand::isPhysicalRegister
Chris Lattner [Tue, 10 Feb 2004 20:41:10 +0000 (20:41 +0000)]
Eliminate users of MachineOperand::isPhysicalRegister

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11278 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove use of isPhysicalRegister
Chris Lattner [Tue, 10 Feb 2004 20:35:42 +0000 (20:35 +0000)]
Remove use of isPhysicalRegister

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11277 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDon't use MachineOperator::is(Phys|Virt)Register
Chris Lattner [Tue, 10 Feb 2004 20:31:28 +0000 (20:31 +0000)]
Don't use MachineOperator::is(Phys|Virt)Register

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11276 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSimplify condition, this does not change the predicate at all though
Chris Lattner [Tue, 10 Feb 2004 20:30:40 +0000 (20:30 +0000)]
Simplify condition, this does not change the predicate at all though

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11275 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoTighten up checks
Chris Lattner [Tue, 10 Feb 2004 20:25:13 +0000 (20:25 +0000)]
Tighten up checks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11274 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRight, define the LPROF variable
Chris Lattner [Tue, 10 Feb 2004 19:46:14 +0000 (19:46 +0000)]
Right, define the LPROF variable

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11273 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake sure to copy the null terminator at the end of the argv list. Some
Chris Lattner [Tue, 10 Feb 2004 19:14:44 +0000 (19:14 +0000)]
Make sure to copy the null terminator at the end of the argv list.  Some
programs use it instead of argc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11270 91177308-0d34-0410-b5e6-96231b3b80d8

18 years ago* Added class comments
Misha Brukman [Tue, 10 Feb 2004 18:44:16 +0000 (18:44 +0000)]
* Added class comments
* Doxygenified existing comments
* Compactified code to be more consistent

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11268 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix documentation bugs
Chris Lattner [Tue, 10 Feb 2004 18:04:24 +0000 (18:04 +0000)]
Fix documentation bugs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11267 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake block profiling the default
Chris Lattner [Tue, 10 Feb 2004 18:01:50 +0000 (18:01 +0000)]
Make block profiling the default
add a new -function argument
Add a new -o argument to specify where to put llvmprof.out data

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11265 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAllow the program to take a '-llvmprof-output filename' option to specify
Chris Lattner [Tue, 10 Feb 2004 18:01:00 +0000 (18:01 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11264 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoinitialization calls now return argc. If the program uses the argc value
Chris Lattner [Tue, 10 Feb 2004 17:41:01 +0000 (17:41 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11262 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake the initialization calls return argc.
Chris Lattner [Tue, 10 Feb 2004 17:36:25 +0000 (17:36 +0000)]
Make the initialization calls return argc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11261 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDoxygen-ify comments, make function prototypes more consistent in format.
Misha Brukman [Tue, 10 Feb 2004 16:39:05 +0000 (16:39 +0000)]
Doxygen-ify comments, make function prototypes more consistent in format.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11259 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMention install, RPM, autoconf improvements
Brian Gaeke [Tue, 10 Feb 2004 05:22:23 +0000 (05:22 +0000)]
Mention install, RPM, autoconf improvements

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11257 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoBug fixed
Chris Lattner [Tue, 10 Feb 2004 05:19:54 +0000 (05:19 +0000)]
Bug fixed

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11256 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix PR228: [sparc] Boolean constants are emitted as true and false
Chris Lattner [Tue, 10 Feb 2004 05:16:44 +0000 (05:16 +0000)]
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?

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11255 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRPM spec file for LLVM tools and libraries.
Brian Gaeke [Tue, 10 Feb 2004 03:57:51 +0000 (03:57 +0000)]
RPM spec file for LLVM tools and libraries.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11254 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoShould fix pr220 - "make install" doesn't install header files when
Brian Gaeke [Tue, 10 Feb 2004 01:10:01 +0000 (01:10 +0000)]
Should fix pr220  - "make install" doesn't install header files when
BUILD_SRC_ROOT != BUILD_OBJ_ROOT

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11253 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoDoxygenify comments.
Misha Brukman [Mon, 9 Feb 2004 23:18:42 +0000 (23:18 +0000)]
Doxygenify comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11252 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMove this testcase out of /home/vadve/lattner/cvs/llvm/test/Programs/LLVMSource,
Chris Lattner [Mon, 9 Feb 2004 22:52:25 +0000 (22:52 +0000)]
Move this testcase out of /home/vadve/lattner/cvs/llvm/test/Programs/LLVMSource,
as it fails.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11250 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoOnly add the global variable with the abort message if an unwind actually
Chris Lattner [Mon, 9 Feb 2004 22:48:47 +0000 (22:48 +0000)]
Only add the global variable with the abort message if an unwind actually
occurs in the program.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11249 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoAdd global methods that prevent us from using ilist::iterators as
Alkis Evlogimenos [Mon, 9 Feb 2004 22:40:50 +0000 (22:40 +0000)]
Add global methods that prevent us from using ilist::iterators as
random access iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11248 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoFix PR#226: When emitting padding, always emit it as bytes. Bytes can be
John Criswell [Mon, 9 Feb 2004 22:15:33 +0000 (22:15 +0000)]
Fix PR#226: When emitting padding, always emit it as bytes.  Bytes can be
placed into any alignment situation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11247 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMany things have been fixed, so move them out of the "known problems" section
Chris Lattner [Mon, 9 Feb 2004 21:22:51 +0000 (21:22 +0000)]
Many things have been fixed, so move them out of the "known problems" section
Also, PR137 is a code quality PR, not a bug

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11246 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoQOI bug fixed
Chris Lattner [Mon, 9 Feb 2004 21:16:16 +0000 (21:16 +0000)]
QOI bug fixed

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11245 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoIt turns out that the two dimensional vectors were causing big slowdowns
Chris Lattner [Mon, 9 Feb 2004 21:03:38 +0000 (21:03 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11244 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoRemove the statistics
Chris Lattner [Mon, 9 Feb 2004 21:01:23 +0000 (21:01 +0000)]
Remove the statistics

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11243 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSpeed up type resolution some more. On the testcase in PR224, for example,
Chris Lattner [Mon, 9 Feb 2004 20:23:44 +0000 (20:23 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11242 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoWhen resolving upreferences, if multiple uprefs will be resolved to the same
Chris Lattner [Mon, 9 Feb 2004 18:53:54 +0000 (18:53 +0000)]
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11241 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoSchedGraph doesn't need to be friends with SchedGraphNodeCommon anymore.
Brian Gaeke [Mon, 9 Feb 2004 18:43:06 +0000 (18:43 +0000)]
SchedGraph doesn't need to be friends with SchedGraphNodeCommon anymore.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11240 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMove InstrSchedule's iterator begin/end methods inline.
Brian Gaeke [Mon, 9 Feb 2004 18:42:46 +0000 (18:42 +0000)]
Move InstrSchedule's iterator begin/end methods inline.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11239 91177308-0d34-0410-b5e6-96231b3b80d8

18 years agoMake SchedGraph::dump() use SchedGraphNodeCommon's const_iterator
Brian Gaeke [Mon, 9 Feb 2004 18:42:05 +0000 (18:42 +0000)]
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().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11238 91177308-0d34-0410-b5e6-96231b3b80d8