; With shl->mul reassociation, we can see that this is (shl A, 9) * A
;
; RUN: llvm-upgrade < %s | llvm-as | opt -reassociate -instcombine | llvm-dis |\
; RUN:    grep {shl .*, 9}

int %test(int %A, int %B) {
	%X = shl int %A, ubyte 5
	%Y = shl int %A, ubyte 4
	%Z = mul int %Y, %X
	ret int %Z
}
