Page MenuHomePhabricator

danielkiss (Daniel Kiss)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 3 2019, 7:48 AM (41 w, 6 d)

Recent Activity

Yesterday

danielkiss added inline comments to D77786: [AArch64] Add v8.5 Branch Target Identification support..
Mon, Sep 21, 2:20 PM · Unknown Object (Project), Restricted Project
danielkiss requested review of D88027: [libcxx] Add platforms and targets to available features..
Mon, Sep 21, 8:43 AM · Restricted Project
danielkiss accepted D87880: [libunwind] Combine dl_iterate_phdr codepaths for DWARF and EHABI.

LGTM, refactor looks correct. in case of _LIBUNWIND_ARM_EHABI the director of the iteration over the phdrs changed but that is fine.

Mon, Sep 21, 2:15 AM · Unknown Object (Project), Restricted Project

Fri, Sep 18

danielkiss added a comment to D85649: [AArch64] PAC/BTI code generation for LLVM generated functions.

I think error is fine because realistically linking modules with different BTI settings will result probably a binary that crash runtime anyway if BTI is on.
otherwise turning BTI on just of a subset of object is useless.

Fri, Sep 18, 9:43 AM · Restricted Project
danielkiss committed rG22b615a96593: [libunwind] Support for leaf function unwinding. (authored by danielkiss).
[libunwind] Support for leaf function unwinding.
Fri, Sep 18, 6:12 AM
danielkiss updated subscribers of D83573: [libunwind] Support for leaf function unwinding..

Sorry for the trouble for now the patch is reverted.
I you agre I will resubmit it with ; REQUIRES: x86_64-linux and then figure out the rest of the targets later.

Fri, Sep 18, 3:20 AM · Unknown Object (Project), Restricted Project
danielkiss added a reverting change for rG23bef7ee9923: [libunwind] Support for leaf function unwinding.: rG5831adb8c38f: Revert "[libunwind] Support for leaf function unwinding.".
Fri, Sep 18, 2:38 AM
danielkiss committed rG5831adb8c38f: Revert "[libunwind] Support for leaf function unwinding." (authored by danielkiss).
Revert "[libunwind] Support for leaf function unwinding."
Fri, Sep 18, 2:38 AM
danielkiss added a reverting change for D83573: [libunwind] Support for leaf function unwinding.: rG5831adb8c38f: Revert "[libunwind] Support for leaf function unwinding.".
Fri, Sep 18, 2:38 AM · Unknown Object (Project), Restricted Project

Thu, Sep 17

danielkiss added inline comments to D77786: [AArch64] Add v8.5 Branch Target Identification support..
Thu, Sep 17, 1:59 AM · Unknown Object (Project), Restricted Project

Wed, Sep 16

danielkiss committed rGf70baaf71f62: [AArch64] Add -mmark-bti-property flag. (authored by danielkiss).
[AArch64] Add -mmark-bti-property flag.
Wed, Sep 16, 4:21 PM
danielkiss added a reverting change for rG95e43f84b7b9: [AArch64] Add -mmark-bti-property flag.: rG60e244f82c1f: Revert "[AArch64] Add -mmark-bti-property flag.".
Wed, Sep 16, 4:21 PM
danielkiss committed rG60e244f82c1f: Revert "[AArch64] Add -mmark-bti-property flag." (authored by danielkiss).
Revert "[AArch64] Add -mmark-bti-property flag."
Wed, Sep 16, 4:21 PM
danielkiss added a reverting change for D81930: [AArch64] Add -mmark-bti-property flag.: rG60e244f82c1f: Revert "[AArch64] Add -mmark-bti-property flag.".
Wed, Sep 16, 4:21 PM · Restricted Project, Restricted Project
danielkiss committed rG95e43f84b7b9: [AArch64] Add -mmark-bti-property flag. (authored by danielkiss).
[AArch64] Add -mmark-bti-property flag.
Wed, Sep 16, 3:24 PM
danielkiss closed D81930: [AArch64] Add -mmark-bti-property flag..
Wed, Sep 16, 3:24 PM · Restricted Project, Restricted Project
danielkiss committed rG23bef7ee9923: [libunwind] Support for leaf function unwinding. (authored by danielkiss).
[libunwind] Support for leaf function unwinding.
Wed, Sep 16, 2:54 PM
danielkiss closed D83573: [libunwind] Support for leaf function unwinding..
Wed, Sep 16, 2:53 PM · Unknown Object (Project), Restricted Project
danielkiss updated the diff for D81251: [AArch64] Add BTI to CFI jumptables..

rebasing to the new patch series.

Wed, Sep 16, 1:56 PM · Restricted Project
danielkiss added inline comments to D81251: [AArch64] Add BTI to CFI jumptables..
Wed, Sep 16, 1:52 PM · Restricted Project
danielkiss updated the diff for D80791: [AArch64] Generate .note.gnu.property based on module flags..

Rebased top of D85649.

Wed, Sep 16, 9:18 AM · Restricted Project, Restricted Project
danielkiss updated the diff for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..

adding an option _LIBUNWIND_REMEMBER_HEAP to store the state on the heap.
I kept the default on the stack because it should be fine for most cases.

Wed, Sep 16, 7:58 AM
danielkiss accepted D85649: [AArch64] PAC/BTI code generation for LLVM generated functions.

LGTM

Wed, Sep 16, 3:51 AM · Restricted Project

Tue, Sep 15

danielkiss added a comment to D81930: [AArch64] Add -mmark-bti-property flag..

@nickdesaulniers Thanks for the review, comments are addressed.

Tue, Sep 15, 7:49 AM · Restricted Project, Restricted Project
danielkiss updated the diff for D81930: [AArch64] Add -mmark-bti-property flag..
Tue, Sep 15, 7:46 AM · Restricted Project, Restricted Project
danielkiss added inline comments to D83573: [libunwind] Support for leaf function unwinding..
Tue, Sep 15, 3:27 AM · Unknown Object (Project), Restricted Project
danielkiss updated the diff for D83573: [libunwind] Support for leaf function unwinding..
Tue, Sep 15, 3:26 AM · Unknown Object (Project), Restricted Project

Fri, Sep 11

danielkiss planned changes to D77565: [AArch64] Remove implicit landing pads..

I'll update this after other PAC/BTI patches got merged.

Fri, Sep 11, 8:53 AM · Restricted Project
danielkiss added reviewers for D81930: [AArch64] Add -mmark-bti-property flag.: nickdesaulniers, srhines, enh, rprichard.
Fri, Sep 11, 7:14 AM · Restricted Project, Restricted Project
danielkiss updated the diff for D83573: [libunwind] Support for leaf function unwinding..
Fri, Sep 11, 7:10 AM · Unknown Object (Project), Restricted Project
danielkiss added a comment to D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..

ping

Fri, Sep 11, 5:04 AM
danielkiss added reviewers for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation.: phosek, mstorsjo, steven_wu.
Fri, Sep 11, 5:03 AM

Fri, Sep 4

danielkiss added a comment to D75044: [AArch64] __builtin_return_address for PAuth..

@chill Could you check the latest update? I think it should be submitted with D84502 together.

Fri, Sep 4, 4:33 AM · Restricted Project, Restricted Project

Tue, Sep 1

danielkiss added inline comments to D81251: [AArch64] Add BTI to CFI jumptables..
Tue, Sep 1, 4:59 AM · Restricted Project
danielkiss added a comment to D85649: [AArch64] PAC/BTI code generation for LLVM generated functions.

I support the idea, once I proposed back then ( see D75181 )

Tue, Sep 1, 4:58 AM · Restricted Project

Sat, Aug 29

danielkiss planned changes to D81251: [AArch64] Add BTI to CFI jumptables..

I need to update it due to changes in the dependent patches.

Sat, Aug 29, 6:37 AM · Restricted Project
danielkiss updated the diff for D80791: [AArch64] Generate .note.gnu.property based on module flags..

Sync with D85649.

Sat, Aug 29, 6:35 AM · Restricted Project, Restricted Project
danielkiss abandoned D75181: [AArch64] Handle BTI/PAC in case of generated functions..

Abandoning in favour of D85649.

Sat, Aug 29, 5:41 AM · Restricted Project, Restricted Project
danielkiss added inline comments to D85649: [AArch64] PAC/BTI code generation for LLVM generated functions.
Sat, Aug 29, 5:38 AM · Restricted Project
danielkiss updated the diff for D81930: [AArch64] Add -mmark-bti-property flag..
Sat, Aug 29, 1:51 AM · Restricted Project, Restricted Project

Thu, Aug 27

danielkiss added a reviewer for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation.: Restricted Project.
Thu, Aug 27, 4:33 AM
danielkiss updated the diff for D75044: [AArch64] __builtin_return_address for PAuth..

updating tests too. check-llvm, check-clang passes.

Thu, Aug 27, 4:32 AM · Restricted Project, Restricted Project

Aug 13 2020

danielkiss added inline comments to D81930: [AArch64] Add -mmark-bti-property flag..
Aug 13 2020, 2:06 PM · Restricted Project, Restricted Project
danielkiss updated the diff for D81930: [AArch64] Add -mmark-bti-property flag..

Fix review comments.

Aug 13 2020, 2:04 PM · Restricted Project, Restricted Project
danielkiss updated the diff for D75044: [AArch64] __builtin_return_address for PAuth..

Always emit xpac* instructions as discussed in D84502.

Aug 13 2020, 4:35 AM · Restricted Project, Restricted Project

Aug 11 2020

danielkiss added a comment to D80791: [AArch64] Generate .note.gnu.property based on module flags..

it is not useful to have a bti annotated function unless everything else is bti compatible too: it is all or nothing per elf module.

This is false. Some functions in an elf module could be in a guarded region, some in a non-guarded region. Some function may always
be called in a "BTI-safe" way, which may be unknown to the compiler.

Aug 11 2020, 7:53 AM · Restricted Project, Restricted Project
danielkiss updated the diff for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..

And now uploading the new patch.

Aug 11 2020, 4:40 AM
danielkiss added inline comments to D83573: [libunwind] Support for leaf function unwinding..
Aug 11 2020, 4:35 AM · Unknown Object (Project), Restricted Project
danielkiss updated the diff for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..
Aug 11 2020, 4:31 AM

Aug 10 2020

danielkiss added inline comments to D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..
Aug 10 2020, 1:02 PM
danielkiss updated the diff for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..
Aug 10 2020, 12:59 PM
danielkiss added reviewers for D83573: [libunwind] Support for leaf function unwinding.: Restricted Project, compnerd, jgorbe.
Aug 10 2020, 11:09 AM · Unknown Object (Project), Restricted Project
danielkiss updated the diff for D83573: [libunwind] Support for leaf function unwinding..
Aug 10 2020, 11:07 AM · Unknown Object (Project), Restricted Project
danielkiss added a comment to D85644: AArch64: don't sign the return address in noreturn functions.

The produced code for the non return function might save an unsigned LR to the stack and that might be usable to craft a gadget IMHO. The probability is quite low but still.

Aug 10 2020, 9:52 AM · Restricted Project
danielkiss added a reviewer for D85644: AArch64: don't sign the return address in noreturn functions: danielkiss.
Aug 10 2020, 9:44 AM · Restricted Project

Aug 6 2020

danielkiss accepted D85412: [AArch64][NFC] require aarch64 support for hwasan test.

LGTM

Aug 6 2020, 5:03 AM · Restricted Project

Aug 5 2020

danielkiss added a comment to D84502: [AArch64][GlobalISel] Implement __builtin_return_address for PAC-RET.

XPACI could be emit when it is available, only the if (MF.getFunction().hasFnAttribute("sign-return-address")) { need do be dropped from the patches IMHO.

Aug 5 2020, 9:44 AM · Restricted Project
danielkiss added a comment to D75181: [AArch64] Handle BTI/PAC in case of generated functions..

FWIW GCC has a "sign-return-address" function attribute with a default value of "none". It is considered deprecated, however, in favour of "branch-protection"

This is just the internal representation, the function attribute in C/C++ source is the "branch-protection".

Aug 5 2020, 8:38 AM · Restricted Project, Restricted Project
danielkiss updated the diff for D80791: [AArch64] Generate .note.gnu.property based on module flags..

This version of the patch behaves as gcc for case when no function present and when function has -mbranch-protection attribute without compiler flag.
The logic should be in clang because in llvm we won't have enough information to handle these things. (see D75181)

Aug 5 2020, 2:30 AM · Restricted Project, Restricted Project

Aug 4 2020

danielkiss added a comment to D75181: [AArch64] Handle BTI/PAC in case of generated functions..

Would it be better to add a new value to "sign-return-address" as "none"? I don't see any other alternative option, I'm open to any other idea.

Aug 4 2020, 7:47 AM · Restricted Project, Restricted Project

Aug 3 2020

danielkiss added inline comments to D77786: [AArch64] Add v8.5 Branch Target Identification support..
Aug 3 2020, 5:24 AM · Unknown Object (Project), Restricted Project
danielkiss updated the diff for D77786: [AArch64] Add v8.5 Branch Target Identification support..

fix review comment.

Aug 3 2020, 5:23 AM · Unknown Object (Project), Restricted Project
danielkiss committed rG9c3f6fb68807: [libunwind] Make the test depend on the libunwind explicitly. (authored by danielkiss).
[libunwind] Make the test depend on the libunwind explicitly.
Aug 3 2020, 12:46 AM
danielkiss closed D85004: [libunwind] Make the test depend on the libunwind explicitly..
Aug 3 2020, 12:46 AM · Unknown Object (Project), Restricted Project

Jul 31 2020

danielkiss added a reviewer for D84502: [AArch64][GlobalISel] Implement __builtin_return_address for PAC-RET: danielkiss.
Jul 31 2020, 12:31 PM · Restricted Project
danielkiss added inline comments to D84502: [AArch64][GlobalISel] Implement __builtin_return_address for PAC-RET.
Jul 31 2020, 12:30 PM · Restricted Project
danielkiss added a comment to D84502: [AArch64][GlobalISel] Implement __builtin_return_address for PAC-RET.
Jul 31 2020, 12:24 PM · Restricted Project
danielkiss added a comment to D85004: [libunwind] Make the test depend on the libunwind explicitly..

Added here as I see:
https://github.com/llvm/llvm-project/blob/19bc9ea480b60b607a3e303f20c7a3a2ea553369/libcxxabi/test/CMakeLists.txt#L57

Jul 31 2020, 12:20 PM · Unknown Object (Project), Restricted Project
danielkiss added a comment to D85004: [libunwind] Make the test depend on the libunwind explicitly..

Thanks.
Cmake file of libcxxabi seems fine to me, it just needs -DLIBCXXABI_USE_LLVM_UNWINDER=YES.

Jul 31 2020, 10:17 AM · Unknown Object (Project), Restricted Project

Jul 30 2020

danielkiss added reviewers for D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation.: jgorbe, compnerd, lhames.
Jul 30 2020, 11:44 PM
danielkiss requested review of D85005: [libunwind] Support DW_CFA_remember/restore_state without heap allocation..
Jul 30 2020, 11:42 PM
danielkiss requested review of D85004: [libunwind] Make the test depend on the libunwind explicitly..
Jul 30 2020, 11:36 PM · Unknown Object (Project), Restricted Project

Jul 23 2020

danielkiss updated the diff for D75044: [AArch64] __builtin_return_address for PAuth..

fix review comments.

Jul 23 2020, 2:16 AM · Restricted Project, Restricted Project

Jul 22 2020

danielkiss added a comment to D84298: [AArch64] Fix operand definitions of XPACI/XPACD.

LGTM

Jul 22 2020, 2:51 AM · Restricted Project
danielkiss accepted D84298: [AArch64] Fix operand definitions of XPACI/XPACD.
Jul 22 2020, 2:51 AM · Restricted Project

Jul 21 2020

danielkiss added a comment to D80791: [AArch64] Generate .note.gnu.property based on module flags..

If any function has the attribute "sign-return-address", then the output note
section should have PAC bit set. The return address signing is completely local
to the function, and functions with or without return address signing can be
freely mixed with each other.

That is true PAC and non-PAC functions can be mixed.
Does one function makes the "all executable sections" pac-ret enabled?
BTW GNU_PROPERTY_AARCH64_FEATURE_1_PAC is not really used for anything.

Jul 21 2020, 9:23 AM · Restricted Project, Restricted Project

Jul 20 2020

danielkiss added a comment to D75044: [AArch64] __builtin_return_address for PAuth..

Patch for gcc is merged. https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=a70d5d81c41048556fd86eaa1036018a6bfba115

Jul 20 2020, 12:56 AM · Restricted Project, Restricted Project

Jul 10 2020

danielkiss planned changes to D83573: [libunwind] Support for leaf function unwinding..

This is a WIP patch, just shows my current thinking.

Jul 10 2020, 9:58 AM · Unknown Object (Project), Restricted Project
danielkiss created D83573: [libunwind] Support for leaf function unwinding..
Jul 10 2020, 9:57 AM · Unknown Object (Project), Restricted Project

Jul 6 2020

danielkiss added a comment to D77786: [AArch64] Add v8.5 Branch Target Identification support..

Ping.

Jul 6 2020, 5:50 AM · Unknown Object (Project), Restricted Project

Jul 1 2020

danielkiss committed rG070acb1d1e51: [Driver][ARM] parse version of arm/thumb architecture correctly (authored by danielkiss).
[Driver][ARM] parse version of arm/thumb architecture correctly
Jul 1 2020, 3:45 AM
danielkiss closed D75453: [Driver][ARM] parse version of arm/thumb architecture correctly.
Jul 1 2020, 3:44 AM · Restricted Project
danielkiss added a comment to D75453: [Driver][ARM] parse version of arm/thumb architecture correctly.

@j0le patch is landed but I just realised the review is still blocked by @compnerd. So it won't be closed I think, that is my bad.

Jul 1 2020, 3:44 AM · Restricted Project

Jun 29 2020

danielkiss added a comment to D80791: [AArch64] Generate .note.gnu.property based on module flags..

Might someone wish to disable PAC/BTI on an individual function, while having it on for the rest? I guess that would mean you can't call that function indirectly?

It would mean you can't call it _at all_, not just indirectly. :) Which is why I still think the warning is useful. Perhaps don't warn for the functions with the attribute?

Jun 29 2020, 1:01 PM · Restricted Project, Restricted Project
danielkiss added a comment to D80791: [AArch64] Generate .note.gnu.property based on module flags..

Function level attributes could set different attributes for functions. If function attribute is used then I assume the user know what he/she is doing so no need to emit a warning.
Maybe some would ensure the function is only directly called and never called indirectly by enforcing the branch-proctection=None or Pac-ret.
By default this warning shall not present anyway, especially for LLVM internals.

Jun 29 2020, 9:10 AM · Restricted Project, Restricted Project
danielkiss added a comment to D80791: [AArch64] Generate .note.gnu.property based on module flags..

This patch solve this too: https://bugs.llvm.org/show_bug.cgi?id=46480

Jun 29 2020, 1:02 AM · Restricted Project, Restricted Project

Jun 26 2020

danielkiss updated the diff for D77565: [AArch64] Remove implicit landing pads..
Jun 26 2020, 2:41 PM · Restricted Project

Jun 22 2020

danielkiss added inline comments to D77565: [AArch64] Remove implicit landing pads..
Jun 22 2020, 8:02 AM · Restricted Project
danielkiss updated the diff for D77565: [AArch64] Remove implicit landing pads..

Simplify the patch, rebased.

Jun 22 2020, 8:02 AM · Restricted Project
danielkiss added a comment to D75453: [Driver][ARM] parse version of arm/thumb architecture correctly.

@j0le, I will commit later this week for you.
@compnerd do you have any comment for this version?

Jun 22 2020, 3:43 AM · Restricted Project

Jun 19 2020

danielkiss added a reviewer for D81930: [AArch64] Add -mmark-bti-property flag.: kristof.beyls.
Jun 19 2020, 5:53 AM · Restricted Project, Restricted Project
danielkiss updated the diff for D81930: [AArch64] Add -mmark-bti-property flag..

Rename the flag to -mmark-bti-property

Jun 19 2020, 5:21 AM · Restricted Project, Restricted Project

Jun 18 2020

danielkiss added inline comments to D81746: [AArch64] Fix BTI instruction emission..
Jun 18 2020, 8:40 AM · Restricted Project
danielkiss planned changes to D77565: [AArch64] Remove implicit landing pads..

I'm going to refactor this and rebase on my other changes.

Jun 18 2020, 7:02 AM · Restricted Project
danielkiss planned changes to D81930: [AArch64] Add -mmark-bti-property flag..

I got some comment internally, the -mbti might suggest it enables the bti feature so I'm going to rename the flag to -mmark-bti-property.

Jun 18 2020, 7:02 AM · Restricted Project, Restricted Project

Jun 16 2020

danielkiss created D81930: [AArch64] Add -mmark-bti-property flag..
Jun 16 2020, 5:31 AM · Restricted Project, Restricted Project
danielkiss accepted D75453: [Driver][ARM] parse version of arm/thumb architecture correctly.

Sorry for the delay, it is okay to say "ping" after a while :)
LGTM

Jun 16 2020, 1:04 AM · Restricted Project

Jun 15 2020

danielkiss committed rGb8ae3fdfa579: [AArch64] Fix BTI instruction emission. (authored by danielkiss).
[AArch64] Fix BTI instruction emission.
Jun 15 2020, 6:29 AM
danielkiss closed D81746: [AArch64] Fix BTI instruction emission..
Jun 15 2020, 6:29 AM · Restricted Project
danielkiss updated the diff for D81746: [AArch64] Fix BTI instruction emission..

Patch rebased, now should apply clearly.

Jun 15 2020, 5:24 AM · Restricted Project