| # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py | |
| # RUN: llc -mtriple aarch64-apple-ios -run-pass regallocfast -o - %s | FileCheck %s | |
| # This test used to crash the fast register alloc. | |
| # Basically, when a basic block has liveins, the fast regalloc | |
| # was deferencing the begin iterator of this block. However, | |
| # when this block is empty and it will just crashed! | |
| --- | |
| name: crashing | |
| tracksRegLiveness: true | |
| body: | | |
| ; CHECK-LABEL: name: crashing | |
| ; CHECK: bb.0: | |
| ; CHECK: successors: %bb.1(0x80000000) | |
| ; CHECK: liveins: $x0, $x1 | |
| ; CHECK: bb.1: | |
| ; CHECK: renamable $w0 = MOVi32imm -1 | |
| ; CHECK: RET_ReallyLR implicit killed $w0 | |
| bb.1: | |
| liveins: $x0, $x1 | |
| bb.2: | |
| %0:gpr32 = MOVi32imm -1 | |
| $w0 = COPY %0 | |
| RET_ReallyLR implicit $w0 | |
| ... |