Add nounwind.
authorEvan Cheng <evan.cheng@apple.com>
Wed, 7 May 2008 22:59:08 +0000 (22:59 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Wed, 7 May 2008 22:59:08 +0000 (22:59 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50837 91177308-0d34-0410-b5e6-96231b3b80d8

25 files changed:
test/CodeGen/X86/2006-05-17-VectorArg.ll
test/CodeGen/X86/mmx-insert-element.ll
test/CodeGen/X86/sse-align-0.ll
test/CodeGen/X86/sse-align-1.ll
test/CodeGen/X86/sse-align-10.ll
test/CodeGen/X86/sse-align-11.ll
test/CodeGen/X86/sse-align-12.ll
test/CodeGen/X86/sse-align-2.ll
test/CodeGen/X86/sse-align-3.ll
test/CodeGen/X86/sse-align-4.ll
test/CodeGen/X86/sse-align-5.ll
test/CodeGen/X86/sse-align-6.ll
test/CodeGen/X86/sse-align-7.ll
test/CodeGen/X86/sse-align-8.ll
test/CodeGen/X86/sse-align-9.ll
test/CodeGen/X86/vec_align.ll
test/CodeGen/X86/vec_set-2.ll
test/CodeGen/X86/vec_set-4.ll
test/CodeGen/X86/vec_set-5.ll
test/CodeGen/X86/vec_set-7.ll
test/CodeGen/X86/vec_set-9.ll
test/CodeGen/X86/vec_set-A.ll
test/CodeGen/X86/vec_set-B.ll
test/CodeGen/X86/vec_set.ll
test/CodeGen/X86/vec_ss_load_fold.ll

index 1d24b776db2013198ccc0a5241cef61a598468fe..217cbe1059f28ce578688b07cf21ab46161ba8ae 100644 (file)
@@ -1,6 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2
 
-define <4 x float> @opRSQ(<4 x float> %a) {
+define <4 x float> @opRSQ(<4 x float> %a) nounwind {
 entry:
        %tmp2 = extractelement <4 x float> %a, i32 3            ; <float> [#uses=2]
        %abscond = fcmp oge float %tmp2, -0.000000e+00          ; <i1> [#uses=1]
index e24b4821b9eac502f04cc9206bc7ff7c411c0519..dc488363e7f52e28bea86d12f9076d9b599747f6 100644 (file)
@@ -16,7 +16,7 @@
 ;
 ; Which is ugly. We need to fix this.
 
-define <2 x i32> @qux(i32 %A) {
+define <2 x i32> @qux(i32 %A) nounwind {
 entry:
        %tmp3 = insertelement <2 x i32> < i32 0, i32 undef >, i32 %A, i32 1             ; <<2 x i32>> [#uses=1]
        ret <2 x i32> %tmp3
index 0b28067966574e386374ce40625b1e8ee9477e54..39debaa3257fc3736c459551238edf2934380ff3 100644 (file)
@@ -1,13 +1,11 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | not grep mov
 
-define <4 x float> @foo(<4 x float>* %p, <4 x float> %x)
-{
+define <4 x float> @foo(<4 x float>* %p, <4 x float> %x) nounwind {
   %t = load <4 x float>* %p
   %z = mul <4 x float> %t, %x
   ret <4 x float> %z
 }
-define <2 x double> @bar(<2 x double>* %p, <2 x double> %x)
-{
+define <2 x double> @bar(<2 x double>* %p, <2 x double> %x) nounwind {
   %t = load <2 x double>* %p
   %z = mul <2 x double> %t, %x
   ret <2 x double> %z
index 7135d7a224a9f6334c293bf5cc9c9e122a10ec39..0edc6e094580d5da2a1c874c0b6b8b5f96d4962d 100644 (file)
@@ -1,12 +1,10 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movap | count 2
 
-define <4 x float> @foo(<4 x float>* %p)
-{
+define <4 x float> @foo(<4 x float>* %p) nounwind {
   %t = load <4 x float>* %p
   ret <4 x float> %t
 }
-define <2 x double> @bar(<2 x double>* %p)
-{
+define <2 x double> @bar(<2 x double>* %p) nounwind {
   %t = load <2 x double>* %p
   ret <2 x double> %t
 }
index 3738becde75082b59ffd4d02ca7064b4db9bd8c9..1a23eb2ae3d17ef4e5b06568ba8bfd59441f0962 100644 (file)
@@ -1,7 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movups | count 1
 
-define <2 x i64> @bar(<2 x i64>* %p)
-{
+define <2 x i64> @bar(<2 x i64>* %p) nounwind {
   %t = load <2 x i64>* %p, align 8
   ret <2 x i64> %t
 }
index 81471bd5be540d27f5abb2edb84a60b978861b0e..a10b102c6b952cb2ea1a160942e7edd0ff784b61 100644 (file)
@@ -1,7 +1,7 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mcpu=yonah -mtriple=i686-apple-darwin8 | grep movaps
 ; RUN: llvm-as < %s | llc -march=x86 -mcpu=yonah -mtriple=linux | grep movups
 
-define <4 x float> @foo(float %a, float %b, float %c, float %d) {
+define <4 x float> @foo(float %a, float %b, float %c, float %d) nounwind {
 entry:
         %tmp6 = insertelement <4 x float> undef, float %a, i32 0               
         %tmp7 = insertelement <4 x float> %tmp6, float %b, i32 1               
index 960a4f64500422c31eac3fd9933ef4674a394e83..7ff6b1e3ed39337a8bb62af251d6f5dd2f3c3758 100644 (file)
@@ -4,8 +4,7 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep pd | count 4
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movup | count 4
 
-define <4 x float> @a(<4 x float>* %y)
-{
+define <4 x float> @a(<4 x float>* %y) nounwind {
   %x = load <4 x float>* %y, align 4
   %a = extractelement <4 x float> %x, i32 0
   %b = extractelement <4 x float> %x, i32 1
@@ -17,8 +16,7 @@ define <4 x float> @a(<4 x float>* %y)
   %s = insertelement <4 x float> %r, float %a, i32 3
   ret <4 x float> %s
 }
-define <4 x float> @b(<4 x float>* %y, <4 x float> %z)
-{
+define <4 x float> @b(<4 x float>* %y, <4 x float> %z) nounwind {
   %x = load <4 x float>* %y, align 4
   %a = extractelement <4 x float> %x, i32 2
   %b = extractelement <4 x float> %x, i32 3
index 71587a2f6842952aef1dcfd076226d0af7035a8c..b5b261d20ab4a08db2fdbd415a4f1013f9f6e4b7 100644 (file)
@@ -1,13 +1,11 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movup | count 2
 
-define <4 x float> @foo(<4 x float>* %p, <4 x float> %x)
-{
+define <4 x float> @foo(<4 x float>* %p, <4 x float> %x) nounwind {
   %t = load <4 x float>* %p, align 4
   %z = mul <4 x float> %t, %x
   ret <4 x float> %z
 }
-define <2 x double> @bar(<2 x double>* %p, <2 x double> %x)
-{
+define <2 x double> @bar(<2 x double>* %p, <2 x double> %x) nounwind {
   %t = load <2 x double>* %p, align 8
   %z = mul <2 x double> %t, %x
   ret <2 x double> %z
index ae9faabea419675d5bf0746b69f728e429953be9..5bbcd59e0e9f93f3c6569826995bb22dc7f83cb9 100644 (file)
@@ -1,12 +1,10 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movap | count 2
 
-define void @foo(<4 x float>* %p, <4 x float> %x)
-{
+define void @foo(<4 x float>* %p, <4 x float> %x) nounwind {
   store <4 x float> %x, <4 x float>* %p
   ret void
 }
-define void @bar(<2 x double>* %p, <2 x double> %x)
-{
+define void @bar(<2 x double>* %p, <2 x double> %x) nounwind {
   store <2 x double> %x, <2 x double>* %p
   ret void
 }
index c98aff76d6119efda12a39469689bcec59fc7ddc..f7e5fe3d684be56b288ab22b57204b713b8c125a 100644 (file)
@@ -1,12 +1,10 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movup | count 2
 
-define void @foo(<4 x float>* %p, <4 x float> %x)
-{
+define void @foo(<4 x float>* %p, <4 x float> %x) nounwind {
   store <4 x float> %x, <4 x float>* %p, align 4
   ret void
 }
-define void @bar(<2 x double>* %p, <2 x double> %x)
-{
+define void @bar(<2 x double>* %p, <2 x double> %x) nounwind {
   store <2 x double> %x, <2 x double>* %p, align 8
   ret void
 }
index a5c4b0dadc4821343ba384f6f9a59ae3b6e18ce1..19e0eaf8fff8a6e4267d7b85713b6ffa45718f04 100644 (file)
@@ -1,7 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movaps | count 1
 
-define <2 x i64> @bar(<2 x i64>* %p)
-{
+define <2 x i64> @bar(<2 x i64>* %p) nounwind {
   %t = load <2 x i64>* %p
   ret <2 x i64> %t
 }
index dc9d99c6272f666918e99ef8e8dc6ede2f25ee25..dace291730f7fd35d5485c8778e501aed9281ecc 100644 (file)
@@ -1,7 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movups | count 1
 
-define <2 x i64> @bar(<2 x i64>* %p, <2 x i64> %x)
-{
+define <2 x i64> @bar(<2 x i64>* %p, <2 x i64> %x) nounwind {
   %t = load <2 x i64>* %p, align 8
   %z = mul <2 x i64> %t, %x
   ret <2 x i64> %z
index d93ca40577fb78f9e1618edbc8aed8748513c15d..7fb65b5f9e85e2631e49abd82839284c609458e3 100644 (file)
@@ -1,7 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movaps | count 1
 
-define void @bar(<2 x i64>* %p, <2 x i64> %x)
-{
+define void @bar(<2 x i64>* %p, <2 x i64> %x) nounwind {
   store <2 x i64> %x, <2 x i64>* %p
   ret void
 }
index 4353698dcc03dbf7d2425d59c8a3f178fd5a9385..17a3d2987fff26354ce59c84f62e3d6691a97eac 100644 (file)
@@ -1,7 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movups | count 1
 
-define void @bar(<2 x i64>* %p, <2 x i64> %x)
-{
+define void @bar(<2 x i64>* %p, <2 x i64> %x) nounwind {
   store <2 x i64> %x, <2 x i64>* %p, align 8
   ret void
 }
index 58641b38b6e33937d88ee2591f411e30a5ce8192..24b437ab3534ea5f45278c445cb8e62f85d3eadb 100644 (file)
@@ -1,12 +1,10 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movup | count 2
 
-define <4 x float> @foo(<4 x float>* %p)
-{
+define <4 x float> @foo(<4 x float>* %p) nounwind {
   %t = load <4 x float>* %p, align 4
   ret <4 x float> %t
 }
-define <2 x double> @bar(<2 x double>* %p)
-{
+define <2 x double> @bar(<2 x double>* %p) nounwind {
   %t = load <2 x double>* %p, align 8
   ret <2 x double> %t
 }
index 8d70c9ae7ebccddd262ab0e6408223838534b9f8..d88104d79e8293aa3b1f8b75e4714bbfdb0cf124 100644 (file)
@@ -7,7 +7,7 @@ target triple = "i686-apple-darwin8"
 
 @G = external global { float,float,float,float}, align 16
 
-define %f4 @test1(float %W, float %X, float %Y, float %Z) {
+define %f4 @test1(float %W, float %X, float %Y, float %Z) nounwind {
         %tmp = insertelement %f4 undef, float %W, i32 0
         %tmp2 = insertelement %f4 %tmp, float %X, i32 1
         %tmp4 = insertelement %f4 %tmp2, float %Y, i32 2
@@ -15,7 +15,7 @@ define %f4 @test1(float %W, float %X, float %Y, float %Z) {
        ret %f4 %tmp6
 }
 
-define %f4 @test2() {
+define %f4 @test2() nounwind {
        %Wp = getelementptr { float,float,float,float}* @G, i32 0, i32 0
        %Xp = getelementptr { float,float,float,float}* @G, i32 0, i32 1
        %Yp = getelementptr { float,float,float,float}* @G, i32 0, i32 2
index ab15d4abbe247f32c227db1047ace1c6fef4f251..ae9530db8df5f81c44a6bde23a5461951c16333b 100644 (file)
@@ -1,7 +1,7 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep movss | count 1
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep movd | count 1
 
-define <4 x float> @test1(float %a) {
+define <4 x float> @test1(float %a) nounwind {
        %tmp = insertelement <4 x float> zeroinitializer, float %a, i32 0               ; <<4 x float>> [#uses=1]
        %tmp5 = insertelement <4 x float> %tmp, float 0.000000e+00, i32 1               ; <<4 x float>> [#uses=1]
        %tmp6 = insertelement <4 x float> %tmp5, float 0.000000e+00, i32 2              ; <<4 x float>> [#uses=1]
@@ -9,7 +9,7 @@ define <4 x float> @test1(float %a) {
        ret <4 x float> %tmp7
 }
 
-define <2 x i64> @test(i32 %a) {
+define <2 x i64> @test(i32 %a) nounwind {
        %tmp = insertelement <4 x i32> zeroinitializer, i32 %a, i32 0           ; <<8 x i16>> [#uses=1]
        %tmp6 = insertelement <4 x i32> %tmp, i32 0, i32 1              ; <<8 x i32>> [#uses=1]
        %tmp8 = insertelement <4 x i32> %tmp6, i32 0, i32 2             ; <<8 x i32>> [#uses=1]
index 0a1c17633187231f61f39adfa61066273ad36f05..da7ef80a3a5e5134fbd27ff9e3e838c5a27792f9 100644 (file)
@@ -1,6 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep pinsrw | count 2
 
-define <2 x i64> @test(i16 %a) {
+define <2 x i64> @test(i16 %a) nounwind {
 entry:
        %tmp10 = insertelement <8 x i16> zeroinitializer, i16 %a, i32 3         ; <<8 x i16>> [#uses=1]
        %tmp12 = insertelement <8 x i16> %tmp10, i16 0, i32 4           ; <<8 x i16>> [#uses=1]
@@ -11,7 +11,7 @@ entry:
        ret <2 x i64> %tmp19
 }
 
-define <2 x i64> @test2(i8 %a) {
+define <2 x i64> @test2(i8 %a) nounwind {
 entry:
        %tmp24 = insertelement <16 x i8> zeroinitializer, i8 %a, i32 10         ; <<16 x i8>> [#uses=1]
        %tmp26 = insertelement <16 x i8> %tmp24, i8 0, i32 11           ; <<16 x i8>> [#uses=1]
index 0052c4df5dd4cf2b6fcff656354b1ca0237720ef..687d6afca4f4d6689c27d3ab3d065355769b7ce4 100644 (file)
@@ -4,7 +4,7 @@
 ; RUN: grep punpckldq %t | count 1
 ; RUN: grep movq      %t | count 1
 
-define <4 x float> @test1(float %a, float %b) {
+define <4 x float> @test1(float %a, float %b) nounwind {
        %tmp = insertelement <4 x float> zeroinitializer, float %a, i32 0               ; <<4 x float>> [#uses=1]
        %tmp6 = insertelement <4 x float> %tmp, float 0.000000e+00, i32 1               ; <<4 x float>> [#uses=1]
        %tmp8 = insertelement <4 x float> %tmp6, float %b, i32 2                ; <<4 x float>> [#uses=1]
@@ -12,7 +12,7 @@ define <4 x float> @test1(float %a, float %b) {
        ret <4 x float> %tmp9
 }
 
-define <4 x float> @test2(float %a, float %b) {
+define <4 x float> @test2(float %a, float %b) nounwind {
        %tmp = insertelement <4 x float> zeroinitializer, float %a, i32 0               ; <<4 x float>> [#uses=1]
        %tmp7 = insertelement <4 x float> %tmp, float %b, i32 1         ; <<4 x float>> [#uses=1]
        %tmp8 = insertelement <4 x float> %tmp7, float 0.000000e+00, i32 2              ; <<4 x float>> [#uses=1]
@@ -20,7 +20,7 @@ define <4 x float> @test2(float %a, float %b) {
        ret <4 x float> %tmp9
 }
 
-define <2 x i64> @test3(i32 %a, i32 %b) {
+define <2 x i64> @test3(i32 %a, i32 %b) nounwind {
        %tmp = insertelement <4 x i32> zeroinitializer, i32 %a, i32 0           ; <<4 x i32>> [#uses=1]
        %tmp6 = insertelement <4 x i32> %tmp, i32 %b, i32 1             ; <<4 x i32>> [#uses=1]
        %tmp8 = insertelement <4 x i32> %tmp6, i32 0, i32 2             ; <<4 x i32>> [#uses=1]
index 69bfac663467b42ac810be01693cb149aba5def5..6f98c510efca309bf86fa53403b671769e0e27a4 100644 (file)
@@ -1,6 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep movsd | count 1
 
-define <2 x i64> @test(<2 x i64>* %p) {
+define <2 x i64> @test(<2 x i64>* %p) nounwind {
        %tmp = bitcast <2 x i64>* %p to double*         
        %tmp.upgrd.1 = load double* %tmp        
        %tmp.upgrd.2 = insertelement <2 x double> undef, double %tmp.upgrd.1, i32 0
index b73187c055d2efa5190bb0b0f61713131bb29bea..38f729fbc892492214127bb41f636fffc49fa53c 100644 (file)
@@ -1,7 +1,7 @@
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep movd | count 1
 ; RUN: llvm-as < %s | llc -march=x86-64 | grep {punpcklqdq.*%xmm0, %xmm0}
 
-define <2 x i64> @test3(i64 %A) {
+define <2 x i64> @test3(i64 %A) nounwind {
 entry:
        %B = insertelement <2 x i64> undef, i64 %A, i32 1
        ret <2 x i64> %B
index 49a8e01eade5ac374c7f6e4b8555d2ffaaf2ae11..f33263f1aef5ccdeea4f0128073c50b027350705 100644 (file)
@@ -1,5 +1,5 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep {movl.*\$1, %}
-define <2 x i64> @test1() {
+define <2 x i64> @test1() nounwind {
 entry:
        ret <2 x i64> < i64 1, i64 0 >
 }
index a53116c92d1b102e62b15464e813985f8d19830d..d318964686c9be47397d6bfbee592879e4f15afa 100644 (file)
@@ -8,14 +8,14 @@
 ;      movd    %eax, %xmm0
 ;      ret
 
-define <2 x i64> @test3(i64 %arg) {
+define <2 x i64> @test3(i64 %arg) nounwind {
 entry:
         %A = and i64 %arg, 1234567
         %B = insertelement <2 x i64> zeroinitializer, i64 %A, i32 0
         ret <2 x i64> %B
 }
 
-define <2 x i64> @test2(i64 %arg) {
+define <2 x i64> @test2(i64 %arg) nounwind {
 entry:
        %A = and i64 %arg, 1234567
        %B = insertelement <2 x i64> undef, i64 %A, i32 0
index b8e1534152d677a765d3eb701ca86eb0a9b5c1dc..77636eda1c0279653e930a821b7e94a1d5826e73 100644 (file)
@@ -1,6 +1,6 @@
 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep punpckl | count 7
 
-define void @test(<8 x i16>* %b, i16 %a0, i16 %a1, i16 %a2, i16 %a3, i16 %a4, i16 %a5, i16 %a6, i16 %a7) {
+define void @test(<8 x i16>* %b, i16 %a0, i16 %a1, i16 %a2, i16 %a3, i16 %a4, i16 %a5, i16 %a6, i16 %a7) nounwind {
         %tmp = insertelement <8 x i16> zeroinitializer, i16 %a0, i32 0          ; <<8 x i16>> [#uses=1]
         %tmp2 = insertelement <8 x i16> %tmp, i16 %a1, i32 1            ; <<8 x i16>> [#uses=1]
         %tmp4 = insertelement <8 x i16> %tmp2, i16 %a2, i32 2           ; <<8 x i16>> [#uses=1]
index c123765f14dbfacb92153c48ca3fd761edc17810..0f15f923fea6d45845ea2f1f6297a14907903e8f 100644 (file)
@@ -5,7 +5,7 @@
 target datalayout = "e-p:32:32"
 target triple = "i686-apple-darwin8.7.2"
 
-define i16 @test1(float %f) {
+define i16 @test1(float %f) nounwind {
        %tmp = insertelement <4 x float> undef, float %f, i32 0         ; <<4 x float>> [#uses=1]
        %tmp10 = insertelement <4 x float> %tmp, float 0.000000e+00, i32 1              ; <<4 x float>> [#uses=1]
        %tmp11 = insertelement <4 x float> %tmp10, float 0.000000e+00, i32 2            ; <<4 x float>> [#uses=1]
@@ -19,7 +19,7 @@ define i16 @test1(float %f) {
        ret i16 %tmp69
 }
 
-define i16 @test2(float %f) {
+define i16 @test2(float %f) nounwind {
        %tmp28 = sub float %f, 1.000000e+00             ; <float> [#uses=1]
        %tmp37 = mul float %tmp28, 5.000000e-01         ; <float> [#uses=1]
        %tmp375 = insertelement <4 x float> undef, float %tmp37, i32 0          ; <<4 x float>> [#uses=1]