Commit Graph

1199 Commits

Author SHA1 Message Date
hyunghwan.chung
1533c42dbf removed code_start_loc from moo_method_data_t and added start_loc 2019-07-12 08:05:44 +00:00
hyunghwan.chung
3e506cbcfb added System>>backtrace 2019-07-12 07:24:37 +00:00
hyunghwan.chung
18e186677e simplified source line and source text representation of a methond in dbgi 2019-07-12 05:06:05 +00:00
hyunghwan.chung
8e5e5234cb simplified source line and source text representation of a methond in dbgi 2019-07-12 03:38:45 +00:00
hyunghwan.chung
fcf6d3ffc1 touched up pf_method_get_source_file() and pf_method_get_ip_source_line() 2019-07-11 15:58:16 +00:00
hyunghwan.chung
d5475d79b6 added pf_method_get_ip_source_line() and defined CompiledMethod::ipSourceLine 2019-07-11 06:43:47 +00:00
hyunghwan.chung
4afe4b459d renamed clear_io_names() to moo_clearcionames().
attempting to write a fucntion that gives a source line for an instruction pointer
2019-07-10 15:30:08 +00:00
hyunghwan.chung
b3eb804f87 reorganized moo_duputobcstr(), moo_dupbtoucstr(), moo_dupbtouchars(), moo_duputobchars().
renamed add_io_name() to moo_addcioname().
changed input_handler in std.c to set arg->name when opening a file with moo_addcioname().
shortened dbginfo to dbgi.
enhanced the compiler to record the class location in dbgi
2019-07-10 09:19:38 +00:00
hyunghwan.chung
b4c6e6a9de added CompiledMethod>>sourceFile, CompiledMethod>>sourceLine.
added pf_method_get_source_file().
enhanced moo_addmethodtodbginfo().
enhanced the compiler to call moo_addfiletodbginfo(), moo_addmethodtodbginfo()
2019-07-09 15:56:34 +00:00
hyunghwan.chung
8820c3db16 changed dbginfo functions and structures a bit 2019-07-09 09:59:38 +00:00
hyunghwan.chung
e6d7cbd767 some more code to handle dbginfo 2019-07-08 15:41:57 +00:00
hyunghwan.chung
b88900eda2 writing some debug information tracking functions 2019-07-08 07:51:53 +00:00
hyunghwan.chung
fba3c3213c attempting to store the source location information collected while compiling into the moo_dbginfo_t data structure 2019-07-07 15:24:27 +00:00
hyunghwan.chung
81a1785c35 changed the compiler to set source_file and source_line into moo_method_t 2019-07-06 09:44:29 +00:00
hyunghwan.chung
c334b0af28 added the code_start_loc field to moo_method_data_t and updated emit_byte_instruction()
to get distance of the instruction being emitted
2019-07-06 09:11:25 +00:00
hyunghwan.chung
70eaee601e checking argument in pf_context_find_exception_handler() 2019-07-06 07:46:08 +00:00
hyunghwan.chung
7f835ea120 added moo_ischildclassof().
filled pf_context_find_exception_handler() to speed up exception handling a bit
2019-07-05 08:12:42 +00:00
hyunghwan.chung
3f6b0335d9 changed comp.c to pass source location to emit_XXX_instruction() functions 2019-07-04 10:04:59 +00:00
hyunghwan.chung
8e720e4bda changed to pass source location to more calls to emit_xxx_instruction() functions 2019-07-03 15:06:54 +00:00
hyunghwan.chung
67c9c18282 made partial changes to pass source location to emit_XXX_instruction() functions 2019-07-03 08:48:02 +00:00
hyunghwan.chung
a9045a56b2 changed the moo_code_t structure a little 2019-07-02 09:48:56 +00:00
hyunghwan.chung
92093dd23f added two more fields into CompiledMethod. no implementation change has been made yet 2019-06-29 10:46:28 +00:00
hyunghwan.chung
20b50c7bb6 defined select:,reject:,collect: in Array 2019-06-28 06:13:09 +00:00
hyunghwan.chung
2d8277a046 enhanced the compiler to process byte array in string notation - B"..." 2019-06-27 14:16:43 +00:00
hyunghwan.chung
4c7b5f2df8 removed the S'' literals from the moo codes 2019-06-27 08:06:33 +00:00
hyunghwan.chung
ea4d782c1d changed %(, %[, %{ to ##(, ##[, ##{ respectively
put back % into is_binselchar().
attempting to support a string-like byte array literal - B"XXXX"
2019-06-27 07:43:17 +00:00
hyunghwan.chung
fcb987891e no more ## comment. // as a signle-line comment starter. 2019-06-27 06:29:09 +00:00
hyunghwan.chung
613e33d186 macro reordering in lib/moo.h. nothing meaningful 2019-06-24 08:37:19 +00:00
hyunghwan.chung
07b4364654 late commit for uncommited changes in the previous commit. 2019-06-23 14:53:01 +00:00
hyunghwan.chung
ec262c4f68 split the method cache into 2 buckets. one for instance methods, another for class methods. the method type doesn't have to stored after this split. 2019-06-23 14:51:56 +00:00
hyunghwan.chung
3419097054 removed send_message_with_str(), find_method_with_str()
registered some commonly used method names as symbols - doesNotUnderstand:, unwindTo:return:, primitiveFailed
invocation of the above methods doesn't need send_message_with_str()
changed startup method invocation to look up for a symbol first instead of using the above functions removed
2019-06-23 04:49:38 +00:00
hyunghwan.chung
ae20171772 the simple method cache seems working now. pending refinement 2019-06-22 14:22:58 +00:00
hyunghwan.chung
b33e0744d2 work in progress. implementing method lookup cache 2019-06-22 05:58:55 +00:00
hyunghwan.chung
e6747b21b8 attempting to implement a simple method lookup cache. work in progress 2019-06-22 02:02:59 +00:00
hyunghwan.chung
a8c18f525b fixed a format specifier bug for a string in moo_fmt_object_() 2019-06-21 11:49:25 +00:00
hyunghwan.chung
2cbfdfd6dd added the _instsize field to moo_t.
changed moo_getxtn() to utilize this new field.
remove moo_getxtnstd() as it's not needed any more for the added field
2019-06-21 07:21:58 +00:00
hyunghwan.chung
102de55322 changed the block comment style the same as C 2019-06-19 12:38:09 +00:00
hyunghwan.chung
6b2cb6f9df fixed a rdonly flag bug in moo_shallowcpy()
added SequenceableCollection>>swap:with:
2019-06-19 09:21:28 +00:00
hyunghwan.chung
e036f3f6d7 fixed the wrong macro name in format_stack_args() 2019-06-02 16:01:33 +00:00
hyunghwan.chung
d7246b729e diverted w/W to k/K in format_stack_args() in the non-unicode mode 2019-06-02 15:58:31 +00:00
hyunghwan.chung
1222c2bf78 added moo_logbfmtv() and moo_logufmtv() 2019-05-31 10:43:27 +00:00
hyunghwan.chung
a4c13608ef fixed some inconsistency in moo_fmt_object_().
changed to handle a symbol with a c-style escape sequences enclosed in #""
2019-05-30 15:44:24 +00:00
hyunghwan.chung
5bf79fb4b5 finished refactoring fmt code in fmt.c.
removed old fmt code by deleting fmtout.c and fmtoutv.h
2019-05-29 09:20:45 +00:00
hyunghwan.chung
054313b96c renamed moo_sprintfmtfromstack() to moo_strfmtcallstack().
refactored related functions
2019-05-29 01:35:13 +00:00
hyunghwan.chung
3f274d74b7 refactored moo_seterrbfmt() and moo_seterrufmt() with moo_bfmt_outv() and moo_ufmt_outv() 2019-05-28 08:55:13 +00:00
hyunghwan.chung
fe847a89a5 removed an redundant semicolon from moo-utl.h 2019-05-27 17:57:43 +00:00
hyunghwan.chung
57c30e4563 work in progress - refactoring fmtout 2019-05-27 17:50:24 +00:00
hyunghwan.chung
ea9f9b81e1 simple changes to fmtoutv.h 2019-05-27 11:57:40 +00:00
hyunghwan.chung
450f9a8b5c refactoring fmtout more 2019-05-27 10:15:07 +00:00
hyunghwan.chung
2cb432b67d refactoring fmtout 2019-05-27 10:00:27 +00:00