1 //===- SpirvCpuRuntimeWrappers.cpp - Runner testing library -===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 // A small library for SPIR-V cpu runner testing.
11 //===----------------------------------------------------------------------===//
13 #include "mlir/ExecutionEngine/CRunnerUtils.h"
16 #define EXPORT __declspec(dllexport)
18 #define EXPORT __attribute__((visibility("default")))
21 // NOLINTBEGIN(*-identifier-naming)
23 extern "C" EXPORT
void
24 _mlir_ciface_fillI32Buffer(StridedMemRefType
<int32_t, 1> *mem_ref
,
26 std::fill_n(mem_ref
->basePtr
, mem_ref
->sizes
[0], value
);
29 extern "C" EXPORT
void
30 _mlir_ciface_fillF32Buffer1D(StridedMemRefType
<float, 1> *mem_ref
,
32 std::fill_n(mem_ref
->basePtr
, mem_ref
->sizes
[0], value
);
35 extern "C" EXPORT
void
36 _mlir_ciface_fillF32Buffer2D(StridedMemRefType
<float, 2> *mem_ref
,
38 std::fill_n(mem_ref
->basePtr
, mem_ref
->sizes
[0] * mem_ref
->sizes
[1], value
);
41 extern "C" EXPORT
void
42 _mlir_ciface_fillF32Buffer3D(StridedMemRefType
<float, 3> *mem_ref
,
44 std::fill_n(mem_ref
->basePtr
,
45 mem_ref
->sizes
[0] * mem_ref
->sizes
[1] * mem_ref
->sizes
[2], value
);
48 // NOLINTEND(*-identifier-naming)