diff options
author | Kartik Agaram <vc@akkartik.com> | 2020-03-25 09:54:53 -0700 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2020-03-25 09:54:53 -0700 |
commit | 606c1ab49a6753d4bc84b65466774274fcf04a83 (patch) | |
tree | dd17f210475b8d959f52eff52f3499f62b48a428 /mu_instructions | |
parent | 84c426d2abff4b3b38f35758392baaf3eda93d93 (diff) | |
download | mu-606c1ab49a6753d4bc84b65466774274fcf04a83.tar.gz |
6170
Diffstat (limited to 'mu_instructions')
-rw-r--r-- | mu_instructions | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mu_instructions b/mu_instructions index f6b05faa..f9866aca 100644 --- a/mu_instructions +++ b/mu_instructions @@ -152,7 +152,7 @@ loop-if-addr>= label => "0f 83/jump-if-addr>= " label ":loop/disp32 In the following instructions types are provided for clarity even if they must be provided in an earlier 'var' declaration. -Address operations +# Address operations var/reg: (addr T) <- address var2: T => "8d/copy-address *(ebp+" var2.stack-offset ") " reg "/r32" @@ -177,7 +177,7 @@ var/reg: (offset T) <- compute-offset arr: (addr array T), idx: int # arr var/reg <- index arr/rega: (addr array T), o/rego: offset => "8d/copy-address *(" rega "+" rego "+4) " reg "/r32" -User-defined types +# User-defined types If a record (product) type T was defined to have elements a, b, c, ... of types T_a, T_b, T_c, ..., then accessing one of those elements f of type T_f: @@ -187,7 +187,7 @@ var/reg: (addr T_f) <- get var2/reg2: (addr F), f var/reg: (addr T_f) <- get var2: (addr F), f => "8d/copy-address *(ebp+" var2.stack-offset "+" offset(f) ") " reg "/r32" -Handles for safe access to the heap +# Handles for safe access to the heap copy-handle-to dest: (handle T), src: (handle T) => "50/push-eax" |