Implementing cfg for risc

This commit is contained in:
elvis
2024-11-27 20:18:30 +01:00
parent 4e9f08347b
commit 99287d79c5
8 changed files with 554 additions and 37 deletions

View File

@ -1,5 +1,4 @@
open MiniImp
open MiniImp.CfgImp
let () =
let program = "def main with input x output y as
@ -10,11 +9,14 @@ let () =
) else
x := 1 - y;" in
let get_result x = Lexing.from_string x |> Parser.prg Lexer.lex in
let p = get_result program in
let converted = convert p in
let convertedcfg = CfgImp.convert_io p 3 in
Printf.printf "%a" SSCfg.pp converted
Printf.printf "%a" CfgImp.SSCfg.pp convertedcfg;
let convertedrisccfg = CfgRISC.convert convertedcfg in
Printf.printf "%a" CfgRISC.RISCCfg.pp convertedrisccfg