On  15-Dec-2007, at 03:01 , Pedro Alves wrote:

Jack Jansen wrote:

Aha!
Now I think I start to understand why I had a lot of problems building ffmpeg with cegcc: the assembly files didn't compile. So apparently the ffmpeg developers used a different gcc-based toolchain which has an assembler with a different syntax.

Of course they did, unless every ffmpeg developer is
developing for WinCE ...

What sort of problems?  Within the same architecture gas
usually implements the same syntax for every target, except
for the directives part.  elf supports a different set
of directives than coff does.  Usually people writing the arm
assembly don't think about coff much, since arm-coff is mostly
dead ... except for WinCE, which is a PE/COFF target.  Were you
perhaps seeing errors related to elf's .size and .type directives?

I don't fully remember which errors I encountered during the WinCE port and which during the iPod port, but among them were:
- Missing pseudo-instructions ADR and ADRL
- Missing PLD instruction while the ARM architecture I'm building for supports it
- Directive to set data was ".word" in one dialect, ".short" in another.
- ffpmeg source used ".func" directive that neither WinCE nor iPod assembler supported. - one of the assemblers didn't accept expressions in immediate values, as in (syntax from memory)
        add     r0, pc, #(label-.-2)

I get the impression here that people expect the tools should eat
everything they are fed.  Assembly level programming is by nature
tied to the target system/OS/architecture.  If the assembler was
complaining, the sources need porting work.

Agreed in the general case, of course. But for the cases above my guess is that it's purely an artefact of parallel development, I think. This seems like something that could be fixed by the various groups doing arm ports of gcc cooperating a bit more...
--
Jack Jansen, <[EMAIL PROTECTED]>, http://www.cwi.nl/~jack
If I can't dance I don't want to be part of your revolution -- Emma Goldman


-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Cegcc-devel mailing list
Cegcc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cegcc-devel

Reply via email to