diff options
author | Craig Topper <craig.topper@intel.com> | 2019-04-11 18:40:21 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2019-04-11 18:40:21 +0000 |
commit | 1c2dfc31005d24cb1d8b47b9019aeb205dab8538 (patch) | |
tree | b7f3c80d738bc96c4b577595dea7aaad1aeb51a3 /lldb/packages/Python/lldbsuite/test/python_api | |
parent | 1fe5a9963de6a0df30af5d8eec685c9d8bbab5bf (diff) | |
download | bcm5719-llvm-1c2dfc31005d24cb1d8b47b9019aeb205dab8538.tar.gz bcm5719-llvm-1c2dfc31005d24cb1d8b47b9019aeb205dab8538.zip |
[X86] Use FILD/FIST to implement i64 atomic load on 32-bit targets with X87, but no SSE2
If we have X87, but not SSE2 we can atomicaly load an i64 value into the significand of an 80-bit extended precision x87 register using fild. We can then use a fist instruction to convert it back to an i64 integer and store it to a stack temporary. From there we can do two 32-bit loads to get the value into integer registers without worrying about atomicness.
This matches what gcc and icc do for this case and removes an existing FIXME.
Differential Revision: https://reviews.llvm.org/D60156
llvm-svn: 358211
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api')
0 files changed, 0 insertions, 0 deletions