summaryrefslogtreecommitdiff
path: root/yjit/src/codegen.rs
AgeCommit message (Expand)Author
2023-03-17YJIT: Rest and block_arg support (#7557)Jimmy Miller
2023-03-17YJIT: Support entry for multiple PCs per ISEQ (GH-7535)Takashi Kokubun
2023-03-17YJIT: Use raw pointers and shared references over `Rc<RefCell<_>>`Alan Wu
2023-03-16YJIT: Remove exit for rest and send combo (#7546)Jimmy Miller
2023-03-16YJIT: add stats to keep track of when branch direction is known (#7544)Maxime Chevalier-Boisvert
2023-03-15YJIT: use u16 for insn_idx instead of u32 (#7534)Maxime Chevalier-Boisvert
2023-03-15Make EC required on JIT state (#7520)Aaron Patterson
2023-03-14YJIT: Introduce no_gc attribute (#7511)Takashi Kokubun
2023-03-14YJIT: Implement throw instruction (#7491)Takashi Kokubun
2023-03-13YJIT: Handle rest+splat where non-splat < required (#7499)Jimmy Miller
2023-03-10YJIT: Bump SEND_MAX_DEPTH to 20 (#7469)Takashi Kokubun
2023-03-09YJIT: upgrade type in `guard_object_is_string` (#7489)Maxime Chevalier-Boisvert
2023-03-09Revert an unneeded diff in 262254dc7dTakashi Kokubun
2023-03-10rename `defined_ivar` to `definedivar`Koichi Sasada
2023-03-08Add defined_ivar as YJIT instruction as wellOle Friis Østergaard
2023-03-07YJIT: Handle splat+rest for args pass greater than required (#7468)Jimmy Miller
2023-03-07YJIT: Protect strings from GC on String#<< (#7466)Takashi Kokubun
2023-03-07YJIT: Handle special case of splat and rest lining up (#7422)Jimmy Miller
2023-03-07YJIT: Bump SEND_MAX_DEPTH to 10 (#7452)Takashi Kokubun
2023-03-03YJIT: fix CI issue reported by Koichi caused by small stack patch (#7442)Maxime Chevalier-Boisvert
2023-03-02YJIT: shrink stack_size/sp_offet to u8/i8 (#7426)Maxime Chevalier-Boisvert
2023-03-02YJIT: Delete stale `frozen_bytes` related code (#7423)Alan Wu
2023-03-02YJIT: Fix cfunc splatJimmy Miller
2023-03-01YJIT: Properly deal with cfunc splat when no args needed (#7413)Jimmy Miller
2023-03-01YJIT: Use a boxed slice for outgoing branches and cme dependencies (#7409)Takashi Kokubun
2023-02-28YJIT: Compress BranchGenFn and BranchShape (#7401)Takashi Kokubun
2023-02-28YJIT: Use a boxed slice for gc_obj_offsets (#7397)Takashi Kokubun
2023-02-27YJIT: Detect and reject `send(:alias_for_send, :foo)`Alan Wu
2023-02-27YJIT: Reject __send__ with splat to cfunc for nowAlan Wu
2023-02-24YJIT: Generate Block::entry_exit with block entry PCAlan Wu
2023-02-24YJIT: Use enum for expressing type diff (#7370)Takashi Kokubun
2023-02-24YJIT: Compress TempMapping (#7368)Takashi Kokubun
2023-02-23YJIT: Trivial fixes in codegen.rsTakashi Kokubun
2023-02-23YJIT: Skip type checks on splat args and expandarray if possible (#7363)Takashi Kokubun
2023-02-22YJIT: Introduce Opnd::Stack (#7352)Takashi Kokubun
2023-02-21Call rb_ivar_set instead of exiting for many ivarseileencodes
2023-02-21YJIT: Fastpath for Module#=== (#7351)Alan Wu
2023-02-21YJIT: Avoid checking symbol ID twice on send (#7350)Takashi Kokubun
2023-02-21YJIT: Fix clippy issues and remove unused params (#7348)Jimmy Miller
2023-02-17YJIT: Consolidate jit methods in JITState impl (#7336)Jimmy Miller
2023-02-17YJIT: Use rb_ivar_get at the end of ivar chains (#7334)Takashi Kokubun
2023-02-17Add asm comment to YJIT's rb_str_empty_pMaxime Chevalier-Boisvert
2023-02-16YJIT: Fix false assumption that String#+@ => ::StringAlan Wu
2023-02-16YJIT: jit_prepare_routine_call() for String#+@ missingAlan Wu
2023-02-16YJIT: Refactor getlocal and setlocal insns (#7320)Takashi Kokubun
2023-02-16YJIT: Initial support for rest args (#7311)Jimmy Miller
2023-02-16Move `attached_object` into `rb_classext_struct`Jean Boussier
2023-02-15YJIT: `Kernel#{is_a?,instance_of?}` fast paths (GH-7297)Jimmy Miller
2023-02-14YJIT: Optimize != for Integers and Strings (#7301)Takashi Kokubun
2023-02-14YJIT: Check correct BOP on gen_fixnum_cmp (#7303)Takashi Kokubun