98 lines · plain
1# REQUIRES: aarch64-registered-target2# FIXME: Fails with -abort-on-invalid-reduction3# RUN: llvm-reduce -simplify-mir --delta-passes=instructions -mtriple=aarch64-- --test FileCheck --test-arg --check-prefix=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t 2> %t.log4# RUN: FileCheck --match-full-lines --check-prefix=RESULT %s < %t5 6# Check that jump table info is preserved through cloning7 8# CHECK-INTERESTINGNESS: MOVi32imm9 10# RESULT: jumpTable:11# RESULT-NEXT: kind: label-difference3212# RESULT-NEXT: entries:13# RESULT-NEXT: - id: 014# RESULT-NEXT: blocks: [ '%bb.9', '%bb.5', '%bb.2', '%bb.2', '%bb.2', '%bb.2',15# RESULT-NEXT: '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.6', '%bb.2',16# RESULT-NEXT: '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2',17# RESULT-NEXT: '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2',18# RESULT-NEXT: '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2',19# RESULT-NEXT: '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.7', '%bb.2',20# RESULT-NEXT: '%bb.2', '%bb.2', '%bb.2', '%bb.7' ]21 22---23name: widget24tracksRegLiveness: true25jumpTable:26 kind: label-difference3227 entries:28 - id: 029 blocks: [ '%bb.9', '%bb.5', '%bb.2', '%bb.2', '%bb.2', '%bb.2',30 '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.6', '%bb.2',31 '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2',32 '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2',33 '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.2',34 '%bb.2', '%bb.2', '%bb.2', '%bb.2', '%bb.7', '%bb.2',35 '%bb.2', '%bb.2', '%bb.2', '%bb.7' ]36body: |37 bb.0:38 liveins: $w0, $w1, $x2, $x3, $x4, $w5, $w639 40 %0:gpr32 = COPY $w641 %1:gpr32 = COPY $w542 %2:gpr64common = COPY $x443 %3:gpr64 = COPY $x344 %4:gpr64common = COPY $x245 %5:gpr32common = COPY $w146 %6:gpr32 = COPY $w047 undef %7.sub_32:gpr64 = ORRWrs $wzr, %5, 0, implicit-def %748 %8:gpr64common = MOVaddrJT target-flags(aarch64-page) %jump-table.0, target-flags(aarch64-pageoff, aarch64-nc) %jump-table.049 %9:gpr32 = MOVi32imm 150 undef %10.sub_32:gpr64 = IMPLICIT_DEF51 52 bb.1:53 54 bb.2:55 successors: %bb.3(0x0fbefbf0), %bb.4(0x70410410)56 57 dead $wzr = SUBSWri %5, 39, 0, implicit-def $nzcv58 Bcc 8, %bb.3, implicit killed $nzcv59 B %bb.460 61 bb.3:62 successors: %bb.11(0x00000000), %bb.2(0x80000000)63 64 dead $wzr = SUBSWri %5, 64, 0, implicit-def $nzcv65 Bcc 0, %bb.11, implicit killed $nzcv66 B %bb.267 68 bb.4:69 successors: %bb.9(0x01288b01), %bb.5(0x01288b01), %bb.2(0x11f46a91), %bb.6(0x23e8d524), %bb.7(0x47d1aa49)70 71 early-clobber %11:gpr64, dead early-clobber %12:gpr64sp = JumpTableDest32 %8, %7, %jump-table.072 JUMP_TABLE_DEBUG_INFO 073 BR %1174 75 bb.5:76 B %bb.877 78 bb.6:79 B %bb.280 81 bb.7:82 B %bb.283 84 bb.8:85 B %bb.886 87 bb.9:88 TBZW %0, 0, %bb.189 B %bb.1090 91 bb.10:92 B %bb.193 94 bb.11:95 BRK 196 97...98