| # RUN: llc -o - %s -mtriple=i686-- -run-pass branch-folder | FileCheck %s |
| # Test that tail merging drops undef flags that aren't present on all |
| # instructions to be merged. |
| --- | |
| define void @func() { ret void } |
| ... |
| --- |
| # CHECK-LABEL: name: func |
| # CHECK: bb.1: |
| # CHECK: $eax = MOV32ri 2 |
| # CHECK-NOT: RET |
| # CHECK: bb.2: |
| # CHECK-NOT: RET 0, undef $eax |
| # CHECK: RET 0, $eax |
| name: func |
| tracksRegLiveness: true |
| body: | |
| bb.0: |
| JE_1 %bb.1, implicit undef $eflags |
| JMP_1 %bb.2 |
| |
| bb.1: |
| $eax = MOV32ri 2 |
| RET 0, $eax |
| |
| bb.2: |
| RET 0, undef $eax |
| ... |