diff options
author | Manuel Bottini <manuel.bottini@arm.com> | 2019-01-14 15:14:43 +0000 |
---|---|---|
committer | Manuel Bottini <manuel.bottini@arm.com> | 2019-01-23 14:11:17 +0000 |
commit | 1d4f3853dfd16f55338d772ad757db0ee8710d78 (patch) | |
tree | 344a48b5d296fef0e05d345d342ba0733f8db7a2 /src/runtime/NEON/functions | |
parent | 734151d20bef56cbedce2ae67945f42cb4e265c8 (diff) | |
download | ComputeLibrary-1d4f3853dfd16f55338d772ad757db0ee8710d78.tar.gz |
COMPMID-1760: NEON: Implement Prod
Change-Id: I8062f4ca5ef5cf1a8183ac0834f240bbaf8f695d
Reviewed-on: https://review.mlplatform.org/541
Reviewed-by: Pablo Marquez <pablo.tello@arm.com>
Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/runtime/NEON/functions')
-rw-r--r-- | src/runtime/NEON/functions/NEReductionOperation.cpp | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/runtime/NEON/functions/NEReductionOperation.cpp b/src/runtime/NEON/functions/NEReductionOperation.cpp index bb27b5d47a..3ec8ef145e 100644 --- a/src/runtime/NEON/functions/NEReductionOperation.cpp +++ b/src/runtime/NEON/functions/NEReductionOperation.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -50,16 +50,6 @@ size_t reduction_window_split_dimension(unsigned int axis) ARM_COMPUTE_ERROR("Unsupported reduction axis"); } } -BorderMode reduction_operation_border_mode(ReductionOperation op) -{ - switch(op) - { - case ReductionOperation::SUM_SQUARE: - return BorderMode::CONSTANT; - default: - return BorderMode::CONSTANT; - } -} } // namespace NEReductionOperation::NEReductionOperation() @@ -86,9 +76,9 @@ void NEReductionOperation::configure(ITensor *input, ITensor *output, unsigned i if(axis == 0) { // Configure fill border kernel - BorderSize fill_border_size = _reduction_kernel.border_size(); - BorderMode fill_border_mode = reduction_operation_border_mode(op); - _fill_border_kernel.configure(input, fill_border_size, fill_border_mode, PixelValue(static_cast<float>(0.f))); + const BorderSize fill_border_size = _reduction_kernel.border_size(); + const PixelValue pixelValue = PixelValue((op == ReductionOperation::PROD) ? 1 : 0, input->info()->data_type(), input->info()->quantization_info()); + _fill_border_kernel.configure(input, fill_border_size, BorderMode::CONSTANT, pixelValue); } } |