Levi 的个人资料Nothing :: Maybe Future日志列表留言簿更多 工具 帮助

日志


3月17日

CCS 中代码优化工具的限制

CCS 中代码优化工具的限制


情景1:

代码:
    for( i=1; i<BUFFER_SIZE; i+=2 )
        buf[i-1] ^= buf[i] ^= buf[i-1] ^= buf[i];
现象:
    -O0 ~ -O2 级优化正常工作;
    -O3 级优化丢失数据。


情景2:

代码:
    ; code piece in file foo_sa.sa
                .global   _foo_sa
    _foo_sa:    .cproc  ptr
                ZERO  *ptr
                .return
                .endproc
   
    // code piece in file foo_c.c
    int foo_c(){
        int var;
        foo_sa(&var);
        return var;
    }

现象:
    -pm -opx 选项必须和 -olx 一起使用
    (仅测试了 -ol0 )


< to be continued ... >