double ArrayKindProfile::fraction(ArrayData::ArrayKind kind) const { auto const idx = getKindIndex(kind); if (idx == kNumProfiledArrayKinds - 1) return 0; // untracked kinds auto const tot = total(); if (tot == 0) return 0; return (double)m_count[idx] / tot; }
double ArrayKindProfile::fraction(ArrayData::ArrayKind kind) const { const auto idx = getKindIndex(kind); if (idx == kNumProfiledArrayKinds - 1) return 0; // untracked kinds return (double)count[idx] / total(); }
void ArrayKindProfile::report(ArrayData::ArrayKind kind) { count[getKindIndex(kind)]++; }