diff options
author | Scott Michel <scottm@aero.org> | 2009-08-25 22:37:34 +0000 |
---|---|---|
committer | Scott Michel <scottm@aero.org> | 2009-08-25 22:37:34 +0000 |
commit | c5dd8bd8d24d362ebd36e41aeeb0f55ff9c79a4e (patch) | |
tree | 7b6746118656d303bd1e15313d546a63b44dbc29 /llvm/test/CodeGen/CellSPU | |
parent | faf516f34d93fa62042ccc304abecf92ffd74ab7 (diff) | |
download | bcm5719-llvm-c5dd8bd8d24d362ebd36e41aeeb0f55ff9c79a4e.tar.gz bcm5719-llvm-c5dd8bd8d24d362ebd36e41aeeb0f55ff9c79a4e.zip |
Updated i128 sext support for CellSPU backend, contributed by Ken Werner (IBM)
llvm-svn: 80042
Diffstat (limited to 'llvm/test/CodeGen/CellSPU')
-rw-r--r-- | llvm/test/CodeGen/CellSPU/sext128.ll | 35 |
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) |