@@ -1292,23 +1292,25 @@ function compile_mlir!(
1292
1292
end
1293
1293
1294
1294
# HACK: remove with next JLL
1295
- if transpose_propagate === :up
1296
- run_pass_pipeline! (
1297
- mod,
1298
- " enzyme-hlo-generate-td{patterns=transpose_while},transform-interpreter,enzyme-hlo-remove-transform" ,
1299
- " transpose_while" ,
1300
- )
1301
- end
1295
+ if ! (optimize isa String)
1296
+ if transpose_propagate === :up
1297
+ run_pass_pipeline! (
1298
+ mod,
1299
+ " enzyme-hlo-generate-td{patterns=transpose_while},transform-interpreter,enzyme-hlo-remove-transform" ,
1300
+ " transpose_while" ,
1301
+ )
1302
+ end
1302
1303
1303
- if optimize ∉ (:none , :just_batch , :canonicalize ) &&
1304
- (transpose_propagate === :up || reshape_propagate === :up )
1305
- # We tried propagating reshapes and transposes up. If at this point we are left with
1306
- # them, we propagate them down to minimize the number of Ops in the IR.
1307
- run_pass_pipeline! (
1308
- mod,
1309
- optimization_passes (; transpose_propagate= :down , reshape_propagate= :down ),
1310
- " post_op_transpose_reshape" ,
1311
- )
1304
+ if optimize ∉ (:none , :just_batch , :canonicalize ) &&
1305
+ (transpose_propagate === :up || reshape_propagate === :up )
1306
+ # We tried propagating reshapes and transposes up. If at this point we are left with
1307
+ # them, we propagate them down to minimize the number of Ops in the IR.
1308
+ run_pass_pipeline! (
1309
+ mod,
1310
+ optimization_passes (; transpose_propagate= :down , reshape_propagate= :down ),
1311
+ " post_op_transpose_reshape" ,
1312
+ )
1313
+ end
1312
1314
end
1313
1315
1314
1316
# Now we resolve paddings if `optimize_then_pad`
0 commit comments