From c46ae4d67795682d79e737c671edec8ceee94287 Mon Sep 17 00:00:00 2001 From: Alasdair Armstrong Date: Fri, 17 Nov 2017 18:00:08 +0000 Subject: Fix Makefile for interpreter and update instruction_extractor Instruction extractor code that I commented out in this commit seems buggy anyway - it will claim that the length of all bitvectors is 64?! --- src/Makefile | 6 +++--- src/lem_interp/instruction_extractor.lem | 8 +++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Makefile b/src/Makefile index eeaf9fba..298d22c8 100644 --- a/src/Makefile +++ b/src/Makefile @@ -52,8 +52,8 @@ full: sail lib power doc test ast.ml: ../language/l2.ott ott -sort false -generate_aux_rules true -o ast.ml -picky_multiple_parses true ../language/l2.ott -lem_interp2/interp_ast.lem: ../language/l2.ott - ott -sort false -generate_aux_rules true -o lem_interp2/interp_ast.lem -picky_multiple_parses true ../language/l2.ott +lem_interp/interp_ast.lem: ../language/l2.ott + ott -sort false -generate_aux_rules true -o lem_interp/interp_ast.lem -picky_multiple_parses true ../language/l2.ott sail: ast.ml ocamlbuild sail.native @@ -63,7 +63,7 @@ sail.native: sail sail.byte: ocamlbuild -cflag -g sail.byte -interpreter: +interpreter: lem_interp/interp_ast.lem ocamlbuild lem_interp/extract.cmxa ocamlbuild lem_interp/extract.cma diff --git a/src/lem_interp/instruction_extractor.lem b/src/lem_interp/instruction_extractor.lem index e603bb58..8bc19f8c 100644 --- a/src/lem_interp/instruction_extractor.lem +++ b/src/lem_interp/instruction_extractor.lem @@ -44,20 +44,21 @@ open import Interp_ast open import Interp_utilities open import Pervasives -type instr_param_typ = +type instr_param_typ = | IBit | IBitvector of maybe nat | IRange of maybe nat | IEnum of string * nat | IOther -type instruction_form = +type instruction_form = | Instr_form of string * list (string * instr_param_typ) * list base_effect -| Skipped +| Skipped val extract_instructions : string -> defs tannot -> list instruction_form let rec extract_ityp t tag = match (t,tag) with +(* AA: Hack | (T_abbrev _ t,_) -> extract_ityp t tag | (T_id "bit",_) -> IBit | (T_id "bool",_) -> IBit @@ -74,6 +75,7 @@ let rec extract_ityp t tag = match (t,tag) with IEnum i (natFromInteger max) | (T_id i,Tag_enum max) -> IEnum i (natFromInteger max) +*) | _ -> IOther end -- cgit v1.2.3