Alkis Evlogimenos
4837f6c0d9
Another API change to MRegisterInfo::foldMemoryOperand. Instead of a
...
MachineBasicBlock::iterator take a MachineInstr*.
llvm-svn: 12392
2004-03-14 20:14:27 +00:00
Chris Lattner
f624c99379
Rename createLoopExtractorPass to createSingleLoopExtractorPass
...
Doxygenify
llvm-svn: 12389
2004-03-14 20:00:37 +00:00
Alkis Evlogimenos
48da2f8a6d
Change MRegisterInfo::foldMemoryOperand to return the folded
...
instruction to make the API more flexible.
llvm-svn: 12386
2004-03-14 07:19:51 +00:00
Chris Lattner
6d24a7ce8a
Move loop extractor to the IPO header
...
llvm-svn: 12374
2004-03-14 02:36:34 +00:00
Chris Lattner
96a7fbd503
Remove dead file
...
llvm-svn: 12371
2004-03-14 02:13:57 +00:00
Chris Lattner
3b18771d9f
Move DemoteRegToStack prototype out of DemoteRegToStack.h to this file.
...
llvm-svn: 12367
2004-03-14 02:13:07 +00:00
Chris Lattner
071a5e5649
Rename the intrinsic enum values for llvm.va_* from Intrinsic::va_* to
...
Intrinsic::va*. This avoid conflicting with macros in the stdlib.h file.
llvm-svn: 12356
2004-03-13 00:24:00 +00:00
Chris Lattner
6e8d083a8b
Fix PR266: Make Module Not Inherit From Annotable
...
llvm-svn: 12339
2004-03-12 19:51:16 +00:00
Misha Brukman
386ef6dec8
Add AnalysisUsage::addRequiredTransitive() to keep analysis info alive for
...
future queries by clients.
llvm-svn: 12329
2004-03-12 06:13:15 +00:00
Chris Lattner
26cca63a7e
Add the visitSelectInst visitor method
...
llvm-svn: 12312
2004-03-12 05:51:22 +00:00
Chris Lattner
5dec674075
Add the SelectInst class
...
llvm-svn: 12311
2004-03-12 05:51:05 +00:00
Chris Lattner
439b128ce7
Add the Instruction::Select enum
...
llvm-svn: 12310
2004-03-12 05:50:53 +00:00
Chris Lattner
e75c0c0eac
Add support for select constant exprs
...
llvm-svn: 12309
2004-03-12 05:50:39 +00:00
Misha Brukman
5c24fb6b48
Move function implementations to a .cpp file, avoid #including <cstdlib> here.
...
llvm-svn: 12296
2004-03-11 23:52:03 +00:00
Misha Brukman
d8abb840f2
Forward-declare templates for fix compilation when Argument.h is included first.
...
llvm-svn: 12295
2004-03-11 23:42:24 +00:00
Misha Brukman
94eeb90cd4
Doxygenified and cleand up comments.
...
llvm-svn: 12294
2004-03-11 23:08:20 +00:00
Chris Lattner
f53977cd42
new method
...
llvm-svn: 12263
2004-03-09 19:36:59 +00:00
Chris Lattner
d6eda1a9ef
Switch over to using edge profile information as the basic profiling representation,
...
from basic block counts.
llvm-svn: 12241
2004-03-08 22:03:45 +00:00
Chris Lattner
755ffeb292
We don't want to make this a pure interface, as it makes all implementors
...
bear the burden of implementing what will be all exactly the same methods.
They just want to provide the information in differing ways.
llvm-svn: 12239
2004-03-08 21:30:18 +00:00
Chris Lattner
b08e4653cb
Rearrange some methods, implement the dominates method
...
llvm-svn: 12237
2004-03-08 21:07:12 +00:00
Chris Lattner
63b49d0574
Import the trace class from the reoptimizer
...
llvm-svn: 12236
2004-03-08 20:57:27 +00:00
Chris Lattner
03745f3e80
Add the ability to put an annotation at the end of a basic block as well.
...
llvm-svn: 12230
2004-03-08 18:51:05 +00:00
Chris Lattner
178608ee2b
Add support for representing edge counts
...
llvm-svn: 12228
2004-03-08 18:19:37 +00:00
Chris Lattner
8301a593a9
Remove Module::mutateConstantPointerRef, which is now thankfully dead!
...
llvm-svn: 12215
2004-03-08 06:15:33 +00:00
Chris Lattner
16e27f3af3
remove *THANKFULLY* dead method
...
llvm-svn: 12213
2004-03-08 06:10:32 +00:00
Chris Lattner
1f607f2f2e
Add prototype
...
llvm-svn: 12194
2004-03-07 21:30:08 +00:00
Brian Gaeke
8351d8c1a8
make -print-machineinstrs work for both SparcV9 and X86
...
llvm-svn: 12122
2004-03-04 19:16:23 +00:00
Alkis Evlogimenos
8a4159708b
Fix bug introduced by yesterday's changes.
...
llvm-svn: 12119
2004-03-04 18:02:07 +00:00
Chris Lattner
91be5332b2
Rename method, add new method
...
llvm-svn: 12103
2004-03-03 22:00:20 +00:00
Chris Lattner
06bd20676d
De-inline methods
...
llvm-svn: 12101
2004-03-03 20:55:15 +00:00
Brian Gaeke
015972103d
Make MachineOperand's value named 'contents'. Make really, really sure
...
it is always completely initialized and copied.
Also, fix up many comments and asserts.
llvm-svn: 12100
2004-03-03 19:07:27 +00:00
Chris Lattner
87ed2a4096
Add a new constructor
...
llvm-svn: 12087
2004-03-03 02:12:47 +00:00
Misha Brukman
1998b73492
Add prototype for ExtractCodeRegion()
...
llvm-svn: 12069
2004-03-02 00:20:32 +00:00
Chris Lattner
d86982547f
Add new method
...
llvm-svn: 12056
2004-03-01 19:36:50 +00:00
Misha Brukman
88cc178e3b
Fix grammar and doxygenify comments.
...
llvm-svn: 12054
2004-03-01 18:31:19 +00:00
Misha Brukman
f68f121dd3
Add ability to extract a single basic block into a new function.
...
llvm-svn: 12052
2004-03-01 18:27:13 +00:00
Brian Gaeke
427cec1395
TargetCacheInfo has been removed; its only uses were to propagate a constant
...
(16) into certain areas of the SPARC V9 back-end. I'm fairly sure the US IIIi's
dcache has 32-byte lines, so I'm not sure where the 16 came from. However, in
the interest of not breaking things any more than they already are, I'm going
to leave the constant alone.
llvm-svn: 12043
2004-03-01 06:43:29 +00:00
Chris Lattner
482cf01a1e
Fix the "partial pool allocator" on em3d and others. The problem is that
...
DSNodes, unlike other GraphTraits nodes, can have null outgoing edges, and
df_iterator doesn't take this into consideration. As a workaround, the
successor iterator now handles null nodes and 'indicates' that null has
no successors.
llvm-svn: 12025
2004-03-01 01:42:26 +00:00
Chris Lattner
b4c203ce67
Make Module annotable. Reid has a bunch of code that depends on this, and
...
we really don't win that much by eliminating this (not many Modules are
allocated), so it's not worth it. When we can, we should revisit this in
the future.
llvm-svn: 12023
2004-03-01 01:25:37 +00:00
Misha Brukman
2a4c5b050e
Doxygenify comments.
...
llvm-svn: 12015
2004-02-29 23:55:11 +00:00
Chris Lattner
f2bb31c5fd
Module does not need to be annotatable aka annotable
...
llvm-svn: 12005
2004-02-29 19:27:55 +00:00
Chris Lattner
fcb4f9d00b
Remove public header. It's been moved to lib/Target/SparcV9
...
llvm-svn: 12004
2004-02-29 19:13:20 +00:00
Chris Lattner
23840c7db5
Do not use explicit casts that hide the dependence on Instruction being
...
annotable
llvm-svn: 12000
2004-02-29 19:02:26 +00:00
Chris Lattner
79b8d467da
Ugh, the old sparc backend attaches MachineCodeForInstruction annotations on
...
LLVM instructions. Because it contains an explicit cast, we didn't catch it.
I guess instruction's will be annotable for the duration of the sparcv9's
existence.
llvm-svn: 11999
2004-02-29 18:54:23 +00:00
Brian Gaeke
2f80d586b8
Remove dead member variables of SparcV9SchedInfo and TargetSchedInfo
...
llvm-svn: 11994
2004-02-29 08:40:03 +00:00
Brian Gaeke
d470a0f042
Update comment at head of file. Also fix C 'typedef struct' nonsense I
...
inadvertently left in here.
llvm-svn: 11988
2004-02-29 06:33:28 +00:00
Chris Lattner
f20abac9bc
Eliminate the distinction between "real" and "unreal" instructions
...
llvm-svn: 11986
2004-02-29 06:31:16 +00:00
Brian Gaeke
e65125dcdf
Add more architectures, and ELF64 stuff.
...
llvm-svn: 11985
2004-02-29 06:30:25 +00:00
Chris Lattner
f611ca055c
Scrap a huge layer of cruft out of this interface.
...
llvm-svn: 11980
2004-02-29 05:57:21 +00:00
Chris Lattner
5e7b3180e5
Remove unneeded #include
...
llvm-svn: 11978
2004-02-29 05:15:56 +00:00