Skip to content

Commit

Permalink
Synchronization between branches
Browse files Browse the repository at this point in the history
  • Loading branch information
pszymich authored and igcbot committed Feb 24, 2025
1 parent 485a03a commit 3207183
Show file tree
Hide file tree
Showing 52 changed files with 347 additions and 279 deletions.
40 changes: 27 additions & 13 deletions IGC/VectorCompiler/lib/BiF/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#=========================== begin_copyright_notice ============================
#
# Copyright (C) 2021-2023 Intel Corporation
# Copyright (C) 2021-2025 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
Expand All @@ -12,10 +12,14 @@ set(RESOURCE_EMBEDDER_SCRIPT ${IGC_SOURCE_DIR}/BiFModule/resource_embedder.py)
set(VCB_EXE "vcb" CACHE STRING "")

set(PRINTF_COMMON ${CMAKE_CURRENT_SOURCE_DIR}/Print/common.h)
vc_embed_bif(PRINTF_OCL_32 Print/ocl.cpp VCBiFPrintfOCL 32 DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_OCL_64 Print/ocl.cpp VCBiFPrintfOCL 64 DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_ZE_32 Print/ze.cpp VCBiFPrintfZE 32 DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_ZE_64 Print/ze.cpp VCBiFPrintfZE 64 DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_OCL_32_TYPED_PTRS Print/ocl.cpp VCBiFPrintfOCL 32 FALSE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_OCL_32_OPAQUE_PTRS Print/ocl.cpp VCBiFPrintfOCL 32 TRUE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_OCL_64_TYPED_PTRS Print/ocl.cpp VCBiFPrintfOCL 64 FALSE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_OCL_64_OPAQUE_PTRS Print/ocl.cpp VCBiFPrintfOCL 64 TRUE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_ZE_32_TYPED_PTRS Print/ze.cpp VCBiFPrintfZE 32 FALSE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_ZE_32_OPAQUE_PTRS Print/ze.cpp VCBiFPrintfZE 32 TRUE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_ZE_64_TYPED_PTRS Print/ze.cpp VCBiFPrintfZE 64 FALSE DEPENDS ${PRINTF_COMMON})
vc_embed_bif(PRINTF_ZE_64_OPAQUE_PTRS Print/ze.cpp VCBiFPrintfZE 64 TRUE DEPENDS ${PRINTF_COMMON})

#Define the macro if Khronos SPIR-V translator is used.
if(IGC_OPTION__USE_KHRONOS_SPIRV_TRANSLATOR_IN_SC)
Expand All @@ -31,7 +35,10 @@ set(SPIRV_BUILTIN_SOURCES
Spirv/exec.cpp
Spirv/math.cpp)

vc_embed_bif(SPIRV_BUILTINS "${SPIRV_BUILTIN_SOURCES}" VCSPIRVBuiltins 64
vc_embed_bif(SPIRV_BUILTINS_TYPED_PTRS "${SPIRV_BUILTIN_SOURCES}" VCSPIRVBuiltins 64 FALSE
CLANG_INCLUDES ${IGC_SPIRV_HEADERS_INCLUDES}
CLANG_FLAGS ${CLANG_FLAGS_FOR_SPIRV_BUILTINS})
vc_embed_bif(SPIRV_BUILTINS_OPAQUE_PTRS "${SPIRV_BUILTIN_SOURCES}" VCSPIRVBuiltins 64 TRUE
CLANG_INCLUDES ${IGC_SPIRV_HEADERS_INCLUDES}
CLANG_FLAGS ${CLANG_FLAGS_FOR_SPIRV_BUILTINS})

Expand All @@ -57,14 +64,21 @@ set(BUILTIN_SOURCES

Library/Atomics/Local/binop.cpp)

vc_embed_optimized_bif(BUILTINS "${BUILTIN_SOURCES}" VCBuiltins 64)
vc_embed_optimized_bif(BUILTINS_TYPED_PTRS "${BUILTIN_SOURCES}" VCBuiltins 64 FALSE)
vc_embed_optimized_bif(BUILTINS_OPAQUE_PTRS "${BUILTIN_SOURCES}" VCBuiltins 64 TRUE)

add_custom_target(VCBiFPreparation
DEPENDS ${PRINTF_OCL_32} ${PRINTF_OCL_64} ${PRINTF_ZE_32} ${PRINTF_ZE_64}
${BUILTINS} ${SPIRV_BUILTINS})
set(BIF_OUTPUT_TYPED_PTRS ${PRINTF_OCL_32_TYPED_PTRS} ${PRINTF_OCL_64_TYPED_PTRS}
${PRINTF_ZE_32_TYPED_PTRS} ${PRINTF_ZE_64_TYPED_PTRS}
${BUILTINS_TYPED_PTRS} ${SPIRV_BUILTINS_TYPED_PTRS})
set(BIF_OUTPUT_OPAQUE_PTRS ${PRINTF_OCL_32_OPAQUE_PTRS} ${PRINTF_OCL_64_OPAQUE_PTRS}
${PRINTF_ZE_32_OPAQUE_PTRS} ${PRINTF_ZE_64_OPAQUE_PTRS}
${BUILTINS_OPAQUE_PTRS} ${SPIRV_BUILTINS_OPAQUE_PTRS})

add_library(VCEmbeddedBiF OBJECT
${PRINTF_OCL_32} ${PRINTF_OCL_64} ${PRINTF_ZE_32} ${PRINTF_ZE_64}
${BUILTINS} ${SPIRV_BUILTINS})
add_custom_target(VCBiFPreparation DEPENDS ${BIF_OUTPUT_TYPED_PTRS} ${BIF_OUTPUT_OPAQUE_PTRS})
if(IGC_OPTION__API_ENABLE_OPAQUE_POINTERS)
add_library(VCEmbeddedBiF OBJECT ${BIF_OUTPUT_OPAQUE_PTRS})
else()
add_library(VCEmbeddedBiF OBJECT ${BIF_OUTPUT_TYPED_PTRS})
endif()
add_dependencies(VCEmbeddedBiF VCBiFPreparation)
target_link_libraries(VCEmbeddedBiF VCHeaders)
92 changes: 54 additions & 38 deletions IGC/VectorCompiler/lib/BiF/cmake/Functions.cmake
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
#=========================== begin_copyright_notice ============================
#
# Copyright (C) 2021-2023 Intel Corporation
# Copyright (C) 2021-2025 Intel Corporation
#
# SPDX-License-Identifier: MIT
#
#============================ end_copyright_notice =============================

set(OPT_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_DEFAULT_ARG_OPT})

# Args:
# RES_LIST - generated list
# REQUIRED_TARGET - target to link with
Expand All @@ -31,8 +29,9 @@ endfunction()
# Args:
# RES_FILE - variable name to put generated file path into.
# CMCL_SRC_PATH - multivalue. path to CMCL sources.
# BIF_NAME - name for all the generated files without extension.
# MANGLED_BIF_NAME - name for all the generated files without extension.
# PTR_BIT_SIZE - bit size of a pointer, 32 or 64 are allowed.
# OPAQUE_PTRS - use opaque pointers during the generation.
#
# Optional arguments:
# CLANG_INCLUDES - Argument representing extra include directories passed to
Expand All @@ -41,7 +40,7 @@ endfunction()
# DEPENDS - multivalue. Can be used to establish file-level dependency.
# Useful if we want to have a dependency from auto-generated files
# that are created by some other target(s).
function(vc_build_bif TARGET RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE)
function(vc_build_bif RES_FILE CMCL_SRC_PATH MANGLED_BIF_NAME PTR_BIT_SIZE OPAQUE_PTRS)
cmake_parse_arguments(PARSE_ARGV 4
EXTRA
""
Expand All @@ -51,12 +50,22 @@ function(vc_build_bif TARGET RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE)
if((NOT (${PTR_BIT_SIZE} EQUAL 32)) AND (NOT (${PTR_BIT_SIZE} EQUAL 64)))
message(FATAL_ERROR "vc_build_bif: wrong argument: PTR_BIT_SIZE = ${PTR_BIT_SIZE}: ptr size can only be 32 or 64")
endif()
set(MANGLED_BIF_NAME ${BIF_NAME}${PTR_BIT_SIZE})
set(BIF_CLANG_BC_NAME_FINAL ${MANGLED_BIF_NAME}.clang.bc)
if (OPAQUE_PTRS)
set(OPT_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_ENABLE_OPT})
set(CLANG_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_ENABLE_CLANG})
set(OPAQUE_SUFFIX "opaque")
set(TARGET_NAME "${MANGLED_BIF_NAME}OpaquePtrs-BC")
else()
set(OPT_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_DISABLE_OPT})
set(CLANG_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_DISABLE_CLANG})
set(OPAQUE_SUFFIX "typed")
set(TARGET_NAME "${MANGLED_BIF_NAME}TypedPtrs-BC")
endif()
set(BIF_CLANG_BC_NAME_FINAL ${MANGLED_BIF_NAME}.${OPAQUE_SUFFIX}.clang.bc)
set(BIF_CLANG_BC_PATH_FINAL ${CMAKE_CURRENT_BINARY_DIR}/${BIF_CLANG_BC_NAME_FINAL})
set(BIF_CMCL_BC_NAME ${MANGLED_BIF_NAME}.cmcl.bc)
set(BIF_CMCL_BC_NAME ${MANGLED_BIF_NAME}.${OPAQUE_SUFFIX}.cmcl.bc)
set(BIF_CMCL_BC_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BIF_CMCL_BC_NAME})
set(BIF_OPT_BC_NAME ${MANGLED_BIF_NAME}.opt.bc)
set(BIF_OPT_BC_NAME ${MANGLED_BIF_NAME}.${OPAQUE_SUFFIX}.opt.bc)
set(BIF_OPT_BC_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BIF_OPT_BC_NAME})

if(EXTRA_DEPENDS)
Expand All @@ -80,30 +89,24 @@ function(vc_build_bif TARGET RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE)
endif()
file(RELATIVE_PATH SRC_NAME ${CMAKE_CURRENT_SOURCE_DIR} ${CMCL_SRC})
if (LENGTH_CMCL_SRC_PATH GREATER 1)
set(BIF_CLANG_BC_NAME ${SRC_NAME}.${PTR_BIT_SIZE}.clang.bc)
set(BIF_CLANG_BC_NAME ${SRC_NAME}.${PTR_BIT_SIZE}.${OPAQUE_SUFFIX}.clang.bc)
else()
set(BIF_CLANG_BC_NAME ${BIF_CLANG_BC_NAME_FINAL})
endif()
set(BIF_CLANG_BC_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BIF_CLANG_BC_NAME})
get_filename_component(BIF_CLANG_BC_PATH_DIR ${BIF_CLANG_BC_PATH} DIRECTORY)

set(SPECIAL_CLANG_ARG "")
if (OPT_OPAQUE_ARG)
set(SPECIAL_CLANG_ARG -mllvm ${OPT_OPAQUE_ARG} )
endif()

add_custom_command(OUTPUT "${BIF_CLANG_BC_PATH}"
COMMAND ${CMAKE_COMMAND} -E make_directory ${BIF_CLANG_BC_PATH_DIR}
COMMAND clang-tool -cc1 ${CMCL_INCLUDES} ${VC_INCLUDES}
${EXTRA_CLANG_INCLUDES} ${SPECIAL_CLANG_ARG} ${IGC_BUILD__OPAQUE_POINTERS_DEFAULT_ARG_CLANG} ${EXTRA_CLANG_FLAGS}
${EXTRA_CLANG_INCLUDES} ${CLANG_OPAQUE_ARG} ${EXTRA_CLANG_FLAGS}
-x cl -cl-std=clc++ -triple=${SPIR_TARGET}
-O2 -disable-llvm-passes -discard-value-names -emit-llvm-bc -o "${BIF_CLANG_BC_PATH}" ${CMCL_SRC}
COMMENT "vc_build_bif: Compiling CMCL source ${CMCL_SRC} to BC ${BIF_CLANG_BC_NAME}"
DEPENDS clang-tool "${CMCL_SRC}" ${EXTRA_DEPENDS}
COMMAND_EXPAND_LISTS)
list(APPEND BC_PATH_LIST ${BIF_CLANG_BC_PATH})
endforeach()

set(OPT_BC_DEPENDS ${BC_PATH_LIST})
if (LENGTH_CMCL_SRC_PATH GREATER 1)
add_custom_command(OUTPUT ${BIF_CLANG_BC_PATH_FINAL}
Expand All @@ -113,15 +116,14 @@ function(vc_build_bif TARGET RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE)
COMMAND_EXPAND_LISTS)
set(OPT_BC_DEPENDS ${BIF_CLANG_BC_PATH_FINAL})
endif()

add_custom_command(
OUTPUT ${BIF_OPT_BC_PATH}
COMMENT "vc_build_bif: Translating CMCL builtins: ${BIF_CLANG_BC_NAME_FINAL} -> ${BIF_OPT_BC_NAME}"
COMMAND CMCLTranslatorTool ${OPT_OPAQUE_ARG} -o ${BIF_CMCL_BC_PATH} ${BIF_CLANG_BC_PATH_FINAL}
COMMAND ${LLVM_OPT_EXE} ${OPT_OPAQUE_ARG} --O2 -o ${BIF_OPT_BC_PATH} ${BIF_CMCL_BC_PATH}
DEPENDS CMCLTranslatorTool ${LLVM_OPT_EXE} ${OPT_BC_DEPENDS})

add_custom_target(${TARGET}
add_custom_target(${TARGET_NAME}
DEPENDS ${BIF_OPT_BC_PATH}
SOURCES ${CMCL_SRC_PATH})
set(${RES_FILE} ${BIF_OPT_BC_PATH} PARENT_SCOPE)
Expand All @@ -137,9 +139,16 @@ endfunction()
# RES_FILE - variable name to put generated file path into.
# BIF_OPT_BC_PATH - path to the binary data that needs to be embedded.
# MANGLED_BIF_NAME - the desired name for the embeddable source file.
# OPAQUE_PTRS - use opaque pointers during the generation.
# Path to resulting CPP source code is stored in the specified cmake variable.
function(vc_generate_embeddable_source TARGET RES_FILE BIF_OPT_BC_PATH MANGLED_BIF_NAME)
set(BIF_CPP_NAME ${MANGLED_BIF_NAME}.cpp)
function(vc_generate_embeddable_source RES_FILE BIF_OPT_BC_PATH MANGLED_BIF_NAME OPAQUE_PTRS)
if (OPAQUE_PTRS)
set(BIF_CPP_NAME "${MANGLED_BIF_NAME}.opaque.cpp")
set(TARGET_NAME "${MANGLED_BIF_NAME}OpaquePtrs")
else()
set(BIF_CPP_NAME "${MANGLED_BIF_NAME}.typed.cpp")
set(TARGET_NAME "${MANGLED_BIF_NAME}TypedPtrs")
endif()
set(BIF_CPP_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BIF_CPP_NAME})
file(RELATIVE_PATH BIF_OPT_BC_NAME ${CMAKE_CURRENT_BINARY_DIR} ${BIF_OPT_BC_PATH})
set(BIF_SYMBOL ${MANGLED_BIF_NAME}RawData)
Expand All @@ -150,7 +159,7 @@ function(vc_generate_embeddable_source TARGET RES_FILE BIF_OPT_BC_PATH MANGLED_B
COMMAND ${PYTHON_EXECUTABLE} ${RESOURCE_EMBEDDER_SCRIPT} ${BIF_OPT_BC_PATH} ${BIF_CPP_PATH} ${BIF_SYMBOL} no_attr
DEPENDS ${PYTHON_EXECUTABLE} ${RESOURCE_EMBEDDER_SCRIPT} ${BIF_OPT_BC_PATH})

add_custom_target(${TARGET}
add_custom_target(${TARGET_NAME}
DEPENDS ${BIF_CPP_PATH})
set(${RES_FILE} ${BIF_CPP_PATH} PARENT_SCOPE)
endfunction()
Expand All @@ -172,25 +181,34 @@ endfunction()
# RES_FILE - variable name to put generated file path into.
# BIF_OPT_BC_PATH - path to generic library (in a form of bitcode).
# MANGLED_BIF_NAME - the desired name for the generated source file.
# OPAQUE_PTRS - use opaque pointers during the generation.
# Path to resulting CPP source code is stored in the specified cmake variable.
function(vc_generate_optimized_bif TARGET RES_FILE BIF_OPT_BC_PATH MANGLED_BIF_NAME)
set(BIF_CPP_NAME ${MANGLED_BIF_NAME}.cpp)
function(vc_generate_optimized_bif RES_FILE BIF_OPT_BC_PATH MANGLED_BIF_NAME OPAQUE_PTRS)
if (OPAQUE_PTRS)
set(OPT_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_ENABLE_OPT})
set(OPAQUE_SUFFIX "opaque")
set(TARGET_NAME "${MANGLED_BIF_NAME}OpaquePtrs")
else()
set(OPT_OPAQUE_ARG ${IGC_BUILD__OPAQUE_POINTERS_DISABLE_OPT})
set(OPAQUE_SUFFIX "typed")
set(TARGET_NAME "${MANGLED_BIF_NAME}TypedPtrs")
endif()
set(BIF_CPP_NAME ${MANGLED_BIF_NAME}.${OPAQUE_SUFFIX}.cpp)
set(BIF_CPP_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BIF_CPP_NAME})
set(BIF_SYMBOL ${MANGLED_BIF_NAME}RawData)
set(BIF_CONF_NAME "${MANGLED_BIF_NAME}.conf")
set(BIF_CONF_NAME "${MANGLED_BIF_NAME}.${OPAQUE_SUFFIX}.conf")
set(BIF_CONF_PATH ${CMAKE_CURRENT_BINARY_DIR}/${BIF_CONF_NAME})
set(PLTF_BC_PATH_LIST "")


foreach(PLTF IN LISTS SUPPORTED_VC_PLATFORMS)
set(PLTF_BC_NAME "${MANGLED_BIF_NAME}_${PLTF}.vccg.bc")
set(PLTF_BC_NAME "${MANGLED_BIF_NAME}_${PLTF}.${OPAQUE_SUFFIX}.vccg.bc")
set(PLTF_BC_PATH ${CMAKE_CURRENT_BINARY_DIR}/${PLTF_BC_NAME})
add_custom_command(
OUTPUT ${PLTF_BC_PATH}
COMMENT "vc_generate_optimized_bif: compile optimized BiF for ${PLTF}"
COMMAND ${VCB_EXE} ${OPT_OPAQUE_ARG} -o ${PLTF_BC_PATH} -cpu ${PLTF} ${BIF_OPT_BC_PATH}
DEPENDS ${VCB_EXE} ${BIF_OPT_BC_PATH})
add_custom_target("${TARGET}-${PLTF}-BC"
add_custom_target("${TARGET_NAME}-${PLTF}-BC"
DEPENDS ${PLTF_BC_PATH})
list(APPEND PLTF_BC_PATH_LIST ${PLTF_BC_PATH})
endforeach()
Expand All @@ -202,7 +220,7 @@ function(vc_generate_optimized_bif TARGET RES_FILE BIF_OPT_BC_PATH MANGLED_BIF_N
COMMENT "vc_generate_optimized_bif: create hashed version of optimized functions"
COMMAND ${VCB_EXE} -BiFUnique -symb ${BIF_SYMBOL} -o ${BIF_CPP_PATH} ${BIF_CONF_PATH}
DEPENDS ${VCB_EXE} ${BIF_CONF_PATH} ${PLTF_BC_PATH_LIST})
add_custom_target(${TARGET}
add_custom_target(${TARGET_NAME}
DEPENDS ${BIF_CPP_PATH})
set(${RES_FILE} ${BIF_CPP_PATH} PARENT_SCOPE)
endfunction()
Expand All @@ -211,19 +229,18 @@ endfunction()
# containing the resulting LLVM bitcode (as a C array).
# See vc_build_bif and vc_generate_embeddable_source for more details.
# Path to resulting CPP source code is stored in the specified cmake variable.
function(vc_embed_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE)

cmake_parse_arguments(PARSE_ARGV 4
function(vc_embed_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE OPAQUE_PTRS)
cmake_parse_arguments(PARSE_ARGV 5
EXTRA
""
"CLANG_INCLUDES;CLANG_FLAGS"
"DEPENDS")
set(MANGLED_BIF_NAME ${BIF_NAME}${PTR_BIT_SIZE})
vc_build_bif("${BIF_NAME}${PTR_BIT_SIZE}-BC" RES_FILE_VC_EMBED "${CMCL_SRC_PATH}" "${BIF_NAME}" "${PTR_BIT_SIZE}"
vc_build_bif(RES_FILE_VC_EMBED "${CMCL_SRC_PATH}" "${MANGLED_BIF_NAME}" "${PTR_BIT_SIZE}" "${OPAQUE_PTRS}"
CLANG_INCLUDES "${EXTRA_CLANG_INCLUDES}"
CLANG_FLAGS "${EXTRA_CLANG_FLAGS}"
DEPENDS "${EXTRA_DEPENDS}")
vc_generate_embeddable_source("${BIF_NAME}${PTR_BIT_SIZE}" RES_FILE_EMBED_GEN "${RES_FILE_VC_EMBED}" "${MANGLED_BIF_NAME}")
vc_generate_embeddable_source(RES_FILE_EMBED_GEN "${RES_FILE_VC_EMBED}" "${MANGLED_BIF_NAME}" "${OPAQUE_PTRS}")
set(${RES_FILE} ${RES_FILE_EMBED_GEN} PARENT_SCOPE)
endfunction()

Expand All @@ -232,10 +249,9 @@ endfunction()
# platform-optimized version of the emulation library during the runtime.
# See vc_build_bif and vc_generate_optimized_bif for details
# Path to resulting CPP source code is stored in the specified cmake variable.
function(vc_embed_optimized_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE)
function(vc_embed_optimized_bif RES_FILE CMCL_SRC_PATH BIF_NAME PTR_BIT_SIZE OPAQUE_PTRS)
set(MANGLED_BIF_NAME ${BIF_NAME}${PTR_BIT_SIZE})
vc_build_bif("${BIF_NAME}${PTR_BIT_SIZE}-BC" RES_FILE_VC_EMBED "${CMCL_SRC_PATH}" "${BIF_NAME}" "${PTR_BIT_SIZE}")
vc_generate_optimized_bif("${BIF_NAME}${PTR_BIT_SIZE}" RES_FILE_EMBED_GEN "${RES_FILE_VC_EMBED}"
"${MANGLED_BIF_NAME}")
vc_build_bif(RES_FILE_VC_EMBED "${CMCL_SRC_PATH}" "${BIF_NAME}" "${PTR_BIT_SIZE}" "${OPAQUE_PTRS}")
vc_generate_optimized_bif(RES_FILE_EMBED_GEN "${RES_FILE_VC_EMBED}" "${MANGLED_BIF_NAME}" "${OPAQUE_PTRS}")
set(${RES_FILE} ${RES_FILE_EMBED_GEN} PARENT_SCOPE)
endfunction()
8 changes: 4 additions & 4 deletions IGC/VectorCompiler/test/GenXBuiltinFunctions/fdiv_f32.ll
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
;=========================== begin_copyright_notice ============================
;
; Copyright (C) 2021-2023 Intel Corporation
; Copyright (C) 2021-2025 Intel Corporation
;
; SPDX-License-Identifier: MIT
;
;============================ end_copyright_notice =============================

; RUN: %opt %use_old_pass_manager% -GenXBuiltinFunctions -march=genx64 \
; RUN: -vc-builtins-bif-path=%VC_BUILTINS_BIF_XeLPG% -mcpu=XeLPG \
; RUN: -vc-builtins-bif-path=%VC_BIF_XeLPG% -mcpu=XeLPG \
; RUN: -mtriple=spir64-unknown-unknown -S < %s 2>&1 | FileCheck %s

; RUN: %opt %use_old_pass_manager% -GenXBuiltinFunctions -march=genx64 \
; RUN: -vc-builtins-bif-path=%VC_BUILTINS_BIF_XeHPC% -mcpu=XeHPC \
; RUN: -vc-builtins-bif-path=%VC_BIF_XeHPC% -mcpu=XeHPC \
; RUN: -mtriple=spir64-unknown-unknown -S < %s 2>&1 | FileCheck %s \
; RUN: --check-prefix=CHECK-NOEMU

Expand All @@ -26,4 +26,4 @@ define dllexport spir_kernel void @test_kernel(<32 x float> %l, <32 x float> %r)
; CHECK-NOEMU: = call <32 x float> @llvm.genx.ieee.div.v32f32
%2 = call <32 x float> @llvm.genx.ieee.div.v32f32(<32 x float> %l, <32 x float> %r)
ret void
}
}
6 changes: 3 additions & 3 deletions IGC/VectorCompiler/test/GenXBuiltinFunctions/fptoi_f16.ll
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
;=========================== begin_copyright_notice ============================
;
; Copyright (C) 2021-2023 Intel Corporation
; Copyright (C) 2021-2025 Intel Corporation
;
; SPDX-License-Identifier: MIT
;
;============================ end_copyright_notice =============================

; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BUILTINS_BIF_XeLP% \
; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BIF_XeLP% \
; RUN: -GenXBuiltinFunctions -march=genx64 -mtriple=spir64-unknown-unknown \
; RUN: -mcpu=XeLP -S < %s | FileCheck %s

; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BUILTINS_BIF_Gen9% \
; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BIF_Gen9% \
; RUN: -GenXBuiltinFunctions -march=genx64 -mtriple=spir64-unknown-unknown \
; RUN: -mcpu=Gen9 -S < %s | FileCheck %s --check-prefix=CHECK-NOEMU

Expand Down
6 changes: 3 additions & 3 deletions IGC/VectorCompiler/test/GenXBuiltinFunctions/fptoi_f32.ll
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
;=========================== begin_copyright_notice ============================
;
; Copyright (C) 2021-2023 Intel Corporation
; Copyright (C) 2021-2025 Intel Corporation
;
; SPDX-License-Identifier: MIT
;
;============================ end_copyright_notice =============================

; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BUILTINS_BIF_XeLP% \
; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BIF_XeLP% \
; RUN: -GenXBuiltinFunctions -march=genx64 -mtriple=spir64-unknown-unknown \
; RUN: -mcpu=XeLP -S < %s | FileCheck %s

; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BUILTINS_BIF_Gen9% \
; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BIF_Gen9% \
; RUN: -GenXBuiltinFunctions -march=genx64 -mtriple=spir64-unknown-unknown \
; RUN: -mcpu=Gen9 -S < %s | FileCheck %s --check-prefix=CHECK-NOEMU

Expand Down
6 changes: 3 additions & 3 deletions IGC/VectorCompiler/test/GenXBuiltinFunctions/fptoi_f64.ll
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
;=========================== begin_copyright_notice ============================
;
; Copyright (C) 2021-2023 Intel Corporation
; Copyright (C) 2021-2025 Intel Corporation
;
; SPDX-License-Identifier: MIT
;
;============================ end_copyright_notice =============================

; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BUILTINS_BIF_XeLPG% \
; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BIF_XeLPG% \
; RUN: -GenXBuiltinFunctions -march=genx64 -mtriple=spir64-unknown-unknown \
; RUN: -mcpu=XeLPG -S < %s | FileCheck %s

; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BUILTINS_BIF_Gen9% \
; RUN: %opt %use_old_pass_manager% -vc-builtins-bif-path=%VC_BIF_Gen9% \
; RUN: -GenXBuiltinFunctions -march=genx64 -mtriple=spir64-unknown-unknown \
; RUN: -mcpu=Gen9 -S < %s | FileCheck %s --check-prefix=CHECK-NOEMU

Expand Down
Loading

0 comments on commit 3207183

Please sign in to comment.