summaryrefslogtreecommitdiff
path: root/lldb/test/API/functionalities/plugins/python_os_plugin
diff options
context:
space:
mode:
authorLuke Lau <luke@igalia.com>2025-01-14 12:44:24 +0800
committerGitHub <noreply@github.com>2025-01-14 12:44:24 +0800
commitcb2560d33b029b50c10bbc4348bbb944382fb659 (patch)
treec829a0f6230b36d9c2c5bb50599856e69366fd00 /lldb/test/API/functionalities/plugins/python_os_plugin
parent9f114afe092483983a82a73c82704f11bb28bf8c (diff)
[VPlan] Verify plan before optimizations. NFC (#122678)
I've been exploring verifying the VPlan before and after the EVL transformation steps, and noticed that the VPlan comes out in an invalid state between construction and optimisation. In adjustRecipesForReductions, we leave behind some dead recipes which are invalid: 1) When we replace a link with a reduction recipe, the old link ends up becoming a use-before-def: WIDEN ir<%l7> = add ir<%sum.02>, ir<%indvars.iv>.1 WIDEN ir<%l8> = add ir<%l7>.1, ir<%l3> WIDEN ir<%l9> = add ir<%l8>.1, ir<%l5> ... REDUCE ir<%l7>.1 = ir<%sum.02> + reduce.add (ir<%indvars.iv>.1) REDUCE ir<%l8>.1 = ir<%l7>.1 + reduce.add (ir<%l3>) REDUCE ir<%l9>.1 = ir<%l8>.1 + reduce.add (ir<%l5>) 2) When transforming an AnyOf reduction phi to a boolean, we leave behind a select with mismatching operand types, which will trigger the assertions in VTypeAnalysis after #122679 This adds an extra verification step and deletes the dead recipes eagerly to keep the plan valid.
Diffstat (limited to 'lldb/test/API/functionalities/plugins/python_os_plugin')
0 files changed, 0 insertions, 0 deletions