diff --git a/irtoc_scripts/object.irt b/irtoc_scripts/object.irt index fe7943aa0d5483ae3ad37146ede5123abe4747b4..0735e197c96c4a88ef8f50188c870558bb80504a 100644 --- a/irtoc_scripts/object.irt +++ b/irtoc_scripts/object.irt @@ -555,12 +555,14 @@ end postfix = "#{postfix}#{to_name.call(access_mode)}" unless access_mode == :unknown extra_params = {} - if access_type == :by_name - extra_params.update({ic_slot: 'u16'}) + if access_type == :unknown + extra_params.update({this_func: 'any'}) + elsif access_type == :by_name + extra_params.update({ic_slot: 'u16', this_func: 'any', cp: 'any'}) end function("LoadObjectDynamic#{postfix}", - params: {obj: 'ref', key: 'any'}.merge(extra_params).merge({this_func: 'any'}), + params: {obj: 'ref', key: 'any'}.merge(extra_params), regmap: $full_regmap, mode: [:FastPath, :DynamicMethod, :DynamicStub], regalloc_set: $panda_mask, @@ -603,7 +605,7 @@ end } function("StoreObjectDynamic#{postfix}", - params: {obj: 'ref', key: 'any', value: 'any'}.merge(extra_params).merge({this_func: 'any'}), + params: {obj: 'ref', key: 'any', value: 'any'}.merge(extra_params), regmap: $full_regmap, mode: [:FastPath, :DynamicMethod, :DynamicStub], regalloc_set: $panda_mask,