================
@@ -0,0 +1,113 @@
+// RUN: %clang_cc1 %s -flax-vector-conversions=none -ffreestanding 
-triple=x86_64-unknown-unknown \
+// RUN: -target-feature +acev1 -target-feature +avx512f \
+// RUN: -emit-llvm -o - -Werror -pedantic | FileCheck %s
+
+// Tests ACE v1 tile movement operations (ZMM <-> Tile row/col)
+// Note: ACE v1 does not have TILELOADD/TILESTORED - uses 
TILEMOVROW/TILEMOVCOL for data movement
+
+#include <immintrin.h>
+
+// Test tile setrow - write ZMM to tile row (ACE-specific)
+void test_tile_ace_setrow(__acetile dst, __m512i src) {
+  // CHECK-LABEL: @test_tile_ace_setrow
+  // CHECK: call x86_amx @llvm.x86.tilesetrow.internal
+  __tile_ace_setrow(&dst, src, 0);
+}
+
+// Test tile setrow with different row indices
+void test_tile_ace_setrow_indices(__acetile dst, __m512i src) {
+  // CHECK-LABEL: @test_tile_ace_setrow_indices
+  // CHECK: call x86_amx @llvm.x86.tilesetrow.internal
+  // CHECK: call x86_amx @llvm.x86.tilesetrow.internal
+  // CHECK: call x86_amx @llvm.x86.tilesetrow.internal
+  __tile_ace_setrow(&dst, src, 0);
+  __tile_ace_setrow(&dst, src, 8);
+  __tile_ace_setrow(&dst, src, 15);
----------------
mahesh-attarde wrote:

setrow for 8 and 15 is not interesting here.
Same applies to all other occurrences.

https://github.com/llvm/llvm-project/pull/208408
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to