-
Notifications
You must be signed in to change notification settings - Fork 105
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 proofs generic in cacheLineBits #814
base: master
Are you sure you want to change the base?
Changes from 1 commit
32d3eba
c376ee9
185995b
b19ef7b
2b3fa2e
29f8314
203aaa7
e335f1f
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -119,5 +119,15 @@ lemma maxIRQ_1_plus_eq_Suc_machine[simp]: | |
"unat (1 + maxIRQ :: machine_word) = Suc Kernel_Config.maxIRQ" | ||
by (simp add: Kernel_Config.maxIRQ_def) | ||
|
||
|
||
(* cacheLineBits conditions *) | ||
|
||
(* Folding cacheLineBits_val in C functions only works reliably if cacheLineBits is not 1 and | ||
not too large to conflict with other values used inside cache ops. | ||
10 is ptBits, which is only available after ExecSpec. Anything smaller than ptBits works. *) | ||
lemma cacheLineBits_sanity: | ||
"cacheLineBits \<in> {2..10}" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. would it make sense to say ptBits for these instead of the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. oh right, "which is only available after ExecSpec". Hmm. Nitpick: "anything smaller than" and "not 1" don't gel together well |
||
by (simp add: cacheLineBits_def Kernel_Config.CONFIG_L1_CACHE_LINE_SIZE_BITS_def) | ||
|
||
end | ||
end |
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.
This is a bit of a worry, since it's a purely syntactic restriction. What is the risk that the proofs will fail in the future due to the appearance of some other number that happens to be the same as cacheLineBits?