aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineTraceMetrics.cpp
diff options
context:
space:
mode:
authorAndrea Faulds <andrea.faulds@amd.com>2025-02-06 19:07:34 +0100
committerGitHub <noreply@github.com>2025-02-06 19:07:34 +0100
commitf497fe464bad8743b8a87ba04a5c53579a03711a (patch)
tree34499c8cb2a19e6cb67453312f7d29c5dc942bba /llvm/lib/CodeGen/MachineTraceMetrics.cpp
parentb884be86406ef1430af1609fc1b6033936afaf18 (diff)
downloadllvm-f497fe464bad8743b8a87ba04a5c53579a03711a.zip
llvm-f497fe464bad8743b8a87ba04a5c53579a03711a.tar.gz
llvm-f497fe464bad8743b8a87ba04a5c53579a03711a.tar.bz2
[mlir][spirv] Fix some issues related to converting ub.poison to SPIR-V (#125905)
This is a follow-up to 5df62bdc9be9c258c5ac45c8093b71e23777fa0e. That commit should not have needed to make the vector.insert and vector.extract conversions to SPIR-V directly handle the static poison index case, as there is a fold from those to ub.poison, and a conversion pattern from ub.poison to spirv.Undef, however: - The ub.poison fold result could not be materialized by the vector dialect (fixed as of d13940ee263ff50b7a71e21424913cc0266bf9d4). - The conversion pattern wasn't being populated in VectorToSPIRVPass, which is used by the tests. This commit changes this. - The ub.poison to spirv.Undef pattern rejected non-scalar types, which prevented its use for vector results. It is unclear why this restriction existed; a remark in D156163 said this was to avoid converting "user types", but it is not obvious why these shouldn't be permitted (the SPIR-V specification allows OpUndef for all types except OpTypeVoid). This commit removes this restriction. With these fixed, this commit removes the redundant static poison index handling, and updates the tests.
Diffstat (limited to 'llvm/lib/CodeGen/MachineTraceMetrics.cpp')
0 files changed, 0 insertions, 0 deletions