5d71de26cedae3dafc17449fe0182045c0bd20e8 |
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update compiler-rt for rebase to r212749. Includes a cherry-pick of: r213309 - fixes umodsi3 Change-Id: Ic7367e3586b6af7ef74bee6a8cf437d5f28d975a
bsan_diag.cc
|
2d1fdb26e458c4ddc04155c1d421bced3ba90cd0 |
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update compiler-rt aosp/master for 3.5 (r209699) rebase. Change-Id: I158a30186f0faea2e2400e9dfdd878db2eb40e90
MakeLists.txt
it_tests/AsanConfig/lit.cfg
it_tests/AsanConfig/lit.site.cfg.in
it_tests/CMakeLists.txt
it_tests/TestCases/Float/cast-overflow.cpp
it_tests/TestCases/Integer/add-overflow.cpp
it_tests/TestCases/Integer/div-overflow.cpp
it_tests/TestCases/Integer/div-zero.cpp
it_tests/TestCases/Integer/incdec-overflow.cpp
it_tests/TestCases/Integer/mul-overflow.cpp
it_tests/TestCases/Integer/negate-overflow.cpp
it_tests/TestCases/Integer/no-recover.cpp
it_tests/TestCases/Integer/shift.cpp
it_tests/TestCases/Integer/sub-overflow.cpp
it_tests/TestCases/Integer/uadd-overflow.cpp
it_tests/TestCases/Integer/uincdec-overflow.cpp
it_tests/TestCases/Integer/umul-overflow.cpp
it_tests/TestCases/Integer/usub-overflow.cpp
it_tests/TestCases/Misc/bool.cpp
it_tests/TestCases/Misc/bounds.cpp
it_tests/TestCases/Misc/deduplication.cpp
it_tests/TestCases/Misc/enum.cpp
it_tests/TestCases/Misc/missing_return.cpp
it_tests/TestCases/Misc/unreachable.cpp
it_tests/TestCases/Misc/vla.c
it_tests/TestCases/TypeCheck/Function/function.cpp
it_tests/TestCases/TypeCheck/Function/lit.local.cfg
it_tests/TestCases/TypeCheck/misaligned.cpp
it_tests/TestCases/TypeCheck/null.cpp
it_tests/TestCases/TypeCheck/vptr.cpp
it_tests/UbsanConfig/lit.cfg
it_tests/UbsanConfig/lit.site.cfg.in
it_tests/lit.common.cfg
bsan_diag.cc
bsan_value.cc
bsan_value.h
|
e1a6a9aa854641f118369f478ad2b1d30c456ec8 |
10-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r196799: ------------------------------------------------------------------------ r196799 | wdietz2 | 2013-12-09 11:04:33 -0800 (Mon, 09 Dec 2013) | 1 line ubsan: Fix typo in 'TypeCheck/vptr.cpp' test to resolve 32bit failure. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_34@196871 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TestCases/TypeCheck/vptr.cpp
|
48d6b10c74138db9298a2eda28d5c7f5ae72ea42 |
10-Dec-2013 |
Bill Wendling <isanbard@gmail.com> |
Merging r196612: ------------------------------------------------------------------------ r196612 | wdietz2 | 2013-12-06 13:49:18 -0800 (Fri, 06 Dec 2013) | 1 line Fix integer tests on platforms where uint64_t is 'unsigned long long'. ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_34@196870 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TestCases/Integer/no-recover.cpp
it_tests/TestCases/Integer/uadd-overflow.cpp
it_tests/TestCases/Integer/usub-overflow.cpp
|
5e43cfa5e7f6d344f4b0a6a9f7a4b2811d5b8bab |
14-Nov-2013 |
Alexey Samsonov <samsonov@google.com> |
[UBSan] Make sure ASan and UBSan interact properly by running each test from UBSan test suite with and without ASan git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194698 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/AsanConfig/lit.cfg
it_tests/AsanConfig/lit.site.cfg.in
it_tests/CMakeLists.txt
it_tests/Float/cast-overflow.cpp
it_tests/Integer/add-overflow.cpp
it_tests/Integer/div-overflow.cpp
it_tests/Integer/div-zero.cpp
it_tests/Integer/incdec-overflow.cpp
it_tests/Integer/mul-overflow.cpp
it_tests/Integer/negate-overflow.cpp
it_tests/Integer/no-recover.cpp
it_tests/Integer/shift.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Integer/uadd-overflow.cpp
it_tests/Integer/uincdec-overflow.cpp
it_tests/Integer/umul-overflow.cpp
it_tests/Integer/usub-overflow.cpp
it_tests/Misc/bool.cpp
it_tests/Misc/bounds.cpp
it_tests/Misc/deduplication.cpp
it_tests/Misc/enum.cpp
it_tests/Misc/missing_return.cpp
it_tests/Misc/unreachable.cpp
it_tests/Misc/vla.c
it_tests/TestCases/Float/cast-overflow.cpp
it_tests/TestCases/Integer/add-overflow.cpp
it_tests/TestCases/Integer/div-overflow.cpp
it_tests/TestCases/Integer/div-zero.cpp
it_tests/TestCases/Integer/incdec-overflow.cpp
it_tests/TestCases/Integer/mul-overflow.cpp
it_tests/TestCases/Integer/negate-overflow.cpp
it_tests/TestCases/Integer/no-recover.cpp
it_tests/TestCases/Integer/shift.cpp
it_tests/TestCases/Integer/sub-overflow.cpp
it_tests/TestCases/Integer/uadd-overflow.cpp
it_tests/TestCases/Integer/uincdec-overflow.cpp
it_tests/TestCases/Integer/umul-overflow.cpp
it_tests/TestCases/Integer/usub-overflow.cpp
it_tests/TestCases/Misc/bool.cpp
it_tests/TestCases/Misc/bounds.cpp
it_tests/TestCases/Misc/deduplication.cpp
it_tests/TestCases/Misc/enum.cpp
it_tests/TestCases/Misc/missing_return.cpp
it_tests/TestCases/Misc/unreachable.cpp
it_tests/TestCases/Misc/vla.c
it_tests/TestCases/TypeCheck/Function/function.cpp
it_tests/TestCases/TypeCheck/Function/lit.local.cfg
it_tests/TestCases/TypeCheck/misaligned.cpp
it_tests/TestCases/TypeCheck/null.cpp
it_tests/TestCases/TypeCheck/vptr.cpp
it_tests/TypeCheck/Function/function.cpp
it_tests/TypeCheck/Function/lit.local.cfg
it_tests/TypeCheck/misaligned.cpp
it_tests/TypeCheck/null.cpp
it_tests/TypeCheck/vptr.cpp
it_tests/UbsanConfig/lit.cfg
it_tests/UbsanConfig/lit.site.cfg.in
it_tests/lit.cfg
it_tests/lit.common.cfg
it_tests/lit.site.cfg.in
|
aed8584ec902e6fe67c03f1102feee6a3f1bdd14 |
14-Nov-2013 |
Alexey Samsonov <samsonov@google.com> |
[UBSan] Update UBSan location rendering to match r194686 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194687 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
c1a1ed62228288155459d39194995a36aca4a8a6 |
26-Oct-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Overhaul the symbolizer interface. This moves away from creating the symbolizer object and initializing the external symbolizer as separate steps. Those steps now always take place together. Sanitizers with a legacy requirement to specify their own symbolizer path should use InitSymbolizer to initialize the symbolizer with the desired path, and GetSymbolizer to access the symbolizer. Sanitizers with no such requirement (e.g. UBSan) can use GetOrInitSymbolizer with no need for initialization. The symbolizer interface has been made thread-safe (as far as I can tell) by protecting its member functions with mutexes. Finally, the symbolizer interface no longer relies on weak externals, the introduction of which was probably a mistake on my part. Differential Revision: http://llvm-reviews.chandlerc.com/D1985 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193448 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/CMakeLists.txt
it_tests/TypeCheck/Function/function.cpp
it_tests/lit.cfg
bsan_diag.cc
|
9b5f95f5fe1a24be4dfb7436b64cb0e0f8c00535 |
20-Oct-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Runtime support for the indirect function call checker. Differential Revision: http://llvm-reviews.chandlerc.com/D1339 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193060 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/CMakeLists.txt
it_tests/TypeCheck/Function/function.cpp
it_tests/TypeCheck/Function/lit.local.cfg
it_tests/lit.cfg
bsan_diag.cc
bsan_diag.h
bsan_handlers.cc
bsan_handlers.h
|
49d29ed950f9e309a7b755b2a0601ed483ce3ade |
20-Oct-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
[ubsan] Introduce %clangxx substitution for all C++ tests. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193059 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
it_tests/Integer/add-overflow.cpp
it_tests/Integer/div-overflow.cpp
it_tests/Integer/div-zero.cpp
it_tests/Integer/incdec-overflow.cpp
it_tests/Integer/mul-overflow.cpp
it_tests/Integer/negate-overflow.cpp
it_tests/Integer/no-recover.cpp
it_tests/Integer/shift.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Integer/uadd-overflow.cpp
it_tests/Integer/uincdec-overflow.cpp
it_tests/Integer/umul-overflow.cpp
it_tests/Integer/usub-overflow.cpp
it_tests/Misc/bool.cpp
it_tests/Misc/bounds.cpp
it_tests/Misc/deduplication.cpp
it_tests/Misc/enum.cpp
it_tests/Misc/missing_return.cpp
it_tests/Misc/unreachable.cpp
it_tests/TypeCheck/misaligned.cpp
it_tests/TypeCheck/null.cpp
it_tests/TypeCheck/vptr.cpp
it_tests/lit.cfg
|
0c46cdebe103e5745a3b7be0b8c9c454a06bcccb |
18-Oct-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Make the big array in the UBSan C++ runtime be zero-initialized to dramatically shrink the binary size of the ubsan runtime. Also fix a bug where long-running processes could eventually trigger a crash in the runtime by filling up the cache. I've not found a nice way to add a test for this crasher; ideas welcome. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192931 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_type_hash.cc
|
90b0f1e3ba126bb2e92ab51ef379c98782c23d90 |
04-Oct-2013 |
Alexey Samsonov <samsonov@google.com> |
Refactor the usage of strip_path_prefix option and make it more consistent across sanitizers git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191943 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/misaligned.cpp
bsan_diag.cc
|
43ac401d8eb9b7d938d75518042eb874ccce0d8e |
02-Oct-2013 |
Nick Lewycky <nicholas@mxc.ca> |
This fixme is resolved, fix the test. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191810 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Misc/bool.cpp
|
d1bf52ecb1211af7fa3fe5f5b05d08033eb1a90c |
02-Oct-2013 |
Nick Lewycky <nicholas@mxc.ca> |
Make the InvalidValueData take a SourceLocation. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191807 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_handlers.cc
bsan_handlers.h
|
7847d77b246635211c3bf465421d49d7af5226c1 |
10-Sep-2013 |
Alexey Samsonov <samsonov@google.com> |
[Sanitizer] Refactor symbolization interface: use class instead of several functions. Move some code around to get rid of extra source files git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190410 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
544bdfb538d082109194952ce66907b917eb8d51 |
28-Aug-2013 |
Alexey Samsonov <samsonov@google.com> |
Generate list of symbols exported from sanitizer runtimes only on 64-bit Unix git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189454 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
e5fa243b20bf5e6a097bc58cbedfe6bed8a9b7d1 |
27-Aug-2013 |
Alexey Samsonov <samsonov@google.com> |
Properly generate lists of exported symbols for sanitizer runtimes This change adds a Python script that is invoked for the just-built sanitizer runtime to generate the list of exported symbols passed to the linker. By default, it contains interceptors and sanitizer interface functions, but can be extended with tool-specific lists. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189356 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
bsan.syms
bsan.syms.extra
|
fa484bac3e2d6a5a4bb83dd522a63fd0d70fc2bb |
13-Aug-2013 |
Rui Ueyama <ruiu@google.com> |
Add "CHECK-" prefix to un-break buildbot failure. After r188221, the prefix given by --check-prefix must match with the label as a whole. Substring is not considered to be a correct label anymore. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188227 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/add-overflow.cpp
it_tests/Integer/shift.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Integer/uadd-overflow.cpp
it_tests/Integer/uincdec-overflow.cpp
it_tests/Integer/usub-overflow.cpp
|
a1b15b4af39b843ebb8545d295aa872829eb8187 |
10-Aug-2013 |
Daniel Dunbar <daniel@zuster.org> |
[tests] Update to use lit_config and lit package, as appropriate. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188116 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/lit.cfg
it_tests/lit.site.cfg.in
|
8c6046b9a8c384b630ae5c1376ee8c0cb1abe406 |
27-Jul-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
disable pipefail for ubsan. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@187273 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/lit.cfg
|
28f2f82b56bf498dd3e8ab2ca3afaf907a90de25 |
18-Jul-2013 |
Hans Wennborg <hans@hanshq.net> |
Fix another instance of -ccc-cxx vs. --driver-mode=g++ git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@186609 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/vptr.cpp
|
6efa4d6cf9bb214a5e8ddbb224a69b38c4ae6de6 |
07-Jun-2013 |
Alexey Samsonov <samsonov@google.com> |
[ASan] create separate configs for running ASan lit tests in both 32- and 64-bit mode. Clean up RUN-lines in tests. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183498 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/lit.cfg
|
ad785cb2d7f2ab80d2f6bfd7f05d4898807592ad |
06-Jun-2013 |
Alexey Samsonov <samsonov@google.com> |
Remove a bunch of copy-paste: use common config for sanitizer lit/unit tests git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@183407 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/lit.cfg
it_tests/lit.site.cfg.in
|
57434a3174cfd9c4c5f304ea412492e4935cc18d |
27-May-2013 |
Alexey Samsonov <samsonov@google.com> |
Improve support for compiler-rt tests in CMake build. Now compiler-rt tests run correctly if compiler-rt is checked out into arbitrary directory (not necessarily projects/compiler-rt). Patch by Greg Fitzgerald! git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182726 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/lit.cfg
it_tests/lit.site.cfg.in
|
2a529adba0707d9b5977d47e884aef6b0be8c94f |
11-Apr-2013 |
Alexey Samsonov <samsonov@google.com> |
Explicitly list all sanitizer headers in CMake build rules. Make sure sanitizer lit_tests depend on fresh headers. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179293 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/CMakeLists.txt
|
7ed46ff7af911da0dd2067734d1408c6986c6657 |
05-Apr-2013 |
Alexey Samsonov <samsonov@google.com> |
[Sanitizer] Use a common mutex to prevent mixing reports from different sanitizers. This fixes PR15516 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178853 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
c446611d505593bb8e79ea98df87479e24cce68b |
28-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
compiler-rt part of r178194. Remove ubsan test for diagnostic on inf/nan conversion between floating-point types. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178195 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
|
a06fe9183fbffb78798a444da9bc3040fdd444aa |
23-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Build and install .syms files alongside sanitizer runtimes. These are used to specify which symbols are exported to DSOs when the sanitizer is statically linked into a binary. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177784 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
bsan.syms
|
ec7962d874159f02ad9b1657b627ceb53fea55ab |
22-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Pass floating-point arguments to the runtime by value if they fit the value argument. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177689 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.cc
bsan_value.h
|
f4322698581422a84c4cf300ad12de9cecd0673d |
21-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Per discussion on cxx-abi-dev, switch from comparing type_info objects to comparing type_info names, since the latter have better uniqueness guarantees in practice. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177618 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_type_hash.cc
|
3e587a4f631c1b7338d4f2a29df74b704b8bb1ca |
21-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Split ubsan runtime into three pieces (compiler-rt part): * libclang_rt-san-* is sanitizer_common, and is linked in only if no other sanitizer runtime is present. * libclang_rt-ubsan-* is the piece of the runtime which doesn't depend on a C++ ABI library, and is always linked in. * libclang_rt-ubsan_cxx-* is the piece of the runtime which depends on a C++ ABI library, and is only linked in when linking a C++ binary. The Darwin ubsan runtime is unchanged. For more details, see Clang change r177605. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177606 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile.mk
|
e20fa5c8c1788274da187ab1dfb8f110376d037d |
19-Mar-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Update ubsan test for clang change r177362. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177363 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
|
8f72f7cae84494d9bd0676b4a499e0f895460744 |
27-Feb-2013 |
Alexey Samsonov <samsonov@google.com> |
[UBSan] Use common report decorator to print colorful diagnostics in UBSan, and be more consistent w/ Printf/RawWrite git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@176182 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
a0b1e21d72429c3672115b3ddc85240e3b7ac88b |
23-Feb-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Runtime handlers for array indexing checks. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175948 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Misc/bounds.cpp
bsan_handlers.cc
bsan_handlers.h
|
45a8124a70fa720756c4c40d741b588172879bb7 |
13-Feb-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Add checking for invalid downcasts. Per [expr.static.cast]p2 and p11, base-to-derived casts have undefined behavior if the object is not actually an instance of the derived type. Runtime library part. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175079 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/vptr.cpp
bsan_handlers.cc
bsan_handlers_cxx.cc
|
c242446f7a7c6a0c1f1bf9ad403d6dac6f215f1c |
12-Feb-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Highlight caret in bold green, to match Clang diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175013 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
2aad7c137771f6f7a734390e09c94a13120d054a |
21-Jan-2013 |
Alexey Samsonov <samsonov@google.com> |
CMake: add functions creating universal runtime libraries for several architectures on OS X and use them in ASan and UBSan build rules git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173011 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
43b4b9c18a7a588a60b9d976391ad8e2f5f9a309 |
18-Jan-2013 |
Alexey Samsonov <samsonov@google.com> |
CMake: Generalize build rules for different arches for sanitizer_common, asan, ubsan git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172829 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
2f3aef010fdeadfe7ec995dc534544acb5f357fb |
18-Jan-2013 |
Alexey Samsonov <samsonov@google.com> |
CMake variables renaming: X86_64->x86_64 I386->i386 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172812 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
18af39e73d651f1903f2d46ac51b3842b378763f |
17-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Add SANITIZER_INTERFACE_ATTRIBUTE to __ubsan_vptr_type_cache Missed this one previously. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172730 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_type_hash.h
|
2173dc70641466e166b5f9485bdb3a26eaa2ba1f |
14-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Use __sanitizer::atomic_exchange(), prefer shared impl. Specify weaker memory order in case we optimize for it in the future, presently still doing same __sync_lock_test_and_set() as before. Change suggested by Alexey Samsonov, thanks! git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172429 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.h
|
c193953bf3993760a0be8ae20cf716795d2102cd |
10-Jan-2013 |
Richard Smith <richard-llvm@metafoo.co.uk> |
UBSan: use %p not 0x%zx when printing pointers. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172129 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
a44110995241d30a886d711cbc33f65269b170ea |
10-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Move attribute specifier to fix build with gcc. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172078 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_handlers.h
bsan_handlers_cxx.h
|
90ad168560fa07fcc21c88d5710a05f851ecafcf |
10-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Give entry methods default (not hidden) visibility. Fixes using ubsan on shared libraries in linux, for example. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@172041 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_handlers.h
bsan_handlers_cxx.h
|
a6a69d6bfc868d85cdf9e81171071f9076fa2499 |
09-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Drop use of __atomic_exchange_n for now to fix build for some. Need a more reliable way to check for support of this intrinsic. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171955 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.h
|
2af552f98f980178db37eed28a609b6bf55f6df8 |
09-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Add deduplication functionality, always enabled. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171948 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Misc/deduplication.cpp
bsan_handlers.cc
bsan_handlers_cxx.cc
bsan_value.h
|
01247b76902f2329f6edf4b9b8e95fc1be06c400 |
07-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Check for appropriate types on compound assignment overflow diagnostics. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171802 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/add-overflow.cpp
it_tests/Integer/no-recover.cpp
it_tests/Integer/uadd-overflow.cpp
|
f359dea95de4a17287d11052e9b552100c152287 |
31-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow. Fixed version of r171273. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171278 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/negate-overflow.cpp
bsan_handlers.cc
|
9202515bf430858117d117d98136a865feb1a281 |
31-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert r171273 which doesn't actually compile. Original commit message: [ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171277 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/negate-overflow.cpp
bsan_handlers.cc
|
7ba7f0d7f2df4a55e376b0477fc3268a82588bf3 |
31-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Don't suggest casting to unsigned for unsigned unary minus overflow. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171273 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/negate-overflow.cpp
bsan_handlers.cc
|
7324b65a1ae320b6f179470ce5bae26d4b14f268 |
30-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Update test now that check recovery is default and has driver flag. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171265 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/no-recover.cpp
|
d7d7b5f39cf5bbc36403afb0a94d473519c7ab78 |
27-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
Define COMPILER_RT_CAN_EXECUTE_TESTS variable on platforms where we can produce working binaries and use it in build rules for sanitizers tests git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171160 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/CMakeLists.txt
|
ab6374326389ff649ad857842b45488721c949db |
20-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Move C++ name demangling support from ubsan into sanitizer_common. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170666 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
d2f08ffcb97726452f4ba11c199a1e06dc2a7e54 |
18-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
[Sanitizer] Expose StackTrace::GetPreviousInstructionPc() to get PC of call instruction from return address git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170424 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
|
0ad23f7f860e27b8b9a889be665cfaea830503ce |
18-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Demangle class names, and be more informative when a reinterpret_cast has got us to the wrong offset within an object. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170423 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/vptr.cpp
bsan_diag.cc
bsan_diag.h
bsan_handlers_cxx.cc
bsan_type_hash.cc
bsan_type_hash.h
|
25ee97fe8ada76755c8bd1087fac9cc3cd03b28c |
18-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: When diagnosing something wrong somewhere in memory, emit a note pointing at the bad location and a snippet of nearby memory values. This is strictly best-effort; reading these bytes to display the note could lead to a seg fault, and that's explicitly OK. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170415 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/misaligned.cpp
it_tests/TypeCheck/vptr.cpp
bsan_diag.cc
bsan_diag.h
bsan_handlers.cc
bsan_handlers_cxx.cc
bsan_type_hash.cc
bsan_type_hash.h
|
5f1164955fb28a9bcb826abc195aa2119feb0f97 |
18-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: if the frontend didn't provide us with a source location, try to work one out from the return address. Currently, we can only resolve this address to a file and line number if we have an external symbolizer. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170407 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Misc/bool.cpp
it_tests/TypeCheck/misaligned.cpp
bsan_diag.cc
bsan_diag.h
bsan_handlers.cc
|
fe0b77be4057ba90a0321107cc5d0f603f297bfa |
18-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Rein ubsan's vptr sanitizer back a bit. Per core issue 453, binding a reference to an object outside its lifetime does not have undefined behavior. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170388 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/vptr.cpp
|
e3eb65257f3c93d180670d880138896ad8713afe |
13-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan unit tests for -fsanitize=bool and -fsanitize=enum. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170109 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Misc/bool.cpp
it_tests/Misc/enum.cpp
|
f2d77d03b75733139c9f0896162bbc7a6fc38385 |
13-Dec-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Add -fsanitize=bool and -fsanitize=enum, which check for loads of bit-patterns which are not valid values for enumerated or boolean types. These checks are the ubsan analogue of !range metadata. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170107 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_handlers.cc
bsan_handlers.h
|
a82a5d360b19080f2b1beae374c12d4f26146450 |
02-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Refactor handlers to have separate entry points for aborting. If user specifies aborting after a recoverable failed check is appropriate, frontend should emit call to the _abort variant. Test this behavior with newly added -fsanitize-recover flag. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169113 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/no-recover.cpp
bsan_handlers.cc
bsan_handlers.h
bsan_handlers_cxx.cc
bsan_handlers_cxx.h
|
7cbd7e502e993320a3a1578179d336c268b80604 |
02-Dec-2012 |
Will Dietz <wdietz2@illinois.edu> |
[ubsan] Replace "fatal error" with "runtime error". git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169112 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
it_tests/Integer/add-overflow.cpp
it_tests/Integer/div-overflow.cpp
it_tests/Integer/div-zero.cpp
it_tests/Integer/incdec-overflow.cpp
it_tests/Integer/mul-overflow.cpp
it_tests/Integer/negate-overflow.cpp
it_tests/Integer/shift.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Integer/uadd-overflow.cpp
it_tests/Integer/uincdec-overflow.cpp
it_tests/Integer/umul-overflow.cpp
it_tests/Integer/usub-overflow.cpp
it_tests/Misc/missing_return.cpp
it_tests/Misc/unreachable.cpp
it_tests/Misc/vla.c
it_tests/TypeCheck/misaligned.cpp
it_tests/TypeCheck/null.cpp
it_tests/TypeCheck/vptr.cpp
bsan_diag.cc
bsan_handlers_cxx.cc
|
0a7062f2cbb01b348bbc09be21a577957a2c68c2 |
30-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Disable __int128 tests if the host Clang does not support it. These tests will still fail if compiler-rt was built with a compiler without __int128 support, but the host compiler has __int128 support. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168955 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
it_tests/Integer/add-overflow.cpp
it_tests/Integer/div-zero.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Integer/uadd-overflow.cpp
it_tests/Integer/usub-overflow.cpp
|
e656184a2e20c0293cf838885204216cdf1db168 |
29-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
ubsan: Don't assume that Clang provides __int128 unless it advertises that it does. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168857 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.h
|
80af605afd0e92a2a128c81898f647207f384e08 |
27-Nov-2012 |
Will Dietz <wdietz2@illinois.edu> |
ubsan: Support unsigned overflows, and divide-by-zero int/float split. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168700 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Integer/div-zero.cpp
it_tests/Integer/uadd-overflow.cpp
it_tests/Integer/uincdec-overflow.cpp
it_tests/Integer/umul-overflow.cpp
it_tests/Integer/usub-overflow.cpp
bsan_handlers.cc
bsan_handlers.h
|
af5a4c095bcd3664c7549e3a54872255a88eaa4b |
16-Nov-2012 |
Alexey Samsonov <samsonov@google.com> |
ubsan: fix broken test case by using brand new [[@LINE]] FileCheck feature git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168170 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/TypeCheck/vptr.cpp
|
5b16dba10c171bc74a3d55a61b4406377aecbab8 |
16-Nov-2012 |
Alexey Samsonov <samsonov@google.com> |
UBSan: enable CMake build on Darwin. Fix two failing tests and disable the test which produces linker errors on Darwin. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168169 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
it_tests/Integer/add-overflow.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/TypeCheck/vptr.cpp
it_tests/lit.cfg
|
8783d8345782c431f027566cddf8723fb88a40b9 |
14-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Fix typo from code review (thanks to Alexey Samsonov). This is also caught by the existing tests when building for i386. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167890 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
|
4a4ef702597471bff5e249b8ec9d94d265007895 |
14-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Support for building the ubsan runtime when using the autoconf build system on Darwin. Patch by Jean-Daniel Dupas, tweaked by Jonathan Sauer, simplified somewhat by me. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167889 91177308-0d34-0410-b5e6-96231b3b80d8
akefile.mk
bsan_value.h
|
f4932204d7cf89cc2402b1e30fb728cf84ff7b7f |
14-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-fsanitize=undefined: Switch to using sanitizer_common for output. This gets us much closer to not depending on any system headers. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167888 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
bsan_diag.cc
bsan_handlers.cc
|
f10a79a21002a38e6ebc4ed01dec31872f39aed6 |
06-Nov-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Update compiler-rt tests to match flag renaming/deprecation in Clang. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@167434 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
it_tests/Integer/add-overflow.cpp
it_tests/Integer/div-overflow.cpp
it_tests/Integer/div-zero.cpp
it_tests/Integer/incdec-overflow.cpp
it_tests/Integer/mul-overflow.cpp
it_tests/Integer/negate-overflow.cpp
it_tests/Integer/shift.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Misc/missing_return.cpp
it_tests/Misc/unreachable.cpp
it_tests/Misc/vla.c
it_tests/TypeCheck/misaligned.cpp
it_tests/TypeCheck/null.cpp
it_tests/TypeCheck/vptr.cpp
|
2529922d03a76c90a512e0dd8381a42978349b69 |
29-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Consistently declare 'extern "C"' variable in namespace __ubsan. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@166966 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_type_hash.cc
|
26a725f0b2fd30b98adae6353b432d0c955e10bd |
29-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Don't define an extern "C" variable in its first declaration, to appease a bogus gcc warning. Take this opportunity to move the declaration to the header, since it's part of the API of this file. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@166965 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_type_hash.cc
bsan_type_hash.h
|
eda8bd0fc07df35c9ad7de5b698bb717b063e7af |
25-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-fcatch-undefined-behavior checking for appropriate vptr value: library side. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@166660 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
it_tests/TypeCheck/vptr.cpp
bsan_handlers.cc
bsan_handlers_cxx.cc
bsan_handlers_cxx.h
bsan_type_hash.cc
bsan_type_hash.h
|
0aad69a3918db4a3c251512984b7451e3c63dd53 |
15-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Provide a slightly more helpful diagnostic if -fcatch-undefined-behavior finds a problem with __int128 arithmetic but the runtime was not built with __int128 support. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165913 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.cc
|
20c2fb3446d3a6d628adc5e177e5ef5c9cfc90c8 |
15-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Use a better test for __int128 support, which works on old GCC versions. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165912 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.h
|
ba3fde65b900ce9d0ecdf034dfe3825eea810434 |
13-Oct-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Fix the bootstrap of CompilerRT with host compilers that don't support emulating 128-bit arithmetic on 32-bit x86 targets. This should get the bootstrap back for GCC 4.6 at least. Suggestions on better ways to do the detection here are welcome... git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165863 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_diag.cc
bsan_value.cc
bsan_value.h
|
58561700a4abad310911a24a867da49a14fae91e |
13-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-fcatch-undefined-behavior: Runtime library support for trapping conversions to or from a floating-point type where the source value is not in the range of representable values of the destination type. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165844 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Float/cast-overflow.cpp
bsan_diag.cc
bsan_diag.h
bsan_handlers.cc
bsan_handlers.h
bsan_value.cc
bsan_value.h
|
b04caf1385a4279a7b95d41c3ccefc61842c3633 |
10-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-fcatch-undefined-behavior: handler for VLA bound which evaluates to a non-positive value. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165582 91177308-0d34-0410-b5e6-96231b3b80d8
it_tests/Misc/vla.c
bsan_handlers.cc
bsan_handlers.h
|
ed81c21984efb8c1f96c82de1dd5dbcea5d7aa65 |
10-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
-fcatch-undefined-behavior: store the type name directly at the end of a type descriptor. 5% binary size reduction due to fewer relocations. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165571 91177308-0d34-0410-b5e6-96231b3b80d8
bsan_value.h
|
6ebe45146a2d93eb010b9bb5ea34cb94c6900f83 |
09-Oct-2012 |
Richard Smith <richard-llvm@metafoo.co.uk> |
Add a runtime diagnostics library for Clang's -fcatch-undefined-behavior. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165533 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
it_tests/CMakeLists.txt
it_tests/Integer/add-overflow.cpp
it_tests/Integer/div-overflow.cpp
it_tests/Integer/div-zero.cpp
it_tests/Integer/incdec-overflow.cpp
it_tests/Integer/mul-overflow.cpp
it_tests/Integer/negate-overflow.cpp
it_tests/Integer/shift.cpp
it_tests/Integer/sub-overflow.cpp
it_tests/Misc/missing_return.cpp
it_tests/Misc/unreachable.cpp
it_tests/TypeCheck/misaligned.cpp
it_tests/TypeCheck/null.cpp
it_tests/lit.cfg
it_tests/lit.site.cfg.in
bsan_diag.cc
bsan_diag.h
bsan_handlers.cc
bsan_handlers.h
bsan_value.cc
bsan_value.h
|