julia
bbdee0b2 - inlining: Don't inline concrete-eval'ed calls whose result was too large (#47371)

Commit
3 years ago
inlining: Don't inline concrete-eval'ed calls whose result was too large (#47371) This undoes some of the choices made in #47283 and #47305. As Shuhei correctly pointed out, even with the restriction to `nothrow`, adding the extra flags on the inlined statements results in incorrect IR. Also, my bigger motivating test case turns out to be insufficiently optimized without the effect_free flags (which I removed in the final revision of #47305). I think for the time being, the best course of action here is to just stop inlining concrete-eval'ed calls entirely. The const result is available for inference, so in most cases the call will get deleted. If there's an important case we care about where this does not happen, we should take a look at that separately.
Author
Parents
Loading