[FFmpeg-devel] [PATCH] replace hardcoded offset of CABACContext.bytestream with "m" operand

Måns Rullgård mans
Mon Mar 17 23:57:33 CET 2008


M?ns Rullg?rd <mans at mansr.com> writes:

> Michael Niedermayer <michaelni at gmx.at> writes:
>
>> On Mon, Mar 17, 2008 at 09:01:20PM +0000, Mans Rullgard wrote:
>>> ---
>>>  libavcodec/cabac.h |   54 ++++++++++++++++++++++-----------------------------
>>>  1 files changed, 23 insertions(+), 31 deletions(-)
>>
>> Have you checked that gcc doesnt pessimize the code? Iam certain this
>> was written the way because it didnt work the other (cleaner) way around
>>
>> I also like to see START/STOP_TIMER benchmarks. In adition to some
>> confirmation that gcc still uses the same register for (c) and
>> (c->bytestream)
>
> GCC 4.1.2 gives exactly the same code for the modified parts.  There
> are, however minor differences in other parts of code.  In some
> places, it has used r13 instead of r12, and instructions are reordered
> in seemingly random ways in a few places.  Full diff of disassembled
> output (h264.o) attached.  GCC is a mystery indeed.

And here's the promised attachment.

-- 
M?ns Rullg?rd
mans at mansr.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: h264-asm.diff
Type: text/x-patch
Size: 192893 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080317/643aed3e/attachment.bin>



More information about the ffmpeg-devel mailing list