From 3947e88252c58bb1464ee5d1b5097164c9588f51 Mon Sep 17 00:00:00 2001 From: Sergey Chernykh Date: Fri, 14 Apr 2023 12:00:54 +0300 Subject: [PATCH] Fix after optimize env in compiler Details: * Fix env params for Load/StoreObjectDynamic/ByName/ByIndex Signed-off-by: Sergey Chernykh --- irtoc_scripts/object.irt | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/irtoc_scripts/object.irt b/irtoc_scripts/object.irt index fe7943aa0..0735e197c 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, -- Gitee