summaryrefslogtreecommitdiff
path: root/www-client/chromium/files/chromium-97-arm-tflite-cast.patch
blob: 843a384c76d383499c5a1d7e2d0dbe60b4b30bb6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
vreinterpret_s32_s8() casts int8x8_t to int32x2_t. However, third argument
of vdotq_lane_s32() is of type int8x8_t.

--- a/third_party/tflite/src/tensorflow/lite/kernels/internal/optimized/depthwiseconv_3x3_filter_common.h
+++ b/third_party/tflite/src/tensorflow/lite/kernels/internal/optimized/depthwiseconv_3x3_filter_common.h
@@ -129,16 +129,14 @@ inline int32x4_t vdotq_four_lane_s32(int32x4_t acc, int8x16_t lhs,
                                      int8x16_t rhs, const int lane) {
   switch (lane) {
     case 0:
-      return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_low_s8(rhs)), 0);
+      return vdotq_lane_s32(acc, lhs, vget_low_s8(rhs), 0);
     case 1:
-      return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_low_s8(rhs)), 1);
+      return vdotq_lane_s32(acc, lhs, vget_low_s8(rhs), 1);
     case 2:
-      return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_high_s8(rhs)),
-                            0);
+      return vdotq_lane_s32(acc, lhs, vget_high_s8(rhs), 0);
     case 3:
     default:
-      return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_high_s8(rhs)),
-                            1);
+      return vdotq_lane_s32(acc, lhs, vget_high_s8(rhs), 1);
   }
 }