diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/hls/RTLBlock.v | 2 | ||||
-rw-r--r-- | src/hls/RTLBlockInstr.v | 14 | ||||
-rw-r--r-- | src/hls/RTLBlockgen.v | 6 | ||||
-rw-r--r-- | src/hls/RTLBlockgenproof.v | 6 | ||||
-rw-r--r-- | src/hls/RTLPar.v | 2 | ||||
-rw-r--r-- | src/hls/RTLPargen.v | 2 | ||||
-rw-r--r-- | src/hls/RTLPargenproof.v | 6 | ||||
-rw-r--r-- | src/hls/Schedule.ml | 2 |
8 files changed, 19 insertions, 21 deletions
diff --git a/src/hls/RTLBlock.v b/src/hls/RTLBlock.v index 4fae701..539d5bc 100644 --- a/src/hls/RTLBlock.v +++ b/src/hls/RTLBlock.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlblock-main][rtlblock-main]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblock-main][rtlblock-main]] *) Require Import compcert.backend.Registers. Require Import compcert.common.AST. Require Import compcert.common.Events. diff --git a/src/hls/RTLBlockInstr.v b/src/hls/RTLBlockInstr.v index 770f377..19b3928 100644 --- a/src/hls/RTLBlockInstr.v +++ b/src/hls/RTLBlockInstr.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-imports][rtlblockinstr-imports]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-imports][rtlblockinstr-imports]] *) Require Import Coq.micromega.Lia. Require Import compcert.backend.Registers. @@ -33,7 +33,7 @@ Require Import Predicate. Require Import Vericertlib. (* rtlblockinstr-imports ends here *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-instr-def][rtlblockinstr-instr-def]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-instr-def][rtlblockinstr-instr-def]] *) Definition node := positive. Inductive instr : Type := @@ -44,7 +44,7 @@ Inductive instr : Type := | RBsetpred : option pred_op -> condition -> list reg -> predicate -> instr. (* rtlblockinstr-instr-def ends here *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-cf-instr-def][rtlblockinstr-cf-instr-def]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-cf-instr-def][rtlblockinstr-cf-instr-def]] *) Inductive cf_instr : Type := | RBcall : signature -> reg + ident -> list reg -> reg -> node -> cf_instr | RBtailcall : signature -> reg + ident -> list reg -> cf_instr @@ -57,7 +57,7 @@ Inductive cf_instr : Type := | RBpred_cf : pred_op -> cf_instr -> cf_instr -> cf_instr. (* rtlblockinstr-cf-instr-def ends here *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-helpers][rtlblockinstr-helpers]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-helpers][rtlblockinstr-helpers]] *) Fixpoint successors_instr (i : cf_instr) : list node := match i with | RBcall sig ros args res s => s :: nil @@ -148,7 +148,7 @@ Fixpoint init_regs (vl: list val) (rl: list reg) {struct rl} : regset := end. (* rtlblockinstr-helpers ends here *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-instr-state][rtlblockinstr-instr-state]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-instr-state][rtlblockinstr-instr-state]] *) Record instr_state := mk_instr_state { is_rs: regset; is_ps: predset; @@ -156,7 +156,7 @@ Record instr_state := mk_instr_state { }. (* rtlblockinstr-instr-state ends here *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-type-def][rtlblockinstr-type-def]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-type-def][rtlblockinstr-type-def]] *) Section DEFINITION. Context {bblock_body: Type}. @@ -221,7 +221,7 @@ Section DEFINITION. End DEFINITION. (* rtlblockinstr-type-def ends here *) -(* [[file:../../lit/scheduling.org::rtlblockinstr-semantics][rtlblockinstr-semantics]] *) +(* [[file:../../lit/scheduler-languages.org::rtlblockinstr-semantics][rtlblockinstr-semantics]] *) Section RELSEM. Context {bblock_body : Type}. diff --git a/src/hls/RTLBlockgen.v b/src/hls/RTLBlockgen.v index fa462e7..6d38e4f 100644 --- a/src/hls/RTLBlockgen.v +++ b/src/hls/RTLBlockgen.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlblockgen-imports][rtlblockgen-imports]] *) +(* [[file:../../lit/basic-block-generation.org::rtlblockgen-imports][rtlblockgen-imports]] *) Require compcert.backend.RTL. Require Import compcert.common.AST. Require Import compcert.lib.Maps. @@ -30,7 +30,6 @@ Require Import vericert.hls.RTLBlock. #[local] Open Scope positive. (* rtlblockgen-imports ends here *) -(* [[file:../../lit/scheduling.org::rtlblockgen-equalities-insert][rtlblockgen-equalities-insert]] *) Lemma comparison_eq: forall (x y : comparison), {x = y} + {x <> y}. Proof. decide equality. @@ -148,9 +147,8 @@ Defined. Definition ceq {A: Type} (eqd: forall a b: A, {a = b} + {a <> b}) (a b: A): bool := if eqd a b then true else false. -(* rtlblockgen-equalities-insert ends here *) -(* [[file:../../lit/scheduling.org::rtlblockgen-main][rtlblockgen-main]] *) +(* [[file:../../lit/basic-block-generation.org::rtlblockgen-main][rtlblockgen-main]] *) Parameter partition : RTL.function -> Errors.res function. (** [find_block max nodes index]: Does not need to be sorted, because we use filter and the max fold diff --git a/src/hls/RTLBlockgenproof.v b/src/hls/RTLBlockgenproof.v index b65abca..4433d52 100644 --- a/src/hls/RTLBlockgenproof.v +++ b/src/hls/RTLBlockgenproof.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlblockgenproof-imports][rtlblockgenproof-imports]] *) +(* [[file:../../lit/basic-block-generation.org::rtlblockgenproof-imports][rtlblockgenproof-imports]] *) Require compcert.backend.RTL. Require Import compcert.common.AST. Require Import compcert.lib.Maps. @@ -25,7 +25,7 @@ Require Import vericert.hls.RTLBlock. Require Import vericert.hls.RTLBlockgen. (* rtlblockgenproof-imports ends here *) -(* [[file:../../lit/scheduling.org::rtlblockgenproof-match-states][rtlblockgenproof-match-states]] *) +(* [[file:../../lit/basic-block-generation.org::rtlblockgenproof-match-states][rtlblockgenproof-match-states]] *) Inductive match_states : RTL.state -> RTLBlock.state -> Prop := | match_state : forall stk f tf sp pc rs m @@ -34,7 +34,7 @@ Inductive match_states : RTL.state -> RTLBlock.state -> Prop := (RTLBlock.State stk tf sp (find_block max n i) rs m). (* rtlblockgenproof-match-states ends here *) -(* [[file:../../lit/scheduling.org::rtlblockgenproof-correctness][rtlblockgenproof-correctness]] *) +(* [[file:../../lit/basic-block-generation.org::rtlblockgenproof-correctness][rtlblockgenproof-correctness]] *) Section CORRECTNESS. Context (prog : RTL.program). diff --git a/src/hls/RTLPar.v b/src/hls/RTLPar.v index bcb51c6..160f71c 100644 --- a/src/hls/RTLPar.v +++ b/src/hls/RTLPar.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlpar-main][rtlpar-main]] *) +(* [[file:../../lit/scheduler-languages.org::rtlpar-main][rtlpar-main]] *) Require Import compcert.backend.Registers. Require Import compcert.common.AST. Require Import compcert.common.Events. diff --git a/src/hls/RTLPargen.v b/src/hls/RTLPargen.v index f3d13f5..ac9ac2c 100644 --- a/src/hls/RTLPargen.v +++ b/src/hls/RTLPargen.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlpargen-main][rtlpargen-main]] *) +(* [[file:../../lit/scheduler.org::rtlpargen-main][rtlpargen-main]] *) Require Import compcert.backend.Registers. Require Import compcert.common.AST. Require Import compcert.common.Globalenvs. diff --git a/src/hls/RTLPargenproof.v b/src/hls/RTLPargenproof.v index 7b262db..5188709 100644 --- a/src/hls/RTLPargenproof.v +++ b/src/hls/RTLPargenproof.v @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::rtlpargenproof-imports][rtlpargenproof-imports]] *) +(* [[file:../../lit/scheduler.org::rtlpargenproof-imports][rtlpargenproof-imports]] *) Require Import compcert.backend.Registers. Require Import compcert.common.AST. Require Import compcert.common.Errors. @@ -39,7 +39,7 @@ Require Import vericert.hls.Abstr. #[local] Open Scope pred_op. (* rtlpargenproof-imports ends here *) -(* [[file:../../lit/scheduling.org::rtlpargenproof-main][rtlpargenproof-main]] *) +(* [[file:../../lit/scheduler.org::rtlpargenproof-main][rtlpargenproof-main]] *) (*Definition is_regs i := match i with mk_instr_state rs _ => rs end. Definition is_mem i := match i with mk_instr_state _ m => m end. @@ -1092,7 +1092,7 @@ Proof. induction 2; try rewrite H; eauto with barg. Qed. eauto. eauto. simplify. eauto. eauto. } { unfold bind in *. inv TRANSL0. clear Learn. inv H0. destruct_match; crush. inv H2. unfold transl_function in Heqr. destruct_match; crush. - inv Heqr. + inv Heqr. repeat econstructor; eauto. unfold bind in *. destruct_match; crush. } { inv TRANSL0. repeat econstructor; eauto using Events.external_call_symbols_preserved, symbols_preserved, senv_preserved, Events.E0_right. } diff --git a/src/hls/Schedule.ml b/src/hls/Schedule.ml index 88aa6fd..36dbc2b 100644 --- a/src/hls/Schedule.ml +++ b/src/hls/Schedule.ml @@ -16,7 +16,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. *) -(* [[file:../../lit/scheduling.org::scheduler-main][scheduler-main]] *) +(* [[file:../../lit/scheduler.org::scheduler-main][scheduler-main]] *) open Printf open Clflags open Camlcoq |