1 # RUN: not llc -march=aarch64 -o /dev/null -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
2 # REQUIRES: global-isel, aarch64-registered-target
9 tracksRegLiveness: true
14 ; CHECK: Bad machine code: Too few operands
17 ; CHECK: Bad machine code: Too few operands
18 %1:_(s32) = G_EXTRACT 0
20 ; CHECK: Bad machine code: extract source must be a register
21 %2:_(s32) = G_EXTRACT 0, 1
23 ; CHECK: Bad machine code: extract offset must be a constant
24 %3:_(s32) = G_IMPLICIT_DEF
25 %4:_(s32) = G_CONSTANT i32 0
26 %5:_(s16) = G_EXTRACT %3, %4
28 ; CHECK: Bad machine code: extract source must be larger than result
29 %6:_(s32) = G_IMPLICIT_DEF
30 %7:_(s32) = G_EXTRACT %6, 0
32 ; CHECK: Bad machine code: extract reads past end of register
33 %8:_(s1) = G_EXTRACT %6, 32