[all-commits] [llvm/llvm-project] 1c7674: [AArch64] Basic target(+crypto) handling
Owen via All-commits
all-commits at lists.llvm.org
Mon Apr 17 07:26:44 PDT 2023
Branch: refs/heads/release/16.x
Home: https://github.com/llvm/llvm-project
Commit: 1c76740cb3b9b89ed83a556325018c88a293dc63
https://github.com/llvm/llvm-project/commit/1c76740cb3b9b89ed83a556325018c88a293dc63
Author: David Green <david.green at arm.com>
Date: 2023-04-17 (Mon, 17 Apr 2023)
Changed paths:
A clang/test/CodeGen/aarch64-targetattr-crypto.c
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
Log Message:
-----------
[AArch64] Basic target(+crypto) handling
This adds some basic handling for target(+crypto) attributes. In this patch it
just enabled aes and sha2 regardless of the architecture revision, which
matches gccs implementation (and keeps the patch simple).
Differential Revision: https://reviews.llvm.org/D142135
(cherry picked from commit 43aa293aeaf04e8da50c3c531694444c0311e0c5)
Commit: ecbc5ca533cd45a0d9741c87ada3c5ce2cd18f9a
https://github.com/llvm/llvm-project/commit/ecbc5ca533cd45a0d9741c87ada3c5ce2cd18f9a
Author: zhanglimin <zhanglimin at loongson.cn>
Date: 2023-04-17 (Mon, 17 Apr 2023)
Changed paths:
A libunwind/test/unw_resume.pass.cpp
Log Message:
-----------
[libunwind][test] Add test to check for unw_resume()
This is here for local unwinding, which unw_resume() restores
the machine state and then directly resumes execution in the
target stack frame.
Reviewed By: wangleiat
Differential Revision: https://reviews.llvm.org/D147371
(cherry picked from commit 366c5474a3002114b8980ab278d93baa96046385)
Commit: 82432ac5cc7d824328a9b59d73cdbd3ca1e9a07d
https://github.com/llvm/llvm-project/commit/82432ac5cc7d824328a9b59d73cdbd3ca1e9a07d
Author: Weining Lu <luweining at loongson.cn>
Date: 2023-04-17 (Mon, 17 Apr 2023)
Changed paths:
M libunwind/src/UnwindRegistersRestore.S
M libunwind/test/unw_resume.pass.cpp
Log Message:
-----------
[libunwind][LoongArch] Restore $r1 before $r4 in `jumpto`
$ra should be restored before $a0, otherwise the baseaddress ($a0) would
be destroyed. See file `UnwindRegistersSave.S` for reference.
This also makes libcxx and libcxxabi regtest pass for the `-DLIBCXXABI_USE_LLVM_UNWINDER=ON` build.
Reviewed By: MaskRay, xen0n, #libunwind
Differential Revision: https://reviews.llvm.org/D147372
(cherry picked from commit ff0aabf14dfa0a369c38f6e267c56a83ee48d647)
Commit: bf80902fdd43eed5b7a4c401bccc0a06ceac582c
https://github.com/llvm/llvm-project/commit/bf80902fdd43eed5b7a4c401bccc0a06ceac582c
Author: Nick Desaulniers <ndesaulniers at google.com>
Date: 2023-04-17 (Mon, 17 Apr 2023)
Changed paths:
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/test/CodeGen/X86/stack-protector-2.ll
M llvm/test/CodeGen/X86/stack-protector-recursively.ll
Log Message:
-----------
[StackProtector] don't check stack protector before calling nounwind functions
https://reviews.llvm.org/rGd656ae28095726830f9beb8dbd4d69f5144ef821
introduced a additional checks before calling noreturn functions in
response to this security paper related to Catch Handler Oriented
Programming (CHOP):
https://download.vusec.net/papers/chop_ndss23.pdf
See also:
https://bugs.chromium.org/p/llvm/issues/detail?id=30
This causes stack canaries to be inserted in C code which was
unexpected; we noticed certain Linux kernel trees stopped booting after
this (in functions trying to initialize the stack canary itself).
https://github.com/ClangBuiltLinux/linux/issues/1815
There is no point checking the stack canary like this when exceptions
are disabled (-fno-exceptions or function is marked noexcept) or for C
code. The GCC patch for this issue does something similar:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=a25982ada523689c8745d7fb4b1b93c8f5dab2e7
Android measured a 2% regression in RSS as a result of d656ae280957 and
undid it globally:
https://android-review.googlesource.com/c/platform/build/soong/+/2524336
Reviewed By: xiangzhangllvm
Differential Revision: https://reviews.llvm.org/D147975
(cherry picked from commit fc4494dffa5422b2be5442c235554e76bed79c8a)
Commit: 70e4662aa4993f69a471bc2e274e7002fad74a02
https://github.com/llvm/llvm-project/commit/70e4662aa4993f69a471bc2e274e7002fad74a02
Author: Tobias Hieta <tobias at hieta.se>
Date: 2023-04-17 (Mon, 17 Apr 2023)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
Revert "[clang-format] Handle object instansiation in if-statements"
This reverts commit 70de684d44135b4025d92b2b36ad387cf5ab8b5a.
This causes a regression as described in #61785
(cherry picked from commit 104cd749f5cca609a79303c0dad22bc041b5448a)
Commit: 840ac8c52fd17cf5449f663674caf2064d95f6c4
https://github.com/llvm/llvm-project/commit/840ac8c52fd17cf5449f663674caf2064d95f6c4
Author: Owen Pan <owenpiano at gmail.com>
Date: 2023-04-17 (Mon, 17 Apr 2023)
Changed paths:
M clang/lib/Format/Format.cpp
M clang/unittests/Format/ConfigParseTest.cpp
Log Message:
-----------
[clang-format] Fix regression with AlignTrailingComments set to true
Fixes #62161.
Differential Revision: https://reviews.llvm.org/D148447
(cherry picked from commit 2bcfff6708d293abab87a4d5a1dff25950d55d91)
Compare: https://github.com/llvm/llvm-project/compare/b5aa566a7e53...840ac8c52fd1
More information about the All-commits
mailing list