COMPMID-1451: Fix the shape of scratch_buffer in case of CIFG
In case of CIFG optimisation scratch buffer should have a size of
[batch_size, num_units * 3] else [batch_size, num_units * 4].
Change-Id: I43e46f7b52e791472f1196f36e9142240ba76c5c
diff --git a/src/runtime/NEON/functions/NELSTMLayer.cpp b/src/runtime/NEON/functions/NELSTMLayer.cpp
index 934761a..7c7580a 100644
--- a/src/runtime/NEON/functions/NELSTMLayer.cpp
+++ b/src/runtime/NEON/functions/NELSTMLayer.cpp
@@ -286,7 +286,7 @@
// Vector for holding the tensors to store in scratch buffer
std::vector<ITensor *> scratch_inputs;
- if(lstm_params.has_cifg_opt())
+ if(!lstm_params.has_cifg_opt())
{
scratch_inputs.emplace_back(&_input_gate_out1);
}
@@ -444,7 +444,7 @@
// Validate scratch concatenation
std::vector<ITensorInfo *> inputs_vector_info_raw;
- if(lstm_params.has_cifg_opt())
+ if(!lstm_params.has_cifg_opt())
{
inputs_vector_info_raw.push_back(&input_gate);
}