commit glibc for openSUSE:Factory
Hello community, here is the log from the commit of package glibc for openSUSE:Factory checked in at Thu Jan 29 22:38:05 CET 2009. -------- --- glibc/glibc.changes 2009-01-21 20:26:21.000000000 +0100 +++ glibc/glibc.changes 2009-01-22 14:10:35.000000000 +0100 @@ -1,0 +2,5 @@ +Thu Jan 22 14:10:25 CET 2009 - schwab@suse.de + +- Fix use of mtfsf insn. + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- minmem New: ---- glibc-mtfsf.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ glibc.spec ++++++ --- /var/tmp/diff_new_pack.U27568/_old 2009-01-29 22:29:19.000000000 +0100 +++ /var/tmp/diff_new_pack.U27568/_new 2009-01-29 22:29:19.000000000 +0100 @@ -69,7 +69,7 @@ Provides: rtld(GNU_HASH) AutoReqProv: on Version: 2.9 -Release: 9 +Release: 10 %define snapshot_date 2008111711 Url: http://www.gnu.org/software/libc/libc.html PreReq: filesystem @@ -143,6 +143,7 @@ Patch54: glibc-2.10-nscd-nostack.diff Patch55: glibc-cpusetsize.diff Patch56: glibc-ldscript.diff +Patch57: glibc-mtfsf.diff %description The GNU C Library provides the most important standard libraries used @@ -351,6 +352,7 @@ %patch54 %patch55 %patch56 +%patch57 %patch5 # # Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed! @@ -882,103 +884,35 @@ /%{_lib}/libutil-%{version}.so /%{_lib}/libutil.so.1 %if %{optimize_power} +%define optimized_libs() \ +%dir %attr(0755,root,root) /%{_lib}/%1\ +/%{_lib}/%1/libc-%{version}.so\ +/%{_lib}/%1/libc.so.6*\ +/%{_lib}/%1/libm-%{version}.so\ +/%{_lib}/%1/libm.so.6*\ +/%{_lib}/%1/libpthread-%{version}.so\ +/%{_lib}/%1/libpthread.so.0\ +/%{_lib}/%1/librt-%{version}.so\ +/%{_lib}/%1/librt.so.1\ +/%{_lib}/%1/libthread_db-1.0.so\ +/%{_lib}/%1/libthread_db.so.1 %if %{powerpc_optimize_cpu_power4} -%dir %attr(0755,root,root) /%{_lib}/power4 -/%{_lib}/power4/libc-%{version}.so -/%{_lib}/power4/libc.so.6* -/%{_lib}/power4/libm-%{version}.so -/%{_lib}/power4/libm.so.6* -/%{_lib}/power4/libpthread-%{version}.so -/%{_lib}/power4/libpthread.so.0 -/%{_lib}/power4/librt-%{version}.so -/%{_lib}/power4/librt.so.1 -/%{_lib}/power4/libthread_db-1.0.so -/%{_lib}/power4/libthread_db.so.1 -%dir %attr(0755,root,root) /%{_lib}/ppc970 -/%{_lib}/ppc970/libc-%{version}.so -/%{_lib}/ppc970/libc.so.6* -/%{_lib}/ppc970/libm-%{version}.so -/%{_lib}/ppc970/libm.so.6* -/%{_lib}/ppc970/libpthread-%{version}.so -/%{_lib}/ppc970/libpthread.so.0 -/%{_lib}/ppc970/librt-%{version}.so -/%{_lib}/ppc970/librt.so.1 -/%{_lib}/ppc970/libthread_db-1.0.so -/%{_lib}/ppc970/libthread_db.so.1 +%{optimized_libs power4} +%{optimized_libs ppc970} %endif %if %{powerpc_optimize_cpu_power5} -%dir %attr(0755,root,root) /%{_lib}/power5 -/%{_lib}/power5/libc-%{version}.so -/%{_lib}/power5/libc.so.6* -/%{_lib}/power5/libm-%{version}.so -/%{_lib}/power5/libm.so.6* -/%{_lib}/power5/libpthread-%{version}.so -/%{_lib}/power5/libpthread.so.0 -/%{_lib}/power5/librt-%{version}.so -/%{_lib}/power5/librt.so.1 -/%{_lib}/power5/libthread_db-1.0.so -/%{_lib}/power5/libthread_db.so.1 -%dir %attr(0755,root,root) /%{_lib}/power5+ -/%{_lib}/power5+/libc-%{version}.so -/%{_lib}/power5+/libc.so.6* -/%{_lib}/power5+/libm-%{version}.so -/%{_lib}/power5+/libm.so.6* -/%{_lib}/power5+/libpthread-%{version}.so -/%{_lib}/power5+/libpthread.so.0 -/%{_lib}/power5+/librt-%{version}.so -/%{_lib}/power5+/librt.so.1 -/%{_lib}/power5+/libthread_db-1.0.so -/%{_lib}/power5+/libthread_db.so.1 +%{optimized_libs power5} +%{optimized_libs power5+} %endif %if %{powerpc_optimize_cpu_power6} -%dir %attr(0755,root,root) /%{_lib}/power6 -/%{_lib}/power6/libc-%{version}.so -/%{_lib}/power6/libc.so.6* -/%{_lib}/power6/libm-%{version}.so -/%{_lib}/power6/libm.so.6* -/%{_lib}/power6/libpthread-%{version}.so -/%{_lib}/power6/libpthread.so.0 -/%{_lib}/power6/librt-%{version}.so -/%{_lib}/power6/librt.so.1 -/%{_lib}/power6/libthread_db-1.0.so -/%{_lib}/power6/libthread_db.so.1 -%dir %attr(0755,root,root) /%{_lib}/power6x -/%{_lib}/power6x/libc-%{version}.so -/%{_lib}/power6x/libc.so.6* -/%{_lib}/power6x/libm-%{version}.so -/%{_lib}/power6x/libm.so.6* -/%{_lib}/power6x/libpthread-%{version}.so -/%{_lib}/power6x/libpthread.so.0 -/%{_lib}/power6x/librt-%{version}.so -/%{_lib}/power6x/librt.so.1 -/%{_lib}/power6x/libthread_db-1.0.so -/%{_lib}/power6x/libthread_db.so.1 +%{optimized_libs power6} +%{optimized_libs power6x} %endif %if %{powerpc_optimize_cpu_power7} -%dir %attr(0755,root,root) /%{_lib}/power7 -/%{_lib}/power7/libc-%{version}.so -/%{_lib}/power7/libc.so.6* -/%{_lib}/power7/libm-%{version}.so -/%{_lib}/power7/libm.so.6* -/%{_lib}/power7/libpthread-%{version}.so -/%{_lib}/power7/libpthread.so.0 -/%{_lib}/power7/librt-%{version}.so -/%{_lib}/power7/librt.so.1 -/%{_lib}/power7/libthread_db-1.0.so -/%{_lib}/power7/libthread_db.so.1 +%{optimized_libs power7} %endif %if %{powerpc_optimize_cpu_cell} -%dir %attr(0755,root,root) /%{_lib}/ppc-cell-be -/%{_lib}/ppc-cell-be/libc-%{version}.so -/%{_lib}/ppc-cell-be/libc.so.6* -/%{_lib}/ppc-cell-be/libm-%{version}.so -/%{_lib}/ppc-cell-be/libm.so.6* -/%{_lib}/ppc-cell-be/libpthread-%{version}.so -/%{_lib}/ppc-cell-be/libpthread.so.0 -/%{_lib}/ppc-cell-be/librt-%{version}.so -/%{_lib}/ppc-cell-be/librt.so.1 -/%{_lib}/ppc-cell-be/libthread_db-1.0.so -/%{_lib}/ppc-cell-be/libthread_db.so.1 +%{optimized_libs ppc-cell-be} %endif # optimize_power %endif @@ -1117,6 +1051,8 @@ %{_libdir}/libdl_p.a %changelog +* Thu Jan 22 2009 schwab@suse.de +- Fix use of mtfsf insn. * Wed Jan 21 2009 schwab@suse.de - Fix ldscript mangling. * Wed Jan 21 2009 pbaudis@suse.cz ++++++ glibc-mtfsf.diff ++++++ --- sysdeps/powerpc/fpu/fenv_libc.h.~1.5.~ 2008-11-17 10:44:10.000000000 +0100 +++ sysdeps/powerpc/fpu/fenv_libc.h 2009-01-22 14:23:37.000000000 +0100 @@ -39,7 +39,7 @@ libm_hidden_proto (__fe_nomask_env) do { \ double d = (env); \ if(GLRO(dl_hwcap) & PPC_FEATURE_HAS_DFP) \ - asm volatile ("mtfsf 0xff,%0,1,0" : : "f" (d)); \ + asm volatile (".machine push; .machine power6; mtfsf 0xff,%0,1,0; .machine pop" : : "f" (d)); \ else \ asm volatile ("mtfsf 0xff,%0" : : "f" (d)); \ } while(0) @@ -53,7 +53,7 @@ libm_hidden_proto (__fe_nomask_env) #define relax_fenv_state() \ do { \ if(GLRO(dl_hwcap) & PPC_FEATURE_HAS_DFP) \ - asm ("mtfsfi 7,0,1"); \ + asm (".machine push; .machine power6; mtfsfi 7,0,1; .machine pop"); \ asm ("mtfsfi 7,0"); \ } while(0) --- sysdeps/powerpc/fpu/tst-setcontext-fpscr.c.~1.1.~ 2008-11-17 02:34:02.000000000 +0100 +++ sysdeps/powerpc/fpu/tst-setcontext-fpscr.c 2009-01-22 14:24:33.000000000 +0100 @@ -109,7 +109,7 @@ typedef unsigned int si_fpscr_t __attrib tmp __attribute__ ((__aligned__(8))); \ tmp.fpscr = __fpscr; \ /* Set the entire 64-bit FPSCR. */ \ - __asm__ ("lfd%U0 0,%0; mtfsf 255,0,1,0" : : "m" (tmp.d) : "fr0"); \ + __asm__ ("lfd%U0 0,%0; .machine push; .machine power6; mtfsf 255,0,1,0; .machine pop" : : "m" (tmp.d) : "fr0"); \ } # define _GET_SI_FPSCR(__fpscr) ({ \ --- sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S.~1.4.~ 2008-11-17 10:44:18.000000000 +0100 +++ sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S 2009-01-22 15:42:24.000000000 +0100 @@ -202,13 +202,19 @@ ENTRY(__CONTEXT_FUNC_NAME) lfd fp0,_UC_FREGS+(0*8)(r31) # ifdef _ARCH_PWR6 /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp31,1,0 + .machine pop # else /* Availability of DFP indicates a 64-bit FPSCR. */ andi. r6,r7,PPC_FEATURE_HAS_DFP beq 7f /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp31,1,0 + .machine pop b 8f /* Continue to operate on the FPSCR as if it were 32-bits. */ 7: mtfsf 0xff,fp31 --- sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S.~1.3.~ 2008-11-17 10:44:18.000000000 +0100 +++ sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S 2009-01-22 15:42:37.000000000 +0100 @@ -428,13 +428,19 @@ ENTRY(__CONTEXT_FUNC_NAME) lfd fp0,_UC_FREGS+(0*8)(r31) # ifdef _ARCH_PWR6 /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp31,1,0 + .machine pop # else /* Availability of DFP indicates a 64-bit FPSCR. */ andi. r6,r7,PPC_FEATURE_HAS_DFP beq 7f /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp31,1,0 + .machine pop b 8f /* Continue to operate on the FPSCR as if it were 32-bits. */ 7: mtfsf 0xff,fp31 --- sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S.~1.14.~ 2008-11-17 10:44:18.000000000 +0100 +++ sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S 2009-01-22 15:43:05.000000000 +0100 @@ -84,13 +84,19 @@ ENTRY(__novec_setcontext) # ifdef _ARCH_PWR6 /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop # else /* Availability of DFP indicates a 64-bit FPSCR. */ andi. r6,r5,PPC_FEATURE_HAS_DFP beq 5f /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop b 6f /* Continue to operate on the FPSCR as if it were 32-bits. */ 5: @@ -372,13 +378,19 @@ L(has_no_vec): # ifdef _ARCH_PWR6 /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop # else /* Availability of DFP indicates a 64-bit FPSCR. */ andi. r6,r5,PPC_FEATURE_HAS_DFP beq 7f /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop b 8f /* Continue to operate on the FPSCR as if it were 32-bits. */ 7: --- sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S.~1.17.~ 2008-11-17 10:44:18.000000000 +0100 +++ sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S 2009-01-22 15:43:26.000000000 +0100 @@ -178,13 +178,19 @@ ENTRY(__novec_swapcontext) lfd fp30,(SIGCONTEXT_FP_REGS+(PT_R30*8))(r31) # ifdef _ARCH_PWR6 /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop # else /* Availability of DFP indicates a 64-bit FPSCR. */ andi. r6,r8,PPC_FEATURE_HAS_DFP beq 5f /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop b 6f /* Continue to operate on the FPSCR as if it were 32-bits. */ 5: @@ -670,13 +676,19 @@ L(has_no_vec2): lfd fp30,(SIGCONTEXT_FP_REGS+(PT_R30*8))(r31) # ifdef _ARCH_PWR6 /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop # else /* Availability of DFP indicates a 64-bit FPSCR. */ andi. r6,r8,PPC_FEATURE_HAS_DFP beq 7f /* Use the extended four-operand version of the mtfsf insn. */ + .machine push + .machine power6 mtfsf 0xff,fp0,1,0 + .machine pop b 8f /* Continue to operate on the FPSCR as if it were 32-bits. */ 7: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de