@@ -78,14 +78,23 @@ add_custom_command(OUTPUT ${devicelib-obj-cmath-fp64}
7878 VERBATIM )
7979
8080add_custom_command (OUTPUT ${spv_binary_dir} /libsycl-fallback-cassert.spv
81- COMMAND ${clang} -S - fsycl-device-only -fno-sycl-use-bitcode
81+ COMMAND ${clang} -fsycl-device-only -fno-sycl-use-bitcode
8282 ${compile_opts}
8383 ${CMAKE_CURRENT_SOURCE_DIR} /fallback-cassert.cpp
8484 -o ${spv_binary_dir} /libsycl-fallback-cassert.spv
8585 MAIN_DEPENDENCY fallback-cassert.cpp
8686 DEPENDS wrapper.h device.h clang spirv_vars.h llvm-spirv
8787 VERBATIM )
8888
89+ add_custom_command (OUTPUT ${spv_binary_dir} /libsycl-fallback-cstring.spv
90+ COMMAND ${clang} -fsycl-device-only -fno-sycl-use-bitcode
91+ ${compile_opts}
92+ ${CMAKE_CURRENT_SOURCE_DIR} /fallback-cstring.cpp
93+ -o ${spv_binary_dir} /libsycl-fallback-cstring.spv
94+ MAIN_DEPENDENCY fallback-cstring.cpp
95+ DEPENDS wrapper.h device.h clang spirv_vars.h llvm-spirv
96+ VERBATIM )
97+
8998add_custom_command (OUTPUT ${obj_binary_dir} /libsycl-fallback-cassert.${lib-suffix }
9099 COMMAND ${clang} -fsycl -c
91100 ${compile_opts} ${sycl_targets_opt}
@@ -95,8 +104,17 @@ add_custom_command(OUTPUT ${obj_binary_dir}/libsycl-fallback-cassert.${lib-suffi
95104 DEPENDS wrapper.h device.h clang spirv_vars.h clang-offload-bundler
96105 VERBATIM )
97106
107+ add_custom_command (OUTPUT ${obj_binary_dir} /libsycl-fallback-cstring.${lib-suffix }
108+ COMMAND ${clang} -fsycl -c
109+ ${compile_opts} ${sycl_targets_opt}
110+ ${CMAKE_CURRENT_SOURCE_DIR} /fallback-cstring.cpp
111+ -o ${obj_binary_dir} /libsycl-fallback-cstring.${lib-suffix }
112+ MAIN_DEPENDENCY fallback-cstring.cpp
113+ DEPENDS wrapper.h device.h clang spirv_vars.h clang-offload-bundler
114+ VERBATIM )
115+
98116add_custom_command (OUTPUT ${spv_binary_dir} /libsycl-fallback-complex.spv
99- COMMAND ${clang} -S - fsycl-device-only -fno-sycl-use-bitcode
117+ COMMAND ${clang} -fsycl-device-only -fno-sycl-use-bitcode
100118 ${compile_opts}
101119 ${CMAKE_CURRENT_SOURCE_DIR} /fallback-complex.cpp
102120 -o ${spv_binary_dir} /libsycl-fallback-complex.spv
@@ -114,7 +132,7 @@ add_custom_command(OUTPUT ${obj_binary_dir}/libsycl-fallback-complex.${lib-suffi
114132 VERBATIM )
115133
116134add_custom_command (OUTPUT ${spv_binary_dir} /libsycl-fallback-complex-fp64.spv
117- COMMAND ${clang} -S - fsycl-device-only -fno-sycl-use-bitcode
135+ COMMAND ${clang} -fsycl-device-only -fno-sycl-use-bitcode
118136 ${compile_opts}
119137 ${CMAKE_CURRENT_SOURCE_DIR} /fallback-complex-fp64.cpp
120138 -o ${spv_binary_dir} /libsycl-fallback-complex-fp64.spv
@@ -132,7 +150,7 @@ add_custom_command(OUTPUT ${obj_binary_dir}/libsycl-fallback-complex-fp64.${lib-
132150 VERBATIM )
133151
134152add_custom_command (OUTPUT ${spv_binary_dir} /libsycl-fallback-cmath.spv
135- COMMAND ${clang} -S - fsycl-device-only -fno-sycl-use-bitcode
153+ COMMAND ${clang} -fsycl-device-only -fno-sycl-use-bitcode
136154 ${compile_opts}
137155 ${CMAKE_CURRENT_SOURCE_DIR} /fallback-cmath.cpp
138156 -o ${spv_binary_dir} /libsycl-fallback-cmath.spv
@@ -150,7 +168,7 @@ add_custom_command(OUTPUT ${obj_binary_dir}/libsycl-fallback-cmath.${lib-suffix}
150168 VERBATIM )
151169
152170add_custom_command (OUTPUT ${spv_binary_dir} /libsycl-fallback-cmath-fp64.spv
153- COMMAND ${clang} -S - fsycl-device-only -fno-sycl-use-bitcode
171+ COMMAND ${clang} -fsycl-device-only -fno-sycl-use-bitcode
154172 ${compile_opts}
155173 ${CMAKE_CURRENT_SOURCE_DIR} /fallback-cmath-fp64.cpp
156174 -o ${spv_binary_dir} /libsycl-fallback-cmath-fp64.spv
@@ -210,13 +228,15 @@ add_custom_target(libsycldevice-obj DEPENDS
210228)
211229add_custom_target (libsycldevice-spv DEPENDS
212230 ${spv_binary_dir} /libsycl-fallback-cassert.spv
231+ ${spv_binary_dir} /libsycl-fallback-cstring.spv
213232 ${spv_binary_dir} /libsycl-fallback-complex.spv
214233 ${spv_binary_dir} /libsycl-fallback-complex-fp64.spv
215234 ${spv_binary_dir} /libsycl-fallback-cmath.spv
216235 ${spv_binary_dir} /libsycl-fallback-cmath-fp64.spv
217236 )
218237add_custom_target (libsycldevice-fallback-obj DEPENDS
219238 ${obj_binary_dir} /libsycl-fallback-cassert.${lib-suffix }
239+ ${obj_binary_dir} /libsycl-fallback-cstring.${lib-suffix }
220240 ${obj_binary_dir} /libsycl-fallback-complex.${lib-suffix }
221241 ${obj_binary_dir} /libsycl-fallback-complex-fp64.${lib-suffix }
222242 ${obj_binary_dir} /libsycl-fallback-cmath.${lib-suffix }
@@ -239,6 +259,7 @@ set(install_dest_lib lib${LLVM_LIBDIR_SUFFIX})
239259
240260install (FILES ${devicelib-obj-file}
241261 ${obj_binary_dir} /libsycl-fallback-cassert.${lib-suffix }
262+ ${obj_binary_dir} /libsycl-fallback-cstring.${lib-suffix }
242263 ${devicelib-obj-complex}
243264 ${obj_binary_dir} /libsycl-fallback-complex.${lib-suffix }
244265 ${devicelib-obj-complex-fp64}
@@ -252,6 +273,7 @@ install(FILES ${devicelib-obj-file}
252273 COMPONENT libsycldevice)
253274
254275install (FILES ${spv_binary_dir} /libsycl-fallback-cassert.spv
276+ ${spv_binary_dir} /libsycl-fallback-cstring.spv
255277 ${spv_binary_dir} /libsycl-fallback-complex.spv
256278 ${spv_binary_dir} /libsycl-fallback-complex-fp64.spv
257279 ${spv_binary_dir} /libsycl-fallback-cmath.spv
0 commit comments