Commit Graph

1434 Commits

Author SHA1 Message Date
Yuichi Nishiwaki daa7513be5 add pic_throw function 2014-03-24 14:09:28 +09:00
Yuichi Nishiwaki 2246213a74 add emacs keyword highlight plugins 2014-03-24 13:42:24 +09:00
Yuichi Nishiwaki 20e4e90921 Merge branch 'throw-in-catch' 2014-03-24 13:29:49 +09:00
Yuichi Nishiwaki 136980ae2e rewrite define-library expander with pic_try/catch 2014-03-24 13:25:37 +09:00
Yuichi Nishiwaki 3d465f21dc now you can 'throw' exceptions from catch clause 2014-03-24 13:24:37 +09:00
Yuichi Nishiwaki 4a2cb90095 move pic_try/pic_catch macros to error.h 2014-03-24 12:30:21 +09:00
Yuichi Nishiwaki 42a491ad6e Merge branch 'broken-op-not' 2014-03-24 10:58:03 +09:00
Yuichi Nishiwaki d5d721f9dd pic_vtype should not evaluate the argument twice 2014-03-24 10:55:03 +09:00
Yuichi Nishiwaki 222e3618ee use uint**_t for nan-boxing 2014-03-24 10:49:20 +09:00
Yuichi Nishiwaki 6d0e147f3d Merge branch 'master' of github.com:wasabiz/picrin 2014-03-24 10:38:45 +09:00
Yuichi Nishiwaki 48e58293dc Merge pull request #74 from koba-e964/master
[bugfix] macroexpand (Issue #68)
2014-03-24 10:38:29 +09:00
koba-e964 30cc6998de [bugfix] macroexpand
macroexpand restores pic->lib in the case of an error
2014-03-23 20:58:28 +09:00
Yuichi Nishiwaki b12be97194 cleanup 2014-03-23 18:47:55 +09:00
Yuichi Nishiwaki e7a2a8f0a4 Merge branch 'lazy-tearoff' 2014-03-23 13:12:32 +09:00
Yuichi Nishiwaki 12728df36f perform tear-off operation lazily 2014-03-23 13:09:35 +09:00
Yuichi Nishiwaki 93414fac52 s/env.values/env.regs/g 2014-03-23 12:45:36 +09:00
Yuichi Nishiwaki 25e5b51c1c Merge branch 'tearoff' 2014-03-23 12:26:03 +09:00
Yuichi Nishiwaki 4a1809a9c5 get access to captured local variables with OP_LREF/OP_LSET 2014-03-23 12:18:41 +09:00
Yuichi Nishiwaki 1b6f1db1c0 s/create_cv_table/create_activation/g 2014-03-23 12:10:34 +09:00
Yuichi Nishiwaki cac31845d0 cv_tbl is no longer used 2014-03-23 12:10:34 +09:00
Yuichi Nishiwaki c9eb612561 do variable closing operation not in OP_CALL but in OP_RET 2014-03-23 12:10:34 +09:00
Yuichi Nishiwaki 626ebefa65 Merge branch 'remove-resolver-pass' 2014-03-23 11:59:47 +09:00
Yuichi Nishiwaki 74294c819f remove resolver pass 2014-03-23 11:55:06 +09:00
Yuichi Nishiwaki 312c977c17 distinguish lref and cref at analysis stage 2014-03-23 11:28:11 +09:00
Yuichi Nishiwaki 0bcb970842 handle grefs at analyzing stage 2014-03-23 11:10:27 +09:00
Yuichi Nishiwaki 14eba8f92d Merge branch 'refactor-codegen3' 2014-03-22 20:00:23 +09:00
Yuichi Nishiwaki d8ab5cadd1 cleanup. rename local variable. 2014-03-22 19:19:49 +09:00
Yuichi Nishiwaki ac4e46783c remove unused property 2014-03-22 19:13:46 +09:00
Yuichi Nishiwaki 12852b0628 s/cv_num/capturec/g 2014-03-22 19:13:07 +09:00
Yuichi Nishiwaki bdcf8a4bcb change ugly implementation; don't call realloc for each puching! 2014-03-22 19:04:42 +09:00
Yuichi Nishiwaki cb2f9fece3 separate cv table creation 2014-03-22 18:58:25 +09:00
Yuichi Nishiwaki 5a56f57782 hold local variables information in codegen_context 2014-03-22 18:46:57 +09:00
Yuichi Nishiwaki 046fae1adb grammer error fix 2014-03-22 18:41:46 +09:00
Yuichi Nishiwaki 510af57ce5 explict type cast for return valus from pic_*allloc family is not mandatory 2014-03-22 18:29:14 +09:00
Yuichi Nishiwaki a9e98b1c31 small CSE optimize for irep 2014-03-22 18:23:33 +09:00
Yuichi Nishiwaki 2906076f84 Merge branch 'refactor-codegen2' 2014-03-21 12:52:39 +09:00
Yuichi Nishiwaki 189487b026 [bugfix] don't push symbols doubly to captured variable list 2014-03-21 12:51:57 +09:00
Yuichi Nishiwaki 9a3ff987af define pic_push/pic_pop macro in pair.h 2014-03-21 12:36:46 +09:00
Yuichi Nishiwaki a9a530c9bd memorize only list of captured symbols 2014-03-21 12:34:45 +09:00
Yuichi Nishiwaki 77d74fd592 Merge branch 'refactor-codegen' 2014-03-21 08:24:20 +09:00
Yuichi Nishiwaki 91065a7c25 add commentary to lambda analyzer to avoid regression 2014-03-21 08:20:33 +09:00
Yuichi Nishiwaki b6b47943bb use enum value for variable marking 2014-03-21 08:17:52 +09:00
Yuichi Nishiwaki cfde253f26 split xvect module 2014-03-20 23:09:45 +09:00
Yuichi Nishiwaki 53cd2942d1 change xvect API 2014-03-20 22:12:20 +09:00
Yuichi Nishiwaki 0c12784da5 use xvect 2014-03-20 21:56:49 +09:00
Yuichi Nishiwaki 0b4cb76834 add xvect 2014-03-20 21:17:28 +09:00
Yuichi Nishiwaki 1548a17b35 cleanup 2014-03-20 13:48:51 +09:00
Yuichi Nishiwaki 37a87046b7 remove redundant arena management 2014-03-20 13:48:32 +09:00
Yuichi Nishiwaki 3158a41772 refactor analyze_args 2014-03-20 13:41:47 +09:00
Yuichi Nishiwaki 6d6420f2b9 refactor analyze_var 2014-03-20 11:44:12 +09:00