0013-bfin-disable-optimization.patch 1.05 KB
Fix bfin compile error

See gcc bug report:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77311

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>

diff -Nur ffmpeg-2.8.7.orig/libavcodec/hevcdsp_template.c ffmpeg-2.8.7/libavcodec/hevcdsp_template.c
--- ffmpeg-2.8.7.orig/libavcodec/hevcdsp_template.c	2016-03-29 04:25:16.000000000 +0200
+++ ffmpeg-2.8.7/libavcodec/hevcdsp_template.c	2016-08-12 21:32:36.728178969 +0200
@@ -1517,7 +1517,14 @@
 #define TQ2 pix[2  * xstride + 3 * ystride]
 #define TQ3 pix[3  * xstride + 3 * ystride]
 
-static void FUNC(hevc_loop_filter_luma)(uint8_t *_pix,
+// Blackfin gcc 6.1.x fails with
+// unable to find a register to spill in class CCREGS
+#if defined(__bfin__)
+#define disable_opt __attribute__ ((optimize("O1")))
+#else
+#define disable_opt 
+#endif
+static void disable_opt FUNC(hevc_loop_filter_luma)(uint8_t *_pix,
                                         ptrdiff_t _xstride, ptrdiff_t _ystride,
                                         int beta, int *_tc,
                                         uint8_t *_no_p, uint8_t *_no_q)