Revert "[llvm] Improve llvm.objectsize computation by computing GEP, alloca and mallo...
[llvm-project.git] / clang / test / CodeGen / X86 / amx_transpose.c
blob7e88fd80592d62cc65554d684c4b1278e8a048de
1 // RUN: %clang_cc1 %s -ffreestanding -triple=x86_64-unknown-unknown -target-feature +amx-transpose \
2 // RUN: -target-feature +amx-bf16 -target-feature +amx-fp16 -target-feature +amx-complex \
3 // RUN: -target-feature +avx512f -emit-llvm -o - -Wall -Werror -pedantic -Wno-gnu-statement-expression| FileCheck %s
5 #include <immintrin.h>
6 #include <stddef.h>
8 void test_tile_2rpntlvwz0(const void *A, size_t B) {
9 // CHECK-LABEL: @test_tile_2rpntlvwz0
10 // CHECK: call void @llvm.x86.t2rpntlvwz0(i8 1, ptr %{{.*}}, i64 %{{.*}})
11 _tile_2rpntlvwz0(1, A, B);
14 void test_tile_2rpntlvwz0t1(const void *A, size_t B) {
15 // CHECK-LABEL: @test_tile_2rpntlvwz0t1
16 // CHECK: call void @llvm.x86.t2rpntlvwz0t1(i8 1, ptr %{{.*}}, i64 %{{.*}})
17 _tile_2rpntlvwz0t1(1, A, B);
20 void test_tile_2rpntlvwz1(const void *A, size_t B) {
21 // CHECK-LABEL: @test_tile_2rpntlvwz1
22 // CHECK: call void @llvm.x86.t2rpntlvwz1(i8 1, ptr %{{.*}}, i64 %{{.*}})
23 _tile_2rpntlvwz1(1, A, B);
26 void test_tile_2rpntlvwz1t1(const void *A, size_t B) {
27 // CHECK-LABEL: @test_tile_2rpntlvwz1t1
28 // CHECK: call void @llvm.x86.t2rpntlvwz1t1(i8 1, ptr %{{.*}}, i64 %{{.*}})
29 _tile_2rpntlvwz1t1(1, A, B);
32 void test_tile_transposed(void)
34 // CHECK-LABEL: @test_tile_transposed
35 // CHECK: call void @llvm.x86.ttransposed(i8 1, i8 2)
36 _tile_transposed(1, 2);
39 void test_tile_tdpbf16ps(void)
41 // CHECK-LABEL: @test_tile_tdpbf16ps
42 // CHECK: call void @llvm.x86.ttdpbf16ps(i8 1, i8 2, i8 3)
43 _tile_tdpbf16ps(1, 2, 3);
46 void test_tile_tdpfp16ps(void)
48 // CHECK-LABEL: @test_tile_tdpfp16ps
49 // CHECK: call void @llvm.x86.ttdpfp16ps(i8 4, i8 5, i8 6)
50 _tile_tdpfp16ps(4, 5, 6);
53 void test_tile_tcmmimfp16ps(void) {
54 // CHECK-LABEL: @test_tile_tcmmimfp16ps
55 // CHECK: call void @llvm.x86.ttcmmimfp16ps(i8 1, i8 2, i8 3)
56 _tile_tcmmimfp16ps(1, 2, 3);
59 void test_tile_tcmmrlfp16ps(void) {
60 // CHECK-LABEL: @test_tile_tcmmrlfp16ps
61 // CHECK: call void @llvm.x86.ttcmmrlfp16ps(i8 1, i8 2, i8 3)
62 _tile_tcmmrlfp16ps(1, 2, 3);
65 void test_tile_conjtcmmimfp16ps(void) {
66 // CHECK-LABEL: @test_tile_conjtcmmimfp16ps
67 // CHECK: call void @llvm.x86.tconjtcmmimfp16ps(i8 1, i8 2, i8 3)
68 _tile_conjtcmmimfp16ps(1, 2, 3);
71 void test_tile_conjtfp16(void) {
72 // CHECK-LABEL: @test_tile_conjtfp16
73 // CHECK: call void @llvm.x86.tconjtfp16(i8 1, i8 2)
74 _tile_conjtfp16(1, 2);