Misha Brukman
87cbd97710
The actual order of parameters in a 2-reg-immediate assembly instructions is
...
"rs1, imm, rd": most importantly, rd goes last.
llvm-svn: 6456
2003-05-31 04:22:26 +00:00
Chris Lattner
1656f61b93
New testcase
...
llvm-svn: 6454
2003-05-30 21:03:00 +00:00
Misha Brukman
d137d6ba65
Since malloc is no longer used, no need to free() memory.
...
Fixed BasicBlock patching by supplying correct type for the displacement.
llvm-svn: 6453
2003-05-30 20:39:37 +00:00
Misha Brukman
736e6172dc
When converting virtual registers to immediate constants, change the opcode.
...
llvm-svn: 6452
2003-05-30 20:36:27 +00:00
Misha Brukman
94908b010e
Added saveBBreferences() for BasicBlock resolution.
...
llvm-svn: 6451
2003-05-30 20:32:45 +00:00
Misha Brukman
027b3d899f
getValueOp() now takes a MachineInstr as well as a MachineOperand.
...
llvm-svn: 6450
2003-05-30 20:32:01 +00:00
Misha Brukman
5bf351c880
Added:
...
* ability to save BasicBlock references to be resolved later
* register remappings from the enum values to the real hardware numbers
llvm-svn: 6449
2003-05-30 20:17:33 +00:00
Misha Brukman
0757de607a
Fixed the namespace to match SparcInternals.h; added notes on some missing
...
sections of instructions.
llvm-svn: 6448
2003-05-30 20:15:59 +00:00
Misha Brukman
8747377292
The register types need to be visible outside of the class to be useful.
...
For one, converting register numbers based on class in the code emitter.
llvm-svn: 6447
2003-05-30 20:12:42 +00:00
Misha Brukman
a853af587a
Moved and expanded convertOpcodeFromRegToImm() to conver more opcodes.
...
Code beautification for the rest of the code: changed layout to match the rest
of the code base.
llvm-svn: 6446
2003-05-30 20:11:56 +00:00
Misha Brukman
c1830a472a
Make LLI behave just like LLC with regard to the compile passes it uses.
...
llvm-svn: 6444
2003-05-30 20:00:13 +00:00
Chris Lattner
fdb2f4b7cd
Add SRoA pass to gccas
...
llvm-svn: 6442
2003-05-30 19:24:06 +00:00
Chris Lattner
49fac80010
Move indvars pass after mem2reg pass where it is more likely to be useful
...
llvm-svn: 6441
2003-05-30 19:23:10 +00:00
Chris Lattner
0078d9c5bb
Okay totally give up on trying to optimize aggregates that cannot be completely
...
broken up into their elements. Too many programs break because of this.
llvm-svn: 6440
2003-05-30 19:22:14 +00:00
Misha Brukman
39dfa6a920
Made the register and immediate versions of instructions consecutive.
...
llvm-svn: 6439
2003-05-30 19:14:01 +00:00
Chris Lattner
d847be0539
add a check that allows the SRoA pass to avoid breaking programs, even if their
...
behavior is technically undefined
llvm-svn: 6438
2003-05-30 18:09:57 +00:00
Misha Brukman
f6e4dce74c
Because the format of the shift instructions is `shift r, shcnt, r', the
...
instructions of format 3.12 and 3.13 cannot inherit from F3rdrs1, because that
implies that the two registers are the first two parameters to the instruction.
Thus I made the instructions inherit from F3rd again, and manually added an rs1
field AFTER the shcnt field in the instruction, which maps to the appropriate
place in the instruction.
The other changes are just elimination of unnecessary spaces.
llvm-svn: 6437
2003-05-30 18:06:10 +00:00
Tanya Lattner
e996d0a3cd
Sorry, correcting small typo.
...
llvm-svn: 6433
2003-05-30 15:53:50 +00:00
John Criswell
857ec18910
Added configurable options for the Linker and Archiver.
...
llvm-svn: 6432
2003-05-30 15:50:31 +00:00
Tanya Lattner
71e56e278c
Added the CloneTrace function which clones traces. It takes a vector of basic blocks, removes
...
internal phi nodes, and returns a new vector of basic blocks.
llvm-svn: 6431
2003-05-30 15:50:18 +00:00
Tanya Lattner
84e5004a78
Added support for cloning a trace.
...
llvm-svn: 6430
2003-05-30 15:48:23 +00:00
Brian Gaeke
d380f29377
Makefile: Make SparcV9CodeEmitter.inc depend on SparcV9_F*.td as well.
...
SparcV9_F3.td: F3_12 and F3_13 instructions have rd and rs1 fields. Also,
their fields were totally screwed up. This seems to fix the problem.
llvm-svn: 6429
2003-05-30 08:02:14 +00:00
Chris Lattner
38d88c07f4
Fix bug: ScalarRepl/2003-05-30-MultiLevel.ll
...
llvm-svn: 6428
2003-05-30 05:26:30 +00:00
Chris Lattner
0eef7c0d10
New testcase
...
llvm-svn: 6427
2003-05-30 05:26:08 +00:00
Chris Lattner
6e5398d69d
Fix bug: ScalarRepl/2003-05-29-ArrayFail.ll
...
llvm-svn: 6425
2003-05-30 04:15:41 +00:00
Brian Gaeke
a0967e52e9
Fix call to mmap, so that it can be used on sparc.
...
llvm-svn: 6424
2003-05-30 03:37:13 +00:00
Guochun Shi
856ee9154f
so far everything compiles
...
llvm-svn: 6423
2003-05-30 00:17:09 +00:00
Sumant Kowshik
2618272dad
Implementation of Equivalence Classes
...
llvm-svn: 6422
2003-05-29 22:44:25 +00:00
Sumant Kowshik
32d1b6e7ac
Changes to support function pointers
...
llvm-svn: 6421
2003-05-29 22:43:46 +00:00
Sumant Kowshik
04c1382291
Added support for function pointers
...
llvm-svn: 6420
2003-05-29 22:42:44 +00:00
Misha Brukman
064192d260
Prevent lines from wrapping.
...
llvm-svn: 6419
2003-05-29 22:12:35 +00:00
Dinakar Dhurjati
55512b1873
Added documentation for the project options
...
llvm-svn: 6418
2003-05-29 21:49:00 +00:00
Chris Lattner
f9079b0fe3
New testcase
...
llvm-svn: 6417
2003-05-29 21:07:34 +00:00
Chris Lattner
db34fb511d
Get rid of extraneous ""s
...
llvm-svn: 6416
2003-05-29 20:40:32 +00:00
Chris Lattner
6c81ebc97d
Add comment
...
llvm-svn: 6415
2003-05-29 20:26:30 +00:00
Chris Lattner
01246aa56d
Initial checkin
...
llvm-svn: 6414
2003-05-29 20:24:54 +00:00
Chris Lattner
dc79514f6e
New testcases
...
llvm-svn: 6412
2003-05-29 20:15:35 +00:00
Misha Brukman
6ada87e6eb
Since there is now another derived .inc file, ignore them all.
...
llvm-svn: 6411
2003-05-29 20:15:27 +00:00
Misha Brukman
9175a5de53
Use an absolute path to TableGen because not everyone (e.g. automatic tester)
...
has their path set up by this point.
llvm-svn: 6410
2003-05-29 20:09:56 +00:00
Misha Brukman
3484432e4e
Added a path to the current version of the built TableGen.
...
llvm-svn: 6409
2003-05-29 20:09:23 +00:00
Chris Lattner
da7231e89c
Check in old tests
...
llvm-svn: 6408
2003-05-29 19:17:51 +00:00
Chris Lattner
38f09ca4c4
Minor reordering of options
...
llvm-svn: 6407
2003-05-29 19:16:55 +00:00
John Criswell
9cca31fb4e
Removed configuration options that are better served in Makefile.config.
...
Fixed the LibInstDir macro.
Added the use of the FLEX variable.
llvm-svn: 6405
2003-05-29 18:52:10 +00:00
John Criswell
285dc4f5d7
Moved the FLEX and BISON macros from Makefile.common since they are
...
configuration options like CC and CXX.
Updated LLVMGCCDIR so that it refers to the valid LLVM gcc code.
Added pathnames and flags to be used by some of the tests.
Moved configuration options from Makefile.common to here since they
should all be in one place.
llvm-svn: 6404
2003-05-29 18:51:11 +00:00
Misha Brukman
bb053cefe8
Added the target-independent part of TableGen data.
...
llvm-svn: 6403
2003-05-29 18:48:17 +00:00
Dinakar Dhurjati
41f7748489
Added project options to the Makefile.common
...
llvm-svn: 6402
2003-05-29 16:18:20 +00:00
Chris Lattner
d339f98844
Run more post-link xforms
...
llvm-svn: 6400
2003-05-29 15:16:45 +00:00
Chris Lattner
03ef2fc167
Change tests to use testrunner
...
new test
llvm-svn: 6399
2003-05-29 15:16:10 +00:00
Chris Lattner
4c46c95247
Fix formatting in file
...
llvm-svn: 6398
2003-05-29 15:13:15 +00:00
Chris Lattner
f789f29aaa
Eliminate unnecessary ->get calls that are now automatically handled.
...
llvm-svn: 6397
2003-05-29 15:12:27 +00:00