diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-03-17 10:11:31 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-03-17 10:11:31 +0000 |
commit | 46a32546c924213322a0d0d5b6d636d2f58094c0 (patch) | |
tree | 2266b13e8fd91a2595fc1cadf0bef12cce712589 | |
parent | fb2ee178fa1e50dd1ec4b8ff5300f13afbbb1dd9 (diff) | |
download | glibc-46a32546c924213322a0d0d5b6d636d2f58094c0.tar glibc-46a32546c924213322a0d0d5b6d636d2f58094c0.tar.gz glibc-46a32546c924213322a0d0d5b6d636d2f58094c0.tar.bz2 glibc-46a32546c924213322a0d0d5b6d636d2f58094c0.zip |
Update.
2003-03-17 Ulrich Drepper <drepper@redhat.com>
* localedata/en_ZA: hanged %x for LC_TIME to use dd/mm/ccyy.
Added ^ to LC_MESSAGES regex "^[yY].*".
Confirmed LC_PAPER adn LC_MEASUREMENT settings.
Added country and language names to LC_ADDRESS.
Added missing info for LC_TELEPHONE.
Patch by Dwayne Bailey <dwayne@obsidian.co.za>.
14 files changed, 89 insertions, 77 deletions
diff --git a/localedata/ChangeLog b/localedata/ChangeLog index 8016801a77..2c19c8385a 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,12 @@ +2003-03-17 Ulrich Drepper <drepper@redhat.com> + + * localedata/en_ZA: hanged %x for LC_TIME to use dd/mm/ccyy. + Added ^ to LC_MESSAGES regex "^[yY].*". + Confirmed LC_PAPER adn LC_MEASUREMENT settings. + Added country and language names to LC_ADDRESS. + Added missing info for LC_TELEPHONE. + Patch by Dwayne Bailey <dwayne@obsidian.co.za>. + 2003-03-14 Ulrich Drepper <drepper@redhat.com> * localedata/mn_MN: New file. diff --git a/localedata/locales/en_ZA b/localedata/locales/en_ZA index abcd738725..b944d35111 100644 --- a/localedata/locales/en_ZA +++ b/localedata/locales/en_ZA @@ -2,44 +2,54 @@ escape_char / comment_char % % English language locale for South Africa -% Source: RAP -% Email: nic@sig.co.za -% Tel: +27 83 7659503 -% Fax: +27 12 3478098 +% Source: Zuza Software Foundation +% Email: dwayne@translate.org.za +% Tel: +27 21 4487827 +% Fax: +27 21 4489574 % Language: en % Territory: ZA -% Revision: 1.0 -% Date: 1999-03-28 +% Revision: 1.1 +% Date: 2003-03-14 % Users: general % Repertoiremap: mnemonic,ds % Charset: ISO-8859-1 % Distribution and use is free, also % for commercial purposes. +% +% Changelog +% 1.1 (2003-03-14): +% - Updated maintainer to Zuza Sofware Foundation +% - Changed %x for LC_TIME to use dd/mm/ccyy +% - Added ^ to LC_MESSAGES regex "^[yY].*" +% - Confirmed LC_PAPER and LC_MEASUREMENT settings +% - Added country and language names to LC_ADDRESS +% - Added missing info for LC_TELEPHONE LC_IDENTIFICATION title "English locale for South Africa" -source "RAP" -address "" -contact "" -email "bug-glibc@gnu.org" -tel "" -fax "" +source "Zuza Software Foundation" +address "Box 13412, Mowbray, 7701, South Africa" +contact "Dwayne Bailey" +email "dwayne@translate.org.za" +tel "+27 21 448 7827" +fax "+27 21 448 9574" language "English" territory "South Africa" -revision "1.0" -date "2000-06-29" +revision "1.1" +date "2003-03-14" % -category "en_ZA:2000";LC_IDENTIFICATION +category "en_ZA:2003";LC_IDENTIFICATION category "en_ZA:2000";LC_CTYPE category "en_ZA:2000";LC_COLLATE -category "en_ZA:2000";LC_TIME +category "en_ZA:2003";LC_TIME category "en_ZA:2000";LC_NUMERIC category "en_ZA:2000";LC_MONETARY -category "en_ZA:2000";LC_MESSAGES +category "en_ZA:2003";LC_MESSAGES category "en_ZA:2000";LC_PAPER +category "en_ZA:2000";LC_MEASUREMENT category "en_ZA:2000";LC_NAME -category "en_ZA:2000";LC_ADDRESS -category "en_ZA:2000";LC_TELEPHONE +category "en_ZA:2003";LC_ADDRESS +category "en_ZA:2003";LC_TELEPHONE END LC_IDENTIFICATION @@ -106,7 +116,7 @@ mon "<U004A><U0061><U006E><U0075><U0061><U0072><U0079>";/ "<U004E><U006F><U0076><U0065><U006D><U0062><U0065><U0072>";/ "<U0044><U0065><U0063><U0065><U006D><U0062><U0065><U0072>" d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>" -d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>" +d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>" t_fmt "<U0025><U0054>" am_pm "";"" t_fmt_ampm "" @@ -116,25 +126,25 @@ date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/ END LC_TIME LC_MESSAGES -yesexpr "<U005B><U0079><U0059><U005D><U002E><U002A>" -noexpr "<U005B><U006E><U004E><U005D><U002E><U002A>" +yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>" +noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>" END LC_MESSAGES LC_PAPER -% FIXME height 297 -% FIXME width 210 END LC_PAPER LC_TELEPHONE tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/ <U006C>" +tel_dom_fmt "<U0028><U0025><U0041><U0029><U0020><U0025><U006C>" +int_select "<U0030><U0039>" int_prefix "<U0032><U0037>" + END LC_TELEPHONE LC_MEASUREMENT -% FIXME measurement 1 END LC_MEASUREMENT @@ -149,4 +159,7 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/ <U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/ <U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/ <U004E><U0025><U0063><U0025><U004E>" +country_name "<U0053><U006F><U0075><U0074><U0068><U0020>/ +<U0041><U0066><U0072><U0069><U0063><U0061>" +lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>" END LC_ADDRESS diff --git a/nptl/sysdeps/pthread/pthread_cond_timedwait.c b/nptl/sysdeps/pthread/pthread_cond_timedwait.c index 0635e6ed93..af9929c500 100644 --- a/nptl/sysdeps/pthread/pthread_cond_timedwait.c +++ b/nptl/sysdeps/pthread/pthread_cond_timedwait.c @@ -134,8 +134,7 @@ __pthread_cond_timedwait (cond, mutex, abstime) /* Check whether we are eligible for wakeup. */ val = cond->__data.__wakeup_seq; - if (cond->__data.__woken_seq >= seq - && cond->__data.__woken_seq < val) + if (val > seq && cond->__data.__woken_seq < val) break; /* Not woken yet. Maybe the time expired? */ diff --git a/nptl/sysdeps/pthread/pthread_cond_wait.c b/nptl/sysdeps/pthread/pthread_cond_wait.c index b681ef26fd..412bca9c25 100644 --- a/nptl/sysdeps/pthread/pthread_cond_wait.c +++ b/nptl/sysdeps/pthread/pthread_cond_wait.c @@ -117,7 +117,7 @@ __pthread_cond_wait (cond, mutex) # error "No valid byte order" #endif - while (1) + do { /* Prepare to wait. Release the condvar futex. */ lll_mutex_unlock (cond->__data.__lock); @@ -137,10 +137,8 @@ __pthread_cond_wait (cond, mutex) /* Check whether we are eligible for wakeup. */ val = cond->__data.__wakeup_seq; - if (cond->__data.__woken_seq >= seq - && cond->__data.__woken_seq < val) - break; } + while (! (val > seq && cond->__data.__woken_seq < val)); /* Another thread woken up. */ ++cond->__data.__woken_seq; diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S index 9082fd5f4f..c1ce3bec17 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S @@ -164,11 +164,11 @@ __pthread_cond_timedwait: movl wakeup_seq(%ebx), %edi movl wakeup_seq+4(%ebx), %edx - cmpl 24(%esp), %ecx + cmpl 24(%esp), %edx ja 7f jb 15f - cmpl 20(%esp), %eax - jb 15f + cmpl 20(%esp), %edi + jbe 15f 7: cmpl %ecx, %edx ja 9f diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S index c13c38290e..68ce35e8d6 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S @@ -195,11 +195,11 @@ __pthread_cond_wait: movl wakeup_seq(%ebx), %edi movl wakeup_seq+4(%ebx), %edx - cmpl 16(%esp), %ecx + cmpl 16(%esp), %edx ja 7f jb 8b - cmpl 12(%esp), %eax - jb 8b + cmpl 12(%esp), %edi + jbe 8b 7: cmpl %ecx, %edx ja 9f diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S index 30a2e2c092..6c8dca55a2 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S @@ -77,12 +77,12 @@ __pthread_rwlock_rdlock: #endif jne 10f -11: addl $READERS_WAKEUP-MUTEX, %ebx +11: addl $READERS_WAKEUP, %ebx movl %esi, %ecx /* movl $FUTEX_WAIT, %ecx */ movl $SYS_futex, %eax ENTER_KERNEL - subl $READERS_WAKEUP-MUTEX, %ebx + subl $READERS_WAKEUP, %ebx /* Reget the lock. */ movl $1, %eax diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S index 10b176edce..0b1cc28986 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S +++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S @@ -75,12 +75,12 @@ __pthread_rwlock_wrlock: #endif jne 10f -11: addl $WRITERS_WAKEUP-MUTEX, %ebx +11: addl $WRITERS_WAKEUP, %ebx movl %esi, %ecx /* movl $FUTEX_WAIT, %ecx */ movl $SYS_futex, %eax ENTER_KERNEL - subl $WRITERS_WAKEUP-MUTEX, %ebx + subl $WRITERS_WAKEUP, %ebx /* Reget the lock. */ movl $1, %eax diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h index c593f6ac66..daece67eab 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.h @@ -66,7 +66,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden; "testl %0, %0\n\t" \ "jne 1f\n\t" \ ".subsection 1\n" \ - "1:\tleaq %2, %%rsi\n\t" \ + "1:\tleaq %2, %%rdi\n\t" \ "subq $128, %%rsp\n\t" \ "callq __lll_mutex_lock_wait\n\t" \ "addq $128, %%rsp\n\t" \ @@ -75,8 +75,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden; "2:" \ : "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \ : "0" (1), "2" (futex) \ - : "memory"); }) - + : "cx", "r11", "cc", "memory"); }) #define lll_mutex_timedlock(futex, timeout) \ ({ int result, ignore1, ignore2, ignore3; \ @@ -95,7 +94,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden; : "=a" (result), "=&D" (ignore1), "=&S" (ignore2), \ "=&d" (ignore3), "=m" (futex) \ : "0" (1), "4" (futex), "m" (timeout) \ - : "memory", "cx", "cc", "r10"); \ + : "memory", "cx", "cc", "r10", "r11"); \ result; }) @@ -113,7 +112,7 @@ extern int __lll_mutex_unlock_wait (int *__futex) attribute_hidden; "2:" \ : "=m" (futex), "=&D" (ignore) \ : "0" (futex) \ - : "memory"); }) + : "cx", "r11", "cc", "memory"); }) #define lll_mutex_islocked(futex) \ @@ -166,7 +165,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden; "2:" \ : "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \ : "0" (-1), "2" (futex) \ - : "memory"); }) + : "cx", "r11", "cc", "memory"); }) # define lll_unlock(futex) \ @@ -183,7 +182,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden; "2:" \ : "=m" (futex), "=&D" (ignore) \ : "0" (futex) \ - : "memory"); }) + : "cx", "r11", "cc", "memory"); }) #else /* Special versions of the macros for use in libc itself. They avoid the lock prefix when the thread library is not used. @@ -219,7 +218,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden; "2:" \ : "=S" (ignore1), "=&D" (ignore2), "=m" (futex) \ : "0" (-1), "2" (futex) \ - : "memory"); }) + : "cx", "r11", "cc", "memory"); }) # define lll_unlock(futex) \ @@ -239,7 +238,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden; "2:" \ : "=m" (futex), "=&D" (ignore) \ : "0" (futex) \ - : "memory"); }) + : "cx", "r11", "cc", "memory"); }) #endif @@ -259,7 +258,7 @@ extern int lll_unlock_wake_cb (int *__futex) attribute_hidden; register __typeof (tid) _tid asm ("edx") = (tid); \ if (_tid != 0) \ __asm __volatile ("xorq %%r10, %%r10\n\t" \ - "1:\tmovq %3, %%rax\n\t" \ + "1:\tmovq %2, %%rax\n\t" \ "syscall\n\t" \ "cmpl $0, (%%rdi)\n\t" \ "jne 1b" \ diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S index 3c8acc1c25..9da9af8d01 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S @@ -171,8 +171,8 @@ __pthread_cond_timedwait: movq wakeup_seq(%rdi), %r12 - cmpq 40(%rsp), %rax - jb 15f + cmpq 40(%rsp), %r12 + jbe 15f cmpq %rax, %r12 ja 9f @@ -181,10 +181,10 @@ __pthread_cond_timedwait: jne 8b 13: incq wakeup_seq(%rdi) - movq $ETIMEDOUT, %rsi + movq $ETIMEDOUT, %r14 jmp 14f -9: xorq %rsi, %rsi +9: xorq %r14, %r14 14: incq woken_seq(%rdi) LOCK @@ -203,7 +203,7 @@ __pthread_cond_timedwait: callq __pthread_mutex_lock_internal testq %rax, %rax - cmoveq %rsi, %rax + cmoveq %r14, %rax 18: addq $80, %rsp popq %r14 diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S index 4a0e3cce55..835486a8a1 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S @@ -198,8 +198,8 @@ __pthread_cond_wait: movq wakeup_seq(%rdi), %r12 - cmpq 24(%rsp), %rax - jb 8b + cmpq 24(%rsp), %r12 + jbe 8b cmpq %rax, %r12 jna 8b diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S index e31d4bb705..0b0ccf7027 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S @@ -67,18 +67,18 @@ __pthread_rwlock_rdlock: LOCK #if MUTEX == 0 - incl (%rdi) + decl (%rdi) #else - incl MUTEX(%rdi) + decl MUTEX(%rdi) #endif jne 10f -11: addq $READERS_WAKEUP-MUTEX, %rdi +11: addq $READERS_WAKEUP, %rdi movq %r10, %rsi /* movq $FUTEX_WAIT, %rsi */ movq $SYS_futex, %rax syscall - subq $READERS_WAKEUP-MUTEX, %rdi + subq $READERS_WAKEUP, %rdi /* Reget the lock. */ movl $1, %esi diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S index 4f487fb8df..a3d2351b68 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S @@ -21,7 +21,7 @@ #include <lowlevelrwlock.h> -#define SYS_futex 240 +#define SYS_futex 202 #define FUTEX_WAIT 0 #define FUTEX_WAKE 1 @@ -57,7 +57,7 @@ __pthread_rwlock_unlock: 5: movq $0, WRITER(%rdi) movq $1, %rsi - leaq WRITERS_WAKEUP(%rdi), %r11 + leaq WRITERS_WAKEUP(%rdi), %r10 movq %rsi, %rdx cmpl $0, WRITERS_QUEUED(%rdi) jne 0f @@ -66,10 +66,10 @@ __pthread_rwlock_unlock: cmpl $0, READERS_QUEUED(%rdi) je 6f - movq $0x7fffffff, %rdx - leaq READERS_WAKEUP(%rdi), %r11 + movl $0x7fffffff, %edx + leaq READERS_WAKEUP(%rdi), %r10 -0: incl (%r11) +0: incl (%r10) LOCK #if MUTEX == 0 decl (%rdi) @@ -79,7 +79,7 @@ __pthread_rwlock_unlock: jne 7f 8: movq $SYS_futex, %rax - movq %r11, %rdi + movq %r10, %rdi syscall xorq %rax, %rax @@ -112,9 +112,6 @@ __pthread_rwlock_unlock: addq $MUTEX, %rdi #endif callq __lll_mutex_unlock_wake -#if MUTEX != 0 - subq $MUTEX, %rdi -#endif jmp 4b 7: @@ -122,9 +119,6 @@ __pthread_rwlock_unlock: addq $MUTEX, %rdi #endif callq __lll_mutex_unlock_wake -#if MUTEX != 0 - subq $MUTEX, %rdi -#endif jmp 8b .size __pthread_rwlock_unlock,.-__pthread_rwlock_unlock diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S index 0afe46a246..9e7336b20e 100644 --- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S +++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S @@ -71,12 +71,12 @@ __pthread_rwlock_wrlock: #endif jne 10f -11: addq $WRITERS_WAKEUP-MUTEX, %rdi +11: addq $WRITERS_WAKEUP, %rdi movq %r10, %rsi /* movq $FUTEX_WAIT, %rsi */ movq $SYS_futex, %rax syscall - subq $WRITERS_WAKEUP-MUTEX, %rdi + subq $WRITERS_WAKEUP, %rdi /* Reget the lock. */ movl $1, %esi @@ -99,7 +99,7 @@ __pthread_rwlock_wrlock: #if MUTEX == 0 decl (%rdi) #else - decl $MUTEX(%rdi) + decl MUTEX(%rdi) #endif jne 6f 7: |