summaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
diff options
context:
space:
mode:
authorStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>2020-04-06 17:03:40 -0700
committerStanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com>2020-04-07 10:27:23 -0700
commit12a324393d61a0ef602feeb9705ccb5b61563c27 (patch)
tree2fcbfc158d332e5a6c5adba686c4c9c83619a817 /lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
parent03c825c224420c498f3f7aef8ad4fb005d62b8ec (diff)
[AMDGPU] Limit endcf-collapase to simple if
We can only collapse adjacent SI_END_CF if outer statement belongs to a simple SI_IF, otherwise correct mask is not in the register we expect, but is an argument of an S_XOR instruction. Even if SI_IF is simple it might be lowered using S_XOR because lowering is dependent on a basic block layout. It is not considered simple if instruction consuming its output is not an SI_END_CF. Since that SI_END_CF might have already been lowered to an S_OR isSimpleIf() check may return false. This situation is an opportunity for a further optimization of SI_IF lowering, but that is a separate optimization. In the meanwhile move SI_END_CF post the lowering when we already know how the rest of the CFG was lowered since a non-simple SI_IF case still needs to be handled. Differential Revision: https://reviews.llvm.org/D77610
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp')
0 files changed, 0 insertions, 0 deletions