brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.4 KiB · 4574589 Raw
45 lines · c
1// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py2// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s3// RUN: %clang_cc1 -triple aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK4// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s5// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sve -target-feature +sve2 -target-feature +sve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK6 7// RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s8// RUN: %clang_cc1 -triple aarch64 -target-feature +sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK9// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - %s | FileCheck %s10// RUN: %clang_cc1 -DSVE_OVERLOADED_FORMS -triple aarch64 -target-feature +sme -target-feature +ssve-aes -O1 -Werror -Wall -emit-llvm -o - -x c++ %s | FileCheck %s -check-prefix=CPP-CHECK11 12 13// REQUIRES: aarch64-registered-target14 15#include <arm_sve.h>16 17#ifdef SVE_OVERLOADED_FORMS18// A simple used,unused... macro, long enough to represent any SVE builtin.19#define SVE_ACLE_FUNC(A1,A2_UNUSED,A3,A4_UNUSED) A1##A320#else21#define SVE_ACLE_FUNC(A1,A2,A3,A4) A1##A2##A3##A422#endif23 24#if defined(__ARM_FEATURE_SME)25#define STREAMING __arm_streaming26#else27#define STREAMING28#endif29 30 31// CHECK-LABEL: @test_svaesimc_u8(32// CHECK-NEXT:  entry:33// CHECK-NEXT:    [[TMP0:%.*]] = tail call <vscale x 16 x i8> @llvm.aarch64.sve.aesimc(<vscale x 16 x i8> [[OP:%.*]])34// CHECK-NEXT:    ret <vscale x 16 x i8> [[TMP0]]35//36// CPP-CHECK-LABEL: @_Z16test_svaesimc_u8u11__SVUint8_t(37// CPP-CHECK-NEXT:  entry:38// CPP-CHECK-NEXT:    [[TMP0:%.*]] = tail call <vscale x 16 x i8> @llvm.aarch64.sve.aesimc(<vscale x 16 x i8> [[OP:%.*]])39// CPP-CHECK-NEXT:    ret <vscale x 16 x i8> [[TMP0]]40//41svuint8_t test_svaesimc_u8(svuint8_t op) STREAMING42{43  return SVE_ACLE_FUNC(svaesimc,_u8,,)(op);44}45