|  | ; RUN: llc -mcpu=gfx1200 < %s | FileCheck %s | 
|  | target triple = "amdgcn--amdpal" | 
|  |  | 
|  | @global = addrspace(1) global i32 poison, align 4 | 
|  |  | 
|  | ; CHECK-LABEL: amdpal.pipelines: | 
|  |  | 
|  | ; Shouldn't report the part of %vgpr_args that's not used | 
|  | ; CHECK-LABEL: entry_point_symbol: cs_calling_chain | 
|  | ; CHECK: .vgpr_count:     0xa | 
|  | define amdgpu_cs void @cs_calling_chain(i32 %vgpr, i32 inreg %sgpr) { | 
|  | %vgpr_args = insertvalue {i32, i32, i32, i32} poison, i32 %vgpr, 1 | 
|  | call void (ptr, i32, i32, {i32, i32, i32, i32}, i32, ...) @llvm.amdgcn.cs.chain.p0.i32.i32.s( | 
|  | ptr @chain_func, i32 0, i32 inreg %sgpr, {i32, i32, i32, i32} %vgpr_args, i32 0) | 
|  | unreachable | 
|  | } | 
|  |  | 
|  | ; Neither uses not writes a VGPR | 
|  | ; CHECK-LABEL: chain_func: | 
|  | ; CHECK: .vgpr_count:     0x1 | 
|  | define amdgpu_cs_chain void @chain_func([32 x i32] %args) { | 
|  | entry: | 
|  | call void (ptr, i32, {}, [32 x i32], i32, ...) @llvm.amdgcn.cs.chain.p0.i32.s.a( | 
|  | ptr @chain_func, i32 0, {} inreg {}, [32 x i32] %args, i32 0) | 
|  | unreachable | 
|  | } |