Chris Lattner
ce8158d1d6
Now that the SparcV9 specific MachineCodeForInstruction class uses it's own
...
map on the side, Instruction no longer has to be Annotable. This reduces
the size of the Instruction class by another 4 bytes (on a 32-bit system).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14439 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:57:34 +00:00
Chris Lattner
4e7244e68e
Do not find these ugly sparc-specific objects by using the annotation API on
...
instructions. Instead, keep a map of instructions -> MCFI objects in the
already sparc-specific class MachineFunctionInfo. This will slow down the
sparc backend a bit, but it does not penalize the rest of LLVM!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14438 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:52:17 +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
Chris Lattner
40515dba1b
Fold iType into Value::VTy
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14435 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:38:48 +00:00
Chris Lattner
7da38ec915
Eliminate the Instruction::iType field, folding it into the Value::VTy field.
...
This reduces the size of the instruction class by 4 bytes, and means that
isa<CallInst>(V) (for example) only needs to do one load from memory instead
of two.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14434 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:38:24 +00:00
Chris Lattner
6b5f30f365
Get rid of Annotable's vtable. If anyone deletes an object through an Annotable*,
...
they get what they deserve.
This reduces the size of Instruction & Function by 4 bytes each.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14433 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:36:39 +00:00
Chris Lattner
159286d60d
Make it obvious that this file is bad bad bad
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14432 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:21:20 +00:00
Chris Lattner
62372c2ee7
User ctor is now inline
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14431 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:01:38 +00:00
Chris Lattner
38ab9267c9
Make ctor inline, change ValueTy ->unsigned
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14430 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-27 18:01:15 +00:00
Chris Lattner
0b0863778f
Consider anything with a ValueType that is >= Instruction to be an instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14429 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-26 20:51:50 +00:00
Chris Lattner
3d4bd5aa8d
Instancevar was renamed
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14428 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-26 20:33:39 +00:00
Chris Lattner
f6b7844101
Rearrange some code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14427 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-26 20:33:27 +00:00
Chris Lattner
fae098a56b
Don't call getValueType directly. the LLVM optimizer will turn it into the same code anyway :)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14426 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-26 19:40:40 +00:00
Chris Lattner
098648af6a
There is no reason to print ValueType here
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14425 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-26 19:36:34 +00:00
Chris Lattner
af754dbf65
Simplify code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14424 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-26 19:31:26 +00:00
Chris Lattner
98ebce1a6f
Hey, why not just make 'new ReturnInst(BB)' DTRT?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14422 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 23:10:30 +00:00
Chris Lattner
e056f5c8e2
new ReturnInst(BB) does not "do the right thing". Add an assert to catch it
...
sooner rather than later.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14421 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 23:06:57 +00:00
Chris Lattner
b8356b3ce2
Add credits entry
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14420 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 21:00:10 +00:00
Chris Lattner
86840d0dcb
Fix relative links for nightly testers not hosted on llvm.cs.
...
Patch contributed by Vladimir Merzliakov!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14419 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 20:57:19 +00:00
Chris Lattner
a8e750f2b0
Write .bc files to binary ostreams. This shouldn't change anything on unix,
...
but allows us to generate valid code on hosts (like windows) that do newline
translation for text files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14418 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 20:54:43 +00:00
Chris Lattner
036de03128
No functionality changes here:
...
* Some warning fixes for MSVC
* Minor simplification to the deque scanning code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14417 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 20:52:10 +00:00
Misha Brukman
34fa8714a4
Allow debugging machine instrs (by printout) before/after isel and regalloc
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14416 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 19:57:47 +00:00
Misha Brukman
c6cc10f48f
Combine several if stmts with returns into an if-then-elseif-else chain.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14414 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 19:24:52 +00:00
Misha Brukman
d47bbf7ce5
Do not move any values into registers for a void return (there isn't anything).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14413 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 19:04:27 +00:00
Misha Brukman
1cbb3ee75f
Convert tabs to spaces.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14412 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 18:45:07 +00:00
Misha Brukman
972569a22f
Fix opcode: no immediate in an `or r1, r2, r3' (all registers) instr.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14411 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 18:36:53 +00:00
John Criswell
f5076133a9
Removed the interrupt_handler instrinsic section that I accidently added
...
in my previous commits. It's not implemented and is out of date.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14410 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 16:42:50 +00:00
John Criswell
8411475105
Grammar and punctuation fixes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14409 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 16:05:06 +00:00
Misha Brukman
2bf183c092
* Be consistent about MachineBB labels and references to them in instr stream
...
* Use MachineBB's built-in numbering system instead of reinventing one
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14408 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 15:42:10 +00:00
John Criswell
fa0818711a
Added missing quote.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14407 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 15:16:57 +00:00
Misha Brukman
22e12076e9
* Initialize the entire array statically, not member-at-a-time
...
* Remove x86-specific comment re: intel vs. at&t assembly syntax
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14406 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 15:11:34 +00:00
Misha Brukman
9ecf3bf708
Fix bug in previous checkin.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14405 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 14:57:19 +00:00
Misha Brukman
911afde4ae
* Wrap long lines
...
* Replace silent fall-through FIXME comments with an error to cerr and an abort
* No need to set size of statically initialized arrays
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14404 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 14:50:41 +00:00
Misha Brukman
179d97cfa3
Excise X86-specific comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14403 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 14:13:26 +00:00
Misha Brukman
9cd94d72b0
Vladimir Prus also contributed the LowerConstantExprs pass.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14402 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 13:37:03 +00:00
Chris Lattner
9dc1b2ae9b
New constant expression lowering pass to simplify your instruction selection needs.
...
Contributed by Vladimir Prus!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14399 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 07:48:09 +00:00
Chris Lattner
dfde14ef5a
New testcase for constant expression lowering pass, contributed by Vladimir Prus!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14398 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 07:47:13 +00:00
Chris Lattner
288c92c16b
Prototype for new ConstantExpr lowering pass, contributed by Vladimir Prus!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14397 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 07:41:06 +00:00
Brian Gaeke
2280098594
Don't try to run qmtests if we fail to build the tree. The qmtests (at
...
least, on macosx) will spiral out of control instead of failing gracefully.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14396 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 07:25:28 +00:00
Chris Lattner
4391946558
Make sure to link all IPA's into opt, so that it has access to stuff like
...
anders-aa
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14395 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 05:19:17 +00:00
Chris Lattner
d28b0d73da
Fix header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14394 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 04:24:22 +00:00
Reid Spencer
e5c9df6880
- Changed Handler.h -> BytecodeHandler.h
...
- Fixed some small coding standard compliance issues in BytecodeHandler.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14393 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 02:32:27 +00:00
Chris Lattner
bc7ce7eea4
Okay, Module have not been known as 'C' for a LONG time now
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14392 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 00:42:23 +00:00
Chris Lattner
d61622857f
Fix more warnings building with VC++
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14391 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 00:35:55 +00:00
Chris Lattner
990a6a39c0
Unbreak the build. tsk tsk
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14390 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 00:18:02 +00:00
Tanya Lattner
b140762a45
Made a fix so that you can print out MachineInstrs that belong to a MachineBasicBlock that is not yet attached to a MachineFunction. This change includes changing the third operand (TargetMachine) to a pointer for the MachineInstr::print function.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14389 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 00:13:11 +00:00
Chris Lattner
32b588039e
fix warnings
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14388 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-25 00:11:25 +00:00
Misha Brukman
75afe1f904
Add option to print out machine code before register allocation.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14387 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-24 23:55:01 +00:00
Misha Brukman
f3e50bea06
Use DEBUG() guard for printing out debug info.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14386 91177308-0d34-0410-b5e6-96231b3b80d8
2004-06-24 23:54:05 +00:00