Commit Graph

207 Commits

Author SHA1 Message Date
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
c359060bdc simplified build files 2016-04-30 15:30:56 +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
117473f638 fixed a bug in stix_oowtoint()
fixed bugs of SemaphoreHeap
2016-03-16 10:13:03 +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
8f91b7adc3 simplified GC 2016-02-15 18:13:26 +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
649a78472b finished stix_bitatint() 2015-12-26 05:11:10 +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
hyunghwan.chung
1e7be310fc added code to shift a large negative integer when STIX_LIMIT_OBJ_SIZE is not defined 2015-12-24 14:11:04 +00:00
hyunghwan.chung
2022ac965b added some code to handle right-shift of a negative number 2015-12-23 15:25:29 +00:00
hyunghwan.chung
e7d00d89bf implement right bit shift over a small integer 2015-12-22 15:50:01 +00:00
hyunghwan.chung
6fb206a265 touched up various size related definitions and code 2015-12-22 07:49:28 +00:00
hyunghwan.chung
af9b8cd32c added more code to stix_bitshiftint() 2015-12-21 17:12:57 +00:00
hyunghwan.chung
5bf467cb29 enhanced stix_inttostr() to handle a power-of-2 radix more efficiently 2015-12-18 15:58:45 +00:00
hyunghwan.chung
95ceac9e85 fixed a type casting issue to work around the problem caused by an old C compiler(SCO) in bigint.c 2015-12-17 16:59:49 +00:00
hyunghwan.chung
23d8d17b08 added stix_bitinvint() 2015-12-17 16:37:26 +00:00
hyunghwan.chung
08cfa55acc rewrote stix_bitandints(), stix_bitorints(), stix_bitxorints() to handle negative numbers in the 2's complement form 2015-12-17 16:11:10 +00:00
hyunghwan.chung
bf412e0c07 added stix_bitxorint() 2015-12-13 16:08:05 +00:00
hyunghwan.chung
887a03c05e added stix_bitandints() and stix_bitorints() 2015-12-10 14:23:09 +00:00
hyunghwan.chung
9d88821c9b finished stix_inttostr() primitively 2015-12-07 09:40:45 +00:00
hyunghwan.chung
95217da0d1 added an os2 configuration file 2015-12-04 12:05:15 +00:00
hyunghwan.chung
4b4f4329fd added a missing function prototype for stix_allochalfwordobj() 2015-12-03 15:31:21 +00:00
hyunghwan.chung
f1ff341da2 added configuration files for dos 2015-12-03 15:11:47 +00:00
hyunghwan.chung
f40b5fb0c1 added stix-mac.h and made related changes 2015-12-03 05:46:11 +00:00
hyunghwan.chung
6544340db4 fixed a bug of wrong short number conversion in stix_strtoint() when STIX_LIW_BITS == STIX_OOHW_BITS 2015-12-02 16:14:37 +00:00
hyunghwan.chung
2fbb4d3a71 added STIX_EPFULL
fixed a bug in starting an initial process
started writing an integer-to-string conversion function
2015-12-02 15:24:13 +00:00
hyunghwan.chung
283c3652db fixed some bugs in stix_divints() 2015-12-01 12:13:40 +00:00
hyunghwan.chung
addd201beb added the missing zero check in stix_divint() 2015-11-30 15:17:41 +00:00
hyunghwan.chung
a32e1903bf added some code for bigint division 2015-11-30 14:29:57 +00:00
hyunghwan.chung
48efc4dbc8 added more comments to stix_divints() 2015-11-22 15:04:48 +00:00
hyunghwan.chung
fe8b6dfa24 enhanced stix_divints() to handle modulo/remainder more clearly 2015-11-22 14:48:09 +00:00
hyunghwan.chung
d8da07cb59 added some bigint code for division 2015-11-22 13:32:06 +00:00
hyunghwan.chung
f618154aaf changed STIX_SMOOI_MIN to -STIX_SMOOI_MAX instead of (-STIX_SMOOI_MAX - 1)
fixed tally range check bugs in dic.c/sym.c/gc.c
simplificed some code resulting from STIX_SMOOI_MIN change.
2015-11-20 09:05:55 +00:00
hyunghwan.chung
5cebf7e8dc changed atom_t to stix_liw_t and made related changes.
introduced #liword to the compiler
2015-11-17 14:13:59 +00:00
hyunghwan.chung
415921d4a7 fixed some problems in bigint multiplication 2015-11-16 09:53:31 +00:00
hyunghwan.chung
346131b3e3 added more code for bigint multiplication 2015-11-13 15:55:56 +00:00
hyunghwan.chung
b0f8561238 added more code for bigint.
changed SMINT to SMOOI and renamed relevant macros accordingly
2015-11-12 06:57:35 +00:00
hyunghwan.chung
7b28bba988 enhanced stix_mulints() 2015-11-11 14:46:00 +00:00
hyunghwan.chung
0daf143cce Added stix_mulints() 2015-11-11 13:31:05 +00:00
hyunghwan.chung
e519c5078e relocated bigint data table initialization to stix_init() 2015-11-10 14:29:32 +00:00
hyunghwan.chung
df3f521220 touched up stix_strtoint() 2015-11-09 14:26:58 +00:00
hyunghwan.chung
797fdc4c1f added a few lines of code to stix_strtoint() 2015-11-09 02:00:43 +00:00
hyunghwan.chung
db2de5787d added more code to stix_strtoint() 2015-11-04 17:32:28 +00:00
hyunghwan.chung
a033e2669b added some code to calculate log2(x) 2015-11-03 14:58:19 +00:00
hyunghwan.chung
e061b94832 added some more bigint routines 2015-11-03 14:08:43 +00:00
hyunghwan.chung
730df12933 added lost files 2015-11-01 09:47:27 +00:00
hyunghwan.chung
d33ad3749a Added stix_shallowcopy().
added some code for bigint operations
2015-10-30 15:36:37 +00:00
hyunghwan.chung
1094d298cb added some bigint related code 2015-10-29 15:24:46 +00:00
hyunghwan.chung
98631175d0 redefined some types 2015-10-28 14:58:58 +00:00
hyunghwan.chung
2aef6b9bab added the new process primitive to create a process with a block as if it has got the value message 2015-10-22 02:47:25 +00:00
hyunghwan.chung
96011578c8 added some more code for processing scheduling 2015-10-19 06:16:43 +00:00
hyunghwan.chung
3482c99ab7 added more code for process scheduling 2015-10-18 15:06:17 +00:00
hyunghwan.chung
f52356e8c8 added more code for process scheduling 2015-10-15 14:40:08 +00:00
hyunghwan.chung
5a82cdc417 did some preparatory work to add Process 2015-10-14 14:01:33 +00:00
hyunghwan.chung
6916198253 touched up code 2015-10-14 13:25:36 +00:00
hyunghwan.chung
8f985290d0 autotool-ized the project 2015-10-14 09:06:44 +00:00
hyunghwan.chung
d367e2736b added more code for primitive module loading 2015-10-13 14:51:04 +00:00
hyunghwan.chung
8c963d919c work in progress to support the named primitive via shared object loading 2015-10-08 14:26:04 +00:00
hyunghwan.chung
5c69f6c3b4 added experimental codo utilizing the dyncall library 2015-10-04 16:21:31 +00:00
hyunghwan.chung
353d3bd2fe added qse_getprimno() and added experimental code for foreign function interface 2015-10-03 15:29:03 +00:00
hyunghwan.chung
5449e89292 added support for pool dictionary import 2015-07-26 14:38:34 +00:00
hyunghwan.chung
ce8a86e082 added some code to support importing a pool dictionary 2015-07-25 15:01:51 +00:00
hyunghwan.chung
5700b57d57 added code that handles pool dictionary defintion 2015-07-15 08:39:18 +00:00
hyunghwan.chung
9e720c40d0 touched up code a bit for win64 2015-07-15 02:36:24 +00:00
hyunghwan.chung
b5d94ef6ea added more code for namespace handling.
added initial code to define a pool dicitonary
fixed a compiler bug in resolving a class variable
2015-07-14 13:35:18 +00:00
hyunghwan.chung
3bb121c09d changed the compiler to recoginize FQN reference 2015-07-13 15:58:27 +00:00
hyunghwan.chung
23d1bcf86c added more namespace handling code 2015-07-13 15:35:52 +00:00
hyunghwan.chung
f97eb3d72b added some experimental code for namespace handling 2015-07-12 17:14:21 +00:00
hyunghwan.chung
f2ec2d5fd2 did some preparatory work to support namespaces 2015-07-10 14:06:07 +00:00
hyunghwan.chung
4d181b521a introduced #extend for extending a class.
#class XXX without a superclass inherits nil
2015-07-06 13:27:49 +00:00
hyunghwan.chung
132e4b48bb aded STIX_SYNERR_INCLUDE 2015-07-03 14:38:37 +00:00
hyunghwan.chung
5ba0c67dd1 added the MAKE_BLOCK instruction to replace a serieos of PUSH_CONTEXT, PUSH_INTLIT, PUSH_INTLIT, SEND_BLOCK_COPY 2015-07-03 13:06:01 +00:00
hyunghwan.chung
37740da2d7 added PUSH_INTLIT and PUSH_NEGINTLIT instructions 2015-07-02 15:45:48 +00:00
hyunghwan.chung
cf3e24a6cd enhanced method preamble 2015-07-02 14:59:52 +00:00
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
d6a9ca91fa added JUMP2_FORWARD and JUMP2_BACKWARD 2015-07-01 07:21:54 +00:00
hyunghwan.chung
2d2039f4a5 fixed TEMPVAR handling 2015-06-30 15:12:37 +00:00