diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-02-15 14:04:05 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-02-15 14:04:05 +0000 |
| commit | a62170834d40f8c10b6b32ed6ac5202f98401bf4 (patch) | |
| tree | 222a98df5bd59d21da7b4dca170e5082ef08df49 | |
| parent | 9513b3c4c7f81f723e09afad86c601aba9031928 (diff) | |
| download | bcm5719-llvm-a62170834d40f8c10b6b32ed6ac5202f98401bf4.tar.gz bcm5719-llvm-a62170834d40f8c10b6b32ed6ac5202f98401bf4.zip | |
[X86] Regenerated 64/128 bit multiply tests
llvm-svn: 260890
| -rw-r--r-- | llvm/test/CodeGen/X86/mul128.ll | 13 | ||||
| -rw-r--r-- | llvm/test/CodeGen/X86/mul64.ll | 25 |
2 files changed, 35 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/X86/mul128.ll b/llvm/test/CodeGen/X86/mul128.ll index 6825b99f242..2b3a13509b3 100644 --- a/llvm/test/CodeGen/X86/mul128.ll +++ b/llvm/test/CodeGen/X86/mul128.ll @@ -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 } diff --git a/llvm/test/CodeGen/X86/mul64.ll b/llvm/test/CodeGen/X86/mul64.ll index 5a25c5d0e9d..f5ca52a93b5 100644 --- a/llvm/test/CodeGen/X86/mul64.ll +++ b/llvm/test/CodeGen/X86/mul64.ll @@ -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 } |

