| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[Sanitizers][test] XFAIL long double tests on Solaris/sparc As reported in Issue #41838, clang doesn't correctly implement long double on 32-bit Solaris/SPARC: the psABI requires this to be an 128-bit type. Four sanitizer tests currently FAIL for this reason. While there is a WIP patch to fix clang (D89130 <https://reviews.llvm.org/D89130>), it isn't complete yet and I've hit so many brick walls while trying to finish it that I'm unsure if I ever will. This patch therefore XFAILs those tests in the meantime. Tested on sparcv9-sun-solaris2.11. Differential Revision: https://reviews.llvm.org/D119016 | 4 年前 | |
[ubsan] Remove REQUIRED from some TestCases It's not obvious why they are needed, and tests pass. Reviewed By: lebedev.ri Differential Revision: https://reviews.llvm.org/D111859 | 4 年前 | |
Add an unsigned shift base sanitizer It's not undefined behavior for an unsigned left shift to overflow (i.e. to shift bits out), but it has been the source of bugs and exploits in certain codebases in the past. As we do in other parts of UBSan, this patch adds a dynamic checker which acts beyond UBSan and checks other sources of errors. The option is enabled as part of -fsanitize=integer. The flag is named: -fsanitize=unsigned-shift-base This matches shift-base and shift-exponent flags. <rdar://problem/46129047> Differential Revision: https://reviews.llvm.org/D86000 | 5 年前 | |
[Clang] Fix how we set the NumPositiveBits on an EnumDecl to cover the case of single enumerator with value zero or an empty enum Currently in Sema::ActOnEnumBody(...) when calculating NumPositiveBits we miss the case where there is only a single enumerator with value zero and the case of an empty enum. In both cases we end up with zero positive bits when in fact we need one bit to store the value zero. This PR updates the calculation to account for these cases. Differential Revision: https://reviews.llvm.org/D130301 | 3 年前 | |
Revert "Revert D109159 "[amdgpu] Enable selection of s_cselect_b64."" This reverts commit 859ebca744e634dcc89a2294ffa41574f947bd62. The change contained many unrelated changes and e.g. restored unit test failes for the old lld port. | 4 年前 | |
[compiler-rt] Add shared_cxxabi requirement to some tests This adds REQUIRES: shared_cxxabi to a bunch of tests that would fail if this weak reference in sanitizer common was undefined. This is necessary in cases where libc++abi.a is statically linked in. Because there is no strong reference to __cxa_demangle in compiler-rt, then if libc++abi is linked in via a static archive, then the linker will not extract the archive member that would define that weak symbol. This causes a handful of tests to fail because this leads to the symbolizer printing mangled symbols where tests expect them demangled. Technically, this feature is WAI since sanitizer runtimes shouldn't fail if this symbol isn't resolved, and linking statically means you wouldn't need to link in all of libc++abi. As a workaround, we can simply make it a requirement that these tests use shared libc++abis. Differential Revision: https://reviews.llvm.org/D109639 | 4 年前 |