Skip to content

Instantly share code, notes, and snippets.

@wangkuiyi
Created March 7, 2023 03:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wangkuiyi/b4ef1a867e6f129fe3287a0ef0e1d600 to your computer and use it in GitHub Desktop.
Save wangkuiyi/b4ef1a867e6f129fe3287a0ef0e1d600 to your computer and use it in GitHub Desktop.
Undefined symbols for architecture arm64:
1200 "___tsan_func_entry", referenced from:
_encode_dispatch_0_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_1_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_2_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_3_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_4_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_5_generic_768x8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_6_matmul_2304x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_func_exit", referenced from:
_encode_dispatch_0_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_1_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_2_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_3_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_4_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_5_generic_768x8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_6_matmul_2304x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_init", referenced from:
_tsan.module_ctor in gpt2_module_linked_llvm_cpu-dff9a6.o
"___tsan_read16", referenced from:
_encode_dispatch_1_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_3_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_4_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_5_generic_768x8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_6_matmul_2304x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_7_generic_3x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_8_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_read2", referenced from:
_encode_dispatch_13_batch_matmul_12x64x8x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
__decode_dispatch_7 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_20_batch_matmul_12x64x64x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_454_fill_1x64x1 in gpt2_module_linked_llvm_cpu-dff9a6.o
"___tsan_read4", referenced from:
_encode_dispatch_0_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_1_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_2_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_3_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_4_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_5_generic_768x8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_6_matmul_2304x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_read8", referenced from:
_encode_dispatch_0_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_1_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_2_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_3_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_4_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_5_generic_768x8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_6_matmul_2304x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_unaligned_read16", referenced from:
_encode_dispatch_7_generic_3x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_9_generic_2x8x12x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_10 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_11_generic_12x64x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_12_generic_12x64x8 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_13_generic_3x64x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_17_generic_64x12x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_unaligned_write16", referenced from:
_encode_dispatch_7_generic_3x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_9_generic_2x8x12x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_10 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_11_generic_12x64x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_13_generic_3x64x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_15_generic_2x64x12x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
__finetune_dispatch_17_generic_64x12x64 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_write16", referenced from:
_encode_dispatch_0_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_1_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_3_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_4_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_6_matmul_2304x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_7_generic_3x8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_8_generic_8 in gpt2_module_linked_llvm_cpu-dff9a6.o
...
"___tsan_write4", referenced from:
_encode_dispatch_2_generic_8x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_283_generic in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_284_generic_1x768 in gpt2_module_linked_llvm_cpu-dff9a6.o
_encode_dispatch_287_generic_50272 in gpt2_module_linked_llvm_cpu-dff9a6.o
__decode_dispatch_0_generic_768 in gpt2_module_linked_llvm_cpu-dff9a6.o
__decode_dispatch_1_generic_768 in gpt2_module_linked_llvm_cpu-dff9a6.o
__decode_dispatch_5_generic in gpt2_module_linked_llvm_cpu-dff9a6.o
...
ld: symbol(s) not found for architecture arm64
Linking failed; escaped command line returned exit code 256:
/usr/bin/ld -o /var/folders/hd/6q8jftdn7b1fygsrzdkp5ww40000gn/T/gpt2_module_linked_llvm_cpu-dff9a6.so -static -dylib -flat_namespace -L /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/lib -lSystem /var/folders/hd/6q8jftdn7b1fygsrzdkp5ww40000gn/T/gpt2_module_linked_llvm_cpu-dff9a6.o
/tmp/gpt2.mlir:1:1: error: failed to link executable and generate target dylib (check above for more specific error messages)
module @gpt2_module {
^
/tmp/gpt2.mlir:1:1: error: failed to serialize executable for target backend llvm-cpu
module @gpt2_module {
^
/tmp/gpt2.mlir:1:1: note: see current operation:
"hal.executable.variant"() ({
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer>]>]>, ordinal = 0 : index, sym_name = "encode_dispatch_0_generic_8"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 1 : index, sym_name = "encode_dispatch_1_generic_8"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 2 : index, sym_name = "encode_dispatch_2_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 3 : index, sym_name = "encode_dispatch_3_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 4 : index, sym_name = "encode_dispatch_4_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 6, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 5 : index, sym_name = "encode_dispatch_5_generic_768x8"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 6 : index, sym_name = "encode_dispatch_6_matmul_2304x8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 7 : index, sym_name = "encode_dispatch_7_generic_3x8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 8 : index, sym_name = "encode_dispatch_8_generic_8"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 9 : index, sym_name = "encode_dispatch_9_generic_2x8x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 10 : index, sym_name = "encode_dispatch_10"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 11 : index, sym_name = "encode_dispatch_11_generic_12x64x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 12 : index, sym_name = "encode_dispatch_12_generic_12x64x8"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 13 : index, sym_name = "encode_dispatch_13_batch_matmul_12x64x8x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 14 : index, sym_name = "encode_dispatch_14_generic_8x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 15 : index, sym_name = "encode_dispatch_15_generic_8x64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 16 : index, sym_name = "encode_dispatch_16_generic_8x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 17 : index, sym_name = "encode_dispatch_17_generic_8x64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 18 : index, sym_name = "encode_dispatch_18_generic_8x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 19 : index, sym_name = "encode_dispatch_19_generic_768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 20 : index, sym_name = "encode_dispatch_20_generic_12x64x8"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 21 : index, sym_name = "encode_dispatch_22_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 22 : index, sym_name = "encode_dispatch_23_matmul_8x768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 23 : index, sym_name = "encode_dispatch_25_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 24 : index, sym_name = "encode_dispatch_26_matmul_8x3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 25 : index, sym_name = "encode_dispatch_27_matmul_8x768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 26 : index, sym_name = "encode_dispatch_281_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 27 : index, sym_name = "encode_dispatch_282_generic_8x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 28 : index, sym_name = "encode_dispatch_283_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 29 : index, sym_name = "encode_dispatch_284_generic_1x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 30 : index, sym_name = "encode_dispatch_285_generic_768x50272"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 31 : index, sym_name = "encode_dispatch_286_matmul_1x50272x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 32 : index, sym_name = "encode_dispatch_287_generic_50272"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 33 : index, sym_name = "_decode_dispatch_0_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 34 : index, sym_name = "_decode_dispatch_1_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 5, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 35 : index, sym_name = "_decode_dispatch_2_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 36 : index, sym_name = "_decode_dispatch_3_matmul_2304x1x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 37 : index, sym_name = "_decode_dispatch_4_generic_2304"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 38 : index, sym_name = "_decode_dispatch_5_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 39 : index, sym_name = "_decode_dispatch_6_generic_5"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 40 : index, sym_name = "_decode_dispatch_7"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 41 : index, sym_name = "_decode_dispatch_9_batch_matmul_12x64x1x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 42 : index, sym_name = "_decode_dispatch_10_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 43 : index, sym_name = "_decode_dispatch_11_generic_64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 44 : index, sym_name = "_decode_dispatch_12_generic_12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 45 : index, sym_name = "_decode_dispatch_13_generic_64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 46 : index, sym_name = "_decode_dispatch_15_generic_12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 47 : index, sym_name = "_decode_dispatch_17_matmul_1x768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 48 : index, sym_name = "_decode_dispatch_18_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 49 : index, sym_name = "_decode_dispatch_21_matmul_1x3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 50 : index, sym_name = "_decode_dispatch_22_matmul_1x768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 51 : index, sym_name = "_decode_dispatch_249_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer>]>]>, ordinal = 52 : index, sym_name = "_finetune_dispatch_0_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 53 : index, sym_name = "_finetune_dispatch_1_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 54 : index, sym_name = "_finetune_dispatch_2_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 55 : index, sym_name = "_finetune_dispatch_3_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 56 : index, sym_name = "_finetune_dispatch_4_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 57 : index, sym_name = "_finetune_dispatch_5_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 58 : index, sym_name = "_finetune_dispatch_6_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 59 : index, sym_name = "_finetune_dispatch_7_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 60 : index, sym_name = "_finetune_dispatch_8_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 61 : index, sym_name = "_finetune_dispatch_9_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 62 : index, sym_name = "_finetune_dispatch_10_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 63 : index, sym_name = "_finetune_dispatch_12_matmul_2304x64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 64 : index, sym_name = "_finetune_dispatch_13_generic_3x64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 65 : index, sym_name = "_finetune_dispatch_14_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 66 : index, sym_name = "_finetune_dispatch_15_generic_2x64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 67 : index, sym_name = "_finetune_dispatch_16_generic_98304"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 68 : index, sym_name = "_finetune_dispatch_17_generic_64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 69 : index, sym_name = "_finetune_dispatch_20_batch_matmul_12x64x64x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 70 : index, sym_name = "_finetune_dispatch_21_generic_64x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 71 : index, sym_name = "_finetune_dispatch_22_generic_64x64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 72 : index, sym_name = "_finetune_dispatch_23_generic_64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 73 : index, sym_name = "_finetune_dispatch_24_generic_64x64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 74 : index, sym_name = "_finetune_dispatch_25_generic_64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 75 : index, sym_name = "_finetune_dispatch_26_generic_64x64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 76 : index, sym_name = "_finetune_dispatch_28_generic_12x64x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 77 : index, sym_name = "_finetune_dispatch_30_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 5, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 78 : index, sym_name = "_finetune_dispatch_31_matmul_64x768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 79 : index, sym_name = "_finetune_dispatch_38_matmul_64x3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 80 : index, sym_name = "_finetune_dispatch_39_generic_196608"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 81 : index, sym_name = "_finetune_dispatch_40_generic_196608"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 82 : index, sym_name = "_finetune_dispatch_41_generic_196608"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 83 : index, sym_name = "_finetune_dispatch_42_generic_196608"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 5, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 84 : index, sym_name = "_finetune_dispatch_43_matmul_64x768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 85 : index, sym_name = "_finetune_dispatch_447_matmul_64x50272x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 86 : index, sym_name = "_finetune_dispatch_449"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 87 : index, sym_name = "_finetune_dispatch_450"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 88 : index, sym_name = "_finetune_dispatch_451_generic_64x50272"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 89 : index, sym_name = "_finetune_dispatch_452_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 90 : index, sym_name = "_finetune_dispatch_453_generic_64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 91 : index, sym_name = "_finetune_dispatch_454_fill_1x64x1"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 92 : index, sym_name = "_finetune_dispatch_455_fill_1x64x50272"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 93 : index, sym_name = "_finetune_dispatch_456_generic_64x50272"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 94 : index, sym_name = "_finetune_dispatch_457_generic_50272x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 95 : index, sym_name = "_finetune_dispatch_458_matmul_64x768x50272"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 96 : index, sym_name = "_finetune_dispatch_459_generic_768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 97 : index, sym_name = "_finetune_dispatch_460_generic_768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 98 : index, sym_name = "_finetune_dispatch_461_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 99 : index, sym_name = "_finetune_dispatch_463_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 100 : index, sym_name = "_finetune_dispatch_464_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 101 : index, sym_name = "_finetune_dispatch_467_matmul_768x3072x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 102 : index, sym_name = "_finetune_dispatch_468_generic_768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 6, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 103 : index, sym_name = "_finetune_dispatch_469_matmul_64x3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 104 : index, sym_name = "_finetune_dispatch_470_generic_3072x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 105 : index, sym_name = "_finetune_dispatch_471_generic_3072x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 106 : index, sym_name = "_finetune_dispatch_472_matmul_3072x768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 107 : index, sym_name = "_finetune_dispatch_473_generic_3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 108 : index, sym_name = "_finetune_dispatch_474_matmul_64x768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 9, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 109 : index, sym_name = "_finetune_dispatch_480_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 110 : index, sym_name = "_finetune_dispatch_483_matmul_768x768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 111 : index, sym_name = "_finetune_dispatch_484_generic_768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 112 : index, sym_name = "_finetune_dispatch_485_matmul_64x768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 113 : index, sym_name = "_finetune_dispatch_487_generic_12x64x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 114 : index, sym_name = "_finetune_dispatch_489_generic_12x4096"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 115 : index, sym_name = "_finetune_dispatch_492_generic_64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 5, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 116 : index, sym_name = "_finetune_dispatch_493_generic_64x64x12"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 117 : index, sym_name = "_finetune_dispatch_499_generic_64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 118 : index, sym_name = "_finetune_dispatch_500_generic_2x1x64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 119 : index, sym_name = "_finetune_dispatch_501_generic_64x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 120 : index, sym_name = "_finetune_dispatch_502_generic_147456"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 121 : index, sym_name = "_finetune_dispatch_503_generic_3x12x64x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 122 : index, sym_name = "_finetune_dispatch_504_generic_3x768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 123 : index, sym_name = "_finetune_dispatch_505_generic_64x3x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 124 : index, sym_name = "_finetune_dispatch_506_matmul_64x768x2304"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 125 : index, sym_name = "_finetune_dispatch_507_matmul_2304x768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 126 : index, sym_name = "_finetune_dispatch_1052_generic_64x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 127 : index, sym_name = "_finetune_dispatch_1053_fill_1024x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 128 : index, sym_name = "_finetune_dispatch_1054_fill_50272x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 129 : index, sym_name = "_finetune_dispatch_1055_matmul_50272x768x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 130 : index, sym_name = "_finetune_dispatch_1056_generic_38608896"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 131 : index, sym_name = "_finetune_dispatch_1057_generic_786432"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 132 : index, sym_name = "_finetune_dispatch_1058_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 133 : index, sym_name = "_finetune_dispatch_1060_generic_1769472"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 134 : index, sym_name = "_finetune_dispatch_1061_generic_2304"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 135 : index, sym_name = "_finetune_dispatch_1062_generic_768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 136 : index, sym_name = "_finetune_dispatch_1066_generic_768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 137 : index, sym_name = "_finetune_dispatch_1067_generic_3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 138 : index, sym_name = "_finetune_dispatch_1068_generic_3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 139 : index, sym_name = "_finetune_dispatch_1204_generic_38608896"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 140 : index, sym_name = "_finetune_dispatch_1205_generic_786432"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 141 : index, sym_name = "_finetune_dispatch_1206_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 142 : index, sym_name = "_finetune_dispatch_1208_generic_1769472"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 143 : index, sym_name = "_finetune_dispatch_1209_generic_2304"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 144 : index, sym_name = "_finetune_dispatch_1210_generic_768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 145 : index, sym_name = "_finetune_dispatch_1214_generic_768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 146 : index, sym_name = "_finetune_dispatch_1215_generic_3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 3, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer>]>]>, ordinal = 147 : index, sym_name = "_finetune_dispatch_1216_generic_3072x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 148 : index, sym_name = "_finetune_dispatch_1352_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 149 : index, sym_name = "_finetune_dispatch_1353_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 150 : index, sym_name = "_finetune_dispatch_1354_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 151 : index, sym_name = "_finetune_dispatch_1355_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 2, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 152 : index, sym_name = "_finetune_dispatch_1356_generic_3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 0, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer>]>]>, ordinal = 153 : index, sym_name = "_finetune_dispatch_1357_generic"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 154 : index, sym_name = "_finetune_dispatch_1360_generic_50272x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 1, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 155 : index, sym_name = "_finetune_dispatch_1361_generic_1024x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 156 : index, sym_name = "_finetune_dispatch_1362_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 157 : index, sym_name = "_finetune_dispatch_1364_generic_2304x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 158 : index, sym_name = "_finetune_dispatch_1365_generic_3x12x64"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 159 : index, sym_name = "_finetune_dispatch_1366_generic_768x768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 160 : index, sym_name = "_finetune_dispatch_1367_generic_768"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 161 : index, sym_name = "_finetune_dispatch_1370_generic_768x3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 162 : index, sym_name = "_finetune_dispatch_1371_generic_3072"} : () -> ()
"hal.executable.export"() ({
}) {layout = #hal.pipeline.layout<push_constants = 4, sets = [<0, bindings = [<0, storage_buffer, ReadOnly>, <1, storage_buffer, ReadOnly>, <2, storage_buffer, ReadOnly>, <3, storage_buffer>]>]>, ordinal = 163 : index, sym_name = "_finetune_dispatch_1372_generic_3072x768"} : () -> ()
"builtin.module"() ({
"llvm.func"() ({
^bb0(%arg0: !llvm.ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, %arg1: !llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, %arg2: !llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>):
%0 = "llvm.mlir.constant"() {value = 0 : i32} : () -> i32
%1 = "llvm.mlir.constant"() {value = 63 : index} : () -> i64
%2 = "llvm.mlir.constant"() {value = dense<[0, 1, 2, 3]> : vector<4xindex>} : () -> vector<4xi64>
%3 = "llvm.mlir.constant"() {value = 4 : index} : () -> i64
%4 = "llvm.mlir.constant"() {value = 8 : index} : () -> i64
%5 = "llvm.mlir.constant"() {value = 0 : index} : () -> i64
%6 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%7 = "llvm.extractvalue"(%6) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%8 = "llvm.load"(%7) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%9 = "llvm.bitcast"(%8) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%10 = "llvm.ptrtoint"(%9) : (!llvm.ptr<i32>) -> i64
%11 = "llvm.and"(%10, %1) : (i64, i64) -> i64
%12 = "llvm.icmp"(%11, %5) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%12) : (i1) -> ()
%13 = "llvm.load"(%arg2) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>) -> !llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>
%14 = "llvm.extractvalue"(%13) {position = array<i64: 0>} : (!llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>) -> i32
%15 = "llvm.zext"(%14) : (i32) -> i64
%16 = "llvm.mul"(%15, %4) : (i64, i64) -> i64
%17 = "llvm.mlir.undef"() : () -> vector<4xi64>
%18 = "llvm.insertelement"(%17, %16, %0) : (vector<4xi64>, i64, i32) -> vector<4xi64>
%19 = "llvm.shufflevector"(%18, %17) {mask = array<i32: 0, 0, 0, 0>} : (vector<4xi64>, vector<4xi64>) -> vector<4xi64>
%20 = "llvm.add"(%19, %2) : (vector<4xi64>, vector<4xi64>) -> vector<4xi64>
"llvm.br"(%5)[^bb1] : (i64) -> ()
^bb1(%21: i64): // 2 preds: ^bb0, ^bb2
%22 = "llvm.icmp"(%21, %4) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%22)[^bb2, ^bb3] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb2: // pred: ^bb1
%23 = "llvm.insertelement"(%17, %21, %0) : (vector<4xi64>, i64, i32) -> vector<4xi64>
%24 = "llvm.shufflevector"(%23, %17) {mask = array<i32: 0, 0, 0, 0>} : (vector<4xi64>, vector<4xi64>) -> vector<4xi64>
%25 = "llvm.add"(%20, %24) : (vector<4xi64>, vector<4xi64>) -> vector<4xi64>
%26 = "llvm.trunc"(%25) : (vector<4xi64>) -> vector<4xi32>
%27 = "llvm.getelementptr"(%9, %21) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i32>, i64) -> !llvm.ptr<i32>
%28 = "llvm.bitcast"(%27) : (!llvm.ptr<i32>) -> !llvm.ptr<vector<4xi32>>
"llvm.store"(%26, %28) {alignment = 4 : i64, ordering = 0 : i64} : (vector<4xi32>, !llvm.ptr<vector<4xi32>>) -> ()
%29 = "llvm.add"(%21, %3) : (i64, i64) -> i64
"llvm.br"(%29)[^bb1] : (i64) -> ()
^bb3: // pred: ^bb1
"llvm.return"(%0) : (i32) -> ()
}) {CConv = #llvm.cconv<ccc>, arg_attrs = [{llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}], function_type = !llvm.func<i32 (ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>)>, linkage = #llvm.linkage<external>, sym_name = "encode_dispatch_0_generic_8"} : () -> ()
"llvm.func"() ({
^bb0(%arg0: !llvm.ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, %arg1: !llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, %arg2: !llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>):
%0 = "llvm.mlir.constant"() {value = 0 : i32} : () -> i32
%1 = "llvm.mlir.constant"() {value = 63 : index} : () -> i64
%2 = "llvm.mlir.constant"() {value = 4 : index} : () -> i64
%3 = "llvm.mlir.constant"() {value = 8 : index} : () -> i64
%4 = "llvm.mlir.constant"() {value = 0 : index} : () -> i64
%5 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%6 = "llvm.extractvalue"(%5) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%7 = "llvm.load"(%6) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%8 = "llvm.bitcast"(%7) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%9 = "llvm.ptrtoint"(%8) : (!llvm.ptr<i32>) -> i64
%10 = "llvm.and"(%9, %1) : (i64, i64) -> i64
%11 = "llvm.icmp"(%10, %4) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%11) : (i1) -> ()
%12 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%13 = "llvm.extractvalue"(%12) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%14 = "llvm.getelementptr"(%13) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%15 = "llvm.load"(%14) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%16 = "llvm.bitcast"(%15) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%17 = "llvm.ptrtoint"(%16) : (!llvm.ptr<i32>) -> i64
%18 = "llvm.and"(%17, %1) : (i64, i64) -> i64
%19 = "llvm.icmp"(%18, %4) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%19) : (i1) -> ()
%20 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%21 = "llvm.extractvalue"(%20) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%22 = "llvm.getelementptr"(%21) {rawConstantIndices = array<i32: 2>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%23 = "llvm.load"(%22) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%24 = "llvm.getelementptr"(%23) {rawConstantIndices = array<i32: 64>} : (!llvm.ptr<i8>) -> !llvm.ptr<i8>
%25 = "llvm.bitcast"(%24) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%26 = "llvm.ptrtoint"(%25) : (!llvm.ptr<i32>) -> i64
%27 = "llvm.and"(%26, %1) : (i64, i64) -> i64
%28 = "llvm.icmp"(%27, %4) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%28) : (i1) -> ()
%29 = "llvm.load"(%16) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%30 = "llvm.mlir.undef"() : () -> vector<4xi32>
%31 = "llvm.insertelement"(%30, %29, %0) : (vector<4xi32>, i32, i32) -> vector<4xi32>
%32 = "llvm.shufflevector"(%31, %30) {mask = array<i32: 0, 0, 0, 0>} : (vector<4xi32>, vector<4xi32>) -> vector<4xi32>
"llvm.br"(%4)[^bb1] : (i64) -> ()
^bb1(%33: i64): // 2 preds: ^bb0, ^bb2
%34 = "llvm.icmp"(%33, %3) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%34)[^bb2, ^bb3] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb2: // pred: ^bb1
%35 = "llvm.getelementptr"(%8, %33) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i32>, i64) -> !llvm.ptr<i32>
%36 = "llvm.bitcast"(%35) : (!llvm.ptr<i32>) -> !llvm.ptr<vector<4xi32>>
%37 = "llvm.load"(%36) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xi32>>) -> vector<4xi32>
%38 = "llvm.icmp"(%37, %32) {predicate = 2 : i64} : (vector<4xi32>, vector<4xi32>) -> vector<4xi1>
%39 = "llvm.zext"(%38) : (vector<4xi1>) -> vector<4xi32>
%40 = "llvm.getelementptr"(%25, %33) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i32>, i64) -> !llvm.ptr<i32>
%41 = "llvm.bitcast"(%40) : (!llvm.ptr<i32>) -> !llvm.ptr<vector<4xi32>>
"llvm.store"(%39, %41) {alignment = 4 : i64, ordering = 0 : i64} : (vector<4xi32>, !llvm.ptr<vector<4xi32>>) -> ()
%42 = "llvm.add"(%33, %2) : (i64, i64) -> i64
"llvm.br"(%42)[^bb1] : (i64) -> ()
^bb3: // pred: ^bb1
"llvm.return"(%0) : (i32) -> ()
}) {CConv = #llvm.cconv<ccc>, arg_attrs = [{llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}], function_type = !llvm.func<i32 (ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>)>, linkage = #llvm.linkage<external>, sym_name = "encode_dispatch_1_generic_8"} : () -> ()
"llvm.func"() ({
^bb0(%arg0: !llvm.ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, %arg1: !llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, %arg2: !llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>):
%0 = "llvm.mlir.constant"() {value = -1 : index} : () -> i64
%1 = "llvm.mlir.constant"() {value = 6144 : index} : () -> i64
%2 = "llvm.mlir.constant"() {value = -512 : index} : () -> i64
%3 = "llvm.mlir.constant"() {value = 512 : index} : () -> i64
%4 = "llvm.mlir.constant"() {value = 63 : index} : () -> i64
%5 = "llvm.mlir.constant"() {value = 768 : index} : () -> i64
%6 = "llvm.mlir.constant"() {value = 1 : index} : () -> i64
%7 = "llvm.mlir.constant"() {value = 4 : index} : () -> i64
%8 = "llvm.mlir.constant"() {value = 8 : index} : () -> i64
%9 = "llvm.mlir.constant"() {value = 0 : i32} : () -> i32
%10 = "llvm.mlir.constant"() {value = 0.000000e+00 : f32} : () -> f32
%11 = "llvm.mlir.constant"() {value = 1024 : i32} : () -> i32
%12 = "llvm.mlir.constant"() {value = 50272 : i32} : () -> i32
%13 = "llvm.mlir.constant"() {value = 0 : index} : () -> i64
%14 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%15 = "llvm.extractvalue"(%14) {position = array<i64: 9>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<i32>
%16 = "llvm.load"(%15) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%17 = "llvm.getelementptr"(%15) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<i32>) -> !llvm.ptr<i32>
%18 = "llvm.load"(%17) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%19 = "llvm.zext"(%16) : (i32) -> i64
%20 = "llvm.zext"(%18) : (i32) -> i64
%21 = "llvm.extractvalue"(%14) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%22 = "llvm.load"(%21) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%23 = "llvm.getelementptr"(%22, %19) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i8>, i64) -> !llvm.ptr<i8>
%24 = "llvm.bitcast"(%23) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%25 = "llvm.ptrtoint"(%24) : (!llvm.ptr<f32>) -> i64
%26 = "llvm.and"(%25, %4) : (i64, i64) -> i64
%27 = "llvm.icmp"(%26, %13) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%27) : (i1) -> ()
%28 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%29 = "llvm.extractvalue"(%28) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%30 = "llvm.load"(%29) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%31 = "llvm.getelementptr"(%30, %20) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i8>, i64) -> !llvm.ptr<i8>
%32 = "llvm.bitcast"(%31) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%33 = "llvm.ptrtoint"(%32) : (!llvm.ptr<f32>) -> i64
%34 = "llvm.and"(%33, %4) : (i64, i64) -> i64
%35 = "llvm.icmp"(%34, %13) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%35) : (i1) -> ()
%36 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%37 = "llvm.extractvalue"(%36) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%38 = "llvm.getelementptr"(%37) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%39 = "llvm.load"(%38) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%40 = "llvm.getelementptr"(%39) {rawConstantIndices = array<i32: 64>} : (!llvm.ptr<i8>) -> !llvm.ptr<i8>
%41 = "llvm.bitcast"(%40) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%42 = "llvm.ptrtoint"(%41) : (!llvm.ptr<i32>) -> i64
%43 = "llvm.and"(%42, %4) : (i64, i64) -> i64
%44 = "llvm.icmp"(%43, %13) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%44) : (i1) -> ()
%45 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%46 = "llvm.extractvalue"(%45) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%47 = "llvm.getelementptr"(%46) {rawConstantIndices = array<i32: 2>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%48 = "llvm.load"(%47) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%49 = "llvm.bitcast"(%48) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%50 = "llvm.ptrtoint"(%49) : (!llvm.ptr<i32>) -> i64
%51 = "llvm.and"(%50, %4) : (i64, i64) -> i64
%52 = "llvm.icmp"(%51, %13) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%52) : (i1) -> ()
%53 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%54 = "llvm.extractvalue"(%53) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%55 = "llvm.getelementptr"(%54) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%56 = "llvm.load"(%55) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%57 = "llvm.bitcast"(%56) : (!llvm.ptr<i8>) -> !llvm.ptr<i32>
%58 = "llvm.ptrtoint"(%57) : (!llvm.ptr<i32>) -> i64
%59 = "llvm.and"(%58, %4) : (i64, i64) -> i64
%60 = "llvm.icmp"(%59, %13) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%60) : (i1) -> ()
%61 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%62 = "llvm.extractvalue"(%61) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%63 = "llvm.getelementptr"(%62) {rawConstantIndices = array<i32: 3>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%64 = "llvm.load"(%63) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%65 = "llvm.getelementptr"(%64) {rawConstantIndices = array<i32: 128>} : (!llvm.ptr<i8>) -> !llvm.ptr<i8>
%66 = "llvm.bitcast"(%65) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%67 = "llvm.ptrtoint"(%66) : (!llvm.ptr<f32>) -> i64
%68 = "llvm.and"(%67, %4) : (i64, i64) -> i64
%69 = "llvm.icmp"(%68, %13) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%69) : (i1) -> ()
%70 = "llvm.load"(%arg2) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>) -> !llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>
%71 = "llvm.extractvalue"(%70) {position = array<i64: 0>} : (!llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>) -> i32
%72 = "llvm.zext"(%71) : (i32) -> i64
%73 = "llvm.extractvalue"(%70) {position = array<i64: 1>} : (!llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>) -> i32
%74 = "llvm.zext"(%73) : (i32) -> i64
%75 = "llvm.mul"(%72, %2) : (i64, i64) -> i64
%76 = "llvm.add"(%75, %5) : (i64, i64) -> i64
%77 = "llvm.icmp"(%76, %3) {predicate = 2 : i64} : (i64, i64) -> i1
%78 = "llvm.select"(%77, %76, %3) : (i1, i64, i64) -> i64
%79 = "llvm.mul"(%74, %1) : (i64, i64) -> i64
%80 = "llvm.mul"(%72, %3) : (i64, i64) -> i64
%81 = "llvm.add"(%79, %80) : (i64, i64) -> i64
"llvm.br"(%13)[^bb1] : (i64) -> ()
^bb1(%82: i64): // 2 preds: ^bb0, ^bb10
%83 = "llvm.icmp"(%82, %8) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%83)[^bb2, ^bb11] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb2: // pred: ^bb1
"llvm.br"(%13)[^bb3] : (i64) -> ()
^bb3(%84: i64): // 2 preds: ^bb2, ^bb9
%85 = "llvm.icmp"(%84, %78) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%85)[^bb4, ^bb10] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb4: // pred: ^bb3
%86 = "llvm.mul"(%84, %0) : (i64, i64) -> i64
%87 = "llvm.add"(%78, %86) : (i64, i64) -> i64
%88 = "llvm.icmp"(%87, %7) {predicate = 4 : i64} : (i64, i64) -> i1
%89 = "llvm.select"(%88, %7, %87) : (i1, i64, i64) -> i64
%90 = "llvm.mul"(%82, %5) : (i64, i64) -> i64
%91 = "llvm.add"(%81, %90) : (i64, i64) -> i64
%92 = "llvm.add"(%91, %84) : (i64, i64) -> i64
"llvm.br"(%13)[^bb5] : (i64) -> ()
^bb5(%93: i64): // 2 preds: ^bb4, ^bb8
%94 = "llvm.icmp"(%93, %7) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%94, %13)[^bb6, ^bb9] {operand_segment_sizes = array<i32: 1, 1, 0>} : (i1, i64) -> ()
^bb6(%95: i64): // 2 preds: ^bb5, ^bb7
%96 = "llvm.icmp"(%95, %89) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%96)[^bb7, ^bb8] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb7: // pred: ^bb6
%97 = "llvm.add"(%82, %93) : (i64, i64) -> i64
%98 = "llvm.getelementptr"(%41, %97) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i32>, i64) -> !llvm.ptr<i32>
%99 = "llvm.load"(%98) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%100 = "llvm.getelementptr"(%49, %97) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i32>, i64) -> !llvm.ptr<i32>
%101 = "llvm.load"(%100) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%102 = "llvm.getelementptr"(%57, %97) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i32>, i64) -> !llvm.ptr<i32>
%103 = "llvm.load"(%102) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%104 = "llvm.add"(%80, %95) : (i64, i64) -> i64
%105 = "llvm.add"(%104, %84) : (i64, i64) -> i64
%106 = "llvm.add"(%101, %12) : (i32, i32) -> i32
%107 = "llvm.icmp"(%101, %9) {predicate = 2 : i64} : (i32, i32) -> i1
%108 = "llvm.select"(%107, %106, %101) : (i1, i32, i32) -> i32
%109 = "llvm.add"(%103, %11) : (i32, i32) -> i32
%110 = "llvm.icmp"(%103, %9) {predicate = 2 : i64} : (i32, i32) -> i1
%111 = "llvm.select"(%110, %109, %103) : (i1, i32, i32) -> i32
%112 = "llvm.sext"(%111) : (i32) -> i64
%113 = "llvm.mul"(%112, %5) : (i64, i64) -> i64
%114 = "llvm.add"(%113, %105) : (i64, i64) -> i64
%115 = "llvm.getelementptr"(%24, %114) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%116 = "llvm.load"(%115) {ordering = 0 : i64} : (!llvm.ptr<f32>) -> f32
%117 = "llvm.sext"(%108) : (i32) -> i64
%118 = "llvm.mul"(%117, %5) : (i64, i64) -> i64
%119 = "llvm.add"(%118, %105) : (i64, i64) -> i64
%120 = "llvm.getelementptr"(%32, %119) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%121 = "llvm.load"(%120) {ordering = 0 : i64} : (!llvm.ptr<f32>) -> f32
%122 = "llvm.fadd"(%121, %116) {fastmathFlags = #llvm.fastmath<none>} : (f32, f32) -> f32
%123 = "llvm.icmp"(%99, %9) {predicate = 1 : i64} : (i32, i32) -> i1
%124 = "llvm.select"(%123, %122, %10) : (i1, f32, f32) -> f32
%125 = "llvm.mul"(%93, %5) : (i64, i64) -> i64
%126 = "llvm.add"(%92, %125) : (i64, i64) -> i64
%127 = "llvm.add"(%126, %95) : (i64, i64) -> i64
%128 = "llvm.getelementptr"(%66, %127) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
"llvm.store"(%124, %128) {ordering = 0 : i64} : (f32, !llvm.ptr<f32>) -> ()
%129 = "llvm.add"(%95, %6) : (i64, i64) -> i64
"llvm.br"(%129)[^bb6] : (i64) -> ()
^bb8: // pred: ^bb6
%130 = "llvm.add"(%93, %6) : (i64, i64) -> i64
"llvm.br"(%130)[^bb5] : (i64) -> ()
^bb9: // pred: ^bb5
%131 = "llvm.add"(%84, %7) : (i64, i64) -> i64
"llvm.br"(%131)[^bb3] : (i64) -> ()
^bb10: // pred: ^bb3
%132 = "llvm.add"(%82, %7) : (i64, i64) -> i64
"llvm.br"(%132)[^bb1] : (i64) -> ()
^bb11: // pred: ^bb1
"llvm.return"(%9) : (i32) -> ()
}) {CConv = #llvm.cconv<ccc>, arg_attrs = [{llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}], function_type = !llvm.func<i32 (ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>)>, linkage = #llvm.linkage<external>, sym_name = "encode_dispatch_2_generic_8x768"} : () -> ()
"llvm.func"() ({
^bb0(%arg0: !llvm.ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, %arg1: !llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, %arg2: !llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>):
%0 = "llvm.mlir.constant"() {value = 0 : i32} : () -> i32
%1 = "llvm.mlir.constant"() {value = 3 : i64} : () -> i64
%2 = "llvm.mlir.constant"() {value = 2 : i64} : () -> i64
%3 = "llvm.mlir.constant"() {value = 3072 : index} : () -> i64
%4 = "llvm.mlir.constant"() {value = 63 : index} : () -> i64
%5 = "llvm.mlir.constant"() {value = 1 : i64} : () -> i64
%6 = "llvm.mlir.constant"() {value = 0 : i64} : () -> i64
%7 = "llvm.mlir.constant"() {value = 1 : index} : () -> i64
%8 = "llvm.mlir.constant"() {value = 2 : index} : () -> i64
%9 = "llvm.mlir.constant"() {value = 3 : index} : () -> i64
%10 = "llvm.mlir.constant"() {value = dense<0.000000e+00> : vector<4xf32>} : () -> vector<4xf32>
%11 = "llvm.mlir.constant"() {value = 4 : index} : () -> i64
%12 = "llvm.mlir.constant"() {value = 0 : index} : () -> i64
%13 = "llvm.mlir.constant"() {value = 768 : index} : () -> i64
%14 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%15 = "llvm.extractvalue"(%14) {position = array<i64: 9>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<i32>
%16 = "llvm.load"(%15) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%17 = "llvm.getelementptr"(%15) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<i32>) -> !llvm.ptr<i32>
%18 = "llvm.load"(%17) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%19 = "llvm.zext"(%16) : (i32) -> i64
%20 = "llvm.zext"(%18) : (i32) -> i64
%21 = "llvm.extractvalue"(%14) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%22 = "llvm.load"(%21) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%23 = "llvm.getelementptr"(%22, %19) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i8>, i64) -> !llvm.ptr<i8>
%24 = "llvm.bitcast"(%23) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%25 = "llvm.ptrtoint"(%24) : (!llvm.ptr<f32>) -> i64
%26 = "llvm.and"(%25, %4) : (i64, i64) -> i64
%27 = "llvm.icmp"(%26, %12) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%27) : (i1) -> ()
%28 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%29 = "llvm.extractvalue"(%28) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%30 = "llvm.getelementptr"(%29) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%31 = "llvm.load"(%30) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%32 = "llvm.getelementptr"(%31, %20) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i8>, i64) -> !llvm.ptr<i8>
%33 = "llvm.bitcast"(%32) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%34 = "llvm.ptrtoint"(%33) : (!llvm.ptr<f32>) -> i64
%35 = "llvm.and"(%34, %4) : (i64, i64) -> i64
%36 = "llvm.icmp"(%35, %12) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%36) : (i1) -> ()
%37 = "llvm.load"(%arg2) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>) -> !llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>
%38 = "llvm.extractvalue"(%37) {position = array<i64: 0>} : (!llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>) -> i32
%39 = "llvm.zext"(%38) : (i32) -> i64
%40 = "llvm.mul"(%39, %11) : (i64, i64) -> i64
%41 = "llvm.mul"(%39, %3) : (i64, i64) -> i64
"llvm.br"(%12, %10)[^bb1] : (i64, vector<4xf32>) -> ()
^bb1(%42: i64, %43: vector<4xf32>): // 2 preds: ^bb0, ^bb2
%44 = "llvm.icmp"(%42, %13) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%44)[^bb2, ^bb3] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb2: // pred: ^bb1
%45 = "llvm.mul"(%12, %13) : (i64, i64) -> i64
%46 = "llvm.add"(%41, %45) : (i64, i64) -> i64
%47 = "llvm.add"(%46, %42) : (i64, i64) -> i64
%48 = "llvm.getelementptr"(%24, %47) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%49 = "llvm.bitcast"(%48) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%50 = "llvm.load"(%49) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%51 = "llvm.mul"(%7, %13) : (i64, i64) -> i64
%52 = "llvm.add"(%41, %51) : (i64, i64) -> i64
%53 = "llvm.add"(%52, %42) : (i64, i64) -> i64
%54 = "llvm.getelementptr"(%24, %53) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%55 = "llvm.bitcast"(%54) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%56 = "llvm.load"(%55) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%57 = "llvm.mul"(%8, %13) : (i64, i64) -> i64
%58 = "llvm.add"(%41, %57) : (i64, i64) -> i64
%59 = "llvm.add"(%58, %42) : (i64, i64) -> i64
%60 = "llvm.getelementptr"(%24, %59) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%61 = "llvm.bitcast"(%60) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%62 = "llvm.load"(%61) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%63 = "llvm.mul"(%9, %13) : (i64, i64) -> i64
%64 = "llvm.add"(%41, %63) : (i64, i64) -> i64
%65 = "llvm.add"(%64, %42) : (i64, i64) -> i64
%66 = "llvm.getelementptr"(%24, %65) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%67 = "llvm.bitcast"(%66) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%68 = "llvm.load"(%67) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%69 = "llvm.extractelement"(%43, %6) : (vector<4xf32>, i64) -> f32
%70 = "llvm.intr.vector.reduce.fadd"(%69, %50) {reassoc = false} : (f32, vector<4xf32>) -> f32
%71 = "llvm.insertelement"(%10, %70, %12) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%72 = "llvm.extractelement"(%43, %5) : (vector<4xf32>, i64) -> f32
%73 = "llvm.intr.vector.reduce.fadd"(%72, %56) {reassoc = false} : (f32, vector<4xf32>) -> f32
%74 = "llvm.insertelement"(%71, %73, %7) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%75 = "llvm.extractelement"(%43, %2) : (vector<4xf32>, i64) -> f32
%76 = "llvm.intr.vector.reduce.fadd"(%75, %62) {reassoc = false} : (f32, vector<4xf32>) -> f32
%77 = "llvm.insertelement"(%74, %76, %8) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%78 = "llvm.extractelement"(%43, %1) : (vector<4xf32>, i64) -> f32
%79 = "llvm.intr.vector.reduce.fadd"(%78, %68) {reassoc = false} : (f32, vector<4xf32>) -> f32
%80 = "llvm.insertelement"(%77, %79, %9) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%81 = "llvm.add"(%42, %11) : (i64, i64) -> i64
"llvm.br"(%81, %80)[^bb1] : (i64, vector<4xf32>) -> ()
^bb3: // pred: ^bb1
%82 = "llvm.add"(%40, %12) : (i64, i64) -> i64
%83 = "llvm.getelementptr"(%33, %82) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%84 = "llvm.bitcast"(%83) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
"llvm.store"(%43, %84) {alignment = 4 : i64, ordering = 0 : i64} : (vector<4xf32>, !llvm.ptr<vector<4xf32>>) -> ()
"llvm.return"(%0) : (i32) -> ()
}) {CConv = #llvm.cconv<ccc>, arg_attrs = [{llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}], function_type = !llvm.func<i32 (ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>)>, linkage = #llvm.linkage<external>, sym_name = "encode_dispatch_3_generic_8x768"} : () -> ()
"llvm.func"() ({
^bb0(%arg0: !llvm.ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, %arg1: !llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, %arg2: !llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>):
%0 = "llvm.mlir.constant"() {value = 0 : i32} : () -> i32
%1 = "llvm.mlir.constant"() {value = 3 : i64} : () -> i64
%2 = "llvm.mlir.constant"() {value = 2 : i64} : () -> i64
%3 = "llvm.mlir.constant"() {value = 3072 : index} : () -> i64
%4 = "llvm.mlir.constant"() {value = 63 : index} : () -> i64
%5 = "llvm.mlir.constant"() {value = 1 : i64} : () -> i64
%6 = "llvm.mlir.constant"() {value = 0 : i64} : () -> i64
%7 = "llvm.mlir.constant"() {value = 1 : index} : () -> i64
%8 = "llvm.mlir.constant"() {value = 2 : index} : () -> i64
%9 = "llvm.mlir.constant"() {value = 3 : index} : () -> i64
%10 = "llvm.mlir.constant"() {value = dense<0.000000e+00> : vector<4xf32>} : () -> vector<4xf32>
%11 = "llvm.mlir.constant"() {value = 4 : index} : () -> i64
%12 = "llvm.mlir.constant"() {value = 0 : index} : () -> i64
%13 = "llvm.mlir.constant"() {value = 768 : index} : () -> i64
%14 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%15 = "llvm.extractvalue"(%14) {position = array<i64: 9>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<i32>
%16 = "llvm.load"(%15) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%17 = "llvm.getelementptr"(%15) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<i32>) -> !llvm.ptr<i32>
%18 = "llvm.load"(%17) {ordering = 0 : i64} : (!llvm.ptr<i32>) -> i32
%19 = "llvm.zext"(%16) : (i32) -> i64
%20 = "llvm.zext"(%18) : (i32) -> i64
%21 = "llvm.extractvalue"(%14) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%22 = "llvm.load"(%21) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%23 = "llvm.getelementptr"(%22, %19) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i8>, i64) -> !llvm.ptr<i8>
%24 = "llvm.bitcast"(%23) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%25 = "llvm.ptrtoint"(%24) : (!llvm.ptr<f32>) -> i64
%26 = "llvm.and"(%25, %4) : (i64, i64) -> i64
%27 = "llvm.icmp"(%26, %12) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%27) : (i1) -> ()
%28 = "llvm.load"(%arg1) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>) -> !llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>
%29 = "llvm.extractvalue"(%28) {position = array<i64: 10>} : (!llvm.struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>) -> !llvm.ptr<ptr<i8>>
%30 = "llvm.getelementptr"(%29) {rawConstantIndices = array<i32: 1>} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<ptr<i8>>
%31 = "llvm.load"(%30) {ordering = 0 : i64} : (!llvm.ptr<ptr<i8>>) -> !llvm.ptr<i8>
%32 = "llvm.getelementptr"(%31, %20) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<i8>, i64) -> !llvm.ptr<i8>
%33 = "llvm.bitcast"(%32) : (!llvm.ptr<i8>) -> !llvm.ptr<f32>
%34 = "llvm.ptrtoint"(%33) : (!llvm.ptr<f32>) -> i64
%35 = "llvm.and"(%34, %4) : (i64, i64) -> i64
%36 = "llvm.icmp"(%35, %12) {predicate = 0 : i64} : (i64, i64) -> i1
"llvm.intr.assume"(%36) : (i1) -> ()
%37 = "llvm.load"(%arg2) {ordering = 0 : i64} : (!llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>) -> !llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>
%38 = "llvm.extractvalue"(%37) {position = array<i64: 0>} : (!llvm.struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>) -> i32
%39 = "llvm.zext"(%38) : (i32) -> i64
%40 = "llvm.mul"(%39, %11) : (i64, i64) -> i64
%41 = "llvm.mul"(%39, %3) : (i64, i64) -> i64
"llvm.br"(%12, %10)[^bb1] : (i64, vector<4xf32>) -> ()
^bb1(%42: i64, %43: vector<4xf32>): // 2 preds: ^bb0, ^bb2
%44 = "llvm.icmp"(%42, %13) {predicate = 2 : i64} : (i64, i64) -> i1
"llvm.cond_br"(%44)[^bb2, ^bb3] {operand_segment_sizes = array<i32: 1, 0, 0>} : (i1) -> ()
^bb2: // pred: ^bb1
%45 = "llvm.mul"(%12, %13) : (i64, i64) -> i64
%46 = "llvm.add"(%41, %45) : (i64, i64) -> i64
%47 = "llvm.add"(%46, %42) : (i64, i64) -> i64
%48 = "llvm.getelementptr"(%24, %47) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%49 = "llvm.bitcast"(%48) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%50 = "llvm.load"(%49) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%51 = "llvm.mul"(%7, %13) : (i64, i64) -> i64
%52 = "llvm.add"(%41, %51) : (i64, i64) -> i64
%53 = "llvm.add"(%52, %42) : (i64, i64) -> i64
%54 = "llvm.getelementptr"(%24, %53) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%55 = "llvm.bitcast"(%54) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%56 = "llvm.load"(%55) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%57 = "llvm.mul"(%8, %13) : (i64, i64) -> i64
%58 = "llvm.add"(%41, %57) : (i64, i64) -> i64
%59 = "llvm.add"(%58, %42) : (i64, i64) -> i64
%60 = "llvm.getelementptr"(%24, %59) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%61 = "llvm.bitcast"(%60) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%62 = "llvm.load"(%61) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%63 = "llvm.mul"(%9, %13) : (i64, i64) -> i64
%64 = "llvm.add"(%41, %63) : (i64, i64) -> i64
%65 = "llvm.add"(%64, %42) : (i64, i64) -> i64
%66 = "llvm.getelementptr"(%24, %65) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%67 = "llvm.bitcast"(%66) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
%68 = "llvm.load"(%67) {alignment = 4 : i64, ordering = 0 : i64} : (!llvm.ptr<vector<4xf32>>) -> vector<4xf32>
%69 = "llvm.extractelement"(%43, %6) : (vector<4xf32>, i64) -> f32
%70 = "llvm.fmul"(%50, %50) {fastmathFlags = #llvm.fastmath<none>} : (vector<4xf32>, vector<4xf32>) -> vector<4xf32>
%71 = "llvm.intr.vector.reduce.fadd"(%69, %70) {reassoc = false} : (f32, vector<4xf32>) -> f32
%72 = "llvm.insertelement"(%10, %71, %6) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%73 = "llvm.extractelement"(%43, %5) : (vector<4xf32>, i64) -> f32
%74 = "llvm.fmul"(%56, %56) {fastmathFlags = #llvm.fastmath<none>} : (vector<4xf32>, vector<4xf32>) -> vector<4xf32>
%75 = "llvm.intr.vector.reduce.fadd"(%73, %74) {reassoc = false} : (f32, vector<4xf32>) -> f32
%76 = "llvm.insertelement"(%72, %75, %5) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%77 = "llvm.extractelement"(%43, %2) : (vector<4xf32>, i64) -> f32
%78 = "llvm.fmul"(%62, %62) {fastmathFlags = #llvm.fastmath<none>} : (vector<4xf32>, vector<4xf32>) -> vector<4xf32>
%79 = "llvm.intr.vector.reduce.fadd"(%77, %78) {reassoc = false} : (f32, vector<4xf32>) -> f32
%80 = "llvm.insertelement"(%76, %79, %2) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%81 = "llvm.extractelement"(%43, %1) : (vector<4xf32>, i64) -> f32
%82 = "llvm.fmul"(%68, %68) {fastmathFlags = #llvm.fastmath<none>} : (vector<4xf32>, vector<4xf32>) -> vector<4xf32>
%83 = "llvm.intr.vector.reduce.fadd"(%81, %82) {reassoc = false} : (f32, vector<4xf32>) -> f32
%84 = "llvm.insertelement"(%80, %83, %1) : (vector<4xf32>, f32, i64) -> vector<4xf32>
%85 = "llvm.add"(%42, %11) : (i64, i64) -> i64
"llvm.br"(%85, %84)[^bb1] : (i64, vector<4xf32>) -> ()
^bb3: // pred: ^bb1
%86 = "llvm.add"(%40, %12) : (i64, i64) -> i64
%87 = "llvm.getelementptr"(%33, %86) {rawConstantIndices = array<i32: -2147483648>} : (!llvm.ptr<f32>, i64) -> !llvm.ptr<f32>
%88 = "llvm.bitcast"(%87) : (!llvm.ptr<f32>) -> !llvm.ptr<vector<4xf32>>
"llvm.store"(%43, %88) {alignment = 4 : i64, ordering = 0 : i64} : (vector<4xf32>, !llvm.ptr<vector<4xf32>>) -> ()
"llvm.return"(%0) : (i32) -> ()
}) {CConv = #llvm.cconv<ccc>, arg_attrs = [{llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}, {llvm.align = 16 : i64, llvm.noalias}], function_type = !llvm.func<i32 (ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>)>, linkage = #llvm.linkage<external>, sym_name = "encode_dispatch_4_generic_8x768"} : () -> ()
"llvm.func"() ({
^bb0(%arg0: !llvm.ptr<struct<"iree_hal_executable_environment_v0_t", (ptr<i32>, ptr<func<i32 (ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<i8>, ptr<i8>, ptr<i8>)>>, ptr<ptr<func<i32 (ptr<i8>, ptr<i8>, ptr<i8>)>>>, ptr<ptr<i8>>, struct<"iree_hal_processor_v0_t", (array<8 x i64>)>)>>, %arg1: !llvm.ptr<struct<"iree_hal_executable_dispatch_state_v0_t", (i32, i32, i16, i16, i32, i32, i16, i8, i8, ptr<i32>, ptr<ptr<i8>>, ptr<i64>)>>, %arg2: !llvm.ptr<struct<"iree_hal_executable_workgroup_state_v0_t", (i32, i32, i16, i16, i32, ptr<ptr<i8>>, i32)>>):
%0 = "llvm.mlir.constant"() {value = dense<1.000000e+00> : vector<4xf32>} : () -> vector<4xf32>
%1 = "llvm.mlir.constant"() {value = 0 : i32} : () -> i32
%2 = "llvm.mlir.constant"() {value = -1 : index} : () -> i64
%3 = "llvm.mlir.constant"() {value = 6144 : index} : () -> i64
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment