oota-llvm.git
19 years agoAllow the live interval analysis pass to be a bit more aggressive about
Chris Lattner [Wed, 9 Mar 2005 23:05:19 +0000 (23:05 +0000)]
Allow the live interval analysis pass to be a bit more aggressive about
numbering values in live ranges for physical registers.

The alpha backend currently generates code that looks like this:

  vreg = preg
...
  preg = vreg
  use preg
...
  preg = vreg
  use preg

etc.  Because vreg contains the value of preg coming in, each of the
copies back into preg contain that initial value as well.

In the case of the Alpha, this allows this testcase:

void "foo"(int %blah) {
        store int 5, int *%MyVar
        store int 12, int* %MyVar2
        ret void
}

to compile to:

foo:
        ldgp $29, 0($27)
        ldiq $0,5
        stl $0,MyVar
        ldiq $0,12
        stl $0,MyVar2
        ret $31,($26),1

instead of:

foo:
        ldgp $29, 0($27)
        bis $29,$29,$0
        ldiq $1,5
        bis $0,$0,$29
        stl $1,MyVar
        ldiq $1,12
        bis $0,$0,$29
        stl $1,MyVar2
        ret $31,($26),1

This does not seem to have any noticable effect on X86 code.

This fixes PR535.

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

19 years agominor correction for Register that isn't used
Andrew Lenharth [Wed, 9 Mar 2005 20:48:23 +0000 (20:48 +0000)]
minor correction for Register that isn't used

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

19 years agoconstant fold FP_ROUND_INREG, ZERO_EXTEND_INREG, and SIGN_EXTEND_INREG
Chris Lattner [Wed, 9 Mar 2005 18:37:12 +0000 (18:37 +0000)]
constant fold FP_ROUND_INREG, ZERO_EXTEND_INREG, and SIGN_EXTEND_INREG

This allows the alpha backend to compile:

bool %test(uint %P) {
        %c = seteq uint %P, 0
        ret bool %c
}

into:

test:
        ldgp $29, 0($27)
        ZAP $16,240,$0
        CMPEQ $0,0,$0
        AND $0,1,$0
        ret $31,($26),1

instead of:

test:
        ldgp $29, 0($27)
        ZAP $16,240,$0
        ldiq $1,0
        ZAP $1,240,$1
        CMPEQ $0,$1,$0
        AND $0,1,$0
        ret $31,($26),1

... and fixes PR534.

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

19 years agocorrect the computation of the isAbstract bit for types.
Chris Lattner [Wed, 9 Mar 2005 17:34:27 +0000 (17:34 +0000)]
correct the computation of the isAbstract bit for types.

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

19 years agoFix Regression/Analysis/BasicAA/2005-03-09-BrokenBasicAA.ll, a miscompilation
Chris Lattner [Wed, 9 Mar 2005 16:29:52 +0000 (16:29 +0000)]
Fix Regression/Analysis/BasicAA/2005-03-09-BrokenBasicAA.ll, a miscompilation
that Alkis found with Java, thanks Alkis!

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

19 years agonew testcase for a -basicaa bug that Alkis found with Java.
Chris Lattner [Wed, 9 Mar 2005 16:29:22 +0000 (16:29 +0000)]
new testcase for a -basicaa bug that Alkis found with Java.

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

19 years agoFix a typo in an assertion comment.
Reid Spencer [Wed, 9 Mar 2005 15:19:41 +0000 (15:19 +0000)]
Fix a typo in an assertion comment.
Patch contributed by Vladimir Merzliakov.

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

19 years agoUse static_cast and #include Instructions.h
Chris Lattner [Wed, 9 Mar 2005 05:35:16 +0000 (05:35 +0000)]
Use static_cast and #include Instructions.h

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

19 years agoExport two methods for getting -X and A-B.
Chris Lattner [Wed, 9 Mar 2005 05:34:41 +0000 (05:34 +0000)]
Export two methods for getting -X and A-B.

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

19 years agoexport two methods
Chris Lattner [Wed, 9 Mar 2005 05:34:23 +0000 (05:34 +0000)]
export two methods

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

19 years agoget bugpoint working on ia64, by building .so's with -fpic. :)
Chris Lattner [Wed, 9 Mar 2005 03:31:02 +0000 (03:31 +0000)]
get bugpoint working on ia64, by building .so's with -fpic. :)

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

19 years agoFix a crash handling 'undef bool', fixing an llc crash on 186.crafty
Chris Lattner [Tue, 8 Mar 2005 22:53:09 +0000 (22:53 +0000)]
Fix a crash handling 'undef bool', fixing an llc crash on 186.crafty

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

19 years agoPatch to make assembly output compatible with mingw compilation (identical
Reid Spencer [Tue, 8 Mar 2005 17:02:05 +0000 (17:02 +0000)]
Patch to make assembly output compatible with mingw compilation (identical
to cygwin)

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

19 years agoMake sure to remove all dead type names from the symbol table, not just
Chris Lattner [Tue, 8 Mar 2005 16:19:59 +0000 (16:19 +0000)]
Make sure to remove all dead type names from the symbol table, not just
struct types.  This fixes Regression/CodeGen/CBackend/2005-03-08-RecursiveTypeCrash.ll,
a crash on Java output that Alkis reported.

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

19 years agonew testcase that crashes the CBE.
Chris Lattner [Tue, 8 Mar 2005 16:19:02 +0000 (16:19 +0000)]
new testcase that crashes the CBE.

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

19 years agoClarify inability to generate assembly, and note that VC++ Express works.
Jeff Cohen [Tue, 8 Mar 2005 03:56:50 +0000 (03:56 +0000)]
Clarify inability to generate assembly, and note that VC++ Express works.

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

19 years agoSingle characters should be printed out as chars, not strings.
Misha Brukman [Tue, 8 Mar 2005 00:26:08 +0000 (00:26 +0000)]
Single characters should be printed out as chars, not strings.

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

19 years agoVarious cleanups and clarifications, thanks to Gabor Greif for contributing this...
Chris Lattner [Mon, 7 Mar 2005 22:13:59 +0000 (22:13 +0000)]
Various cleanups and clarifications, thanks to Gabor Greif for contributing this patch!

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

19 years agoFix problems compiling with G++ 4.x.x with -pedantic. Thanks to
Chris Lattner [Mon, 7 Mar 2005 20:35:45 +0000 (20:35 +0000)]
Fix problems compiling with G++ 4.x.x with -pedantic.  Thanks to
Vladimir Merzliakov for the patch!

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

19 years agofix another typo
Chris Lattner [Mon, 7 Mar 2005 20:31:38 +0000 (20:31 +0000)]
fix another typo

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

19 years agofix typeo that Gabor Greif noticed!
Chris Lattner [Mon, 7 Mar 2005 20:30:51 +0000 (20:30 +0000)]
fix typeo that Gabor Greif noticed!

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

19 years agomove the reassociation pass after the LICM pass. This speeds up mgrid
Chris Lattner [Mon, 7 Mar 2005 03:19:50 +0000 (03:19 +0000)]
move the reassociation pass after the LICM pass.  This speeds up mgrid
from 10.27s to 9.57s with the CBE.

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

19 years agoFix an apparent ambiguity compiling on PPC
Chris Lattner [Mon, 7 Mar 2005 02:59:36 +0000 (02:59 +0000)]
Fix an apparent ambiguity compiling on PPC

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

19 years agofix a bug where we thought arguments were constants :(
Chris Lattner [Sun, 6 Mar 2005 22:52:29 +0000 (22:52 +0000)]
fix a bug where we thought arguments were constants :(

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

19 years agoFix Regression/Transforms/LoopStrengthReduce/dont_insert_redundant_ops.ll,
Chris Lattner [Sun, 6 Mar 2005 22:36:12 +0000 (22:36 +0000)]
Fix Regression/Transforms/LoopStrengthReduce/dont_insert_redundant_ops.ll,
hopefully not breaking too many other things.

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

19 years agocleanup the test
Chris Lattner [Sun, 6 Mar 2005 22:24:45 +0000 (22:24 +0000)]
cleanup the test

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

19 years agocheck that we only insert one phi node per loop
Chris Lattner [Sun, 6 Mar 2005 22:23:31 +0000 (22:23 +0000)]
check that we only insert one phi node per loop

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

19 years agoAdd testcase for this:
Chris Lattner [Sun, 6 Mar 2005 22:15:24 +0000 (22:15 +0000)]
Add testcase for this:

(3) Do not reduce element sizes of small power of two:

  char s[10];
  for (i)
    ...s[i] ...

when the indvar is not eliminable.

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

19 years agoimplement Transforms/LoopStrengthReduce/invariant_value_first_arg.ll
Chris Lattner [Sun, 6 Mar 2005 22:06:22 +0000 (22:06 +0000)]
implement Transforms/LoopStrengthReduce/invariant_value_first_arg.ll

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

19 years agotestcase for A[invariant][indvar] where invariant is an instruction.
Chris Lattner [Sun, 6 Mar 2005 22:06:09 +0000 (22:06 +0000)]
testcase for A[invariant][indvar] where invariant is an instruction.

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

19 years agoadd test for this:
Chris Lattner [Sun, 6 Mar 2005 22:04:27 +0000 (22:04 +0000)]
add test for this:

(1) Allow loop invariant expressions to come before the induction variable (instead of just
constants):

   int x;
   for (i)
    ...a[x][i]

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

19 years agoAdd test for this:
Chris Lattner [Sun, 6 Mar 2005 22:01:42 +0000 (22:01 +0000)]
Add test for this:

Allow operands after the induction variable (no restrictions):

  int x;
  for (i)
   j = .....
   a[i][x][j]

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

19 years agominor simplifications of the code.
Chris Lattner [Sun, 6 Mar 2005 21:58:22 +0000 (21:58 +0000)]
minor simplifications of the code.

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

19 years agoa regtest
Chris Lattner [Sun, 6 Mar 2005 21:47:40 +0000 (21:47 +0000)]
a regtest

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

19 years agonew directory
Chris Lattner [Sun, 6 Mar 2005 21:42:59 +0000 (21:42 +0000)]
new directory

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

19 years agotrivial simplification
Chris Lattner [Sun, 6 Mar 2005 21:35:38 +0000 (21:35 +0000)]
trivial simplification

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

19 years agoFix a bug where we could corrupt a parent loop's header info if we unrolled
Chris Lattner [Sun, 6 Mar 2005 20:57:32 +0000 (20:57 +0000)]
Fix a bug where we could corrupt a parent loop's header info if we unrolled
a nested loop.  This fixes Transforms/LoopUnroll/2005-03-06-BadLoopInfoUpdate.ll
and PR532

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

19 years agoNew testcase for PR532
Chris Lattner [Sun, 6 Mar 2005 20:56:55 +0000 (20:56 +0000)]
New testcase for PR532

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

19 years agonew helper method
Chris Lattner [Sun, 6 Mar 2005 20:55:34 +0000 (20:55 +0000)]
new helper method

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

19 years agonew testcase reduced from the MultiSource/Applications/d failure last night.
Chris Lattner [Sun, 6 Mar 2005 19:40:19 +0000 (19:40 +0000)]
new testcase reduced from the MultiSource/Applications/d failure last night.

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

19 years agomove some method declarations around to make it clear that users should
Chris Lattner [Sun, 6 Mar 2005 06:03:44 +0000 (06:03 +0000)]
move some method declarations around to make it clear that users should
not call insert(Value *Val), remove(Value* Val), or
changeName(Value *V, const std::string &Name)

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

19 years agothis method is never called.
Chris Lattner [Sun, 6 Mar 2005 06:00:24 +0000 (06:00 +0000)]
this method is never called.

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

19 years agocleanup some html
Chris Lattner [Sun, 6 Mar 2005 06:00:13 +0000 (06:00 +0000)]
cleanup some html
remove a statement that is no longer true
remove comment about a dead method.

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

19 years agothe only caller of insertEntry is insert, inline it and remove insertEntry
Chris Lattner [Sun, 6 Mar 2005 05:56:02 +0000 (05:56 +0000)]
the only caller of insertEntry is insert, inline it and remove insertEntry

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

19 years agorename insertEntry to insert
Chris Lattner [Sun, 6 Mar 2005 05:55:40 +0000 (05:55 +0000)]
rename insertEntry to insert

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

19 years agoMerge SymbolTable::removeEntry into SymbolTable::remove, its only caller
Chris Lattner [Sun, 6 Mar 2005 05:51:09 +0000 (05:51 +0000)]
Merge SymbolTable::removeEntry into SymbolTable::remove, its only caller

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

19 years agoremove this method.
Chris Lattner [Sun, 6 Mar 2005 05:50:49 +0000 (05:50 +0000)]
remove this method.

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

19 years agoDelete the really inefficient method: void remove(const Type* Typ);
Chris Lattner [Sun, 6 Mar 2005 05:46:41 +0000 (05:46 +0000)]
Delete the really inefficient method: void remove(const Type* Typ);
Speed up the symbol stripping code by avoiding a linear search of the
type table.

Get rid of removeEntry(type_iterator), since 'remove' is exactly the same
operation.

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

19 years agoDelete the really inefficient method: void remove(const Type* Typ);
Chris Lattner [Sun, 6 Mar 2005 05:46:00 +0000 (05:46 +0000)]
Delete the really inefficient method: void remove(const Type* Typ);

Get rid of removeEntry(type_iterator), since 'remove' is exactly the same
operation.

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

19 years agoMake this MUCH faster by avoiding a linear search in the symbol table code.
Chris Lattner [Sun, 6 Mar 2005 05:42:36 +0000 (05:42 +0000)]
Make this MUCH faster by avoiding a linear search in the symbol table code.

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

19 years agoInternallyInconsistent is dead!
Chris Lattner [Sun, 6 Mar 2005 05:22:05 +0000 (05:22 +0000)]
InternallyInconsistent is dead!

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

19 years agoRemove some really gross and hard to understand code now that
Chris Lattner [Sun, 6 Mar 2005 05:21:40 +0000 (05:21 +0000)]
Remove some really gross and hard to understand code now that
InternallyInconsistent is always false.

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

19 years agoSimplify some code.
Chris Lattner [Sun, 6 Mar 2005 05:13:42 +0000 (05:13 +0000)]
Simplify some code.

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

19 years agoremove these dead methods.
Chris Lattner [Sun, 6 Mar 2005 02:38:24 +0000 (02:38 +0000)]
remove these dead methods.

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

19 years agoremove these methods.
Chris Lattner [Sun, 6 Mar 2005 02:37:47 +0000 (02:37 +0000)]
remove these methods.

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

19 years agoThese methods are removed.
Chris Lattner [Sun, 6 Mar 2005 02:37:21 +0000 (02:37 +0000)]
These methods are removed.

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

19 years agosimplify and speed up some code
Chris Lattner [Sun, 6 Mar 2005 02:32:00 +0000 (02:32 +0000)]
simplify and speed up some code

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

19 years agosimplify some code.
Chris Lattner [Sun, 6 Mar 2005 02:28:23 +0000 (02:28 +0000)]
simplify some code.

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

19 years agonuke some dead methods.
Chris Lattner [Sun, 6 Mar 2005 02:25:02 +0000 (02:25 +0000)]
nuke some dead methods.

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

19 years agoThis fixes PR531, a crash when running the CBE on a bytecode file.
Chris Lattner [Sun, 6 Mar 2005 02:14:28 +0000 (02:14 +0000)]
This fixes PR531, a crash when running the CBE on a bytecode file.

The problem is that Function::renameLocalSymbols is iterating through
the symbol table planes, occasionally calling setName to rename a value
(which used to do a symbol table remove/insert pair).

The problem is that if there is only a single value in a particular type
plane that the remove will nuke the symbol table plane, and the insert
will create and insert a new one.  This hoses Function::renameLocalSymbols
because it has an iterator to the old plane, under the (very reasonable)
assumption that simply renaming a value won't cause the type plane to
disappear.

This patch fixes the bug by making the rename operation a single atomic
operation, which has a side effect of making the whole thing faster too. :)

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

19 years agoAdd a new method, allow symtab to poke name.
Chris Lattner [Sun, 6 Mar 2005 02:10:40 +0000 (02:10 +0000)]
Add a new method, allow symtab to poke name.

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

19 years agoReformat comments to fix 80 columns.
Jeff Cohen [Sat, 5 Mar 2005 22:45:40 +0000 (22:45 +0000)]
Reformat comments to fix 80 columns.

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

19 years agoReuse induction variables created for strength-reduced GEPs by other similar GEPs.
Jeff Cohen [Sat, 5 Mar 2005 22:40:34 +0000 (22:40 +0000)]
Reuse induction variables created for strength-reduced GEPs by other similar GEPs.

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

19 years agoremove extraneous spaces from argument lists.
Chris Lattner [Sat, 5 Mar 2005 19:58:40 +0000 (19:58 +0000)]
remove extraneous spaces from argument lists.

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

19 years agoremove all of the various setName implementations, consolidating them into
Chris Lattner [Sat, 5 Mar 2005 19:51:50 +0000 (19:51 +0000)]
remove all of the various setName implementations, consolidating them into
Value::setName, which is no longer virtual.

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

19 years agosecond argument to Value::setName is now gone.
Chris Lattner [Sat, 5 Mar 2005 19:05:20 +0000 (19:05 +0000)]
second argument to Value::setName is now gone.

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

19 years agoMake sure the two arguments of a setcc instruction point to the same node.
Chris Lattner [Sat, 5 Mar 2005 19:04:31 +0000 (19:04 +0000)]
Make sure the two arguments of a setcc instruction point to the same node.

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

19 years agozap
Chris Lattner [Sat, 5 Mar 2005 19:04:07 +0000 (19:04 +0000)]
zap

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

19 years ago2nd arg to setName goes away.
Chris Lattner [Sat, 5 Mar 2005 19:02:15 +0000 (19:02 +0000)]
2nd arg to setName goes away.

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

19 years agoConstants never get names.
Chris Lattner [Sat, 5 Mar 2005 19:01:59 +0000 (19:01 +0000)]
Constants never get names.

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

19 years agoRemove the 2nd argument to Value::setName
Chris Lattner [Sat, 5 Mar 2005 19:01:49 +0000 (19:01 +0000)]
Remove the 2nd argument to Value::setName

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

19 years agoRemove the second argument to Value::setName, it is never needed.
Chris Lattner [Sat, 5 Mar 2005 18:59:36 +0000 (18:59 +0000)]
Remove the second argument to Value::setName, it is never needed.

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

19 years agoNew testcase for PR533
Chris Lattner [Sat, 5 Mar 2005 18:47:28 +0000 (18:47 +0000)]
New testcase for PR533

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

19 years agodon't break the build on 32-bit hosts.
Chris Lattner [Sat, 5 Mar 2005 17:47:38 +0000 (17:47 +0000)]
don't break the build on 32-bit hosts.

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

19 years agoThis file is all commented out.
Chris Lattner [Sat, 5 Mar 2005 17:28:37 +0000 (17:28 +0000)]
This file is all commented out.

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

19 years agofix data size stuff for architectures with bit challenged data types
Andrew Lenharth [Sat, 5 Mar 2005 15:30:33 +0000 (15:30 +0000)]
fix data size stuff for architectures with bit challenged data types

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

19 years agoDo not compute 1ULL << 64, which is undefined. This fixes Ptrdist/ks on the
Chris Lattner [Fri, 4 Mar 2005 23:21:33 +0000 (23:21 +0000)]
Do not compute 1ULL << 64, which is undefined.  This fixes Ptrdist/ks on the
sparc, and testcase Regression/Transforms/InstCombine/2005-03-04-ShiftOverflow.ll

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

19 years agoTestcase for a bug that caused us to miscompile ptrdist/ks on sparc.
Chris Lattner [Fri, 4 Mar 2005 23:20:46 +0000 (23:20 +0000)]
Testcase for a bug that caused us to miscompile ptrdist/ks on sparc.

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

19 years agofix up stack pointer adjustments
Andrew Lenharth [Fri, 4 Mar 2005 21:40:02 +0000 (21:40 +0000)]
fix up stack pointer adjustments

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

19 years agoTrivial cleanup patch
Chris Lattner [Fri, 4 Mar 2005 20:27:46 +0000 (20:27 +0000)]
Trivial cleanup patch

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

19 years agofix FCMOVxx typo, set rem and div to hardcode target reg to be the same as the one...
Andrew Lenharth [Fri, 4 Mar 2005 20:09:23 +0000 (20:09 +0000)]
fix FCMOVxx typo, set rem and div to hardcode target reg to be the same as the one the assembler uese, update ISel to put values in regs used by assembler for rem and div

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

19 years agoAdd support for not strength reducing GEPs where the element size is a small
Jeff Cohen [Fri, 4 Mar 2005 04:04:26 +0000 (04:04 +0000)]
Add support for not strength reducing GEPs where the element size is a small
power of two.  This emphatically includes the zeroeth power of two.

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

19 years agoturn on IEEE for compares
Andrew Lenharth [Thu, 3 Mar 2005 22:12:11 +0000 (22:12 +0000)]
turn on IEEE for compares

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

19 years agobeter Select on FP
Andrew Lenharth [Thu, 3 Mar 2005 21:47:53 +0000 (21:47 +0000)]
beter Select on FP

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

19 years agoPrint -X like this:
Chris Lattner [Thu, 3 Mar 2005 21:12:04 +0000 (21:12 +0000)]
Print -X like this:

double test(double l1_X) {
  return (-l1_X);
}

instead of like this:

double test(double l1_X) {
  return (-0x0p+0 - l1_X);
}

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

19 years agoLSR cleanup patch
Andrew Lenharth [Thu, 3 Mar 2005 19:03:21 +0000 (19:03 +0000)]
LSR cleanup patch

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

19 years agoDo not lower malloc's to pass "sizeof" expressions like this:
Chris Lattner [Thu, 3 Mar 2005 01:04:50 +0000 (01:04 +0000)]
Do not lower malloc's to pass "sizeof" expressions like this:

  ltmp_0_7 = malloc(((unsigned )(&(((signed char (*)[784])/*NULL*/0)[1u]))));

Instead, just emit the literal constant, like this:

  ltmp_0_7 = malloc(784u);

This works around a bug in ICC 8.1 compiling the CBE generated code.  :-(

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

19 years agoAdd an optional argument to lower to a specific constant value instead of
Chris Lattner [Thu, 3 Mar 2005 01:03:43 +0000 (01:03 +0000)]
Add an optional argument to lower to a specific constant value instead of
to a "sizeof" expression.

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

19 years agoAdd an argument.
Chris Lattner [Thu, 3 Mar 2005 01:03:10 +0000 (01:03 +0000)]
Add an argument.

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

19 years agoFix the spelling of the word `the'
Misha Brukman [Wed, 2 Mar 2005 23:17:31 +0000 (23:17 +0000)]
Fix the spelling of the word `the'

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

19 years agoPrint the module ID as a comment.
Chris Lattner [Wed, 2 Mar 2005 23:12:40 +0000 (23:12 +0000)]
Print the module ID as a comment.

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

19 years agocleanup the cfg after lsr
Chris Lattner [Wed, 2 Mar 2005 21:56:00 +0000 (21:56 +0000)]
cleanup the cfg after lsr

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

19 years agoremove 32 sign extend after 32 sextload and handle small negative constant
Andrew Lenharth [Wed, 2 Mar 2005 17:23:03 +0000 (17:23 +0000)]
remove 32 sign extend after 32 sextload and handle small negative constant

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

19 years agoAdded LSR as a beta pass for alpha
Andrew Lenharth [Wed, 2 Mar 2005 17:21:38 +0000 (17:21 +0000)]
Added LSR as a beta pass for alpha

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

19 years agoAdd a temporary option for llc-beta: -enable-lsr-for-ppc, which turns on
Chris Lattner [Wed, 2 Mar 2005 06:19:22 +0000 (06:19 +0000)]
Add a temporary option for llc-beta: -enable-lsr-for-ppc, which turns on
Loop Strength Reduction.

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

19 years agoBe slightly more accurate in an error message.
Reid Spencer [Wed, 2 Mar 2005 05:45:56 +0000 (05:45 +0000)]
Be slightly more accurate in an error message.

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

19 years agoFix a nasty order of evaluation bug that Gabor Greif ran into. Here's an
Chris Lattner [Wed, 2 Mar 2005 03:54:43 +0000 (03:54 +0000)]
Fix a nasty order of evaluation bug that Gabor Greif ran into.  Here's an
explanation from IRC:

|sabre| I think it's an order of evaluation thing
|sabre| for me, the RHS of the assignment is evaluated first
|sabre| getTypeDescription checks to see if ConcreteTypeDescription[Ty] contains anything
|sabre| since it doesn't, it computes and returns the value
|sabre| this gets put into the map.
|sabre| For you, the LHS is evaluated first.
|sabre| Map[Ty] (aka ConcreteTypeDescriptions[Ty]) inserts an empty string into the map, returning a reference
|sabre| getTypeDesc then sees the empty string in the map
|sabre| and returns it
|sabre| bork :)

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

19 years agoNow that type does not derive from Value, these do not need to be virtual.
Chris Lattner [Wed, 2 Mar 2005 03:43:55 +0000 (03:43 +0000)]
Now that type does not derive from Value, these do not need to be virtual.

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

19 years agoFix HTML-4.01 Strict compliance
Misha Brukman [Tue, 1 Mar 2005 17:19:21 +0000 (17:19 +0000)]
Fix HTML-4.01 Strict compliance

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

19 years agoUse a colon instead of a period since we're introducing a command list
Misha Brukman [Tue, 1 Mar 2005 17:15:23 +0000 (17:15 +0000)]
Use a colon instead of a period since we're introducing a command list

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