1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 05:23:45 +02:00
Commit Graph

124 Commits

Author SHA1 Message Date
Misha Brukman
9708959677 Fixed spelling.
llvm-svn: 8588
2003-09-17 21:34:23 +00:00
Vikram S. Adve
724b2d6f36 Add flag to control whether or not delay slots are filled during
instruction scheduling (this is off by default).

llvm-svn: 8553
2003-09-16 05:55:15 +00:00
John Criswell
588d65ae68 Fixed two double free bugs that caused llc to segfault or run forever.
llvm-svn: 8191
2003-08-28 21:43:17 +00:00
Tanya Lattner
7ce05c067d Moved index into BB to common graph class because its needed by ModuloSchedGraph.
llvm-svn: 8174
2003-08-28 15:30:40 +00:00
Tanya Lattner
2c6c16288a Added/removed header file
llvm-svn: 8160
2003-08-27 15:12:24 +00:00
Tanya Lattner
78d4730ae6 *** empty log message ***
llvm-svn: 8153
2003-08-27 02:42:58 +00:00
Tanya Lattner
f172cf418d First version of SchedGraph common class and refactoring of SchedGraph.
llvm-svn: 8148
2003-08-25 22:42:20 +00:00
Chris Lattner
b2ff3ba7df Remove uses of the NonCopyable class, to make the doxygen output look better
llvm-svn: 7880
2003-08-15 05:20:06 +00:00
Brian Gaeke
4651096037 Factory methods for function passes now return type FunctionPass *.
llvm-svn: 7839
2003-08-14 06:09:32 +00:00
Chris Lattner
e39696972d Be const correct
llvm-svn: 7348
2003-07-26 23:23:41 +00:00
Chris Lattner
792286a084 Hrm, another necesary one :(
llvm-svn: 7347
2003-07-26 23:22:19 +00:00
Chris Lattner
9224631d6b Remove extraneous #includes
llvm-svn: 7341
2003-07-26 23:00:29 +00:00
Vikram S. Adve
daa346c89a A def. operand of a machine instruction may be an ordinary Value*,
not just an Instruction*, at least in one unfortunate case:
the first operand to the va_arg instruction.
Modify ValueToDefVecMap to map from Value*, not Instruction*.

llvm-svn: 7052
2003-07-02 01:16:01 +00:00
Chris Lattner
46e24d4492 Remove usage of noncopyable classes to clean up doxygen output.
In particular these classes are the last that link the noncopyable classes
with the hash_map, vector, and list classes.

llvm-svn: 6552
2003-06-02 22:45:07 +00:00
Chris Lattner
322afbda9d Add #include
llvm-svn: 6550
2003-06-02 22:05:13 +00:00
Vikram S. Adve
2d906f4550 Changes to allow explicit physical register arguments that have been
preallocated.  While reg-to-reg dependences were already handled, this
change required new code for adding edges to/from call instructions.
This was part of the extensive changes to the way code generation occurs
for function call arguments and return values.
See log for CodeGen/PhyRegAlloc.cpp.

llvm-svn: 6467
2003-05-31 07:37:05 +00:00
Vikram S. Adve
681b3c77fa (1) Added special register class containing (for now) %fsr.
Fixed spilling of %fcc[0-3] which are part of %fsr.

(2) Moved some machine-independent reg-class code to class TargetRegInfo
    from SparcReg{Class,}Info.

(3) Renamed MachienOperand::opIsDef to MachineOperand::opIsDefOnly()
    and related functions and flags.  Fixed several bugs where only
    "isDef" was being checked, not "isDefAndUse".

llvm-svn: 6341
2003-05-27 00:05:23 +00:00
Misha Brukman
daf2cc3c48 Cleaned up code layout. No functional changes.
llvm-svn: 6304
2003-05-22 21:49:18 +00:00
Misha Brukman
7d91017b21 Kill `using' directives.
llvm-svn: 6301
2003-05-22 21:24:35 +00:00
Chris Lattner
07b0e49989 Rename llvm/Analysis/LiveVar/FunctionLiveVarInfo.h -> llvm/CodeGen/FunctionLiveVarInfo.h
llvm-svn: 5284
2003-01-14 23:05:08 +00:00
Chris Lattner
b27d60ccf1 Rename MachineInstrInfo -> TargetInstrInfo
llvm-svn: 5272
2003-01-14 22:00:31 +00:00
Chris Lattner
dfa3c21f1c More renamings of Target/Machine*Info to Target/Target*Info
llvm-svn: 5204
2002-12-29 03:13:05 +00:00
Chris Lattner
0478222ec2 Move function to cpp file from header
llvm-svn: 4510
2002-11-02 22:07:51 +00:00
Chris Lattner
4b8d170d55 New iostream definitions
llvm-svn: 4482
2002-11-01 16:46:05 +00:00
Chris Lattner
a7ca1bd65c Remove usage of MachineBasicBlock::get
llvm-svn: 4341
2002-10-28 18:50:08 +00:00
Chris Lattner
89a424167f Make Scheduling Class variables be 'unsigned' instead of 'int'
llvm-svn: 4333
2002-10-28 04:53:02 +00:00
Chris Lattner
e309cdbc95 Rename the redundant MachineOperand::getOperandType() to MachineOperand::getType()
llvm-svn: 4331
2002-10-28 04:45:29 +00:00
Chris Lattner
dd22b9e8b6 Add #includes now that MachineInstr.h doesn't include llvm/Target/MachineInstrInfo.h
llvm-svn: 4327
2002-10-28 02:28:39 +00:00
Chris Lattner
a7e9d3e90f Don't #include <Support/*>, #include "Support/*"
llvm-svn: 4325
2002-10-28 02:11:53 +00:00
Chris Lattner
df1d87f5f3 *** empty log message ***
llvm-svn: 4323
2002-10-28 02:01:37 +00:00
Chris Lattner
b8c6acfbc0 Rename MachineCodeForBasicBlock to MachineBasicBlock
llvm-svn: 4318
2002-10-28 01:41:47 +00:00
Misha Brukman
142795fd17 Changed MachineCodeForMethod' to MachineFunction'.
llvm-svn: 4301
2002-10-28 00:28:31 +00:00
Chris Lattner
47508d5c0f Tell PassManager that this pass does not invalidate the CFG so that dominator
information and Loop info will not have to be recomputed after this runs.

llvm-svn: 4269
2002-10-23 03:30:47 +00:00
Vikram S. Adve
e18a54c249 Use vectors instead of hash_maps for issueGaps and conflictLists.
These hash lookups were a major sink of time because they happen so often!
Also, add option to disable scheduling.

llvm-svn: 4138
2002-10-13 00:40:37 +00:00
Vikram S. Adve
211f972d28 Major bug fix: was not adding CD edges for RETURNs!
llvm-svn: 4137
2002-10-13 00:39:22 +00:00
Chris Lattner
4d9fadc44a * Removed extraneous #includes
* Fixed file headers to be consistent with the rest of LLVM
* Other minor fixes

llvm-svn: 3277
2002-08-09 20:08:03 +00:00
Chris Lattner
12af061d07 Very minor cleanups
llvm-svn: 3271
2002-08-09 18:55:18 +00:00
Chris Lattner
a21e315db4 - Cleaned up the interface to AnalysisUsage to take analysis class names
instead of ::ID's.
 - Pass::getAnalysis<> now no longer takes an optional argument

llvm-svn: 3265
2002-08-08 19:01:30 +00:00
Chris Lattner
9da0755dd0 Refix stuff for GCC 2.95, 3.0.4 & 3.1
llvm-svn: 3094
2002-07-25 18:04:48 +00:00
Mehwish Nagda
4968d78ef0 now removes deleted nops from MachineCodeForInstruction
llvm-svn: 3090
2002-07-25 17:31:05 +00:00
Chris Lattner
05fe67c0d2 *** empty log message ***
llvm-svn: 3075
2002-07-25 06:17:51 +00:00
Chris Lattner
5d262d3846 *** empty log message ***
llvm-svn: 3058
2002-07-24 21:21:33 +00:00
Chris Lattner
9860e64083 *** empty log message ***
llvm-svn: 3056
2002-07-24 21:21:32 +00:00
Chris Lattner
99ad379582 *** empty log message ***
llvm-svn: 2985
2002-07-22 02:10:13 +00:00
Vikram S. Adve
4efbb9c931 A single MachineInstr operand may now be both a def and a use,
so additional dep. edges have to be added.
This was needed to correctly handle conditional move instructions!
MachineCodeForBasicBlock is now an annotation on BasicBlock.
Renamed "earliestForNode" to "earliestReadyTimeForNode".

llvm-svn: 2826
2002-07-08 22:59:23 +00:00
Chris Lattner
dfd421a7df MEGAPATCH checkin.
For details, See: docs/2002-06-25-MegaPatchInfo.txt

llvm-svn: 2779
2002-06-25 16:13:24 +00:00
Chris Lattner
7d0544f0cc Move debug options out of header files so that the header does not have
to #include CommandLine.h.

llvm-svn: 2712
2002-05-22 17:08:27 +00:00
Chris Lattner
1752fa9899 Hide debugging options
llvm-svn: 2676
2002-05-20 21:39:10 +00:00
Chris Lattner
96e0c48175 Eliminate duplicate or unneccesary #include's
llvm-svn: 2397
2002-04-29 17:42:12 +00:00
Chris Lattner
589debc4ba Add new optional getPassName() virtual function that a Pass can override
to make debugging output a lot nicer.

llvm-svn: 2395
2002-04-29 14:57:45 +00:00