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

ruby-changes:68731

From: Maxime <ko1@a...>
Date: Thu, 21 Oct 2021 08:12:38 +0900 (JST)
Subject: [ruby-changes:68731] 81c57ab9b8 (master): Reduce size of ctx_t

https://git.ruby-lang.org/ruby.git/commit/?id=81c57ab9b8

From 81c57ab9b8a55c3572facd1fa62c4b5c38a160e0 Mon Sep 17 00:00:00 2001
From: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@s...>
Date: Tue, 26 Jan 2021 16:51:44 -0500
Subject: Reduce size of ctx_t

---
 ujit_codegen.c | 6 +++---
 ujit_core.h    | 4 ++--
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/ujit_codegen.c b/ujit_codegen.c
index bb0b802fc4..e45005a70e 100644
--- a/ujit_codegen.c
+++ b/ujit_codegen.c
@@ -570,9 +570,9 @@ gen_opt_lt(jitstate_t* jit, ctx_t* ctx) https://github.com/ruby/ruby/blob/trunk/ujit_codegen.c#L570
     }
 
     // Compare the arguments
-    mov(cb, REG0, arg0);
-    cmp(cb, REG0, arg1);
-    mov(cb, REG0, imm_opnd(Qfalse));
+    xor(cb, REG0_32, REG0_32); // REG0 = Qfalse
+    mov(cb, REG1, arg0);
+    cmp(cb, REG1, arg1);
     mov(cb, REG1, imm_opnd(Qtrue));
     cmovl(cb, REG0, REG1);
 
diff --git a/ujit_core.h b/ujit_core.h
index 7b230d779d..c86a9412dc 100644
--- a/ujit_core.h
+++ b/ujit_core.h
@@ -35,10 +35,10 @@ typedef struct CtxStruct https://github.com/ruby/ruby/blob/trunk/ujit_core.h#L35
     uint8_t temp_types[MAX_TEMP_TYPES];
 
     // Number of values pushed on the temporary stack
-    uint32_t stack_size;
+    uint16_t stack_size;
 
     // Whether we know self is a heap object
-    bool self_is_object;
+    bool self_is_object : 1;
 
 } ctx_t;
 
-- 
cgit v1.2.1


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

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