summaryrefslogtreecommitdiff
path: root/riscv/main.sail
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-03-19 17:39:42 +0000
committerAlasdair Armstrong2018-03-19 17:39:42 +0000
commitb42d5ab44307da291aac1882f8a2bb7bcbdfa900 (patch)
treeeddf168eca14f33ddd34027b0553302612a679da /riscv/main.sail
parente3e597feb532c71e0db32eb9abbebb9f51314d6d (diff)
Fixes to C backend for RISCV-compilation
Can now compile RISCV. Requires some library tweaks before it'll pass any tests, Also adds hyperlinks to wip latex output
Diffstat (limited to 'riscv/main.sail')
-rw-r--r--riscv/main.sail10
1 files changed, 8 insertions, 2 deletions
diff --git a/riscv/main.sail b/riscv/main.sail
index 8e0b0440..b2bda58f 100644
--- a/riscv/main.sail
+++ b/riscv/main.sail
@@ -1,6 +1,9 @@
val fetch_and_execute : unit -> unit effect {barr, eamem, escape, exmem, rmem, rreg, wmv, wreg}
-val elf_tohost = "Elf_loader.elf_tohost" : unit -> int
+val elf_tohost = {
+ ocaml: "Elf_loader.elf_tohost",
+ c: "elf_tohost"
+} : unit -> int
function fetch_and_execute () =
let tohost = __GetSlice_int(64, elf_tohost(), 0) in
@@ -42,7 +45,10 @@ function fetch_and_execute () =
PC = nextPC
}
-val elf_entry = "Elf_loader.elf_entry" : unit -> int
+val elf_entry = {
+ ocaml: "Elf_loader.elf_entry",
+ c: "elf_entry"
+} : unit -> int
val main : unit -> unit effect {barr, eamem, escape, exmem, rmem, rreg, wmv, wreg}