llvm-ia64 is off the ground...

Warner Losh imp at bsdimp.com
Fri Jun 10 15:56:53 UTC 2011


Hey Marcel,

I don't mean to throw cold water at your enthusiasm, but I thought I heard that upstream llvm was in the process of decommissioning ia64 support.  Did I hear wrong?

Warner

On Jun 10, 2011, at 9:38 AM, Marcel Moolenaar wrote:

> 
> On Jun 10, 2011, at 12:25 AM, Roman Divacky wrote:
> 
>> On Thu, Jun 09, 2011 at 07:20:04PM -0700, Marcel Moolenaar wrote:
>>> [CC toolchain@ -- more eyes is probably better]
>>> 
>>> Hi Roman,
>>> 
>>> I created the projects branch and committed a skeletal target
>>> for ia64 that's based on MSP430. I also discovered that CLang
>>> needs some target info, so I added that too.
>>> 
>>> The branch is:
>>> 	projects/llvm-ia64
>> 
>> wow :) This is fantastic.
>> 
>>> When you have time, feel free to go over it and critique what
>>> I've done.
>> 
>> I sure will do! How do you build that? Do I have to build whole
>> freebsd world or is there some easier way? Will "make" in usr.bin/clang
>> work?
> 
> On my FreeBSD 8 I first made lib/clang/libllvmsupport. After
> that I could make usr.bin/clang/tblgen and install it. Then
> it's easy: build lib/clang followed by usr.bin/clang. Install
> from usr.bin/clang
> 
> Unfortunately, the FreeBSD build doesn't give me goodies like
> llc or bugpoint so there may be value in adding that to the
> FreeBSD build as optional or developer-only build targets...
> 
> Thoughts anyone?
> 
>> 
>>> My next steps are simple: Fix whatever blocks me from making
>>> progress:
>>> 
>>> ns1% cat ~/incr.c 
>>> int
>>> incr(int x)
>>> {
>>> return (x + 1);
>>> }
>>> ns1% clang -ccc-host-triple ia64 -S ~/incr.c 
>>> 'generic' is not a recognized processor for this target (ignoring processor)
>> 
>> You can ignore this for now I think.
> 
> I'll probably implement something simple like the merced and
> mckinley subtargets and default to mckinley. Later, when it's
> time to look at optimizations, is when this becomes important.
> 
>> 
>>> error: unable to interface with target machine
>>> 1 error generated.
>> 
>> You have to create and register IA64InstPrinter. Check MSP430/InstPrinter/*
>> and and MSP430AsmPrinter.cpp:createMSP430MCInstPrinter().
> 
> Ah, ok...
> 
> BTW: these little tips save me hours of debugging.
> 
>> I'll take some detailed looked in the evening!
> 
> Thanks. Anytime, no rush...
> 
> -- 
> Marcel Moolenaar
> marcel at xcllnt.net
> 
> 
> _______________________________________________
> freebsd-toolchain at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
> To unsubscribe, send any mail to "freebsd-toolchain-unsubscribe at freebsd.org"
> 
> 



More information about the freebsd-toolchain mailing list