All,

When trying to compile integer.cpp with the following:

g++ -pipe -msse2 -march=i386 -O1 -fPIC -c integer.cpp

I get the error:

integer.cpp: In function `void CryptoPP::CpuId(unsigned int, word32*)':
integer.cpp:877: error: can't find a register in class `BREG' while
reloading
   `asm'

Now, I know it's because of fPIC but I'd like to try and build this as a
shared library. Anyone know of any workarounds for this? The code g++ is
complaining about is:

__asm__
(
   "cpuid"
   : "=a" (output[0]), "=b" (output[1]), "=c" (output[2]), "=d"
(output[3])
   : "a" (input)
);

I'm afraid I know next to nothing about embedded/inline ASM!

Cheers

Jim Vanns

-- 
James Vanns BSc (Hons) MCP
Senior Software Engineer (Linux / C & C++)
Canterbury Christ Church University College
Public Key: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x24045370


Reply via email to