Page MenuHomePhabricator

tellenbach (David Tellenbach)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 24 2019, 10:52 AM (38 w, 4 d)

Recent Activity

Today

tellenbach committed rG75434366cec1: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction (authored by tellenbach).
[AArch64] [FrameLowering] Allow conditional insertion of CFI instruction
Thu, Nov 21, 3:34 PM
tellenbach closed D70129: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction.
Thu, Nov 21, 3:34 PM · Restricted Project

Yesterday

tellenbach updated the diff for D70129: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction.

Address review comments.

Wed, Nov 20, 11:19 AM · Restricted Project
tellenbach added a comment to D70129: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction.

Ping.

Wed, Nov 20, 6:11 AM · Restricted Project
tellenbach planned changes to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Wed, Nov 20, 5:48 AM · Restricted Project
tellenbach reopened D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Wed, Nov 20, 5:48 AM · Restricted Project

Tue, Nov 12

tellenbach added a comment to D70129: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction.

@ostannard The CFI instruction that can be omitted using this patch is the reason for D69097 (Return address signing for outlined functions) to be buggy, hence I've added you as a reviewer.

Tue, Nov 12, 9:14 AM · Restricted Project
tellenbach created D70129: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction.
Tue, Nov 12, 9:04 AM · Restricted Project
tellenbach added reviewers for D70129: [AArch64] [FrameLowering] Allow conditional insertion of CFI instruction: t.p.northover, ostannard.
Tue, Nov 12, 9:04 AM · Restricted Project

Fri, Nov 1

tellenbach added a comment to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

@ostannard wow, good catch! Thanks for reverting this.

Fri, Nov 1, 3:02 PM · Restricted Project
tellenbach accepted D69185: [AArch64] Output the pseudo SPACE in asm and object files.

LGTM, thanks!

Fri, Nov 1, 6:26 AM · Restricted Project
tellenbach added inline comments to D69446: [llvm][MachineOutliner] Add support for repeating machine outliner N times. .
Fri, Nov 1, 5:05 AM · Restricted Project
tellenbach added a reviewer for D69446: [llvm][MachineOutliner] Add support for repeating machine outliner N times. : tellenbach.
Fri, Nov 1, 3:59 AM · Restricted Project
tellenbach added a comment to D69446: [llvm][MachineOutliner] Add support for repeating machine outliner N times. .

I'd actually prefer an option outliner-runs that is defaulted to 1 rather than a rerun option. From a user perspective I'd be unclear for me what outliner-reruns=0 means? Does that mean one run or zero?

Fri, Nov 1, 3:59 AM · Restricted Project

Thu, Oct 31

tellenbach committed rG55314d323738: [MachineOutliner][NFC] Fix FileCheck regex in two of test-cases (authored by tellenbach).
[MachineOutliner][NFC] Fix FileCheck regex in two of test-cases
Thu, Oct 31, 7:23 AM

Wed, Oct 30

tellenbach committed rGfbe7f5e9729a: [NFC][MachineOutliner] Fix typo in comment (authored by tellenbach).
[NFC][MachineOutliner] Fix typo in comment
Wed, Oct 30, 9:30 AM
tellenbach committed rG70caa1fc30c3: [AArch64][MachineOutliner] Return address signing for outlined functions (authored by tellenbach).
[AArch64][MachineOutliner] Return address signing for outlined functions
Wed, Oct 30, 8:25 AM
tellenbach closed D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Wed, Oct 30, 8:25 AM · Restricted Project
tellenbach committed rG67474c60d344: [compiler-rt] libhwasan interceptor ABI intercept longjmp/setjmp (authored by tellenbach).
[compiler-rt] libhwasan interceptor ABI intercept longjmp/setjmp
Wed, Oct 30, 7:10 AM
tellenbach closed D69045: libhwasan interceptor ABI intercept longjmp/setjmp.
Wed, Oct 30, 7:10 AM · Restricted Project, Restricted Project
tellenbach added a comment to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Thanks for the great review!

Wed, Oct 30, 3:45 AM · Restricted Project

Tue, Oct 29

tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
  • Disable outlining for functions that disagree on their v8.3A feature support
  • Add a test for the above bullet point
Tue, Oct 29, 10:26 AM · Restricted Project
tellenbach added inline comments to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Tue, Oct 29, 9:30 AM · Restricted Project
tellenbach added inline comments to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Tue, Oct 29, 8:53 AM · Restricted Project
tellenbach added a reviewer for D69417: [ADT] add equality operator for SmallSet: tellenbach.
Tue, Oct 29, 8:07 AM · Restricted Project
tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
  • Improve support for v8.3a signing instructions
  • Add tests
  • Address review comments
  • Moved signing logic into separate function
Tue, Oct 29, 8:02 AM · Restricted Project
tellenbach added inline comments to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Tue, Oct 29, 6:43 AM · Restricted Project

Mon, Oct 28

tellenbach committed rGe3a45a24d107: [ARM][Thumb2InstrInfo] Fix default `0` opcode when rewriting frame indices (authored by tellenbach).
[ARM][Thumb2InstrInfo] Fix default `0` opcode when rewriting frame indices
Mon, Oct 28, 12:00 PM
tellenbach closed D69432: [ARM][Thumb2InstrInfo]: fix default '0' opcode when rewriting frame indeces.
Mon, Oct 28, 12:00 PM · Restricted Project
tellenbach added a comment to D69482: [MachineOuliner][NFC] Refactoring code to make outline rerunning a cleaner diff..

Maybe I just don't see it but I don't get the reason for creating this new function doOutline. Doesn't it basically just call outline? Why can't you just add OutlinedFunctionNum to outline and then call outline in runOnModule?

Please be so kind to clarify this.

It’s possible to get greater size reduction through rerunning the outliner repeatedly. I and a couple other folks were looking into this and I noticed that much of the change could be refactored into an nfc change which is preferable.

Mon, Oct 28, 10:46 AM · Restricted Project
tellenbach added a comment to D69482: [MachineOuliner][NFC] Refactoring code to make outline rerunning a cleaner diff..

Maybe I just don't see it but I don't get the reason for creating this new function doOutline. Doesn't it basically just call outline? Why can't you just add OutlinedFunctionNum to outline and then call outline in runOnModule?

Mon, Oct 28, 10:37 AM · Restricted Project
tellenbach accepted D69432: [ARM][Thumb2InstrInfo]: fix default '0' opcode when rewriting frame indeces.

Thanks for addressing the comments, LGTM!

Mon, Oct 28, 4:43 AM · Restricted Project
tellenbach accepted D69429: [ADT] Adds equality operator for SmallPtrSet.

Thanks for addressing the comments, LGTM.

Mon, Oct 28, 3:15 AM · Restricted Project

Fri, Oct 25

tellenbach added a reviewer for D69432: [ARM][Thumb2InstrInfo]: fix default '0' opcode when rewriting frame indeces: tellenbach.
Fri, Oct 25, 9:48 AM · Restricted Project
tellenbach added inline comments to D69432: [ARM][Thumb2InstrInfo]: fix default '0' opcode when rewriting frame indeces.
Fri, Oct 25, 8:06 AM · Restricted Project
tellenbach added inline comments to D69429: [ADT] Adds equality operator for SmallPtrSet.
Fri, Oct 25, 7:19 AM · Restricted Project
tellenbach added a reviewer for D69429: [ADT] Adds equality operator for SmallPtrSet: tellenbach.
Fri, Oct 25, 7:19 AM · Restricted Project
tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Add test for outlined thunk

Fri, Oct 25, 4:20 AM · Restricted Project
tellenbach added a reviewer for D69185: [AArch64] Output the pseudo SPACE in asm and object files: tellenbach.
Fri, Oct 25, 2:20 AM · Restricted Project
tellenbach added inline comments to D69185: [AArch64] Output the pseudo SPACE in asm and object files.
Fri, Oct 25, 2:19 AM · Restricted Project

Thu, Oct 24

tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Add .mir test for MachineOutlinerRegSave

Thu, Oct 24, 10:09 AM · Restricted Project
tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
  • Fix determination of signing scope equality
  • Add comments
Thu, Oct 24, 8:49 AM · Restricted Project
tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
  • Make test more generic
  • If a function has no "sign-return-address" attribute, its signing behaviour is equivalent to a function with the "sign-return-address"="none" attribute
Thu, Oct 24, 8:36 AM · Restricted Project
tellenbach committed rG6d11abfe3507: [compiler-rt] Expose __hwasan_tag_mismatch_stub (authored by tellenbach).
[compiler-rt] Expose __hwasan_tag_mismatch_stub
Thu, Oct 24, 3:31 AM
tellenbach committed rG93aec861f529: Revert "Expose __hwasan_tag_mismatch_stub" (authored by tellenbach).
Revert "Expose __hwasan_tag_mismatch_stub"
Thu, Oct 24, 3:19 AM
tellenbach added a reverting change for rG612eadb7bc06: Expose __hwasan_tag_mismatch_stub: rG93aec861f529: Revert "Expose __hwasan_tag_mismatch_stub".
Thu, Oct 24, 3:19 AM
tellenbach committed rG612eadb7bc06: Expose __hwasan_tag_mismatch_stub (authored by tellenbach).
Expose __hwasan_tag_mismatch_stub
Thu, Oct 24, 3:08 AM
tellenbach closed D69113: Expose __hwasan_tag_mismatch_stub.
Thu, Oct 24, 3:07 AM · Restricted Project, Restricted Project

Oct 22 2019

tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Remove braces after if-stmt

Oct 22 2019, 3:07 AM · Restricted Project
tellenbach added inline comments to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Oct 22 2019, 2:58 AM · Restricted Project
tellenbach added a comment to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

I think this needs some more tests. In particular, I'd like to see some test cases that show what happens when

  • We tail call
  • We save LR to the stack
  • We don't save LR to the stack (but emit a bl)
  • We get an outlined thunk

I agree, thanks.

Oct 22 2019, 2:49 AM · Restricted Project
tellenbach added inline comments to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Oct 22 2019, 2:39 AM · Restricted Project
tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Changes to address some of Jessica's comments

Oct 22 2019, 2:39 AM · Restricted Project

Oct 21 2019

tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Fix number of instructions needed for return address signing

Oct 21 2019, 6:45 AM · Restricted Project
tellenbach updated the diff for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

Update patch (see Oliver's comments)

Oct 21 2019, 6:16 AM · Restricted Project

Oct 17 2019

tellenbach added a comment to D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.

It looks like you're emitting PAC instructions but not AUT, so I'd expect this to fault when the outlined function returns. Or is some other code already returning using RETAA/RETAB? In which case, the test should check that.

Yep! AUT instructions are inserted during epilogue emission (again frame lowering). I'll fix that.

Oct 17 2019, 6:12 AM · Restricted Project
tellenbach added a comment to D69104: [Arm][libsanitizer] Fix arm libsanitizer failure with bleeding edge glibc.

Please update the patch with more context, i.e., run git diff -U99999 or something similar. See https://llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface

Oct 17 2019, 5:16 AM · Restricted Project, Restricted Project
tellenbach added reviewers for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions: paquette, t.p.northover.
Oct 17 2019, 4:11 AM · Restricted Project
tellenbach added a reviewer for D69097: [AArch64][MachineOutliner] Return address signing for outlined functions: olista01.
Oct 17 2019, 4:11 AM · Restricted Project
tellenbach created D69097: [AArch64][MachineOutliner] Return address signing for outlined functions.
Oct 17 2019, 4:01 AM · Restricted Project

Oct 10 2019

tellenbach added a comment to D68076: [AArch64] Enable unwind tables by default for Gnu targets.

This patch would fix PR37240 but is probably not the most optimal solution. For other ideas see http://lists.llvm.org/pipermail/llvm-dev/2019-September/135433.html. I'll leave this patch open until other possibilities have been accepted or abandoned and will abandon or fix this patch then.

Oct 10 2019, 3:37 AM · Restricted Project
tellenbach abandoned D68639: [MachineScheduler] Add a flag to enable scheduling of cfi instructions.

Thanks for your comments. Since I don't think changing instruction scheduling can fix the problem anymore I abandon this revision.

Oct 10 2019, 3:37 AM · Restricted Project

Oct 8 2019

tellenbach updated the diff for D68639: [MachineScheduler] Add a flag to enable scheduling of cfi instructions.

Move test for scheduling boundaries into return statement

Oct 8 2019, 9:22 AM · Restricted Project
tellenbach added a comment to D68639: [MachineScheduler] Add a flag to enable scheduling of cfi instructions.

I've not looked to closely yet, but isn't that basically the same we do for debug values? If that's the case, I think we should consider unifying the code to handle debug & CFI. Specifically, would it be possible to just extend the current handling of debug instructions to also handle CFI instructions? That should some renaming and a few code changes. I think.

Oct 8 2019, 7:29 AM · Restricted Project
tellenbach added reviewers for D68639: [MachineScheduler] Add a flag to enable scheduling of cfi instructions: t.p.northover, vsk, probinson.
Oct 8 2019, 7:01 AM · Restricted Project
tellenbach updated the summary of D68639: [MachineScheduler] Add a flag to enable scheduling of cfi instructions.
Oct 8 2019, 7:01 AM · Restricted Project
tellenbach created D68639: [MachineScheduler] Add a flag to enable scheduling of cfi instructions.
Oct 8 2019, 6:51 AM · Restricted Project

Sep 26 2019

tellenbach added a comment to D68076: [AArch64] Enable unwind tables by default for Gnu targets.

This would fix PR37240

Sep 26 2019, 9:30 AM · Restricted Project
tellenbach added a comment to D68076: [AArch64] Enable unwind tables by default for Gnu targets.

Please also see the ongoing discussion on the mailing list: http://lists.llvm.org/pipermail/llvm-dev/2019-September/135433.html

Sep 26 2019, 9:21 AM · Restricted Project
tellenbach created D68076: [AArch64] Enable unwind tables by default for Gnu targets.
Sep 26 2019, 2:44 AM · Restricted Project

Sep 20 2019

tellenbach committed rL372406: Request commit access for tellenbach.
Request commit access for tellenbach
Sep 20 2019, 8:42 AM
tellenbach committed rG2a47c77e720a: [FastISel] Fix insertion of unconditional branches during FastISel (authored by tellenbach).
[FastISel] Fix insertion of unconditional branches during FastISel
Sep 20 2019, 6:26 AM
tellenbach committed rL372389: [FastISel] Fix insertion of unconditional branches during FastISel.
[FastISel] Fix insertion of unconditional branches during FastISel
Sep 20 2019, 6:26 AM
tellenbach closed D67703: Insertion of unconditional branch during FastISel differs when debug information is enabled.
Sep 20 2019, 6:26 AM · Restricted Project
tellenbach committed rG0ecf34dde390: [NFC] Test commit, deleting some whitespace (authored by tellenbach).
[NFC] Test commit, deleting some whitespace
Sep 20 2019, 2:44 AM
tellenbach committed rL372379: [NFC] Test commit, deleting some whitespace.
[NFC] Test commit, deleting some whitespace
Sep 20 2019, 2:44 AM

Sep 18 2019

tellenbach retitled D67703: Insertion of unconditional branch during FastISel differs when debug information is enabled from Insertion of unconditional branch during FastISel when debug information is enabled to Insertion of unconditional branch during FastISel differs when debug information is enabled.
Sep 18 2019, 6:23 AM · Restricted Project
tellenbach created D67703: Insertion of unconditional branch during FastISel differs when debug information is enabled.
Sep 18 2019, 6:19 AM · Restricted Project