oota-llvm.git
20 years agoInitial cut at an asm writer emitter. So far, this only handles emission of
Chris Lattner [Sun, 1 Aug 2004 05:59:33 +0000 (05:59 +0000)]
Initial cut at an asm writer emitter.  So far, this only handles emission of
instructions, and only instructions that take no operands at that!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15386 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd, and start using, the CodeGenInstruction class. This class represents
Chris Lattner [Sun, 1 Aug 2004 05:04:00 +0000 (05:04 +0000)]
Add, and start using, the CodeGenInstruction class.  This class represents
an instance of the Instruction tablegen class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15385 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd the 'ops' marker, add an AsmString initializer
Chris Lattner [Sun, 1 Aug 2004 04:40:43 +0000 (04:40 +0000)]
Add the 'ops' marker, add an AsmString initializer

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15383 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRename CodeGenWrappers.(cpp|h) -> CodeGenTarget.(cpp|h)
Chris Lattner [Sun, 1 Aug 2004 04:04:35 +0000 (04:04 +0000)]
Rename CodeGenWrappers.(cpp|h) -> CodeGenTarget.(cpp|h)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15382 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFinegrainify namespacification
Chris Lattner [Sun, 1 Aug 2004 03:55:39 +0000 (03:55 +0000)]
Finegrainify namespacification

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15381 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoCompletely disable the pattern isel until it is more substantial.
Chris Lattner [Sun, 1 Aug 2004 03:28:02 +0000 (03:28 +0000)]
Completely disable the pattern isel until it is more substantial.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15380 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoEntirely eliminate all patterns and expanders from this file. We shall go
Chris Lattner [Sun, 1 Aug 2004 03:25:01 +0000 (03:25 +0000)]
Entirely eliminate all patterns and expanders from this file.  We shall go
with an incremental approach rather than a revolutionary approach.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15379 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMove the 'Expander' node to later in the file, with the other experimental
Chris Lattner [Sun, 1 Aug 2004 03:23:34 +0000 (03:23 +0000)]
Move the 'Expander' node to later in the file, with the other experimental
stuff.  The pattern becomes a list, add some stuff, add some comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15378 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRemove obsolete file
Chris Lattner [Sun, 1 Aug 2004 03:19:28 +0000 (03:19 +0000)]
Remove obsolete file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15377 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMake OptimizeBlock take a MachineFunction::iterator instead of a
Alkis Evlogimenos [Sat, 31 Jul 2004 19:24:41 +0000 (19:24 +0000)]
Make OptimizeBlock take a MachineFunction::iterator instead of a
MachineBasicBlock* as a parameter so that nxext() and prior() helper
functions can work naturally on it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15376 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoNext on a pointer increments the pointer, not an iterator
Chris Lattner [Sat, 31 Jul 2004 18:40:36 +0000 (18:40 +0000)]
Next on a pointer increments the pointer, not an iterator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15375 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoUse next() helper to make code more readable. Use
Alkis Evlogimenos [Sat, 31 Jul 2004 15:14:29 +0000 (15:14 +0000)]
Use next() helper to make code more readable. Use
MachineFunction::iterator instead of MachineBasicBlock* to avoid
dereferencing end iterators.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15373 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoUse MachineFunction::iterator instead of a MachineBasicBlock* because
Alkis Evlogimenos [Sat, 31 Jul 2004 15:03:52 +0000 (15:03 +0000)]
Use MachineFunction::iterator instead of a MachineBasicBlock* because
FallThrough maybe == to MF.end().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15372 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAlign breaks.
Alkis Evlogimenos [Sat, 31 Jul 2004 10:05:44 +0000 (10:05 +0000)]
Align breaks.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15371 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoExpose breakcriticaledges as a functionpass
Chris Lattner [Sat, 31 Jul 2004 10:02:24 +0000 (10:02 +0000)]
Expose breakcriticaledges as a functionpass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15370 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoExpose this as a functionpass
Chris Lattner [Sat, 31 Jul 2004 10:01:58 +0000 (10:01 +0000)]
Expose this as a functionpass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15369 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoImplement a simple target-independent CFG cleanup pass
Chris Lattner [Sat, 31 Jul 2004 10:01:27 +0000 (10:01 +0000)]
Implement a simple target-independent CFG cleanup pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15368 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoNew pass
Chris Lattner [Sat, 31 Jul 2004 09:59:14 +0000 (09:59 +0000)]
New pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15367 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoExpose some helpful methods
Chris Lattner [Sat, 31 Jul 2004 09:59:04 +0000 (09:59 +0000)]
Expose some helpful methods

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15366 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd breaks
Chris Lattner [Sat, 31 Jul 2004 09:53:31 +0000 (09:53 +0000)]
Add breaks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15365 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoSimplify code a bit.
Alkis Evlogimenos [Sat, 31 Jul 2004 09:44:32 +0000 (09:44 +0000)]
Simplify code a bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15364 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoCorrectly spell 'unconditional'.
Alkis Evlogimenos [Sat, 31 Jul 2004 09:41:44 +0000 (09:41 +0000)]
Correctly spell 'unconditional'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15363 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoImplement insertGoto and reverseBranchCondition for the X86.
Alkis Evlogimenos [Sat, 31 Jul 2004 09:38:47 +0000 (09:38 +0000)]
Implement insertGoto and reverseBranchCondition for the X86.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15362 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoChange signature to take two basic blocks: the target and the one
Alkis Evlogimenos [Sat, 31 Jul 2004 09:37:52 +0000 (09:37 +0000)]
Change signature to take two basic blocks: the target and the one
where the goto will be appended.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15361 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoDoxygenify some comments.
Alkis Evlogimenos [Sat, 31 Jul 2004 08:57:27 +0000 (08:57 +0000)]
Doxygenify some comments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15360 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRemove const from iterators passed by value.
Alkis Evlogimenos [Sat, 31 Jul 2004 08:55:23 +0000 (08:55 +0000)]
Remove const from iterators passed by value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15359 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd declarations for insertGoto and reverseBranchCondition.
Alkis Evlogimenos [Sat, 31 Jul 2004 08:52:30 +0000 (08:52 +0000)]
Add declarations for insertGoto and reverseBranchCondition.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15358 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoI'm pretty sure that ba is branch always, which is a barrier. Brg should
Chris Lattner [Sat, 31 Jul 2004 02:24:37 +0000 (02:24 +0000)]
I'm pretty sure that ba is branch always, which is a barrier.  Brg should
check this :)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15357 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMark barrier instructions. Execution does not fall through uncond branches
Chris Lattner [Sat, 31 Jul 2004 02:10:53 +0000 (02:10 +0000)]
Mark barrier instructions.  Execution does not fall through uncond branches
or return intructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15356 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoSupport new flag
Chris Lattner [Sat, 31 Jul 2004 02:07:26 +0000 (02:07 +0000)]
Support new flag

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15355 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoNew flag
Chris Lattner [Sat, 31 Jul 2004 02:07:07 +0000 (02:07 +0000)]
New flag

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15354 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd new M_BARRIER_FLAG flag, and isBarrier() method to TargetInstrInfo
Chris Lattner [Sat, 31 Jul 2004 02:06:48 +0000 (02:06 +0000)]
Add new M_BARRIER_FLAG flag, and isBarrier() method to TargetInstrInfo

opCode -> Opcode

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15353 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd some machine CFG related stuff
Chris Lattner [Sat, 31 Jul 2004 01:59:11 +0000 (01:59 +0000)]
Add some machine CFG related stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15352 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoUpdated ModuloScheduling. It makes it all the wya through register allocation on...
Tanya Lattner [Fri, 30 Jul 2004 23:36:10 +0000 (23:36 +0000)]
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

20 years ago* Conditional save/restore of LR disabled as it's not quite correct
Misha Brukman [Fri, 30 Jul 2004 15:53:09 +0000 (15:53 +0000)]
* Conditional save/restore of LR disabled as it's not quite correct
* sumarray2d fixed: large fixed-size alloca
* make is now compileable
* Re-organized tests to fit them under proper headings

Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15347 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoDo not mark LR as callee-save: not quite correctly done. Patch: Nate Begeman.
Misha Brukman [Fri, 30 Jul 2004 15:51:51 +0000 (15:51 +0000)]
Do not mark LR as callee-save: not quite correctly done.   Patch: Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15346 91177308-0d34-0410-b5e6-96231b3b80d8

20 years ago* Temporarily suspend LR save/restore optimization as it is not quite correct
Misha Brukman [Fri, 30 Jul 2004 15:50:45 +0000 (15:50 +0000)]
* Temporarily suspend LR save/restore optimization as it is not quite correct
* Implement large fixed-size allocas            Entire patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15345 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoEnable compilation.
Misha Brukman [Fri, 30 Jul 2004 14:33:07 +0000 (14:33 +0000)]
Enable compilation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15344 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix De Morgan's name.
Misha Brukman [Fri, 30 Jul 2004 12:50:08 +0000 (12:50 +0000)]
Fix De Morgan's name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15343 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoStart using the PatternMatcher a bit.
Chris Lattner [Fri, 30 Jul 2004 07:50:03 +0000 (07:50 +0000)]
Start using the PatternMatcher a bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15342 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoCheck in some useful helper routines for doing ML-style pattern matching on
Chris Lattner [Fri, 30 Jul 2004 07:45:00 +0000 (07:45 +0000)]
Check in some useful helper routines for doing ML-style pattern matching on
the LLVM IR.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15341 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoI demand the ability to say 'if (isa<Value>(V))'!
Chris Lattner [Fri, 30 Jul 2004 06:59:15 +0000 (06:59 +0000)]
I demand the ability to say 'if (isa<Value>(V))'!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15340 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoConvert a few assertions with side-effects into regular old runtime checks.
Brian Gaeke [Thu, 29 Jul 2004 21:31:20 +0000 (21:31 +0000)]
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

20 years agoFix #includes of i*.h => Instructions.h as per PR403:
Chris Lattner [Thu, 29 Jul 2004 17:31:57 +0000 (17:31 +0000)]
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@15338 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix #includes of i*.h => Instructions.h as per PR403.
Misha Brukman [Thu, 29 Jul 2004 17:30:57 +0000 (17:30 +0000)]
Fix #includes of i*.h => Instructions.h as per PR403.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15337 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix #includes of i*.h => Instructions.h as per PR403.
Misha Brukman [Thu, 29 Jul 2004 17:30:56 +0000 (17:30 +0000)]
Fix #includes of i*.h => Instructions.h as per PR403.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15334 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix #includes of i*.h => Instructions.h as per PR403:
Chris Lattner [Thu, 29 Jul 2004 17:23:00 +0000 (17:23 +0000)]
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@15333 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoHeader moved
Chris Lattner [Thu, 29 Jul 2004 17:15:38 +0000 (17:15 +0000)]
Header moved

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15332 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix #includes of i*.h => Instructions.h as per PR403:
Chris Lattner [Thu, 29 Jul 2004 17:11:37 +0000 (17:11 +0000)]
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

20 years agoFix #includes of i*.h => Instructions.h as per PR403.
Misha Brukman [Thu, 29 Jul 2004 17:05:13 +0000 (17:05 +0000)]
Fix #includes of i*.h => Instructions.h as per PR403.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15328 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix #includes of i*.h files => Instructions.h as per PR403
Misha Brukman [Thu, 29 Jul 2004 16:53:53 +0000 (16:53 +0000)]
Fix #includes of i*.h files => Instructions.h as per PR403

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15327 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMerge i*.cpp definitions into Instructions.cpp as part of bug403.
Alkis Evlogimenos [Thu, 29 Jul 2004 12:33:25 +0000 (12:33 +0000)]
Merge i*.cpp definitions into Instructions.cpp as part of bug403.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15326 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMerge i*.h headers into Instructions.h as part of bug403.
Alkis Evlogimenos [Thu, 29 Jul 2004 12:17:34 +0000 (12:17 +0000)]
Merge i*.h headers into Instructions.h as part of bug403.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15325 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix test/Regression/Analysis/BasicAA/2004-07-28-MustAliasbug.llx
Chris Lattner [Thu, 29 Jul 2004 07:56:39 +0000 (07:56 +0000)]
Fix test/Regression/Analysis/BasicAA/2004-07-28-MustAliasbug.llx

This also fixes the miscompilation of MallocBench/gs with dead store
elimination enabled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15324 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoGet rid of a few dead method declarations.
Brian Gaeke [Thu, 29 Jul 2004 06:43:10 +0000 (06:43 +0000)]
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

20 years agoGet rid of calls to void llvm::printSet(const ValueSet &).
Brian Gaeke [Thu, 29 Jul 2004 06:43:09 +0000 (06:43 +0000)]
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

20 years agoGet rid of calls to void llvm::printSet(const ValueSet &).
Brian Gaeke [Thu, 29 Jul 2004 06:43:08 +0000 (06:43 +0000)]
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

20 years agoDon't derive from ValueSet to implement class LiveRange; instead, use a
Brian Gaeke [Thu, 29 Jul 2004 06:43:06 +0000 (06:43 +0000)]
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

20 years agoFix a few typoes and grammaroes in comments.
Brian Gaeke [Thu, 29 Jul 2004 04:25:43 +0000 (04:25 +0000)]
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

20 years agoFix typo in comment.
Brian Gaeke [Thu, 29 Jul 2004 04:22:30 +0000 (04:22 +0000)]
Fix typo in comment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15318 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRemove mustSaveAcrossCalls flag, which isn't ever read, and its mutator,
Brian Gaeke [Thu, 29 Jul 2004 04:15:36 +0000 (04:15 +0000)]
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

20 years agoMove Transforms/BasicAA to Analysis/BasicAA
Chris Lattner [Thu, 29 Jul 2004 01:34:10 +0000 (01:34 +0000)]
Move Transforms/BasicAA to Analysis/BasicAA

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15316 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoDue to a bug in BasicAA, DSE is incorrectly deleting the first store in
Chris Lattner [Thu, 29 Jul 2004 01:33:05 +0000 (01:33 +0000)]
Due to a bug in BasicAA, DSE is incorrectly deleting the first store in
this testcase, causing the miscompilation of MallocBench/gs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15315 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoUpdates to reflect most recent changes to bytecode file format:
Reid Spencer [Thu, 29 Jul 2004 00:13:04 +0000 (00:13 +0000)]
Updates to reflect most recent changes to bytecode file format:
* Dependent libraries & target triple
* Short block headers
* 24-bit type slot ids.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15314 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix grammar, eliminate double parenthesized sentence fragment.
Misha Brukman [Wed, 28 Jul 2004 22:37:57 +0000 (22:37 +0000)]
Fix grammar, eliminate double parenthesized sentence fragment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15313 91177308-0d34-0410-b5e6-96231b3b80d8

20 years ago* Wrap code listings in <div class="doc_code">
Misha Brukman [Wed, 28 Jul 2004 22:31:54 +0000 (22:31 +0000)]
* Wrap code listings in <div class="doc_code">
* Wrap keywords in <tt>
* Wrap lines at 80 cols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15312 91177308-0d34-0410-b5e6-96231b3b80d8

20 years ago* Use the doc_code class for code listings to make it stand out from text
Misha Brukman [Wed, 28 Jul 2004 22:18:33 +0000 (22:18 +0000)]
* Use the doc_code class for code listings to make it stand out from text
* Wrap text in soft, comfortable <div>s and <p>s
* Wrap lines at 80 cols

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15311 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoPut <tt> around verbatim code elements.
Misha Brukman [Wed, 28 Jul 2004 22:09:29 +0000 (22:09 +0000)]
Put <tt> around verbatim code elements.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15310 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMinor corrections
Chris Lattner [Wed, 28 Jul 2004 20:18:53 +0000 (20:18 +0000)]
Minor corrections

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15309 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoTargetInstrInfo::hasOperandInterlock() is always true, because it is
Brian Gaeke [Wed, 28 Jul 2004 19:24:48 +0000 (19:24 +0000)]
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

20 years agoAdd notes on bug involving casting ulong -> double, thanks to Nate Begeman.
Misha Brukman [Wed, 28 Jul 2004 19:16:10 +0000 (19:16 +0000)]
Add notes on bug involving casting ulong -> double, thanks to Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15307 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoSimplify loading (un)signed constants to registers, patch by Nate Begeman.
Misha Brukman [Wed, 28 Jul 2004 19:13:49 +0000 (19:13 +0000)]
Simplify loading (un)signed constants to registers, patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15306 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRemove an extra 8 byte distance penalty. Patch by Nate Begeman.
Misha Brukman [Wed, 28 Jul 2004 19:13:07 +0000 (19:13 +0000)]
Remove an extra 8 byte distance penalty.  Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15305 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFind longs by type, not by their primitive size being 64. Patch by Nate Begeman.
Misha Brukman [Wed, 28 Jul 2004 19:12:24 +0000 (19:12 +0000)]
Find longs by type, not by their primitive size being 64. Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15304 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoLI can only take signed values, so values > 32767 can only be loaded with ORI
Misha Brukman [Wed, 28 Jul 2004 00:56:04 +0000 (00:56 +0000)]
LI can only take signed values, so values > 32767 can only be loaded with ORI

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15299 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoReorganize tests to place them in proper directories.
Misha Brukman [Wed, 28 Jul 2004 00:55:12 +0000 (00:55 +0000)]
Reorganize tests to place them in proper directories.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15298 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoUnitTests 2003-05-26-Shorts and 2003-07-09-LoadShorts have been fixed;
Misha Brukman [Wed, 28 Jul 2004 00:01:41 +0000 (00:01 +0000)]
UnitTests 2003-05-26-Shorts and 2003-07-09-LoadShorts have been fixed;
2003-05-22-VarSizeArray is broken.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15297 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix printing of immediate operands by looking at their operand types in
Misha Brukman [Wed, 28 Jul 2004 00:00:48 +0000 (00:00 +0000)]
Fix printing of immediate operands by looking at their operand types in
the TargetInstrInfo.  This fixes UnitTests 2003-05-26-Shorts and
2003-07-09-LoadShorts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15296 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRenamed files:
Misha Brukman [Tue, 27 Jul 2004 23:29:16 +0000 (23:29 +0000)]
Renamed files:
* PowerPCReg.td => PowerPCRegisterinfo.td
* PowerPCInstrs.td => PowerPCInstrInfo.td

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15295 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoConstantTypeMustBeLoaded has been incorporated into SparcV9PreSelection, its
Brian Gaeke [Tue, 27 Jul 2004 21:43:38 +0000 (21:43 +0000)]
ConstantTypeMustBeLoaded has been incorporated into SparcV9PreSelection, its
only user.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15294 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoThis was the only user of TargetInstrInfo::ConstantTypeMustBeLoaded().
Brian Gaeke [Tue, 27 Jul 2004 21:11:20 +0000 (21:11 +0000)]
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

20 years agoThis is the regression test for the change to InstructionCombining.cpp
Robert Bocchino [Tue, 27 Jul 2004 21:06:34 +0000 (21:06 +0000)]
This is the regression test for the change to InstructionCombining.cpp
that I made today.  It illustrates that the old version of the code
would crash if the RHS of a multiplication were a ConstantExpr that
could not be resolved into a ConstantInt or ConstantFP.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15292 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoThis change fixed a bug in the function visitMul. The prior version
Robert Bocchino [Tue, 27 Jul 2004 21:02:21 +0000 (21:02 +0000)]
This change fixed a bug in the function visitMul.  The prior version
assumed that a constant on the RHS of a multiplication was either an
IntConstant or an FPConstant.  It checked for an IntConstant and then,
if it did not find one, did a hard cast to an FPConstant.  That code
would crash if the RHS were a ConstantExpr that was neither an
IntConstant nor an FPConstant.  This version replaces the hard cast
with a dyn_cast.  It performs the same way for IntConstants and
FPConstants but does nothing, instead of crashing, for constant
expressions.

The regression test for this change is 2004-07-27-ConstantExprMul.ll.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15291 91177308-0d34-0410-b5e6-96231b3b80d8

20 years ago*** empty log message ***
Robert Bocchino [Tue, 27 Jul 2004 20:50:02 +0000 (20:50 +0000)]
*** empty log message ***

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15290 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoGet rid of the (apparently non-working) filePrinterEmitter which is added in
Brian Gaeke [Tue, 27 Jul 2004 19:37:37 +0000 (19:37 +0000)]
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

20 years agoBranch selection support implemented by Nate Begeman for long branches.
Misha Brukman [Tue, 27 Jul 2004 18:43:04 +0000 (18:43 +0000)]
Branch selection support implemented by Nate Begeman for long branches.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15288 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFix the nightly tester to default to using gnuplot in /usr/bin
Chris Lattner [Tue, 27 Jul 2004 18:41:49 +0000 (18:41 +0000)]
Fix the nightly tester to default to using gnuplot in /usr/bin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15287 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoCorrectly print out long branches, assert on finding pseudo instr COND_BRANCH
Misha Brukman [Tue, 27 Jul 2004 18:40:39 +0000 (18:40 +0000)]
Correctly print out long branches, assert on finding pseudo instr COND_BRANCH
Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15286 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRun the branch selection pass right before the asm printer.
Misha Brukman [Tue, 27 Jul 2004 18:39:34 +0000 (18:39 +0000)]
Run the branch selection pass right before the asm printer.
Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15285 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoRemove empty unused method processFunctionBeforeFrameFinalized()
Misha Brukman [Tue, 27 Jul 2004 18:38:40 +0000 (18:38 +0000)]
Remove empty unused method processFunctionBeforeFrameFinalized()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15284 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd COND_BRANCH pseudo instruction, patch by Nate Begeman.
Misha Brukman [Tue, 27 Jul 2004 18:35:54 +0000 (18:35 +0000)]
Add COND_BRANCH pseudo instruction, patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15283 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoBuild COND_BRANCHes which may become long or short, decided by a later pass.
Misha Brukman [Tue, 27 Jul 2004 18:35:23 +0000 (18:35 +0000)]
Build COND_BRANCHes which may become long or short, decided by a later pass.
Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15282 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoMoved definition of invertPPCBranchOpcode() into PowerPCInstrInfo class.
Misha Brukman [Tue, 27 Jul 2004 18:34:11 +0000 (18:34 +0000)]
Moved definition of invertPPCBranchOpcode() into PowerPCInstrInfo class.
Patch by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15281 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoAdd PowerPCBranchSelector to discover which are `long' branches.
Misha Brukman [Tue, 27 Jul 2004 18:33:06 +0000 (18:33 +0000)]
Add PowerPCBranchSelector to discover which are `long' branches.
Contributed by Nate Begeman.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15280 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoTargetInstrInfo::getNOPOpCode() has been replaced by a reference to V9::NOP.
Brian Gaeke [Tue, 27 Jul 2004 17:43:24 +0000 (17:43 +0000)]
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

20 years agoConvert many of the virtual TargetInstrInfo methods used as helper
Brian Gaeke [Tue, 27 Jul 2004 17:43:23 +0000 (17:43 +0000)]
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

20 years agoAs it happens, none of these TargetInstrInfo methods which are only
Brian Gaeke [Tue, 27 Jul 2004 17:43:22 +0000 (17:43 +0000)]
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

20 years agoMake the create...() functions for some of these passes return a FunctionPass *.
Brian Gaeke [Tue, 27 Jul 2004 17:43:21 +0000 (17:43 +0000)]
Make the create...() functions for some of these passes return a FunctionPass *.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15276 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoFixed saving/restoring LR unconditionally, only done as necessary.
Misha Brukman [Tue, 27 Jul 2004 17:17:48 +0000 (17:17 +0000)]
Fixed saving/restoring LR unconditionally, only done as necessary.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15275 91177308-0d34-0410-b5e6-96231b3b80d8

20 years agoSave and restore LR just like any other register and ONLY if we actually modify
Misha Brukman [Tue, 27 Jul 2004 17:17:18 +0000 (17:17 +0000)]
Save and restore LR just like any other register and ONLY if we actually modify
it (due to calls or globals access).  We now compile `void empty(){}' to `blr'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15274 91177308-0d34-0410-b5e6-96231b3b80d8