summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-compiler/core/codegen.c
AgeCommit message (Expand)Author
2022-01-05Fixing keyword arguments with `super`dearblue
2021-12-20codegen.c: generate `OP_SETIDX`; close #5608Yukihiro "Matz" Matsumoto
2021-12-19Merge pull request #5602 from dearblue/no-ext-opsYukihiro "Matz" Matsumoto
2021-12-17Print error before cleanup in `codegen_error()`dearblue
2021-12-17Add `bin/mrbc --no-ext-ops` switchdearblue
2021-12-02parse.y: support anonymous block argument introduced by Ruby3.1.Yukihiro "Matz" Matsumoto
2021-12-01codegen.c: `ADDI/SUBI` should not be prefixed by `OP_EXT`; fix #5590Yukihiro "Matz" Matsumoto
2021-12-01codegen.c: skip `ADDI/SUBI` for zero operand.Yukihiro "Matz" Matsumoto
2021-12-01codegen.c: fix a bug in `OP_ADDI` and `OP_SUBI` regarding negative values.Yukihiro "Matz" Matsumoto
2021-12-01codegen.c: `get_int_operand` to retrieve negative values correctly.Yukihiro "Matz" Matsumoto
2021-11-17codegen.c: fixed a bug in post mandatory arguments.Yukihiro "Matz" Matsumoto
2021-11-17codegen.c: should not emit the `MOVE` instruction to the same register.Yukihiro "Matz" Matsumoto
2021-10-19codegen.c: skip `OP_LOADSELF` using `OP_SSEND`.Yukihiro "Matz" Matsumoto
2021-10-18codegen.c: Reduce `MRB_CODEGEN_LEVEL_MAX` from 1024 to 256.Yukihiro "Matz" Matsumoto
2021-10-18codegen.c: fixed a bug regarding attribute assignment with kargs.Yukihiro "Matz" Matsumoto
2021-10-17codegen.c: forgot to check `s2` extensively in `super` codegen.Yukihiro "Matz" Matsumoto
2021-10-16codegen.c: `s2` may be `NULL`.Yukihiro "Matz" Matsumoto
2021-10-13codegen.c: skip `OP_ARGARY` before `super` if the method has no arguments.Yukihiro "Matz" Matsumoto
2021-10-12codegen.c: should not assign negative number to `ainfo` (`size_t`).Yukihiro "Matz" Matsumoto
2021-10-12Support Ruby3.0 keyword arguments.Yukihiro "Matz" Matsumoto
2021-10-09codegen.c: peephole optimization `OP_MOVE` after `OP_AREF`.Yukihiro "Matz" Matsumoto
2021-10-08codegen.c: peephole optimize `OP_MOVE` after `OP_ARRAY` or `OP_HASH`.Yukihiro "Matz" Matsumoto
2021-10-04codegen.c: no `OP_ARGARY` is needed here.Yukihiro "Matz" Matsumoto
2021-10-03mruby/ops.h: add new instructions `OP_GETIDX` and `OP_SETIDX`.Yukihiro "Matz" Matsumoto
2021-09-26codegen.c: should not `loop_push()` before constant folding.Yukihiro "Matz" Matsumoto
2021-09-24codegen.c: refactor `NODE_WHILE` and `NODE_UNTIL`.Yukihiro "Matz" Matsumoto
2021-09-24codegen.c: add short circuit constant folding for `NODE_AND`, `NODE_OR`.Yukihiro "Matz" Matsumoto
2021-09-24codegen.c: refactor `NODE_IF` generation for boolean constants.Yukihiro "Matz" Matsumoto
2021-09-23codegen.c: need to check `no_peephole()` before constant folding.Yukihiro "Matz" Matsumoto
2021-09-23codegen.c: separate maximum stack size from `GEN_LIT_ARY_MAX`.Yukihiro "Matz" Matsumoto
2021-09-20codegen.c (gen_addsub): use `mrb_int_sub_overflow()`.Yukihiro "Matz" Matsumoto
2021-09-20codegen.c: avoid constant folding `OP_LOADI16` across branch target.Yukihiro "Matz" Matsumoto
2021-09-20codegen.c: `gen_move` should generate proper `OP_LOADI16`.Yukihiro "Matz" Matsumoto
2021-09-20codegen.c: rename `loopinfo->acc` to `reg`.Yukihiro "Matz" Matsumoto
2021-09-20codegen.c: check `no_peephole(s)` before `mrb_last_insn(s)`.Yukihiro "Matz" Matsumoto
2021-09-20codegen.c (mrb_last_insn): no previous instruction on top.Yukihiro "Matz" Matsumoto
2021-09-19codegen.c: unify `OP_ARYPUSH` and `OP_ARYPUSH_N`.Yukihiro "Matz" Matsumoto
2021-09-17ops.h: add `OP_ARYPUSH_N` instruction.Yukihiro "Matz" Matsumoto
2021-09-10codegen.c: fixed `gen_setxv` bug with taking assignment value; fix #5550Yukihiro "Matz" Matsumoto
2021-09-10codegen.c: `gen_move` refactoring.Yukihiro "Matz" Matsumoto
2021-09-10ops.h: add `OP_SYMBOL` instruction.Yukihiro "Matz" Matsumoto
2021-09-10fixup! codegen.c: resurrect `s->lastpc` to reduce `iseq` scans.Yukihiro "Matz" Matsumoto
2021-09-10codegen.c: resurrect `s->lastpc` to reduce `iseq` scans.Yukihiro "Matz" Matsumoto
2021-09-07codegen.c: improve exception handling in `generate_code`.Yukihiro "Matz" Matsumoto
2021-09-05codegen.c: avoid integer overflow.Yukihiro "Matz" Matsumoto
2021-08-21Organize the include of header filesdearblue
2021-08-13codegen.c: fixed a bug in `mrb_decode_insn()`.Yukihiro "Matz" Matsumoto
2021-08-13codegen.c: add a comment that notice `rewind_pc` calling convention.Yukihiro "Matz" Matsumoto
2021-08-13codegen.c: refactor `mrb_last_insn()`.Yukihiro "Matz" Matsumoto
2021-08-13codegen.c: `mrb_prev_pc` can return `NULL` at the top of `iseq`.Yukihiro "Matz" Matsumoto