# To build these benchmarks, build the target "ScudoBenchmarks.$ARCH", where # $ARCH is the name of the target architecture. For example, # ScudoBenchmarks.x86_64 for 64-bit x86. The benchmark executable is then # available under projects/compiler-rt/lib/scudo/standalone/benchmarks/ in the # build directory. include(AddLLVM) set(SCUDO_BENCHMARK_CFLAGS -I${COMPILER_RT_SOURCE_DIR}/lib/scudo/standalone) if(ANDROID) list(APPEND SCUDO_BENCHMARK_CFLAGS -fno-emulated-tls) endif() string(REPLACE ";" " " SCUDO_BENCHMARK_CFLAGS " ${SCUDO_BENCHMARK_CFLAGS}") foreach(arch ${SCUDO_STANDALONE_SUPPORTED_ARCH}) add_benchmark(ScudoBenchmarks.${arch} malloc_benchmark.cpp $) set_property(TARGET ScudoBenchmarks.${arch} APPEND_STRING PROPERTY COMPILE_FLAGS "${SCUDO_BENCHMARK_CFLAGS}") if (COMPILER_RT_HAS_GWP_ASAN) add_benchmark( ScudoBenchmarksWithGwpAsan.${arch} malloc_benchmark.cpp $ $ $ $) set_property( TARGET ScudoBenchmarksWithGwpAsan.${arch} APPEND_STRING PROPERTY COMPILE_FLAGS "${SCUDO_BENCHMARK_CFLAGS} -DGWP_ASAN_HOOKS") endif() endforeach()