/** * Returns a {@link ConditionProfile} that speculates on conditions to be never * <code>true</code> or to be never <code>false</code>. Additionally to a binary profile this * method returns a condition profile that also counts the number of times the condition was * true and false. This information is reported to the underlying optimization system using * {@link CompilerDirectives#injectBranchProbability(double, boolean)}. Condition profiles are * intended to be used as part of if conditions. * * @see ConditionProfile * @see #createBinaryProfile() */ public static ConditionProfile createCountingProfile() { return new CountingConditionProfile(); }