summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-11-06 09:41:23 -0800
committerH. Peter Anvin <hpa@zytor.com>2008-11-06 09:41:23 -0800
commit475421695db689c14d0fc1e7dfbe6e37715500a1 (patch)
tree232c4d116028e4634b31ced5a5c518529d2bbdac
parentda050015068b936c348309e5b37510619ae89900 (diff)
parentb46a0037c5db2ee30b2e8feab27964cdcf4bb0b4 (diff)
downloadnasm-475421695db689c14d0fc1e7dfbe6e37715500a1.tar.gz
Merge branch 'nasm-2.05.xx'
-rw-r--r--insns.dat6
-rw-r--r--test/popcnt.asm32
2 files changed, 35 insertions, 3 deletions
diff --git a/insns.dat b/insns.dat
index a863f640..81190439 100644
--- a/insns.dat
+++ b/insns.dat
@@ -1854,9 +1854,9 @@ PCMPESTRM xmmreg,xmmrm,imm \361\3\x0F\x3A\x60\110\26 SSE42
PCMPISTRI xmmreg,xmmrm,imm \361\3\x0F\x3A\x63\110\26 SSE42
PCMPISTRM xmmreg,xmmrm,imm \361\3\x0F\x3A\x62\110\26 SSE42
PCMPGTQ xmmreg,xmmrm \361\3\x0F\x38\x37\110 SSE42
-POPCNT reg16,rm16 \320\363\2\x0F\xB8\110 NEHALEM
-POPCNT reg32,rm32 \321\363\2\x0F\xB8\110 NEHALEM
-POPCNT reg64,rm32 \324\363\2\x0F\xB8\110 NEHALEM,X64
+POPCNT reg16,rm16 \320\363\2\x0F\xB8\110 NEHALEM,SW
+POPCNT reg32,rm32 \321\363\2\x0F\xB8\110 NEHALEM,SD
+POPCNT reg64,rm64 \324\363\2\x0F\xB8\110 NEHALEM,SQ,X64
;# AMD SSE5 instructions
diff --git a/test/popcnt.asm b/test/popcnt.asm
new file mode 100644
index 00000000..00096198
--- /dev/null
+++ b/test/popcnt.asm
@@ -0,0 +1,32 @@
+;Testname=test; Arguments=-fbin -opopcnt.bin; Files=stdout stderr popcnt.bin
+
+ bits 16
+
+ popcnt ax,cx
+ popcnt ax,[si]
+ popcnt ax,word [si]
+ popcnt eax,ecx
+ popcnt eax,[si]
+ popcnt eax,dword [si]
+
+ bits 32
+
+ popcnt ax,cx
+ popcnt ax,[esi]
+ popcnt ax,word [esi]
+ popcnt eax,ecx
+ popcnt eax,[esi]
+ popcnt eax,dword [esi]
+
+ bits 64
+
+ popcnt ax,cx
+ popcnt ax,[rsi]
+ popcnt ax,word [rsi]
+ popcnt eax,ecx
+ popcnt eax,[rsi]
+ popcnt eax,dword [rsi]
+ popcnt rax,rcx
+ popcnt rax,[rsi]
+ popcnt rax,qword [rsi]
+ \ No newline at end of file