[cfe-dev] compiler-rt non-neon builds are still broken

Jonathan Roelofs jonathan at codesourcery.com
Wed Dec 17 10:47:36 PST 2014



On 12/17/14 11:44 AM, İsmail Dönmez wrote:
> On Wed, Dec 17, 2014 at 8:37 PM, Jonathan Roelofs
> <jonathan at codesourcery.com> wrote:
>>
>>
>> On 12/17/14 11:34 AM, Renato Golin wrote:
>>>
>>> On 17 December 2014 at 16:49, İsmail Dönmez <ismail at donmez.ws> wrote:
>>>>>
>>>>> /opt/clang/bin/clang -target armv7a-unknown-linux-gnueabihf
>>>>> -mfpu=vfpv3-d16 -c UnwindRegistersRestore.S
>>>>
>>>> ./UnwindRegistersRestoreARM.S:145:15: error: register expected
>>>>     vldmia r0, {d16-d31}
>>>>                 ^
>>>
>>>
>>> My GCC is 4.9.2, and I can't reproduce your error. But where GCC is
>>> 4.8, I can. I'm not sure why is that, since we're using Clang, but it
>>> deserves some investigation.
>>>
>>> Basically, the error message is saying that "d16" is not a valid
>>> register name. If you change to -mfpu=vfpv3 everything works, so it's
>>> definitely a run time issue.
>>
>> Is integrated-as the default on solaris? If not, which assembler is being
>> picked up?
>
> Who said Slowaris? :) This is openSUSE Linux x86-64
Sorry, poor memory.
>
>> Ismail, can you run the above command again with '-v'?
>
> Its surely integrated assembler:
>
> [/havana/llvm/projects/libcxxabi/src/Unwind]> /opt/clang/bin/clang -v
> -target armv7a-unknown-linux-gnueabihf -mfpu=vfpv3-d16 -
> c UnwindRegistersRestore.S
> clang version 3.6.0 (trunk 224333)
> Target: armv7a-unknown-linux-gnueabihf
> Thread model: posix
>   "/opt/clang/bin/clang-3.6" -cc1 -triple armv7-unknown-linux-gnueabihf
> -E -disable-free -main-file-name UnwindRegistersRestore
> .S -mrelocation-model static -mthread-model posix -mdisable-fp-elim
> -fmath-errno -masm-verbose -mconstructor-aliases -target-c
> pu cortex-a8 -target-feature +vfp3 -target-feature +d16
> -target-feature -neon -target-abi aapcs-linux -mfloat-abi hard -v -dwa
> rf-column-info -coverage-file
> /havana/llvm/projects/libcxxabi/src/Unwind/UnwindRegistersRestore.S
> -resource-dir /opt/clang/bin
> /../lib64/clang/3.6.0 -internal-isystem /usr/local/include
> -internal-isystem /opt/clang/bin/../lib64/clang/3.6.0/include
> -internal-externc-isystem /include -internal-externc-isystem
> /usr/include -fdebug-compilation-dir
> /havana/llvm/projects/libcxxabi/src/Unwind -ferror-limit 19
> -fmessage-length 126 -mstackrealign -fno-signed-char
> -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -o
> /tmp/UnwindRegistersRestore-47232b.s -x assembler-with-cpp
> UnwindRegistersRestore.S
> clang -cc1 version 3.6.0 based upon LLVM 3.6.0svn default target
> x86_64-suse-linux
> ignoring nonexistent directory "/include"
> #include "..." search starts here:
> #include <...> search starts here:
>   /usr/local/include
>   /opt/clang/bin/../lib64/clang/3.6.0/include
>   /usr/include
> End of search list.
>   "/opt/clang/bin/clang-3.6" -cc1as -triple
> armv7-unknown-linux-gnueabihf -filetype obj -main-file-name
> UnwindRegistersRestore.
> S -target-cpu cortex-a8 -target-feature +vfp3 -target-feature +d16
> -target-feature -neon -fdebug-compilation-dir /havana/llvm/
> projects/libcxxabi/src/Unwind -dwarf-debug-producer clang version
> 3.6.0 (trunk 224333) -o UnwindRegistersRestore.o /tmp/Unwind
> RegistersRestore-47232b.s
> ./UnwindRegistersRestoreARM.S:145:15: error: register expected
>    vldmia r0, {d16-d31}
>                ^
>

-- 
Jon Roelofs
jonathan at codesourcery.com
CodeSourcery / Mentor Embedded



More information about the cfe-dev mailing list