Commit Graph

112 Commits

Author SHA1 Message Date
hyunghwan.chung
d512088860 improved timer management to work on platforms where stix_smooi_t is not large enough 2016-06-24 15:53:00 +00:00
hyunghwan.chung
102fa8abf4 removed more unused code 2016-06-24 15:01:51 +00:00
hyunghwan.chung
6a32e4278c removed unneeded code and reimplemented Exception>>retry,resume,return 2016-06-24 14:29:43 +00:00
hyunghwan.chung
544ee2b4ae added more exception handling and ensure implementation code 2016-06-23 15:35:28 +00:00
hyunghwan.chung
73885dc552 removed the ensure_block field from the context object and added the <ensure> code to the preamble field of a method. 2016-06-22 03:23:14 +00:00
hyunghwan.chung
8b678c21fb added some code for unwind protection 2016-06-20 15:42:51 +00:00
hyunghwan.chung
67275b3ef3 started correcting ensure: implementation 2016-06-18 00:12:27 +00:00
hyunghwan.chung
f22b896ed2 fixed the bug not popping an argument in the _integer_inttostr primitive.
added a new primitive _processor_return_to_and_eval to support proper exception handling
2016-06-13 15:52:09 +00:00
hyunghwan.chung
1ab2faaf1f switched more printf() statements to STIX_LOGX() 2016-06-05 18:37:28 +00:00
hyunghwan.chung
512df8876b switched many hardcoded printf() statements to STIX_LOGX() 2016-06-05 18:01:35 +00:00
hyunghwan.chung
eeb2fdebbd improved log message handling 2016-06-03 15:46:01 +00:00
hyunghwan.chung
0c4ce4eb04 added stix_bfmtout() and stix_oofmtout() 2016-06-01 15:33:03 +00:00
hyunghwan.chung
037bbff42c started adding byte-code decoder 2016-05-27 15:01:54 +00:00
hyunghwan.chung
7ccd2dad86 added incomplete os2 support code 2016-05-19 13:06:05 +00:00
hyunghwan.chung
c39aa957ad added some support routines for classic mac os 2016-05-19 03:49:23 +00:00
hyunghwan.chung
04ccebe9b4 renamed Collection.st to Collect.st 2016-05-18 14:53:20 +00:00
hyunghwan.chung
38ccdbed9d fixed the stack growth issue when manipulating the instruction pointer by intruducing a new primitive method MethodContext>>goto: 2016-05-18 11:10:54 +00:00
hyunghwan.chung
717ffcbdd9 some more work on process switching and exception handling 2016-05-17 15:12:27 +00:00
hyunghwan.chung
19735bac69 fixed a problem in breaking out of an initial context 2016-05-15 15:51:41 +00:00
hyunghwan.chung
801b6d92d4 fixed some minor build flaws 2016-05-13 15:10:34 +00:00
hyunghwan.chung
36a54fd29f refreshed whileTrue: and whileFalse: 2016-05-12 05:53:35 +00:00
hyunghwan.chung
4bbd5b52bb removed unneeded text 2016-05-07 01:37:44 +00:00
hyunghwan.chung
f9ad51b5c5 added a name field to a complied method class.
wrote more code for implementing exception handling
2016-05-03 10:10:28 +00:00
hyunghwan.chung
389203b6e4 reset the sender field to stix->_nil when creating a new process over a block context .
touched up exception handling implementation code
2016-05-02 13:50:42 +00:00
hyunghwan.chung
90eb7d5507 added more code for exception handling 2016-05-01 13:49:36 +00:00
hyunghwan.chung
8ea80dae91 fixed a build issue with an old compiler 2016-04-30 15:48:08 +00:00
hyunghwan.chung
77990a5172 fixed processor_return_to 2016-04-30 05:56:35 +00:00
hyunghwan.chung
77f0bfad5d added some more code to support exception handling 2016-03-28 13:25:36 +00:00
hyunghwan.chung
2a88f5d503 started adding code for supporting exception handling 2016-03-26 06:39:56 +00:00
hyunghwan.chung
6487143a59 added simple time calculation types/functiosn/macros.
fixed a bug in timed semaphore signalling
2016-03-24 14:58:47 +00:00
hyunghwan.chung
63ce721147 trimmed the timed semaphore handling code more 2016-03-23 12:58:30 +00:00
hyunghwan.chung
26630cc385 tackled an issue in suspending and waking the last process 2016-03-23 02:34:13 +00:00
hyunghwan.chung
d6ee9e5b67 added code to handle timed semaphore singalling 2016-03-22 14:18:07 +00:00
hyunghwan.chung
00a4fd78d6 changed Array to use 0-based index 2016-03-16 14:05:34 +00:00
hyunghwan.chung
fabc9afee8 added SemaphoreHeap 2016-03-16 02:27:18 +00:00
hyunghwan.chung
b3b9af86fd changed the process list of a semaphore to a doubly linked list 2016-02-29 17:26:40 +00:00
hyunghwan.chung
55a43371d5 added some code for implementing semaphore 2016-02-29 15:27:10 +00:00
hyunghwan.chung
351239bdf4 changed the list manupluation style in managing process switching 2016-02-19 15:52:56 +00:00
hyunghwan.chung
734082db91 added some code to implement semaphores 2016-02-18 17:49:56 +00:00
hyunghwan.chung
fc7a44ba7d changed to store the stack poitner of the active process before context switching. the stored stack pointer is used to restore stix->sp when a method return is performed 2016-02-16 17:00:10 +00:00
hyunghwan.chung
9edf849d2a wrote more code for process handling and return handling 2016-02-15 18:07:20 +00:00
hyunghwan.chung
df226a4790 added the _process_terminate primitive 2016-02-14 06:35:18 +00:00
hyunghwan.chung
2d352939d4 handled process termination 2016-02-13 17:39:11 +00:00
hyunghwan.chung
f32e58f4b3 fixed a compiler bug that omitted the RETURN_FROM_BLOCK instruction when an empty block is encountered.
added more code for supporting the process stack
2016-02-12 16:23:26 +00:00
hyunghwan.chung
3d937334d8 touched up code a bit 2016-02-11 14:26:26 +00:00
hyunghwan.chung
ce9db0e40d added aclocal.m4 2016-01-29 04:04:39 +00:00
hyunghwan.chung
c427f39a12 added stix_isint(), stix_inttooow(), stix_oowtoint().
added stix_eqints(), stix_neints(), stix_gtints(), stix_geints(), stix_ltints(), stix_leints().
enhanced some primitive handlers to support large integers
2015-12-27 18:02:59 +00:00
hyunghwan.chung
fff2af4762 fixed a parameter range check bug in a compiler.
fixed a wrong goto label location for send_message
2015-12-27 10:19:36 +00:00
hyunghwan.chung
60b90de172 filled stix_bitatint() a bit 2015-12-26 01:37:33 +00:00
hyunghwan.chung
27e0186d43 added stix_negateint() 2015-12-25 05:09:17 +00:00