LLVM Recognition

I did a bunch with compilers in FATE tonight:

  • I formally inducted x86_32 and x86_64 configurations of LLVM for Linux into the FATE farm. I’ve heard that compiler is going to rescue us all someday. For the time being, it is exhibiting some problems with the FFmpeg source code, particularly on 32-bit.
  • I upgraded the gcc used for compiling the Mac OS X versions to gcc 4.0.1 build 5493, packaged with Xcode 3.1.3 which is the latest version per my understanding. I think this is the first time I have bothered to upgrade Xcode since the first time I installed it. Everything still runs smoothly there, both on 32- and 64-bit.
  • I updated the gcc-svn snapshots across x86_32, x86_64, and PowerPC, all on Linux. All 3 configurations are compiling now. That’s the good news. Regrettably, the PowerPC build is doing even worse now (i.e., failing more tests) than the recently released gcc 4.4.0.

8 thoughts on “LLVM Recognition

  1. astrange

    Could you run gcc svn/PPC with -fno-strict-aliasing once and see how many tests are fixed? I think it should be most of them.

    There should really be dsputil unit tests to make it easier to find this kind of thing.

  2. Michael Kostylev

    x32_86/Linux
    –cc=clang -> 155/262
    –cc=clang –disable-sse -> 209/262
    –cc=clang –disable-mmx -> 209/262
    –cc=clang –disable-mmx –disable-optimizations -> 262/262

  3. Multimedia Mike Post author

    Nice legwork, Michael. Is it miscompiling ASM stuff all over the place? Or something else? And I wonder if this applies to assorted other configurations that are experiencing problems?

  4. Michael Kostylev

    I’d say this is a masterpiece of the deadly optimization:

    –cc=clang –-disable-sse -–disable-optimizations –extra-cflags=’-O1′ -> 237/262
    –cc=clang –disable-optimizations –extra-cflags=’-O1′ -> 237/262
    –cc=clang –disable-optimizations –extra-cflags=’-O1 -fomit-frame-pointer’ -> 255/262

  5. mat

    Hi Mike,

    use –arch=c : llvm as very borken asm inline support.

    For other failure, may be update llvm.

    A version of ffmpeg build with “–cc=’clang -ccc-host-triple i686-linux-gnu’ –enable-gpl –arch=c –disable-debug” an llvm (r72387) pass codectest on x86_32

  6. Jai

    And hopefully the the end of this year’s GSoC Open64 will be able to build FFmpeg as well. That should be interesting.

  7. JB

    Why aren’t you building OS X versions with GCC 4.2.1 as included with Leopard also? I’m getting good results with 4.2.1.

    However I’m trying to compile with LLVM-GCC under Snow Leopard and getting strange results.

    My AVCodecContext doesn’t misses apx 80% of all options, like -vcodec is all gone and a lot more other important ones. Any ideas or should I just stop trying..

Comments are closed.