forked from OSchip/llvm-project
MIR Parser: Return true on error when parsing standalone registers.
llvm-svn: 245384
This commit is contained in:
parent
f3630113cd
commit
607efb6c7e
|
@ -647,7 +647,7 @@ bool MIParser::parseStandaloneNamedRegister(unsigned &Reg) {
|
|||
if (Token.isNot(MIToken::NamedRegister))
|
||||
return error("expected a named register");
|
||||
if (parseRegister(Reg))
|
||||
return 0;
|
||||
return true;
|
||||
lex();
|
||||
if (Token.isNot(MIToken::Eof))
|
||||
return error("expected end of string after the register reference");
|
||||
|
@ -659,7 +659,7 @@ bool MIParser::parseStandaloneVirtualRegister(unsigned &Reg) {
|
|||
if (Token.isNot(MIToken::VirtualRegister))
|
||||
return error("expected a virtual register");
|
||||
if (parseRegister(Reg))
|
||||
return 0;
|
||||
return true;
|
||||
lex();
|
||||
if (Token.isNot(MIToken::Eof))
|
||||
return error("expected end of string after the register reference");
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
# RUN: not llc -march=x86-64 -start-after machine-sink -stop-after machine-sink -o /dev/null %s 2>&1 | FileCheck %s
|
||||
--- |
|
||||
define i32 @test(i32 %a) {
|
||||
body:
|
||||
ret i32 %a
|
||||
}
|
||||
...
|
||||
---
|
||||
name: test
|
||||
isSSA: true
|
||||
tracksRegLiveness: true
|
||||
registers:
|
||||
- { id: 0, class: gr32 }
|
||||
liveins:
|
||||
# CHECK: [[@LINE+1]]:13: unknown register name 'register'
|
||||
- { reg: '%register', virtual-reg: '%0' }
|
||||
body: |
|
||||
bb.0.body:
|
||||
liveins: %edi
|
||||
|
||||
%0 = COPY %edi
|
||||
%eax = COPY %0
|
||||
RETQ %eax
|
||||
...
|
Loading…
Reference in New Issue