Skip to content

Commit 44400b7

Browse files
committed
Merge branch 'sycl' into review/yang/restructure_asan_msan
2 parents 28e635b + fc44c0b commit 44400b7

File tree

1,899 files changed

+4001
-3507
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,899 files changed

+4001
-3507
lines changed

.github/workflows/sycl-nightly.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ jobs:
110110
image_options: ${{ matrix.image_options }}
111111
target_devices: ${{ matrix.target_devices }}
112112
tests_selector: ${{ matrix.tests_selector }}
113-
extra_lit_opts: ${{ matrix.extra_lit_opts }}
113+
extra_lit_opts: "--param 'cxx_flags=-D_GLIBCXX_USE_CXX11_ABI=0' ${{ matrix.extra_lit_opts }}"
114114
reset_intel_gpu: ${{ matrix.reset_intel_gpu }}
115115
ref: ${{ github.sha }}
116116
merge_ref: ''

libclc/CMakeLists.txt

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,29 +19,30 @@ include( AddLibclc )
1919
include( GNUInstallDirs )
2020
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS
2121
amdgcn-amdhsa/lib/SOURCES;
22-
amdgcn-amdhsa/libspirv/SOURCES;
2322
amdgcn/lib/SOURCES;
24-
amdgcn/libspirv/SOURCES;
2523
amdgcn-mesa3d/lib/SOURCES;
2624
amdgpu/lib/SOURCES;
2725
clspv/lib/SOURCES;
2826
clspv64/lib/SOURCES;
2927
generic/lib/SOURCES;
30-
generic/libspirv/SOURCES;
3128
ptx/lib/SOURCES;
3229
ptx-nvidiacl/lib/SOURCES;
33-
ptx-nvidiacl/libspirv/SOURCES;
3430
r600/lib/SOURCES;
35-
r600/libspirv/SOURCES;
3631
spirv/lib/SOURCES;
3732
spirv64/lib/SOURCES;
38-
native_cpu-unknown-linux/libspirv/SOURCES;
3933
# CLC internal libraries
4034
clc/lib/generic/SOURCES;
4135
clc/lib/clspv/SOURCES;
4236
clc/lib/clspv64/SOURCES;
4337
clc/lib/spirv/SOURCES;
4438
clc/lib/spirv64/SOURCES;
39+
# libspirv libraries
40+
libspirv/lib/generic/SOURCES;
41+
libspirv/lib/amdgcn-amdhsa/SOURCES;
42+
libspirv/lib/amdgcn/SOURCES;
43+
libspirv/lib/ptx-nvidiacl/SOURCES;
44+
libspirv/lib/r600/SOURCES;
45+
libspirv/lib/native_cpu-unknown-linux/SOURCES;
4546
)
4647

4748
set( LIBCLC_MIN_LLVM 3.9.0 )
@@ -264,8 +265,8 @@ endif()
264265

265266
find_package( Python3 REQUIRED COMPONENTS Interpreter )
266267
file( TO_CMAKE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/generic/lib/gen_convert.py clc_script_loc )
267-
file( TO_CMAKE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/generic/libspirv/gen_core_convert.py core_script_loc )
268-
file( TO_CMAKE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/generic/libspirv/gen_convert.py spirv_script_loc )
268+
file( TO_CMAKE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/libspirv/lib/generic/gen_core_convert.py core_script_loc )
269+
file( TO_CMAKE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/libspirv/lib/generic/gen_convert.py spirv_script_loc )
269270
file( TO_CMAKE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/generic/lib/gen_convert.py script_loc )
270271
add_custom_command(
271272
OUTPUT convert.cl
@@ -363,7 +364,7 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} )
363364
list( APPEND opencl_gen_files clspv-convert.cl )
364365
elseif ( NOT ENABLE_RUNTIME_SUBNORMAL )
365366
list( APPEND opencl_gen_files convert-clc.cl )
366-
list( APPEND opencl_lib_files generic/libspirv/subnormal_use_default.ll )
367+
list( APPEND opencl_lib_files generic/lib/subnormal_use_default.ll )
367368
endif()
368369
endif()
369370

@@ -380,13 +381,13 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} )
380381
list( APPEND libspirv_gen_files clspv-convert.cl )
381382
elseif ( NOT ENABLE_RUNTIME_SUBNORMAL )
382383
list( APPEND libspirv_gen_files convert-spirv.cl convert-core.cl )
383-
list( APPEND libspirv_lib_files generic/libspirv/subnormal_use_default.ll )
384+
list( APPEND libspirv_lib_files libspirv/lib/generic/subnormal_use_default.ll )
384385
endif()
385386
endif()
386387

387388
libclc_configure_lib_source(
388389
libspirv_lib_files
389-
LIB_DIR libspirv
390+
LIB_ROOT_DIR libspirv
390391
DIRS ${dirs} ${DARCH} ${DARCH}-${OS} ${DARCH}-${VENDOR}-${OS}
391392
)
392393

@@ -531,16 +532,18 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} )
531532
LIB_FILES ${clc_lib_files}
532533
)
533534

534-
list( APPEND build_flags
535+
set( spirv_build_flags ${build_flags} )
536+
list( APPEND spirv_build_flags
535537
-I${CMAKE_CURRENT_SOURCE_DIR}/generic/include
538+
-I${CMAKE_CURRENT_SOURCE_DIR}/libspirv/include/
536539
)
537540

538541
add_libclc_builtin_set(
539542
ARCH ${ARCH}
540543
ARCH_SUFFIX libspirv-${arch_suffix}
541544
TRIPLE ${clang_triple}
542545
TARGET_ENV libspirv-
543-
COMPILE_FLAGS ${build_flags}
546+
COMPILE_FLAGS ${spirv_build_flags}
544547
OPT_FLAGS ${opt_flags}
545548
LIB_FILES ${libspirv_lib_files}
546549
GEN_FILES ${libspirv_gen_files}
@@ -550,11 +553,18 @@ foreach( t ${LIBCLC_TARGETS_TO_BUILD} )
550553
INTERNAL_LINK_DEPENDENCIES $<TARGET_PROPERTY:builtins.link.clc-${arch_suffix},TARGET_FILE>
551554
)
552555

556+
set( opencl_build_flags ${build_flags} )
557+
list( APPEND opencl_build_flags
558+
-I${CMAKE_CURRENT_SOURCE_DIR}/generic/include
559+
# FIXME: OpenCL bindings shouldn't depend on libspirv
560+
-I${CMAKE_CURRENT_SOURCE_DIR}/libspirv/include/
561+
)
562+
553563
add_libclc_builtin_set(
554564
ARCH ${ARCH}
555565
ARCH_SUFFIX ${arch_suffix}
556566
TRIPLE ${clang_triple}
557-
COMPILE_FLAGS ${build_flags}
567+
COMPILE_FLAGS ${opencl_build_flags}
558568
OPT_FLAGS ${opt_flags}
559569
LIB_FILES ${opencl_lib_files}
560570
GEN_FILES ${opencl_gen_files}

libclc/cmake/modules/AddLibclc.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,7 @@ function(libclc_configure_lib_source LIB_FILE_LIST)
555555
set( source_list )
556556
foreach( l ${ARG_DIRS} )
557557
foreach( s "SOURCES" "SOURCES_${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}" )
558-
if( ARG_CLC_INTERNAL )
558+
if( ARG_CLC_INTERNAL OR ARG_LIB_ROOT_DIR STREQUAL libspirv )
559559
file( TO_CMAKE_PATH ${ARG_LIB_ROOT_DIR}/${ARG_LIB_DIR}/${l}/${s} file_loc )
560560
else()
561561
file( TO_CMAKE_PATH ${ARG_LIB_ROOT_DIR}/${l}/${ARG_LIB_DIR}/${s} file_loc )

libclc/generic/include/spirv/image/image_defines.h

Lines changed: 0 additions & 57 deletions
This file was deleted.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#include <clc/clc.h>
2-
#include <spirv/spirv.h>
2+
#include <libspirv/spirv.h>
33

44
#define __CLC_BODY <async_work_group_strided_copy.inc>
55
#include <clc/async/gentype.inc>

libclc/generic/lib/async/prefetch.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
//===----------------------------------------------------------------------===//
88

99
#include <clc/clc.h>
10-
#include <spirv/spirv.h>
10+
#include <libspirv/spirv.h>
1111

1212
#define __CLC_BODY <prefetch.inc>
1313
#include <clc/async/gentype.inc>

libclc/generic/lib/async/wait_group_events.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#include <spirv/spirv.h>
1+
#include <libspirv/spirv.h>
22
#include <clc/clc.h>
33

44
_CLC_DEF _CLC_OVERLOAD void wait_group_events(int num_events,

libclc/generic/lib/atomic/atomic_add.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#include <clc/clc.h>
2-
#include <spirv/spirv.h>
2+
#include <libspirv/spirv.h>
33

44
#define IMPL(TYPE, TYPE_MANGLED, AS, AS_MANGLED) \
55
_CLC_OVERLOAD _CLC_DEF TYPE atomic_add(volatile AS TYPE *p, TYPE val) { \

libclc/generic/lib/atomic/atomic_and.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#include <clc/clc.h>
2-
#include <spirv/spirv.h>
2+
#include <libspirv/spirv.h>
33

44
#define IMPL(TYPE, TYPE_MANGLED, AS, AS_MANGLED) \
55
_CLC_OVERLOAD _CLC_DEF TYPE atomic_and(volatile AS TYPE *p, TYPE val) { \

libclc/generic/lib/atomic/atomic_cmpxchg.cl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#include <clc/clc.h>
2-
#include <spirv/spirv.h>
2+
#include <libspirv/spirv.h>
33

44
#define IMPL(TYPE, TYPE_MANGLED, AS, AS_MANGLED) \
55
_CLC_OVERLOAD _CLC_DEF TYPE atomic_cmpxchg(volatile AS TYPE *p, TYPE cmp, \

0 commit comments

Comments
 (0)