[LLVMdev] how to disable sse and avx

Zhi Chen zhichen1986 at gmail.com
Thu May 14 11:30:13 PDT 2015


Thanks for all your replies. Yes, it was the because I specified
"--x86-asm-syntax=intel".
I just wanted to see the performance difference between the code w/ and w/o
using SSE/AVX registers.

Best,
Zhi

On Thu, May 14, 2015 at 11:15 AM, Reid Kleckner <rnk at google.com> wrote:

> Try not using intel assembly syntax, it is the less supported dialect.
>
> On Thu, May 14, 2015 at 11:03 AM, Zhi Chen <zhichen1986 at gmail.com> wrote:
>
>> 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
>> However, when I use g++ -O3 -o test_nosse test_nosse.s -lm to generate
>> the executable, if gives me the following errors:
>>
>>  Error: too many memory references for `sub'
>>  Error: too many memory references for `mov'
>>  Error: too many memory references for `mov'
>>  Error: too many memory references for `mov'
>>  Error: too many memory references for `mov'
>>  Error: junk `ptr [rsp+112]' after expression
>>  Error: junk `ptr [rsp+128]' after expression
>>  Error: junk `(1)' after expression
>>  Error: operand size mismatch for `fsubrp'
>>
>> Any idea? Thanks.
>>
>> --
>> Zhi
>>
>>
>> On Thu, May 14, 2015 at 10:50 AM, mats petersson <mats at planetcatfish.com>
>> wrote:
>>
>>> 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?
>>>
>>> --
>>> Mats
>>>
>>> On 14 May 2015 at 18:12, zhi chen <zchenhn at gmail.com> wrote:
>>>
>>>> Hello,
>>>>
>>>> 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?
>>>>
>>>> Thanks,
>>>> Zhi
>>>>
>>>> _______________________________________________
>>>> LLVM Developers mailing list
>>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>>
>>>>
>>>
>>
>>
>> --
>> PhD Student
>> Department of Computer Science
>> University of California, Irvine
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>>
>


-- 
PhD Student
Department of Computer Science
University of California, Irvine
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150514/24069f41/attachment.html>


More information about the llvm-dev mailing list