Hi, 2015-02-16 4:51 GMT+01:00 Michael Niedermayer <michae...@gmx.at>: > On Sat, Feb 07, 2015 at 06:49:38PM +0000, Christophe Gisquet wrote: >> The 3*stride value stored in r3src can be loaded much later, >> so use r3src instead of a dedicated gpr when possible. >> --- >> libavcodec/x86/hevc_mc.asm | 65 >> ++++++++++++++++++++++------------------------ >> 1 file changed, 31 insertions(+), 34 deletions(-) > > This seems to crash fate-hevc-conformance-AMP_D_Hisilicon and > others, didnt had time to look at why
Can't test at the moment, but I guess the issue is in the !PIC case where: > %ifdef PIC > - lea rfilterq, [%%table] > + lea r3srcq, [%%table] > %else > %define rfilterq %%table > %endif > @@ -187,9 +184,8 @@ QPEL_TABLE 10, 8, w, avx2 > sub myq, 1 > shl mxq, %%shift ; multiply by 32 > shl myq, %%shift ; multiply by 32 > - mova m14, [rfilterq + mxq] ; get 2 first values of > filters > - mova m15, [rfilterq + mxq+%%offset] ; get 2 last values > of filters > - lea r3srcq, [srcstrideq*3] > + mova m14, [r3srcq + mxq] ; get 2 first values of > filters > + mova m15, [r3srcq + mxq+%%offset] ; get 2 last values of > filters Obviously I shouldn't unconditionally use r3srcq or equivalent, as !PIC just directly access the %%table I probably need to define an intermediate, say TABLE, which is either r3srcq or %%table, and use it for loading the xmm regs. -- Christophe _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel