The MASM Forum Archive 2004 to 2012

General Forums => The Workshop => Topic started by: jj2007 on August 13, 2010, 06:10:25 PM

Title: Macro fun with XMM regs
Post by: jj2007 on August 13, 2010, 06:10:25 PM
Try this snippet with various assembler versions, and watch the console output:
include \masm32\include\masm32rt.inc
.686
.xmm

showx MACRO arg
tmp$ CATSTR <Myarg=>, <arg>
% echo tmp$
ENDM

.code
start:
showx xmm1
showx Xmm1
showx XMM1
echo xmm1
% echo xmm1
echo XMM1
% echo XMM1
.err
exit

end start

Here is what I get:
6.14, 6.15:
Myarg=XMM(1)
Myarg=XMM(1)
Myarg=XMM(1)
xmm1
XMM(1)
XMM1
XMM(1)

9.0, JWasm:
Myarg=xmm1
Myarg=Xmm1
Myarg=XMM1
xmm1
xmm1
XMM1
XMM1


My suspicion is that the earlier Masm versions use equates and macros for working with xmm registers.