<div style="line-height:1.7;color:#000000;font-size:14px;font-family:arial"><div> </div><pre><br>At 2015-05-12 09:05:36,"Steve Borho" <steve@borho.org> wrote:
>On 05/11, Min Chen wrote:
>> # HG changeset patch
>> # User Min Chen <chenm003@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
</pre><pre> </pre><pre>MinGW GCC 4.9.2 worse than VC, there have lots of memory operators, we have to use VC path</pre><pre> </pre></div>