home
/
code
/
tiger.ml.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Rough frame allocations
[tiger.ml.git]
/
compiler
/
src
/
lib
/
tiger
/
tiger_env.ml
diff --git
a/compiler/src/lib/tiger/tiger_env.ml
b/compiler/src/lib/tiger/tiger_env.ml
index
504e9bd
..
9f6417f
100644
(file)
--- a/
compiler/src/lib/tiger/tiger_env.ml
+++ b/
compiler/src/lib/tiger/tiger_env.ml
@@
-1,5
+1,6
@@
module Map = Tiger_map
module Sym = Tiger_symbol
module Map = Tiger_map
module Sym = Tiger_symbol
+module Translate = Tiger_translate
module Type = Tiger_env_type
module Value = Tiger_env_value
module Type = Tiger_env_type
module Value = Tiger_env_value
@@
-7,12
+8,14
@@
type t =
{ typs : Type.env
; vals : Value.env
; loop : Sym.t option
{ typs : Type.env
; vals : Value.env
; loop : Sym.t option
+ ; level : Translate.Level.t
}
let base =
{ typs = Type.built_in
; vals = Value.built_in
; loop = None
}
let base =
{ typs = Type.built_in
; vals = Value.built_in
; loop = None
+ ; level = Translate.Level.init
}
let get_typ {typs; _} k =
}
let get_typ {typs; _} k =
@@
-43,3
+46,9
@@
let loop_end t given =
let loop_current {loop; _} =
loop
let loop_current {loop; _} =
loop
+
+let level_set t level =
+ {t with level}
+
+let level_get {level; _} =
+ level
This page took
0.022773 seconds
and
4
git commands to generate.