-
Notifications
You must be signed in to change notification settings - Fork 385
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
DCE fails with assertion failure: Cannot call lookupMethod(init__V) on non-class #321
Comments
Thanks for the report. I will look into it within 36 hours (I'll be afk most of my Sunday). |
@sjrd I can still reproduce this after having published the latest master locally. |
(deleted previous comment:) ah, never mind my previous (deleted) comment. I confused myself with the various issues. |
Seems I really cannot reproduce this bug with the latest master/published version. Can you make sure you have a clean state (delete If the problem persists, can you enable |
Yes, thanks. All three flavours now work!
|
Excellent :-) |
Any idea why there's a difference between dev and pre-opt? Shouldn't pre-opt only eliminate dead code which should never be run anyway? |
Parse time + time to execute the code that defines the classes and their methods. |
The benchmark runner loads the code and does a couple of warmup runs before the actual timed execution. So the time spent parsing the JavaScript should not affect the execution time. My guess is the size of the internal representation of the program affects the execution time. |
While trying to upgrade the Scala.js Benchmarks project to 0.4-SNAPSHOT and the new DCE mechanism I ran into this issue in the new preoptimize phase.
The project has a trait which is used by the Tracer benchmark to execute the ray tracer from a web page. When I run
sbt deltablue/preoptimizeJS
I get the error found below.To reproduce you need to use the update-0.4-and-dce branch in the Scala.js Benchmarks project:
and then apply this change
If I convert the trait into an abstract class (as I did in the branch) the preoptimize step completes without an error.
NOTE I am using the 0.4-SNAPSHOT from http://repo.scala-js.org/repo/snapshots/ as I was not able to build scala-js master locally.
The text was updated successfully, but these errors were encountered: