Return-Path: Delivered-To: apmail-incubator-stdcxx-commits-archive@www.apache.org Received: (qmail 14812 invoked from network); 27 Jul 2007 11:56:36 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 27 Jul 2007 11:56:36 -0000 Received: (qmail 19103 invoked by uid 500); 27 Jul 2007 11:56:37 -0000 Delivered-To: apmail-incubator-stdcxx-commits-archive@incubator.apache.org Received: (qmail 19090 invoked by uid 500); 27 Jul 2007 11:56:37 -0000 Mailing-List: contact stdcxx-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: stdcxx-dev@incubator.apache.org Delivered-To: mailing list stdcxx-commits@incubator.apache.org Received: (qmail 19072 invoked by uid 99); 27 Jul 2007 11:56:37 -0000 Received: from Unknown (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 27 Jul 2007 04:56:37 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 27 Jul 2007 11:56:35 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 46C921A981A; Fri, 27 Jul 2007 04:56:15 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r560206 - in /incubator/stdcxx/trunk: etc/config/gcc.config src/i86/atomic.s Date: Fri, 27 Jul 2007 11:56:14 -0000 To: stdcxx-commits@incubator.apache.org From: faridz@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20070727115615.46C921A981A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: faridz Date: Fri Jul 27 04:56:13 2007 New Revision: 560206 URL: http://svn.apache.org/viewvc?view=rev&rev=560206 Log: 2007-07-27 Farid Zaripov * gcc.config [__CYGWIN__]: Added -D_REENTRANT option in multithreaded builds. Don't define AS_EXT as .s. * atomic.s [__CYGWIN__]: Prepend symbol names by '_'. Modified: incubator/stdcxx/trunk/etc/config/gcc.config incubator/stdcxx/trunk/src/i86/atomic.s Modified: incubator/stdcxx/trunk/etc/config/gcc.config URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/etc/config/gcc.config?view=diff&rev=560206&r1=560205&r2=560206 ============================================================================== --- incubator/stdcxx/trunk/etc/config/gcc.config (original) +++ incubator/stdcxx/trunk/etc/config/gcc.config Fri Jul 27 04:56:13 2007 @@ -230,14 +230,12 @@ endif else # on Cygwin use MingW-threads by default - MULTI_CPPFLAGS_POSIX = -mthreads + # -mthreads not defines _REENTRANT + MULTI_CPPFLAGS_POSIX = -D_REENTRANT -mthreads MULTI_LDFLAGS_POSIX = -mthreads # link with libcatgets and libiconv LDLIBS += -lcatgets -liconv - - # set the assembler file suffix to .s - AS_EXT = .s endif MULTI_CPPFLAGS_SOLARIS = -threads Modified: incubator/stdcxx/trunk/src/i86/atomic.s URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/src/i86/atomic.s?view=diff&rev=560206&r1=560205&r2=560206 ============================================================================== --- incubator/stdcxx/trunk/src/i86/atomic.s (original) +++ incubator/stdcxx/trunk/src/i86/atomic.s Fri Jul 27 04:56:13 2007 @@ -33,6 +33,14 @@ # define TYPE_DIR(ign1, ign2) #endif +#if defined (__CYGWIN__) + /* on cygwin used COFF object file format + C-functions names should prepended by '_' */ +# define SYMNAME(name) _##name +#else +# define SYMNAME(name) name +#endif + .text .align 4 @@ -43,10 +51,10 @@ * the original (before assignment) 8-bit value of *x. **************************************************************************/ - .globl __rw_atomic_xchg8 + .globl SYMNAME (__rw_atomic_xchg8) TYPE_DIR (__rw_atomic_xchg8, @function) -__rw_atomic_xchg8: /* ; char (char *x, char y) */ +SYMNAME (__rw_atomic_xchg8): /* ; char (char *x, char y) */ mov 4(%esp), %ecx /* ; %ecx = x */ movb 8(%esp), %al /* ; %al = y */ xchg %al, (%ecx) /* ; %al <-> (%ecx) */ @@ -60,10 +68,10 @@ * the original (before assignment) 16-bit value of *x. **************************************************************************/ - .globl __rw_atomic_xchg16 + .globl SYMNAME (__rw_atomic_xchg16) TYPE_DIR (__rw_atomic_xchg16, @function) -__rw_atomic_xchg16: /* ; short (short *x, short y) */ +SYMNAME (__rw_atomic_xchg16): /* ; short (short *x, short y) */ mov 4(%esp), %ecx /* ; %ecx = x */ mov 8(%esp), %eax /* ; %eax = y */ xchgw %ax, (%ecx) /* ; %ax <-> (%ecx) */ @@ -77,10 +85,10 @@ * the original (before assignment) 32-bit value of *x. **************************************************************************/ - .globl __rw_atomic_xchg32 + .globl SYMNAME (__rw_atomic_xchg32) TYPE_DIR (__rw_atomic_xchg32, @function) -__rw_atomic_xchg32: /* ; int (int *x, int y) */ +SYMNAME (__rw_atomic_xchg32): /* ; int (int *x, int y) */ movl 4(%esp), %ecx /* ; %ecx = x */ movl 8(%esp), %eax /* ; %eax = y */ xchgl %eax, (%ecx) /* ; %eax <-> (%ecx) */ @@ -94,10 +102,10 @@ * the new (after increment) 8-bit value of *x. **************************************************************************/ - .globl __rw_atomic_add8 + .globl SYMNAME (__rw_atomic_add8) TYPE_DIR (__rw_atomic_add8, @function) -__rw_atomic_add8: /* ; char (char *dst, int inc) */ +SYMNAME (__rw_atomic_add8): /* ; char (char *dst, int inc) */ mov 4(%esp), %ecx /* ; %ecx = dst */ mov 8(%esp), %eax /* ; %eax = inc */ mov %eax, %edx /* ; */ @@ -118,10 +126,10 @@ * the new (after increment) 16-bit value of *x. **************************************************************************/ - .globl __rw_atomic_add16 + .globl SYMNAME (__rw_atomic_add16) TYPE_DIR (__rw_atomic_add16, @function) -__rw_atomic_add16: /* ; long (long *dst, long inc) */ +SYMNAME (__rw_atomic_add16): /* ; long (long *dst, long inc) */ mov 4(%esp), %ecx /* ; %ecx = dst */ mov 8(%esp), %eax /* ; %eax = inc */ mov %eax, %edx /* ; */ @@ -142,10 +150,10 @@ * the new (after increment) 32-bit value of *x. **************************************************************************/ - .globl __rw_atomic_add32 + .globl SYMNAME (__rw_atomic_add32) TYPE_DIR (__rw_atomic_add32, @function) -__rw_atomic_add32: /* ; long (long *dst, long inc) */ +SYMNAME (__rw_atomic_add32): /* ; long (long *dst, long inc) */ movl 4(%esp), %ecx /* ; %ecx = dst */ movl 8(%esp), %edx /* ; %edx = inc */ movl %edx, %eax /* ; */