| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat: support android build Signed-off-by: liujiajie <liujiajie12@huawei.com> | 5 个月前 | |
Prepare Compiler-RT for GnuInstallDirs, matching libcxx, document all This is a second attempt at D101497, which landed as 9a9bc76c0eb72f0f2732c729a460abbd5239c2e3 but had to be reverted in 8cf7ddbdd4e5af966a369e170c73250f2e3920e7. This issue was that in the case that COMPILER_RT_INSTALL_PATH is empty, expressions like "${COMPILER_RT_INSTALL_PATH}/bin" evaluated to "/bin" not "bin" as intended and as was originally. One solution is to make COMPILER_RT_INSTALL_PATH always non-empty, defaulting it to CMAKE_INSTALL_PREFIX. D99636 adopted that approach. But, I think it is more ergonomic to allow those project-specific paths to be relative the global ones. Also, making install paths absolute by default inhibits the proper behavior of functions like GNUInstallDirs_get_absolute_install_dir which make relative install paths absolute in a more complicated way. Given all this, I will define a function like the one asked for in https://gitlab.kitware.com/cmake/cmake/-/issues/19568 (and needed for a similar use-case). --- Original message: Instead of using COMPILER_RT_INSTALL_PATH through the CMake for complier-rt, just use it to define variables for the subdirs which themselves are used. This preserves compatibility, but later on we might consider getting rid of COMPILER_RT_INSTALL_PATH and just changing the defaults for the subdir variables directly. --- There was a seaming bug where the (non-Apple) per-target libdir was ${target} not lib/${target}. I suspect that has to do with the docs on COMPILER_RT_INSTALL_PATH saying was the library dir when that's no longer true, so I just went ahead and fixed it, allowing me to define fewer and more sensible variables. That last part should be the only behavior changes; everything else should be a pure refactoring. --- I added some documentation of these variables too. In particular, I wanted to highlight the gotcha where -DSomeCachePath=... without the :PATH will lead CMake to make the path absolute. See [1] for discussion of the problem, and [2] for the brief official documentation they added as a result. [1]: https://cmake.org/pipermail/cmake/2015-March/060204.html [2]: https://cmake.org/cmake/help/latest/manual/cmake.1.html#options In 38b2dec37ee735d5409148e71ecba278caf0f969 the problem was somewhat misidentified and so :STRING was used, but :PATH is better as it sets the correct type from the get-go. --- D99484 is the main thrust of the GnuInstallDirs work. Once this lands, it should be feasible to follow both of these up with a simple patch for compiler-rt analogous to the one for libcxx. Reviewed By: phosek, #libc_abi, #libunwind Differential Revision: https://reviews.llvm.org/D105765 | 4 年前 | |
[ORC-RT] Make the ORC runtime C API public. This is a first step towards allowing programs to pre-link against the ORC runtime, which would allow us to move some code that is currently in the LLVM OrcTarget library into the ORC runtime instead. The C API header has limited utility as-is, but serves as a minimal first step and provides clients with tools for interacting with wrapper functions. Reviewed By: beanz Differential Revision: https://reviews.llvm.org/D127324 | 3 年前 | |
feat: sync dev to main Signed-off-by: weinw <weiningwei@h-partners.com> | 1 个月前 | |
[test] Make Linux/sem_init_glibc.cpp robust and fix it for 32-bit ports defining sem_init@GLIBC_2.0 (i386, mips32, powerpc32) for glibc>=2.36. Fix https://github.com/llvm/llvm-project/issues/58079 Reviewed By: mgorny Differential Revision: https://reviews.llvm.org/D135023 (cherry picked from commit 6f46ff3765dcdc178b9cf52ebd8c03437806798a) | 3 年前 | |
[GWP-ASan] Add inbuilt options parser. Adds a modified options parser (shamefully pulled from Scudo, which shamefully pulled it from sanitizer-common) to GWP-ASan. This allows customers (Android) to parse options strings in a common way. Depends on D94117. AOSP side of these patches is staged at: - sepolicy (sysprops should only be settable by the shell, in both root and unrooted conditions): https://android-review.googlesource.com/c/platform/system/sepolicy/+/1517238 - zygote updates: https://android-review.googlesource.com/c/platform/frameworks/base/+/1515009 - bionic changes to add gwp_asan.<process_name> system property, and GWP_ASAN_OPTIONS environment variable: https://android-review.googlesource.com/c/platform/bionic/+/1514989 Reviewed By: eugenis Differential Revision: https://reviews.llvm.org/D92696 | 5 年前 | |
[Sanitizer][Darwin] Cleanup MaybeReexec() function and usage While investigating another issue, I noticed that MaybeReexec() never actually "re-executes via execv()" anymore. DyldNeedsEnvVariable() only returned true on macOS 10.10 and below. Usually, I try to avoid "unnecessary" cleanups (it's hard to be certain that there truly is no fallout), but I decided to do this one because: * I initially tricked myself into thinking that MaybeReexec() was relevant to my original investigation (instead of being dead code). * The deleted code itself is quite complicated. * Over time a few other things were mushed into MaybeReexec(): initializing MonotonicNanoTime(), verifying interceptors are working, and stripping the DYLD_INSERT_LIBRARIES env var to avoid problems when forking. * This platform-specific thing leaked into sanitizer_common.h. * The ReexecDisabled() config nob relies on the "strong overrides weak pattern", which is now problematic and can be completely removed. * ReexecDisabled() actually hid another issue with interceptors not working in unit tests. I added an explicit verify_interceptors (defaults to true) option instead. Differential Revision: https://reviews.llvm.org/D129157 | 3 年前 | |
[compiler-rt] NFC: Fix trivial typo Reviewed By: xgupta Differential Revision: https://reviews.llvm.org/D77457 | 4 年前 | |
Remove references to old mailing lists that have moved to discourse. Replace with links to discourse. Reviewed By: #libc_abi, ldionne Differential Revision: https://reviews.llvm.org/D129675 | 3 年前 | |
NFC: .clang-tidy: Inherit configs from parents to improve maintainability In the interests of disabling misc-no-recursion across LLVM (this seems like a stylistic choice that is not consistent with LLVM's style/development approach) this NFC preliminary change adjusts all the .clang-tidy files to inherit from their parents as much as possible. This change specifically preserves all the quirks of the current configs in order to make it easier to review as NFC. I validatad the change is NFC as follows: for X in cat ../files.txt; do mkdir -p ../tmp/$(dirname $X) touch $(dirname $X)/blaikie.cpp clang-tidy -dump-config $(dirname $X)/blaikie.cpp > ../tmp/$(dirname $X)/after rm $(dirname $X)/blaikie.cpp done (similarly for the "before" state, without this patch applied) for X in cat ../files.txt; do echo $X diff \ ../tmp/$(dirname $X)/before \ <(cat ../tmp/$(dirname $X)/after \ | sed -e "s/,readability-identifier-naming\(.*\),-readability-identifier-naming/\1/" \ | sed -e "s/,-llvm-include-order\(.*\),llvm-include-order/\1/" \ | sed -e "s/,-misc-no-recursion\(.*\),misc-no-recursion/\1/" \ | sed -e "s/,-clang-diagnostic-\*\(.*\),clang-diagnostic-\*/\1/") done (using sed to strip some add/remove pairs to reduce the diff and make it easier to read) The resulting report is: .clang-tidy clang/.clang-tidy 2c2 < Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,clang-diagnostic-*,llvm-*,misc-*,-misc-unused-parameters,-misc-non-private-member-variables-in-classes,-readability-identifier-naming,-misc-no-recursion' --- > Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,clang-diagnostic-*,llvm-*,misc-*,-misc-unused-parameters,-misc-non-private-member-variables-in-classes,-misc-no-recursion' compiler-rt/.clang-tidy 2c2 < Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,clang-diagnostic-*,llvm-*,-llvm-header-guard,misc-*,-misc-unused-parameters,-misc-non-private-member-variables-in-classes' --- > Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,clang-diagnostic-*,llvm-*,misc-*,-misc-unused-parameters,-misc-non-private-member-variables-in-classes,-llvm-header-guard' flang/.clang-tidy 2c2 < Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,llvm-*,-llvm-include-order,misc-*,-misc-no-recursion,-misc-unused-parameters,-misc-non-private-member-variables-in-classes' --- > Checks: 'clang-diagnostic-*,clang-analyzer-*,-*,llvm-*,misc-*,-misc-unused-parameters,-misc-non-private-member-variables-in-classes,-llvm-include-order,-misc-no-recursion' flang/include/flang/Lower/.clang-tidy flang/include/flang/Optimizer/.clang-tidy flang/lib/Lower/.clang-tidy flang/lib/Optimizer/.clang-tidy lld/.clang-tidy lldb/.clang-tidy llvm/tools/split-file/.clang-tidy mlir/.clang-tidy The clang/.clang-tidy change is a no-op, disabling an option that was never enabled. The compiler-rt and flang changes are no-op reorderings of the same flags. (side note, the .clang-tidy file in parallel-libs is broken and crashes clang-tidy because it uses "lowerCase" as the style instead of "lower_case" - so I'll deal with that separately) Differential Revision: https://reviews.llvm.org/D103842 | 4 年前 | |
Add .pyc files to .gitignore to compiler-rt During testing .pyc temporary files appear, which may be annoying. Did not change SVN ignore, as it was heavily out of sync with GIT one. Differential Revision: D35815 llvm-svn: 308931 | 8 年前 | |
feat: sync dev to main Signed-off-by: weinw <weiningwei@h-partners.com> | 1 个月前 | |
CODE_OWNERS: update information for builtins Mark myself as the code owner for the builtins library as per the discussion at https://discourse.llvm.org/t/code-owner-for-compiler-rt-builtins-library. Differential Revision: https://reviews.llvm.org/D124263 Reviewed By: aaron.ballman, lattner | 4 年前 | |
Add Guan-Hong Liu. llvm-svn: 211009 | 11 年前 | |
Fix typos throughout the license files that somehow I and my reviewers all missed! Thanks to Alex Bradbury for pointing this out, and the fact that I never added the intended legacy anchor to the developer policy. Add that anchor too. With hope, this will cause the links to all resolve successfully. llvm-svn: 351731 | 7 年前 | |
Moved the builtins documentation to lib/builtins/ And fixed typos in the ASan readme. Differential Revision: http://reviews.llvm.org/D3927 llvm-svn: 209778 | 11 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 5 个月前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 1 个月前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 4 年前 | ||
| 8 年前 | ||
| 1 个月前 | ||
| 4 年前 | ||
| 11 年前 | ||
| 7 年前 | ||
| 11 年前 |