aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2023-03-03 16:22:41 +0100
committerNikita Popov <npopov@redhat.com>2023-03-06 09:49:40 +0100
commit0317147a2848547ec97d8e76782f7dc38267a21f (patch)
tree83ef8e75f76b0cf6e15bf4ccc48237eed2c151f1 /lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h
parent0354463b9e77b909ec54526aa0375750b77c4282 (diff)
downloadllvm-0317147a2848547ec97d8e76782f7dc38267a21f.zip
llvm-0317147a2848547ec97d8e76782f7dc38267a21f.tar.gz
llvm-0317147a2848547ec97d8e76782f7dc38267a21f.tar.bz2
[LowerTypeTests] Avoid creation of select constant expression
LowerTypeTests replaces weak declarations with an icmp+select constant expressions. As this is not a relocatable expression, it additionally promotes initializers using it to global ctors. As part of https://discourse.llvm.org/t/rfc-remove-most-constant-expressions/63179, I would like to remove the select constant expression, of which LTT is now the last user. This is a bit tricky, because we now need to replace a constant with an instruction, which might require converting intermediate constant expression users to instructions as well. We do this using the convertUsersOfConstantsToInstructions() helper. However, it needs to be slightly extended to also support expansion of ConstantAggregates. These are important in this context, because the promotion of initializers to global ctors will produce stores of such aggregates. Differential Revision: https://reviews.llvm.org/D145247
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.h')
0 files changed, 0 insertions, 0 deletions