diff --git a/include/aidge/backend/cpu/operator/AddImpl_forward_kernels.hpp b/include/aidge/backend/cpu/operator/AddImpl_forward_kernels.hpp index 478a0226f43ccbc64d567a56ab89a558179438c5..94b22dcc7fc8251f8ca907ab0b060b0275309c9d 100644 --- a/include/aidge/backend/cpu/operator/AddImpl_forward_kernels.hpp +++ b/include/aidge/backend/cpu/operator/AddImpl_forward_kernels.hpp @@ -14,6 +14,8 @@ #include "aidge/utils/Registrar.hpp" +#include <cstdint> // std::int32_t, std::int64_t + #include "aidge/backend/cpu/data/Broadcasting.hpp" #include "aidge/backend/cpu/operator/AddImpl.hpp" @@ -42,10 +44,12 @@ void AddImpl_cpu_forward_kernel(const std::vector<const void*> inputs_, const st namespace { static Registrar<AddImplForward_cpu> registrarAddImplForward_cpu_Float32( {DataType::Float32, DataType::Float32}, Aidge::AddImpl_cpu_forward_kernel<float, float>); -static Registrar<AddImplForward_cpu> registrarAddImplForward_cpu_Int32( - {DataType::Int32, DataType::Int32}, Aidge::AddImpl_cpu_forward_kernel<int, int>); static Registrar<AddImplForward_cpu> registrarAddImplForward_cpu_Float64( {DataType::Float64, DataType::Float64}, Aidge::AddImpl_cpu_forward_kernel<double, double>); +static Registrar<AddImplForward_cpu> registrarAddImplForward_cpu_Int32( + {DataType::Int32, DataType::Int32}, Aidge::AddImpl_cpu_forward_kernel<std::int32_t, std::int32_t>); +static Registrar<AddImplForward_cpu> registrarAddImplForward_cpu_Int64( + {DataType::Int64, DataType::Int64}, Aidge::AddImpl_cpu_forward_kernel<std::int64_t, std::int64_t>); } // namespace } // namespace Aidge diff --git a/include/aidge/backend/cpu/operator/DivImpl_forward_kernels.hpp b/include/aidge/backend/cpu/operator/DivImpl_forward_kernels.hpp index 3cdcefa9e1c865f66b64ed527605d46af31be8af..74db1128c111ae62bedb6fa61682abca62429cdb 100644 --- a/include/aidge/backend/cpu/operator/DivImpl_forward_kernels.hpp +++ b/include/aidge/backend/cpu/operator/DivImpl_forward_kernels.hpp @@ -14,6 +14,7 @@ #include <numeric> // std::accumulate #include <cstddef> // std::size_t +#include <cstdint> // std::int32_t, std::int64_t #include <functional> // std::multiplies #include "aidge/utils/Registrar.hpp" @@ -76,7 +77,7 @@ static Registrar<DivImplForward_cpu> registrarDivImplForward_cpu_Float32( Aidge::DivImpl_cpu_forward_kernel<float, float, float>); static Registrar<DivImplForward_cpu> registrarDivImplForward_cpu_Int32( {DataType::Int32, DataType::Int32, DataType::Int32}, - Aidge::DivImpl_cpu_forward_kernel<int, int, int>); + Aidge::DivImpl_cpu_forward_kernel<std::int32_t, std::int32_t, std::int32_t>); static Registrar<DivImplForward_cpu> registrarDivImplForward_cpu_Float64( {DataType::Float64, DataType::Float64, DataType::Float64}, Aidge::DivImpl_cpu_forward_kernel<double, double, double>); diff --git a/include/aidge/backend/cpu/operator/MulImpl_forward_kernels.hpp b/include/aidge/backend/cpu/operator/MulImpl_forward_kernels.hpp index e1387768ea02e2a9f35790c64c7674c321a1faa7..c44199ba4797682362f4a7cb223435d6d1585443 100644 --- a/include/aidge/backend/cpu/operator/MulImpl_forward_kernels.hpp +++ b/include/aidge/backend/cpu/operator/MulImpl_forward_kernels.hpp @@ -14,6 +14,8 @@ #include "aidge/utils/Registrar.hpp" +#include <cstdint> // std::int32_t, std::int64_t + #include "aidge/backend/cpu/data/Broadcasting.hpp" #include "aidge/backend/cpu/operator/MulImpl.hpp" @@ -35,13 +37,13 @@ void MulImpl_cpu_forward_kernel(const std::vector<std::size_t>& input1Dims, totalElements *= dimSize; } - for (std::size_t oIndex = 0; oIndex < totalElements; ++oIndex) + for (std::size_t oIndex = 0; oIndex < totalElements; ++oIndex) { std::vector<size_t> indexes = getMultiDimIndices(outputDims, oIndex); std::size_t idx1 = getFlattenedIndex(input1Dims, indexes); std::size_t idx2 = getFlattenedIndex(input2Dims, indexes); - + output[oIndex] = input_1[idx1] * input_2[idx2]; } } @@ -50,12 +52,15 @@ namespace { static Registrar<MulImplForward_cpu> registrarMulImplForward_cpu_Float32( {DataType::Float32, DataType::Float32, DataType::Float32}, Aidge::MulImpl_cpu_forward_kernel<float, float, float>); -static Registrar<MulImplForward_cpu> registrarMulImplForward_cpu_Int32( - {DataType::Int32, DataType::Int32, DataType::Int32}, - Aidge::MulImpl_cpu_forward_kernel<int, int, int>); static Registrar<MulImplForward_cpu> registrarMulImplForward_cpu_Float64( {DataType::Float64, DataType::Float64, DataType::Float64}, Aidge::MulImpl_cpu_forward_kernel<double, double, double>); +static Registrar<MulImplForward_cpu> registrarMulImplForward_cpu_Int32( + {DataType::Int32, DataType::Int32, DataType::Int32}, + Aidge::MulImpl_cpu_forward_kernel<std::int32_t, std::int32_t, std::int32_t>); +static Registrar<MulImplForward_cpu> registrarMulImplForward_cpu_Int64( + {DataType::Int64, DataType::Int64, DataType::Int64}, + Aidge::MulImpl_cpu_forward_kernel<std::int64_t, std::int64_t, std::int64_t>); } // namespace } // namespace Aidge diff --git a/include/aidge/backend/cpu/operator/SubImpl_forward_kernels.hpp b/include/aidge/backend/cpu/operator/SubImpl_forward_kernels.hpp index 19b0bd21de129ed303151987323234364ce5f6f2..10e6f58bb44b63f2d8712dc0aa64e0660f3356b2 100644 --- a/include/aidge/backend/cpu/operator/SubImpl_forward_kernels.hpp +++ b/include/aidge/backend/cpu/operator/SubImpl_forward_kernels.hpp @@ -14,6 +14,10 @@ #include "aidge/utils/Registrar.hpp" +#include <cstddef> // std::size_t +#include <cstdint> // std::int32_t, std::int64_t +#include <vector> + #include "aidge/backend/cpu/data/Broadcasting.hpp" #include "aidge/backend/cpu/operator/SubImpl.hpp" @@ -36,7 +40,7 @@ void SubImpl_cpu_forward_kernel(const std::vector<std::size_t>& input1Dims, totalElements *= dimSize; } - for (std::size_t oIndex = 0; oIndex < totalElements; ++oIndex) + for (std::size_t oIndex = 0; oIndex < totalElements; ++oIndex) { std::vector<size_t> indexes = getMultiDimIndices(outputDims, oIndex); std::size_t idx1 = getFlattenedIndex(input1Dims, indexes); @@ -49,12 +53,15 @@ namespace { static Registrar<SubImplForward_cpu> registrarSubImplForward_cpu_Float32( {DataType::Float32, DataType::Float32, DataType::Float32}, Aidge::SubImpl_cpu_forward_kernel<float, float, float>); -static Registrar<SubImplForward_cpu> registrarSubImplForward_cpu_Int32( - {DataType::Int32, DataType::Int32, DataType::Int32}, - Aidge::SubImpl_cpu_forward_kernel<int, int, int>); static Registrar<SubImplForward_cpu> registrarSubImplForward_cpu_Float64( {DataType::Float64, DataType::Float64, DataType::Float64}, Aidge::SubImpl_cpu_forward_kernel<double, double, double>); +static Registrar<SubImplForward_cpu> registrarSubImplForward_cpu_Int32( + {DataType::Int32, DataType::Int32, DataType::Int32}, + Aidge::SubImpl_cpu_forward_kernel<std::int32_t, std::int32_t, std::int32_t>); +static Registrar<SubImplForward_cpu> registrarSubImplForward_cpu_Int64( + {DataType::Int64, DataType::Int64, DataType::Int64}, + Aidge::SubImpl_cpu_forward_kernel<std::int64_t, std::int64_t, std::int64_t>); } // namespace } // namespace Aidge