summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2020-12-01Fix a ``OP_JMP` bug from `0` marker and address `0`.Yukihiro "Matz" Matsumoto
2020-12-01Merge pull request #5207 from ↵Yukihiro "Matz" Matsumoto
shuujii/revert-Create-presym-files-for-each-build-target Revert "Create presym files for each build target" (58ba883e)
2020-12-01Revert "Create presym files for each build target" (58ba883e)KOBAYASHI Shuji
Due to the above changes, it may not work with the existing build configurations in cross-compilation (even if we can build without presym), therefore revert it once (ref https://github.com/mruby/mruby/pull/5202#issuecomment-735412643). Sorry for the lack of consideration.
2020-12-01Fix `OP_JMPUW` address bug.Yukihiro "Matz" Matsumoto
2020-11-30Merge pull request #5206 from dearblue/dumpirepYukihiro "Matz" Matsumoto
Improves dump irep
2020-11-30Merge pull request #5205 from dearblue/codedumpYukihiro "Matz" Matsumoto
Fixed print catch handler address in codedump; ref #5200
2020-11-30Integrate the output of the catch handler table into iseqdearblue
Alleviates confusingness. ref #5203
2020-11-30Fixed irep size measurement by dump; ref #5203dearblue
2020-11-30Fixed print catch handler address in codedump; ref #5200dearblue
It became 32 bits in #5200, but only the upper 16 bits were printed.
2020-11-29Merge pull request #5204 from shuujii/use-MRB_SYM-in-src-gc.cYukihiro "Matz" Matsumoto
Use `MRB_SYM` in `src/gc.c`
2020-11-29Use `MRB_SYM` in `src/gc.c`KOBAYASHI Shuji
2020-11-29Merge pull request #5203 from komainu8/fix-heap-buffer-overflowYukihiro "Matz" Matsumoto
Fix heap buffer overflow when dump irep
2020-11-29Fix heap buffer overflow when dump irepHorimoto Yasuhiro
Currently, the size of writing in heap by write_irep_record() is bigger than The size that is calculated by get_irep_record_size. Therefore, irep is dumped over the size of allocating memory when we execute dump_irep().
2020-11-29Merge pull request #5200 from dearblue/catchhandler32Yukihiro "Matz" Matsumoto
Change the catch handler address to 32 bits
2020-11-29Change the catch handler address to 32 bitsdearblue
Follow commit 7150c6753933f12a2ba63769fb7b3a44cfcddd3d .
2020-11-27Merge pull request #5197 from ↵Yukihiro "Matz" Matsumoto
shuujii/fix-incorrect-regexp-creation-in-tasks-presym.rake Fix incorrect regexp creation in `tasks/presym.rake`
2020-11-27Fix incorrect regexp creation in `tasks/presym.rake`KOBAYASHI Shuji
2020-11-27Merge pull request #5196 from shuujii/fix-build-failureYukihiro "Matz" Matsumoto
Fix build failure; ref #5194
2020-11-27Fix build failure; ref #5194KOBAYASHI Shuji
Fix the following two issues: 1. Compile failure when external gem is specified. * https://github.com/mruby/mruby/pull/5194#issuecomment-734303442 2. When there are multiple build targets, presym parsing sometimes fails or output result of presym is broken. * https://github.com/mruby/mruby/pull/5194#issuecomment-734322142 The root cause of 2 is unknown, but it seems to occur when presym parsing is performed in parallel, therefore I change them so that they are not run in parallel.
2020-11-26Merge pull request #5195 from ↵Yukihiro "Matz" Matsumoto
shuujii/add-tools-to-target-directory-for-presym-parsing Add `tools/*` to target directory for presym parsing
2020-11-26Add `tools/*` to target directory for presym parsingKOBAYASHI Shuji
2020-11-26Merge pull request #5194 from shuujii/create-presym-files-for-each-build-targetYukihiro "Matz" Matsumoto
Create presym files for each build target
2020-11-26Use `__builtin_setjmp()`, `__builtin_longjmp()` on MinGW; fix #5133Yukihiro "Matz" Matsumoto
2020-11-26Avoid integer overflow in `rational_new`.Yukihiro "Matz" Matsumoto
2020-11-26Create presym files for each build targetKOBAYASHI Shuji
Previously, presym files were always created in `build/{presym,presym.inc}`. However, this constraint is inconvenient because it is common to use multiple build configurations and build targets in a single mruby tree. Therefore, change to create presym file for each build target.
2020-11-26Merge pull request #5193 from shuujii/fix-loop-condition-in-mrb_sym_all_symbolsYukihiro "Matz" Matsumoto
Fix loop condition in `mrb_sym_all_symbols`
2020-11-26Fix loop condition in `mrb_sym_all_symbols`KOBAYASHI Shuji
2020-11-26Fix a bug in `find_symbol()`; fix #5192Yukihiro "Matz" Matsumoto
2020-11-26Make `OP_JMP*` operand address to be relative.Yukihiro "Matz" Matsumoto
Jump target address is `operand (16bit)` + `address of next instruction`. In addition, `ilen` was made `uint32_t` so that `iseq` length limitation of 65536 is removed. Only jump target address should be within signed 16bit (-32768 .. 32767).
2020-11-26Fix `Symbol.all_symbols` to include preallocated symbols; ref #5116Yukihiro "Matz" Matsumoto
2020-11-26Symbols should work with `MRB_USE_ALL_SYMBOLS`; fix #5116Yukihiro "Matz" Matsumoto
2020-11-26Small refactoring regarding symbols for clarity.Yukihiro "Matz" Matsumoto
2020-11-26Include `mruby.h` instead of `mrbconf.h` directly.Yukihiro "Matz" Matsumoto
2020-11-26Avoid memory leak when `mrb_read_irep()` fails.Yukihiro "Matz" Matsumoto
2020-11-25Move inline `iseq` in `array.c` to `array.rb`.Yukihiro "Matz" Matsumoto
There's no efficiency difference since `cdump` is implemented.
2020-11-25Replace mere `enable_debug` by clearer `conf.enable_debug` [ci skip]Yukihiro "Matz" Matsumoto
2020-11-25Merge pull request #5190 from ↵Yukihiro "Matz" Matsumoto
shuujii/allow-compiler-name-in-build-log-to-be-customized Allow compiler name in build log to be customized
2020-11-25Allow compiler name in build log to be customizedKOBAYASHI Shuji
For example, in the case of the C++ compiler, it is output as `CXX build/host/src/gc.cxx -> build/host/src/gc.cxx.o` (FYI, in the case of `enable_cxx_abi`, it outputs `CC ...` because the option to compile as C++ is added to C compiler).
2020-11-25Merge pull request #5189 from ↵Yukihiro "Matz" Matsumoto
shuujii/fix-C-source-compilation-with-MRB_USE_ALL_SYMBOLS Fix C source compilation with `MRB_USE_ALL_SYMBOLS`; ref #5187
2020-11-25Fix C source compilation with `MRB_USE_ALL_SYMBOLS`; ref #5187KOBAYASHI Shuji
However, compiling by `mrbc` fails with another issue (#5116).
2020-11-25Remove no longer used `MRB_IV_SEGMENT_SIZE; close #5188 [ci skip]Yukihiro "Matz" Matsumoto
2020-11-24Use more `mrb_int_value()` instead of `mrb_fixnum_value()`.Yukihiro "Matz" Matsumoto
2020-11-24Move `MRB_NO_FLOAT` detection in `mruby-math`; #5185Yukihiro "Matz" Matsumoto
2020-11-24Add `#include <mrbconf.h>` at the head of `fmt_fp.c`; #5185Yukihiro "Matz" Matsumoto
2020-11-24Merge pull request #5186 from shuujii/optimize-presym_findYukihiro "Matz" Matsumoto
Optimize `presym_find`
2020-11-24Fix compiler errors from `MRB_NO_FLOAT`; #5185Yukihiro "Matz" Matsumoto
Also added `no-float.rb` target in `build_config`.
2020-11-24Optimize `presym_find`KOBAYASHI Shuji
Chang to compare string length first. ### Benchmark #### Code * https://github.com/shuujii/mruby-presym_find-benchmark #### Result ```console Previous: 10.240772M i/s (25M times in 2.441222s) New: 16.412985M i/s (25M times in 1.523184s) ```
2020-11-24Should not use `mrb_float` if `MRB_NO_FLOAT` is defined; fix #5185Yukihiro "Matz" Matsumoto
2020-11-24Merge pull request #5178 from abinoam/fix_mruby_config_settingYukihiro "Matz" Matsumoto
Fix #5177 by setting MRUBY_CONFIG early
2020-11-23Fix #5177 - set MRUBY_CONFIG earlyAbinoam Praxedes Marques Junior