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

make ARM+ARM_HYP proofs work for smaller irq_len #820

Merged
merged 2 commits into from
Dec 19, 2024
Merged

make ARM+ARM_HYP proofs work for smaller irq_len #820

merged 2 commits into from
Dec 19, 2024

Conversation

lsf37
Copy link
Member

@lsf37 lsf37 commented Sep 28, 2024

  • Remove remaining use of direct numeral related to irq_len. The lemma happened to work for irq_len >= 8, but not for smaller irq_len.

  • Improve sys-init example: the example assumes an irq type of at least 8 bits. Some AArch32 boards only use 7 bit. Use smaller numbers in the example so that the example happens to work on those boards as well.

@lsf37 lsf37 added the platforms making proofs generic in platform and config settings label Sep 28, 2024
@lsf37 lsf37 self-assigned this Sep 28, 2024
@lsf37 lsf37 requested a review from corlewis September 28, 2024 07:30
Comment on lines +302 to +304
(* if irq_len < 8, there may be an additional term in the goal *)
apply (rule conjI, word_eqI_solve)?
apply (word_eqI_solve dest: bit_imp_le_length)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, this is a clever way to handle this. Thanks for the comment, it would have been very confusing without it

Copy link
Member

@corlewis corlewis left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for missing this PR, looks good to me!

proof/crefine/ARM/Refine_C.thy Outdated Show resolved Hide resolved
The example assumes an irq type of at least 8 bits. Some AArch32 boards
only use 7 bit. Use smaller numbers in the example so that the example
happens to work on those boards as well.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
Remove remaining use of direct numeral related to irq_len. The lemma
happened to work for irq_len >= 8, but not for smaller irq_len.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
@lsf37 lsf37 merged commit 924780f into master Dec 19, 2024
14 checks passed
@lsf37 lsf37 deleted the irq-fixes branch December 19, 2024 03:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
platforms making proofs generic in platform and config settings
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants