summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2017-09-12Remove temporary limitation of `OP_EPOP`.Yukihiro "Matz" Matsumoto
After f68f5f6, the operand of `OP_EPOP` should have been `1`. Now we have removed the limitation.
2017-09-12receiver variables must be "mrb_int" for mrb_get_args("i").Tomoyuki Sahara
Otherwise, it can cause a segfault on the platforms where the size of "int" and "mrb_int" differs.
2017-09-12remove whitespaces at the end of line.Tomoyuki Sahara
2017-09-11The callinfo stack may be reallocated in `cipush`; fix rest of #3809Yukihiro "Matz" Matsumoto
fix #3809
2017-09-11The ensure stack may be empty at `OP_EPOP`; fix 1st part of #3809Yukihiro "Matz" Matsumoto
2017-09-06Avoid calling `mrb_funcall` to invoke `#initialize` from `Class.new`.Yukihiro "Matz" Matsumoto
If `#initialize` is implemented in C, we don't need stack consuming `mrb_funcall`.
2017-09-05Avoid recursion from `mark_context()`.Yukihiro "Matz" Matsumoto
2017-09-05Avoid crossing C function boundary from `OP_EPOP`; ref #3789Yukihiro "Matz" Matsumoto
2017-09-05Restrict `OP_EPOP` operand to `1`; ref #3789Yukihiro "Matz" Matsumoto
2017-09-04Merge pull request #37 from udzura/fix-typesTomoyuki Sahara
Fix type int to mrb_int
2017-09-04Fix type int to mrb_intUchio KONDO
- mruby's default int size is changed after: https://github.com/mruby/mruby/commit/f0f4a1088a270e339407a24ffe8be748f4764fc2 - implicit cast causes some errors
2017-09-04Restructure `irep->outer` chain; fix #3804Yukihiro "Matz" Matsumoto
Instead of `irep -> proc` chain, we use `irep -> irep` chain to avoid GC bugs like #3804. We added `target_class` reference to `mrb_irep` struct. That means one more word consumption per `irep`.
2017-09-04Call `initialize` only when it's not empty.Yukihiro "Matz" Matsumoto
2017-09-03Merge pull request #3806 from flaviommedeiros/masterYukihiro "Matz" Matsumoto
Trying to make the code more readable
2017-09-03Merge pull request #3805 from fl0l0u/patch-1Yukihiro "Matz" Matsumoto
Update print.c
2017-09-02Update print.cfl0l0u
Strings not containing a newline are not printed synchronously ex. bin/mruby -e '["a", "b", "c", "\n", "d", "e", "f", "\n"].each {|e| print e ; usleep 200000}'
2017-09-02Trying to make the source code more understandable by removing mixing of ↵Flavio Medeiros
ternary if statements with attributions.
2017-09-02Merge pull request #3802 from christopheraue/proc_break_testsYukihiro "Matz" Matsumoto
Tested local jump errors caused by break in a proc
2017-09-01Avoid copying over initialized procs using `initialize_copy`; fix #3803Yukihiro "Matz" Matsumoto
It may be better to raise exceptions, but CRuby doesn't.
2017-09-01Update method cache clearing.Yukihiro "Matz" Matsumoto
2017-09-01Make the default integer size to be `MRB_INT64` on 64bit systems; close #3800Yukihiro "Matz" Matsumoto
Unless `MRB_NAN_BOXING` is specified.
2017-08-30Tested LocalJumpErrors caused by break in a procChristopher Aue
2017-08-30Merge pull request #3801 from christopheraue/assert_raise_refactoringYukihiro "Matz" Matsumoto
Allowed to pass multiple exceptions to assert_raise
2017-08-30Allowed to pass multiple exceptions to assert_raiseChristopher Aue
2017-08-30Set the ORPHAN flag in `Proc.new`; fix #3798Yukihiro "Matz" Matsumoto
2017-08-30Fixed a critical typo; ref #3798Yukihiro "Matz" Matsumoto
2017-08-30Need to mark `mrb->range_class`; fix #3797Yukihiro "Matz" Matsumoto
2017-08-30Merge pull request #3799 from christopheraue/assert_raise_refactoringYukihiro "Matz" Matsumoto
Refactored #assert_raise and #assert_nothing_raised
2017-08-29Refactored #assert_raise and #assert_nothing_raisedChristopher Aue
2017-08-29Need to update `ci` after `callinfo` stack reallocation; fix #3796Yukihiro "Matz" Matsumoto
2017-08-29Exclude the top-level closure from `each_object`; fix #3793Yukihiro "Matz" Matsumoto
2017-08-29Revert "Clear `irep->outer` when no `Proc` reference the `irep`; fix #3793"Yukihiro "Matz" Matsumoto
This reverts commit 15d48efa4bf6a6b999dab99720fb9fe3c4a06ef0.
2017-08-28Add `__ENCODING__' support.Yukihiro "Matz" Matsumoto
`__ENCODING__' returns the current encoding name (string), unlike CRuby that returns the encoding object.
2017-08-28Remove integer type mismatch warnings from parse.y.Yukihiro "Matz" Matsumoto
2017-08-28Clear `irep->outer` when no `Proc` reference the `irep`; fix #3793Yukihiro "Matz" Matsumoto
2017-08-27Merge pull request #3795 from christopheraue/array_refactoringYukihiro "Matz" Matsumoto
Array refactorings and speed improvements
2017-08-26Replaced Array#each with while loop for performance reasonsChristopher Aue
Example benchmark: $ time build/bench/bin/mruby -e "Array.new(2_000_000){ |i| i }.index{ |i| i == 1_999_999 }" Before: real 0m0.934s user 0m0.922s sys 0m0.003s After: real 0m0.590s user 0m0.583s sys 0m0.007s
2017-08-26Removed unneeded block check in Array#uniqChristopher Aue
2017-08-26Reimplemented Array#flatten with #flatten!Christopher Aue
2017-08-26Merge pull request #3794 from dabroz/fix-flt-epsilonYukihiro "Matz" Matsumoto
Fix building with MRB_USE_FLOAT=1
2017-08-26fix mrbgems/mruby-range-ext/src/range.c:142:71: error: use of undeclared ↵Tomasz Dąbrowski
identifier 'FLT_EPSILON'
2017-08-26Reimplement `Array#shift` to be faster.Yukihiro "Matz" Matsumoto
2017-08-26`Array#first` to treat 1 argument case specially to improve performance.Yukihiro "Matz" Matsumoto
2017-08-26Check for ability to skip optional argument parsing.Yukihiro "Matz" Matsumoto
2017-08-26Silence compiler warning regarding float condition; fix #3790Yukihiro "Matz" Matsumoto
2017-08-26Remove unused `mrb_obj_iv_ifnone()` from API.Yukihiro "Matz" Matsumoto
2017-08-26Add checks if `iv_tbl` is NULL.Yukihiro "Matz" Matsumoto
2017-08-26Keep `Range` class in `mrb_state` structure for performance.Yukihiro "Matz" Matsumoto
2017-08-26Use `khash` for instance variables tables instead of segment list.Yukihiro "Matz" Matsumoto
For performance reason. Segmented list consumes slightly less memory but takes a lot of time especially when there are many slots in the segment lists (e.g. class constants).
2017-08-26Turn on method cache for Travis CI.Yukihiro "Matz" Matsumoto