Quuxplusone / LLVMBugzillaTest

0 stars 0 forks source link

clang-cl crash running pass 'Frontend instrumentation-based coverage lowering' on module llvm\lib\Support\Parallel.cpp #43776

Open Quuxplusone opened 4 years ago

Quuxplusone commented 4 years ago
Bugzilla Link PR44806
Status NEW
Importance P release blocker
Reported by Grzegorz (Gregory) Lindemann (lgregory@o2.pl)
Reported on 2020-02-05 13:54:43 -0800
Last modified on 2020-02-10 11:21:37 -0800
Version 10.0
Hardware PC Windows NT
CC heavenandhell171@gmail.com, llvm-bugs@lists.llvm.org, neeilans@live.com, richard-llvm@metafoo.co.uk, rnk@google.com
Fixed by commit(s)
Attachments TEMP.ZIP (705606 bytes, application/x-zip-compressed)
Blocks
Blocked by
See also
Created attachment 23094
.sh .cpp .dmp files

Assertion failed: !NodePtr->isKnownSentinel(), file
llvm\include\llvm/ADT/ilist_iterator.h, line 139

when LLVM_BUILD_INSTRUMENTED:STRING=IR
Quuxplusone commented 4 years ago

Attached TEMP.ZIP (705606 bytes, application/x-zip-compressed): .sh .cpp .dmp files

Quuxplusone commented 4 years ago
The attached crash reproducer doesn't reproduce for me locally.

One question I have is, why is /EHsc in the cflags? InstrProf didn't work with
Windows exception handling until very recently:
https://reviews.llvm.org/D73221
That change is not in the 10.0 release.

So, as a workaround, disable EH.
Quuxplusone commented 4 years ago
> InstrProf didn't work with Windows exception handling until very recently:
> https://reviews.llvm.org/D73221

Does this mean code coverage now works with Windows exceptions?
Quuxplusone commented 4 years ago
(In reply to Ivan Garramona from comment #2)
> > InstrProf didn't work with Windows exception handling until very recently:
> > https://reviews.llvm.org/D73221
>
> Does this mean code coverage now works with Windows exceptions?

I believe so, after that change, but I can't claim to have tested it.