diff options
author | Kartik Agaram <vc@akkartik.com> | 2021-01-16 10:40:37 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2021-01-16 11:35:13 -0800 |
commit | 3d6c6e5286b1ea3744db0ff32445cc2082ca5110 (patch) | |
tree | 5db1d51d4b7a6b64136547bec670952a255ff13e /baremetal/400.mu | |
parent | 2803748890cceb433c1e83f12d052c38e42f731f (diff) | |
download | mu-3d6c6e5286b1ea3744db0ff32445cc2082ca5110.tar.gz |
7528 - heap allocator
Diffstat (limited to 'baremetal/400.mu')
-rw-r--r-- | baremetal/400.mu | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/baremetal/400.mu b/baremetal/400.mu index 5025a51c..94820e68 100644 --- a/baremetal/400.mu +++ b/baremetal/400.mu @@ -17,4 +17,13 @@ sig rewind-stream f: (addr stream _) sig write f: (addr stream byte), s: (addr array byte) sig append-byte f: (addr stream byte), n: int sig read-byte s: (addr stream byte) -> _/eax: byte +#sig allocate ad: (addr allocation-descriptor), n: int, out: (addr handle _) +#sig allocate-raw ad: (addr allocation-descriptor), n: int, out: (addr handle _) +sig lookup h: (handle _T) -> _/eax: (addr _T) +sig handle-equal? a: (handle _T), b: (handle _T) -> _/eax: boolean +sig copy-handle src: (handle _T), dest: (addr handle _T) +#sig allocate-region ad: (addr allocation-descriptor), n: int, out: (addr handle allocation-descriptor) +#sig allocate-array ad: (addr allocation-descriptor), n: int, out: (addr handle _) +sig copy-array ad: (addr allocation-descriptor), src: (addr array _T), out: (addr handle array _T) +#sig zero-out start: (addr byte), size: int sig stream-empty? s: (addr stream _) -> _/eax: boolean |