[llvm] r260890 - [X86] Regenerated 64/128 bit multiply tests

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 15 06:04:06 PST 2016


Author: rksimon
Date: Mon Feb 15 08:04:05 2016
New Revision: 260890

URL: http://llvm.org/viewvc/llvm-project?rev=260890&view=rev
Log:
[X86] Regenerated 64/128 bit multiply tests

Modified:
    llvm/trunk/test/CodeGen/X86/mul128.ll
    llvm/trunk/test/CodeGen/X86/mul64.ll

Modified: llvm/trunk/test/CodeGen/X86/mul128.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/mul128.ll?rev=260890&r1=260889&r2=260890&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/mul128.ll (original)
+++ llvm/trunk/test/CodeGen/X86/mul128.ll Mon Feb 15 08:04:05 2016
@@ -1,6 +1,17 @@
-; RUN: llc < %s -march=x86-64 | grep mul | count 3
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s --check-prefix=X64
 
 define i128 @foo(i128 %t, i128 %u) {
+; X64-LABEL: foo:
+; X64:       # BB#0:
+; X64-NEXT:    movq %rdx, %r8
+; X64-NEXT:    imulq %rdi, %rcx
+; X64-NEXT:    movq %rdi, %rax
+; X64-NEXT:    mulq %r8
+; X64-NEXT:    addq %rcx, %rdx
+; X64-NEXT:    imulq %r8, %rsi
+; X64-NEXT:    addq %rsi, %rdx
+; X64-NEXT:    retq
   %k = mul i128 %t, %u
   ret i128 %k
 }

Modified: llvm/trunk/test/CodeGen/X86/mul64.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/mul64.ll?rev=260890&r1=260889&r2=260890&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/mul64.ll (original)
+++ llvm/trunk/test/CodeGen/X86/mul64.ll Mon Feb 15 08:04:05 2016
@@ -1,6 +1,27 @@
-; RUN: llc < %s -march=x86 | grep mul | count 3
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=i386-unknown | FileCheck %s --check-prefix=X32
+; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s --check-prefix=X64
 
-define i64 @foo(i64 %t, i64 %u) {
+define i64 @foo(i64 %t, i64 %u) nounwind {
+; X32-LABEL: foo:
+; X32:       # BB#0:
+; X32-NEXT:    pushl %esi
+; X32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
+; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
+; X32-NEXT:    movl %ecx, %eax
+; X32-NEXT:    mull %esi
+; X32-NEXT:    imull {{[0-9]+}}(%esp), %ecx
+; X32-NEXT:    addl %ecx, %edx
+; X32-NEXT:    imull {{[0-9]+}}(%esp), %esi
+; X32-NEXT:    addl %esi, %edx
+; X32-NEXT:    popl %esi
+; X32-NEXT:    retl
+;
+; X64-LABEL: foo:
+; X64:       # BB#0:
+; X64-NEXT:    imulq %rsi, %rdi
+; X64-NEXT:    movq %rdi, %rax
+; X64-NEXT:    retq
   %k = mul i64 %t, %u
   ret i64 %k
 }




More information about the llvm-commits mailing list