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

Merge master into rt #828

Open
wants to merge 52 commits into
base: rt
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
ca3c72b
bump: make mcs-devel.xml available in bump script
lsf37 Jul 18, 2024
bf2d962
trivial: fix regexp string escape complaint
lsf37 Jul 18, 2024
5dd35d3
github: add mcs manifest deployment
lsf37 Jul 19, 2024
e9d4f78
ainvs: use "assms" in name for arch locales
Xaphiosis Jul 9, 2024
34dfa6c
lib: overhaul Requalify, add arch variants
Xaphiosis Jul 11, 2024
b1a9a70
docs: arch-split: requalifying into Arch locale
Xaphiosis Jul 9, 2024
bc948e3
lib: migrate Requalify tests into test/
Xaphiosis Jul 11, 2024
423e5d4
docs: arch-split: update approach
Xaphiosis Jul 23, 2024
0875edf
trivial: rename arch_split -> arch-split
Xaphiosis Jul 24, 2024
407bee8
README: adjust CI proof badges
lsf37 Jul 26, 2024
d80c831
github: factor out platform rebase into own workflow
lsf37 Jul 26, 2024
688b52f
arm-hyp: use ARM_HYP_A global prefix consistently in ASpec
Xaphiosis Jul 24, 2024
8f88ef9
arm+arm-hyp aspec: drop qualification from vgic_update_lr
Xaphiosis Aug 2, 2024
e2ea706
ainvs: global_naming -> arch_global_naming
Xaphiosis Jul 26, 2024
686fa68
ainvs: deploy arch_requalify infrastructure
Xaphiosis Jul 26, 2024
ac06eb4
ainvs+x64 refine: add missing arch_global_naming
Xaphiosis Jul 26, 2024
6870423
ainvs: move Arch theory requalifies to generic
Xaphiosis Jul 26, 2024
3c46df4
ainvs: disambiguate acap_rights_update_id
Xaphiosis Jul 23, 2024
e0360fb
machine+aspec: use arch_requalify commands
Xaphiosis Jul 24, 2024
2c2b127
aspec: global_naming -> arch_global_naming
Xaphiosis Jul 24, 2024
bdbfa7d
arm-hyp+aarch64: bring arch_check_irq into Arch locale
Xaphiosis Jul 26, 2024
fa97979
arm+arm-hyp: remove duplicated ASpec asid bit definitions
Xaphiosis Jul 24, 2024
2545cfe
ainvs: remove old arch-split FIXMEs
Xaphiosis Aug 2, 2024
0d07f4f
docs: use internet archive for isabelle.systems
Xaphiosis Aug 8, 2024
05941c2
machine: requalify more machine op consts and types
Xaphiosis Jul 31, 2024
5c5bd34
design m-skel: use arch_global_naming and arch_requalify
Xaphiosis Jul 30, 2024
723a7b6
design: deploy arch_requalify infrastructure
Xaphiosis Jul 30, 2024
e00f7b4
refine+crefine: update for arch_requalify design spec updates
Xaphiosis Jul 31, 2024
92971ee
lib: Requalify: enable ctrl+click jumps for arch_requalify
Xaphiosis Aug 20, 2024
a82a5b4
lib: Requalify: better document annotation
Xaphiosis Aug 27, 2024
53f44de
lib: Requalify_Test: add example of requalify-hide-requalify
Xaphiosis Aug 27, 2024
8228bf7
word_lib: shiftr is always less than max word
lsf37 Sep 1, 2024
40e0fb4
haskell: mark cacheLineBits as defined in Isabelle
lsf37 Aug 30, 2024
13dbe96
arm+arm-hyp+aarch64 machine: cacheLineBits from kernel config
lsf37 Aug 30, 2024
4acd9db
x64 machine: remove unused cacheLineBits
lsf37 Aug 30, 2024
9bcac41
arm+arm-hyp ainvs: remove unfoldings of cacheLineBits
lsf37 Aug 30, 2024
99286f3
arm-hyp ainvs+crefine: move masking lemmas for cacheLineBits
lsf37 Sep 1, 2024
4d502fe
arm+arm-hyp crefine: make proof generic in cacheLineBits
lsf37 Sep 1, 2024
d7d306e
aarch64 crefine: make proof generic in cacheLineBits
lsf37 Sep 1, 2024
e34ca85
arm-hyp+aarch64 spec+proof: make generic in CONFIG_DISABLE_WFI_WFE_TRAPS
lsf37 Sep 2, 2024
c7f74c9
misc/thydeps: correct regexp escape
lsf37 Oct 9, 2024
007a086
autocorres: update change log and readme for release
lsf37 Oct 9, 2024
0c9f326
c-parser: update change log and readme for release
lsf37 Oct 9, 2024
6122e24
c-parser: adjust release script for Makefile changes
lsf37 Oct 10, 2024
4f1563a
c-parser: handle sed backup files uniformly in mkrelease
lsf37 Oct 10, 2024
49f0c84
lib: stronger version of mapM_x_commute for True guard
lsf37 Aug 16, 2024
f4e6622
spec: defer cache flush in retype
lsf37 Jul 17, 2024
ef5b608
proofs: proof update for deferred cache flush
lsf37 Jul 17, 2024
f8016c1
x64 crefine: remove unused lemmas
lsf37 Oct 23, 2024
1f5b952
Merge branch 'master' into rt
corlewis Nov 17, 2024
503069e
rt trivial: rename arch_split -> arch-split again after merge
corlewis Nov 19, 2024
4965ca8
rt spec proof: update after merge
corlewis Nov 20, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
38 changes: 6 additions & 32 deletions .github/workflows/proof-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,39 +152,13 @@ jobs:
env:
GH_SSH: ${{ secrets.CI_SSH }}

# Automatically rebase platform branches on pushes to master.
# This workflow here on the master branch attempts a git rebase of the platform
# branches listed in the build matrix below. If the rebase succeeds, the rebased
# branch is pushed under the name `<branch>-rebased`. This triggers the build
# workflow on the `<branch>-rebased` branch, which will run the proofs. If the
# proofs succeed, the `<branch>-rebased` branch is force-pushed over
# `<branch>`, becoming the new platform branch.
rebase:
name: Rebase platform branches
# Automatically rebase platform branches on pushes to master.
trigger-rebase:
name: Trigger platform branch rebase
if: github.ref == 'refs/heads/master'
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branch: [imx8-fpu-ver]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Trigger rebase
uses: peter-evans/repository-dispatch@v3
with:
ref: ${{ matrix.branch }}
path: l4v-${{ matrix.branch }}
fetch-depth: 0
# needed to trigger push actions on the -rebased branch
# (implict GITHUB_TOKEN does not trigger further push actions).
token: ${{ secrets.PRIV_REPO_TOKEN }}
- name: Rebase
run: |
cd l4v-${{ matrix.branch }}
git config --global user.name "seL4 CI"
git config --global user.email "ci@sel4.systems"
git rebase origin/master
git status
- name: Push
run: |
cd l4v-${{ matrix.branch }}
git push -f origin HEAD:${{ matrix.branch }}-rebased
event-type: rebase
50 changes: 50 additions & 0 deletions .github/workflows/rebase.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Copyright 2024 Proofcraft Pty Ltd
#
# SPDX-License-Identifier: BSD-2-Clause

# On repository dispatch event rebase platform branches.

name: Rebase

on:
repository_dispatch:
types:
- rebase
# for testing:
workflow_dispatch:

# This workflow here on the master branch attempts a git rebase of the platform
# branches listed in the build matrix below. If the rebase succeeds, the rebased
# branch is pushed under the name `<branch>-rebased`. This triggers the build
# workflow on the `<branch>-rebased` branch, which will run the proofs. If the
# proofs succeed, the `<branch>-rebased` branch is force-pushed over
# `<branch>`, becoming the new platform branch.
jobs:
rebase:
name: Rebase platform branches
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
branch: [imx8-fpu-ver]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ matrix.branch }}
path: l4v-${{ matrix.branch }}
fetch-depth: 0
# needed to trigger push actions on the -rebased branch
# (implict GITHUB_TOKEN does not trigger further push actions).
token: ${{ secrets.PRIV_REPO_TOKEN }}
- name: Rebase
run: |
cd l4v-${{ matrix.branch }}
git config --global user.name "seL4 CI"
git config --global user.email "ci@sel4.systems"
git rebase origin/master
git status
- name: Push
run: |
cd l4v-${{ matrix.branch }}
git push -f origin HEAD:${{ matrix.branch }}-rebased
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@

[![DOI][0]](http://dx.doi.org/10.5281/zenodo.591732)
[![CI](https://github.com/seL4/l4v/actions/workflows/push.yml/badge.svg)](https://github.com/seL4/l4v/actions/workflows/push.yml)
[![Proofs](https://github.com/seL4/l4v/actions/workflows/proof-deploy.yml/badge.svg)](https://github.com/seL4/l4v/actions/workflows/proof-deploy.yml)
[![Proofs](https://github.com/seL4/l4v/actions/workflows/proof-deploy.yml/badge.svg?branch=master)](https://github.com/seL4/l4v/actions/workflows/proof-deploy.yml?query=branch%3Amaster)
[![Weekly Clean](https://github.com/seL4/l4v/actions/workflows/weekly-clean.yml/badge.svg)](https://github.com/seL4/l4v/actions/workflows/weekly-clean.yml)
[![External](https://github.com/seL4/l4v/actions/workflows/external.yml/badge.svg)](https://github.com/seL4/l4v/actions/workflows/external.yml)

MCS:\
[![CI](https://github.com/seL4/l4v/actions/workflows/push.yml/badge.svg?branch=rt)](https://github.com/seL4/l4v/actions/workflows/push.yml)
[![RT Proofs](https://github.com/seL4/l4v/actions/workflows/proof.yml/badge.svg?branch=rt)](https://github.com/seL4/l4v/actions/workflows/proof.yml)
[![MCS Proofs](https://github.com/seL4/l4v/actions/workflows/proof-deploy.yml/badge.svg?branch=rt)](https://github.com/seL4/l4v/actions/workflows/proof-deploy.yml?query=branch%3Art)

[0]: https://zenodo.org/badge/doi/10.5281/zenodo.591732.svg

Expand Down
33 changes: 17 additions & 16 deletions camkes/cdl-refine/Eval_CAMKES_CDL.thy
Original file line number Diff line number Diff line change
Expand Up @@ -169,42 +169,43 @@ lemma Collect_asid_high__eval_helper:
apply (subst arg_cong[where f="(<) _"])
prefer 2
apply (rule unat_lt2p)
apply (simp add: asid_high_bits_def)
apply (simp add: MiscMachine_A.asid_high_bits_def)
apply (simp add: transform_asid_def asid_high_bits_of_def[abs_def])
apply (rule set_eqI)
apply (rule iffI)
apply clarsimp
apply (clarsimp simp: Collect_conj_eq image_iff)
apply (rule_tac x="(of_nat asid_high << asid_low_bits) + 1" in bexI)
apply (subst add.commute, subst shiftr_irrelevant)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def)
apply (clarsimp simp: is_aligned_shift)
apply (subst shiftl_shiftr_id)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def word_of_nat_less)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def)
apply (clarsimp simp: is_aligned_shift MiscMachine_A.asid_low_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def)
apply (subst shiftl_shiftr_id, simp)
apply (clarsimp simp: MiscMachine_A.asid_high_bits_def word_of_nat_less)
apply (subst ucast_of_nat_small)
apply (clarsimp simp: asid_high_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_high_bits_def)
apply simp
apply clarsimp
apply (rule conjI)
apply (clarsimp simp: unat_ucast_eq_unat_and_mask)
apply (subst add.commute, subst shiftr_irrelevant)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def MiscMachine_A.asid_high_bits_def)
apply (clarsimp simp: is_aligned_shift)
apply (subst shiftl_shiftr_id)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def word_of_nat_less)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def MiscMachine_A.asid_high_bits_def
word_of_nat_less)
apply (fold asid_high_bits_def)
apply (subst less_mask_eq)
apply (clarsimp simp: asid_high_bits_def word_of_nat_less)
apply (clarsimp simp: MiscMachine_A.asid_high_bits_def word_of_nat_less)
apply (rule unat_of_nat_eq)
apply (clarsimp simp: asid_high_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_high_bits_def)
apply (rule less_is_non_zero_p1[where k="2^asid_high_bits << asid_low_bits"])
apply (simp only: shiftl_t2n)
apply (simp add: shiftl_t2n)
apply (subst mult.commute, subst mult.commute, rule word_mult_less_mono1)
apply (clarsimp simp: asid_high_bits_def word_of_nat_less)
apply (clarsimp simp: asid_low_bits_def)
apply (clarsimp simp: asid_low_bits_def asid_high_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_high_bits_def word_of_nat_less)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def)
apply (clarsimp simp: MiscMachine_A.asid_low_bits_def MiscMachine_A.asid_high_bits_def)
done


Expand Down
Loading
Loading