From 0e5bbcaa162ac7850eb4fcd8f91391837d0efb50 Mon Sep 17 00:00:00 2001 From: Tudor Brindus Date: Fri, 1 May 2020 22:24:20 -0400 Subject: [PATCH] Fix segmentation fault in CPUID check --- random_seed.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/random_seed.c b/random_seed.c index fc19e26..c459f0f 100644 --- a/random_seed.c +++ b/random_seed.c @@ -26,19 +26,8 @@ static void do_cpuid(int regs[], int h) { /* clang-format off */ - __asm__ __volatile__( -#if defined __x86_64__ - "pushq %%rbx;\n" -#else - "pushl %%ebx;\n" -#endif - "cpuid;\n" -#if defined __x86_64__ - "popq %%rbx;\n" -#else - "popl %%ebx;\n" -#endif - : "=a"(regs[0]), [ebx] "=r"(regs[1]), "=c"(regs[2]), "=d"(regs[3]) + __asm__ __volatile__("cpuid" + : "=a"(regs[0]), "=b"(regs[1]), "=c"(regs[2]), "=d"(regs[3]) : "a"(h)); /* clang-format on */ } -- 2.40.0