summaryrefslogtreecommitdiffhomepage
path: root/src/vm.c
AgeCommit message (Collapse)Author
2012-08-13use TRUE/FALSE instead of 1/0Yukihiro Matsumoto
2012-08-13Modify exception handling.Masamitsu MURASE
If an exception is raised before cipush is called in mrb_run, it should be handled in the outer mrb_run.
2012-08-07Fixed memory leak when calling stack_extend in m->body.funcYuichiro MASUI
2012-08-04load_exec(): Fix message lenghtes in mrb_exc_new().Masaki Muranaka
mrb_run(): Fix not to use a magic number but sizeof.
2012-08-04super look-up scheme fixed; close #415Yukihiro Matsumoto
2012-08-03update regs after cfunc call [2]Yukihiro Matsumoto
2012-08-03update regs after cfunc callYukihiro Matsumoto
2012-08-02wrong return value from empty block/lambdaYukihiro Matsumoto
2012-08-02keep minimal stack space (recv and blk)Yukihiro Matsumoto
2012-08-02stack pos should be adjusted for CFUNC OP_EXECYukihiro Matsumoto
2012-08-02protect return value from mrb_funcallYukihiro Matsumoto
2012-08-02move OP_LOADNIL just before OP_SEND to improve performance on some platformsYukihiro Matsumoto
2012-08-01make mrb_funcall_argv and mrb_funcall_with_block to take mrb_sym as a method ↵Yukihiro Matsumoto
name
2012-08-01restore arena index after funcallYukihiro Matsumoto
2012-08-01no OP_LOADNIL for operators (OP_ADD, etc)Yukihiro Matsumoto
2012-07-31reduce restoration of arena_idx in vm loopYukihiro Matsumoto
2012-07-29Make all(?) void casts explicit for C++Max Anselm
2012-07-28Modify ci->nregs.Masamitsu MURASE
2012-07-27adjust ci->nregs for C implemented methodsYukihiro Matsumoto
2012-07-24instance_eval should set target_class in the blockYukihiro Matsumoto
2012-07-16Reduce strlen(). refs #301Masaki Muranaka
2012-07-13allow DISABLE/ENABLE_SATDIOYukihiro Matsumoto
2012-07-08Use mrb_calloc if you want zero cleard buffers.Masaki Muranaka
2012-07-05prepare for OP_TAILCALLYukihiro Matsumoto
2012-06-27Use sizeof to get char array sizes.Masaki Muranaka
2012-06-25ci->acc should not be left uninitialized; close #303Yukihiro Matsumoto
2012-06-24resolve crash issue on LLVM; longjmp cleared some local variableYukihiro Matsumoto
2012-06-23reduce calling mrb_str_new_cstr() to avoid strlen(); #301Yukihiro Matsumoto
2012-06-23remove assertion for false assumption; mrb_str_new(0, len) where len > 0 can ↵Yukihiro Matsumoto
be used to allocate an unintialized string
2012-06-20remove RuntimeError from mrb_stateYukihiro Matsumoto
2012-06-20protect crash from empty irepYukihiro Matsumoto
2012-06-15exception jump should not cross mrb_funcall border; close #276Yukihiro Matsumoto
2012-06-15should not swallow exceptions from ensure clauseYukihiro Matsumoto
2012-06-14do not offset jump from OP_ENTER if no optional argument givenYukihiro Matsumoto
2012-06-14uvenv(): proc->env may be NULL be before uplevelYukihiro Matsumoto
2012-06-14should invoke ensure clauses just before terminating mrb_sun; close #270Yukihiro Matsumoto
2012-06-13optimized OP_{ADD,SUB,MUL,DIV} to use numeric function for fixnums to handle ↵Yukihiro Matsumoto
overflow
2012-06-12should raise error on top-level super/yieldYukihiro Matsumoto
2012-06-11zsuper should respect block given; close #185Yukihiro Matsumoto
2012-06-10fixed typo DISPACTH to DISPATCHYukihiro Matsumoto
2012-06-05mruby/array.h: rename buf to ptrYukihiro Matsumoto
2012-06-03should have adjusted stack address kept in closures; close #222Yukihiro Matsumoto
2012-06-03stack_extend boundary condition was wrongYukihiro Matsumoto
2012-05-25adjust stack position before exiting mrb_run(); close #193Yukihiro Matsumoto
2012-05-24made mrb_get_args() better (optinal args, type checks); close #173 #176Yukihiro Matsumoto
2012-05-23cast style consistencyYukihiro Matsumoto
2012-05-21wrong stack position in rescue clauseYukihiro Matsumoto
2012-05-20More C++ compilability work: mrb_obj_alloc void* conversionsMitchell Blank Jr
One of the biggest set of changes needed to make C++ compile, is that you can't autoconvert "void*" to a different pointer type without a cast (you can of course, convert pointers *to* "void*"!) For the first part, convert the users of "mrb_obj_alloc". Since it has to return something, make it RBasic* (that's what mrb_obj_alloc() is operating on anyway). This way, even in C you'll get a warning if you don't cast it. For places where there are a lot of similar calls to mrb_obj_alloc(), this can be easily hidden through a macro. I did this in string.c: #define mrb_obj_alloc_string(mrb) ((struct RString *) mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class)) I also updated the mrb_object() macro to also return a RBasic* -- my previous commit changed that from "void*" -> "RObject*", but I figure it should be consistent with mrb_obj_alloc()
2012-05-16Avoid "may be used uninitialized in this function" warning.Masaki Muranaka
2012-05-14OP_STOP to return exception object on errorYukihiro Matsumoto