Re: llvm/clang support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting omalleys@xxxxxxx:

> Quoting Michael Hope <michael.hope@xxxxxxxxxx>:
>
>> On Sat, Apr 2, 2011 at 12:04 PM, Xerxes Ranby <xerxes@xxxxxxxxx> wrote:
>>> On 2011-04-02 00:20, Michael Hope wrote:
>>>>
>>>> On Sat, Apr 2, 2011 at 1:50 AM,<omalleys@xxxxxxx>  wrote:
>>>>>
>>>>> Did anyone ever get llvm/clang working?
>>>>>
>>>>> It -says- it is fast, good optimization, faster binaries, aimed at
>>>>> generating better errors, and has good tools for debugging. :) the
>>>>> darwin-arm (and x86 ports are production quality.
>>>>> There isn't support for EABI or<  armv6 in the ARM-backend yet.
>>>>
>>>> I'm having a bit of a look at this for Linaro at the moment.  LLVM is
>>>> quite respectable, and generates code that is slower than GCC but
>>>> generally in the same ballpark.  Of the three benchmarks I've tried,
>>>> two took 8 % longer to run on an A9 and pybench took more like 40 %
>>>> longer to run.  pybench is sensitive to having a good inner loop
>>>> though.
>>>
>>> For what I know, LLVM defaults to ARMv4t code generation unless it  
>>> gets told
>>> that it are allowed to use newer code generation.
>>>
>>> This llvm bug tracked how llvm and clang implemented X86 cpu feature
>>> autodetection code to make clang generate the best code available for any
>>> given host when using -march=native.
>>> http://www.llvm.org/bugs/show_bug.cgi?id=5389
>>>
>>> I have added an initial cpu features auto-detection code for ARM to that
>>> bug-report for the LLVM part.
>>>
>>> Do you get better performance on your A9 tests when running clang with
>>> clang -mcpu=generic -mattr=+neon,-thumb2,+v6,+vfp2
>>
>> I've only done a first pass, but I'm fairly sure I used clang
>> -mcpu=cortex-a9 -mfpu=neon.  I don't think clang supports ARMv4T at
>> all.  I'm working on automating the benchmarks at the moment and I'll
>> add llvm into that.  Better than some throw-away, unreproducable
>> results :)
>>
>
> According to what I understood from their web docs (which may or may  
> not be accurate..) and was listed under "known issues" I think for  
> the "backend" for the 2.8 release:
> -armv4 doesn't have thumb support yet.
> -EABI is unsupported for all processors.
>
> I was unclear whether that was just the llvm/clang toolchain or it  
> also included the llvm-gccX toolchain.
>
> LLVM 2.9 is scheduled to be released today (April 4th). 2.8 is still  
> listed as the current version on their website, so there might be a  
> delay or it may not be updated yet.
>
I will correct myself, it is the armv6 that has issues with thumb  
support. I don't know if that means that everything < armv6 has the  
same issue or not.

- performance-
phoronix did a benchmark testing between gcc 4.6, gcc 4.5, llvm/clang,  
llvm/dragonegg on x86/x86_64

http://www.phoronix.com/scan.php?page=article&item=gcc_46_llvm29&num=1

It doesn't appear as though llvm is necessarily faster.
I'm actually kind of interested in how much more colourful the  
warnings are. :)

(BTW I wasn't actually suggesting -changing- compilers at this point  
without EABI support.) However more colourful error messages maybe  
useful.




_______________________________________________
arm mailing list
arm@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/arm



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux ARM (Vger)]     [Linux ARM]     [ARM Kernel]     [Fedora User Discussion]     [Older Fedora Users Discussion]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Maintainers]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [Linux Apps]     [KDE Users]     [Fedora Tools]     [Fedora Art]     [Fedora Docs]     [Asterisk PBX]

Powered by Linux