This truncation can be unexpected and break program behavior.
Dedicated emulation passes should be used instead.
Also rename pass options to "emulate-lt-32-bit-scalar-types".
Paths
| Differential D137115
[mlir][spirv] Do not truncate i/f64 -> i/f32 in SPIRVConversion ClosedPublic Authored by kuhar on Oct 31 2022, 2:49 PM.
Details Summary This truncation can be unexpected and break program behavior. Also rename pass options to "emulate-lt-32-bit-scalar-types".
Diff Detail
Event Timelinekuhar added a child revision: D137166: [mlir][arith][spirv] Remove duplicate test cases.Nov 1 2022, 7:57 AM
Hardcode84 added inline comments.
This revision is now accepted and ready to land.Nov 4 2022, 9:28 AM
This revision was landed with ongoing or failed builds.Nov 4 2022, 12:11 PM Closed by commit rGc06454540391: [mlir][spirv] Do not truncate i/f64 -> i/f32 in SPIRVConversion (authored by kuhar). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 473310 mlir/include/mlir/Conversion/Passes.td
mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
mlir/lib/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRVPass.cpp
mlir/lib/Conversion/FuncToSPIRV/FuncToSPIRVPass.cpp
mlir/lib/Conversion/TensorToSPIRV/TensorToSPIRVPass.cpp
mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-unsupported.mlir
mlir/test/Conversion/ArithToSPIRV/arith-to-spirv.mlir
mlir/test/Conversion/FuncToSPIRV/types-to-spirv.mlir
|
Can we get a separate option for this (set to False by default), instead of just disabling it?