diff options
author | David Majnemer <david.majnemer@gmail.com> | 2016-08-09 17:55:12 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2016-08-09 17:55:12 +0000 |
commit | adc688ce9c2034a0fc5a094d61b76f356123a927 (patch) | |
tree | 3b72c5eb7860eb20c83eed31c555abef98681d59 /lldb/packages/Python/lldbsuite/test/lang/cpp/exceptions/exceptions.cpp | |
parent | 8c5314479ebbf2c70225b94641b464da81ef6f79 (diff) | |
download | bcm5719-llvm-adc688ce9c2034a0fc5a094d61b76f356123a927.tar.gz bcm5719-llvm-adc688ce9c2034a0fc5a094d61b76f356123a927.zip |
[X86] Don't model UD2/UD2B as a terminator
A UD2 might make its way into the program via a call to @llvm.trap.
Obviously, calls are not terminators. However, we modeled the X86
instruction, UD2, as a terminator. Later on, this confuses the epilogue
insertion machinery which results in the epilogue getting inserted
before the UD2. For some platforms, like x64, the result is a
violation of the ABI.
Instead, model UD2/UD2B as a side effecting instruction which may
observe memory.
llvm-svn: 278144
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/lang/cpp/exceptions/exceptions.cpp')
0 files changed, 0 insertions, 0 deletions