Enable unoptimized presets in those external tests where they now pass

This commit is contained in:
Kamil Śliwak 2023-04-21 15:14:35 +02:00
parent 5e32a728fe
commit 3aaa207162
15 changed files with 37 additions and 35 deletions

View File

@ -46,8 +46,8 @@ function bleeps_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with: "YulException: Variable param_0 is 2 slot(s) too deep inside the stack." #ir-no-optimize # Compilation fails with: "YulException: Variable expr_15509_mpos is 4 too deep in the stack". No memoryguard was present.
#ir-optimize-evm-only # Compilation fails with: "YulException: Variable param_0 is 2 slot(s) too deep inside the stack." #ir-optimize-evm-only # Compilation fails with: "YulException: Variable expr_15260_mpos is 4 too deep in the stack". No memoryguard was present.
ir-optimize-evm+yul ir-optimize-evm+yul
#legacy-no-optimize # Compilation fails with: "CompilerError: Stack too deep, try removing local variables." #legacy-no-optimize # Compilation fails with: "CompilerError: Stack too deep, try removing local variables."
#legacy-optimize-evm-only # Compilation fails with: "CompilerError: Stack too deep, try removing local variables." #legacy-optimize-evm-only # Compilation fails with: "CompilerError: Stack too deep, try removing local variables."

View File

@ -45,8 +45,8 @@ function brink_test
local extra_optimizer_settings="runs: 800" local extra_optimizer_settings="runs: 800"
local compile_only_presets=( local compile_only_presets=(
#ir-no-optimize # Compilation fails with "YulException: Variable var_signature_127_offset is 2 slot(s) too deep inside the stack." ir-no-optimize # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10.
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_signature_127_offset is 2 slot(s) too deep inside the stack." ir-optimize-evm-only # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10.
ir-optimize-evm+yul # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10. ir-optimize-evm+yul # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10.
legacy-optimize-evm+yul # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10. legacy-optimize-evm+yul # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10.
legacy-no-optimize # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10. legacy-no-optimize # Lots of test failures. Tests depend on constants.js, which seems to be calculated specifically for 0.8.10.

View File

@ -47,8 +47,8 @@ function chainlink_test
) )
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var__value_775 is 1 slot(s) too deep inside the stack." #ir-no-optimize # Compilation fails with "YulException: Variable expr_10724_mpos is 2 too deep in the stack". No memoryguard was present.
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var__value_10 is 1 slot(s) too deep inside the stack" #ir-optimize-evm-only # Compilation fails with "YulException: Variable expr_1891_mpos is 2 too deep in the stack". No memoryguard was present.
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-optimize-evm-only # NOTE: This requires >= 4 GB RAM in CI not to crash legacy-optimize-evm-only # NOTE: This requires >= 4 GB RAM in CI not to crash
legacy-optimize-evm+yul # NOTE: This requires >= 4 GB RAM in CI not to crash legacy-optimize-evm+yul # NOTE: This requires >= 4 GB RAM in CI not to crash

View File

@ -45,8 +45,8 @@ function elementfi_test
local compile_only_presets=( local compile_only_presets=(
# ElementFi's test suite is hard-coded for Mainnet forked via alchemy.io. # ElementFi's test suite is hard-coded for Mainnet forked via alchemy.io.
# Locally we can only compile. # Locally we can only compile.
#ir-no-optimize # Compilation fails with "YulException: Variable var_amount_9311 is 10 slot(s) too deep inside the stack." ir-no-optimize
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_amount_9311 is 10 slot(s) too deep inside the stack." ir-optimize-evm-only
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-no-optimize legacy-no-optimize
legacy-optimize-evm-only legacy-optimize-evm-only

View File

@ -42,13 +42,13 @@ function ens_test
local config_file="hardhat.config.js" local config_file="hardhat.config.js"
local compile_only_presets=( local compile_only_presets=(
ir-no-optimize # FIXME: Tests fail with "Error: cannot estimate gas; transaction may fail or may require manual gas limit"
legacy-no-optimize # Compiles but tests fail to deploy GovernorCompatibilityBravo (code too large). legacy-no-optimize # Compiles but tests fail to deploy GovernorCompatibilityBravo (code too large).
) )
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var__945 is 1 slot(s) too deep inside the stack." ir-optimize-evm-only
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var__945 is 1 slot(s) too deep inside the stack." ir-optimize-evm+yul # Needs memory-safe inline assembly patch
ir-optimize-evm+yul # Needs memory-safe inline assembly patch
legacy-optimize-evm-only legacy-optimize-evm-only
legacy-optimize-evm+yul legacy-optimize-evm+yul
) )

View File

@ -47,8 +47,8 @@ function euler_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_utilisation_307 is 6 slot(s) too deep inside the stack." #ir-no-optimize # Compilation fails with "YulException: Variable var_v_mpos is 4 too deep in the stack". No memoryguard was present.
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_utilisation_307 is 6 slot(s) too deep inside the stack." #ir-optimize-evm-only # Compilation fails with "YulException: Variable var_v_mpos is 4 too deep in the stack". No memoryguard was present.
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-optimize-evm-only legacy-optimize-evm-only
legacy-optimize-evm+yul legacy-optimize-evm+yul

View File

@ -45,8 +45,8 @@ function gnosis_safe_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_call_430_mpos is 1 slot(s) too deep inside the stack." #ir-no-optimize # Compilation fails with "YulException: Variable var_txHash is 1 too deep in the stack". No memoryguard was present.
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_call_430_mpos is 1 slot(s) too deep inside the stack." #ir-optimize-evm-only # Compilation fails with "YulException: Variable var_txHash is 1 too deep in the stack". No memoryguard was present.
# TODO: Uncomment the preset below when the issue: https://github.com/safe-global/safe-contracts/issues/544 is solved. # TODO: Uncomment the preset below when the issue: https://github.com/safe-global/safe-contracts/issues/544 is solved.
#ir-optimize-evm+yul # Compilation fails with "YulException: Cannot swap Variable var_operation with Variable _1: too deep in the stack by 4 slots." #ir-optimize-evm+yul # Compilation fails with "YulException: Cannot swap Variable var_operation with Variable _1: too deep in the stack by 4 slots."
legacy-no-optimize legacy-no-optimize

View File

@ -43,12 +43,12 @@ function gp2_test
local config_var="config" local config_var="config"
local compile_only_presets=( local compile_only_presets=(
legacy-no-optimize # Tests doing `new GPv2VaultRelayer` fail with "Error: Transaction reverted: trying to deploy a contract whose code is too large" ir-no-optimize # Tests fail with "Error: Transaction reverted: trying to deploy a contract whose code is too large"
legacy-no-optimize # Tests fail with "Error: Transaction reverted: trying to deploy a contract whose code is too large"
) )
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_amount_1468 is 10 slot(s) too deep inside the stack." ir-optimize-evm-only
#ir-no-optimize # Compilation fails with "YulException: Variable var_offset_3451 is 1 slot(s) too deep inside the stack."
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-optimize-evm-only legacy-optimize-evm-only
legacy-optimize-evm+yul legacy-optimize-evm+yul

View File

@ -45,8 +45,8 @@ function perpetual_pools_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_amount_527 is 9 slot(s) too deep inside the stack." ir-no-optimize
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_amount_527 is 9 slot(s) too deep inside the stack." ir-optimize-evm-only
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-no-optimize legacy-no-optimize
legacy-optimize-evm-only legacy-optimize-evm-only

View File

@ -45,8 +45,8 @@ function pool_together_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_amount_205 is 9 slot(s) too deep inside the stack." ir-no-optimize
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_amount_205 is 9 slot(s) too deep inside the stack." ir-optimize-evm-only
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-no-optimize legacy-no-optimize
legacy-optimize-evm-only legacy-optimize-evm-only

View File

@ -45,11 +45,12 @@ function prb_math_test
local config_file="hardhat.config.ts" local config_file="hardhat.config.ts"
local config_var="config" local config_var="config"
local compile_only_presets=() local compile_only_presets=(
ir-no-optimize # Tests fail with "Error: Transaction reverted: trying to deploy a contract whose code is too large"
)
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_y_1960 is 8 slot(s) too deep inside the stack." ir-optimize-evm-only
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_y_1960 is 8 slot(s) too deep inside the stack."
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-optimize-evm-only legacy-optimize-evm-only
legacy-optimize-evm+yul legacy-optimize-evm+yul

View File

@ -54,9 +54,9 @@ function trident_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with: "YulException: Variable var_amount_165 is 9 slot(s) too deep inside the stack." ir-no-optimize
#ir-optimize-evm-only # Compilation fails with: "YulException: Variable var_amount_165 is 9 slot(s) too deep inside the stack." ir-optimize-evm-only
ir-optimize-evm+yul # Needs memory-safe inline assembly patch ir-optimize-evm+yul # Needs memory-safe inline assembly patch
legacy-no-optimize legacy-no-optimize
legacy-optimize-evm-only legacy-optimize-evm-only
legacy-optimize-evm+yul legacy-optimize-evm+yul

View File

@ -45,8 +45,8 @@ function uniswap_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with: "YulException: Variable ret_0 is 1 slot(s) too deep inside the stack." ir-no-optimize
#ir-optimize-evm-only # Compilation fails with: "YulException: Variable ret_0 is 1 slot(s) too deep inside the stack." ir-optimize-evm-only
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-no-optimize legacy-no-optimize
legacy-optimize-evm-only legacy-optimize-evm-only

View File

@ -45,8 +45,8 @@ function yield_liquidator_test
local compile_only_presets=() local compile_only_presets=()
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_roles_168_mpos is 2 slot(s) too deep inside the stack." ir-no-optimize
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var__33 is 6 slot(s) too deep inside the stack." ir-optimize-evm-only
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-optimize-evm-only legacy-optimize-evm-only
legacy-optimize-evm+yul legacy-optimize-evm+yul

View File

@ -46,11 +46,12 @@ function zeppelin_test
local ref="master" local ref="master"
local config_file="hardhat.config.js" local config_file="hardhat.config.js"
local compile_only_presets=() local compile_only_presets=(
#ir-no-optimize # Compilation fails with "Contract initcode size is 49410 bytes and exceeds 49152 bytes (a limit introduced in Shanghai)."
ir-optimize-evm-only # FIXME: A few tests fail with "Transaction: ... exited with an error (status 0) after consuming all gas."
)
local settings_presets=( local settings_presets=(
"${compile_only_presets[@]}" "${compile_only_presets[@]}"
#ir-no-optimize # Compilation fails with "YulException: Variable var_account_852 is 4 slot(s) too deep inside the stack."
#ir-optimize-evm-only # Compilation fails with "YulException: Variable var_account_852 is 4 slot(s) too deep inside the stack."
ir-optimize-evm+yul ir-optimize-evm+yul
legacy-no-optimize legacy-no-optimize
legacy-optimize-evm-only legacy-optimize-evm-only