oota-llvm.git
18 years agoadd a regression for memmove
Andrew Lenharth [Fri, 3 Nov 2006 22:45:09 +0000 (22:45 +0000)]
add a regression for memmove

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

18 years agoadd a note
Chris Lattner [Fri, 3 Nov 2006 22:27:39 +0000 (22:27 +0000)]
add a note

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

18 years agothis started failing due to Reid's changes in the bc format. insulate it
Chris Lattner [Fri, 3 Nov 2006 22:01:15 +0000 (22:01 +0000)]
this started failing due to Reid's changes in the bc format.  insulate it
from future changes.

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

18 years agoFix BasicAA/2006-11-03-BasicAAVectorCrash.ll by handling out-of-range
Chris Lattner [Fri, 3 Nov 2006 21:58:48 +0000 (21:58 +0000)]
Fix BasicAA/2006-11-03-BasicAAVectorCrash.ll by handling out-of-range
vector accesses like we handle out-of-range array accesses.

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

18 years agonew testcase
Chris Lattner [Fri, 3 Nov 2006 21:58:14 +0000 (21:58 +0000)]
new testcase

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

18 years agoMake the huge_val test run a C++ program not C
Reid Spencer [Fri, 3 Nov 2006 19:49:16 +0000 (19:49 +0000)]
Make the huge_val test run a C++ program not C

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

18 years agothis will work better
Chris Lattner [Fri, 3 Nov 2006 19:15:55 +0000 (19:15 +0000)]
this will work better

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

18 years agoFix the build on xcode < 2.4
Chris Lattner [Fri, 3 Nov 2006 19:13:59 +0000 (19:13 +0000)]
Fix the build on xcode < 2.4

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

18 years agoAdd a check to see if HUGE_VAL is sane or not.
Reid Spencer [Fri, 3 Nov 2006 18:04:08 +0000 (18:04 +0000)]
Add a check to see if HUGE_VAL is sane or not.

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

18 years agoSplit the External and Intrinsic handling into seperate functions. This
Andrew Lenharth [Fri, 3 Nov 2006 17:43:19 +0000 (17:43 +0000)]
Split the External and Intrinsic handling into seperate functions.  This
improves readability of the call handling code significantly, as well as
makes it clear which parts are hacky (externals) and which parts are good
(call handling).

No functionality change.

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

18 years agoFix comments.
Evan Cheng [Fri, 3 Nov 2006 07:31:32 +0000 (07:31 +0000)]
Fix comments.

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

18 years agoRename
Evan Cheng [Fri, 3 Nov 2006 07:21:16 +0000 (07:21 +0000)]
Rename

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

18 years agoRemove dead variable. Fix 80 column violations.
Reid Spencer [Fri, 3 Nov 2006 03:30:34 +0000 (03:30 +0000)]
Remove dead variable. Fix 80 column violations.

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

18 years agorevert previous patch
Rafael Espindola [Fri, 3 Nov 2006 03:08:28 +0000 (03:08 +0000)]
revert previous patch

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

18 years agoAdded DAG combiner transformation to generate pre-indexed loads.
Evan Cheng [Fri, 3 Nov 2006 03:06:21 +0000 (03:06 +0000)]
Added DAG combiner transformation to generate pre-indexed loads.

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

18 years agoAdded isPredecessor.
Evan Cheng [Fri, 3 Nov 2006 03:05:24 +0000 (03:05 +0000)]
Added isPredecessor.

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

18 years agoProper check for two-addressness.
Evan Cheng [Fri, 3 Nov 2006 03:04:46 +0000 (03:04 +0000)]
Proper check for two-addressness.

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

18 years agoAdded a target specific hook to check whether / how a node can be transformed
Evan Cheng [Fri, 3 Nov 2006 03:04:06 +0000 (03:04 +0000)]
Added a target specific hook to check whether / how a node can be transformed
into a pair of base / offset nodes for pre-indexed load / store ops.

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

18 years agoAdd isPredecessor to check whether a node is another's predecessor.
Evan Cheng [Fri, 3 Nov 2006 03:02:18 +0000 (03:02 +0000)]
Add isPredecessor to check whether a node is another's predecessor.

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

18 years agoDead code.
Evan Cheng [Fri, 3 Nov 2006 02:08:41 +0000 (02:08 +0000)]
Dead code.

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

18 years agoRemove unused variable.
Reid Spencer [Fri, 3 Nov 2006 01:58:30 +0000 (01:58 +0000)]
Remove unused variable.

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

18 years agoRemove an unused variable.
Reid Spencer [Fri, 3 Nov 2006 01:48:30 +0000 (01:48 +0000)]
Remove an unused variable.

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

18 years agosilence warning
Chris Lattner [Fri, 3 Nov 2006 01:45:13 +0000 (01:45 +0000)]
silence warning

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

18 years agoRemove some dead code.
Reid Spencer [Fri, 3 Nov 2006 01:44:51 +0000 (01:44 +0000)]
Remove some dead code.

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

18 years agoadd createCFGSimplificationPass to ARMTargetMachine::addInstSelector
Rafael Espindola [Fri, 3 Nov 2006 01:39:25 +0000 (01:39 +0000)]
add createCFGSimplificationPass to ARMTargetMachine::addInstSelector

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

18 years agoassert.h -> cassert
Rafael Espindola [Fri, 3 Nov 2006 01:38:14 +0000 (01:38 +0000)]
assert.h -> cassert

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

18 years agoremove dead code
Chris Lattner [Fri, 3 Nov 2006 01:34:58 +0000 (01:34 +0000)]
remove dead code

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

18 years agosilence warning
Chris Lattner [Fri, 3 Nov 2006 01:28:29 +0000 (01:28 +0000)]
silence warning

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

18 years agoDon't write out variables that are never used.
Reid Spencer [Fri, 3 Nov 2006 01:28:12 +0000 (01:28 +0000)]
Don't write out variables that are never used.

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

18 years agosilence warning
Chris Lattner [Fri, 3 Nov 2006 01:19:31 +0000 (01:19 +0000)]
silence warning

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

18 years agosilence warnings.
Chris Lattner [Fri, 3 Nov 2006 01:18:29 +0000 (01:18 +0000)]
silence warnings.

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

18 years agosilence warning
Chris Lattner [Fri, 3 Nov 2006 01:13:15 +0000 (01:13 +0000)]
silence warning

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

18 years agosilence warnings
Chris Lattner [Fri, 3 Nov 2006 01:11:05 +0000 (01:11 +0000)]
silence warnings

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

18 years agoMake sample project -pedantic clean.
Reid Spencer [Fri, 3 Nov 2006 00:09:53 +0000 (00:09 +0000)]
Make sample project -pedantic clean.

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

18 years agoMake Stacker Runtime -pedantic clean.
Reid Spencer [Fri, 3 Nov 2006 00:08:08 +0000 (00:08 +0000)]
Make Stacker Runtime -pedantic clean.

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

18 years agoMake llvm2cpp -pedantic clean.
Reid Spencer [Fri, 3 Nov 2006 00:05:16 +0000 (00:05 +0000)]
Make llvm2cpp -pedantic clean.

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

18 years agoMake CBackend -pedantic clean.
Reid Spencer [Fri, 3 Nov 2006 00:00:57 +0000 (00:00 +0000)]
Make CBackend -pedantic clean.

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

18 years agoMake CodeGen libs -pedantic clean.
Reid Spencer [Thu, 2 Nov 2006 23:56:21 +0000 (23:56 +0000)]
Make CodeGen libs -pedantic clean.

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

18 years ago#include <assert.h>
Rafael Espindola [Thu, 2 Nov 2006 23:48:53 +0000 (23:48 +0000)]
#include <assert.h>

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

18 years agofix a bug reid noticed
Chris Lattner [Thu, 2 Nov 2006 23:39:53 +0000 (23:39 +0000)]
fix a bug reid noticed

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

18 years ago1. Hash not quite right for DIEValues.
Jim Laskey [Thu, 2 Nov 2006 21:48:18 +0000 (21:48 +0000)]
1. Hash not quite right for DIEValues.

2. Not going to use Usage (no significant benefit.)

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

18 years agoRevert last patch which causes tblgen to segfault (why, I'm not sure).
Reid Spencer [Thu, 2 Nov 2006 21:07:40 +0000 (21:07 +0000)]
Revert last patch which causes tblgen to segfault (why, I'm not sure).

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

18 years agoRemove unused variable.
Reid Spencer [Thu, 2 Nov 2006 20:55:40 +0000 (20:55 +0000)]
Remove unused variable.

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

18 years agoFor PR786:
Reid Spencer [Thu, 2 Nov 2006 20:46:16 +0000 (20:46 +0000)]
For PR786:
Remove unused variables.

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

18 years agoFor PR786:
Reid Spencer [Thu, 2 Nov 2006 20:25:50 +0000 (20:25 +0000)]
For PR786:
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.

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

18 years agoGeneral clean up of teh dwarf writer.
Jim Laskey [Thu, 2 Nov 2006 20:12:39 +0000 (20:12 +0000)]
General clean up of teh dwarf writer.

1. Most significant is the folding of debug information entries.  This
reduced self hosted -g SelectionDAGISel.s from 120M to 13M and pretty
close to matching .o file sizes with gcc.

2. Debug information entry printing for debugging the dwarf code.

3. Bring all the code closer to llvm standards.

4. Misc. fixes and doc clean ups.

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

18 years agomove ARMCondCodeToString to ARMAsmPrinter.cpp
Rafael Espindola [Thu, 2 Nov 2006 15:00:02 +0000 (15:00 +0000)]
move ARMCondCodeToString to ARMAsmPrinter.cpp
remove unused variables from lowerCall

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

18 years agoAllow FoldingSet clients to pump up the initial hash size.
Jim Laskey [Thu, 2 Nov 2006 14:21:26 +0000 (14:21 +0000)]
Allow FoldingSet clients to pump up the initial hash size.

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

18 years agoRemove unused variable.
Reid Spencer [Thu, 2 Nov 2006 08:23:44 +0000 (08:23 +0000)]
Remove unused variable.

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

18 years agoRemove unused variables.
Reid Spencer [Thu, 2 Nov 2006 08:18:15 +0000 (08:18 +0000)]
Remove unused variables.

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

18 years agoRemove a function prototype that is no longer needed (REM patch missed it)
Reid Spencer [Thu, 2 Nov 2006 08:12:02 +0000 (08:12 +0000)]
Remove a function prototype that is no longer needed (REM patch missed it)

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

18 years agoGet rid of unused variable.
Reid Spencer [Thu, 2 Nov 2006 07:59:59 +0000 (07:59 +0000)]
Get rid of unused variable.

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

18 years agoAdd some documentation about the arguments.
Reid Spencer [Thu, 2 Nov 2006 03:37:39 +0000 (03:37 +0000)]
Add some documentation about the arguments.

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

18 years agofix 2006-11-01-vastart.ll
Andrew Lenharth [Thu, 2 Nov 2006 03:05:26 +0000 (03:05 +0000)]
fix 2006-11-01-vastart.ll

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

18 years agoa regression :(
Andrew Lenharth [Thu, 2 Nov 2006 03:04:37 +0000 (03:04 +0000)]
a regression :(

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

18 years agoFor PR950:
Reid Spencer [Thu, 2 Nov 2006 01:53:59 +0000 (01:53 +0000)]
For PR950:
Replace the REM instruction with UREM, SREM and FREM.

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

18 years agonew testcase
Chris Lattner [Thu, 2 Nov 2006 01:45:28 +0000 (01:45 +0000)]
new testcase

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

18 years agoImplement the getRegForInlineAsmConstraint method for PPC. With recent
Chris Lattner [Thu, 2 Nov 2006 01:44:04 +0000 (01:44 +0000)]
Implement the getRegForInlineAsmConstraint method for PPC.  With recent
sdisel changes, this eliminates a ton of copies around common inline asms.
For example:

int test2(int Y, int X) {
  asm("foo %0, %1" : "=r"(X): "r"(X));
  return X;
}

now compiles to:

_test2:
        foo r3, r4
        blr

instead of:

_test2:
        mr r2, r4
        foo r2, r2
        mr r3, r2
        blr

GCC produces:

_test2:
        foo r4, r4
        mr r3,r4
        blr

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

18 years agoAllow the getRegForInlineAsmConstraint method to return a register class with
Chris Lattner [Thu, 2 Nov 2006 01:41:49 +0000 (01:41 +0000)]
Allow the getRegForInlineAsmConstraint method to return a register class with
no fixes physreg.  Treat this as permission to use any register in the register
class.  When this happens and it is safe, allow the llvm register allcoator to
allocate the register instead of doing it at isel time.  This eliminates a ton
of copies around common inline asms.  For example:

int test2(int Y, int X) {
  asm("foo %0, %1" : "=r"(X): "r"(X));
  return X;
}

now compiles to:

_test2:
        foo r3, r4
        blr

instead of:

_test2:
        mr r2, r4
        foo r2, r2
        mr r3, r2
        blr

GCC produces:

_test2:
        foo r4, r4
        mr r3,r4
        blr

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

18 years agogeneralize this api
Chris Lattner [Thu, 2 Nov 2006 01:39:10 +0000 (01:39 +0000)]
generalize this api

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

18 years agoRename
Evan Cheng [Wed, 1 Nov 2006 23:18:32 +0000 (23:18 +0000)]
Rename

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

18 years agoTwo-address instructions no longer have to be A := A op C. Now any pair of dest ...
Evan Cheng [Wed, 1 Nov 2006 23:06:55 +0000 (23:06 +0000)]
Two-address instructions no longer have to be A := A op C. Now any pair of dest / src operands can be tied together.

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

18 years agoThere can be more than one PHINode at the start of the block.
Devang Patel [Wed, 1 Nov 2006 23:04:45 +0000 (23:04 +0000)]
There can be more than one PHINode at the start of the block.

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

18 years agoTied-to constraint must be op_with_larger_idx = op_with_smaller_idx or else throw...
Evan Cheng [Wed, 1 Nov 2006 23:03:11 +0000 (23:03 +0000)]
Tied-to constraint must be op_with_larger_idx = op_with_smaller_idx or else throw an exception.

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

18 years agoAdded getTiedToSrcOperand() to check for two-address'ness.
Evan Cheng [Wed, 1 Nov 2006 23:00:31 +0000 (23:00 +0000)]
Added getTiedToSrcOperand() to check for two-address'ness.

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

18 years agoClean up.
Evan Cheng [Wed, 1 Nov 2006 22:39:30 +0000 (22:39 +0000)]
Clean up.

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

18 years agoHandle PHINode with only one incoming value.
Devang Patel [Wed, 1 Nov 2006 22:26:43 +0000 (22:26 +0000)]
Handle PHINode with only one incoming value.
This fixes http://llvm.org/bugs/show_bug.cgi?id=979

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

18 years agoTestcase from http://llvm.org/bugs/show_bug.cgi?id=979
Devang Patel [Wed, 1 Nov 2006 22:25:48 +0000 (22:25 +0000)]
Testcase from llvm.org/bugs/show_bug.cgi?id=979

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

18 years agoCopyFromReg starts a live range so its use should not be considered a floater.
Evan Cheng [Wed, 1 Nov 2006 22:17:06 +0000 (22:17 +0000)]
CopyFromReg starts a live range so its use should not be considered a floater.

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

18 years agoMake ScalarEvolution actually use a ZeroExtend expression instead of
Reid Spencer [Wed, 1 Nov 2006 21:53:12 +0000 (21:53 +0000)]
Make ScalarEvolution actually use a ZeroExtend expression instead of
having SCZeroExtendExpr be equivalent to SCTruncate

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

18 years agogive branch folding a simple heuristic to decide which block to split so that
Chris Lattner [Wed, 1 Nov 2006 19:36:29 +0000 (19:36 +0000)]
give branch folding a simple heuristic to decide which block to split so that
it inserts an uncond branch where it is less likely to cause a problem.  This
fixes some perf issues on ppc.

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

18 years agoextra pass is required now
Chris Lattner [Wed, 1 Nov 2006 18:30:25 +0000 (18:30 +0000)]
extra pass is required now

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

18 years agoFix GlobalOpt/2006-11-01-ShrinkGlobalPhiCrash.ll and McGill/chomp
Chris Lattner [Wed, 1 Nov 2006 18:03:33 +0000 (18:03 +0000)]
Fix GlobalOpt/2006-11-01-ShrinkGlobalPhiCrash.ll and McGill/chomp

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

18 years agonew testcase that crashes global opt, reduced from chomp
Chris Lattner [Wed, 1 Nov 2006 18:02:53 +0000 (18:02 +0000)]
new testcase that crashes global opt, reduced from chomp

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

18 years agoPartial update for Release 1.9
Reid Spencer [Wed, 1 Nov 2006 16:15:04 +0000 (16:15 +0000)]
Partial update for Release 1.9

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

18 years agoprint null values in bss
Rafael Espindola [Wed, 1 Nov 2006 14:26:44 +0000 (14:26 +0000)]
print null values in bss

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

18 years agoimplement zextload bool and truncstore bool
Rafael Espindola [Wed, 1 Nov 2006 14:13:27 +0000 (14:13 +0000)]
implement  zextload bool and truncstore bool

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

18 years agoAdd a printSetLabel that takes two id's.
Evan Cheng [Wed, 1 Nov 2006 09:23:08 +0000 (09:23 +0000)]
Add a printSetLabel that takes two id's.

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

18 years agoFactor gep instructions through phi nodes.
Chris Lattner [Wed, 1 Nov 2006 07:43:41 +0000 (07:43 +0000)]
Factor gep instructions through phi nodes.

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

18 years agoremove a testcase for a marginal feature
Chris Lattner [Wed, 1 Nov 2006 07:15:44 +0000 (07:15 +0000)]
remove a testcase for a marginal feature

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

18 years agoTurn a phi of many loads into a phi of the address and a single load of the
Chris Lattner [Wed, 1 Nov 2006 07:13:54 +0000 (07:13 +0000)]
Turn a phi of many loads into a phi of the address and a single load of the
result.  This can significantly shrink code and exposes identities more
aggressively.

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

18 years agoFix ldmxcsr JIT encoding.
Evan Cheng [Wed, 1 Nov 2006 06:53:52 +0000 (06:53 +0000)]
Fix ldmxcsr JIT encoding.

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

18 years agoFix a bug in the previous patch
Chris Lattner [Wed, 1 Nov 2006 04:55:47 +0000 (04:55 +0000)]
Fix a bug in the previous patch

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

18 years agoFold things like "phi [add (a,b), add(c,d)]" into two phi's and one add.
Chris Lattner [Wed, 1 Nov 2006 04:51:18 +0000 (04:51 +0000)]
Fold things like "phi [add (a,b), add(c,d)]" into two phi's and one add.

This triggers thousands of times on multisource.

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

18 years agoPrint jumptable index.
Evan Cheng [Wed, 1 Nov 2006 04:48:30 +0000 (04:48 +0000)]
Print jumptable index.

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

18 years agoRemove unnecessary sign conversions made possible by last patch.
Reid Spencer [Wed, 1 Nov 2006 03:45:43 +0000 (03:45 +0000)]
Remove unnecessary sign conversions made possible by last patch.

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

18 years agoFix a bug in the interpreter where divides of unmatched signed operands
Reid Spencer [Wed, 1 Nov 2006 03:41:05 +0000 (03:41 +0000)]
Fix a bug in the interpreter where divides of unmatched signed operands
would fail. E.g. udiv sint X, Y  or sdiv uint X, Y would fail to find a
type match in the switch statement and fail the operation.

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

18 years agomake tail merging more aggressive. If two blocks share a common tail, but the
Chris Lattner [Wed, 1 Nov 2006 01:16:12 +0000 (01:16 +0000)]
make tail merging more aggressive.  If two blocks share a common tail, but the
tail is not an entire block for either of them, pick one, split it, then
merge the common part.

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

18 years agoenable branch folding with an option
Chris Lattner [Wed, 1 Nov 2006 00:38:31 +0000 (00:38 +0000)]
enable branch folding with an option

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

18 years agoNot meant to be checked in.
Evan Cheng [Wed, 1 Nov 2006 00:27:59 +0000 (00:27 +0000)]
Not meant to be checked in.

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

18 years agoAdd operand constraints to TargetInstrInfo.
Evan Cheng [Wed, 1 Nov 2006 00:27:05 +0000 (00:27 +0000)]
Add operand constraints to TargetInstrInfo.

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

18 years agoAdd constraints to Instruction class.
Evan Cheng [Wed, 1 Nov 2006 00:26:27 +0000 (00:26 +0000)]
Add constraints to Instruction class.

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

18 years agomore shotenning
Andrew Lenharth [Tue, 31 Oct 2006 23:46:56 +0000 (23:46 +0000)]
more shotenning

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

18 years agoCompile CodeGen/PowerPC/fp-branch.ll to:
Chris Lattner [Tue, 31 Oct 2006 23:06:00 +0000 (23:06 +0000)]
Compile CodeGen/PowerPC/fp-branch.ll to:

_intcoord_cond_next55:
LBB1_3: ;cond_next55
        lis r2, ha16(LCPI1_0)
        lfs f0, lo16(LCPI1_0)(r2)
        fcmpu cr0, f1, f0
        blt cr0, LBB1_2 ;cond_next62.exitStub
LBB1_1: ;bb72.exitStub
        li r3, 1
        blr
LBB1_2: ;cond_next62.exitStub
        li r3, 0
        blr

instead of:

_intcoord_cond_next55:
LBB1_3: ;cond_next55
        lis r2, ha16(LCPI1_0)
        lfs f0, lo16(LCPI1_0)(r2)
        fcmpu cr0, f1, f0
        bge cr0, LBB1_1 ;bb72.exitStub
LBB1_4: ;cond_next55
        lis r2, ha16(LCPI1_0)
        lfs f0, lo16(LCPI1_0)(r2)
        fcmpu cr0, f1, f0
        bnu cr0, LBB1_2 ;cond_next62.exitStub
LBB1_1: ;bb72.exitStub
        li r3, 1
        blr
LBB1_2: ;cond_next62.exitStub
        li r3, 0
        blr

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

18 years agoThis test should compile down to one comparison, not two.
Chris Lattner [Tue, 31 Oct 2006 23:05:16 +0000 (23:05 +0000)]
This test should compile down to one comparison, not two.

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

18 years agolook through isunordered to inline it into branch blocks.
Chris Lattner [Tue, 31 Oct 2006 22:37:42 +0000 (22:37 +0000)]
look through isunordered to inline it into branch blocks.

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

18 years agoNuke dead code.
Evan Cheng [Tue, 31 Oct 2006 21:53:31 +0000 (21:53 +0000)]
Nuke dead code.

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

18 years agoallow the address of a global to be used with the "i" constraint when in
Chris Lattner [Tue, 31 Oct 2006 20:13:11 +0000 (20:13 +0000)]
allow the address of a global to be used with the "i" constraint when in
-static mode.  This implements PR882.

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

18 years agoimplement the 'c' inline asm modifier character
Chris Lattner [Tue, 31 Oct 2006 20:12:30 +0000 (20:12 +0000)]
implement the 'c' inline asm modifier character

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

18 years agonew testcase for PR882
Chris Lattner [Tue, 31 Oct 2006 20:11:14 +0000 (20:11 +0000)]
new testcase for PR882

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