diff options
| author | James Y Knight <jyknight@google.com> | 2016-10-05 20:54:17 +0000 |
|---|---|---|
| committer | James Y Knight <jyknight@google.com> | 2016-10-05 20:54:17 +0000 |
| commit | b0a473aaf84a5c0fca4a0292341de313bece37fc (patch) | |
| tree | 640fcf6689e934ef7213976993000b8e77db7563 /llvm/test | |
| parent | 9c69bc9776110df35cb538d6709bf2f20a98b35c (diff) | |
| download | bcm5719-llvm-b0a473aaf84a5c0fca4a0292341de313bece37fc.tar.gz bcm5719-llvm-b0a473aaf84a5c0fca4a0292341de313bece37fc.zip | |
[Sparc] Implement UMUL_LOHI and SMUL_LOHI instead of MULHS/MULHU/MUL.
This is what the instruction-set actually provides, and the default
expansions of the others into the lohi opcodes are good.
llvm-svn: 283381
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/CodeGen/SPARC/basictest.ll | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/test/CodeGen/SPARC/basictest.ll b/llvm/test/CodeGen/SPARC/basictest.ll index 889f5144413..85da61abb5c 100644 --- a/llvm/test/CodeGen/SPARC/basictest.ll +++ b/llvm/test/CodeGen/SPARC/basictest.ll @@ -71,12 +71,10 @@ define i64 @signed_multiply_32x32_64(i32 %a, i32 %b) { } ; CHECK-LABEL: unsigned_multiply_32x32_64: -;FIXME: the smul in the output is totally redundant and should not there. -; CHECK: smul %o0, %o1, %o2 -; CHECK: umul %o0, %o1, %o0 +; CHECK: umul %o0, %o1, %o1 ; CHECK: rd %y, %o0 ; CHECK: retl -; CHECK: mov %o2, %o1 +; CHECK: nop define i64 @unsigned_multiply_32x32_64(i32 %a, i32 %b) { %xa = zext i32 %a to i64 %xb = zext i32 %b to i64 |

