summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorDylan McKay <dylanmckay34@gmail.com>2016-12-10 11:49:07 +0000
committerDylan McKay <dylanmckay34@gmail.com>2016-12-10 11:49:07 +0000
commitd8a603c23b1db5337ad3ae41a6f646ceab01c572 (patch)
treea59d514772b370754731f90145102479260ea28c /llvm/lib/Target
parenta7e05487225bbcbcb0ae6a706f96806b621eb143 (diff)
downloadbcm5719-llvm-d8a603c23b1db5337ad3ae41a6f646ceab01c572.tar.gz
bcm5719-llvm-d8a603c23b1db5337ad3ae41a6f646ceab01c572.zip
[AVR] Fix and clean up the inline assembly tests
There was a bug where we would hit an assertion if 'Q' was used as a constraint. I also removed hardcoded register names to prefer regexes so the tests don't break when the register allocator changes. llvm-svn: 289325
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp b/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp
index 477bae651b9..cb155210404 100644
--- a/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp
+++ b/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp
@@ -205,7 +205,9 @@ bool AVRDAGToDAGISel::SelectInlineAsmMemoryOperand(const SDValue &Op,
std::vector<SDValue> &OutOps) {
// Yes hardcoded 'm' symbol. Just because it also has been hardcoded in
// SelectionDAGISel (callee for this method).
- assert(ConstraintCode == InlineAsm::Constraint_m && "Unexpected asm memory constraint");
+ assert(ConstraintCode == InlineAsm::Constraint_m ||
+ ConstraintCode == InlineAsm::Constraint_Q &&
+ "Unexpected asm memory constraint");
MachineRegisterInfo &RI = MF->getRegInfo();
const AVRSubtarget &STI = MF->getSubtarget<AVRSubtarget>();
OpenPOWER on IntegriCloud