From d7a3df639977ac8442eec1efb41de6dc50384150 Mon Sep 17 00:00:00 2001 From: Tobias Hotz Date: Wed, 7 Jan 2026 11:48:47 +0000 Subject: [PATCH] 8374436: compiler/igvn/IntegerDivValueTests.java failed with division by zero Reviewed-by: chagedorn, thartmann --- .../jtreg/compiler/igvn/IntegerDivValueTests.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/test/hotspot/jtreg/compiler/igvn/IntegerDivValueTests.java b/test/hotspot/jtreg/compiler/igvn/IntegerDivValueTests.java index 3585d1347ac..2abeffb0c41 100644 --- a/test/hotspot/jtreg/compiler/igvn/IntegerDivValueTests.java +++ b/test/hotspot/jtreg/compiler/igvn/IntegerDivValueTests.java @@ -204,7 +204,11 @@ public class IntegerDivValueTests { @Run(test = {"testIntConstantFolding", "testIntConstantFoldingSpecialCase"}) public void checkIntConstants(RunInfo info) { - Asserts.assertEquals(INT_CONST_1 / INT_CONST_2, testIntConstantFolding()); + if (INT_CONST_2 == 0) { + Asserts.assertThrows(ArithmeticException.class, () -> testIntConstantFolding()); + } else { + Asserts.assertEquals(INT_CONST_1 / INT_CONST_2, testIntConstantFolding()); + } Asserts.assertEquals(Integer.MIN_VALUE, testIntConstantFoldingSpecialCase()); } @@ -441,7 +445,11 @@ public class IntegerDivValueTests { @Run(test = {"testLongConstantFolding", "testLongConstantFoldingSpecialCase"}) public void checkLongConstants(RunInfo infoLong) { - Asserts.assertEquals(LONG_CONST_1 / LONG_CONST_2, testLongConstantFolding()); + if (LONG_CONST_2 == 0L) { + Asserts.assertThrows(ArithmeticException.class, () -> testLongConstantFolding()); + } else { + Asserts.assertEquals(LONG_CONST_1 / LONG_CONST_2, testLongConstantFolding()); + } Asserts.assertEquals(Long.MIN_VALUE, testLongConstantFoldingSpecialCase()); }