[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Porting transcode and xvid to amd64



David Liontooth may (or may not) have said:
> Hi Edouard,
> 
> Great to hear from you. I'm looking forward to an amd64 port of xvid!
> 
> Mike, could you fill Edouard in on the details, so your work won't be 
> wasted?
> 
> Edouard Gomez wrote:
> 
> >>Mike Phillips did some work on porting xvid back in November
> >>
> >Raaaaaa, why did he not mention this to xvid-devel in november ?!
> >

Sorry about that, it started out as a "this should be pretty simple, I
can knock it out in a week or so" into a "damn, this is more complex
than I thought"  The major pia was figuring out the ELF64 RELOC's for
the asm with the change to %rip addressing. Get it wrong and it will
assemble but then freak out at link time. Some of the macros don't
work quite right as written and a couple of lea's have to be thrown in
for the complex calculations. Then I realized about the different
calling semantics between the two and had to go back and change all the
parameter passing code. 

> >Much work has been done since  november and it will (probably) be a pita
> >to integrate  those changes  in todays source.   Anyway, it's  better to
> >know this now than never. What branch is it based on ?
> >

It was based on the 031115 tarball I grabbed that day. 

Most of it was the learning curve, coverting new asm from i386 -> x86_64
wouldn't actually take that long. In fact, a lot of the work can be cut
out too, we know the x86_64 supports sse2 so a lot of the fallback stuff
for regular sse, mmx, etc could be dropped. 

> >Ok, i'll have  to stop on this for  now as i'm pretty short  on time. My
> >ever growing  week end  task list  has now a  new item:  x86-64 required
> >changes.

Someone else mentioned using the gcc AS to do the work. That's certainly
doable and gcc support for x86_64 is excellent, but the notation is the
complete opposite of the nasm notation used in the existing code, it
would be far more work to make this change (and would make incorporating
future changes from the i386 code problematic)

With a stable tarball to work from, I can certainly help out bringing
anyone up to speed with how to do the conversion. I personally don't
have the time at the moment to commit to it. 

Mike



Reply to: