- User Since
- Apr 10 2020, 4:29 PM (7 w, 6 d)
update a couple of changes per David Majnemer's suggestion.
thank you David. will update and submit a new patch shortly.
Tue, Jun 2
Is there any feedback? thanks,
Hi, does this look good? or is there any other concern?
Tue, May 26
update LangRef.rst for new intrinsics
Fri, May 22
fixed tidy warnings
It may be helpful (even for the reviewers) to first specify their behavior,
instead of writing that after-the-fact "backwardly" based on the implementation.
Per Roman Lebedev's feedback, divide the patch into Clang and LLVM.
avoid lint warnings and lint hang on Windows
Thu, May 21
Wed, May 20
Fri, May 15
Wed, May 13
Hi, Is there more concern?
To re-iterate the implementation strategy of this change:
right, I noticed that too and looked into it further..
Per discussion in https://reviews.llvm.org/D79760 , x86 test case there failed.
I meant did you debug into the crash of your test case in https://bugs.llvm.org/show_bug.cgi?id=42266 ?
Tue, May 12
Did you get to the root of the bug and check the correctness of ctor&dtor ordering on your test cases?
Or you just tried to copy MSVC?
Is this the same bug as this patch, https://reviews.llvm.org/D79474/new/ , right?
Wed, May 6
thank you David, good eyes!
Is there any more concern?
fixed a comment.
the existing test case is fixed. I think there is no need to add one more unit test for this patch.
fix a typo in test case
May 3 2020
May 1 2020
I found you are the Code Owner of "Exception handling, Windows CodeGen, ARM EABI".
could you please provide a quick review here? thanks,
Apr 28 2020
any more concern or comment?
Apr 16 2020
right, thank you Reid. I see it now :
remade a patch after re-sync
Apr 15 2020
It can be greater than 2 because this Map includes Decls of User locals from parent.
see CodeGenFunction::EmitCapturedLocals() (the same place of this fix).
.. auto I = ParentCGF.LocalDeclMap.find(VD); if (I == ParentCGF.LocalDeclMap.end()) continue;
Replace F_HasSehAbnormalExits with F_HasExitSwitch
The fix there deals with SEH filter with SEH _finally parent where its prototype is FIXED (2 implicit parameters). It will never change.
Apr 14 2020
Do not use name comparison to locate parent's alloca of frame-pointer-addr.
search parent's LocalDeclMap instead.
Apr 13 2020
Remove hard-code name "frame-pointer".
get the name from 2nd Arg of the _finally().
Apr 12 2020
Per Eli's suggestion,
Use icmp (and zext) to check the JumpDest index, instead of directly passing the Index to _finally().
Fixed the format at comment lines
Add option -fms-extensions in test case
Apr 11 2020
Per Eli's feedbacks:
(1) a test case (windows-seh-abnormal-exit.c) is added under clang\test\CodeGen directory.
(2) an assert is added to catch the extremely rare case that the number of JumpDests in a function is greater than 255. The max. number of JumpDests is 1 (return) + 2*M + N, where M is the number of for/while-loops and N is the number of Goto targets.