svn commit: r238901 - in vendor/compiler-rt/dist: . BlocksRuntime
SDKs/darwin/usr/include SDKs/linux/usr/include cmake
cmake/Modules lib lib/arm lib/asan lib/asan/mach_override
lib/asan/output_test...
Andrew Turner
andrew at FreeBSD.org
Mon Jul 30 10:58:15 UTC 2012
Author: andrew
Date: Mon Jul 30 10:58:13 2012
New Revision: 238901
URL: http://svn.freebsd.org/changeset/base/238901
Log:
Import compiler-rt r160957.
Added:
vendor/compiler-rt/dist/lib/arm/aeabi_idivmod.S
vendor/compiler-rt/dist/lib/arm/aeabi_ldivmod.S
vendor/compiler-rt/dist/lib/arm/aeabi_memcmp.S
vendor/compiler-rt/dist/lib/arm/aeabi_memcpy.S
vendor/compiler-rt/dist/lib/arm/aeabi_memmove.S
vendor/compiler-rt/dist/lib/arm/aeabi_memset.S
vendor/compiler-rt/dist/lib/arm/aeabi_uidivmod.S
vendor/compiler-rt/dist/lib/arm/aeabi_uldivmod.S
vendor/compiler-rt/dist/lib/asan/CMakeLists.txt
vendor/compiler-rt/dist/lib/asan/asan_flags.h
vendor/compiler-rt/dist/lib/asan/asan_malloc_win.cc
vendor/compiler-rt/dist/lib/asan/asan_new_delete.cc
vendor/compiler-rt/dist/lib/asan/asan_posix.cc
vendor/compiler-rt/dist/lib/asan/asan_win.cc
vendor/compiler-rt/dist/lib/asan/output_tests/
vendor/compiler-rt/dist/lib/asan/output_tests/clone_test.cc
vendor/compiler-rt/dist/lib/asan/output_tests/deep_tail_call.cc
vendor/compiler-rt/dist/lib/asan/output_tests/default_options.cc
vendor/compiler-rt/dist/lib/asan/output_tests/dlclose-test-so.cc
vendor/compiler-rt/dist/lib/asan/output_tests/dlclose-test.cc
vendor/compiler-rt/dist/lib/asan/output_tests/global-overflow.cc
vendor/compiler-rt/dist/lib/asan/output_tests/heap-overflow.cc
vendor/compiler-rt/dist/lib/asan/output_tests/interception_failure_test-linux.cc
vendor/compiler-rt/dist/lib/asan/output_tests/interception_malloc_test-linux.cc
vendor/compiler-rt/dist/lib/asan/output_tests/interception_test-linux.cc
vendor/compiler-rt/dist/lib/asan/output_tests/large_func_test.cc
vendor/compiler-rt/dist/lib/asan/output_tests/memcmp_test.cc
vendor/compiler-rt/dist/lib/asan/output_tests/null_deref.cc
vendor/compiler-rt/dist/lib/asan/output_tests/shared-lib-test-so.cc
vendor/compiler-rt/dist/lib/asan/output_tests/shared-lib-test.cc
vendor/compiler-rt/dist/lib/asan/output_tests/stack-overflow.cc
vendor/compiler-rt/dist/lib/asan/output_tests/stack-use-after-return.cc.disabled
vendor/compiler-rt/dist/lib/asan/output_tests/strncpy-overflow.cc
vendor/compiler-rt/dist/lib/asan/output_tests/test_output.sh (contents, props changed)
vendor/compiler-rt/dist/lib/asan/output_tests/use-after-free.c
vendor/compiler-rt/dist/lib/asan/output_tests/use-after-free.cc
vendor/compiler-rt/dist/lib/asan/tests/CMakeLists.txt
vendor/compiler-rt/dist/lib/asan/tests/asan_racy_double_free_test.cc
vendor/compiler-rt/dist/lib/atomic.c
vendor/compiler-rt/dist/lib/interception/
vendor/compiler-rt/dist/lib/interception/CMakeLists.txt
vendor/compiler-rt/dist/lib/interception/Makefile.mk
vendor/compiler-rt/dist/lib/interception/interception.h
vendor/compiler-rt/dist/lib/interception/interception_linux.cc
vendor/compiler-rt/dist/lib/interception/interception_linux.h
vendor/compiler-rt/dist/lib/interception/interception_mac.cc
vendor/compiler-rt/dist/lib/interception/interception_mac.h
vendor/compiler-rt/dist/lib/interception/interception_win.cc
vendor/compiler-rt/dist/lib/interception/interception_win.h
vendor/compiler-rt/dist/lib/interception/mach_override/
vendor/compiler-rt/dist/lib/interception/mach_override/LICENSE.TXT
vendor/compiler-rt/dist/lib/interception/mach_override/Makefile.mk
vendor/compiler-rt/dist/lib/interception/mach_override/README.txt
vendor/compiler-rt/dist/lib/interception/mach_override/mach_override.c
vendor/compiler-rt/dist/lib/interception/mach_override/mach_override.h
vendor/compiler-rt/dist/lib/sanitizer_common/
vendor/compiler-rt/dist/lib/sanitizer_common/CMakeLists.txt
vendor/compiler-rt/dist/lib/sanitizer_common/Makefile.mk
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_allocator.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_allocator64.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_atomic.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_atomic_clang.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_atomic_msvc.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_common.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_common.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_flags.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_flags.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_interface_defs.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_internal_defs.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_libc.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_libc.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_linux.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_list.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_mac.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_mutex.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_placement_new.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_posix.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_printf.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_procmaps.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_symbolizer.cc
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_symbolizer.h
vendor/compiler-rt/dist/lib/sanitizer_common/sanitizer_win.cc
vendor/compiler-rt/dist/lib/sanitizer_common/tests/
vendor/compiler-rt/dist/lib/sanitizer_common/tests/sanitizer_allocator64_test.cc
vendor/compiler-rt/dist/lib/sanitizer_common/tests/sanitizer_allocator64_testlib.cc
vendor/compiler-rt/dist/lib/sanitizer_common/tests/sanitizer_allocator_test.cc
vendor/compiler-rt/dist/lib/sanitizer_common/tests/sanitizer_common_test.cc
vendor/compiler-rt/dist/lib/sanitizer_common/tests/sanitizer_flags_test.cc
vendor/compiler-rt/dist/lib/sanitizer_common/tests/sanitizer_list_test.cc
vendor/compiler-rt/dist/lib/tsan/
vendor/compiler-rt/dist/lib/tsan/CMakeLists.txt
vendor/compiler-rt/dist/lib/tsan/Makefile.mk
vendor/compiler-rt/dist/lib/tsan/Makefile.old
vendor/compiler-rt/dist/lib/tsan/analyze_libtsan.sh (contents, props changed)
vendor/compiler-rt/dist/lib/tsan/benchmarks/
vendor/compiler-rt/dist/lib/tsan/benchmarks/mini_bench_local.cc
vendor/compiler-rt/dist/lib/tsan/benchmarks/mini_bench_shared.cc
vendor/compiler-rt/dist/lib/tsan/benchmarks/start_many_threads.cc
vendor/compiler-rt/dist/lib/tsan/benchmarks/vts_many_threads_bench.cc
vendor/compiler-rt/dist/lib/tsan/check_analyze.sh (contents, props changed)
vendor/compiler-rt/dist/lib/tsan/go/
vendor/compiler-rt/dist/lib/tsan/go/buildgo.sh (contents, props changed)
vendor/compiler-rt/dist/lib/tsan/go/test.c
vendor/compiler-rt/dist/lib/tsan/go/tsan_go.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/
vendor/compiler-rt/dist/lib/tsan/output_tests/free_race.c
vendor/compiler-rt/dist/lib/tsan/output_tests/free_race2.c
vendor/compiler-rt/dist/lib/tsan/output_tests/heap_race.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/memcpy_race.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/mop_with_offset.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/mop_with_offset2.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/race_on_barrier.c
vendor/compiler-rt/dist/lib/tsan/output_tests/race_on_barrier2.c
vendor/compiler-rt/dist/lib/tsan/output_tests/race_on_mutex.c
vendor/compiler-rt/dist/lib/tsan/output_tests/race_with_finished_thread.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/simple_race.c
vendor/compiler-rt/dist/lib/tsan/output_tests/simple_race.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/simple_stack.c
vendor/compiler-rt/dist/lib/tsan/output_tests/simple_stack2.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/static_init1.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/static_init2.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/static_init3.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/static_init4.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/static_init5.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/suppress_same_address.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/suppress_same_stacks.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/test_output.sh (contents, props changed)
vendor/compiler-rt/dist/lib/tsan/output_tests/thread_leak.c
vendor/compiler-rt/dist/lib/tsan/output_tests/thread_leak2.c
vendor/compiler-rt/dist/lib/tsan/output_tests/thread_leak3.c
vendor/compiler-rt/dist/lib/tsan/output_tests/tiny_race.c
vendor/compiler-rt/dist/lib/tsan/output_tests/virtual_inheritance_compile_bug.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/vptr_benign_race.cc
vendor/compiler-rt/dist/lib/tsan/output_tests/vptr_harmful_race.cc
vendor/compiler-rt/dist/lib/tsan/rtl/
vendor/compiler-rt/dist/lib/tsan/rtl/Makefile.mk
vendor/compiler-rt/dist/lib/tsan/rtl/Makefile.old
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_clock.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_clock.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_defs.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_flags.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_flags.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interceptors.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface_ann.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface_ann.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface_atomic.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface_atomic.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_interface_inl.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_md5.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_mman.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_mman.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_mutex.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_mutex.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_platform.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_platform_linux.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_platform_mac.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_printf.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_report.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_report.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_rtl.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_rtl.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_rtl_amd64.S
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_rtl_mutex.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_rtl_report.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_rtl_thread.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_stat.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_stat.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_suppressions.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_suppressions.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_symbolize.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_symbolize.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_sync.cc
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_sync.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_trace.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_update_shadow_word_inl.h
vendor/compiler-rt/dist/lib/tsan/rtl/tsan_vector.h
vendor/compiler-rt/dist/lib/tsan/rtl_tests/
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_bench.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_mop.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_mutex.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_posix.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_string.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_test.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_test_util.h
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_test_util_linux.cc
vendor/compiler-rt/dist/lib/tsan/rtl_tests/tsan_thread.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_clock_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_flags_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_mman_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_mutex_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_platform_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_printf_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_shadow_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_suppressions_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_sync_test.cc
vendor/compiler-rt/dist/lib/tsan/unit_tests/tsan_vector_test.cc
Deleted:
vendor/compiler-rt/dist/BlocksRuntime/CMakeLists.txt
vendor/compiler-rt/dist/cmake/ConfigureChecks.cmake
vendor/compiler-rt/dist/cmake/Modules/DefineCompilerFlags.cmake
vendor/compiler-rt/dist/cmake/Modules/MacroAddCheckTest.cmake
vendor/compiler-rt/dist/cmake/Modules/MacroEnsureOutOfSourceBuild.cmake
vendor/compiler-rt/dist/cmake/config.h.cmake
vendor/compiler-rt/dist/lib/arm/CMakeLists.txt
vendor/compiler-rt/dist/lib/asan/mach_override/
vendor/compiler-rt/dist/lib/asan/sysinfo/
vendor/compiler-rt/dist/lib/asan/tests/asan_interface_test.cc
vendor/compiler-rt/dist/lib/asan/tests/dlclose-test-so.cc
vendor/compiler-rt/dist/lib/asan/tests/dlclose-test.cc
vendor/compiler-rt/dist/lib/asan/tests/dlclose-test.tmpl
vendor/compiler-rt/dist/lib/asan/tests/global-overflow.cc
vendor/compiler-rt/dist/lib/asan/tests/global-overflow.tmpl
vendor/compiler-rt/dist/lib/asan/tests/heap-overflow.cc
vendor/compiler-rt/dist/lib/asan/tests/heap-overflow.tmpl
vendor/compiler-rt/dist/lib/asan/tests/heap-overflow.tmpl.Darwin
vendor/compiler-rt/dist/lib/asan/tests/large_func_test.cc
vendor/compiler-rt/dist/lib/asan/tests/large_func_test.tmpl
vendor/compiler-rt/dist/lib/asan/tests/match_output.py
vendor/compiler-rt/dist/lib/asan/tests/null_deref.cc
vendor/compiler-rt/dist/lib/asan/tests/null_deref.tmpl
vendor/compiler-rt/dist/lib/asan/tests/shared-lib-test-so.cc
vendor/compiler-rt/dist/lib/asan/tests/shared-lib-test.cc
vendor/compiler-rt/dist/lib/asan/tests/shared-lib-test.tmpl
vendor/compiler-rt/dist/lib/asan/tests/stack-overflow.cc
vendor/compiler-rt/dist/lib/asan/tests/stack-overflow.tmpl
vendor/compiler-rt/dist/lib/asan/tests/stack-use-after-return.cc
vendor/compiler-rt/dist/lib/asan/tests/stack-use-after-return.disabled
vendor/compiler-rt/dist/lib/asan/tests/strncpy-overflow.cc
vendor/compiler-rt/dist/lib/asan/tests/strncpy-overflow.tmpl
vendor/compiler-rt/dist/lib/asan/tests/test_output.sh
vendor/compiler-rt/dist/lib/asan/tests/use-after-free.c
vendor/compiler-rt/dist/lib/asan/tests/use-after-free.cc
vendor/compiler-rt/dist/lib/asan/tests/use-after-free.tmpl
vendor/compiler-rt/dist/lib/i386/CMakeLists.txt
vendor/compiler-rt/dist/lib/ppc/CMakeLists.txt
vendor/compiler-rt/dist/lib/x86_64/CMakeLists.txt
vendor/compiler-rt/dist/test/CMakeLists.txt
vendor/compiler-rt/dist/test/Unit/ppc/CMakeLists.txt
vendor/compiler-rt/dist/test/timing/CMakeLists.txt
Modified:
vendor/compiler-rt/dist/CMakeLists.txt
vendor/compiler-rt/dist/LICENSE.TXT
vendor/compiler-rt/dist/SDKs/darwin/usr/include/stdlib.h
vendor/compiler-rt/dist/SDKs/darwin/usr/include/string.h
vendor/compiler-rt/dist/SDKs/linux/usr/include/stdlib.h
vendor/compiler-rt/dist/SDKs/linux/usr/include/string.h
vendor/compiler-rt/dist/lib/CMakeLists.txt
vendor/compiler-rt/dist/lib/Makefile.mk
vendor/compiler-rt/dist/lib/absvti2.c
vendor/compiler-rt/dist/lib/adddf3.c
vendor/compiler-rt/dist/lib/addsf3.c
vendor/compiler-rt/dist/lib/addvti3.c
vendor/compiler-rt/dist/lib/asan/Makefile.mk
vendor/compiler-rt/dist/lib/asan/Makefile.old
vendor/compiler-rt/dist/lib/asan/README.txt
vendor/compiler-rt/dist/lib/asan/asan_allocator.cc
vendor/compiler-rt/dist/lib/asan/asan_allocator.h
vendor/compiler-rt/dist/lib/asan/asan_globals.cc
vendor/compiler-rt/dist/lib/asan/asan_interceptors.cc
vendor/compiler-rt/dist/lib/asan/asan_interceptors.h
vendor/compiler-rt/dist/lib/asan/asan_interface.h
vendor/compiler-rt/dist/lib/asan/asan_internal.h
vendor/compiler-rt/dist/lib/asan/asan_linux.cc
vendor/compiler-rt/dist/lib/asan/asan_lock.h
vendor/compiler-rt/dist/lib/asan/asan_mac.cc
vendor/compiler-rt/dist/lib/asan/asan_mac.h
vendor/compiler-rt/dist/lib/asan/asan_malloc_linux.cc
vendor/compiler-rt/dist/lib/asan/asan_malloc_mac.cc
vendor/compiler-rt/dist/lib/asan/asan_mapping.h
vendor/compiler-rt/dist/lib/asan/asan_poisoning.cc
vendor/compiler-rt/dist/lib/asan/asan_printf.cc
vendor/compiler-rt/dist/lib/asan/asan_rtl.cc
vendor/compiler-rt/dist/lib/asan/asan_stack.cc
vendor/compiler-rt/dist/lib/asan/asan_stack.h
vendor/compiler-rt/dist/lib/asan/asan_stats.cc
vendor/compiler-rt/dist/lib/asan/asan_stats.h
vendor/compiler-rt/dist/lib/asan/asan_thread.cc
vendor/compiler-rt/dist/lib/asan/asan_thread.h
vendor/compiler-rt/dist/lib/asan/asan_thread_registry.cc
vendor/compiler-rt/dist/lib/asan/asan_thread_registry.h
vendor/compiler-rt/dist/lib/asan/scripts/asan_symbolize.py
vendor/compiler-rt/dist/lib/asan/tests/asan_benchmarks_test.cc
vendor/compiler-rt/dist/lib/asan/tests/asan_break_optimization.cc
vendor/compiler-rt/dist/lib/asan/tests/asan_globals_test.cc
vendor/compiler-rt/dist/lib/asan/tests/asan_mac_test.h
vendor/compiler-rt/dist/lib/asan/tests/asan_mac_test.mm
vendor/compiler-rt/dist/lib/asan/tests/asan_noinst_test.cc
vendor/compiler-rt/dist/lib/asan/tests/asan_test.cc
vendor/compiler-rt/dist/lib/asan/tests/asan_test_config.h
vendor/compiler-rt/dist/lib/asan/tests/asan_test_utils.h
vendor/compiler-rt/dist/lib/ashldi3.c
vendor/compiler-rt/dist/lib/ashlti3.c
vendor/compiler-rt/dist/lib/ashrdi3.c
vendor/compiler-rt/dist/lib/ashrti3.c
vendor/compiler-rt/dist/lib/assembly.h
vendor/compiler-rt/dist/lib/clzti2.c
vendor/compiler-rt/dist/lib/cmpti2.c
vendor/compiler-rt/dist/lib/ctzti2.c
vendor/compiler-rt/dist/lib/divdf3.c
vendor/compiler-rt/dist/lib/divmoddi4.c
vendor/compiler-rt/dist/lib/divsf3.c
vendor/compiler-rt/dist/lib/divsi3.c
vendor/compiler-rt/dist/lib/divti3.c
vendor/compiler-rt/dist/lib/extendsfdf2.c
vendor/compiler-rt/dist/lib/ffsti2.c
vendor/compiler-rt/dist/lib/fixdfdi.c
vendor/compiler-rt/dist/lib/fixdfsi.c
vendor/compiler-rt/dist/lib/fixdfti.c
vendor/compiler-rt/dist/lib/fixsfdi.c
vendor/compiler-rt/dist/lib/fixsfsi.c
vendor/compiler-rt/dist/lib/fixsfti.c
vendor/compiler-rt/dist/lib/fixunsdfdi.c
vendor/compiler-rt/dist/lib/fixunsdfsi.c
vendor/compiler-rt/dist/lib/fixunsdfti.c
vendor/compiler-rt/dist/lib/fixunssfdi.c
vendor/compiler-rt/dist/lib/fixunssfsi.c
vendor/compiler-rt/dist/lib/fixunssfti.c
vendor/compiler-rt/dist/lib/fixunsxfti.c
vendor/compiler-rt/dist/lib/fixxfti.c
vendor/compiler-rt/dist/lib/floatdidf.c
vendor/compiler-rt/dist/lib/floatdisf.c
vendor/compiler-rt/dist/lib/floatsidf.c
vendor/compiler-rt/dist/lib/floatsisf.c
vendor/compiler-rt/dist/lib/floattidf.c
vendor/compiler-rt/dist/lib/floattisf.c
vendor/compiler-rt/dist/lib/floattixf.c
vendor/compiler-rt/dist/lib/floatundidf.c
vendor/compiler-rt/dist/lib/floatundisf.c
vendor/compiler-rt/dist/lib/floatunsidf.c
vendor/compiler-rt/dist/lib/floatunsisf.c
vendor/compiler-rt/dist/lib/floatuntidf.c
vendor/compiler-rt/dist/lib/floatuntisf.c
vendor/compiler-rt/dist/lib/floatuntixf.c
vendor/compiler-rt/dist/lib/fp_lib.h
vendor/compiler-rt/dist/lib/int_endianness.h
vendor/compiler-rt/dist/lib/int_util.c
vendor/compiler-rt/dist/lib/int_util.h
vendor/compiler-rt/dist/lib/lshrdi3.c
vendor/compiler-rt/dist/lib/lshrti3.c
vendor/compiler-rt/dist/lib/modti3.c
vendor/compiler-rt/dist/lib/muldf3.c
vendor/compiler-rt/dist/lib/muldi3.c
vendor/compiler-rt/dist/lib/muloti4.c
vendor/compiler-rt/dist/lib/mulsf3.c
vendor/compiler-rt/dist/lib/multi3.c
vendor/compiler-rt/dist/lib/mulvti3.c
vendor/compiler-rt/dist/lib/negdf2.c
vendor/compiler-rt/dist/lib/negsf2.c
vendor/compiler-rt/dist/lib/negti2.c
vendor/compiler-rt/dist/lib/negvti2.c
vendor/compiler-rt/dist/lib/parityti2.c
vendor/compiler-rt/dist/lib/popcountti2.c
vendor/compiler-rt/dist/lib/powitf2.c
vendor/compiler-rt/dist/lib/profile/GCDAProfiling.c
vendor/compiler-rt/dist/lib/subdf3.c
vendor/compiler-rt/dist/lib/subsf3.c
vendor/compiler-rt/dist/lib/subvti3.c
vendor/compiler-rt/dist/lib/truncdfsf2.c
vendor/compiler-rt/dist/lib/ucmpti2.c
vendor/compiler-rt/dist/lib/udivmoddi4.c
vendor/compiler-rt/dist/lib/udivmodti4.c
vendor/compiler-rt/dist/lib/udivsi3.c
vendor/compiler-rt/dist/lib/udivti3.c
vendor/compiler-rt/dist/lib/umodti3.c
vendor/compiler-rt/dist/make/config.mk
vendor/compiler-rt/dist/make/platform/clang_darwin.mk
vendor/compiler-rt/dist/make/platform/clang_linux.mk
vendor/compiler-rt/dist/make/subdir.mk
vendor/compiler-rt/dist/test/Unit/clear_cache_test.c
vendor/compiler-rt/dist/test/Unit/enable_execute_stack_test.c
vendor/compiler-rt/dist/test/Unit/endianness.h
Modified: vendor/compiler-rt/dist/CMakeLists.txt
==============================================================================
--- vendor/compiler-rt/dist/CMakeLists.txt Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/CMakeLists.txt Mon Jul 30 10:58:13 2012 (r238901)
@@ -1,55 +1,68 @@
-# See docs/CMake.html for instructions about how to build Compiler-RT with CMake.
-
-PROJECT( CompilerRT C )
-CMAKE_MINIMUM_REQUIRED( VERSION 2.6 )
-
-set(PACKAGE_NAME compiler-rt)
-set(PACKAGE_VERSION 1.0svn)
-set(PACKAGE_STRING "${PACKAGE_NAME} ${PACKAGE_VERSION}")
-set(PACKAGE_BUGREPORT "llvmbugs at cs.uiuc.edu")
-
-SET( CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules )
-
-# add definitions
-include(DefineCompilerFlags)
-
-# Disallow in-source build
-INCLUDE( MacroEnsureOutOfSourceBuild )
-MACRO_ENSURE_OUT_OF_SOURCE_BUILD(
- "${PROJECT_NAME} requires an out of source build. Please create a separate build directory and run 'cmake /path/to/${PROJECT_NAME} [options]' there."
- )
-
-INCLUDE( ${CMAKE_SOURCE_DIR}/cmake/ConfigureChecks.cmake )
-CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/cmake/config.h.cmake
- ${CMAKE_CURRENT_BINARY_DIR}/config.h )
-
-INCLUDE_DIRECTORIES(
- ${CMAKE_CURRENT_BINARY_DIR}
-)
-
-SET( Achitectures
- i386 x86_64 ppc arm
- )
-
-SET( Configurations
- Debug Release Profile
- )
-
-# Only build Blocks Runtime if the compiler has enough support
-IF( WIN32 OR MSVC OR HAVE_OSATOMIC_COMPARE_AND_SWAP_INT OR HAVE_SYNC_BOOL_COMPARE_AND_SWAP_INT )
- SET(BUILD_BLOCKS_RUNTIME TRUE)
-ELSE( WIN32 OR MSVC OR HAVE_OSATOMIC_COMPARE_AND_SWAP_INT OR HAVE_SYNC_BOOL_COMPARE_AND_SWAP_INT )
- SET(BUILD_BLOCKS_RUNTIME FALSE)
-ENDIF( WIN32 OR MSVC OR HAVE_OSATOMIC_COMPARE_AND_SWAP_INT OR HAVE_SYNC_BOOL_COMPARE_AND_SWAP_INT )
-
-IF( BUILD_BLOCKS_RUNTIME )
- ADD_SUBDIRECTORY( BlocksRuntime )
-ELSE( BUILD_BLOCKS_RUNTIME )
- MESSAGE(STATUS "No suitable atomic operation routines detected, skipping Blocks Runtime")
-ENDIF( BUILD_BLOCKS_RUNTIME )
-
-ADD_SUBDIRECTORY( lib )
-
-# Enable Test Suit:
-INCLUDE( MacroAddCheckTest )
-ADD_SUBDIRECTORY( test )
+# CMake build for CompilerRT.
+#
+# This build assumes that CompilerRT is checked out into the
+# 'projects/compiler-rt' inside of an LLVM tree, it is not a stand-alone build
+# system.
+#
+# An important constraint of the build is that it only produces libraries
+# based on the ability of the host toolchain to target various platforms.
+
+include(LLVMParseArguments)
+
+# The CompilerRT build system requires CMake version 2.8.8 or higher in order
+# to use its support for building convenience "libraries" as a collection of
+# .o files. This is particularly useful in producing larger, more complex
+# runtime libraries.
+cmake_minimum_required(VERSION 2.8.8)
+
+# FIXME: Below we assume that the target build of LLVM/Clang is x86, which is
+# not at all valid. Much of this can be fixed just by switching to use
+# a just-built-clang binary for the compiles.
+
+# Detect whether the current target platform is 32-bit or 64-bit, and setup
+# the correct commandline flags needed to attempt to target 32-bit and 64-bit.
+if(CMAKE_SIZEOF_VOID_P EQUAL 4)
+ set(TARGET_X86_64_CFLAGS "-m64")
+ set(TARGET_I386_CFLAGS "")
+else()
+ if(NOT CMAKE_SIZEOF_VOID_P EQUAL 8)
+ message(FATAL_ERROR "Please use a sane architecture with 4 or 8 byte pointers.")
+ endif()
+ set(TARGET_X86_64_CFLAGS "")
+ set(TARGET_I386_CFLAGS "-m32")
+endif()
+
+# Try to compile a very simple source file to ensure we can target the given
+# platform. We use the results of these tests to build only the various target
+# runtime libraries supported by our current compilers cross-compiling
+# abilities.
+set(SIMPLE_SOURCE64 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/simple64.c)
+file(WRITE ${SIMPLE_SOURCE64} "#include <stdlib.h>\nint main() {}")
+try_compile(CAN_TARGET_X86_64 ${CMAKE_BINARY_DIR} ${SIMPLE_SOURCE64}
+ COMPILE_DEFINITIONS "${TARGET_X86_64_CFLAGS}"
+ CMAKE_FLAGS "-DCMAKE_EXE_LINKER_FLAGS:STRING=${TARGET_X86_64_CFLAGS}")
+
+set(SIMPLE_SOURCE32 ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/simple32.c)
+file(WRITE ${SIMPLE_SOURCE32} "#include <stdlib.h>\nint main() {}")
+try_compile(CAN_TARGET_I386 ${CMAKE_BINARY_DIR} ${SIMPLE_SOURCE32}
+ COMPILE_DEFINITIONS "${TARGET_I386_CFLAGS}"
+ CMAKE_FLAGS "-DCMAKE_EXE_LINKER_FLAGS:STRING=${TARGET_I386_CFLAGS}")
+
+# Because compiler-rt spends a lot of time setting up custom compile flags,
+# define a handy helper function for it. The compile flags setting in CMake
+# has serious issues that make its syntax challenging at best.
+function(set_target_compile_flags target)
+ foreach(arg ${ARGN})
+ set(argstring "${argstring} ${arg}")
+ endforeach()
+ set_property(TARGET ${target} PROPERTY COMPILE_FLAGS "${argstring}")
+endfunction()
+
+add_subdirectory(lib)
+
+if(LLVM_INCLUDE_TESTS)
+ # Currently the tests have not been ported to CMake, so disable this
+ # directory.
+ #
+ #add_subdirectory(test)
+endif()
Modified: vendor/compiler-rt/dist/LICENSE.TXT
==============================================================================
--- vendor/compiler-rt/dist/LICENSE.TXT Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/LICENSE.TXT Mon Jul 30 10:58:13 2012 (r238901)
@@ -94,5 +94,4 @@ licenses, and/or restrictions:
Program Directory
------- ---------
-sysinfo lib/asan/sysinfo
-mach_override lib/asan/mach_override
+mach_override lib/interception/mach_override
Modified: vendor/compiler-rt/dist/SDKs/darwin/usr/include/stdlib.h
==============================================================================
--- vendor/compiler-rt/dist/SDKs/darwin/usr/include/stdlib.h Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/SDKs/darwin/usr/include/stdlib.h Mon Jul 30 10:58:13 2012 (r238901)
@@ -22,6 +22,7 @@
typedef __SIZE_TYPE__ size_t;
void abort(void) __attribute__((__noreturn__));
+int atoi(const char *);
void free(void *);
char *getenv(const char *);
void *malloc(size_t);
Modified: vendor/compiler-rt/dist/SDKs/darwin/usr/include/string.h
==============================================================================
--- vendor/compiler-rt/dist/SDKs/darwin/usr/include/string.h Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/SDKs/darwin/usr/include/string.h Mon Jul 30 10:58:13 2012 (r238901)
@@ -19,6 +19,8 @@
typedef __SIZE_TYPE__ size_t;
+int memcmp(const void *, const void *, size_t);
+void *memcpy(void *, const void *, size_t);
char *strcat(char *, const char *);
char *strcpy(char *, const char *);
char *strdup(const char *);
Modified: vendor/compiler-rt/dist/SDKs/linux/usr/include/stdlib.h
==============================================================================
--- vendor/compiler-rt/dist/SDKs/linux/usr/include/stdlib.h Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/SDKs/linux/usr/include/stdlib.h Mon Jul 30 10:58:13 2012 (r238901)
@@ -22,6 +22,7 @@
typedef __SIZE_TYPE__ size_t;
void abort(void) __attribute__((__nothrow__)) __attribute__((__noreturn__));
+int atoi(const char *) __attribute__((__nothrow__));
void free(void *) __attribute__((__nothrow__));
char *getenv(const char *) __attribute__((__nothrow__))
__attribute__((__nonnull__(1)));
Modified: vendor/compiler-rt/dist/SDKs/linux/usr/include/string.h
==============================================================================
--- vendor/compiler-rt/dist/SDKs/linux/usr/include/string.h Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/SDKs/linux/usr/include/string.h Mon Jul 30 10:58:13 2012 (r238901)
@@ -19,6 +19,8 @@
typedef __SIZE_TYPE__ size_t;
+int memcmp(const void *, const void *, size_t);
+void *memcpy(void *, const void *, size_t);
char *strcat(char *, const char *);
char *strcpy(char *, const char *);
char *strdup(const char *);
Modified: vendor/compiler-rt/dist/lib/CMakeLists.txt
==============================================================================
--- vendor/compiler-rt/dist/lib/CMakeLists.txt Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/CMakeLists.txt Mon Jul 30 10:58:13 2012 (r238901)
@@ -1,81 +1,197 @@
-#
-# Create a library called "CompilerRT" which includes the source files.
-
-#INCLUDE_DIRECTORIES(
-# ${CMAKE_CURRENT_BINARY_DIR}
-#)
-
-# Generic functions needed for each architecture
-# libcompiler_rt.Generic.a libcompiler_rt.Optimized.a
-
-# Generic
-SET( Generic_SRCS
- absvdi2.c absvsi2.c addvdi3.c addvsi3.c ashldi3.c ashrdi3.c
- clzdi2.c clzsi2.c cmpdi2.c ctzdi2.c ctzsi2.c
- divdc3.c divdi3.c divsc3.c ffsdi2.c
- fixdfdi.c fixsfdi.c fixunsdfdi.c fixunsdfsi.c fixunssfdi.c
- fixunssfsi.c floatdidf.c floatdisf.c floatundidf.c floatundisf.c
- gcc_personality_v0.c lshrdi3.c moddi3.c muldc3.c muldi3.c
- mulsc3.c mulvdi3.c mulvsi3.c negdi2.c negvdi2.c negvsi2.c
- paritydi2.c paritysi2.c popcountdi2.c popcountsi2.c powidf2.c
- powisf2.c subvdi3.c subvsi3.c ucmpdi2.c udivdi3.c
- udivmoddi4.c umoddi3.c apple_versioning.c eprintf.c
- )
-
-# Optimized functions for each architecture
-
-# Commenting out for the min until the basics are working first.
-# ADD_SUBDIRECTORY( ppc )
-# ADD_SUBDIRECTORY( x86_64 )
-# ADD_SUBDIRECTORY( i386 )
-# ADD_SUBDIRECTORY( arm )
-
-# List of functions needed for each architecture.
-SET( i386_Functions
- divxc3.c fixunsxfdi.c fixunsxfsi.c fixxfdi.c floatdixf.c
- floatundixf.c mulxc3.c powixf2.c clear_cache.c enable_execute_stack.c
- )
-
-SET( x86_64_Functions
- absvti2.c addvti3.c ashlti3.c ashrti3.c clzti2.c cmpti2.c
- ctzti2.c divti3.c divxc3.c ffsti2.c fixdfti.c fixsfti.c
- fixunsdfti.c fixunssfti.c fixunsxfdi.c fixunsxfsi.c
- fixunsxfti.c fixxfdi.c fixxfti.c floatdixf.c floattidf.c
- floattisf.c floattixf.c floatundixf.c floatuntidf.c
- floatuntisf.c floatuntixf.c lshrti3.c modti3.c multi3.c
- mulvti3.c mulxc3.c negti2.c negvti2.c parityti2.c
- popcountti2.c powixf2.c subvti3.c ucmpti2.c udivmodti4.c
- udivti3.c umodti3.c clear_cache.c enable_execute_stack.c
- )
-
-SET( PPC_Functions
- divtc3.c fixtfdi.c fixunstfdi.c floatditf.c floatunditf.c
- gcc_qadd.c gcc_qdiv.c gcc_qmul.c gcc_qsub.c multc3.c
- powitf2.c restFP.c saveFP.c trampoline_setup.c
- clear_cache.c enable_execute_stack.c
- )
-
-SET( ARM_Functions
- adddf3vfp.c addsf3vfp.c bswapdi2.c bswapsi2.c divdf3vfp.c
- divsf3vfp.c eqdf2vfp.c eqsf2vfp.c extendsfdf2vfp.c
- fixdfsivfp.c fixsfsivfp.c fixunsdfsivfp.c fixunssfsivfp.c
- floatsidfvfp.c floatsisfvfp.c floatunssidfvfp.c floatunssisfvfp.c
- gedf2vfp.c gesf2vfp.c gtdf2vfp.c gtsf2vfp.c
- ledf2vfp.c lesf2vfp.c ltdf2vfp.c ltsf2vfp.c
- muldf3vfp.c mulsf3vfp.c
- nedf2vfp.c negdf2vfp.c negsf2vfp.c nesf2vfp.c
- subdf3vfp.c subsf3vfp.c truncdfsf2vfp.c unorddf2vfp.c unordsf2vfp.c
- modsi3.c umodsi3.c udivsi3.c divsi3.c switch.c
- )
-
-#FOREACH( LOOP_VAR ${Achitectures} )
-# See ARCHIVE_OUTPUT_DIRECTORY docs.
-#${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/${LOOP_VAR}
-#ENDFOREACH
-
-ADD_LIBRARY( ${PROJECT_NAME}-Generic STATIC ${Generic_SRCS} )
-#ADD_LIBRARY( ${PROJECT_NAME}-i386 STATIC ${i386_Functions} )
-
-# [[debug|optimized|general]
-#TARGET_LINK_LIBRARIES( ${PROJECT_NAME} ${PROJECT_NAME}-Common optimized ${PROJECT_NAME}-i386 )
-
+# Compute the Clang version from the LLVM version.
+# FIXME: We should be able to reuse CLANG_VERSION variable calculated
+# in Clang cmake files, instead of copying the rules here.
+string(REGEX MATCH "[0-9]+\\.[0-9]+(\\.[0-9]+)?" CLANG_VERSION
+ ${PACKAGE_VERSION})
+
+# Call add_clang_runtime_static_library(<target_library>) to make
+# sure that static <target_library> is built in the directory
+# where Clang driver expects to find it.
+if (APPLE)
+ set(CLANG_RUNTIME_LIB_DIR
+ ${LLVM_BINARY_DIR}/lib/clang/${CLANG_VERSION}/lib/darwin)
+elseif (UNIX)
+ # Assume Linux.
+ set(CLANG_RUNTIME_LIB_DIR
+ ${LLVM_BINARY_DIR}/lib/clang/${CLANG_VERSION}/lib/linux)
+endif()
+function(add_clang_runtime_static_library target_name)
+ set_target_properties(${target_name} PROPERTIES
+ ARCHIVE_OUTPUT_DIRECTORY ${CLANG_RUNTIME_LIB_DIR})
+endfunction()
+
+# First, add the subdirectories which contain feature-based runtime libraries
+# and several convenience helper libraries.
+add_subdirectory(asan)
+add_subdirectory(interception)
+add_subdirectory(sanitizer_common)
+
+# FIXME: Add support for the profile library.
+
+
+# The top-level lib directory contains a large amount of C code which provides
+# generic implementations of the core runtime library along with optimized
+# architecture-specific code in various subdirectories.
+
+set(GENERIC_SOURCES
+ absvdi2.c
+ absvsi2.c
+ absvti2.c
+ adddf3.c
+ addsf3.c
+ addvdi3.c
+ addvsi3.c
+ addvti3.c
+ apple_versioning.c
+ ashldi3.c
+ ashlti3.c
+ ashrdi3.c
+ ashrti3.c
+ clear_cache.c
+ clzdi2.c
+ clzsi2.c
+ clzti2.c
+ cmpdi2.c
+ cmpti2.c
+ comparedf2.c
+ comparesf2.c
+ ctzdi2.c
+ ctzsi2.c
+ ctzti2.c
+ divdc3.c
+ divdf3.c
+ divdi3.c
+ divmoddi4.c
+ divmodsi4.c
+ divsc3.c
+ divsf3.c
+ divsi3.c
+ divti3.c
+ divxc3.c
+ enable_execute_stack.c
+ eprintf.c
+ extendsfdf2.c
+ ffsdi2.c
+ ffsti2.c
+ fixdfdi.c
+ fixdfsi.c
+ fixdfti.c
+ fixsfdi.c
+ fixsfsi.c
+ fixsfti.c
+ fixunsdfdi.c
+ fixunsdfsi.c
+ fixunsdfti.c
+ fixunssfdi.c
+ fixunssfsi.c
+ fixunssfti.c
+ fixunsxfdi.c
+ fixunsxfsi.c
+ fixunsxfti.c
+ fixxfdi.c
+ fixxfti.c
+ floatdidf.c
+ floatdisf.c
+ floatdixf.c
+ floatsidf.c
+ floatsisf.c
+ floattidf.c
+ floattisf.c
+ floattixf.c
+ floatundidf.c
+ floatundisf.c
+ floatundixf.c
+ floatunsidf.c
+ floatunsisf.c
+ floatuntidf.c
+ floatuntisf.c
+ floatuntixf.c
+ gcc_personality_v0.c
+ int_util.c
+ lshrdi3.c
+ lshrti3.c
+ moddi3.c
+ modsi3.c
+ modti3.c
+ muldc3.c
+ muldf3.c
+ muldi3.c
+ mulodi4.c
+ mulosi4.c
+ muloti4.c
+ mulsc3.c
+ mulsf3.c
+ multi3.c
+ mulvdi3.c
+ mulvsi3.c
+ mulvti3.c
+ mulxc3.c
+ negdf2.c
+ negdi2.c
+ negsf2.c
+ negti2.c
+ negvdi2.c
+ negvsi2.c
+ negvti2.c
+ paritydi2.c
+ paritysi2.c
+ parityti2.c
+ popcountdi2.c
+ popcountsi2.c
+ popcountti2.c
+ powidf2.c
+ powisf2.c
+ powitf2.c
+ powixf2.c
+ subdf3.c
+ subsf3.c
+ subvdi3.c
+ subvsi3.c
+ subvti3.c
+ trampoline_setup.c
+ truncdfsf2.c
+ ucmpdi2.c
+ ucmpti2.c
+ udivdi3.c
+ udivmoddi4.c
+ udivmodsi4.c
+ udivmodti4.c
+ udivsi3.c
+ udivti3.c
+ umoddi3.c
+ umodsi3.c
+ umodti3.c
+ )
+
+if(CAN_TARGET_X86_64)
+ add_library(clang_rt.x86_64 STATIC
+ x86_64/floatdidf.c
+ x86_64/floatdisf.c
+ x86_64/floatdixf.c
+ x86_64/floatundidf.S
+ x86_64/floatundisf.S
+ x86_64/floatundixf.S
+ ${GENERIC_SOURCES}
+ )
+ set_target_properties(clang_rt.x86_64 PROPERTIES COMPILE_FLAGS "-std=c99 ${TARGET_X86_64_CFLAGS}")
+endif()
+if(CAN_TARGET_I386)
+ add_library(clang_rt.i386 STATIC
+ i386/ashldi3.S
+ i386/ashrdi3.S
+ i386/divdi3.S
+ i386/floatdidf.S
+ i386/floatdisf.S
+ i386/floatdixf.S
+ i386/floatundidf.S
+ i386/floatundisf.S
+ i386/floatundixf.S
+ i386/lshrdi3.S
+ i386/moddi3.S
+ i386/muldi3.S
+ i386/udivdi3.S
+ i386/umoddi3.S
+ ${GENERIC_SOURCES}
+ )
+ set_target_properties(clang_rt.i386 PROPERTIES COMPILE_FLAGS "-std=c99 ${TARGET_I386_CFLAGS}")
+endif()
Modified: vendor/compiler-rt/dist/lib/Makefile.mk
==============================================================================
--- vendor/compiler-rt/dist/lib/Makefile.mk Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/Makefile.mk Mon Jul 30 10:58:13 2012 (r238901)
@@ -15,10 +15,18 @@ SubDirs += i386 ppc x86_64 arm
# Add other submodules.
SubDirs += asan
+SubDirs += interception
SubDirs += profile
+SubDirs += sanitizer_common
+SubDirs += tsan
+
+# FIXME: We don't currently support building an atomic library, and as it must
+# be a separate library from the runtime library, we need to remove its source
+# code from the source files list.
+ExcludedSources := atomic.c
# Define the variables for this specific directory.
-Sources := $(foreach file,$(wildcard $(Dir)/*.c),$(notdir $(file)))
+Sources := $(foreach file,$(wildcard $(Dir)/*.c),$(filter-out $(ExcludedSources),$(notdir $(file))))
ObjNames := $(Sources:%.c=%.o)
Implementation := Generic
Modified: vendor/compiler-rt/dist/lib/absvti2.c
==============================================================================
--- vendor/compiler-rt/dist/lib/absvti2.c Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/absvti2.c Mon Jul 30 10:58:13 2012 (r238901)
@@ -12,10 +12,10 @@
* ===----------------------------------------------------------------------===
*/
-#if __x86_64
-
#include "int_lib.h"
+#if __x86_64
+
/* Returns: absolute value */
/* Effects: aborts if abs(x) < 0 */
Modified: vendor/compiler-rt/dist/lib/adddf3.c
==============================================================================
--- vendor/compiler-rt/dist/lib/adddf3.c Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/adddf3.c Mon Jul 30 10:58:13 2012 (r238901)
@@ -15,7 +15,7 @@
#define DOUBLE_PRECISION
#include "fp_lib.h"
-ARM_EABI_FNALIAS(dadd, adddf3);
+ARM_EABI_FNALIAS(dadd, adddf3)
COMPILER_RT_ABI fp_t
__adddf3(fp_t a, fp_t b) {
@@ -85,7 +85,7 @@ __adddf3(fp_t a, fp_t b) {
// Shift the significand of b by the difference in exponents, with a sticky
// bottom bit to get rounding correct.
- const int align = aExponent - bExponent;
+ const unsigned int align = aExponent - bExponent;
if (align) {
if (align < typeWidth) {
const bool sticky = bSignificand << (typeWidth - align);
Modified: vendor/compiler-rt/dist/lib/addsf3.c
==============================================================================
--- vendor/compiler-rt/dist/lib/addsf3.c Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/addsf3.c Mon Jul 30 10:58:13 2012 (r238901)
@@ -15,7 +15,7 @@
#define SINGLE_PRECISION
#include "fp_lib.h"
-ARM_EABI_FNALIAS(fadd, addsf3);
+ARM_EABI_FNALIAS(fadd, addsf3)
fp_t __addsf3(fp_t a, fp_t b) {
@@ -84,7 +84,7 @@ fp_t __addsf3(fp_t a, fp_t b) {
// Shift the significand of b by the difference in exponents, with a sticky
// bottom bit to get rounding correct.
- const int align = aExponent - bExponent;
+ const unsigned int align = aExponent - bExponent;
if (align) {
if (align < typeWidth) {
const bool sticky = bSignificand << (typeWidth - align);
Modified: vendor/compiler-rt/dist/lib/addvti3.c
==============================================================================
--- vendor/compiler-rt/dist/lib/addvti3.c Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/addvti3.c Mon Jul 30 10:58:13 2012 (r238901)
@@ -12,10 +12,10 @@
* ===----------------------------------------------------------------------===
*/
-#if __x86_64
-
#include "int_lib.h"
+#if __x86_64
+
/* Returns: a + b */
/* Effects: aborts if a + b overflows */
Added: vendor/compiler-rt/dist/lib/arm/aeabi_idivmod.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_idivmod.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,27 @@
+//===-- aeabi_idivmod.S - EABI idivmod implementation ---------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// struct { int quot, int rem} __aeabi_idivmod(int numerator, int denominator) {
+// int rem, quot;
+// quot = __divmodsi4(numerator, denominator, &rem);
+// return {quot, rem};
+// }
+
+ .syntax unified
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_idivmod)
+ push { lr }
+ sub sp, sp, #4
+ mov r2, sp
+ bl SYMBOL_NAME(__divmodsi4)
+ ldr r1, [sp]
+ add sp, sp, #4
+ pop { pc }
Added: vendor/compiler-rt/dist/lib/arm/aeabi_ldivmod.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_ldivmod.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,30 @@
+//===-- aeabi_ldivmod.S - EABI ldivmod implementation ---------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// struct { int64_t quot, int64_t rem}
+// __aeabi_ldivmod(int64_t numerator, int64_t denominator) {
+// int64_t rem, quot;
+// quot = __divmoddi4(numerator, denominator, &rem);
+// return {quot, rem};
+// }
+
+ .syntax unified
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_ldivmod)
+ push {r11, lr}
+ sub sp, sp, #16
+ add r12, sp, #8
+ str r12, [sp]
+ bl SYMBOL_NAME(__divmoddi4)
+ ldr r2, [sp, #8]
+ ldr r3, [sp, #12]
+ add sp, sp, #16
+ pop {r11, pc}
Added: vendor/compiler-rt/dist/lib/arm/aeabi_memcmp.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_memcmp.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,19 @@
+//===-- aeabi_memcmp.S - EABI memcmp implementation -----------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// void __aeabi_memcmp(void *dest, void *src, size_t n) { memcmp(dest, src, n); }
+
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_memcmp)
+ b memcmp
+
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memcmp4, __aeabi_memcmp)
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memcmp8, __aeabi_memcmp)
Added: vendor/compiler-rt/dist/lib/arm/aeabi_memcpy.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_memcpy.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,19 @@
+//===-- aeabi_memcpy.S - EABI memcpy implementation -----------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// void __aeabi_memcpy(void *dest, void *src, size_t n) { memcpy(dest, src, n); }
+
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_memcpy)
+ b memcpy
+
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memcpy4, __aeabi_memcpy)
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memcpy8, __aeabi_memcpy)
Added: vendor/compiler-rt/dist/lib/arm/aeabi_memmove.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_memmove.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,19 @@
+//===-- aeabi_memmove.S - EABI memmove implementation --------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===---------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// void __aeabi_memmove(void *dest, void *src, size_t n) { memmove(dest, src, n); }
+
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_memmove)
+ b memmove
+
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memmove4, __aeabi_memmove)
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memmove8, __aeabi_memmove)
Added: vendor/compiler-rt/dist/lib/arm/aeabi_memset.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_memset.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,32 @@
+//===-- aeabi_memset.S - EABI memset implementation -----------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// void __aeabi_memset(void *dest, size_t n, int c) { memset(dest, c, n); }
+// void __aeabi_memclr(void *dest, size_t n) { __aeabi_memset(dest, n, 0); }
+
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_memset)
+ mov r3, r1
+ mov r1, r2
+ mov r2, r3
+ b memset
+
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memset4, __aeabi_memset)
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memset8, __aeabi_memset)
+
+DEFINE_COMPILERRT_FUNCTION(__aeabi_memclr)
+ mov r2, r1
+ mov r1, #0
+ b memset
+
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memclr4, __aeabi_memclr)
+DEFINE_AEABI_FUNCTION_ALIAS(__aeabi_memclr8, __aeabi_memclr)
+
Added: vendor/compiler-rt/dist/lib/arm/aeabi_uidivmod.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_uidivmod.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,28 @@
+//===-- aeabi_uidivmod.S - EABI uidivmod implementation -------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// struct { unsigned quot, unsigned rem}
+// __aeabi_uidivmod(unsigned numerator, unsigned denominator) {
+// unsigned rem, quot;
+// quot = __udivmodsi4(numerator, denominator, &rem);
+// return {quot, rem};
+// }
+
+ .syntax unified
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_uidivmod)
+ push { lr }
+ sub sp, sp, #4
+ mov r2, sp
+ bl SYMBOL_NAME(__udivmodsi4)
+ ldr r1, [sp]
+ add sp, sp, #4
+ pop { pc }
Added: vendor/compiler-rt/dist/lib/arm/aeabi_uldivmod.S
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/arm/aeabi_uldivmod.S Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,30 @@
+//===-- aeabi_uldivmod.S - EABI uldivmod implementation -------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "../assembly.h"
+
+// struct { uint64_t quot, uint64_t rem}
+// __aeabi_uldivmod(uint64_t numerator, uint64_t denominator) {
+// uint64_t rem, quot;
+// quot = __udivmoddi4(numerator, denominator, &rem);
+// return {quot, rem};
+// }
+
+ .syntax unified
+ .align 2
+DEFINE_COMPILERRT_FUNCTION(__aeabi_uldivmod)
+ push {r11, lr}
+ sub sp, sp, #16
+ add r12, sp, #8
+ str r12, [sp]
+ bl SYMBOL_NAME(__udivmoddi4)
+ ldr r2, [sp, #8]
+ ldr r3, [sp, #12]
+ add sp, sp, #16
+ pop {r11, pc}
\ No newline at end of file
Added: vendor/compiler-rt/dist/lib/asan/CMakeLists.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/compiler-rt/dist/lib/asan/CMakeLists.txt Mon Jul 30 10:58:13 2012 (r238901)
@@ -0,0 +1,82 @@
+# Build for the AddressSanitizer runtime support library.
+
+set(ASAN_SOURCES
+ asan_allocator.cc
+ asan_globals.cc
+ asan_interceptors.cc
+ asan_linux.cc
+ asan_mac.cc
+ asan_malloc_linux.cc
+ asan_malloc_mac.cc
+ asan_malloc_win.cc
+ asan_new_delete.cc
+ asan_poisoning.cc
+ asan_posix.cc
+ asan_printf.cc
+ asan_rtl.cc
+ asan_stack.cc
+ asan_stats.cc
+ asan_thread.cc
+ asan_thread_registry.cc
+ asan_win.cc
+ )
+
+include_directories(..)
+
+set(ASAN_CFLAGS
+ -fPIC
+ -fno-exceptions
+ -funwind-tables
+ -fvisibility=hidden
+ -fno-builtin
+ -fomit-frame-pointer
+ -O3
+ )
+if (SUPPORTS_NO_VARIADIC_MACROS_FLAG)
+ list(APPEND ASAN_CFLAGS -Wno-variadic-macros)
+endif ()
+
+if (APPLE)
+ list(APPEND ASAN_CFLAGS -mmacosx-version-min=10.5)
+endif()
+
+set(ASAN_COMMON_DEFINITIONS
+ ASAN_HAS_EXCEPTIONS=1
+ ASAN_NEEDS_SEGV=1
+ )
+
+# FIXME: We need to build universal binaries on OS X instead of
+# two arch-specific binaries.
+
+if(CAN_TARGET_X86_64)
+ add_library(clang_rt.asan-x86_64 STATIC
+ ${ASAN_SOURCES}
+ $<TARGET_OBJECTS:RTInterception.x86_64>
+ $<TARGET_OBJECTS:RTSanitizerCommon.x86_64>
+ )
+ set_target_compile_flags(clang_rt.asan-x86_64
+ ${ASAN_CFLAGS}
+ ${TARGET_X86_64_CFLAGS}
+ )
+ set_property(TARGET clang_rt.asan-x86_64 APPEND PROPERTY COMPILE_DEFINITIONS
+ ${ASAN_COMMON_DEFINITIONS})
+ add_clang_runtime_static_library(clang_rt.asan-x86_64)
+endif()
+if(CAN_TARGET_I386)
+ add_library(clang_rt.asan-i386 STATIC
+ ${ASAN_SOURCES}
+ $<TARGET_OBJECTS:RTInterception.i386>
+ $<TARGET_OBJECTS:RTSanitizerCommon.i386>
+ )
+ set_target_compile_flags(clang_rt.asan-i386
+ ${ASAN_CFLAGS}
+ ${TARGET_I386_CFLAGS}
+ )
+ set_property(TARGET clang_rt.asan-i386 APPEND PROPERTY COMPILE_DEFINITIONS
+ ${ASAN_COMMON_DEFINITIONS})
+ add_clang_runtime_static_library(clang_rt.asan-i386)
+endif()
+
+if(LLVM_INCLUDE_TESTS)
+ add_subdirectory(tests)
+endif()
Modified: vendor/compiler-rt/dist/lib/asan/Makefile.mk
==============================================================================
--- vendor/compiler-rt/dist/lib/asan/Makefile.mk Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/asan/Makefile.mk Mon Jul 30 10:58:13 2012 (r238901)
@@ -8,7 +8,7 @@
#===------------------------------------------------------------------------===#
ModuleName := asan
-SubDirs := mach_override sysinfo
+SubDirs :=
Sources := $(foreach file,$(wildcard $(Dir)/*.cc),$(notdir $(file)))
ObjNames := $(Sources:%.cc=%.o)
@@ -17,6 +17,8 @@ Implementation := Generic
# FIXME: use automatic dependencies?
Dependencies := $(wildcard $(Dir)/*.h)
+Dependencies += $(wildcard $(Dir)/interception/*.h)
+Dependencies += $(wildcard $(Dir)/interception/mach_override/*.h)
# Define a convenience variable for all the asan functions.
AsanFunctions := $(Sources:%.cc=%)
Modified: vendor/compiler-rt/dist/lib/asan/Makefile.old
==============================================================================
--- vendor/compiler-rt/dist/lib/asan/Makefile.old Mon Jul 30 10:55:23 2012 (r238900)
+++ vendor/compiler-rt/dist/lib/asan/Makefile.old Mon Jul 30 10:58:13 2012 (r238901)
@@ -58,9 +58,11 @@ ifeq ($(ARCH), arm)
endif
CLANG_FLAGS=
+CLANG_VERSION=3.2
CLANG_BUILD=$(ROOT)/../../../../build/Release+Asserts
CLANG_CC=$(CLANG_BUILD)/bin/clang $(CLANG_FLAGS)
CLANG_CXX=$(CLANG_BUILD)/bin/clang++ $(CLANG_FLAGS)
+FILE_CHECK=$(CLANG_BUILD)/bin/FileCheck
CC=$(CLANG_CC)
CXX=$(CLANG_CXX)
@@ -77,7 +79,6 @@ ARCH=x86_64
ASAN_STACK=1
ASAN_GLOBALS=1
-ASAN_USE_CALL=1
ASAN_SCALE=0 # default will be used
ASAN_OFFSET=-1 #default will be used
ASAN_UAR=0
@@ -120,8 +121,8 @@ endif
# This will build libasan on linux for both x86_64 and i386 in the
# desired location. The Mac library is already build by the clang's make.
-# $(CLANG_BUILD)/lib/clang/3.1/lib/$(OS)/libclang_rt.asan-$(ARCH).a
-LIBASAN_INST_DIR=$(CLANG_BUILD)/lib/clang/3.1/lib/$(OS)
+# $(CLANG_BUILD)/lib/clang/$(CLANG_VERSION)/lib/$(OS)/libclang_rt.asan-$(ARCH).a
+LIBASAN_INST_DIR=$(CLANG_BUILD)/lib/clang/$(CLANG_VERSION)/lib/$(OS)
LIBASAN_A=$(LIBASAN_INST_DIR)/libclang_rt.asan-$(ARCH).a
BLACKLIST=
@@ -140,7 +141,6 @@ CLANG_ASAN_CXX=$(CLANG_CXX) \
$(BLACKLIST) \
-mllvm -asan-stack=$(ASAN_STACK) \
-mllvm -asan-globals=$(ASAN_GLOBALS) \
- -mllvm -asan-use-call=$(ASAN_USE_CALL) \
-mllvm -asan-mapping-scale=$(ASAN_SCALE) \
-mllvm -asan-mapping-offset-log=$(ASAN_OFFSET) \
-mllvm -asan-use-after-return=$(ASAN_UAR) \
@@ -169,37 +169,25 @@ ifeq ($(ASAN_COMPILER), gcc)
ASAN_LD_TAIL=$(LIBASAN_A)
endif
-RTL_HDR=asan_allocator.h \
- asan_internal.h \
- asan_interceptors.h \
- asan_interface.h \
- asan_lock.h \
- asan_mac.h \
- asan_mapping.h \
- asan_stack.h \
- asan_stats.h \
- asan_thread.h \
- asan_thread_registry.h \
- mach_override/mach_override.h \
- sysinfo/basictypes.h \
- sysinfo/sysinfo.h
-
-LIBASAN_OBJ=$(BIN)/asan_rtl$(SUFF).o \
- $(BIN)/asan_allocator$(SUFF).o \
- $(BIN)/asan_globals$(SUFF).o \
- $(BIN)/asan_interceptors$(SUFF).o \
- $(BIN)/asan_linux$(SUFF).o \
- $(BIN)/asan_mac$(SUFF).o \
- $(BIN)/asan_malloc_linux$(SUFF).o \
- $(BIN)/asan_malloc_mac$(SUFF).o \
- $(BIN)/asan_poisoning$(SUFF).o \
- $(BIN)/asan_printf$(SUFF).o \
- $(BIN)/asan_stack$(SUFF).o \
- $(BIN)/asan_stats$(SUFF).o \
- $(BIN)/asan_thread$(SUFF).o \
- $(BIN)/asan_thread_registry$(SUFF).o \
- $(BIN)/mach_override/mach_override$(SUFF).o \
- $(BIN)/sysinfo/sysinfo$(SUFF).o
+INTERCEPTION=../interception
+MACH_OVERRIDE=$(INTERCEPTION)/mach_override
+COMMON=../sanitizer_common
+
+RTL_HDR=$(wildcard *.h) \
+ $(wildcard $(INTERCEPTION)/*.h) \
+ $(wildcard $(MACH_OVERRIDE)/*.h) \
+ $(wildcard $(COMMON)/*.h)
+
+LIBTSAN_SRC=$(wildcard *.cc)
+INTERCEPTION_SRC=$(wildcard $(INTERCEPTION)/*.cc)
+MACH_OVERRIDE_SRC=$(wildcard $(MACH_OVERRIDE)/*.c)
+COMMON_SRC=$(wildcard $(COMMON)/*.cc)
+
+
+LIBASAN_OBJ=$(patsubst %.cc,$(BIN)/%$(SUFF).o,$(LIBTSAN_SRC)) \
+ $(patsubst $(INTERCEPTION)/%.cc,$(BIN)/%$(SUFF).o,$(INTERCEPTION_SRC)) \
+ $(patsubst $(COMMON)/%.cc,$(BIN)/%$(SUFF).o,$(COMMON_SRC)) \
+ $(patsubst $(MACH_OVERRIDE)/%.c,$(BIN)/%$(SUFF).o,$(MACH_OVERRIDE_SRC))
GTEST_ROOT=third_party/googletest
GTEST_INCLUDE=-I$(GTEST_ROOT)/include
@@ -209,29 +197,28 @@ GTEST_LIB=$(GTEST_MAKE_DIR)/gtest-all.o
all: b64 b32
test: t64 t32 output_tests lint
+ @echo "ALL TESTS PASSED"
output_tests: b32 b64
- cd tests && ./test_output.sh $(CLANG_CXX) $(CLANG_CC)
+ cd output_tests && ./test_output.sh $(CLANG_CXX) $(CLANG_CC) $(FILE_CHECK)
t64: b64
$(BIN)/asan_test64
t32: b32
$(BIN)/asan_test32
-b64: | $(BIN)
+b64: | mk_bin_dir
$(MAKE) -f $(MAKEFILE) ARCH=x86_64 asan_test asan_benchmarks
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-vendor
mailing list