| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[compiler-rt] Test commit: remove some trailing white spaces. Summary: [compiler-rt] Test commit: remove some trailing white spaces. Reviewers: Dor1s Reviewed By: Dor1s Subscribers: dberris Differential Revision: https://reviews.llvm.org/D37161 llvm-svn: 311796 | 8 年前 | |
[Sw64] Add Sw64 target support for compiler-rt | 1 年前 | |
[ASanAbi][Darwin] Build ios stable ABI library In the initially commit, we limited the static archive to osx. This patch removes that limitation. Differential Revision: https://reviews.llvm.org/D153789 | 2 年前 | |
[sw_64][compiler-rt] enable builtins | 7 个月前 | |
[CFI] Allow LoongArch (#67314) Enable icall tests on loongarch64 and check-cfi all pass. (cherry picked from commit adb555ea369a3a989a9db619c784aa76cccdb823) | 2 年前 | |
[dfsan] Add missing functions to done_abilist.txt __sanitizer_get_allocated_begin and __sanitizer_get_allocated_size_fast were introduced recently in D147005 and D151360, but not added here, leading to linker errors. Differential Revision: https://reviews.llvm.org/D153680 | 2 年前 | |
[Sw64] Add Sw64 target support for compiler-rt | 1 年前 | |
[gwp_asan] Exclude recoverable tests on Fuchsia Signal handlers used by recoverable tests are unsupported on Fuchsia. Exclude the set of tests that test recoverable code paths (i.e. BacktraceGuardedPoolAllocator tests in recoverable.cpp) and always set the Recoverable testing bool to false on the Fuchsia platform. Differential Revision: https://reviews.llvm.org/D149311 | 3 年前 | |
[NFC][sanitizer] Pass user region into OnMapSecondary | 2 年前 | |
[compiler-rt] Use .globl for FreeBSD/NetBSD interceptor wrappers On FreeBSD and NetBSD we don't use .weak due to differing semantics. Currently we end up using no directive, which gives a local symbol, whereas the closer thing to a weak symbol would be a global one. In particular, both GNU and LLVM toolchains cannot handle a GOT-indirect reference to a local symbol at a non-zero offset within a section on AArch64 (see https://github.com/ARM-software/abi-aa/issues/217), and so interceptors do not work on FreeBSD/arm64, failing to link with LLD. Switching to .globl both works around this bug and more closely aligns such non-weak platforms with weak ones. Fixes https://github.com/llvm/llvm-project/issues/63418 Reviewed By: MaskRay Differential Revision: https://reviews.llvm.org/D158552 (cherry picked from commit 7e1afab1b1821550c5f8d0d6a50636236fa02e2c) | 2 年前 | |
[Sw64] Add Sw64 target support for compiler-rt | 1 年前 | |
[NFC][sanitizer] Pass user region into OnMapSecondary | 2 年前 | |
[Sw64] Add Sw64 target support for compiler-rt | 1 年前 | |
[CMake] Switch the CMP0091 policy (MSVC_RUNTIME_LIBRARY) to the new behaviour With the new behaviour, the /MD or similar options aren't added to e.g. CMAKE_CXX_FLAGS_RELEASE, but are added separately by CMake. They can be changed by the cmake variable CMAKE_MSVC_RUNTIME_LIBRARY or with the target property MSVC_RUNTIME_LIBRARY. LLVM has had its own custom CMake flags, e.g. LLVM_USE_CRT_RELEASE, which affects which CRT is used for release mode builds. Deprecate these and direct users to use CMAKE_MSVC_RUNTIME_LIBRARY directly instead (and do a best effort attempt at setting CMAKE_MSVC_RUNTIME_LIBRARY based on the existing LLVM_USE_CRT_ flags). This only handles the simple cases, it doesn't handle multi-config generators with different LLVM_USE_CRT_* variables for different configs though, but that's probably fine - we should move over to the new upstream CMake mechanism anyway, and push users towards that. Change code in compiler-rt, that previously tried to override the CRT choice to /MT, to set CMAKE_MSVC_RUNTIME_LIBRARY instead of meddling in the old variables. This resolves the policy issue in https://github.com/llvm/llvm-project/issues/63286, and should handle the issues that were observed originally when the minimum CMake version was bumped, in https://github.com/llvm/llvm-project/issues/62719 and https://github.com/llvm/llvm-project/issues/62739. Differential Revision: https://reviews.llvm.org/D155233 | 2 年前 | |
[compiler-rt] Use the signal to trigger __llvm_profile_write_file call Signed-off-by: lfeng14 <luofeng13@huawei.com> | 4 个月前 | |
[compiler-rt] Fix Mmap on FreeBSD AArch64 On FreeBSD AArch64 safestack needs to use __syscall to handle 64 bit arguments Reviewed by: MaskRay, vitalybuka Differential Revision: https://reviews.llvm.org/D125901 | 4 年前 | |
[sw_64][compiler-rt] Fix compile error | 7 个月前 | |
[scudo] Clean up tests. Modify the tests so that all clang warnings can be turned up to high. Fix all places flagged by -Wconversion. Fix a few unused variables not marked with UNUSED. For the memtag testing, only compile some tests for 64 bit since compiling them on 32 bit leads to warnings/errors. All of the tests are already skipped on 32 bit OSes, so this will not affect any real tests. Reviewed By: Chia-hungDuan Differential Revision: https://reviews.llvm.org/D155749 | 2 年前 | |
[compiler-rt] separate lsan, ubsan, stats configuration from SANITIZER_COMMON_SUPPORTED_OS Currently, SANITIZER_COMMON_SUPPORTED_OS is being used to enable many libraries. Unfortunately this makes it impossible to selectively disable a library based on the OS. This patch removes this limitation by adding a separate list of supported OSs for the lsan, ubsan, ubsan_minimal, and stats libraries. Reviewed By: delcypher Differential Revision: https://reviews.llvm.org/D113444 | 4 年前 | |
[sw_64][compiler-rt] Fix compile error | 7 个月前 | |
sanitizer_common: initialize sanitizer runtimes lazily from signal interceptors Currently if a program calls sigaction very early (before non-lazy sanitizer initialization, in particular if .preinit_array initialization is not enabled), then sigaction will wrongly fail since the interceptor is not initialized yet. In all other interceptors we do lazy runtime initialization for this reason, but we don't do it in the signal interceptors. Do lazy runtime initialization in signal interceptors as well. Reviewed By: melver Differential Revision: https://reviews.llvm.org/D155188 | 2 年前 | |
[compiler-rt] Avoid memintrinsic calls inserted by the compiler D135716 introduced -ftrivial-auto-var-init=pattern where supported. Unfortunately this introduces unwanted memset() for large stack arrays, as shown by the new tests added for asan and msan (tsan already had this test). In general, the problem of compiler-inserted memintrinsic calls (memset/memcpy/memmove) is not new to compiler-rt, and has been a problem before. To avoid introducing unwanted memintrinsic calls, we redefine memintrinsics as __sanitizer_internal_mem* at the assembly level for most source files automatically (where sanitizer_common_internal_defs.h is included). In few cases, redefining a symbol in this way causes issues for interceptors, namely the memintrinsic interceptor themselves. For such source files we have to selectively disable the redefinition. Other alternatives have been considered, but simply do not work well in the context of compiler-rt: 1. Linker --wrap: this does not work because --wrap only applies to the final link, and would not apply when building sanitizer static libraries. 2. Changing references to memset() via objcopy: this may work, but due to the complexities of the build system, introducing such a post-processing step for the right object files (in particular object files defining memset cannot be touched) seems infeasible. The chosen solution works well (as shown by the tests). Other libraries have chosen the same solution where nothing else works (see e.g. glibc's "symbol-hacks.h"). v4: - Add interface attribute to __sanitizer_internal_mem* declarations as well, as otherwise some compilers (MSVC) will complain. - Add SANITIZER_COMMON_NO_REDEFINE_BUILTINS to source files using C++STL, since this could lead to ODR violations (see added comment). v3: - Don't use ALIAS() to alias internal_mem*() functions to __sanitizer_internal_mem*() functions, but just define them as ALWAYS_INLINE functions instead. This will work on darwin and windows. v2: - Fix ubsan_minimal build where compiler decides to insert memset/memcpy: ubsan_minimal has work without RTSanitizerCommonLibc, therefore do not redefine the builtins. - Fix definition of internal_mem* functions with compilers that want the aliased function to already be defined before. - Fix definition of __sanitizer_internal_mem* functions with compilers more pedantic about attribute placement around extern "C". Reviewed By: vitalybuka, dvyukov Differential Revision: https://reviews.llvm.org/D151152 | 3 年前 | |
[Sw64] Add Sw64 target support for compiler-rt | 1 年前 | |
[compiler-rt] Move crt into builtins On Linux crt is typically use in combination with builtins. In the Clang driver the use of builtins and crt is controlled by the --rtlib option. Both builtins and crt also have similar build requirements where they need to be built before any other runtimes and must avoid dependencies. We also want builtins and crt these to be buildable separately from the rest of compiler-rt for bootstrapping purposes. Given how simple crt is, rather than maintaining a separate directory with its own separate build setup, it's more efficient to just move crt into builtins. We still use separate CMake option to control whether to built crt same as before. This is an alternative to D89492 and D136664. Differential Revision: https://reviews.llvm.org/D153989 | 2 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 8 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 7 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 3 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 4 个月前 | ||
| 4 年前 | ||
| 7 个月前 | ||
| 2 年前 | ||
| 4 年前 | ||
| 7 个月前 | ||
| 2 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 2 年前 |