mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
cc12b285b6
This will currently accept the old number of bytes syntax, and convert it to a scalar. This should be removed in the near future (I think I converted all of the tests already, but likely missed a few). Not sure what the exact syntax and policy should be. We can continue printing the number of bytes for non-generic instructions to avoid test churn and only allow non-scalar types for generic instructions. This will currently print the LLT in parentheses, but accept parsing the existing integers and implicitly converting to scalar. The parentheses are a bit ugly, but the parser logic seems unable to deal without either parentheses or some keyword to indicate the start of a type.
20 lines
813 B
LLVM
20 lines
813 B
LLVM
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
|
; RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx900 -O0 -stop-after=postrapseudos -o - -verify-machineinstrs < %s | FileCheck -enable-var-scope -check-prefix=MIR %s
|
|
|
|
|
|
; MIR-LABEL: name: gws_barrier_offset0{{$}}
|
|
; MIR: BUNDLE implicit{{( killed)?( renamable)?}} $vgpr0, implicit $m0, implicit $exec {
|
|
; MIR-NEXT: DS_GWS_BARRIER renamable $vgpr0, 0, implicit $m0, implicit $exec :: (load (s32) from custom "GWSResource")
|
|
; MIR-NEXT: S_WAITCNT 0
|
|
; MIR-NEXT: }
|
|
define amdgpu_kernel void @gws_barrier_offset0(i32 %val) #0 {
|
|
call void @llvm.amdgcn.ds.gws.barrier(i32 %val, i32 0)
|
|
ret void
|
|
}
|
|
|
|
|
|
declare void @llvm.amdgcn.ds.gws.barrier(i32, i32) #1
|
|
|
|
attributes #0 = { nounwind }
|
|
attributes #1 = { convergent inaccessiblememonly nounwind }
|