[x265] [PATCH 4 of 5] reduce conditional operators on c1Flag loop in codeCoeffNxN()
chen
chenm003 at 163.com
Tue May 12 03:40:53 CEST 2015
At 2015-05-12 09:05:36,"Steve Borho" <steve at borho.org> wrote:
>On 05/11, Min Chen wrote:
>> # HG changeset patch
>> # User Min Chen <chenm003 at 163.com>
>> # Date 1431386748 25200
>> # Node ID a58a6e5bb3c6c4f2541d0dbd77bd35d6f40c2eb7
>> # Parent d4eda2573100588fb6e32188d592cd648da046e9
>> reduce conditional operators on c1Flag loop in codeCoeffNxN()
>> ---
>> source/encoder/entropy.cpp | 19 ++++++++++++++-----
>> 1 files changed, 14 insertions(+), 5 deletions(-)
>>
>> diff -r d4eda2573100 -r a58a6e5bb3c6 source/encoder/entropy.cpp
>> --- a/source/encoder/entropy.cpp Mon May 11 16:25:45 2015 -0700
>> +++ b/source/encoder/entropy.cpp Mon May 11 16:25:48 2015 -0700
>> @@ -1769,15 +1769,24 @@
>> {
>> uint32_t symbol = absCoeff[idx] > 1;
>> encodeBin(symbol, baseCtxMod[c1]);
>> +
>> + // TODO: VC can't work fine on below style, but ICL can generate branch free code
>> +#ifdef __INTEL_COMPILER
>> + if (symbol)
>> + c1 = 0;
>> +
>> + if ((firstC2FlagIdx < 0) & symbol)
>> + firstC2FlagIdx = (int)idx;
>> +#else
>
>please also check gcc/mingw for this as well
MinGW GCC 4.9.2 worse than VC, there have lots of memory operators, we have to use VC path
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20150512/04ec0bb8/attachment.html>
More information about the x265-devel
mailing list