erichkeane added a comment.

In D142401#4096478 <https://reviews.llvm.org/D142401#4096478>, @aaron.ballman 
wrote:

> In D142401#4082356 <https://reviews.llvm.org/D142401#4082356>, @cor3ntin 
> wrote:
>
>> In D142401#4074959 <https://reviews.llvm.org/D142401#4074959>, @shafik wrote:
>>
>>> I could not find any tests that test for this warning.
>>
>> I'm unable to trigger the warning at all. I feel i should but just using 
>> that function resolves the crash, probably because it allocates more stack 
>> in a separate thread, and there is actually some code that avoids marking 
>> the same object used twice.
>> But the warning might still trigger on some platform, so i suspect the test 
>> i added might, sometimes, trigger a warning. I'm not exactly sure how to 
>> handle that
>
> Tests for stack space are always really challenging because triggering the 
> failure is so system specific. We only have one test for it 
> (`test/SemaTemplate/stack-exhaustion.cpp`)
>
> But do we need to run these on separate threads in all of those places to 
> address the issue?
>
> "and there is actually some code that avoids marking the same object used 
> twice." makes me wonder if we're missing an early return somewhere that would 
> reduce stack usage more and avoid needing to spin up threads for this. (The 
> upside to this change is that the code compiles more often but the downside 
> is that we're not addressing the memory pressure issue, just kicking the can 
> down the road a bit.)

I agree for the most part, but the 'runWithSufficientStackSpace' doesn't run in 
a separate thread, it just wraps it in a function that makes our diagnostic for 
running out of memory better.  But I think you're right, we probably should 
have SOMETHING that lets us exit early or defer constructing the initializers 
or something.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D142401/new/

https://reviews.llvm.org/D142401

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to