Skip to content
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

Move MMIO.v #205

Closed
JasonGross opened this issue Dec 2, 2021 · 3 comments · Fixed by #206
Closed

Move MMIO.v #205

JasonGross opened this issue Dec 2, 2021 · 3 comments · Fixed by #206

Comments

@JasonGross
Copy link
Contributor

Unfortunately, the MMIO.v file that is extremely helpful for instantiating the compiler proof is in the compiler's "examples" folder, meaning we have to build all the examples from both bedrock2/bedrock2 and bedrock2/compiler. Could it be moved?

Originally posted by @jadephilipoom in mit-plv/fiat-crypto#1045 (comment)

@JasonGross
Copy link
Contributor Author

JasonGross commented Dec 2, 2021

This is actually a pretty big issue, and is causing fiat-crypto to fail on Coq's CI with

COQNATIVE /builds/coq/coq/_build_ci/fiat_crypto/rupicola/bedrock2/bedrock2/src/bedrock2Examples/lightbulb.vo
ocamlopt.opt got signal and exited
Error: Native compiler exited with status 2 (in case of stack overflow,
       increasing stack size (typicaly with "ulimit -s") often helps)

(c.f. zulip thread)
(We want the native compiler in fiat-crypto, but apparently native compilation is sort-of incompatible with bedrock2 examples?)

JasonGross added a commit to JasonGross/coq that referenced this issue Dec 2, 2021
The native compiler runs out of stack, it seems? c.f.
mit-plv/bedrock2#205
@andres-erbsen
Copy link
Contributor

i support moving this file out of examples to just compiler, and i imagine a change that even left a deprecated compat Export on the old path would be relatively painless. @samuelgruetter ?

@samuelgruetter
Copy link
Contributor

i support moving this file out of examples to just compiler, and i imagine a change that even left a deprecated compat Export on the old path would be relatively painless. @samuelgruetter ?

That sounds good, I guess if you move that file and then put just Require Export compiler.MMIO. in compilerExamples/MMIO.v, then every file that requires or imports compilerExamples.MMIO won't notice any difference?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants