diff --git a/barretenberg/cpp/bootstrap.sh b/barretenberg/cpp/bootstrap.sh index 7d6dff3049c7..330e5b1dbdbb 100755 --- a/barretenberg/cpp/bootstrap.sh +++ b/barretenberg/cpp/bootstrap.sh @@ -243,6 +243,15 @@ function test_cmds_native { awk '/^[a-zA-Z]/ {suite=$1} /^[ ]/ {print suite$1}' | \ grep -v 'DISABLED_' | \ while read -r test; do + # Skip heavy recursion tests in debug builds — they take 400-600s+ and the same + # code paths are already exercised (with assertions) by faster tests in the suite. + # Keep WithoutPredicate/1.GenerateVKFromConstraints so that the debug-only + # native_verification_debug path in honk_recursion_constraint.cpp is still exercised. + if [[ "$native_preset" == *debug* ]] && [[ "$test" =~ ^(HonkRecursionConstraintTest|ChonkRecursionConstraintTest|AvmRecursionInnerCircuitTests|AvmRecursionConstraintTest|AvmRecursiveTests\.TwoLayer|PaddingVariants/AvmRecursiveTestsParameterized\.TwoLayer|BoomerangTwoLayerAvmRecursiveVerifierTests|ECCVMRecursiveTests|GoblinRecursiveVerifierTests|GoblinAvmRecursiveVerifierTests|BoomerangGoblinRecursiveVerifierTests|BoomerangGoblinAvmRecursiveVerifierTests) ]]; then + if [[ "$test" != "HonkRecursionConstraintTestWithoutPredicate/1.GenerateVKFromConstraints" ]]; then + continue + fi + fi local prefix=$hash # A little extra resource for these tests. # IPARecursiveTests fails with 2 threads. diff --git a/barretenberg/cpp/src/barretenberg/stdlib/primitives/pairing_points.hpp b/barretenberg/cpp/src/barretenberg/stdlib/primitives/pairing_points.hpp index c87964f35620..ebf22b105223 100644 --- a/barretenberg/cpp/src/barretenberg/stdlib/primitives/pairing_points.hpp +++ b/barretenberg/cpp/src/barretenberg/stdlib/primitives/pairing_points.hpp @@ -54,8 +54,12 @@ template struct PairingPoints { } #ifndef NDEBUG - bb::PairingPoints native_pp(P0().get_value(), P1().get_value()); - info("Are Pairing Points with tag ", tag_index, " valid? ", native_pp.check() ? "true" : "false"); + try { + bb::PairingPoints native_pp(P0().get_value(), P1().get_value()); + info("Are Pairing Points with tag ", tag_index, " valid? ", native_pp.check() ? "true" : "false"); + } catch (const std::exception& e) { + info("Pairing Points with tag ", tag_index, " native check skipped: ", e.what()); + } #endif } @@ -210,8 +214,13 @@ template struct PairingPoints { } #ifndef NDEBUG - bb::PairingPoints native_pp(P0().get_value(), P1().get_value()); - info("Are aggregated Pairing Points with tag ", tag_index, " valid? ", native_pp.check() ? "true" : "false"); + try { + bb::PairingPoints native_pp(P0().get_value(), P1().get_value()); + info( + "Are aggregated Pairing Points with tag ", tag_index, " valid? ", native_pp.check() ? "true" : "false"); + } catch (const std::exception& e) { + info("Aggregated Pairing Points with tag ", tag_index, " native check skipped: ", e.what()); + } #endif }