<div dir="ltr"><div>Thanks, Mats. Actually, it is able to generate the assembly now  if I use the follow command: clang++ -O3 -S -mllvm --x86-asm-syntax=intel -mno-sse -o test_nosee.s test.cpp</div><div>However, when I use g++ -O3 -o test_nosse test_nosse.s -lm to generate the executable, if gives me the following errors:</div><div><br></div><div><div> Error: too many memory references for `sub'</div><div> Error: too many memory references for `mov'</div><div> Error: too many memory references for `mov'</div><div> Error: too many memory references for `mov'</div><div> Error: too many memory references for `mov'</div><div> Error: junk `ptr [rsp+112]' after expression</div><div> Error: junk `ptr [rsp+128]' after expression</div><div> Error: junk `(1)' after expression</div><div> Error: operand size mismatch for `fsubrp'</div></div><div><br></div><div>Any idea? Thanks.</div><div><br></div><div>--</div><div>Zhi</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, May 14, 2015 at 10:50 AM, mats petersson <span dir="ltr"><<a href="mailto:mats@planetcatfish.com" target="_blank">mats@planetcatfish.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Sounds like a bug, as far as I can tell, -mno-sse should disable all use of SSE instructions (and thus all uses of xmm registers). Exactly what version of LLVM, and what instructions from what LLVM IR or C source?<br><br>--<br></div>Mats<br></div><div class="gmail_extra"><br><div class="gmail_quote">On 14 May 2015 at 18:12, zhi chen <span dir="ltr"><<a href="mailto:zchenhn@gmail.com" target="_blank">zchenhn@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hello,<div><br></div><div>I want to disable LLVM to use any SIMD registers like sse and avx. I tried -mno-sse and -mno-avx on my Core i7 machine. It seems that the generated assembly still uses xmm registers. Is there any way for LLVM to only use scalar registers? </div><div><br></div><div>Thanks,</div><div>Zhi</div></div>
<br>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><span style="color:rgb(51,51,51)">PhD Student</span><br></div><div><font color="#333333">Department of Computer Science</font></div><div><font color="#333333">University of California, Irvine</font></div></div></div></div></div>
</div>