diff options
author | Craig Topper <craig.topper@intel.com> | 2019-06-18 03:23:11 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2019-06-18 03:23:11 +0000 |
commit | 8582ecd8d9370878f47486690b684e0448d70300 (patch) | |
tree | 58db1972fe7af1cf2455c06c20990e8e22430ef9 /lldb/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py | |
parent | 1f7f64665c2b7c1b36c6a6e74c349a4d9f854f0d (diff) | |
download | bcm5719-llvm-8582ecd8d9370878f47486690b684e0448d70300.tar.gz bcm5719-llvm-8582ecd8d9370878f47486690b684e0448d70300.zip |
[X86] Introduce new MOVSSrm/MOVSDrm opcodes that use VR128 register class.
Rename the old versions that use FR32/FR64 to MOVSSrm_alt/MOVSDrm_alt.
Use the new versions in patterns that previously used a COPY_TO_REGCLASS
to VR128. These patterns expect the upper bits to be zero. The
current set up appears to work, but I'm not sure we should be
enforcing upper bits being zero through a COPY_TO_REGCLASS.
I wanted to flip the arrangement and use a COPY_TO_REGCLASS to
FR32/FR64 for the patterns that need an f32/f64 result, but that
complicated fastisel and globalisel.
I've been doing some experiments with reducing some isel patterns
and ended up in a situation where I had a
(SUBREG_TO_REG (COPY_TO_RECLASS (VMOVSSrm), VR128)) and our
post-isel peephole was unable to avoid using an instruction for
the SUBREG_TO_REG due to the COPY_TO_REGCLASS. Having a VR128
instruction removes the COPY_TO_REGCLASS that was breaking this.
llvm-svn: 363643
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/frame/TestFrames.py')
0 files changed, 0 insertions, 0 deletions