diff --git a/hail/src/main/scala/is/hail/expr/ir/Simplify.scala b/hail/src/main/scala/is/hail/expr/ir/Simplify.scala index a6f907d2d85..71f4c7c758a 100644 --- a/hail/src/main/scala/is/hail/expr/ir/Simplify.scala +++ b/hail/src/main/scala/is/hail/expr/ir/Simplify.scala @@ -1,6 +1,7 @@ package is.hail.expr.ir import is.hail.expr.types.virtual._ +import is.hail.io.bgen.MatrixBGENReader import is.hail.table.Ascending import is.hail.utils._ @@ -334,6 +335,9 @@ object Simplify { FastIndexedSeq(ArrayLen(ToArray(path.foldLeft[IR](Ref("row", child.typ.rowType)) { case (comb, s) => GetField(comb, s)})).toL), AggSignature(Sum(), FastSeq(), None, FastSeq(TInt64())))) + case TableCount(TableRead(_, false, r: MatrixBGENReader)) if r.includedVariants.isEmpty => + I64(r.fileMetadata.map(_.nVariants).sum) + // TableGetGlobals should simplify very aggressively case TableGetGlobals(child) if child.typ.globalType == TStruct() => MakeStruct(FastSeq()) case TableGetGlobals(TableKeyBy(child, _, _)) => TableGetGlobals(child)