Alkis Evlogimenos
2f21547208
Remove assert as the only integer registers on the sparc are physical.
...
llvm-svn: 11317
2004-02-11 06:04:51 +00:00
Chris Lattner
1dec4a1eda
Factor profile information loading OUT of llvm-prof into libanalysis
...
llvm-svn: 11316
2004-02-11 05:56:07 +00:00
Alkis Evlogimenos
fcb99fe370
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.
llvm-svn: 11315
2004-02-11 05:55:00 +00:00
Chris Lattner
ddfc5506a7
Factor this code out of llvm-prof
...
llvm-svn: 11314
2004-02-11 05:54:25 +00:00
Chris Lattner
d4b36cf9bc
Remove obsolete comment. Unreachable blocks will automatically be left at the
...
end of the function.
llvm-svn: 11313
2004-02-11 05:20:50 +00:00
Chris Lattner
d5bab7e727
Basic functionality testing.
...
llvm-svn: 11312
2004-02-11 05:00:27 +00:00
Chris Lattner
5add05129e
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.
llvm-svn: 11311
2004-02-11 04:53:20 +00:00
Alkis Evlogimenos
adcc14d96a
Remove assert as it is meaningless. MachineOperands can be tagged as
...
MO_VirtualRegister but actually be representing a physical register.
llvm-svn: 11310
2004-02-11 04:52:30 +00:00
Chris Lattner
0c26f0048f
Make sure to register the 'no profile' implementation as the default for ProfileInfo
...
llvm-svn: 11309
2004-02-11 04:47:54 +00:00
Chris Lattner
6e445dc299
Simplify implementation, and probably speed things up too.
...
llvm-svn: 11308
2004-02-11 03:57:16 +00:00
Chris Lattner
18d1f19fba
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.
llvm-svn: 11307
2004-02-11 03:36:04 +00:00
Chris Lattner
4379c6b0b7
New feature testcase for simplifycfg.
...
llvm-svn: 11306
2004-02-11 03:35:04 +00:00
Chris Lattner
f3e6e63d71
Initialize the count instance variable.
...
llvm-svn: 11305
2004-02-11 03:29:16 +00:00
Chris Lattner
391e943817
Expose the "Other" value type to tablegen targets
...
llvm-svn: 11304
2004-02-11 03:08:45 +00:00
Chris Lattner
6926059d37
Remove long obsolete method. switch instructions are first class entities in the CFG, and have been for a LOOOONG time.
...
llvm-svn: 11303
2004-02-11 01:17:58 +00:00
Chris Lattner
2be4744c5e
Remove obsolete method
...
llvm-svn: 11302
2004-02-11 01:17:33 +00:00
Chris Lattner
838b845781
The hasConstantReferences predicate always returns false.
...
llvm-svn: 11301
2004-02-11 01:17:07 +00:00
John Criswell
0606da9572
Updated to handle the new SPEC95 configuration options.
...
llvm-svn: 11298
2004-02-10 22:36:35 +00:00
John Criswell
43fc5c18f6
Added support for configuring SPEC95.
...
llvm-svn: 11295
2004-02-10 22:29:06 +00:00
Chris Lattner
1f4f70425d
An initial implementation of an LLVM ProfileInfo class which is designed to
...
eventually allow Passes to use profiling information to direct them.
llvm-svn: 11294
2004-02-10 22:11:42 +00:00
Misha Brukman
5786148df5
Sprinkle liberally with comments, saute with doxygen until readable.
...
llvm-svn: 11293
2004-02-10 21:49:59 +00:00
Misha Brukman
303cf58800
Doxygenify comment.
...
llvm-svn: 11292
2004-02-10 21:48:12 +00:00
Chris Lattner
62da05d3f0
Urg, the X86 backend DOES use virtual register operands. :(
...
llvm-svn: 11288
2004-02-10 21:43:11 +00:00
Chris Lattner
3d33d64f46
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. :)
llvm-svn: 11287
2004-02-10 21:21:17 +00:00
Chris Lattner
91b2fb2cec
Remove some unneeded stuff
...
llvm-svn: 11286
2004-02-10 21:19:49 +00:00
Chris Lattner
b21ec54e61
Add #include
...
llvm-svn: 11285
2004-02-10 21:18:55 +00:00
Chris Lattner
5dd5be3ec3
Do not use MachineOperand::isVirtualRegister either!
...
llvm-svn: 11283
2004-02-10 21:12:22 +00:00
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