[LLVMdev] [Compiler-rt] -march=aarch64 flag in gcc/clang

Christophe Lyon christophe.lyon at linaro.org
Wed Dec 10 07:32:19 PST 2014


On 10 December 2014 at 16:06, Renato Golin <renato.golin at linaro.org> wrote:
> Hi Sumanth,
>
> Christophe (cc'd) is seeing the same problems on his build. It seems
> that r181130 (by Tim) has something to do with it, but I'm not sure.
>
> I remember trying to build compiler-rt on AArch64 natively in
> February, and even running the test-suite with it, so I'm sure it
> should work (modulo regressions).
>
Removing compiler-rt from projects sources enables cmake step to succeed.
The error message is:
[...]
CMake Error at projects/compiler-rt/cmake/config-ix.cmake:87 (message):
  Cannot compile for aarch64:
[...]
  Building CXX object CMakeFiles/cmTryCompileExec4274316732.dir/simple.cc.o

  /usr/bin/c++ -fPIC -fvisibility-inlines-hidden -Wall -W
  -Wno-unused-parameter -Wwrite-strings -Wcast-qual
  -Wno-missing-field-initializers -pedantic -Wno-long-long
  -Wno-maybe-uninitialized -Wno-comment -std=c++11 -ffunction-sections
  -fdata-sections -march=aarch64 -o
  CMakeFiles/cmTryCompileExec4274316732.dir/simple.cc.o -c
  /home/christophe.lyon/LLVM-sanitizers/build-cmake/CMakeFiles/simple.cc


  /home/christophe.lyon/LLVM-sanitizers/build-cmake/CMakeFiles/simple.cc:1:0:
  error: unknown value 'aarch64' for -march

Not sure what r181130 is supposed to do, though, since it introduces a
buggy option.

> We desperately need a full buildbot on AArch64, but we also need to
> common up all docs, especially the one in the sanitizer's page, since
> they're not following what the rest of the LLVM community is doing,
> ie. building all in one tree.
>
I should also mention that the doc at
http://clang.llvm.org/get_started.html
should be updated since it seems that configure is deprecated in favor of cmake.

Christophe.

> cheers,
> --renato
>
> On 1 December 2014 at 22:42, Gundapaneni, Sumanth <sgundapa at quicinc.com> wrote:
>> Hi,
>>
>>       I wonder if this is a valid flag in either clang/gcc.
>>
>> The flag in question is “-march=aarch64”. I verified with latest tip and
>> neither clang nor gcc fail to recognize this flag.
>>
>> This piece of code is in cmake/config-ix.cmake in compiler-rt repo.
>>
>>
>>
>> +  elseif("${COMPILER_RT_TEST_TARGET_ARCH}" MATCHES "aarch64")
>>
>> +    test_target_arch(aarch64 "-march=aarch64")
>>
>>
>>
>> Anyone have any thoughts or any suggestions ? Currently this is blocking my
>> compiler-rt build for aarch64-linux.
>>
>>
>>
>> --Sumanth G




More information about the llvm-dev mailing list