summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2019-12-29 15:53:46 -0800
committerFangrui Song <maskray@google.com>2019-12-29 16:50:42 -0800
commit5edb40c0220e80fc4cdb726d30d1d8b8e8580892 (patch)
treede4d76facba3a43fd169a68ae019ea66e9975690 /llvm/lib/Target/ARM
parentb1fb07ddbaa539f9173e32dc27110168b165c1fe (diff)
downloadbcm5719-llvm-5edb40c0220e80fc4cdb726d30d1d8b8e8580892.tar.gz
bcm5719-llvm-5edb40c0220e80fc4cdb726d30d1d8b8e8580892.zip
[SelectionDAG] Disallow indirect "i" constraint
This allows us to delete InlineAsm::Constraint_i workarounds in SelectionDAGISel::SelectInlineAsmMemoryOperand overrides and TargetLowering::getInlineAsmMemConstraint overrides. They were introduced to X86 in r237517 to prevent crashes for constraints like "=*imr". They were later copied to other targets.
Diffstat (limited to 'llvm/lib/Target/ARM')
-rw-r--r--llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp4
1 files changed, 0 insertions, 4 deletions
diff --git a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
index 1f998defbd1..9b06987178d 100644
--- a/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
+++ b/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
@@ -5047,10 +5047,6 @@ SelectInlineAsmMemoryOperand(const SDValue &Op, unsigned ConstraintID,
switch(ConstraintID) {
default:
llvm_unreachable("Unexpected asm memory constraint");
- case InlineAsm::Constraint_i:
- // FIXME: It seems strange that 'i' is needed here since it's supposed to
- // be an immediate and not a memory constraint.
- LLVM_FALLTHROUGH;
case InlineAsm::Constraint_m:
case InlineAsm::Constraint_o:
case InlineAsm::Constraint_Q:
OpenPOWER on IntegriCloud