[LLVMdev] clang builds on Sparc/Linux!
Chris Lattner
sabre at nondot.org
Mon Aug 6 12:52:43 PDT 2007
On Tue, 24 Jul 2007 wilsonk at cpsc.ucalgary.ca wrote:
Hi Kelly,
Sorry for the delay, I'm way behind in email :(
> I built llvm-2.0 (the svn version) by just typing "./configure;make". I
> then downloaded clang from the svn repository (revision 40382) and changed
> to it's directory under .../llvm/tools/clang. I did a "make" without
> incident for clang, as well. Woohoo.
Nice!
> This worked fine and the code gen looked fine, except for two things:
> func1:
> save -96, %o6, %o6<---------------change
> main:
> save -96, %o6, %o6<---------------change
> .globl x
> .bss <-------------------------------------remove
> .align 4
> The two problems with this output. "save -96, %o6, %o6" should read
> "save %o6, -96, %o6" at both function entry points, and the ".bss"
> section identifier needs to be removed. THEN GCC CAN ASSEMBLE/LINK THIS
> AND IT RUNS!!!!! Cool, now you have a new OS/arch pair to run LLVM on,
> though I may be the only one running this pair ;)
Very nice! I assume this is because you're using the sun assembler
instead of the GNU assembler. Do you know if the reordered save operands
work with the GNU assembler?
-Chris
> There are a couple patches attached to fix things for Sparc/Linux/gcc.
>
> Let me know if anyone wants anymore information. I will do some more
> testing and let you know how it goes.
>
> Thanks,
> Kelly Wilson
>
> P.S. Chris already replied on another list to this post.
>
> On Tue, 24 Jul 2007, Chris Lattner wrote:
>
>>> The two problems with this output. "save -96, %o6, %o6" should read
>>> "save %o6, -96, %o6" at both function entry points, and the ".bss"
>>> section identifier needs to be removed. THEN GCC CAN ASSEMBLE/LINK
>>> THIS
>>> AND IT RUNS!!!!! Cool, now you have a new OS/arch pair to run LLVM on,
>>> though I may be the only one running this pair ;)
>
>> Very nice! I'm not sure how the arguments to save got transposed, it
>> must be a regression somewhere along the way. We don't have too many
>> people testing sparc :)
>
>
> This isn't actually an error of transposition for Sparc/SunOS when using
> the "cc" compiler. This "save -96, %o6, %o6" (and the .bss section
> identifier) work when using SunOS "cc" but not "gcc" under SunOS.
>
> My patches will assume that everyone is using "cc" under SunOS...because
> we can't check in llc whether someone will use "cc" or "gcc" to assemble
> and link in the future ;)
>
>
>
>
>
-Chris
--
http://nondot.org/sabre/
http://llvm.org/
More information about the llvm-dev
mailing list