|
@@ -1,4 +1,4 @@
|
|
|
-# RUN: not llc -o - -march=arm64 -global-isel -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
|
|
|
+# RUN: not llc -o - -march=arm64 -run-pass=none -verify-machineinstrs %s 2>&1 | FileCheck %s
|
|
|
# REQUIRES: aarch64-registered-target
|
|
|
---
|
|
|
name: g_shuffle_vector
|
|
@@ -26,4 +26,30 @@ body: |
|
|
|
; CHECK: Bad machine code: Incorrect mask operand type for G_SHUFFLE_VECTOR
|
|
|
%9:_(<4 x s32>) = G_SHUFFLE_VECTOR %0, %1, i32 0
|
|
|
|
|
|
+ ; CHECK: Bad machine code: Wrong result type for shufflemask
|
|
|
+ %10:_(<4 x s32>) = G_SHUFFLE_VECTOR %0, %1, shufflemask(0, 2)
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: Wrong result type for shufflemask
|
|
|
+ %11:_(<2 x s32>) = G_SHUFFLE_VECTOR %0, %1, shufflemask(0, 2, 1, 1)
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: G_SHUFFLE_VECTOR cannot change element type
|
|
|
+ %12:_(<4 x s16>) = G_SHUFFLE_VECTOR %0, %1, shufflemask(0, 2, 1, 1)
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: Source operands must be the same type
|
|
|
+ %13:_(<4 x s32>) = G_SHUFFLE_VECTOR %0, %2, shufflemask(0, 2, 1, 1)
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: Out of bounds shuffle index
|
|
|
+ %14:_(<4 x s32>) = G_SHUFFLE_VECTOR %0, %1, shufflemask(0, 2, 1, 4)
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: Out of bounds shuffle index
|
|
|
+ %15:_(<4 x s32>) = G_SHUFFLE_VECTOR %0, %1, shufflemask(0, 2, 1, 5)
|
|
|
+
|
|
|
+ %19:_(s16) = G_CONSTANT i16 0
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: Source operands must be the same type
|
|
|
+ %20:_(<2 x s32>) = G_SHUFFLE_VECTOR %3, %19, shufflemask(1, 0)
|
|
|
+
|
|
|
+ ; CHECK: Bad machine code: G_SHUFFLE_VECTOR cannot change element type
|
|
|
+ %21:_(s16) = G_SHUFFLE_VECTOR %3, %4, shufflemask(0)
|
|
|
+
|
|
|
...
|