Commit Graph

269 Commits

Author SHA1 Message Date
mirichi ad60f81032 The correct is to compare the MRB_STACK_GROWTH. 2014-04-26 19:37:53 +09:00
Yukihiro "Matz" Matsumoto e76be4e2ab check length before calling stack_copy(); based on a patch from @mirich; close #2129 2014-04-26 12:07:51 +09:00
mirichi fa1a1e6db8 Refactoring OP_CALL 2014-04-25 21:49:29 +09:00
Yukihiro "Matz" Matsumoto 83c1399af0 eliminate plain int except for a few cases like arena_index 2014-04-25 04:01:57 +09:00
mirichi 4ab801c045 fixed. 2014-04-23 19:39:14 +09:00
mirichi e6c757b5c1 bug fixed 2014-04-22 23:10:40 +09:00
mirichi 8195224072 reduce the init size of stack 2014-04-22 22:02:03 +09:00
mirichi b523018803 OP_SEND refactoring 2014-04-22 20:04:10 +09:00
cremno bc23a5e9e5 remove mrb_str_buf_cat
It does the same as `mrb_str_cat`.
2014-04-21 21:28:06 +02:00
mirichi b796c503fa OP_EQ系が速くなった 2014-04-15 19:30:42 +09:00
Takeshi Watanabe 824d3450c5 Qualify argv argument of API const. 2014-04-11 20:38:23 +09:00
take_cheeze 9f24cd6d79 Qualify mrb_yield_*'s argv const. 2014-04-10 17:34:38 +09:00
Yukihiro "Matz" Matsumoto 2d61698799 should not access proc->body.irep if proc is PROC_CFUNC; close #1999 2014-04-04 01:47:47 +09:00
take_cheeze 755ded2ef0 Use MRB_ENV_STACK_SHARED_P to check cioff field of REnv. 2014-04-01 01:53:28 +09:00
take_cheeze b38eb72d82 Add macro MRB_ENV_UNSHARE_STACK instead of assigning -1 directly. 2014-04-01 01:35:40 +09:00
take_cheeze 80534b6d14 Use MRB_ENV_STACK_LEN instead of accessing flags directly to get REnv's stack length. 2014-04-01 01:13:39 +09:00
Yukihiro "Matz" Matsumoto 49d18ca848 Kernel#send should preserve nregs in callinfo; close #1970 2014-03-29 00:21:52 +09:00
Yukihiro "Matz" Matsumoto b8e434a5e6 initialize ci->target_class in mrb_toplevel_run; ref #1942 close mattn/mruby-require#20 2014-03-27 23:51:08 +09:00
Yukihiro "Matz" Matsumoto 28871b9d1f should not over process ensure clauses; close #1949 2014-03-26 17:49:27 +09:00
Yukihiro "Matz" Matsumoto bfd2a539ed add new function mrb_toplevel_run to prevent running through C function boudaries on exceptions; close #1942 2014-03-26 01:09:09 +09:00
take_cheeze f536492521 use FiberError in vm.c 2014-03-22 03:19:58 +09:00
Yukihiro "Matz" Matsumoto 36836c8eb9 should restore proc after rescue; close #1891 2014-03-20 16:10:12 +09:00
Yukihiro "Matz" Matsumoto 9084e03556 rename mrb_yield_internal to mrb_yield_with_class since it's no longer internal 2014-03-19 08:57:54 +09:00
cubicdaiya 019d15c3ee Use mrb_exc_new_str_lit widely 2014-03-04 02:45:53 +09:00
Yukihiro "Matz" Matsumoto 369c6c3649 Kernel#send does not use mrb_funcall anymore for most cases; ref #1680 2014-03-03 13:31:29 +09:00
take_cheeze b98890a4b7 clear exc_catched before jumping to L_RAISE 2014-03-01 20:53:31 +09:00
take_cheeze 78915f9601 support c++ exception 2014-03-01 20:05:29 +09:00
Yukihiro "Matz" Matsumoto 675fd3dc80 allow send method not to call mrb_funcall if calling method is implemented in Ruby; fix #1680 ref #1765 2014-03-01 18:13:10 +09:00
Yukihiro "Matz" Matsumoto 8e170ce915 exception in fiber should make resume to raise in parent fiber context; close #1765 2014-03-01 12:58:31 +09:00
cubicdaiya 67de10bfcb use C style comments instead of C++ style comments
According to CONTRIBUTING.md,

Don't use C++ style comments

 /* This is the prefered comment style */

Use C++ style comments only for temporary comment e.g. commenting out some code lines.
2014-03-01 03:31:45 +09:00
Yukihiro "Matz" Matsumoto 6bd3d88edd support break from fiber block; fix #1766 2014-02-28 18:43:35 +09:00
Yukihiro "Matz" Matsumoto 03fde35760 restore proc after restoring from fiber; ref #1766 2014-02-28 12:50:32 +09:00
Yukihiro "Matz" Matsumoto d264e1addd fix indent 2014-02-27 03:50:59 +09:00
cubicdaiya 4c283714f6 use mrb_str_new_lit instead of mrb_str_new for C string literal 2014-02-26 22:34:12 +09:00
take_cheeze 08ea324593 move src/error.h to include/mruby/error.h 2014-02-20 22:41:29 +09:00
Yukihiro "Matz" Matsumoto e29efb02bd normalize NaN after division that may generate NaN; fix #1712 2014-02-15 19:59:26 +09:00
cremno 8a3a3a5a49 Clang and ICC/ICL: define DIRECT_THREADED
This is most likely only needed on Windows be-
cause __GNUC__ is not defined by both compilers.

It might fail with some unusual configurations.
If that is the case, feel free to open an issue.
2014-02-11 23:55:52 +01:00
Yukihiro "Matz" Matsumoto 00bdaec766 initialize ci->stackent at the top; #1691 2014-02-09 19:20:16 +09:00
Miura Hideki 5df82e357c Store raw stack address in callinfo instead of offset from stbas 2014-02-09 16:42:25 +09:00
Yukihiro "Matz" Matsumoto 04eb577b69 Fiber.new{break} caused SEGV 2014-02-05 12:51:17 +09:00
Yukihiro "Matz" Matsumoto e0e5aebc66 add callback invocation from OP_DEBUG 2014-01-23 15:08:38 +09:00
cremno aa655b9ee1 remove superfluous includes
- reduce compile time by a little bit (full-core: ~0.7s for me)
- thanks to 'include-what-you-use' for some help
- include Standard C header files before any other (coding style)
2014-01-07 17:56:30 +01:00
Yukihiro "Matz" Matsumoto 791021575c need not to initialize ci->err at toplevel 2014-01-05 20:03:45 +09:00
Yukihiro "Matz" Matsumoto f5cca078e3 avoid decrimenting eidx out of ecall() 2014-01-05 19:18:13 +09:00
h2so5 0e23038a60 execute ensure clause correctly without OP_EPOP 2014-01-05 16:24:20 +09:00
Yukihiro "Matz" Matsumoto 2122cf48db pop ensure stack before execution; close #1638 2014-01-04 01:30:38 +09:00
Yukihiro "Matz" Matsumoto 6bcbef5064 always clear ci->err 2014-01-04 00:54:05 +09:00
Yukihiro "Matz" Matsumoto 4b68fbcd83 quicker release of arena after ensure calls 2014-01-04 00:13:28 +09:00
h2so5 77f215c837 use macros for assignments to ci->err 2014-01-03 21:54:58 +09:00
nanami 87a392067a Fixed callinfo buffer overflow while calling ensure handlers 2013-12-15 22:25:59 +08:00