<html><body>
<p><tt><font size="2">Hal Finkel <hfinkel@anl.gov> wrote on 04/18/2013 03:08:24 PM:<br>
> > From: "Thomas Gooding" <tgooding@us.ibm.com><br>
> > I'm not sure it uses the same assembler as gcc. The following is an<br>
> > instruction that gave me some trouble, it assembles under gcc but<br>
> > not llvm.<br>
> > mtfsf 0,%f0,1,0<br>
> > <br>
> > start.S: Assembler messages:<br>
> > start.S:278: Error: junk at end of line: `1,0'<br>
> > <br>
> > The mtfsf instruction appears to have additional parameters in the<br>
> > embedded PowerPC book.<br>
> <br>
> That's odd; can you grep both assembly files so that I can see that <br>
> LLVM prints vs. what gcc prints?<br>
</font></tt><br>
<tt><font size="2">llvm:</font></tt><br>
<font size="2" face="sans-serif">$LLVMHOME/bgclang -m64 -g -O2 -Werror -MMD -MF .dep.start.S.d -D__KERNEL__ -Wall  -I/bghome/tgooding/bgq/work -iquote /bghome/tgooding/bgq/cnk/src -I/bghome/tgooding/bgq/work/spi/include/kernel/firmware -fno-strict-aliasing -c -D__ASSEMBLY__ -S -Os start.S</font><br>
<font size="2" face="sans-serif">...</font><br>
<font size="2" face="sans-serif"> lfd %f0,1280(%r3)</font><br>
<font size="2" face="sans-serif"> mtfsf 0,%f0,1,0</font><br>
<font size="2" face="sans-serif"> qvlfdux %f0,%r11,%r0</font><br>
<font size="2" face="sans-serif"> qvlfdux %f1,%r11,%r0</font><br>
<font size="2" face="sans-serif"> qvlfdux %f2,%r11,%r0</font><br>
<font size="2" face="sans-serif">...</font><br>
<br>
<font size="2" face="sans-serif">gcc:</font><br>
<font size="2" face="sans-serif">/bgsys/drivers/ppcfloor/gnu-linux/bin/powerpc64-bgq-linux-gcc -m64 -g -O2 -Werror -MMD -MF .dep.start.S.d -D__KERNEL__ -Wall  -I/bghome/tgooding/bgq/work -iquote /bghome/tgooding/bgq/cnk/src -I/bghome/tgooding/bgq/work/spi/include/kernel/firmware -fno-strict-aliasing -c -D__ASSEMBLY__ -S -Os start.S</font><br>
<font size="2" face="sans-serif">...</font><br>
<font size="2" face="sans-serif"> lfd %f0,1280(%r3)</font><br>
<font size="2" face="sans-serif"> mtfsf 0,%f0,1,0</font><br>
<font size="2" face="sans-serif"> qvlfdux %f0,%r11,%r0</font><br>
<font size="2" face="sans-serif"> qvlfdux %f1,%r11,%r0</font><br>
<font size="2" face="sans-serif"> qvlfdux %f2,%r11,%r0</font><br>
<font size="2" face="sans-serif">...</font><br>
<br>
<font size="2" face="sans-serif">After increasing the verbosity (bgclang -v), the assembler call looks incorrect:</font><br>
<font size="2" face="sans-serif"> "/bgsys/drivers/ppcfloor/gnu-linux/lib/gcc/powerpc64-bgq-linux/4.4.6/../../../../powerpc64-bgq-linux/bin/as" -a64 -mppc64 -many -o start.o /tmp/start-9mU46t.s</font><br>
<br>
<font size="2" face="sans-serif">Whereas I think it should be:</font><br>
<font size="2" face="sans-serif"> "/bgsys/drivers/ppcfloor/gnu-linux/lib/gcc/powerpc64-bgq-linux/4.4.6/../../../../powerpc64-bgq-linux/bin/as" -a64 -ma2q -many -o start.o /tmp/start-9mU46t.s</font><br>
<br>
<font size="2" face="sans-serif">Maybe there's a way to configure this somewhere?</font><br>
<br>
<tt><font size="2">Thanks,</font></tt><br>
<tt><font size="2">Tom</font></tt><br>
<br>
<tt><font size="2">> Thanks again,<br>
> Hal<br>
</font></tt><br>
<font size="2" face="sans-serif">Tom Gooding<br>
Senior Engineer / Blue Gene Kernels<br>
507-253-0747  (internal:  553-0747)<br>
</font></body></html>