This revision adds a pre-bufferization transform that can reduce the number of allocation. It is similar to bufferization.eliminate_empty_tensors, but specific to LinalgOp.
The transform looks for tensor.empty ops where the SSA use-def chain ends in an "ins" operand of a LinalgOp. If the same LinalgOp has an unused "outs" operand (and some other conditions are met), this "outs" operand can be used instead of the tensor.empty and the "ins" operand can be turned into an "outs" operand.