# HG changeset patch # User Doug Simon # Date 1432477781 -7200 # Node ID 2cb94a7ae1b701f093c0e1f901afac03abab2c22 # Parent b118c9be1d1f54bb18208b42145b4f0d73026083 avoid unnecessary loading of regex classes when assertions are disabled diff -r b118c9be1d1f -r 2cb94a7ae1b7 graal/com.oracle.graal.lir/src/com/oracle/graal/lir/phases/LIRPhase.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/phases/LIRPhase.java Sun May 24 14:44:28 2015 +0200 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/phases/LIRPhase.java Sun May 24 16:29:41 2015 +0200 @@ -84,7 +84,14 @@ } }; - private static final Pattern NAME_PATTERN = Pattern.compile("[A-Z][A-Za-z0-9]+"); + @SuppressWarnings("all") + private static boolean assertionsEnabled() { + boolean enabled = false; + assert enabled = true; + return enabled; + } + + private static final Pattern NAME_PATTERN = assertionsEnabled() ? Pattern.compile("[A-Z][A-Za-z0-9]+") : null; private static boolean checkName(String name) { assert name == null || NAME_PATTERN.matcher(name).matches() : "illegal phase name: " + name; diff -r b118c9be1d1f -r 2cb94a7ae1b7 graal/com.oracle.graal.phases/src/com/oracle/graal/phases/BasePhase.java --- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/BasePhase.java Sun May 24 14:44:28 2015 +0200 +++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/BasePhase.java Sun May 24 16:29:41 2015 +0200 @@ -62,7 +62,14 @@ */ private final DebugMemUseTracker memUseTracker; - private static final Pattern NAME_PATTERN = Pattern.compile("[A-Z][A-Za-z0-9]+"); + @SuppressWarnings("all") + private static boolean assertionsEnabled() { + boolean enabled = false; + assert enabled = true; + return enabled; + } + + private static final Pattern NAME_PATTERN = assertionsEnabled() ? Pattern.compile("[A-Z][A-Za-z0-9]+") : null; private static boolean checkName(String name) { assert NAME_PATTERN.matcher(name).matches() : "illegal phase name: " + name;