diff options
author | kh1 <karsten.heimrich@digia.com> | 2013-05-06 11:58:22 +0200 |
---|---|---|
committer | Karsten Heimrich <karsten.heimrich@digia.com> | 2013-05-06 12:34:53 +0200 |
commit | 685b2f25462820d5394a6a61778018b83c3b18d3 (patch) | |
tree | 0922ecb7a4097d7a1ec8b0e438a3ee8729130c83 /src/libs | |
parent | 66649781073e81f0c445c310aa825f8d7b78eb10 (diff) |
Fix compile error.
Inconsistent operand constraints in an 'asm'...
Change-Id: If68fec366d5a059c1d253f056348c76df8cd4d05
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
Diffstat (limited to 'src/libs')
-rw-r--r-- | src/libs/7zip/unix/C/CpuArch.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libs/7zip/unix/C/CpuArch.c b/src/libs/7zip/unix/C/CpuArch.c index 260cc1f45..dffa5bd65 100644 --- a/src/libs/7zip/unix/C/CpuArch.c +++ b/src/libs/7zip/unix/C/CpuArch.c @@ -73,9 +73,17 @@ static void MyCPUID(UInt32 function, UInt32 *a, UInt32 *b, UInt32 *c, UInt32 *d) #else __asm__ __volatile__ ( + #if defined(MY_CPU_X86) && defined(__PIC__) + "mov %%ebx, %%edi;" + "cpuid;" + "xchgl %%ebx, %%edi;" + : "=a" (*a) , + "=D" (*b) , /* edi */ + #else "cpuid" : "=a" (*a) , "=b" (*b) , + #endif "=c" (*c) , "=d" (*d) : "0" (function)) ; |