Project

General

Profile

Actions

Feature #13494

closed

[PATCH] pack rb_method_definition_t struct

Added by normalperson (Eric Wong) almost 7 years ago. Updated almost 7 years ago.

Status:
Closed
Target version:
-
[ruby-core:80826]

Description

We only have 12 method types, so 4 bits is enough for
rb_method_type_t.

Size reductions:

- x86-64     48 => 40 bytes
- x86        28 => 24 bytes

* method.h (enum method_optimized_type): split out for CPP
  (struct rb_method_definition struct): pack on unaligned systems
  (rb_method_definition_t): split typedef to help ctags

Files

Actions #1

Updated by shyouhei (Shyouhei Urabe) almost 7 years ago

  • Status changed from Open to Assigned

Updated by ko1 (Koichi Sasada) almost 7 years ago

Sorry for late response.

No problem.

Thanks,
Koichi

Updated by ko1 (Koichi Sasada) almost 7 years ago

  • Assignee changed from ko1 (Koichi Sasada) to normalperson (Eric Wong)
Actions #4

Updated by Anonymous almost 7 years ago

  • Status changed from Assigned to Closed

Applied in changeset trunk|r58784.


method.h: pack rb_method_definition_t struct

We only have 12 method types, so 4 bits is enough for
rb_method_type_t.

Size reductions:

  • x86-64 48 => 40 bytes
  • x86 28 => 24 bytes
  • method.h (enum method_optimized_type): split out for CPP
    (struct rb_method_definition struct): pack on unaligned systems
    (rb_method_definition_t): split typedef to help ctags
    [ruby-core:81236] [Feature #13494]
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0