Commit Graph

1460 Commits

Author SHA1 Message Date
Chris Lattner
83d72bcd11 Instead of silently breaking, print notification of why this doesn't work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16870 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-09 21:13:51 +00:00
Misha Brukman
7ced638072 Adjust paths due to moving InstrSched to lib/Target/SparcV9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16852 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-08 18:30:22 +00:00
Misha Brukman
855ae5a8f7 Single-space instead of double-spacing in the Makefile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16848 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-08 18:11:14 +00:00
Misha Brukman
222c98bf82 Build InstrSched as well, and all three subdirs can be built independently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16847 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-08 18:10:48 +00:00
Misha Brukman
13e4f6eb04 * Adjust for the move to lib/Target/SparcV9/InstrSched
* Rename library to mark it SparcV9-specific


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16846 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-08 18:10:01 +00:00
Misha Brukman
1481a5c4c7 Single-space instead of double-spacing in the Makefile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16845 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-08 18:05:25 +00:00
Brian Gaeke
828c68a4de Make EmitMappingInfo into an "external location" option, so that it can be set
or cleared externally.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16623 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-30 20:20:01 +00:00
Misha Brukman
1155d31ef6 Change the #ifdefs to allow compilation with a V8 compiler, but the JIT still
won't work if not compiled in V9 mode, currently by GCC only, because Sun's
system compiler does not tell us if it's a V8 or V9 system.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16602 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-29 23:01:17 +00:00
Alkis Evlogimenos
c72c617a4e Add includes and use std:: for standard library calls to make code
compile on windows. This patch was contributed by Paolo Invernizzi.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16539 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-28 14:42:44 +00:00
Chris Lattner
b12914bfc0 'Pass' should now not be derived from by clients. Instead, they should derive
from ModulePass.  Instead of implementing Pass::run, then should implement
ModulePass::runOnModule.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16436 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-20 04:48:05 +00:00
Chris Lattner
b228657acc Revamp the Register class, and allow the use of the RegisterGroup class to
specify aliases directly in register definitions.

Patch contributed by Jason Eckhardt!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16330 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-14 04:17:02 +00:00
Brian Gaeke
fd23c4e9bc Roll back constant printing changes until the problems with larger
programs and C++ can be looked at in detail.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16266 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-10 18:01:45 +00:00
Reid Spencer
40b062fdf8 Clean up some "clean:" targets so they use $(VERB) and don't print anything
by default, like every other "clean" target in LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16161 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-03 23:19:53 +00:00
Reid Spencer
551ccae044 Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-01 22:55:40 +00:00
Brian Gaeke
2ff1e67346 This code is dodgy, but the guaranteed assertion failure doesn't help anything.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16014 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-24 06:41:40 +00:00
Brian Gaeke
f1b7eb145e Fix bug in PhyRegAlloc::setCallInterferences() handling call through a
null pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16013 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-24 06:41:39 +00:00
Brian Gaeke
ac9edd5faa Revise head-of-file comment.
Eliminate some excess whitespace.
Fix bug in CallArgsDescriptor::get() handling call through a null pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16012 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-24 06:41:38 +00:00
Chris Lattner
2b0e300342 Convert regclass alignment from bytes to bites
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15972 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-21 20:13:09 +00:00
Brian Gaeke
d6640951c2 M_DUMMY_PHI_FLAG is no longer used to distinguish V9::PHI. Get rid of it and
its TargetInstrInfo accessor.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15907 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 20:04:28 +00:00
Brian Gaeke
418379e229 Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15906 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 20:04:24 +00:00
Brian Gaeke
e058b27faf Instead of using isDummyPhiInstr, we just compare the opcode with V9::PHI.
Also, squash a use of TargetInstrInfo::isNop().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15905 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 20:04:21 +00:00
Chris Lattner
a1e51ff2aa Convert to the new MachineFunctionInfo interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15904 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 18:13:37 +00:00
Brian Gaeke
5978a532e8 The SparcV9 target no longer uses any pseudoinstructions (SETSW, SETUW,
SETX) or M_PSEUDO_FLAG.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15901 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 17:44:16 +00:00
Brian Gaeke
f84ee3865b The Create*Const methods don't need to pass around a TargetMachine reference.
Other minor cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15900 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 17:44:15 +00:00
Brian Gaeke
66149920c6 Doxygenify some comments.
Clean up cpReg2MemMI and cpMem2RegMI, and doxygenify comments.
Get rid of their uses of SETSW, which is a pseudoinstruction. We can't
JIT-compile pseudoinstructions at the moment. This was blowing up 252.eon/jit,
which has some HUGE stack frames.
Reduce the uses of constantFitsInImmedField().
Consolidate some assertions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15899 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 17:44:14 +00:00
Chris Lattner
883342c1e5 Switch V9 over to using the AsmPrinter base class to do its constant printing
Massive thanks to the brg miester for doing the testing. :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15898 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-18 05:29:08 +00:00
Chris Lattner
8b41cba865 Moved this file out of lib/CodeGen
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15837 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-16 22:38:02 +00:00
Chris Lattner
6b9a5e69f7 Hacks to make the MachineFunction class be able to delete the MFI object
without knowing anything about it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15836 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-16 22:37:18 +00:00
Chris Lattner
2d19f78e97 Code moved out of lib/CodeGen/MachineFunction.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15835 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-16 22:36:54 +00:00
Chris Lattner
85015a0891 Move MachineCodeForInstruction.h and MachineFunctionInfo.h into lib/Target/SparcV9
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15830 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-16 21:55:02 +00:00
Brian Gaeke
52b77edbbd Update and consolidate comments. Remove some excess whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15824 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-16 18:27:25 +00:00
Chris Lattner
01d0efba39 Code insertion methods now return void instead of an int.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15780 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-15 22:15:11 +00:00
Chris Lattner
57f1b67c34 These methods no longer take a TargetRegisterClass* operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15774 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-15 21:56:44 +00:00
Nate Begeman
1fa715a399 Eliminate MachineFunction& argument from eliminateFrameIndex in SparcV9 target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15738 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-14 22:03:29 +00:00
Chris Lattner
28690ea285 Remove dead methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15698 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 18:37:15 +00:00
Chris Lattner
9d9d84b3e3 Fix warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15697 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 18:36:28 +00:00
Chris Lattner
750d723062 Instead of a virtual method call, lets try a direct constant reference
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15696 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 18:29:05 +00:00
Chris Lattner
092ae6b5d1 Virtual method calls are overrated
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15695 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 18:20:55 +00:00
Chris Lattner
be5af7d7f5 Virtual method calls are overrated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15694 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 18:20:41 +00:00
Chris Lattner
484577a870 Remove dead methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15691 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 17:58:27 +00:00
Chris Lattner
6845dfe07e When we want a constant, just use it, instead of calling through layers of
virtual methods and register name mapping functions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15690 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-12 17:56:01 +00:00
Misha Brukman
91fdc01fe1 Fix file header comment: update filename, set tablegen emacs mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15625 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 20:28:13 +00:00
Misha Brukman
20887f8b13 * Instruction definitions moved to SparcV9InstrInfo.td for consistency
* Defined PHI instruction and SparcV9 subclass of Target


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15615 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 18:15:31 +00:00
Misha Brukman
36dd0c539b Renamed SparcV9_Reg.td -> SparcV9RegisterInfo.td for consistency.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15614 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 18:14:04 +00:00
Misha Brukman
7b71776401 Fix comment header, specify type of file `tablegen'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15612 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 17:37:14 +00:00
Misha Brukman
57e177c58b Define the target name so we can use it via TableGen.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15604 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 15:29:15 +00:00
Misha Brukman
8124020192 Remove ClassPrefix variable as it's no longer used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15586 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-09 19:13:29 +00:00
Misha Brukman
0f5702237b Define the ClassPrefix for SparcV9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15581 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-09 17:46:49 +00:00
Reid Spencer
b814e2d1c0 Get rid of a warning when compiling optimized. Uninitialized variable has
been initialized.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15565 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-07 15:19:31 +00:00
Brian Gaeke
16ca1947fd dumpSavedState has outlived its usefulness.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15555 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-06 19:11:43 +00:00
Misha Brukman
1411a67060 Hand-propagate the constant TARGET_NAME which was making lines wrap anyway
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15506 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 21:48:45 +00:00
Misha Brukman
7a750e1ff5 * Remove unnecessary comment
* Fix alignment of code
* Tabs to spaces


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15505 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 21:48:00 +00:00
Alkis Evlogimenos
15876bb28c Stop using getValues().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15487 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 08:44:43 +00:00
Brian Gaeke
1c313c959a Get rid of the only use of TargetInstrInfo::getResultPos(), a deprecated method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15483 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 08:05:27 +00:00
Brian Gaeke
57195d1321 Include SparcV9TmpInstr.h to pick up the def. of TmpInstruction,
instead of InstrSelection.h, which is dead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15476 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:34:57 +00:00
Brian Gaeke
aceb7d8b97 Include SparcV9BurgISel.h, to pick up the definition of
createSparcV9BurgInstSelector().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15474 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:30:04 +00:00
Brian Gaeke
98ac7ac507 Include SparcV9TmpInstr.h instead of llvm/CodeGen/InstrSelection.h, to pick
up the definition of class TmpInstruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15473 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:29:53 +00:00
Brian Gaeke
bd0a183fec Include SparcV9BurgISel.h, because PreSelection uses routines from within
the SparcV9 BURG instruction selector.  Eww!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15472 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:29:40 +00:00
Brian Gaeke
8943e68bff Add a Doxygen comment, and inline the constructor (which is now almost empty).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15471 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:29:28 +00:00
Brian Gaeke
587cd1aa3c The InstrForest data type has moved from llvm/CodeGen/InstrForest.h
to SparcV9InstrForest.h.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15470 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:29:16 +00:00
Brian Gaeke
d5ce4116b2 Add a new file containing just TmpInstruction and its implementation.
Many other pieces of the SparcV9 backend want to use TmpInstruction, but
don't need any other instruction selector baggage.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15469 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:29:04 +00:00
Brian Gaeke
10b11920c9 All the SparcV9 BURG instruction selector pieces have been collected into the
new file SparcV9BurgISel.cpp, with exposed interfaces in SparcV9BurgISel.h.
The InstrSelection directory is now dead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15468 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 07:28:51 +00:00
Chris Lattner
46c2b3a5ec Squelch warnings in release mode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15460 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-04 03:51:55 +00:00
Chris Lattner
82953784fc Move this file out of the top-level docs directory
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15429 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-03 04:15:02 +00:00
Misha Brukman
6a90f8202b Add #include <cstdlib> and abort() to silence a warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15413 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-02 14:02:21 +00:00
Misha Brukman
82fd8d8cdd * ceil() requires #include <cmath> for compilation
* Alphabetize #includes
* Fix some lines to fit within 80 cols


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15412 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-02 13:59:10 +00:00
Tanya Lattner
0a88d2d8b9 Updated ModuloScheduling. It makes it all the wya through register allocation on the new code!!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15351 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-30 23:36:10 +00:00
Brian Gaeke
365f54c7bc Convert a few assertions with side-effects into regular old runtime checks.
These side-effects seem to make a difference when using llc -march=sparcv9
in Release mode (i.e., with -DNDEBUG); when they are left out, lots of
instructions just get dropped on the floor, because they never end up
in the schedule.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15339 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 21:31:20 +00:00
Chris Lattner
9670eecf33 Fix #includes of i*.h => Instructions.h as per PR403:
http://llvm.cs.uiuc.edu/PR403 .


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15331 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 17:11:37 +00:00
Brian Gaeke
246b40ae7a Get rid of a few dead method declarations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15323 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 06:43:10 +00:00
Brian Gaeke
a308f80155 Get rid of calls to void llvm::printSet(const ValueSet &).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15322 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 06:43:09 +00:00
Brian Gaeke
db7c40db10 Get rid of calls to void llvm::printSet(const ValueSet &).
Use LiveRange's iterator types and operations instead of ValueSet's.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15321 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 06:43:08 +00:00
Brian Gaeke
fb8f856f14 Don't derive from ValueSet to implement class LiveRange; instead, use a
SetVector<Value *> data member.
Add << operator for LiveRanges (a dumb one, for now.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15320 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 06:43:06 +00:00
Brian Gaeke
988f5b530a Fix a few typoes and grammaroes in comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15319 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 04:25:43 +00:00
Brian Gaeke
fc63adb1b9 Remove mustSaveAcrossCalls flag, which isn't ever read, and its mutator,
markForSaveAcrossCalls.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15317 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-29 04:15:36 +00:00
Brian Gaeke
b2f30a3792 TargetInstrInfo::hasOperandInterlock() is always true, because it is
never overridden by any target.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15308 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-28 19:24:48 +00:00
Brian Gaeke
a770e0041b This was the only user of TargetInstrInfo::ConstantTypeMustBeLoaded().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15293 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-27 21:11:20 +00:00
Brian Gaeke
eb6c29bbfd Get rid of the (apparently non-working) filePrinterEmitter which is added in
debug mode.  Its only effect seems to be the creation of an empty file...


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15289 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-27 19:37:37 +00:00
Brian Gaeke
c998981505 TargetInstrInfo::getNOPOpCode() has been replaced by a reference to V9::NOP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15279 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-27 17:43:24 +00:00
Brian Gaeke
a376ee2d13 Convert many of the virtual TargetInstrInfo methods used as helper
functions in SparcV9InstrSelection and SparcV9PreSelection into regular
old global functions.  As it happens, none of them really have anything
to do with TargetInstrInfo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15278 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-27 17:43:23 +00:00
Brian Gaeke
1b4aeb5cec As it happens, none of these TargetInstrInfo methods which are only
used in the SparcV9 backend really have anything to do with
TargetInstrInfo, so we're converting them into regular old global
functions and moving their declarations to SparcV9InstrSelectionSupport.h.
(They're mostly used as helper functions for SparcV9InstrSelection.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15277 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-27 17:43:22 +00:00
Brian Gaeke
7848e68c16 These files don't need to include <iostream> since they include "Support/Debug.h".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15089 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-21 20:50:33 +00:00
Reid Spencer
2a4cb68ea6 bug 122:
Simplify a conditional operator for a constant result from
GV->isNullValue()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15001 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-19 13:25:02 +00:00
Chris Lattner
f4fc36e738 Inline 4 methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15000 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-19 07:52:35 +00:00
Reid Spencer
518310cb0d bug 122:
- Replace ConstantPointerRef usage with GlobalValue usage


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14953 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-18 00:44:37 +00:00
Reid Spencer
8863f1814b bug 122:
- Replace ConstantPointerRef usage with GlobalValue usage
- Minimize redundant isa<GlobalValue> usage
- Correct isa<Constant> for GlobalValue subclass


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14950 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-18 00:38:32 +00:00
Reid Spencer
2786542aad bug 122:
- Correct isa<Constant> for GlobalValue subclass


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14949 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-18 00:37:35 +00:00
Chris Lattner
4d143ee019 IA64 compat
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14867 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-16 00:08:28 +00:00
Chris Lattner
23f9ef062a Use new macro
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14865 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-16 00:04:54 +00:00
Chris Lattner
f51c7f56ca Fix for PR341
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14845 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 02:40:04 +00:00
Chris Lattner
76e2df2645 Patches towards fixing PR341
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14841 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 02:14:30 +00:00
Brian Gaeke
d94b6d3fa5 Add Machine-CFG edges to SparcV9 MachineBasicBlocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14806 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-14 05:40:50 +00:00
Chris Lattner
0cf0c37469 Delete the allocate*TargetMachine function, which is now dead .
The shared command line options are now in a header that makes sense.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14756 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 04:17:10 +00:00
Chris Lattner
71d24aab2d Make these format a bit nicer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14747 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 03:27:42 +00:00
Chris Lattner
d36c970a11 Auto-registrate target
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14745 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 02:48:49 +00:00
Reid Spencer
954da37bb4 Add #include <iostream> since Value.h does not #include it any more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14622 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 12:19:56 +00:00
Brian Gaeke
90c5bbe100 Add M_TERMINATOR_FLAG to terminator instructions (branches and returns).
Also, the RETURN instructions are not used in the sparcv9 backend.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14559 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-02 04:57:37 +00:00
Brian Gaeke
3c95d3a9dc RETURN instructions are not used in the sparc backend.
When in doubt, stamp it out!!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14558 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-02 04:57:35 +00:00
Chris Lattner
ea104df2b1 This class is no longer an annotation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14437 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:50:49 +00:00
Chris Lattner
4aa5b2affb Add a map of MachineCodeForInstruction objects to MachineFunctionInfo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14436 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:50:30 +00:00