mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-14 09:56:23 +00:00
![Alex Lorenz](/assets/img/avatar_default.png)
order. The implicit register verifier in the MIR parser should only check if the instruction's default implicit operands are present in the instruction. It should not check the order in which they occur. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247283 91177308-0d34-0410-b5e6-96231b3b80d8
35 lines
644 B
YAML
35 lines
644 B
YAML
# RUN: not llc -march=x86-64 -start-after branch-folder -stop-after branch-folder -o /dev/null %s 2>&1 | FileCheck %s
|
|
|
|
--- |
|
|
|
|
define i32 @foo(i32* %p) {
|
|
entry:
|
|
%a = load i32, i32* %p
|
|
%0 = icmp sle i32 %a, 10
|
|
br i1 %0, label %less, label %exit
|
|
|
|
less:
|
|
ret i32 0
|
|
|
|
exit:
|
|
ret i32 %a
|
|
}
|
|
|
|
|
|
...
|
|
---
|
|
name: foo
|
|
body: |
|
|
bb.0.entry:
|
|
%eax = MOV32rm %rdi, 1, _, 0, _
|
|
CMP32ri8 %eax, 10, implicit-def %eflags
|
|
; CHECK: [[@LINE+1]]:35: missing implicit register operand 'implicit %eflags'
|
|
JG_1 %bb.2.exit, implicit %eax
|
|
|
|
bb.1.less:
|
|
%eax = MOV32r0 implicit-def %eflags
|
|
|
|
bb.2.exit:
|
|
RETQ %eax
|
|
...
|