diff options
author | Dylan McKay <dylanmckay34@gmail.com> | 2016-12-10 11:49:07 +0000 |
---|---|---|
committer | Dylan McKay <dylanmckay34@gmail.com> | 2016-12-10 11:49:07 +0000 |
commit | d8a603c23b1db5337ad3ae41a6f646ceab01c572 (patch) | |
tree | a59d514772b370754731f90145102479260ea28c /llvm/lib/Target | |
parent | a7e05487225bbcbcb0ae6a706f96806b621eb143 (diff) | |
download | bcm5719-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.cpp | 4 |
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>(); |