hyunghwan.chung
544ee2b4ae
added more exception handling and ensure implementation code
2016-06-23 15:35:28 +00:00
hyunghwan.chung
9c2c0ea6c2
rewrote some exception and ensure implementation code
2016-06-22 13:43:49 +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
f43240ca4d
improved log message handling more
2016-06-03 16:16:23 +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
9f4433cf98
fixed legacy mac os timer interrupt handling
2016-05-19 11:22:02 +00:00
hyunghwan.chung
c39aa957ad
added some support routines for classic mac os
2016-05-19 03:49:23 +00:00
hyunghwan.chung
50776d945f
added Semaphore>>forMutualExclusion
2016-05-18 15:10:00 +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
42006f9c32
renamed some source files
2016-05-15 16:01:43 +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
197ceb3a76
simplified build files
2016-05-07 02:41:29 +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
93872bd81d
redefined Apex>primitiveFailed
2016-05-02 13:59: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
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
94717d197a
added some exception handling implementation code
2016-04-29 16:40:25 +00:00
hyunghwan.chung
e52fe398c7
added some test scripts
2016-03-28 13:27:03 +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