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

📄 asm09.c

📁 开放源码的编译器open watcom 1.6.0版的源代码
💻 C
字号:
#include "fail.h"

/* Verify that #pragma aux information is properly propagated; as
 * a side effect, verify that mmintrin.h more or less works.
 */

#if defined(__386__)

typedef union {
    unsigned __int64    _64[1];
    unsigned long       _32[2];
    unsigned short      _16[4];
    unsigned char        _8[8];
} __m64;

__m64 _m_paddb(__m64 *__m1, __m64 *__m2);

#define _m_paddb(__m1, __m2)            _m_paddb(&(__m1), &(__m2))

#pragma aux __m_binary = parm [eax] [edx] modify exact []

#pragma aux (__m_binary) _m_paddb =     \
                ".586"                  \
                "movq   mm0,[eax]"      \
                "movq   mm1,[edx]"      \
                "paddb  mm0,mm1"        \
                "movq   [esi],mm0"

__m64   a;
__m64   b = { 0x0123456789abcdef };
__m64   c = { 0xfedcba9876543210 };

int main( void )
{
    a = _m_paddb( b, c );
    if( a._64[0] != -1 ) _fail;
    _PASS;
}

#else

int main( void )
{
    _PASS;
}

#endif

⌨️ 快捷键说明

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