46 lines · plain
1#RUN: not --crash llc -o - -mtriple=arm64 -global-isel -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s2# REQUIRES: aarch64-registered-target3 4---5name: test_fcmp6legalized: true7regBankSelected: false8selected: false9tracksRegLiveness: true10liveins:11body: |12 bb.0:13 14 %0:_(s32) = G_FCONSTANT float 0.015 %1:_(s32) = G_FCONSTANT float 1.016 17 ; Vector result, scalar source18 ; CHECK: Bad machine code: Generic vector icmp/fcmp must preserve number of lanes19 %2:_(<2 x s1>) = G_FCMP floatpred(oeq), %0, %120 21 ; Scalar result, vector source22 ; CHECK: Bad machine code: Generic vector icmp/fcmp must preserve number of lanes23 %3:_(<2 x s32>) = G_IMPLICIT_DEF24 %4:_(<2 x s32>) = G_IMPLICIT_DEF25 %5:_(s1) = G_FCMP floatpred(oeq), %3, %426 27 ; mismatched fixed element count28 ; CHECK: Bad machine code: Generic vector icmp/fcmp must preserve number of29 %6:_(<2 x s32>) = G_IMPLICIT_DEF30 %7:_(<2 x s32>) = G_IMPLICIT_DEF31 %8:_(<4 x s1>) = G_FCMP floatpred(oeq), %6, %732 33 ; mismatched scalable element count34 ; CHECK: Bad machine code: Generic vector icmp/fcmp must preserve number of35 %9:_(<vscale x 2 x s32>) = G_IMPLICIT_DEF36 %10:_(<vscale x 2 x s32>) = G_IMPLICIT_DEF37 %11:_(<vscale x 4 x s1>) = G_FCMP floatpred(oeq), %9, %1038 39 ; mismatched scalar element type40 ; CHECK: *** Bad machine code: Type mismatch in generic instruction ***41 %12:_(s32) = G_FCONSTANT float 0.042 %13:_(s64) = G_FCONSTANT float 1.043 %14:_(s1) = G_FCMP floatpred(oeq), %12, %1344 45...46