-
Notifications
You must be signed in to change notification settings - Fork 193
Propagate arity between compilation units #1594
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
base: master
Are you sure you want to change the base?
Conversation
@vouillon, feel free to comment, review and even commit the branch. |
ffe3e43
to
c7c009b
Compare
ce02188
to
f8138d0
Compare
b17b2f0
to
1ed2368
Compare
14fe546
to
3821d45
Compare
@vouillon, I think we could merge this before we have the support merged inside dune. |
a160212
to
53d94b5
Compare
It increases to the time to build the toplevel in whole program compilation by ~10%. But we don't benefit from shapes in such case. |
The following command spends a lot of time in
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot reviewed 10 out of 29 changed files in this pull request and generated no comments.
Files not reviewed (19)
- compiler/bin-js_of_ocaml/build_fs.ml: Language not supported
- compiler/bin-js_of_ocaml/cmd_arg.ml: Language not supported
- compiler/bin-js_of_ocaml/cmd_arg.mli: Language not supported
- compiler/bin-js_of_ocaml/compile.ml: Language not supported
- compiler/lib/code.ml: Language not supported
- compiler/lib/code.mli: Language not supported
- compiler/lib/config.ml: Language not supported
- compiler/lib/config.mli: Language not supported
- compiler/lib/driver.ml: Language not supported
- compiler/lib/driver.mli: Language not supported
- compiler/lib/flow.ml: Language not supported
- compiler/lib/flow.mli: Language not supported
- compiler/lib/global_flow.ml: Language not supported
- compiler/lib/ocaml_compiler.ml: Language not supported
- compiler/lib/ocaml_compiler.mli: Language not supported
- compiler/lib/parse_bytecode.ml: Language not supported
- compiler/lib/pure_fun.ml: Language not supported
- compiler/lib/shape.ml: Language not supported
- compiler/lib/shape.mli: Language not supported
8e0d98f
to
e09ee29
Compare
2b1da6b
to
7e63f65
Compare
4c0bb73
to
ad6eb4d
Compare
@vouillon, I've rebased and updated the PR. The compilation time of partial-render-table increases by 20% because it no longer stabilizes after 7 rounds, it needs 13 but stops after 10 (because of I think the PR is ready for another round of review. |
55d96a4
to
39500e4
Compare
@hhugo is this only for whole-program compilation? |
This is mostly for separate compilation but it improves whole_program compilation as well it seems. |
The regression for partial-render-table is now fixed |
d634041
to
d5a8ad5
Compare
- Propagate shape information through the flow analysis
This reverts commit 9c0692f8af4d6fafdf0fc428f820cc9753897cc4.
@TyOverby, @rickyvetter, Would you mind testing this PR as well ? |
PoC for #550
TODOs/Questions: