summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2007-04-05 19:28:18 +0000
committerAlexis Ballier <aballier@gentoo.org>2007-04-05 19:28:18 +0000
commit5ed984e2ef0ebcdd517b633c9aa0f557d1e1004d (patch)
treee8059c640a564b8d22694de1aafd35648fc68d7e /media-video/ffmpeg/files
parentBug #168334 ; q -r dies with a segfault after emerge --sync (diff)
downloadhistorical-5ed984e2ef0ebcdd517b633c9aa0f557d1e1004d.tar.gz
historical-5ed984e2ef0ebcdd517b633c9aa0f557d1e1004d.tar.bz2
historical-5ed984e2ef0ebcdd517b633c9aa0f557d1e1004d.zip
Disable non pic safe asm on x86 and amd64, bug #172845, bug #172877 and dupes
Package-Manager: portage-2.1.2.3
Diffstat (limited to 'media-video/ffmpeg/files')
-rw-r--r--media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch b/media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch
new file mode 100644
index 000000000000..0cf16c3e5cca
--- /dev/null
+++ b/media-video/ffmpeg/files/ffmpeg-0.4.9_p20070330-asmpic.patch
@@ -0,0 +1,35 @@
+Index: ffmpeg/libavcodec/cabac.h
+===================================================================
+--- ffmpeg.orig/libavcodec/cabac.h
++++ ffmpeg/libavcodec/cabac.h
+@@ -376,7 +376,7 @@ static int av_always_inline get_cabac_in
+ #define BYTE "16"
+ #define BYTEEND "20"
+ #endif
+-#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE)
++#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) && !(defined(PIC) && defined(__GNUC__))
+ int bit;
+
+ #ifndef BRANCHLESS_CABAC_DECODER
+@@ -680,7 +680,7 @@ static av_always_inline int get_cabac_by
+
+ //FIXME the x86 code from this file should be moved into i386/h264 or cabac something.c/h (note ill kill you if you move my code away from under my fingers before iam finished with it!)
+ //FIXME use some macros to avoid duplicatin get_cabac (cant be done yet as that would make optimization work hard)
+-#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE)
++#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) && !(defined(PIC) && defined(__GNUC__))
+ static int decode_significance_x86(CABACContext *c, int max_coeff, uint8_t *significant_coeff_ctx_base, int *index){
+ void *end= significant_coeff_ctx_base + max_coeff - 1;
+ int minusstart= -(int)significant_coeff_ctx_base;
+Index: ffmpeg/libavcodec/h264.c
+===================================================================
+--- ffmpeg.orig/libavcodec/h264.c
++++ ffmpeg/libavcodec/h264.c
+@@ -6111,7 +6111,7 @@ static int decode_cabac_residual( H264Co
+ index[coeff_count++] = last;\
+ }
+ const uint8_t *sig_off = significant_coeff_flag_offset_8x8[MB_FIELD];
+-#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE)
++#if defined(ARCH_X86) && defined(CONFIG_7REGS) && defined(CONFIG_EBX_AVAILABLE) && !(defined(PIC) && defined(__GNUC__))
+ coeff_count= decode_significance_8x8_x86(CC, significant_coeff_ctx_base, index, sig_off);
+ } else {
+ coeff_count= decode_significance_x86(CC, max_coeff, significant_coeff_ctx_base, index);