From ea8e7971edffb2046b3724a3dd5f184a10969140 Mon Sep 17 00:00:00 2001 From: Ishin Pavel Date: Fri, 19 May 2023 17:17:25 +0300 Subject: [PATCH] Move CleanUp after Lowering Signed-off-by: Ishin Pavel --- compiler/optimizer/ecma_pipeline.cpp | 1 + tests/checked/obj_by_value.js | 18 +++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/compiler/optimizer/ecma_pipeline.cpp b/compiler/optimizer/ecma_pipeline.cpp index 85ade8123..5c9c1af34 100644 --- a/compiler/optimizer/ecma_pipeline.cpp +++ b/compiler/optimizer/ecma_pipeline.cpp @@ -112,6 +112,7 @@ bool EcmaPipeline::RunOptimizations() #endif // NDEBUG graph->RunPass(false); graph->RunPass(); + graph->RunPass(false); graph->RunPass(); graph->RunPass(OPTIONS.IsCompilerMemoryCoalescingAligned()); graph->RunPass(OPTIONS.GetCompilerIfConversionLimit()); diff --git a/tests/checked/obj_by_value.js b/tests/checked/obj_by_value.js index d875a0fa2..c88222080 100644 --- a/tests/checked/obj_by_value.js +++ b/tests/checked/obj_by_value.js @@ -16,7 +16,7 @@ //! CHECKER Test check store and load by value //! RUN options: "--no-async-jit --compiler-hotness-threshold=10 --compiler-regex _GLOBAL::test_value.*", entry: "_GLOBAL::func_main_0" //! METHOD "test_value_store_single_class" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST_NEXT "CastAnyTypeValue" //! INST_NEXT /LoadObject.*Class/ @@ -30,7 +30,7 @@ //! INST_NEXT "StoreArray" //! INST_NOT "Intrinsic.StObjByValue" //! METHOD "test_value_load_single_class" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST_NEXT "CastAnyTypeValue" //! INST_NEXT /LoadObject.*Class/ @@ -45,7 +45,7 @@ //! INST_NEXT "DeoptimizeIf" //! INST_NOT "Intrinsic.LdObjByValue" //! METHOD "test_value_store_two_classes" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST_NEXT "CastAnyTypeValue" //! INST_NEXT /LoadObject.*Class/ @@ -62,7 +62,7 @@ //! INST_NEXT "StoreArray" //! INST_NOT "Intrinsic.StObjByValue" //! METHOD "test_value_load_two_classes" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST_NEXT "CastAnyTypeValue" //! INST_NEXT /LoadObject.*Class/ @@ -80,15 +80,15 @@ //! INST_NEXT "DeoptimizeIf" //! INST_NOT "Intrinsic.LdObjByValue" //! METHOD "test_value_store_not_int" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST_NOT "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST "Intrinsic.StObjByValue" //! METHOD "test_value_load_not_int" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST_NOT "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST "Intrinsic.LdObjByValue" //! METHOD "test_value_store_key" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "LoadObjFromConst" //! INST_NEXT "Compare" //! INST_NEXT "DeoptimizeIf" @@ -100,7 +100,7 @@ //! INST_NEXT "DeoptimizeIf" //! INST_NOT "Intrinsic.StObjByValue" //! METHOD "test_value_load_key" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "LoadObjFromConst" //! INST_NEXT "Compare" //! INST_NEXT "DeoptimizeIf" @@ -115,7 +115,7 @@ //! EVENT_NEXT /DeoptimizationReason,.*test_value_load_single_class.*INLINE_IC/ //! EVENT_NEXT /DeoptimizationReason,.*test_value_store_two_classes.*ANY_TYPE_CHECK/ //! METHOD "test_value_store_with_update_length" -//! PASS_BEFORE "Scheduler" +//! PASS_BEFORE "Lowering" //! INST "AnyTypeCheck ECMASCRIPT_HEAP_OBJECT_TYPE" //! INST_NEXT "CastAnyTypeValue" //! INST_NEXT /LoadObject.*Class/ -- Gitee