Commit Graph

35 Commits

Author SHA1 Message Date
hyunghwan.chung
60299cda5b added experimental code to support byte trailer of a pointer object. the main purpose is to embed byte codes into the back of the compiled method object.
fixed buggy code using the freed pointer when reallocation has occurred - callers of clone_keyword(), clone_assignee(), clone_binsel()
2015-07-01 15:01:39 +00:00
hyunghwan.chung
51d7db9b96 renumbered byte codes and removed fragile code handling tail-call optimization 2015-06-29 13:52:40 +00:00
hyunghwan.chung
0427879198 cleaned up code a bit 2015-06-25 13:37:50 +00:00
hyunghwan.chung
dea9944270 added array and byte-array literal handling.
removed CMD_EXTEND_DOUBLE and cleaned up instruction decoding a bit
2015-06-23 14:00:26 +00:00
hyunghwan.chung
6f565539a9 enhanced the compiler to handle cascaded messages.
implemented block-context local temporaries.
changed primitive_block_context_value() to support block context reentrancy by activating a shallow-copied block context
2015-06-22 14:21:46 +00:00
hyunghwan.chung
b9ee190dec fixed a missing reinitialization problem in the compiler 2015-06-21 16:22:50 +00:00
hyunghwan.chung
e87dbbdfcd fixed a bug of not initializing a variable buffer length in compile_class_definition() 2015-06-21 14:45:45 +00:00
hyunghwan.chung
fbfa4c4ff0 added code to handle block context 2015-06-20 03:07:11 +00:00
hyunghwan.chung
40c461f1f4 added more code to handle block context 2015-06-17 13:46:16 +00:00
hyunghwan.chung
af4d0596fb enhanced newline handling 2015-06-11 12:09:10 +00:00
hyunghwan.chung
469210bd80 fixed some bugs related to store and pop 2015-06-11 09:11:18 +00:00
hyunghwan.chung
a8a44a1519 added 'preamble' to the compiled method.
improved some special case handling
2015-06-09 12:14:18 +00:00
hyunghwan.chung
5f6500aa7c added some code for handling message sending and returning 2015-06-08 13:24:02 +00:00
hyunghwan.chung
5da9a789cd added stix_invoke() 2015-06-06 07:24:35 +00:00
hyunghwan.chung
7a751d7cc0 added some vm code 2015-06-04 18:34:37 +00:00
hyunghwan.chung
3added1316 renamed vars to slot in stix_class_t 2015-06-03 17:27:22 +00:00
hyunghwan.chung
dab7285c45 added partial code to parse message sending expressions 2015-06-03 17:24:11 +00:00
hyunghwan.chung
87929410db fixed a wrong class name specified when adding a compiled method 2015-05-31 18:43:37 +00:00
hyunghwan.chung
cf029a0570 added code to handle literals 2015-05-31 16:44:56 +00:00
hyunghwan.chung
b91cd11561 added some basic code to handle a method dictionary 2015-05-28 16:51:37 +00:00
hyunghwan.chung
bb3b6c4270 added more compiler code 2015-05-27 17:16:50 +00:00
hyunghwan.chung
008c74666d still more compiler code 2015-05-26 16:31:47 +00:00
hyunghwan.chung
ca10456d3a more compiler code 2015-05-25 18:13:52 +00:00
hyunghwan.chung
b7a443089a written more compiler codes 2015-05-25 17:10:49 +00:00
hyunghwan.chung
f5d2a0a0aa added some code to compile function body 2015-05-22 15:09:45 +00:00
hyunghwan.chung
3db3a02a7a added lexical analysis code 2015-05-19 15:16:18 +00:00
hyunghwan.chung
b70d9a976a added utf8 string conversion functions 2015-05-17 05:02:30 +00:00
hyunghwan.chung
090c9ac1bf added utf8 conversion functions 2015-05-16 07:31:16 +00:00
hyunghwan.chung
75bb3e9a40 added some code for a bootstraping compiler 2015-05-15 14:55:12 +00:00
hyunghwan.chung
ccb232329b added code to register primitive objects into the system dictionary 2015-05-11 16:08:09 +00:00
hyunghwan.chung
10661777a1 fixed a bug of not resetting the heap limit after gc.
added some pointer arithmetic macros.
2015-05-08 14:29:35 +00:00
hyunghwan.chung
0b97fee2c4 added many lines of code for initial loading 2015-05-07 15:58:04 +00:00
hyunghwan.chung
c74266293d fixed wrong defintions of some macros 2015-05-04 16:48:38 +00:00
hyunghwan.chung
e637f3a1f1 switched bitfields to bit-manipulation macros 2015-05-03 17:10:30 +00:00
hyunghwan.chung
6e9a47fd5b added some initial files 2015-04-30 15:56:05 +00:00