aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms/LevelRaise
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2006-11-27 01:05:10 +0000
committerReid Spencer <rspencer@reidspencer.com>2006-11-27 01:05:10 +0000
commit3da59db637a887474c1b1346c1f3ccf53b6c4663 (patch)
treeb061e2133efdb9ea9bb334c1b15ceea881bb88f8 /test/Transforms/LevelRaise
parent5fed9b90447a9a95a1f670ccd9c23aea8c937451 (diff)
downloadexternal_llvm-3da59db637a887474c1b1346c1f3ccf53b6c4663.zip
external_llvm-3da59db637a887474c1b1346c1f3ccf53b6c4663.tar.gz
external_llvm-3da59db637a887474c1b1346c1f3ccf53b6c4663.tar.bz2
For PR950:
The long awaited CAST patch. This introduces 12 new instructions into LLVM to replace the cast instruction. Corresponding changes throughout LLVM are provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the exception of 175.vpr which fails only on a slight floating point output difference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31931 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/LevelRaise')
-rw-r--r--test/Transforms/LevelRaise/2002-03-21-MissedRaise.ll6
-rw-r--r--test/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-04-16-MissedRaise.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-05-02-MissedRaise.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-05-10-LoadPeephole.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-05-23-MissedRaise.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-07-16-MissedRaise.ll2
-rw-r--r--test/Transforms/LevelRaise/2002-07-18-MissedAllocaRaise.ll2
9 files changed, 11 insertions, 11 deletions
diff --git a/test/Transforms/LevelRaise/2002-03-21-MissedRaise.ll b/test/Transforms/LevelRaise/2002-03-21-MissedRaise.ll
index 61c3972..5f6250e 100644
--- a/test/Transforms/LevelRaise/2002-03-21-MissedRaise.ll
+++ b/test/Transforms/LevelRaise/2002-03-21-MissedRaise.ll
@@ -1,8 +1,8 @@
-; This example should be raised to return a Hash directly without casting. To
-; successful, all cast instructions should be eliminated from this testcase.
+; This example should be raised to return a Hash directly without casting.
+; LevelRaise should eliminate all cast instructions from this testcase.
;
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep cast
+; RUN: llvm-as < %s | opt -raise | llvm-dis | notcast
%Hash = type { { uint, sbyte *, \2 } * *, int (uint) *, int } *
%hash = type { { uint, sbyte *, \2 } * *, int (uint) *, int }
diff --git a/test/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll b/test/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll
index be25022..4a778ea 100644
--- a/test/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll
+++ b/test/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll
@@ -3,7 +3,7 @@
; prevented reg115 from being able to change.
;
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep '= cast' | not grep \*
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep bitcast
%Hash = type { { uint, sbyte *, \2 } * *, int (uint) *, int } *
%HashEntry = type { uint, sbyte *, \2 } *
diff --git a/test/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll b/test/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll
index b3e42cc..6379ab5 100644
--- a/test/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll
+++ b/test/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll
@@ -1,5 +1,5 @@
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep '= cast' | not grep \*
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep bitcast
%Hash = type { { uint, sbyte *, \2 } * *, int (uint) *, int } *
%HashEntry = type { uint, sbyte *, \2 } *
diff --git a/test/Transforms/LevelRaise/2002-04-16-MissedRaise.ll b/test/Transforms/LevelRaise/2002-04-16-MissedRaise.ll
index c1a4e05..1fa2fd8 100644
--- a/test/Transforms/LevelRaise/2002-04-16-MissedRaise.ll
+++ b/test/Transforms/LevelRaise/2002-04-16-MissedRaise.ll
@@ -6,7 +6,7 @@
; return (int*)malloc(i+j);
; }
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep ' cast ' | not grep '*'
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep bitcast
implementation
diff --git a/test/Transforms/LevelRaise/2002-05-02-MissedRaise.ll b/test/Transforms/LevelRaise/2002-05-02-MissedRaise.ll
index 615217e..6400091 100644
--- a/test/Transforms/LevelRaise/2002-05-02-MissedRaise.ll
+++ b/test/Transforms/LevelRaise/2002-05-02-MissedRaise.ll
@@ -1,6 +1,6 @@
; This testcase is not level raised properly...
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep ' cast ' | not grep '*'
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep bitcast
%List = type { int, %List* }
diff --git a/test/Transforms/LevelRaise/2002-05-10-LoadPeephole.ll b/test/Transforms/LevelRaise/2002-05-10-LoadPeephole.ll
index 1e2ca0e..102b574 100644
--- a/test/Transforms/LevelRaise/2002-05-10-LoadPeephole.ll
+++ b/test/Transforms/LevelRaise/2002-05-10-LoadPeephole.ll
@@ -1,7 +1,7 @@
; This testcase should have the cast propogated through the load
; just like a store does...
;
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep ' cast ' | not grep '*'
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep 'bitcast uint \*'
int "test"(uint * %Ptr) {
%P2 = cast uint *%Ptr to int *
diff --git a/test/Transforms/LevelRaise/2002-05-23-MissedRaise.ll b/test/Transforms/LevelRaise/2002-05-23-MissedRaise.ll
index c092e6b..59a4248 100644
--- a/test/Transforms/LevelRaise/2002-05-23-MissedRaise.ll
+++ b/test/Transforms/LevelRaise/2002-05-23-MissedRaise.ll
@@ -1,5 +1,5 @@
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep '= cast' | not grep \*
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep bitcast
%FILE = type { int, ubyte*, ubyte*, ubyte, ubyte, uint, uint, uint }
diff --git a/test/Transforms/LevelRaise/2002-07-16-MissedRaise.ll b/test/Transforms/LevelRaise/2002-07-16-MissedRaise.ll
index c3406ba..a5ed52c 100644
--- a/test/Transforms/LevelRaise/2002-07-16-MissedRaise.ll
+++ b/test/Transforms/LevelRaise/2002-07-16-MissedRaise.ll
@@ -5,7 +5,7 @@
; This could be fixed by making all stores add themselves to a list, and check
; their arguments are consistent AFTER all other values are propogated.
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep '= cast'
+; RUN: llvm-as < %s | opt -raise | llvm-dis | notcast
%Tree = type %struct.tree*
%struct.tree = type { int, double, double, %Tree, %Tree, %Tree, %Tree }
diff --git a/test/Transforms/LevelRaise/2002-07-18-MissedAllocaRaise.ll b/test/Transforms/LevelRaise/2002-07-18-MissedAllocaRaise.ll
index 422b977..91301f0 100644
--- a/test/Transforms/LevelRaise/2002-07-18-MissedAllocaRaise.ll
+++ b/test/Transforms/LevelRaise/2002-07-18-MissedAllocaRaise.ll
@@ -1,6 +1,6 @@
; Looks like we don't raise alloca's like we do mallocs
; XFAIL: *
-; RUN: llvm-as < %s | opt -raise | llvm-dis | grep '= cast' | not grep \*
+; RUN: llvm-as < %s | opt -raise | llvm-dis | not grep bitcast
implementation ; Functions: