diff options
author | Quentin Colombet <qcolombet@apple.com> | 2015-12-15 00:09:23 +0000 |
---|---|---|
committer | Quentin Colombet <qcolombet@apple.com> | 2015-12-15 00:09:23 +0000 |
commit | 25b43f3624087cede9aabf3f7afd0c1be613e387 (patch) | |
tree | 203ad586f34f204999ef3f0298f1fc7412db07ef /llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp | |
parent | c13e9633f438cfc4c06f5fc8e13f5867f4109909 (diff) | |
download | bcm5719-llvm-25b43f3624087cede9aabf3f7afd0c1be613e387.tar.gz bcm5719-llvm-25b43f3624087cede9aabf3f7afd0c1be613e387.zip |
[X86] Add relaxtion logic for SBB instructions.
Prior to this patch, we would wrongly stick to the variant with imm8 encoding
even when the relocation could not fit that size.
rdar://problem/23785506
llvm-svn: 255583
Diffstat (limited to 'llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp')
-rw-r--r-- | llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp b/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp index 4136943a117..133bd0e1772 100644 --- a/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp +++ b/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp @@ -220,6 +220,14 @@ static unsigned getRelaxedOpcodeArith(unsigned Op) { case X86::SUB64ri8: return X86::SUB64ri32; case X86::SUB64mi8: return X86::SUB64mi32; + // SBB + case X86::SBB16ri8: return X86::SBB16ri; + case X86::SBB16mi8: return X86::SBB16mi; + case X86::SBB32ri8: return X86::SBB32ri; + case X86::SBB32mi8: return X86::SBB32mi; + case X86::SBB64ri8: return X86::SBB64ri32; + case X86::SBB64mi8: return X86::SBB64mi32; + // CMP case X86::CMP16ri8: return X86::CMP16ri; case X86::CMP16mi8: return X86::CMP16mi; |