summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2019-03-27 11:01:21 +0000
committerJan Beich <jbeich@FreeBSD.org>2019-03-27 11:01:21 +0000
commit6ac117884f2165c75c772d10e30c882cca74e51a (patch)
tree724e714c027fefbd46b636154bc8217bd03d730d
parent0601fcffa20ed5a4a11813046318ec763cedbb84 (diff)
downloadfreebsd-ports-6ac117884f2165c75c772d10e30c882cca74e51a.zip
multimedia/dav1d: disallow Clang LTO on x86
dav1d 0.2.1 - by VideoLAN Decoded 1/150 frames (0.7%)Process 84877 stopped * thread #1, name = 'dav1d', stop reason = signal SIGBUS: hardware error frame #0: 0x000000080028c1f5 libdav1d.so.1`..@26262.end + 101 libdav1d.so.1`..@26262.end: -> 0x80028c1f5 <+101>: vmovdqa %ymm15, (%rsp) 0x80028c1fa <+106>: callq 0x80028baa0 ; ..@25257.end 0x80028c1ff <+111>: vpbroadcastd -0x74(%rax), %ymm1 0x80028c205 <+117>: vpmulhrsw %ymm1, %ymm6, %ymm6 (lldb) reg read rsp rsp = 0x00007fffffffc030 (lldb) bt * thread #1, name = 'dav1d', stop reason = signal SIGBUS: hardware error * frame #0: 0x000000080028c1f5 libdav1d.so.1`..@26262.end + 101 frame #1: 0x00000008002f605c libdav1d.so.1`read_coef_tree(t=0x0000000800e0f840, bs=BS_16x16, b=0x00007fffffffc630, ytx=2, depth=0, tx_split=0x00007fffffffc644, x_off=0, y_off=0, dst="wwvvvuttuvwxyyxz") at recon_tmpl.c:356:17 frame #2: 0x00000008002fd3cb libdav1d.so.1`dav1d_recon_b_inter_8bpc(t=0x0000000800e0f840, bs=BS_16x16, b=0x00007fffffffc630) at recon_tmpl.c:1510:21 frame #3: 0x00000008002c1180 libdav1d.so.1`decode_b(t=0x0000000800e0f840, bl=BL_16X16, bs=BS_16x16, bp=PARTITION_NONE, intra_edge_flags=0) at decode.c:1855:17 frame #4: 0x00000008002b65d0 libdav1d.so.1`decode_sb(t=0x0000000800e0f840, bl=BL_16X16, node=0x00000008007faf10) at decode.c:2040:17 frame #5: 0x00000008002b68a8 libdav1d.so.1`decode_sb(t=0x0000000800e0f840, bl=BL_32X32, node=0x00000008007f8e20) at decode.c:2084:21 frame #6: 0x00000008002b6924 libdav1d.so.1`decode_sb(t=0x0000000800e0f840, bl=BL_64X64, node=0x00000008007f85a0) at decode.c:2091:21 frame #7: 0x00000008002b6924 libdav1d.so.1`decode_sb(t=0x0000000800e0f840, bl=BL_128X128, node=0x00000008007f8380) at decode.c:2091:21 frame #8: 0x00000008002b5fce libdav1d.so.1`dav1d_decode_tile_sbrow(t=0x0000000800e0f840) at decode.c:2542:13 frame #9: 0x00000008002cb1ab libdav1d.so.1`dav1d_decode_frame(f=0x0000000800e00000) at decode.c:2916:29 frame #10: 0x00000008002cd477 libdav1d.so.1`dav1d_submit_frame(c=0x00000008007f5280) at decode.c:3374:20 frame #11: 0x00000008002b1433 libdav1d.so.1`dav1d_parse_obus(c=0x00000008007f5280, in=0x00000008007f52e8, global=0) at obu.c:1490:24 frame #12: 0x000000080032f786 libdav1d.so.1`dav1d_get_picture(c=0x00000008007f5280, out=0x00007fffffffe048) at lib.c:359:15 frame #13: 0x00000000002035ee dav1d`main(argc=7, argv=0x00007fffffffe250) at dav1d.c:139:20 frame #14: 0x000000000020310f dav1d`_start(ap=<unavailable>, cleanup=<unavailable>) at crt1.c:76:7 Reported by: Mozilla
-rw-r--r--multimedia/dav1d/Makefile5
1 files changed, 5 insertions, 0 deletions
diff --git a/multimedia/dav1d/Makefile b/multimedia/dav1d/Makefile
index 8b9052b3eecb..e136bc1515a7 100644
--- a/multimedia/dav1d/Makefile
+++ b/multimedia/dav1d/Makefile
@@ -29,6 +29,11 @@ CFLAGS_armv6= -no-integrated-as -B${LOCALBASE}/bin
CFLAGS_armv7= -no-integrated-as -B${LOCALBASE}/bin
LDFLAGS_i386= -Wl,-z,notext
+# https://bugs.llvm.org/show_bug.cgi?id=40635
+CFLAGS+= ${CFLAGS_${CHOSEN_COMPILER_TYPE}_${ARCH}}
+CFLAGS_clang_amd64= -fno-lto
+CFLAGS_clang_i386= -fno-lto
+
OPTIONS_DEFINE= TEST
TEST_GL_TUPLE= videolan:dav1d-test-data:3ccdd3df4fb8583d58bcc0101e315b00ec3ae130:testdata/tests/dav1d-test-data