Page MenuHomePhabricator

ajpaverd (Andrew Paverd)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 20 2019, 2:18 AM (41 w, 5 d)

Recent Activity

Feb 25 2020

ajpaverd added a comment to D75047: Add Control Flow Guard in Clang release notes..

Do you have commits access, or would you like me to commit for you?

Feb 25 2020, 3:02 AM · Restricted Project

Feb 24 2020

ajpaverd created D75047: Add Control Flow Guard in Clang release notes..
Feb 24 2020, 5:55 AM · Restricted Project

Jan 10 2020

ajpaverd added a comment to D65761: Add Windows Control Flow Guard checks (/guard:cf)..

I have confirmed that the case I mentioned fails with rGd157a9b.

@ajpaverd, is a fix forthcoming for the issue I mentioned with this patch?

Jan 10 2020, 1:31 PM · Restricted Project, Restricted Project

Jan 8 2020

ajpaverd added a comment to D72167: Add support for __declspec(guard(nocf)).

Thanks for the feedback @aaron.ballman and @dmajor!

Jan 8 2020, 2:41 PM · Restricted Project, Restricted Project
ajpaverd updated the diff for D72167: Add support for __declspec(guard(nocf)).
  • Address comments
Jan 8 2020, 2:32 PM · Restricted Project, Restricted Project
ajpaverd updated the diff for D72167: Add support for __declspec(guard(nocf)).
  • Make guard_nocf an attribute of individual call instructions
Jan 8 2020, 6:16 AM · Restricted Project, Restricted Project

Jan 7 2020

ajpaverd added a comment to D72167: Add support for __declspec(guard(nocf)).

Thanks for doing this!

When I applied this patch and added __declspec(guard(nocf)) to the function that was giving us trouble, I still crashed with a CFG failure in the caller, since the nocf function was inlined. When I additionally marked that function as noinline, then the CFG checks were omitted, as desired. Is this behavior with respect to inlining expected?

You may want to mention "PR44096" in the commit message.

Jan 7 2020, 6:37 AM · Restricted Project, Restricted Project
ajpaverd added a comment to D72167: Add support for __declspec(guard(nocf)).

Can you please add some Sema tests that verify the attribute only appertains to functions, accepts the right number of arguments, etc? Also, some tests showing how this attribute works for things like redelcarations and virtual functions would help.

Jan 7 2020, 6:27 AM · Restricted Project, Restricted Project
ajpaverd updated the diff for D72167: Add support for __declspec(guard(nocf)).

Make guard_nocf an attribute of individual call instructions

Jan 7 2020, 6:18 AM · Restricted Project, Restricted Project

Jan 3 2020

ajpaverd added a comment to D65761: Add Windows Control Flow Guard checks (/guard:cf)..

Well, this patch specifically has code (even a test) that nocf_check prevents CFG, so it looks like the intent was there, it's just that there isn't a way to get that attribute onto functions from cpp in a CFG/non-CET world.

Jan 3 2020, 9:37 AM · Restricted Project, Restricted Project
ajpaverd created D72167: Add support for __declspec(guard(nocf)).
Jan 3 2020, 9:18 AM · Restricted Project, Restricted Project

Nov 19 2019

ajpaverd added a comment to D70413: [musttail] Don't forward incoming registers over call site registers.

Thanks for finding and fixing this @rnk! I've double-checked that Windows doesn't use AL for varargs (https://docs.microsoft.com/en-us/cpp/build/x64-calling-convention?view=vs-2019#varargs), but having a general mechanism for forwarding that doesn't assume a particular calling convention sounds like a good approach. This looks good from the control flow guard perspective.

Nov 19 2019, 10:34 AM · Restricted Project

Oct 23 2019

ajpaverd updated the diff for D65761: Add Windows Control Flow Guard checks (/guard:cf)..

Split cfguard_setjmp test into target-specific tests and add missing cfguard_longjmp pass for ARM and AArch64.

Oct 23 2019, 10:32 AM · Restricted Project, Restricted Project

Oct 21 2019

ajpaverd updated the summary of D65761: Add Windows Control Flow Guard checks (/guard:cf)..
Oct 21 2019, 2:23 PM · Restricted Project, Restricted Project
ajpaverd updated the diff for D65761: Add Windows Control Flow Guard checks (/guard:cf)..

Formatting fixes for CFGuard patch.

Oct 21 2019, 2:23 PM · Restricted Project, Restricted Project
ajpaverd updated the diff for D65761: Add Windows Control Flow Guard checks (/guard:cf)..

Final changes and tests suggested by @rnk.

Oct 21 2019, 12:59 PM · Restricted Project, Restricted Project

Oct 4 2019

ajpaverd added inline comments to D65761: Add Windows Control Flow Guard checks (/guard:cf)..
Oct 4 2019, 2:37 AM · Restricted Project, Restricted Project
ajpaverd added a comment to D65761: Add Windows Control Flow Guard checks (/guard:cf)..
In D65761#1660121, @rnk wrote:

Here is some feedback, I apologize for dragging my feet.

Also, I would really like to get feedback from @pcc. He's OOO currently, though.

Oct 4 2019, 1:35 AM · Restricted Project, Restricted Project
ajpaverd updated the diff for D65761: Add Windows Control Flow Guard checks (/guard:cf)..

Improved Control Flow Guard implementation.

Oct 4 2019, 1:25 AM · Restricted Project, Restricted Project

Aug 29 2019

ajpaverd added a comment to D65761: Add Windows Control Flow Guard checks (/guard:cf)..
In D65761#1646059, @rnk wrote:

I plan to take a look at this tomorrow, sorry for putting this off for a while. :(

Aug 29 2019, 8:19 AM · Restricted Project, Restricted Project

Aug 5 2019

ajpaverd added reviewers for D65761: Add Windows Control Flow Guard checks (/guard:cf).: thakis, rnk, theraven.
Aug 5 2019, 11:34 AM · Restricted Project, Restricted Project
ajpaverd created D65761: Add Windows Control Flow Guard checks (/guard:cf)..
Aug 5 2019, 11:21 AM · Restricted Project, Restricted Project