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
2-argument FFI calls #313
Merged
2-argument FFI calls #313
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Nothing fancy; will revisit later to actually use the added argument.
Any changes to wordLang and lower in this commit is temporary nonsense that will be replaced by something real soon enough.
TODO: backend proofs
FFI calls now use four register arguments rather than two. Hence, calling conventions must agree with C calling conventions in the first four argument registers, rather than just the first two as previously.
Avoid write() since it's non-standard and unbuffered.
Without these, we get stuck in stack_to_labProof
The regression test seems still to be stuck around |
@SOwens might like to review the changes to the |
@xrchz I've been busy with other stuff so have dropped the ball on this for the last few days, sorry. Anyway, I'm a bit flummoxed by the failures; on my machine I get past mips_configProof. |
needed EXPLODE rewrite
Add IMPLODE_EXPLODE_I to FFI case
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Make FFI calls take two arguments -- one immutable string and one mutable bytearray --- rather than one as previously.
@tanyongkiam I tagged you as suggested reviewer because I've changed the register mappings for most architectures (to make them agree with C calling conventions in the first 4 args), but I have only tried out the generated binaries for x86. It would be reassuring if you could check that I haven't done anything obviously insane, and perhaps even check that the generated binaries for other architectures do not segfault :)