[exo/tflite] prevent ceil_div function from overflow (#6088)
author채성우/On-Device Lab(SR)/Engineer/삼성전자 <sw4670.chae@samsung.com>
Thu, 1 Aug 2019 03:34:16 +0000 (03:34 +0000)
committer박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 <jh1302.park@samsung.com>
Thu, 1 Aug 2019 03:34:16 +0000 (12:34 +0900)
This commit prevents ceil_div function from overflow.

Signed-off-by: seongwoo <sw4670.chae@samsung.com>
compiler/exo-tflite/src/ShapeInference.cpp

index 3f91531..0109105 100644 (file)
@@ -30,7 +30,7 @@ template <typename T, typename If = typename std::enable_if<std::is_integral<T>:
 T ceil_div(T dividend, T divisor)
 {
   assert(dividend > 0 && divisor > 0 && "this implementations is for positive numbers only");
-  return (dividend + divisor - 1) / divisor;
+  return ((dividend - 1) / divisor) + 1;
 }
 
 /**