Cmake编译__asm汇编内联代码

时间:2016-03-17 12:42:59

标签: c cmake clion

我正在尝试编译使用quake2关键字的__asm代码,如下所示:

__declspec( naked ) int BoxOnPlaneSide (vec3_t emins, vec3_t emaxs, 
    struct cplane_s *p)
{
    static int bops_initialized;
    static int Ljmptab[8];

    __asm {

        push ebx

        cmp bops_initialized, 1
        je  initialized
        mov bops_initialized, 1
        // more code...

我正在使用Clion,它在内部使用Cmake进行编译。问题是在上面的代码中我得到以下错误

C:\Users\Shiro\ClionProjects\quake2\src\game\q_shared.c: In function 
'BoxOnPlaneSide':
C:\Users\Shiro\ClionProjects\quake2\src\game\q_shared.c:423:8: error: 
expected '(' before '{' token
__asm {
      ^

并且错误从那里继续。那么,我怎样才能编译呢?我的CMakeLists.txt可能有任何变化吗?这是我现在拥有的一部分

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Traditional -std=gnu89")

0 个答案:

没有答案