The MASM Forum Archive 2004 to 2012

General Forums => The Campus => Topic started by: mineiro on September 01, 2010, 12:09:47 AM

Title: cannot compile SSE
Post by: mineiro on September 01, 2010, 12:09:47 AM
Hello Sr's; I'm trying to learn SSE from some links and examples from this forum, but I cannot compile.
I have download "h2timings" from here to try, but I'm getting some errors. I tried compile it from many ways, and the code below is from a command line "ml h2timings.asm" with masm32 folder in path.

.asm(308) : error A2008: syntax error : [
.asm(397) : error A2008: syntax error : [
.asm(422) : error A2008: syntax error : xmm
.asm(444) : error A2008: syntax error : [
.asm(469) : error A2008: syntax error : xmm
.asm(492) : error A2008: syntax error : [
.asm(686) : error A2008: syntax error : xmm

The error above is linked to these instructions:    "movdqu [esp], xmm0" "lddqu xmm0, oword ptr [esp]" "movdqu xmm1, [eax]"

Alright, I so tried another example, and download "StrLenSaveXmm", and get these errors.

.asm(169) : error A2008: syntax error : [
.asm(251) : error A2008: syntax error : [

The above error is linked with this instruction: "movdqu [esp], xmm0"
In file "StrLenSaveXmm" have another's "movdqu [esp], xmm0", for example in line 292 or 206 and I don't get errors. I have tried put some additional "dot" and "CASE" like said in another post, but without success.
Thanks for reading my problem, if you have any hint I say to you that I will try it to the end of earth, or if you can post a little example to I try to compile I appreciate much.
regards Sr's, and thanks in advance.
I forgot to say, I'm using masm  Version 6.14.8444 and my processor is "Intel(R) Pentium(R) Dual  CPU  E2160  @ 1.80GHz (SSE4)" but in olly I see only (SSE3) suport.
Title: Re: cannot compile SSE
Post by: oex on September 01, 2010, 12:58:40 AM
I expect that you are using ML 6.14 and it doesnt accept the movdqu instruction.... There is a solution for this on the forum.... some macros that emulate the sse instructions I will try to find them....

OK I think this is the link.... http://www.masm32.com/board/index.php?topic=973.0
Title: Re: cannot compile SSE
Post by: MichaelW on September 01, 2010, 01:12:12 AM
Or just use ML 6.15 or later.
Title: Re: cannot compile SSE
Post by: mineiro on September 01, 2010, 01:23:16 AM
Thanks for your answer Sr oex.
I have tried the uppercase without success of .xmm or .mmx. But from your words, why you say "emulate"? This processor don't accept these instructions? Or I need a ML v64 to try? My processor is 32 bits, so, have any way to use ml64 to compile 32bits? I know that i can use another compiler, but I don't like to do all things in one time.
I'm reading the Mark tutorial, and I see this SSE instructions, so, this is why I'm learning SSE to try to understand the divergence betwen some authors about optimization. I have many dificulties because have words that cannot be translated to my language, like throughput(now I understand this), but not the subject I spend 6 months to know what "heap" and "thread" means.
Now I try learn, and if I can't, the other way is osmosis. While this I'm getting the link and spend some hours alone.
thank you Sr oex.

Well Sr MichaelW, I downloaded the last one, I thinked in this hipotesis, but I try it again, thank you for posting Sr.
Title: Re: cannot compile SSE
Post by: oex on September 01, 2010, 01:30:54 AM
By emulate I mean these macros add sse capability to version 6.14

As Michael says you could also upgrade ml.exe to a later version.... 6.15 ships with Visual Studio 6 / Visual C++ 6 also you can download VC 2010 (and other versions in between VC6) and use the ml.exe included in these packs however I believe the license is slightly different for commercial use....

I'm not saying you should use ml64.exe this is 64 bit instruction set and isnt the same as sse
Title: Re: cannot compile SSE
Post by: mineiro on September 01, 2010, 01:44:39 AM
Alright Sr, thank you, now I understand.
I come back to question to Sr Michael how to get this version, I downloaded again in this while and the same version, but you answer he, I can see it's a big download (my net is 150kb, very poor). Tomorrow I go to some 'lan house" to try download this one.
Thank you again Sr oex, and thank you Sr MichaelW.
Title: Re: cannot compile SSE
Post by: MichaelW on September 01, 2010, 01:54:34 AM
ML 6.15 is available in the GeneSys development system:

http://www.masm32.com/board/index.php?topic=8863.0

Or from the forum web site:

http://website.masm32.com/microsft.htm

Title: Re: cannot compile SSE
Post by: mineiro on September 01, 2010, 02:23:48 AM
Really thanks, you save some money from my pocket.
regardsĀ  Sr MichaelW :thumbu

Now I can compile SSE. Thanks for sharing yours experiences.