[前][次][番号順一覧][スレッド一覧]

ruby-changes:73140

From: Maxime <ko1@a...>
Date: Tue, 30 Aug 2022 00:55:36 +0900 (JST)
Subject: [ruby-changes:73140] 084d4bb192 (master): Implement X86Reg::sub_reg() method

https://git.ruby-lang.org/ruby.git/commit/?id=084d4bb192

From 084d4bb19228eed3e89663a2d24ab3accaa1a4ee Mon Sep 17 00:00:00 2001
From: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@s...>
Date: Thu, 16 Jun 2022 15:25:27 -0400
Subject: Implement X86Reg::sub_reg() method

---
 yjit/src/asm/x86_64/mod.rs | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/yjit/src/asm/x86_64/mod.rs b/yjit/src/asm/x86_64/mod.rs
index 399c2e8c7e..ca2a2f6e1f 100644
--- a/yjit/src/asm/x86_64/mod.rs
+++ b/yjit/src/asm/x86_64/mod.rs
@@ -88,6 +88,25 @@ pub enum X86Opnd https://github.com/ruby/ruby/blob/trunk/yjit/src/asm/x86_64/mod.rs#L88
     IPRel(i32)
 }
 
+impl X86Reg {
+    fn sub_reg(&self, num_bits: u8) -> Self {
+        assert!(
+            num_bits == 8 ||
+            num_bits == 16 ||
+            num_bits == 32 ||
+            num_bits == 64
+        );
+
+        assert!(num_bits <= self.num_bits);
+
+        Self {
+            num_bits,
+            reg_type: self.reg_type,
+            reg_no: self.reg_no
+        }
+    }
+}
+
 impl X86Opnd {
     fn rex_needed(&self) -> bool {
         match self {
-- 
cgit v1.2.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]