result code = 0 standard error = { ir_global_var %1 : Ptr<@ThreadGroup vector[64]>; ir_global_var %2 : Ptr>>; ir_global_var %3 : Ptr>>; ir_func @_S04mainp3uuuV : (uint, uint, uint) -> void { block %4( param %5 : uint, param %6 : uint, param %7 : uint): let %8 : Ptr = var() store(%8, %5) let %9 : Ptr = var() store(%9, %6) let %10 : Ptr = var() store(%10, %7) let %11 : uint = load(%9) let %12 : Ptr> = getElementPtr(%1, %11) let %13 : StructuredBuffer> = load(%2) let %14 : uint = load(%8) let %15 : vector = bufferLoad(%13, %14) store(%12, %15) let %16 : Ptr = var() let %17 : uint = construct(1) store(%16, %17) loop(%18, %19, %20) block %18: let %21 : uint = load(%16) let %22 : uint = construct(64) let %23 : bool = cmpLT(%21, %22) loopTest(%23, %24, %19) block %24: GroupMemoryBarrierWithGroupSync() let %25 : uint = load(%9) let %26 : Ptr> = getElementPtr(%1, %25) let %27 : Ptr> = var() let %28 : vector = load(%26) store(%27, %28) let %29 : uint = load(%9) let %30 : uint = load(%16) let %31 : uint = sub(%29, %30) let %32 : Ptr> = getElementPtr(%1, %31) let %33 : vector = load(%32) let %34 : vector = load(%27) let %35 : vector = add(%34, %33) store(%27, %35) let %36 : vector = load(%27) store(%26, %36) unconditionalBranch(%20) block %20: let %37 : Ptr = var() let %38 : uint = load(%16) store(%37, %38) let %39 : uint = construct(1) let %40 : uint = load(%37) let %41 : uint = shl(%40, %39) store(%37, %41) let %42 : uint = load(%37) store(%16, %42) unconditionalBranch(%18) block %19: GroupMemoryBarrierWithGroupSync() let %43 : RWStructuredBuffer> = load(%3) let %44 : uint = load(%8) let %45 : Ptr> = getElementPtr(%1, 0) let %46 : vector = load(%45) bufferStore(%43, %44, %46) return_void() } } standard output = { }