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

Lexical Error? #33

Open
selig opened this issue Jul 6, 2020 · 2 comments
Open

Lexical Error? #33

selig opened this issue Jul 6, 2020 · 2 comments

Comments

@selig
Copy link

selig commented Jul 6, 2020

Hi,

I want to explore the SMT translations produced by Sail for the CHERI Sail definitions. My starting point has been to try and get something running but I hit against the below error. I assume I'm doing something wrong (probably due to skipping some README somewhere) but would welcome a hint.

Thanks, Giles

Giless-Laptop:mips giles$ sail mips_prelude.sail mips_wrappers.sail mips_insts.sail mips_epilogue.sail
Lexical error:
[mips_prelude.sail]:339:14-14
339 | (word[31] ^^ 32) != word[63..32]
| ^
| Operator fixity undeclared ^^

@selig
Copy link
Author

selig commented Jul 6, 2020

I am using "Sail 0.13 (sail2 @ opam)" installed from opam

@bauereiss
Copy link
Contributor

That operator is declared in mips/prelude.sail. It might be useful to look at the Makefiles, which contain commands with the right files in the right order to generate different artifacts. In particular, there is the cheri128_smt target in the Makefile in the cheri directory, which generates SMT problems for the properties defined in the properties_128.sail file. It doesn't seem to work as is at the moment; I think that's because a recent change in the TLB code is not reflected in the mips_tlb_stubs.sail file. It works for me when changing the dependency of the Makefile target from $(CHERI128_NO_TLB_SAILS) to $(CHERI128_SAILS).

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

No branches or pull requests

2 participants