summaryrefslogtreecommitdiffhomepage
path: root/src/vm.c
AgeCommit message (Collapse)Author
2014-03-22use FiberError in vm.ctake_cheeze
2014-03-20should restore proc after rescue; close #1891Yukihiro "Matz" Matsumoto
2014-03-19rename mrb_yield_internal to mrb_yield_with_class since it's no longer internalYukihiro "Matz" Matsumoto
2014-03-04Use mrb_exc_new_str_lit widelycubicdaiya
2014-03-03Kernel#send does not use mrb_funcall anymore for most cases; ref #1680Yukihiro "Matz" Matsumoto
2014-03-01clear exc_catched before jumping to L_RAISEtake_cheeze
2014-03-01support c++ exceptiontake_cheeze
2014-03-01allow send method not to call mrb_funcall if calling method is implemented ↵Yukihiro "Matz" Matsumoto
in Ruby; fix #1680 ref #1765
2014-03-01exception in fiber should make resume to raise in parent fiber context; ↵Yukihiro "Matz" Matsumoto
close #1765
2014-03-01use C style comments instead of C++ style commentscubicdaiya
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-02-28support break from fiber block; fix #1766Yukihiro "Matz" Matsumoto
2014-02-28restore proc after restoring from fiber; ref #1766Yukihiro "Matz" Matsumoto
2014-02-27fix indentYukihiro "Matz" Matsumoto
2014-02-26use mrb_str_new_lit instead of mrb_str_new for C string literalcubicdaiya
2014-02-20move src/error.h to include/mruby/error.htake_cheeze
2014-02-15normalize NaN after division that may generate NaN; fix #1712Yukihiro "Matz" Matsumoto
2014-02-11Clang and ICC/ICL: define DIRECT_THREADEDcremno
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-09initialize ci->stackent at the top; #1691Yukihiro "Matz" Matsumoto
2014-02-09Store raw stack address in callinfo instead of offset from stbasMiura Hideki
2014-02-05Fiber.new{break} caused SEGVYukihiro "Matz" Matsumoto
2014-01-23add callback invocation from OP_DEBUGYukihiro "Matz" Matsumoto
2014-01-07remove superfluous includescremno
- 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-05need not to initialize ci->err at toplevelYukihiro "Matz" Matsumoto
2014-01-05avoid decrimenting eidx out of ecall()Yukihiro "Matz" Matsumoto
2014-01-05execute ensure clause correctly without OP_EPOPh2so5
2014-01-04pop ensure stack before execution; close #1638Yukihiro "Matz" Matsumoto
2014-01-04always clear ci->errYukihiro "Matz" Matsumoto
2014-01-04quicker release of arena after ensure callsYukihiro "Matz" Matsumoto
2014-01-03use macros for assignments to ci->errh2so5
2013-12-15Fixed callinfo buffer overflow while calling ensure handlersnanami
2013-12-05remove unnecessary keep size adjustment in stack_extend_alloc(); close #1602Yukihiro "Matz" Matsumoto
2013-12-01Merge pull request #1600 from take-cheeze/mrb_intern_litYukihiro "Matz" Matsumoto
Proposal of mrb_intern_lit macro.
2013-12-01add mrb_intern_lit for creating symbol from string literaltake_cheeze
2013-12-01inline mrb_gc_arena_restore() and stack_extend() in VM loopYukihiro "Matz" Matsumoto
2013-11-29rename mrb_intern2() to mrb_intern(); huge API incompatibility; close #1513Yukihiro "Matz" Matsumoto
2013-11-20resolve conflictYukihiro "Matz" Matsumoto
2013-11-19irep->pool struct pool -> mrb_valueMiura Hideki
2013-11-18Merge pull request #1584 from cremno/rename-mrb_exc_new3Yukihiro "Matz" Matsumoto
renamed mrb_exc_new3 to mrb_exc_new_str
2013-11-19clear ci->err after const set; revert 5b51b1; ref #1583Yukihiro "Matz" Matsumoto
2013-11-18renamed mrb_exc_new3 to mrb_exc_new_strcremno
- more descriptive name (there's no mrb_exc_new2) - no wrapper (macro/static inline function) for backwards compatibility because nothing besides mruby itself seems to be calling this function: <http://mruby-code-search.ongaeshi.me/home?query=mrb_exc_new3>
2013-11-18check upper callinfo to call ensure block; close #1579Yukihiro "Matz" Matsumoto
2013-11-15enum mrb_vtype varies on compile time configuration, namely MRB_NAN_BOXINGYukihiro "Matz" Matsumoto
2013-11-15remove warning on NAN_BOXINGYukihiro "Matz" Matsumoto
2013-11-07irep->pool not to be GCedYukihiro "Matz" Matsumoto
2013-11-07modified to use irep->reps to reference child ireps. preparation forYukihiro "Matz" Matsumoto
removing irep array from mrb_state. note that instructions OP_LAMBDA, OP_EXEC and OP_EPUSH are incompatible, and dumped mrb format has changed.
2013-11-03refactor mrb_context_run()fleuria
2013-11-03introduce mrb_context_run()fleuria
currently there are two scnenario to call mrb_run(), the first is calling a proc, in this case mrb should create a new environment, discarding all the variables except args, reciever and block. the second is calling the newly generated irep, like in mirb. in this case, the variables should be kept after mrb_run(). so we introduce mrb_context_run() to handle this seperately.
2013-10-31restore context status to RUNNING on automatic yield at the end of the ↵Yukihiro "Matz" Matsumoto
block; fix #1555
2013-10-30preserve only arguments on stack; fix #1527Yukihiro "Matz" Matsumoto
2013-10-16move declarations to the beginning of blocksYukihiro "Matz" Matsumoto