source_set("sources") { configs -= [ "//llvm/utils/gn/build:llvm_code" ] configs += [ "//llvm/utils/gn/build:crt_code" ] defines = [ "UBSAN_CAN_USE_CXXABI" ] deps = [ "//compiler-rt/lib/interception:sources", "//compiler-rt/lib/sanitizer_common:sources", ] sources = [ "ubsan_diag.cpp", "ubsan_diag.h", "ubsan_flags.cpp", "ubsan_flags.h", "ubsan_handlers.cpp", "ubsan_handlers.h", "ubsan_init.cpp", "ubsan_init.h", "ubsan_monitor.cpp", "ubsan_monitor.h", "ubsan_platform.h", "ubsan_signals_standalone.h", "ubsan_type_hash.h", "ubsan_value.cpp", "ubsan_value.h", ] } source_set("weak_interception") { configs -= [ "//llvm/utils/gn/build:llvm_code" ] configs += [ "//llvm/utils/gn/build:crt_code" ] sources = [ "ubsan_win_weak_interception.cpp" ] defines = [ "SANITIZER_DYNAMIC" ] } source_set("dll_thunk") { configs -= [ "//llvm/utils/gn/build:llvm_code" ] configs += [ "//llvm/utils/gn/build:crt_code" ] sources = [ "ubsan_win_dll_thunk.cpp" ] defines = [ "SANITIZER_DLL_THUNK" ] } source_set("dynamic_runtime_thunk") { configs -= [ "//llvm/utils/gn/build:llvm_code" ] configs += [ "//llvm/utils/gn/build:crt_code" ] defines = [ "SANITIZER_DYNAMIC_RUNTIME_THUNK" ] sources = [ "ubsan_win_dynamic_runtime_thunk.cpp" ] } # Unreferenced; at the moment exists to make sync_source_lists_from_cmake happy. source_set("standalone_sources") { configs -= [ "//llvm/utils/gn/build:llvm_code" ] configs -= [ "//llvm/utils/gn/build:no_rtti" ] configs += [ "//llvm/utils/gn/build:crt_code" ] defines = [ "UBSAN_CAN_USE_CXXABI" ] sources = [ "ubsan_diag_standalone.cpp", "ubsan_init_standalone.cpp", "ubsan_signals_standalone.cpp", ] } source_set("cxx_sources") { configs -= [ "//llvm/utils/gn/build:llvm_code" ] configs -= [ "//llvm/utils/gn/build:no_rtti" ] configs += [ "//llvm/utils/gn/build:crt_code" ] defines = [ "UBSAN_CAN_USE_CXXABI" ] sources = [ "ubsan_handlers_cxx.cpp", "ubsan_handlers_cxx.h", "ubsan_type_hash.cpp", "ubsan_type_hash_itanium.cpp", "ubsan_type_hash_win.cpp", ] }