[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-25 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman closed this revision. LukeCheeseman added a comment. This was committed under 345273. (Forgot to mention the revision in the commit message) https://reviews.llvm.org/D51429 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http:

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-25 Thread Oliver Stannard via Phabricator via cfe-commits
olista01 accepted this revision. olista01 added a comment. This revision is now accepted and ready to land. LGTM, thanks! https://reviews.llvm.org/D51429 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/l

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-24 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman updated this revision to Diff 170869. https://reviews.llvm.org/D51429 Files: include/clang/Basic/DiagnosticDriverKinds.td include/clang/Driver/CC1Options.td include/clang/Driver/Options.td include/clang/Frontend/CodeGenOptions.def include/clang/Frontend/CodeGenOptions.h

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-17 Thread Oliver Stannard via Phabricator via cfe-commits
olista01 added inline comments. Comment at: lib/CodeGen/CGDeclCXX.cpp:364 if (RASignKind != CodeGenOptions::SignReturnAddressScope::None) + { Fn->addFnAttr("sign-return-address", LLVM style has the opening brace on the same line as the if. There's a git

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-12 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman updated this revision to Diff 169430. LukeCheeseman added a comment. - Stop parsing msign-return-address as a scope and key pair - pass bti value through to the CC1 driver and handle it, this adds the branch-target-enforce attribute to functions https://reviews.llvm.org/D51429 Fi

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-09 Thread Oliver Stannard via Phabricator via cfe-commits
olista01 added inline comments. Comment at: lib/Frontend/CompilerInvocation.cpp:1133 + if (Arg *A = Args.getLastArg(OPT_msign_return_address_EQ)) { +const auto SignScopeKey = StringRef(A->getValue()).split('+'); +StringRef SignScope = SignScopeKey.first;

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-01 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman added inline comments. Comment at: include/clang/Frontend/CodeGenOptions.h:117 + enum SignReturnAddressKeyValue { AKey, BKey }; + javed.absar wrote: > Perhaps a line of comment on each enum-value would be useful (much like the > code around). I'

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-01 Thread Javed Absar via Phabricator via cfe-commits
javed.absar added inline comments. Comment at: include/clang/Frontend/CodeGenOptions.h:117 + enum SignReturnAddressKeyValue { AKey, BKey }; + Perhaps a line of comment on each enum-value would be useful (much like the code around). https://reviews.llvm.org/

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-10-01 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman updated this revision to Diff 167723. LukeCheeseman added a comment. - Introduce the -mbranch-protection option. This is to be used for both pointer authentication and branch protection security features. - The branch protection compiler support will follow later - The options ava

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-09-14 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman updated this revision to Diff 165467. LukeCheeseman added a comment. - updated tests to check the default a_key attribute is included in functions that have the return address signing scope attribute - setting the return-address-sign-key attribute of global static constructors htt

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-09-13 Thread Oliver Stannard via Phabricator via cfe-commits
olista01 added a comment. This looks like it has the same problem as https://reviews.llvm.org/D51418 (doesn't get applied to C++ static constructor functions). Repository: rC Clang https://reviews.llvm.org/D51429 ___ cfe-commits mailing list cfe

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-09-12 Thread Sjoerd Meijer via Phabricator via cfe-commits
SjoerdMeijer added inline comments. Comment at: test/CodeGen/aarch64-sign-return-address.c:3 // RUN: %clang -target aarch64-arm-none-eabi -S -emit-llvm -o - -msign-return-address=non-leaf %s | FileCheck %s --check-prefix=CHECK-PARTIAL // RUN: %clang -target aarch64-arm-none-ea

[PATCH] D51429: [AArch64] Return Address Signing B Key Support

2018-08-29 Thread Luke Cheeseman via Phabricator via cfe-commits
LukeCheeseman created this revision. LukeCheeseman added reviewers: kcc, pcc, eugenis, vlad.tsyrklevich. Herald added a reviewer: javed.absar. Herald added subscribers: cfe-commits, kristof.beyls. - Add command line options for selecting the B key when enabling return address signing (also tidy u