]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGen/AMDGPU/si-instr-info-correct-implicit-operands.ll
Vendor import of llvm release_40 branch r296202:
[FreeBSD/FreeBSD.git] / test / CodeGen / AMDGPU / si-instr-info-correct-implicit-operands.ll
1 ; RUN: llc -o - %s -march=amdgcn -mcpu=verde -verify-machineinstrs -stop-after expand-isel-pseudos | FileCheck %s
2 ; This test verifies that the instruction selection will add the implicit
3 ; register operands in the correct order when modifying the opcode of an
4 ; instruction to V_ADD_I32_e32.
5
6 ; CHECK: %{{[0-9]+}} = V_ADD_I32_e32 %{{[0-9]+}}, %{{[0-9]+}}, implicit-def %vcc, implicit %exec
7
8 define void @test(i32 addrspace(1)* %out, i32 addrspace(1)* %in) {
9 entry:
10   %b_ptr = getelementptr i32, i32 addrspace(1)* %in, i32 1
11   %a = load volatile i32, i32 addrspace(1)* %in
12   %b = load volatile i32, i32 addrspace(1)* %b_ptr
13   %result = add i32 %a, %b
14   store i32 %result, i32 addrspace(1)* %out
15   ret void
16 }