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

ruby-changes:73698

From: Takashi <ko1@a...>
Date: Fri, 23 Sep 2022 06:45:08 +0900 (JST)
Subject: [ruby-changes:73698] 280ff1707e (master): Drop c_64 and c_32

https://git.ruby-lang.org/ruby.git/commit/?id=280ff1707e

From 280ff1707e1e0e5f06d9819dc5f8d8deb38b3f6c Mon Sep 17 00:00:00 2001
From: Takashi Kokubun <takashikkbn@g...>
Date: Mon, 19 Sep 2022 09:25:04 +0900
Subject: Drop c_64 and c_32

---
 lib/mjit/c_32.rb     | 481 ---------------------------------------------
 lib/mjit/c_64.rb     | 482 ---------------------------------------------
 mjit_c.rb            | 539 +++++++++++++++++++++++++++++++++++++++++++++++++++
 mjit_compiler.rb     |   9 +-
 tool/mjit/bindgen.rb |  21 +-
 5 files changed, 548 insertions(+), 984 deletions(-)
 delete mode 100644 lib/mjit/c_32.rb
 delete mode 100644 lib/mjit/c_64.rb

diff --git a/lib/mjit/c_32.rb b/lib/mjit/c_32.rb
deleted file mode 100644
index 59ca977093..0000000000
--- a/lib/mjit/c_32.rb
+++ /dev/null
@@ -1,481 +0,0 @@ https://github.com/ruby/ruby/blob/trunk/#L0
-require_relative 'c_type'
-
-module RubyVM::MJIT
-  def C.CALL_DATA
-    @CALL_DATA ||= self.rb_call_data
-  end
-
-  def C.IC
-    @IC ||= self.iseq_inline_constant_cache
-  end
-
-  def C.IVC
-    @IVC ||= self.iseq_inline_iv_cache_entry
-  end
-
-  def C.RB_BUILTIN
-    @RB_BUILTIN ||= self.rb_builtin_function
-  end
-
-  def C.VALUE
-    @VALUE ||= CType::Immediate.new(-5)
-  end
-
-  def C.compile_branch
-    @compile_branch ||= CType::Struct.new(
-      "compile_branch", 8,
-      stack_size: [0, CType::Immediate.new(-4)],
-      finish_p: [32, self._Bool],
-    )
-  end
-
-  def C.compile_status
-    @compile_status ||= CType::Struct.new(
-      "compile_status", 68,
-      success: [0, self._Bool],
-      stack_size_for_pos: [32, CType::Pointer.new { CType::Immediate.new(4) }],
-      local_stack_p: [64, self._Bool],
-      is_entries: [96, CType::Pointer.new { self.iseq_inline_storage_entry }],
-      cc_entries_index: [128, CType::Immediate.new(4)],
-      compiled_iseq: [160, CType::Pointer.new { self.rb_iseq_constant_body }],
-      compiled_id: [192, CType::Immediate.new(4)],
-      compile_info: [224, CType::Pointer.new { self.rb_mjit_compile_info }],
-      merge_ivar_guards_p: [256, self._Bool],
-      ivar_serial: [288, self.rb_serial_t],
-      max_ivar_index: [352, CType::Immediate.new(-4)],
-      inlined_iseqs: [384, CType::Pointer.new { CType::Pointer.new { self.rb_iseq_constant_body } }],
-      inline_context: [416, self.inlined_call_context],
-    )
-  end
-
-  def C.inlined_call_context
-    @inlined_call_context ||= CType::Struct.new(
-      "inlined_call_context", 16,
-      orig_argc: [0, CType::Immediate.new(4)],
-      me: [32, self.VALUE],
-      param_size: [64, CType::Immediate.new(4)],
-      local_size: [96, CType::Immediate.new(4)],
-    )
-  end
-
-  def C.iseq_inline_constant_cache
-    @iseq_inline_constant_cache ||= CType::Struct.new(
-      "iseq_inline_constant_cache", 8,
-      entry: [0, CType::Pointer.new { self.iseq_inline_constant_cache_entry }],
-      segments: [32, CType::Pointer.new { self.ID }],
-    )
-  end
-
-  def C.iseq_inline_constant_cache_entry
-    @iseq_inline_constant_cache_entry ||= CType::Struct.new(
-      "iseq_inline_constant_cache_entry", 20,
-      flags: [0, self.VALUE],
-      value: [32, self.VALUE],
-      _unused1: [64, self.VALUE],
-      _unused2: [96, self.VALUE],
-      ic_cref: [128, CType::Pointer.new { self.rb_cref_t }],
-    )
-  end
-
-  def C.iseq_inline_iv_cache_entry
-    @iseq_inline_iv_cache_entry ||= CType::Struct.new(
-      "iseq_inline_iv_cache_entry", 4,
-      entry: [0, CType::Pointer.new { self.rb_iv_index_tbl_entry }],
-    )
-  end
-
-  def C.iseq_inline_storage_entry
-    @iseq_inline_storage_entry ||= CType::Union.new(
-      "iseq_inline_storage_entry", 8,
-      once: CType::Struct.new(
-        "", 8,
-        running_thread: [0, CType::Pointer.new { self.rb_thread_struct }],
-        value: [32, self.VALUE],
-      ),
-      ic_cache: self.iseq_inline_constant_cache,
-      iv_cache: self.iseq_inline_iv_cache_entry,
-    )
-  end
-
-  def C.mjit_options
-    @mjit_options ||= CType::Struct.new(
-      "mjit_options", 28,
-      on: [0, self._Bool],
-      save_temps: [8, self._Bool],
-      warnings: [16, self._Bool],
-      debug: [24, self._Bool],
-      debug_flags: [32, CType::Pointer.new { CType::Immediate.new(2) }],
-      wait: [64, self._Bool],
-      min_calls: [96, CType::Immediate.new(-4)],
-      verbose: [128, CType::Immediate.new(4)],
-      max_cache_size: [160, CType::Immediate.new(4)],
-      pause: [192, self._Bool],
-      custom: [200, self._Bool],
-    )
-  end
-
-  def C.rb_builtin_function
-    @rb_builtin_function ||= CType::Struct.new(
-      "rb_builtin_function", 20,
-      func_ptr: [0, CType::Pointer.new { CType::Immediate.new(0) }],
-      argc: [32, CType::Immediate.new(4)],
-      index: [64, CType::Immediate.new(4)],
-      name: [96, CType::Pointer.new { CType::Immediate.new(2) }],
-      compiler: [128, CType::Immediate.new(1)],
-    )
-  end
-
-  def C.rb_call_data
-    @rb_call_data ||= CType::Struct.new(
-      "rb_call_data", 8,
-      ci: [0, CType::Pointer.new { self.rb_callinfo }],
-      cc: [32, CType::Pointer.new { self.rb_callcache }],
-    )
-  end
-
-  def C.rb_callable_method_entry_struct
-    @rb_callable_method_entry_struct ||= CType::Struct.new(
-      "rb_callable_method_entry_struct", 20,
-      flags: [0, self.VALUE],
-      defined_class: [32, self.VALUE],
-      def: [64, CType::Pointer.new { self.rb_method_definition_struct }],
-      called_id: [96, self.ID],
-      owner: [128, self.VALUE],
-    )
-  end
-
-  def C.rb_callcache
-    @rb_callcache ||= CType::Struct.new(
-      "rb_callcache", 20,
-      flags: [0, self.VALUE],
-      klass: [32, self.VALUE],
-      cme_: [64, CType::Pointer.new { self.rb_callable_method_entry_struct }],
-      call_: [96, self.vm_call_handler],
-      aux_: [128, CType::Union.new(
-        "", 4,
-        attr_index: CType::Immediate.new(-4),
-        method_missing_reason: self.method_missing_reason,
-        v: self.VALUE,
-      )],
-    )
-  end
-
-  def C.rb_callinfo
-    @rb_callinfo ||= CType::Struct.new(
-      "rb_callinfo", 20,
-      flags: [0, self.VALUE],
-      kwarg: [32, CType::Pointer.new { self.rb_callinfo_kwarg }],
-      mid: [64, self.VALUE],
-      flag: [96, self.VALUE],
-      argc: [128, self.VALUE],
-    )
-  end
-
-  def C.rb_control_frame_t
-    @rb_control_frame_t ||= CType::Struct.new(
-      "rb_control_frame_struct", 32,
-      pc: [0, CType::Pointer.new { self.VALUE }],
-      sp: [32, CType::Pointer.new { self.VALUE }],
-      iseq: [64, CType::Pointer.new { self.rb_iseq_t }],
-      self: [96, self.VALUE],
-      ep: [128, CType::Pointer.new { self.VALUE }],
-      block_code: [160, CType::Pointer.new { CType::Immediate.new(0) }],
-      __bp__: [192, CType::Pointer.new { self.VALUE }],
-      jit_return: [224, CType::Pointer.new { CType::Immediate.new(0) }],
-    )
-  end
-
-  def C.rb_cref_t
-    @rb_cref_t ||= CType::Struct.new(
-      "rb_cref_struct", 20,
-      flags: [0, self.VALUE],
-      refinements: [32, self.VALUE],
-      klass_or_self: [64, self.VALUE],
-      next: [96, CType::Pointer.new { self.rb_cref_struct }],
-      scope_visi: [128, self.rb_scope_visibility_t],
-    )
-  end
-
-  def C.rb_execution_context_struct
-    @rb_execution_context_struct ||= CType::Struct.new(
-      "rb_execution_context_struct", 244,
-      vm_stack: [0, CType::Pointer.new { self.VALUE }],
-      vm_stack_size: [32, CType::Immediate.new(-4)],
-      cfp: [64, CType::Pointer.new { self.rb_control_frame_t }],
-      tag: [96, CType::Pointer.new { self.rb_vm_tag }],
-      interrupt_flag: [128, self.rb_atomic_t],
-      interrupt_mask: [160, self.rb_atomic_t],
-      fiber_ptr: [192, CType::Pointer.new { self.rb_fiber_t }],
-      thread_ptr: [224, CType::Pointer.new { self.rb_thread_struct }],
-      local_storage: [256, CType::Pointer.new { self.rb_id_table }],
-      local_storage_recursive_hash: [288, self.VALUE],
-      local_storage_recursive_hash_for_trace: [320, self.VALUE],
-      root_lep: [352, CType::Pointer.new { self.VALUE }],
-      root_svar: [384, self.VALUE],
-      ensure_list: [416, CType::Pointer.new { self.rb_ensure_list_t }],
-      trace_arg: [448, CType::Pointer.new { self.rb_trace_arg_struct }],
-      errinfo: [480, self.VALUE],
-      passed_block_handler: [512, self.VALUE],
-      raised_flag: [544, CType::Immediate.new(-2)],
-      method_missing_reason: [552, self.method_missing_reason],
-      private_const_reference: [576, self.VALUE],
-      machine: [608, CType::Struct.new(
-        "", 168,
-        stack_start: [0, CType::Pointer.new { self.VALUE }],
-        stack_end: [32, CType::Pointer.new { self.VALUE }],
-        stack_maxsize: [64, CType::Immediate.new(-4)],
-        regs: [96, self.jmp_buf],
-      )],
-    )
-  end
-
-  def C.rb_execution_context_t
-    @rb_execution_context_t ||= self.rb_execution_context_struct
-  end
-
-  def C.rb_iseq_constant_body
-    @rb_iseq_constant_body ||= CType::Struct.new(
-      "rb_iseq_constant_body", 204,
-      type: [0, self.rb_iseq_type],
-      iseq_size: [32, CType::Immediate.new(-4)],
-      iseq_encoded: [64, CType::Pointer.new { self.VALUE }],
-      param: [96, CType::Struct.new(
-        "", 40,
-        flags: [0, CType::Struct.new(
-          "", 4,
-          has_lead: [0, CType::BitField.new(1, 0)],
-          has_opt: [1, CType::BitField.new(1, 1)],
-          has_rest: [2, CType::BitField.new(1, 2)],
-          has_post: [3, CType::BitField.new(1, 3)],
-          has_kw: [4, CType::BitField.new(1, 4)],
-          has_kwrest: [5, CType::BitField.new(1, 5)],
-          has_block: [6, CType::BitField.new(1, 6)],
-          ambiguous_param0: [7, CType::BitField.new(1, 7)],
-          accepts_no_kwarg: [8, CType::BitField.new(1, 0)],
-          ruby2_keywords: [9, CType::BitField.new(1, 1)],
-        )],
-        size: [32, CType::Immediate.new(-4)],
-        lead_num: [64, CType::Immediate.new(4)],
-        opt_num: [96, CType::Immediate.new(4)],
-        rest_start: [128, CType::Immediate.new(4)],
- (... truncated)

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

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