diff options
author | 2017-01-04 09:43:10 -0800 | |
---|---|---|
committer | 2017-01-04 10:03:51 -0800 | |
commit | 1118de02db298159d7df7008df59ffd92801b59f (patch) | |
tree | 98406256d58017b6d5b97eaae6bfa7fefe5028d9 | |
parent | 3b5f50d3f7620d288e19e4429cc63bffefdcd415 (diff) |
Mark gemmlowp result as initialized.
Change: 143563367
-rw-r--r-- | tensorflow/core/kernels/quantized_matmul_op.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/tensorflow/core/kernels/quantized_matmul_op.cc b/tensorflow/core/kernels/quantized_matmul_op.cc index 00d5fe88a3..d55d666709 100644 --- a/tensorflow/core/kernels/quantized_matmul_op.cc +++ b/tensorflow/core/kernels/quantized_matmul_op.cc @@ -58,6 +58,9 @@ void GemmlowpMultiply(OpKernelContext* op_context, const quint8* a_data, gemmlowp::GemmWithOutputPipeline<std::uint8_t, std::int32_t, gemmlowp::DefaultL8R8BitDepthParams>( &context, lhs, rhs, &result, -offset_a, -offset_b, empty_pipeline); + // Since gemmlowp uses assembly to write to the output, msan won't detect + // the output buffer as written to, so we mark it manually. + TF_ANNOTATE_MEMORY_IS_INITIALIZED(c_data_as_int32, m * n * sizeof(int32)); } template <class T1, class T2, class Toutput> |