⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pragmas.c

📁 小型游戏引擎
💻 C
📖 第 1 页 / 共 5 页
字号:
    : "ebx", "cc");  return(retval);}int dmulscale7(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $7, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale8(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $8, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale9(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $9, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale10(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $10, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale11(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $11, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale12(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $12, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale13(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $13, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale14(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $14, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale15(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $15, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale16(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $16, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale17(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $17, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale18(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $18, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale19(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $19, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale20(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $20, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale21(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $21, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale22(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $22, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale23(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $23, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale24(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $24, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale25(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $25, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale26(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $26, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale27(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $27, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale28(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $28, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale29(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $29, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale30(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $30, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale31(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"	"shrdl $31, %%edx, %%eax   \n\t"   : "=a" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int dmulscale32(int i1, int i2, int i3, int i4) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"movl %%eax, %%ebx   \n\t"	"movl %%esi, %%eax   \n\t"	"movl %%edx, %%esi   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%esi, %%edx   \n\t"   : "=d" (retval) : "a" (i1), "d" (i2), "S" (i3), "D" (i4)    : "ebx", "cc");  return(retval);}int tmulscale1(int i1, int i2, int i3, int i4, int i5, int i6) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"xchgl %%ebx, %%eax   \n\t"	"xchgl %%ecx, %%edx   \n\t"	"imull %%edx   \n\t"	"addl %%eax, %%ebx   \n\t"	"adcl %%edx, %%ecx   \n\t"	"movl %%esi, %%eax   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%ecx, %%edx   \n\t"	"shrdl $1, %%edx, %%eax   \n\t"   : "=a" (retval)    : "a" (i1), "d" (i2), "b" (i3), "c" (i4), "S" (i5), "D" (i6)    : "cc");  return(retval);}int tmulscale2(int i1, int i2, int i3, int i4, int i5, int i6) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"xchgl %%ebx, %%eax   \n\t"	"xchgl %%ecx, %%edx   \n\t"	"imull %%edx   \n\t"	"addl %%eax, %%ebx   \n\t"	"adcl %%edx, %%ecx   \n\t"	"movl %%esi, %%eax   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%ecx, %%edx   \n\t"	"shrdl $2, %%edx, %%eax   \n\t"   : "=a" (retval)    : "a" (i1), "d" (i2), "b" (i3), "c" (i4), "S" (i5), "D" (i6)    : "cc");  return(retval);}int tmulscale3(int i1, int i2, int i3, int i4, int i5, int i6) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"xchgl %%ebx, %%eax   \n\t"	"xchgl %%ecx, %%edx   \n\t"	"imull %%edx   \n\t"	"addl %%eax, %%ebx   \n\t"	"adcl %%edx, %%ecx   \n\t"	"movl %%esi, %%eax   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%ecx, %%edx   \n\t"	"shrdl $3, %%edx, %%eax   \n\t"   : "=a" (retval)    : "a" (i1), "d" (i2), "b" (i3), "c" (i4), "S" (i5), "D" (i6)    : "cc");  return(retval);}int tmulscale4(int i1, int i2, int i3, int i4, int i5, int i6) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"xchgl %%ebx, %%eax   \n\t"	"xchgl %%ecx, %%edx   \n\t"	"imull %%edx   \n\t"	"addl %%eax, %%ebx   \n\t"	"adcl %%edx, %%ecx   \n\t"	"movl %%esi, %%eax   \n\t"	"imull %%edi   \n\t"	"addl %%ebx, %%eax   \n\t"	"adcl %%ecx, %%edx   \n\t"	"shrdl $4, %%edx, %%eax   \n\t"   : "=a" (retval)    : "a" (i1), "d" (i2), "b" (i3), "c" (i4), "S" (i5), "D" (i6)    : "cc");  return(retval);}int tmulscale5(int i1, int i2, int i3, int i4, int i5, int i6) {  int retval = 0;  __asm__ __volatile__ (	"imull %%edx   \n\t"	"xchgl %%ebx, %%eax   \n\t"	"xchgl %%ecx, %%edx   \n\t"	"imull %%edx   \n\t"	"addl %%eax, %%ebx   \n\t"	"adcl %%edx, %%ecx   \n\t"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -