[cfe-commits] [RC1] Status of llvm and clang for Windows x64

NAKAMURA Takumi geek4civic at gmail.com
Fri Mar 18 04:51:08 PDT 2011


Good evening, guys!

For Windows x64 aka Win64, llvm and clang can be built on RC1 but it
would not work.

PR9483 is potentially problematic to mingw32 (x86). It does not affect
selfhosting i686-clang for now (w/o +sse)

[LLVM]
  - r127328 Fix Win64 va_arg.
  - [PR8778] alloca/chkstk fix
https://github.com/chapuni/LLVM/commit/e0187c66454f4a45172f34501d5eaa060954a8ad
  - [PR9483] (working)

[clang]
  - r127238 mingw-w64 should define __MINGW32__, too.
  - r127329 declarations of __builtin_ia32_crc32**()
  - r127652 Tweak InitHeaderSearch.cpp for mingw-w64-gcc
  - r127654 _mm_malloc tweak
  - r127655 Tweak __declspec and __attribute__ for mingw


* How to build stage2 x86_64-clang with i686-clang selfhost stage1

  1. Get appropriate mingw-w64-gcc package. I am using 20101129.
  2. Layout files to copy directories.
    C:/mingw/bin-w64 <- x86_64-mingw32/bin
    C:/mingw/libexec/gcc/x86_64-w64-mingw32 <- libexec/gcc/x86_64-w64-mingw32
    C:/mingw/x86_64-w64-mingw32 <- x86_64-mingw32
  3. Set $PATH
    PATH=/c/mingw/bin-w64:/c/mingw/x86_64-w64-mingw32/bin:$PATH:/c/Python27
  4. Run configure, make, test...
    /path/to/configure
      --build=x86_64-w64-mingw32
      CC="/path/to/stage1/Release+Asserts/bin/clang -m64 -std=gnu89"
      CXX="/path/to/stage1/Release+Asserts/bin/clang++ -m64"
      --with-optimize-option=-O3
      --enable-optimized --disable-docs --disable-pthreads

...Takumi



More information about the cfe-commits mailing list