Chris Lattner [Mon, 28 Jun 2004 06:33:13 +0000 (06:33 +0000)]
Initial checkin of a simple mod/ref analysis for global variables. This is
still overly conservative and uses very simple data structures, but it is a
start, and allows elimination of a lot of loads.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14462
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 06:31:26 +0000 (06:31 +0000)]
Add new header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14461
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:46:58 +0000 (00:46 +0000)]
Remove unused file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14460
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:46:54 +0000 (00:46 +0000)]
Remove dead file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14459
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:44:45 +0000 (00:44 +0000)]
Bad passes are gone
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14458
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:44:18 +0000 (00:44 +0000)]
These passes are long dead/obsolete. They never worked in the first place
and are a maintenence burden. Nuke nuke nuke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14457
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:43:25 +0000 (00:43 +0000)]
Remove two dead passes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14456
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:41:23 +0000 (00:41 +0000)]
Moved IPModRef out of the public include dir
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14455
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:40:43 +0000 (00:40 +0000)]
Move file to lib/Analysis/DataStructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14454
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:32:33 +0000 (00:32 +0000)]
Move DependenceGraph.* to lib/Analysis/DataStructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14452
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:30:29 +0000 (00:30 +0000)]
Moved to lib/analysis/datastructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14451
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:29:42 +0000 (00:29 +0000)]
Moving to lib/Analysis/DataStructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14450
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:27:34 +0000 (00:27 +0000)]
Moved to lib/Analysis/DataStructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14449
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:27:16 +0000 (00:27 +0000)]
Move MemoryDepAnalysis.h into lib/Analysis/DataStructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14448
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:20:39 +0000 (00:20 +0000)]
Moved to lib/Analysis/DataStructure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14447
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 28 Jun 2004 00:20:04 +0000 (00:20 +0000)]
Move PgmDependenceGraph.h out of the public include hierarchy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14446
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Sun, 27 Jun 2004 22:59:56 +0000 (22:59 +0000)]
Allow saving and restoring of double and float registers.
Allow copying of float registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14445
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Sun, 27 Jun 2004 22:53:56 +0000 (22:53 +0000)]
Add FITOS, FITOD, and F{ADD,SUB,MUL,DIV}{S,D}.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14444
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 27 Jun 2004 22:51:36 +0000 (22:51 +0000)]
Implement InstCombine/add.ll:test21
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14443
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 27 Jun 2004 22:51:19 +0000 (22:51 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14442
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Sun, 27 Jun 2004 22:50:44 +0000 (22:50 +0000)]
Support printing constant pool indices.
If we see an "unknown operand", abort so it's easier to fix it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14441
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Sun, 27 Jun 2004 22:47:33 +0000 (22:47 +0000)]
Trim whitespace.
Support cast of ints (and narrower) to float and double.
Support cast double to double (using load and store).
Abort if we see a CallInst or SetCondInst with long/fp args, instead
of producing bad code.
Support add, sub, mul, div of float and double.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14440
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 27 Jun 2004 18:57:34 +0000 (18:57 +0000)]
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
Chris Lattner [Sun, 27 Jun 2004 18:52:17 +0000 (18:52 +0000)]
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
Chris Lattner [Sun, 27 Jun 2004 18:50:49 +0000 (18:50 +0000)]
This class is no longer an annotation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14437
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 27 Jun 2004 18:50:30 +0000 (18:50 +0000)]
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
Chris Lattner [Sun, 27 Jun 2004 18:38:48 +0000 (18:38 +0000)]
Fold iType into Value::VTy
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14435
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 27 Jun 2004 18:38:24 +0000 (18:38 +0000)]
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
Chris Lattner [Sun, 27 Jun 2004 18:36:39 +0000 (18:36 +0000)]
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
Chris Lattner [Sun, 27 Jun 2004 18:21:20 +0000 (18:21 +0000)]
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
Chris Lattner [Sun, 27 Jun 2004 18:01:38 +0000 (18:01 +0000)]
User ctor is now inline
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14431
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 27 Jun 2004 18:01:15 +0000 (18:01 +0000)]
Make ctor inline, change ValueTy ->unsigned
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14430
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 26 Jun 2004 20:51:50 +0000 (20:51 +0000)]
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
Chris Lattner [Sat, 26 Jun 2004 20:33:39 +0000 (20:33 +0000)]
Instancevar was renamed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14428
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 26 Jun 2004 20:33:27 +0000 (20:33 +0000)]
Rearrange some code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14427
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 26 Jun 2004 19:40:40 +0000 (19:40 +0000)]
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
Chris Lattner [Sat, 26 Jun 2004 19:36:34 +0000 (19:36 +0000)]
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
Chris Lattner [Sat, 26 Jun 2004 19:31:26 +0000 (19:31 +0000)]
Simplify code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14424
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 25 Jun 2004 23:10:30 +0000 (23:10 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 23:06:57 +0000 (23:06 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 21:00:10 +0000 (21:00 +0000)]
Add credits entry
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14420
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 25 Jun 2004 20:57:19 +0000 (20:57 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 20:54:43 +0000 (20:54 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 20:52:10 +0000 (20:52 +0000)]
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
Misha Brukman [Fri, 25 Jun 2004 19:57:47 +0000 (19:57 +0000)]
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
Misha Brukman [Fri, 25 Jun 2004 19:24:52 +0000 (19:24 +0000)]
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
Misha Brukman [Fri, 25 Jun 2004 19:04:27 +0000 (19:04 +0000)]
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
Misha Brukman [Fri, 25 Jun 2004 18:45:07 +0000 (18:45 +0000)]
Convert tabs to spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14412
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 25 Jun 2004 18:36:53 +0000 (18:36 +0000)]
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
John Criswell [Fri, 25 Jun 2004 16:42:50 +0000 (16:42 +0000)]
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
John Criswell [Fri, 25 Jun 2004 16:05:06 +0000 (16:05 +0000)]
Grammar and punctuation fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14409
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 25 Jun 2004 15:42:10 +0000 (15:42 +0000)]
* 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
John Criswell [Fri, 25 Jun 2004 15:16:57 +0000 (15:16 +0000)]
Added missing quote.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14407
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 25 Jun 2004 15:11:34 +0000 (15:11 +0000)]
* 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
Misha Brukman [Fri, 25 Jun 2004 14:57:19 +0000 (14:57 +0000)]
Fix bug in previous checkin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14405
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 25 Jun 2004 14:50:41 +0000 (14:50 +0000)]
* 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
Misha Brukman [Fri, 25 Jun 2004 14:13:26 +0000 (14:13 +0000)]
Excise X86-specific comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14403
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 25 Jun 2004 13:37:03 +0000 (13:37 +0000)]
Vladimir Prus also contributed the LowerConstantExprs pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14402
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 25 Jun 2004 07:48:09 +0000 (07:48 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 07:47:13 +0000 (07:47 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 07:41:06 +0000 (07:41 +0000)]
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
Brian Gaeke [Fri, 25 Jun 2004 07:25:28 +0000 (07:25 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 05:19:17 +0000 (05:19 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 04:24:22 +0000 (04:24 +0000)]
Fix header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14394
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 25 Jun 2004 02:32:27 +0000 (02:32 +0000)]
- 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
Chris Lattner [Fri, 25 Jun 2004 00:42:23 +0000 (00:42 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 00:35:55 +0000 (00:35 +0000)]
Fix more warnings building with VC++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14391
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 25 Jun 2004 00:18:02 +0000 (00:18 +0000)]
Unbreak the build. tsk tsk
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14390
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Fri, 25 Jun 2004 00:13:11 +0000 (00:13 +0000)]
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
Chris Lattner [Fri, 25 Jun 2004 00:11:25 +0000 (00:11 +0000)]
fix warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14388
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 23:55:01 +0000 (23:55 +0000)]
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
Misha Brukman [Thu, 24 Jun 2004 23:54:05 +0000 (23:54 +0000)]
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
Misha Brukman [Thu, 24 Jun 2004 23:53:24 +0000 (23:53 +0000)]
Add a `break' in the switch/case statement between the int/fp sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14385
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 23:51:00 +0000 (23:51 +0000)]
* Lowercase the register names
* Parenthesize assert() expressions correctly
* Fix spacing around for() and if() statements
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14384
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 23:38:52 +0000 (23:38 +0000)]
Add a LowercaseString() utility function, courtesy of brg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14383
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 23:38:20 +0000 (23:38 +0000)]
* LowercaseString moved to StringExtras.h
* Wrap long line to 80 cols
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14382
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 23:19:36 +0000 (23:19 +0000)]
* Tabs to spaces
* Send an error message to std::cerr before abort()ing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14381
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Thu, 24 Jun 2004 23:05:07 +0000 (23:05 +0000)]
Definition of the Bytecode Handler interface. Subclasses can override just
the methods they are interested in to perform out-of-band tasks while the
BytecodeReader is constructing a module. Handlers should *not* modify any
of the LLVM IR objects during this process.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14380
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 23:04:11 +0000 (23:04 +0000)]
* Tabs to spaces
* Remove unnecessary parens, braces, clean up code layout
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14379
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 22:00:15 +0000 (22:00 +0000)]
Unindent some more code to be consistent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14377
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 21:56:15 +0000 (21:56 +0000)]
Unindent some code, it only needs 2 spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14376
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 21:54:47 +0000 (21:54 +0000)]
In emitting code for a GEP instr, iterate over GEPTypes because there is one
more operand in GEPOps than there are types in GEPTypes: the pointer that is the
first operand of the GEP instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14375
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 21:47:35 +0000 (21:47 +0000)]
* Capitalize `Java'
* Sprinkle hypens liberally
* Fix some grammar in comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14374
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 21:31:16 +0000 (21:31 +0000)]
Convert tabs to spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14373
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 21:22:09 +0000 (21:22 +0000)]
Add FSTOD and FDTOS conversion instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14372
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 21:22:08 +0000 (21:22 +0000)]
Support cast float to float, cast double to float, and cast float to double.
(It's not yet clear how to copy doubles from register to register.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14371
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 24 Jun 2004 20:53:09 +0000 (20:53 +0000)]
Add a section about running the nightly tester proper.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14370
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 24 Jun 2004 20:16:22 +0000 (20:16 +0000)]
This file is unused, and duplicates functionality in TraceValues.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14369
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 24 Jun 2004 18:19:42 +0000 (18:19 +0000)]
etags isn't portable at all. Make it not run by default. If you still
want it, just type 'make tags'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14368
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 24 Jun 2004 17:31:42 +0000 (17:31 +0000)]
* Order #includes
* Use the DEBUG() guard for debug printouts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14367
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 09:23:21 +0000 (09:23 +0000)]
Make the double-fp pseudo registers be "NamedRegs".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14366
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 09:17:47 +0000 (09:17 +0000)]
Fix a dyn_cast in copyConstantToRegister which should have been a cast.
Compactify the code that emits copies of constant ints into registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14365
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 08:55:21 +0000 (08:55 +0000)]
The long integer pseudo-regs are history. So long, we hardly knew ye.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14364
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 08:55:09 +0000 (08:55 +0000)]
Use correct add*Imm form in more BuildMI calls.
Fix bug in emitGEPOperation where we weren't passing MBB, IP to getReg.
(hey, wouldn't a constant expression lowering pass be cool? huh huhuhuh)
Fix bug in emitGEPOperation where we might try to OR a constant into a
register which was too big to fit in the immediate field.
Support and, or, xor of longs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14363
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 07:37:12 +0000 (07:37 +0000)]
Rename the load and store opcodes. The non-fp ones only have one
variant worth worrying about; the fp ones have two.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14362
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 07:36:59 +0000 (07:36 +0000)]
Rename the load and store opcodes. The non-fp ones only have one
variant worth worrying about; the fp ones have two.
Add fp stores.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14361
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 07:36:48 +0000 (07:36 +0000)]
Rename the load and store opcodes. The non-fp ones only have one
variant worth worrying about; the fp ones have two.
Stub out the case analysis of int-to-fp casts (no code yet).
I think the number of operands passed to BuildMI for loads was wrong.
Support load and store of float and double.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14360
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 24 Jun 2004 06:52:20 +0000 (06:52 +0000)]
Remove distasteful method which is really part of the indvars pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14359
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 24 Jun 2004 06:49:18 +0000 (06:49 +0000)]
Two fixes. First, stop using the ugly shouldSubstituteIndVar method.
Second, disable substitution of quadratic addrec expressions to avoid putting
multiplies in loops!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14358
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 24 Jun 2004 06:44:57 +0000 (06:44 +0000)]
Strange as it may sound, we'll not use LDD/STD to store longs. For reasons of
representational consistency, we want to address the halves of each 64-bit value
separately.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14356
91177308-0d34-0410-b5e6-
96231b3b80d8