mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 12:41:49 +01:00
These two tests now require only two multiply instructions,
instead of four. llvm-svn: 42784
This commit is contained in:
parent
c00dbfc5bc
commit
708e76e663
14
test/CodeGen/X86/extmul128.ll
Normal file
14
test/CodeGen/X86/extmul128.ll
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
; RUN: llvm-as < %s | llc -march=x86-64 | grep mul | count 2
|
||||||
|
|
||||||
|
define i128 @i64_sext_i128(i64 %a, i64 %b) {
|
||||||
|
%aa = sext i64 %a to i128
|
||||||
|
%bb = sext i64 %b to i128
|
||||||
|
%cc = mul i128 %aa, %bb
|
||||||
|
ret i128 %cc
|
||||||
|
}
|
||||||
|
define i128 @i64_zext_i128(i64 %a, i64 %b) {
|
||||||
|
%aa = zext i64 %a to i128
|
||||||
|
%bb = zext i64 %b to i128
|
||||||
|
%cc = mul i128 %aa, %bb
|
||||||
|
ret i128 %cc
|
||||||
|
}
|
14
test/CodeGen/X86/extmul64.ll
Normal file
14
test/CodeGen/X86/extmul64.ll
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
; RUN: llvm-as < %s | llc -march=x86 | grep mul | count 2
|
||||||
|
|
||||||
|
define i64 @i32_sext_i64(i32 %a, i32 %b) {
|
||||||
|
%aa = sext i32 %a to i64
|
||||||
|
%bb = sext i32 %b to i64
|
||||||
|
%cc = mul i64 %aa, %bb
|
||||||
|
ret i64 %cc
|
||||||
|
}
|
||||||
|
define i64 @i32_zext_i64(i32 %a, i32 %b) {
|
||||||
|
%aa = zext i32 %a to i64
|
||||||
|
%bb = zext i32 %b to i64
|
||||||
|
%cc = mul i64 %aa, %bb
|
||||||
|
ret i64 %cc
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user