From 25899e3f0b0c2b21da26111ce8691cf5a16f3bd5 Mon Sep 17 00:00:00 2001 From: Ben Simner Date: Tue, 5 Mar 2019 12:57:23 +0000 Subject: Add Unallocated to the gen files Adds the Unallocated sail ast node to be tracked by all the transformation files, to track the change made to sail1. --- aarch64_small/armV8.sail | 1 + aarch64_small/gen/ast.hgen | 1 + aarch64_small/gen/fold.hgen | 1 + aarch64_small/gen/herdtools_ast_to_shallow_ast.hgen | 1 + aarch64_small/gen/map.hgen | 1 + aarch64_small/gen/pretty.hgen | 3 +++ aarch64_small/gen/regs_out_in.hgen | 1 + aarch64_small/gen/sail_trans_out.hgen | 2 ++ aarch64_small/gen/shallow_ast_to_herdtools_ast.hgen | 2 ++ aarch64_small/gen/trans_sail.hgen | 2 ++ 10 files changed, 15 insertions(+) diff --git a/aarch64_small/armV8.sail b/aarch64_small/armV8.sail index 8e893e4b..91de66f8 100644 --- a/aarch64_small/armV8.sail +++ b/aarch64_small/armV8.sail @@ -2443,6 +2443,7 @@ end execute val supported_instructions : ast -> option(ast) effect {escape} function supported_instructions (instr) = { match instr { + Unallocated () => None () _ => Some(instr) } } diff --git a/aarch64_small/gen/ast.hgen b/aarch64_small/gen/ast.hgen index 60f130d7..98148a5c 100644 --- a/aarch64_small/gen/ast.hgen +++ b/aarch64_small/gen/ast.hgen @@ -1,3 +1,4 @@ + | `AArch64Unallocated | `AArch64TMStart of inst_reg (* t *) | `AArch64TMCommit | `AArch64TMAbort of boolean*bit5 (* retry,reason *) diff --git a/aarch64_small/gen/fold.hgen b/aarch64_small/gen/fold.hgen index 4062d8e6..fbe52794 100644 --- a/aarch64_small/gen/fold.hgen +++ b/aarch64_small/gen/fold.hgen @@ -1,3 +1,4 @@ +| `AArch64Unallocated -> (y_reg, y_sreg) | `AArch64TMStart t -> fold_reg t (y_reg, y_sreg) | `AArch64TMCommit -> (y_reg, y_sreg) | `AArch64TMAbort (retry,reason) -> (y_reg, y_sreg) diff --git a/aarch64_small/gen/herdtools_ast_to_shallow_ast.hgen b/aarch64_small/gen/herdtools_ast_to_shallow_ast.hgen index 6fbb3eb2..b8fe851c 100644 --- a/aarch64_small/gen/herdtools_ast_to_shallow_ast.hgen +++ b/aarch64_small/gen/herdtools_ast_to_shallow_ast.hgen @@ -1,3 +1,4 @@ +| `AArch64Unallocated -> Unallocated | `AArch64TMStart t -> TMStart (translate_reg "t" t) | `AArch64TMCommit -> TMCommit diff --git a/aarch64_small/gen/map.hgen b/aarch64_small/gen/map.hgen index 62899c91..3d5419b4 100644 --- a/aarch64_small/gen/map.hgen +++ b/aarch64_small/gen/map.hgen @@ -1,3 +1,4 @@ +| `AArch64Unallocated -> `AArch64Unallocated | `AArch64TMStart t -> `AArch64TMStart (map_reg t) | `AArch64TMCommit -> `AArch64TMCommit | `AArch64TMAbort (retry,reason) -> `AArch64TMAbort (retry,reason) diff --git a/aarch64_small/gen/pretty.hgen b/aarch64_small/gen/pretty.hgen index 2bbf7af7..b412fdda 100644 --- a/aarch64_small/gen/pretty.hgen +++ b/aarch64_small/gen/pretty.hgen @@ -1,3 +1,6 @@ +| `AArch64Unallocated -> + "UNALLOCATED" + | `AArch64TMStart t -> sprintf "TSTART %s" (pp_regzr Set64 t) diff --git a/aarch64_small/gen/regs_out_in.hgen b/aarch64_small/gen/regs_out_in.hgen index 724a574b..bab53be7 100644 --- a/aarch64_small/gen/regs_out_in.hgen +++ b/aarch64_small/gen/regs_out_in.hgen @@ -1,6 +1,7 @@ (* for each instruction instance, identify the role of the registers and possible branching: (outputs, inputs, voidstars, branch) *) +| `AArch64Unallocated -> failwith "UNALLOCATED is not implemented" | `AArch64TMStart t -> failwith "TSTART is not implemented" | `AArch64TMCommit -> failwith "TCOMMIT is not implemented" | `AArch64TMAbort (retry,reason) -> failwith "TABORT is not implemented" diff --git a/aarch64_small/gen/sail_trans_out.hgen b/aarch64_small/gen/sail_trans_out.hgen index 84826c18..0399fa8b 100644 --- a/aarch64_small/gen/sail_trans_out.hgen +++ b/aarch64_small/gen/sail_trans_out.hgen @@ -1,3 +1,5 @@ +| ("Unallocated", []) -> `AArch64Unallocated + | ("TMStart", [t]) -> `AArch64TMStart (translate_out_regzr Set64 t) diff --git a/aarch64_small/gen/shallow_ast_to_herdtools_ast.hgen b/aarch64_small/gen/shallow_ast_to_herdtools_ast.hgen index 7362304c..55179a97 100644 --- a/aarch64_small/gen/shallow_ast_to_herdtools_ast.hgen +++ b/aarch64_small/gen/shallow_ast_to_herdtools_ast.hgen @@ -1,3 +1,5 @@ +| Unallocated -> `AArch64Unallocated + | TMStart t -> `AArch64TMStart (translate_out_regzr Set64 t) diff --git a/aarch64_small/gen/trans_sail.hgen b/aarch64_small/gen/trans_sail.hgen index 2b176308..df2ed81c 100644 --- a/aarch64_small/gen/trans_sail.hgen +++ b/aarch64_small/gen/trans_sail.hgen @@ -1,3 +1,5 @@ +| `AArch64Unallocated -> ("Unallocated", [], []) + | `AArch64TMStart t -> ("TMStart", [translate_reg "t" t], []) -- cgit v1.2.3