diff --git a/src/base/intmath.test.cc b/src/base/intmath.test.cc index 5740bd4b86..4e88b00886 100644 --- a/src/base/intmath.test.cc +++ b/src/base/intmath.test.cc @@ -72,11 +72,17 @@ TEST(IntmathTest, floorLog2) EXPECT_EQ(0, floorLog2((int64_t)1)); } +/* The IntmathDeathTest floorLog2 test is dependent on an assert being + * triggered. We therefore only run this test for .debug and .opt (where + * `TRACING_ON == 1`). + */ +#if TRACING_ON TEST(IntmathDeathTest, floorLog2) { // Verify a non-positive input triggers an assert. EXPECT_DEATH_IF_SUPPORTED(floorLog2(0), "x > 0"); } +#endif TEST(IntmathTest, ceilLog2) { diff --git a/src/base/sat_counter.test.cc b/src/base/sat_counter.test.cc index 6de7ef787b..214b015774 100644 --- a/src/base/sat_counter.test.cc +++ b/src/base/sat_counter.test.cc @@ -185,9 +185,13 @@ TEST(SatCounterTest, Shift) ASSERT_EQ(counter, 0); // Make sure the counters cannot be shifted by negative numbers, since - // that is undefined behaviour + // that is undefined behaviour. As these tests depend on asserts failing, + // these tests are only functional if `TRACING_ON == 1`, when gem5 is + // compiled as `debug` or `opt`. + #if TRACING_ON ASSERT_DEATH(counter >>= -1, ""); ASSERT_DEATH(counter <<= -1, ""); + #endif } /**