56 lines · c
1// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=x86_64-apple-darwin -target-feature +vaes -emit-llvm -o - | FileCheck %s --check-prefix AVX2// RUN: %clang_cc1 -flax-vector-conversions=none -ffreestanding %s -triple=x86_64-apple-darwin -target-feature +vaes -target-feature +avx512f -emit-llvm -o - | FileCheck %s --check-prefixes AVX,AVX5123 4#include <immintrin.h>5 6__m256i test_mm256_aesenc_epi128(__m256i __A, __m256i __B) {7 // AVX-LABEL: @test_mm256_aesenc_epi1288 // AVX: @llvm.x86.aesni.aesenc.2569 return _mm256_aesenc_epi128(__A, __B);10}11 12__m256i test_mm256_aesenclast_epi128(__m256i __A, __m256i __B) {13 // AVX-LABEL: @test_mm256_aesenclast_epi12814 // AVX: @llvm.x86.aesni.aesenclast.25615 return _mm256_aesenclast_epi128(__A, __B);16}17 18__m256i test_mm256_aesdec_epi128(__m256i __A, __m256i __B) {19 // AVX-LABEL: @test_mm256_aesdec_epi12820 // AVX: @llvm.x86.aesni.aesdec.25621 return _mm256_aesdec_epi128(__A, __B);22}23 24__m256i test_mm256_aesdeclast_epi128(__m256i __A, __m256i __B) {25 // AVX-LABEL: @test_mm256_aesdeclast_epi12826 // AVX: @llvm.x86.aesni.aesdeclast.25627 return _mm256_aesdeclast_epi128(__A, __B);28}29 30#ifdef __AVX512F__31__m512i test_mm512_aesenc_epi128(__m512i __A, __m512i __B) {32 // AVX512-LABEL: @test_mm512_aesenc_epi12833 // AVX512: @llvm.x86.aesni.aesenc.51234 return _mm512_aesenc_epi128(__A, __B);35}36 37__m512i test_mm512_aesenclast_epi128(__m512i __A, __m512i __B) {38 // AVX512-LABEL: @test_mm512_aesenclast_epi12839 // AVX512: @llvm.x86.aesni.aesenclast.51240 return _mm512_aesenclast_epi128(__A, __B);41}42 43__m512i test_mm512_aesdec_epi128(__m512i __A, __m512i __B) {44 // AVX512-LABEL: @test_mm512_aesdec_epi12845 // AVX512: @llvm.x86.aesni.aesdec.51246 return _mm512_aesdec_epi128(__A, __B);47}48 49__m512i test_mm512_aesdeclast_epi128(__m512i __A, __m512i __B) {50 // AVX512-LABEL: @test_mm512_aesdeclast_epi12851 // AVX512: @llvm.x86.aesni.aesdeclast.51252 return _mm512_aesdeclast_epi128(__A, __B);53}54#endif55 56