在c代码中使用asm volatile的多汇编指令

时间:2018-10-26 07:06:41

标签: linux gcc random x86 inline-assembly

我需要使用rdrand(仅)修改随机数生成器, 它使用C代码实现,如下所示。

uint64_t _rdrand(void)
{
        uint64_t r;
            __asm__ volatile("rdrand %0\n\t" : "=r"(r));
                return r;
}

现在,我需要进行修改,使其仅在设置进位标志时才返回。 (根据rdrand文档)。我认为jc指令可以隐含它,但是不知道如何在__asm__ volatile内部使用。请帮帮我。

0 个答案:

没有答案