инструкция множественной сборки с использованием asm volatile в коде c - PullRequest
0 голосов
/ 26 октября 2018

Мне нужно изменить генератор случайных чисел, используя rdrand (только), он реализован в коде c следующим образом.

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

Теперь мне нужно изменить так, чтобы он возвращал только если установлен флаг переноса.(Согласно документации rdrand) . Я думаю, что это может быть реализовано с помощью инструкции jc, но не знаю, как использовать внутри __asm__ volatile . Пожалуйста, помогите мне.

...