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_svundef4_s8()5svint8x4_t test_svundef4_s8() 6 { 7 // CHECK-LABEL: test_svundef4_s8 8 // CHECK: ret <vscale x 64 x i8> undef 9 return svundef4_s8(); 10 } 11 test_svundef4_s16()12svint16x4_t test_svundef4_s16() 13 { 14 // CHECK-LABEL: test_svundef4_s16 15 // CHECK: ret <vscale x 32 x i16> undef 16 return svundef4_s16(); 17 } 18 test_svundef4_s32()19svint32x4_t test_svundef4_s32() 20 { 21 // CHECK-LABEL: test_svundef4_s32 22 // CHECK: ret <vscale x 16 x i32> undef 23 return svundef4_s32(); 24 } 25 test_svundef4_s64()26svint64x4_t test_svundef4_s64() 27 { 28 // CHECK-LABEL: test_svundef4_s64 29 // CHECK: ret <vscale x 8 x i64> undef 30 return svundef4_s64(); 31 } 32 test_svundef4_u8()33svuint8x4_t test_svundef4_u8() 34 { 35 // CHECK-LABEL: test_svundef4_u8 36 // CHECK: ret <vscale x 64 x i8> undef 37 return svundef4_u8(); 38 } 39 test_svundef4_u16()40svuint16x4_t test_svundef4_u16() 41 { 42 // CHECK-LABEL: test_svundef4_u16 43 // CHECK: ret <vscale x 32 x i16> undef 44 return svundef4_u16(); 45 } 46 test_svundef4_u32()47svuint32x4_t test_svundef4_u32() 48 { 49 // CHECK-LABEL: test_svundef4_u32 50 // CHECK: ret <vscale x 16 x i32> undef 51 return svundef4_u32(); 52 } 53 test_svundef4_u64()54svuint64x4_t test_svundef4_u64() 55 { 56 // CHECK-LABEL: test_svundef4_u64 57 // CHECK: ret <vscale x 8 x i64> undef 58 return svundef4_u64(); 59 } 60 test_svundef4_f16()61svfloat16x4_t test_svundef4_f16() 62 { 63 // CHECK-LABEL: test_svundef4_f16 64 // CHECK: ret <vscale x 32 x half> undef 65 return svundef4_f16(); 66 } 67 test_svundef4_f32()68svfloat32x4_t test_svundef4_f32() 69 { 70 // CHECK-LABEL: test_svundef4_f32 71 // CHECK: ret <vscale x 16 x float> undef 72 return svundef4_f32(); 73 } 74 test_svundef4_f64()75svfloat64x4_t test_svundef4_f64() 76 { 77 // CHECK-LABEL: test_svundef4_f64 78 // CHECK: ret <vscale x 8 x double> undef 79 return svundef4_f64(); 80 } 81