@@ -588,37 +588,39 @@ if (COMPILER_RT_HAS_AARCH64_SME)
588588 endif ()
589589endif ()
590590
591- # Generate outline atomics helpers from lse.S base
592- set (OA_HELPERS_DIR "${CMAKE_CURRENT_BINARY_DIR} /outline_atomic_helpers.dir" )
593- file (MAKE_DIRECTORY "${OA_HELPERS_DIR} " )
594-
595- if (CMAKE_HOST_UNIX )
596- set (COMPILER_RT_LINK_OR_COPY create_symlink)
597- else ()
598- set (COMPILER_RT_LINK_OR_COPY copy)
599- endif ()
591+ if (NOT "${CMAKE_ASM_COMPILER_ID} " MATCHES "MSVC" )
592+ # Generate outline atomics helpers from lse.S base
593+ set (OA_HELPERS_DIR "${CMAKE_CURRENT_BINARY_DIR} /outline_atomic_helpers.dir" )
594+ file (MAKE_DIRECTORY "${OA_HELPERS_DIR} " )
600595
601- foreach (pat cas swp ldadd ldclr ldeor ldset)
602- foreach (size 1 2 4 8 16)
603- foreach (model 1 2 3 4 5)
604- if (pat STREQUAL "cas" OR NOT size STREQUAL "16" )
605- set (source_asm "${CMAKE_CURRENT_SOURCE_DIR} /aarch64/lse.S" )
606- set (helper_asm "${OA_HELPERS_DIR} /outline_atomic_${pat}${size} _${model} .S" )
607- add_custom_command (
608- OUTPUT "${helper_asm} "
609- COMMAND ${CMAKE_COMMAND} -E ${COMPILER_RT_LINK_OR_COPY} "${source_asm} " "${helper_asm} "
610- DEPENDS "${source_asm} "
611- )
612- set_source_files_properties ("${helper_asm} "
613- PROPERTIES
614- COMPILE_DEFINITIONS "L_${pat} ;SIZE=${size} ;MODEL=${model} "
615- INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR} "
616- )
617- list (APPEND aarch64_SOURCES "${helper_asm} " )
618- endif ()
619- endforeach (model)
620- endforeach (size)
621- endforeach (pat)
596+ if (CMAKE_HOST_UNIX )
597+ set (COMPILER_RT_LINK_OR_COPY create_symlink)
598+ else ()
599+ set (COMPILER_RT_LINK_OR_COPY copy)
600+ endif ()
601+
602+ foreach (pat cas swp ldadd ldclr ldeor ldset)
603+ foreach (size 1 2 4 8 16)
604+ foreach (model 1 2 3 4 5)
605+ if (pat STREQUAL "cas" OR NOT size STREQUAL "16" )
606+ set (source_asm "${CMAKE_CURRENT_SOURCE_DIR} /aarch64/lse.S" )
607+ set (helper_asm "${OA_HELPERS_DIR} /outline_atomic_${pat}${size} _${model} .S" )
608+ add_custom_command (
609+ OUTPUT "${helper_asm} "
610+ COMMAND ${CMAKE_COMMAND} -E ${COMPILER_RT_LINK_OR_COPY} "${source_asm} " "${helper_asm} "
611+ DEPENDS "${source_asm} "
612+ )
613+ set_source_files_properties ("${helper_asm} "
614+ PROPERTIES
615+ COMPILE_DEFINITIONS "L_${pat} ;SIZE=${size} ;MODEL=${model} "
616+ INCLUDE_DIRECTORIES "${CMAKE_CURRENT_SOURCE_DIR} "
617+ )
618+ list (APPEND aarch64_SOURCES "${helper_asm} " )
619+ endif ()
620+ endforeach (model)
621+ endforeach (size)
622+ endforeach (pat)
623+ endif ()
622624
623625if (MINGW)
624626 set (aarch64_SOURCES
0 commit comments