summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorJames Y Knight <jyknight@google.com>2016-10-05 20:54:17 +0000
committerJames Y Knight <jyknight@google.com>2016-10-05 20:54:17 +0000
commitb0a473aaf84a5c0fca4a0292341de313bece37fc (patch)
tree640fcf6689e934ef7213976993000b8e77db7563 /llvm/test
parent9c69bc9776110df35cb538d6709bf2f20a98b35c (diff)
downloadbcm5719-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.ll6
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
OpenPOWER on IntegriCloud