ruby-changes:73189
From: Maxime <ko1@a...>
Date: Tue, 30 Aug 2022 00:59:57 +0900 (JST)
Subject: [ruby-changes:73189] 95e5c5227c (master): Fix bug with LeaLabel on x86, add CI test
https://git.ruby-lang.org/ruby.git/commit/?id=95e5c5227c From 95e5c5227c0492ed33fa41f31a698bf320d2b437 Mon Sep 17 00:00:00 2001 From: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@s...> Date: Fri, 15 Jul 2022 13:49:38 -0400 Subject: Fix bug with LeaLabel on x86, add CI test --- yjit/src/backend/x86_64/mod.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yjit/src/backend/x86_64/mod.rs b/yjit/src/backend/x86_64/mod.rs index cb9d5be74a..0001d45977 100644 --- a/yjit/src/backend/x86_64/mod.rs +++ b/yjit/src/backend/x86_64/mod.rs @@ -262,7 +262,7 @@ impl Assembler https://github.com/ruby/ruby/blob/trunk/yjit/src/backend/x86_64/mod.rs#L262 Op::LeaLabel => { let label_idx = insn.target.unwrap().unwrap_label_idx(); - cb.label_ref(label_idx, 4, |cb, src_addr, dst_addr| { + cb.label_ref(label_idx, 7, |cb, src_addr, dst_addr| { let disp = dst_addr - src_addr; lea(cb, Self::SCRATCH0, mem_opnd(8, RIP, disp.try_into().unwrap())); }); @@ -270,7 +270,7 @@ impl Assembler https://github.com/ruby/ruby/blob/trunk/yjit/src/backend/x86_64/mod.rs#L270 mov(cb, insn.out.into(), Self::SCRATCH0); }, - // Push and pop to the C stack + // Push and pop to/from the C stack Op::CPush => push(cb, insn.opnds[0].into()), Op::CPop => pop(cb, insn.out.into()), Op::CPopInto => pop(cb, insn.opnds[0].into()), -- cgit v1.2.1 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/