Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update LLVM to llvm/llvm-project@ac8bb735
Update LLVM to llvm/llvm-project@ac8bb735. C++ changes are related to change in behavior of TypeConverter. It used to generate UnrealizedConversionCastOp, during applySignatureConversion in GenericOpTypePropagation of TypePropagationPass.cpp, however now it's not. This causes unrealized_conversion_cast to be generated later and hence survive the pass. To repro above behavior, try undo the C++ change in this PR and then: ``` wget https://gist.githubusercontent.com/raikonenfnu/dfb3b274007df8c4be87daf9ee67a5f4/raw/e48cc07e5fa558cd2c450b0e3ae46568136e1be6/type_propagate_repro.mlir iree-opt --pass-pipeline='builtin.module(func.func(iree-codegen-type-propagation))' propagate_test.mlir -o /dev/null error: failed to legalize unresolved materialization from ('i8') to ('i1') that remained live after conversion ^bb0(%in: i1, %in_0: f32, %in_1: f32, %out: f32): ^ propagate_test.mlir:5:8: note: see current operation: %10 = "builtin.unrealized_conversion_cast"(%arg0) : (i8) -> i1 propagate_test.mlir:6:11: note: see existing live user here: %10 = arith.select %9, %in_0, %in_1 : f32 ``` This PR also carries the following reverts: llvm/llvm-project#120999 llvm/llvm-project#120115 llvm/llvm-project#119461 The main issue with this PR(12099 and 120115) is it breaks matvec codegen generating scf.if instead of scf.for(s). An issue will be pushed up for repro. The main issue with PR 119461 is it breaks e2e riscv test by making it get stuck on infinite loop. ``` /path/to/iree-build/tools/iree-compile --output-format=vm-bytecode --mlir-print-op-on-diagnostic=false --iree-hal-target-backends=llvm-cpu --iree-input-type=stablehlo --iree-input-demote-f64-to-f32 --iree-llvmcpu-target-cpu=generic /path/to/iree/tests/e2e/stablehlo_ops/three_fry.mlir -o three_fly_exec_target.mlir --iree-llvmcpu-target-triple=riscv64 --iree-llvmcpu-target-abi=lp64d --iree-llvmcpu-target-cpu-features=+m,+a,+d,+zvl512b,+v --mlir-disable-threading > infinite loop ``` Signed-off-by: Stanley Winata <stanley.winata@amd.com>
- Loading branch information