Added the "paddb", "paddd" and "paddw" instructions

This commit is contained in:
Pierre Pronchery 2011-04-18 23:32:23 +00:00
parent 908f8bb04f
commit a2381831b6
2 changed files with 39 additions and 0 deletions

View File

@ -28,6 +28,27 @@
/* instructions */
/* EMMS 0x0f77 2 */
{ "emms", 0x0f77, OP2F, AOT_NONE, AOT_NONE, AOT_NONE },
/* PADDB 0x0ffc /r 2 mm mm/m64 */
#if 1 /* FIXME doesn't work properly */
{ "paddb", 0x0ffc, OP2F, OP_R64_R, OP_RM64_D0_R,AOT_NONE},
{ "paddb", 0x0ffc, OP2F, OP_R64_R, OP_RM64_D8_R,AOT_NONE},
{ "paddb", 0x0ffc, OP2F, OP_R64_R, OP_RM64_DW_R,AOT_NONE},
{ "paddb", 0x0ffc, OP2F, OP_R64_R, OP_RM64_R64_R,AOT_NONE},
#endif
/* PADDD 0x0ffd /r 2 mm mm/m64 */
#if 1 /* FIXME doesn't work properly */
{ "paddd", 0x0ffe, OP2F, OP_R64_R, OP_RM64_D0_R,AOT_NONE},
{ "paddd", 0x0ffe, OP2F, OP_R64_R, OP_RM64_D8_R,AOT_NONE},
{ "paddd", 0x0ffe, OP2F, OP_R64_R, OP_RM64_DW_R,AOT_NONE},
{ "paddd", 0x0ffe, OP2F, OP_R64_R, OP_RM64_R64_R,AOT_NONE},
#endif
/* PADDW 0x0ffd /r 2 mm mm/m64 */
#if 1 /* FIXME doesn't work properly */
{ "paddw", 0x0ffd, OP2F, OP_R64_R, OP_RM64_D0_R,AOT_NONE},
{ "paddw", 0x0ffd, OP2F, OP_R64_R, OP_RM64_D8_R,AOT_NONE},
{ "paddw", 0x0ffd, OP2F, OP_R64_R, OP_RM64_DW_R,AOT_NONE},
{ "paddw", 0x0ffd, OP2F, OP_R64_R, OP_RM64_R64_R,AOT_NONE},
#endif
/* PADDSB 0x0fec /r 2 mm mm/m64 */
#if 1 /* FIXME doesn't work properly */
{ "paddsb", 0x0fec, OP2F, OP_R64_R, OP_RM64_D0_R,AOT_NONE},

View File

@ -1,6 +1,24 @@
/* $Id$ */
.text
emms /* 0f 77 */
#if 1 /* FIXME doesn't work properly */
paddb %mm1, [%edx]
paddb %mm2, [%edx + $0x56]
paddb %mm3, [%edx + $0x789abc]
paddb %mm4, %mm5
#endif
#if 1 /* FIXME doesn't work properly */
paddd %mm1, [%edx]
paddd %mm2, [%edx + $0x56]
paddd %mm3, [%edx + $0x789abc]
paddd %mm4, %mm5
#endif
#if 1 /* FIXME doesn't work properly */
paddw %mm1, [%edx]
paddw %mm2, [%edx + $0x56]
paddw %mm3, [%edx + $0x789abc]
paddw %mm4, %mm5
#endif
#if 1 /* FIXME doesn't work properly */
paddsb %mm1, [%edx]
paddsb %mm2, [%edx + $0x56]