Misha Brukman
|
9da4d263b9
|
Added prototypes for emitting prologue and epilogue for function code
generation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4927 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-04 23:55:56 +00:00 |
|
Misha Brukman
|
a361c8417b
|
storeReg2RegOffset() and loadRegOffset2Reg() now take the iterator by value
instead of by reference, since they return the modified iterator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4914 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-04 17:14:13 +00:00 |
|
Misha Brukman
|
0af0d5bd3e
|
Moved buildReg2RegClassMap() into from X86RegisterInfo to MRegisterInfo, since
it is target-independent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4911 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-04 16:47:04 +00:00 |
|
Chris Lattner
|
08053e46be
|
Expose target data through a method for uniformity
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4901 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-04 05:20:12 +00:00 |
|
Misha Brukman
|
44662a783b
|
RegisterInfo now supports handing out caller- and callee-save registers, as
well as building a map from a physical register to its register class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4896 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-03 23:09:53 +00:00 |
|
Chris Lattner
|
f6d12fbd9c
|
Add entries to track information about implicit uses and definitions of
the instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4875 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-03 05:41:32 +00:00 |
|
Chris Lattner
|
b7a2d2256f
|
The hopefully final version of addPassesToEmitMachineCode which does not
have any question about ownership
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4863 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-02 21:15:42 +00:00 |
|
Chris Lattner
|
dc095240c9
|
Add comment about ownership semantics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4859 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-02 21:13:45 +00:00 |
|
Chris Lattner
|
9f729a30b2
|
Add stub to emit machine code for JIT
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4856 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-12-02 21:00:50 +00:00 |
|
Misha Brukman
|
f6a132c7a0
|
Added virtual functions for storing and retrieving values from the stack.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4824 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-11-22 22:41:23 +00:00 |
|
Misha Brukman
|
282ec57c4c
|
MRegisterInfo.h - Added prototypes for functions we need to map a register to
an appropriate TargetRegisterClass, also adds TargetRegisterClass definition.
TargetMachine.h - speling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4781 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-11-20 18:54:53 +00:00 |
|
Chris Lattner
|
fe30dd3f23
|
Make sure that print gets a targetmachine
CVS: ----------------------------------------------------------------------
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4735 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-11-17 23:21:45 +00:00 |
|
Chris Lattner
|
9bca50d6dd
|
Add machine independant printer interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4729 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-11-17 22:54:55 +00:00 |
|
Chris Lattner
|
75e961ae6b
|
* Add new "Target Specific Flags" field to instruction descriptor
* Rename iclass to Flags
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4439 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-30 01:06:53 +00:00 |
|
Chris Lattner
|
478df7a7ae
|
Add new optional getRegisterInfo to TargetMachine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4436 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-30 00:53:02 +00:00 |
|
Chris Lattner
|
272ba1d0ad
|
Eliminate virtual methods that are sparc specific
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4419 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 22:01:26 +00:00 |
|
Chris Lattner
|
c56406c236
|
* Privatize the TargetName
* Move optSizeForSubWordData to TargetData
* Remove unused fields
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4417 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 21:48:17 +00:00 |
|
Chris Lattner
|
6334205cb5
|
Allow TargetMachine to refuse static code gen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4415 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 21:12:46 +00:00 |
|
Chris Lattner
|
a74db854a3
|
Rename Sparc.h to TargetMachineImpls.h. Add hook for X86 target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4412 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 20:51:29 +00:00 |
|
Chris Lattner
|
5c1b5244b9
|
Add hook for JIT compiler
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4411 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 20:51:10 +00:00 |
|
Chris Lattner
|
5f9a61a598
|
Move to TargetMachineImpls.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4405 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 20:44:18 +00:00 |
|
Chris Lattner
|
c1f49e4b35
|
Merge to MachineInstrInfo.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4402 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 20:10:19 +00:00 |
|
Chris Lattner
|
f1757c414c
|
Move TargetInstrDescriptors extern to the one .cpp file that refers to it:
MachineInstr.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4392 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 17:40:30 +00:00 |
|
Chris Lattner
|
4683f9bfb4
|
Rename opCodeString to Name, add new getName() method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4388 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 17:35:09 +00:00 |
|
Chris Lattner
|
e30eeaaf72
|
Rename MachineInstrInfo::getDescriptor to MachineInstrInfo::get
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4387 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 17:26:26 +00:00 |
|
Chris Lattner
|
d020801aea
|
MachineInstrInfo doesn't need a TargetMachine member
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4371 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-29 15:44:40 +00:00 |
|
Chris Lattner
|
de0e87bb83
|
Minor cleanups, remove noncopyable so dot doesn't cluster unrelated stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4365 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 23:54:23 +00:00 |
|
Chris Lattner
|
2cc214c06c
|
Strip a bunch of #includes from the file, move some virtual functions to
.cpp file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4364 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 23:53:56 +00:00 |
|
Chris Lattner
|
534124d0e3
|
Inline some code from the cpp file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4363 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 23:53:32 +00:00 |
|
Chris Lattner
|
9a8e4121aa
|
Remove all traces of the "Opcode Mask" field in the MachineInstr class
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4359 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 21:17:20 +00:00 |
|
Chris Lattner
|
c7e65fb7d8
|
* s/unsigned int/unsigned
* Make MachineInstrDescriptor only keep a const char * instead of a string
for the opcode name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4335 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 04:55:56 +00:00 |
|
Chris Lattner
|
c188b733ba
|
Make scheduling class variables be 'unsigned' instead of 'int'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4334 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 04:53:18 +00:00 |
|
Chris Lattner
|
67e4132caa
|
Remvoe a bunch of unneeded forward decls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4326 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 02:27:07 +00:00 |
|
Chris Lattner
|
4a63b72df9
|
Don't #include <Support/*>, #include "Support/*"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4325 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 02:11:53 +00:00 |
|
Chris Lattner
|
ebb1af16be
|
* Doxygenify comments
* Move addPassesToEmitAssembly back to Sparc.cpp because it really is
sparc specific
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4306 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 01:02:24 +00:00 |
|
Misha Brukman
|
fce1143bcf
|
Changed MachineCodeForMethod' to MachineFunction'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4301 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-28 00:28:31 +00:00 |
|
Chris Lattner
|
3d7771a387
|
Initial checkin of target support for X86 backend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4287 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-25 23:00:40 +00:00 |
|
Chris Lattner
|
502374a58f
|
* Remove unneccesary #includes
* Fix typeo in the (unused) MachineInstrInfo::isArith method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4275 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-24 22:34:41 +00:00 |
|
Chris Lattner
|
85131c8277
|
- Add an endianness field to the TargetData datastructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4174 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-14 22:41:13 +00:00 |
|
Vikram S. Adve
|
5aefcad35b
|
Use vectors instead of hash_maps for issueGaps and conflictLists.
These hash lookups were a major sink of time because they happen so often!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4136 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-10-13 00:37:46 +00:00 |
|
Vikram S. Adve
|
9d0168d2d5
|
Minor change to interface for Create{Zero,Sign}ExtensionsInstructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3979 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-29 21:53:31 +00:00 |
|
Vikram S. Adve
|
106604ea6d
|
Simplified code that handles call args and rets, so it no longer
needs the RegClass list to be passed in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3964 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-28 16:56:59 +00:00 |
|
Chris Lattner
|
2da7afb963
|
Convert TargetData to be an ImmutablePass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3928 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-25 23:46:56 +00:00 |
|
Chris Lattner
|
2d23785852
|
There are no implicit gep forms of load and store anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3901 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-24 00:08:01 +00:00 |
|
Vikram S. Adve
|
d55697cf13
|
Added class MachineOptInfo as interface to target-specific
routines supporting machine code optimization.
Also added method MachineInstrInfo::getNOPOpCode().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3845 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-20 00:52:09 +00:00 |
|
Vikram S. Adve
|
2542d9a183
|
Interface to target-specific routines that support machine code optimization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3844 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-20 00:49:21 +00:00 |
|
Chris Lattner
|
214bf54175
|
Fix compile problem on linux. Noone should ever #include <inttypes.h>
directly. Instead, include Support/DataTypes.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3766 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-16 20:44:19 +00:00 |
|
Vikram S. Adve
|
aa500f3f43
|
Add method adjustAlignment so that stack slot alignments can be computed
in a target-dependent manner (because of the dang OFFSET in Sparc v9).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3745 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-16 15:57:43 +00:00 |
|
Vikram S. Adve
|
4900116ab0
|
Add methods to query about the representation of LLVM quantities (e.g.,
constants). Useful for target-dependent LLVM transformations like
Preselection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3743 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-16 15:56:01 +00:00 |
|
Vikram S. Adve
|
ebc7511e86
|
*** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3741 91177308-0d34-0410-b5e6-96231b3b80d8
|
2002-09-16 15:39:35 +00:00 |
|