-
Notifications
You must be signed in to change notification settings - Fork 45
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
Leakage traces #431
Open
OwenConoly
wants to merge
91
commits into
mit-plv:master
Choose a base branch
from
OwenConoly:leakage_traces
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Leakage traces #431
Changes from 71 commits
Commits
Show all changes
91 commits
Select commit
Hold shift + click to select a range
23ef95f
add LS.v
OwenConoly eb82e5e
modify LS.v
OwenConoly c697ba1
prettify MetricSemantics eval_expr
OwenConoly d921b46
add MetricLeakageSemantics
OwenConoly c2c9992
organize semantics-relation lemmas in MetricLeakageSemantics
OwenConoly 309a4b6
remove unneeded direction of eval_expr equivalence
OwenConoly 7ed12e9
all the desired relations between semantics
OwenConoly 16cb728
make build less noisy
OwenConoly 50f860c
create LWP
OwenConoly 29339e5
modify LeakageWeakestPrecondition.v
OwenConoly 99d33fe
add LWPP
OwenConoly a444868
modify LWPP.v
OwenConoly 61cb091
add LL.v
OwenConoly b2002f6
edit LL.v
OwenConoly f2e3144
add LPL
OwenConoly 16fccea
first pass on editing LPL
OwenConoly 8b30bfa
add kyber file. doesn't work, since straightline needs fixes
OwenConoly ba5b547
make kyberslash work
OwenConoly 13fba5a
remove garbage (Search commands, etc) from kyberslash proof
OwenConoly c9c9c57
update FlatImp to use MetricLeakageSemantics
OwenConoly bdcc388
add 'custom fixpoint' stuff. add comparison of Fix_eq and Fix_eq'.
OwenConoly 8db3172
add leakage function to DCEDef
OwenConoly 6ab1564
switch to using Fix instead of my_Fix.
OwenConoly b0dbeb7
switch to using Fix_eq' and get unstuck
OwenConoly 8b00511
start on DCE proof
OwenConoly 020ad0f
progress on DCE phase
OwenConoly 2838479
add pick_sp stuff to DCE trace transformation function
OwenConoly b02a304
finish updating DCE function
OwenConoly a486229
had an idea about how to simplify function
OwenConoly 3a221fb
DCE progress
OwenConoly 556d288
up to loop case
OwenConoly 9fe2d00
get stuck in sequence (and while) case. IH is no good!
OwenConoly d08e363
rewrite DCE function in CPS. need to decide how to prove fixpoint eq…
OwenConoly f5690fd
new version of Fix with dependent types as well as arbitrary equivale…
OwenConoly e142efe
all the variants of Fix_eq i could imagine wanting
OwenConoly 24bcc75
prove DCE leakage fixpoint equation
OwenConoly ed7fa64
write DCE proof with leakage (it works now, since leakage function is…
OwenConoly 98f7015
start adapting spilling phase to leakage
OwenConoly 2148f2c
fix align_trace tactic and move it to LeakageSemantics
OwenConoly 4de4f7e
finish adapting spilling proof to leakage traces
OwenConoly a9ad05f
switch from mit-plv riscv-coq to my fork, and then to the leakage tra…
OwenConoly 075038d
adapt FlattenExpr to leakage traces
OwenConoly 75ef583
add leakage traces to GoFlatToRiscv
OwenConoly 877c92f
add leakage traces to ForeverSafe, RunInstruction
OwenConoly 807f01c
add leakage to RiscvEventLoop
OwenConoly 5195e03
start on FlatToRiscvCommon
OwenConoly 5c8665d
add leakage transformation function for FlatToRiscv.
OwenConoly 0b99a61
rewrite leakage functions in FlatToRiscvDef to return list LeakageEvent
OwenConoly 376ec5a
add leakage traces to FlatToRiscvCommon
OwenConoly 8a01efb
add leakage to FlatToRiscvLiterals
OwenConoly 10fd526
add leakage to load_save_regs_correct
OwenConoly 542434d
start on Functions
OwenConoly 0682f92
finish compile_function_body_correct
OwenConoly c5ed5ad
finish call case
OwenConoly b50afb1
up to stackalloc case...
OwenConoly 55f4e95
up to while case
OwenConoly b75e11b
finish functions
OwenConoly 5cbb5df
leakage in UseImmediate
OwenConoly 5d18d3b
leakage in regalloc
OwenConoly e4efffd
add leakage to lower pipeline
OwenConoly 07dfe0e
some pipeline
OwenConoly 5eff275
get to dce_correct in pipeline...
OwenConoly 6235cd3
composed_compiler_correct
OwenConoly 2bc8edc
compiler_correct
OwenConoly f2f175c
memequal source level leakage prooof
OwenConoly 4f8d83e
hacky compiler_correct_wp
OwenConoly 5deac8a
MMIO compiler stuff
OwenConoly 01fdc8f
get to the point where I actually write the low-level spec of memequal
OwenConoly 6652114
prove memequal
OwenConoly 1cadb3d
make memequal basically axiom-free
OwenConoly 6764d5f
add ct.v
OwenConoly 23991bd
clean up most of pipeline.v
OwenConoly dc436a3
get rid of WeakenCall in Pipeline; use func/prop ext instead
OwenConoly a710ce7
more cleaning up pipeline. up to spilling_correct
OwenConoly 76f2c60
trying riscv_phase_correct
OwenConoly d99f342
hooray Pipeline compiles now
OwenConoly 35556b3
remove test_itauto (sam says it is not needed anymore)
OwenConoly 4e8bb1d
get rid of option_map lemmas
OwenConoly 21d12fa
FE310 leakage comment
OwenConoly f49da82
make some fixpoints local
OwenConoly 83a68f9
make ct.v use FE310CSemantics instead of BasicC32Semantics
OwenConoly 59c91fb
revert BasicC32Semantics to have no leakage traces
OwenConoly c1fbe27
start adapting examples using FE310 to work with leakage
OwenConoly 191b848
make leakage straightline work way better
OwenConoly dcc213f
fix straightline in a different way (still using letexists instead of…
OwenConoly fbbf64f
fixup leakage straightline.
OwenConoly 9250260
fnspec notations
OwenConoly fbe8100
leakage in LAN9250
OwenConoly b606efd
add fnspec_ex! notations for specifying constant-time
OwenConoly d1295c2
work on bedrock2Examples involving leakage (including using the
OwenConoly 8b44f61
make fnspec! exists notation more intuitive
OwenConoly File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
Oops, something went wrong.
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.
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 git-config change should not be merged, instead the relevant riscv-coq changes should be merged to its upstream.