From 25595a7b34b70011dcb77aae277ee1cdb8920c60 Mon Sep 17 00:00:00 2001 From: Sylvain Boulmé Date: Fri, 28 May 2021 14:28:56 +0200 Subject: splitting BTL by introducing BTLmatchRTL reduce also copy-paste between BTLtoRTLproof and RTLtoBTLproof sharing is done in BTLmatchRTL --- scheduling/BTLtoRTL.v | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'scheduling/BTLtoRTL.v') diff --git a/scheduling/BTLtoRTL.v b/scheduling/BTLtoRTL.v index 1333b406..fc58533d 100644 --- a/scheduling/BTLtoRTL.v +++ b/scheduling/BTLtoRTL.v @@ -1,21 +1,22 @@ Require Import Coqlib Maps. Require Import AST Integers Values Events Memory Globalenvs Smallstep. Require Import RTL Op Registers OptionMonad BTL. +Require Export BTLmatchRTL. Require Import Errors Linking. (** External oracle *) -Axiom btl2rtl: function -> RTL.code * node * (PTree.t node). +Axiom btl2rtl: BTL.function -> RTL.code * node * (PTree.t node). Extract Constant btl2rtl => "BTLtoRTLaux.btl2rtl". Local Open Scope error_monad_scope. -Definition transf_function (f: function) : res RTL.function := +Definition transf_function (f: BTL.function) : res RTL.function := let (tcte, dupmap) := btl2rtl f in let (tc, te) := tcte in let f' := RTL.mkfunction (fn_sig f) (fn_params f) (fn_stacksize f) tc te in - (*do u <- verify_function dupmap f f';*) + do u <- verify_function dupmap f f'; OK f'. Definition transf_fundef (f: fundef) : res RTL.fundef := -- cgit