# HG changeset patch # User Christian Wimmer # Date 1440786342 25200 # Node ID 48c212309281da71427334dcbe12e09eb4d3e074 # Parent f5fee32d3d6ed18f568263fb37cd69ddfb45aaf5# Parent f9a6a2f0b414dfe0cbc0285703d107defafed55b Merge diff -r f5fee32d3d6e -r 48c212309281 jvmci/jdk.internal.jvmci.meta/src/jdk/internal/jvmci/meta/Assumptions.java --- a/jvmci/jdk.internal.jvmci.meta/src/jdk/internal/jvmci/meta/Assumptions.java Fri Aug 28 15:07:43 2015 +0200 +++ b/jvmci/jdk.internal.jvmci.meta/src/jdk/internal/jvmci/meta/Assumptions.java Fri Aug 28 11:25:42 2015 -0700 @@ -72,6 +72,24 @@ System.arraycopy(other.assumptions, 0, newAssumptions, this.assumptions.length, other.assumptions.length); this.assumptions = newAssumptions; } + + public boolean canRecordTo(Assumptions target) { + /* + * We can use the result if it is either assumption free, or if we have a valid + * Assumptions object where we can record assumptions. + */ + return assumptions.length == 0 || target != null; + } + + public void recordTo(Assumptions target) { + assert canRecordTo(target); + + if (assumptions.length > 0) { + for (Assumption assumption : assumptions) { + target.record(assumption); + } + } + } } /** @@ -348,12 +366,6 @@ record(new ConcreteMethod(method, context, impl)); } - public void record(AssumptionResult result) { - for (Assumption assumption : result.assumptions) { - record(assumption); - } - } - public void record(Assumption assumption) { assumptions.add(assumption); }