summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/CellSPU
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/CellSPU')
-rw-r--r--llvm/test/CodeGen/CellSPU/sext128.ll35
1 files changed, 32 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/CellSPU/sext128.ll b/llvm/test/CodeGen/CellSPU/sext128.ll
index 0cff87937bb..71962a94258 100644
--- a/llvm/test/CodeGen/CellSPU/sext128.ll
+++ b/llvm/test/CodeGen/CellSPU/sext128.ll
@@ -6,13 +6,42 @@ target triple = "spu"
define i128 @sext_i64_i128(i64 %a) {
entry:
+ %0 = sext i64 %a to i128
+ ret i128 %0
; CHECK: long 269488144
; CHECK: long 269488144
-; CHECK: long 16909060
-; CHECK: long 84281096
+; CHECK: long 66051
+; CHECK: long 67438087
; CHECK: rotmai
; CHECK: lqa
; CHECK: shufb
- %0 = sext i64 %a to i128
+}
+
+define i128 @sext_i32_i128(i32 %a) {
+entry:
+ %0 = sext i32 %a to i128
ret i128 %0
+; CHECK: long 269488144
+; CHECK: long 269488144
+; CHECK: long 269488144
+; CHECK: long 66051
+; CHECK: rotmai
+; CHECK: lqa
+; CHECK: shufb
}
+
+define i128 @sext_i32_i128a(float %a) {
+entry:
+ %0 = call i32 @myfunc(float %a)
+ %1 = sext i32 %0 to i128
+ ret i128 %1
+; CHECK: long 269488144
+; CHECK: long 269488144
+; CHECK: long 269488144
+; CHECK: long 66051
+; CHECK: rotmai
+; CHECK: lqa
+; CHECK: shufb
+}
+
+declare i32 @myfunc(float)
OpenPOWER on IntegriCloud