2007-04-17 01:36:08 +08:00
|
|
|
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | grep lea
|
2006-12-02 12:23:10 +08:00
|
|
|
; RUN: llvm-upgrade < %s | llvm-as | llc -march=x86 | not grep add
|
2006-03-01 11:43:38 +08:00
|
|
|
|
|
|
|
int %test(int %X, int %Y) {
|
|
|
|
; Push the shl through the mul to allow an LEA to be formed, instead
|
|
|
|
; of using a shift and add separately.
|
|
|
|
%tmp.2 = shl int %X, ubyte 1
|
|
|
|
%tmp.3 = mul int %tmp.2, %Y
|
|
|
|
%tmp.5 = add int %tmp.3, %Y
|
|
|
|
ret int %tmp.5
|
|
|
|
}
|
|
|
|
|