From 1c2e6775f2938aec5ec8c001b0662a53199f2bf1 Mon Sep 17 00:00:00 2001 From: gtrepta <50716988+gtrepta@users.noreply.github.com> Date: Tue, 1 Oct 2024 00:33:30 -0500 Subject: [PATCH] Optimization flags for kontrol build (#842) * kontrol build: Pass optimization flags to kevm_kompile * Pass -O2 on CI --- .github/workflows/test-pr.yml | 2 +- src/kontrol/kompile.py | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test-pr.yml b/.github/workflows/test-pr.yml index 12e5e23cd..83668a50c 100644 --- a/.github/workflows/test-pr.yml +++ b/.github/workflows/test-pr.yml @@ -198,7 +198,7 @@ jobs: docker exec --user ${DOCKER_USER} --workdir ${FOUNDRY_ROOT} ${CONTAINER_NAME} forge install --no-git runtimeverification/kontrol-cheatcodes@a5dd4b0 docker exec --user ${DOCKER_USER} --workdir ${FOUNDRY_ROOT} ${CONTAINER_NAME} forge build - name: 'Run kontrol build' - run: docker exec --user ${DOCKER_USER} --workdir ${FOUNDRY_ROOT} ${CONTAINER_NAME} kontrol build + run: docker exec --user ${DOCKER_USER} --workdir ${FOUNDRY_ROOT} ${CONTAINER_NAME} kontrol build -O2 - name: 'Run kontrol prove' run: docker exec --user ${DOCKER_USER} --workdir ${FOUNDRY_ROOT} ${CONTAINER_NAME} kontrol prove --match-test 'AssertTest.test_assert_true()' - name: 'Run kontrol show' diff --git a/src/kontrol/kompile.py b/src/kontrol/kompile.py index 8687942ff..c0a41d0c2 100644 --- a/src/kontrol/kompile.py +++ b/src/kontrol/kompile.py @@ -160,6 +160,15 @@ def should_rekompile() -> bool: if should_rekompile(): output_dir = foundry.kompiled + + optimization = 0 + if options.o1: + optimization = 1 + if options.o2: + optimization = 2 + if options.o3: + optimization = 3 + kevm_kompile( target=options.target, output_dir=output_dir, @@ -172,6 +181,7 @@ def should_rekompile() -> bool: debug=options.debug, verbose=options.verbose, ignore_warnings=options.ignore_warnings, + optimization=optimization, ) update_kompilation_digest()