aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-04-20 21:04:21 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-04-20 21:04:21 +0000
commit554491ffbdcfe51993d5b436a9bbca7aba388dd3 (patch)
tree9614d529be53c291b614e40039bba22720a7c604 /contrib/llvm
parent7c1fda1cab692cc00e078b560c844145f706b216 (diff)
parentbcfe4c376cc0ada0fd42395a7d6a91bc15b8f6f3 (diff)
downloadsrc-554491ffbdcfe51993d5b436a9bbca7aba388dd3.tar.gz
src-554491ffbdcfe51993d5b436a9bbca7aba388dd3.zip
Notes
Diffstat (limited to 'contrib/llvm')
-rw-r--r--contrib/llvm/lib/Target/X86/X86ISelLowering.cpp9
-rw-r--r--contrib/llvm/lib/Target/X86/X86RegisterInfo.td1
2 files changed, 3 insertions, 7 deletions
diff --git a/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp b/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
index 7ff483063ec2..6bf3672c3c08 100644
--- a/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -35922,14 +35922,11 @@ X86TargetLowering::getRegForInlineAsmConstraint(const TargetRegisterInfo *TRI,
if (Subtarget.is64Bit()) {
Res.first = X86::RAX;
Res.second = &X86::GR64_ADRegClass;
- } else if (Subtarget.is32Bit()) {
+ } else {
+ assert((Subtarget.is32Bit() || Subtarget.is16Bit()) &&
+ "Expecting 64, 32 or 16 bit subtarget");
Res.first = X86::EAX;
Res.second = &X86::GR32_ADRegClass;
- } else if (Subtarget.is16Bit()) {
- Res.first = X86::AX;
- Res.second = &X86::GR16_ADRegClass;
- } else {
- llvm_unreachable("Expecting 64, 32 or 16 bit subtarget");
}
return Res;
}
diff --git a/contrib/llvm/lib/Target/X86/X86RegisterInfo.td b/contrib/llvm/lib/Target/X86/X86RegisterInfo.td
index c177ba1d52f7..d235d2b40b15 100644
--- a/contrib/llvm/lib/Target/X86/X86RegisterInfo.td
+++ b/contrib/llvm/lib/Target/X86/X86RegisterInfo.td
@@ -438,7 +438,6 @@ def LOW32_ADDR_ACCESS_RBP : RegisterClass<"X86", [i32], 32,
(add LOW32_ADDR_ACCESS, RBP)>;
// A class to support the 'A' assembler constraint: [ER]AX then [ER]DX.
-def GR16_AD : RegisterClass<"X86", [i16], 16, (add AX, DX)>;
def GR32_AD : RegisterClass<"X86", [i32], 32, (add EAX, EDX)>;
def GR64_AD : RegisterClass<"X86", [i64], 64, (add RAX, RDX)>;