summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-compiler
AgeCommit message (Expand)Author
2021-09-27parse.y: `__ENCODING__` should be determined in run-time; fix #5552Yukihiro "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-13parse.y: `cons_free` unused node (empty string node).Yukihiro "Matz" Matsumoto
2021-09-13parse.y: allow non-local variable access from hash value omission.Yukihiro "Matz" Matsumoto
2021-09-13parse.y: allow value omission in Hash literals introduced in Ruby3.1.Yukihiro "Matz" Matsumoto
2021-09-12parse.y: fix `nint` (int to node) and `intn` (node to int).Yukihiro "Matz" Matsumoto
2021-09-12parse.y: avoid adding zero length strings.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-07parse.y: refactor `mrb_parser_parse()`.Yukihiro "Matz" Matsumoto
2021-09-06parse.y: refactoring `mrb_parser_parser()`.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
2021-08-11codegen.c: avoid signedness warning of int comparison.Yukihiro "Matz" Matsumoto
2021-08-11codegen.c: avoid cross initialization of `mrb_insn_data`.Yukihiro "Matz" Matsumoto
2021-08-11codegen.c: more peephole optimization.Yukihiro "Matz" Matsumoto
2021-08-07codegen.c: need to push the value when the loop was eliminated.Yukihiro "Matz" Matsumoto
2021-08-06codegen.c: `-9223372036854775808 % -1` overflows 64 bit integer.Yukihiro "Matz" Matsumoto
2021-08-05codegen.c: remove code duplication from `NODE_ARRAY`.Yukihiro "Matz" Matsumoto
2021-08-04codegen.c: detect integer overflow in division.Yukihiro "Matz" Matsumoto
2021-08-03codegen.c: check zero division before constant folding.Yukihiro "Matz" Matsumoto
2021-08-03codegen.c: avoid division by zero in constant folding.Yukihiro "Matz" Matsumoto
2021-08-02codegen.c: allow constant folding for negative integer modulo.Yukihiro "Matz" Matsumoto
2021-08-02codegen.c: refactor `readint()` to read `MRB_INT_MIN`.Yukihiro "Matz" Matsumoto
2021-08-02codegen.c: fix a bug in bit shift constant folding.Yukihiro "Matz" Matsumoto
2021-08-02codegen.c: refactor unary operator optimization.Yukihiro "Matz" Matsumoto
2021-08-02codegen.c: constant folding binary operators, <<, >>, %, &, |, ^.Yukihiro "Matz" Matsumoto
2021-08-01codegen.c: eliminate loop if condition is constant.Yukihiro "Matz" Matsumoto
2021-08-01codegen.c: peephole optimize OP_JMPxxx.Yukihiro "Matz" Matsumoto