-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Failure to compile (hang in effect_free
)
#6566
Comments
I started doing a |
Oh wait, I was too hasty to close: the reason it went away was that I had left the file in a state where I uncommented the
|
shorting the following line helps to isolate the issue:
we are inlining extremely far beyond the realm of reasonable amounts of inlining. the inliner is going to extremely great lengths (copying Exprs) to keep everything in a single line |
Thanks for the fix, Jameson. Are you saying that entire function was being inlined? In contrast to my well-known views about the importance of inlining |
it didn't hang, but would have taken several hours to finish. the compiler had created a one-liner with many tens (or hundreds) of thousands of expressions i altered the this is both a band-aid, and a correct solution. the |
Maybe we should have a size threshold for introducing temp vars for an expression. |
this inlining threshold seems to translates to approximately 8 expressions of low complexity, and about the same number of llvm instructions
For me, the following fails to compile:
If you uncomment the two lines that declare the arrays as
Float64
rather thanDual{Float64}
, then it compiles fine. (It gives aBoundsError
, but I'm not worried about that---this is a massively stripped-down example from the real code that triggered this.)When I include this file, it just hangs. If I then hit Ctrl-C, the error I get is
One thing I should add is that with earlier versions, as I was progressively removing code not needed to demonstrate this problem, I sometimes found that it would suddenly work if I re-included the file enough times. I haven't seen that with this version, but just FYI.
The text was updated successfully, but these errors were encountered: