R600/SI: Prefer SALU instructions for bit shift operations
[oota-llvm.git] / test / CodeGen / R600 / lshl.ll
1 ;RUN: llc < %s -march=r600 -mcpu=verde -verify-machineinstrs | FileCheck %s
2
3 ;CHECK: S_LSHL_B32 s{{[0-9]}}, s{{[0-9]}}, 1
4
5 define void @test(i32 %p) {
6    %i = mul i32 %p, 2
7    %r = bitcast i32 %i to float
8    call void @llvm.SI.export(i32 15, i32 0, i32 1, i32 12, i32 0, float %r, float %r, float %r, float %r)
9    ret void
10 }
11
12 declare <4 x float> @llvm.SI.sample.(i32, <4 x i32>, <8 x i32>, <4 x i32>, i32) readnone
13
14 declare void @llvm.SI.export(i32, i32, i32, i32, i32, float, float, float, float)