Misha Brukman
4eab7f3d5b
Register classes are target-dependent
...
llvm-svn: 15861
2004-08-17 05:10:31 +00:00
Misha Brukman
851a54656a
#include <map> is not necessary here
...
llvm-svn: 15860
2004-08-17 05:09:39 +00:00
Misha Brukman
fd2df5afab
`PowerPC' is no longer a real target
...
llvm-svn: 15859
2004-08-17 05:09:10 +00:00
Misha Brukman
38c61506a8
Move variables and methods which need PPC{32,64}* distinction to subclasses
...
llvm-svn: 15858
2004-08-17 05:08:44 +00:00
Misha Brukman
ba7fe16dbf
No need for an `is64bit' flag
...
llvm-svn: 15857
2004-08-17 05:06:47 +00:00
Misha Brukman
fe3e46a0b3
PowerPCInstrInfo and PowerPCRegisterInfo have gone away; they are replaced
...
by 32- and 64-bit customized files, named appropriately.
llvm-svn: 15856
2004-08-17 05:05:00 +00:00
Misha Brukman
de4fc10733
Consistently name passed with 32 or 64 in their name
...
llvm-svn: 15855
2004-08-17 05:02:58 +00:00
Misha Brukman
68ede7e9ba
PowerPCRegisterInfo no longer takes a bool to differentiate 32 vs 64 bits
...
llvm-svn: 15854
2004-08-17 05:02:18 +00:00
Misha Brukman
d61283f347
The PowerPCInstrInfo class has gone away.
...
llvm-svn: 15853
2004-08-17 05:00:46 +00:00
Misha Brukman
0674182457
PowerPCInstrInfo has gone away, PPC32 and PPC64 share opcodes.
...
llvm-svn: 15852
2004-08-17 04:58:50 +00:00
Misha Brukman
ac0ae7c215
PowerPC 32-/64-bit split: Part II, 64-bit customizations on PowerPC
...
llvm-svn: 15851
2004-08-17 04:57:37 +00:00
Misha Brukman
116f9277f6
PowerPC 32-/64-bit split: Part I, PPC32* bit files, adapted from former PowerPC*
...
llvm-svn: 15850
2004-08-17 04:55:41 +00:00
Chris Lattner
a8fbbc0ec3
Print float constants as 4 byte values.
...
Also, fix endianness problems when cross compiling from little-endian host.
llvm-svn: 15847
2004-08-17 02:48:44 +00:00
Chris Lattner
bc9372bf77
Make sure to put an _ prefix on all identifiers!
...
Also, add some (currently disabled) code to print float's as 32-bits.
llvm-svn: 15846
2004-08-17 02:29:00 +00:00
Chris Lattner
5491774934
More changes to make PPC32 and X86 more similar
...
llvm-svn: 15842
2004-08-16 23:38:36 +00:00
Chris Lattner
b4f1f71bf0
Minor changes to make the diff be nothing against the X86 version
...
llvm-svn: 15841
2004-08-16 23:30:16 +00:00
Chris Lattner
0ced90583d
Finegrainify namespacification
...
Start using the AsmPrinter base class to factor out a bunch of code
llvm-svn: 15840
2004-08-16 23:25:21 +00:00
Chris Lattner
9cf46456cb
Start using the AsmPrinter to emit our first class constants. This also
...
drops our half-assed support for cygwin, which noone uses and doesn't work
anyway.
llvm-svn: 15839
2004-08-16 23:16:06 +00:00
Chris Lattner
7e3f28fcdf
Moved this file out of lib/CodeGen
...
llvm-svn: 15837
2004-08-16 22:38:02 +00:00
Chris Lattner
2cb145ceb5
Hacks to make the MachineFunction class be able to delete the MFI object
...
without knowing anything about it.
llvm-svn: 15836
2004-08-16 22:37:18 +00:00
Chris Lattner
95de5ddbbd
Code moved out of lib/CodeGen/MachineFunction.cpp
...
llvm-svn: 15835
2004-08-16 22:36:54 +00:00
Chris Lattner
9fb30a4257
Move MachineCodeForInstruction.h and MachineFunctionInfo.h into lib/Target/SparcV9
...
llvm-svn: 15830
2004-08-16 21:55:02 +00:00
Brian Gaeke
a7ae92436f
Update and consolidate comments. Remove some excess whitespace.
...
llvm-svn: 15824
2004-08-16 18:27:25 +00:00
Chris Lattner
f2e9ea2106
There is no need for a cast here
...
llvm-svn: 15810
2004-08-16 05:09:58 +00:00
Nate Begeman
ab6b08d937
Update the current state of the world
...
llvm-svn: 15809
2004-08-16 05:06:43 +00:00
Nate Begeman
a6808b8efc
Fix typo of the word 'implicit' I made resolving a CVS conflict. Whoops!
...
llvm-svn: 15808
2004-08-16 02:12:49 +00:00
Nate Begeman
dabf0a52c0
Fix frame pointer handling:
...
Reserve R0 in store/load from stack slot for building >32k offsets from SP
or FP. This also requires we use R11 rather than R0 for holding the LR
value we want to save or restore. Also, tell the register allocator not
to use R31 (our FP) in functions that have a frame pointer. These changes
fix Burg.
llvm-svn: 15807
2004-08-16 01:52:12 +00:00
Nate Begeman
8b44a07246
Fix mismatched adjust down/up of SP in functions that contain variable
...
sized allocas.
llvm-svn: 15806
2004-08-16 01:50:22 +00:00
Chris Lattner
26971f4bc2
V8 never used the instrselectorgenerator
...
llvm-svn: 15791
2004-08-15 23:07:40 +00:00
Chris Lattner
291de48b59
isdummyclass goes away
...
llvm-svn: 15790
2004-08-15 23:04:35 +00:00
Chris Lattner
aa6a8abc02
disable all of the pattern isel stuff
...
llvm-svn: 15788
2004-08-15 23:02:34 +00:00
Chris Lattner
1d088db15e
Disable the pattern isel
...
llvm-svn: 15787
2004-08-15 23:02:17 +00:00
Chris Lattner
48a3b942ae
Insertion methods now return void instead of #instrs inserted. Also, use
...
more powerful forms of BuildMI to concisify the code
llvm-svn: 15782
2004-08-15 22:15:56 +00:00
Chris Lattner
772f0d4106
Code insertion methods now return void instead of #instrs inserted
...
llvm-svn: 15781
2004-08-15 22:15:30 +00:00
Chris Lattner
a0b38d3cb1
Code insertion methods now return void instead of an int.
...
llvm-svn: 15780
2004-08-15 22:15:11 +00:00
Chris Lattner
98de1d7795
These methods no longer take a TargetRegisterClass* operand.
...
llvm-svn: 15774
2004-08-15 21:56:44 +00:00
Alkis Evlogimenos
4922e2e8ef
Make this compile on gc 3.4.1 (static_cast to non-const type was not
...
allowed).
llvm-svn: 15766
2004-08-15 09:18:55 +00:00
Nate Begeman
78862c3717
Add future optimization opportunity
...
llvm-svn: 15760
2004-08-15 06:43:10 +00:00
Nate Begeman
373744c6dc
Fix float to int codepath by always allocating 8 bytes for the target of a double store; optimize cmplwi generation.
...
llvm-svn: 15759
2004-08-15 06:42:28 +00:00
Chris Lattner
7dfaac4300
Zimm16 is now dead. Its entry is not removed from the enum, to avoid having
...
to renumber everything. Similar elimination should be applied to other
operand enum values that are only used to format printing in the .s file.
llvm-svn: 15755
2004-08-15 05:48:47 +00:00
Chris Lattner
da2e56fb0c
Convert all of the DForm_6* operations, which makes all of the Zimm16 users
...
dead.
llvm-svn: 15754
2004-08-15 05:46:14 +00:00
Chris Lattner
ae0c2c7583
Add i1imm
...
llvm-svn: 15753
2004-08-15 05:37:00 +00:00
Chris Lattner
94ab6273b6
Reenable the CCRC
...
llvm-svn: 15752
2004-08-15 05:31:15 +00:00
Chris Lattner
8a796858da
Convert the DForm_4 over to the asmprintergen
...
llvm-svn: 15751
2004-08-15 05:20:16 +00:00
Nate Begeman
abc8173b18
Remove dead code
...
llvm-svn: 15750
2004-08-15 00:31:02 +00:00
Chris Lattner
ec1cc1b861
Print mflr using the asmwriter generator
...
llvm-svn: 15749
2004-08-14 23:27:29 +00:00
Chris Lattner
b08d2a2a11
Update to no longer take MF as an argument
...
llvm-svn: 15748
2004-08-14 22:57:22 +00:00
Chris Lattner
6ffa501d9f
Make the AsmWriter a first-class tblgen object. Allow targets to specify
...
name of the generated asmwriter class, and the name of the format string.
llvm-svn: 15747
2004-08-14 22:50:53 +00:00
Nate Begeman
412602d7d9
Replace PowerPCPEI.cpp with target independant PrologEpilogInserter
...
llvm-svn: 15746
2004-08-14 22:16:36 +00:00
Nate Begeman
0c8c0346f8
Add support for frame pointers, and large offsets from stack and frame pointers. Adopt elimination of MachineFunction& arg from eliminateFrameIndex.
...
llvm-svn: 15745
2004-08-14 22:13:58 +00:00