我发现了一点点好奇心; 当我有很多优化标志时,GCC似乎生成以下代码:
00000000004019ae: test %si,%si
00000000004019b1: movups %xmm0,%xmm0
00000000004019b4: je 0x401f40 <main(int, char**)+1904>
Run Code Online (Sandbox Code Playgroud)
问题:第二条指令的用途是什么?它看起来不像/做/什么; 那么,在指令缓存中对齐程序是否有一些优化?或者它是无序执行的东西?(-mtune=native如果有帮助,我正在Nehalem上编译:D).
没什么急事,当然,只是好奇.