1.7 winbase.h (ilockcmpexch) compile error

Dave Korn dave.korn.cygwin@googlemail.com
Wed Jun 24 19:34:00 GMT 2009


Brian Ford wrote:
> I'm trying to build Cygwin 1.7 from CVS to debug an ImageMagick problem on
> server 2008 that causes an access violation in cygwin1.dll.  Doe anyone
> know the work around for this issue?
> 
> g++ (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
> 
> winsup/cygwin/winbase.h: In
> member function `int pthread_mutex::_trylock(pthread*)':
> winsup/cygwin/winbase.h:59:
> warning: volatile register variables don't work as you might wish
> winsup/cygwin/winbase.h:63:
> error: can't find a register in class `AREG' while reloading `asm'
> 
> I presume it is related to this change:
> 
> http://cygwin.com/ml/cygwin-patches/2009-q2/msg00072.html
> 
> but I haven't had time to dig into the full problem.  Thanks for any help
> available.

  Argh.  Try hacking out the 'register' and '__asm ("%eax")' from the
declaration of the 'ret' variable on line 59.  Send me the generated thread.s
file offlist after finishing the build with --save-temps in the CFLAGS and
I'll check that the codegen is correct.

  (Haven't used 3.x to build the DLL in ages myself.)

    cheers,
      DaveK


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list