Skip to content

Instantly share code, notes, and snippets.

@AmosLewis
Last active October 11, 2024 03:02
Show Gist options
  • Save AmosLewis/799387dad9cd36db79a22d53d64f5eb5 to your computer and use it in GitHub Desktop.
Save AmosLewis/799387dad9cd36db79a22d53d64f5eb5 to your computer and use it in GitHub Desktop.
model--long-t5-tglobal-base-16384-book-summary--pszemraj
This file has been truncated, but you can view the full file.
<unknown>:0: error: failed to legalize unresolved materialization from ('i64') to 'index' that remained live after conversion
<unknown>:0: note: see current operation: %452 = "builtin.unrealized_conversion_cast"(%451) : (i64) -> index
/proj/gdba/shark/chi/src/SHARK-TestSuite/alt_e2eshark/test-run/model--long-t5-tglobal-base-16384-book-summary--pszemraj/model.modified.mlir:1299:12: note: see existing live user here: %2529 = hal.interface.binding.subspan layout(<constants = 20, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>) binding(0) alignment(64) offset(%3) flags("ReadOnly|Indirect") : memref<i64, strided<[], offset: 24>>
%360 = linalg.generic {indexing_maps = [#map12, #map12, #map12, #map12], iterator_types = []} ins(%357, %358, %359 : tensor<i1>, tensor<i64>, tensor<i64>) outs(%94 : tensor<i64>) {
^
/proj/gdba/shark/chi/src/SHARK-TestSuite/alt_e2eshark/test-run/model--long-t5-tglobal-base-16384-book-summary--pszemraj/model.modified.mlir:48:1: error: conversion to vm.module failed
module {
^
/proj/gdba/shark/chi/src/SHARK-TestSuite/alt_e2eshark/test-run/model--long-t5-tglobal-base-16384-book-summary--pszemraj/model.modified.mlir:48:1: note: see current operation:
"builtin.module"() ({
"vm.module"() <{sym_name = "module"}> ({
"vm.global.ref"() <{sym_name = "__device_0", sym_visibility = "private", type = !vm.ref<!hal.device>}> : () -> ()
"vm.initializer"() <{function_type = () -> ()}> ({
%39087 = "vm.const.i64"() <{value = 448 : i64}> : () -> i64
%39088 = "vm.const.i64"() <{value = 56 : i64}> : () -> i64
%39089 = "vm.const.i64"() <{value = 384 : i64}> : () -> i64
%39090 = "vm.const.i64"() <{value = 48 : i64}> : () -> i64
%39091 = "vm.const.i64"() <{value = 320 : i64}> : () -> i64
%39092 = "vm.const.i64"() <{value = 40 : i64}> : () -> i64
%39093 = "vm.const.i64"() <{value = 256 : i64}> : () -> i64
%39094 = "vm.const.i64"() <{value = 192 : i64}> : () -> i64
%39095 = "vm.const.i64"() <{value = 16 : i64}> : () -> i64
%39096 = "vm.const.i64"() <{value = 128 : i64}> : () -> i64
%39097 = "vm.const.i64"() <{value = 2 : i64}> : () -> i64
%39098 = "vm.const.i64"() <{value = 32 : i64}> : () -> i64
%39099 = "vm.const.i64"() <{value = 8 : i64}> : () -> i64
%39100 = "vm.const.i64"() <{value = 24 : i64}> : () -> i64
%39101 = "vm.const.i32.zero"() : () -> i32
%39102 = "vm.const.i64"() <{value = 64 : i64}> : () -> i64
%39103 = "vm.const.i64"() <{value = 3 : i64}> : () -> i64
%39104 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%39105 = "vm.const.i64"() <{value = 27 : i64}> : () -> i64
%39106 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.fence>
%39107 = "vm.const.i64"() <{value = 990792192 : i64}> : () -> i64
%39108 = "vm.const.i64.zero"() : () -> i64
%39109 = "vm.const.i64"() <{value = -1 : i64}> : () -> i64
%39110 = "vm.const.i32.zero"() : () -> i32
%39111 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.executable>
%39112 = "vm.const.i32"() <{value = 14 : i32}> : () -> i32
%39113 = "vm.const.i64"() <{value = -1 : i64}> : () -> i64
%39114 = "vm.const.i32"() <{value = 5 : i32}> : () -> i32
%39115 = "vm.const.i32.zero"() : () -> i32
%39116 = "vm.const.i64.zero"() : () -> i64
%39117 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%39118 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.device>
%39119 = "vm.call"() <{callee = @hal.devices.count}> {nosideeffects} : () -> i32
%39120 = "vm.ext.i32.i64.s"(%39119) : (i32) -> i64
"vm.br"(%39116, %39116, %39118)[^bb1] : (i64, i64, !vm.ref<!hal.device>) -> ()
^bb1(%39121: i64, %39122: i64, %39123: !vm.ref<!hal.device>): // 2 preds: ^bb0, ^bb4
%39124 = "vm.cmp.eq.ref"(%39123, %39118) : (!vm.ref<!hal.device>, !vm.ref<!hal.device>) -> i32
%39125 = "vm.cmp.lt.i64.s"(%39121, %39120) : (i64, i64) -> i32
%39126 = "vm.and.i32"(%39124, %39125) : (i32, i32) -> i32
"vm.cond_br"(%39126)[^bb2, ^bb5] <{operandSegmentSizes = array<i32: 1, 0, 0>}> : (i32) -> ()
^bb2: // pred: ^bb1
%39127 = "vm.trunc.i64.i32"(%39121) : (i64) -> i32
%39128 = "vm.call"(%39127) <{callee = @hal.devices.get}> {nosideeffects} : (i32) -> !vm.ref<!hal.device>
%39129 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_hal_device_id_B712B11DFBBA4192", value = "hal.device.id"}> : () -> !vm.buffer
%39130 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_local_2A2D625B13FCEAA1", value = "local*"}> : () -> !vm.buffer
%39131:2 = "vm.call"(%39128, %39129, %39130) <{callee = @hal.device.query.i64}> {nosideeffects} : (!vm.ref<!hal.device>, !vm.buffer, !vm.buffer) -> (i32, i64)
%39132 = "vm.cmp.nz.i64"(%39131#1) : (i64) -> i32
%39133 = "vm.const.i32.zero"() : () -> i32
%39134 = "vm.select.i32"(%39131#0, %39132, %39133) : (i32, i32, i32) -> i32
%39135 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
"vm.cond_br"(%39134, %39115)[^bb3, ^bb4] <{operandSegmentSizes = array<i32: 1, 0, 1>}> : (i32, i32) -> ()
^bb3: // pred: ^bb2
%39136 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_hal_executable_format_47A447DA9D51AC66", value = "hal.executable.format"}> : () -> !vm.buffer
%39137 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_embedded_elf_x86_64_F7A9DB431EC95E82", value = "embedded-elf-x86_64"}> : () -> !vm.buffer
%39138:2 = "vm.call"(%39128, %39136, %39137) <{callee = @hal.device.query.i64}> {nosideeffects} : (!vm.ref<!hal.device>, !vm.buffer, !vm.buffer) -> (i32, i64)
%39139 = "vm.cmp.nz.i64"(%39138#1) : (i64) -> i32
%39140 = "vm.const.i32.zero"() : () -> i32
%39141 = "vm.select.i32"(%39138#0, %39139, %39140) : (i32, i32, i32) -> i32
%39142 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
"vm.br"(%39141)[^bb4] : (i32) -> ()
^bb4(%39143: i32): // 2 preds: ^bb2, ^bb3
%39144 = "vm.cmp.eq.i64"(%39122, %39116) : (i64, i64) -> i32
%39145 = "vm.select.i64"(%39143, %39117, %39116) : (i32, i64, i64) -> i64
%39146 = "vm.add.i64"(%39122, %39145) : (i64, i64) -> i64
%39147 = "vm.and.i32"(%39143, %39144) : (i32, i32) -> i32
%39148 = "vm.select.ref"(%39147, %39128, %39118) : (i32, !vm.ref<!hal.device>, !vm.ref<!hal.device>) -> !vm.ref<!hal.device>
%39149 = "vm.add.i64"(%39121, %39117) : (i64, i64) -> i64
"vm.br"(%39149, %39146, %39148)[^bb1] : (i64, i64, !vm.ref<!hal.device>) -> ()
^bb5: // pred: ^bb1
"vm.cond_br"(%39124)[^bb6, ^bb7] <{operandSegmentSizes = array<i32: 1, 0, 0>}> : (i32) -> ()
^bb6: // pred: ^bb5
"vm.cond_fail"(%39114, %39114) <{message = "HAL device `__device_0` not found or unavailable: #hal.device.target<\22local\22, [#hal.executable.target<\22llvm-cpu\22, \22embedded-elf-x86_64\22, {cpu = \22generic\22, cpu_features = \22\22, data_layout = \22e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128\22, native_vector_size = 16 : i64, target_triple = \22x86_64-unknown-unknown-eabi-elf\22}>]>"}> : (i32, i32) -> ()
"vm.br"()[^bb7] : () -> ()
^bb7: // 2 preds: ^bb5, ^bb6
%39150 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_hal_executable_format_47A447DA9D51AC66", value = "hal.executable.format"}> : () -> !vm.buffer
%39151 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_embedded_elf_x86_64_F7A9DB431EC95E82", value = "embedded-elf-x86_64"}> : () -> !vm.buffer
%39152:2 = "vm.call"(%39123, %39150, %39151) <{callee = @hal.device.query.i64}> {nosideeffects} : (!vm.ref<!hal.device>, !vm.buffer, !vm.buffer) -> (i32, i64)
%39153 = "vm.cmp.nz.i64"(%39152#1) : (i64) -> i32
%39154 = "vm.const.i32.zero"() : () -> i32
%39155 = "vm.select.i32"(%39152#0, %39153, %39154) : (i32, i32, i32) -> i32
%39156 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39157 = "vm.select.i64"(%39155, %39116, %39113) : (i32, i64, i64) -> i64
%39158 = "vm.cmp.eq.i64"(%39157, %39116) : (i64, i64) -> i32
"vm.global.store.ref"(%39123) <{global = @__device_0}> : (!vm.ref<!hal.device>) -> ()
"vm.cond_br"(%39158)[^bb8, ^bb9] <{operandSegmentSizes = array<i32: 1, 0, 0>}> : (i32) -> ()
^bb8: // pred: ^bb7
%39159 = "vm.rodata.inline"() <{alignment = 16 : i64, mime_type = "application/x-elf", name = "model_modified_linked_llvm_cpu_embedded_elf_x86_64", value = dense_resource<__elided__> : vector<339608xi8>}> : () -> !vm.buffer
%39160 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_embedded_elf_x86_64_F7A9DB431EC95E82", value = "embedded-elf-x86_64"}> : () -> !vm.buffer
%39161 = "vm.const.ref.zero"() : () -> !vm.buffer
%39162 = "vm.call"(%39123, %39160, %39159, %39161) <{callee = @hal.executable.create}> {nosideeffects} : (!vm.ref<!hal.device>, !vm.buffer, !vm.buffer, !vm.buffer) -> !vm.ref<!hal.executable>
"vm.br"(%39162)[^bb10] : (!vm.ref<!hal.executable>) -> ()
^bb9: // pred: ^bb7
"vm.cond_fail"(%39112, %39112) <{message = "HAL device `__device_0` does not support any variant of executable `model_modified_linked_llvm_cpu`; available formats: [embedded-elf-x86_64]"}> : (i32, i32) -> ()
"vm.br"(%39111)[^bb10] : (!vm.ref<!hal.executable>) -> ()
^bb10(%39163: !vm.ref<!hal.executable>): // 2 preds: ^bb8, ^bb9
%39164 = "vm.global.load.ref"() <{global = @__device_0, is_immutable}> : () -> !vm.ref<!hal.device>
%39165 = "vm.rodata.inline"() <{alignment = 64 : i64, value = #util.composite<990792192xi8, [
dense_resource<__elided__> : tensor<128x384xi64>,
dense_resource<__elided__> : tensor<768x32128xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<2048x768xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x2048xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768x768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<32x12xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<768xf32>,
dense_resource<__elided__> : tensor<32x12xf32>,
dense_resource<__elided__> : tensor<32x12xf32>,
dense_resource<__elided__> : tensor<32128x768xf32>,
dense_resource<__elided__> : tensor<128x384xi8>,
]>}> : () -> !vm.buffer
%39166 = "vm.call"(%39164) <{callee = @hal.device.allocator}> {nosideeffects} : (!vm.ref<!hal.device>) -> !vm.ref<!hal.allocator>
%39167 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39168 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%39169 = "vm.const.i32"() <{value = 527363 : i32}> : () -> i32
%39170 = "vm.call"(%39166, %39167, %39109, %39168, %39169, %39165, %39116, %39107) <{callee = @hal.allocator.import}> : (!vm.ref<!hal.allocator>, i32, i64, i32, i32, !vm.buffer, i64, i64) -> !vm.ref<!hal.buffer>
%39171 = "vm.cmp.nz.ref"(%39170) : (!vm.ref<!hal.buffer>) -> i32
"vm.global.store.ref"(%39163) <{global = @__device_0_executable_0_model_modified_linked_llvm_cpu}> : (!vm.ref<!hal.executable>) -> ()
"vm.cond_br"(%39171, %39106, %39170)[^bb12, ^bb11] <{operandSegmentSizes = array<i32: 1, 2, 0>}> : (i32, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
^bb11: // pred: ^bb10
%39172 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%39173 = "vm.const.i32"() <{value = 527363 : i32}> : () -> i32
%39174 = "vm.call"(%39166, %39109, %39172, %39173, %39107) <{callee = @hal.allocator.allocate}> : (!vm.ref<!hal.allocator>, i64, i32, i32, i64) -> !vm.ref<!hal.buffer>
%39175 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39176 = "vm.call"(%39164, %39109, %39175, %39165, %39116, %39107, %39110) <{callee = @hal.ex.file.from_memory}> : (!vm.ref<!hal.device>, i64, i32, !vm.buffer, i64, i64, i32) -> !vm.ref<!hal.file>
%39177 = "vm.const.i32.zero"() : () -> i32
%39178 = "vm.call"(%39164, %39177) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%39179 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39164, %39109, %39106, %39178, %39176, %39108, %39174, %39116, %39107, %39179) <{callee = @hal.device.queue.read}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.file>, i64, !vm.ref<!hal.buffer>, i64, i64, i32) -> ()
"vm.br"(%39178, %39174)[^bb12] : (!vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
^bb12(%39180: !vm.ref<!hal.fence>, %39181: !vm.ref<!hal.buffer>): // 2 preds: ^bb10, ^bb11
%39182 = "vm.global.load.ref"() <{global = @__device_0_executable_0_model_modified_linked_llvm_cpu, is_immutable}> : () -> !vm.ref<!hal.executable>
%39183 = "vm.const.i32.zero"() : () -> i32
%39184 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39185 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%39186 = "vm.call"(%39164, %39183, %39184, %39109, %39185) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%39187 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39188 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39189 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39190 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39188, %39116, %39102, %39187, %39190, %39189) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%39191 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39192 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39193 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39191, %39192, %39193) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39194 = "vm.const.i32.zero"() : () -> i32
%39195 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39196 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39197 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39194, %39196, %39195, %39116, %39197, %39100, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39198 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39199 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39200 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39201 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39199, %39098, %39098, %39198, %39201, %39200) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%39202 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39203 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39204 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39202, %39203, %39204) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39205 = "vm.const.i32.zero"() : () -> i32
%39206 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%39207 = "vm.const.i32"() <{value = 27 : i32}> : () -> i32
%39208 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39209 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39210 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39211 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39212 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39213 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39214 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call.variadic"(%39186, %39182, %39207, %39208, %39209, %39210, %39206, %39205, %39211, %39212, %39116, %39096, %39205, %39213, %39214, %39116, %39102) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 0, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39215 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39216 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39217 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39215, %39216, %39217) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39218 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39219 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39220 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39221 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39218, %39220, %39219, %39116, %39221, %39116, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39222 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39223 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39224 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39222, %39223, %39224) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39225 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39226 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39227 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39228 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39225, %39227, %39226, %39116, %39228, %39116, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39229 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39230 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39231 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39232 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39229, %39231, %39230, %39099, %39232, %39102, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39233 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39234 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39235 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39233, %39234, %39235) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39236 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39237 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39238 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39239 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39236, %39238, %39237, %39102, %39239, %39102, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39240 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39241 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39242 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39243 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39240, %39242, %39241, %39095, %39243, %39116, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39244 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39245 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39246 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39244, %39245, %39246) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39247 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39248 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39249 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39250 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39247, %39249, %39248, %39116, %39250, %39096, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39251 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39252 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39253 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39254 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39251, %39253, %39252, %39100, %39254, %39102, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39255 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39256 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39257 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39255, %39256, %39257) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39258 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39259 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39260 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39261 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39258, %39260, %39259, %39102, %39261, %39094, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39262 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39263 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39264 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39265 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39262, %39264, %39263, %39098, %39265, %39116, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39266 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39267 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39268 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39266, %39267, %39268) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39269 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39270 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39271 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39272 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39269, %39271, %39270, %39116, %39272, %39093, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39273 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39274 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39275 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39276 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39273, %39275, %39274, %39092, %39276, %39102, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39277 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39278 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39279 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39277, %39278, %39279) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39280 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39281 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39282 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39283 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39280, %39282, %39281, %39102, %39283, %39091, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39284 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39285 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39286 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39287 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39284, %39286, %39285, %39090, %39287, %39116, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39288 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39289 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39290 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39288, %39289, %39290) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39291 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39292 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39293 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39294 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39291, %39293, %39292, %39116, %39294, %39089, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39295 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%39296 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39297 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39298 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39295, %39297, %39296, %39088, %39298, %39102, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39299 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39300 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39301 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39299, %39300, %39301) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%39302 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%39303 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
%39304 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%39305 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.buffer>
"vm.call"(%39186, %39302, %39304, %39303, %39102, %39305, %39087, %39099) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%39306 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%39307 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%39308 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%39186, %39306, %39307, %39308) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%39186) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
"vm.global.store.ref"(%39181) <{global = @__constant_tensor_128x384xi64}> : (!vm.ref<!hal.buffer>) -> ()
"vm.global.store.ref"(%39180) <{global = @__constant_tensor_128x384xi64__timepoint}> : (!vm.ref<!hal.fence>) -> ()
"vm.global.store.ref"(%39186) <{global = @__main_graph_memoize_result_0_device_0}> : (!vm.ref<!hal.command_buffer>) -> ()
"vm.return"() : () -> ()
}) : () -> ()
"vm.global.ref"() <{sym_name = "__device_0_executable_0_model_modified_linked_llvm_cpu", sym_visibility = "private", type = !vm.ref<!hal.executable>}> : () -> ()
"vm.global.ref"() <{sym_name = "__constant_tensor_128x384xi64__timepoint", sym_visibility = "private", type = !vm.ref<!hal.fence>}> : () -> ()
"vm.global.ref"() <{sym_name = "__constant_tensor_128x384xi64", sym_visibility = "private", type = !vm.ref<!hal.buffer>}> : () -> ()
"vm.global.ref"() <{sym_name = "__main_graph_memoize_result_0_device_0", sym_visibility = "private", type = !vm.ref<!hal.command_buffer>}> : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "access"}, {vm.name = "buffer"}, {vm.name = "offset"}, {vm.name = "length"}, {vm.name = "flags"}], function_type = (!vm.ref<!hal.device>, i64, i32, !vm.buffer, i64, i64, i32) -> !vm.ref<!hal.file>, sym_name = "hal.ex.file.from_memory", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "allocator"}, {vm.name = "queue_affinity"}, {vm.name = "memory_types"}, {vm.name = "buffer_usage"}, {vm.name = "allocation_size"}], function_type = (!vm.ref<!hal.allocator>, i64, i32, i32, i64) -> !vm.ref<!hal.buffer>, sym_name = "hal.allocator.allocate", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "allocator"}, {vm.name = "try"}, {vm.name = "queue_affinity"}, {vm.name = "memory_types"}, {vm.name = "buffer_usage"}, {vm.name = "source"}, {vm.name = "offset"}, {vm.name = "length"}], function_type = (!vm.ref<!hal.allocator>, i32, i64, i32, i32, !vm.buffer, i64, i64) -> !vm.ref<!hal.buffer>, sym_name = "hal.allocator.import", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer"}, {vm.name = "message"}, {vm.name = "allocator"}, {vm.name = "minimum_length"}, {vm.name = "memory_types"}, {vm.name = "buffer_usage"}], function_type = (!vm.ref<!hal.buffer>, !vm.buffer, !vm.ref<!hal.allocator>, i64, i32, i32) -> (), sym_name = "hal.buffer.assert", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "source_buffer"}, {vm.name = "source_offset"}, {vm.name = "length"}], function_type = (!vm.ref<!hal.buffer>, i64, i64) -> !vm.ref<!hal.buffer>, sym_name = "hal.buffer.subspan", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer"}], function_type = (!vm.ref<!hal.buffer>) -> i64, sym_name = "hal.buffer.length", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "source_buffer"}, {vm.name = "source_offset"}, {vm.name = "length"}], function_type = (!vm.ref<!hal.buffer>, i64, i32) -> i32, sym_name = "hal.buffer.load", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "value"}, {vm.name = "target_buffer"}, {vm.name = "target_offset"}, {vm.name = "length"}], function_type = (i32, !vm.ref<!hal.buffer>, i64, i32) -> (), sym_name = "hal.buffer.store", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer"}, {vm.name = "source_offset"}, {vm.name = "source_length"}, {vm.name = "element_type"}, {vm.name = "encoding_type"}, {vm.name = "shape", vm.variadic}], function_type = (!vm.ref<!hal.buffer>, i64, i64, i32, i32, i64) -> !vm.ref<!hal.buffer_view>, sym_name = "hal.buffer_view.create", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer_view"}, {vm.name = "message"}, {vm.name = "element_type"}, {vm.name = "encoding_type"}, {vm.name = "shape", vm.variadic}], function_type = (!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64) -> (), sym_name = "hal.buffer_view.assert", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer_view"}], function_type = (!vm.ref<!hal.buffer_view>) -> !vm.ref<!hal.buffer>, sym_name = "hal.buffer_view.buffer", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer_view"}], function_type = (!vm.ref<!hal.buffer_view>) -> i32, sym_name = "hal.buffer_view.element_type", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer_view"}], function_type = (!vm.ref<!hal.buffer_view>) -> i32, sym_name = "hal.buffer_view.encoding_type", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer_view"}], function_type = (!vm.ref<!hal.buffer_view>) -> i32, sym_name = "hal.buffer_view.rank", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "buffer_view"}, {vm.name = "index"}], function_type = (!vm.ref<!hal.buffer_view>, i32) -> i64, sym_name = "hal.buffer_view.dim", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "key"}, {vm.name = "operands", vm.variadic}], function_type = (!vm.buffer, !vm.ref<!hal.buffer_view>) -> (), sym_name = "hal.buffer_view.trace", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "flags"}, {vm.name = "id"}, {vm.name = "group"}, {vm.name = "rank"}, {vm.name = "count"}], function_type = (!vm.ref<!hal.device>, i64, i32, !vm.buffer, !vm.buffer, i32, i32) -> !vm.ref<!hal.channel>, sym_name = "hal.channel.create", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "channel"}, {vm.name = "color"}, {vm.name = "key"}, {vm.name = "flags"}], function_type = (!vm.ref<!hal.channel>, i32, i32, i32) -> !vm.ref<!hal.channel>, sym_name = "hal.channel.split", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "channel"}], function_type = (!vm.ref<!hal.channel>) -> (i32, i32), sym_name = "hal.channel.rank_and_count", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "modes"}, {vm.name = "command_categories"}, {vm.name = "queue_affinity"}, {vm.name = "binding_capacity"}], function_type = (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>, minimum_version = 5 : i32, sym_name = "hal.command_buffer.create", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}], function_type = (!vm.ref<!hal.command_buffer>) -> (), sym_name = "hal.command_buffer.finalize", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "label"}], function_type = (!vm.ref<!hal.command_buffer>, !vm.buffer) -> (), sym_name = "hal.command_buffer.begin_debug_group", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}], function_type = (!vm.ref<!hal.command_buffer>) -> (), sym_name = "hal.command_buffer.end_debug_group", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "source_stage_mask"}, {vm.name = "target_stage_mask"}, {vm.name = "flags"}], function_type = (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> (), sym_name = "hal.command_buffer.execution_barrier", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "target_buffer"}, {vm.name = "target_offset"}, {vm.name = "length"}, {vm.name = "target_buffer_slot"}, {vm.name = "pattern"}, {vm.name = "pattern_length"}], function_type = (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> (), sym_name = "hal.command_buffer.fill_buffer", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "source_buffer"}, {vm.name = "source_offset"}, {vm.name = "target_buffer"}, {vm.name = "target_offset"}, {vm.name = "length"}, {vm.name = "target_buffer_slot"}], function_type = (!vm.ref<!hal.command_buffer>, !vm.buffer, i64, !vm.ref<!hal.buffer>, i64, i64, i32) -> (), sym_name = "hal.command_buffer.update_buffer", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "source_buffer_slot"}, {vm.name = "target_buffer_slot"}, {vm.name = "source_buffer"}, {vm.name = "source_offset"}, {vm.name = "target_buffer"}, {vm.name = "target_offset"}, {vm.name = "length"}], function_type = (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> (), sym_name = "hal.command_buffer.copy_buffer", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "channel"}, {vm.name = "op"}, {vm.name = "param"}, {vm.name = "send_buffer_slot"}, {vm.name = "recv_buffer_slot"}, {vm.name = "send_buffer"}, {vm.name = "recv_buffer"}, {vm.name = "send_offset"}, {vm.name = "send_length"}, {vm.name = "recv_offset"}, {vm.name = "recv_length"}, {vm.name = "element_count"}], function_type = (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.channel>, i32, i32, i32, i32, !vm.ref<!hal.buffer>, !vm.ref<!hal.buffer>, i64, i64, i64, i64, i64) -> (), sym_name = "hal.command_buffer.collective", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "executable"}, {vm.name = "entry_point"}, {vm.name = "workgroup_x"}, {vm.name = "workgroup_y"}, {vm.name = "workgroup_z"}, {vm.name = "flags"}, {vm.name = "constants", vm.variadic}, {vm.name = "bindings", vm.variadic}], function_type = (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>) -> (), sym_name = "hal.command_buffer.dispatch", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "command_buffer"}, {vm.name = "executable"}, {vm.name = "entry_point"}, {vm.name = "workgroups_buffer_slot"}, {vm.name = "workgroups_buffer"}, {vm.name = "workgroups_offset"}, {vm.name = "flags"}, {vm.name = "constants", vm.variadic}, {vm.name = "bindings", vm.variadic}], function_type = (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>) -> (), sym_name = "hal.command_buffer.dispatch.indirect", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}], function_type = (!vm.ref<!hal.device>) -> !vm.ref<!hal.allocator>, sym_name = "hal.device.allocator", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "category"}, {vm.name = "key"}], function_type = (!vm.ref<!hal.device>, !vm.buffer, !vm.buffer) -> (i32, i64), sym_name = "hal.device.query.i64", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "wait_fence"}, {vm.name = "signal_fence"}, {vm.name = "pool"}, {vm.name = "memory_types"}, {vm.name = "buffer_usage"}, {vm.name = "allocation_size"}], function_type = (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>, sym_name = "hal.device.queue.alloca", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "wait_fence"}, {vm.name = "signal_fence"}, {vm.name = "buffer"}], function_type = (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> (), sym_name = "hal.device.queue.dealloca", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "wait_fence"}, {vm.name = "signal_fence"}, {vm.name = "source_file"}, {vm.name = "source_offset"}, {vm.name = "target_buffer"}, {vm.name = "target_offset"}, {vm.name = "length"}, {vm.name = "flags"}], function_type = (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.file>, i64, !vm.ref<!hal.buffer>, i64, i64, i32) -> (), sym_name = "hal.device.queue.read", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "wait_fence"}, {vm.name = "signal_fence"}, {vm.name = "source_buffer"}, {vm.name = "source_offset"}, {vm.name = "target_file"}, {vm.name = "target_offset"}, {vm.name = "length"}, {vm.name = "flags"}], function_type = (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.file>, i64, i64, i32) -> (), sym_name = "hal.device.queue.write", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "wait_fence"}, {vm.name = "signal_fence"}, {vm.name = "command_buffers", vm.variadic}], function_type = (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> (), sym_name = "hal.device.queue.execute", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}, {vm.name = "wait_fence"}, {vm.name = "signal_fence"}, {vm.name = "command_buffer"}, {vm.name = "binding_table", vm.variadic}], function_type = (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>, tuple<!vm.ref<!hal.buffer>, i64, i64>) -> (), sym_name = "hal.device.queue.execute.indirect", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "queue_affinity"}], function_type = (!vm.ref<!hal.device>, i64) -> (), sym_name = "hal.device.queue.flush", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{function_type = () -> i32, sym_name = "hal.devices.count", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "index"}], function_type = (i32) -> !vm.ref<!hal.device>, sym_name = "hal.devices.get", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "executable_format"}, {vm.name = "executable_data"}, {vm.name = "constants"}], function_type = (!vm.ref<!hal.device>, !vm.buffer, !vm.buffer, !vm.buffer) -> !vm.ref<!hal.executable>, sym_name = "hal.executable.create", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "device"}, {vm.name = "flags"}], function_type = (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>, sym_name = "hal.fence.create", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "fences", vm.variadic}], function_type = (!vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>, sym_name = "hal.fence.join", sym_visibility = "private"}> ({
}) {nosideeffects} : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "fence"}], function_type = (!vm.ref<!hal.fence>) -> i32, sym_name = "hal.fence.query", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "fence"}], function_type = (!vm.ref<!hal.fence>) -> (), sym_name = "hal.fence.signal", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "fence"}, {vm.name = "status"}], function_type = (!vm.ref<!hal.fence>, i32) -> (), sym_name = "hal.fence.fail", sym_visibility = "private"}> ({
}) : () -> ()
"vm.import"() <{arg_attrs = [{vm.name = "timeout_millis"}, {vm.name = "fences", vm.variadic}], function_type = (i32, !vm.ref<!hal.fence>) -> i32, sym_name = "hal.fence.await", sym_visibility = "private"}> ({
}) {vm.yield} : () -> ()
"vm.func"() <{function_type = (!vm.ref<!hal.buffer_view>, !vm.ref<!hal.buffer_view>, !vm.ref<!hal.buffer_view>) -> !vm.ref<!hal.buffer_view>}> ({
^bb0(%arg0: !vm.ref<!hal.buffer_view>, %arg1: !vm.ref<!hal.buffer_view>, %arg2: !vm.ref<!hal.buffer_view>):
%0 = "vm.const.i64"() <{value = 125 : i64}> : () -> i64
%1 = "vm.const.i64"() <{value = 124 : i64}> : () -> i64
%2 = "vm.const.i64"() <{value = 123 : i64}> : () -> i64
%3 = "vm.const.i64"() <{value = 122 : i64}> : () -> i64
%4 = "vm.const.i64"() <{value = 121 : i64}> : () -> i64
%5 = "vm.const.i64"() <{value = 120 : i64}> : () -> i64
%6 = "vm.const.i64"() <{value = 119 : i64}> : () -> i64
%7 = "vm.const.i64"() <{value = 117 : i64}> : () -> i64
%8 = "vm.const.i64"() <{value = 116 : i64}> : () -> i64
%9 = "vm.const.i64"() <{value = 93 : i64}> : () -> i64
%10 = "vm.const.i64"() <{value = 92 : i64}> : () -> i64
%11 = "vm.const.i64"() <{value = 91 : i64}> : () -> i64
%12 = "vm.const.i64"() <{value = 90 : i64}> : () -> i64
%13 = "vm.const.i64"() <{value = 89 : i64}> : () -> i64
%14 = "vm.const.i64"() <{value = 87 : i64}> : () -> i64
%15 = "vm.const.i64"() <{value = 86 : i64}> : () -> i64
%16 = "vm.const.i64"() <{value = 85 : i64}> : () -> i64
%17 = "vm.const.i64"() <{value = 83 : i64}> : () -> i64
%18 = "vm.const.i64"() <{value = 82 : i64}> : () -> i64
%19 = "vm.const.i64"() <{value = 81 : i64}> : () -> i64
%20 = "vm.const.i64"() <{value = 79 : i64}> : () -> i64
%21 = "vm.const.i64"() <{value = 78 : i64}> : () -> i64
%22 = "vm.const.i64"() <{value = 77 : i64}> : () -> i64
%23 = "vm.const.i64"() <{value = 76 : i64}> : () -> i64
%24 = "vm.const.i64"() <{value = 75 : i64}> : () -> i64
%25 = "vm.const.i64"() <{value = 74 : i64}> : () -> i64
%26 = "vm.const.i64"() <{value = 73 : i64}> : () -> i64
%27 = "vm.const.i64"() <{value = 71 : i64}> : () -> i64
%28 = "vm.const.i64"() <{value = 70 : i64}> : () -> i64
%29 = "vm.const.i64"() <{value = 69 : i64}> : () -> i64
%30 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%31 = "vm.const.i64"() <{value = 67 : i64}> : () -> i64
%32 = "vm.const.i64"() <{value = 66 : i64}> : () -> i64
%33 = "vm.const.i64"() <{value = 65 : i64}> : () -> i64
%34 = "vm.const.i64"() <{value = 62 : i64}> : () -> i64
%35 = "vm.const.i64"() <{value = 61 : i64}> : () -> i64
%36 = "vm.const.i64"() <{value = 60 : i64}> : () -> i64
%37 = "vm.const.i64"() <{value = 59 : i64}> : () -> i64
%38 = "vm.const.i64"() <{value = 58 : i64}> : () -> i64
%39 = "vm.const.i64"() <{value = 57 : i64}> : () -> i64
%40 = "vm.const.i64"() <{value = 54 : i64}> : () -> i64
%41 = "vm.const.i64"() <{value = 55 : i64}> : () -> i64
%42 = "vm.const.i64"() <{value = 53 : i64}> : () -> i64
%43 = "vm.const.i64"() <{value = 52 : i64}> : () -> i64
%44 = "vm.const.i64"() <{value = 51 : i64}> : () -> i64
%45 = "vm.const.i64"() <{value = 50 : i64}> : () -> i64
%46 = "vm.const.i64"() <{value = 47 : i64}> : () -> i64
%47 = "vm.const.i64"() <{value = 46 : i64}> : () -> i64
%48 = "vm.const.i64"() <{value = 45 : i64}> : () -> i64
%49 = "vm.const.i64"() <{value = 44 : i64}> : () -> i64
%50 = "vm.const.i64"() <{value = 43 : i64}> : () -> i64
%51 = "vm.const.i64"() <{value = 42 : i64}> : () -> i64
%52 = "vm.const.i64"() <{value = 41 : i64}> : () -> i64
%53 = "vm.const.i64"() <{value = 39 : i64}> : () -> i64
%54 = "vm.const.i64"() <{value = 38 : i64}> : () -> i64
%55 = "vm.const.i64"() <{value = 37 : i64}> : () -> i64
%56 = "vm.const.i64"() <{value = 34 : i64}> : () -> i64
%57 = "vm.const.i64"() <{value = 36 : i64}> : () -> i64
%58 = "vm.const.i64"() <{value = 35 : i64}> : () -> i64
%59 = "vm.const.i64"() <{value = 33 : i64}> : () -> i64
%60 = "vm.const.i64"() <{value = 31 : i64}> : () -> i64
%61 = "vm.const.i64"() <{value = 30 : i64}> : () -> i64
%62 = "vm.const.i64"() <{value = 29 : i64}> : () -> i64
%63 = "vm.const.i64"() <{value = 28 : i64}> : () -> i64
%64 = "vm.const.i64"() <{value = 10 : i64}> : () -> i64
%65 = "vm.const.i64"() <{value = 118 : i64}> : () -> i64
%66 = "vm.const.i64"() <{value = 84 : i64}> : () -> i64
%67 = "vm.const.i64"() <{value = 115 : i64}> : () -> i64
%68 = "vm.const.i64"() <{value = 114 : i64}> : () -> i64
%69 = "vm.const.i64"() <{value = 113 : i64}> : () -> i64
%70 = "vm.const.i64"() <{value = 112 : i64}> : () -> i64
%71 = "vm.const.i64"() <{value = 111 : i64}> : () -> i64
%72 = "vm.const.i64"() <{value = 110 : i64}> : () -> i64
%73 = "vm.const.i64"() <{value = 109 : i64}> : () -> i64
%74 = "vm.const.i64"() <{value = 108 : i64}> : () -> i64
%75 = "vm.const.i64"() <{value = 107 : i64}> : () -> i64
%76 = "vm.const.i64"() <{value = 106 : i64}> : () -> i64
%77 = "vm.const.i64"() <{value = 105 : i64}> : () -> i64
%78 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%79 = "vm.const.i64"() <{value = 104 : i64}> : () -> i64
%80 = "vm.const.i64"() <{value = 103 : i64}> : () -> i64
%81 = "vm.const.i64"() <{value = 102 : i64}> : () -> i64
%82 = "vm.const.i64"() <{value = 101 : i64}> : () -> i64
%83 = "vm.const.i64"() <{value = 100 : i64}> : () -> i64
%84 = "vm.const.i64"() <{value = 99 : i64}> : () -> i64
%85 = "vm.const.i64"() <{value = 98 : i64}> : () -> i64
%86 = "vm.const.i64"() <{value = 97 : i64}> : () -> i64
%87 = "vm.const.i64"() <{value = 95 : i64}> : () -> i64
%88 = "vm.const.i64"() <{value = 94 : i64}> : () -> i64
%89 = "vm.const.i64"() <{value = 49 : i64}> : () -> i64
%90 = "vm.const.i64"() <{value = 27 : i64}> : () -> i64
%91 = "vm.const.i64"() <{value = 26 : i64}> : () -> i64
%92 = "vm.const.i64"() <{value = 25 : i64}> : () -> i64
%93 = "vm.const.i64"() <{value = 23 : i64}> : () -> i64
%94 = "vm.const.i64"() <{value = 22 : i64}> : () -> i64
%95 = "vm.const.i64"() <{value = 21 : i64}> : () -> i64
%96 = "vm.const.i64"() <{value = 20 : i64}> : () -> i64
%97 = "vm.const.i64"() <{value = 19 : i64}> : () -> i64
%98 = "vm.const.i64"() <{value = 18 : i64}> : () -> i64
%99 = "vm.const.i64"() <{value = 17 : i64}> : () -> i64
%100 = "vm.const.i64"() <{value = 15 : i64}> : () -> i64
%101 = "vm.const.i64"() <{value = 14 : i64}> : () -> i64
%102 = "vm.const.i64"() <{value = 13 : i64}> : () -> i64
%103 = "vm.const.i64"() <{value = 11 : i64}> : () -> i64
%104 = "vm.const.i64"() <{value = 9 : i64}> : () -> i64
%105 = "vm.const.i64"() <{value = 7 : i64}> : () -> i64
%106 = "vm.const.i64"() <{value = 5 : i64}> : () -> i64
%107 = "vm.const.i32"() <{value = 891813888 : i32}> : () -> i32
%108 = "vm.const.i32"() <{value = 99090432 : i32}> : () -> i32
%109 = "vm.const.i32"() <{value = 105381888 : i32}> : () -> i32
%110 = "vm.const.i32"() <{value = 111673344 : i32}> : () -> i32
%111 = "vm.const.i32"() <{value = 891816960 : i32}> : () -> i32
%112 = "vm.const.i32"() <{value = 117964800 : i32}> : () -> i32
%113 = "vm.const.i32"() <{value = 125042688 : i32}> : () -> i32
%114 = "vm.const.i32"() <{value = 891820032 : i32}> : () -> i32
%115 = "vm.const.i32"() <{value = 127401984 : i32}> : () -> i32
%116 = "vm.const.i32"() <{value = 129761280 : i32}> : () -> i32
%117 = "vm.const.i32"() <{value = 132120576 : i32}> : () -> i32
%118 = "vm.const.i32"() <{value = 134479872 : i32}> : () -> i32
%119 = "vm.const.i32"() <{value = 891823104 : i32}> : () -> i32
%120 = "vm.const.i32"() <{value = 136839168 : i32}> : () -> i32
%121 = "vm.const.i32"() <{value = 143130624 : i32}> : () -> i32
%122 = "vm.const.i32"() <{value = 149422080 : i32}> : () -> i32
%123 = "vm.const.i32"() <{value = 891826176 : i32}> : () -> i32
%124 = "vm.const.i32"() <{value = 155713536 : i32}> : () -> i32
%125 = "vm.const.i32"() <{value = 162791424 : i32}> : () -> i32
%126 = "vm.const.i32"() <{value = 891829248 : i32}> : () -> i32
%127 = "vm.const.i32"() <{value = 165150720 : i32}> : () -> i32
%128 = "vm.const.i32"() <{value = 167510016 : i32}> : () -> i32
%129 = "vm.const.i32"() <{value = 169869312 : i32}> : () -> i32
%130 = "vm.const.i32"() <{value = 172228608 : i32}> : () -> i32
%131 = "vm.const.i32"() <{value = 891832320 : i32}> : () -> i32
%132 = "vm.const.i32"() <{value = 174587904 : i32}> : () -> i32
%133 = "vm.const.i32"() <{value = 180879360 : i32}> : () -> i32
%134 = "vm.const.i32"() <{value = 187170816 : i32}> : () -> i32
%135 = "vm.const.i32"() <{value = 891835392 : i32}> : () -> i32
%136 = "vm.const.i32"() <{value = 193462272 : i32}> : () -> i32
%137 = "vm.const.i32"() <{value = 200540160 : i32}> : () -> i32
%138 = "vm.const.i32"() <{value = 891838464 : i32}> : () -> i32
%139 = "vm.const.i32"() <{value = 202899456 : i32}> : () -> i32
%140 = "vm.const.i32"() <{value = 205258752 : i32}> : () -> i32
%141 = "vm.const.i32"() <{value = 207618048 : i32}> : () -> i32
%142 = "vm.const.i32"() <{value = 209977344 : i32}> : () -> i32
%143 = "vm.const.i32"() <{value = 891841536 : i32}> : () -> i32
%144 = "vm.const.i32"() <{value = 212336640 : i32}> : () -> i32
%145 = "vm.const.i32"() <{value = 218628096 : i32}> : () -> i32
%146 = "vm.const.i32"() <{value = 224919552 : i32}> : () -> i32
%147 = "vm.const.i32"() <{value = 891844608 : i32}> : () -> i32
%148 = "vm.const.i32"() <{value = 231211008 : i32}> : () -> i32
%149 = "vm.const.i32"() <{value = 238288896 : i32}> : () -> i32
%150 = "vm.const.i32"() <{value = 891847680 : i32}> : () -> i32
%151 = "vm.const.i32"() <{value = 240648192 : i32}> : () -> i32
%152 = "vm.const.i32"() <{value = 243007488 : i32}> : () -> i32
%153 = "vm.const.i32"() <{value = 245366784 : i32}> : () -> i32
%154 = "vm.const.i32"() <{value = 247726080 : i32}> : () -> i32
%155 = "vm.const.i32"() <{value = 891850752 : i32}> : () -> i32
%156 = "vm.const.i32"() <{value = 250085376 : i32}> : () -> i32
%157 = "vm.const.i32"() <{value = 256376832 : i32}> : () -> i32
%158 = "vm.const.i32"() <{value = 262668288 : i32}> : () -> i32
%159 = "vm.const.i32"() <{value = 891853824 : i32}> : () -> i32
%160 = "vm.const.i32"() <{value = 268959744 : i32}> : () -> i32
%161 = "vm.const.i32"() <{value = 276037632 : i32}> : () -> i32
%162 = "vm.const.i32"() <{value = 891856896 : i32}> : () -> i32
%163 = "vm.const.i32"() <{value = 278396928 : i32}> : () -> i32
%164 = "vm.const.i32"() <{value = 280756224 : i32}> : () -> i32
%165 = "vm.const.i32"() <{value = 283115520 : i32}> : () -> i32
%166 = "vm.const.i32"() <{value = 285474816 : i32}> : () -> i32
%167 = "vm.const.i32"() <{value = 891859968 : i32}> : () -> i32
%168 = "vm.const.i32"() <{value = 287834112 : i32}> : () -> i32
%169 = "vm.const.i32"() <{value = 294125568 : i32}> : () -> i32
%170 = "vm.const.i32"() <{value = 300417024 : i32}> : () -> i32
%171 = "vm.const.i32"() <{value = 891863040 : i32}> : () -> i32
%172 = "vm.const.i32"() <{value = 306708480 : i32}> : () -> i32
%173 = "vm.const.i32"() <{value = 313786368 : i32}> : () -> i32
%174 = "vm.const.i32"() <{value = 891866112 : i32}> : () -> i32
%175 = "vm.const.i32"() <{value = 316145664 : i32}> : () -> i32
%176 = "vm.const.i32"() <{value = 318504960 : i32}> : () -> i32
%177 = "vm.const.i32"() <{value = 320864256 : i32}> : () -> i32
%178 = "vm.const.i32"() <{value = 323223552 : i32}> : () -> i32
%179 = "vm.const.i32"() <{value = 891869184 : i32}> : () -> i32
%180 = "vm.const.i32"() <{value = 325582848 : i32}> : () -> i32
%181 = "vm.const.i32"() <{value = 331874304 : i32}> : () -> i32
%182 = "vm.const.i32"() <{value = 338165760 : i32}> : () -> i32
%183 = "vm.const.i32"() <{value = 891872256 : i32}> : () -> i32
%184 = "vm.const.i32"() <{value = 344457216 : i32}> : () -> i32
%185 = "vm.const.i32"() <{value = 351535104 : i32}> : () -> i32
%186 = "vm.const.i32"() <{value = 891875328 : i32}> : () -> i32
%187 = "vm.const.i32"() <{value = 353894400 : i32}> : () -> i32
%188 = "vm.const.i32"() <{value = 356253696 : i32}> : () -> i32
%189 = "vm.const.i32"() <{value = 358612992 : i32}> : () -> i32
%190 = "vm.const.i32"() <{value = 360972288 : i32}> : () -> i32
%191 = "vm.const.i32"() <{value = 891878400 : i32}> : () -> i32
%192 = "vm.const.i32"() <{value = 363331584 : i32}> : () -> i32
%193 = "vm.const.i32"() <{value = 369623040 : i32}> : () -> i32
%194 = "vm.const.i32"() <{value = 375914496 : i32}> : () -> i32
%195 = "vm.const.i32"() <{value = 891881472 : i32}> : () -> i32
%196 = "vm.const.i32"() <{value = 382205952 : i32}> : () -> i32
%197 = "vm.const.i32"() <{value = 389283840 : i32}> : () -> i32
%198 = "vm.const.i32"() <{value = 891884544 : i32}> : () -> i32
%199 = "vm.const.i32"() <{value = 391643136 : i32}> : () -> i32
%200 = "vm.const.i32"() <{value = 394002432 : i32}> : () -> i32
%201 = "vm.const.i32"() <{value = 396361728 : i32}> : () -> i32
%202 = "vm.const.i32"() <{value = 398721024 : i32}> : () -> i32
%203 = "vm.const.i32"() <{value = 891887616 : i32}> : () -> i32
%204 = "vm.const.i32"() <{value = 401080320 : i32}> : () -> i32
%205 = "vm.const.i32"() <{value = 407371776 : i32}> : () -> i32
%206 = "vm.const.i32"() <{value = 413663232 : i32}> : () -> i32
%207 = "vm.const.i32"() <{value = 891890688 : i32}> : () -> i32
%208 = "vm.const.i32"() <{value = 419954688 : i32}> : () -> i32
%209 = "vm.const.i32"() <{value = 427032576 : i32}> : () -> i32
%210 = "vm.const.i32"() <{value = 891893760 : i32}> : () -> i32
%211 = "vm.const.i32"() <{value = 429391872 : i32}> : () -> i32
%212 = "vm.const.i32"() <{value = 431751168 : i32}> : () -> i32
%213 = "vm.const.i32"() <{value = 434110464 : i32}> : () -> i32
%214 = "vm.const.i32"() <{value = 436469760 : i32}> : () -> i32
%215 = "vm.const.i32"() <{value = 891896832 : i32}> : () -> i32
%216 = "vm.const.i32"() <{value = 438829056 : i32}> : () -> i32
%217 = "vm.const.i32"() <{value = 445120512 : i32}> : () -> i32
%218 = "vm.const.i32"() <{value = 451411968 : i32}> : () -> i32
%219 = "vm.const.i32"() <{value = 891899904 : i32}> : () -> i32
%220 = "vm.const.i32"() <{value = 457703424 : i32}> : () -> i32
%221 = "vm.const.i32"() <{value = 464781312 : i32}> : () -> i32
%222 = "vm.const.i32"() <{value = 891902976 : i32}> : () -> i32
%223 = "vm.const.i32"() <{value = 467140608 : i32}> : () -> i32
%224 = "vm.const.i32"() <{value = 469499904 : i32}> : () -> i32
%225 = "vm.const.i32"() <{value = 471859200 : i32}> : () -> i32
%226 = "vm.const.i32"() <{value = 474218496 : i32}> : () -> i32
%227 = "vm.const.i32"() <{value = 891906048 : i32}> : () -> i32
%228 = "vm.const.i32"() <{value = 476577792 : i32}> : () -> i32
%229 = "vm.const.i32"() <{value = 482869248 : i32}> : () -> i32
%230 = "vm.const.i32"() <{value = 489160704 : i32}> : () -> i32
%231 = "vm.const.i32"() <{value = 891909120 : i32}> : () -> i32
%232 = "vm.const.i32"() <{value = 495452160 : i32}> : () -> i32
%233 = "vm.const.i32"() <{value = 502530048 : i32}> : () -> i32
%234 = "vm.const.i32"() <{value = 891912192 : i32}> : () -> i32
%235 = "vm.const.i32"() <{value = 504889344 : i32}> : () -> i32
%236 = "vm.const.i32"() <{value = 507248640 : i32}> : () -> i32
%237 = "vm.const.i32"() <{value = 509607936 : i32}> : () -> i32
%238 = "vm.const.i32"() <{value = 511967232 : i32}> : () -> i32
%239 = "vm.const.i32"() <{value = 891915264 : i32}> : () -> i32
%240 = "vm.const.i32"() <{value = 514326528 : i32}> : () -> i32
%241 = "vm.const.i32"() <{value = 520617984 : i32}> : () -> i32
%242 = "vm.const.i32"() <{value = 526909440 : i32}> : () -> i32
%243 = "vm.const.i32"() <{value = 891918336 : i32}> : () -> i32
%244 = "vm.const.i32"() <{value = 533200896 : i32}> : () -> i32
%245 = "vm.const.i32"() <{value = 120324096 : i32}> : () -> i32
%246 = "vm.const.i32"() <{value = 122683392 : i32}> : () -> i32
%247 = "vm.const.i32"() <{value = 158072832 : i32}> : () -> i32
%248 = "vm.const.i32"() <{value = 160432128 : i32}> : () -> i32
%249 = "vm.const.i32"() <{value = 195821568 : i32}> : () -> i32
%250 = "vm.const.i32"() <{value = 198180864 : i32}> : () -> i32
%251 = "vm.const.i32"() <{value = 233570304 : i32}> : () -> i32
%252 = "vm.const.i32"() <{value = 235929600 : i32}> : () -> i32
%253 = "vm.const.i32"() <{value = 271319040 : i32}> : () -> i32
%254 = "vm.const.i32"() <{value = 273678336 : i32}> : () -> i32
%255 = "vm.const.i32"() <{value = 309067776 : i32}> : () -> i32
%256 = "vm.const.i32"() <{value = 311427072 : i32}> : () -> i32
%257 = "vm.const.i32"() <{value = 346816512 : i32}> : () -> i32
%258 = "vm.const.i32"() <{value = 349175808 : i32}> : () -> i32
%259 = "vm.const.i32"() <{value = 384565248 : i32}> : () -> i32
%260 = "vm.const.i32"() <{value = 386924544 : i32}> : () -> i32
%261 = "vm.const.i32"() <{value = 422313984 : i32}> : () -> i32
%262 = "vm.const.i32"() <{value = 424673280 : i32}> : () -> i32
%263 = "vm.const.i32"() <{value = 460062720 : i32}> : () -> i32
%264 = "vm.const.i32"() <{value = 462422016 : i32}> : () -> i32
%265 = "vm.const.i32"() <{value = 497811456 : i32}> : () -> i32
%266 = "vm.const.i32"() <{value = 500170752 : i32}> : () -> i32
%267 = "vm.const.i32"() <{value = 535560192 : i32}> : () -> i32
%268 = "vm.const.i32"() <{value = 537919488 : i32}> : () -> i32
%269 = "vm.const.i32"() <{value = 891929088 : i32}> : () -> i32
%270 = "vm.const.i32"() <{value = 552075264 : i32}> : () -> i32
%271 = "vm.const.i32"() <{value = 558366720 : i32}> : () -> i32
%272 = "vm.const.i32"() <{value = 564658176 : i32}> : () -> i32
%273 = "vm.const.i32"() <{value = 891932160 : i32}> : () -> i32
%274 = "vm.const.i32"() <{value = 570949632 : i32}> : () -> i32
%275 = "vm.const.i32"() <{value = 891938304 : i32}> : () -> i32
%276 = "vm.const.i32"() <{value = 573308928 : i32}> : () -> i32
%277 = "vm.const.i32"() <{value = 575668224 : i32}> : () -> i32
%278 = "vm.const.i32"() <{value = 578027520 : i32}> : () -> i32
%279 = "vm.const.i32"() <{value = 891935232 : i32}> : () -> i32
%280 = "vm.const.i32"() <{value = 580386816 : i32}> : () -> i32
%281 = "vm.const.i32"() <{value = 586678272 : i32}> : () -> i32
%282 = "vm.const.i32"() <{value = 592969728 : i32}> : () -> i32
%283 = "vm.const.i32"() <{value = 891941376 : i32}> : () -> i32
%284 = "vm.const.i32"() <{value = 599261184 : i32}> : () -> i32
%285 = "vm.const.i32"() <{value = 891947520 : i32}> : () -> i32
%286 = "vm.const.i32"() <{value = 601620480 : i32}> : () -> i32
%287 = "vm.const.i32"() <{value = 603979776 : i32}> : () -> i32
%288 = "vm.const.i32"() <{value = 606339072 : i32}> : () -> i32
%289 = "vm.const.i32"() <{value = 891944448 : i32}> : () -> i32
%290 = "vm.const.i32"() <{value = 608698368 : i32}> : () -> i32
%291 = "vm.const.i32"() <{value = 614989824 : i32}> : () -> i32
%292 = "vm.const.i32"() <{value = 621281280 : i32}> : () -> i32
%293 = "vm.const.i32"() <{value = 891950592 : i32}> : () -> i32
%294 = "vm.const.i32"() <{value = 627572736 : i32}> : () -> i32
%295 = "vm.const.i32"() <{value = 891956736 : i32}> : () -> i32
%296 = "vm.const.i32"() <{value = 629932032 : i32}> : () -> i32
%297 = "vm.const.i32"() <{value = 632291328 : i32}> : () -> i32
%298 = "vm.const.i32"() <{value = 634650624 : i32}> : () -> i32
%299 = "vm.const.i32"() <{value = 891953664 : i32}> : () -> i32
%300 = "vm.const.i32"() <{value = 637009920 : i32}> : () -> i32
%301 = "vm.const.i32"() <{value = 643301376 : i32}> : () -> i32
%302 = "vm.const.i32"() <{value = 649592832 : i32}> : () -> i32
%303 = "vm.const.i32"() <{value = 891959808 : i32}> : () -> i32
%304 = "vm.const.i32"() <{value = 655884288 : i32}> : () -> i32
%305 = "vm.const.i32"() <{value = 891965952 : i32}> : () -> i32
%306 = "vm.const.i32"() <{value = 658243584 : i32}> : () -> i32
%307 = "vm.const.i32"() <{value = 660602880 : i32}> : () -> i32
%308 = "vm.const.i32"() <{value = 662962176 : i32}> : () -> i32
%309 = "vm.const.i32"() <{value = 891962880 : i32}> : () -> i32
%310 = "vm.const.i32"() <{value = 665321472 : i32}> : () -> i32
%311 = "vm.const.i32"() <{value = 671612928 : i32}> : () -> i32
%312 = "vm.const.i32"() <{value = 677904384 : i32}> : () -> i32
%313 = "vm.const.i32"() <{value = 891969024 : i32}> : () -> i32
%314 = "vm.const.i32"() <{value = 684195840 : i32}> : () -> i32
%315 = "vm.const.i32"() <{value = 891975168 : i32}> : () -> i32
%316 = "vm.const.i32"() <{value = 686555136 : i32}> : () -> i32
%317 = "vm.const.i32"() <{value = 688914432 : i32}> : () -> i32
%318 = "vm.const.i32"() <{value = 691273728 : i32}> : () -> i32
%319 = "vm.const.i32"() <{value = 891972096 : i32}> : () -> i32
%320 = "vm.const.i32"() <{value = 693633024 : i32}> : () -> i32
%321 = "vm.const.i32"() <{value = 699924480 : i32}> : () -> i32
%322 = "vm.const.i32"() <{value = 706215936 : i32}> : () -> i32
%323 = "vm.const.i32"() <{value = 891978240 : i32}> : () -> i32
%324 = "vm.const.i32"() <{value = 712507392 : i32}> : () -> i32
%325 = "vm.const.i32"() <{value = 891984384 : i32}> : () -> i32
%326 = "vm.const.i32"() <{value = 714866688 : i32}> : () -> i32
%327 = "vm.const.i32"() <{value = 717225984 : i32}> : () -> i32
%328 = "vm.const.i32"() <{value = 719585280 : i32}> : () -> i32
%329 = "vm.const.i32"() <{value = 891981312 : i32}> : () -> i32
%330 = "vm.const.i32"() <{value = 721944576 : i32}> : () -> i32
%331 = "vm.const.i32"() <{value = 728236032 : i32}> : () -> i32
%332 = "vm.const.i32"() <{value = 734527488 : i32}> : () -> i32
%333 = "vm.const.i32"() <{value = 891987456 : i32}> : () -> i32
%334 = "vm.const.i32"() <{value = 740818944 : i32}> : () -> i32
%335 = "vm.const.i32"() <{value = 891993600 : i32}> : () -> i32
%336 = "vm.const.i32"() <{value = 743178240 : i32}> : () -> i32
%337 = "vm.const.i32"() <{value = 745537536 : i32}> : () -> i32
%338 = "vm.const.i32"() <{value = 747896832 : i32}> : () -> i32
%339 = "vm.const.i32"() <{value = 891990528 : i32}> : () -> i32
%340 = "vm.const.i32"() <{value = 750256128 : i32}> : () -> i32
%341 = "vm.const.i32"() <{value = 756547584 : i32}> : () -> i32
%342 = "vm.const.i32"() <{value = 762839040 : i32}> : () -> i32
%343 = "vm.const.i32"() <{value = 891996672 : i32}> : () -> i32
%344 = "vm.const.i32"() <{value = 769130496 : i32}> : () -> i32
%345 = "vm.const.i32"() <{value = 892002816 : i32}> : () -> i32
%346 = "vm.const.i32"() <{value = 771489792 : i32}> : () -> i32
%347 = "vm.const.i32"() <{value = 773849088 : i32}> : () -> i32
%348 = "vm.const.i32"() <{value = 776208384 : i32}> : () -> i32
%349 = "vm.const.i32"() <{value = 891999744 : i32}> : () -> i32
%350 = "vm.const.i32"() <{value = 778567680 : i32}> : () -> i32
%351 = "vm.const.i32"() <{value = 784859136 : i32}> : () -> i32
%352 = "vm.const.i32"() <{value = 791150592 : i32}> : () -> i32
%353 = "vm.const.i32"() <{value = 892005888 : i32}> : () -> i32
%354 = "vm.const.i32"() <{value = 797442048 : i32}> : () -> i32
%355 = "vm.const.i32"() <{value = 892012032 : i32}> : () -> i32
%356 = "vm.const.i32"() <{value = 799801344 : i32}> : () -> i32
%357 = "vm.const.i32"() <{value = 802160640 : i32}> : () -> i32
%358 = "vm.const.i32"() <{value = 804519936 : i32}> : () -> i32
%359 = "vm.const.i32"() <{value = 892008960 : i32}> : () -> i32
%360 = "vm.const.i32"() <{value = 806879232 : i32}> : () -> i32
%361 = "vm.const.i32"() <{value = 813170688 : i32}> : () -> i32
%362 = "vm.const.i32"() <{value = 819462144 : i32}> : () -> i32
%363 = "vm.const.i32"() <{value = 892015104 : i32}> : () -> i32
%364 = "vm.const.i32"() <{value = 825753600 : i32}> : () -> i32
%365 = "vm.const.i32"() <{value = 892021248 : i32}> : () -> i32
%366 = "vm.const.i32"() <{value = 828112896 : i32}> : () -> i32
%367 = "vm.const.i32"() <{value = 830472192 : i32}> : () -> i32
%368 = "vm.const.i32"() <{value = 832831488 : i32}> : () -> i32
%369 = "vm.const.i32"() <{value = 892018176 : i32}> : () -> i32
%370 = "vm.const.i32"() <{value = 835190784 : i32}> : () -> i32
%371 = "vm.const.i32"() <{value = 841482240 : i32}> : () -> i32
%372 = "vm.const.i32"() <{value = 847773696 : i32}> : () -> i32
%373 = "vm.const.i32"() <{value = 892024320 : i32}> : () -> i32
%374 = "vm.const.i32"() <{value = 854065152 : i32}> : () -> i32
%375 = "vm.const.i32"() <{value = 892030464 : i32}> : () -> i32
%376 = "vm.const.i32"() <{value = 856424448 : i32}> : () -> i32
%377 = "vm.const.i32"() <{value = 858783744 : i32}> : () -> i32
%378 = "vm.const.i32"() <{value = 861143040 : i32}> : () -> i32
%379 = "vm.const.i32"() <{value = 892027392 : i32}> : () -> i32
%380 = "vm.const.i32"() <{value = 863502336 : i32}> : () -> i32
%381 = "vm.const.i32"() <{value = 869793792 : i32}> : () -> i32
%382 = "vm.const.i32"() <{value = 876085248 : i32}> : () -> i32
%383 = "vm.const.i32"() <{value = 892033536 : i32}> : () -> i32
%384 = "vm.const.i32"() <{value = 882376704 : i32}> : () -> i32
%385 = "vm.const.i32"() <{value = 892042752 : i32}> : () -> i32
%386 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%387 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%388 = "vm.const.i32"() <{value = 16 : i32}> : () -> i32
%389 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%390 = "vm.const.i32"() <{value = 256 : i32}> : () -> i32
%391 = "vm.const.i32"() <{value = 540278784 : i32}> : () -> i32
%392 = "vm.const.i32"() <{value = 891921408 : i32}> : () -> i32
%393 = "vm.const.i32"() <{value = 542638080 : i32}> : () -> i32
%394 = "vm.const.i32"() <{value = 891927552 : i32}> : () -> i32
%395 = "vm.const.i32"() <{value = 544997376 : i32}> : () -> i32
%396 = "vm.const.i32"() <{value = 547356672 : i32}> : () -> i32
%397 = "vm.const.i32"() <{value = 549715968 : i32}> : () -> i32
%398 = "vm.const.i32"() <{value = 64 : i32}> : () -> i32
%399 = "vm.const.i32"() <{value = 892039680 : i32}> : () -> i32
%400 = "vm.const.i32"() <{value = 884736000 : i32}> : () -> i32
%401 = "vm.const.i32"() <{value = 887095296 : i32}> : () -> i32
%402 = "vm.const.i32"() <{value = 889454592 : i32}> : () -> i32
%403 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%404 = "vm.const.i32"() <{value = 72 : i32}> : () -> i32
%405 = "vm.const.i32"() <{value = 128 : i32}> : () -> i32
%406 = "vm.const.i64"() <{value = 32 : i64}> : () -> i64
%407 = "vm.const.i32.zero"() : () -> i32
%408 = "vm.const.i64"() <{value = 1536 : i64}> : () -> i64
%409 = "vm.const.i64"() <{value = 128512 : i64}> : () -> i64
%410 = "vm.const.i64"() <{value = 1028096 : i64}> : () -> i64
%411 = "vm.const.i64"() <{value = 98697216 : i64}> : () -> i64
%412 = "vm.const.i64"() <{value = 8192 : i64}> : () -> i64
%413 = "vm.const.i64"() <{value = 65536 : i64}> : () -> i64
%414 = "vm.const.i64"() <{value = 6291456 : i64}> : () -> i64
%415 = "vm.const.i64"() <{value = 2048 : i64}> : () -> i64
%416 = "vm.const.i64"() <{value = 512 : i64}> : () -> i64
%417 = "vm.const.i64"() <{value = 6144 : i64}> : () -> i64
%418 = "vm.const.i64"() <{value = 49152 : i64}> : () -> i64
%419 = "vm.const.i64"() <{value = 1024 : i64}> : () -> i64
%420 = "vm.const.i64"() <{value = 256 : i64}> : () -> i64
%421 = "vm.const.i64"() <{value = 24 : i64}> : () -> i64
%422 = "vm.const.i64"() <{value = 56 : i64}> : () -> i64
%423 = "vm.const.i64"() <{value = 48 : i64}> : () -> i64
%424 = "vm.const.i64"() <{value = 40 : i64}> : () -> i64
%425 = "vm.const.i64"() <{value = 2359296 : i64}> : () -> i64
%426 = "vm.const.i64"() <{value = 24576 : i64}> : () -> i64
%427 = "vm.const.i64"() <{value = 12288 : i64}> : () -> i64
%428 = "vm.const.i64"() <{value = 16 : i64}> : () -> i64
%429 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%430 = "vm.const.i64"() <{value = 3072 : i64}> : () -> i64
%431 = "vm.const.i64"() <{value = 8 : i64}> : () -> i64
%432 = "vm.const.i64"() <{value = 64 : i64}> : () -> i64
%433 = "builtin.unrealized_conversion_cast"(%432) : (i64) -> index
%434 = "vm.const.i64"() <{value = 32 : i64}> : () -> i64
%435 = "vm.const.i64"() <{value = 768 : i64}> : () -> i64
%436 = "vm.const.i64"() <{value = 2 : i64}> : () -> i64
%437 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%438 = "vm.const.i64.zero"() : () -> i64
%439 = "vm.const.i64"() <{value = 1536 : i64}> : () -> i64
%440 = "vm.const.i64"() <{value = 128 : i64}> : () -> i64
%441 = "vm.const.i64"() <{value = 128 : i64}> : () -> i64
%442 = "builtin.unrealized_conversion_cast"(%441) : (i64) -> index
%443 = "vm.const.i64"() <{value = 12 : i64}> : () -> i64
%444 = "vm.const.i64"() <{value = 64 : i64}> : () -> i64
%445 = "vm.const.i64"() <{value = 12 : i64}> : () -> i64
%446 = "vm.const.i64"() <{value = -1 : i64}> : () -> i64
%447 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%448 = "vm.const.i32.zero"() : () -> i32
%449 = "vm.const.i64.zero"() : () -> i64
%450 = "builtin.unrealized_conversion_cast"(%449) : (i64) -> index
%451 = "vm.const.i64"() <{value = 192 : i64}> : () -> i64
%452 = "builtin.unrealized_conversion_cast"(%451) : (i64) -> index
%453 = "vm.const.i64"() <{value = 320 : i64}> : () -> i64
%454 = "vm.const.i64"() <{value = 384 : i64}> : () -> i64
%455 = "vm.const.i64"() <{value = 448 : i64}> : () -> i64
%456 = "vm.const.i64"() <{value = 72 : i64}> : () -> i64
%457 = "vm.const.i64"() <{value = 80 : i64}> : () -> i64
%458 = "vm.const.i64"() <{value = 88 : i64}> : () -> i64
%459 = "vm.const.i64"() <{value = 990792192 : i64}> : () -> i64
%460 = "vm.const.i64"() <{value = -1 : i64}> : () -> i64
%461 = "vm.const.ref.zero"() : () -> !vm.ref<!hal.fence>
%462 = "vm.const.i32"() <{value = -1 : i32}> : () -> i32
%463 = "vm.const.i64"() <{value = 96 : i64}> : () -> i64
%464 = "vm.const.i64"() <{value = 3 : i64}> : () -> i64
%465 = "vm.const.i64"() <{value = 6 : i64}> : () -> i64
%466 = "vm.const.i64"() <{value = 2 : i64}> : () -> i64
%467 = "vm.const.i64"() <{value = 502 : i64}> : () -> i64
%468 = "vm.const.i64"() <{value = 1004 : i64}> : () -> i64
%469 = "vm.const.i64"() <{value = 32128 : i64}> : () -> i64
%470 = "vm.global.load.ref"() <{global = @__constant_tensor_128x384xi64__timepoint, is_immutable}> : () -> !vm.ref<!hal.fence>
%471 = "vm.global.load.ref"() <{global = @__constant_tensor_128x384xi64, is_immutable}> : () -> !vm.ref<!hal.buffer>
%472 = "vm.global.load.ref"() <{global = @__device_0, is_immutable}> : () -> !vm.ref<!hal.device>
%473 = "vm.global.load.ref"() <{global = @__device_0_executable_0_model_modified_linked_llvm_cpu, is_immutable}> : () -> !vm.ref<!hal.executable>
%474 = "vm.global.load.ref"() <{global = @__main_graph_memoize_result_0_device_0, is_immutable}> : () -> !vm.ref<!hal.command_buffer>
%475 = "vm.const.i32.zero"() : () -> i32
%476 = "vm.call"(%arg0, %475) <{callee = @hal.buffer_view.dim}> {nosideeffects} : (!vm.ref<!hal.buffer_view>, i32) -> i64
%477 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%478 = "vm.call"(%arg0, %477) <{callee = @hal.buffer_view.dim}> {nosideeffects} : (!vm.ref<!hal.buffer_view>, i32) -> i64
%479 = "vm.const.i32"() <{value = 268435520 : i32}> : () -> i32
%480 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%481 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_input0_BFA3B667A01343B4", value = "input0"}> : () -> !vm.buffer
"vm.call.variadic"(%arg0, %481, %479, %480, %476, %478) <{callee = @hal.buffer_view.assert, segment_sizes = dense<[-1, -1, -1, -1, 2]> : vector<5xi16>, segment_types = [!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64]}> : (!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64, i64) -> ()
%482 = "vm.mul.i64"(%476, %431) : (i64, i64) -> i64
%483 = "vm.mul.i64"(%482, %478) : (i64, i64) -> i64
%484 = "vm.call"(%arg0) <{callee = @hal.buffer_view.buffer}> {nosideeffects} : (!vm.ref<!hal.buffer_view>) -> !vm.ref<!hal.buffer>
%485 = "vm.call"(%472) <{callee = @hal.device.allocator}> {nosideeffects} : (!vm.ref<!hal.device>) -> !vm.ref<!hal.allocator>
%486 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_tensor_62A45253EFD36CF", value = "tensor"}> : () -> !vm.buffer
%487 = "vm.const.i32"() <{value = 16 : i32}> : () -> i32
%488 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
"vm.call"(%484, %486, %485, %483, %487, %488) <{callee = @hal.buffer.assert}> : (!vm.ref<!hal.buffer>, !vm.buffer, !vm.ref<!hal.allocator>, i64, i32, i32) -> ()
%489 = "vm.const.i32.zero"() : () -> i32
%490 = "vm.call"(%arg1, %489) <{callee = @hal.buffer_view.dim}> {nosideeffects} : (!vm.ref<!hal.buffer_view>, i32) -> i64
%491 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%492 = "vm.call"(%arg1, %491) <{callee = @hal.buffer_view.dim}> {nosideeffects} : (!vm.ref<!hal.buffer_view>, i32) -> i64
%493 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_input1_2B4F7EABDF9EA006", value = "input1"}> : () -> !vm.buffer
"vm.call.variadic"(%arg1, %493, %479, %480, %490, %492) <{callee = @hal.buffer_view.assert, segment_sizes = dense<[-1, -1, -1, -1, 2]> : vector<5xi16>, segment_types = [!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64]}> : (!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64, i64) -> ()
%494 = "vm.mul.i64"(%490, %431) : (i64, i64) -> i64
%495 = "vm.mul.i64"(%494, %492) : (i64, i64) -> i64
%496 = "vm.call"(%arg1) <{callee = @hal.buffer_view.buffer}> {nosideeffects} : (!vm.ref<!hal.buffer_view>) -> !vm.ref<!hal.buffer>
%497 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_tensor_62A45253EFD36CF", value = "tensor"}> : () -> !vm.buffer
%498 = "vm.const.i32"() <{value = 16 : i32}> : () -> i32
%499 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
"vm.call"(%496, %497, %485, %495, %498, %499) <{callee = @hal.buffer.assert}> : (!vm.ref<!hal.buffer>, !vm.buffer, !vm.ref<!hal.allocator>, i64, i32, i32) -> ()
%500 = "vm.const.i32.zero"() : () -> i32
%501 = "vm.call"(%arg2, %500) <{callee = @hal.buffer_view.dim}> {nosideeffects} : (!vm.ref<!hal.buffer_view>, i32) -> i64
%502 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%503 = "vm.call"(%arg2, %502) <{callee = @hal.buffer_view.dim}> {nosideeffects} : (!vm.ref<!hal.buffer_view>, i32) -> i64
%504 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_input2_8D79E4DE5CD7F0B4", value = "input2"}> : () -> !vm.buffer
"vm.call.variadic"(%arg2, %504, %479, %480, %501, %503) <{callee = @hal.buffer_view.assert, segment_sizes = dense<[-1, -1, -1, -1, 2]> : vector<5xi16>, segment_types = [!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64]}> : (!vm.ref<!hal.buffer_view>, !vm.buffer, i32, i32, i64, i64) -> ()
%505 = "vm.mul.i64"(%501, %431) : (i64, i64) -> i64
%506 = "vm.mul.i64"(%505, %503) : (i64, i64) -> i64
%507 = "vm.call"(%arg2) <{callee = @hal.buffer_view.buffer}> {nosideeffects} : (!vm.ref<!hal.buffer_view>) -> !vm.ref<!hal.buffer>
%508 = "vm.rodata.inline"() <{alignment = 1 : i64, name = "_utf8_tensor_62A45253EFD36CF", value = "tensor"}> : () -> !vm.buffer
%509 = "vm.const.i32"() <{value = 16 : i32}> : () -> i32
%510 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
"vm.call"(%507, %508, %485, %506, %509, %510) <{callee = @hal.buffer.assert}> : (!vm.ref<!hal.buffer>, !vm.buffer, !vm.ref<!hal.allocator>, i64, i32, i32) -> ()
%511 = "vm.cmp.lt.i64.s"(%478, %438) : (i64, i64) -> i32
%512 = "vm.select.i64"(%511, %437, %478) : (i32, i64, i64) -> i64
%513 = "vm.select.i64"(%511, %436, %437) : (i32, i64, i64) -> i64
%514 = "vm.cmp.lte.i64.u"(%513, %437) : (i64, i64) -> i32
%515 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%516 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%517 = "vm.xor.i32"(%514, %516) : (i32, i32) -> i32
"vm.cond_fail"(%517, %515) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%518 = "vm.mul.i64"(%476, %478) : (i64, i64) -> i64
%519 = "vm.div.i64.s"(%518, %512) : (i64, i64) -> i64
%520 = "vm.select.i64"(%511, %519, %478) : (i32, i64, i64) -> i64
%521 = "vm.mul.i64"(%519, %431) : (i64, i64) -> i64
%522 = "vm.mul.i64"(%521, %520) : (i64, i64) -> i64
%523 = "vm.mul.i64"(%519, %520) : (i64, i64) -> i64
%524 = "vm.mul.i64"(%523, %430) : (i64, i64) -> i64
%525 = "vm.const.i32.zero"() : () -> i32
%526 = "vm.call"(%472, %525) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%527 = "vm.const.i32.zero"() : () -> i32
%528 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%529 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%530 = "vm.call"(%472, %460, %470, %526, %527, %528, %529, %524) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%531 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%532 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%533 = "vm.add.i64"(%522, %532) : (i64, i64) -> i64
%534 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%535 = "vm.and.i64"(%533, %534) : (i64, i64) -> i64
%536 = "vm.const.i32.zero"() : () -> i32
%537 = "vm.call"(%472, %536) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%538 = "vm.const.i32.zero"() : () -> i32
%539 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%540 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%541 = "vm.call"(%472, %460, %470, %537, %538, %539, %540, %535) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%542 = "vm.call.variadic"(%526, %537) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%543 = "vm.trunc.i64.i32"(%519) : (i64) -> i32
%544 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%545 = "vm.shr.i64.u"(%519, %544) : (i64, i32) -> i64
%546 = "vm.trunc.i64.i32"(%545) : (i64) -> i32
%547 = "vm.trunc.i64.i32"(%520) : (i64) -> i32
%548 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%549 = "vm.shr.i64.u"(%520, %548) : (i64, i32) -> i64
%550 = "vm.trunc.i64.i32"(%549) : (i64) -> i32
%551 = "vm.trunc.i64.i32"(%523) : (i64) -> i32
%552 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%553 = "vm.shr.i64.u"(%523, %552) : (i64, i32) -> i64
%554 = "vm.trunc.i64.i32"(%553) : (i64) -> i32
%555 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%556 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%557 = "vm.const.i32.zero"() : () -> i32
%558 = "vm.call"(%472, %555, %556, %460, %557) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%559 = "vm.cmp.lte.i64.s"(%519, %449) : (i64, i64) -> i32
%560 = "vm.sub.i64"(%449, %519) : (i64, i64) -> i64
%561 = "vm.sub.i64"(%519, %447) : (i64, i64) -> i64
%562 = "vm.select.i64"(%559, %560, %561) : (i32, i64, i64) -> i64
%563 = "vm.div.i64.s"(%562, %432) : (i64, i64) -> i64
%564 = "vm.sub.i64"(%449, %563) : (i64, i64) -> i64
%565 = "vm.add.i64"(%563, %447) : (i64, i64) -> i64
%566 = "vm.select.i64"(%559, %564, %565) : (i32, i64, i64) -> i64
%567 = "vm.cmp.lte.i64.s"(%520, %449) : (i64, i64) -> i32
%568 = "vm.sub.i64"(%449, %520) : (i64, i64) -> i64
%569 = "vm.sub.i64"(%520, %447) : (i64, i64) -> i64
%570 = "vm.select.i64"(%567, %568, %569) : (i32, i64, i64) -> i64
%571 = "vm.div.i64.s"(%570, %432) : (i64, i64) -> i64
%572 = "vm.sub.i64"(%449, %571) : (i64, i64) -> i64
%573 = "vm.add.i64"(%571, %447) : (i64, i64) -> i64
%574 = "vm.select.i64"(%567, %572, %573) : (i32, i64, i64) -> i64
%575 = "vm.const.i32.zero"() : () -> i32
%576 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%577 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%578 = "vm.trunc.i64.i32"(%574) : (i64) -> i32
%579 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%580 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%581 = "vm.const.i32.zero"() : () -> i32
%582 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%558, %473, %577, %578, %579, %580, %576, %543, %546, %547, %550, %575, %581, %484, %449, %483, %575, %582, %541, %449, %535) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%583 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%584 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%585 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%558, %583, %584, %585) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%586 = "vm.cmp.lte.i64.s"(%523, %449) : (i64, i64) -> i32
%587 = "vm.sub.i64"(%449, %523) : (i64, i64) -> i64
%588 = "vm.sub.i64"(%523, %447) : (i64, i64) -> i64
%589 = "vm.select.i64"(%586, %587, %588) : (i32, i64, i64) -> i64
%590 = "vm.div.i64.s"(%589, %432) : (i64, i64) -> i64
%591 = "vm.sub.i64"(%449, %590) : (i64, i64) -> i64
%592 = "vm.add.i64"(%590, %447) : (i64, i64) -> i64
%593 = "vm.select.i64"(%586, %591, %592) : (i32, i64, i64) -> i64
%594 = "vm.const.i32.zero"() : () -> i32
%595 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%596 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%597 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%598 = "vm.trunc.i64.i32"(%593) : (i64) -> i32
%599 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%600 = "vm.const.i32.zero"() : () -> i32
%601 = "vm.const.i32.zero"() : () -> i32
%602 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%558, %473, %596, %597, %598, %599, %595, %551, %554, %594, %600, %471, %449, %459, %594, %601, %541, %449, %535, %594, %602, %530, %449, %524) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%603 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%604 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%605 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%558, %603, %604, %605) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%558) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%606 = "vm.const.i32.zero"() : () -> i32
%607 = "vm.call"(%472, %606) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %542, %607, %558) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%608 = "vm.const.i32.zero"() : () -> i32
%609 = "vm.call"(%472, %608) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %607, %609, %541) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%610 = "vm.mul.i64"(%519, %430) : (i64, i64) -> i64
%611 = "vm.mul.i64"(%610, %520) : (i64, i64) -> i64
%612 = "vm.cmp.gte.i64.s"(%490, %438) : (i64, i64) -> i32
%613 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%614 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%615 = "vm.xor.i32"(%612, %614) : (i32, i32) -> i32
"vm.cond_fail"(%615, %613) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%616 = "vm.cmp.gte.i64.s"(%492, %438) : (i64, i64) -> i32
%617 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%618 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%619 = "vm.xor.i32"(%616, %618) : (i32, i32) -> i32
"vm.cond_fail"(%619, %617) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%620 = "vm.mul.i64"(%490, %429) : (i64, i64) -> i64
%621 = "vm.mul.i64"(%620, %492) : (i64, i64) -> i64
%622 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%623 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%624 = "vm.add.i64"(%495, %623) : (i64, i64) -> i64
%625 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%626 = "vm.and.i64"(%624, %625) : (i64, i64) -> i64
%627 = "vm.add.i64"(%626, %441) : (i64, i64) -> i64
%628 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%629 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%630 = "vm.add.i64"(%494, %629) : (i64, i64) -> i64
%631 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%632 = "vm.and.i64"(%630, %631) : (i64, i64) -> i64
%633 = "vm.add.i64"(%627, %632) : (i64, i64) -> i64
%634 = "vm.const.i32.zero"() : () -> i32
%635 = "vm.call"(%472, %634) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%636 = "vm.const.i32.zero"() : () -> i32
%637 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%638 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%639 = "vm.call"(%472, %460, %461, %635, %636, %637, %638, %633) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%640 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%641 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%642 = "vm.add.i64"(%621, %641) : (i64, i64) -> i64
%643 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%644 = "vm.and.i64"(%642, %643) : (i64, i64) -> i64
%645 = "vm.add.i64"(%644, %644) : (i64, i64) -> i64
%646 = "vm.add.i64"(%645, %626) : (i64, i64) -> i64
%647 = "vm.const.i32.zero"() : () -> i32
%648 = "vm.call"(%472, %647) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%649 = "vm.const.i32.zero"() : () -> i32
%650 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%651 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%652 = "vm.call"(%472, %460, %461, %648, %649, %650, %651, %646) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%653 = "vm.call.variadic"(%635, %648) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%654 = "vm.trunc.i64.i32"(%490) : (i64) -> i32
%655 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%656 = "vm.shr.i64.u"(%490, %655) : (i64, i32) -> i64
%657 = "vm.trunc.i64.i32"(%656) : (i64) -> i32
%658 = "vm.trunc.i64.i32"(%492) : (i64) -> i32
%659 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%660 = "vm.shr.i64.u"(%492, %659) : (i64, i32) -> i64
%661 = "vm.trunc.i64.i32"(%660) : (i64) -> i32
%662 = "vm.trunc.i64.i32"(%644) : (i64) -> i32
%663 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%664 = "vm.shr.i64.u"(%644, %663) : (i64, i32) -> i64
%665 = "vm.trunc.i64.i32"(%664) : (i64) -> i32
%666 = "vm.trunc.i64.i32"(%645) : (i64) -> i32
%667 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%668 = "vm.shr.i64.u"(%645, %667) : (i64, i32) -> i64
%669 = "vm.trunc.i64.i32"(%668) : (i64) -> i32
%670 = "vm.trunc.i64.i32"(%627) : (i64) -> i32
%671 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%672 = "vm.shr.i64.u"(%627, %671) : (i64, i32) -> i64
%673 = "vm.trunc.i64.i32"(%672) : (i64) -> i32
%674 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%675 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%676 = "vm.const.i32.zero"() : () -> i32
%677 = "vm.call"(%472, %674, %675, %460, %676) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%678 = "vm.cmp.lte.i64.s"(%490, %449) : (i64, i64) -> i32
%679 = "vm.sub.i64"(%449, %490) : (i64, i64) -> i64
%680 = "vm.sub.i64"(%490, %447) : (i64, i64) -> i64
%681 = "vm.select.i64"(%678, %679, %680) : (i32, i64, i64) -> i64
%682 = "vm.div.i64.s"(%681, %432) : (i64, i64) -> i64
%683 = "vm.sub.i64"(%449, %682) : (i64, i64) -> i64
%684 = "vm.add.i64"(%682, %447) : (i64, i64) -> i64
%685 = "vm.select.i64"(%678, %683, %684) : (i32, i64, i64) -> i64
%686 = "vm.cmp.lte.i64.s"(%492, %449) : (i64, i64) -> i32
%687 = "vm.sub.i64"(%449, %492) : (i64, i64) -> i64
%688 = "vm.sub.i64"(%492, %447) : (i64, i64) -> i64
%689 = "vm.select.i64"(%686, %687, %688) : (i32, i64, i64) -> i64
%690 = "vm.div.i64.s"(%689, %432) : (i64, i64) -> i64
%691 = "vm.sub.i64"(%449, %690) : (i64, i64) -> i64
%692 = "vm.add.i64"(%690, %447) : (i64, i64) -> i64
%693 = "vm.select.i64"(%686, %691, %692) : (i32, i64, i64) -> i64
%694 = "vm.const.i32.zero"() : () -> i32
%695 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%696 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%697 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%698 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%699 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%700 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %696, %697, %698, %699, %695, %654, %657, %658, %661, %694, %700, %652, %449, %646) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%701 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%702 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%703 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%677, %701, %702, %703) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%704 = "vm.const.i32.zero"() : () -> i32
%705 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%706 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%707 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%708 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%709 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%710 = "vm.const.i32.zero"() : () -> i32
%711 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %706, %707, %708, %709, %705, %662, %665, %654, %657, %658, %661, %704, %710, %652, %449, %646, %704, %711, %652, %449, %646) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%712 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%713 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%714 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%677, %712, %713, %714) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%715 = "vm.const.i32.zero"() : () -> i32
%716 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%717 = "vm.const.i32"() <{value = 5 : i32}> : () -> i32
%718 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%719 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%720 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%721 = "vm.const.i32.zero"() : () -> i32
%722 = "vm.const.i32.zero"() : () -> i32
%723 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %717, %718, %719, %720, %716, %662, %665, %666, %669, %654, %657, %658, %661, %715, %721, %496, %449, %495, %715, %722, %652, %449, %646, %715, %723, %652, %449, %646) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%724 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%725 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%726 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%677, %724, %725, %726) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%727 = "vm.div.i64.s"(%681, %434) : (i64, i64) -> i64
%728 = "vm.sub.i64"(%449, %727) : (i64, i64) -> i64
%729 = "vm.add.i64"(%727, %447) : (i64, i64) -> i64
%730 = "vm.select.i64"(%678, %728, %729) : (i32, i64, i64) -> i64
%731 = "vm.const.i32.zero"() : () -> i32
%732 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%733 = "vm.const.i32"() <{value = 6 : i32}> : () -> i32
%734 = "vm.trunc.i64.i32"(%730) : (i64) -> i32
%735 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%736 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%737 = "vm.const.i32.zero"() : () -> i32
%738 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %733, %734, %735, %736, %732, %666, %669, %654, %657, %658, %661, %731, %737, %652, %449, %646, %731, %738, %639, %449, %633) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%739 = "vm.const.i32.zero"() : () -> i32
%740 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%741 = "vm.const.i32"() <{value = 7 : i32}> : () -> i32
%742 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%743 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%744 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%745 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %741, %742, %743, %744, %740, %658, %661, %739, %745, %639, %449, %633) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%746 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%747 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%748 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%677, %746, %747, %748) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%749 = "vm.const.i32.zero"() : () -> i32
%750 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%751 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%752 = "vm.trunc.i64.i32"(%730) : (i64) -> i32
%753 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%754 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%755 = "vm.const.i32.zero"() : () -> i32
%756 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %751, %752, %753, %754, %750, %670, %673, %658, %661, %654, %657, %749, %755, %639, %449, %633, %749, %756, %639, %449, %633) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%757 = "vm.const.i32.zero"() : () -> i32
%758 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%677, %757, %758, %639, %449, %639, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%759 = "vm.const.i32.zero"() : () -> i32
%760 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%761 = "vm.const.i32.zero"() : () -> i32
%762 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%763 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%764 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%765 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%677, %473, %761, %762, %763, %764, %760, %404, %403, %407, %759, %765, %639, %449, %633) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%766 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%767 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%768 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%677, %766, %767, %768) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%677) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%769 = "vm.const.i32.zero"() : () -> i32
%770 = "vm.call"(%472, %769) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %653, %770, %677) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%771 = "vm.const.i32.zero"() : () -> i32
%772 = "vm.call"(%472, %771) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %770, %772, %652) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%773 = "vm.cmp.gte.i64.s"(%490, %437) : (i64, i64) -> i32
%774 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%775 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%776 = "vm.xor.i32"(%773, %775) : (i32, i32) -> i32
"vm.cond_fail"(%776, %774) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%777 = "vm.const.i32.zero"() : () -> i32
%778 = "vm.call"(%472, %777) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%779 = "vm.const.i32.zero"() : () -> i32
%780 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%781 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%782 = "vm.call"(%472, %460, %772, %778, %779, %780, %781, %431) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%783 = "vm.const.i32.zero"() : () -> i32
%784 = "vm.call"(%472, %783) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%785 = "vm.const.i32.zero"() : () -> i32
%786 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%787 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%788 = "vm.call"(%472, %460, %772, %784, %785, %786, %787, %432) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%789 = "vm.call.variadic"(%778, %784) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%790 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%791 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%792 = "vm.const.i32.zero"() : () -> i32
%793 = "vm.call"(%472, %790, %791, %460, %792) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%794 = "vm.const.i32.zero"() : () -> i32
%795 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%793, %794, %795, %639, %432, %788, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%796 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%797 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%798 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%793, %796, %797, %798) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%799 = "vm.const.i32.zero"() : () -> i32
%800 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%793, %799, %800, %788, %449, %782, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%801 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%802 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%803 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%793, %801, %802, %803) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%793) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%804 = "vm.const.i32.zero"() : () -> i32
%805 = "vm.call"(%472, %804) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %789, %805, %793) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%806 = "vm.const.i32.zero"() : () -> i32
%807 = "vm.call"(%472, %806) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %805, %807, %788) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%808 = "vm.call.variadic"(%462, %807) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%808, %808) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%809 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%810 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%811 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%812 = "vm.call"(%782, %811, %809) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%813 = "vm.ext.i32.i64.u"(%812) : (i32) -> i64
%814 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%815 = "vm.shl.i64"(%813, %814) : (i64, i32) -> i64
%816 = "vm.call"(%782, %449, %809) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%817 = "vm.ext.i32.i64.u"(%816) : (i32) -> i64
%818 = "vm.or.i64"(%817, %815) : (i64, i64) -> i64
%819 = "vm.cmp.lt.i64.s"(%818, %438) : (i64, i64) -> i32
%820 = "vm.select.i64"(%819, %447, %818) : (i32, i64, i64) -> i64
%821 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%822 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%823 = "vm.xor.i32"(%612, %822) : (i32, i32) -> i32
"vm.cond_fail"(%823, %821) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%824 = "vm.mul.i64"(%820, %431) : (i64, i64) -> i64
%825 = "vm.mul.i64"(%824, %490) : (i64, i64) -> i64
%826 = "vm.const.i32.zero"() : () -> i32
%827 = "vm.call"(%472, %826) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%828 = "vm.const.i32.zero"() : () -> i32
%829 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%830 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%831 = "vm.call"(%472, %460, %772, %827, %828, %829, %830, %825) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%832 = "vm.trunc.i64.i32"(%820) : (i64) -> i32
%833 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%834 = "vm.shr.i64.u"(%820, %833) : (i64, i32) -> i64
%835 = "vm.trunc.i64.i32"(%834) : (i64) -> i32
%836 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%837 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%838 = "vm.const.i32.zero"() : () -> i32
%839 = "vm.call"(%472, %836, %837, %460, %838) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%840 = "vm.cmp.lte.i64.s"(%820, %449) : (i64, i64) -> i32
%841 = "vm.sub.i64"(%449, %820) : (i64, i64) -> i64
%842 = "vm.sub.i64"(%820, %447) : (i64, i64) -> i64
%843 = "vm.select.i64"(%840, %841, %842) : (i32, i64, i64) -> i64
%844 = "vm.div.i64.s"(%843, %432) : (i64, i64) -> i64
%845 = "vm.sub.i64"(%449, %844) : (i64, i64) -> i64
%846 = "vm.add.i64"(%844, %447) : (i64, i64) -> i64
%847 = "vm.select.i64"(%840, %845, %846) : (i32, i64, i64) -> i64
%848 = "vm.const.i32.zero"() : () -> i32
%849 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%850 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%851 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%852 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%853 = "vm.trunc.i64.i32"(%847) : (i64) -> i32
%854 = "vm.const.i32.zero"() : () -> i32
%855 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%839, %473, %850, %851, %852, %853, %849, %670, %673, %654, %657, %832, %835, %848, %854, %639, %449, %633, %848, %855, %831, %449, %825) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%856 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%857 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%858 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%839, %856, %857, %858) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%839) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%859 = "vm.const.i32.zero"() : () -> i32
%860 = "vm.call"(%472, %859) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %827, %860, %839) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%861 = "vm.cmp.lt.i64.s"(%490, %438) : (i64, i64) -> i32
%862 = "vm.select.i64"(%861, %437, %490) : (i32, i64, i64) -> i64
%863 = "vm.select.i64"(%861, %436, %437) : (i32, i64, i64) -> i64
%864 = "vm.cmp.lte.i64.u"(%863, %437) : (i64, i64) -> i32
%865 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%866 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%867 = "vm.xor.i32"(%864, %866) : (i32, i32) -> i32
"vm.cond_fail"(%867, %865) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%868 = "vm.mul.i64"(%820, %490) : (i64, i64) -> i64
%869 = "vm.div.i64.s"(%868, %862) : (i64, i64) -> i64
%870 = "vm.select.i64"(%861, %869, %490) : (i32, i64, i64) -> i64
%871 = "vm.const.i32.zero"() : () -> i32
%872 = "vm.call"(%472, %871) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%873 = "vm.const.i32.zero"() : () -> i32
%874 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%875 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%876 = "vm.call"(%472, %460, %772, %872, %873, %874, %875, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%877 = "vm.const.i32.zero"() : () -> i32
%878 = "vm.call"(%472, %877) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%879 = "vm.const.i32.zero"() : () -> i32
%880 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%881 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%882 = "vm.call"(%472, %460, %772, %878, %879, %880, %881, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%883 = "vm.call.variadic"(%872, %878) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%884 = "vm.trunc.i64.i32"(%490) : (i64) -> i32
%885 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%886 = "vm.shr.i64.u"(%490, %885) : (i64, i32) -> i64
%887 = "vm.trunc.i64.i32"(%886) : (i64) -> i32
%888 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%889 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%890 = "vm.const.i32.zero"() : () -> i32
%891 = "vm.call"(%472, %888, %889, %460, %890) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%892 = "vm.const.i32.zero"() : () -> i32
%893 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%894 = "vm.const.i32.zero"() : () -> i32
%895 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%896 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%897 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%898 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%891, %473, %894, %895, %896, %897, %893, %407, %884, %887, %892, %898, %882, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%899 = "vm.const.i32.zero"() : () -> i32
%900 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%891, %899, %900, %639, %449, %882, %431, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%901 = "vm.const.i32.zero"() : () -> i32
%902 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%891, %901, %902, %882, %449, %882, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%903 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%904 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%905 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%891, %903, %904, %905) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%906 = "vm.const.i32.zero"() : () -> i32
%907 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%891, %906, %907, %882, %432, %876, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%908 = "vm.const.i32.zero"() : () -> i32
%909 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%891, %908, %909, %639, %449, %876, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%910 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%911 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%912 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%891, %910, %911, %912) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%891) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%913 = "vm.const.i32.zero"() : () -> i32
%914 = "vm.call"(%472, %913) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %883, %914, %891) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%915 = "vm.const.i32.zero"() : () -> i32
%916 = "vm.call"(%472, %915) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %914, %916, %882) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%917 = "vm.call.variadic"(%462, %916) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%917, %917) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%918 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%919 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%920 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%921 = "vm.call"(%876, %920, %918) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%922 = "vm.ext.i32.i64.u"(%921) : (i32) -> i64
%923 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%924 = "vm.shl.i64"(%922, %923) : (i64, i32) -> i64
%925 = "vm.call"(%876, %432, %918) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%926 = "vm.ext.i32.i64.u"(%925) : (i32) -> i64
%927 = "vm.or.i64"(%926, %924) : (i64, i64) -> i64
%928 = "vm.cmp.gte.i64.s"(%927, %438) : (i64, i64) -> i32
%929 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%930 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%931 = "vm.xor.i32"(%928, %930) : (i32, i32) -> i32
"vm.cond_fail"(%931, %929) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%932 = "vm.cmp.eq.i64"(%927, %869) : (i64, i64) -> i32
%933 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%934 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%935 = "vm.xor.i32"(%932, %934) : (i32, i32) -> i32
"vm.cond_fail"(%935, %933) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%936 = "vm.const.i32.zero"() : () -> i32
%937 = "vm.call"(%472, %936) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%938 = "vm.const.i32.zero"() : () -> i32
%939 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%940 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%941 = "vm.call"(%472, %460, %772, %937, %938, %939, %940, %431) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%942 = "vm.const.i32.zero"() : () -> i32
%943 = "vm.call"(%472, %942) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%944 = "vm.const.i32.zero"() : () -> i32
%945 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%946 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%947 = "vm.call"(%472, %460, %772, %943, %944, %945, %946, %431) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%948 = "vm.call.variadic"(%937, %943) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%949 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%950 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%951 = "vm.const.i32.zero"() : () -> i32
%952 = "vm.call"(%472, %949, %950, %460, %951) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%953 = "vm.const.i32.zero"() : () -> i32
%954 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%955 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%956 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%957 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%958 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%959 = "vm.const.i32.zero"() : () -> i32
%960 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%952, %473, %955, %956, %957, %958, %954, %953, %959, %639, %449, %633, %953, %960, %947, %449, %431) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 0, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%961 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%962 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%963 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%952, %961, %962, %963) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%964 = "vm.const.i32.zero"() : () -> i32
%965 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%952, %964, %965, %947, %449, %941, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%966 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%967 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%968 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%952, %966, %967, %968) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%952) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%969 = "vm.const.i32.zero"() : () -> i32
%970 = "vm.call"(%472, %969) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %948, %970, %952) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%971 = "vm.call.variadic"(%462, %970) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%971, %971) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%972 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%973 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%974 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%975 = "vm.call"(%941, %974, %972) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%976 = "vm.ext.i32.i64.u"(%975) : (i32) -> i64
%977 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%978 = "vm.shl.i64"(%976, %977) : (i64, i32) -> i64
%979 = "vm.call"(%941, %449, %972) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%980 = "vm.ext.i32.i64.u"(%979) : (i32) -> i64
%981 = "vm.or.i64"(%980, %978) : (i64, i64) -> i64
%982 = "vm.mul.i64"(%495, %981) : (i64, i64) -> i64
%983 = "vm.cmp.lt.i64.s"(%981, %438) : (i64, i64) -> i32
%984 = "vm.select.i64"(%983, %981, %438) : (i32, i64, i64) -> i64
%985 = "vm.add.i64"(%981, %446) : (i64, i64) -> i64
%986 = "vm.cmp.lt.i64.s"(%985, %449) : (i64, i64) -> i32
%987 = "vm.select.i64"(%986, %446, %985) : (i32, i64, i64) -> i64
%988 = "vm.cmp.gt.i64.s"(%987, %981) : (i64, i64) -> i32
%989 = "vm.select.i64"(%988, %981, %987) : (i32, i64, i64) -> i64
%990 = "vm.sub.i64"(%989, %984) : (i64, i64) -> i64
%991 = "vm.cmp.lt.i64.s"(%990, %449) : (i64, i64) -> i32
%992 = "vm.select.i64"(%991, %449, %990) : (i32, i64, i64) -> i64
%993 = "vm.mul.i64"(%621, %992) : (i64, i64) -> i64
%994 = "vm.max.i64.s"(%519, %490) : (i64, i64) -> i64
%995 = "vm.call.variadic"(%970, %609) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%996 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%997 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%998 = "vm.add.i64"(%993, %997) : (i64, i64) -> i64
%999 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%1000 = "vm.and.i64"(%998, %999) : (i64, i64) -> i64
%1001 = "vm.add.i64"(%644, %1000) : (i64, i64) -> i64
%1002 = "vm.add.i64"(%1001, %611) : (i64, i64) -> i64
%1003 = "vm.add.i64"(%1002, %611) : (i64, i64) -> i64
%1004 = "vm.const.i32.zero"() : () -> i32
%1005 = "vm.call"(%472, %1004) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1006 = "vm.const.i32.zero"() : () -> i32
%1007 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1008 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1009 = "vm.call"(%472, %460, %995, %1005, %1006, %1007, %1008, %1003) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1010 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%1011 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%1012 = "vm.add.i64"(%982, %1011) : (i64, i64) -> i64
%1013 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%1014 = "vm.and.i64"(%1012, %1013) : (i64, i64) -> i64
%1015 = "vm.const.i32.zero"() : () -> i32
%1016 = "vm.call"(%472, %1015) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1017 = "vm.const.i32.zero"() : () -> i32
%1018 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1019 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1020 = "vm.call"(%472, %460, %995, %1016, %1017, %1018, %1019, %1014) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1021 = "vm.call.variadic"(%1005, %1016) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1022 = "vm.trunc.i64.i32"(%981) : (i64) -> i32
%1023 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1024 = "vm.shr.i64.u"(%981, %1023) : (i64, i32) -> i64
%1025 = "vm.trunc.i64.i32"(%1024) : (i64) -> i32
%1026 = "vm.trunc.i64.i32"(%992) : (i64) -> i32
%1027 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1028 = "vm.shr.i64.u"(%992, %1027) : (i64, i32) -> i64
%1029 = "vm.trunc.i64.i32"(%1028) : (i64) -> i32
%1030 = "vm.trunc.i64.i32"(%1001) : (i64) -> i32
%1031 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1032 = "vm.shr.i64.u"(%1001, %1031) : (i64, i32) -> i64
%1033 = "vm.trunc.i64.i32"(%1032) : (i64) -> i32
%1034 = "vm.trunc.i64.i32"(%1002) : (i64) -> i32
%1035 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1036 = "vm.shr.i64.u"(%1002, %1035) : (i64, i32) -> i64
%1037 = "vm.trunc.i64.i32"(%1036) : (i64) -> i32
%1038 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1039 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1040 = "vm.const.i32.zero"() : () -> i32
%1041 = "vm.call"(%472, %1038, %1039, %460, %1040) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1042 = "vm.const.i32.zero"() : () -> i32
%1043 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1044 = "vm.const.i32"() <{value = 11 : i32}> : () -> i32
%1045 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%1046 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%1047 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1048 = "vm.const.i32.zero"() : () -> i32
%1049 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1041, %473, %1044, %1045, %1046, %1047, %1043, %654, %657, %658, %661, %1042, %1048, %639, %449, %633, %1042, %1049, %1009, %449, %1003) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1050 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1051 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1052 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1041, %1050, %1051, %1052) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1053 = "vm.cmp.lte.i64.s"(%981, %449) : (i64, i64) -> i32
%1054 = "vm.sub.i64"(%449, %981) : (i64, i64) -> i64
%1055 = "vm.sub.i64"(%981, %447) : (i64, i64) -> i64
%1056 = "vm.select.i64"(%1053, %1054, %1055) : (i32, i64, i64) -> i64
%1057 = "vm.div.i64.s"(%1056, %432) : (i64, i64) -> i64
%1058 = "vm.sub.i64"(%449, %1057) : (i64, i64) -> i64
%1059 = "vm.add.i64"(%1057, %447) : (i64, i64) -> i64
%1060 = "vm.select.i64"(%1053, %1058, %1059) : (i32, i64, i64) -> i64
%1061 = "vm.const.i32.zero"() : () -> i32
%1062 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1063 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1064 = "vm.trunc.i64.i32"(%1060) : (i64) -> i32
%1065 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%1066 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%1067 = "vm.const.i32.zero"() : () -> i32
%1068 = "vm.const.i32.zero"() : () -> i32
%1069 = "vm.const.i32.zero"() : () -> i32
%1070 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1041, %473, %1063, %1064, %1065, %1066, %1062, %654, %657, %658, %661, %1022, %1025, %1061, %1067, %947, %449, %431, %1061, %1068, %639, %449, %633, %1061, %1069, %1009, %449, %1003, %1061, %1070, %1020, %449, %1014) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1071 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1072 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1073 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1041, %1071, %1072, %1073) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1074 = "vm.cmp.lte.i64.s"(%992, %449) : (i64, i64) -> i32
%1075 = "vm.sub.i64"(%449, %992) : (i64, i64) -> i64
%1076 = "vm.sub.i64"(%992, %447) : (i64, i64) -> i64
%1077 = "vm.select.i64"(%1074, %1075, %1076) : (i32, i64, i64) -> i64
%1078 = "vm.div.i64.s"(%1077, %432) : (i64, i64) -> i64
%1079 = "vm.sub.i64"(%449, %1078) : (i64, i64) -> i64
%1080 = "vm.add.i64"(%1078, %447) : (i64, i64) -> i64
%1081 = "vm.select.i64"(%1074, %1079, %1080) : (i32, i64, i64) -> i64
%1082 = "vm.const.i32.zero"() : () -> i32
%1083 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1084 = "vm.const.i32"() <{value = 14 : i32}> : () -> i32
%1085 = "vm.trunc.i64.i32"(%1081) : (i64) -> i32
%1086 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%1087 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%1088 = "vm.const.i32.zero"() : () -> i32
%1089 = "vm.const.i32.zero"() : () -> i32
%1090 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1041, %473, %1084, %1085, %1086, %1087, %1083, %662, %665, %1022, %1025, %654, %657, %658, %661, %1026, %1029, %1082, %1088, %947, %449, %431, %1082, %1089, %1020, %449, %1014, %1082, %1090, %1009, %449, %1003) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1091 = "vm.div.i64.s"(%562, %434) : (i64, i64) -> i64
%1092 = "vm.sub.i64"(%449, %1091) : (i64, i64) -> i64
%1093 = "vm.add.i64"(%1091, %447) : (i64, i64) -> i64
%1094 = "vm.select.i64"(%559, %1092, %1093) : (i32, i64, i64) -> i64
%1095 = "vm.div.i64.s"(%570, %434) : (i64, i64) -> i64
%1096 = "vm.sub.i64"(%449, %1095) : (i64, i64) -> i64
%1097 = "vm.add.i64"(%1095, %447) : (i64, i64) -> i64
%1098 = "vm.select.i64"(%567, %1096, %1097) : (i32, i64, i64) -> i64
%1099 = "vm.const.i32.zero"() : () -> i32
%1100 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1101 = "vm.const.i32"() <{value = 15 : i32}> : () -> i32
%1102 = "vm.trunc.i64.i32"(%1098) : (i64) -> i32
%1103 = "vm.trunc.i64.i32"(%1094) : (i64) -> i32
%1104 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1105 = "vm.const.i32.zero"() : () -> i32
%1106 = "vm.const.i32.zero"() : () -> i32
%1107 = "vm.const.i32.zero"() : () -> i32
%1108 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1041, %473, %1101, %1102, %1103, %1104, %1100, %1030, %1033, %1034, %1037, %543, %546, %547, %550, %1099, %1105, %530, %449, %524, %1099, %1106, %471, %449, %459, %1099, %1107, %1009, %449, %1003, %1099, %1108, %1009, %449, %1003) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1109 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1110 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1111 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1041, %1109, %1110, %1111) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1041) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1112 = "vm.const.i32.zero"() : () -> i32
%1113 = "vm.call"(%472, %1112) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1021, %1113, %1041) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1114 = "vm.const.i32.zero"() : () -> i32
%1115 = "vm.call"(%472, %1114) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1113, %1115, %1020) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1116 = "vm.cmp.lt.i64.s"(%519, %438) : (i64, i64) -> i32
%1117 = "vm.select.i64"(%1116, %437, %519) : (i32, i64, i64) -> i64
%1118 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1119 = "vm.and.i32"(%1116, %1118) : (i32, i32) -> i32
%1120 = "vm.ext.i32.i64.u"(%1119) : (i32) -> i64
%1121 = "vm.mul.i64"(%1117, %435) : (i64, i64) -> i64
%1122 = "vm.mul.i64"(%1121, %520) : (i64, i64) -> i64
%1123 = "vm.add.i64"(%1120, %437) : (i64, i64) -> i64
%1124 = "vm.cmp.lt.i64.s"(%520, %438) : (i64, i64) -> i32
%1125 = "vm.select.i64"(%1124, %1121, %1122) : (i32, i64, i64) -> i64
%1126 = "vm.select.i64"(%1124, %1123, %1120) : (i32, i64, i64) -> i64
%1127 = "vm.cmp.lte.i64.u"(%1126, %437) : (i64, i64) -> i32
%1128 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1129 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1130 = "vm.xor.i32"(%1127, %1129) : (i32, i32) -> i32
"vm.cond_fail"(%1130, %1128) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1131 = "vm.mul.i64"(%519, %435) : (i64, i64) -> i64
%1132 = "vm.mul.i64"(%1131, %520) : (i64, i64) -> i64
%1133 = "vm.div.i64.s"(%1132, %1125) : (i64, i64) -> i64
%1134 = "vm.select.i64"(%1116, %1133, %519) : (i32, i64, i64) -> i64
%1135 = "vm.select.i64"(%1124, %1133, %520) : (i32, i64, i64) -> i64
%1136 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1137 = "vm.and.i32"(%861, %1136) : (i32, i32) -> i32
%1138 = "vm.ext.i32.i64.u"(%1137) : (i32) -> i64
%1139 = "vm.mul.i64"(%862, %492) : (i64, i64) -> i64
%1140 = "vm.add.i64"(%1138, %437) : (i64, i64) -> i64
%1141 = "vm.cmp.lt.i64.s"(%492, %438) : (i64, i64) -> i32
%1142 = "vm.select.i64"(%1141, %862, %1139) : (i32, i64, i64) -> i64
%1143 = "vm.select.i64"(%1141, %1140, %1138) : (i32, i64, i64) -> i64
%1144 = "vm.mul.i64"(%1142, %992) : (i64, i64) -> i64
%1145 = "vm.add.i64"(%1143, %437) : (i64, i64) -> i64
%1146 = "vm.cmp.lt.i64.s"(%992, %438) : (i64, i64) -> i32
%1147 = "vm.select.i64"(%1146, %1142, %1144) : (i32, i64, i64) -> i64
%1148 = "vm.select.i64"(%1146, %1145, %1143) : (i32, i64, i64) -> i64
%1149 = "vm.cmp.lte.i64.u"(%1148, %437) : (i64, i64) -> i32
%1150 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1151 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1152 = "vm.xor.i32"(%1149, %1151) : (i32, i32) -> i32
"vm.cond_fail"(%1152, %1150) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1153 = "vm.mul.i64"(%490, %492) : (i64, i64) -> i64
%1154 = "vm.mul.i64"(%1153, %992) : (i64, i64) -> i64
%1155 = "vm.div.i64.s"(%1154, %1147) : (i64, i64) -> i64
%1156 = "vm.select.i64"(%861, %1155, %490) : (i32, i64, i64) -> i64
%1157 = "vm.select.i64"(%1141, %1155, %492) : (i32, i64, i64) -> i64
%1158 = "vm.select.i64"(%1146, %1155, %992) : (i32, i64, i64) -> i64
%1159 = "vm.cmp.eq.i64"(%1134, %1156) : (i64, i64) -> i32
%1160 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1161 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1162 = "vm.xor.i32"(%1159, %1161) : (i32, i32) -> i32
"vm.cond_fail"(%1162, %1160) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%1163 = "vm.cmp.eq.i64"(%1135, %1157) : (i64, i64) -> i32
%1164 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1165 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1166 = "vm.xor.i32"(%1163, %1165) : (i32, i32) -> i32
"vm.cond_fail"(%1166, %1164) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%1167 = "vm.mul.i64"(%1134, %430) : (i64, i64) -> i64
%1168 = "vm.mul.i64"(%1167, %1135) : (i64, i64) -> i64
%1169 = "vm.cmp.lte.i64.s"(%1158, %449) : (i64, i64) -> i32
%1170 = "vm.sub.i64"(%449, %1158) : (i64, i64) -> i64
%1171 = "vm.sub.i64"(%1158, %447) : (i64, i64) -> i64
%1172 = "vm.select.i64"(%1169, %1170, %1171) : (i32, i64, i64) -> i64
%1173 = "vm.div.i64.s"(%1172, %429) : (i64, i64) -> i64
%1174 = "vm.sub.i64"(%449, %1173) : (i64, i64) -> i64
%1175 = "vm.add.i64"(%1173, %447) : (i64, i64) -> i64
%1176 = "vm.select.i64"(%1169, %1174, %1175) : (i32, i64, i64) -> i64
%1177 = "vm.mul.i64"(%1156, %428) : (i64, i64) -> i64
%1178 = "vm.mul.i64"(%1177, %1176) : (i64, i64) -> i64
%1179 = "vm.mul.i64"(%1178, %1157) : (i64, i64) -> i64
%1180 = "vm.mul.i64"(%1134, %427) : (i64, i64) -> i64
%1181 = "vm.mul.i64"(%1180, %1176) : (i64, i64) -> i64
%1182 = "vm.mul.i64"(%1167, %1158) : (i64, i64) -> i64
%1183 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%1184 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%1185 = "vm.add.i64"(%1179, %1184) : (i64, i64) -> i64
%1186 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%1187 = "vm.and.i64"(%1185, %1186) : (i64, i64) -> i64
%1188 = "vm.add.i64"(%1187, %1182) : (i64, i64) -> i64
%1189 = "vm.const.i32.zero"() : () -> i32
%1190 = "vm.call"(%472, %1189) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1191 = "vm.const.i32.zero"() : () -> i32
%1192 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1193 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1194 = "vm.call"(%472, %460, %1115, %1190, %1191, %1192, %1193, %1188) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1195 = "vm.add.i64"(%1168, %1181) : (i64, i64) -> i64
%1196 = "vm.const.i32.zero"() : () -> i32
%1197 = "vm.call"(%472, %1196) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1198 = "vm.const.i32.zero"() : () -> i32
%1199 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1200 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1201 = "vm.call"(%472, %460, %1115, %1197, %1198, %1199, %1200, %1195) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1202 = "vm.call.variadic"(%1190, %1197) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1203 = "vm.trunc.i64.i32"(%1134) : (i64) -> i32
%1204 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1205 = "vm.shr.i64.u"(%1134, %1204) : (i64, i32) -> i64
%1206 = "vm.trunc.i64.i32"(%1205) : (i64) -> i32
%1207 = "vm.trunc.i64.i32"(%1135) : (i64) -> i32
%1208 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1209 = "vm.shr.i64.u"(%1135, %1208) : (i64, i32) -> i64
%1210 = "vm.trunc.i64.i32"(%1209) : (i64) -> i32
%1211 = "vm.trunc.i64.i32"(%1156) : (i64) -> i32
%1212 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1213 = "vm.shr.i64.u"(%1156, %1212) : (i64, i32) -> i64
%1214 = "vm.trunc.i64.i32"(%1213) : (i64) -> i32
%1215 = "vm.trunc.i64.i32"(%1157) : (i64) -> i32
%1216 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1217 = "vm.shr.i64.u"(%1157, %1216) : (i64, i32) -> i64
%1218 = "vm.trunc.i64.i32"(%1217) : (i64) -> i32
%1219 = "vm.trunc.i64.i32"(%1158) : (i64) -> i32
%1220 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1221 = "vm.shr.i64.u"(%1158, %1220) : (i64, i32) -> i64
%1222 = "vm.trunc.i64.i32"(%1221) : (i64) -> i32
%1223 = "vm.trunc.i64.i32"(%1176) : (i64) -> i32
%1224 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1225 = "vm.shr.i64.u"(%1176, %1224) : (i64, i32) -> i64
%1226 = "vm.trunc.i64.i32"(%1225) : (i64) -> i32
%1227 = "vm.trunc.i64.i32"(%1168) : (i64) -> i32
%1228 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1229 = "vm.shr.i64.u"(%1168, %1228) : (i64, i32) -> i64
%1230 = "vm.trunc.i64.i32"(%1229) : (i64) -> i32
%1231 = "vm.trunc.i64.i32"(%1187) : (i64) -> i32
%1232 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1233 = "vm.shr.i64.u"(%1187, %1232) : (i64, i32) -> i64
%1234 = "vm.trunc.i64.i32"(%1233) : (i64) -> i32
%1235 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1236 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1237 = "vm.const.i32.zero"() : () -> i32
%1238 = "vm.call"(%472, %1235, %1236, %460, %1237) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1239 = "vm.cmp.lte.i64.s"(%1134, %449) : (i64, i64) -> i32
%1240 = "vm.sub.i64"(%449, %1134) : (i64, i64) -> i64
%1241 = "vm.sub.i64"(%1134, %447) : (i64, i64) -> i64
%1242 = "vm.select.i64"(%1239, %1240, %1241) : (i32, i64, i64) -> i64
%1243 = "vm.div.i64.s"(%1242, %432) : (i64, i64) -> i64
%1244 = "vm.sub.i64"(%449, %1243) : (i64, i64) -> i64
%1245 = "vm.add.i64"(%1243, %447) : (i64, i64) -> i64
%1246 = "vm.select.i64"(%1239, %1244, %1245) : (i32, i64, i64) -> i64
%1247 = "vm.cmp.lte.i64.s"(%1135, %449) : (i64, i64) -> i32
%1248 = "vm.sub.i64"(%449, %1135) : (i64, i64) -> i64
%1249 = "vm.sub.i64"(%1135, %447) : (i64, i64) -> i64
%1250 = "vm.select.i64"(%1247, %1248, %1249) : (i32, i64, i64) -> i64
%1251 = "vm.div.i64.s"(%1250, %432) : (i64, i64) -> i64
%1252 = "vm.sub.i64"(%449, %1251) : (i64, i64) -> i64
%1253 = "vm.add.i64"(%1251, %447) : (i64, i64) -> i64
%1254 = "vm.select.i64"(%1247, %1252, %1253) : (i32, i64, i64) -> i64
%1255 = "vm.const.i32.zero"() : () -> i32
%1256 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1257 = "vm.const.i32"() <{value = 16 : i32}> : () -> i32
%1258 = "vm.trunc.i64.i32"(%1254) : (i64) -> i32
%1259 = "vm.const.i32"() <{value = 96 : i32}> : () -> i32
%1260 = "vm.trunc.i64.i32"(%1246) : (i64) -> i32
%1261 = "vm.const.i32.zero"() : () -> i32
%1262 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1238, %473, %1257, %1258, %1259, %1260, %1256, %1034, %1037, %1203, %1206, %1207, %1210, %1255, %1261, %1009, %449, %1003, %1255, %1262, %1201, %449, %1195) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1263 = "vm.cmp.lte.i64.s"(%1156, %449) : (i64, i64) -> i32
%1264 = "vm.sub.i64"(%449, %1156) : (i64, i64) -> i64
%1265 = "vm.sub.i64"(%1156, %447) : (i64, i64) -> i64
%1266 = "vm.select.i64"(%1263, %1264, %1265) : (i32, i64, i64) -> i64
%1267 = "vm.div.i64.s"(%1266, %432) : (i64, i64) -> i64
%1268 = "vm.sub.i64"(%449, %1267) : (i64, i64) -> i64
%1269 = "vm.add.i64"(%1267, %447) : (i64, i64) -> i64
%1270 = "vm.select.i64"(%1263, %1268, %1269) : (i32, i64, i64) -> i64
%1271 = "vm.cmp.lte.i64.s"(%1176, %449) : (i64, i64) -> i32
%1272 = "vm.sub.i64"(%449, %1176) : (i64, i64) -> i64
%1273 = "vm.sub.i64"(%1176, %447) : (i64, i64) -> i64
%1274 = "vm.select.i64"(%1271, %1272, %1273) : (i32, i64, i64) -> i64
%1275 = "vm.div.i64.s"(%1274, %432) : (i64, i64) -> i64
%1276 = "vm.sub.i64"(%449, %1275) : (i64, i64) -> i64
%1277 = "vm.add.i64"(%1275, %447) : (i64, i64) -> i64
%1278 = "vm.select.i64"(%1271, %1276, %1277) : (i32, i64, i64) -> i64
%1279 = "vm.cmp.lte.i64.s"(%1157, %449) : (i64, i64) -> i32
%1280 = "vm.sub.i64"(%449, %1157) : (i64, i64) -> i64
%1281 = "vm.sub.i64"(%1157, %447) : (i64, i64) -> i64
%1282 = "vm.select.i64"(%1279, %1280, %1281) : (i32, i64, i64) -> i64
%1283 = "vm.div.i64.s"(%1282, %428) : (i64, i64) -> i64
%1284 = "vm.sub.i64"(%449, %1283) : (i64, i64) -> i64
%1285 = "vm.add.i64"(%1283, %447) : (i64, i64) -> i64
%1286 = "vm.select.i64"(%1279, %1284, %1285) : (i32, i64, i64) -> i64
%1287 = "vm.const.i32.zero"() : () -> i32
%1288 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1289 = "vm.const.i32"() <{value = 17 : i32}> : () -> i32
%1290 = "vm.trunc.i64.i32"(%1286) : (i64) -> i32
%1291 = "vm.trunc.i64.i32"(%1278) : (i64) -> i32
%1292 = "vm.trunc.i64.i32"(%1270) : (i64) -> i32
%1293 = "vm.const.i32.zero"() : () -> i32
%1294 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1238, %473, %1289, %1290, %1291, %1292, %1288, %662, %665, %407, %407, %1211, %1214, %1215, %1218, %1219, %1222, %1223, %1226, %1287, %1293, %1009, %449, %1003, %1287, %1294, %1194, %449, %1188) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1295 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1296 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1297 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1238, %1295, %1296, %1297) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1298 = "vm.div.i64.s"(%1274, %429) : (i64, i64) -> i64
%1299 = "vm.sub.i64"(%449, %1298) : (i64, i64) -> i64
%1300 = "vm.add.i64"(%1298, %447) : (i64, i64) -> i64
%1301 = "vm.select.i64"(%1271, %1299, %1300) : (i32, i64, i64) -> i64
%1302 = "vm.const.i32.zero"() : () -> i32
%1303 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1304 = "vm.const.i32"() <{value = 18 : i32}> : () -> i32
%1305 = "vm.trunc.i64.i32"(%1301) : (i64) -> i32
%1306 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1307 = "vm.trunc.i64.i32"(%1134) : (i64) -> i32
%1308 = "vm.const.i32.zero"() : () -> i32
%1309 = "vm.const.i32.zero"() : () -> i32
%1310 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1238, %473, %1304, %1305, %1306, %1307, %1303, %1227, %1230, %1207, %1210, %1211, %1214, %1215, %1218, %1203, %1206, %1223, %1226, %1302, %1308, %1201, %449, %1195, %1302, %1309, %1194, %449, %1188, %1302, %1310, %1201, %449, %1195) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1311 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1312 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1313 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1238, %1311, %1312, %1313) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1314 = "vm.div.i64.s"(%1172, %432) : (i64, i64) -> i64
%1315 = "vm.sub.i64"(%449, %1314) : (i64, i64) -> i64
%1316 = "vm.add.i64"(%1314, %447) : (i64, i64) -> i64
%1317 = "vm.select.i64"(%1169, %1315, %1316) : (i32, i64, i64) -> i64
%1318 = "vm.const.i32.zero"() : () -> i32
%1319 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1320 = "vm.const.i32"() <{value = 19 : i32}> : () -> i32
%1321 = "vm.trunc.i64.i32"(%1317) : (i64) -> i32
%1322 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1323 = "vm.trunc.i64.i32"(%1246) : (i64) -> i32
%1324 = "vm.const.i32.zero"() : () -> i32
%1325 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1238, %473, %1320, %1321, %1322, %1323, %1319, %1227, %1230, %1231, %1234, %1223, %1226, %1203, %1206, %1219, %1222, %1318, %1324, %1201, %449, %1195, %1318, %1325, %1194, %449, %1188) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1326 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1327 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1328 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1238, %1326, %1327, %1328) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1238) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1329 = "vm.const.i32.zero"() : () -> i32
%1330 = "vm.call"(%472, %1329) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1202, %1330, %1238) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1331 = "vm.const.i32.zero"() : () -> i32
%1332 = "vm.call"(%472, %1331) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1330, %1332, %1201) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1333 = "vm.cmp.lt.i64.s"(%994, %438) : (i64, i64) -> i32
%1334 = "vm.select.i64"(%1333, %437, %994) : (i32, i64, i64) -> i64
%1335 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1336 = "vm.and.i32"(%1333, %1335) : (i32, i32) -> i32
%1337 = "vm.ext.i32.i64.u"(%1336) : (i32) -> i64
%1338 = "vm.mul.i64"(%1334, %435) : (i64, i64) -> i64
%1339 = "vm.mul.i64"(%1338, %992) : (i64, i64) -> i64
%1340 = "vm.add.i64"(%1337, %437) : (i64, i64) -> i64
%1341 = "vm.select.i64"(%1146, %1338, %1339) : (i32, i64, i64) -> i64
%1342 = "vm.select.i64"(%1146, %1340, %1337) : (i32, i64, i64) -> i64
%1343 = "vm.cmp.lte.i64.u"(%1342, %437) : (i64, i64) -> i32
%1344 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1345 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1346 = "vm.xor.i32"(%1343, %1345) : (i32, i32) -> i32
"vm.cond_fail"(%1346, %1344) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1347 = "vm.mul.i64"(%1134, %435) : (i64, i64) -> i64
%1348 = "vm.mul.i64"(%1347, %1158) : (i64, i64) -> i64
%1349 = "vm.div.i64.s"(%1348, %1341) : (i64, i64) -> i64
%1350 = "vm.select.i64"(%1333, %1349, %994) : (i32, i64, i64) -> i64
%1351 = "vm.select.i64"(%1146, %1349, %992) : (i32, i64, i64) -> i64
%1352 = "vm.mul.i64"(%1350, %430) : (i64, i64) -> i64
%1353 = "vm.mul.i64"(%1352, %1351) : (i64, i64) -> i64
%1354 = "vm.cmp.gte.i64.s"(%519, %438) : (i64, i64) -> i32
%1355 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1356 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1357 = "vm.xor.i32"(%1354, %1356) : (i32, i32) -> i32
"vm.cond_fail"(%1357, %1355) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%1358 = "vm.div.i64.s"(%570, %431) : (i64, i64) -> i64
%1359 = "vm.sub.i64"(%449, %1358) : (i64, i64) -> i64
%1360 = "vm.add.i64"(%1358, %447) : (i64, i64) -> i64
%1361 = "vm.select.i64"(%567, %1359, %1360) : (i32, i64, i64) -> i64
%1362 = "vm.mul.i64"(%519, %426) : (i64, i64) -> i64
%1363 = "vm.mul.i64"(%1362, %1361) : (i64, i64) -> i64
%1364 = "vm.mul.i64"(%519, %425) : (i64, i64) -> i64
%1365 = "vm.add.i64"(%1363, %611) : (i64, i64) -> i64
%1366 = "vm.const.i32.zero"() : () -> i32
%1367 = "vm.call"(%472, %1366) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1368 = "vm.const.i32.zero"() : () -> i32
%1369 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1370 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1371 = "vm.call"(%472, %460, %1115, %1367, %1368, %1369, %1370, %1365) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1372 = "vm.add.i64"(%1364, %1363) : (i64, i64) -> i64
%1373 = "vm.const.i32.zero"() : () -> i32
%1374 = "vm.call"(%472, %1373) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1375 = "vm.const.i32.zero"() : () -> i32
%1376 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1377 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1378 = "vm.call"(%472, %460, %1115, %1374, %1375, %1376, %1377, %1372) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1379 = "vm.call.variadic"(%1367, %1374) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1380 = "vm.trunc.i64.i32"(%1361) : (i64) -> i32
%1381 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1382 = "vm.shr.i64.u"(%1361, %1381) : (i64, i32) -> i64
%1383 = "vm.trunc.i64.i32"(%1382) : (i64) -> i32
%1384 = "vm.trunc.i64.i32"(%1364) : (i64) -> i32
%1385 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1386 = "vm.shr.i64.u"(%1364, %1385) : (i64, i32) -> i64
%1387 = "vm.trunc.i64.i32"(%1386) : (i64) -> i32
%1388 = "vm.trunc.i64.i32"(%1363) : (i64) -> i32
%1389 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1390 = "vm.shr.i64.u"(%1363, %1389) : (i64, i32) -> i64
%1391 = "vm.trunc.i64.i32"(%1390) : (i64) -> i32
%1392 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1393 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1394 = "vm.const.i32.zero"() : () -> i32
%1395 = "vm.call"(%472, %1392, %1393, %460, %1394) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1396 = "vm.cmp.lte.i64.s"(%1361, %449) : (i64, i64) -> i32
%1397 = "vm.sub.i64"(%449, %1361) : (i64, i64) -> i64
%1398 = "vm.sub.i64"(%1361, %447) : (i64, i64) -> i64
%1399 = "vm.select.i64"(%1396, %1397, %1398) : (i32, i64, i64) -> i64
%1400 = "vm.div.i64.s"(%1399, %431) : (i64, i64) -> i64
%1401 = "vm.sub.i64"(%449, %1400) : (i64, i64) -> i64
%1402 = "vm.add.i64"(%1400, %447) : (i64, i64) -> i64
%1403 = "vm.select.i64"(%1396, %1401, %1402) : (i32, i64, i64) -> i64
%1404 = "vm.const.i32.zero"() : () -> i32
%1405 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1406 = "vm.const.i32"() <{value = 20 : i32}> : () -> i32
%1407 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1408 = "vm.trunc.i64.i32"(%1403) : (i64) -> i32
%1409 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1410 = "vm.const.i32.zero"() : () -> i32
%1411 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1395, %473, %1406, %1407, %1408, %1409, %1405, %1030, %1033, %547, %550, %543, %546, %1380, %1383, %1404, %1410, %1009, %449, %1003, %1404, %1411, %1371, %449, %1365) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1412 = "vm.const.i32.zero"() : () -> i32
%1413 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1414 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%1415 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1416 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1417 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1418 = "vm.const.i32.zero"() : () -> i32
%1419 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1395, %473, %1414, %1415, %1416, %1417, %1413, %402, %407, %407, %543, %546, %1412, %1418, %471, %449, %459, %1412, %1419, %1378, %449, %1372) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1420 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1421 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1422 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1395, %1420, %1421, %1422) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1423 = "vm.div.i64.s"(%1399, %464) : (i64, i64) -> i64
%1424 = "vm.sub.i64"(%449, %1423) : (i64, i64) -> i64
%1425 = "vm.add.i64"(%1423, %447) : (i64, i64) -> i64
%1426 = "vm.select.i64"(%1396, %1424, %1425) : (i32, i64, i64) -> i64
%1427 = "vm.const.i32.zero"() : () -> i32
%1428 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1429 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%1430 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%1431 = "vm.trunc.i64.i32"(%1426) : (i64) -> i32
%1432 = "vm.trunc.i64.i32"(%519) : (i64) -> i32
%1433 = "vm.const.i32.zero"() : () -> i32
%1434 = "vm.const.i32.zero"() : () -> i32
%1435 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1395, %473, %1429, %1430, %1431, %1432, %1428, %407, %407, %407, %1384, %1387, %543, %546, %1380, %1383, %1427, %1433, %1371, %449, %1365, %1427, %1434, %1378, %449, %1372, %1427, %1435, %1378, %449, %1372) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1436 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1437 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1438 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1395, %1436, %1437, %1438) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1439 = "vm.const.i32.zero"() : () -> i32
%1440 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1441 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%1442 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1443 = "vm.trunc.i64.i32"(%574) : (i64) -> i32
%1444 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1445 = "vm.const.i32.zero"() : () -> i32
%1446 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1395, %473, %1441, %1442, %1443, %1444, %1440, %1384, %1387, %1388, %1391, %1380, %1383, %543, %546, %547, %550, %1439, %1445, %1378, %449, %1372, %1439, %1446, %1371, %449, %1365) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1447 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1448 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1449 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1395, %1447, %1448, %1449) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1395) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1450 = "vm.const.i32.zero"() : () -> i32
%1451 = "vm.call"(%472, %1450) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1379, %1451, %1395) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1452 = "vm.const.i32.zero"() : () -> i32
%1453 = "vm.call"(%472, %1452) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1451, %1453, %1378) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1454 = "vm.cmp.lte.i64.u"(%1123, %437) : (i64, i64) -> i32
%1455 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1456 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1457 = "vm.xor.i32"(%1454, %1456) : (i32, i32) -> i32
"vm.cond_fail"(%1457, %1455) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1458 = "vm.mul.i64"(%519, %520) : (i64, i64) -> i64
%1459 = "vm.mul.i64"(%1458, %435) : (i64, i64) -> i64
%1460 = "vm.div.i64.s"(%1459, %1121) : (i64, i64) -> i64
%1461 = "vm.select.i64"(%1116, %1460, %519) : (i32, i64, i64) -> i64
%1462 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1463 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1464 = "vm.xor.i32"(%1354, %1463) : (i32, i32) -> i32
"vm.cond_fail"(%1464, %1462) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%1465 = "vm.const.i32.zero"() : () -> i32
%1466 = "vm.call"(%472, %1465) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1467 = "vm.const.i32.zero"() : () -> i32
%1468 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1469 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1470 = "vm.call"(%472, %460, %1453, %1466, %1467, %1468, %1469, %611) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1471 = "vm.const.i32.zero"() : () -> i32
%1472 = "vm.call"(%472, %1471) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1473 = "vm.const.i32.zero"() : () -> i32
%1474 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1475 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1476 = "vm.call"(%472, %460, %1453, %1472, %1473, %1474, %1475, %1372) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1477 = "vm.call.variadic"(%1466, %1472) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1478 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1479 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1480 = "vm.const.i32.zero"() : () -> i32
%1481 = "vm.call"(%472, %1478, %1479, %460, %1480) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1482 = "vm.const.i32.zero"() : () -> i32
%1483 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1484 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%1485 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1486 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1487 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1488 = "vm.const.i32.zero"() : () -> i32
%1489 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1481, %473, %1484, %1485, %1486, %1487, %1483, %401, %407, %407, %543, %546, %1482, %1488, %471, %449, %459, %1482, %1489, %1476, %449, %1372) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1490 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1491 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1492 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1481, %1490, %1491, %1492) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1493 = "vm.const.i32.zero"() : () -> i32
%1494 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1495 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%1496 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%1497 = "vm.trunc.i64.i32"(%1426) : (i64) -> i32
%1498 = "vm.trunc.i64.i32"(%519) : (i64) -> i32
%1499 = "vm.const.i32.zero"() : () -> i32
%1500 = "vm.const.i32.zero"() : () -> i32
%1501 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1481, %473, %1495, %1496, %1497, %1498, %1494, %407, %407, %407, %1384, %1387, %543, %546, %1380, %1383, %1493, %1499, %1371, %449, %1365, %1493, %1500, %1476, %449, %1372, %1493, %1501, %1476, %449, %1372) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1502 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1503 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1504 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1481, %1502, %1503, %1504) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1505 = "vm.const.i32.zero"() : () -> i32
%1506 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1507 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%1508 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1509 = "vm.trunc.i64.i32"(%574) : (i64) -> i32
%1510 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1511 = "vm.const.i32.zero"() : () -> i32
%1512 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1481, %473, %1507, %1508, %1509, %1510, %1506, %1384, %1387, %407, %407, %1380, %1383, %543, %546, %547, %550, %1505, %1511, %1476, %449, %1372, %1505, %1512, %1470, %449, %611) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1513 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1514 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1515 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1481, %1513, %1514, %1515) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1481) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1516 = "vm.const.i32.zero"() : () -> i32
%1517 = "vm.call"(%472, %1516) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1477, %1517, %1481) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1518 = "vm.const.i32.zero"() : () -> i32
%1519 = "vm.call"(%472, %1518) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1517, %1519, %1476) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1520 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1521 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1522 = "vm.xor.i32"(%1454, %1521) : (i32, i32) -> i32
"vm.cond_fail"(%1522, %1520) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1523 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1524 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1525 = "vm.xor.i32"(%1354, %1524) : (i32, i32) -> i32
"vm.cond_fail"(%1525, %1523) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%1526 = "vm.const.i32.zero"() : () -> i32
%1527 = "vm.call"(%472, %1526) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1528 = "vm.const.i32.zero"() : () -> i32
%1529 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1530 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1531 = "vm.call"(%472, %460, %1453, %1527, %1528, %1529, %1530, %611) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1532 = "vm.const.i32.zero"() : () -> i32
%1533 = "vm.call"(%472, %1532) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1534 = "vm.const.i32.zero"() : () -> i32
%1535 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1536 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1537 = "vm.call"(%472, %460, %1453, %1533, %1534, %1535, %1536, %1372) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1538 = "vm.call.variadic"(%1527, %1533) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1539 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1540 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1541 = "vm.const.i32.zero"() : () -> i32
%1542 = "vm.call"(%472, %1539, %1540, %460, %1541) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1543 = "vm.const.i32.zero"() : () -> i32
%1544 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1545 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%1546 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1547 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1548 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1549 = "vm.const.i32.zero"() : () -> i32
%1550 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1542, %473, %1545, %1546, %1547, %1548, %1544, %400, %407, %407, %543, %546, %1543, %1549, %471, %449, %459, %1543, %1550, %1537, %449, %1372) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1551 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1552 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1553 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1542, %1551, %1552, %1553) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1554 = "vm.const.i32.zero"() : () -> i32
%1555 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1556 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%1557 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%1558 = "vm.trunc.i64.i32"(%1426) : (i64) -> i32
%1559 = "vm.trunc.i64.i32"(%519) : (i64) -> i32
%1560 = "vm.const.i32.zero"() : () -> i32
%1561 = "vm.const.i32.zero"() : () -> i32
%1562 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1542, %473, %1556, %1557, %1558, %1559, %1555, %407, %407, %407, %1384, %1387, %543, %546, %1380, %1383, %1554, %1560, %1371, %449, %1365, %1554, %1561, %1537, %449, %1372, %1554, %1562, %1537, %449, %1372) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1563 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1564 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1565 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1542, %1563, %1564, %1565) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1566 = "vm.const.i32.zero"() : () -> i32
%1567 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1568 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%1569 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1570 = "vm.trunc.i64.i32"(%574) : (i64) -> i32
%1571 = "vm.trunc.i64.i32"(%566) : (i64) -> i32
%1572 = "vm.const.i32.zero"() : () -> i32
%1573 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1542, %473, %1568, %1569, %1570, %1571, %1567, %1384, %1387, %407, %407, %1380, %1383, %543, %546, %547, %550, %1566, %1572, %1537, %449, %1372, %1566, %1573, %1531, %449, %611) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1574 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1575 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1576 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1542, %1574, %1575, %1576) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1542) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1577 = "vm.const.i32.zero"() : () -> i32
%1578 = "vm.call"(%472, %1577) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1538, %1578, %1542) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1579 = "vm.const.i32.zero"() : () -> i32
%1580 = "vm.call"(%472, %1579) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1578, %1580, %1537) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1581 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1582 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1583 = "vm.xor.i32"(%1454, %1582) : (i32, i32) -> i32
"vm.cond_fail"(%1583, %1581) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1584 = "vm.cmp.gte.i64.s"(%1350, %438) : (i64, i64) -> i32
%1585 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1586 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1587 = "vm.xor.i32"(%1584, %1586) : (i32, i32) -> i32
"vm.cond_fail"(%1587, %1585) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%1588 = "vm.cmp.lte.i64.s"(%1351, %449) : (i64, i64) -> i32
%1589 = "vm.sub.i64"(%449, %1351) : (i64, i64) -> i64
%1590 = "vm.sub.i64"(%1351, %447) : (i64, i64) -> i64
%1591 = "vm.select.i64"(%1588, %1589, %1590) : (i32, i64, i64) -> i64
%1592 = "vm.div.i64.s"(%1591, %431) : (i64, i64) -> i64
%1593 = "vm.sub.i64"(%449, %1592) : (i64, i64) -> i64
%1594 = "vm.add.i64"(%1592, %447) : (i64, i64) -> i64
%1595 = "vm.select.i64"(%1588, %1593, %1594) : (i32, i64, i64) -> i64
%1596 = "vm.mul.i64"(%1350, %426) : (i64, i64) -> i64
%1597 = "vm.mul.i64"(%1596, %1595) : (i64, i64) -> i64
%1598 = "vm.mul.i64"(%1350, %425) : (i64, i64) -> i64
%1599 = "vm.const.i32.zero"() : () -> i32
%1600 = "vm.call"(%472, %1599) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1601 = "vm.const.i32.zero"() : () -> i32
%1602 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%1603 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%1604 = "vm.call"(%472, %460, %1332, %1600, %1601, %1602, %1603, %431) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1605 = "vm.add.i64"(%1597, %432) : (i64, i64) -> i64
%1606 = "vm.add.i64"(%1605, %1353) : (i64, i64) -> i64
%1607 = "vm.const.i32.zero"() : () -> i32
%1608 = "vm.call"(%472, %1607) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1609 = "vm.const.i32.zero"() : () -> i32
%1610 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1611 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1612 = "vm.call"(%472, %460, %1332, %1608, %1609, %1610, %1611, %1606) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1613 = "vm.add.i64"(%1598, %1597) : (i64, i64) -> i64
%1614 = "vm.const.i32.zero"() : () -> i32
%1615 = "vm.call"(%472, %1614) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1616 = "vm.const.i32.zero"() : () -> i32
%1617 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1618 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1619 = "vm.call"(%472, %460, %1332, %1615, %1616, %1617, %1618, %1613) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1620 = "vm.call.variadic"(%1600, %1608, %1615) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1621 = "vm.trunc.i64.i32"(%478) : (i64) -> i32
%1622 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1623 = "vm.shr.i64.u"(%478, %1622) : (i64, i32) -> i64
%1624 = "vm.trunc.i64.i32"(%1623) : (i64) -> i32
%1625 = "vm.trunc.i64.i32"(%476) : (i64) -> i32
%1626 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1627 = "vm.shr.i64.u"(%476, %1626) : (i64, i32) -> i64
%1628 = "vm.trunc.i64.i32"(%1627) : (i64) -> i32
%1629 = "vm.trunc.i64.i32"(%1351) : (i64) -> i32
%1630 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1631 = "vm.shr.i64.u"(%1351, %1630) : (i64, i32) -> i64
%1632 = "vm.trunc.i64.i32"(%1631) : (i64) -> i32
%1633 = "vm.trunc.i64.i32"(%1350) : (i64) -> i32
%1634 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1635 = "vm.shr.i64.u"(%1350, %1634) : (i64, i32) -> i64
%1636 = "vm.trunc.i64.i32"(%1635) : (i64) -> i32
%1637 = "vm.trunc.i64.i32"(%1595) : (i64) -> i32
%1638 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1639 = "vm.shr.i64.u"(%1595, %1638) : (i64, i32) -> i64
%1640 = "vm.trunc.i64.i32"(%1639) : (i64) -> i32
%1641 = "vm.trunc.i64.i32"(%1598) : (i64) -> i32
%1642 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1643 = "vm.shr.i64.u"(%1598, %1642) : (i64, i32) -> i64
%1644 = "vm.trunc.i64.i32"(%1643) : (i64) -> i32
%1645 = "vm.trunc.i64.i32"(%1605) : (i64) -> i32
%1646 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1647 = "vm.shr.i64.u"(%1605, %1646) : (i64, i32) -> i64
%1648 = "vm.trunc.i64.i32"(%1647) : (i64) -> i32
%1649 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1650 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1651 = "vm.const.i32.zero"() : () -> i32
%1652 = "vm.call"(%472, %1649, %1650, %460, %1651) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1653 = "vm.cmp.lte.i64.s"(%1350, %449) : (i64, i64) -> i32
%1654 = "vm.sub.i64"(%449, %1350) : (i64, i64) -> i64
%1655 = "vm.sub.i64"(%1350, %447) : (i64, i64) -> i64
%1656 = "vm.select.i64"(%1653, %1654, %1655) : (i32, i64, i64) -> i64
%1657 = "vm.div.i64.s"(%1656, %434) : (i64, i64) -> i64
%1658 = "vm.sub.i64"(%449, %1657) : (i64, i64) -> i64
%1659 = "vm.add.i64"(%1657, %447) : (i64, i64) -> i64
%1660 = "vm.select.i64"(%1653, %1658, %1659) : (i32, i64, i64) -> i64
%1661 = "vm.cmp.lte.i64.s"(%1595, %449) : (i64, i64) -> i32
%1662 = "vm.sub.i64"(%449, %1595) : (i64, i64) -> i64
%1663 = "vm.sub.i64"(%1595, %447) : (i64, i64) -> i64
%1664 = "vm.select.i64"(%1661, %1662, %1663) : (i32, i64, i64) -> i64
%1665 = "vm.div.i64.s"(%1664, %429) : (i64, i64) -> i64
%1666 = "vm.sub.i64"(%449, %1665) : (i64, i64) -> i64
%1667 = "vm.add.i64"(%1665, %447) : (i64, i64) -> i64
%1668 = "vm.select.i64"(%1661, %1666, %1667) : (i32, i64, i64) -> i64
%1669 = "vm.const.i32.zero"() : () -> i32
%1670 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1671 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%1672 = "vm.trunc.i64.i32"(%1668) : (i64) -> i32
%1673 = "vm.trunc.i64.i32"(%1660) : (i64) -> i32
%1674 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1675 = "vm.const.i32.zero"() : () -> i32
%1676 = "vm.const.i32.zero"() : () -> i32
%1677 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1652, %473, %1671, %1672, %1673, %1674, %1670, %1231, %1234, %399, %398, %1026, %1029, %654, %657, %1621, %1624, %1625, %1628, %658, %661, %1629, %1632, %1633, %1636, %1637, %1640, %1669, %1675, %1194, %449, %1188, %1669, %1676, %471, %449, %459, %1669, %1677, %1612, %449, %1606) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 20, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1678 = "vm.div.i64.s"(%1656, %432) : (i64, i64) -> i64
%1679 = "vm.sub.i64"(%449, %1678) : (i64, i64) -> i64
%1680 = "vm.add.i64"(%1678, %447) : (i64, i64) -> i64
%1681 = "vm.select.i64"(%1653, %1679, %1680) : (i32, i64, i64) -> i64
%1682 = "vm.const.i32.zero"() : () -> i32
%1683 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1684 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%1685 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1686 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1687 = "vm.trunc.i64.i32"(%1681) : (i64) -> i32
%1688 = "vm.const.i32.zero"() : () -> i32
%1689 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1652, %473, %1684, %1685, %1686, %1687, %1683, %401, %407, %407, %1633, %1636, %1682, %1688, %471, %449, %459, %1682, %1689, %1619, %449, %1613) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1690 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1691 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1692 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1652, %1690, %1691, %1692) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1693 = "vm.div.i64.s"(%1664, %464) : (i64, i64) -> i64
%1694 = "vm.sub.i64"(%449, %1693) : (i64, i64) -> i64
%1695 = "vm.add.i64"(%1693, %447) : (i64, i64) -> i64
%1696 = "vm.select.i64"(%1661, %1694, %1695) : (i32, i64, i64) -> i64
%1697 = "vm.const.i32.zero"() : () -> i32
%1698 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1699 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%1700 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%1701 = "vm.trunc.i64.i32"(%1696) : (i64) -> i32
%1702 = "vm.trunc.i64.i32"(%1350) : (i64) -> i32
%1703 = "vm.const.i32.zero"() : () -> i32
%1704 = "vm.const.i32.zero"() : () -> i32
%1705 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1652, %473, %1699, %1700, %1701, %1702, %1698, %398, %407, %407, %1641, %1644, %1633, %1636, %1637, %1640, %1697, %1703, %1612, %449, %1606, %1697, %1704, %1619, %449, %1613, %1697, %1705, %1619, %449, %1613) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1706 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1707 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1708 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1652, %1706, %1707, %1708) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1709 = "vm.div.i64.s"(%1591, %432) : (i64, i64) -> i64
%1710 = "vm.sub.i64"(%449, %1709) : (i64, i64) -> i64
%1711 = "vm.add.i64"(%1709, %447) : (i64, i64) -> i64
%1712 = "vm.select.i64"(%1588, %1710, %1711) : (i32, i64, i64) -> i64
%1713 = "vm.const.i32.zero"() : () -> i32
%1714 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1715 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%1716 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1717 = "vm.trunc.i64.i32"(%1712) : (i64) -> i32
%1718 = "vm.trunc.i64.i32"(%1681) : (i64) -> i32
%1719 = "vm.const.i32.zero"() : () -> i32
%1720 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1652, %473, %1715, %1716, %1717, %1718, %1714, %1641, %1644, %1645, %1648, %1637, %1640, %1633, %1636, %1629, %1632, %1713, %1719, %1619, %449, %1613, %1713, %1720, %1612, %449, %1606) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1721 = "vm.const.i32.zero"() : () -> i32
%1722 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1723 = "vm.const.i32"() <{value = 25 : i32}> : () -> i32
%1724 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1725 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1726 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1727 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1652, %473, %1723, %1724, %1725, %1726, %1722, %1621, %1624, %1625, %1628, %654, %657, %1026, %1029, %658, %661, %1721, %1727, %1612, %449, %1606) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1728 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1729 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1730 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1652, %1728, %1729, %1730) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1731 = "vm.const.i32.zero"() : () -> i32
%1732 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1652, %1731, %1732, %1612, %449, %1604, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1733 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1734 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1735 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1652, %1733, %1734, %1735) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1652) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1736 = "vm.const.i32.zero"() : () -> i32
%1737 = "vm.call"(%472, %1736) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1620, %1737, %1652) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1738 = "vm.const.i32.zero"() : () -> i32
%1739 = "vm.call"(%472, %1738) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1737, %1739, %1619) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1740 = "vm.call.variadic"(%462, %1739) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%1740, %1740) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%1741 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%1742 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%1743 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%1744 = "vm.call"(%1604, %1743, %1741) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%1745 = "vm.ext.i32.i64.u"(%1744) : (i32) -> i64
%1746 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1747 = "vm.shl.i64"(%1745, %1746) : (i64, i32) -> i64
%1748 = "vm.call"(%1604, %449, %1741) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%1749 = "vm.ext.i32.i64.u"(%1748) : (i32) -> i64
%1750 = "vm.or.i64"(%1749, %1747) : (i64, i64) -> i64
%1751 = "vm.cmp.lt.i64.s"(%1750, %438) : (i64, i64) -> i32
%1752 = "vm.select.i64"(%1751, %437, %1750) : (i32, i64, i64) -> i64
%1753 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1754 = "vm.and.i32"(%1751, %1753) : (i32, i32) -> i32
%1755 = "vm.ext.i32.i64.u"(%1754) : (i32) -> i64
%1756 = "vm.add.i64"(%1755, %437) : (i64, i64) -> i64
%1757 = "vm.mul.i64"(%1752, %435) : (i64, i64) -> i64
%1758 = "vm.cmp.lte.i64.u"(%1756, %437) : (i64, i64) -> i32
%1759 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1760 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1761 = "vm.xor.i32"(%1758, %1760) : (i32, i32) -> i32
"vm.cond_fail"(%1761, %1759) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1762 = "vm.mul.i64"(%1350, %1351) : (i64, i64) -> i64
%1763 = "vm.mul.i64"(%1762, %435) : (i64, i64) -> i64
%1764 = "vm.div.i64.s"(%1763, %1757) : (i64, i64) -> i64
%1765 = "vm.select.i64"(%1751, %1764, %1750) : (i32, i64, i64) -> i64
%1766 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1767 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1768 = "vm.xor.i32"(%1584, %1767) : (i32, i32) -> i32
"vm.cond_fail"(%1768, %1766) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%1769 = "vm.const.i32.zero"() : () -> i32
%1770 = "vm.call"(%472, %1769) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1771 = "vm.const.i32.zero"() : () -> i32
%1772 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1773 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1774 = "vm.call"(%472, %460, %1739, %1770, %1771, %1772, %1773, %1353) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1775 = "vm.const.i32.zero"() : () -> i32
%1776 = "vm.call"(%472, %1775) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1777 = "vm.const.i32.zero"() : () -> i32
%1778 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1779 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1780 = "vm.call"(%472, %460, %1739, %1776, %1777, %1778, %1779, %1613) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1781 = "vm.call.variadic"(%1770, %1776) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1782 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1783 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1784 = "vm.const.i32.zero"() : () -> i32
%1785 = "vm.call"(%472, %1782, %1783, %460, %1784) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1786 = "vm.const.i32.zero"() : () -> i32
%1787 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1788 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%1789 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1790 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1791 = "vm.trunc.i64.i32"(%1681) : (i64) -> i32
%1792 = "vm.const.i32.zero"() : () -> i32
%1793 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1785, %473, %1788, %1789, %1790, %1791, %1787, %400, %407, %407, %1633, %1636, %1786, %1792, %471, %449, %459, %1786, %1793, %1780, %449, %1613) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1794 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1795 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1796 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1785, %1794, %1795, %1796) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1797 = "vm.const.i32.zero"() : () -> i32
%1798 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1799 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%1800 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%1801 = "vm.trunc.i64.i32"(%1696) : (i64) -> i32
%1802 = "vm.trunc.i64.i32"(%1350) : (i64) -> i32
%1803 = "vm.const.i32.zero"() : () -> i32
%1804 = "vm.const.i32.zero"() : () -> i32
%1805 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1785, %473, %1799, %1800, %1801, %1802, %1798, %398, %407, %407, %1641, %1644, %1633, %1636, %1637, %1640, %1797, %1803, %1612, %449, %1606, %1797, %1804, %1780, %449, %1613, %1797, %1805, %1780, %449, %1613) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1806 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1807 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1808 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1785, %1806, %1807, %1808) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1809 = "vm.const.i32.zero"() : () -> i32
%1810 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1811 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%1812 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%1813 = "vm.trunc.i64.i32"(%1712) : (i64) -> i32
%1814 = "vm.trunc.i64.i32"(%1681) : (i64) -> i32
%1815 = "vm.const.i32.zero"() : () -> i32
%1816 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1785, %473, %1811, %1812, %1813, %1814, %1810, %1641, %1644, %407, %407, %1637, %1640, %1633, %1636, %1629, %1632, %1809, %1815, %1780, %449, %1613, %1809, %1816, %1774, %449, %1353) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1817 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1818 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1819 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1785, %1817, %1818, %1819) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1785) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1820 = "vm.const.i32.zero"() : () -> i32
%1821 = "vm.call"(%472, %1820) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1781, %1821, %1785) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1822 = "vm.const.i32.zero"() : () -> i32
%1823 = "vm.call"(%472, %1822) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1821, %1823, %1780) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1824 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1825 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1826 = "vm.xor.i32"(%1758, %1825) : (i32, i32) -> i32
"vm.cond_fail"(%1826, %1824) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%1827 = "vm.const.i32.zero"() : () -> i32
%1828 = "vm.call"(%472, %1827) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1829 = "vm.const.i32.zero"() : () -> i32
%1830 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%1831 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%1832 = "vm.call"(%472, %460, %461, %1828, %1829, %1830, %1831, %416) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1833 = "vm.const.i32.zero"() : () -> i32
%1834 = "vm.call"(%472, %1833) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1835 = "vm.const.i32.zero"() : () -> i32
%1836 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1837 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1838 = "vm.call"(%472, %460, %461, %1834, %1835, %1836, %1837, %432) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1839 = "vm.const.i32.zero"() : () -> i32
%1840 = "vm.call"(%472, %1839) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1841 = "vm.const.i32.zero"() : () -> i32
%1842 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1843 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1844 = "vm.call"(%472, %460, %461, %1840, %1841, %1842, %1843, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1845 = "vm.call.variadic"(%1828, %1834, %1840) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%1846 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1847 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%1848 = "vm.const.i32.zero"() : () -> i32
%1849 = "vm.call"(%472, %1846, %1847, %460, %1848) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%1850 = "vm.const.i32.zero"() : () -> i32
%1851 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1852 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1844, %449, %432, %1850, %1852, %1851) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%1853 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1854 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1855 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1853, %1854, %1855) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1856 = "vm.const.i32.zero"() : () -> i32
%1857 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1858 = "vm.const.i32"() <{value = 26 : i32}> : () -> i32
%1859 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1860 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1861 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1862 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1849, %473, %1858, %1859, %1860, %1861, %1857, %1621, %1624, %1625, %1628, %1856, %1862, %1844, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1863 = "vm.const.i32.zero"() : () -> i32
%1864 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1865 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1844, %423, %428, %1863, %1865, %1864) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%1866 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1867 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1868 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1866, %1867, %1868) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1869 = "vm.const.i32.zero"() : () -> i32
%1870 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%1871 = "vm.const.i32"() <{value = 27 : i32}> : () -> i32
%1872 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1873 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1874 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1875 = "vm.const.i32.zero"() : () -> i32
%1876 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%1849, %473, %1871, %1872, %1873, %1874, %1870, %1869, %1875, %1844, %449, %441, %1869, %1876, %1838, %449, %432) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 0, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1877 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1878 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1879 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1877, %1878, %1879) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1880 = "vm.const.i32.zero"() : () -> i32
%1881 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1880, %1881, %1838, %449, %1844, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1882 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1883 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1884 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1882, %1883, %1884) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1885 = "vm.const.i32.zero"() : () -> i32
%1886 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1885, %1886, %1844, %449, %1832, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1887 = "vm.const.i32.zero"() : () -> i32
%1888 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1887, %1888, %1838, %431, %1844, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1889 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1890 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1891 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1889, %1890, %1891) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1892 = "vm.const.i32.zero"() : () -> i32
%1893 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1892, %1893, %1844, %432, %1832, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1894 = "vm.const.i32.zero"() : () -> i32
%1895 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1894, %1895, %1838, %428, %1844, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1896 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1897 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1898 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1896, %1897, %1898) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1899 = "vm.const.i32.zero"() : () -> i32
%1900 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1899, %1900, %1844, %449, %1832, %441, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1901 = "vm.const.i32.zero"() : () -> i32
%1902 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1901, %1902, %1838, %421, %1844, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1903 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1904 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1905 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1903, %1904, %1905) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1906 = "vm.const.i32.zero"() : () -> i32
%1907 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1906, %1907, %1844, %432, %1832, %451, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1908 = "vm.const.i32.zero"() : () -> i32
%1909 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1908, %1909, %1838, %434, %1844, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1910 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1911 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1912 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1910, %1911, %1912) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1913 = "vm.const.i32.zero"() : () -> i32
%1914 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1913, %1914, %1844, %449, %1832, %420, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1915 = "vm.const.i32.zero"() : () -> i32
%1916 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1915, %1916, %1838, %424, %1844, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1917 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1918 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1919 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1917, %1918, %1919) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1920 = "vm.const.i32.zero"() : () -> i32
%1921 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1920, %1921, %1844, %432, %1832, %453, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1922 = "vm.const.i32.zero"() : () -> i32
%1923 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1922, %1923, %1838, %423, %1844, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1924 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1925 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1926 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1924, %1925, %1926) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1927 = "vm.const.i32.zero"() : () -> i32
%1928 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1927, %1928, %1844, %449, %1832, %454, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1929 = "vm.const.i32.zero"() : () -> i32
%1930 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1929, %1930, %1838, %422, %1844, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1931 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1932 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1933 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1931, %1932, %1933) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%1934 = "vm.const.i32.zero"() : () -> i32
%1935 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1934, %1935, %1844, %432, %1832, %455, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%1936 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%1937 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%1938 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%1849, %1936, %1937, %1938) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%1849) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%1939 = "vm.const.i32.zero"() : () -> i32
%1940 = "vm.call"(%472, %1939) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %1845, %1940, %1849) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%1941 = "vm.const.i32.zero"() : () -> i32
%1942 = "vm.call"(%472, %1941) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %1940, %1942, %1844) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%1943 = "vm.call.variadic"(%462, %1942) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%1943, %1943) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%1944 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%1945 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%1946 = "vm.const.i64"() <{value = 452 : i64}> : () -> i64
%1947 = "vm.call"(%1832, %1946, %1944) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%1948 = "vm.ext.i32.i64.u"(%1947) : (i32) -> i64
%1949 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%1950 = "vm.shl.i64"(%1948, %1949) : (i64, i32) -> i64
%1951 = "vm.call"(%1832, %455, %1944) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%1952 = "vm.ext.i32.i64.u"(%1951) : (i32) -> i64
%1953 = "vm.or.i64"(%1952, %1950) : (i64, i64) -> i64
%1954 = "vm.cmp.gte.i64.s"(%1765, %437) : (i64, i64) -> i32
%1955 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1956 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1957 = "vm.xor.i32"(%1954, %1956) : (i32, i32) -> i32
"vm.cond_fail"(%1957, %1955) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%1958 = "vm.cmp.gte.i64.s"(%1764, %437) : (i64, i64) -> i32
%1959 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1960 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1961 = "vm.xor.i32"(%1958, %1960) : (i32, i32) -> i32
"vm.cond_fail"(%1961, %1959) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%1962 = "vm.mul.i64"(%1765, %430) : (i64, i64) -> i64
%1963 = "vm.cmp.gte.i64.s"(%1765, %438) : (i64, i64) -> i32
%1964 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1965 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1966 = "vm.xor.i32"(%1963, %1965) : (i32, i32) -> i32
"vm.cond_fail"(%1966, %1964) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%1967 = "vm.cmp.gte.i64.s"(%1764, %438) : (i64, i64) -> i32
%1968 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1969 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1970 = "vm.xor.i32"(%1967, %1969) : (i32, i32) -> i32
"vm.cond_fail"(%1970, %1968) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%1971 = "vm.cmp.lt.i64.s"(%1764, %438) : (i64, i64) -> i32
%1972 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1973 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1974 = "vm.xor.i32"(%1954, %1973) : (i32, i32) -> i32
"vm.cond_fail"(%1974, %1972) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%1975 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1976 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1977 = "vm.xor.i32"(%1958, %1976) : (i32, i32) -> i32
"vm.cond_fail"(%1977, %1975) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%1978 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1979 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1980 = "vm.xor.i32"(%1963, %1979) : (i32, i32) -> i32
"vm.cond_fail"(%1980, %1978) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%1981 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%1982 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%1983 = "vm.xor.i32"(%1967, %1982) : (i32, i32) -> i32
"vm.cond_fail"(%1983, %1981) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%1984 = "vm.const.i32.zero"() : () -> i32
%1985 = "vm.call"(%472, %1984) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1986 = "vm.const.i32.zero"() : () -> i32
%1987 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%1988 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%1989 = "vm.call"(%472, %460, %461, %1985, %1986, %1987, %1988, %420) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1990 = "vm.const.i32.zero"() : () -> i32
%1991 = "vm.call"(%472, %1990) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1992 = "vm.const.i32.zero"() : () -> i32
%1993 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%1994 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%1995 = "vm.call"(%472, %460, %461, %1991, %1992, %1993, %1994, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%1996 = "vm.const.i32.zero"() : () -> i32
%1997 = "vm.call"(%472, %1996) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%1998 = "vm.const.i32.zero"() : () -> i32
%1999 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%2000 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%2001 = "vm.call"(%472, %460, %461, %1997, %1998, %1999, %2000, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%2002 = "vm.call.variadic"(%1985, %1991, %1997) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%2003 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2004 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%2005 = "vm.const.i32.zero"() : () -> i32
%2006 = "vm.call"(%472, %2003, %2004, %460, %2005) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%2007 = "vm.const.i32.zero"() : () -> i32
%2008 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%2009 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%2010 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2011 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2012 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2013 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%2006, %473, %2009, %2010, %2011, %2012, %2008, %658, %661, %2007, %2013, %1995, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2014 = "vm.const.i32.zero"() : () -> i32
%2015 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2016 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2001, %449, %434, %2014, %2016, %2015) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%2017 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2018 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2019 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2017, %2018, %2019) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2020 = "vm.const.i32.zero"() : () -> i32
%2021 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2020, %2021, %1995, %449, %2001, %431, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2022 = "vm.const.i32.zero"() : () -> i32
%2023 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2024 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2001, %428, %428, %2022, %2024, %2023) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%2025 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2026 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2027 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2025, %2026, %2027) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2028 = "vm.const.i32.zero"() : () -> i32
%2029 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%2030 = "vm.const.i32"() <{value = 49 : i32}> : () -> i32
%2031 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2032 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2033 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2034 = "vm.const.i32.zero"() : () -> i32
%2035 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%2006, %473, %2030, %2031, %2032, %2033, %2029, %2028, %2034, %2001, %449, %441, %2028, %2035, %1995, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 0, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2036 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2037 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2038 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2036, %2037, %2038) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2039 = "vm.const.i32.zero"() : () -> i32
%2040 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2039, %2040, %1995, %432, %2001, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2041 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2042 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2043 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2041, %2042, %2043) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2044 = "vm.const.i32.zero"() : () -> i32
%2045 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2044, %2045, %2001, %449, %1989, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2046 = "vm.const.i32.zero"() : () -> i32
%2047 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2046, %2047, %1995, %456, %2001, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2048 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2049 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2050 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2048, %2049, %2050) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2051 = "vm.const.i32.zero"() : () -> i32
%2052 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2051, %2052, %2001, %432, %1989, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2053 = "vm.const.i32.zero"() : () -> i32
%2054 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2053, %2054, %1995, %457, %2001, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2055 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2056 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2057 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2055, %2056, %2057) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2058 = "vm.const.i32.zero"() : () -> i32
%2059 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2058, %2059, %2001, %449, %1989, %441, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2060 = "vm.const.i32.zero"() : () -> i32
%2061 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2060, %2061, %1995, %458, %2001, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2062 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2063 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2064 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2062, %2063, %2064) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%2065 = "vm.const.i32.zero"() : () -> i32
%2066 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2065, %2066, %2001, %432, %1989, %451, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2067 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%2068 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%2069 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%2006, %2067, %2068, %2069) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%2006) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%2070 = "vm.const.i32.zero"() : () -> i32
%2071 = "vm.call"(%472, %2070) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %2002, %2071, %2006) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%2072 = "vm.const.i32.zero"() : () -> i32
%2073 = "vm.call"(%472, %2072) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %2071, %2073, %2001) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%2074 = "vm.call.variadic"(%462, %2073) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%2074, %2074) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%2075 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%2076 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%2077 = "vm.const.i64"() <{value = 196 : i64}> : () -> i64
%2078 = "vm.call"(%1989, %2077, %2075) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%2079 = "vm.ext.i32.i64.u"(%2078) : (i32) -> i64
%2080 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%2081 = "vm.shl.i64"(%2079, %2080) : (i64, i32) -> i64
%2082 = "vm.call"(%1989, %451, %2075) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%2083 = "vm.ext.i32.i64.u"(%2082) : (i32) -> i64
%2084 = "vm.or.i64"(%2083, %2081) : (i64, i64) -> i64
%2085 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2086 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2087 = "vm.xor.i32"(%612, %2086) : (i32, i32) -> i32
"vm.cond_fail"(%2087, %2085) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2088 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2089 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2090 = "vm.xor.i32"(%616, %2089) : (i32, i32) -> i32
"vm.cond_fail"(%2090, %2088) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2091 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2092 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2093 = "vm.xor.i32"(%928, %2092) : (i32, i32) -> i32
"vm.cond_fail"(%2093, %2091) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2094 = "vm.mul.i64"(%495, %927) : (i64, i64) -> i64
%2095 = "vm.mul.i64"(%490, %492) : (i64, i64) -> i64
%2096 = "vm.mul.i64"(%2095, %927) : (i64, i64) -> i64
%2097 = "vm.mul.i64"(%2096, %423) : (i64, i64) -> i64
%2098 = "vm.mul.i64"(%490, %423) : (i64, i64) -> i64
%2099 = "vm.mul.i64"(%2098, %492) : (i64, i64) -> i64
%2100 = "vm.mul.i64"(%2099, %927) : (i64, i64) -> i64
%2101 = "vm.const.i32.zero"() : () -> i32
%2102 = "vm.call"(%472, %2101) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%2103 = "vm.const.i32.zero"() : () -> i32
%2104 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%2105 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%2106 = "vm.call"(%472, %460, %2073, %2102, %2103, %2104, %2105, %416) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%2107 = "vm.const.i32.zero"() : () -> i32
%2108 = "vm.call"(%472, %2107) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%2109 = "vm.const.i32.zero"() : () -> i32
%2110 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%2111 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%2112 = "vm.call"(%472, %460, %2073, %2108, %2109, %2110, %2111, %432) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%2113 = "vm.const.i32.zero"() : () -> i32
%2114 = "vm.call"(%472, %2113) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%2115 = "vm.const.i32.zero"() : () -> i32
%2116 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%2117 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%2118 = "vm.call"(%472, %460, %2073, %2114, %2115, %2116, %2117, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%2119 = "vm.call.variadic"(%2102, %2108, %2114) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%2120 = "vm.const.i32.zero"() : () -> i32
%2121 = "vm.call"(%472, %2120) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %2119, %2121, %474, %1995, %449, %441, %2106, %449, %416, %2112, %449, %432, %2118, %449, %441) <{callee = @hal.device.queue.execute.indirect, segment_sizes = dense<[-1, -1, -1, -1, -1, 4]> : vector<6xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>, tuple<!vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, !vm.ref<!hal.buffer>, i64, i64, !vm.ref<!hal.buffer>, i64, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%2122 = "vm.const.i32.zero"() : () -> i32
%2123 = "vm.call"(%472, %2122) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %2121, %2123, %2118) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%2124 = "vm.call.variadic"(%462, %2123) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%2124, %2124) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%2125 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%2126 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%2127 = "vm.const.i64"() <{value = 452 : i64}> : () -> i64
%2128 = "vm.call"(%2106, %2127, %2125) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%2129 = "vm.ext.i32.i64.u"(%2128) : (i32) -> i64
%2130 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%2131 = "vm.shl.i64"(%2129, %2130) : (i64, i32) -> i64
%2132 = "vm.call"(%2106, %455, %2125) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%2133 = "vm.ext.i32.i64.u"(%2132) : (i32) -> i64
%2134 = "vm.or.i64"(%2133, %2131) : (i64, i64) -> i64
%2135 = "vm.cmp.lt.i64.s"(%520, %449) : (i64, i64) -> i32
%2136 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2137 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2138 = "vm.xor.i32"(%1354, %2137) : (i32, i32) -> i32
"vm.cond_fail"(%2138, %2136) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2139 = "vm.mul.i64"(%519, %414) : (i64, i64) -> i64
%2140 = "vm.mul.i64"(%519, %413) : (i64, i64) -> i64
%2141 = "vm.mul.i64"(%2140, %1361) : (i64, i64) -> i64
%2142 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2143 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2144 = "vm.xor.i32"(%1354, %2143) : (i32, i32) -> i32
"vm.cond_fail"(%2144, %2142) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2145 = "vm.mul.i64"(%519, %412) : (i64, i64) -> i64
%2146 = "vm.mul.i64"(%2145, %520) : (i64, i64) -> i64
%2147 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2148 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2149 = "vm.xor.i32"(%1354, %2148) : (i32, i32) -> i32
"vm.cond_fail"(%2149, %2147) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2150 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2151 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2152 = "vm.xor.i32"(%1127, %2151) : (i32, i32) -> i32
"vm.cond_fail"(%2152, %2150) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2153 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2154 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2155 = "vm.xor.i32"(%1149, %2154) : (i32, i32) -> i32
"vm.cond_fail"(%2155, %2153) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2156 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2157 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2158 = "vm.xor.i32"(%1159, %2157) : (i32, i32) -> i32
"vm.cond_fail"(%2158, %2156) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2159 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2160 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2161 = "vm.xor.i32"(%1163, %2160) : (i32, i32) -> i32
"vm.cond_fail"(%2161, %2159) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2162 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2163 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2164 = "vm.xor.i32"(%1343, %2163) : (i32, i32) -> i32
"vm.cond_fail"(%2164, %2162) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2165 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2166 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2167 = "vm.xor.i32"(%1354, %2166) : (i32, i32) -> i32
"vm.cond_fail"(%2167, %2165) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2168 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2169 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2170 = "vm.xor.i32"(%1454, %2169) : (i32, i32) -> i32
"vm.cond_fail"(%2170, %2168) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2171 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2172 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2173 = "vm.xor.i32"(%1354, %2172) : (i32, i32) -> i32
"vm.cond_fail"(%2173, %2171) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2174 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2175 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2176 = "vm.xor.i32"(%1454, %2175) : (i32, i32) -> i32
"vm.cond_fail"(%2176, %2174) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2177 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2178 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2179 = "vm.xor.i32"(%1354, %2178) : (i32, i32) -> i32
"vm.cond_fail"(%2179, %2177) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2180 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2181 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2182 = "vm.xor.i32"(%1454, %2181) : (i32, i32) -> i32
"vm.cond_fail"(%2182, %2180) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2183 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2184 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2185 = "vm.xor.i32"(%1584, %2184) : (i32, i32) -> i32
"vm.cond_fail"(%2185, %2183) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2186 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2187 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2188 = "vm.xor.i32"(%1758, %2187) : (i32, i32) -> i32
"vm.cond_fail"(%2188, %2186) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2189 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2190 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2191 = "vm.xor.i32"(%1584, %2190) : (i32, i32) -> i32
"vm.cond_fail"(%2191, %2189) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2192 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2193 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2194 = "vm.xor.i32"(%1758, %2193) : (i32, i32) -> i32
"vm.cond_fail"(%2194, %2192) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2195 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2196 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2197 = "vm.xor.i32"(%1954, %2196) : (i32, i32) -> i32
"vm.cond_fail"(%2197, %2195) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2198 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2199 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2200 = "vm.xor.i32"(%1958, %2199) : (i32, i32) -> i32
"vm.cond_fail"(%2200, %2198) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2201 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2202 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2203 = "vm.xor.i32"(%1963, %2202) : (i32, i32) -> i32
"vm.cond_fail"(%2203, %2201) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2204 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2205 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2206 = "vm.xor.i32"(%1967, %2205) : (i32, i32) -> i32
"vm.cond_fail"(%2206, %2204) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2207 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2208 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2209 = "vm.xor.i32"(%1954, %2208) : (i32, i32) -> i32
"vm.cond_fail"(%2209, %2207) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2210 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2211 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2212 = "vm.xor.i32"(%1958, %2211) : (i32, i32) -> i32
"vm.cond_fail"(%2212, %2210) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2213 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2214 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2215 = "vm.xor.i32"(%1963, %2214) : (i32, i32) -> i32
"vm.cond_fail"(%2215, %2213) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2216 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2217 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2218 = "vm.xor.i32"(%1967, %2217) : (i32, i32) -> i32
"vm.cond_fail"(%2218, %2216) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2219 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2220 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2221 = "vm.xor.i32"(%1354, %2220) : (i32, i32) -> i32
"vm.cond_fail"(%2221, %2219) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2222 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2223 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2224 = "vm.xor.i32"(%1354, %2223) : (i32, i32) -> i32
"vm.cond_fail"(%2224, %2222) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2225 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2226 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2227 = "vm.xor.i32"(%1354, %2226) : (i32, i32) -> i32
"vm.cond_fail"(%2227, %2225) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2228 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2229 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2230 = "vm.xor.i32"(%1127, %2229) : (i32, i32) -> i32
"vm.cond_fail"(%2230, %2228) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2231 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2232 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2233 = "vm.xor.i32"(%1149, %2232) : (i32, i32) -> i32
"vm.cond_fail"(%2233, %2231) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2234 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2235 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2236 = "vm.xor.i32"(%1159, %2235) : (i32, i32) -> i32
"vm.cond_fail"(%2236, %2234) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2237 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2238 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2239 = "vm.xor.i32"(%1163, %2238) : (i32, i32) -> i32
"vm.cond_fail"(%2239, %2237) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2240 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2241 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2242 = "vm.xor.i32"(%1343, %2241) : (i32, i32) -> i32
"vm.cond_fail"(%2242, %2240) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2243 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2244 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2245 = "vm.xor.i32"(%1354, %2244) : (i32, i32) -> i32
"vm.cond_fail"(%2245, %2243) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2246 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2247 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2248 = "vm.xor.i32"(%1454, %2247) : (i32, i32) -> i32
"vm.cond_fail"(%2248, %2246) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2249 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2250 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2251 = "vm.xor.i32"(%1354, %2250) : (i32, i32) -> i32
"vm.cond_fail"(%2251, %2249) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2252 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2253 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2254 = "vm.xor.i32"(%1454, %2253) : (i32, i32) -> i32
"vm.cond_fail"(%2254, %2252) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2255 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2256 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2257 = "vm.xor.i32"(%1354, %2256) : (i32, i32) -> i32
"vm.cond_fail"(%2257, %2255) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2258 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2259 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2260 = "vm.xor.i32"(%1454, %2259) : (i32, i32) -> i32
"vm.cond_fail"(%2260, %2258) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2261 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2262 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2263 = "vm.xor.i32"(%1584, %2262) : (i32, i32) -> i32
"vm.cond_fail"(%2263, %2261) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2264 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2265 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2266 = "vm.xor.i32"(%1758, %2265) : (i32, i32) -> i32
"vm.cond_fail"(%2266, %2264) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2267 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2268 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2269 = "vm.xor.i32"(%1584, %2268) : (i32, i32) -> i32
"vm.cond_fail"(%2269, %2267) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2270 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2271 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2272 = "vm.xor.i32"(%1758, %2271) : (i32, i32) -> i32
"vm.cond_fail"(%2272, %2270) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2273 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2274 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2275 = "vm.xor.i32"(%1954, %2274) : (i32, i32) -> i32
"vm.cond_fail"(%2275, %2273) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2276 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2277 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2278 = "vm.xor.i32"(%1958, %2277) : (i32, i32) -> i32
"vm.cond_fail"(%2278, %2276) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2279 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2280 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2281 = "vm.xor.i32"(%1963, %2280) : (i32, i32) -> i32
"vm.cond_fail"(%2281, %2279) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2282 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2283 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2284 = "vm.xor.i32"(%1967, %2283) : (i32, i32) -> i32
"vm.cond_fail"(%2284, %2282) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2285 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2286 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2287 = "vm.xor.i32"(%1954, %2286) : (i32, i32) -> i32
"vm.cond_fail"(%2287, %2285) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2288 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2289 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2290 = "vm.xor.i32"(%1958, %2289) : (i32, i32) -> i32
"vm.cond_fail"(%2290, %2288) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2291 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2292 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2293 = "vm.xor.i32"(%1963, %2292) : (i32, i32) -> i32
"vm.cond_fail"(%2293, %2291) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2294 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2295 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2296 = "vm.xor.i32"(%1967, %2295) : (i32, i32) -> i32
"vm.cond_fail"(%2296, %2294) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2297 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2298 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2299 = "vm.xor.i32"(%1354, %2298) : (i32, i32) -> i32
"vm.cond_fail"(%2299, %2297) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2300 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2301 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2302 = "vm.xor.i32"(%1354, %2301) : (i32, i32) -> i32
"vm.cond_fail"(%2302, %2300) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2303 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2304 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2305 = "vm.xor.i32"(%1354, %2304) : (i32, i32) -> i32
"vm.cond_fail"(%2305, %2303) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2306 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2307 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2308 = "vm.xor.i32"(%1127, %2307) : (i32, i32) -> i32
"vm.cond_fail"(%2308, %2306) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2309 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2310 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2311 = "vm.xor.i32"(%1149, %2310) : (i32, i32) -> i32
"vm.cond_fail"(%2311, %2309) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2312 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2313 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2314 = "vm.xor.i32"(%1159, %2313) : (i32, i32) -> i32
"vm.cond_fail"(%2314, %2312) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2315 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2316 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2317 = "vm.xor.i32"(%1163, %2316) : (i32, i32) -> i32
"vm.cond_fail"(%2317, %2315) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2318 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2319 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2320 = "vm.xor.i32"(%1343, %2319) : (i32, i32) -> i32
"vm.cond_fail"(%2320, %2318) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2321 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2322 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2323 = "vm.xor.i32"(%1354, %2322) : (i32, i32) -> i32
"vm.cond_fail"(%2323, %2321) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2324 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2325 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2326 = "vm.xor.i32"(%1454, %2325) : (i32, i32) -> i32
"vm.cond_fail"(%2326, %2324) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2327 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2328 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2329 = "vm.xor.i32"(%1354, %2328) : (i32, i32) -> i32
"vm.cond_fail"(%2329, %2327) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2330 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2331 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2332 = "vm.xor.i32"(%1454, %2331) : (i32, i32) -> i32
"vm.cond_fail"(%2332, %2330) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2333 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2334 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2335 = "vm.xor.i32"(%1354, %2334) : (i32, i32) -> i32
"vm.cond_fail"(%2335, %2333) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2336 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2337 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2338 = "vm.xor.i32"(%1454, %2337) : (i32, i32) -> i32
"vm.cond_fail"(%2338, %2336) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2339 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2340 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2341 = "vm.xor.i32"(%1584, %2340) : (i32, i32) -> i32
"vm.cond_fail"(%2341, %2339) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2342 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2343 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2344 = "vm.xor.i32"(%1758, %2343) : (i32, i32) -> i32
"vm.cond_fail"(%2344, %2342) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2345 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2346 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2347 = "vm.xor.i32"(%1584, %2346) : (i32, i32) -> i32
"vm.cond_fail"(%2347, %2345) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2348 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2349 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2350 = "vm.xor.i32"(%1758, %2349) : (i32, i32) -> i32
"vm.cond_fail"(%2350, %2348) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2351 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2352 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2353 = "vm.xor.i32"(%1954, %2352) : (i32, i32) -> i32
"vm.cond_fail"(%2353, %2351) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2354 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2355 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2356 = "vm.xor.i32"(%1958, %2355) : (i32, i32) -> i32
"vm.cond_fail"(%2356, %2354) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2357 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2358 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2359 = "vm.xor.i32"(%1963, %2358) : (i32, i32) -> i32
"vm.cond_fail"(%2359, %2357) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2360 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2361 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2362 = "vm.xor.i32"(%1967, %2361) : (i32, i32) -> i32
"vm.cond_fail"(%2362, %2360) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2363 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2364 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2365 = "vm.xor.i32"(%1954, %2364) : (i32, i32) -> i32
"vm.cond_fail"(%2365, %2363) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2366 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2367 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2368 = "vm.xor.i32"(%1958, %2367) : (i32, i32) -> i32
"vm.cond_fail"(%2368, %2366) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2369 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2370 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2371 = "vm.xor.i32"(%1963, %2370) : (i32, i32) -> i32
"vm.cond_fail"(%2371, %2369) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2372 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2373 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2374 = "vm.xor.i32"(%1967, %2373) : (i32, i32) -> i32
"vm.cond_fail"(%2374, %2372) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2375 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2376 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2377 = "vm.xor.i32"(%1354, %2376) : (i32, i32) -> i32
"vm.cond_fail"(%2377, %2375) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2378 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2379 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2380 = "vm.xor.i32"(%1354, %2379) : (i32, i32) -> i32
"vm.cond_fail"(%2380, %2378) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2381 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2382 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2383 = "vm.xor.i32"(%1354, %2382) : (i32, i32) -> i32
"vm.cond_fail"(%2383, %2381) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2384 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2385 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2386 = "vm.xor.i32"(%1127, %2385) : (i32, i32) -> i32
"vm.cond_fail"(%2386, %2384) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2387 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2388 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2389 = "vm.xor.i32"(%1149, %2388) : (i32, i32) -> i32
"vm.cond_fail"(%2389, %2387) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2390 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2391 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2392 = "vm.xor.i32"(%1159, %2391) : (i32, i32) -> i32
"vm.cond_fail"(%2392, %2390) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2393 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2394 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2395 = "vm.xor.i32"(%1163, %2394) : (i32, i32) -> i32
"vm.cond_fail"(%2395, %2393) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2396 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2397 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2398 = "vm.xor.i32"(%1343, %2397) : (i32, i32) -> i32
"vm.cond_fail"(%2398, %2396) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2399 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2400 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2401 = "vm.xor.i32"(%1354, %2400) : (i32, i32) -> i32
"vm.cond_fail"(%2401, %2399) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2402 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2403 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2404 = "vm.xor.i32"(%1454, %2403) : (i32, i32) -> i32
"vm.cond_fail"(%2404, %2402) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2405 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2406 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2407 = "vm.xor.i32"(%1354, %2406) : (i32, i32) -> i32
"vm.cond_fail"(%2407, %2405) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2408 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2409 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2410 = "vm.xor.i32"(%1454, %2409) : (i32, i32) -> i32
"vm.cond_fail"(%2410, %2408) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2411 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2412 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2413 = "vm.xor.i32"(%1354, %2412) : (i32, i32) -> i32
"vm.cond_fail"(%2413, %2411) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2414 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2415 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2416 = "vm.xor.i32"(%1454, %2415) : (i32, i32) -> i32
"vm.cond_fail"(%2416, %2414) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2417 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2418 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2419 = "vm.xor.i32"(%1584, %2418) : (i32, i32) -> i32
"vm.cond_fail"(%2419, %2417) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2420 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2421 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2422 = "vm.xor.i32"(%1758, %2421) : (i32, i32) -> i32
"vm.cond_fail"(%2422, %2420) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2423 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2424 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2425 = "vm.xor.i32"(%1584, %2424) : (i32, i32) -> i32
"vm.cond_fail"(%2425, %2423) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2426 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2427 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2428 = "vm.xor.i32"(%1758, %2427) : (i32, i32) -> i32
"vm.cond_fail"(%2428, %2426) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2429 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2430 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2431 = "vm.xor.i32"(%1954, %2430) : (i32, i32) -> i32
"vm.cond_fail"(%2431, %2429) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2432 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2433 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2434 = "vm.xor.i32"(%1958, %2433) : (i32, i32) -> i32
"vm.cond_fail"(%2434, %2432) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2435 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2436 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2437 = "vm.xor.i32"(%1963, %2436) : (i32, i32) -> i32
"vm.cond_fail"(%2437, %2435) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2438 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2439 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2440 = "vm.xor.i32"(%1967, %2439) : (i32, i32) -> i32
"vm.cond_fail"(%2440, %2438) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2441 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2442 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2443 = "vm.xor.i32"(%1954, %2442) : (i32, i32) -> i32
"vm.cond_fail"(%2443, %2441) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2444 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2445 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2446 = "vm.xor.i32"(%1958, %2445) : (i32, i32) -> i32
"vm.cond_fail"(%2446, %2444) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2447 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2448 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2449 = "vm.xor.i32"(%1963, %2448) : (i32, i32) -> i32
"vm.cond_fail"(%2449, %2447) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2450 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2451 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2452 = "vm.xor.i32"(%1967, %2451) : (i32, i32) -> i32
"vm.cond_fail"(%2452, %2450) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2453 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2454 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2455 = "vm.xor.i32"(%1354, %2454) : (i32, i32) -> i32
"vm.cond_fail"(%2455, %2453) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2456 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2457 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2458 = "vm.xor.i32"(%1354, %2457) : (i32, i32) -> i32
"vm.cond_fail"(%2458, %2456) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2459 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2460 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2461 = "vm.xor.i32"(%1354, %2460) : (i32, i32) -> i32
"vm.cond_fail"(%2461, %2459) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2462 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2463 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2464 = "vm.xor.i32"(%1127, %2463) : (i32, i32) -> i32
"vm.cond_fail"(%2464, %2462) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2465 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2466 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2467 = "vm.xor.i32"(%1149, %2466) : (i32, i32) -> i32
"vm.cond_fail"(%2467, %2465) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2468 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2469 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2470 = "vm.xor.i32"(%1159, %2469) : (i32, i32) -> i32
"vm.cond_fail"(%2470, %2468) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2471 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2472 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2473 = "vm.xor.i32"(%1163, %2472) : (i32, i32) -> i32
"vm.cond_fail"(%2473, %2471) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2474 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2475 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2476 = "vm.xor.i32"(%1343, %2475) : (i32, i32) -> i32
"vm.cond_fail"(%2476, %2474) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2477 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2478 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2479 = "vm.xor.i32"(%1354, %2478) : (i32, i32) -> i32
"vm.cond_fail"(%2479, %2477) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2480 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2481 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2482 = "vm.xor.i32"(%1454, %2481) : (i32, i32) -> i32
"vm.cond_fail"(%2482, %2480) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2483 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2484 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2485 = "vm.xor.i32"(%1354, %2484) : (i32, i32) -> i32
"vm.cond_fail"(%2485, %2483) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2486 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2487 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2488 = "vm.xor.i32"(%1454, %2487) : (i32, i32) -> i32
"vm.cond_fail"(%2488, %2486) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2489 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2490 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2491 = "vm.xor.i32"(%1354, %2490) : (i32, i32) -> i32
"vm.cond_fail"(%2491, %2489) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2492 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2493 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2494 = "vm.xor.i32"(%1454, %2493) : (i32, i32) -> i32
"vm.cond_fail"(%2494, %2492) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2495 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2496 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2497 = "vm.xor.i32"(%1584, %2496) : (i32, i32) -> i32
"vm.cond_fail"(%2497, %2495) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2498 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2499 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2500 = "vm.xor.i32"(%1758, %2499) : (i32, i32) -> i32
"vm.cond_fail"(%2500, %2498) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2501 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2502 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2503 = "vm.xor.i32"(%1584, %2502) : (i32, i32) -> i32
"vm.cond_fail"(%2503, %2501) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2504 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2505 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2506 = "vm.xor.i32"(%1758, %2505) : (i32, i32) -> i32
"vm.cond_fail"(%2506, %2504) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2507 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2508 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2509 = "vm.xor.i32"(%1954, %2508) : (i32, i32) -> i32
"vm.cond_fail"(%2509, %2507) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2510 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2511 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2512 = "vm.xor.i32"(%1958, %2511) : (i32, i32) -> i32
"vm.cond_fail"(%2512, %2510) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2513 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2514 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2515 = "vm.xor.i32"(%1963, %2514) : (i32, i32) -> i32
"vm.cond_fail"(%2515, %2513) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2516 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2517 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2518 = "vm.xor.i32"(%1967, %2517) : (i32, i32) -> i32
"vm.cond_fail"(%2518, %2516) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2519 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2520 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2521 = "vm.xor.i32"(%1954, %2520) : (i32, i32) -> i32
"vm.cond_fail"(%2521, %2519) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2522 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2523 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2524 = "vm.xor.i32"(%1958, %2523) : (i32, i32) -> i32
"vm.cond_fail"(%2524, %2522) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2525 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2526 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2527 = "vm.xor.i32"(%1963, %2526) : (i32, i32) -> i32
"vm.cond_fail"(%2527, %2525) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2528 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2529 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2530 = "vm.xor.i32"(%1967, %2529) : (i32, i32) -> i32
"vm.cond_fail"(%2530, %2528) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2531 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2532 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2533 = "vm.xor.i32"(%1354, %2532) : (i32, i32) -> i32
"vm.cond_fail"(%2533, %2531) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2534 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2535 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2536 = "vm.xor.i32"(%1354, %2535) : (i32, i32) -> i32
"vm.cond_fail"(%2536, %2534) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2537 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2538 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2539 = "vm.xor.i32"(%1354, %2538) : (i32, i32) -> i32
"vm.cond_fail"(%2539, %2537) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2540 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2541 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2542 = "vm.xor.i32"(%1127, %2541) : (i32, i32) -> i32
"vm.cond_fail"(%2542, %2540) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2543 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2544 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2545 = "vm.xor.i32"(%1149, %2544) : (i32, i32) -> i32
"vm.cond_fail"(%2545, %2543) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2546 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2547 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2548 = "vm.xor.i32"(%1159, %2547) : (i32, i32) -> i32
"vm.cond_fail"(%2548, %2546) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2549 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2550 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2551 = "vm.xor.i32"(%1163, %2550) : (i32, i32) -> i32
"vm.cond_fail"(%2551, %2549) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2552 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2553 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2554 = "vm.xor.i32"(%1343, %2553) : (i32, i32) -> i32
"vm.cond_fail"(%2554, %2552) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2555 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2556 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2557 = "vm.xor.i32"(%1354, %2556) : (i32, i32) -> i32
"vm.cond_fail"(%2557, %2555) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2558 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2559 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2560 = "vm.xor.i32"(%1454, %2559) : (i32, i32) -> i32
"vm.cond_fail"(%2560, %2558) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2561 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2562 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2563 = "vm.xor.i32"(%1354, %2562) : (i32, i32) -> i32
"vm.cond_fail"(%2563, %2561) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2564 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2565 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2566 = "vm.xor.i32"(%1454, %2565) : (i32, i32) -> i32
"vm.cond_fail"(%2566, %2564) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2567 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2568 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2569 = "vm.xor.i32"(%1354, %2568) : (i32, i32) -> i32
"vm.cond_fail"(%2569, %2567) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2570 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2571 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2572 = "vm.xor.i32"(%1454, %2571) : (i32, i32) -> i32
"vm.cond_fail"(%2572, %2570) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2573 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2574 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2575 = "vm.xor.i32"(%1584, %2574) : (i32, i32) -> i32
"vm.cond_fail"(%2575, %2573) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2576 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2577 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2578 = "vm.xor.i32"(%1758, %2577) : (i32, i32) -> i32
"vm.cond_fail"(%2578, %2576) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2579 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2580 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2581 = "vm.xor.i32"(%1584, %2580) : (i32, i32) -> i32
"vm.cond_fail"(%2581, %2579) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2582 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2583 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2584 = "vm.xor.i32"(%1758, %2583) : (i32, i32) -> i32
"vm.cond_fail"(%2584, %2582) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2585 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2586 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2587 = "vm.xor.i32"(%1954, %2586) : (i32, i32) -> i32
"vm.cond_fail"(%2587, %2585) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2588 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2589 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2590 = "vm.xor.i32"(%1958, %2589) : (i32, i32) -> i32
"vm.cond_fail"(%2590, %2588) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2591 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2592 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2593 = "vm.xor.i32"(%1963, %2592) : (i32, i32) -> i32
"vm.cond_fail"(%2593, %2591) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2594 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2595 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2596 = "vm.xor.i32"(%1967, %2595) : (i32, i32) -> i32
"vm.cond_fail"(%2596, %2594) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2597 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2598 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2599 = "vm.xor.i32"(%1954, %2598) : (i32, i32) -> i32
"vm.cond_fail"(%2599, %2597) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2600 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2601 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2602 = "vm.xor.i32"(%1958, %2601) : (i32, i32) -> i32
"vm.cond_fail"(%2602, %2600) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2603 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2604 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2605 = "vm.xor.i32"(%1963, %2604) : (i32, i32) -> i32
"vm.cond_fail"(%2605, %2603) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2606 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2607 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2608 = "vm.xor.i32"(%1967, %2607) : (i32, i32) -> i32
"vm.cond_fail"(%2608, %2606) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2609 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2610 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2611 = "vm.xor.i32"(%1354, %2610) : (i32, i32) -> i32
"vm.cond_fail"(%2611, %2609) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2612 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2613 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2614 = "vm.xor.i32"(%1354, %2613) : (i32, i32) -> i32
"vm.cond_fail"(%2614, %2612) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2615 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2616 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2617 = "vm.xor.i32"(%1354, %2616) : (i32, i32) -> i32
"vm.cond_fail"(%2617, %2615) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2618 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2619 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2620 = "vm.xor.i32"(%1127, %2619) : (i32, i32) -> i32
"vm.cond_fail"(%2620, %2618) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2621 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2622 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2623 = "vm.xor.i32"(%1149, %2622) : (i32, i32) -> i32
"vm.cond_fail"(%2623, %2621) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2624 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2625 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2626 = "vm.xor.i32"(%1159, %2625) : (i32, i32) -> i32
"vm.cond_fail"(%2626, %2624) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2627 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2628 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2629 = "vm.xor.i32"(%1163, %2628) : (i32, i32) -> i32
"vm.cond_fail"(%2629, %2627) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2630 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2631 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2632 = "vm.xor.i32"(%1343, %2631) : (i32, i32) -> i32
"vm.cond_fail"(%2632, %2630) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2633 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2634 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2635 = "vm.xor.i32"(%1354, %2634) : (i32, i32) -> i32
"vm.cond_fail"(%2635, %2633) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2636 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2637 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2638 = "vm.xor.i32"(%1454, %2637) : (i32, i32) -> i32
"vm.cond_fail"(%2638, %2636) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2639 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2640 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2641 = "vm.xor.i32"(%1354, %2640) : (i32, i32) -> i32
"vm.cond_fail"(%2641, %2639) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2642 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2643 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2644 = "vm.xor.i32"(%1454, %2643) : (i32, i32) -> i32
"vm.cond_fail"(%2644, %2642) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2645 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2646 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2647 = "vm.xor.i32"(%1354, %2646) : (i32, i32) -> i32
"vm.cond_fail"(%2647, %2645) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2648 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2649 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2650 = "vm.xor.i32"(%1454, %2649) : (i32, i32) -> i32
"vm.cond_fail"(%2650, %2648) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2651 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2652 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2653 = "vm.xor.i32"(%1584, %2652) : (i32, i32) -> i32
"vm.cond_fail"(%2653, %2651) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2654 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2655 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2656 = "vm.xor.i32"(%1758, %2655) : (i32, i32) -> i32
"vm.cond_fail"(%2656, %2654) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2657 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2658 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2659 = "vm.xor.i32"(%1584, %2658) : (i32, i32) -> i32
"vm.cond_fail"(%2659, %2657) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2660 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2661 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2662 = "vm.xor.i32"(%1758, %2661) : (i32, i32) -> i32
"vm.cond_fail"(%2662, %2660) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2663 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2664 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2665 = "vm.xor.i32"(%1954, %2664) : (i32, i32) -> i32
"vm.cond_fail"(%2665, %2663) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2666 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2667 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2668 = "vm.xor.i32"(%1958, %2667) : (i32, i32) -> i32
"vm.cond_fail"(%2668, %2666) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2669 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2670 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2671 = "vm.xor.i32"(%1963, %2670) : (i32, i32) -> i32
"vm.cond_fail"(%2671, %2669) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2672 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2673 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2674 = "vm.xor.i32"(%1967, %2673) : (i32, i32) -> i32
"vm.cond_fail"(%2674, %2672) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2675 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2676 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2677 = "vm.xor.i32"(%1954, %2676) : (i32, i32) -> i32
"vm.cond_fail"(%2677, %2675) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2678 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2679 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2680 = "vm.xor.i32"(%1958, %2679) : (i32, i32) -> i32
"vm.cond_fail"(%2680, %2678) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2681 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2682 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2683 = "vm.xor.i32"(%1963, %2682) : (i32, i32) -> i32
"vm.cond_fail"(%2683, %2681) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2684 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2685 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2686 = "vm.xor.i32"(%1967, %2685) : (i32, i32) -> i32
"vm.cond_fail"(%2686, %2684) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2687 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2688 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2689 = "vm.xor.i32"(%1354, %2688) : (i32, i32) -> i32
"vm.cond_fail"(%2689, %2687) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2690 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2691 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2692 = "vm.xor.i32"(%1354, %2691) : (i32, i32) -> i32
"vm.cond_fail"(%2692, %2690) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2693 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2694 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2695 = "vm.xor.i32"(%1354, %2694) : (i32, i32) -> i32
"vm.cond_fail"(%2695, %2693) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2696 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2697 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2698 = "vm.xor.i32"(%1127, %2697) : (i32, i32) -> i32
"vm.cond_fail"(%2698, %2696) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2699 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2700 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2701 = "vm.xor.i32"(%1149, %2700) : (i32, i32) -> i32
"vm.cond_fail"(%2701, %2699) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2702 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2703 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2704 = "vm.xor.i32"(%1159, %2703) : (i32, i32) -> i32
"vm.cond_fail"(%2704, %2702) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2705 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2706 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2707 = "vm.xor.i32"(%1163, %2706) : (i32, i32) -> i32
"vm.cond_fail"(%2707, %2705) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2708 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2709 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2710 = "vm.xor.i32"(%1343, %2709) : (i32, i32) -> i32
"vm.cond_fail"(%2710, %2708) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2711 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2712 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2713 = "vm.xor.i32"(%1354, %2712) : (i32, i32) -> i32
"vm.cond_fail"(%2713, %2711) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2714 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2715 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2716 = "vm.xor.i32"(%1454, %2715) : (i32, i32) -> i32
"vm.cond_fail"(%2716, %2714) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2717 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2718 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2719 = "vm.xor.i32"(%1354, %2718) : (i32, i32) -> i32
"vm.cond_fail"(%2719, %2717) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2720 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2721 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2722 = "vm.xor.i32"(%1454, %2721) : (i32, i32) -> i32
"vm.cond_fail"(%2722, %2720) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2723 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2724 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2725 = "vm.xor.i32"(%1354, %2724) : (i32, i32) -> i32
"vm.cond_fail"(%2725, %2723) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2726 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2727 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2728 = "vm.xor.i32"(%1454, %2727) : (i32, i32) -> i32
"vm.cond_fail"(%2728, %2726) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2729 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2730 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2731 = "vm.xor.i32"(%1584, %2730) : (i32, i32) -> i32
"vm.cond_fail"(%2731, %2729) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2732 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2733 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2734 = "vm.xor.i32"(%1758, %2733) : (i32, i32) -> i32
"vm.cond_fail"(%2734, %2732) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2735 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2736 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2737 = "vm.xor.i32"(%1584, %2736) : (i32, i32) -> i32
"vm.cond_fail"(%2737, %2735) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2738 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2739 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2740 = "vm.xor.i32"(%1758, %2739) : (i32, i32) -> i32
"vm.cond_fail"(%2740, %2738) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2741 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2742 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2743 = "vm.xor.i32"(%1954, %2742) : (i32, i32) -> i32
"vm.cond_fail"(%2743, %2741) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2744 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2745 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2746 = "vm.xor.i32"(%1958, %2745) : (i32, i32) -> i32
"vm.cond_fail"(%2746, %2744) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2747 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2748 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2749 = "vm.xor.i32"(%1963, %2748) : (i32, i32) -> i32
"vm.cond_fail"(%2749, %2747) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2750 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2751 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2752 = "vm.xor.i32"(%1967, %2751) : (i32, i32) -> i32
"vm.cond_fail"(%2752, %2750) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2753 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2754 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2755 = "vm.xor.i32"(%1954, %2754) : (i32, i32) -> i32
"vm.cond_fail"(%2755, %2753) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2756 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2757 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2758 = "vm.xor.i32"(%1958, %2757) : (i32, i32) -> i32
"vm.cond_fail"(%2758, %2756) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2759 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2760 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2761 = "vm.xor.i32"(%1963, %2760) : (i32, i32) -> i32
"vm.cond_fail"(%2761, %2759) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2762 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2763 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2764 = "vm.xor.i32"(%1967, %2763) : (i32, i32) -> i32
"vm.cond_fail"(%2764, %2762) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2765 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2766 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2767 = "vm.xor.i32"(%1354, %2766) : (i32, i32) -> i32
"vm.cond_fail"(%2767, %2765) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2768 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2769 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2770 = "vm.xor.i32"(%1354, %2769) : (i32, i32) -> i32
"vm.cond_fail"(%2770, %2768) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2771 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2772 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2773 = "vm.xor.i32"(%1354, %2772) : (i32, i32) -> i32
"vm.cond_fail"(%2773, %2771) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2774 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2775 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2776 = "vm.xor.i32"(%1127, %2775) : (i32, i32) -> i32
"vm.cond_fail"(%2776, %2774) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2777 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2778 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2779 = "vm.xor.i32"(%1149, %2778) : (i32, i32) -> i32
"vm.cond_fail"(%2779, %2777) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2780 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2781 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2782 = "vm.xor.i32"(%1159, %2781) : (i32, i32) -> i32
"vm.cond_fail"(%2782, %2780) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2783 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2784 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2785 = "vm.xor.i32"(%1163, %2784) : (i32, i32) -> i32
"vm.cond_fail"(%2785, %2783) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2786 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2787 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2788 = "vm.xor.i32"(%1343, %2787) : (i32, i32) -> i32
"vm.cond_fail"(%2788, %2786) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2789 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2790 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2791 = "vm.xor.i32"(%1354, %2790) : (i32, i32) -> i32
"vm.cond_fail"(%2791, %2789) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2792 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2793 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2794 = "vm.xor.i32"(%1454, %2793) : (i32, i32) -> i32
"vm.cond_fail"(%2794, %2792) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2795 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2796 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2797 = "vm.xor.i32"(%1354, %2796) : (i32, i32) -> i32
"vm.cond_fail"(%2797, %2795) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2798 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2799 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2800 = "vm.xor.i32"(%1454, %2799) : (i32, i32) -> i32
"vm.cond_fail"(%2800, %2798) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2801 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2802 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2803 = "vm.xor.i32"(%1354, %2802) : (i32, i32) -> i32
"vm.cond_fail"(%2803, %2801) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2804 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2805 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2806 = "vm.xor.i32"(%1454, %2805) : (i32, i32) -> i32
"vm.cond_fail"(%2806, %2804) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2807 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2808 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2809 = "vm.xor.i32"(%1584, %2808) : (i32, i32) -> i32
"vm.cond_fail"(%2809, %2807) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2810 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2811 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2812 = "vm.xor.i32"(%1758, %2811) : (i32, i32) -> i32
"vm.cond_fail"(%2812, %2810) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2813 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2814 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2815 = "vm.xor.i32"(%1584, %2814) : (i32, i32) -> i32
"vm.cond_fail"(%2815, %2813) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2816 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2817 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2818 = "vm.xor.i32"(%1758, %2817) : (i32, i32) -> i32
"vm.cond_fail"(%2818, %2816) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2819 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2820 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2821 = "vm.xor.i32"(%1954, %2820) : (i32, i32) -> i32
"vm.cond_fail"(%2821, %2819) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2822 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2823 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2824 = "vm.xor.i32"(%1958, %2823) : (i32, i32) -> i32
"vm.cond_fail"(%2824, %2822) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2825 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2826 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2827 = "vm.xor.i32"(%1963, %2826) : (i32, i32) -> i32
"vm.cond_fail"(%2827, %2825) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2828 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2829 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2830 = "vm.xor.i32"(%1967, %2829) : (i32, i32) -> i32
"vm.cond_fail"(%2830, %2828) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2831 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2832 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2833 = "vm.xor.i32"(%1954, %2832) : (i32, i32) -> i32
"vm.cond_fail"(%2833, %2831) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2834 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2835 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2836 = "vm.xor.i32"(%1958, %2835) : (i32, i32) -> i32
"vm.cond_fail"(%2836, %2834) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2837 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2838 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2839 = "vm.xor.i32"(%1963, %2838) : (i32, i32) -> i32
"vm.cond_fail"(%2839, %2837) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2840 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2841 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2842 = "vm.xor.i32"(%1967, %2841) : (i32, i32) -> i32
"vm.cond_fail"(%2842, %2840) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2843 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2844 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2845 = "vm.xor.i32"(%1354, %2844) : (i32, i32) -> i32
"vm.cond_fail"(%2845, %2843) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2846 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2847 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2848 = "vm.xor.i32"(%1354, %2847) : (i32, i32) -> i32
"vm.cond_fail"(%2848, %2846) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2849 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2850 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2851 = "vm.xor.i32"(%1354, %2850) : (i32, i32) -> i32
"vm.cond_fail"(%2851, %2849) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2852 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2853 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2854 = "vm.xor.i32"(%1127, %2853) : (i32, i32) -> i32
"vm.cond_fail"(%2854, %2852) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2855 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2856 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2857 = "vm.xor.i32"(%1149, %2856) : (i32, i32) -> i32
"vm.cond_fail"(%2857, %2855) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2858 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2859 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2860 = "vm.xor.i32"(%1159, %2859) : (i32, i32) -> i32
"vm.cond_fail"(%2860, %2858) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2861 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2862 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2863 = "vm.xor.i32"(%1163, %2862) : (i32, i32) -> i32
"vm.cond_fail"(%2863, %2861) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2864 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2865 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2866 = "vm.xor.i32"(%1343, %2865) : (i32, i32) -> i32
"vm.cond_fail"(%2866, %2864) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2867 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2868 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2869 = "vm.xor.i32"(%1354, %2868) : (i32, i32) -> i32
"vm.cond_fail"(%2869, %2867) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2870 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2871 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2872 = "vm.xor.i32"(%1454, %2871) : (i32, i32) -> i32
"vm.cond_fail"(%2872, %2870) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2873 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2874 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2875 = "vm.xor.i32"(%1354, %2874) : (i32, i32) -> i32
"vm.cond_fail"(%2875, %2873) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2876 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2877 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2878 = "vm.xor.i32"(%1454, %2877) : (i32, i32) -> i32
"vm.cond_fail"(%2878, %2876) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2879 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2880 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2881 = "vm.xor.i32"(%1354, %2880) : (i32, i32) -> i32
"vm.cond_fail"(%2881, %2879) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2882 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2883 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2884 = "vm.xor.i32"(%1454, %2883) : (i32, i32) -> i32
"vm.cond_fail"(%2884, %2882) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2885 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2886 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2887 = "vm.xor.i32"(%1584, %2886) : (i32, i32) -> i32
"vm.cond_fail"(%2887, %2885) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2888 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2889 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2890 = "vm.xor.i32"(%1758, %2889) : (i32, i32) -> i32
"vm.cond_fail"(%2890, %2888) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2891 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2892 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2893 = "vm.xor.i32"(%1584, %2892) : (i32, i32) -> i32
"vm.cond_fail"(%2893, %2891) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2894 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2895 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2896 = "vm.xor.i32"(%1758, %2895) : (i32, i32) -> i32
"vm.cond_fail"(%2896, %2894) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2897 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2898 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2899 = "vm.xor.i32"(%1954, %2898) : (i32, i32) -> i32
"vm.cond_fail"(%2899, %2897) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2900 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2901 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2902 = "vm.xor.i32"(%1958, %2901) : (i32, i32) -> i32
"vm.cond_fail"(%2902, %2900) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2903 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2904 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2905 = "vm.xor.i32"(%1963, %2904) : (i32, i32) -> i32
"vm.cond_fail"(%2905, %2903) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2906 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2907 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2908 = "vm.xor.i32"(%1967, %2907) : (i32, i32) -> i32
"vm.cond_fail"(%2908, %2906) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2909 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2910 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2911 = "vm.xor.i32"(%1954, %2910) : (i32, i32) -> i32
"vm.cond_fail"(%2911, %2909) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2912 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2913 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2914 = "vm.xor.i32"(%1958, %2913) : (i32, i32) -> i32
"vm.cond_fail"(%2914, %2912) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2915 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2916 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2917 = "vm.xor.i32"(%1963, %2916) : (i32, i32) -> i32
"vm.cond_fail"(%2917, %2915) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2918 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2919 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2920 = "vm.xor.i32"(%1967, %2919) : (i32, i32) -> i32
"vm.cond_fail"(%2920, %2918) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2921 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2922 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2923 = "vm.xor.i32"(%1354, %2922) : (i32, i32) -> i32
"vm.cond_fail"(%2923, %2921) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2924 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2925 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2926 = "vm.xor.i32"(%1354, %2925) : (i32, i32) -> i32
"vm.cond_fail"(%2926, %2924) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2927 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2928 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2929 = "vm.xor.i32"(%1354, %2928) : (i32, i32) -> i32
"vm.cond_fail"(%2929, %2927) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2930 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2931 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2932 = "vm.xor.i32"(%1127, %2931) : (i32, i32) -> i32
"vm.cond_fail"(%2932, %2930) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2933 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2934 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2935 = "vm.xor.i32"(%1149, %2934) : (i32, i32) -> i32
"vm.cond_fail"(%2935, %2933) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2936 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2937 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2938 = "vm.xor.i32"(%1159, %2937) : (i32, i32) -> i32
"vm.cond_fail"(%2938, %2936) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2939 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2940 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2941 = "vm.xor.i32"(%1163, %2940) : (i32, i32) -> i32
"vm.cond_fail"(%2941, %2939) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%2942 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2943 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2944 = "vm.xor.i32"(%1343, %2943) : (i32, i32) -> i32
"vm.cond_fail"(%2944, %2942) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2945 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2946 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2947 = "vm.xor.i32"(%1354, %2946) : (i32, i32) -> i32
"vm.cond_fail"(%2947, %2945) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2948 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2949 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2950 = "vm.xor.i32"(%1454, %2949) : (i32, i32) -> i32
"vm.cond_fail"(%2950, %2948) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2951 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2952 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2953 = "vm.xor.i32"(%1354, %2952) : (i32, i32) -> i32
"vm.cond_fail"(%2953, %2951) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2954 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2955 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2956 = "vm.xor.i32"(%1454, %2955) : (i32, i32) -> i32
"vm.cond_fail"(%2956, %2954) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2957 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2958 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2959 = "vm.xor.i32"(%1354, %2958) : (i32, i32) -> i32
"vm.cond_fail"(%2959, %2957) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2960 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2961 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2962 = "vm.xor.i32"(%1454, %2961) : (i32, i32) -> i32
"vm.cond_fail"(%2962, %2960) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2963 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2964 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2965 = "vm.xor.i32"(%1584, %2964) : (i32, i32) -> i32
"vm.cond_fail"(%2965, %2963) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2966 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2967 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2968 = "vm.xor.i32"(%1758, %2967) : (i32, i32) -> i32
"vm.cond_fail"(%2968, %2966) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2969 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2970 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2971 = "vm.xor.i32"(%1584, %2970) : (i32, i32) -> i32
"vm.cond_fail"(%2971, %2969) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%2972 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2973 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2974 = "vm.xor.i32"(%1758, %2973) : (i32, i32) -> i32
"vm.cond_fail"(%2974, %2972) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%2975 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2976 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2977 = "vm.xor.i32"(%1954, %2976) : (i32, i32) -> i32
"vm.cond_fail"(%2977, %2975) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2978 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2979 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2980 = "vm.xor.i32"(%1958, %2979) : (i32, i32) -> i32
"vm.cond_fail"(%2980, %2978) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2981 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2982 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2983 = "vm.xor.i32"(%1963, %2982) : (i32, i32) -> i32
"vm.cond_fail"(%2983, %2981) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2984 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2985 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2986 = "vm.xor.i32"(%1967, %2985) : (i32, i32) -> i32
"vm.cond_fail"(%2986, %2984) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2987 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2988 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2989 = "vm.xor.i32"(%1954, %2988) : (i32, i32) -> i32
"vm.cond_fail"(%2989, %2987) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2990 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2991 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2992 = "vm.xor.i32"(%1958, %2991) : (i32, i32) -> i32
"vm.cond_fail"(%2992, %2990) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%2993 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2994 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2995 = "vm.xor.i32"(%1963, %2994) : (i32, i32) -> i32
"vm.cond_fail"(%2995, %2993) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2996 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%2997 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%2998 = "vm.xor.i32"(%1967, %2997) : (i32, i32) -> i32
"vm.cond_fail"(%2998, %2996) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%2999 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3000 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3001 = "vm.xor.i32"(%1354, %3000) : (i32, i32) -> i32
"vm.cond_fail"(%3001, %2999) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3002 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3003 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3004 = "vm.xor.i32"(%1354, %3003) : (i32, i32) -> i32
"vm.cond_fail"(%3004, %3002) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3005 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3006 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3007 = "vm.xor.i32"(%1354, %3006) : (i32, i32) -> i32
"vm.cond_fail"(%3007, %3005) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3008 = "vm.cmp.lt.i64.s"(%503, %438) : (i64, i64) -> i32
%3009 = "vm.select.i64"(%3008, %437, %503) : (i32, i64, i64) -> i64
%3010 = "vm.select.i64"(%3008, %436, %437) : (i32, i64, i64) -> i64
%3011 = "vm.cmp.lte.i64.u"(%3010, %437) : (i64, i64) -> i32
%3012 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3013 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3014 = "vm.xor.i32"(%3011, %3013) : (i32, i32) -> i32
"vm.cond_fail"(%3014, %3012) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%3015 = "vm.mul.i64"(%501, %503) : (i64, i64) -> i64
%3016 = "vm.div.i64.s"(%3015, %3009) : (i64, i64) -> i64
%3017 = "vm.select.i64"(%3008, %3016, %503) : (i32, i64, i64) -> i64
%3018 = "vm.mul.i64"(%3016, %431) : (i64, i64) -> i64
%3019 = "vm.mul.i64"(%3018, %3017) : (i64, i64) -> i64
%3020 = "vm.mul.i64"(%3016, %3017) : (i64, i64) -> i64
%3021 = "vm.mul.i64"(%3020, %430) : (i64, i64) -> i64
%3022 = "vm.const.i32.zero"() : () -> i32
%3023 = "vm.call"(%472, %3022) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3024 = "vm.const.i32.zero"() : () -> i32
%3025 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3026 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3027 = "vm.call"(%472, %460, %470, %3023, %3024, %3025, %3026, %3021) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3028 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%3029 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%3030 = "vm.add.i64"(%3019, %3029) : (i64, i64) -> i64
%3031 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%3032 = "vm.and.i64"(%3030, %3031) : (i64, i64) -> i64
%3033 = "vm.const.i32.zero"() : () -> i32
%3034 = "vm.call"(%472, %3033) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3035 = "vm.const.i32.zero"() : () -> i32
%3036 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3037 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3038 = "vm.call"(%472, %460, %470, %3034, %3035, %3036, %3037, %3032) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3039 = "vm.call.variadic"(%3023, %3034) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3040 = "vm.trunc.i64.i32"(%3016) : (i64) -> i32
%3041 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3042 = "vm.shr.i64.u"(%3016, %3041) : (i64, i32) -> i64
%3043 = "vm.trunc.i64.i32"(%3042) : (i64) -> i32
%3044 = "vm.trunc.i64.i32"(%3017) : (i64) -> i32
%3045 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3046 = "vm.shr.i64.u"(%3017, %3045) : (i64, i32) -> i64
%3047 = "vm.trunc.i64.i32"(%3046) : (i64) -> i32
%3048 = "vm.trunc.i64.i32"(%3020) : (i64) -> i32
%3049 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3050 = "vm.shr.i64.u"(%3020, %3049) : (i64, i32) -> i64
%3051 = "vm.trunc.i64.i32"(%3050) : (i64) -> i32
%3052 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3053 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3054 = "vm.const.i32.zero"() : () -> i32
%3055 = "vm.call"(%472, %3052, %3053, %460, %3054) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3056 = "vm.cmp.lte.i64.s"(%3016, %449) : (i64, i64) -> i32
%3057 = "vm.sub.i64"(%449, %3016) : (i64, i64) -> i64
%3058 = "vm.sub.i64"(%3016, %447) : (i64, i64) -> i64
%3059 = "vm.select.i64"(%3056, %3057, %3058) : (i32, i64, i64) -> i64
%3060 = "vm.div.i64.s"(%3059, %432) : (i64, i64) -> i64
%3061 = "vm.sub.i64"(%449, %3060) : (i64, i64) -> i64
%3062 = "vm.add.i64"(%3060, %447) : (i64, i64) -> i64
%3063 = "vm.select.i64"(%3056, %3061, %3062) : (i32, i64, i64) -> i64
%3064 = "vm.cmp.lte.i64.s"(%3017, %449) : (i64, i64) -> i32
%3065 = "vm.sub.i64"(%449, %3017) : (i64, i64) -> i64
%3066 = "vm.sub.i64"(%3017, %447) : (i64, i64) -> i64
%3067 = "vm.select.i64"(%3064, %3065, %3066) : (i32, i64, i64) -> i64
%3068 = "vm.div.i64.s"(%3067, %432) : (i64, i64) -> i64
%3069 = "vm.sub.i64"(%449, %3068) : (i64, i64) -> i64
%3070 = "vm.add.i64"(%3068, %447) : (i64, i64) -> i64
%3071 = "vm.select.i64"(%3064, %3069, %3070) : (i32, i64, i64) -> i64
%3072 = "vm.const.i32.zero"() : () -> i32
%3073 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3074 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3075 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3076 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3077 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3078 = "vm.const.i32.zero"() : () -> i32
%3079 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3055, %473, %3074, %3075, %3076, %3077, %3073, %3040, %3043, %3044, %3047, %3072, %3078, %507, %449, %506, %3072, %3079, %3038, %449, %3032) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3080 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3081 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3082 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3055, %3080, %3081, %3082) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3083 = "vm.cmp.lte.i64.s"(%3020, %449) : (i64, i64) -> i32
%3084 = "vm.sub.i64"(%449, %3020) : (i64, i64) -> i64
%3085 = "vm.sub.i64"(%3020, %447) : (i64, i64) -> i64
%3086 = "vm.select.i64"(%3083, %3084, %3085) : (i32, i64, i64) -> i64
%3087 = "vm.div.i64.s"(%3086, %432) : (i64, i64) -> i64
%3088 = "vm.sub.i64"(%449, %3087) : (i64, i64) -> i64
%3089 = "vm.add.i64"(%3087, %447) : (i64, i64) -> i64
%3090 = "vm.select.i64"(%3083, %3088, %3089) : (i32, i64, i64) -> i64
%3091 = "vm.const.i32.zero"() : () -> i32
%3092 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3093 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%3094 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3095 = "vm.trunc.i64.i32"(%3090) : (i64) -> i32
%3096 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3097 = "vm.const.i32.zero"() : () -> i32
%3098 = "vm.const.i32.zero"() : () -> i32
%3099 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3055, %473, %3093, %3094, %3095, %3096, %3092, %3048, %3051, %3091, %3097, %471, %449, %459, %3091, %3098, %3038, %449, %3032, %3091, %3099, %3027, %449, %3021) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3100 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3101 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3102 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3055, %3100, %3101, %3102) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3055) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3103 = "vm.const.i32.zero"() : () -> i32
%3104 = "vm.call"(%472, %3103) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3039, %3104, %3055) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3105 = "vm.const.i32.zero"() : () -> i32
%3106 = "vm.call"(%472, %3105) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %3104, %3106, %3038) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%3107 = "vm.mul.i64"(%3016, %430) : (i64, i64) -> i64
%3108 = "vm.mul.i64"(%3107, %3017) : (i64, i64) -> i64
%3109 = "vm.cmp.gte.i64.s"(%501, %438) : (i64, i64) -> i32
%3110 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3111 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3112 = "vm.xor.i32"(%3109, %3111) : (i32, i32) -> i32
"vm.cond_fail"(%3112, %3110) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3113 = "vm.cmp.gte.i64.s"(%503, %438) : (i64, i64) -> i32
%3114 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3115 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3116 = "vm.xor.i32"(%3113, %3115) : (i32, i32) -> i32
"vm.cond_fail"(%3116, %3114) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3117 = "vm.mul.i64"(%501, %429) : (i64, i64) -> i64
%3118 = "vm.mul.i64"(%3117, %503) : (i64, i64) -> i64
%3119 = "vm.mul.i64"(%503, %431) : (i64, i64) -> i64
%3120 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%3121 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%3122 = "vm.add.i64"(%3118, %3121) : (i64, i64) -> i64
%3123 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%3124 = "vm.and.i64"(%3122, %3123) : (i64, i64) -> i64
%3125 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%3126 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%3127 = "vm.add.i64"(%3119, %3126) : (i64, i64) -> i64
%3128 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%3129 = "vm.and.i64"(%3127, %3128) : (i64, i64) -> i64
%3130 = "vm.add.i64"(%3124, %3129) : (i64, i64) -> i64
%3131 = "vm.const.i32.zero"() : () -> i32
%3132 = "vm.call"(%472, %3131) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3133 = "vm.const.i32.zero"() : () -> i32
%3134 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3135 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3136 = "vm.call"(%472, %460, %461, %3132, %3133, %3134, %3135, %3130) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3137 = "vm.trunc.i64.i32"(%501) : (i64) -> i32
%3138 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3139 = "vm.shr.i64.u"(%501, %3138) : (i64, i32) -> i64
%3140 = "vm.trunc.i64.i32"(%3139) : (i64) -> i32
%3141 = "vm.trunc.i64.i32"(%503) : (i64) -> i32
%3142 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3143 = "vm.shr.i64.u"(%503, %3142) : (i64, i32) -> i64
%3144 = "vm.trunc.i64.i32"(%3143) : (i64) -> i32
%3145 = "vm.trunc.i64.i32"(%3124) : (i64) -> i32
%3146 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3147 = "vm.shr.i64.u"(%3124, %3146) : (i64, i32) -> i64
%3148 = "vm.trunc.i64.i32"(%3147) : (i64) -> i32
%3149 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3150 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3151 = "vm.const.i32.zero"() : () -> i32
%3152 = "vm.call"(%472, %3149, %3150, %460, %3151) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3153 = "vm.cmp.lte.i64.s"(%501, %449) : (i64, i64) -> i32
%3154 = "vm.sub.i64"(%449, %501) : (i64, i64) -> i64
%3155 = "vm.sub.i64"(%501, %447) : (i64, i64) -> i64
%3156 = "vm.select.i64"(%3153, %3154, %3155) : (i32, i64, i64) -> i64
%3157 = "vm.div.i64.s"(%3156, %432) : (i64, i64) -> i64
%3158 = "vm.sub.i64"(%449, %3157) : (i64, i64) -> i64
%3159 = "vm.add.i64"(%3157, %447) : (i64, i64) -> i64
%3160 = "vm.select.i64"(%3153, %3158, %3159) : (i32, i64, i64) -> i64
%3161 = "vm.cmp.lte.i64.s"(%503, %449) : (i64, i64) -> i32
%3162 = "vm.sub.i64"(%449, %503) : (i64, i64) -> i64
%3163 = "vm.sub.i64"(%503, %447) : (i64, i64) -> i64
%3164 = "vm.select.i64"(%3161, %3162, %3163) : (i32, i64, i64) -> i64
%3165 = "vm.div.i64.s"(%3164, %432) : (i64, i64) -> i64
%3166 = "vm.sub.i64"(%449, %3165) : (i64, i64) -> i64
%3167 = "vm.add.i64"(%3165, %447) : (i64, i64) -> i64
%3168 = "vm.select.i64"(%3161, %3166, %3167) : (i32, i64, i64) -> i64
%3169 = "vm.const.i32.zero"() : () -> i32
%3170 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3171 = "vm.const.i32"() <{value = 94 : i32}> : () -> i32
%3172 = "vm.trunc.i64.i32"(%3168) : (i64) -> i32
%3173 = "vm.trunc.i64.i32"(%3160) : (i64) -> i32
%3174 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3175 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3152, %473, %3171, %3172, %3173, %3174, %3170, %3137, %3140, %3141, %3144, %3169, %3175, %3136, %449, %3130) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3176 = "vm.const.i32.zero"() : () -> i32
%3177 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3178 = "vm.const.i32"() <{value = 95 : i32}> : () -> i32
%3179 = "vm.trunc.i64.i32"(%3168) : (i64) -> i32
%3180 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3181 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3182 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3152, %473, %3178, %3179, %3180, %3181, %3177, %3145, %3148, %3141, %3144, %3176, %3182, %3136, %449, %3130) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3183 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3184 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3185 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3152, %3183, %3184, %3185) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3152) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3186 = "vm.const.i32.zero"() : () -> i32
%3187 = "vm.call"(%472, %3186) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3132, %3187, %3152) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3188 = "vm.cmp.gte.i64.s"(%503, %437) : (i64, i64) -> i32
%3189 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3190 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3191 = "vm.xor.i32"(%3188, %3190) : (i32, i32) -> i32
"vm.cond_fail"(%3191, %3189) <{message = "onnx.Expand input has a dim that is not statically 1; expected this dim >= dim provided shape."}> : (i32, i32) -> ()
%3192 = "vm.cmp.lt.i64.s"(%501, %438) : (i64, i64) -> i32
%3193 = "vm.select.i64"(%3192, %447, %501) : (i32, i64, i64) -> i64
%3194 = "vm.select.i64"(%3008, %447, %503) : (i32, i64, i64) -> i64
%3195 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3196 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3197 = "vm.xor.i32"(%3113, %3196) : (i32, i32) -> i32
"vm.cond_fail"(%3197, %3195) <{message = "unimplemented: dynamic negative broadcast sizes"}> : (i32, i32) -> ()
%3198 = "vm.mul.i64"(%3193, %431) : (i64, i64) -> i64
%3199 = "vm.mul.i64"(%3198, %3194) : (i64, i64) -> i64
%3200 = "vm.mul.i64"(%3199, %503) : (i64, i64) -> i64
%3201 = "vm.const.i32.zero"() : () -> i32
%3202 = "vm.call"(%472, %3201) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3203 = "vm.const.i32.zero"() : () -> i32
%3204 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3205 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3206 = "vm.call"(%472, %460, %3187, %3202, %3203, %3204, %3205, %3200) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3207 = "vm.trunc.i64.i32"(%3193) : (i64) -> i32
%3208 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3209 = "vm.shr.i64.u"(%3193, %3208) : (i64, i32) -> i64
%3210 = "vm.trunc.i64.i32"(%3209) : (i64) -> i32
%3211 = "vm.trunc.i64.i32"(%3194) : (i64) -> i32
%3212 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3213 = "vm.shr.i64.u"(%3194, %3212) : (i64, i32) -> i64
%3214 = "vm.trunc.i64.i32"(%3213) : (i64) -> i32
%3215 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3216 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3217 = "vm.const.i32.zero"() : () -> i32
%3218 = "vm.call"(%472, %3215, %3216, %460, %3217) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3219 = "vm.cmp.lte.i64.s"(%3193, %449) : (i64, i64) -> i32
%3220 = "vm.sub.i64"(%449, %3193) : (i64, i64) -> i64
%3221 = "vm.sub.i64"(%3193, %447) : (i64, i64) -> i64
%3222 = "vm.select.i64"(%3219, %3220, %3221) : (i32, i64, i64) -> i64
%3223 = "vm.div.i64.s"(%3222, %432) : (i64, i64) -> i64
%3224 = "vm.sub.i64"(%449, %3223) : (i64, i64) -> i64
%3225 = "vm.add.i64"(%3223, %447) : (i64, i64) -> i64
%3226 = "vm.select.i64"(%3219, %3224, %3225) : (i32, i64, i64) -> i64
%3227 = "vm.cmp.lte.i64.s"(%3194, %449) : (i64, i64) -> i32
%3228 = "vm.sub.i64"(%449, %3194) : (i64, i64) -> i64
%3229 = "vm.sub.i64"(%3194, %447) : (i64, i64) -> i64
%3230 = "vm.select.i64"(%3227, %3228, %3229) : (i32, i64, i64) -> i64
%3231 = "vm.div.i64.s"(%3230, %432) : (i64, i64) -> i64
%3232 = "vm.sub.i64"(%449, %3231) : (i64, i64) -> i64
%3233 = "vm.add.i64"(%3231, %447) : (i64, i64) -> i64
%3234 = "vm.select.i64"(%3227, %3232, %3233) : (i32, i64, i64) -> i64
%3235 = "vm.const.i32.zero"() : () -> i32
%3236 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3237 = "vm.const.i32"() <{value = 96 : i32}> : () -> i32
%3238 = "vm.trunc.i64.i32"(%3168) : (i64) -> i32
%3239 = "vm.trunc.i64.i32"(%3234) : (i64) -> i32
%3240 = "vm.trunc.i64.i32"(%3226) : (i64) -> i32
%3241 = "vm.const.i32.zero"() : () -> i32
%3242 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3218, %473, %3237, %3238, %3239, %3240, %3236, %3145, %3148, %3141, %3144, %3207, %3210, %3211, %3214, %3235, %3241, %3136, %449, %3130, %3235, %3242, %3206, %449, %3200) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3243 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3244 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3245 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3218, %3243, %3244, %3245) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3218) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3246 = "vm.const.i32.zero"() : () -> i32
%3247 = "vm.call"(%472, %3246) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3202, %3247, %3218) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3248 = "vm.cmp.lt.i64.s"(%3194, %438) : (i64, i64) -> i32
%3249 = "vm.select.i64"(%3248, %437, %3194) : (i32, i64, i64) -> i64
%3250 = "vm.select.i64"(%3248, %436, %437) : (i32, i64, i64) -> i64
%3251 = "vm.mul.i64"(%3249, %503) : (i64, i64) -> i64
%3252 = "vm.add.i64"(%3250, %437) : (i64, i64) -> i64
%3253 = "vm.select.i64"(%3008, %3249, %3251) : (i32, i64, i64) -> i64
%3254 = "vm.select.i64"(%3008, %3252, %3250) : (i32, i64, i64) -> i64
%3255 = "vm.cmp.lte.i64.u"(%3254, %437) : (i64, i64) -> i32
%3256 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3257 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3258 = "vm.xor.i32"(%3255, %3257) : (i32, i32) -> i32
"vm.cond_fail"(%3258, %3256) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%3259 = "vm.mul.i64"(%3193, %3194) : (i64, i64) -> i64
%3260 = "vm.mul.i64"(%3259, %503) : (i64, i64) -> i64
%3261 = "vm.div.i64.s"(%3260, %3253) : (i64, i64) -> i64
%3262 = "vm.select.i64"(%3248, %3261, %3194) : (i32, i64, i64) -> i64
%3263 = "vm.select.i64"(%3008, %3261, %503) : (i32, i64, i64) -> i64
%3264 = "vm.cmp.lt.i64.s"(%3261, %438) : (i64, i64) -> i32
%3265 = "vm.select.i64"(%3264, %437, %3261) : (i32, i64, i64) -> i64
%3266 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3267 = "vm.and.i32"(%3264, %3266) : (i32, i32) -> i32
%3268 = "vm.ext.i32.i64.u"(%3267) : (i32) -> i64
%3269 = "vm.add.i64"(%3268, %437) : (i64, i64) -> i64
%3270 = "vm.mul.i64"(%3265, %3263) : (i64, i64) -> i64
%3271 = "vm.add.i64"(%3268, %436) : (i64, i64) -> i64
%3272 = "vm.cmp.lt.i64.s"(%3263, %438) : (i64, i64) -> i32
%3273 = "vm.select.i64"(%3272, %3265, %3270) : (i32, i64, i64) -> i64
%3274 = "vm.select.i64"(%3272, %3271, %3269) : (i32, i64, i64) -> i64
%3275 = "vm.cmp.lte.i64.u"(%3274, %437) : (i64, i64) -> i32
%3276 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3277 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3278 = "vm.xor.i32"(%3275, %3277) : (i32, i32) -> i32
"vm.cond_fail"(%3278, %3276) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%3279 = "vm.mul.i64"(%3261, %3262) : (i64, i64) -> i64
%3280 = "vm.mul.i64"(%3279, %3263) : (i64, i64) -> i64
%3281 = "vm.div.i64.s"(%3280, %3273) : (i64, i64) -> i64
%3282 = "vm.select.i64"(%3264, %3281, %3261) : (i32, i64, i64) -> i64
%3283 = "vm.select.i64"(%3272, %3281, %3263) : (i32, i64, i64) -> i64
%3284 = "vm.cmp.eq.i64"(%3281, %503) : (i64, i64) -> i32
%3285 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3286 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3287 = "vm.xor.i32"(%3284, %3286) : (i32, i32) -> i32
"vm.cond_fail"(%3287, %3285) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3288 = "vm.mul.i64"(%3282, %429) : (i64, i64) -> i64
%3289 = "vm.mul.i64"(%3288, %3281) : (i64, i64) -> i64
%3290 = "vm.mul.i64"(%3289, %3283) : (i64, i64) -> i64
%3291 = "vm.const.i32.zero"() : () -> i32
%3292 = "vm.call"(%472, %3291) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3293 = "vm.const.i32.zero"() : () -> i32
%3294 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3295 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3296 = "vm.call"(%472, %460, %3247, %3292, %3293, %3294, %3295, %3290) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3297 = "vm.trunc.i64.i32"(%3282) : (i64) -> i32
%3298 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3299 = "vm.shr.i64.u"(%3282, %3298) : (i64, i32) -> i64
%3300 = "vm.trunc.i64.i32"(%3299) : (i64) -> i32
%3301 = "vm.trunc.i64.i32"(%3281) : (i64) -> i32
%3302 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3303 = "vm.shr.i64.u"(%3281, %3302) : (i64, i32) -> i64
%3304 = "vm.trunc.i64.i32"(%3303) : (i64) -> i32
%3305 = "vm.trunc.i64.i32"(%3283) : (i64) -> i32
%3306 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3307 = "vm.shr.i64.u"(%3283, %3306) : (i64, i32) -> i64
%3308 = "vm.trunc.i64.i32"(%3307) : (i64) -> i32
%3309 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3310 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3311 = "vm.const.i32.zero"() : () -> i32
%3312 = "vm.call"(%472, %3309, %3310, %460, %3311) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3313 = "vm.cmp.lte.i64.s"(%3282, %449) : (i64, i64) -> i32
%3314 = "vm.sub.i64"(%449, %3282) : (i64, i64) -> i64
%3315 = "vm.sub.i64"(%3282, %447) : (i64, i64) -> i64
%3316 = "vm.select.i64"(%3313, %3314, %3315) : (i32, i64, i64) -> i64
%3317 = "vm.div.i64.s"(%3316, %432) : (i64, i64) -> i64
%3318 = "vm.sub.i64"(%449, %3317) : (i64, i64) -> i64
%3319 = "vm.add.i64"(%3317, %447) : (i64, i64) -> i64
%3320 = "vm.select.i64"(%3313, %3318, %3319) : (i32, i64, i64) -> i64
%3321 = "vm.cmp.lte.i64.s"(%3281, %449) : (i64, i64) -> i32
%3322 = "vm.sub.i64"(%449, %3281) : (i64, i64) -> i64
%3323 = "vm.sub.i64"(%3281, %447) : (i64, i64) -> i64
%3324 = "vm.select.i64"(%3321, %3322, %3323) : (i32, i64, i64) -> i64
%3325 = "vm.div.i64.s"(%3324, %432) : (i64, i64) -> i64
%3326 = "vm.sub.i64"(%449, %3325) : (i64, i64) -> i64
%3327 = "vm.add.i64"(%3325, %447) : (i64, i64) -> i64
%3328 = "vm.select.i64"(%3321, %3326, %3327) : (i32, i64, i64) -> i64
%3329 = "vm.cmp.lte.i64.s"(%3283, %449) : (i64, i64) -> i32
%3330 = "vm.sub.i64"(%449, %3283) : (i64, i64) -> i64
%3331 = "vm.sub.i64"(%3283, %447) : (i64, i64) -> i64
%3332 = "vm.select.i64"(%3329, %3330, %3331) : (i32, i64, i64) -> i64
%3333 = "vm.div.i64.s"(%3332, %432) : (i64, i64) -> i64
%3334 = "vm.sub.i64"(%449, %3333) : (i64, i64) -> i64
%3335 = "vm.add.i64"(%3333, %447) : (i64, i64) -> i64
%3336 = "vm.select.i64"(%3329, %3334, %3335) : (i32, i64, i64) -> i64
%3337 = "vm.const.i32.zero"() : () -> i32
%3338 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3339 = "vm.const.i32"() <{value = 97 : i32}> : () -> i32
%3340 = "vm.trunc.i64.i32"(%3336) : (i64) -> i32
%3341 = "vm.trunc.i64.i32"(%3328) : (i64) -> i32
%3342 = "vm.trunc.i64.i32"(%3320) : (i64) -> i32
%3343 = "vm.const.i32.zero"() : () -> i32
%3344 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3312, %473, %3339, %3340, %3341, %3342, %3338, %3297, %3300, %3301, %3304, %3305, %3308, %3337, %3343, %3206, %449, %3200, %3337, %3344, %3296, %449, %3290) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3345 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3346 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3347 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3312, %3345, %3346, %3347) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3312) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3348 = "vm.const.i32.zero"() : () -> i32
%3349 = "vm.call"(%472, %3348) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3292, %3349, %3312) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3350 = "vm.cmp.eq.i64"(%3282, %501) : (i64, i64) -> i32
%3351 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3352 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3353 = "vm.xor.i32"(%3350, %3352) : (i32, i32) -> i32
"vm.cond_fail"(%3353, %3351) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3354 = "vm.cmp.eq.i64"(%3283, %503) : (i64, i64) -> i32
%3355 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3356 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3357 = "vm.xor.i32"(%3354, %3356) : (i32, i32) -> i32
"vm.cond_fail"(%3357, %3355) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3358 = "vm.cmp.gte.i64.s"(%3016, %438) : (i64, i64) -> i32
%3359 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3360 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3361 = "vm.xor.i32"(%3358, %3360) : (i32, i32) -> i32
"vm.cond_fail"(%3361, %3359) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3362 = "vm.div.i64.s"(%3067, %431) : (i64, i64) -> i64
%3363 = "vm.sub.i64"(%449, %3362) : (i64, i64) -> i64
%3364 = "vm.add.i64"(%3362, %447) : (i64, i64) -> i64
%3365 = "vm.select.i64"(%3064, %3363, %3364) : (i32, i64, i64) -> i64
%3366 = "vm.mul.i64"(%3016, %426) : (i64, i64) -> i64
%3367 = "vm.mul.i64"(%3366, %3365) : (i64, i64) -> i64
%3368 = "vm.mul.i64"(%3016, %425) : (i64, i64) -> i64
%3369 = "vm.add.i64"(%3367, %3108) : (i64, i64) -> i64
%3370 = "vm.const.i32.zero"() : () -> i32
%3371 = "vm.call"(%472, %3370) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3372 = "vm.const.i32.zero"() : () -> i32
%3373 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3374 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3375 = "vm.call"(%472, %460, %3106, %3371, %3372, %3373, %3374, %3369) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3376 = "vm.add.i64"(%3368, %3367) : (i64, i64) -> i64
%3377 = "vm.const.i32.zero"() : () -> i32
%3378 = "vm.call"(%472, %3377) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3379 = "vm.const.i32.zero"() : () -> i32
%3380 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3381 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3382 = "vm.call"(%472, %460, %3106, %3378, %3379, %3380, %3381, %3376) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3383 = "vm.call.variadic"(%3371, %3378) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3384 = "vm.trunc.i64.i32"(%3365) : (i64) -> i32
%3385 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3386 = "vm.shr.i64.u"(%3365, %3385) : (i64, i32) -> i64
%3387 = "vm.trunc.i64.i32"(%3386) : (i64) -> i32
%3388 = "vm.trunc.i64.i32"(%3368) : (i64) -> i32
%3389 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3390 = "vm.shr.i64.u"(%3368, %3389) : (i64, i32) -> i64
%3391 = "vm.trunc.i64.i32"(%3390) : (i64) -> i32
%3392 = "vm.trunc.i64.i32"(%3367) : (i64) -> i32
%3393 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3394 = "vm.shr.i64.u"(%3367, %3393) : (i64, i32) -> i64
%3395 = "vm.trunc.i64.i32"(%3394) : (i64) -> i32
%3396 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3397 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3398 = "vm.const.i32.zero"() : () -> i32
%3399 = "vm.call"(%472, %3396, %3397, %460, %3398) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3400 = "vm.div.i64.s"(%3059, %434) : (i64, i64) -> i64
%3401 = "vm.sub.i64"(%449, %3400) : (i64, i64) -> i64
%3402 = "vm.add.i64"(%3400, %447) : (i64, i64) -> i64
%3403 = "vm.select.i64"(%3056, %3401, %3402) : (i32, i64, i64) -> i64
%3404 = "vm.cmp.lte.i64.s"(%3365, %449) : (i64, i64) -> i32
%3405 = "vm.sub.i64"(%449, %3365) : (i64, i64) -> i64
%3406 = "vm.sub.i64"(%3365, %447) : (i64, i64) -> i64
%3407 = "vm.select.i64"(%3404, %3405, %3406) : (i32, i64, i64) -> i64
%3408 = "vm.div.i64.s"(%3407, %429) : (i64, i64) -> i64
%3409 = "vm.sub.i64"(%449, %3408) : (i64, i64) -> i64
%3410 = "vm.add.i64"(%3408, %447) : (i64, i64) -> i64
%3411 = "vm.select.i64"(%3404, %3409, %3410) : (i32, i64, i64) -> i64
%3412 = "vm.const.i32.zero"() : () -> i32
%3413 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3414 = "vm.const.i32"() <{value = 98 : i32}> : () -> i32
%3415 = "vm.trunc.i64.i32"(%3411) : (i64) -> i32
%3416 = "vm.trunc.i64.i32"(%3403) : (i64) -> i32
%3417 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3418 = "vm.const.i32.zero"() : () -> i32
%3419 = "vm.const.i32.zero"() : () -> i32
%3420 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3399, %473, %3414, %3415, %3416, %3417, %3413, %3141, %3144, %3137, %3140, %3040, %3043, %3044, %3047, %3384, %3387, %3412, %3418, %3027, %449, %3021, %3412, %3419, %471, %449, %459, %3412, %3420, %3375, %449, %3369) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3421 = "vm.const.i32.zero"() : () -> i32
%3422 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3423 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%3424 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3425 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3426 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3427 = "vm.const.i32.zero"() : () -> i32
%3428 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3399, %473, %3423, %3424, %3425, %3426, %3422, %397, %407, %407, %3040, %3043, %3421, %3427, %471, %449, %459, %3421, %3428, %3382, %449, %3376) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3429 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3430 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3431 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3399, %3429, %3430, %3431) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3432 = "vm.div.i64.s"(%3407, %464) : (i64, i64) -> i64
%3433 = "vm.sub.i64"(%449, %3432) : (i64, i64) -> i64
%3434 = "vm.add.i64"(%3432, %447) : (i64, i64) -> i64
%3435 = "vm.select.i64"(%3404, %3433, %3434) : (i32, i64, i64) -> i64
%3436 = "vm.const.i32.zero"() : () -> i32
%3437 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3438 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%3439 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%3440 = "vm.trunc.i64.i32"(%3435) : (i64) -> i32
%3441 = "vm.trunc.i64.i32"(%3016) : (i64) -> i32
%3442 = "vm.const.i32.zero"() : () -> i32
%3443 = "vm.const.i32.zero"() : () -> i32
%3444 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3399, %473, %3438, %3439, %3440, %3441, %3437, %407, %407, %407, %3388, %3391, %3040, %3043, %3384, %3387, %3436, %3442, %3375, %449, %3369, %3436, %3443, %3382, %449, %3376, %3436, %3444, %3382, %449, %3376) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3445 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3446 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3447 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3399, %3445, %3446, %3447) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3448 = "vm.const.i32.zero"() : () -> i32
%3449 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3450 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%3451 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3452 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3453 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3454 = "vm.const.i32.zero"() : () -> i32
%3455 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3399, %473, %3450, %3451, %3452, %3453, %3449, %3388, %3391, %3392, %3395, %3384, %3387, %3040, %3043, %3044, %3047, %3448, %3454, %3382, %449, %3376, %3448, %3455, %3375, %449, %3369) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3456 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3457 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3458 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3399, %3456, %3457, %3458) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3399) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3459 = "vm.const.i32.zero"() : () -> i32
%3460 = "vm.call"(%472, %3459) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3383, %3460, %3399) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3461 = "vm.const.i32.zero"() : () -> i32
%3462 = "vm.call"(%472, %3461) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %3460, %3462, %3382) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%3463 = "vm.cmp.lt.i64.s"(%3016, %438) : (i64, i64) -> i32
%3464 = "vm.select.i64"(%3463, %437, %3016) : (i32, i64, i64) -> i64
%3465 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3466 = "vm.and.i32"(%3463, %3465) : (i32, i32) -> i32
%3467 = "vm.ext.i32.i64.u"(%3466) : (i32) -> i64
%3468 = "vm.add.i64"(%3467, %437) : (i64, i64) -> i64
%3469 = "vm.mul.i64"(%3464, %435) : (i64, i64) -> i64
%3470 = "vm.cmp.lte.i64.u"(%3468, %437) : (i64, i64) -> i32
%3471 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3472 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3473 = "vm.xor.i32"(%3470, %3472) : (i32, i32) -> i32
"vm.cond_fail"(%3473, %3471) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%3474 = "vm.mul.i64"(%3016, %3017) : (i64, i64) -> i64
%3475 = "vm.mul.i64"(%3474, %435) : (i64, i64) -> i64
%3476 = "vm.div.i64.s"(%3475, %3469) : (i64, i64) -> i64
%3477 = "vm.select.i64"(%3463, %3476, %3016) : (i32, i64, i64) -> i64
%3478 = "vm.mul.i64"(%3477, %430) : (i64, i64) -> i64
%3479 = "vm.mul.i64"(%3478, %3476) : (i64, i64) -> i64
%3480 = "vm.const.i32.zero"() : () -> i32
%3481 = "vm.call"(%472, %3480) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3482 = "vm.const.i32.zero"() : () -> i32
%3483 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3484 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3485 = "vm.call"(%472, %460, %3462, %3481, %3482, %3483, %3484, %3479) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3486 = "vm.trunc.i64.i32"(%3477) : (i64) -> i32
%3487 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3488 = "vm.shr.i64.u"(%3477, %3487) : (i64, i32) -> i64
%3489 = "vm.trunc.i64.i32"(%3488) : (i64) -> i32
%3490 = "vm.trunc.i64.i32"(%3476) : (i64) -> i32
%3491 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3492 = "vm.shr.i64.u"(%3476, %3491) : (i64, i32) -> i64
%3493 = "vm.trunc.i64.i32"(%3492) : (i64) -> i32
%3494 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3495 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3496 = "vm.const.i32.zero"() : () -> i32
%3497 = "vm.call"(%472, %3494, %3495, %460, %3496) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3498 = "vm.cmp.lte.i64.s"(%3476, %449) : (i64, i64) -> i32
%3499 = "vm.sub.i64"(%449, %3476) : (i64, i64) -> i64
%3500 = "vm.sub.i64"(%3476, %447) : (i64, i64) -> i64
%3501 = "vm.select.i64"(%3498, %3499, %3500) : (i32, i64, i64) -> i64
%3502 = "vm.div.i64.s"(%3501, %432) : (i64, i64) -> i64
%3503 = "vm.sub.i64"(%449, %3502) : (i64, i64) -> i64
%3504 = "vm.add.i64"(%3502, %447) : (i64, i64) -> i64
%3505 = "vm.select.i64"(%3498, %3503, %3504) : (i32, i64, i64) -> i64
%3506 = "vm.const.i32.zero"() : () -> i32
%3507 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3508 = "vm.const.i32"() <{value = 99 : i32}> : () -> i32
%3509 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3510 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%3511 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3512 = "vm.const.i32.zero"() : () -> i32
%3513 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3497, %473, %3508, %3509, %3510, %3511, %3507, %3392, %3395, %3486, %3489, %3490, %3493, %3506, %3512, %3375, %449, %3369, %3506, %3513, %3485, %449, %3479) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3514 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3515 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3516 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3497, %3514, %3515, %3516) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3497) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3517 = "vm.const.i32.zero"() : () -> i32
%3518 = "vm.call"(%472, %3517) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3481, %3518, %3497) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3519 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3520 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3521 = "vm.xor.i32"(%3358, %3520) : (i32, i32) -> i32
"vm.cond_fail"(%3521, %3519) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3522 = "vm.const.i32.zero"() : () -> i32
%3523 = "vm.call"(%472, %3522) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3524 = "vm.const.i32.zero"() : () -> i32
%3525 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3526 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3527 = "vm.call"(%472, %460, %3462, %3523, %3524, %3525, %3526, %3108) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3528 = "vm.const.i32.zero"() : () -> i32
%3529 = "vm.call"(%472, %3528) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3530 = "vm.const.i32.zero"() : () -> i32
%3531 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3532 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3533 = "vm.call"(%472, %460, %3462, %3529, %3530, %3531, %3532, %3376) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3534 = "vm.call.variadic"(%3523, %3529) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3535 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3536 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3537 = "vm.const.i32.zero"() : () -> i32
%3538 = "vm.call"(%472, %3535, %3536, %460, %3537) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3539 = "vm.const.i32.zero"() : () -> i32
%3540 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3541 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%3542 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3543 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3544 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3545 = "vm.const.i32.zero"() : () -> i32
%3546 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3538, %473, %3541, %3542, %3543, %3544, %3540, %396, %407, %407, %3040, %3043, %3539, %3545, %471, %449, %459, %3539, %3546, %3533, %449, %3376) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3547 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3548 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3549 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3538, %3547, %3548, %3549) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3550 = "vm.const.i32.zero"() : () -> i32
%3551 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3552 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%3553 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%3554 = "vm.trunc.i64.i32"(%3435) : (i64) -> i32
%3555 = "vm.trunc.i64.i32"(%3016) : (i64) -> i32
%3556 = "vm.const.i32.zero"() : () -> i32
%3557 = "vm.const.i32.zero"() : () -> i32
%3558 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3538, %473, %3552, %3553, %3554, %3555, %3551, %407, %407, %407, %3388, %3391, %3040, %3043, %3384, %3387, %3550, %3556, %3375, %449, %3369, %3550, %3557, %3533, %449, %3376, %3550, %3558, %3533, %449, %3376) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3559 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3560 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3561 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3538, %3559, %3560, %3561) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3562 = "vm.const.i32.zero"() : () -> i32
%3563 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3564 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%3565 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3566 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3567 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3568 = "vm.const.i32.zero"() : () -> i32
%3569 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3538, %473, %3564, %3565, %3566, %3567, %3563, %3388, %3391, %407, %407, %3384, %3387, %3040, %3043, %3044, %3047, %3562, %3568, %3533, %449, %3376, %3562, %3569, %3527, %449, %3108) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3570 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3571 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3572 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3538, %3570, %3571, %3572) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3538) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3573 = "vm.const.i32.zero"() : () -> i32
%3574 = "vm.call"(%472, %3573) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3534, %3574, %3538) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3575 = "vm.const.i32.zero"() : () -> i32
%3576 = "vm.call"(%472, %3575) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %3574, %3576, %3533) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%3577 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3578 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3579 = "vm.xor.i32"(%3470, %3578) : (i32, i32) -> i32
"vm.cond_fail"(%3579, %3577) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%3580 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3581 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3582 = "vm.xor.i32"(%3358, %3581) : (i32, i32) -> i32
"vm.cond_fail"(%3582, %3580) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3583 = "vm.const.i32.zero"() : () -> i32
%3584 = "vm.call"(%472, %3583) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3585 = "vm.const.i32.zero"() : () -> i32
%3586 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3587 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3588 = "vm.call"(%472, %460, %3462, %3584, %3585, %3586, %3587, %3108) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3589 = "vm.const.i32.zero"() : () -> i32
%3590 = "vm.call"(%472, %3589) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3591 = "vm.const.i32.zero"() : () -> i32
%3592 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3593 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3594 = "vm.call"(%472, %460, %3462, %3590, %3591, %3592, %3593, %3376) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3595 = "vm.call.variadic"(%3584, %3590) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3596 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3597 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3598 = "vm.const.i32.zero"() : () -> i32
%3599 = "vm.call"(%472, %3596, %3597, %460, %3598) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3600 = "vm.const.i32.zero"() : () -> i32
%3601 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3602 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%3603 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3604 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3605 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3606 = "vm.const.i32.zero"() : () -> i32
%3607 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3599, %473, %3602, %3603, %3604, %3605, %3601, %395, %407, %407, %3040, %3043, %3600, %3606, %471, %449, %459, %3600, %3607, %3594, %449, %3376) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3608 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3609 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3610 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3599, %3608, %3609, %3610) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3611 = "vm.const.i32.zero"() : () -> i32
%3612 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3613 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%3614 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%3615 = "vm.trunc.i64.i32"(%3435) : (i64) -> i32
%3616 = "vm.trunc.i64.i32"(%3016) : (i64) -> i32
%3617 = "vm.const.i32.zero"() : () -> i32
%3618 = "vm.const.i32.zero"() : () -> i32
%3619 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3599, %473, %3613, %3614, %3615, %3616, %3612, %407, %407, %407, %3388, %3391, %3040, %3043, %3384, %3387, %3611, %3617, %3375, %449, %3369, %3611, %3618, %3594, %449, %3376, %3611, %3619, %3594, %449, %3376) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3620 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3621 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3622 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3599, %3620, %3621, %3622) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3623 = "vm.const.i32.zero"() : () -> i32
%3624 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3625 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%3626 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3627 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3628 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%3629 = "vm.const.i32.zero"() : () -> i32
%3630 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3599, %473, %3625, %3626, %3627, %3628, %3624, %3388, %3391, %407, %407, %3384, %3387, %3040, %3043, %3044, %3047, %3623, %3629, %3594, %449, %3376, %3623, %3630, %3588, %449, %3108) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3631 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3632 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3633 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3599, %3631, %3632, %3633) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3599) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3634 = "vm.const.i32.zero"() : () -> i32
%3635 = "vm.call"(%472, %3634) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3595, %3635, %3599) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3636 = "vm.const.i32.zero"() : () -> i32
%3637 = "vm.call"(%472, %3636) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %3635, %3637, %3594) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%3638 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3639 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3640 = "vm.xor.i32"(%3470, %3639) : (i32, i32) -> i32
"vm.cond_fail"(%3640, %3638) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%3641 = "vm.mul.i64"(%3477, %443) : (i64, i64) -> i64
%3642 = "vm.div.i64.s"(%3501, %431) : (i64, i64) -> i64
%3643 = "vm.sub.i64"(%449, %3642) : (i64, i64) -> i64
%3644 = "vm.add.i64"(%3642, %447) : (i64, i64) -> i64
%3645 = "vm.select.i64"(%3498, %3643, %3644) : (i32, i64, i64) -> i64
%3646 = "vm.mul.i64"(%3477, %426) : (i64, i64) -> i64
%3647 = "vm.mul.i64"(%3646, %3645) : (i64, i64) -> i64
%3648 = "vm.div.i64.s"(%3501, %429) : (i64, i64) -> i64
%3649 = "vm.sub.i64"(%449, %3648) : (i64, i64) -> i64
%3650 = "vm.add.i64"(%3648, %447) : (i64, i64) -> i64
%3651 = "vm.select.i64"(%3498, %3649, %3650) : (i32, i64, i64) -> i64
%3652 = "vm.mul.i64"(%3477, %427) : (i64, i64) -> i64
%3653 = "vm.mul.i64"(%3652, %3651) : (i64, i64) -> i64
%3654 = "vm.mul.i64"(%3477, %408) : (i64, i64) -> i64
%3655 = "vm.mul.i64"(%3654, %3645) : (i64, i64) -> i64
%3656 = "vm.mul.i64"(%3655, %3651) : (i64, i64) -> i64
%3657 = "vm.call.variadic"(%3637, %3576, %3518) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3658 = "vm.add.i64"(%3479, %3656) : (i64, i64) -> i64
%3659 = "vm.const.i32.zero"() : () -> i32
%3660 = "vm.call"(%472, %3659) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3661 = "vm.const.i32.zero"() : () -> i32
%3662 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3663 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3664 = "vm.call"(%472, %460, %3657, %3660, %3661, %3662, %3663, %3658) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3665 = "vm.add.i64"(%3479, %3647) : (i64, i64) -> i64
%3666 = "vm.add.i64"(%3665, %3653) : (i64, i64) -> i64
%3667 = "vm.const.i32.zero"() : () -> i32
%3668 = "vm.call"(%472, %3667) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3669 = "vm.const.i32.zero"() : () -> i32
%3670 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3671 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3672 = "vm.call"(%472, %460, %3657, %3668, %3669, %3670, %3671, %3666) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3673 = "vm.call.variadic"(%3660, %3668) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3674 = "vm.trunc.i64.i32"(%3479) : (i64) -> i32
%3675 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3676 = "vm.shr.i64.u"(%3479, %3675) : (i64, i32) -> i64
%3677 = "vm.trunc.i64.i32"(%3676) : (i64) -> i32
%3678 = "vm.trunc.i64.i32"(%3641) : (i64) -> i32
%3679 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3680 = "vm.shr.i64.u"(%3641, %3679) : (i64, i32) -> i64
%3681 = "vm.trunc.i64.i32"(%3680) : (i64) -> i32
%3682 = "vm.trunc.i64.i32"(%3645) : (i64) -> i32
%3683 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3684 = "vm.shr.i64.u"(%3645, %3683) : (i64, i32) -> i64
%3685 = "vm.trunc.i64.i32"(%3684) : (i64) -> i32
%3686 = "vm.trunc.i64.i32"(%3665) : (i64) -> i32
%3687 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3688 = "vm.shr.i64.u"(%3665, %3687) : (i64, i32) -> i64
%3689 = "vm.trunc.i64.i32"(%3688) : (i64) -> i32
%3690 = "vm.trunc.i64.i32"(%3651) : (i64) -> i32
%3691 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3692 = "vm.shr.i64.u"(%3651, %3691) : (i64, i32) -> i64
%3693 = "vm.trunc.i64.i32"(%3692) : (i64) -> i32
%3694 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3695 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3696 = "vm.const.i32.zero"() : () -> i32
%3697 = "vm.call"(%472, %3694, %3695, %460, %3696) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3698 = "vm.const.i32.zero"() : () -> i32
%3699 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3700 = "vm.const.i32"() <{value = 99 : i32}> : () -> i32
%3701 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3702 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%3703 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3704 = "vm.const.i32.zero"() : () -> i32
%3705 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3697, %473, %3700, %3701, %3702, %3703, %3699, %407, %407, %3486, %3489, %3490, %3493, %3698, %3704, %3588, %449, %3108, %3698, %3705, %3664, %449, %3658) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3706 = "vm.const.i32.zero"() : () -> i32
%3707 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3708 = "vm.const.i32"() <{value = 100 : i32}> : () -> i32
%3709 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3710 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%3711 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3712 = "vm.const.i32.zero"() : () -> i32
%3713 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3697, %473, %3708, %3709, %3710, %3711, %3707, %407, %407, %3486, %3489, %3490, %3493, %3706, %3712, %3527, %449, %3108, %3706, %3713, %3672, %449, %3666) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3714 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3715 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3716 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3697, %3714, %3715, %3716) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3717 = "vm.mul.i64"(%3477, %464) : (i64, i64) -> i64
%3718 = "vm.cmp.lte.i64.s"(%3717, %449) : (i64, i64) -> i32
%3719 = "vm.sub.i64"(%449, %3717) : (i64, i64) -> i64
%3720 = "vm.sub.i64"(%3717, %447) : (i64, i64) -> i64
%3721 = "vm.select.i64"(%3718, %3719, %3720) : (i32, i64, i64) -> i64
%3722 = "vm.div.i64.s"(%3721, %428) : (i64, i64) -> i64
%3723 = "vm.sub.i64"(%449, %3722) : (i64, i64) -> i64
%3724 = "vm.add.i64"(%3722, %447) : (i64, i64) -> i64
%3725 = "vm.select.i64"(%3718, %3723, %3724) : (i32, i64, i64) -> i64
%3726 = "vm.cmp.lte.i64.s"(%3645, %449) : (i64, i64) -> i32
%3727 = "vm.sub.i64"(%449, %3645) : (i64, i64) -> i64
%3728 = "vm.sub.i64"(%3645, %447) : (i64, i64) -> i64
%3729 = "vm.select.i64"(%3726, %3727, %3728) : (i32, i64, i64) -> i64
%3730 = "vm.div.i64.s"(%3729, %431) : (i64, i64) -> i64
%3731 = "vm.sub.i64"(%449, %3730) : (i64, i64) -> i64
%3732 = "vm.add.i64"(%3730, %447) : (i64, i64) -> i64
%3733 = "vm.select.i64"(%3726, %3731, %3732) : (i32, i64, i64) -> i64
%3734 = "vm.const.i32.zero"() : () -> i32
%3735 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3736 = "vm.const.i32"() <{value = 101 : i32}> : () -> i32
%3737 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%3738 = "vm.trunc.i64.i32"(%3733) : (i64) -> i32
%3739 = "vm.trunc.i64.i32"(%3725) : (i64) -> i32
%3740 = "vm.const.i32.zero"() : () -> i32
%3741 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3697, %473, %3736, %3737, %3738, %3739, %3735, %3674, %3677, %3678, %3681, %3490, %3493, %3682, %3685, %3734, %3740, %3485, %449, %3479, %3734, %3741, %3672, %449, %3666) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3742 = "vm.cmp.lte.i64.s"(%3651, %449) : (i64, i64) -> i32
%3743 = "vm.sub.i64"(%449, %3651) : (i64, i64) -> i64
%3744 = "vm.sub.i64"(%3651, %447) : (i64, i64) -> i64
%3745 = "vm.select.i64"(%3742, %3743, %3744) : (i32, i64, i64) -> i64
%3746 = "vm.div.i64.s"(%3745, %432) : (i64, i64) -> i64
%3747 = "vm.sub.i64"(%449, %3746) : (i64, i64) -> i64
%3748 = "vm.add.i64"(%3746, %447) : (i64, i64) -> i64
%3749 = "vm.select.i64"(%3742, %3747, %3748) : (i32, i64, i64) -> i64
%3750 = "vm.const.i32.zero"() : () -> i32
%3751 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3752 = "vm.const.i32"() <{value = 102 : i32}> : () -> i32
%3753 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3754 = "vm.trunc.i64.i32"(%3749) : (i64) -> i32
%3755 = "vm.trunc.i64.i32"(%3725) : (i64) -> i32
%3756 = "vm.const.i32.zero"() : () -> i32
%3757 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3697, %473, %3752, %3753, %3754, %3755, %3751, %3686, %3689, %3678, %3681, %3490, %3493, %3690, %3693, %3750, %3756, %3672, %449, %3666, %3750, %3757, %3672, %449, %3666) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3758 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3759 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3760 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3697, %3758, %3759, %3760) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3761 = "vm.div.i64.s"(%3729, %434) : (i64, i64) -> i64
%3762 = "vm.sub.i64"(%449, %3761) : (i64, i64) -> i64
%3763 = "vm.add.i64"(%3761, %447) : (i64, i64) -> i64
%3764 = "vm.select.i64"(%3726, %3762, %3763) : (i32, i64, i64) -> i64
%3765 = "vm.const.i32.zero"() : () -> i32
%3766 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3767 = "vm.const.i32"() <{value = 103 : i32}> : () -> i32
%3768 = "vm.trunc.i64.i32"(%3749) : (i64) -> i32
%3769 = "vm.trunc.i64.i32"(%3764) : (i64) -> i32
%3770 = "vm.trunc.i64.i32"(%3641) : (i64) -> i32
%3771 = "vm.const.i32.zero"() : () -> i32
%3772 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3697, %473, %3767, %3768, %3769, %3770, %3766, %3674, %3677, %3686, %3689, %3678, %3681, %3678, %3681, %3682, %3685, %3690, %3693, %3765, %3771, %3672, %449, %3666, %3765, %3772, %3664, %449, %3658) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3773 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3774 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3775 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3697, %3773, %3774, %3775) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3697) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3776 = "vm.const.i32.zero"() : () -> i32
%3777 = "vm.call"(%472, %3776) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3673, %3777, %3697) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3778 = "vm.const.i32.zero"() : () -> i32
%3779 = "vm.call"(%472, %3778) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %3777, %3779, %3672) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%3780 = "vm.cmp.gte.i64.s"(%3017, %438) : (i64, i64) -> i32
%3781 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3782 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3783 = "vm.xor.i32"(%3780, %3782) : (i32, i32) -> i32
"vm.cond_fail"(%3783, %3781) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3784 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3785 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3786 = "vm.xor.i32"(%3780, %3785) : (i32, i32) -> i32
"vm.cond_fail"(%3786, %3784) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3787 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3788 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3789 = "vm.xor.i32"(%3780, %3788) : (i32, i32) -> i32
"vm.cond_fail"(%3789, %3787) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3790 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3791 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3792 = "vm.xor.i32"(%3780, %3791) : (i32, i32) -> i32
"vm.cond_fail"(%3792, %3790) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%3793 = "vm.mul.i64"(%3017, %431) : (i64, i64) -> i64
%3794 = "vm.mul.i64"(%3793, %3017) : (i64, i64) -> i64
%3795 = "vm.mul.i64"(%3017, %3017) : (i64, i64) -> i64
%3796 = "vm.mul.i64"(%3795, %423) : (i64, i64) -> i64
%3797 = "vm.const.i32.zero"() : () -> i32
%3798 = "vm.call"(%472, %3797) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3799 = "vm.const.i32.zero"() : () -> i32
%3800 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3801 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3802 = "vm.call"(%472, %460, %470, %3798, %3799, %3800, %3801, %3796) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3803 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%3804 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%3805 = "vm.add.i64"(%3794, %3804) : (i64, i64) -> i64
%3806 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%3807 = "vm.and.i64"(%3805, %3806) : (i64, i64) -> i64
%3808 = "vm.const.i32.zero"() : () -> i32
%3809 = "vm.call"(%472, %3808) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3810 = "vm.const.i32.zero"() : () -> i32
%3811 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3812 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3813 = "vm.call"(%472, %460, %470, %3809, %3810, %3811, %3812, %3807) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3814 = "vm.call.variadic"(%3798, %3809) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3815 = "vm.trunc.i64.i32"(%3795) : (i64) -> i32
%3816 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3817 = "vm.shr.i64.u"(%3795, %3816) : (i64, i32) -> i64
%3818 = "vm.trunc.i64.i32"(%3817) : (i64) -> i32
%3819 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3820 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3821 = "vm.const.i32.zero"() : () -> i32
%3822 = "vm.call"(%472, %3819, %3820, %460, %3821) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3823 = "vm.const.i32.zero"() : () -> i32
%3824 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3825 = "vm.const.i32"() <{value = 104 : i32}> : () -> i32
%3826 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3827 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3828 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3829 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3822, %473, %3825, %3826, %3827, %3828, %3824, %3044, %3047, %3823, %3829, %3813, %449, %3807) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3830 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3831 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3832 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3822, %3830, %3831, %3832) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%3833 = "vm.cmp.lte.i64.s"(%3795, %449) : (i64, i64) -> i32
%3834 = "vm.sub.i64"(%449, %3795) : (i64, i64) -> i64
%3835 = "vm.sub.i64"(%3795, %447) : (i64, i64) -> i64
%3836 = "vm.select.i64"(%3833, %3834, %3835) : (i32, i64, i64) -> i64
%3837 = "vm.div.i64.s"(%3836, %432) : (i64, i64) -> i64
%3838 = "vm.sub.i64"(%449, %3837) : (i64, i64) -> i64
%3839 = "vm.add.i64"(%3837, %447) : (i64, i64) -> i64
%3840 = "vm.select.i64"(%3833, %3838, %3839) : (i32, i64, i64) -> i64
%3841 = "vm.const.i32.zero"() : () -> i32
%3842 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3843 = "vm.const.i32"() <{value = 63 : i32}> : () -> i32
%3844 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3845 = "vm.trunc.i64.i32"(%3840) : (i64) -> i32
%3846 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3847 = "vm.const.i32.zero"() : () -> i32
%3848 = "vm.const.i32.zero"() : () -> i32
%3849 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3822, %473, %3843, %3844, %3845, %3846, %3842, %394, %407, %407, %407, %3815, %3818, %3841, %3847, %471, %449, %459, %3841, %3848, %3813, %449, %3807, %3841, %3849, %3802, %449, %3796) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3850 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3851 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3852 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3822, %3850, %3851, %3852) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3822) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3853 = "vm.const.i32.zero"() : () -> i32
%3854 = "vm.call"(%472, %3853) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3814, %3854, %3822) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3855 = "vm.const.i32.zero"() : () -> i32
%3856 = "vm.call"(%472, %3855) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %3854, %3856, %3813) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%3857 = "vm.cmp.eq.i64"(%3017, %3281) : (i64, i64) -> i32
%3858 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3859 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3860 = "vm.xor.i32"(%3857, %3859) : (i32, i32) -> i32
"vm.cond_fail"(%3860, %3858) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3861 = "vm.cmp.eq.i64"(%3017, %3283) : (i64, i64) -> i32
%3862 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3863 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3864 = "vm.xor.i32"(%3861, %3863) : (i32, i32) -> i32
"vm.cond_fail"(%3864, %3862) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3865 = "vm.mul.i64"(%3282, %423) : (i64, i64) -> i64
%3866 = "vm.mul.i64"(%3865, %3017) : (i64, i64) -> i64
%3867 = "vm.mul.i64"(%3866, %3017) : (i64, i64) -> i64
%3868 = "vm.call.variadic"(%3856, %3349) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3869 = "vm.const.i32.zero"() : () -> i32
%3870 = "vm.call"(%472, %3869) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3871 = "vm.const.i32.zero"() : () -> i32
%3872 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3873 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3874 = "vm.call"(%472, %460, %3868, %3870, %3871, %3872, %3873, %3867) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3875 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3876 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%3877 = "vm.const.i32.zero"() : () -> i32
%3878 = "vm.call"(%472, %3875, %3876, %460, %3877) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%3879 = "vm.const.i32.zero"() : () -> i32
%3880 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%3881 = "vm.const.i32"() <{value = 105 : i32}> : () -> i32
%3882 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3883 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%3884 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%3885 = "vm.const.i32.zero"() : () -> i32
%3886 = "vm.const.i32.zero"() : () -> i32
%3887 = "vm.const.i32.zero"() : () -> i32
%3888 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%3878, %473, %3881, %3882, %3883, %3884, %3880, %3044, %3047, %3297, %3300, %3301, %3304, %3305, %3308, %3137, %3140, %3141, %3144, %3879, %3885, %3802, %449, %3796, %3879, %3886, %3296, %449, %3290, %3879, %3887, %3136, %449, %3130, %3879, %3888, %3874, %449, %3867) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%3889 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%3890 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%3891 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%3878, %3889, %3890, %3891) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%3878) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%3892 = "vm.const.i32.zero"() : () -> i32
%3893 = "vm.call"(%472, %3892) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3870, %3893, %3878) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%3894 = "vm.cmp.lt.i64.s"(%3641, %449) : (i64, i64) -> i32
%3895 = "vm.sub.i64"(%446, %3641) : (i64, i64) -> i64
%3896 = "vm.select.i64"(%3894, %3895, %3641) : (i32, i64, i64) -> i64
%3897 = "vm.div.i64.s"(%3896, %443) : (i64, i64) -> i64
%3898 = "vm.sub.i64"(%446, %3897) : (i64, i64) -> i64
%3899 = "vm.select.i64"(%3894, %3898, %3897) : (i32, i64, i64) -> i64
%3900 = "vm.cmp.eq.i64"(%3899, %3282) : (i64, i64) -> i32
%3901 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3902 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3903 = "vm.xor.i32"(%3900, %3902) : (i32, i32) -> i32
"vm.cond_fail"(%3903, %3901) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3904 = "vm.cmp.eq.i64"(%3476, %3017) : (i64, i64) -> i32
%3905 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3906 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3907 = "vm.xor.i32"(%3904, %3906) : (i32, i32) -> i32
"vm.cond_fail"(%3907, %3905) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3908 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%3909 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%3910 = "vm.xor.i32"(%3904, %3909) : (i32, i32) -> i32
"vm.cond_fail"(%3910, %3908) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%3911 = "vm.mul.i64"(%3282, %443) : (i64, i64) -> i64
%3912 = "vm.mul.i64"(%3899, %443) : (i64, i64) -> i64
%3913 = "vm.mul.i64"(%3899, %423) : (i64, i64) -> i64
%3914 = "vm.mul.i64"(%3913, %3476) : (i64, i64) -> i64
%3915 = "vm.mul.i64"(%3914, %3476) : (i64, i64) -> i64
%3916 = "vm.max.i64.u"(%3899, %3477) : (i64, i64) -> i64
%3917 = "vm.mul.i64"(%3916, %443) : (i64, i64) -> i64
%3918 = "vm.mul.i64"(%3899, %454) : (i64, i64) -> i64
%3919 = "vm.mul.i64"(%3918, %3645) : (i64, i64) -> i64
%3920 = "vm.mul.i64"(%3919, %3476) : (i64, i64) -> i64
%3921 = "vm.mul.i64"(%3916, %426) : (i64, i64) -> i64
%3922 = "vm.mul.i64"(%3921, %3645) : (i64, i64) -> i64
%3923 = "vm.mul.i64"(%3916, %430) : (i64, i64) -> i64
%3924 = "vm.mul.i64"(%3923, %3476) : (i64, i64) -> i64
%3925 = "vm.cmp.lt.i64.s"(%3917, %449) : (i64, i64) -> i32
%3926 = "vm.sub.i64"(%446, %3917) : (i64, i64) -> i64
%3927 = "vm.select.i64"(%3925, %3926, %3917) : (i32, i64, i64) -> i64
%3928 = "vm.div.i64.s"(%3927, %443) : (i64, i64) -> i64
%3929 = "vm.sub.i64"(%446, %3928) : (i64, i64) -> i64
%3930 = "vm.select.i64"(%3925, %3929, %3928) : (i32, i64, i64) -> i64
%3931 = "vm.mul.i64"(%3930, %430) : (i64, i64) -> i64
%3932 = "vm.mul.i64"(%3931, %3476) : (i64, i64) -> i64
%3933 = "vm.call.variadic"(%3779, %3893) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3934 = "vm.const.i32.zero"() : () -> i32
%3935 = "vm.call"(%472, %3934) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3936 = "vm.const.i32.zero"() : () -> i32
%3937 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%3938 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%3939 = "vm.call"(%472, %460, %3933, %3935, %3936, %3937, %3938, %431) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3940 = "vm.add.i64"(%3932, %432) : (i64, i64) -> i64
%3941 = "vm.const.i32.zero"() : () -> i32
%3942 = "vm.call"(%472, %3941) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3943 = "vm.const.i32.zero"() : () -> i32
%3944 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3945 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3946 = "vm.call"(%472, %460, %3933, %3942, %3943, %3944, %3945, %3940) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3947 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%3948 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%3949 = "vm.add.i64"(%3915, %3948) : (i64, i64) -> i64
%3950 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%3951 = "vm.and.i64"(%3949, %3950) : (i64, i64) -> i64
%3952 = "vm.add.i64"(%3951, %3951) : (i64, i64) -> i64
%3953 = "vm.add.i64"(%3952, %3920) : (i64, i64) -> i64
%3954 = "vm.add.i64"(%3953, %3479) : (i64, i64) -> i64
%3955 = "vm.add.i64"(%3954, %3922) : (i64, i64) -> i64
%3956 = "vm.add.i64"(%3955, %3924) : (i64, i64) -> i64
%3957 = "vm.const.i32.zero"() : () -> i32
%3958 = "vm.call"(%472, %3957) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%3959 = "vm.const.i32.zero"() : () -> i32
%3960 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%3961 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%3962 = "vm.call"(%472, %460, %3933, %3958, %3959, %3960, %3961, %3956) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%3963 = "vm.call.variadic"(%3935, %3942, %3958) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%3964 = "vm.trunc.i64.i32"(%3911) : (i64) -> i32
%3965 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3966 = "vm.shr.i64.u"(%3911, %3965) : (i64, i32) -> i64
%3967 = "vm.trunc.i64.i32"(%3966) : (i64) -> i32
%3968 = "vm.trunc.i64.i32"(%3912) : (i64) -> i32
%3969 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3970 = "vm.shr.i64.u"(%3912, %3969) : (i64, i32) -> i64
%3971 = "vm.trunc.i64.i32"(%3970) : (i64) -> i32
%3972 = "vm.trunc.i64.i32"(%3951) : (i64) -> i32
%3973 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3974 = "vm.shr.i64.u"(%3951, %3973) : (i64, i32) -> i64
%3975 = "vm.trunc.i64.i32"(%3974) : (i64) -> i32
%3976 = "vm.trunc.i64.i32"(%3899) : (i64) -> i32
%3977 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3978 = "vm.shr.i64.u"(%3899, %3977) : (i64, i32) -> i64
%3979 = "vm.trunc.i64.i32"(%3978) : (i64) -> i32
%3980 = "vm.trunc.i64.i32"(%3952) : (i64) -> i32
%3981 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3982 = "vm.shr.i64.u"(%3952, %3981) : (i64, i32) -> i64
%3983 = "vm.trunc.i64.i32"(%3982) : (i64) -> i32
%3984 = "vm.trunc.i64.i32"(%3953) : (i64) -> i32
%3985 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3986 = "vm.shr.i64.u"(%3953, %3985) : (i64, i32) -> i64
%3987 = "vm.trunc.i64.i32"(%3986) : (i64) -> i32
%3988 = "vm.trunc.i64.i32"(%3954) : (i64) -> i32
%3989 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3990 = "vm.shr.i64.u"(%3954, %3989) : (i64, i32) -> i64
%3991 = "vm.trunc.i64.i32"(%3990) : (i64) -> i32
%3992 = "vm.trunc.i64.i32"(%3917) : (i64) -> i32
%3993 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3994 = "vm.shr.i64.u"(%3917, %3993) : (i64, i32) -> i64
%3995 = "vm.trunc.i64.i32"(%3994) : (i64) -> i32
%3996 = "vm.trunc.i64.i32"(%3955) : (i64) -> i32
%3997 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%3998 = "vm.shr.i64.u"(%3955, %3997) : (i64, i32) -> i64
%3999 = "vm.trunc.i64.i32"(%3998) : (i64) -> i32
%4000 = "vm.trunc.i64.i32"(%3930) : (i64) -> i32
%4001 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4002 = "vm.shr.i64.u"(%3930, %4001) : (i64, i32) -> i64
%4003 = "vm.trunc.i64.i32"(%4002) : (i64) -> i32
%4004 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4005 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%4006 = "vm.const.i32.zero"() : () -> i32
%4007 = "vm.call"(%472, %4004, %4005, %460, %4006) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%4008 = "vm.cmp.lte.i64.s"(%3641, %449) : (i64, i64) -> i32
%4009 = "vm.sub.i64"(%449, %3641) : (i64, i64) -> i64
%4010 = "vm.sub.i64"(%3641, %447) : (i64, i64) -> i64
%4011 = "vm.select.i64"(%4008, %4009, %4010) : (i32, i64, i64) -> i64
%4012 = "vm.div.i64.s"(%4011, %432) : (i64, i64) -> i64
%4013 = "vm.sub.i64"(%449, %4012) : (i64, i64) -> i64
%4014 = "vm.add.i64"(%4012, %447) : (i64, i64) -> i64
%4015 = "vm.select.i64"(%4008, %4013, %4014) : (i32, i64, i64) -> i64
%4016 = "vm.const.i32.zero"() : () -> i32
%4017 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4018 = "vm.const.i32"() <{value = 106 : i32}> : () -> i32
%4019 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%4020 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%4021 = "vm.trunc.i64.i32"(%4015) : (i64) -> i32
%4022 = "vm.const.i32.zero"() : () -> i32
%4023 = "vm.const.i32.zero"() : () -> i32
%4024 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4018, %4019, %4020, %4021, %4017, %3674, %3677, %3678, %3681, %3682, %3685, %3690, %3693, %3964, %3967, %3044, %3047, %3968, %3971, %3490, %3493, %4016, %4022, %3664, %449, %3658, %4016, %4023, %3874, %449, %3867, %4016, %4024, %3962, %449, %3956) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 16, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4025 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4026 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4027 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4025, %4026, %4027) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4028 = "vm.cmp.lte.i64.s"(%3899, %449) : (i64, i64) -> i32
%4029 = "vm.sub.i64"(%449, %3899) : (i64, i64) -> i64
%4030 = "vm.sub.i64"(%3899, %447) : (i64, i64) -> i64
%4031 = "vm.select.i64"(%4028, %4029, %4030) : (i32, i64, i64) -> i64
%4032 = "vm.div.i64.s"(%4031, %434) : (i64, i64) -> i64
%4033 = "vm.sub.i64"(%449, %4032) : (i64, i64) -> i64
%4034 = "vm.add.i64"(%4032, %447) : (i64, i64) -> i64
%4035 = "vm.select.i64"(%4028, %4033, %4034) : (i32, i64, i64) -> i64
%4036 = "vm.div.i64.s"(%3501, %434) : (i64, i64) -> i64
%4037 = "vm.sub.i64"(%449, %4036) : (i64, i64) -> i64
%4038 = "vm.add.i64"(%4036, %447) : (i64, i64) -> i64
%4039 = "vm.select.i64"(%3498, %4037, %4038) : (i32, i64, i64) -> i64
%4040 = "vm.const.i32.zero"() : () -> i32
%4041 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4042 = "vm.const.i32"() <{value = 107 : i32}> : () -> i32
%4043 = "vm.trunc.i64.i32"(%4039) : (i64) -> i32
%4044 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4045 = "vm.trunc.i64.i32"(%4035) : (i64) -> i32
%4046 = "vm.const.i32.zero"() : () -> i32
%4047 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4042, %4043, %4044, %4045, %4041, %3972, %3975, %3141, %3144, %3137, %3140, %3678, %3681, %3976, %3979, %3490, %3493, %4040, %4046, %3962, %449, %3956, %4040, %4047, %3962, %449, %3956) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4048 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4049 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4050 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4048, %4049, %4050) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4051 = "vm.mul.i64"(%3899, %464) : (i64, i64) -> i64
%4052 = "vm.cmp.lte.i64.s"(%4051, %449) : (i64, i64) -> i32
%4053 = "vm.sub.i64"(%449, %4051) : (i64, i64) -> i64
%4054 = "vm.sub.i64"(%4051, %447) : (i64, i64) -> i64
%4055 = "vm.select.i64"(%4052, %4053, %4054) : (i32, i64, i64) -> i64
%4056 = "vm.div.i64.s"(%4055, %428) : (i64, i64) -> i64
%4057 = "vm.sub.i64"(%449, %4056) : (i64, i64) -> i64
%4058 = "vm.add.i64"(%4056, %447) : (i64, i64) -> i64
%4059 = "vm.select.i64"(%4052, %4057, %4058) : (i32, i64, i64) -> i64
%4060 = "vm.const.i32.zero"() : () -> i32
%4061 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4062 = "vm.const.i32"() <{value = 108 : i32}> : () -> i32
%4063 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%4064 = "vm.trunc.i64.i32"(%3733) : (i64) -> i32
%4065 = "vm.trunc.i64.i32"(%4059) : (i64) -> i32
%4066 = "vm.const.i32.zero"() : () -> i32
%4067 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4062, %4063, %4064, %4065, %4061, %3972, %3975, %3980, %3983, %3968, %3971, %3490, %3493, %3682, %3685, %4060, %4066, %3962, %449, %3956, %4060, %4067, %3962, %449, %3956) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4068 = "vm.div.i64.s"(%3501, %428) : (i64, i64) -> i64
%4069 = "vm.sub.i64"(%449, %4068) : (i64, i64) -> i64
%4070 = "vm.add.i64"(%4068, %447) : (i64, i64) -> i64
%4071 = "vm.select.i64"(%3498, %4069, %4070) : (i32, i64, i64) -> i64
%4072 = "vm.const.i32.zero"() : () -> i32
%4073 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4074 = "vm.const.i32"() <{value = 109 : i32}> : () -> i32
%4075 = "vm.trunc.i64.i32"(%4071) : (i64) -> i32
%4076 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%4077 = "vm.trunc.i64.i32"(%3725) : (i64) -> i32
%4078 = "vm.const.i32.zero"() : () -> i32
%4079 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4074, %4075, %4076, %4077, %4073, %3984, %3987, %3678, %3681, %3490, %3493, %4072, %4078, %3664, %449, %3658, %4072, %4079, %3962, %449, %3956) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4080 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4081 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4082 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4080, %4081, %4082) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4083 = "vm.div.i64.s"(%3729, %466) : (i64, i64) -> i64
%4084 = "vm.sub.i64"(%449, %4083) : (i64, i64) -> i64
%4085 = "vm.add.i64"(%4083, %447) : (i64, i64) -> i64
%4086 = "vm.select.i64"(%3726, %4084, %4085) : (i32, i64, i64) -> i64
%4087 = "vm.const.i32.zero"() : () -> i32
%4088 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4089 = "vm.const.i32"() <{value = 110 : i32}> : () -> i32
%4090 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%4091 = "vm.trunc.i64.i32"(%4086) : (i64) -> i32
%4092 = "vm.trunc.i64.i32"(%3912) : (i64) -> i32
%4093 = "vm.const.i32.zero"() : () -> i32
%4094 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4089, %4090, %4091, %4092, %4088, %3980, %3983, %3984, %3987, %3988, %3991, %3968, %3971, %3678, %3681, %3490, %3493, %3992, %3995, %3682, %3685, %4087, %4093, %3962, %449, %3956, %4087, %4094, %3962, %449, %3956) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 16, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4095 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4096 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4097 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4095, %4096, %4097) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4098 = "vm.cmp.lte.i64.s"(%3917, %449) : (i64, i64) -> i32
%4099 = "vm.sub.i64"(%449, %3917) : (i64, i64) -> i64
%4100 = "vm.sub.i64"(%3917, %447) : (i64, i64) -> i64
%4101 = "vm.select.i64"(%4098, %4099, %4100) : (i32, i64, i64) -> i64
%4102 = "vm.div.i64.s"(%4101, %432) : (i64, i64) -> i64
%4103 = "vm.sub.i64"(%449, %4102) : (i64, i64) -> i64
%4104 = "vm.add.i64"(%4102, %447) : (i64, i64) -> i64
%4105 = "vm.select.i64"(%4098, %4103, %4104) : (i32, i64, i64) -> i64
%4106 = "vm.const.i32.zero"() : () -> i32
%4107 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4108 = "vm.const.i32"() <{value = 111 : i32}> : () -> i32
%4109 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%4110 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%4111 = "vm.trunc.i64.i32"(%4105) : (i64) -> i32
%4112 = "vm.const.i32.zero"() : () -> i32
%4113 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4108, %4109, %4110, %4111, %4107, %3988, %3991, %3996, %3999, %3682, %3685, %3992, %3995, %3490, %3493, %4106, %4112, %3962, %449, %3956, %4106, %4113, %3962, %449, %3956) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4114 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4115 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4116 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4114, %4115, %4116) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4117 = "vm.const.i32.zero"() : () -> i32
%4118 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4119 = "vm.const.i32"() <{value = 112 : i32}> : () -> i32
%4120 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%4121 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4122 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4123 = "vm.const.i32.zero"() : () -> i32
%4124 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4119, %4120, %4121, %4122, %4118, %3996, %3999, %398, %4000, %4003, %3490, %3493, %4117, %4123, %3962, %449, %3956, %4117, %4124, %3946, %449, %3940) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 7, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4125 = "vm.const.i32.zero"() : () -> i32
%4126 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4127 = "vm.const.i32"() <{value = 113 : i32}> : () -> i32
%4128 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4129 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4130 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4131 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4007, %473, %4127, %4128, %4129, %4130, %4126, %3141, %3144, %3137, %3140, %3992, %3995, %4125, %4131, %3946, %449, %3940) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4132 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4133 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4134 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4132, %4133, %4134) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4135 = "vm.const.i32.zero"() : () -> i32
%4136 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4135, %4136, %3946, %449, %3939, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4137 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4138 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4139 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4007, %4137, %4138, %4139) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%4007) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%4140 = "vm.const.i32.zero"() : () -> i32
%4141 = "vm.call"(%472, %4140) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %3963, %4141, %4007) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%4142 = "vm.const.i32.zero"() : () -> i32
%4143 = "vm.call"(%472, %4142) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %4141, %4143, %3962) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%4144 = "vm.call.variadic"(%462, %4143) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%4144, %4144) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%4145 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%4146 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%4147 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%4148 = "vm.call"(%3939, %4147, %4145) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%4149 = "vm.ext.i32.i64.u"(%4148) : (i32) -> i64
%4150 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4151 = "vm.shl.i64"(%4149, %4150) : (i64, i32) -> i64
%4152 = "vm.call"(%3939, %449, %4145) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%4153 = "vm.ext.i32.i64.u"(%4152) : (i32) -> i64
%4154 = "vm.or.i64"(%4153, %4151) : (i64, i64) -> i64
%4155 = "vm.cmp.lt.i64.s"(%4154, %438) : (i64, i64) -> i32
%4156 = "vm.select.i64"(%4155, %437, %4154) : (i32, i64, i64) -> i64
%4157 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4158 = "vm.and.i32"(%4155, %4157) : (i32, i32) -> i32
%4159 = "vm.ext.i32.i64.u"(%4158) : (i32) -> i64
%4160 = "vm.add.i64"(%4159, %437) : (i64, i64) -> i64
%4161 = "vm.mul.i64"(%4156, %435) : (i64, i64) -> i64
%4162 = "vm.cmp.lte.i64.u"(%4160, %437) : (i64, i64) -> i32
%4163 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4164 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4165 = "vm.xor.i32"(%4162, %4164) : (i32, i32) -> i32
"vm.cond_fail"(%4165, %4163) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4166 = "vm.mul.i64"(%3930, %3476) : (i64, i64) -> i64
%4167 = "vm.mul.i64"(%4166, %435) : (i64, i64) -> i64
%4168 = "vm.div.i64.s"(%4167, %4161) : (i64, i64) -> i64
%4169 = "vm.select.i64"(%4155, %4168, %4154) : (i32, i64, i64) -> i64
%4170 = "vm.cmp.gte.i64.s"(%4169, %438) : (i64, i64) -> i32
%4171 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4172 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4173 = "vm.xor.i32"(%4170, %4172) : (i32, i32) -> i32
"vm.cond_fail"(%4173, %4171) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4174 = "vm.cmp.lte.i64.s"(%4168, %449) : (i64, i64) -> i32
%4175 = "vm.sub.i64"(%449, %4168) : (i64, i64) -> i64
%4176 = "vm.sub.i64"(%4168, %447) : (i64, i64) -> i64
%4177 = "vm.select.i64"(%4174, %4175, %4176) : (i32, i64, i64) -> i64
%4178 = "vm.div.i64.s"(%4177, %431) : (i64, i64) -> i64
%4179 = "vm.sub.i64"(%449, %4178) : (i64, i64) -> i64
%4180 = "vm.add.i64"(%4178, %447) : (i64, i64) -> i64
%4181 = "vm.select.i64"(%4174, %4179, %4180) : (i32, i64, i64) -> i64
%4182 = "vm.mul.i64"(%4169, %426) : (i64, i64) -> i64
%4183 = "vm.mul.i64"(%4182, %4181) : (i64, i64) -> i64
%4184 = "vm.mul.i64"(%4169, %425) : (i64, i64) -> i64
%4185 = "vm.const.i32.zero"() : () -> i32
%4186 = "vm.call"(%472, %4185) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4187 = "vm.const.i32.zero"() : () -> i32
%4188 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4189 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4190 = "vm.call"(%472, %460, %4143, %4186, %4187, %4188, %4189, %4183) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4191 = "vm.add.i64"(%4183, %4184) : (i64, i64) -> i64
%4192 = "vm.const.i32.zero"() : () -> i32
%4193 = "vm.call"(%472, %4192) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4194 = "vm.const.i32.zero"() : () -> i32
%4195 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4196 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4197 = "vm.call"(%472, %460, %4143, %4193, %4194, %4195, %4196, %4191) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4198 = "vm.call.variadic"(%4186, %4193) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%4199 = "vm.trunc.i64.i32"(%4169) : (i64) -> i32
%4200 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4201 = "vm.shr.i64.u"(%4169, %4200) : (i64, i32) -> i64
%4202 = "vm.trunc.i64.i32"(%4201) : (i64) -> i32
%4203 = "vm.trunc.i64.i32"(%4168) : (i64) -> i32
%4204 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4205 = "vm.shr.i64.u"(%4168, %4204) : (i64, i32) -> i64
%4206 = "vm.trunc.i64.i32"(%4205) : (i64) -> i32
%4207 = "vm.trunc.i64.i32"(%4181) : (i64) -> i32
%4208 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4209 = "vm.shr.i64.u"(%4181, %4208) : (i64, i32) -> i64
%4210 = "vm.trunc.i64.i32"(%4209) : (i64) -> i32
%4211 = "vm.trunc.i64.i32"(%4183) : (i64) -> i32
%4212 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4213 = "vm.shr.i64.u"(%4183, %4212) : (i64, i32) -> i64
%4214 = "vm.trunc.i64.i32"(%4213) : (i64) -> i32
%4215 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4216 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%4217 = "vm.const.i32.zero"() : () -> i32
%4218 = "vm.call"(%472, %4215, %4216, %460, %4217) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%4219 = "vm.cmp.lte.i64.s"(%4169, %449) : (i64, i64) -> i32
%4220 = "vm.sub.i64"(%449, %4169) : (i64, i64) -> i64
%4221 = "vm.sub.i64"(%4169, %447) : (i64, i64) -> i64
%4222 = "vm.select.i64"(%4219, %4220, %4221) : (i32, i64, i64) -> i64
%4223 = "vm.div.i64.s"(%4222, %432) : (i64, i64) -> i64
%4224 = "vm.sub.i64"(%449, %4223) : (i64, i64) -> i64
%4225 = "vm.add.i64"(%4223, %447) : (i64, i64) -> i64
%4226 = "vm.select.i64"(%4219, %4224, %4225) : (i32, i64, i64) -> i64
%4227 = "vm.cmp.lte.i64.s"(%4181, %449) : (i64, i64) -> i32
%4228 = "vm.sub.i64"(%449, %4181) : (i64, i64) -> i64
%4229 = "vm.sub.i64"(%4181, %447) : (i64, i64) -> i64
%4230 = "vm.select.i64"(%4227, %4228, %4229) : (i32, i64, i64) -> i64
%4231 = "vm.div.i64.s"(%4230, %431) : (i64, i64) -> i64
%4232 = "vm.sub.i64"(%449, %4231) : (i64, i64) -> i64
%4233 = "vm.add.i64"(%4231, %447) : (i64, i64) -> i64
%4234 = "vm.select.i64"(%4227, %4232, %4233) : (i32, i64, i64) -> i64
%4235 = "vm.const.i32.zero"() : () -> i32
%4236 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4237 = "vm.const.i32"() <{value = 114 : i32}> : () -> i32
%4238 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4239 = "vm.trunc.i64.i32"(%4234) : (i64) -> i32
%4240 = "vm.trunc.i64.i32"(%4226) : (i64) -> i32
%4241 = "vm.const.i32.zero"() : () -> i32
%4242 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4218, %473, %4237, %4238, %4239, %4240, %4236, %398, %4199, %4202, %4203, %4206, %4207, %4210, %4235, %4241, %3946, %449, %3940, %4235, %4242, %4197, %449, %4191) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 7, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4243 = "vm.const.i32.zero"() : () -> i32
%4244 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4245 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%4246 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4247 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4248 = "vm.trunc.i64.i32"(%4226) : (i64) -> i32
%4249 = "vm.const.i32.zero"() : () -> i32
%4250 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4218, %473, %4245, %4246, %4247, %4248, %4244, %393, %4211, %4214, %4199, %4202, %4243, %4249, %471, %449, %459, %4243, %4250, %4197, %449, %4191) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4251 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4252 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4253 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4218, %4251, %4252, %4253) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4254 = "vm.div.i64.s"(%4230, %464) : (i64, i64) -> i64
%4255 = "vm.sub.i64"(%449, %4254) : (i64, i64) -> i64
%4256 = "vm.add.i64"(%4254, %447) : (i64, i64) -> i64
%4257 = "vm.select.i64"(%4227, %4255, %4256) : (i32, i64, i64) -> i64
%4258 = "vm.const.i32.zero"() : () -> i32
%4259 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4260 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%4261 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%4262 = "vm.trunc.i64.i32"(%4257) : (i64) -> i32
%4263 = "vm.trunc.i64.i32"(%4169) : (i64) -> i32
%4264 = "vm.const.i32.zero"() : () -> i32
%4265 = "vm.const.i32.zero"() : () -> i32
%4266 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4218, %473, %4260, %4261, %4262, %4263, %4259, %407, %4211, %4214, %407, %407, %4199, %4202, %4207, %4210, %4258, %4264, %4197, %449, %4191, %4258, %4265, %4197, %449, %4191, %4258, %4266, %4190, %449, %4183) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4267 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4268 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4269 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4218, %4267, %4268, %4269) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%4218) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%4270 = "vm.const.i32.zero"() : () -> i32
%4271 = "vm.call"(%472, %4270) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %4198, %4271, %4218) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%4272 = "vm.const.i32.zero"() : () -> i32
%4273 = "vm.call"(%472, %4272) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %4271, %4273, %4197) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%4274 = "vm.cmp.eq.i64"(%3016, %4169) : (i64, i64) -> i32
%4275 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4276 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4277 = "vm.xor.i32"(%4274, %4276) : (i32, i32) -> i32
"vm.cond_fail"(%4277, %4275) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4278 = "vm.cmp.eq.i64"(%3017, %4168) : (i64, i64) -> i32
%4279 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4280 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4281 = "vm.xor.i32"(%4278, %4280) : (i32, i32) -> i32
"vm.cond_fail"(%4281, %4279) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4282 = "vm.const.i32.zero"() : () -> i32
%4283 = "vm.call"(%472, %4282) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4284 = "vm.const.i32.zero"() : () -> i32
%4285 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4286 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4287 = "vm.call"(%472, %460, %4273, %4283, %4284, %4285, %4286, %3108) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4288 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4289 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%4290 = "vm.const.i32.zero"() : () -> i32
%4291 = "vm.call"(%472, %4288, %4289, %460, %4290) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%4292 = "vm.const.i32.zero"() : () -> i32
%4293 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4294 = "vm.const.i32"() <{value = 115 : i32}> : () -> i32
%4295 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4296 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%4297 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%4298 = "vm.const.i32.zero"() : () -> i32
%4299 = "vm.const.i32.zero"() : () -> i32
%4300 = "vm.const.i32.zero"() : () -> i32
%4301 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4291, %473, %4294, %4295, %4296, %4297, %4293, %3141, %3144, %3137, %3140, %3992, %3995, %4199, %4202, %4207, %4210, %3040, %3043, %3044, %3047, %4292, %4298, %3946, %449, %3940, %4292, %4299, %4190, %449, %4183, %4292, %4300, %3027, %449, %3021, %4292, %4301, %4287, %449, %3108) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 14, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4302 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4303 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4304 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4291, %4302, %4303, %4304) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%4291) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%4305 = "vm.const.i32.zero"() : () -> i32
%4306 = "vm.call"(%472, %4305) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %4283, %4306, %4291) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%4307 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4308 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4309 = "vm.xor.i32"(%3358, %4308) : (i32, i32) -> i32
"vm.cond_fail"(%4309, %4307) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4310 = "vm.const.i32.zero"() : () -> i32
%4311 = "vm.call"(%472, %4310) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4312 = "vm.const.i32.zero"() : () -> i32
%4313 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4314 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4315 = "vm.call"(%472, %460, %4306, %4311, %4312, %4313, %4314, %3108) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4316 = "vm.add.i64"(%3367, %3367) : (i64, i64) -> i64
%4317 = "vm.add.i64"(%4316, %3368) : (i64, i64) -> i64
%4318 = "vm.const.i32.zero"() : () -> i32
%4319 = "vm.call"(%472, %4318) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4320 = "vm.const.i32.zero"() : () -> i32
%4321 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4322 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4323 = "vm.call"(%472, %460, %4306, %4319, %4320, %4321, %4322, %4317) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4324 = "vm.call.variadic"(%4311, %4319) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%4325 = "vm.trunc.i64.i32"(%4316) : (i64) -> i32
%4326 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%4327 = "vm.shr.i64.u"(%4316, %4326) : (i64, i32) -> i64
%4328 = "vm.trunc.i64.i32"(%4327) : (i64) -> i32
%4329 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4330 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%4331 = "vm.const.i32.zero"() : () -> i32
%4332 = "vm.call"(%472, %4329, %4330, %460, %4331) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%4333 = "vm.const.i32.zero"() : () -> i32
%4334 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4335 = "vm.const.i32"() <{value = 84 : i32}> : () -> i32
%4336 = "vm.trunc.i64.i32"(%3411) : (i64) -> i32
%4337 = "vm.trunc.i64.i32"(%3403) : (i64) -> i32
%4338 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4339 = "vm.const.i32.zero"() : () -> i32
%4340 = "vm.const.i32.zero"() : () -> i32
%4341 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4332, %473, %4335, %4336, %4337, %4338, %4334, %392, %407, %3141, %3144, %3137, %3140, %3044, %3047, %3040, %3043, %3384, %3387, %4333, %4339, %4287, %449, %3108, %4333, %4340, %471, %449, %459, %4333, %4341, %4323, %449, %4317) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4342 = "vm.const.i32.zero"() : () -> i32
%4343 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4344 = "vm.const.i32"() <{value = 21 : i32}> : () -> i32
%4345 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4346 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4347 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%4348 = "vm.const.i32.zero"() : () -> i32
%4349 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4332, %473, %4344, %4345, %4346, %4347, %4343, %391, %4325, %4328, %3040, %3043, %4342, %4348, %471, %449, %459, %4342, %4349, %4323, %449, %4317) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 5, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4350 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4351 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4352 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4332, %4350, %4351, %4352) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4353 = "vm.const.i32.zero"() : () -> i32
%4354 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4355 = "vm.const.i32"() <{value = 22 : i32}> : () -> i32
%4356 = "vm.const.i32"() <{value = 24 : i32}> : () -> i32
%4357 = "vm.trunc.i64.i32"(%3435) : (i64) -> i32
%4358 = "vm.trunc.i64.i32"(%3016) : (i64) -> i32
%4359 = "vm.const.i32.zero"() : () -> i32
%4360 = "vm.const.i32.zero"() : () -> i32
%4361 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4332, %473, %4355, %4356, %4357, %4358, %4354, %407, %4325, %4328, %3392, %3395, %3040, %3043, %3384, %3387, %4353, %4359, %4323, %449, %4317, %4353, %4360, %4323, %449, %4317, %4353, %4361, %4323, %449, %4317) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 9, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4362 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4363 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4364 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4332, %4362, %4363, %4364) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%4365 = "vm.const.i32.zero"() : () -> i32
%4366 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4367 = "vm.const.i32"() <{value = 23 : i32}> : () -> i32
%4368 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4369 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%4370 = "vm.trunc.i64.i32"(%3063) : (i64) -> i32
%4371 = "vm.const.i32.zero"() : () -> i32
%4372 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4332, %473, %4367, %4368, %4369, %4370, %4366, %3392, %3395, %407, %407, %3384, %3387, %3040, %3043, %3044, %3047, %4365, %4371, %4323, %449, %4317, %4365, %4372, %4315, %449, %3108) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4373 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4374 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4375 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4332, %4373, %4374, %4375) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%4332) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%4376 = "vm.const.i32.zero"() : () -> i32
%4377 = "vm.call"(%472, %4376) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %4324, %4377, %4332) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%4378 = "vm.const.i32.zero"() : () -> i32
%4379 = "vm.call"(%472, %4378) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %4377, %4379, %4323) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%4380 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4381 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4382 = "vm.xor.i32"(%3470, %4381) : (i32, i32) -> i32
"vm.cond_fail"(%4382, %4380) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4383 = "vm.const.i32.zero"() : () -> i32
%4384 = "vm.call"(%472, %4383) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4385 = "vm.const.i32.zero"() : () -> i32
%4386 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4387 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4388 = "vm.call"(%472, %460, %4379, %4384, %4385, %4386, %4387, %3479) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4389 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4390 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%4391 = "vm.const.i32.zero"() : () -> i32
%4392 = "vm.call"(%472, %4389, %4390, %460, %4391) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%4393 = "vm.const.i32.zero"() : () -> i32
%4394 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4395 = "vm.const.i32"() <{value = 99 : i32}> : () -> i32
%4396 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4397 = "vm.trunc.i64.i32"(%3505) : (i64) -> i32
%4398 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4399 = "vm.const.i32.zero"() : () -> i32
%4400 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4392, %473, %4395, %4396, %4397, %4398, %4394, %407, %407, %3486, %3489, %3490, %3493, %4393, %4399, %4315, %449, %3108, %4393, %4400, %4388, %449, %3479) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4401 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4402 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4403 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4392, %4401, %4402, %4403) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%4392) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%4404 = "vm.const.i32.zero"() : () -> i32
%4405 = "vm.call"(%472, %4404) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %4384, %4405, %4392) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%4406 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4407 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4408 = "vm.xor.i32"(%1354, %4407) : (i32, i32) -> i32
"vm.cond_fail"(%4408, %4406) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4409 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4410 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4411 = "vm.xor.i32"(%1354, %4410) : (i32, i32) -> i32
"vm.cond_fail"(%4411, %4409) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4412 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4413 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4414 = "vm.xor.i32"(%3780, %4413) : (i32, i32) -> i32
"vm.cond_fail"(%4414, %4412) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4415 = "vm.cmp.gte.i64.s"(%520, %438) : (i64, i64) -> i32
%4416 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4417 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4418 = "vm.xor.i32"(%4415, %4417) : (i32, i32) -> i32
"vm.cond_fail"(%4418, %4416) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4419 = "vm.cmp.eq.i64"(%520, %492) : (i64, i64) -> i32
%4420 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4421 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4422 = "vm.xor.i32"(%4419, %4421) : (i32, i32) -> i32
"vm.cond_fail"(%4422, %4420) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4423 = "vm.mul.i64"(%2098, %3017) : (i64, i64) -> i64
%4424 = "vm.mul.i64"(%4423, %520) : (i64, i64) -> i64
%4425 = "vm.const.i32.zero"() : () -> i32
%4426 = "vm.call"(%472, %4425) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%4427 = "vm.const.i32.zero"() : () -> i32
%4428 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%4429 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%4430 = "vm.call"(%472, %460, %461, %4426, %4427, %4428, %4429, %4424) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%4431 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4432 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%4433 = "vm.const.i32.zero"() : () -> i32
%4434 = "vm.call"(%472, %4431, %4432, %460, %4433) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%4435 = "vm.const.i32.zero"() : () -> i32
%4436 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%4437 = "vm.const.i32"() <{value = 118 : i32}> : () -> i32
%4438 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%4439 = "vm.trunc.i64.i32"(%3071) : (i64) -> i32
%4440 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%4441 = "vm.const.i32.zero"() : () -> i32
%4442 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%4434, %473, %4437, %4438, %4439, %4440, %4436, %654, %657, %658, %661, %3044, %3047, %547, %550, %4435, %4441, %496, %449, %495, %4435, %4442, %4430, %449, %4424) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%4443 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%4444 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%4445 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%4434, %4443, %4444, %4445) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%4434) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%4446 = "vm.const.i32.zero"() : () -> i32
%4447 = "vm.call"(%472, %4446) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %4426, %4447, %4434) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%4448 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4449 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4450 = "vm.xor.i32"(%3904, %4449) : (i32, i32) -> i32
"vm.cond_fail"(%4450, %4448) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4451 = "vm.mul.i64"(%490, %443) : (i64, i64) -> i64
%4452 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4453 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4454 = "vm.xor.i32"(%3358, %4453) : (i32, i32) -> i32
"vm.cond_fail"(%4454, %4452) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4455 = "vm.mul.i64"(%3016, %414) : (i64, i64) -> i64
%4456 = "vm.mul.i64"(%3016, %413) : (i64, i64) -> i64
%4457 = "vm.mul.i64"(%4456, %3365) : (i64, i64) -> i64
%4458 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4459 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4460 = "vm.xor.i32"(%3358, %4459) : (i32, i32) -> i32
"vm.cond_fail"(%4460, %4458) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4461 = "vm.mul.i64"(%3016, %412) : (i64, i64) -> i64
%4462 = "vm.mul.i64"(%4461, %3017) : (i64, i64) -> i64
%4463 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4464 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4465 = "vm.xor.i32"(%3358, %4464) : (i32, i32) -> i32
"vm.cond_fail"(%4465, %4463) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4466 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4467 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4468 = "vm.xor.i32"(%3358, %4467) : (i32, i32) -> i32
"vm.cond_fail"(%4468, %4466) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4469 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4470 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4471 = "vm.xor.i32"(%3470, %4470) : (i32, i32) -> i32
"vm.cond_fail"(%4471, %4469) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4472 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4473 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4474 = "vm.xor.i32"(%3358, %4473) : (i32, i32) -> i32
"vm.cond_fail"(%4474, %4472) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4475 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4476 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4477 = "vm.xor.i32"(%3470, %4476) : (i32, i32) -> i32
"vm.cond_fail"(%4477, %4475) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4478 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4479 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4480 = "vm.xor.i32"(%3358, %4479) : (i32, i32) -> i32
"vm.cond_fail"(%4480, %4478) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4481 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4482 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4483 = "vm.xor.i32"(%3470, %4482) : (i32, i32) -> i32
"vm.cond_fail"(%4483, %4481) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4484 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4485 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4486 = "vm.xor.i32"(%3900, %4485) : (i32, i32) -> i32
"vm.cond_fail"(%4486, %4484) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4487 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4488 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4489 = "vm.xor.i32"(%3904, %4488) : (i32, i32) -> i32
"vm.cond_fail"(%4489, %4487) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4490 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4491 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4492 = "vm.xor.i32"(%3904, %4491) : (i32, i32) -> i32
"vm.cond_fail"(%4492, %4490) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4493 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4494 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4495 = "vm.xor.i32"(%4162, %4494) : (i32, i32) -> i32
"vm.cond_fail"(%4495, %4493) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4496 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4497 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4498 = "vm.xor.i32"(%4170, %4497) : (i32, i32) -> i32
"vm.cond_fail"(%4498, %4496) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4499 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4500 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4501 = "vm.xor.i32"(%4274, %4500) : (i32, i32) -> i32
"vm.cond_fail"(%4501, %4499) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4502 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4503 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4504 = "vm.xor.i32"(%4278, %4503) : (i32, i32) -> i32
"vm.cond_fail"(%4504, %4502) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4505 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4506 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4507 = "vm.xor.i32"(%3358, %4506) : (i32, i32) -> i32
"vm.cond_fail"(%4507, %4505) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4508 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4509 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4510 = "vm.xor.i32"(%3470, %4509) : (i32, i32) -> i32
"vm.cond_fail"(%4510, %4508) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4511 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4512 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4513 = "vm.xor.i32"(%1354, %4512) : (i32, i32) -> i32
"vm.cond_fail"(%4513, %4511) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4514 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4515 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4516 = "vm.xor.i32"(%1354, %4515) : (i32, i32) -> i32
"vm.cond_fail"(%4516, %4514) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4517 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4518 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4519 = "vm.xor.i32"(%3904, %4518) : (i32, i32) -> i32
"vm.cond_fail"(%4519, %4517) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4520 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4521 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4522 = "vm.xor.i32"(%3358, %4521) : (i32, i32) -> i32
"vm.cond_fail"(%4522, %4520) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4523 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4524 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4525 = "vm.xor.i32"(%3358, %4524) : (i32, i32) -> i32
"vm.cond_fail"(%4525, %4523) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4526 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4527 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4528 = "vm.xor.i32"(%3358, %4527) : (i32, i32) -> i32
"vm.cond_fail"(%4528, %4526) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4529 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4530 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4531 = "vm.xor.i32"(%3358, %4530) : (i32, i32) -> i32
"vm.cond_fail"(%4531, %4529) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4532 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4533 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4534 = "vm.xor.i32"(%3470, %4533) : (i32, i32) -> i32
"vm.cond_fail"(%4534, %4532) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4535 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4536 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4537 = "vm.xor.i32"(%3358, %4536) : (i32, i32) -> i32
"vm.cond_fail"(%4537, %4535) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4538 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4539 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4540 = "vm.xor.i32"(%3470, %4539) : (i32, i32) -> i32
"vm.cond_fail"(%4540, %4538) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4541 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4542 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4543 = "vm.xor.i32"(%3358, %4542) : (i32, i32) -> i32
"vm.cond_fail"(%4543, %4541) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4544 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4545 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4546 = "vm.xor.i32"(%3470, %4545) : (i32, i32) -> i32
"vm.cond_fail"(%4546, %4544) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4547 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4548 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4549 = "vm.xor.i32"(%3900, %4548) : (i32, i32) -> i32
"vm.cond_fail"(%4549, %4547) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4550 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4551 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4552 = "vm.xor.i32"(%3904, %4551) : (i32, i32) -> i32
"vm.cond_fail"(%4552, %4550) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4553 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4554 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4555 = "vm.xor.i32"(%3904, %4554) : (i32, i32) -> i32
"vm.cond_fail"(%4555, %4553) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4556 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4557 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4558 = "vm.xor.i32"(%4162, %4557) : (i32, i32) -> i32
"vm.cond_fail"(%4558, %4556) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4559 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4560 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4561 = "vm.xor.i32"(%4170, %4560) : (i32, i32) -> i32
"vm.cond_fail"(%4561, %4559) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4562 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4563 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4564 = "vm.xor.i32"(%4274, %4563) : (i32, i32) -> i32
"vm.cond_fail"(%4564, %4562) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4565 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4566 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4567 = "vm.xor.i32"(%4278, %4566) : (i32, i32) -> i32
"vm.cond_fail"(%4567, %4565) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4568 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4569 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4570 = "vm.xor.i32"(%3358, %4569) : (i32, i32) -> i32
"vm.cond_fail"(%4570, %4568) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4571 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4572 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4573 = "vm.xor.i32"(%3470, %4572) : (i32, i32) -> i32
"vm.cond_fail"(%4573, %4571) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4574 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4575 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4576 = "vm.xor.i32"(%1354, %4575) : (i32, i32) -> i32
"vm.cond_fail"(%4576, %4574) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4577 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4578 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4579 = "vm.xor.i32"(%1354, %4578) : (i32, i32) -> i32
"vm.cond_fail"(%4579, %4577) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4580 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4581 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4582 = "vm.xor.i32"(%3904, %4581) : (i32, i32) -> i32
"vm.cond_fail"(%4582, %4580) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4583 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4584 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4585 = "vm.xor.i32"(%3358, %4584) : (i32, i32) -> i32
"vm.cond_fail"(%4585, %4583) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4586 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4587 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4588 = "vm.xor.i32"(%3358, %4587) : (i32, i32) -> i32
"vm.cond_fail"(%4588, %4586) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4589 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4590 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4591 = "vm.xor.i32"(%3358, %4590) : (i32, i32) -> i32
"vm.cond_fail"(%4591, %4589) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4592 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4593 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4594 = "vm.xor.i32"(%3358, %4593) : (i32, i32) -> i32
"vm.cond_fail"(%4594, %4592) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4595 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4596 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4597 = "vm.xor.i32"(%3470, %4596) : (i32, i32) -> i32
"vm.cond_fail"(%4597, %4595) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4598 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4599 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4600 = "vm.xor.i32"(%3358, %4599) : (i32, i32) -> i32
"vm.cond_fail"(%4600, %4598) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4601 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4602 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4603 = "vm.xor.i32"(%3470, %4602) : (i32, i32) -> i32
"vm.cond_fail"(%4603, %4601) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4604 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4605 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4606 = "vm.xor.i32"(%3358, %4605) : (i32, i32) -> i32
"vm.cond_fail"(%4606, %4604) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4607 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4608 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4609 = "vm.xor.i32"(%3470, %4608) : (i32, i32) -> i32
"vm.cond_fail"(%4609, %4607) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4610 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4611 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4612 = "vm.xor.i32"(%3900, %4611) : (i32, i32) -> i32
"vm.cond_fail"(%4612, %4610) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4613 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4614 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4615 = "vm.xor.i32"(%3904, %4614) : (i32, i32) -> i32
"vm.cond_fail"(%4615, %4613) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4616 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4617 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4618 = "vm.xor.i32"(%3904, %4617) : (i32, i32) -> i32
"vm.cond_fail"(%4618, %4616) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4619 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4620 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4621 = "vm.xor.i32"(%4162, %4620) : (i32, i32) -> i32
"vm.cond_fail"(%4621, %4619) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4622 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4623 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4624 = "vm.xor.i32"(%4170, %4623) : (i32, i32) -> i32
"vm.cond_fail"(%4624, %4622) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4625 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4626 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4627 = "vm.xor.i32"(%4274, %4626) : (i32, i32) -> i32
"vm.cond_fail"(%4627, %4625) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4628 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4629 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4630 = "vm.xor.i32"(%4278, %4629) : (i32, i32) -> i32
"vm.cond_fail"(%4630, %4628) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4631 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4632 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4633 = "vm.xor.i32"(%3358, %4632) : (i32, i32) -> i32
"vm.cond_fail"(%4633, %4631) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4634 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4635 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4636 = "vm.xor.i32"(%3470, %4635) : (i32, i32) -> i32
"vm.cond_fail"(%4636, %4634) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4637 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4638 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4639 = "vm.xor.i32"(%1354, %4638) : (i32, i32) -> i32
"vm.cond_fail"(%4639, %4637) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4640 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4641 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4642 = "vm.xor.i32"(%1354, %4641) : (i32, i32) -> i32
"vm.cond_fail"(%4642, %4640) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4643 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4644 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4645 = "vm.xor.i32"(%3904, %4644) : (i32, i32) -> i32
"vm.cond_fail"(%4645, %4643) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4646 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4647 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4648 = "vm.xor.i32"(%3358, %4647) : (i32, i32) -> i32
"vm.cond_fail"(%4648, %4646) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4649 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4650 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4651 = "vm.xor.i32"(%3358, %4650) : (i32, i32) -> i32
"vm.cond_fail"(%4651, %4649) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4652 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4653 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4654 = "vm.xor.i32"(%3358, %4653) : (i32, i32) -> i32
"vm.cond_fail"(%4654, %4652) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4655 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4656 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4657 = "vm.xor.i32"(%3358, %4656) : (i32, i32) -> i32
"vm.cond_fail"(%4657, %4655) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4658 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4659 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4660 = "vm.xor.i32"(%3470, %4659) : (i32, i32) -> i32
"vm.cond_fail"(%4660, %4658) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4661 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4662 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4663 = "vm.xor.i32"(%3358, %4662) : (i32, i32) -> i32
"vm.cond_fail"(%4663, %4661) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4664 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4665 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4666 = "vm.xor.i32"(%3470, %4665) : (i32, i32) -> i32
"vm.cond_fail"(%4666, %4664) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4667 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4668 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4669 = "vm.xor.i32"(%3358, %4668) : (i32, i32) -> i32
"vm.cond_fail"(%4669, %4667) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4670 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4671 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4672 = "vm.xor.i32"(%3470, %4671) : (i32, i32) -> i32
"vm.cond_fail"(%4672, %4670) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4673 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4674 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4675 = "vm.xor.i32"(%3900, %4674) : (i32, i32) -> i32
"vm.cond_fail"(%4675, %4673) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4676 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4677 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4678 = "vm.xor.i32"(%3904, %4677) : (i32, i32) -> i32
"vm.cond_fail"(%4678, %4676) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4679 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4680 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4681 = "vm.xor.i32"(%3904, %4680) : (i32, i32) -> i32
"vm.cond_fail"(%4681, %4679) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4682 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4683 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4684 = "vm.xor.i32"(%4162, %4683) : (i32, i32) -> i32
"vm.cond_fail"(%4684, %4682) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4685 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4686 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4687 = "vm.xor.i32"(%4170, %4686) : (i32, i32) -> i32
"vm.cond_fail"(%4687, %4685) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4688 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4689 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4690 = "vm.xor.i32"(%4274, %4689) : (i32, i32) -> i32
"vm.cond_fail"(%4690, %4688) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4691 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4692 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4693 = "vm.xor.i32"(%4278, %4692) : (i32, i32) -> i32
"vm.cond_fail"(%4693, %4691) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4694 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4695 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4696 = "vm.xor.i32"(%3358, %4695) : (i32, i32) -> i32
"vm.cond_fail"(%4696, %4694) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4697 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4698 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4699 = "vm.xor.i32"(%3470, %4698) : (i32, i32) -> i32
"vm.cond_fail"(%4699, %4697) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4700 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4701 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4702 = "vm.xor.i32"(%1354, %4701) : (i32, i32) -> i32
"vm.cond_fail"(%4702, %4700) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4703 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4704 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4705 = "vm.xor.i32"(%1354, %4704) : (i32, i32) -> i32
"vm.cond_fail"(%4705, %4703) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4706 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4707 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4708 = "vm.xor.i32"(%3904, %4707) : (i32, i32) -> i32
"vm.cond_fail"(%4708, %4706) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4709 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4710 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4711 = "vm.xor.i32"(%3358, %4710) : (i32, i32) -> i32
"vm.cond_fail"(%4711, %4709) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4712 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4713 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4714 = "vm.xor.i32"(%3358, %4713) : (i32, i32) -> i32
"vm.cond_fail"(%4714, %4712) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4715 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4716 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4717 = "vm.xor.i32"(%3358, %4716) : (i32, i32) -> i32
"vm.cond_fail"(%4717, %4715) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4718 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4719 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4720 = "vm.xor.i32"(%3358, %4719) : (i32, i32) -> i32
"vm.cond_fail"(%4720, %4718) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4721 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4722 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4723 = "vm.xor.i32"(%3470, %4722) : (i32, i32) -> i32
"vm.cond_fail"(%4723, %4721) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4724 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4725 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4726 = "vm.xor.i32"(%3358, %4725) : (i32, i32) -> i32
"vm.cond_fail"(%4726, %4724) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4727 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4728 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4729 = "vm.xor.i32"(%3470, %4728) : (i32, i32) -> i32
"vm.cond_fail"(%4729, %4727) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4730 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4731 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4732 = "vm.xor.i32"(%3358, %4731) : (i32, i32) -> i32
"vm.cond_fail"(%4732, %4730) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4733 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4734 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4735 = "vm.xor.i32"(%3470, %4734) : (i32, i32) -> i32
"vm.cond_fail"(%4735, %4733) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4736 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4737 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4738 = "vm.xor.i32"(%3900, %4737) : (i32, i32) -> i32
"vm.cond_fail"(%4738, %4736) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4739 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4740 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4741 = "vm.xor.i32"(%3904, %4740) : (i32, i32) -> i32
"vm.cond_fail"(%4741, %4739) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4742 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4743 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4744 = "vm.xor.i32"(%3904, %4743) : (i32, i32) -> i32
"vm.cond_fail"(%4744, %4742) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4745 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4746 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4747 = "vm.xor.i32"(%4162, %4746) : (i32, i32) -> i32
"vm.cond_fail"(%4747, %4745) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4748 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4749 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4750 = "vm.xor.i32"(%4170, %4749) : (i32, i32) -> i32
"vm.cond_fail"(%4750, %4748) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4751 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4752 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4753 = "vm.xor.i32"(%4274, %4752) : (i32, i32) -> i32
"vm.cond_fail"(%4753, %4751) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4754 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4755 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4756 = "vm.xor.i32"(%4278, %4755) : (i32, i32) -> i32
"vm.cond_fail"(%4756, %4754) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4757 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4758 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4759 = "vm.xor.i32"(%3358, %4758) : (i32, i32) -> i32
"vm.cond_fail"(%4759, %4757) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4760 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4761 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4762 = "vm.xor.i32"(%3470, %4761) : (i32, i32) -> i32
"vm.cond_fail"(%4762, %4760) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4763 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4764 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4765 = "vm.xor.i32"(%1354, %4764) : (i32, i32) -> i32
"vm.cond_fail"(%4765, %4763) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4766 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4767 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4768 = "vm.xor.i32"(%1354, %4767) : (i32, i32) -> i32
"vm.cond_fail"(%4768, %4766) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4769 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4770 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4771 = "vm.xor.i32"(%3904, %4770) : (i32, i32) -> i32
"vm.cond_fail"(%4771, %4769) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4772 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4773 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4774 = "vm.xor.i32"(%3358, %4773) : (i32, i32) -> i32
"vm.cond_fail"(%4774, %4772) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4775 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4776 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4777 = "vm.xor.i32"(%3358, %4776) : (i32, i32) -> i32
"vm.cond_fail"(%4777, %4775) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4778 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4779 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4780 = "vm.xor.i32"(%3358, %4779) : (i32, i32) -> i32
"vm.cond_fail"(%4780, %4778) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4781 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4782 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4783 = "vm.xor.i32"(%3358, %4782) : (i32, i32) -> i32
"vm.cond_fail"(%4783, %4781) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4784 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4785 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4786 = "vm.xor.i32"(%3470, %4785) : (i32, i32) -> i32
"vm.cond_fail"(%4786, %4784) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4787 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4788 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4789 = "vm.xor.i32"(%3358, %4788) : (i32, i32) -> i32
"vm.cond_fail"(%4789, %4787) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4790 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4791 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4792 = "vm.xor.i32"(%3470, %4791) : (i32, i32) -> i32
"vm.cond_fail"(%4792, %4790) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4793 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4794 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4795 = "vm.xor.i32"(%3358, %4794) : (i32, i32) -> i32
"vm.cond_fail"(%4795, %4793) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4796 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4797 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4798 = "vm.xor.i32"(%3470, %4797) : (i32, i32) -> i32
"vm.cond_fail"(%4798, %4796) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4799 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4800 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4801 = "vm.xor.i32"(%3900, %4800) : (i32, i32) -> i32
"vm.cond_fail"(%4801, %4799) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4802 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4803 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4804 = "vm.xor.i32"(%3904, %4803) : (i32, i32) -> i32
"vm.cond_fail"(%4804, %4802) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4805 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4806 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4807 = "vm.xor.i32"(%3904, %4806) : (i32, i32) -> i32
"vm.cond_fail"(%4807, %4805) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4808 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4809 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4810 = "vm.xor.i32"(%4162, %4809) : (i32, i32) -> i32
"vm.cond_fail"(%4810, %4808) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4811 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4812 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4813 = "vm.xor.i32"(%4170, %4812) : (i32, i32) -> i32
"vm.cond_fail"(%4813, %4811) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4814 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4815 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4816 = "vm.xor.i32"(%4274, %4815) : (i32, i32) -> i32
"vm.cond_fail"(%4816, %4814) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4817 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4818 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4819 = "vm.xor.i32"(%4278, %4818) : (i32, i32) -> i32
"vm.cond_fail"(%4819, %4817) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4820 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4821 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4822 = "vm.xor.i32"(%3358, %4821) : (i32, i32) -> i32
"vm.cond_fail"(%4822, %4820) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4823 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4824 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4825 = "vm.xor.i32"(%3470, %4824) : (i32, i32) -> i32
"vm.cond_fail"(%4825, %4823) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4826 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4827 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4828 = "vm.xor.i32"(%1354, %4827) : (i32, i32) -> i32
"vm.cond_fail"(%4828, %4826) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4829 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4830 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4831 = "vm.xor.i32"(%1354, %4830) : (i32, i32) -> i32
"vm.cond_fail"(%4831, %4829) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4832 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4833 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4834 = "vm.xor.i32"(%3904, %4833) : (i32, i32) -> i32
"vm.cond_fail"(%4834, %4832) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4835 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4836 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4837 = "vm.xor.i32"(%3358, %4836) : (i32, i32) -> i32
"vm.cond_fail"(%4837, %4835) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4838 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4839 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4840 = "vm.xor.i32"(%3358, %4839) : (i32, i32) -> i32
"vm.cond_fail"(%4840, %4838) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4841 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4842 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4843 = "vm.xor.i32"(%3358, %4842) : (i32, i32) -> i32
"vm.cond_fail"(%4843, %4841) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4844 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4845 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4846 = "vm.xor.i32"(%3358, %4845) : (i32, i32) -> i32
"vm.cond_fail"(%4846, %4844) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4847 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4848 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4849 = "vm.xor.i32"(%3470, %4848) : (i32, i32) -> i32
"vm.cond_fail"(%4849, %4847) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4850 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4851 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4852 = "vm.xor.i32"(%3358, %4851) : (i32, i32) -> i32
"vm.cond_fail"(%4852, %4850) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4853 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4854 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4855 = "vm.xor.i32"(%3470, %4854) : (i32, i32) -> i32
"vm.cond_fail"(%4855, %4853) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4856 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4857 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4858 = "vm.xor.i32"(%3358, %4857) : (i32, i32) -> i32
"vm.cond_fail"(%4858, %4856) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4859 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4860 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4861 = "vm.xor.i32"(%3470, %4860) : (i32, i32) -> i32
"vm.cond_fail"(%4861, %4859) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4862 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4863 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4864 = "vm.xor.i32"(%3900, %4863) : (i32, i32) -> i32
"vm.cond_fail"(%4864, %4862) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4865 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4866 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4867 = "vm.xor.i32"(%3904, %4866) : (i32, i32) -> i32
"vm.cond_fail"(%4867, %4865) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4868 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4869 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4870 = "vm.xor.i32"(%3904, %4869) : (i32, i32) -> i32
"vm.cond_fail"(%4870, %4868) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4871 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4872 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4873 = "vm.xor.i32"(%4162, %4872) : (i32, i32) -> i32
"vm.cond_fail"(%4873, %4871) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4874 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4875 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4876 = "vm.xor.i32"(%4170, %4875) : (i32, i32) -> i32
"vm.cond_fail"(%4876, %4874) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4877 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4878 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4879 = "vm.xor.i32"(%4274, %4878) : (i32, i32) -> i32
"vm.cond_fail"(%4879, %4877) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4880 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4881 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4882 = "vm.xor.i32"(%4278, %4881) : (i32, i32) -> i32
"vm.cond_fail"(%4882, %4880) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4883 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4884 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4885 = "vm.xor.i32"(%3358, %4884) : (i32, i32) -> i32
"vm.cond_fail"(%4885, %4883) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4886 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4887 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4888 = "vm.xor.i32"(%3470, %4887) : (i32, i32) -> i32
"vm.cond_fail"(%4888, %4886) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4889 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4890 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4891 = "vm.xor.i32"(%1354, %4890) : (i32, i32) -> i32
"vm.cond_fail"(%4891, %4889) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4892 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4893 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4894 = "vm.xor.i32"(%1354, %4893) : (i32, i32) -> i32
"vm.cond_fail"(%4894, %4892) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4895 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4896 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4897 = "vm.xor.i32"(%3904, %4896) : (i32, i32) -> i32
"vm.cond_fail"(%4897, %4895) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4898 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4899 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4900 = "vm.xor.i32"(%3358, %4899) : (i32, i32) -> i32
"vm.cond_fail"(%4900, %4898) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4901 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4902 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4903 = "vm.xor.i32"(%3358, %4902) : (i32, i32) -> i32
"vm.cond_fail"(%4903, %4901) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4904 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4905 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4906 = "vm.xor.i32"(%3358, %4905) : (i32, i32) -> i32
"vm.cond_fail"(%4906, %4904) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4907 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4908 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4909 = "vm.xor.i32"(%3358, %4908) : (i32, i32) -> i32
"vm.cond_fail"(%4909, %4907) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4910 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4911 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4912 = "vm.xor.i32"(%3470, %4911) : (i32, i32) -> i32
"vm.cond_fail"(%4912, %4910) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4913 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4914 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4915 = "vm.xor.i32"(%3358, %4914) : (i32, i32) -> i32
"vm.cond_fail"(%4915, %4913) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4916 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4917 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4918 = "vm.xor.i32"(%3470, %4917) : (i32, i32) -> i32
"vm.cond_fail"(%4918, %4916) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4919 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4920 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4921 = "vm.xor.i32"(%3358, %4920) : (i32, i32) -> i32
"vm.cond_fail"(%4921, %4919) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4922 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4923 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4924 = "vm.xor.i32"(%3470, %4923) : (i32, i32) -> i32
"vm.cond_fail"(%4924, %4922) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4925 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4926 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4927 = "vm.xor.i32"(%3900, %4926) : (i32, i32) -> i32
"vm.cond_fail"(%4927, %4925) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4928 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4929 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4930 = "vm.xor.i32"(%3904, %4929) : (i32, i32) -> i32
"vm.cond_fail"(%4930, %4928) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4931 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4932 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4933 = "vm.xor.i32"(%3904, %4932) : (i32, i32) -> i32
"vm.cond_fail"(%4933, %4931) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4934 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4935 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4936 = "vm.xor.i32"(%4162, %4935) : (i32, i32) -> i32
"vm.cond_fail"(%4936, %4934) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4937 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4938 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4939 = "vm.xor.i32"(%4170, %4938) : (i32, i32) -> i32
"vm.cond_fail"(%4939, %4937) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4940 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4941 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4942 = "vm.xor.i32"(%4274, %4941) : (i32, i32) -> i32
"vm.cond_fail"(%4942, %4940) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4943 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4944 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4945 = "vm.xor.i32"(%4278, %4944) : (i32, i32) -> i32
"vm.cond_fail"(%4945, %4943) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4946 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4947 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4948 = "vm.xor.i32"(%3358, %4947) : (i32, i32) -> i32
"vm.cond_fail"(%4948, %4946) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4949 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4950 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4951 = "vm.xor.i32"(%3470, %4950) : (i32, i32) -> i32
"vm.cond_fail"(%4951, %4949) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4952 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4953 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4954 = "vm.xor.i32"(%1354, %4953) : (i32, i32) -> i32
"vm.cond_fail"(%4954, %4952) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4955 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4956 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4957 = "vm.xor.i32"(%1354, %4956) : (i32, i32) -> i32
"vm.cond_fail"(%4957, %4955) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4958 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4959 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4960 = "vm.xor.i32"(%3904, %4959) : (i32, i32) -> i32
"vm.cond_fail"(%4960, %4958) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4961 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4962 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4963 = "vm.xor.i32"(%3358, %4962) : (i32, i32) -> i32
"vm.cond_fail"(%4963, %4961) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4964 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4965 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4966 = "vm.xor.i32"(%3358, %4965) : (i32, i32) -> i32
"vm.cond_fail"(%4966, %4964) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4967 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4968 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4969 = "vm.xor.i32"(%3358, %4968) : (i32, i32) -> i32
"vm.cond_fail"(%4969, %4967) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4970 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4971 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4972 = "vm.xor.i32"(%3358, %4971) : (i32, i32) -> i32
"vm.cond_fail"(%4972, %4970) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4973 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4974 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4975 = "vm.xor.i32"(%3470, %4974) : (i32, i32) -> i32
"vm.cond_fail"(%4975, %4973) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4976 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4977 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4978 = "vm.xor.i32"(%3358, %4977) : (i32, i32) -> i32
"vm.cond_fail"(%4978, %4976) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4979 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4980 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4981 = "vm.xor.i32"(%3470, %4980) : (i32, i32) -> i32
"vm.cond_fail"(%4981, %4979) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4982 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4983 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4984 = "vm.xor.i32"(%3358, %4983) : (i32, i32) -> i32
"vm.cond_fail"(%4984, %4982) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%4985 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4986 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4987 = "vm.xor.i32"(%3470, %4986) : (i32, i32) -> i32
"vm.cond_fail"(%4987, %4985) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%4988 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4989 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4990 = "vm.xor.i32"(%3900, %4989) : (i32, i32) -> i32
"vm.cond_fail"(%4990, %4988) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4991 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4992 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4993 = "vm.xor.i32"(%3904, %4992) : (i32, i32) -> i32
"vm.cond_fail"(%4993, %4991) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4994 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4995 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4996 = "vm.xor.i32"(%3904, %4995) : (i32, i32) -> i32
"vm.cond_fail"(%4996, %4994) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%4997 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%4998 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%4999 = "vm.xor.i32"(%4162, %4998) : (i32, i32) -> i32
"vm.cond_fail"(%4999, %4997) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5000 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5001 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5002 = "vm.xor.i32"(%4170, %5001) : (i32, i32) -> i32
"vm.cond_fail"(%5002, %5000) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5003 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5004 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5005 = "vm.xor.i32"(%4274, %5004) : (i32, i32) -> i32
"vm.cond_fail"(%5005, %5003) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5006 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5007 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5008 = "vm.xor.i32"(%4278, %5007) : (i32, i32) -> i32
"vm.cond_fail"(%5008, %5006) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5009 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5010 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5011 = "vm.xor.i32"(%3358, %5010) : (i32, i32) -> i32
"vm.cond_fail"(%5011, %5009) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5012 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5013 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5014 = "vm.xor.i32"(%3470, %5013) : (i32, i32) -> i32
"vm.cond_fail"(%5014, %5012) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5015 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5016 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5017 = "vm.xor.i32"(%1354, %5016) : (i32, i32) -> i32
"vm.cond_fail"(%5017, %5015) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5018 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5019 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5020 = "vm.xor.i32"(%1354, %5019) : (i32, i32) -> i32
"vm.cond_fail"(%5020, %5018) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5021 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5022 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5023 = "vm.xor.i32"(%3904, %5022) : (i32, i32) -> i32
"vm.cond_fail"(%5023, %5021) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5024 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5025 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5026 = "vm.xor.i32"(%3358, %5025) : (i32, i32) -> i32
"vm.cond_fail"(%5026, %5024) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5027 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5028 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5029 = "vm.xor.i32"(%3358, %5028) : (i32, i32) -> i32
"vm.cond_fail"(%5029, %5027) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5030 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5031 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5032 = "vm.xor.i32"(%3358, %5031) : (i32, i32) -> i32
"vm.cond_fail"(%5032, %5030) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5033 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5034 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5035 = "vm.xor.i32"(%3358, %5034) : (i32, i32) -> i32
"vm.cond_fail"(%5035, %5033) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5036 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5037 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5038 = "vm.xor.i32"(%3470, %5037) : (i32, i32) -> i32
"vm.cond_fail"(%5038, %5036) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5039 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5040 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5041 = "vm.xor.i32"(%3358, %5040) : (i32, i32) -> i32
"vm.cond_fail"(%5041, %5039) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5042 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5043 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5044 = "vm.xor.i32"(%3470, %5043) : (i32, i32) -> i32
"vm.cond_fail"(%5044, %5042) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5045 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5046 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5047 = "vm.xor.i32"(%3358, %5046) : (i32, i32) -> i32
"vm.cond_fail"(%5047, %5045) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5048 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5049 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5050 = "vm.xor.i32"(%3470, %5049) : (i32, i32) -> i32
"vm.cond_fail"(%5050, %5048) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5051 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5052 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5053 = "vm.xor.i32"(%3900, %5052) : (i32, i32) -> i32
"vm.cond_fail"(%5053, %5051) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5054 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5055 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5056 = "vm.xor.i32"(%3904, %5055) : (i32, i32) -> i32
"vm.cond_fail"(%5056, %5054) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5057 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5058 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5059 = "vm.xor.i32"(%3904, %5058) : (i32, i32) -> i32
"vm.cond_fail"(%5059, %5057) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5060 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5061 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5062 = "vm.xor.i32"(%4162, %5061) : (i32, i32) -> i32
"vm.cond_fail"(%5062, %5060) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5063 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5064 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5065 = "vm.xor.i32"(%4170, %5064) : (i32, i32) -> i32
"vm.cond_fail"(%5065, %5063) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5066 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5067 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5068 = "vm.xor.i32"(%4274, %5067) : (i32, i32) -> i32
"vm.cond_fail"(%5068, %5066) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5069 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5070 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5071 = "vm.xor.i32"(%4278, %5070) : (i32, i32) -> i32
"vm.cond_fail"(%5071, %5069) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5072 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5073 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5074 = "vm.xor.i32"(%3358, %5073) : (i32, i32) -> i32
"vm.cond_fail"(%5074, %5072) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5075 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5076 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5077 = "vm.xor.i32"(%3470, %5076) : (i32, i32) -> i32
"vm.cond_fail"(%5077, %5075) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5078 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5079 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5080 = "vm.xor.i32"(%1354, %5079) : (i32, i32) -> i32
"vm.cond_fail"(%5080, %5078) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5081 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5082 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5083 = "vm.xor.i32"(%1354, %5082) : (i32, i32) -> i32
"vm.cond_fail"(%5083, %5081) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5084 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5085 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5086 = "vm.xor.i32"(%3904, %5085) : (i32, i32) -> i32
"vm.cond_fail"(%5086, %5084) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5087 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5088 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5089 = "vm.xor.i32"(%3358, %5088) : (i32, i32) -> i32
"vm.cond_fail"(%5089, %5087) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5090 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5091 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5092 = "vm.xor.i32"(%3358, %5091) : (i32, i32) -> i32
"vm.cond_fail"(%5092, %5090) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5093 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5094 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5095 = "vm.xor.i32"(%3358, %5094) : (i32, i32) -> i32
"vm.cond_fail"(%5095, %5093) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5096 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5097 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5098 = "vm.xor.i32"(%3358, %5097) : (i32, i32) -> i32
"vm.cond_fail"(%5098, %5096) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5099 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5100 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5101 = "vm.xor.i32"(%3470, %5100) : (i32, i32) -> i32
"vm.cond_fail"(%5101, %5099) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5102 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5103 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5104 = "vm.xor.i32"(%3358, %5103) : (i32, i32) -> i32
"vm.cond_fail"(%5104, %5102) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5105 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5106 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5107 = "vm.xor.i32"(%3470, %5106) : (i32, i32) -> i32
"vm.cond_fail"(%5107, %5105) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5108 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5109 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5110 = "vm.xor.i32"(%3358, %5109) : (i32, i32) -> i32
"vm.cond_fail"(%5110, %5108) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5111 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5112 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5113 = "vm.xor.i32"(%3470, %5112) : (i32, i32) -> i32
"vm.cond_fail"(%5113, %5111) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5114 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5115 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5116 = "vm.xor.i32"(%3900, %5115) : (i32, i32) -> i32
"vm.cond_fail"(%5116, %5114) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5117 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5118 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5119 = "vm.xor.i32"(%3904, %5118) : (i32, i32) -> i32
"vm.cond_fail"(%5119, %5117) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5120 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5121 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5122 = "vm.xor.i32"(%3904, %5121) : (i32, i32) -> i32
"vm.cond_fail"(%5122, %5120) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5123 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5124 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5125 = "vm.xor.i32"(%4162, %5124) : (i32, i32) -> i32
"vm.cond_fail"(%5125, %5123) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5126 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5127 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5128 = "vm.xor.i32"(%4170, %5127) : (i32, i32) -> i32
"vm.cond_fail"(%5128, %5126) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5129 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5130 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5131 = "vm.xor.i32"(%4274, %5130) : (i32, i32) -> i32
"vm.cond_fail"(%5131, %5129) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5132 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5133 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5134 = "vm.xor.i32"(%4278, %5133) : (i32, i32) -> i32
"vm.cond_fail"(%5134, %5132) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5135 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5136 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5137 = "vm.xor.i32"(%3358, %5136) : (i32, i32) -> i32
"vm.cond_fail"(%5137, %5135) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5138 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5139 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5140 = "vm.xor.i32"(%3470, %5139) : (i32, i32) -> i32
"vm.cond_fail"(%5140, %5138) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5141 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5142 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5143 = "vm.xor.i32"(%1354, %5142) : (i32, i32) -> i32
"vm.cond_fail"(%5143, %5141) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5144 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5145 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5146 = "vm.xor.i32"(%1354, %5145) : (i32, i32) -> i32
"vm.cond_fail"(%5146, %5144) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5147 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5148 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5149 = "vm.xor.i32"(%3904, %5148) : (i32, i32) -> i32
"vm.cond_fail"(%5149, %5147) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5150 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5151 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5152 = "vm.xor.i32"(%3358, %5151) : (i32, i32) -> i32
"vm.cond_fail"(%5152, %5150) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5153 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5154 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5155 = "vm.xor.i32"(%3358, %5154) : (i32, i32) -> i32
"vm.cond_fail"(%5155, %5153) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5156 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5157 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5158 = "vm.xor.i32"(%3358, %5157) : (i32, i32) -> i32
"vm.cond_fail"(%5158, %5156) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5159 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5160 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5161 = "vm.xor.i32"(%3358, %5160) : (i32, i32) -> i32
"vm.cond_fail"(%5161, %5159) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5162 = "vm.mul.i64"(%3016, %411) : (i64, i64) -> i64
%5163 = "vm.mul.i64"(%3016, %410) : (i64, i64) -> i64
%5164 = "vm.mul.i64"(%5163, %3365) : (i64, i64) -> i64
%5165 = "vm.mul.i64"(%3016, %409) : (i64, i64) -> i64
%5166 = "vm.mul.i64"(%5165, %3017) : (i64, i64) -> i64
%5167 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5168 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5169 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5170 = "vm.call"(%876, %5169, %5167) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5171 = "vm.ext.i32.i64.u"(%5170) : (i32) -> i64
%5172 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5173 = "vm.shl.i64"(%5171, %5172) : (i64, i32) -> i64
%5174 = "vm.call"(%876, %449, %5167) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5175 = "vm.ext.i32.i64.u"(%5174) : (i32) -> i64
%5176 = "vm.or.i64"(%5175, %5173) : (i64, i64) -> i64
%5177 = "vm.cmp.gte.i64.s"(%5176, %438) : (i64, i64) -> i32
%5178 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5179 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5180 = "vm.xor.i32"(%5177, %5179) : (i32, i32) -> i32
"vm.cond_fail"(%5180, %5178) <{message = "negative values not allowed in new dimensions"}> : (i32, i32) -> ()
%5181 = "vm.mul.i64"(%5176, %429) : (i64, i64) -> i64
%5182 = "vm.mul.i64"(%5181, %927) : (i64, i64) -> i64
%5183 = "vm.const.i32.zero"() : () -> i32
%5184 = "vm.call"(%472, %5183) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5185 = "vm.const.i32.zero"() : () -> i32
%5186 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5187 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5188 = "vm.call"(%472, %460, %461, %5184, %5185, %5186, %5187, %5182) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5189 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%5190 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%5191 = "vm.add.i64"(%5182, %5190) : (i64, i64) -> i64
%5192 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%5193 = "vm.and.i64"(%5191, %5192) : (i64, i64) -> i64
%5194 = "vm.const.i32.zero"() : () -> i32
%5195 = "vm.call"(%472, %5194) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5196 = "vm.const.i32.zero"() : () -> i32
%5197 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5198 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5199 = "vm.call"(%472, %460, %461, %5195, %5196, %5197, %5198, %5193) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5200 = "vm.call.variadic"(%5184, %5195) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%5201 = "vm.trunc.i64.i32"(%5176) : (i64) -> i32
%5202 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5203 = "vm.shr.i64.u"(%5176, %5202) : (i64, i32) -> i64
%5204 = "vm.trunc.i64.i32"(%5203) : (i64) -> i32
%5205 = "vm.trunc.i64.i32"(%927) : (i64) -> i32
%5206 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5207 = "vm.shr.i64.u"(%927, %5206) : (i64, i32) -> i64
%5208 = "vm.trunc.i64.i32"(%5207) : (i64) -> i32
%5209 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5210 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5211 = "vm.const.i32.zero"() : () -> i32
%5212 = "vm.call"(%472, %5209, %5210, %460, %5211) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5213 = "vm.cmp.lte.i64.s"(%5176, %449) : (i64, i64) -> i32
%5214 = "vm.sub.i64"(%449, %5176) : (i64, i64) -> i64
%5215 = "vm.sub.i64"(%5176, %447) : (i64, i64) -> i64
%5216 = "vm.select.i64"(%5213, %5214, %5215) : (i32, i64, i64) -> i64
%5217 = "vm.div.i64.s"(%5216, %432) : (i64, i64) -> i64
%5218 = "vm.sub.i64"(%449, %5217) : (i64, i64) -> i64
%5219 = "vm.add.i64"(%5217, %447) : (i64, i64) -> i64
%5220 = "vm.select.i64"(%5213, %5218, %5219) : (i32, i64, i64) -> i64
%5221 = "vm.cmp.lte.i64.s"(%927, %449) : (i64, i64) -> i32
%5222 = "vm.sub.i64"(%449, %927) : (i64, i64) -> i64
%5223 = "vm.sub.i64"(%927, %447) : (i64, i64) -> i64
%5224 = "vm.select.i64"(%5221, %5222, %5223) : (i32, i64, i64) -> i64
%5225 = "vm.div.i64.s"(%5224, %432) : (i64, i64) -> i64
%5226 = "vm.sub.i64"(%449, %5225) : (i64, i64) -> i64
%5227 = "vm.add.i64"(%5225, %447) : (i64, i64) -> i64
%5228 = "vm.select.i64"(%5221, %5226, %5227) : (i32, i64, i64) -> i64
%5229 = "vm.const.i32.zero"() : () -> i32
%5230 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5231 = "vm.const.i32"() <{value = 10 : i32}> : () -> i32
%5232 = "vm.trunc.i64.i32"(%5228) : (i64) -> i32
%5233 = "vm.trunc.i64.i32"(%5220) : (i64) -> i32
%5234 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5235 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5212, %473, %5231, %5232, %5233, %5234, %5230, %5201, %5204, %5205, %5208, %5229, %5235, %5199, %449, %5193) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5236 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5237 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5238 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5212, %5236, %5237, %5238) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5239 = "vm.const.i32.zero"() : () -> i32
%5240 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5241 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5242 = "vm.trunc.i64.i32"(%5220) : (i64) -> i32
%5243 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5244 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5245 = "vm.const.i32.zero"() : () -> i32
%5246 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5212, %473, %5241, %5242, %5243, %5244, %5240, %407, %407, %5201, %5204, %5205, %5208, %5239, %5245, %5199, %449, %5193, %5239, %5246, %5188, %449, %5182) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5247 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5248 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5249 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5212, %5247, %5248, %5249) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5212) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5250 = "vm.const.i32.zero"() : () -> i32
%5251 = "vm.call"(%472, %5250) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5200, %5251, %5212) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5252 = "vm.const.i32.zero"() : () -> i32
%5253 = "vm.call"(%472, %5252) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %5251, %5253, %5199) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%5254 = "vm.cmp.eq.i64"(%5176, %870) : (i64, i64) -> i32
%5255 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5256 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5257 = "vm.xor.i32"(%5254, %5256) : (i32, i32) -> i32
"vm.cond_fail"(%5257, %5255) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5258 = "vm.cmp.eq.i64"(%490, %5176) : (i64, i64) -> i32
%5259 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5260 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5261 = "vm.xor.i32"(%5258, %5260) : (i32, i32) -> i32
"vm.cond_fail"(%5261, %5259) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%5262 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5263 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5264 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5265 = "vm.call"(%1832, %5264, %5262) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5266 = "vm.ext.i32.i64.u"(%5265) : (i32) -> i64
%5267 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5268 = "vm.shl.i64"(%5266, %5267) : (i64, i32) -> i64
%5269 = "vm.call"(%1832, %449, %5262) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5270 = "vm.ext.i32.i64.u"(%5269) : (i32) -> i64
%5271 = "vm.or.i64"(%5270, %5268) : (i64, i64) -> i64
%5272 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5273 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5274 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%5275 = "vm.call"(%1832, %5274, %5272) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5276 = "vm.ext.i32.i64.u"(%5275) : (i32) -> i64
%5277 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5278 = "vm.shl.i64"(%5276, %5277) : (i64, i32) -> i64
%5279 = "vm.call"(%1832, %432, %5272) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5280 = "vm.ext.i32.i64.u"(%5279) : (i32) -> i64
%5281 = "vm.or.i64"(%5280, %5278) : (i64, i64) -> i64
%5282 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5283 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5284 = "vm.const.i64"() <{value = 132 : i64}> : () -> i64
%5285 = "vm.call"(%1832, %5284, %5282) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5286 = "vm.ext.i32.i64.u"(%5285) : (i32) -> i64
%5287 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5288 = "vm.shl.i64"(%5286, %5287) : (i64, i32) -> i64
%5289 = "vm.call"(%1832, %441, %5282) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5290 = "vm.ext.i32.i64.u"(%5289) : (i32) -> i64
%5291 = "vm.or.i64"(%5290, %5288) : (i64, i64) -> i64
%5292 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5293 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5294 = "vm.const.i64"() <{value = 196 : i64}> : () -> i64
%5295 = "vm.call"(%1832, %5294, %5292) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5296 = "vm.ext.i32.i64.u"(%5295) : (i32) -> i64
%5297 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5298 = "vm.shl.i64"(%5296, %5297) : (i64, i32) -> i64
%5299 = "vm.call"(%1832, %451, %5292) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5300 = "vm.ext.i32.i64.u"(%5299) : (i32) -> i64
%5301 = "vm.or.i64"(%5300, %5298) : (i64, i64) -> i64
%5302 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5303 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5304 = "vm.const.i64"() <{value = 260 : i64}> : () -> i64
%5305 = "vm.call"(%1832, %5304, %5302) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5306 = "vm.ext.i32.i64.u"(%5305) : (i32) -> i64
%5307 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5308 = "vm.shl.i64"(%5306, %5307) : (i64, i32) -> i64
%5309 = "vm.call"(%1832, %420, %5302) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5310 = "vm.ext.i32.i64.u"(%5309) : (i32) -> i64
%5311 = "vm.or.i64"(%5310, %5308) : (i64, i64) -> i64
%5312 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5313 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5314 = "vm.const.i64"() <{value = 324 : i64}> : () -> i64
%5315 = "vm.call"(%1832, %5314, %5312) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5316 = "vm.ext.i32.i64.u"(%5315) : (i32) -> i64
%5317 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5318 = "vm.shl.i64"(%5316, %5317) : (i64, i32) -> i64
%5319 = "vm.call"(%1832, %453, %5312) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5320 = "vm.ext.i32.i64.u"(%5319) : (i32) -> i64
%5321 = "vm.or.i64"(%5320, %5318) : (i64, i64) -> i64
%5322 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5323 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5324 = "vm.const.i64"() <{value = 388 : i64}> : () -> i64
%5325 = "vm.call"(%1832, %5324, %5322) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5326 = "vm.ext.i32.i64.u"(%5325) : (i32) -> i64
%5327 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5328 = "vm.shl.i64"(%5326, %5327) : (i64, i32) -> i64
%5329 = "vm.call"(%1832, %454, %5322) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5330 = "vm.ext.i32.i64.u"(%5329) : (i32) -> i64
%5331 = "vm.or.i64"(%5330, %5328) : (i64, i64) -> i64
%5332 = "vm.add.i64"(%5271, %5311) : (i64, i64) -> i64
%5333 = "vm.add.i64"(%5332, %1461) : (i64, i64) -> i64
%5334 = "vm.add.i64"(%5281, %5321) : (i64, i64) -> i64
%5335 = "vm.add.i64"(%5334, %1460) : (i64, i64) -> i64
%5336 = "vm.add.i64"(%5291, %5331) : (i64, i64) -> i64
%5337 = "vm.add.i64"(%5336, %443) : (i64, i64) -> i64
%5338 = "vm.add.i64"(%5301, %1953) : (i64, i64) -> i64
%5339 = "vm.add.i64"(%5338, %432) : (i64, i64) -> i64
%5340 = "vm.mul.i64"(%5333, %429) : (i64, i64) -> i64
%5341 = "vm.mul.i64"(%5340, %5335) : (i64, i64) -> i64
%5342 = "vm.mul.i64"(%5341, %5337) : (i64, i64) -> i64
%5343 = "vm.mul.i64"(%5342, %5339) : (i64, i64) -> i64
%5344 = "vm.call.variadic"(%1942, %1453) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%5345 = "vm.const.i32.zero"() : () -> i32
%5346 = "vm.call"(%472, %5345) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5347 = "vm.const.i32.zero"() : () -> i32
%5348 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%5349 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%5350 = "vm.call"(%472, %460, %5344, %5346, %5347, %5348, %5349, %420) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5351 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%5352 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%5353 = "vm.add.i64"(%5343, %5352) : (i64, i64) -> i64
%5354 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%5355 = "vm.and.i64"(%5353, %5354) : (i64, i64) -> i64
%5356 = "vm.add.i64"(%5355, %420) : (i64, i64) -> i64
%5357 = "vm.const.i32.zero"() : () -> i32
%5358 = "vm.call"(%472, %5357) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5359 = "vm.const.i32.zero"() : () -> i32
%5360 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5361 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5362 = "vm.call"(%472, %460, %5344, %5358, %5359, %5360, %5361, %5356) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5363 = "vm.const.i32.zero"() : () -> i32
%5364 = "vm.call"(%472, %5363) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5365 = "vm.const.i32.zero"() : () -> i32
%5366 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5367 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5368 = "vm.call"(%472, %460, %5344, %5364, %5365, %5366, %5367, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5369 = "vm.call.variadic"(%5346, %5358, %5364) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%5370 = "vm.trunc.i64.i32"(%1461) : (i64) -> i32
%5371 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5372 = "vm.shr.i64.u"(%1461, %5371) : (i64, i32) -> i64
%5373 = "vm.trunc.i64.i32"(%5372) : (i64) -> i32
%5374 = "vm.trunc.i64.i32"(%1460) : (i64) -> i32
%5375 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5376 = "vm.shr.i64.u"(%1460, %5375) : (i64, i32) -> i64
%5377 = "vm.trunc.i64.i32"(%5376) : (i64) -> i32
%5378 = "vm.trunc.i64.i32"(%5333) : (i64) -> i32
%5379 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5380 = "vm.shr.i64.u"(%5333, %5379) : (i64, i32) -> i64
%5381 = "vm.trunc.i64.i32"(%5380) : (i64) -> i32
%5382 = "vm.trunc.i64.i32"(%5335) : (i64) -> i32
%5383 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5384 = "vm.shr.i64.u"(%5335, %5383) : (i64, i32) -> i64
%5385 = "vm.trunc.i64.i32"(%5384) : (i64) -> i32
%5386 = "vm.trunc.i64.i32"(%5337) : (i64) -> i32
%5387 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5388 = "vm.shr.i64.u"(%5337, %5387) : (i64, i32) -> i64
%5389 = "vm.trunc.i64.i32"(%5388) : (i64) -> i32
%5390 = "vm.trunc.i64.i32"(%5339) : (i64) -> i32
%5391 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5392 = "vm.shr.i64.u"(%5339, %5391) : (i64, i32) -> i64
%5393 = "vm.trunc.i64.i32"(%5392) : (i64) -> i32
%5394 = "vm.trunc.i64.i32"(%5333) : (i64) -> i32
%5395 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5396 = "vm.shr.i64.u"(%5333, %5395) : (i64, i32) -> i64
%5397 = "vm.trunc.i64.i32"(%5396) : (i64) -> i32
%5398 = "vm.trunc.i64.i32"(%5337) : (i64) -> i32
%5399 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5400 = "vm.shr.i64.u"(%5337, %5399) : (i64, i32) -> i64
%5401 = "vm.trunc.i64.i32"(%5400) : (i64) -> i32
%5402 = "vm.trunc.i64.i32"(%5339) : (i64) -> i32
%5403 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5404 = "vm.shr.i64.u"(%5339, %5403) : (i64, i32) -> i64
%5405 = "vm.trunc.i64.i32"(%5404) : (i64) -> i32
%5406 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5407 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5408 = "vm.const.i32.zero"() : () -> i32
%5409 = "vm.call"(%472, %5406, %5407, %460, %5408) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5410 = "vm.const.i32.zero"() : () -> i32
%5411 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5412 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5362, %420, %5343, %5410, %5412, %5411) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%5413 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5414 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5415 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5413, %5414, %5415) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5416 = "vm.cmp.lte.i64.s"(%1460, %449) : (i64, i64) -> i32
%5417 = "vm.sub.i64"(%449, %1460) : (i64, i64) -> i64
%5418 = "vm.sub.i64"(%1460, %447) : (i64, i64) -> i64
%5419 = "vm.select.i64"(%5416, %5417, %5418) : (i32, i64, i64) -> i64
%5420 = "vm.div.i64.s"(%5419, %432) : (i64, i64) -> i64
%5421 = "vm.sub.i64"(%449, %5420) : (i64, i64) -> i64
%5422 = "vm.add.i64"(%5420, %447) : (i64, i64) -> i64
%5423 = "vm.select.i64"(%5416, %5421, %5422) : (i32, i64, i64) -> i64
%5424 = "vm.const.i32.zero"() : () -> i32
%5425 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5426 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5427 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%5428 = "vm.trunc.i64.i32"(%5423) : (i64) -> i32
%5429 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5430 = "vm.const.i32.zero"() : () -> i32
%5431 = "vm.const.i32.zero"() : () -> i32
%5432 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5426, %5427, %5428, %5429, %5425, %1388, %1391, %390, %1621, %1624, %1625, %1628, %5370, %5373, %5374, %5377, %5378, %5381, %5382, %5385, %5386, %5389, %5390, %5393, %5424, %5430, %1838, %449, %432, %5424, %5431, %1371, %449, %1365, %5424, %5432, %5362, %449, %5356) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 19, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5433 = "vm.const.i32.zero"() : () -> i32
%5434 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5435 = "vm.const.i32.zero"() : () -> i32
%5436 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5437 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5438 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5439 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5435, %5436, %5437, %5438, %5434, %407, %5394, %5397, %5433, %5439, %5368, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5440 = "vm.const.i32.zero"() : () -> i32
%5441 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5442 = "vm.const.i32"() <{value = 29 : i32}> : () -> i32
%5443 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5444 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5445 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5446 = "vm.const.i32.zero"() : () -> i32
%5447 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5442, %5443, %5444, %5445, %5441, %1621, %1624, %1625, %1628, %5440, %5446, %1838, %449, %432, %5440, %5447, %5368, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5448 = "vm.const.i32.zero"() : () -> i32
%5449 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5450 = "vm.const.i32.zero"() : () -> i32
%5451 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5452 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5453 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5454 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5450, %5451, %5452, %5453, %5449, %388, %405, %407, %5448, %5454, %5368, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5455 = "vm.const.i32.zero"() : () -> i32
%5456 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5457 = "vm.const.i32.zero"() : () -> i32
%5458 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5459 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5460 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5461 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5457, %5458, %5459, %5460, %5456, %387, %5398, %5401, %5455, %5461, %5368, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5462 = "vm.const.i32.zero"() : () -> i32
%5463 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5464 = "vm.const.i32.zero"() : () -> i32
%5465 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5466 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5467 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5468 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5464, %5465, %5466, %5467, %5463, %386, %5402, %5405, %5462, %5468, %5368, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5469 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5470 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5471 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5469, %5470, %5471) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5472 = "vm.const.i32.zero"() : () -> i32
%5473 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5472, %5473, %5368, %449, %5368, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5474 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5475 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5476 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5474, %5475, %5476) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5477 = "vm.const.i32.zero"() : () -> i32
%5478 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5479 = "vm.const.i32"() <{value = 30 : i32}> : () -> i32
%5480 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5481 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5482 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5483 = "vm.const.i32.zero"() : () -> i32
%5484 = "vm.const.i32.zero"() : () -> i32
%5485 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5479, %5480, %5481, %5482, %5478, %1621, %1624, %1625, %1628, %5477, %5483, %1838, %449, %432, %5477, %5484, %5368, %449, %441, %5477, %5485, %5362, %449, %5356) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5486 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5487 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5488 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5486, %5487, %5488) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5489 = "vm.const.i32.zero"() : () -> i32
%5490 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5489, %5490, %5362, %449, %5350, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5491 = "vm.const.i32.zero"() : () -> i32
%5492 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5491, %5492, %5368, %431, %5368, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5493 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5494 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5495 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5493, %5494, %5495) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5496 = "vm.const.i32.zero"() : () -> i32
%5497 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5498 = "vm.const.i32"() <{value = 31 : i32}> : () -> i32
%5499 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5500 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5501 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5502 = "vm.const.i32.zero"() : () -> i32
%5503 = "vm.const.i32.zero"() : () -> i32
%5504 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5498, %5499, %5500, %5501, %5497, %1621, %1624, %1625, %1628, %5496, %5502, %1838, %449, %432, %5496, %5503, %5368, %449, %441, %5496, %5504, %5362, %449, %5356) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5505 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5506 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5507 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5505, %5506, %5507) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5508 = "vm.const.i32.zero"() : () -> i32
%5509 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5508, %5509, %5362, %432, %5350, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5510 = "vm.const.i32.zero"() : () -> i32
%5511 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5510, %5511, %5368, %428, %5368, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5512 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5513 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5514 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5512, %5513, %5514) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5515 = "vm.const.i32.zero"() : () -> i32
%5516 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5517 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5518 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5519 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5520 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5521 = "vm.const.i32.zero"() : () -> i32
%5522 = "vm.const.i32.zero"() : () -> i32
%5523 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5517, %5518, %5519, %5520, %5516, %5515, %5521, %1838, %449, %432, %5515, %5522, %5368, %449, %441, %5515, %5523, %5362, %449, %5356) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 0, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5524 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5525 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5526 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5524, %5525, %5526) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5527 = "vm.const.i32.zero"() : () -> i32
%5528 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5527, %5528, %5362, %441, %5350, %441, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5529 = "vm.const.i32.zero"() : () -> i32
%5530 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5529, %5530, %5368, %421, %5368, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5531 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5532 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5533 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5531, %5532, %5533) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5534 = "vm.const.i32.zero"() : () -> i32
%5535 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5536 = "vm.const.i32"() <{value = 33 : i32}> : () -> i32
%5537 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5538 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5539 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5540 = "vm.const.i32.zero"() : () -> i32
%5541 = "vm.const.i32.zero"() : () -> i32
%5542 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5409, %473, %5536, %5537, %5538, %5539, %5535, %5534, %5540, %1838, %449, %432, %5534, %5541, %5368, %449, %441, %5534, %5542, %5362, %449, %5356) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 0, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5543 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5544 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5545 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5543, %5544, %5545) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5546 = "vm.const.i32.zero"() : () -> i32
%5547 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5546, %5547, %5362, %451, %5350, %451, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5548 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5549 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5550 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5409, %5548, %5549, %5550) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5409) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5551 = "vm.const.i32.zero"() : () -> i32
%5552 = "vm.call"(%472, %5551) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5369, %5552, %5409) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5553 = "vm.const.i32.zero"() : () -> i32
%5554 = "vm.call"(%472, %5553) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %5552, %5554, %5368) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%5555 = "vm.call.variadic"(%462, %5554) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%5555, %5555) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%5556 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5557 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5558 = "vm.const.i64"() <{value = 196 : i64}> : () -> i64
%5559 = "vm.call"(%5350, %5558, %5556) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5560 = "vm.ext.i32.i64.u"(%5559) : (i32) -> i64
%5561 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5562 = "vm.shl.i64"(%5560, %5561) : (i64, i32) -> i64
%5563 = "vm.call"(%5350, %451, %5556) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5564 = "vm.ext.i32.i64.u"(%5563) : (i32) -> i64
%5565 = "vm.or.i64"(%5564, %5562) : (i64, i64) -> i64
%5566 = "vm.cmp.lt.i64.s"(%5565, %438) : (i64, i64) -> i32
%5567 = "vm.cmp.lt.i64.s"(%5339, %438) : (i64, i64) -> i32
%5568 = "vm.mul.i64"(%5333, %5335) : (i64, i64) -> i64
%5569 = "vm.mul.i64"(%5568, %5337) : (i64, i64) -> i64
%5570 = "vm.mul.i64"(%5569, %5339) : (i64, i64) -> i64
%5571 = "vm.call.variadic"(%1942, %1519) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%5572 = "vm.const.i32.zero"() : () -> i32
%5573 = "vm.call"(%472, %5572) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5574 = "vm.const.i32.zero"() : () -> i32
%5575 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5576 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5577 = "vm.call"(%472, %460, %5571, %5573, %5574, %5575, %5576, %5343) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5578 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5579 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5580 = "vm.const.i32.zero"() : () -> i32
%5581 = "vm.call"(%472, %5578, %5579, %460, %5580) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5582 = "vm.const.i32.zero"() : () -> i32
%5583 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5584 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5581, %5577, %449, %5343, %5582, %5584, %5583) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%5585 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5586 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5587 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5581, %5585, %5586, %5587) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5588 = "vm.const.i32.zero"() : () -> i32
%5589 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5590 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5591 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%5592 = "vm.trunc.i64.i32"(%5423) : (i64) -> i32
%5593 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5594 = "vm.const.i32.zero"() : () -> i32
%5595 = "vm.const.i32.zero"() : () -> i32
%5596 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5581, %473, %5590, %5591, %5592, %5593, %5589, %407, %407, %407, %1621, %1624, %1625, %1628, %5370, %5373, %5374, %5377, %5378, %5381, %5382, %5385, %5386, %5389, %5390, %5393, %5588, %5594, %1838, %449, %432, %5588, %5595, %1470, %449, %611, %5588, %5596, %5577, %449, %5343) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 19, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5597 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5598 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5599 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5581, %5597, %5598, %5599) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5581) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5600 = "vm.const.i32.zero"() : () -> i32
%5601 = "vm.call"(%472, %5600) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5573, %5601, %5581) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5602 = "vm.call.variadic"(%1942, %1580) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%5603 = "vm.const.i32.zero"() : () -> i32
%5604 = "vm.call"(%472, %5603) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5605 = "vm.const.i32.zero"() : () -> i32
%5606 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5607 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5608 = "vm.call"(%472, %460, %5602, %5604, %5605, %5606, %5607, %5343) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5609 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5610 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5611 = "vm.const.i32.zero"() : () -> i32
%5612 = "vm.call"(%472, %5609, %5610, %460, %5611) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5613 = "vm.const.i32.zero"() : () -> i32
%5614 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5615 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5612, %5608, %449, %5343, %5613, %5615, %5614) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%5616 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5617 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5618 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5612, %5616, %5617, %5618) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5619 = "vm.const.i32.zero"() : () -> i32
%5620 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5621 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5622 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%5623 = "vm.trunc.i64.i32"(%5423) : (i64) -> i32
%5624 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5625 = "vm.const.i32.zero"() : () -> i32
%5626 = "vm.const.i32.zero"() : () -> i32
%5627 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5612, %473, %5621, %5622, %5623, %5624, %5620, %407, %407, %407, %1621, %1624, %1625, %1628, %5370, %5373, %5374, %5377, %5378, %5381, %5382, %5385, %5386, %5389, %5390, %5393, %5619, %5625, %1838, %449, %432, %5619, %5626, %1531, %449, %611, %5619, %5627, %5608, %449, %5343) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 19, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5628 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5629 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5630 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5612, %5628, %5629, %5630) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5612) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5631 = "vm.const.i32.zero"() : () -> i32
%5632 = "vm.call"(%472, %5631) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5604, %5632, %5612) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5633 = "vm.const.i32.zero"() : () -> i32
%5634 = "vm.call"(%472, %5633) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5635 = "vm.const.i32.zero"() : () -> i32
%5636 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%5637 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%5638 = "vm.call"(%472, %460, %5554, %5634, %5635, %5636, %5637, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5639 = "vm.const.i32.zero"() : () -> i32
%5640 = "vm.call"(%472, %5639) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5641 = "vm.const.i32.zero"() : () -> i32
%5642 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5643 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5644 = "vm.call"(%472, %460, %5554, %5640, %5641, %5642, %5643, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5645 = "vm.call.variadic"(%5634, %5640) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%5646 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5647 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5648 = "vm.const.i32.zero"() : () -> i32
%5649 = "vm.call"(%472, %5646, %5647, %460, %5648) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5650 = "vm.const.i32.zero"() : () -> i32
%5651 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5652 = "vm.const.i32"() <{value = 35 : i32}> : () -> i32
%5653 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5654 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5655 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5656 = "vm.const.i32.zero"() : () -> i32
%5657 = "vm.const.i32.zero"() : () -> i32
%5658 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5649, %473, %5652, %5653, %5654, %5655, %5651, %1621, %1624, %1625, %1628, %5650, %5656, %5362, %449, %5356, %5650, %5657, %1838, %449, %432, %5650, %5658, %5644, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5659 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5660 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5661 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5649, %5659, %5660, %5661) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5662 = "vm.const.i32.zero"() : () -> i32
%5663 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5649, %5662, %5663, %5644, %449, %5638, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5664 = "vm.const.i32.zero"() : () -> i32
%5665 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5666 = "vm.const.i32"() <{value = 36 : i32}> : () -> i32
%5667 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5668 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5669 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5670 = "vm.const.i32.zero"() : () -> i32
%5671 = "vm.const.i32.zero"() : () -> i32
%5672 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5649, %473, %5666, %5667, %5668, %5669, %5665, %1621, %1624, %1625, %1628, %5664, %5670, %5362, %449, %5356, %5664, %5671, %1838, %449, %432, %5664, %5672, %5644, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5673 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5674 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5675 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5649, %5673, %5674, %5675) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%5676 = "vm.const.i32.zero"() : () -> i32
%5677 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5649, %5676, %5677, %5644, %432, %5638, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5678 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5679 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5680 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5649, %5678, %5679, %5680) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5649) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5681 = "vm.const.i32.zero"() : () -> i32
%5682 = "vm.call"(%472, %5681) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5645, %5682, %5649) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5683 = "vm.const.i32.zero"() : () -> i32
%5684 = "vm.call"(%472, %5683) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %5682, %5684, %5644) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%5685 = "vm.call.variadic"(%462, %5684) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%5685, %5685) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%5686 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5687 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5688 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%5689 = "vm.call"(%5638, %5688, %5686) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5690 = "vm.ext.i32.i64.u"(%5689) : (i32) -> i64
%5691 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5692 = "vm.shl.i64"(%5690, %5691) : (i64, i32) -> i64
%5693 = "vm.call"(%5638, %432, %5686) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5694 = "vm.ext.i32.i64.u"(%5693) : (i32) -> i64
%5695 = "vm.or.i64"(%5694, %5692) : (i64, i64) -> i64
%5696 = "vm.cmp.lt.i64.s"(%5695, %449) : (i64, i64) -> i32
%5697 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5698 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5699 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5700 = "vm.call"(%5350, %5699, %5697) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5701 = "vm.ext.i32.i64.u"(%5700) : (i32) -> i64
%5702 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5703 = "vm.shl.i64"(%5701, %5702) : (i64, i32) -> i64
%5704 = "vm.call"(%5350, %449, %5697) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5705 = "vm.ext.i32.i64.u"(%5704) : (i32) -> i64
%5706 = "vm.or.i64"(%5705, %5703) : (i64, i64) -> i64
%5707 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5708 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5709 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%5710 = "vm.call"(%5350, %5709, %5707) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5711 = "vm.ext.i32.i64.u"(%5710) : (i32) -> i64
%5712 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5713 = "vm.shl.i64"(%5711, %5712) : (i64, i32) -> i64
%5714 = "vm.call"(%5350, %432, %5707) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5715 = "vm.ext.i32.i64.u"(%5714) : (i32) -> i64
%5716 = "vm.or.i64"(%5715, %5713) : (i64, i64) -> i64
%5717 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%5718 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%5719 = "vm.const.i64"() <{value = 132 : i64}> : () -> i64
%5720 = "vm.call"(%5350, %5719, %5717) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5721 = "vm.ext.i32.i64.u"(%5720) : (i32) -> i64
%5722 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5723 = "vm.shl.i64"(%5721, %5722) : (i64, i32) -> i64
%5724 = "vm.call"(%5350, %441, %5717) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%5725 = "vm.ext.i32.i64.u"(%5724) : (i32) -> i64
%5726 = "vm.or.i64"(%5725, %5723) : (i64, i64) -> i64
%5727 = "vm.cmp.lt.i64.s"(%5706, %438) : (i64, i64) -> i32
%5728 = "vm.select.i64"(%5727, %437, %5706) : (i32, i64, i64) -> i64
%5729 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5730 = "vm.and.i32"(%5727, %5729) : (i32, i32) -> i32
%5731 = "vm.ext.i32.i64.u"(%5730) : (i32) -> i64
%5732 = "vm.mul.i64"(%5728, %5716) : (i64, i64) -> i64
%5733 = "vm.add.i64"(%5731, %437) : (i64, i64) -> i64
%5734 = "vm.cmp.lt.i64.s"(%5716, %438) : (i64, i64) -> i32
%5735 = "vm.select.i64"(%5734, %5728, %5732) : (i32, i64, i64) -> i64
%5736 = "vm.select.i64"(%5734, %5733, %5731) : (i32, i64, i64) -> i64
%5737 = "vm.mul.i64"(%5735, %5726) : (i64, i64) -> i64
%5738 = "vm.add.i64"(%5736, %437) : (i64, i64) -> i64
%5739 = "vm.cmp.lt.i64.s"(%5726, %438) : (i64, i64) -> i32
%5740 = "vm.select.i64"(%5739, %5735, %5737) : (i32, i64, i64) -> i64
%5741 = "vm.select.i64"(%5739, %5738, %5736) : (i32, i64, i64) -> i64
%5742 = "vm.mul.i64"(%5740, %5565) : (i64, i64) -> i64
%5743 = "vm.add.i64"(%5741, %437) : (i64, i64) -> i64
%5744 = "vm.select.i64"(%5566, %5740, %5742) : (i32, i64, i64) -> i64
%5745 = "vm.select.i64"(%5566, %5743, %5741) : (i32, i64, i64) -> i64
%5746 = "vm.mul.i64"(%5744, %5339) : (i64, i64) -> i64
%5747 = "vm.add.i64"(%5745, %437) : (i64, i64) -> i64
%5748 = "vm.select.i64"(%5567, %5744, %5746) : (i32, i64, i64) -> i64
%5749 = "vm.select.i64"(%5567, %5747, %5745) : (i32, i64, i64) -> i64
%5750 = "vm.cmp.lte.i64.u"(%5749, %437) : (i64, i64) -> i32
%5751 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5752 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5753 = "vm.xor.i32"(%5750, %5752) : (i32, i32) -> i32
"vm.cond_fail"(%5753, %5751) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5754 = "vm.div.i64.s"(%5570, %5748) : (i64, i64) -> i64
%5755 = "vm.select.i64"(%5727, %5754, %5706) : (i32, i64, i64) -> i64
%5756 = "vm.select.i64"(%5734, %5754, %5716) : (i32, i64, i64) -> i64
%5757 = "vm.select.i64"(%5739, %5754, %5726) : (i32, i64, i64) -> i64
%5758 = "vm.select.i64"(%5566, %5754, %5565) : (i32, i64, i64) -> i64
%5759 = "vm.select.i64"(%5567, %5754, %5339) : (i32, i64, i64) -> i64
%5760 = "vm.mul.i64"(%5755, %429) : (i64, i64) -> i64
%5761 = "vm.mul.i64"(%5760, %5756) : (i64, i64) -> i64
%5762 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5763 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5764 = "vm.xor.i32"(%5750, %5763) : (i32, i32) -> i32
"vm.cond_fail"(%5764, %5762) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5765 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5766 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5767 = "vm.xor.i32"(%5750, %5766) : (i32, i32) -> i32
"vm.cond_fail"(%5767, %5765) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5768 = "vm.add.i64"(%5756, %466) : (i64, i64) -> i64
%5769 = "vm.mul.i64"(%5760, %5768) : (i64, i64) -> i64
%5770 = "vm.mul.i64"(%5769, %5757) : (i64, i64) -> i64
%5771 = "vm.mul.i64"(%5770, %5758) : (i64, i64) -> i64
%5772 = "vm.mul.i64"(%5771, %5759) : (i64, i64) -> i64
%5773 = "vm.cmp.lt.i64.s"(%5768, %438) : (i64, i64) -> i32
%5774 = "vm.select.i64"(%5773, %5768, %438) : (i32, i64, i64) -> i64
%5775 = "vm.cmp.lt.i64.s"(%5756, %449) : (i64, i64) -> i32
%5776 = "vm.add.i64"(%5756, %5768) : (i64, i64) -> i64
%5777 = "vm.select.i64"(%5775, %5776, %5756) : (i32, i64, i64) -> i64
%5778 = "vm.cmp.lt.i64.s"(%5777, %449) : (i64, i64) -> i32
%5779 = "vm.select.i64"(%5778, %446, %5777) : (i32, i64, i64) -> i64
%5780 = "vm.cmp.gt.i64.s"(%5779, %5768) : (i64, i64) -> i32
%5781 = "vm.select.i64"(%5780, %5768, %5779) : (i32, i64, i64) -> i64
%5782 = "vm.sub.i64"(%5781, %5774) : (i64, i64) -> i64
%5783 = "vm.cmp.lt.i64.s"(%5782, %449) : (i64, i64) -> i32
%5784 = "vm.select.i64"(%5783, %449, %5782) : (i32, i64, i64) -> i64
%5785 = "vm.cmp.lt.i64.s"(%5768, %437) : (i64, i64) -> i32
%5786 = "vm.select.i64"(%5785, %5768, %437) : (i32, i64, i64) -> i64
%5787 = "vm.cmp.lt.i64.s"(%5768, %436) : (i64, i64) -> i32
%5788 = "vm.select.i64"(%5787, %5768, %436) : (i32, i64, i64) -> i64
%5789 = "vm.add.i64"(%5695, %5768) : (i64, i64) -> i64
%5790 = "vm.select.i64"(%5696, %5789, %5695) : (i32, i64, i64) -> i64
%5791 = "vm.cmp.lt.i64.s"(%5790, %449) : (i64, i64) -> i32
%5792 = "vm.select.i64"(%5791, %446, %5790) : (i32, i64, i64) -> i64
%5793 = "vm.cmp.gt.i64.s"(%5792, %5768) : (i64, i64) -> i32
%5794 = "vm.select.i64"(%5793, %5768, %5792) : (i32, i64, i64) -> i64
%5795 = "vm.sub.i64"(%5794, %5788) : (i64, i64) -> i64
%5796 = "vm.cmp.lt.i64.s"(%5795, %449) : (i64, i64) -> i32
%5797 = "vm.select.i64"(%5796, %449, %5795) : (i32, i64, i64) -> i64
%5798 = "vm.mul.i64"(%5757, %464) : (i64, i64) -> i64
%5799 = "vm.mul.i64"(%5760, %5784) : (i64, i64) -> i64
%5800 = "vm.mul.i64"(%5799, %5798) : (i64, i64) -> i64
%5801 = "vm.mul.i64"(%5800, %5758) : (i64, i64) -> i64
%5802 = "vm.mul.i64"(%5801, %5759) : (i64, i64) -> i64
%5803 = "vm.cmp.lt.i64.s"(%5784, %438) : (i64, i64) -> i32
%5804 = "vm.select.i64"(%5803, %447, %5784) : (i32, i64, i64) -> i64
%5805 = "vm.mul.i64"(%1962, %5804) : (i64, i64) -> i64
%5806 = "vm.mul.i64"(%5805, %1764) : (i64, i64) -> i64
%5807 = "vm.const.i32.zero"() : () -> i32
%5808 = "vm.call"(%472, %5807) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5809 = "vm.const.i32.zero"() : () -> i32
%5810 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5811 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5812 = "vm.call"(%472, %460, %1739, %5808, %5809, %5810, %5811, %5806) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5813 = "vm.trunc.i64.i32"(%1765) : (i64) -> i32
%5814 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5815 = "vm.shr.i64.u"(%1765, %5814) : (i64, i32) -> i64
%5816 = "vm.trunc.i64.i32"(%5815) : (i64) -> i32
%5817 = "vm.trunc.i64.i32"(%1764) : (i64) -> i32
%5818 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5819 = "vm.shr.i64.u"(%1764, %5818) : (i64, i32) -> i64
%5820 = "vm.trunc.i64.i32"(%5819) : (i64) -> i32
%5821 = "vm.trunc.i64.i32"(%5804) : (i64) -> i32
%5822 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%5823 = "vm.shr.i64.u"(%5804, %5822) : (i64, i32) -> i64
%5824 = "vm.trunc.i64.i32"(%5823) : (i64) -> i32
%5825 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5826 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5827 = "vm.const.i32.zero"() : () -> i32
%5828 = "vm.call"(%472, %5825, %5826, %460, %5827) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5829 = "vm.cmp.lte.i64.s"(%1764, %449) : (i64, i64) -> i32
%5830 = "vm.sub.i64"(%449, %1764) : (i64, i64) -> i64
%5831 = "vm.sub.i64"(%1764, %447) : (i64, i64) -> i64
%5832 = "vm.select.i64"(%5829, %5830, %5831) : (i32, i64, i64) -> i64
%5833 = "vm.div.i64.s"(%5832, %432) : (i64, i64) -> i64
%5834 = "vm.sub.i64"(%449, %5833) : (i64, i64) -> i64
%5835 = "vm.add.i64"(%5833, %447) : (i64, i64) -> i64
%5836 = "vm.select.i64"(%5829, %5834, %5835) : (i32, i64, i64) -> i64
%5837 = "vm.const.i32.zero"() : () -> i32
%5838 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5839 = "vm.const.i32"() <{value = 40 : i32}> : () -> i32
%5840 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%5841 = "vm.trunc.i64.i32"(%5836) : (i64) -> i32
%5842 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5843 = "vm.const.i32.zero"() : () -> i32
%5844 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5828, %473, %5839, %5840, %5841, %5842, %5838, %1645, %1648, %5813, %5816, %5817, %5820, %5821, %5824, %5837, %5843, %1612, %449, %1606, %5837, %5844, %5812, %449, %5806) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5845 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5846 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5847 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5828, %5845, %5846, %5847) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5828) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5848 = "vm.const.i32.zero"() : () -> i32
%5849 = "vm.call"(%472, %5848) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5808, %5849, %5828) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5850 = "vm.cmp.lt.i64.s"(%5804, %438) : (i64, i64) -> i32
%5851 = "vm.select.i64"(%5850, %437, %5804) : (i32, i64, i64) -> i64
%5852 = "vm.select.i64"(%5850, %436, %437) : (i32, i64, i64) -> i64
%5853 = "vm.mul.i64"(%5851, %1764) : (i64, i64) -> i64
%5854 = "vm.add.i64"(%5852, %437) : (i64, i64) -> i64
%5855 = "vm.select.i64"(%1971, %5851, %5853) : (i32, i64, i64) -> i64
%5856 = "vm.select.i64"(%1971, %5854, %5852) : (i32, i64, i64) -> i64
%5857 = "vm.mul.i64"(%5855, %435) : (i64, i64) -> i64
%5858 = "vm.cmp.lte.i64.u"(%5856, %437) : (i64, i64) -> i32
%5859 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5860 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5861 = "vm.xor.i32"(%5858, %5860) : (i32, i32) -> i32
"vm.cond_fail"(%5861, %5859) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5862 = "vm.mul.i64"(%1765, %5804) : (i64, i64) -> i64
%5863 = "vm.mul.i64"(%5862, %1764) : (i64, i64) -> i64
%5864 = "vm.mul.i64"(%5863, %435) : (i64, i64) -> i64
%5865 = "vm.div.i64.s"(%5864, %5857) : (i64, i64) -> i64
%5866 = "vm.select.i64"(%5850, %5865, %5804) : (i32, i64, i64) -> i64
%5867 = "vm.select.i64"(%1971, %5865, %1764) : (i32, i64, i64) -> i64
%5868 = "vm.cmp.lt.i64.s"(%5865, %438) : (i64, i64) -> i32
%5869 = "vm.select.i64"(%5868, %437, %5865) : (i32, i64, i64) -> i64
%5870 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5871 = "vm.and.i32"(%5868, %5870) : (i32, i32) -> i32
%5872 = "vm.ext.i32.i64.u"(%5871) : (i32) -> i64
%5873 = "vm.add.i64"(%5872, %437) : (i64, i64) -> i64
%5874 = "vm.mul.i64"(%5869, %5867) : (i64, i64) -> i64
%5875 = "vm.add.i64"(%5872, %436) : (i64, i64) -> i64
%5876 = "vm.cmp.lt.i64.s"(%5867, %438) : (i64, i64) -> i32
%5877 = "vm.select.i64"(%5876, %5869, %5874) : (i32, i64, i64) -> i64
%5878 = "vm.select.i64"(%5876, %5875, %5873) : (i32, i64, i64) -> i64
%5879 = "vm.mul.i64"(%5877, %435) : (i64, i64) -> i64
%5880 = "vm.cmp.lte.i64.u"(%5878, %437) : (i64, i64) -> i32
%5881 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5882 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5883 = "vm.xor.i32"(%5880, %5882) : (i32, i32) -> i32
"vm.cond_fail"(%5883, %5881) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5884 = "vm.mul.i64"(%5865, %5866) : (i64, i64) -> i64
%5885 = "vm.mul.i64"(%5884, %5867) : (i64, i64) -> i64
%5886 = "vm.mul.i64"(%5885, %435) : (i64, i64) -> i64
%5887 = "vm.div.i64.s"(%5886, %5879) : (i64, i64) -> i64
%5888 = "vm.select.i64"(%5868, %5887, %5865) : (i32, i64, i64) -> i64
%5889 = "vm.select.i64"(%5876, %5887, %5867) : (i32, i64, i64) -> i64
%5890 = "vm.cmp.lt.i64.s"(%5888, %438) : (i64, i64) -> i32
%5891 = "vm.select.i64"(%5890, %437, %5888) : (i32, i64, i64) -> i64
%5892 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5893 = "vm.and.i32"(%5890, %5892) : (i32, i32) -> i32
%5894 = "vm.ext.i32.i64.u"(%5893) : (i32) -> i64
%5895 = "vm.mul.i64"(%5891, %5887) : (i64, i64) -> i64
%5896 = "vm.add.i64"(%5894, %437) : (i64, i64) -> i64
%5897 = "vm.cmp.lt.i64.s"(%5887, %438) : (i64, i64) -> i32
%5898 = "vm.select.i64"(%5897, %5891, %5895) : (i32, i64, i64) -> i64
%5899 = "vm.select.i64"(%5897, %5896, %5894) : (i32, i64, i64) -> i64
%5900 = "vm.add.i64"(%5899, %437) : (i64, i64) -> i64
%5901 = "vm.mul.i64"(%5898, %435) : (i64, i64) -> i64
%5902 = "vm.cmp.lte.i64.u"(%5900, %437) : (i64, i64) -> i32
%5903 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5904 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5905 = "vm.xor.i32"(%5902, %5904) : (i32, i32) -> i32
"vm.cond_fail"(%5905, %5903) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5906 = "vm.mul.i64"(%5888, %5887) : (i64, i64) -> i64
%5907 = "vm.mul.i64"(%5906, %5889) : (i64, i64) -> i64
%5908 = "vm.mul.i64"(%5907, %435) : (i64, i64) -> i64
%5909 = "vm.div.i64.s"(%5908, %5901) : (i64, i64) -> i64
%5910 = "vm.select.i64"(%5890, %5909, %5888) : (i32, i64, i64) -> i64
%5911 = "vm.select.i64"(%5897, %5909, %5887) : (i32, i64, i64) -> i64
%5912 = "vm.cmp.lt.i64.s"(%5910, %438) : (i64, i64) -> i32
%5913 = "vm.select.i64"(%5912, %437, %5910) : (i32, i64, i64) -> i64
%5914 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5915 = "vm.and.i32"(%5912, %5914) : (i32, i32) -> i32
%5916 = "vm.ext.i32.i64.u"(%5915) : (i32) -> i64
%5917 = "vm.mul.i64"(%5913, %5911) : (i64, i64) -> i64
%5918 = "vm.add.i64"(%5916, %437) : (i64, i64) -> i64
%5919 = "vm.cmp.lt.i64.s"(%5911, %438) : (i64, i64) -> i32
%5920 = "vm.select.i64"(%5919, %5913, %5917) : (i32, i64, i64) -> i64
%5921 = "vm.select.i64"(%5919, %5918, %5916) : (i32, i64, i64) -> i64
%5922 = "vm.mul.i64"(%5920, %5909) : (i64, i64) -> i64
%5923 = "vm.add.i64"(%5921, %437) : (i64, i64) -> i64
%5924 = "vm.cmp.lt.i64.s"(%5909, %438) : (i64, i64) -> i32
%5925 = "vm.select.i64"(%5924, %5920, %5922) : (i32, i64, i64) -> i64
%5926 = "vm.select.i64"(%5924, %5923, %5921) : (i32, i64, i64) -> i64
%5927 = "vm.add.i64"(%5926, %437) : (i64, i64) -> i64
%5928 = "vm.mul.i64"(%5925, %444) : (i64, i64) -> i64
%5929 = "vm.cmp.lte.i64.u"(%5927, %437) : (i64, i64) -> i32
%5930 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5931 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5932 = "vm.xor.i32"(%5929, %5931) : (i32, i32) -> i32
"vm.cond_fail"(%5932, %5930) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5933 = "vm.mul.i64"(%5910, %5911) : (i64, i64) -> i64
%5934 = "vm.mul.i64"(%5933, %5909) : (i64, i64) -> i64
%5935 = "vm.mul.i64"(%5934, %435) : (i64, i64) -> i64
%5936 = "vm.div.i64.s"(%5935, %5928) : (i64, i64) -> i64
%5937 = "vm.select.i64"(%5912, %5936, %5910) : (i32, i64, i64) -> i64
%5938 = "vm.select.i64"(%5919, %5936, %5911) : (i32, i64, i64) -> i64
%5939 = "vm.select.i64"(%5924, %5936, %5909) : (i32, i64, i64) -> i64
%5940 = "vm.const.i32.zero"() : () -> i32
%5941 = "vm.call"(%472, %5940) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%5942 = "vm.const.i32.zero"() : () -> i32
%5943 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%5944 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%5945 = "vm.call"(%472, %460, %1823, %5941, %5942, %5943, %5944, %5806) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%5946 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5947 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%5948 = "vm.const.i32.zero"() : () -> i32
%5949 = "vm.call"(%472, %5946, %5947, %460, %5948) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%5950 = "vm.const.i32.zero"() : () -> i32
%5951 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%5952 = "vm.const.i32"() <{value = 40 : i32}> : () -> i32
%5953 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%5954 = "vm.trunc.i64.i32"(%5836) : (i64) -> i32
%5955 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5956 = "vm.const.i32.zero"() : () -> i32
%5957 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%5949, %473, %5952, %5953, %5954, %5955, %5951, %407, %407, %5813, %5816, %5817, %5820, %5821, %5824, %5950, %5956, %1774, %449, %1353, %5950, %5957, %5945, %449, %5806) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%5958 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%5959 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%5960 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%5949, %5958, %5959, %5960) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%5949) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%5961 = "vm.const.i32.zero"() : () -> i32
%5962 = "vm.call"(%472, %5961) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %5941, %5962, %5949) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%5963 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5964 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5965 = "vm.xor.i32"(%5858, %5964) : (i32, i32) -> i32
"vm.cond_fail"(%5965, %5963) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5966 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5967 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5968 = "vm.xor.i32"(%5880, %5967) : (i32, i32) -> i32
"vm.cond_fail"(%5968, %5966) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5969 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5970 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5971 = "vm.xor.i32"(%5902, %5970) : (i32, i32) -> i32
"vm.cond_fail"(%5971, %5969) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5972 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%5973 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5974 = "vm.xor.i32"(%5929, %5973) : (i32, i32) -> i32
"vm.cond_fail"(%5974, %5972) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%5975 = "vm.add.i64"(%5939, %5798) : (i64, i64) -> i64
%5976 = "vm.mul.i64"(%5799, %5975) : (i64, i64) -> i64
%5977 = "vm.mul.i64"(%5976, %5758) : (i64, i64) -> i64
%5978 = "vm.mul.i64"(%5977, %5759) : (i64, i64) -> i64
%5979 = "vm.max.i64.s"(%5756, %5784) : (i64, i64) -> i64
%5980 = "vm.mul.i64"(%5761, %5758) : (i64, i64) -> i64
%5981 = "vm.mul.i64"(%5980, %5757) : (i64, i64) -> i64
%5982 = "vm.mul.i64"(%5981, %5759) : (i64, i64) -> i64
%5983 = "vm.mul.i64"(%5799, %5758) : (i64, i64) -> i64
%5984 = "vm.mul.i64"(%5983, %5759) : (i64, i64) -> i64
%5985 = "vm.mul.i64"(%5984, %5975) : (i64, i64) -> i64
%5986 = "vm.mul.i64"(%5755, %5756) : (i64, i64) -> i64
%5987 = "vm.mul.i64"(%5986, %5758) : (i64, i64) -> i64
%5988 = "vm.cmp.lt.i64.s"(%5987, %438) : (i64, i64) -> i32
%5989 = "vm.select.i64"(%5988, %437, %5987) : (i32, i64, i64) -> i64
%5990 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%5991 = "vm.and.i32"(%5988, %5990) : (i32, i32) -> i32
%5992 = "vm.ext.i32.i64.u"(%5991) : (i32) -> i64
%5993 = "vm.mul.i64"(%5989, %5757) : (i64, i64) -> i64
%5994 = "vm.add.i64"(%5992, %437) : (i64, i64) -> i64
%5995 = "vm.cmp.lt.i64.s"(%5757, %438) : (i64, i64) -> i32
%5996 = "vm.select.i64"(%5995, %5989, %5993) : (i32, i64, i64) -> i64
%5997 = "vm.select.i64"(%5995, %5994, %5992) : (i32, i64, i64) -> i64
%5998 = "vm.mul.i64"(%5996, %5759) : (i64, i64) -> i64
%5999 = "vm.add.i64"(%5997, %437) : (i64, i64) -> i64
%6000 = "vm.cmp.lt.i64.s"(%5759, %438) : (i64, i64) -> i32
%6001 = "vm.select.i64"(%6000, %5996, %5998) : (i32, i64, i64) -> i64
%6002 = "vm.select.i64"(%6000, %5999, %5997) : (i32, i64, i64) -> i64
%6003 = "vm.cmp.lte.i64.u"(%6002, %437) : (i64, i64) -> i32
%6004 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6005 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6006 = "vm.xor.i32"(%6003, %6005) : (i32, i32) -> i32
"vm.cond_fail"(%6006, %6004) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6007 = "vm.mul.i64"(%5987, %5757) : (i64, i64) -> i64
%6008 = "vm.mul.i64"(%6007, %5759) : (i64, i64) -> i64
%6009 = "vm.div.i64.s"(%6008, %6001) : (i64, i64) -> i64
%6010 = "vm.select.i64"(%5988, %6009, %5987) : (i32, i64, i64) -> i64
%6011 = "vm.select.i64"(%5995, %6009, %5757) : (i32, i64, i64) -> i64
%6012 = "vm.select.i64"(%6000, %6009, %5759) : (i32, i64, i64) -> i64
%6013 = "vm.mul.i64"(%6010, %429) : (i64, i64) -> i64
%6014 = "vm.mul.i64"(%6013, %6011) : (i64, i64) -> i64
%6015 = "vm.mul.i64"(%5755, %5784) : (i64, i64) -> i64
%6016 = "vm.mul.i64"(%6015, %5758) : (i64, i64) -> i64
%6017 = "vm.cmp.lt.i64.s"(%6016, %438) : (i64, i64) -> i32
%6018 = "vm.select.i64"(%6017, %437, %6016) : (i32, i64, i64) -> i64
%6019 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6020 = "vm.and.i32"(%6017, %6019) : (i32, i32) -> i32
%6021 = "vm.ext.i32.i64.u"(%6020) : (i32) -> i64
%6022 = "vm.mul.i64"(%6018, %5759) : (i64, i64) -> i64
%6023 = "vm.add.i64"(%6021, %437) : (i64, i64) -> i64
%6024 = "vm.select.i64"(%6000, %6018, %6022) : (i32, i64, i64) -> i64
%6025 = "vm.select.i64"(%6000, %6023, %6021) : (i32, i64, i64) -> i64
%6026 = "vm.mul.i64"(%6024, %5975) : (i64, i64) -> i64
%6027 = "vm.add.i64"(%6025, %437) : (i64, i64) -> i64
%6028 = "vm.cmp.lt.i64.s"(%5975, %438) : (i64, i64) -> i32
%6029 = "vm.select.i64"(%6028, %6024, %6026) : (i32, i64, i64) -> i64
%6030 = "vm.select.i64"(%6028, %6027, %6025) : (i32, i64, i64) -> i64
%6031 = "vm.cmp.lte.i64.u"(%6030, %437) : (i64, i64) -> i32
%6032 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6033 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6034 = "vm.xor.i32"(%6031, %6033) : (i32, i32) -> i32
"vm.cond_fail"(%6034, %6032) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6035 = "vm.mul.i64"(%6016, %5759) : (i64, i64) -> i64
%6036 = "vm.mul.i64"(%6035, %5975) : (i64, i64) -> i64
%6037 = "vm.div.i64.s"(%6036, %6029) : (i64, i64) -> i64
%6038 = "vm.select.i64"(%6017, %6037, %6016) : (i32, i64, i64) -> i64
%6039 = "vm.select.i64"(%6000, %6037, %5759) : (i32, i64, i64) -> i64
%6040 = "vm.select.i64"(%6028, %6037, %5975) : (i32, i64, i64) -> i64
%6041 = "vm.cmp.eq.i64"(%6010, %6038) : (i64, i64) -> i32
%6042 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6043 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6044 = "vm.xor.i32"(%6041, %6043) : (i32, i32) -> i32
"vm.cond_fail"(%6044, %6042) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6045 = "vm.cmp.eq.i64"(%6012, %6039) : (i64, i64) -> i32
%6046 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6047 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6048 = "vm.xor.i32"(%6045, %6047) : (i32, i32) -> i32
"vm.cond_fail"(%6048, %6046) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6049 = "vm.cmp.lte.i64.s"(%6011, %449) : (i64, i64) -> i32
%6050 = "vm.sub.i64"(%449, %6011) : (i64, i64) -> i64
%6051 = "vm.sub.i64"(%6011, %447) : (i64, i64) -> i64
%6052 = "vm.select.i64"(%6049, %6050, %6051) : (i32, i64, i64) -> i64
%6053 = "vm.div.i64.s"(%6052, %431) : (i64, i64) -> i64
%6054 = "vm.sub.i64"(%449, %6053) : (i64, i64) -> i64
%6055 = "vm.add.i64"(%6053, %447) : (i64, i64) -> i64
%6056 = "vm.select.i64"(%6049, %6054, %6055) : (i32, i64, i64) -> i64
%6057 = "vm.mul.i64"(%6010, %434) : (i64, i64) -> i64
%6058 = "vm.mul.i64"(%6057, %6056) : (i64, i64) -> i64
%6059 = "vm.mul.i64"(%6058, %6012) : (i64, i64) -> i64
%6060 = "vm.cmp.lte.i64.s"(%6040, %449) : (i64, i64) -> i32
%6061 = "vm.sub.i64"(%449, %6040) : (i64, i64) -> i64
%6062 = "vm.sub.i64"(%6040, %447) : (i64, i64) -> i64
%6063 = "vm.select.i64"(%6060, %6061, %6062) : (i32, i64, i64) -> i64
%6064 = "vm.div.i64.s"(%6063, %429) : (i64, i64) -> i64
%6065 = "vm.sub.i64"(%449, %6064) : (i64, i64) -> i64
%6066 = "vm.add.i64"(%6064, %447) : (i64, i64) -> i64
%6067 = "vm.select.i64"(%6060, %6065, %6066) : (i32, i64, i64) -> i64
%6068 = "vm.mul.i64"(%6038, %428) : (i64, i64) -> i64
%6069 = "vm.mul.i64"(%6068, %6067) : (i64, i64) -> i64
%6070 = "vm.mul.i64"(%6069, %6039) : (i64, i64) -> i64
%6071 = "vm.mul.i64"(%6010, %441) : (i64, i64) -> i64
%6072 = "vm.mul.i64"(%6071, %6056) : (i64, i64) -> i64
%6073 = "vm.mul.i64"(%6072, %6067) : (i64, i64) -> i64
%6074 = "vm.mul.i64"(%6014, %6040) : (i64, i64) -> i64
%6075 = "vm.cmp.lt.i64.s"(%5755, %438) : (i64, i64) -> i32
%6076 = "vm.select.i64"(%6075, %437, %5755) : (i32, i64, i64) -> i64
%6077 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6078 = "vm.and.i32"(%6075, %6077) : (i32, i32) -> i32
%6079 = "vm.ext.i32.i64.u"(%6078) : (i32) -> i64
%6080 = "vm.mul.i64"(%6076, %5979) : (i64, i64) -> i64
%6081 = "vm.add.i64"(%6079, %437) : (i64, i64) -> i64
%6082 = "vm.cmp.lt.i64.s"(%5979, %438) : (i64, i64) -> i32
%6083 = "vm.select.i64"(%6082, %6076, %6080) : (i32, i64, i64) -> i64
%6084 = "vm.select.i64"(%6082, %6081, %6079) : (i32, i64, i64) -> i64
%6085 = "vm.mul.i64"(%6083, %5758) : (i64, i64) -> i64
%6086 = "vm.add.i64"(%6084, %437) : (i64, i64) -> i64
%6087 = "vm.cmp.lt.i64.s"(%5758, %438) : (i64, i64) -> i32
%6088 = "vm.select.i64"(%6087, %6083, %6085) : (i32, i64, i64) -> i64
%6089 = "vm.select.i64"(%6087, %6086, %6084) : (i32, i64, i64) -> i64
%6090 = "vm.mul.i64"(%6088, %5757) : (i64, i64) -> i64
%6091 = "vm.add.i64"(%6089, %437) : (i64, i64) -> i64
%6092 = "vm.select.i64"(%5995, %6088, %6090) : (i32, i64, i64) -> i64
%6093 = "vm.select.i64"(%5995, %6091, %6089) : (i32, i64, i64) -> i64
%6094 = "vm.mul.i64"(%6092, %5975) : (i64, i64) -> i64
%6095 = "vm.add.i64"(%6093, %437) : (i64, i64) -> i64
%6096 = "vm.select.i64"(%6028, %6092, %6094) : (i32, i64, i64) -> i64
%6097 = "vm.select.i64"(%6028, %6095, %6093) : (i32, i64, i64) -> i64
%6098 = "vm.cmp.lte.i64.u"(%6097, %437) : (i64, i64) -> i32
%6099 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6100 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6101 = "vm.xor.i32"(%6098, %6100) : (i32, i32) -> i32
"vm.cond_fail"(%6101, %6099) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6102 = "vm.mul.i64"(%6010, %6011) : (i64, i64) -> i64
%6103 = "vm.mul.i64"(%6102, %6040) : (i64, i64) -> i64
%6104 = "vm.div.i64.s"(%6103, %6096) : (i64, i64) -> i64
%6105 = "vm.select.i64"(%6075, %6104, %5755) : (i32, i64, i64) -> i64
%6106 = "vm.select.i64"(%6082, %6104, %5979) : (i32, i64, i64) -> i64
%6107 = "vm.select.i64"(%6087, %6104, %5758) : (i32, i64, i64) -> i64
%6108 = "vm.select.i64"(%5995, %6104, %5757) : (i32, i64, i64) -> i64
%6109 = "vm.select.i64"(%6028, %6104, %5975) : (i32, i64, i64) -> i64
%6110 = "vm.cmp.eq.i64"(%6107, %443) : (i64, i64) -> i32
%6111 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6112 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6113 = "vm.xor.i32"(%6110, %6112) : (i32, i32) -> i32
"vm.cond_fail"(%6113, %6111) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6114 = "vm.cmp.eq.i64"(%6108, %441) : (i64, i64) -> i32
%6115 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6116 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6117 = "vm.xor.i32"(%6114, %6116) : (i32, i32) -> i32
"vm.cond_fail"(%6117, %6115) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6118 = "vm.mul.i64"(%6105, %417) : (i64, i64) -> i64
%6119 = "vm.mul.i64"(%6118, %6106) : (i64, i64) -> i64
%6120 = "vm.mul.i64"(%6119, %6109) : (i64, i64) -> i64
%6121 = "vm.max.i64.s"(%6105, %5755) : (i64, i64) -> i64
%6122 = "vm.max.i64.s"(%6106, %5784) : (i64, i64) -> i64
%6123 = "vm.max.i64.s"(%5758, %445) : (i64, i64) -> i64
%6124 = "vm.mul.i64"(%5983, %5975) : (i64, i64) -> i64
%6125 = "vm.mul.i64"(%6124, %5759) : (i64, i64) -> i64
%6126 = "vm.mul.i64"(%6105, %6106) : (i64, i64) -> i64
%6127 = "vm.mul.i64"(%6126, %445) : (i64, i64) -> i64
%6128 = "vm.cmp.lt.i64.s"(%6127, %438) : (i64, i64) -> i32
%6129 = "vm.select.i64"(%6128, %437, %6127) : (i32, i64, i64) -> i64
%6130 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6131 = "vm.and.i32"(%6128, %6130) : (i32, i32) -> i32
%6132 = "vm.ext.i32.i64.u"(%6131) : (i32) -> i64
%6133 = "vm.mul.i64"(%6129, %440) : (i64, i64) -> i64
%6134 = "vm.mul.i64"(%6133, %6109) : (i64, i64) -> i64
%6135 = "vm.add.i64"(%6132, %437) : (i64, i64) -> i64
%6136 = "vm.cmp.lt.i64.s"(%6109, %438) : (i64, i64) -> i32
%6137 = "vm.select.i64"(%6136, %6133, %6134) : (i32, i64, i64) -> i64
%6138 = "vm.select.i64"(%6136, %6135, %6132) : (i32, i64, i64) -> i64
%6139 = "vm.cmp.lte.i64.u"(%6138, %437) : (i64, i64) -> i32
%6140 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6141 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6142 = "vm.xor.i32"(%6139, %6141) : (i32, i32) -> i32
"vm.cond_fail"(%6142, %6140) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6143 = "vm.mul.i64"(%6126, %439) : (i64, i64) -> i64
%6144 = "vm.mul.i64"(%6143, %6109) : (i64, i64) -> i64
%6145 = "vm.div.i64.s"(%6144, %6137) : (i64, i64) -> i64
%6146 = "vm.select.i64"(%6128, %6145, %6127) : (i32, i64, i64) -> i64
%6147 = "vm.select.i64"(%6136, %6145, %6109) : (i32, i64, i64) -> i64
%6148 = "vm.mul.i64"(%6018, %5975) : (i64, i64) -> i64
%6149 = "vm.select.i64"(%6028, %6018, %6148) : (i32, i64, i64) -> i64
%6150 = "vm.select.i64"(%6028, %6023, %6021) : (i32, i64, i64) -> i64
%6151 = "vm.mul.i64"(%6149, %5759) : (i64, i64) -> i64
%6152 = "vm.add.i64"(%6150, %437) : (i64, i64) -> i64
%6153 = "vm.select.i64"(%6000, %6149, %6151) : (i32, i64, i64) -> i64
%6154 = "vm.select.i64"(%6000, %6152, %6150) : (i32, i64, i64) -> i64
%6155 = "vm.cmp.lte.i64.u"(%6154, %437) : (i64, i64) -> i32
%6156 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6157 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6158 = "vm.xor.i32"(%6155, %6157) : (i32, i32) -> i32
"vm.cond_fail"(%6158, %6156) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6159 = "vm.mul.i64"(%6016, %5975) : (i64, i64) -> i64
%6160 = "vm.mul.i64"(%6159, %5759) : (i64, i64) -> i64
%6161 = "vm.div.i64.s"(%6160, %6153) : (i64, i64) -> i64
%6162 = "vm.select.i64"(%6017, %6161, %6016) : (i32, i64, i64) -> i64
%6163 = "vm.select.i64"(%6028, %6161, %5975) : (i32, i64, i64) -> i64
%6164 = "vm.select.i64"(%6000, %6161, %5759) : (i32, i64, i64) -> i64
%6165 = "vm.cmp.eq.i64"(%6146, %6162) : (i64, i64) -> i32
%6166 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6167 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6168 = "vm.xor.i32"(%6165, %6167) : (i32, i32) -> i32
"vm.cond_fail"(%6168, %6166) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6169 = "vm.cmp.eq.i64"(%6147, %6163) : (i64, i64) -> i32
%6170 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6171 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6172 = "vm.xor.i32"(%6169, %6171) : (i32, i32) -> i32
"vm.cond_fail"(%6172, %6170) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6173 = "vm.mul.i64"(%6146, %416) : (i64, i64) -> i64
%6174 = "vm.mul.i64"(%6173, %6147) : (i64, i64) -> i64
%6175 = "vm.cmp.lte.i64.s"(%6164, %449) : (i64, i64) -> i32
%6176 = "vm.sub.i64"(%449, %6164) : (i64, i64) -> i64
%6177 = "vm.sub.i64"(%6164, %447) : (i64, i64) -> i64
%6178 = "vm.select.i64"(%6175, %6176, %6177) : (i32, i64, i64) -> i64
%6179 = "vm.div.i64.s"(%6178, %429) : (i64, i64) -> i64
%6180 = "vm.sub.i64"(%449, %6179) : (i64, i64) -> i64
%6181 = "vm.add.i64"(%6179, %447) : (i64, i64) -> i64
%6182 = "vm.select.i64"(%6175, %6180, %6181) : (i32, i64, i64) -> i64
%6183 = "vm.mul.i64"(%6162, %428) : (i64, i64) -> i64
%6184 = "vm.mul.i64"(%6183, %6182) : (i64, i64) -> i64
%6185 = "vm.mul.i64"(%6184, %6163) : (i64, i64) -> i64
%6186 = "vm.mul.i64"(%6146, %415) : (i64, i64) -> i64
%6187 = "vm.mul.i64"(%6186, %6182) : (i64, i64) -> i64
%6188 = "vm.mul.i64"(%6173, %6164) : (i64, i64) -> i64
%6189 = "vm.cmp.lt.i64.s"(%6121, %438) : (i64, i64) -> i32
%6190 = "vm.select.i64"(%6189, %437, %6121) : (i32, i64, i64) -> i64
%6191 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6192 = "vm.and.i32"(%6189, %6191) : (i32, i32) -> i32
%6193 = "vm.ext.i32.i64.u"(%6192) : (i32) -> i64
%6194 = "vm.mul.i64"(%6190, %6122) : (i64, i64) -> i64
%6195 = "vm.add.i64"(%6193, %437) : (i64, i64) -> i64
%6196 = "vm.cmp.lt.i64.s"(%6122, %438) : (i64, i64) -> i32
%6197 = "vm.select.i64"(%6196, %6190, %6194) : (i32, i64, i64) -> i64
%6198 = "vm.select.i64"(%6196, %6195, %6193) : (i32, i64, i64) -> i64
%6199 = "vm.mul.i64"(%6197, %6123) : (i64, i64) -> i64
%6200 = "vm.add.i64"(%6198, %437) : (i64, i64) -> i64
%6201 = "vm.cmp.lt.i64.u"(%6123, %438) : (i64, i64) -> i32
%6202 = "vm.select.i64"(%6201, %6197, %6199) : (i32, i64, i64) -> i64
%6203 = "vm.select.i64"(%6201, %6200, %6198) : (i32, i64, i64) -> i64
%6204 = "vm.mul.i64"(%6202, %440) : (i64, i64) -> i64
%6205 = "vm.mul.i64"(%6204, %5759) : (i64, i64) -> i64
%6206 = "vm.add.i64"(%6203, %437) : (i64, i64) -> i64
%6207 = "vm.select.i64"(%6000, %6204, %6205) : (i32, i64, i64) -> i64
%6208 = "vm.select.i64"(%6000, %6206, %6203) : (i32, i64, i64) -> i64
%6209 = "vm.cmp.lte.i64.u"(%6208, %437) : (i64, i64) -> i32
%6210 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6211 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6212 = "vm.xor.i32"(%6209, %6211) : (i32, i32) -> i32
"vm.cond_fail"(%6212, %6210) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6213 = "vm.mul.i64"(%6146, %440) : (i64, i64) -> i64
%6214 = "vm.mul.i64"(%6213, %6164) : (i64, i64) -> i64
%6215 = "vm.div.i64.s"(%6214, %6207) : (i64, i64) -> i64
%6216 = "vm.select.i64"(%6189, %6215, %6121) : (i32, i64, i64) -> i64
%6217 = "vm.select.i64"(%6196, %6215, %6122) : (i32, i64, i64) -> i64
%6218 = "vm.select.i64"(%6201, %6215, %6123) : (i32, i64, i64) -> i64
%6219 = "vm.select.i64"(%6000, %6215, %5759) : (i32, i64, i64) -> i64
%6220 = "vm.mul.i64"(%6216, %416) : (i64, i64) -> i64
%6221 = "vm.mul.i64"(%6220, %6217) : (i64, i64) -> i64
%6222 = "vm.mul.i64"(%6221, %6218) : (i64, i64) -> i64
%6223 = "vm.mul.i64"(%6222, %6219) : (i64, i64) -> i64
%6224 = "vm.mul.i64"(%6216, %6217) : (i64, i64) -> i64
%6225 = "vm.mul.i64"(%6224, %440) : (i64, i64) -> i64
%6226 = "vm.mul.i64"(%6225, %6218) : (i64, i64) -> i64
%6227 = "vm.mul.i64"(%6226, %6219) : (i64, i64) -> i64
%6228 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6229 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6230 = "vm.xor.i32"(%5750, %6229) : (i32, i32) -> i32
"vm.cond_fail"(%6230, %6228) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6231 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6232 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6233 = "vm.xor.i32"(%5750, %6232) : (i32, i32) -> i32
"vm.cond_fail"(%6233, %6231) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6234 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6235 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6236 = "vm.xor.i32"(%5750, %6235) : (i32, i32) -> i32
"vm.cond_fail"(%6236, %6234) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6237 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6238 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6239 = "vm.xor.i32"(%5858, %6238) : (i32, i32) -> i32
"vm.cond_fail"(%6239, %6237) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6240 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6241 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6242 = "vm.xor.i32"(%5880, %6241) : (i32, i32) -> i32
"vm.cond_fail"(%6242, %6240) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6243 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6244 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6245 = "vm.xor.i32"(%5902, %6244) : (i32, i32) -> i32
"vm.cond_fail"(%6245, %6243) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6246 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6247 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6248 = "vm.xor.i32"(%5929, %6247) : (i32, i32) -> i32
"vm.cond_fail"(%6248, %6246) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6249 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6250 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6251 = "vm.xor.i32"(%5858, %6250) : (i32, i32) -> i32
"vm.cond_fail"(%6251, %6249) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6252 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6253 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6254 = "vm.xor.i32"(%5880, %6253) : (i32, i32) -> i32
"vm.cond_fail"(%6254, %6252) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6255 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6256 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6257 = "vm.xor.i32"(%5902, %6256) : (i32, i32) -> i32
"vm.cond_fail"(%6257, %6255) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6258 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6259 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6260 = "vm.xor.i32"(%5929, %6259) : (i32, i32) -> i32
"vm.cond_fail"(%6260, %6258) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6261 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6262 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6263 = "vm.xor.i32"(%6003, %6262) : (i32, i32) -> i32
"vm.cond_fail"(%6263, %6261) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6264 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6265 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6266 = "vm.xor.i32"(%6031, %6265) : (i32, i32) -> i32
"vm.cond_fail"(%6266, %6264) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6267 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6268 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6269 = "vm.xor.i32"(%6041, %6268) : (i32, i32) -> i32
"vm.cond_fail"(%6269, %6267) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6270 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6271 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6272 = "vm.xor.i32"(%6045, %6271) : (i32, i32) -> i32
"vm.cond_fail"(%6272, %6270) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6273 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6274 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6275 = "vm.xor.i32"(%6098, %6274) : (i32, i32) -> i32
"vm.cond_fail"(%6275, %6273) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6276 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6277 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6278 = "vm.xor.i32"(%6110, %6277) : (i32, i32) -> i32
"vm.cond_fail"(%6278, %6276) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6279 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6280 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6281 = "vm.xor.i32"(%6114, %6280) : (i32, i32) -> i32
"vm.cond_fail"(%6281, %6279) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6282 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6283 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6284 = "vm.xor.i32"(%6139, %6283) : (i32, i32) -> i32
"vm.cond_fail"(%6284, %6282) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6285 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6286 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6287 = "vm.xor.i32"(%6155, %6286) : (i32, i32) -> i32
"vm.cond_fail"(%6287, %6285) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6288 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6289 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6290 = "vm.xor.i32"(%6165, %6289) : (i32, i32) -> i32
"vm.cond_fail"(%6290, %6288) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6291 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6292 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6293 = "vm.xor.i32"(%6169, %6292) : (i32, i32) -> i32
"vm.cond_fail"(%6293, %6291) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6294 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6295 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6296 = "vm.xor.i32"(%6209, %6295) : (i32, i32) -> i32
"vm.cond_fail"(%6296, %6294) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6297 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6298 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6299 = "vm.xor.i32"(%5750, %6298) : (i32, i32) -> i32
"vm.cond_fail"(%6299, %6297) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6300 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6301 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6302 = "vm.xor.i32"(%5750, %6301) : (i32, i32) -> i32
"vm.cond_fail"(%6302, %6300) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6303 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6304 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6305 = "vm.xor.i32"(%5750, %6304) : (i32, i32) -> i32
"vm.cond_fail"(%6305, %6303) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6306 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6307 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6308 = "vm.xor.i32"(%5858, %6307) : (i32, i32) -> i32
"vm.cond_fail"(%6308, %6306) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6309 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6310 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6311 = "vm.xor.i32"(%5880, %6310) : (i32, i32) -> i32
"vm.cond_fail"(%6311, %6309) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6312 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6313 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6314 = "vm.xor.i32"(%5902, %6313) : (i32, i32) -> i32
"vm.cond_fail"(%6314, %6312) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6315 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6316 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6317 = "vm.xor.i32"(%5929, %6316) : (i32, i32) -> i32
"vm.cond_fail"(%6317, %6315) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6318 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6319 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6320 = "vm.xor.i32"(%5858, %6319) : (i32, i32) -> i32
"vm.cond_fail"(%6320, %6318) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6321 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6322 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6323 = "vm.xor.i32"(%5880, %6322) : (i32, i32) -> i32
"vm.cond_fail"(%6323, %6321) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6324 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6325 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6326 = "vm.xor.i32"(%5902, %6325) : (i32, i32) -> i32
"vm.cond_fail"(%6326, %6324) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6327 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6328 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6329 = "vm.xor.i32"(%5929, %6328) : (i32, i32) -> i32
"vm.cond_fail"(%6329, %6327) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6330 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6331 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6332 = "vm.xor.i32"(%6003, %6331) : (i32, i32) -> i32
"vm.cond_fail"(%6332, %6330) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6333 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6334 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6335 = "vm.xor.i32"(%6031, %6334) : (i32, i32) -> i32
"vm.cond_fail"(%6335, %6333) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6336 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6337 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6338 = "vm.xor.i32"(%6041, %6337) : (i32, i32) -> i32
"vm.cond_fail"(%6338, %6336) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6339 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6340 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6341 = "vm.xor.i32"(%6045, %6340) : (i32, i32) -> i32
"vm.cond_fail"(%6341, %6339) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6342 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6343 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6344 = "vm.xor.i32"(%6098, %6343) : (i32, i32) -> i32
"vm.cond_fail"(%6344, %6342) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6345 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6346 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6347 = "vm.xor.i32"(%6110, %6346) : (i32, i32) -> i32
"vm.cond_fail"(%6347, %6345) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6348 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6349 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6350 = "vm.xor.i32"(%6114, %6349) : (i32, i32) -> i32
"vm.cond_fail"(%6350, %6348) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6351 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6352 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6353 = "vm.xor.i32"(%6139, %6352) : (i32, i32) -> i32
"vm.cond_fail"(%6353, %6351) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6354 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6355 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6356 = "vm.xor.i32"(%6155, %6355) : (i32, i32) -> i32
"vm.cond_fail"(%6356, %6354) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6357 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6358 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6359 = "vm.xor.i32"(%6165, %6358) : (i32, i32) -> i32
"vm.cond_fail"(%6359, %6357) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6360 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6361 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6362 = "vm.xor.i32"(%6169, %6361) : (i32, i32) -> i32
"vm.cond_fail"(%6362, %6360) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6363 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6364 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6365 = "vm.xor.i32"(%6209, %6364) : (i32, i32) -> i32
"vm.cond_fail"(%6365, %6363) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6366 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6367 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6368 = "vm.xor.i32"(%5750, %6367) : (i32, i32) -> i32
"vm.cond_fail"(%6368, %6366) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6369 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6370 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6371 = "vm.xor.i32"(%5750, %6370) : (i32, i32) -> i32
"vm.cond_fail"(%6371, %6369) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6372 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6373 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6374 = "vm.xor.i32"(%5750, %6373) : (i32, i32) -> i32
"vm.cond_fail"(%6374, %6372) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6375 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6376 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6377 = "vm.xor.i32"(%5858, %6376) : (i32, i32) -> i32
"vm.cond_fail"(%6377, %6375) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6378 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6379 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6380 = "vm.xor.i32"(%5880, %6379) : (i32, i32) -> i32
"vm.cond_fail"(%6380, %6378) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6381 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6382 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6383 = "vm.xor.i32"(%5902, %6382) : (i32, i32) -> i32
"vm.cond_fail"(%6383, %6381) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6384 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6385 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6386 = "vm.xor.i32"(%5929, %6385) : (i32, i32) -> i32
"vm.cond_fail"(%6386, %6384) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6387 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6388 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6389 = "vm.xor.i32"(%5858, %6388) : (i32, i32) -> i32
"vm.cond_fail"(%6389, %6387) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6390 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6391 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6392 = "vm.xor.i32"(%5880, %6391) : (i32, i32) -> i32
"vm.cond_fail"(%6392, %6390) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6393 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6394 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6395 = "vm.xor.i32"(%5902, %6394) : (i32, i32) -> i32
"vm.cond_fail"(%6395, %6393) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6396 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6397 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6398 = "vm.xor.i32"(%5929, %6397) : (i32, i32) -> i32
"vm.cond_fail"(%6398, %6396) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6399 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6400 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6401 = "vm.xor.i32"(%6003, %6400) : (i32, i32) -> i32
"vm.cond_fail"(%6401, %6399) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6402 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6403 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6404 = "vm.xor.i32"(%6031, %6403) : (i32, i32) -> i32
"vm.cond_fail"(%6404, %6402) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6405 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6406 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6407 = "vm.xor.i32"(%6041, %6406) : (i32, i32) -> i32
"vm.cond_fail"(%6407, %6405) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6408 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6409 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6410 = "vm.xor.i32"(%6045, %6409) : (i32, i32) -> i32
"vm.cond_fail"(%6410, %6408) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6411 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6412 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6413 = "vm.xor.i32"(%6098, %6412) : (i32, i32) -> i32
"vm.cond_fail"(%6413, %6411) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6414 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6415 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6416 = "vm.xor.i32"(%6110, %6415) : (i32, i32) -> i32
"vm.cond_fail"(%6416, %6414) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6417 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6418 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6419 = "vm.xor.i32"(%6114, %6418) : (i32, i32) -> i32
"vm.cond_fail"(%6419, %6417) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6420 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6421 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6422 = "vm.xor.i32"(%6139, %6421) : (i32, i32) -> i32
"vm.cond_fail"(%6422, %6420) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6423 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6424 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6425 = "vm.xor.i32"(%6155, %6424) : (i32, i32) -> i32
"vm.cond_fail"(%6425, %6423) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6426 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6427 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6428 = "vm.xor.i32"(%6165, %6427) : (i32, i32) -> i32
"vm.cond_fail"(%6428, %6426) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6429 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6430 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6431 = "vm.xor.i32"(%6169, %6430) : (i32, i32) -> i32
"vm.cond_fail"(%6431, %6429) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6432 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6433 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6434 = "vm.xor.i32"(%6209, %6433) : (i32, i32) -> i32
"vm.cond_fail"(%6434, %6432) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6435 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6436 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6437 = "vm.xor.i32"(%5750, %6436) : (i32, i32) -> i32
"vm.cond_fail"(%6437, %6435) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6438 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6439 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6440 = "vm.xor.i32"(%5750, %6439) : (i32, i32) -> i32
"vm.cond_fail"(%6440, %6438) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6441 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6442 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6443 = "vm.xor.i32"(%5750, %6442) : (i32, i32) -> i32
"vm.cond_fail"(%6443, %6441) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6444 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6445 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6446 = "vm.xor.i32"(%5858, %6445) : (i32, i32) -> i32
"vm.cond_fail"(%6446, %6444) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6447 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6448 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6449 = "vm.xor.i32"(%5880, %6448) : (i32, i32) -> i32
"vm.cond_fail"(%6449, %6447) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6450 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6451 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6452 = "vm.xor.i32"(%5902, %6451) : (i32, i32) -> i32
"vm.cond_fail"(%6452, %6450) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6453 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6454 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6455 = "vm.xor.i32"(%5929, %6454) : (i32, i32) -> i32
"vm.cond_fail"(%6455, %6453) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6456 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6457 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6458 = "vm.xor.i32"(%5858, %6457) : (i32, i32) -> i32
"vm.cond_fail"(%6458, %6456) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6459 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6460 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6461 = "vm.xor.i32"(%5880, %6460) : (i32, i32) -> i32
"vm.cond_fail"(%6461, %6459) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6462 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6463 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6464 = "vm.xor.i32"(%5902, %6463) : (i32, i32) -> i32
"vm.cond_fail"(%6464, %6462) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6465 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6466 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6467 = "vm.xor.i32"(%5929, %6466) : (i32, i32) -> i32
"vm.cond_fail"(%6467, %6465) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6468 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6469 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6470 = "vm.xor.i32"(%6003, %6469) : (i32, i32) -> i32
"vm.cond_fail"(%6470, %6468) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6471 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6472 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6473 = "vm.xor.i32"(%6031, %6472) : (i32, i32) -> i32
"vm.cond_fail"(%6473, %6471) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6474 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6475 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6476 = "vm.xor.i32"(%6041, %6475) : (i32, i32) -> i32
"vm.cond_fail"(%6476, %6474) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6477 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6478 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6479 = "vm.xor.i32"(%6045, %6478) : (i32, i32) -> i32
"vm.cond_fail"(%6479, %6477) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6480 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6481 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6482 = "vm.xor.i32"(%6098, %6481) : (i32, i32) -> i32
"vm.cond_fail"(%6482, %6480) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6483 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6484 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6485 = "vm.xor.i32"(%6110, %6484) : (i32, i32) -> i32
"vm.cond_fail"(%6485, %6483) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6486 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6487 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6488 = "vm.xor.i32"(%6114, %6487) : (i32, i32) -> i32
"vm.cond_fail"(%6488, %6486) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6489 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6490 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6491 = "vm.xor.i32"(%6139, %6490) : (i32, i32) -> i32
"vm.cond_fail"(%6491, %6489) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6492 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6493 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6494 = "vm.xor.i32"(%6155, %6493) : (i32, i32) -> i32
"vm.cond_fail"(%6494, %6492) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6495 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6496 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6497 = "vm.xor.i32"(%6165, %6496) : (i32, i32) -> i32
"vm.cond_fail"(%6497, %6495) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6498 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6499 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6500 = "vm.xor.i32"(%6169, %6499) : (i32, i32) -> i32
"vm.cond_fail"(%6500, %6498) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6501 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6502 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6503 = "vm.xor.i32"(%6209, %6502) : (i32, i32) -> i32
"vm.cond_fail"(%6503, %6501) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6504 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6505 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6506 = "vm.xor.i32"(%5750, %6505) : (i32, i32) -> i32
"vm.cond_fail"(%6506, %6504) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6507 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6508 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6509 = "vm.xor.i32"(%5750, %6508) : (i32, i32) -> i32
"vm.cond_fail"(%6509, %6507) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6510 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6511 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6512 = "vm.xor.i32"(%5750, %6511) : (i32, i32) -> i32
"vm.cond_fail"(%6512, %6510) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6513 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6514 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6515 = "vm.xor.i32"(%5858, %6514) : (i32, i32) -> i32
"vm.cond_fail"(%6515, %6513) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6516 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6517 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6518 = "vm.xor.i32"(%5880, %6517) : (i32, i32) -> i32
"vm.cond_fail"(%6518, %6516) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6519 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6520 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6521 = "vm.xor.i32"(%5902, %6520) : (i32, i32) -> i32
"vm.cond_fail"(%6521, %6519) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6522 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6523 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6524 = "vm.xor.i32"(%5929, %6523) : (i32, i32) -> i32
"vm.cond_fail"(%6524, %6522) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6525 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6526 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6527 = "vm.xor.i32"(%5858, %6526) : (i32, i32) -> i32
"vm.cond_fail"(%6527, %6525) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6528 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6529 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6530 = "vm.xor.i32"(%5880, %6529) : (i32, i32) -> i32
"vm.cond_fail"(%6530, %6528) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6531 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6532 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6533 = "vm.xor.i32"(%5902, %6532) : (i32, i32) -> i32
"vm.cond_fail"(%6533, %6531) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6534 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6535 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6536 = "vm.xor.i32"(%5929, %6535) : (i32, i32) -> i32
"vm.cond_fail"(%6536, %6534) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6537 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6538 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6539 = "vm.xor.i32"(%6003, %6538) : (i32, i32) -> i32
"vm.cond_fail"(%6539, %6537) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6540 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6541 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6542 = "vm.xor.i32"(%6031, %6541) : (i32, i32) -> i32
"vm.cond_fail"(%6542, %6540) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6543 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6544 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6545 = "vm.xor.i32"(%6041, %6544) : (i32, i32) -> i32
"vm.cond_fail"(%6545, %6543) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6546 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6547 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6548 = "vm.xor.i32"(%6045, %6547) : (i32, i32) -> i32
"vm.cond_fail"(%6548, %6546) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6549 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6550 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6551 = "vm.xor.i32"(%6098, %6550) : (i32, i32) -> i32
"vm.cond_fail"(%6551, %6549) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6552 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6553 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6554 = "vm.xor.i32"(%6110, %6553) : (i32, i32) -> i32
"vm.cond_fail"(%6554, %6552) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6555 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6556 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6557 = "vm.xor.i32"(%6114, %6556) : (i32, i32) -> i32
"vm.cond_fail"(%6557, %6555) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6558 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6559 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6560 = "vm.xor.i32"(%6139, %6559) : (i32, i32) -> i32
"vm.cond_fail"(%6560, %6558) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6561 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6562 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6563 = "vm.xor.i32"(%6155, %6562) : (i32, i32) -> i32
"vm.cond_fail"(%6563, %6561) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6564 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6565 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6566 = "vm.xor.i32"(%6165, %6565) : (i32, i32) -> i32
"vm.cond_fail"(%6566, %6564) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6567 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6568 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6569 = "vm.xor.i32"(%6169, %6568) : (i32, i32) -> i32
"vm.cond_fail"(%6569, %6567) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6570 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6571 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6572 = "vm.xor.i32"(%6209, %6571) : (i32, i32) -> i32
"vm.cond_fail"(%6572, %6570) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6573 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6574 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6575 = "vm.xor.i32"(%5750, %6574) : (i32, i32) -> i32
"vm.cond_fail"(%6575, %6573) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6576 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6577 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6578 = "vm.xor.i32"(%5750, %6577) : (i32, i32) -> i32
"vm.cond_fail"(%6578, %6576) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6579 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6580 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6581 = "vm.xor.i32"(%5750, %6580) : (i32, i32) -> i32
"vm.cond_fail"(%6581, %6579) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6582 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6583 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6584 = "vm.xor.i32"(%5858, %6583) : (i32, i32) -> i32
"vm.cond_fail"(%6584, %6582) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6585 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6586 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6587 = "vm.xor.i32"(%5880, %6586) : (i32, i32) -> i32
"vm.cond_fail"(%6587, %6585) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6588 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6589 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6590 = "vm.xor.i32"(%5902, %6589) : (i32, i32) -> i32
"vm.cond_fail"(%6590, %6588) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6591 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6592 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6593 = "vm.xor.i32"(%5929, %6592) : (i32, i32) -> i32
"vm.cond_fail"(%6593, %6591) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6594 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6595 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6596 = "vm.xor.i32"(%5858, %6595) : (i32, i32) -> i32
"vm.cond_fail"(%6596, %6594) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6597 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6598 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6599 = "vm.xor.i32"(%5880, %6598) : (i32, i32) -> i32
"vm.cond_fail"(%6599, %6597) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6600 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6601 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6602 = "vm.xor.i32"(%5902, %6601) : (i32, i32) -> i32
"vm.cond_fail"(%6602, %6600) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6603 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6604 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6605 = "vm.xor.i32"(%5929, %6604) : (i32, i32) -> i32
"vm.cond_fail"(%6605, %6603) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6606 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6607 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6608 = "vm.xor.i32"(%6003, %6607) : (i32, i32) -> i32
"vm.cond_fail"(%6608, %6606) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6609 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6610 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6611 = "vm.xor.i32"(%6031, %6610) : (i32, i32) -> i32
"vm.cond_fail"(%6611, %6609) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6612 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6613 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6614 = "vm.xor.i32"(%6041, %6613) : (i32, i32) -> i32
"vm.cond_fail"(%6614, %6612) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6615 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6616 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6617 = "vm.xor.i32"(%6045, %6616) : (i32, i32) -> i32
"vm.cond_fail"(%6617, %6615) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6618 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6619 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6620 = "vm.xor.i32"(%6098, %6619) : (i32, i32) -> i32
"vm.cond_fail"(%6620, %6618) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6621 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6622 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6623 = "vm.xor.i32"(%6110, %6622) : (i32, i32) -> i32
"vm.cond_fail"(%6623, %6621) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6624 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6625 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6626 = "vm.xor.i32"(%6114, %6625) : (i32, i32) -> i32
"vm.cond_fail"(%6626, %6624) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6627 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6628 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6629 = "vm.xor.i32"(%6139, %6628) : (i32, i32) -> i32
"vm.cond_fail"(%6629, %6627) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6630 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6631 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6632 = "vm.xor.i32"(%6155, %6631) : (i32, i32) -> i32
"vm.cond_fail"(%6632, %6630) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6633 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6634 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6635 = "vm.xor.i32"(%6165, %6634) : (i32, i32) -> i32
"vm.cond_fail"(%6635, %6633) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6636 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6637 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6638 = "vm.xor.i32"(%6169, %6637) : (i32, i32) -> i32
"vm.cond_fail"(%6638, %6636) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6639 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6640 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6641 = "vm.xor.i32"(%6209, %6640) : (i32, i32) -> i32
"vm.cond_fail"(%6641, %6639) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6642 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6643 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6644 = "vm.xor.i32"(%5750, %6643) : (i32, i32) -> i32
"vm.cond_fail"(%6644, %6642) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6645 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6646 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6647 = "vm.xor.i32"(%5750, %6646) : (i32, i32) -> i32
"vm.cond_fail"(%6647, %6645) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6648 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6649 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6650 = "vm.xor.i32"(%5750, %6649) : (i32, i32) -> i32
"vm.cond_fail"(%6650, %6648) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6651 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6652 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6653 = "vm.xor.i32"(%5858, %6652) : (i32, i32) -> i32
"vm.cond_fail"(%6653, %6651) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6654 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6655 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6656 = "vm.xor.i32"(%5880, %6655) : (i32, i32) -> i32
"vm.cond_fail"(%6656, %6654) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6657 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6658 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6659 = "vm.xor.i32"(%5902, %6658) : (i32, i32) -> i32
"vm.cond_fail"(%6659, %6657) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6660 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6661 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6662 = "vm.xor.i32"(%5929, %6661) : (i32, i32) -> i32
"vm.cond_fail"(%6662, %6660) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6663 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6664 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6665 = "vm.xor.i32"(%5858, %6664) : (i32, i32) -> i32
"vm.cond_fail"(%6665, %6663) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6666 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6667 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6668 = "vm.xor.i32"(%5880, %6667) : (i32, i32) -> i32
"vm.cond_fail"(%6668, %6666) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6669 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6670 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6671 = "vm.xor.i32"(%5902, %6670) : (i32, i32) -> i32
"vm.cond_fail"(%6671, %6669) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6672 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6673 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6674 = "vm.xor.i32"(%5929, %6673) : (i32, i32) -> i32
"vm.cond_fail"(%6674, %6672) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6675 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6676 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6677 = "vm.xor.i32"(%6003, %6676) : (i32, i32) -> i32
"vm.cond_fail"(%6677, %6675) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6678 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6679 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6680 = "vm.xor.i32"(%6031, %6679) : (i32, i32) -> i32
"vm.cond_fail"(%6680, %6678) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6681 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6682 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6683 = "vm.xor.i32"(%6041, %6682) : (i32, i32) -> i32
"vm.cond_fail"(%6683, %6681) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6684 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6685 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6686 = "vm.xor.i32"(%6045, %6685) : (i32, i32) -> i32
"vm.cond_fail"(%6686, %6684) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6687 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6688 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6689 = "vm.xor.i32"(%6098, %6688) : (i32, i32) -> i32
"vm.cond_fail"(%6689, %6687) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6690 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6691 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6692 = "vm.xor.i32"(%6110, %6691) : (i32, i32) -> i32
"vm.cond_fail"(%6692, %6690) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6693 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6694 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6695 = "vm.xor.i32"(%6114, %6694) : (i32, i32) -> i32
"vm.cond_fail"(%6695, %6693) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6696 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6697 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6698 = "vm.xor.i32"(%6139, %6697) : (i32, i32) -> i32
"vm.cond_fail"(%6698, %6696) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6699 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6700 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6701 = "vm.xor.i32"(%6155, %6700) : (i32, i32) -> i32
"vm.cond_fail"(%6701, %6699) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6702 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6703 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6704 = "vm.xor.i32"(%6165, %6703) : (i32, i32) -> i32
"vm.cond_fail"(%6704, %6702) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6705 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6706 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6707 = "vm.xor.i32"(%6169, %6706) : (i32, i32) -> i32
"vm.cond_fail"(%6707, %6705) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6708 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6709 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6710 = "vm.xor.i32"(%6209, %6709) : (i32, i32) -> i32
"vm.cond_fail"(%6710, %6708) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6711 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6712 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6713 = "vm.xor.i32"(%5750, %6712) : (i32, i32) -> i32
"vm.cond_fail"(%6713, %6711) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6714 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6715 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6716 = "vm.xor.i32"(%5750, %6715) : (i32, i32) -> i32
"vm.cond_fail"(%6716, %6714) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6717 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6718 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6719 = "vm.xor.i32"(%5750, %6718) : (i32, i32) -> i32
"vm.cond_fail"(%6719, %6717) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6720 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6721 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6722 = "vm.xor.i32"(%5858, %6721) : (i32, i32) -> i32
"vm.cond_fail"(%6722, %6720) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6723 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6724 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6725 = "vm.xor.i32"(%5880, %6724) : (i32, i32) -> i32
"vm.cond_fail"(%6725, %6723) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6726 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6727 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6728 = "vm.xor.i32"(%5902, %6727) : (i32, i32) -> i32
"vm.cond_fail"(%6728, %6726) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6729 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6730 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6731 = "vm.xor.i32"(%5929, %6730) : (i32, i32) -> i32
"vm.cond_fail"(%6731, %6729) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6732 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6733 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6734 = "vm.xor.i32"(%5858, %6733) : (i32, i32) -> i32
"vm.cond_fail"(%6734, %6732) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6735 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6736 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6737 = "vm.xor.i32"(%5880, %6736) : (i32, i32) -> i32
"vm.cond_fail"(%6737, %6735) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6738 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6739 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6740 = "vm.xor.i32"(%5902, %6739) : (i32, i32) -> i32
"vm.cond_fail"(%6740, %6738) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6741 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6742 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6743 = "vm.xor.i32"(%5929, %6742) : (i32, i32) -> i32
"vm.cond_fail"(%6743, %6741) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6744 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6745 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6746 = "vm.xor.i32"(%6003, %6745) : (i32, i32) -> i32
"vm.cond_fail"(%6746, %6744) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6747 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6748 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6749 = "vm.xor.i32"(%6031, %6748) : (i32, i32) -> i32
"vm.cond_fail"(%6749, %6747) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6750 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6751 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6752 = "vm.xor.i32"(%6041, %6751) : (i32, i32) -> i32
"vm.cond_fail"(%6752, %6750) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6753 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6754 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6755 = "vm.xor.i32"(%6045, %6754) : (i32, i32) -> i32
"vm.cond_fail"(%6755, %6753) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6756 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6757 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6758 = "vm.xor.i32"(%6098, %6757) : (i32, i32) -> i32
"vm.cond_fail"(%6758, %6756) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6759 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6760 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6761 = "vm.xor.i32"(%6110, %6760) : (i32, i32) -> i32
"vm.cond_fail"(%6761, %6759) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6762 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6763 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6764 = "vm.xor.i32"(%6114, %6763) : (i32, i32) -> i32
"vm.cond_fail"(%6764, %6762) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6765 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6766 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6767 = "vm.xor.i32"(%6139, %6766) : (i32, i32) -> i32
"vm.cond_fail"(%6767, %6765) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6768 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6769 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6770 = "vm.xor.i32"(%6155, %6769) : (i32, i32) -> i32
"vm.cond_fail"(%6770, %6768) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6771 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6772 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6773 = "vm.xor.i32"(%6165, %6772) : (i32, i32) -> i32
"vm.cond_fail"(%6773, %6771) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6774 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6775 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6776 = "vm.xor.i32"(%6169, %6775) : (i32, i32) -> i32
"vm.cond_fail"(%6776, %6774) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6777 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6778 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6779 = "vm.xor.i32"(%6209, %6778) : (i32, i32) -> i32
"vm.cond_fail"(%6779, %6777) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6780 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6781 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6782 = "vm.xor.i32"(%5750, %6781) : (i32, i32) -> i32
"vm.cond_fail"(%6782, %6780) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6783 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6784 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6785 = "vm.xor.i32"(%5750, %6784) : (i32, i32) -> i32
"vm.cond_fail"(%6785, %6783) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6786 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6787 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6788 = "vm.xor.i32"(%5750, %6787) : (i32, i32) -> i32
"vm.cond_fail"(%6788, %6786) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6789 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6790 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6791 = "vm.xor.i32"(%5858, %6790) : (i32, i32) -> i32
"vm.cond_fail"(%6791, %6789) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6792 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6793 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6794 = "vm.xor.i32"(%5880, %6793) : (i32, i32) -> i32
"vm.cond_fail"(%6794, %6792) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6795 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6796 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6797 = "vm.xor.i32"(%5902, %6796) : (i32, i32) -> i32
"vm.cond_fail"(%6797, %6795) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6798 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6799 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6800 = "vm.xor.i32"(%5929, %6799) : (i32, i32) -> i32
"vm.cond_fail"(%6800, %6798) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6801 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6802 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6803 = "vm.xor.i32"(%5858, %6802) : (i32, i32) -> i32
"vm.cond_fail"(%6803, %6801) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6804 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6805 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6806 = "vm.xor.i32"(%5880, %6805) : (i32, i32) -> i32
"vm.cond_fail"(%6806, %6804) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6807 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6808 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6809 = "vm.xor.i32"(%5902, %6808) : (i32, i32) -> i32
"vm.cond_fail"(%6809, %6807) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6810 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6811 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6812 = "vm.xor.i32"(%5929, %6811) : (i32, i32) -> i32
"vm.cond_fail"(%6812, %6810) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6813 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6814 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6815 = "vm.xor.i32"(%6003, %6814) : (i32, i32) -> i32
"vm.cond_fail"(%6815, %6813) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6816 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6817 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6818 = "vm.xor.i32"(%6031, %6817) : (i32, i32) -> i32
"vm.cond_fail"(%6818, %6816) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6819 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6820 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6821 = "vm.xor.i32"(%6041, %6820) : (i32, i32) -> i32
"vm.cond_fail"(%6821, %6819) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6822 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6823 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6824 = "vm.xor.i32"(%6045, %6823) : (i32, i32) -> i32
"vm.cond_fail"(%6824, %6822) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6825 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6826 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6827 = "vm.xor.i32"(%6098, %6826) : (i32, i32) -> i32
"vm.cond_fail"(%6827, %6825) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6828 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6829 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6830 = "vm.xor.i32"(%6110, %6829) : (i32, i32) -> i32
"vm.cond_fail"(%6830, %6828) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6831 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6832 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6833 = "vm.xor.i32"(%6114, %6832) : (i32, i32) -> i32
"vm.cond_fail"(%6833, %6831) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6834 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6835 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6836 = "vm.xor.i32"(%6139, %6835) : (i32, i32) -> i32
"vm.cond_fail"(%6836, %6834) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6837 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6838 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6839 = "vm.xor.i32"(%6155, %6838) : (i32, i32) -> i32
"vm.cond_fail"(%6839, %6837) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6840 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6841 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6842 = "vm.xor.i32"(%6165, %6841) : (i32, i32) -> i32
"vm.cond_fail"(%6842, %6840) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6843 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6844 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6845 = "vm.xor.i32"(%6169, %6844) : (i32, i32) -> i32
"vm.cond_fail"(%6845, %6843) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6846 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6847 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6848 = "vm.xor.i32"(%6209, %6847) : (i32, i32) -> i32
"vm.cond_fail"(%6848, %6846) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6849 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6850 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6851 = "vm.xor.i32"(%5750, %6850) : (i32, i32) -> i32
"vm.cond_fail"(%6851, %6849) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6852 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6853 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6854 = "vm.xor.i32"(%5750, %6853) : (i32, i32) -> i32
"vm.cond_fail"(%6854, %6852) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6855 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6856 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6857 = "vm.xor.i32"(%5750, %6856) : (i32, i32) -> i32
"vm.cond_fail"(%6857, %6855) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6858 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6859 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6860 = "vm.xor.i32"(%5858, %6859) : (i32, i32) -> i32
"vm.cond_fail"(%6860, %6858) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6861 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6862 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6863 = "vm.xor.i32"(%5880, %6862) : (i32, i32) -> i32
"vm.cond_fail"(%6863, %6861) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6864 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6865 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6866 = "vm.xor.i32"(%5902, %6865) : (i32, i32) -> i32
"vm.cond_fail"(%6866, %6864) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6867 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6868 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6869 = "vm.xor.i32"(%5929, %6868) : (i32, i32) -> i32
"vm.cond_fail"(%6869, %6867) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6870 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6871 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6872 = "vm.xor.i32"(%5858, %6871) : (i32, i32) -> i32
"vm.cond_fail"(%6872, %6870) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6873 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6874 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6875 = "vm.xor.i32"(%5880, %6874) : (i32, i32) -> i32
"vm.cond_fail"(%6875, %6873) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6876 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6877 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6878 = "vm.xor.i32"(%5902, %6877) : (i32, i32) -> i32
"vm.cond_fail"(%6878, %6876) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6879 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6880 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6881 = "vm.xor.i32"(%5929, %6880) : (i32, i32) -> i32
"vm.cond_fail"(%6881, %6879) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6882 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6883 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6884 = "vm.xor.i32"(%6003, %6883) : (i32, i32) -> i32
"vm.cond_fail"(%6884, %6882) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6885 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6886 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6887 = "vm.xor.i32"(%6031, %6886) : (i32, i32) -> i32
"vm.cond_fail"(%6887, %6885) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6888 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6889 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6890 = "vm.xor.i32"(%6041, %6889) : (i32, i32) -> i32
"vm.cond_fail"(%6890, %6888) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6891 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6892 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6893 = "vm.xor.i32"(%6045, %6892) : (i32, i32) -> i32
"vm.cond_fail"(%6893, %6891) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6894 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6895 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6896 = "vm.xor.i32"(%6098, %6895) : (i32, i32) -> i32
"vm.cond_fail"(%6896, %6894) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6897 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6898 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6899 = "vm.xor.i32"(%6110, %6898) : (i32, i32) -> i32
"vm.cond_fail"(%6899, %6897) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6900 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6901 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6902 = "vm.xor.i32"(%6114, %6901) : (i32, i32) -> i32
"vm.cond_fail"(%6902, %6900) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6903 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6904 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6905 = "vm.xor.i32"(%6139, %6904) : (i32, i32) -> i32
"vm.cond_fail"(%6905, %6903) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6906 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6907 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6908 = "vm.xor.i32"(%6155, %6907) : (i32, i32) -> i32
"vm.cond_fail"(%6908, %6906) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6909 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6910 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6911 = "vm.xor.i32"(%6165, %6910) : (i32, i32) -> i32
"vm.cond_fail"(%6911, %6909) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6912 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6913 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6914 = "vm.xor.i32"(%6169, %6913) : (i32, i32) -> i32
"vm.cond_fail"(%6914, %6912) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6915 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6916 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6917 = "vm.xor.i32"(%6209, %6916) : (i32, i32) -> i32
"vm.cond_fail"(%6917, %6915) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6918 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6919 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6920 = "vm.xor.i32"(%5750, %6919) : (i32, i32) -> i32
"vm.cond_fail"(%6920, %6918) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6921 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6922 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6923 = "vm.xor.i32"(%5750, %6922) : (i32, i32) -> i32
"vm.cond_fail"(%6923, %6921) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6924 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6925 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6926 = "vm.xor.i32"(%5750, %6925) : (i32, i32) -> i32
"vm.cond_fail"(%6926, %6924) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6927 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6928 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6929 = "vm.xor.i32"(%5858, %6928) : (i32, i32) -> i32
"vm.cond_fail"(%6929, %6927) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6930 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6931 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6932 = "vm.xor.i32"(%5880, %6931) : (i32, i32) -> i32
"vm.cond_fail"(%6932, %6930) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6933 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6934 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6935 = "vm.xor.i32"(%5902, %6934) : (i32, i32) -> i32
"vm.cond_fail"(%6935, %6933) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6936 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6937 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6938 = "vm.xor.i32"(%5929, %6937) : (i32, i32) -> i32
"vm.cond_fail"(%6938, %6936) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6939 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6940 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6941 = "vm.xor.i32"(%5858, %6940) : (i32, i32) -> i32
"vm.cond_fail"(%6941, %6939) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6942 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6943 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6944 = "vm.xor.i32"(%5880, %6943) : (i32, i32) -> i32
"vm.cond_fail"(%6944, %6942) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6945 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6946 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6947 = "vm.xor.i32"(%5902, %6946) : (i32, i32) -> i32
"vm.cond_fail"(%6947, %6945) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6948 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6949 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6950 = "vm.xor.i32"(%5929, %6949) : (i32, i32) -> i32
"vm.cond_fail"(%6950, %6948) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6951 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6952 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6953 = "vm.xor.i32"(%6003, %6952) : (i32, i32) -> i32
"vm.cond_fail"(%6953, %6951) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6954 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6955 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6956 = "vm.xor.i32"(%6031, %6955) : (i32, i32) -> i32
"vm.cond_fail"(%6956, %6954) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6957 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6958 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6959 = "vm.xor.i32"(%6041, %6958) : (i32, i32) -> i32
"vm.cond_fail"(%6959, %6957) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6960 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6961 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6962 = "vm.xor.i32"(%6045, %6961) : (i32, i32) -> i32
"vm.cond_fail"(%6962, %6960) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6963 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6964 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6965 = "vm.xor.i32"(%6098, %6964) : (i32, i32) -> i32
"vm.cond_fail"(%6965, %6963) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6966 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6967 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6968 = "vm.xor.i32"(%6110, %6967) : (i32, i32) -> i32
"vm.cond_fail"(%6968, %6966) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6969 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6970 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6971 = "vm.xor.i32"(%6114, %6970) : (i32, i32) -> i32
"vm.cond_fail"(%6971, %6969) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%6972 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6973 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6974 = "vm.xor.i32"(%6139, %6973) : (i32, i32) -> i32
"vm.cond_fail"(%6974, %6972) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6975 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6976 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6977 = "vm.xor.i32"(%6155, %6976) : (i32, i32) -> i32
"vm.cond_fail"(%6977, %6975) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6978 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6979 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6980 = "vm.xor.i32"(%6165, %6979) : (i32, i32) -> i32
"vm.cond_fail"(%6980, %6978) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6981 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6982 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6983 = "vm.xor.i32"(%6169, %6982) : (i32, i32) -> i32
"vm.cond_fail"(%6983, %6981) <{message = "mismatching contracting dimension"}> : (i32, i32) -> ()
%6984 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%6985 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%6986 = "vm.xor.i32"(%6209, %6985) : (i32, i32) -> i32
"vm.cond_fail"(%6986, %6984) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%6987 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%6988 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%6989 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%6990 = "vm.call"(%5638, %6989, %6987) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%6991 = "vm.ext.i32.i64.u"(%6990) : (i32) -> i64
%6992 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%6993 = "vm.shl.i64"(%6991, %6992) : (i64, i32) -> i64
%6994 = "vm.call"(%5638, %449, %6987) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%6995 = "vm.ext.i32.i64.u"(%6994) : (i32) -> i64
%6996 = "vm.or.i64"(%6995, %6993) : (i64, i64) -> i64
%6997 = "vm.cmp.lt.i64.s"(%6996, %449) : (i64, i64) -> i32
%6998 = "vm.add.i64"(%6996, %5768) : (i64, i64) -> i64
%6999 = "vm.select.i64"(%6997, %6998, %6996) : (i32, i64, i64) -> i64
%7000 = "vm.cmp.lt.i64.s"(%6999, %449) : (i64, i64) -> i32
%7001 = "vm.select.i64"(%7000, %446, %6999) : (i32, i64, i64) -> i64
%7002 = "vm.cmp.gt.i64.s"(%7001, %5768) : (i64, i64) -> i32
%7003 = "vm.select.i64"(%7002, %5768, %7001) : (i32, i64, i64) -> i64
%7004 = "vm.sub.i64"(%7003, %5786) : (i64, i64) -> i64
%7005 = "vm.cmp.lt.i64.s"(%7004, %449) : (i64, i64) -> i32
%7006 = "vm.select.i64"(%7005, %449, %7004) : (i32, i64, i64) -> i64
%7007 = "vm.call.variadic"(%5554, %5601, %5632) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%7008 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7009 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7010 = "vm.add.i64"(%5802, %7009) : (i64, i64) -> i64
%7011 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7012 = "vm.and.i64"(%7010, %7011) : (i64, i64) -> i64
%7013 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7014 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7015 = "vm.add.i64"(%5772, %7014) : (i64, i64) -> i64
%7016 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7017 = "vm.and.i64"(%7015, %7016) : (i64, i64) -> i64
%7018 = "vm.add.i64"(%7012, %7017) : (i64, i64) -> i64
%7019 = "vm.const.i32.zero"() : () -> i32
%7020 = "vm.call"(%472, %7019) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7021 = "vm.const.i32.zero"() : () -> i32
%7022 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7023 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7024 = "vm.call"(%472, %460, %7007, %7020, %7021, %7022, %7023, %7018) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7025 = "vm.const.i32.zero"() : () -> i32
%7026 = "vm.call"(%472, %7025) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7027 = "vm.const.i32.zero"() : () -> i32
%7028 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7029 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7030 = "vm.call"(%472, %460, %7007, %7026, %7027, %7028, %7029, %7017) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7031 = "vm.call.variadic"(%7020, %7026) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%7032 = "vm.trunc.i64.i32"(%5755) : (i64) -> i32
%7033 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7034 = "vm.shr.i64.u"(%5755, %7033) : (i64, i32) -> i64
%7035 = "vm.trunc.i64.i32"(%7034) : (i64) -> i32
%7036 = "vm.trunc.i64.i32"(%5757) : (i64) -> i32
%7037 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7038 = "vm.shr.i64.u"(%5757, %7037) : (i64, i32) -> i64
%7039 = "vm.trunc.i64.i32"(%7038) : (i64) -> i32
%7040 = "vm.trunc.i64.i32"(%5758) : (i64) -> i32
%7041 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7042 = "vm.shr.i64.u"(%5758, %7041) : (i64, i32) -> i64
%7043 = "vm.trunc.i64.i32"(%7042) : (i64) -> i32
%7044 = "vm.trunc.i64.i32"(%5759) : (i64) -> i32
%7045 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7046 = "vm.shr.i64.u"(%5759, %7045) : (i64, i32) -> i64
%7047 = "vm.trunc.i64.i32"(%7046) : (i64) -> i32
%7048 = "vm.trunc.i64.i32"(%5756) : (i64) -> i32
%7049 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7050 = "vm.shr.i64.u"(%5756, %7049) : (i64, i32) -> i64
%7051 = "vm.trunc.i64.i32"(%7050) : (i64) -> i32
%7052 = "vm.trunc.i64.i32"(%5768) : (i64) -> i32
%7053 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7054 = "vm.shr.i64.u"(%5768, %7053) : (i64, i32) -> i64
%7055 = "vm.trunc.i64.i32"(%7054) : (i64) -> i32
%7056 = "vm.trunc.i64.i32"(%5784) : (i64) -> i32
%7057 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7058 = "vm.shr.i64.u"(%5784, %7057) : (i64, i32) -> i64
%7059 = "vm.trunc.i64.i32"(%7058) : (i64) -> i32
%7060 = "vm.trunc.i64.i32"(%5798) : (i64) -> i32
%7061 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7062 = "vm.shr.i64.u"(%5798, %7061) : (i64, i32) -> i64
%7063 = "vm.trunc.i64.i32"(%7062) : (i64) -> i32
%7064 = "vm.trunc.i64.i32"(%7006) : (i64) -> i32
%7065 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7066 = "vm.shr.i64.u"(%7006, %7065) : (i64, i32) -> i64
%7067 = "vm.trunc.i64.i32"(%7066) : (i64) -> i32
%7068 = "vm.trunc.i64.i32"(%5797) : (i64) -> i32
%7069 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7070 = "vm.shr.i64.u"(%5797, %7069) : (i64, i32) -> i64
%7071 = "vm.trunc.i64.i32"(%7070) : (i64) -> i32
%7072 = "vm.trunc.i64.i32"(%7012) : (i64) -> i32
%7073 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7074 = "vm.shr.i64.u"(%7012, %7073) : (i64, i32) -> i64
%7075 = "vm.trunc.i64.i32"(%7074) : (i64) -> i32
%7076 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7077 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%7078 = "vm.const.i32.zero"() : () -> i32
%7079 = "vm.call"(%472, %7076, %7077, %460, %7078) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%7080 = "vm.const.i32.zero"() : () -> i32
%7081 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7082 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7030, %449, %5772, %7080, %7082, %7081) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%7083 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7084 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7085 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7083, %7084, %7085) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7086 = "vm.cmp.lte.i64.s"(%5757, %449) : (i64, i64) -> i32
%7087 = "vm.sub.i64"(%449, %5757) : (i64, i64) -> i64
%7088 = "vm.sub.i64"(%5757, %447) : (i64, i64) -> i64
%7089 = "vm.select.i64"(%7086, %7087, %7088) : (i32, i64, i64) -> i64
%7090 = "vm.div.i64.s"(%7089, %432) : (i64, i64) -> i64
%7091 = "vm.sub.i64"(%449, %7090) : (i64, i64) -> i64
%7092 = "vm.add.i64"(%7090, %447) : (i64, i64) -> i64
%7093 = "vm.select.i64"(%7086, %7091, %7092) : (i32, i64, i64) -> i64
%7094 = "vm.cmp.lte.i64.s"(%5758, %449) : (i64, i64) -> i32
%7095 = "vm.sub.i64"(%449, %5758) : (i64, i64) -> i64
%7096 = "vm.sub.i64"(%5758, %447) : (i64, i64) -> i64
%7097 = "vm.select.i64"(%7094, %7095, %7096) : (i32, i64, i64) -> i64
%7098 = "vm.div.i64.s"(%7097, %432) : (i64, i64) -> i64
%7099 = "vm.sub.i64"(%449, %7098) : (i64, i64) -> i64
%7100 = "vm.add.i64"(%7098, %447) : (i64, i64) -> i64
%7101 = "vm.select.i64"(%7094, %7099, %7100) : (i32, i64, i64) -> i64
%7102 = "vm.cmp.lte.i64.s"(%5759, %449) : (i64, i64) -> i32
%7103 = "vm.sub.i64"(%449, %5759) : (i64, i64) -> i64
%7104 = "vm.sub.i64"(%5759, %447) : (i64, i64) -> i64
%7105 = "vm.select.i64"(%7102, %7103, %7104) : (i32, i64, i64) -> i64
%7106 = "vm.div.i64.s"(%7105, %432) : (i64, i64) -> i64
%7107 = "vm.sub.i64"(%449, %7106) : (i64, i64) -> i64
%7108 = "vm.add.i64"(%7106, %447) : (i64, i64) -> i64
%7109 = "vm.select.i64"(%7102, %7107, %7108) : (i32, i64, i64) -> i64
%7110 = "vm.const.i32.zero"() : () -> i32
%7111 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7112 = "vm.const.i32"() <{value = 34 : i32}> : () -> i32
%7113 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7114 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7115 = "vm.trunc.i64.i32"(%7093) : (i64) -> i32
%7116 = "vm.const.i32.zero"() : () -> i32
%7117 = "vm.const.i32.zero"() : () -> i32
%7118 = "vm.const.i32.zero"() : () -> i32
%7119 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7079, %473, %7112, %7113, %7114, %7115, %7111, %407, %407, %1621, %1624, %1625, %1628, %7032, %7035, %7036, %7039, %7040, %7043, %7044, %7047, %7048, %7051, %7052, %7055, %7110, %7116, %5362, %449, %5356, %7110, %7117, %1838, %449, %432, %7110, %7118, %5577, %449, %5343, %7110, %7119, %7030, %449, %7017) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 18, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7120 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7121 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7122 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7120, %7121, %7122) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7123 = "hal.interface.binding.subspan"(%442) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 20, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64, strided<[], offset: 16>>
%7124 = "memref.load"(%7123) <{nontemporal = false}> : (memref<i64, strided<[], offset: 16>>) -> i64
%7125 = "vm.cmp.lt.i64.s"(%7124, %438) : (i64, i64) -> i32
%7126 = "hal.interface.binding.subspan"(%450) {alignment = 64 : index, binding = 1 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 20, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<8xi64>
%7127 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 0>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[]>>
%7128 = "memref.load"(%7127) <{nontemporal = false}> : (memref<i64, strided<[]>>) -> i64
%7129 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 4>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 4>>
%7130 = "memref.load"(%7129) <{nontemporal = false}> : (memref<i64, strided<[], offset: 4>>) -> i64
%7131 = "vm.add.i64"(%7128, %7130) : (i64, i64) -> i64
%7132 = "vm.add.i64"(%7131, %1461) : (i64, i64) -> i64
%7133 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 1>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 1>>
%7134 = "memref.load"(%7133) <{nontemporal = false}> : (memref<i64, strided<[], offset: 1>>) -> i64
%7135 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 5>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 5>>
%7136 = "memref.load"(%7135) <{nontemporal = false}> : (memref<i64, strided<[], offset: 5>>) -> i64
%7137 = "vm.add.i64"(%7134, %7136) : (i64, i64) -> i64
%7138 = "vm.add.i64"(%7137, %1460) : (i64, i64) -> i64
%7139 = "vm.mul.i64"(%7132, %7138) : (i64, i64) -> i64
%7140 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 2>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 2>>
%7141 = "memref.load"(%7140) <{nontemporal = false}> : (memref<i64, strided<[], offset: 2>>) -> i64
%7142 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 6>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 6>>
%7143 = "memref.load"(%7142) <{nontemporal = false}> : (memref<i64, strided<[], offset: 6>>) -> i64
%7144 = "vm.add.i64"(%7141, %7143) : (i64, i64) -> i64
%7145 = "vm.add.i64"(%7144, %443) : (i64, i64) -> i64
%7146 = "vm.mul.i64"(%7139, %7145) : (i64, i64) -> i64
%7147 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 3>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 3>>
%7148 = "memref.load"(%7147) <{nontemporal = false}> : (memref<i64, strided<[], offset: 3>>) -> i64
%7149 = "memref.subview"(%7126) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 7>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 7>>
%7150 = "memref.load"(%7149) <{nontemporal = false}> : (memref<i64, strided<[], offset: 7>>) -> i64
%7151 = "vm.add.i64"(%7148, %7150) : (i64, i64) -> i64
%7152 = "vm.add.i64"(%7151, %432) : (i64, i64) -> i64
%7153 = "vm.mul.i64"(%7146, %7152) : (i64, i64) -> i64
%7154 = "vm.cmp.lt.i64.s"(%7152, %438) : (i64, i64) -> i32
%7155 = "hal.interface.binding.subspan"(%452) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 20, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64, strided<[], offset: 24>>
%7156 = "memref.load"(%7155) <{nontemporal = false}> : (memref<i64, strided<[], offset: 24>>) -> i64
%7157 = "vm.cmp.lt.i64.s"(%7156, %438) : (i64, i64) -> i32
%7158 = "hal.interface.binding.subspan"(%433) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 20, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64, strided<[], offset: 8>>
%7159 = "memref.load"(%7158) <{nontemporal = false}> : (memref<i64, strided<[], offset: 8>>) -> i64
%7160 = "vm.cmp.lt.i64.s"(%7159, %438) : (i64, i64) -> i32
%7161 = "hal.interface.binding.subspan"(%450) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 20, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64>
%7162 = "memref.load"(%7161) <{nontemporal = false}> : (memref<i64>) -> i64
%7163 = "vm.cmp.lt.i64.s"(%7162, %438) : (i64, i64) -> i32
%7164 = "vm.select.i64"(%7163, %437, %7162) : (i32, i64, i64) -> i64
%7165 = "vm.mul.i64"(%7164, %7159) : (i64, i64) -> i64
%7166 = "vm.select.i64"(%7160, %7164, %7165) : (i32, i64, i64) -> i64
%7167 = "vm.mul.i64"(%7166, %7124) : (i64, i64) -> i64
%7168 = "vm.select.i64"(%7125, %7166, %7167) : (i32, i64, i64) -> i64
%7169 = "vm.mul.i64"(%7168, %7156) : (i64, i64) -> i64
%7170 = "vm.select.i64"(%7157, %7168, %7169) : (i32, i64, i64) -> i64
%7171 = "vm.mul.i64"(%7170, %7152) : (i64, i64) -> i64
%7172 = "vm.select.i64"(%7154, %7170, %7171) : (i32, i64, i64) -> i64
%7173 = "vm.div.i64.s"(%7153, %7172) : (i64, i64) -> i64
%7174 = "vm.select.i64"(%7125, %7173, %7124) : (i32, i64, i64) -> i64
%7175 = "vm.cmp.lte.i64.s"(%7174, %449) : (i64, i64) -> i32
%7176 = "vm.sub.i64"(%449, %7174) : (i64, i64) -> i64
%7177 = "vm.sub.i64"(%7174, %447) : (i64, i64) -> i64
%7178 = "vm.select.i64"(%7175, %7176, %7177) : (i32, i64, i64) -> i64
%7179 = "vm.div.i64.s"(%7178, %432) : (i64, i64) -> i64
%7180 = "vm.sub.i64"(%449, %7179) : (i64, i64) -> i64
%7181 = "vm.add.i64"(%7179, %447) : (i64, i64) -> i64
%7182 = "vm.select.i64"(%7175, %7180, %7181) : (i32, i64, i64) -> i64
%7183 = "vm.const.i32.zero"() : () -> i32
%7184 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7185 = "vm.const.i32"() <{value = 37 : i32}> : () -> i32
%7186 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7187 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7188 = "vm.trunc.i64.i32"(%7182) : (i64) -> i32
%7189 = "vm.const.i32.zero"() : () -> i32
%7190 = "vm.const.i32.zero"() : () -> i32
%7191 = "vm.const.i32.zero"() : () -> i32
%7192 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7079, %473, %7185, %7186, %7187, %7188, %7184, %407, %407, %1621, %1624, %1625, %1628, %7056, %7059, %7032, %7035, %7052, %7055, %7036, %7039, %7040, %7043, %7044, %7047, %7060, %7063, %7183, %7189, %5362, %449, %5356, %7183, %7190, %1838, %449, %432, %7183, %7191, %7030, %449, %7017, %7183, %7192, %7024, %449, %7018) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 20, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7193 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7194 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7195 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7193, %7194, %7195) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7196 = "hal.interface.binding.subspan"(%442) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 22, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64, strided<[], offset: 16>>
%7197 = "memref.load"(%7196) <{nontemporal = false}> : (memref<i64, strided<[], offset: 16>>) -> i64
%7198 = "vm.cmp.lt.i64.s"(%7197, %438) : (i64, i64) -> i32
%7199 = "hal.interface.binding.subspan"(%450) {alignment = 64 : index, binding = 1 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 22, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<8xi64>
%7200 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 0>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[]>>
%7201 = "memref.load"(%7200) <{nontemporal = false}> : (memref<i64, strided<[]>>) -> i64
%7202 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 4>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 4>>
%7203 = "memref.load"(%7202) <{nontemporal = false}> : (memref<i64, strided<[], offset: 4>>) -> i64
%7204 = "vm.add.i64"(%7201, %7203) : (i64, i64) -> i64
%7205 = "vm.add.i64"(%7204, %1461) : (i64, i64) -> i64
%7206 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 1>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 1>>
%7207 = "memref.load"(%7206) <{nontemporal = false}> : (memref<i64, strided<[], offset: 1>>) -> i64
%7208 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 5>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 5>>
%7209 = "memref.load"(%7208) <{nontemporal = false}> : (memref<i64, strided<[], offset: 5>>) -> i64
%7210 = "vm.add.i64"(%7207, %7209) : (i64, i64) -> i64
%7211 = "vm.add.i64"(%7210, %1460) : (i64, i64) -> i64
%7212 = "vm.mul.i64"(%7205, %7211) : (i64, i64) -> i64
%7213 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 2>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 2>>
%7214 = "memref.load"(%7213) <{nontemporal = false}> : (memref<i64, strided<[], offset: 2>>) -> i64
%7215 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 6>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 6>>
%7216 = "memref.load"(%7215) <{nontemporal = false}> : (memref<i64, strided<[], offset: 6>>) -> i64
%7217 = "vm.add.i64"(%7214, %7216) : (i64, i64) -> i64
%7218 = "vm.add.i64"(%7217, %443) : (i64, i64) -> i64
%7219 = "vm.mul.i64"(%7212, %7218) : (i64, i64) -> i64
%7220 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 3>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 3>>
%7221 = "memref.load"(%7220) <{nontemporal = false}> : (memref<i64, strided<[], offset: 3>>) -> i64
%7222 = "memref.subview"(%7199) <{operandSegmentSizes = array<i32: 1, 0, 0, 0>, static_offsets = array<i64: 7>, static_sizes = array<i64: 1>, static_strides = array<i64: 1>}> : (memref<8xi64>) -> memref<i64, strided<[], offset: 7>>
%7223 = "memref.load"(%7222) <{nontemporal = false}> : (memref<i64, strided<[], offset: 7>>) -> i64
%7224 = "vm.add.i64"(%7221, %7223) : (i64, i64) -> i64
%7225 = "vm.add.i64"(%7224, %432) : (i64, i64) -> i64
%7226 = "vm.mul.i64"(%7219, %7225) : (i64, i64) -> i64
%7227 = "vm.cmp.lt.i64.s"(%7225, %438) : (i64, i64) -> i32
%7228 = "hal.interface.binding.subspan"(%452) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 22, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64, strided<[], offset: 24>>
%7229 = "memref.load"(%7228) <{nontemporal = false}> : (memref<i64, strided<[], offset: 24>>) -> i64
%7230 = "vm.cmp.lt.i64.s"(%7229, %438) : (i64, i64) -> i32
%7231 = "hal.interface.binding.subspan"(%433) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 22, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64, strided<[], offset: 8>>
%7232 = "memref.load"(%7231) <{nontemporal = false}> : (memref<i64, strided<[], offset: 8>>) -> i64
%7233 = "vm.cmp.lt.i64.s"(%7232, %438) : (i64, i64) -> i32
%7234 = "hal.interface.binding.subspan"(%450) {alignment = 64 : index, binding = 0 : index, descriptor_flags = 3 : i32, layout = #hal.pipeline.layout<constants = 22, bindings = [#hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, "ReadOnly|Indirect">, #hal.pipeline.binding<storage_buffer, Indirect>], flags = Indirect>, operandSegmentSizes = array<i32: 1, 0>} : (index) -> memref<i64>
%7235 = "memref.load"(%7234) <{nontemporal = false}> : (memref<i64>) -> i64
%7236 = "vm.cmp.lt.i64.s"(%7235, %438) : (i64, i64) -> i32
%7237 = "vm.select.i64"(%7236, %437, %7235) : (i32, i64, i64) -> i64
%7238 = "vm.mul.i64"(%7237, %7232) : (i64, i64) -> i64
%7239 = "vm.select.i64"(%7233, %7237, %7238) : (i32, i64, i64) -> i64
%7240 = "vm.mul.i64"(%7239, %7197) : (i64, i64) -> i64
%7241 = "vm.select.i64"(%7198, %7239, %7240) : (i32, i64, i64) -> i64
%7242 = "vm.mul.i64"(%7241, %7229) : (i64, i64) -> i64
%7243 = "vm.select.i64"(%7230, %7241, %7242) : (i32, i64, i64) -> i64
%7244 = "vm.mul.i64"(%7243, %7225) : (i64, i64) -> i64
%7245 = "vm.select.i64"(%7227, %7243, %7244) : (i32, i64, i64) -> i64
%7246 = "vm.div.i64.s"(%7226, %7245) : (i64, i64) -> i64
%7247 = "vm.select.i64"(%7198, %7246, %7197) : (i32, i64, i64) -> i64
%7248 = "vm.cmp.lte.i64.s"(%7247, %449) : (i64, i64) -> i32
%7249 = "vm.sub.i64"(%449, %7247) : (i64, i64) -> i64
%7250 = "vm.sub.i64"(%7247, %447) : (i64, i64) -> i64
%7251 = "vm.select.i64"(%7248, %7249, %7250) : (i32, i64, i64) -> i64
%7252 = "vm.div.i64.s"(%7251, %432) : (i64, i64) -> i64
%7253 = "vm.sub.i64"(%449, %7252) : (i64, i64) -> i64
%7254 = "vm.add.i64"(%7252, %447) : (i64, i64) -> i64
%7255 = "vm.select.i64"(%7248, %7253, %7254) : (i32, i64, i64) -> i64
%7256 = "vm.const.i32.zero"() : () -> i32
%7257 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7258 = "vm.const.i32"() <{value = 38 : i32}> : () -> i32
%7259 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7260 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7261 = "vm.trunc.i64.i32"(%7255) : (i64) -> i32
%7262 = "vm.const.i32.zero"() : () -> i32
%7263 = "vm.const.i32.zero"() : () -> i32
%7264 = "vm.const.i32.zero"() : () -> i32
%7265 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7079, %473, %7258, %7259, %7260, %7261, %7257, %407, %407, %1621, %1624, %1625, %1628, %7064, %7067, %7052, %7055, %7036, %7039, %7032, %7035, %7056, %7059, %7060, %7063, %7040, %7043, %7044, %7047, %7256, %7262, %5362, %449, %5356, %7256, %7263, %1838, %449, %432, %7256, %7264, %7030, %449, %7017, %7256, %7265, %7024, %449, %7018) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 22, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7266 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7267 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7268 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7266, %7267, %7268) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7269 = "memref.load"(%7196) <{nontemporal = false}> : (memref<i64, strided<[], offset: 16>>) -> i64
%7270 = "vm.cmp.lt.i64.s"(%7269, %438) : (i64, i64) -> i32
%7271 = "memref.load"(%7200) <{nontemporal = false}> : (memref<i64, strided<[]>>) -> i64
%7272 = "memref.load"(%7202) <{nontemporal = false}> : (memref<i64, strided<[], offset: 4>>) -> i64
%7273 = "vm.add.i64"(%7271, %7272) : (i64, i64) -> i64
%7274 = "vm.add.i64"(%7273, %1461) : (i64, i64) -> i64
%7275 = "memref.load"(%7206) <{nontemporal = false}> : (memref<i64, strided<[], offset: 1>>) -> i64
%7276 = "memref.load"(%7208) <{nontemporal = false}> : (memref<i64, strided<[], offset: 5>>) -> i64
%7277 = "vm.add.i64"(%7275, %7276) : (i64, i64) -> i64
%7278 = "vm.add.i64"(%7277, %1460) : (i64, i64) -> i64
%7279 = "vm.mul.i64"(%7274, %7278) : (i64, i64) -> i64
%7280 = "memref.load"(%7213) <{nontemporal = false}> : (memref<i64, strided<[], offset: 2>>) -> i64
%7281 = "memref.load"(%7215) <{nontemporal = false}> : (memref<i64, strided<[], offset: 6>>) -> i64
%7282 = "vm.add.i64"(%7280, %7281) : (i64, i64) -> i64
%7283 = "vm.add.i64"(%7282, %443) : (i64, i64) -> i64
%7284 = "vm.mul.i64"(%7279, %7283) : (i64, i64) -> i64
%7285 = "memref.load"(%7220) <{nontemporal = false}> : (memref<i64, strided<[], offset: 3>>) -> i64
%7286 = "memref.load"(%7222) <{nontemporal = false}> : (memref<i64, strided<[], offset: 7>>) -> i64
%7287 = "vm.add.i64"(%7285, %7286) : (i64, i64) -> i64
%7288 = "vm.add.i64"(%7287, %432) : (i64, i64) -> i64
%7289 = "vm.mul.i64"(%7284, %7288) : (i64, i64) -> i64
%7290 = "vm.cmp.lt.i64.s"(%7288, %438) : (i64, i64) -> i32
%7291 = "memref.load"(%7228) <{nontemporal = false}> : (memref<i64, strided<[], offset: 24>>) -> i64
%7292 = "vm.cmp.lt.i64.s"(%7291, %438) : (i64, i64) -> i32
%7293 = "memref.load"(%7231) <{nontemporal = false}> : (memref<i64, strided<[], offset: 8>>) -> i64
%7294 = "vm.cmp.lt.i64.s"(%7293, %438) : (i64, i64) -> i32
%7295 = "memref.load"(%7234) <{nontemporal = false}> : (memref<i64>) -> i64
%7296 = "vm.cmp.lt.i64.s"(%7295, %438) : (i64, i64) -> i32
%7297 = "vm.select.i64"(%7296, %437, %7295) : (i32, i64, i64) -> i64
%7298 = "vm.mul.i64"(%7297, %7293) : (i64, i64) -> i64
%7299 = "vm.select.i64"(%7294, %7297, %7298) : (i32, i64, i64) -> i64
%7300 = "vm.mul.i64"(%7299, %7269) : (i64, i64) -> i64
%7301 = "vm.select.i64"(%7270, %7299, %7300) : (i32, i64, i64) -> i64
%7302 = "vm.mul.i64"(%7301, %7291) : (i64, i64) -> i64
%7303 = "vm.select.i64"(%7292, %7301, %7302) : (i32, i64, i64) -> i64
%7304 = "vm.mul.i64"(%7303, %7288) : (i64, i64) -> i64
%7305 = "vm.select.i64"(%7290, %7303, %7304) : (i32, i64, i64) -> i64
%7306 = "vm.div.i64.s"(%7289, %7305) : (i64, i64) -> i64
%7307 = "vm.select.i64"(%7270, %7306, %7269) : (i32, i64, i64) -> i64
%7308 = "vm.cmp.lte.i64.s"(%7307, %449) : (i64, i64) -> i32
%7309 = "vm.sub.i64"(%449, %7307) : (i64, i64) -> i64
%7310 = "vm.sub.i64"(%7307, %447) : (i64, i64) -> i64
%7311 = "vm.select.i64"(%7308, %7309, %7310) : (i32, i64, i64) -> i64
%7312 = "vm.div.i64.s"(%7311, %432) : (i64, i64) -> i64
%7313 = "vm.sub.i64"(%449, %7312) : (i64, i64) -> i64
%7314 = "vm.add.i64"(%7312, %447) : (i64, i64) -> i64
%7315 = "vm.select.i64"(%7308, %7313, %7314) : (i32, i64, i64) -> i64
%7316 = "vm.const.i32.zero"() : () -> i32
%7317 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7318 = "vm.const.i32"() <{value = 39 : i32}> : () -> i32
%7319 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7320 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7321 = "vm.trunc.i64.i32"(%7315) : (i64) -> i32
%7322 = "vm.const.i32.zero"() : () -> i32
%7323 = "vm.const.i32.zero"() : () -> i32
%7324 = "vm.const.i32.zero"() : () -> i32
%7325 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7079, %473, %7318, %7319, %7320, %7321, %7317, %407, %407, %1621, %1624, %1625, %1628, %7068, %7071, %7052, %7055, %7036, %7039, %7032, %7035, %7056, %7059, %7060, %7063, %7040, %7043, %7044, %7047, %7316, %7322, %5362, %449, %5356, %7316, %7323, %1838, %449, %432, %7316, %7324, %7030, %449, %7017, %7316, %7325, %7024, %449, %7018) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 22, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7326 = "vm.const.i32.zero"() : () -> i32
%7327 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7328 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7024, %7012, %5772, %7326, %7328, %7327) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%7329 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7330 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7331 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7329, %7330, %7331) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7332 = "vm.const.i32.zero"() : () -> i32
%7333 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7334 = "vm.const.i32"() <{value = 34 : i32}> : () -> i32
%7335 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7336 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7337 = "vm.trunc.i64.i32"(%7093) : (i64) -> i32
%7338 = "vm.const.i32.zero"() : () -> i32
%7339 = "vm.const.i32.zero"() : () -> i32
%7340 = "vm.const.i32.zero"() : () -> i32
%7341 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7079, %473, %7334, %7335, %7336, %7337, %7333, %7072, %7075, %1621, %1624, %1625, %1628, %7032, %7035, %7036, %7039, %7040, %7043, %7044, %7047, %7048, %7051, %7052, %7055, %7332, %7338, %5362, %449, %5356, %7332, %7339, %1838, %449, %432, %7332, %7340, %5608, %449, %5343, %7332, %7341, %7024, %449, %7018) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 18, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7342 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7343 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7344 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7079, %7342, %7343, %7344) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%7079) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%7345 = "vm.const.i32.zero"() : () -> i32
%7346 = "vm.call"(%472, %7345) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %7031, %7346, %7079) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%7347 = "vm.const.i32.zero"() : () -> i32
%7348 = "vm.call"(%472, %7347) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %7346, %7348, %7030) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%7349 = "vm.call.variadic"(%7348, %5849, %5962) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%7350 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7351 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7352 = "vm.add.i64"(%5978, %7351) : (i64, i64) -> i64
%7353 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7354 = "vm.and.i64"(%7352, %7353) : (i64, i64) -> i64
%7355 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7356 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7357 = "vm.add.i64"(%5982, %7356) : (i64, i64) -> i64
%7358 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7359 = "vm.and.i64"(%7357, %7358) : (i64, i64) -> i64
%7360 = "vm.add.i64"(%7354, %7359) : (i64, i64) -> i64
%7361 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7362 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7363 = "vm.add.i64"(%5985, %7362) : (i64, i64) -> i64
%7364 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7365 = "vm.and.i64"(%7363, %7364) : (i64, i64) -> i64
%7366 = "vm.add.i64"(%7360, %7365) : (i64, i64) -> i64
%7367 = "vm.const.i32.zero"() : () -> i32
%7368 = "vm.call"(%472, %7367) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7369 = "vm.const.i32.zero"() : () -> i32
%7370 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7371 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7372 = "vm.call"(%472, %460, %7349, %7368, %7369, %7370, %7371, %7366) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7373 = "vm.const.i32.zero"() : () -> i32
%7374 = "vm.call"(%472, %7373) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7375 = "vm.const.i32.zero"() : () -> i32
%7376 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7377 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7378 = "vm.call"(%472, %460, %7349, %7374, %7375, %7376, %7377, %7354) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7379 = "vm.call.variadic"(%7368, %7374) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%7380 = "vm.trunc.i64.i32"(%5975) : (i64) -> i32
%7381 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7382 = "vm.shr.i64.u"(%5975, %7381) : (i64, i32) -> i64
%7383 = "vm.trunc.i64.i32"(%7382) : (i64) -> i32
%7384 = "vm.trunc.i64.i32"(%5937) : (i64) -> i32
%7385 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7386 = "vm.shr.i64.u"(%5937, %7385) : (i64, i32) -> i64
%7387 = "vm.trunc.i64.i32"(%7386) : (i64) -> i32
%7388 = "vm.trunc.i64.i32"(%5938) : (i64) -> i32
%7389 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7390 = "vm.shr.i64.u"(%5938, %7389) : (i64, i32) -> i64
%7391 = "vm.trunc.i64.i32"(%7390) : (i64) -> i32
%7392 = "vm.trunc.i64.i32"(%5939) : (i64) -> i32
%7393 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7394 = "vm.shr.i64.u"(%5939, %7393) : (i64, i32) -> i64
%7395 = "vm.trunc.i64.i32"(%7394) : (i64) -> i32
%7396 = "vm.trunc.i64.i32"(%5936) : (i64) -> i32
%7397 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7398 = "vm.shr.i64.u"(%5936, %7397) : (i64, i32) -> i64
%7399 = "vm.trunc.i64.i32"(%7398) : (i64) -> i32
%7400 = "vm.trunc.i64.i32"(%7354) : (i64) -> i32
%7401 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7402 = "vm.shr.i64.u"(%7354, %7401) : (i64, i32) -> i64
%7403 = "vm.trunc.i64.i32"(%7402) : (i64) -> i32
%7404 = "vm.trunc.i64.i32"(%7360) : (i64) -> i32
%7405 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7406 = "vm.shr.i64.u"(%7360, %7405) : (i64, i32) -> i64
%7407 = "vm.trunc.i64.i32"(%7406) : (i64) -> i32
%7408 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7409 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%7410 = "vm.const.i32.zero"() : () -> i32
%7411 = "vm.call"(%472, %7408, %7409, %460, %7410) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%7412 = "vm.cmp.lte.i64.s"(%5798, %449) : (i64, i64) -> i32
%7413 = "vm.sub.i64"(%449, %5798) : (i64, i64) -> i64
%7414 = "vm.sub.i64"(%5798, %447) : (i64, i64) -> i64
%7415 = "vm.select.i64"(%7412, %7413, %7414) : (i32, i64, i64) -> i64
%7416 = "vm.div.i64.s"(%7415, %432) : (i64, i64) -> i64
%7417 = "vm.sub.i64"(%449, %7416) : (i64, i64) -> i64
%7418 = "vm.add.i64"(%7416, %447) : (i64, i64) -> i64
%7419 = "vm.select.i64"(%7412, %7417, %7418) : (i32, i64, i64) -> i64
%7420 = "vm.const.i32.zero"() : () -> i32
%7421 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7422 = "vm.const.i32"() <{value = 41 : i32}> : () -> i32
%7423 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7424 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7425 = "vm.trunc.i64.i32"(%7419) : (i64) -> i32
%7426 = "vm.const.i32.zero"() : () -> i32
%7427 = "vm.const.i32.zero"() : () -> i32
%7428 = "vm.const.i32.zero"() : () -> i32
%7429 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7422, %7423, %7424, %7425, %7421, %1621, %1624, %1625, %1628, %7032, %7035, %7056, %7059, %7060, %7063, %7040, %7043, %7044, %7047, %7380, %7383, %7420, %7426, %5362, %449, %5356, %7420, %7427, %1838, %449, %432, %7420, %7428, %7024, %449, %7018, %7420, %7429, %7378, %449, %7354) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 16, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7430 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7431 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7432 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7411, %7430, %7431, %7432) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7433 = "vm.cmp.lte.i64.s"(%5939, %449) : (i64, i64) -> i32
%7434 = "vm.sub.i64"(%449, %5939) : (i64, i64) -> i64
%7435 = "vm.sub.i64"(%5939, %447) : (i64, i64) -> i64
%7436 = "vm.select.i64"(%7433, %7434, %7435) : (i32, i64, i64) -> i64
%7437 = "vm.div.i64.s"(%7436, %432) : (i64, i64) -> i64
%7438 = "vm.sub.i64"(%449, %7437) : (i64, i64) -> i64
%7439 = "vm.add.i64"(%7437, %447) : (i64, i64) -> i64
%7440 = "vm.select.i64"(%7433, %7438, %7439) : (i32, i64, i64) -> i64
%7441 = "vm.cmp.lte.i64.s"(%5936, %449) : (i64, i64) -> i32
%7442 = "vm.sub.i64"(%449, %5936) : (i64, i64) -> i64
%7443 = "vm.sub.i64"(%5936, %447) : (i64, i64) -> i64
%7444 = "vm.select.i64"(%7441, %7442, %7443) : (i32, i64, i64) -> i64
%7445 = "vm.div.i64.s"(%7444, %432) : (i64, i64) -> i64
%7446 = "vm.sub.i64"(%449, %7445) : (i64, i64) -> i64
%7447 = "vm.add.i64"(%7445, %447) : (i64, i64) -> i64
%7448 = "vm.select.i64"(%7441, %7446, %7447) : (i32, i64, i64) -> i64
%7449 = "vm.const.i32.zero"() : () -> i32
%7450 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7451 = "vm.const.i32"() <{value = 42 : i32}> : () -> i32
%7452 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%7453 = "vm.trunc.i64.i32"(%7448) : (i64) -> i32
%7454 = "vm.trunc.i64.i32"(%7440) : (i64) -> i32
%7455 = "vm.const.i32.zero"() : () -> i32
%7456 = "vm.const.i32.zero"() : () -> i32
%7457 = "vm.const.i32.zero"() : () -> i32
%7458 = "vm.const.i32.zero"() : () -> i32
%7459 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7451, %7452, %7453, %7454, %7450, %1026, %1029, %654, %657, %1621, %1624, %1625, %1628, %658, %661, %5821, %5824, %7384, %7387, %7388, %7391, %7392, %7395, %7396, %7399, %7032, %7035, %7056, %7059, %7380, %7383, %7040, %7043, %7044, %7047, %7449, %7455, %1612, %449, %1606, %7449, %7456, %5362, %449, %5356, %7449, %7457, %1838, %449, %432, %7449, %7458, %5812, %449, %5806, %7449, %7459, %7378, %449, %7354) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 30, 5]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7460 = "memref.load"(%7123) <{nontemporal = false}> : (memref<i64, strided<[], offset: 16>>) -> i64
%7461 = "vm.cmp.lt.i64.s"(%7460, %438) : (i64, i64) -> i32
%7462 = "memref.load"(%7127) <{nontemporal = false}> : (memref<i64, strided<[]>>) -> i64
%7463 = "memref.load"(%7129) <{nontemporal = false}> : (memref<i64, strided<[], offset: 4>>) -> i64
%7464 = "vm.add.i64"(%7462, %7463) : (i64, i64) -> i64
%7465 = "vm.add.i64"(%7464, %1461) : (i64, i64) -> i64
%7466 = "memref.load"(%7133) <{nontemporal = false}> : (memref<i64, strided<[], offset: 1>>) -> i64
%7467 = "memref.load"(%7135) <{nontemporal = false}> : (memref<i64, strided<[], offset: 5>>) -> i64
%7468 = "vm.add.i64"(%7466, %7467) : (i64, i64) -> i64
%7469 = "vm.add.i64"(%7468, %1460) : (i64, i64) -> i64
%7470 = "vm.mul.i64"(%7465, %7469) : (i64, i64) -> i64
%7471 = "memref.load"(%7140) <{nontemporal = false}> : (memref<i64, strided<[], offset: 2>>) -> i64
%7472 = "memref.load"(%7142) <{nontemporal = false}> : (memref<i64, strided<[], offset: 6>>) -> i64
%7473 = "vm.add.i64"(%7471, %7472) : (i64, i64) -> i64
%7474 = "vm.add.i64"(%7473, %443) : (i64, i64) -> i64
%7475 = "vm.mul.i64"(%7470, %7474) : (i64, i64) -> i64
%7476 = "memref.load"(%7147) <{nontemporal = false}> : (memref<i64, strided<[], offset: 3>>) -> i64
%7477 = "memref.load"(%7149) <{nontemporal = false}> : (memref<i64, strided<[], offset: 7>>) -> i64
%7478 = "vm.add.i64"(%7476, %7477) : (i64, i64) -> i64
%7479 = "vm.add.i64"(%7478, %432) : (i64, i64) -> i64
%7480 = "vm.mul.i64"(%7475, %7479) : (i64, i64) -> i64
%7481 = "vm.cmp.lt.i64.s"(%7479, %438) : (i64, i64) -> i32
%7482 = "memref.load"(%7155) <{nontemporal = false}> : (memref<i64, strided<[], offset: 24>>) -> i64
%7483 = "vm.cmp.lt.i64.s"(%7482, %438) : (i64, i64) -> i32
%7484 = "memref.load"(%7158) <{nontemporal = false}> : (memref<i64, strided<[], offset: 8>>) -> i64
%7485 = "vm.cmp.lt.i64.s"(%7484, %438) : (i64, i64) -> i32
%7486 = "memref.load"(%7161) <{nontemporal = false}> : (memref<i64>) -> i64
%7487 = "vm.cmp.lt.i64.s"(%7486, %438) : (i64, i64) -> i32
%7488 = "vm.select.i64"(%7487, %437, %7486) : (i32, i64, i64) -> i64
%7489 = "vm.mul.i64"(%7488, %7484) : (i64, i64) -> i64
%7490 = "vm.select.i64"(%7485, %7488, %7489) : (i32, i64, i64) -> i64
%7491 = "vm.mul.i64"(%7490, %7460) : (i64, i64) -> i64
%7492 = "vm.select.i64"(%7461, %7490, %7491) : (i32, i64, i64) -> i64
%7493 = "vm.mul.i64"(%7492, %7482) : (i64, i64) -> i64
%7494 = "vm.select.i64"(%7483, %7492, %7493) : (i32, i64, i64) -> i64
%7495 = "vm.mul.i64"(%7494, %7479) : (i64, i64) -> i64
%7496 = "vm.select.i64"(%7481, %7494, %7495) : (i32, i64, i64) -> i64
%7497 = "vm.div.i64.s"(%7480, %7496) : (i64, i64) -> i64
%7498 = "vm.select.i64"(%7461, %7497, %7460) : (i32, i64, i64) -> i64
%7499 = "vm.cmp.lte.i64.s"(%7498, %449) : (i64, i64) -> i32
%7500 = "vm.sub.i64"(%449, %7498) : (i64, i64) -> i64
%7501 = "vm.sub.i64"(%7498, %447) : (i64, i64) -> i64
%7502 = "vm.select.i64"(%7499, %7500, %7501) : (i32, i64, i64) -> i64
%7503 = "vm.div.i64.s"(%7502, %432) : (i64, i64) -> i64
%7504 = "vm.sub.i64"(%449, %7503) : (i64, i64) -> i64
%7505 = "vm.add.i64"(%7503, %447) : (i64, i64) -> i64
%7506 = "vm.select.i64"(%7499, %7504, %7505) : (i32, i64, i64) -> i64
%7507 = "vm.const.i32.zero"() : () -> i32
%7508 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7509 = "vm.const.i32"() <{value = 37 : i32}> : () -> i32
%7510 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7511 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7512 = "vm.trunc.i64.i32"(%7506) : (i64) -> i32
%7513 = "vm.const.i32.zero"() : () -> i32
%7514 = "vm.const.i32.zero"() : () -> i32
%7515 = "vm.const.i32.zero"() : () -> i32
%7516 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7509, %7510, %7511, %7512, %7508, %7072, %7075, %1621, %1624, %1625, %1628, %7056, %7059, %7032, %7035, %7052, %7055, %7036, %7039, %7040, %7043, %7044, %7047, %7380, %7383, %7507, %7513, %5362, %449, %5356, %7507, %7514, %1838, %449, %432, %7507, %7515, %7024, %449, %7018, %7507, %7516, %7372, %449, %7366) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 20, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7517 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7518 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7519 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7411, %7517, %7518, %7519) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7520 = "memref.load"(%7196) <{nontemporal = false}> : (memref<i64, strided<[], offset: 16>>) -> i64
%7521 = "vm.cmp.lt.i64.s"(%7520, %438) : (i64, i64) -> i32
%7522 = "memref.load"(%7200) <{nontemporal = false}> : (memref<i64, strided<[]>>) -> i64
%7523 = "memref.load"(%7202) <{nontemporal = false}> : (memref<i64, strided<[], offset: 4>>) -> i64
%7524 = "vm.add.i64"(%7522, %7523) : (i64, i64) -> i64
%7525 = "vm.add.i64"(%7524, %1461) : (i64, i64) -> i64
%7526 = "memref.load"(%7206) <{nontemporal = false}> : (memref<i64, strided<[], offset: 1>>) -> i64
%7527 = "memref.load"(%7208) <{nontemporal = false}> : (memref<i64, strided<[], offset: 5>>) -> i64
%7528 = "vm.add.i64"(%7526, %7527) : (i64, i64) -> i64
%7529 = "vm.add.i64"(%7528, %1460) : (i64, i64) -> i64
%7530 = "vm.mul.i64"(%7525, %7529) : (i64, i64) -> i64
%7531 = "memref.load"(%7213) <{nontemporal = false}> : (memref<i64, strided<[], offset: 2>>) -> i64
%7532 = "memref.load"(%7215) <{nontemporal = false}> : (memref<i64, strided<[], offset: 6>>) -> i64
%7533 = "vm.add.i64"(%7531, %7532) : (i64, i64) -> i64
%7534 = "vm.add.i64"(%7533, %443) : (i64, i64) -> i64
%7535 = "vm.mul.i64"(%7530, %7534) : (i64, i64) -> i64
%7536 = "memref.load"(%7220) <{nontemporal = false}> : (memref<i64, strided<[], offset: 3>>) -> i64
%7537 = "memref.load"(%7222) <{nontemporal = false}> : (memref<i64, strided<[], offset: 7>>) -> i64
%7538 = "vm.add.i64"(%7536, %7537) : (i64, i64) -> i64
%7539 = "vm.add.i64"(%7538, %432) : (i64, i64) -> i64
%7540 = "vm.mul.i64"(%7535, %7539) : (i64, i64) -> i64
%7541 = "vm.cmp.lt.i64.s"(%7539, %438) : (i64, i64) -> i32
%7542 = "memref.load"(%7228) <{nontemporal = false}> : (memref<i64, strided<[], offset: 24>>) -> i64
%7543 = "vm.cmp.lt.i64.s"(%7542, %438) : (i64, i64) -> i32
%7544 = "memref.load"(%7231) <{nontemporal = false}> : (memref<i64, strided<[], offset: 8>>) -> i64
%7545 = "vm.cmp.lt.i64.s"(%7544, %438) : (i64, i64) -> i32
%7546 = "memref.load"(%7234) <{nontemporal = false}> : (memref<i64>) -> i64
%7547 = "vm.cmp.lt.i64.s"(%7546, %438) : (i64, i64) -> i32
%7548 = "vm.select.i64"(%7547, %437, %7546) : (i32, i64, i64) -> i64
%7549 = "vm.mul.i64"(%7548, %7544) : (i64, i64) -> i64
%7550 = "vm.select.i64"(%7545, %7548, %7549) : (i32, i64, i64) -> i64
%7551 = "vm.mul.i64"(%7550, %7520) : (i64, i64) -> i64
%7552 = "vm.select.i64"(%7521, %7550, %7551) : (i32, i64, i64) -> i64
%7553 = "vm.mul.i64"(%7552, %7542) : (i64, i64) -> i64
%7554 = "vm.select.i64"(%7543, %7552, %7553) : (i32, i64, i64) -> i64
%7555 = "vm.mul.i64"(%7554, %7539) : (i64, i64) -> i64
%7556 = "vm.select.i64"(%7541, %7554, %7555) : (i32, i64, i64) -> i64
%7557 = "vm.div.i64.s"(%7540, %7556) : (i64, i64) -> i64
%7558 = "vm.select.i64"(%7521, %7557, %7520) : (i32, i64, i64) -> i64
%7559 = "vm.cmp.lte.i64.s"(%7558, %449) : (i64, i64) -> i32
%7560 = "vm.sub.i64"(%449, %7558) : (i64, i64) -> i64
%7561 = "vm.sub.i64"(%7558, %447) : (i64, i64) -> i64
%7562 = "vm.select.i64"(%7559, %7560, %7561) : (i32, i64, i64) -> i64
%7563 = "vm.div.i64.s"(%7562, %432) : (i64, i64) -> i64
%7564 = "vm.sub.i64"(%449, %7563) : (i64, i64) -> i64
%7565 = "vm.add.i64"(%7563, %447) : (i64, i64) -> i64
%7566 = "vm.select.i64"(%7559, %7564, %7565) : (i32, i64, i64) -> i64
%7567 = "vm.const.i32.zero"() : () -> i32
%7568 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7569 = "vm.const.i32"() <{value = 38 : i32}> : () -> i32
%7570 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7571 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7572 = "vm.trunc.i64.i32"(%7566) : (i64) -> i32
%7573 = "vm.const.i32.zero"() : () -> i32
%7574 = "vm.const.i32.zero"() : () -> i32
%7575 = "vm.const.i32.zero"() : () -> i32
%7576 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7569, %7570, %7571, %7572, %7568, %7072, %7075, %1621, %1624, %1625, %1628, %7064, %7067, %7052, %7055, %7036, %7039, %7032, %7035, %7056, %7059, %7380, %7383, %7040, %7043, %7044, %7047, %7567, %7573, %5362, %449, %5356, %7567, %7574, %1838, %449, %432, %7567, %7575, %7024, %449, %7018, %7567, %7576, %7372, %449, %7366) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 22, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7577 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7578 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7579 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7411, %7577, %7578, %7579) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7580 = "memref.load"(%7196) <{nontemporal = false}> : (memref<i64, strided<[], offset: 16>>) -> i64
%7581 = "vm.cmp.lt.i64.s"(%7580, %438) : (i64, i64) -> i32
%7582 = "memref.load"(%7200) <{nontemporal = false}> : (memref<i64, strided<[]>>) -> i64
%7583 = "memref.load"(%7202) <{nontemporal = false}> : (memref<i64, strided<[], offset: 4>>) -> i64
%7584 = "vm.add.i64"(%7582, %7583) : (i64, i64) -> i64
%7585 = "vm.add.i64"(%7584, %1461) : (i64, i64) -> i64
%7586 = "memref.load"(%7206) <{nontemporal = false}> : (memref<i64, strided<[], offset: 1>>) -> i64
%7587 = "memref.load"(%7208) <{nontemporal = false}> : (memref<i64, strided<[], offset: 5>>) -> i64
%7588 = "vm.add.i64"(%7586, %7587) : (i64, i64) -> i64
%7589 = "vm.add.i64"(%7588, %1460) : (i64, i64) -> i64
%7590 = "vm.mul.i64"(%7585, %7589) : (i64, i64) -> i64
%7591 = "memref.load"(%7213) <{nontemporal = false}> : (memref<i64, strided<[], offset: 2>>) -> i64
%7592 = "memref.load"(%7215) <{nontemporal = false}> : (memref<i64, strided<[], offset: 6>>) -> i64
%7593 = "vm.add.i64"(%7591, %7592) : (i64, i64) -> i64
%7594 = "vm.add.i64"(%7593, %443) : (i64, i64) -> i64
%7595 = "vm.mul.i64"(%7590, %7594) : (i64, i64) -> i64
%7596 = "memref.load"(%7220) <{nontemporal = false}> : (memref<i64, strided<[], offset: 3>>) -> i64
%7597 = "memref.load"(%7222) <{nontemporal = false}> : (memref<i64, strided<[], offset: 7>>) -> i64
%7598 = "vm.add.i64"(%7596, %7597) : (i64, i64) -> i64
%7599 = "vm.add.i64"(%7598, %432) : (i64, i64) -> i64
%7600 = "vm.mul.i64"(%7595, %7599) : (i64, i64) -> i64
%7601 = "vm.cmp.lt.i64.s"(%7599, %438) : (i64, i64) -> i32
%7602 = "memref.load"(%7228) <{nontemporal = false}> : (memref<i64, strided<[], offset: 24>>) -> i64
%7603 = "vm.cmp.lt.i64.s"(%7602, %438) : (i64, i64) -> i32
%7604 = "memref.load"(%7231) <{nontemporal = false}> : (memref<i64, strided<[], offset: 8>>) -> i64
%7605 = "vm.cmp.lt.i64.s"(%7604, %438) : (i64, i64) -> i32
%7606 = "memref.load"(%7234) <{nontemporal = false}> : (memref<i64>) -> i64
%7607 = "vm.cmp.lt.i64.s"(%7606, %438) : (i64, i64) -> i32
%7608 = "vm.select.i64"(%7607, %437, %7606) : (i32, i64, i64) -> i64
%7609 = "vm.mul.i64"(%7608, %7604) : (i64, i64) -> i64
%7610 = "vm.select.i64"(%7605, %7608, %7609) : (i32, i64, i64) -> i64
%7611 = "vm.mul.i64"(%7610, %7580) : (i64, i64) -> i64
%7612 = "vm.select.i64"(%7581, %7610, %7611) : (i32, i64, i64) -> i64
%7613 = "vm.mul.i64"(%7612, %7602) : (i64, i64) -> i64
%7614 = "vm.select.i64"(%7603, %7612, %7613) : (i32, i64, i64) -> i64
%7615 = "vm.mul.i64"(%7614, %7599) : (i64, i64) -> i64
%7616 = "vm.select.i64"(%7601, %7614, %7615) : (i32, i64, i64) -> i64
%7617 = "vm.div.i64.s"(%7600, %7616) : (i64, i64) -> i64
%7618 = "vm.select.i64"(%7581, %7617, %7580) : (i32, i64, i64) -> i64
%7619 = "vm.cmp.lte.i64.s"(%7618, %449) : (i64, i64) -> i32
%7620 = "vm.sub.i64"(%449, %7618) : (i64, i64) -> i64
%7621 = "vm.sub.i64"(%7618, %447) : (i64, i64) -> i64
%7622 = "vm.select.i64"(%7619, %7620, %7621) : (i32, i64, i64) -> i64
%7623 = "vm.div.i64.s"(%7622, %432) : (i64, i64) -> i64
%7624 = "vm.sub.i64"(%449, %7623) : (i64, i64) -> i64
%7625 = "vm.add.i64"(%7623, %447) : (i64, i64) -> i64
%7626 = "vm.select.i64"(%7619, %7624, %7625) : (i32, i64, i64) -> i64
%7627 = "vm.const.i32.zero"() : () -> i32
%7628 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7629 = "vm.const.i32"() <{value = 39 : i32}> : () -> i32
%7630 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7631 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7632 = "vm.trunc.i64.i32"(%7626) : (i64) -> i32
%7633 = "vm.const.i32.zero"() : () -> i32
%7634 = "vm.const.i32.zero"() : () -> i32
%7635 = "vm.const.i32.zero"() : () -> i32
%7636 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7629, %7630, %7631, %7632, %7628, %7072, %7075, %1621, %1624, %1625, %1628, %7068, %7071, %7052, %7055, %7036, %7039, %7032, %7035, %7056, %7059, %7380, %7383, %7040, %7043, %7044, %7047, %7627, %7633, %5362, %449, %5356, %7627, %7634, %1838, %449, %432, %7627, %7635, %7024, %449, %7018, %7627, %7636, %7372, %449, %7366) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 22, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7637 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7638 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7639 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7411, %7637, %7638, %7639) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7640 = "vm.const.i32.zero"() : () -> i32
%7641 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7642 = "vm.const.i32"() <{value = 42 : i32}> : () -> i32
%7643 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%7644 = "vm.trunc.i64.i32"(%7448) : (i64) -> i32
%7645 = "vm.trunc.i64.i32"(%7440) : (i64) -> i32
%7646 = "vm.const.i32.zero"() : () -> i32
%7647 = "vm.const.i32.zero"() : () -> i32
%7648 = "vm.const.i32.zero"() : () -> i32
%7649 = "vm.const.i32.zero"() : () -> i32
%7650 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7642, %7643, %7644, %7645, %7641, %1026, %1029, %654, %657, %1621, %1624, %1625, %1628, %658, %661, %5821, %5824, %7384, %7387, %7388, %7391, %7392, %7395, %7396, %7399, %7032, %7035, %7056, %7059, %7380, %7383, %7040, %7043, %7044, %7047, %7640, %7646, %1612, %449, %1606, %7640, %7647, %5362, %449, %5356, %7640, %7648, %1838, %449, %432, %7640, %7649, %5945, %449, %5806, %7640, %7650, %7372, %449, %7366) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 30, 5]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7651 = "vm.const.i32.zero"() : () -> i32
%7652 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7653 = "vm.const.i32"() <{value = 43 : i32}> : () -> i32
%7654 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7655 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7656 = "vm.trunc.i64.i32"(%7093) : (i64) -> i32
%7657 = "vm.const.i32.zero"() : () -> i32
%7658 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7653, %7654, %7655, %7656, %7652, %390, %7400, %7403, %7032, %7035, %7048, %7051, %7036, %7039, %7040, %7043, %7044, %7047, %7651, %7657, %5362, %449, %5356, %7651, %7658, %7372, %449, %7366) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 13, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7659 = "vm.cmp.lte.i64.s"(%5975, %449) : (i64, i64) -> i32
%7660 = "vm.sub.i64"(%449, %5975) : (i64, i64) -> i64
%7661 = "vm.sub.i64"(%5975, %447) : (i64, i64) -> i64
%7662 = "vm.select.i64"(%7659, %7660, %7661) : (i32, i64, i64) -> i64
%7663 = "vm.div.i64.s"(%7662, %432) : (i64, i64) -> i64
%7664 = "vm.sub.i64"(%449, %7663) : (i64, i64) -> i64
%7665 = "vm.add.i64"(%7663, %447) : (i64, i64) -> i64
%7666 = "vm.select.i64"(%7659, %7664, %7665) : (i32, i64, i64) -> i64
%7667 = "vm.const.i32.zero"() : () -> i32
%7668 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7669 = "vm.const.i32"() <{value = 44 : i32}> : () -> i32
%7670 = "vm.trunc.i64.i32"(%7109) : (i64) -> i32
%7671 = "vm.trunc.i64.i32"(%7101) : (i64) -> i32
%7672 = "vm.trunc.i64.i32"(%7666) : (i64) -> i32
%7673 = "vm.const.i32.zero"() : () -> i32
%7674 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7411, %473, %7669, %7670, %7671, %7672, %7668, %7404, %7407, %7032, %7035, %7056, %7059, %7380, %7383, %7040, %7043, %7044, %7047, %7667, %7673, %7378, %449, %7354, %7667, %7674, %7372, %449, %7366) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7675 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7676 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7677 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7411, %7675, %7676, %7677) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%7411) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%7678 = "vm.const.i32.zero"() : () -> i32
%7679 = "vm.call"(%472, %7678) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %7379, %7679, %7411) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%7680 = "vm.const.i32.zero"() : () -> i32
%7681 = "vm.call"(%472, %7680) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %7679, %7681, %7378) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%7682 = "vm.const.i32.zero"() : () -> i32
%7683 = "vm.call"(%472, %7682) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7684 = "vm.const.i32.zero"() : () -> i32
%7685 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7686 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7687 = "vm.call"(%472, %460, %7681, %7683, %7684, %7685, %7686, %6074) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7688 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7689 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7690 = "vm.add.i64"(%6059, %7689) : (i64, i64) -> i64
%7691 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7692 = "vm.and.i64"(%7690, %7691) : (i64, i64) -> i64
%7693 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7694 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7695 = "vm.add.i64"(%6070, %7694) : (i64, i64) -> i64
%7696 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7697 = "vm.and.i64"(%7695, %7696) : (i64, i64) -> i64
%7698 = "vm.add.i64"(%7692, %7697) : (i64, i64) -> i64
%7699 = "vm.add.i64"(%7698, %6073) : (i64, i64) -> i64
%7700 = "vm.const.i32.zero"() : () -> i32
%7701 = "vm.call"(%472, %7700) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7702 = "vm.const.i32.zero"() : () -> i32
%7703 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7704 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7705 = "vm.call"(%472, %460, %7681, %7701, %7702, %7703, %7704, %7699) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7706 = "vm.call.variadic"(%7683, %7701) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%7707 = "vm.trunc.i64.i32"(%6010) : (i64) -> i32
%7708 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7709 = "vm.shr.i64.u"(%6010, %7708) : (i64, i32) -> i64
%7710 = "vm.trunc.i64.i32"(%7709) : (i64) -> i32
%7711 = "vm.trunc.i64.i32"(%6011) : (i64) -> i32
%7712 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7713 = "vm.shr.i64.u"(%6011, %7712) : (i64, i32) -> i64
%7714 = "vm.trunc.i64.i32"(%7713) : (i64) -> i32
%7715 = "vm.trunc.i64.i32"(%6012) : (i64) -> i32
%7716 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7717 = "vm.shr.i64.u"(%6012, %7716) : (i64, i32) -> i64
%7718 = "vm.trunc.i64.i32"(%7717) : (i64) -> i32
%7719 = "vm.trunc.i64.i32"(%6056) : (i64) -> i32
%7720 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7721 = "vm.shr.i64.u"(%6056, %7720) : (i64, i32) -> i64
%7722 = "vm.trunc.i64.i32"(%7721) : (i64) -> i32
%7723 = "vm.trunc.i64.i32"(%7692) : (i64) -> i32
%7724 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7725 = "vm.shr.i64.u"(%7692, %7724) : (i64, i32) -> i64
%7726 = "vm.trunc.i64.i32"(%7725) : (i64) -> i32
%7727 = "vm.trunc.i64.i32"(%6038) : (i64) -> i32
%7728 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7729 = "vm.shr.i64.u"(%6038, %7728) : (i64, i32) -> i64
%7730 = "vm.trunc.i64.i32"(%7729) : (i64) -> i32
%7731 = "vm.trunc.i64.i32"(%6039) : (i64) -> i32
%7732 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7733 = "vm.shr.i64.u"(%6039, %7732) : (i64, i32) -> i64
%7734 = "vm.trunc.i64.i32"(%7733) : (i64) -> i32
%7735 = "vm.trunc.i64.i32"(%6040) : (i64) -> i32
%7736 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7737 = "vm.shr.i64.u"(%6040, %7736) : (i64, i32) -> i64
%7738 = "vm.trunc.i64.i32"(%7737) : (i64) -> i32
%7739 = "vm.trunc.i64.i32"(%6067) : (i64) -> i32
%7740 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7741 = "vm.shr.i64.u"(%6067, %7740) : (i64, i32) -> i64
%7742 = "vm.trunc.i64.i32"(%7741) : (i64) -> i32
%7743 = "vm.trunc.i64.i32"(%7698) : (i64) -> i32
%7744 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7745 = "vm.shr.i64.u"(%7698, %7744) : (i64, i32) -> i64
%7746 = "vm.trunc.i64.i32"(%7745) : (i64) -> i32
%7747 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7748 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%7749 = "vm.const.i32.zero"() : () -> i32
%7750 = "vm.call"(%472, %7747, %7748, %460, %7749) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%7751 = "vm.cmp.lte.i64.s"(%6010, %449) : (i64, i64) -> i32
%7752 = "vm.sub.i64"(%449, %6010) : (i64, i64) -> i64
%7753 = "vm.sub.i64"(%6010, %447) : (i64, i64) -> i64
%7754 = "vm.select.i64"(%7751, %7752, %7753) : (i32, i64, i64) -> i64
%7755 = "vm.div.i64.s"(%7754, %432) : (i64, i64) -> i64
%7756 = "vm.sub.i64"(%449, %7755) : (i64, i64) -> i64
%7757 = "vm.add.i64"(%7755, %447) : (i64, i64) -> i64
%7758 = "vm.select.i64"(%7751, %7756, %7757) : (i32, i64, i64) -> i64
%7759 = "vm.cmp.lte.i64.s"(%6056, %449) : (i64, i64) -> i32
%7760 = "vm.sub.i64"(%449, %6056) : (i64, i64) -> i64
%7761 = "vm.sub.i64"(%6056, %447) : (i64, i64) -> i64
%7762 = "vm.select.i64"(%7759, %7760, %7761) : (i32, i64, i64) -> i64
%7763 = "vm.div.i64.s"(%7762, %431) : (i64, i64) -> i64
%7764 = "vm.sub.i64"(%449, %7763) : (i64, i64) -> i64
%7765 = "vm.add.i64"(%7763, %447) : (i64, i64) -> i64
%7766 = "vm.select.i64"(%7759, %7764, %7765) : (i32, i64, i64) -> i64
%7767 = "vm.cmp.lte.i64.s"(%6012, %449) : (i64, i64) -> i32
%7768 = "vm.sub.i64"(%449, %6012) : (i64, i64) -> i64
%7769 = "vm.sub.i64"(%6012, %447) : (i64, i64) -> i64
%7770 = "vm.select.i64"(%7767, %7768, %7769) : (i32, i64, i64) -> i64
%7771 = "vm.div.i64.s"(%7770, %432) : (i64, i64) -> i64
%7772 = "vm.sub.i64"(%449, %7771) : (i64, i64) -> i64
%7773 = "vm.add.i64"(%7771, %447) : (i64, i64) -> i64
%7774 = "vm.select.i64"(%7767, %7772, %7773) : (i32, i64, i64) -> i64
%7775 = "vm.const.i32.zero"() : () -> i32
%7776 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7777 = "vm.const.i32"() <{value = 45 : i32}> : () -> i32
%7778 = "vm.trunc.i64.i32"(%7774) : (i64) -> i32
%7779 = "vm.trunc.i64.i32"(%7766) : (i64) -> i32
%7780 = "vm.trunc.i64.i32"(%7758) : (i64) -> i32
%7781 = "vm.const.i32.zero"() : () -> i32
%7782 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7750, %473, %7777, %7778, %7779, %7780, %7776, %7400, %7403, %7707, %7710, %7711, %7714, %7715, %7718, %7719, %7722, %7775, %7781, %7372, %449, %7366, %7775, %7782, %7705, %449, %7699) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7783 = "vm.cmp.lte.i64.s"(%6038, %449) : (i64, i64) -> i32
%7784 = "vm.sub.i64"(%449, %6038) : (i64, i64) -> i64
%7785 = "vm.sub.i64"(%6038, %447) : (i64, i64) -> i64
%7786 = "vm.select.i64"(%7783, %7784, %7785) : (i32, i64, i64) -> i64
%7787 = "vm.div.i64.s"(%7786, %432) : (i64, i64) -> i64
%7788 = "vm.sub.i64"(%449, %7787) : (i64, i64) -> i64
%7789 = "vm.add.i64"(%7787, %447) : (i64, i64) -> i64
%7790 = "vm.select.i64"(%7783, %7788, %7789) : (i32, i64, i64) -> i64
%7791 = "vm.cmp.lte.i64.s"(%6067, %449) : (i64, i64) -> i32
%7792 = "vm.sub.i64"(%449, %6067) : (i64, i64) -> i64
%7793 = "vm.sub.i64"(%6067, %447) : (i64, i64) -> i64
%7794 = "vm.select.i64"(%7791, %7792, %7793) : (i32, i64, i64) -> i64
%7795 = "vm.div.i64.s"(%7794, %432) : (i64, i64) -> i64
%7796 = "vm.sub.i64"(%449, %7795) : (i64, i64) -> i64
%7797 = "vm.add.i64"(%7795, %447) : (i64, i64) -> i64
%7798 = "vm.select.i64"(%7791, %7796, %7797) : (i32, i64, i64) -> i64
%7799 = "vm.cmp.lte.i64.s"(%6039, %449) : (i64, i64) -> i32
%7800 = "vm.sub.i64"(%449, %6039) : (i64, i64) -> i64
%7801 = "vm.sub.i64"(%6039, %447) : (i64, i64) -> i64
%7802 = "vm.select.i64"(%7799, %7800, %7801) : (i32, i64, i64) -> i64
%7803 = "vm.div.i64.s"(%7802, %428) : (i64, i64) -> i64
%7804 = "vm.sub.i64"(%449, %7803) : (i64, i64) -> i64
%7805 = "vm.add.i64"(%7803, %447) : (i64, i64) -> i64
%7806 = "vm.select.i64"(%7799, %7804, %7805) : (i32, i64, i64) -> i64
%7807 = "vm.const.i32.zero"() : () -> i32
%7808 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7809 = "vm.const.i32"() <{value = 17 : i32}> : () -> i32
%7810 = "vm.trunc.i64.i32"(%7806) : (i64) -> i32
%7811 = "vm.trunc.i64.i32"(%7798) : (i64) -> i32
%7812 = "vm.trunc.i64.i32"(%7790) : (i64) -> i32
%7813 = "vm.const.i32.zero"() : () -> i32
%7814 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7750, %473, %7809, %7810, %7811, %7812, %7808, %7404, %7407, %7723, %7726, %7727, %7730, %7731, %7734, %7735, %7738, %7739, %7742, %7807, %7813, %7372, %449, %7366, %7807, %7814, %7705, %449, %7699) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7815 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7816 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7817 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7750, %7815, %7816, %7817) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7818 = "vm.div.i64.s"(%7762, %466) : (i64, i64) -> i64
%7819 = "vm.sub.i64"(%449, %7818) : (i64, i64) -> i64
%7820 = "vm.add.i64"(%7818, %447) : (i64, i64) -> i64
%7821 = "vm.select.i64"(%7759, %7819, %7820) : (i32, i64, i64) -> i64
%7822 = "vm.div.i64.s"(%7794, %429) : (i64, i64) -> i64
%7823 = "vm.sub.i64"(%449, %7822) : (i64, i64) -> i64
%7824 = "vm.add.i64"(%7822, %447) : (i64, i64) -> i64
%7825 = "vm.select.i64"(%7791, %7823, %7824) : (i32, i64, i64) -> i64
%7826 = "vm.const.i32.zero"() : () -> i32
%7827 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7828 = "vm.const.i32"() <{value = 46 : i32}> : () -> i32
%7829 = "vm.trunc.i64.i32"(%7825) : (i64) -> i32
%7830 = "vm.trunc.i64.i32"(%7821) : (i64) -> i32
%7831 = "vm.trunc.i64.i32"(%6010) : (i64) -> i32
%7832 = "vm.const.i32.zero"() : () -> i32
%7833 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7750, %473, %7828, %7829, %7830, %7831, %7827, %7723, %7726, %7743, %7746, %7715, %7718, %7727, %7730, %7731, %7734, %7707, %7710, %7719, %7722, %7739, %7742, %7826, %7832, %7705, %449, %7699, %7826, %7833, %7705, %449, %7699) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 16, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7834 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7835 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7836 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7750, %7834, %7835, %7836) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7837 = "vm.div.i64.s"(%6052, %432) : (i64, i64) -> i64
%7838 = "vm.sub.i64"(%449, %7837) : (i64, i64) -> i64
%7839 = "vm.add.i64"(%7837, %447) : (i64, i64) -> i64
%7840 = "vm.select.i64"(%6049, %7838, %7839) : (i32, i64, i64) -> i64
%7841 = "vm.div.i64.s"(%6063, %432) : (i64, i64) -> i64
%7842 = "vm.sub.i64"(%449, %7841) : (i64, i64) -> i64
%7843 = "vm.add.i64"(%7841, %447) : (i64, i64) -> i64
%7844 = "vm.select.i64"(%6060, %7842, %7843) : (i32, i64, i64) -> i64
%7845 = "vm.const.i32.zero"() : () -> i32
%7846 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7847 = "vm.const.i32"() <{value = 47 : i32}> : () -> i32
%7848 = "vm.trunc.i64.i32"(%7844) : (i64) -> i32
%7849 = "vm.trunc.i64.i32"(%7840) : (i64) -> i32
%7850 = "vm.trunc.i64.i32"(%7758) : (i64) -> i32
%7851 = "vm.const.i32.zero"() : () -> i32
%7852 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7750, %473, %7847, %7848, %7849, %7850, %7846, %7743, %7746, %7719, %7722, %7739, %7742, %7707, %7710, %7711, %7714, %7735, %7738, %7845, %7851, %7705, %449, %7699, %7845, %7852, %7687, %449, %6074) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7853 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7854 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7855 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7750, %7853, %7854, %7855) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%7750) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%7856 = "vm.const.i32.zero"() : () -> i32
%7857 = "vm.call"(%472, %7856) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %7706, %7857, %7750) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%7858 = "vm.const.i32.zero"() : () -> i32
%7859 = "vm.call"(%472, %7858) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %7857, %7859, %7705) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%7860 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%7861 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%7862 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%7863 = "vm.call"(%1989, %7862, %7860) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%7864 = "vm.ext.i32.i64.u"(%7863) : (i32) -> i64
%7865 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7866 = "vm.shl.i64"(%7864, %7865) : (i64, i32) -> i64
%7867 = "vm.call"(%1989, %449, %7860) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%7868 = "vm.ext.i32.i64.u"(%7867) : (i32) -> i64
%7869 = "vm.or.i64"(%7868, %7866) : (i64, i64) -> i64
%7870 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%7871 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%7872 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%7873 = "vm.call"(%1989, %7872, %7870) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%7874 = "vm.ext.i32.i64.u"(%7873) : (i32) -> i64
%7875 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7876 = "vm.shl.i64"(%7874, %7875) : (i64, i32) -> i64
%7877 = "vm.call"(%1989, %432, %7870) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%7878 = "vm.ext.i32.i64.u"(%7877) : (i32) -> i64
%7879 = "vm.or.i64"(%7878, %7876) : (i64, i64) -> i64
%7880 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%7881 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%7882 = "vm.const.i64"() <{value = 132 : i64}> : () -> i64
%7883 = "vm.call"(%1989, %7882, %7880) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%7884 = "vm.ext.i32.i64.u"(%7883) : (i32) -> i64
%7885 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7886 = "vm.shl.i64"(%7884, %7885) : (i64, i32) -> i64
%7887 = "vm.call"(%1989, %441, %7880) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%7888 = "vm.ext.i32.i64.u"(%7887) : (i32) -> i64
%7889 = "vm.or.i64"(%7888, %7886) : (i64, i64) -> i64
%7890 = "vm.add.i64"(%7869, %7889) : (i64, i64) -> i64
%7891 = "vm.add.i64"(%7890, %490) : (i64, i64) -> i64
%7892 = "vm.add.i64"(%7879, %2084) : (i64, i64) -> i64
%7893 = "vm.add.i64"(%7892, %492) : (i64, i64) -> i64
%7894 = "vm.mul.i64"(%7891, %431) : (i64, i64) -> i64
%7895 = "vm.mul.i64"(%7894, %7893) : (i64, i64) -> i64
%7896 = "vm.const.i32.zero"() : () -> i32
%7897 = "vm.call"(%472, %7896) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7898 = "vm.const.i32.zero"() : () -> i32
%7899 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%7900 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%7901 = "vm.call"(%472, %460, %2073, %7897, %7898, %7899, %7900, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7902 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%7903 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%7904 = "vm.add.i64"(%7895, %7903) : (i64, i64) -> i64
%7905 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%7906 = "vm.and.i64"(%7904, %7905) : (i64, i64) -> i64
%7907 = "vm.add.i64"(%7906, %441) : (i64, i64) -> i64
%7908 = "vm.const.i32.zero"() : () -> i32
%7909 = "vm.call"(%472, %7908) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7910 = "vm.const.i32.zero"() : () -> i32
%7911 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7912 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7913 = "vm.call"(%472, %460, %2073, %7909, %7910, %7911, %7912, %7907) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7914 = "vm.const.i32.zero"() : () -> i32
%7915 = "vm.call"(%472, %7914) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%7916 = "vm.const.i32.zero"() : () -> i32
%7917 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%7918 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%7919 = "vm.call"(%472, %460, %2073, %7915, %7916, %7917, %7918, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%7920 = "vm.call.variadic"(%7897, %7909, %7915) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%7921 = "vm.trunc.i64.i32"(%7891) : (i64) -> i32
%7922 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7923 = "vm.shr.i64.u"(%7891, %7922) : (i64, i32) -> i64
%7924 = "vm.trunc.i64.i32"(%7923) : (i64) -> i32
%7925 = "vm.trunc.i64.i32"(%7893) : (i64) -> i32
%7926 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7927 = "vm.shr.i64.u"(%7893, %7926) : (i64, i32) -> i64
%7928 = "vm.trunc.i64.i32"(%7927) : (i64) -> i32
%7929 = "vm.trunc.i64.i32"(%7891) : (i64) -> i32
%7930 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%7931 = "vm.shr.i64.u"(%7891, %7930) : (i64, i32) -> i64
%7932 = "vm.trunc.i64.i32"(%7931) : (i64) -> i32
%7933 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7934 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%7935 = "vm.const.i32.zero"() : () -> i32
%7936 = "vm.call"(%472, %7933, %7934, %460, %7935) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%7937 = "vm.const.i32.zero"() : () -> i32
%7938 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7939 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7913, %441, %7895, %7937, %7939, %7938) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%7940 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7941 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7942 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7940, %7941, %7942) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7943 = "vm.const.i32.zero"() : () -> i32
%7944 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7945 = "vm.const.i32"() <{value = 50 : i32}> : () -> i32
%7946 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%7947 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%7948 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7949 = "vm.const.i32.zero"() : () -> i32
%7950 = "vm.const.i32.zero"() : () -> i32
%7951 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7936, %473, %7945, %7946, %7947, %7948, %7944, %654, %657, %658, %661, %7921, %7924, %7925, %7928, %7943, %7949, %1995, %449, %441, %7943, %7950, %496, %449, %495, %7943, %7951, %7913, %449, %7907) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 8, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7952 = "vm.const.i32.zero"() : () -> i32
%7953 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7954 = "vm.const.i32.zero"() : () -> i32
%7955 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7956 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7957 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7958 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7936, %473, %7954, %7955, %7956, %7957, %7953, %407, %7929, %7932, %7952, %7958, %7919, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7959 = "vm.const.i32.zero"() : () -> i32
%7960 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7961 = "vm.const.i32"() <{value = 51 : i32}> : () -> i32
%7962 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7963 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7964 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7965 = "vm.const.i32.zero"() : () -> i32
%7966 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7936, %473, %7961, %7962, %7963, %7964, %7960, %658, %661, %7959, %7965, %1995, %449, %441, %7959, %7966, %7919, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7967 = "vm.const.i32.zero"() : () -> i32
%7968 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7969 = "vm.const.i32.zero"() : () -> i32
%7970 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7971 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7972 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7973 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7936, %473, %7969, %7970, %7971, %7972, %7968, %388, %405, %407, %7967, %7973, %7919, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7974 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7975 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7976 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7974, %7975, %7976) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7977 = "vm.const.i32.zero"() : () -> i32
%7978 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7977, %7978, %7919, %449, %7919, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7979 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7980 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7981 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7979, %7980, %7981) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7982 = "vm.const.i32.zero"() : () -> i32
%7983 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%7984 = "vm.const.i32"() <{value = 52 : i32}> : () -> i32
%7985 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7986 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7987 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%7988 = "vm.const.i32.zero"() : () -> i32
%7989 = "vm.const.i32.zero"() : () -> i32
%7990 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7936, %473, %7984, %7985, %7986, %7987, %7983, %654, %657, %7982, %7988, %1995, %449, %441, %7982, %7989, %7919, %449, %441, %7982, %7990, %7913, %449, %7907) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7991 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7992 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%7993 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7991, %7992, %7993) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%7994 = "vm.const.i32.zero"() : () -> i32
%7995 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7994, %7995, %7913, %449, %7901, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7996 = "vm.const.i32.zero"() : () -> i32
%7997 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7996, %7997, %7919, %431, %7919, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%7998 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%7999 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8000 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %7998, %7999, %8000) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8001 = "vm.const.i32.zero"() : () -> i32
%8002 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8003 = "vm.const.i32"() <{value = 53 : i32}> : () -> i32
%8004 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8005 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8006 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8007 = "vm.const.i32.zero"() : () -> i32
%8008 = "vm.const.i32.zero"() : () -> i32
%8009 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%7936, %473, %8003, %8004, %8005, %8006, %8002, %658, %661, %8001, %8007, %1995, %449, %441, %8001, %8008, %7919, %449, %441, %8001, %8009, %7913, %449, %7907) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8010 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8011 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8012 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %8010, %8011, %8012) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8013 = "vm.const.i32.zero"() : () -> i32
%8014 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %8013, %8014, %7913, %432, %7901, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8015 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8016 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8017 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%7936, %8015, %8016, %8017) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%7936) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%8018 = "vm.const.i32.zero"() : () -> i32
%8019 = "vm.call"(%472, %8018) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %7920, %8019, %7936) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%8020 = "vm.const.i32.zero"() : () -> i32
%8021 = "vm.call"(%472, %8020) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %8019, %8021, %7919) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%8022 = "vm.call.variadic"(%462, %8021) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%8022, %8022) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%8023 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8024 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8025 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%8026 = "vm.call"(%7901, %8025, %8023) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8027 = "vm.ext.i32.i64.u"(%8026) : (i32) -> i64
%8028 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8029 = "vm.shl.i64"(%8027, %8028) : (i64, i32) -> i64
%8030 = "vm.call"(%7901, %432, %8023) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8031 = "vm.ext.i32.i64.u"(%8030) : (i32) -> i64
%8032 = "vm.or.i64"(%8031, %8029) : (i64, i64) -> i64
%8033 = "vm.cmp.lt.i64.s"(%8032, %438) : (i64, i64) -> i32
%8034 = "vm.mul.i64"(%7891, %7893) : (i64, i64) -> i64
%8035 = "vm.const.i32.zero"() : () -> i32
%8036 = "vm.call"(%472, %8035) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8037 = "vm.const.i32.zero"() : () -> i32
%8038 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%8039 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%8040 = "vm.call"(%472, %460, %8021, %8036, %8037, %8038, %8039, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8041 = "vm.const.i32.zero"() : () -> i32
%8042 = "vm.call"(%472, %8041) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8043 = "vm.const.i32.zero"() : () -> i32
%8044 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8045 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8046 = "vm.call"(%472, %460, %8021, %8042, %8043, %8044, %8045, %441) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8047 = "vm.call.variadic"(%8036, %8042) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%8048 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8049 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%8050 = "vm.const.i32.zero"() : () -> i32
%8051 = "vm.call"(%472, %8048, %8049, %460, %8050) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%8052 = "vm.const.i32.zero"() : () -> i32
%8053 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8054 = "vm.const.i32"() <{value = 55 : i32}> : () -> i32
%8055 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8056 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8057 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8058 = "vm.const.i32.zero"() : () -> i32
%8059 = "vm.const.i32.zero"() : () -> i32
%8060 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8051, %473, %8054, %8055, %8056, %8057, %8053, %658, %661, %654, %657, %8052, %8058, %7913, %449, %7907, %8052, %8059, %1995, %449, %441, %8052, %8060, %8046, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8061 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8062 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8063 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8051, %8061, %8062, %8063) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8064 = "vm.const.i32.zero"() : () -> i32
%8065 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8051, %8064, %8065, %8046, %449, %8040, %449, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8066 = "vm.const.i32.zero"() : () -> i32
%8067 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8068 = "vm.const.i32"() <{value = 56 : i32}> : () -> i32
%8069 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8070 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8071 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8072 = "vm.const.i32.zero"() : () -> i32
%8073 = "vm.const.i32.zero"() : () -> i32
%8074 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8051, %473, %8068, %8069, %8070, %8071, %8067, %658, %661, %654, %657, %8066, %8072, %7913, %449, %7907, %8066, %8073, %1995, %449, %441, %8066, %8074, %8046, %449, %441) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8075 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8076 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8077 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8051, %8075, %8076, %8077) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8078 = "vm.const.i32.zero"() : () -> i32
%8079 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8051, %8078, %8079, %8046, %432, %8040, %432, %431) <{callee = @hal.command_buffer.copy_buffer}> : (!vm.ref<!hal.command_buffer>, i32, i32, !vm.ref<!hal.buffer>, i64, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8080 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8081 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8082 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8051, %8080, %8081, %8082) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%8051) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%8083 = "vm.const.i32.zero"() : () -> i32
%8084 = "vm.call"(%472, %8083) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %8047, %8084, %8051) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%8085 = "vm.const.i32.zero"() : () -> i32
%8086 = "vm.call"(%472, %8085) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %8084, %8086, %8046) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%8087 = "vm.call.variadic"(%462, %8086) <{callee = @hal.fence.await, segment_sizes = dense<[-1, 1]> : vector<2xi16>, segment_types = [i32, !vm.ref<!hal.fence>]}> : (i32, !vm.ref<!hal.fence>) -> i32
"vm.cond_fail"(%8087, %8087) <{message = "failed to wait on timepoint"}> : (i32, i32) -> ()
%8088 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8089 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8090 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%8091 = "vm.call"(%8040, %8090, %8088) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8092 = "vm.ext.i32.i64.u"(%8091) : (i32) -> i64
%8093 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8094 = "vm.shl.i64"(%8092, %8093) : (i64, i32) -> i64
%8095 = "vm.call"(%8040, %432, %8088) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8096 = "vm.ext.i32.i64.u"(%8095) : (i32) -> i64
%8097 = "vm.or.i64"(%8096, %8094) : (i64, i64) -> i64
%8098 = "vm.cmp.lt.i64.s"(%8097, %449) : (i64, i64) -> i32
%8099 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8100 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8101 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8102 = "vm.call"(%7901, %8101, %8099) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8103 = "vm.ext.i32.i64.u"(%8102) : (i32) -> i64
%8104 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8105 = "vm.shl.i64"(%8103, %8104) : (i64, i32) -> i64
%8106 = "vm.call"(%7901, %449, %8099) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8107 = "vm.ext.i32.i64.u"(%8106) : (i32) -> i64
%8108 = "vm.or.i64"(%8107, %8105) : (i64, i64) -> i64
%8109 = "vm.cmp.lt.i64.s"(%8108, %438) : (i64, i64) -> i32
%8110 = "vm.select.i64"(%8109, %437, %8108) : (i32, i64, i64) -> i64
%8111 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8112 = "vm.and.i32"(%8109, %8111) : (i32, i32) -> i32
%8113 = "vm.ext.i32.i64.u"(%8112) : (i32) -> i64
%8114 = "vm.mul.i64"(%8110, %8032) : (i64, i64) -> i64
%8115 = "vm.add.i64"(%8113, %437) : (i64, i64) -> i64
%8116 = "vm.select.i64"(%8033, %8110, %8114) : (i32, i64, i64) -> i64
%8117 = "vm.select.i64"(%8033, %8115, %8113) : (i32, i64, i64) -> i64
%8118 = "vm.mul.i64"(%8116, %440) : (i64, i64) -> i64
%8119 = "vm.cmp.lte.i64.u"(%8117, %437) : (i64, i64) -> i32
%8120 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8121 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8122 = "vm.xor.i32"(%8119, %8121) : (i32, i32) -> i32
"vm.cond_fail"(%8122, %8120) <{message = "must have at most one inferred (negative) dimension"}> : (i32, i32) -> ()
%8123 = "vm.div.i64.s"(%8034, %8118) : (i64, i64) -> i64
%8124 = "vm.select.i64"(%8109, %8123, %8108) : (i32, i64, i64) -> i64
%8125 = "vm.select.i64"(%8033, %8123, %8032) : (i32, i64, i64) -> i64
%8126 = "vm.add.i64"(%8125, %466) : (i64, i64) -> i64
%8127 = "vm.mul.i64"(%8124, %419) : (i64, i64) -> i64
%8128 = "vm.mul.i64"(%8127, %8126) : (i64, i64) -> i64
%8129 = "vm.cmp.lt.i64.s"(%8126, %438) : (i64, i64) -> i32
%8130 = "vm.select.i64"(%8129, %8126, %438) : (i32, i64, i64) -> i64
%8131 = "vm.cmp.lt.i64.s"(%8125, %449) : (i64, i64) -> i32
%8132 = "vm.add.i64"(%8125, %8126) : (i64, i64) -> i64
%8133 = "vm.select.i64"(%8131, %8132, %8125) : (i32, i64, i64) -> i64
%8134 = "vm.cmp.lt.i64.s"(%8133, %449) : (i64, i64) -> i32
%8135 = "vm.select.i64"(%8134, %446, %8133) : (i32, i64, i64) -> i64
%8136 = "vm.cmp.gt.i64.s"(%8135, %8126) : (i64, i64) -> i32
%8137 = "vm.select.i64"(%8136, %8126, %8135) : (i32, i64, i64) -> i64
%8138 = "vm.sub.i64"(%8137, %8130) : (i64, i64) -> i64
%8139 = "vm.cmp.lt.i64.s"(%8138, %449) : (i64, i64) -> i32
%8140 = "vm.select.i64"(%8139, %449, %8138) : (i32, i64, i64) -> i64
%8141 = "vm.cmp.lt.i64.s"(%8126, %437) : (i64, i64) -> i32
%8142 = "vm.select.i64"(%8141, %8126, %437) : (i32, i64, i64) -> i64
%8143 = "vm.cmp.lt.i64.s"(%8126, %436) : (i64, i64) -> i32
%8144 = "vm.select.i64"(%8143, %8126, %436) : (i32, i64, i64) -> i64
%8145 = "vm.add.i64"(%8097, %8126) : (i64, i64) -> i64
%8146 = "vm.select.i64"(%8098, %8145, %8097) : (i32, i64, i64) -> i64
%8147 = "vm.cmp.lt.i64.s"(%8146, %449) : (i64, i64) -> i32
%8148 = "vm.select.i64"(%8147, %446, %8146) : (i32, i64, i64) -> i64
%8149 = "vm.cmp.gt.i64.s"(%8148, %8126) : (i64, i64) -> i32
%8150 = "vm.select.i64"(%8149, %8126, %8148) : (i32, i64, i64) -> i64
%8151 = "vm.sub.i64"(%8150, %8144) : (i64, i64) -> i64
%8152 = "vm.cmp.lt.i64.s"(%8151, %449) : (i64, i64) -> i32
%8153 = "vm.select.i64"(%8152, %449, %8151) : (i32, i64, i64) -> i64
%8154 = "vm.mul.i64"(%8124, %430) : (i64, i64) -> i64
%8155 = "vm.mul.i64"(%8154, %8140) : (i64, i64) -> i64
%8156 = "vm.cmp.eq.i64"(%8125, %8140) : (i64, i64) -> i32
%8157 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8158 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8159 = "vm.xor.i32"(%8156, %8158) : (i32, i32) -> i32
"vm.cond_fail"(%8159, %8157) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8160 = "vm.mul.i64"(%8124, %418) : (i64, i64) -> i64
%8161 = "vm.mul.i64"(%8160, %8125) : (i64, i64) -> i64
%8162 = "vm.mul.i64"(%8124, %425) : (i64, i64) -> i64
%8163 = "vm.mul.i64"(%8162, %8125) : (i64, i64) -> i64
%8164 = "vm.mul.i64"(%8124, %417) : (i64, i64) -> i64
%8165 = "vm.mul.i64"(%8164, %8125) : (i64, i64) -> i64
%8166 = "vm.cmp.eq.i64"(%6105, %8124) : (i64, i64) -> i32
%8167 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8168 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8169 = "vm.xor.i32"(%8166, %8168) : (i32, i32) -> i32
"vm.cond_fail"(%8169, %8167) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8170 = "vm.cmp.eq.i64"(%6106, %8125) : (i64, i64) -> i32
%8171 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8172 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8173 = "vm.xor.i32"(%8170, %8172) : (i32, i32) -> i32
"vm.cond_fail"(%8173, %8171) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8174 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8175 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8176 = "vm.xor.i32"(%8166, %8175) : (i32, i32) -> i32
"vm.cond_fail"(%8176, %8174) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8177 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8178 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8179 = "vm.xor.i32"(%8170, %8178) : (i32, i32) -> i32
"vm.cond_fail"(%8179, %8177) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8180 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8181 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8182 = "vm.xor.i32"(%8166, %8181) : (i32, i32) -> i32
"vm.cond_fail"(%8182, %8180) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8183 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8184 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8185 = "vm.xor.i32"(%8170, %8184) : (i32, i32) -> i32
"vm.cond_fail"(%8185, %8183) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8186 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8187 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8188 = "vm.xor.i32"(%8166, %8187) : (i32, i32) -> i32
"vm.cond_fail"(%8188, %8186) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8189 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8190 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8191 = "vm.xor.i32"(%8170, %8190) : (i32, i32) -> i32
"vm.cond_fail"(%8191, %8189) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8192 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8193 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8194 = "vm.xor.i32"(%8166, %8193) : (i32, i32) -> i32
"vm.cond_fail"(%8194, %8192) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8195 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8196 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8197 = "vm.xor.i32"(%8170, %8196) : (i32, i32) -> i32
"vm.cond_fail"(%8197, %8195) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8198 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8199 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8200 = "vm.xor.i32"(%8166, %8199) : (i32, i32) -> i32
"vm.cond_fail"(%8200, %8198) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8201 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8202 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8203 = "vm.xor.i32"(%8170, %8202) : (i32, i32) -> i32
"vm.cond_fail"(%8203, %8201) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8204 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8205 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8206 = "vm.xor.i32"(%8166, %8205) : (i32, i32) -> i32
"vm.cond_fail"(%8206, %8204) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8207 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8208 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8209 = "vm.xor.i32"(%8170, %8208) : (i32, i32) -> i32
"vm.cond_fail"(%8209, %8207) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8210 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8211 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8212 = "vm.xor.i32"(%8166, %8211) : (i32, i32) -> i32
"vm.cond_fail"(%8212, %8210) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8213 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8214 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8215 = "vm.xor.i32"(%8170, %8214) : (i32, i32) -> i32
"vm.cond_fail"(%8215, %8213) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8216 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8217 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8218 = "vm.xor.i32"(%8166, %8217) : (i32, i32) -> i32
"vm.cond_fail"(%8218, %8216) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8219 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8220 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8221 = "vm.xor.i32"(%8170, %8220) : (i32, i32) -> i32
"vm.cond_fail"(%8221, %8219) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8222 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8223 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8224 = "vm.xor.i32"(%8166, %8223) : (i32, i32) -> i32
"vm.cond_fail"(%8224, %8222) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8225 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8226 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8227 = "vm.xor.i32"(%8170, %8226) : (i32, i32) -> i32
"vm.cond_fail"(%8227, %8225) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8228 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8229 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8230 = "vm.xor.i32"(%8166, %8229) : (i32, i32) -> i32
"vm.cond_fail"(%8230, %8228) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8231 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8232 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8233 = "vm.xor.i32"(%8170, %8232) : (i32, i32) -> i32
"vm.cond_fail"(%8233, %8231) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8234 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8235 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8236 = "vm.xor.i32"(%8166, %8235) : (i32, i32) -> i32
"vm.cond_fail"(%8236, %8234) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8237 = "vm.const.i32"() <{value = 9 : i32}> : () -> i32
%8238 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8239 = "vm.xor.i32"(%8170, %8238) : (i32, i32) -> i32
"vm.cond_fail"(%8239, %8237) <{message = "mismatched size for broadcast"}> : (i32, i32) -> ()
%8240 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8241 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8242 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8243 = "vm.call"(%8040, %8242, %8240) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8244 = "vm.ext.i32.i64.u"(%8243) : (i32) -> i64
%8245 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8246 = "vm.shl.i64"(%8244, %8245) : (i64, i32) -> i64
%8247 = "vm.call"(%8040, %449, %8240) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8248 = "vm.ext.i32.i64.u"(%8247) : (i32) -> i64
%8249 = "vm.or.i64"(%8248, %8246) : (i64, i64) -> i64
%8250 = "vm.cmp.lt.i64.s"(%8249, %449) : (i64, i64) -> i32
%8251 = "vm.add.i64"(%8249, %8126) : (i64, i64) -> i64
%8252 = "vm.select.i64"(%8250, %8251, %8249) : (i32, i64, i64) -> i64
%8253 = "vm.cmp.lt.i64.s"(%8252, %449) : (i64, i64) -> i32
%8254 = "vm.select.i64"(%8253, %446, %8252) : (i32, i64, i64) -> i64
%8255 = "vm.cmp.gt.i64.s"(%8254, %8126) : (i64, i64) -> i32
%8256 = "vm.select.i64"(%8255, %8126, %8254) : (i32, i64, i64) -> i64
%8257 = "vm.sub.i64"(%8256, %8142) : (i64, i64) -> i64
%8258 = "vm.cmp.lt.i64.s"(%8257, %449) : (i64, i64) -> i32
%8259 = "vm.select.i64"(%8258, %449, %8257) : (i32, i64, i64) -> i64
%8260 = "vm.const.i32.zero"() : () -> i32
%8261 = "vm.call"(%472, %8260) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8262 = "vm.const.i32.zero"() : () -> i32
%8263 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8264 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8265 = "vm.call"(%472, %460, %8021, %8261, %8262, %8263, %8264, %8155) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8266 = "vm.const.i32.zero"() : () -> i32
%8267 = "vm.call"(%472, %8266) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8268 = "vm.const.i32.zero"() : () -> i32
%8269 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8270 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8271 = "vm.call"(%472, %460, %8021, %8267, %8268, %8269, %8270, %8128) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8272 = "vm.call.variadic"(%8261, %8267) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%8273 = "vm.trunc.i64.i32"(%8124) : (i64) -> i32
%8274 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8275 = "vm.shr.i64.u"(%8124, %8274) : (i64, i32) -> i64
%8276 = "vm.trunc.i64.i32"(%8275) : (i64) -> i32
%8277 = "vm.trunc.i64.i32"(%8125) : (i64) -> i32
%8278 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8279 = "vm.shr.i64.u"(%8125, %8278) : (i64, i32) -> i64
%8280 = "vm.trunc.i64.i32"(%8279) : (i64) -> i32
%8281 = "vm.trunc.i64.i32"(%8126) : (i64) -> i32
%8282 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8283 = "vm.shr.i64.u"(%8126, %8282) : (i64, i32) -> i64
%8284 = "vm.trunc.i64.i32"(%8283) : (i64) -> i32
%8285 = "vm.trunc.i64.i32"(%8140) : (i64) -> i32
%8286 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8287 = "vm.shr.i64.u"(%8140, %8286) : (i64, i32) -> i64
%8288 = "vm.trunc.i64.i32"(%8287) : (i64) -> i32
%8289 = "vm.trunc.i64.i32"(%8259) : (i64) -> i32
%8290 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8291 = "vm.shr.i64.u"(%8259, %8290) : (i64, i32) -> i64
%8292 = "vm.trunc.i64.i32"(%8291) : (i64) -> i32
%8293 = "vm.trunc.i64.i32"(%8153) : (i64) -> i32
%8294 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8295 = "vm.shr.i64.u"(%8153, %8294) : (i64, i32) -> i64
%8296 = "vm.trunc.i64.i32"(%8295) : (i64) -> i32
%8297 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8298 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%8299 = "vm.const.i32.zero"() : () -> i32
%8300 = "vm.call"(%472, %8297, %8298, %460, %8299) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%8301 = "vm.const.i32.zero"() : () -> i32
%8302 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8303 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8300, %8271, %449, %8128, %8301, %8303, %8302) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%8304 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8305 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8306 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8300, %8304, %8305, %8306) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8307 = "vm.cmp.lte.i64.s"(%8124, %449) : (i64, i64) -> i32
%8308 = "vm.sub.i64"(%449, %8124) : (i64, i64) -> i64
%8309 = "vm.sub.i64"(%8124, %447) : (i64, i64) -> i64
%8310 = "vm.select.i64"(%8307, %8308, %8309) : (i32, i64, i64) -> i64
%8311 = "vm.div.i64.s"(%8310, %432) : (i64, i64) -> i64
%8312 = "vm.sub.i64"(%449, %8311) : (i64, i64) -> i64
%8313 = "vm.add.i64"(%8311, %447) : (i64, i64) -> i64
%8314 = "vm.select.i64"(%8307, %8312, %8313) : (i32, i64, i64) -> i64
%8315 = "vm.cmp.lte.i64.s"(%8125, %449) : (i64, i64) -> i32
%8316 = "vm.sub.i64"(%449, %8125) : (i64, i64) -> i64
%8317 = "vm.sub.i64"(%8125, %447) : (i64, i64) -> i64
%8318 = "vm.select.i64"(%8315, %8316, %8317) : (i32, i64, i64) -> i64
%8319 = "vm.div.i64.s"(%8318, %432) : (i64, i64) -> i64
%8320 = "vm.sub.i64"(%449, %8319) : (i64, i64) -> i64
%8321 = "vm.add.i64"(%8319, %447) : (i64, i64) -> i64
%8322 = "vm.select.i64"(%8315, %8320, %8321) : (i32, i64, i64) -> i64
%8323 = "vm.const.i32.zero"() : () -> i32
%8324 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8325 = "vm.const.i32"() <{value = 54 : i32}> : () -> i32
%8326 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%8327 = "vm.trunc.i64.i32"(%8322) : (i64) -> i32
%8328 = "vm.trunc.i64.i32"(%8314) : (i64) -> i32
%8329 = "vm.const.i32.zero"() : () -> i32
%8330 = "vm.const.i32.zero"() : () -> i32
%8331 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8300, %473, %8325, %8326, %8327, %8328, %8324, %654, %657, %658, %661, %8273, %8276, %8277, %8280, %8281, %8284, %8323, %8329, %7913, %449, %7907, %8323, %8330, %1995, %449, %441, %8323, %8331, %8271, %449, %8128) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8332 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8333 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8334 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8300, %8332, %8333, %8334) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8335 = "vm.cmp.lte.i64.s"(%8140, %449) : (i64, i64) -> i32
%8336 = "vm.sub.i64"(%449, %8140) : (i64, i64) -> i64
%8337 = "vm.sub.i64"(%8140, %447) : (i64, i64) -> i64
%8338 = "vm.select.i64"(%8335, %8336, %8337) : (i32, i64, i64) -> i64
%8339 = "vm.div.i64.s"(%8338, %432) : (i64, i64) -> i64
%8340 = "vm.sub.i64"(%449, %8339) : (i64, i64) -> i64
%8341 = "vm.add.i64"(%8339, %447) : (i64, i64) -> i64
%8342 = "vm.select.i64"(%8335, %8340, %8341) : (i32, i64, i64) -> i64
%8343 = "vm.const.i32.zero"() : () -> i32
%8344 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8345 = "vm.const.i32"() <{value = 57 : i32}> : () -> i32
%8346 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%8347 = "vm.trunc.i64.i32"(%8342) : (i64) -> i32
%8348 = "vm.trunc.i64.i32"(%8314) : (i64) -> i32
%8349 = "vm.const.i32.zero"() : () -> i32
%8350 = "vm.const.i32.zero"() : () -> i32
%8351 = "vm.const.i32.zero"() : () -> i32
%8352 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8300, %473, %8345, %8346, %8347, %8348, %8344, %658, %661, %654, %657, %8285, %8288, %8273, %8276, %8281, %8284, %8343, %8349, %7913, %449, %7907, %8343, %8350, %1995, %449, %441, %8343, %8351, %8271, %449, %8128, %8343, %8352, %8265, %449, %8155) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 10, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8353 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8354 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8355 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8300, %8353, %8354, %8355) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8356 = "vm.cmp.lte.i64.s"(%8259, %449) : (i64, i64) -> i32
%8357 = "vm.sub.i64"(%449, %8259) : (i64, i64) -> i64
%8358 = "vm.sub.i64"(%8259, %447) : (i64, i64) -> i64
%8359 = "vm.select.i64"(%8356, %8357, %8358) : (i32, i64, i64) -> i64
%8360 = "vm.div.i64.s"(%8359, %432) : (i64, i64) -> i64
%8361 = "vm.sub.i64"(%449, %8360) : (i64, i64) -> i64
%8362 = "vm.add.i64"(%8360, %447) : (i64, i64) -> i64
%8363 = "vm.select.i64"(%8356, %8361, %8362) : (i32, i64, i64) -> i64
%8364 = "vm.const.i32.zero"() : () -> i32
%8365 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8366 = "vm.const.i32"() <{value = 58 : i32}> : () -> i32
%8367 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%8368 = "vm.trunc.i64.i32"(%8363) : (i64) -> i32
%8369 = "vm.trunc.i64.i32"(%8314) : (i64) -> i32
%8370 = "vm.const.i32.zero"() : () -> i32
%8371 = "vm.const.i32.zero"() : () -> i32
%8372 = "vm.const.i32.zero"() : () -> i32
%8373 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8300, %473, %8366, %8367, %8368, %8369, %8365, %658, %661, %654, %657, %8289, %8292, %8281, %8284, %8273, %8276, %8285, %8288, %8364, %8370, %7913, %449, %7907, %8364, %8371, %1995, %449, %441, %8364, %8372, %8271, %449, %8128, %8364, %8373, %8265, %449, %8155) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8374 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8375 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8376 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8300, %8374, %8375, %8376) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8377 = "vm.cmp.lte.i64.s"(%8153, %449) : (i64, i64) -> i32
%8378 = "vm.sub.i64"(%449, %8153) : (i64, i64) -> i64
%8379 = "vm.sub.i64"(%8153, %447) : (i64, i64) -> i64
%8380 = "vm.select.i64"(%8377, %8378, %8379) : (i32, i64, i64) -> i64
%8381 = "vm.div.i64.s"(%8380, %432) : (i64, i64) -> i64
%8382 = "vm.sub.i64"(%449, %8381) : (i64, i64) -> i64
%8383 = "vm.add.i64"(%8381, %447) : (i64, i64) -> i64
%8384 = "vm.select.i64"(%8377, %8382, %8383) : (i32, i64, i64) -> i64
%8385 = "vm.const.i32.zero"() : () -> i32
%8386 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8387 = "vm.const.i32"() <{value = 59 : i32}> : () -> i32
%8388 = "vm.const.i32"() <{value = 8 : i32}> : () -> i32
%8389 = "vm.trunc.i64.i32"(%8384) : (i64) -> i32
%8390 = "vm.trunc.i64.i32"(%8314) : (i64) -> i32
%8391 = "vm.const.i32.zero"() : () -> i32
%8392 = "vm.const.i32.zero"() : () -> i32
%8393 = "vm.const.i32.zero"() : () -> i32
%8394 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8300, %473, %8387, %8388, %8389, %8390, %8386, %658, %661, %654, %657, %8293, %8296, %8281, %8284, %8273, %8276, %8285, %8288, %8385, %8391, %7913, %449, %7907, %8385, %8392, %1995, %449, %441, %8385, %8393, %8271, %449, %8128, %8385, %8394, %8265, %449, %8155) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 12, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8395 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8396 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8397 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8300, %8395, %8396, %8397) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%8300) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%8398 = "vm.const.i32.zero"() : () -> i32
%8399 = "vm.call"(%472, %8398) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %8272, %8399, %8300) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%8400 = "vm.const.i32.zero"() : () -> i32
%8401 = "vm.call"(%472, %8400) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %8399, %8401, %8271) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%8402 = "vm.call.variadic"(%8401, %470) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%8403 = "vm.const.i32.zero"() : () -> i32
%8404 = "vm.call"(%472, %8403) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8405 = "vm.const.i32.zero"() : () -> i32
%8406 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8407 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8408 = "vm.call"(%472, %460, %8402, %8404, %8405, %8406, %8407, %8163) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8409 = "vm.const.i32.zero"() : () -> i32
%8410 = "vm.call"(%472, %8409) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8411 = "vm.const.i32.zero"() : () -> i32
%8412 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8413 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8414 = "vm.call"(%472, %460, %8402, %8410, %8411, %8412, %8413, %8161) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8415 = "vm.call.variadic"(%8404, %8410) <{callee = @hal.fence.join, segment_sizes = dense<2> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%8416 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8417 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%8418 = "vm.const.i32.zero"() : () -> i32
%8419 = "vm.call"(%472, %8416, %8417, %460, %8418) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%8420 = "vm.const.i32.zero"() : () -> i32
%8421 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8422 = "vm.const.i32"() <{value = 60 : i32}> : () -> i32
%8423 = "vm.const.i32"() <{value = 6 : i32}> : () -> i32
%8424 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%8425 = "vm.trunc.i64.i32"(%8322) : (i64) -> i32
%8426 = "vm.const.i32.zero"() : () -> i32
%8427 = "vm.const.i32.zero"() : () -> i32
%8428 = "vm.const.i32.zero"() : () -> i32
%8429 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8419, %473, %8422, %8423, %8424, %8425, %8421, %8273, %8276, %8277, %8280, %8285, %8288, %8420, %8426, %7913, %449, %7907, %8420, %8427, %8265, %449, %8155, %8420, %8428, %471, %449, %459, %8420, %8429, %8414, %449, %8161) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8430 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8431 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8432 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8419, %8430, %8431, %8432) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8433 = "vm.const.i32.zero"() : () -> i32
%8434 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8435 = "vm.const.i32"() <{value = 61 : i32}> : () -> i32
%8436 = "vm.const.i32"() <{value = 6 : i32}> : () -> i32
%8437 = "vm.const.i32"() <{value = 2 : i32}> : () -> i32
%8438 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8439 = "vm.const.i32.zero"() : () -> i32
%8440 = "vm.const.i32.zero"() : () -> i32
%8441 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8419, %473, %8435, %8436, %8437, %8438, %8434, %8273, %8276, %8277, %8280, %8433, %8439, %471, %449, %459, %8433, %8440, %8414, %449, %8161, %8433, %8441, %8408, %449, %8163) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 4, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8442 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8443 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8444 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8419, %8442, %8443, %8444) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
"vm.call"(%8419) <{callee = @hal.command_buffer.finalize}> : (!vm.ref<!hal.command_buffer>) -> ()
%8445 = "vm.const.i32.zero"() : () -> i32
%8446 = "vm.call"(%472, %8445) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call.variadic"(%472, %460, %8415, %8446, %8419) <{callee = @hal.device.queue.execute, segment_sizes = dense<[-1, -1, -1, -1, 1]> : vector<5xi16>, segment_types = [!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>]}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.command_buffer>) -> ()
%8447 = "vm.const.i32.zero"() : () -> i32
%8448 = "vm.call"(%472, %8447) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
"vm.call"(%472, %460, %8446, %8448, %8414) <{callee = @hal.device.queue.dealloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.buffer>) -> ()
%8449 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8450 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8451 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8452 = "vm.call"(%2106, %8451, %8449) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8453 = "vm.ext.i32.i64.u"(%8452) : (i32) -> i64
%8454 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8455 = "vm.shl.i64"(%8453, %8454) : (i64, i32) -> i64
%8456 = "vm.call"(%2106, %449, %8449) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8457 = "vm.ext.i32.i64.u"(%8456) : (i32) -> i64
%8458 = "vm.or.i64"(%8457, %8455) : (i64, i64) -> i64
%8459 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8460 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8461 = "vm.const.i64"() <{value = 68 : i64}> : () -> i64
%8462 = "vm.call"(%2106, %8461, %8459) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8463 = "vm.ext.i32.i64.u"(%8462) : (i32) -> i64
%8464 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8465 = "vm.shl.i64"(%8463, %8464) : (i64, i32) -> i64
%8466 = "vm.call"(%2106, %432, %8459) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8467 = "vm.ext.i32.i64.u"(%8466) : (i32) -> i64
%8468 = "vm.or.i64"(%8467, %8465) : (i64, i64) -> i64
%8469 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8470 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8471 = "vm.const.i64"() <{value = 132 : i64}> : () -> i64
%8472 = "vm.call"(%2106, %8471, %8469) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8473 = "vm.ext.i32.i64.u"(%8472) : (i32) -> i64
%8474 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8475 = "vm.shl.i64"(%8473, %8474) : (i64, i32) -> i64
%8476 = "vm.call"(%2106, %441, %8469) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8477 = "vm.ext.i32.i64.u"(%8476) : (i32) -> i64
%8478 = "vm.or.i64"(%8477, %8475) : (i64, i64) -> i64
%8479 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8480 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8481 = "vm.const.i64"() <{value = 196 : i64}> : () -> i64
%8482 = "vm.call"(%2106, %8481, %8479) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8483 = "vm.ext.i32.i64.u"(%8482) : (i32) -> i64
%8484 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8485 = "vm.shl.i64"(%8483, %8484) : (i64, i32) -> i64
%8486 = "vm.call"(%2106, %451, %8479) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8487 = "vm.ext.i32.i64.u"(%8486) : (i32) -> i64
%8488 = "vm.or.i64"(%8487, %8485) : (i64, i64) -> i64
%8489 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8490 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8491 = "vm.const.i64"() <{value = 260 : i64}> : () -> i64
%8492 = "vm.call"(%2106, %8491, %8489) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8493 = "vm.ext.i32.i64.u"(%8492) : (i32) -> i64
%8494 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8495 = "vm.shl.i64"(%8493, %8494) : (i64, i32) -> i64
%8496 = "vm.call"(%2106, %420, %8489) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8497 = "vm.ext.i32.i64.u"(%8496) : (i32) -> i64
%8498 = "vm.or.i64"(%8497, %8495) : (i64, i64) -> i64
%8499 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8500 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8501 = "vm.const.i64"() <{value = 324 : i64}> : () -> i64
%8502 = "vm.call"(%2106, %8501, %8499) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8503 = "vm.ext.i32.i64.u"(%8502) : (i32) -> i64
%8504 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8505 = "vm.shl.i64"(%8503, %8504) : (i64, i32) -> i64
%8506 = "vm.call"(%2106, %453, %8499) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8507 = "vm.ext.i32.i64.u"(%8506) : (i32) -> i64
%8508 = "vm.or.i64"(%8507, %8505) : (i64, i64) -> i64
%8509 = "vm.const.i32"() <{value = 4 : i32}> : () -> i32
%8510 = "vm.const.i64"() <{value = 4 : i64}> : () -> i64
%8511 = "vm.const.i64"() <{value = 388 : i64}> : () -> i64
%8512 = "vm.call"(%2106, %8511, %8509) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8513 = "vm.ext.i32.i64.u"(%8512) : (i32) -> i64
%8514 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8515 = "vm.shl.i64"(%8513, %8514) : (i64, i32) -> i64
%8516 = "vm.call"(%2106, %454, %8509) <{callee = @hal.buffer.load}> : (!vm.ref<!hal.buffer>, i64, i32) -> i32
%8517 = "vm.ext.i32.i64.u"(%8516) : (i32) -> i64
%8518 = "vm.or.i64"(%8517, %8515) : (i64, i64) -> i64
%8519 = "vm.add.i64"(%8458, %8498) : (i64, i64) -> i64
%8520 = "vm.add.i64"(%8519, %490) : (i64, i64) -> i64
%8521 = "vm.add.i64"(%8468, %8508) : (i64, i64) -> i64
%8522 = "vm.add.i64"(%8521, %443) : (i64, i64) -> i64
%8523 = "vm.add.i64"(%8478, %8518) : (i64, i64) -> i64
%8524 = "vm.add.i64"(%8523, %492) : (i64, i64) -> i64
%8525 = "vm.add.i64"(%8488, %2134) : (i64, i64) -> i64
%8526 = "vm.add.i64"(%8525, %927) : (i64, i64) -> i64
%8527 = "vm.mul.i64"(%8520, %429) : (i64, i64) -> i64
%8528 = "vm.mul.i64"(%8527, %8522) : (i64, i64) -> i64
%8529 = "vm.mul.i64"(%8528, %8524) : (i64, i64) -> i64
%8530 = "vm.mul.i64"(%8529, %8526) : (i64, i64) -> i64
%8531 = "vm.cmp.lt.i64.s"(%8526, %438) : (i64, i64) -> i32
%8532 = "vm.mul.i64"(%8520, %8522) : (i64, i64) -> i64
%8533 = "vm.mul.i64"(%8532, %8524) : (i64, i64) -> i64
%8534 = "vm.mul.i64"(%8533, %8526) : (i64, i64) -> i64
%8535 = "vm.call.variadic"(%1115, %5253, %860, %2123) <{callee = @hal.fence.join, segment_sizes = dense<4> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%8536 = "vm.const.i32.zero"() : () -> i32
%8537 = "vm.call"(%472, %8536) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8538 = "vm.const.i32.zero"() : () -> i32
%8539 = "vm.const.i32"() <{value = 86 : i32}> : () -> i32
%8540 = "vm.const.i32"() <{value = 150998019 : i32}> : () -> i32
%8541 = "vm.call"(%472, %460, %8535, %8537, %8538, %8539, %8540, %420) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8542 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%8543 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%8544 = "vm.add.i64"(%8530, %8543) : (i64, i64) -> i64
%8545 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%8546 = "vm.and.i64"(%8544, %8545) : (i64, i64) -> i64
%8547 = "vm.add.i64"(%8546, %420) : (i64, i64) -> i64
%8548 = "vm.const.i32.zero"() : () -> i32
%8549 = "vm.call"(%472, %8548) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8550 = "vm.const.i32.zero"() : () -> i32
%8551 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8552 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8553 = "vm.call"(%472, %460, %8535, %8549, %8550, %8551, %8552, %8547) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8554 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%8555 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%8556 = "vm.add.i64"(%2094, %8555) : (i64, i64) -> i64
%8557 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%8558 = "vm.and.i64"(%8556, %8557) : (i64, i64) -> i64
%8559 = "vm.add.i64"(%8558, %441) : (i64, i64) -> i64
%8560 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%8561 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%8562 = "vm.add.i64"(%2097, %8561) : (i64, i64) -> i64
%8563 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%8564 = "vm.and.i64"(%8562, %8563) : (i64, i64) -> i64
%8565 = "vm.add.i64"(%8559, %8564) : (i64, i64) -> i64
%8566 = "vm.const.i64"() <{value = 1 : i64}> : () -> i64
%8567 = "vm.const.i64"() <{value = 63 : i64}> : () -> i64
%8568 = "vm.add.i64"(%2100, %8567) : (i64, i64) -> i64
%8569 = "vm.const.i64"() <{value = -64 : i64}> : () -> i64
%8570 = "vm.and.i64"(%8568, %8569) : (i64, i64) -> i64
%8571 = "vm.add.i64"(%8565, %8570) : (i64, i64) -> i64
%8572 = "vm.const.i32.zero"() : () -> i32
%8573 = "vm.call"(%472, %8572) <{callee = @hal.fence.create}> : (!vm.ref<!hal.device>, i32) -> !vm.ref<!hal.fence>
%8574 = "vm.const.i32.zero"() : () -> i32
%8575 = "vm.const.i32"() <{value = 48 : i32}> : () -> i32
%8576 = "vm.const.i32"() <{value = 3075 : i32}> : () -> i32
%8577 = "vm.call"(%472, %460, %8535, %8573, %8574, %8575, %8576, %8571) <{callee = @hal.device.queue.alloca}> : (!vm.ref<!hal.device>, i64, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>, i32, i32, i32, i64) -> !vm.ref<!hal.buffer>
%8578 = "vm.call.variadic"(%8537, %8549, %8573) <{callee = @hal.fence.join, segment_sizes = dense<3> : vector<1xi16>, segment_types = [!vm.ref<!hal.fence>]}> {nosideeffects} : (!vm.ref<!hal.fence>, !vm.ref<!hal.fence>, !vm.ref<!hal.fence>) -> !vm.ref<!hal.fence>
%8579 = "vm.trunc.i64.i32"(%8559) : (i64) -> i32
%8580 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8581 = "vm.shr.i64.u"(%8559, %8580) : (i64, i32) -> i64
%8582 = "vm.trunc.i64.i32"(%8581) : (i64) -> i32
%8583 = "vm.trunc.i64.i32"(%2096) : (i64) -> i32
%8584 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8585 = "vm.shr.i64.u"(%2096, %8584) : (i64, i32) -> i64
%8586 = "vm.trunc.i64.i32"(%8585) : (i64) -> i32
%8587 = "vm.trunc.i64.i32"(%8565) : (i64) -> i32
%8588 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8589 = "vm.shr.i64.u"(%8565, %8588) : (i64, i32) -> i64
%8590 = "vm.trunc.i64.i32"(%8589) : (i64) -> i32
%8591 = "vm.trunc.i64.i32"(%869) : (i64) -> i32
%8592 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8593 = "vm.shr.i64.u"(%869, %8592) : (i64, i32) -> i64
%8594 = "vm.trunc.i64.i32"(%8593) : (i64) -> i32
%8595 = "vm.trunc.i64.i32"(%870) : (i64) -> i32
%8596 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8597 = "vm.shr.i64.u"(%870, %8596) : (i64, i32) -> i64
%8598 = "vm.trunc.i64.i32"(%8597) : (i64) -> i32
%8599 = "vm.trunc.i64.i32"(%8520) : (i64) -> i32
%8600 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8601 = "vm.shr.i64.u"(%8520, %8600) : (i64, i32) -> i64
%8602 = "vm.trunc.i64.i32"(%8601) : (i64) -> i32
%8603 = "vm.trunc.i64.i32"(%8522) : (i64) -> i32
%8604 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8605 = "vm.shr.i64.u"(%8522, %8604) : (i64, i32) -> i64
%8606 = "vm.trunc.i64.i32"(%8605) : (i64) -> i32
%8607 = "vm.trunc.i64.i32"(%8524) : (i64) -> i32
%8608 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8609 = "vm.shr.i64.u"(%8524, %8608) : (i64, i32) -> i64
%8610 = "vm.trunc.i64.i32"(%8609) : (i64) -> i32
%8611 = "vm.trunc.i64.i32"(%8526) : (i64) -> i32
%8612 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8613 = "vm.shr.i64.u"(%8526, %8612) : (i64, i32) -> i64
%8614 = "vm.trunc.i64.i32"(%8613) : (i64) -> i32
%8615 = "vm.trunc.i64.i32"(%8520) : (i64) -> i32
%8616 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8617 = "vm.shr.i64.u"(%8520, %8616) : (i64, i32) -> i64
%8618 = "vm.trunc.i64.i32"(%8617) : (i64) -> i32
%8619 = "vm.trunc.i64.i32"(%8522) : (i64) -> i32
%8620 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8621 = "vm.shr.i64.u"(%8522, %8620) : (i64, i32) -> i64
%8622 = "vm.trunc.i64.i32"(%8621) : (i64) -> i32
%8623 = "vm.trunc.i64.i32"(%8526) : (i64) -> i32
%8624 = "vm.const.i32"() <{value = 32 : i32}> : () -> i32
%8625 = "vm.shr.i64.u"(%8526, %8624) : (i64, i32) -> i64
%8626 = "vm.trunc.i64.i32"(%8625) : (i64) -> i32
%8627 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8628 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%8629 = "vm.const.i32.zero"() : () -> i32
%8630 = "vm.call"(%472, %8627, %8628, %460, %8629) <{callee = @hal.command_buffer.create}> : (!vm.ref<!hal.device>, i32, i32, i64, i32) -> !vm.ref<!hal.command_buffer>
%8631 = "vm.const.i32.zero"() : () -> i32
%8632 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8633 = "vm.const.i32"() <{value = 62 : i32}> : () -> i32
%8634 = "vm.trunc.i64.i32"(%5228) : (i64) -> i32
%8635 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%8636 = "vm.trunc.i64.i32"(%685) : (i64) -> i32
%8637 = "vm.const.i32.zero"() : () -> i32
%8638 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8633, %8634, %8635, %8636, %8632, %654, %657, %658, %661, %5205, %5208, %8631, %8637, %1009, %449, %1003, %8631, %8638, %8577, %449, %8571) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8639 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8640 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8641 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8630, %8639, %8640, %8641) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8642 = "vm.cmp.lte.i64.s"(%2096, %449) : (i64, i64) -> i32
%8643 = "vm.sub.i64"(%449, %2096) : (i64, i64) -> i64
%8644 = "vm.sub.i64"(%2096, %447) : (i64, i64) -> i64
%8645 = "vm.select.i64"(%8642, %8643, %8644) : (i32, i64, i64) -> i64
%8646 = "vm.div.i64.s"(%8645, %432) : (i64, i64) -> i64
%8647 = "vm.sub.i64"(%449, %8646) : (i64, i64) -> i64
%8648 = "vm.add.i64"(%8646, %447) : (i64, i64) -> i64
%8649 = "vm.select.i64"(%8642, %8647, %8648) : (i32, i64, i64) -> i64
%8650 = "vm.const.i32.zero"() : () -> i32
%8651 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8652 = "vm.const.i32"() <{value = 63 : i32}> : () -> i32
%8653 = "vm.const.i32"() <{value = 3 : i32}> : () -> i32
%8654 = "vm.trunc.i64.i32"(%8649) : (i64) -> i32
%8655 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8656 = "vm.const.i32.zero"() : () -> i32
%8657 = "vm.const.i32.zero"() : () -> i32
%8658 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8652, %8653, %8654, %8655, %8651, %385, %405, %8579, %8582, %8583, %8586, %8650, %8656, %471, %449, %459, %8650, %8657, %8577, %449, %8571, %8650, %8658, %8577, %449, %8571) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 6, 3]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8659 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8660 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8661 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8630, %8659, %8660, %8661) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8662 = "vm.const.i32.zero"() : () -> i32
%8663 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8664 = "vm.const.i32"() <{value = 64 : i32}> : () -> i32
%8665 = "vm.trunc.i64.i32"(%5228) : (i64) -> i32
%8666 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%8667 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%8668 = "vm.const.i32.zero"() : () -> i32
%8669 = "vm.const.i32.zero"() : () -> i32
%8670 = "vm.const.i32.zero"() : () -> i32
%8671 = "vm.const.i32.zero"() : () -> i32
%8672 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8664, %8665, %8666, %8667, %8663, %8579, %8582, %8587, %8590, %654, %657, %658, %661, %5201, %5204, %5205, %5208, %8591, %8594, %8595, %8598, %8662, %8668, %496, %449, %495, %8662, %8669, %5188, %449, %5182, %8662, %8670, %831, %449, %825, %8662, %8671, %8577, %449, %8571, %8662, %8672, %8577, %449, %8571) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 16, 5]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8673 = "vm.const.i32.zero"() : () -> i32
%8674 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8675 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8630, %8553, %420, %8530, %8673, %8675, %8674) <{callee = @hal.command_buffer.fill_buffer}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.buffer>, i64, i64, i32, i32, i32) -> ()
%8676 = "vm.const.i32"() <{value = 28 : i32}> : () -> i32
%8677 = "vm.const.i32"() <{value = 13 : i32}> : () -> i32
%8678 = "vm.const.i32.zero"() : () -> i32
"vm.call"(%8630, %8676, %8677, %8678) <{callee = @hal.command_buffer.execution_barrier}> : (!vm.ref<!hal.command_buffer>, i32, i32, i32) -> ()
%8679 = "vm.const.i32.zero"() : () -> i32
%8680 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8681 = "vm.const.i32"() <{value = 65 : i32}> : () -> i32
%8682 = "vm.trunc.i64.i32"(%5228) : (i64) -> i32
%8683 = "vm.trunc.i64.i32"(%693) : (i64) -> i32
%8684 = "vm.const.i32"() <{value = 12 : i32}> : () -> i32
%8685 = "vm.const.i32.zero"() : () -> i32
%8686 = "vm.const.i32.zero"() : () -> i32
%8687 = "vm.const.i32.zero"() : () -> i32
%8688 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8681, %8682, %8683, %8684, %8680, %8587, %8590, %654, %657, %658, %661, %5205, %5208, %8599, %8602, %8603, %8606, %8607, %8610, %8611, %8614, %8679, %8685, %639, %449, %633, %8679, %8686, %2112, %449, %432, %8679, %8687, %8577, %449, %8571, %8679, %8688, %8553, %449, %8547) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 16, 4]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8689 = "vm.const.i32.zero"() : () -> i32
%8690 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8691 = "vm.const.i32.zero"() : () -> i32
%8692 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8693 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8694 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8695 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8691, %8692, %8693, %8694, %8690, %407, %8615, %8618, %8689, %8695, %8577, %449, %8571) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8696 = "vm.const.i32.zero"() : () -> i32
%8697 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8698 = "vm.const.i32.zero"() : () -> i32
%8699 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8700 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8701 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8702 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8698, %8699, %8700, %8701, %8697, %389, %8619, %8622, %8696, %8702, %8577, %449, %8571) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 3, 1]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, tuple<i32, i32, !vm.ref<!hal.buffer>, i64, i64>]}> : (!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i32, i32, i32, i64, i32, i32, i32, i32, i32, !vm.ref<!hal.buffer>, i64, i64) -> ()
%8703 = "vm.const.i32.zero"() : () -> i32
%8704 = "vm.const.i64"() <{value = 0 : i64}> : () -> i64
%8705 = "vm.const.i32"() <{value = 66 : i32}> : () -> i32
%8706 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8707 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8708 = "vm.const.i32"() <{value = 1 : i32}> : () -> i32
%8709 = "vm.const.i32.zero"() : () -> i32
%8710 = "vm.const.i32.zero"() : () -> i32
"vm.call.variadic"(%8630, %473, %8705, %8706, %8707, %8708, %8704, %658, %661, %8703, %8709, %2112, %449, %432, %8703, %8710, %8577, %449, %8571) <{callee = @hal.command_buffer.dispatch, segment_sizes = dense<[-1, -1, -1, -1, -1, -1, -1, 2, 2]> : vector<9xi16>, segment_types = [!vm.ref<!hal.command_buffer>, !vm.ref<!hal.executable>, i32, i3
@AmosLewis
Copy link
Author

iree-compile model.linalg.mlir --iree-hal-target-backends=llvm-cpu -o model.linalg.vmfb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment