summaryrefslogtreecommitdiff
path: root/yjit/src/codegen.rs
AgeCommit message (Expand)Author
2023-02-14YJIT: Don't side-exit on too-complex shapes (#7298)Takashi Kokubun
2023-02-13YJIT: Fix a typo in a counter nameTakashi Kokubun
2023-02-10YJIT: add counters for polymorphic send and send with known class (#7288)Maxime Chevalier-Boisvert
2023-02-09YJIT: optimized codegen for `rb_ary_empty_p` (WIP) (#7242)Maxime Chevalier-Boisvert
2023-02-09YJIT: Support invokesuper in a block (#7264)Maple Ong
2023-02-09YJIT: Add counter for megamorphic send (#7274)Takashi Kokubun
2023-02-09YJIT: Use the system page size when the code page size is too small (#7267)Alan Wu
2023-02-09YJIT: Add counters for ivar exits (#7266)Takashi Kokubun
2023-02-06YJIT: Support arg0 splat on invokeblock (#7234)Takashi Kokubun
2023-02-06YJIT: Check interrupts on frame pop (#7248)Takashi Kokubun
2023-02-03YJIT: Make Block::start_addr non-optionalAlan Wu
2023-02-03YJIT: Support ifunc on invokeblock (#7233)Takashi Kokubun
2023-02-02YJIT: log the names of methods we call to in disasm (#7231)Maxime Chevalier-Boisvert
2023-02-02Fix typos in YJIT [ci skip]Alan Wu
2023-02-02YJIT: Move CodegenGlobals::freed_pages into an RcAlan Wu
2023-02-01Remove whitespaceMaxime Chevalier-Boisvert
2023-01-31YJIT: Handle splat with opt more fully (#7209)Jimmy Miller
2023-01-31YJIT: Group unimplemented method types togetherAlan Wu
2023-01-31YJIT: Implement codegen for Kernel#block_given? (#7202)Takashi Kokubun
2023-01-30YJIT: Add splat optimized_send (#7167)Jimmy Miller
2023-01-30YJIT: Initial implementation of splat with optional params (#7166)Jimmy Miller
2023-01-30YJIT: Skip defer_compilation for fixnums if possible (#7168)Takashi Kokubun
2023-01-30YJIT: Inline return address callback (#7198)Alan Wu
2023-01-20YJIT: get rid of unneeded `.into()`Jimmy Miller
2023-01-19YJIT: Refactor side_exitsJimmy Miller
2023-01-19Implement splat for cfuncs. Split exit exit cases to better capture where we ...Jimmy Miller
2023-01-18YJIT: Use .as_side_exit() for jumps to counted exitsAlan Wu
2023-01-18YJIT: implement codegen for `String#empty?` (#7148)Maxime Chevalier-Boisvert
2023-01-13YJIT: Use SIZEOF_VALUE_I32 instead of `... as i32`Alan Wu
2023-01-13YJIT: Factor out VALUE_BITS = (8 * SIZE_OF_VALUE as u8)Alan Wu
2023-01-12Enable `clippy` checks for yjit in CI (#7093)Ian Ker-Seymer
2023-01-11YJIT: Add a few asm comments (#7105)Takashi Kokubun
2023-01-10Differentiate T_ARRAY and array subclasses (#7091)Aaron Patterson
2023-01-10YJIT: Save PC and SP before calling leaf builtins (#7090)Alan Wu
2023-01-06YJIT: Make iseq_get_location consistent with iseq.c (#7074)Takashi Kokubun
2023-01-05Use a different name for megamorphic setivar exitsAaron Patterson
2023-01-03YJIT: Fix `yield` into block with >=30 locals on ARMAlan Wu
2022-12-15YJIT: Fix `obj.send(:call)`Alan Wu
2022-12-15YJIT: Fix code GC freeing stubs with a trampoline (#6937)Alan Wu
2022-12-15Transition complex objects to "too complex" shapeJemma Issroff
2022-12-14YJIT: Remove duplicate call to jit_prepare_routine_call()Alan Wu
2022-12-12YJIT: Implement opt_newarray_max instruction (#6893)Takashi Kokubun
2022-12-09YJIT: Split send_iseq_complex_callee exit reasons (#6895)Takashi Kokubun
2022-12-09YJIT: implement `getconstant` YARV instruction (#6884)Maxime Chevalier-Boisvert
2022-12-08YJIT: Drop Copy trait from Context (#6889)Takashi Kokubun
2022-12-08YJIT: implement opt_newarray_min YARV instruction (#6888)Maxime Chevalier-Boisvert
2022-12-05YJIT: Remove --yjit-code-page-size (#6865)Alan Wu
2022-12-05YJIT: Extract SHAPE_ID_NUM_BITS into a constant (#6863)Jemma Issroff
2022-12-02Extracted rb_shape_id_offsetJemma Issroff
2022-12-02Update yjit/src/codegen.rsMaxime Chevalier-Boisvert