• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve -fallow-half-arguments-and-returns -S -O2 -Werror -Wall -emit-llvm -o - %s | FileCheck %s
2 
3 #include <arm_sve.h>
4 
test_svundef2_s8()5 svint8x2_t test_svundef2_s8()
6 {
7   // CHECK-LABEL: test_svundef2_s8
8   // CHECK: ret <vscale x 32 x i8> undef
9   return svundef2_s8();
10 }
11 
test_svundef2_s16()12 svint16x2_t test_svundef2_s16()
13 {
14   // CHECK-LABEL: test_svundef2_s16
15   // CHECK: ret <vscale x 16 x i16> undef
16   return svundef2_s16();
17 }
18 
test_svundef2_s32()19 svint32x2_t test_svundef2_s32()
20 {
21   // CHECK-LABEL: test_svundef2_s32
22   // CHECK: ret <vscale x 8 x i32> undef
23   return svundef2_s32();
24 }
25 
test_svundef2_s64()26 svint64x2_t test_svundef2_s64()
27 {
28   // CHECK-LABEL: test_svundef2_s64
29   // CHECK: ret <vscale x 4 x i64> undef
30   return svundef2_s64();
31 }
32 
test_svundef2_u8()33 svuint8x2_t test_svundef2_u8()
34 {
35   // CHECK-LABEL: test_svundef2_u8
36   // CHECK: ret <vscale x 32 x i8> undef
37   return svundef2_u8();
38 }
39 
test_svundef2_u16()40 svuint16x2_t test_svundef2_u16()
41 {
42   // CHECK-LABEL: test_svundef2_u16
43   // CHECK: ret <vscale x 16 x i16> undef
44   return svundef2_u16();
45 }
46 
test_svundef2_u32()47 svuint32x2_t test_svundef2_u32()
48 {
49   // CHECK-LABEL: test_svundef2_u32
50   // CHECK: ret <vscale x 8 x i32> undef
51   return svundef2_u32();
52 }
53 
test_svundef2_u64()54 svuint64x2_t test_svundef2_u64()
55 {
56   // CHECK-LABEL: test_svundef2_u64
57   // CHECK: ret <vscale x 4 x i64> undef
58   return svundef2_u64();
59 }
60 
test_svundef2_f16()61 svfloat16x2_t test_svundef2_f16()
62 {
63   // CHECK-LABEL: test_svundef2_f16
64   // CHECK: ret <vscale x 16 x half> undef
65   return svundef2_f16();
66 }
67 
test_svundef2_f32()68 svfloat32x2_t test_svundef2_f32()
69 {
70   // CHECK-LABEL: test_svundef2_f32
71   // CHECK: ret <vscale x 8 x float> undef
72   return svundef2_f32();
73 }
74 
test_svundef2_f64()75 svfloat64x2_t test_svundef2_f64()
76 {
77   // CHECK-LABEL: test_svundef2_f64
78   // CHECK: ret <vscale x 4 x double> undef
79   return svundef2_f64();
80 }
81