diff options
Diffstat (limited to 'test/CodeGen/MIR/X86/duplicate-register-flag-error.mir')
| -rw-r--r-- | test/CodeGen/MIR/X86/duplicate-register-flag-error.mir | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/CodeGen/MIR/X86/duplicate-register-flag-error.mir b/test/CodeGen/MIR/X86/duplicate-register-flag-error.mir new file mode 100644 index 0000000000000..d80c6ed061de8 --- /dev/null +++ b/test/CodeGen/MIR/X86/duplicate-register-flag-error.mir @@ -0,0 +1,35 @@ +# 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 %a) { + entry: + %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: + successors: %bb.1.less, %bb.2.exit + + CMP32ri8 %edi, 10, implicit-def %eflags + ; CHECK: [[@LINE+1]]:31: duplicate 'implicit' register flag + JG_1 %bb.2.exit, implicit implicit %eflags + + bb.1.less: + %eax = MOV32r0 implicit-def %eflags + RETQ %eax + + bb.2.exit: + %eax = COPY %edi + RETQ %eax +... |
