Mercurial > hg > GearsTemplate
annotate src/include/allocate.h @ 18:ec4e7a81bddf
modify allocate
author | Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 21 Apr 2015 13:33:23 +0900 |
parents | 1eb599acffe4 |
children | 868c2918b634 |
rev | line source |
---|---|
13
a765eb7f3b7c
implement delete, traverse
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
1 __code allocate(); |
a765eb7f3b7c
implement delete, traverse
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
2 __code meta_allocate(); |
15 | 3 extern __code meta(); |
13
a765eb7f3b7c
implement delete, traverse
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
4 |
15 | 5 __code allocate(struct Context* context) { |
6 goto meta_allocate(context); | |
13
a765eb7f3b7c
implement delete, traverse
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
7 } |
a765eb7f3b7c
implement delete, traverse
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
8 |
15 | 9 __code meta_allocate(struct Context* context) { |
18 | 10 context->data[++context->dataSize] = context->heap; |
11 context->heap += context->data[0]->allocate.size; | |
12 goto (context->code[context->data[0]->allocate.next])(context); | |
13
a765eb7f3b7c
implement delete, traverse
Shohei KOKUBO <e105744@ie.u-ryukyu.ac.jp>
parents:
diff
changeset
|
13 } |