Skip to content

Commit 05540e6

Browse files
authored
Xu auto clang format 11 check (#1261) (#1262)
* add auto clang-format before build. * check with clang-format-11
1 parent bde089d commit 05540e6

File tree

5 files changed

+40
-3
lines changed

5 files changed

+40
-3
lines changed

cmake/ClangFormat.cmake

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
## Include to trigger clang-format
2+
if(BUILD_NO_CLANGFORMAT)
3+
return()
4+
endif()
5+
6+
if(CLANGFORMAT_enabled)
7+
return()
8+
endif()
9+
set(CLANGFORMAT_enabled true)
10+
11+
set(CFMT_STYLE ${IPEX_PROJECT_TOP_DIR}/.clang-format)
12+
if(NOT EXISTS ${CFMT_STYLE})
13+
message(WARNING "Cannot find style file ${CFMT_STYLE}!")
14+
return()
15+
endif()
16+
17+
find_program(CLANG_FORMAT "clang-format")
18+
if(NOT CLANG_FORMAT)
19+
message(WARNING "Please install clang-format before contributing to IPEX!")
20+
endif()

csrc/cpu/CMakeLists.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,14 @@ list(REMOVE_ITEM IPEX_CPU_CPP_SRCS ${IPEX_CPU_CPP_ISA_SRCS_ORIGIN})
137137

138138
add_library(${PLUGIN_NAME_CPU} SHARED ${IPEX_CPU_CPP_SRCS})
139139

140+
include(${IPEX_PROJECT_TOP_DIR}/cmake/ClangFormat.cmake)
141+
if(CLANG_FORMAT)
142+
file(GLOB_RECURSE ALL_NATIVE_CSRC_FILES ${IPEX_CPU_CPP_ROOT}/**.[ch] ${IPEX_CPU_CPP_ROOT}/**.[ch]pp
143+
${IPEX_JIT_CPP_ROOT}/**.[ch] ${IPEX_JIT_CPP_ROOT}/**.[ch]pp ${IPEX_UTLIS_CPP_ROOT}/**.[ch] ${IPEX_UTLIS_CPP_ROOT}/**.[ch]pp)
144+
add_custom_target(CL_FORMAT_CPU_NATIVE_CSRC COMMAND clang-format -i -style=file ${ALL_NATIVE_CSRC_FILES})
145+
add_dependencies(${PLUGIN_NAME_CPU} CL_FORMAT_CPU_NATIVE_CSRC)
146+
endif()
147+
140148
link_directories(${PYTORCH_INSTALL_DIR}/lib)
141149
add_dependencies(${PLUGIN_NAME_CPU} dnnl_graph)
142150
# If Graph Compiler is built, then it should link to its LLVM dependencies,

csrc/cpu/aten/kernels/PackedMklSgemmKrnl.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ at::Tensor mkl_sgemm_packB_impl(
3232
const int64_t N,
3333
const int64_t K,
3434
const at::Tensor& ori_weight) {
35-
int64_t pack_size =
36-
(int64_t)(cblas_sgemm_pack_get_size(CblasBMatrix, M, N, K) / sizeof(float) + 1);
35+
int64_t pack_size = (int64_t)(
36+
cblas_sgemm_pack_get_size(CblasBMatrix, M, N, K) / sizeof(float) + 1);
3737
at::Tensor mkl_weight = at::empty(pack_size, at::kFloat);
3838
_mkl_sgemm_packB_impl(M, N, K, ori_weight, mkl_weight);
3939
return mkl_weight;

intel_extension_for_pytorch/csrc/python/CMakeLists.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,5 +72,12 @@ set(IPEX_PYTHON_CPP_SRCS ${IPEX_PYTHON_CPP_CPU_SRCS})
7272

7373
add_library(${PLUGIN_NAME_PYTHON} SHARED ${IPEX_PYTHON_CPP_SRCS})
7474

75+
include(${IPEX_PROJECT_TOP_DIR}/cmake/ClangFormat.cmake)
76+
if(CLANG_FORMAT)
77+
file(GLOB_RECURSE ALL_NATIVE_CSRC_FILES ${PROJECT_SOURCE_DIR}/**.[ch] ${PROJECT_SOURCE_DIR}/**.[ch]pp)
78+
add_custom_target(CL_FORMAT_PYTHON_NATIVE_CSRC COMMAND clang-format -i -style=file ${ALL_NATIVE_CSRC_FILES})
79+
add_dependencies(${PLUGIN_NAME_PYTHON} CL_FORMAT_PYTHON_NATIVE_CSRC)
80+
endif()
81+
7582
target_link_directories(${PLUGIN_NAME_PYTHON} PUBLIC ${IPEX_INSTALL_LIBDIR})
7683
target_link_libraries(${PLUGIN_NAME_PYTHON} PUBLIC intel-ext-pt-cpu)

setup.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,9 @@ def write_buffer_to_file(file_path, buffer):
353353
return
354354

355355
c_buffer = '// Autogenerated file, do not edit!\n'
356-
c_buffer += '// code fingerprint: {}\n\n'.format(current_code_fingerprint)
356+
c_buffer += '// clang-format off\n'
357+
c_buffer += '// code fingerprint: {}\n'.format(current_code_fingerprint)
358+
c_buffer += '// clang-format on\n\n'
357359
c_buffer += '#pragma once\n'
358360
c_buffer += '#include <string>\n\n'
359361
c_buffer += 'namespace torch_ipex {\n\n'

0 commit comments

Comments
 (0)