-
Notifications
You must be signed in to change notification settings - Fork 79
Closed
Description
The IDL analysis passes like possible_exceptions are super slow. This is likely caused by a few things:
- They execute IDL code through the AST value() classes, and rely on ValueError exceptions to catch when values aren't known. That causes a lot of exceptions. We could get a substantial performance improvement by reporting unknown values a different way (converting to throw/catch would take the least amount of work. converting to explicitly checked return values would be best performance but code change)
- Value calculations are repeated a lot on AstNodes since the result is rarely cached. Caching would help.
- I think we could probably find ways to get an earlier out from some passes so there is less work done.
Metadata
Metadata
Assignees
Labels
No labels