Apparently gcc-4.8.2 miscompiles enums resulting in a lucky fpe soon
after it.
Passing the enum value as integer makes the ftype == FT_PPC condition
evaluates correctly.
---
I did not try to reduce a testcase to send it to gcc yet, volunteers willing to
check the case and report to gcc are welcome to beat me at it.
clang does not show the problem.
libavcodec/twinvq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavcodec/twinvq.c b/libavcodec/twinvq.c
index 3006e9f..6d0a0ec 100644
--- a/libavcodec/twinvq.c
+++ b/libavcodec/twinvq.c
@@ -996,7 +996,7 @@ static void linear_perm(int16_t *out, int16_t *in, int
n_blocks, int size)
out[i] = block_size * (in[i] % n_blocks) + in[i] / n_blocks;
}
-static av_cold void construct_perm_table(TwinContext *tctx,enum FrameType
ftype)
+static av_cold void construct_perm_table(TwinContext *tctx, int ftype)
{
int block_size;
const ModeTab *mtab = tctx->mtab;
--
1.8.5.1
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel