optimize Struct getter/setter

Introduce new optimized method type
`OPTIMIZED_METHOD_TYPE_STRUCT_AREF/ASET` with index information.
This commit is contained in:
Koichi Sasada 2021-11-18 11:01:31 +09:00
parent be71c95b88
commit 82ea287018
Notes: git 2021-11-19 08:32:59 +09:00
10 changed files with 181 additions and 238 deletions

View file

@ -167,11 +167,14 @@ enum method_optimized_type {
OPTIMIZED_METHOD_TYPE_SEND,
OPTIMIZED_METHOD_TYPE_CALL,
OPTIMIZED_METHOD_TYPE_BLOCK_CALL,
OPTIMIZED_METHOD_TYPE_STRUCT_AREF,
OPTIMIZED_METHOD_TYPE_STRUCT_ASET,
OPTIMIZED_METHOD_TYPE__MAX
};
typedef struct rb_method_optimized {
enum method_optimized_type type;
unsigned int index;
} rb_method_optimized_t;
struct rb_method_definition_struct {