Re: Reload problems with only one base reg for "base + offset" addressing mode
redriver jiang writes: > Hi, > > You mean I should define insn like this: > > (define_insn "*iorqi3_imm" > [(set (mem:QI (match_operand:HI 0 "register_operand" "b")) >(ior:QI (mem:QI (match_operand:HI 1 "register_operand" "b") > (mem:QI (plus: HI (match_operand:HI 2 > "register_operand" "f") >(match_operand: 3 HI > "immediate_operand" "K") ] > "" > "..." > [( set_attr "length" "1" )]) > > "b" for R16,R17,R18, and "f" for R18, "K" for immediate operand with > range "0-127"? Sort of, but you shouldn't write the PLUS in the insn. Instead, write a new constraint which accepts either a R16, R17, or R18 plus an offset. Also, write the insn with three alternatives, with the offset constraint in each position. Ian
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
Dennis Clarke writes: > FYI , bug 44455 is a show stopper in the Solaris world. > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44455 This is bootstrap/44455 GCC fails to build if MPFR 3.0.0 (Release Candidate) is used Why would this be a showstopper? Who forces you to build and install mpfr 3.0.0? OpenSolaris comes with 2.4.1, and older versions don't have mpfr bundled at all, so just use a version that works with GCC, building it in-tree if you must. Rainer -- - Rainer Orth, Center for Biotechnology, Bielefeld University
Re: GFDL/GPL issues
Mark Mitchell writes: > I believe that the only real fix here is (a) for the FSF to abandon the > GFDL, and relicense manuals under the GPL, or (b) for the FSF to add an > exception to the GFDL, making it compatible with the GPL in some way. > However, I have no evidence that the FSF is considering either of these > ideas; RMS didn't provide encouraging feedback when I made such suggestions. What if we ask the FSF if we can dual license the constraints.md files under both the GPL and the GFDL? Ian
Re: Revisiting the use of cselib in alias.c for scheduling
On Thu, Jul 22, 2010 at 9:29 AM, Maxim Kuvyrkov wrote: > index 89743c3..047b717 100644 > --- a/gcc/sched-rgn.c > +++ b/gcc/sched-rgn.c > @@ -2935,6 +2935,9 @@ schedule_region (int rgn) > if (sched_is_disabled_for_current_region_p ()) > return; > > + gcc_assert (!reload_completed || current_nr_blocks == 1); > + rgn_sched_deps_info.use_cselib = (current_nr_blocks == 1); > + > sched_rgn_compute_dependencies (rgn); > > sched_rgn_local_init (rgn); > This passes bootstrap on x86_64-unknown-linux-gnu. But bug 43494 will have to be addressed before a patch like this can go in. Ciao! Steven
RE: SH optimized software floating point routines
On Thu, 22 Jul 2010, Joern Rennecke wrote: > Quoting "Joseph S. Myers" : > > > That diff does not appear to relate to undefined behavior. GCC considers > > these out-of-range conversions to yield an unspecified value, possibly > > raising an exception, as per Annex F, and does not take the liberty of > > optimizing on the basis of them being undefined when not in an IEEE mode. > > Well, still, the test is wrong in possibly raising an exception there, > with no provisions to ignore the exception or catch any signal raised. The expectation is that floating-point exceptions will not trap by default, again in accordance with Annex F even when not in an IEEE mode. -- Joseph S. Myers jos...@codesourcery.com
Re: SH optimized software floating point routines
Joern Rennecke wrote: Quoting Christian Bruel : Using the ieee-sf.S + this patch OK Is this only a proof-of-concept, because you only change the ne[sd]f2 implementation? I changed also the unordered comparison patterns. (cmpunsf_i1, cmpundf_i1). But yes, the other functions that would need the same kind of check would be unordsf2, and all the comparisons (gtsf2, gesf2f...) for floats and doubles. But I will only consider those after/if we all agree that this needs to be done instead of keeping the current QNaN only restrictions. And you go out of your way to only accept a restricted set of values. This hold for the original optimized implementation as well, for example I don't think that 0x7f81 was caught. In fact implementing correctly the isnan check without restricted set of value makes the original discussion pointless, since the Q/S bits are a subpart of all possible codings, with any fractional part != 0. Plus, the overuse of the arithmetic unit hurts SH4-100 / SH4-200 instruction pairing. > AFAICT you need only one cycle penalty, in the check_nan path: GLOBAL(nesf2): /* If the raw values are unequal, the result is unequal, unless both values are +-zero. If the raw values are equal, the result is equal, unless the values are NaN. */ cmp/eq r4,r5 mov.l LOCAL(inf2),r1 bt/s LOCAL(check_nan) mov r4,r0 or r5,r0 rts add r0,r0 LOCAL(check_nan): add r0,r0 cmp/hi r1,r0 rts movtr0 .balign 4 LOCAL(inf2): .long 0xff00 You could even save four bytes by putting the check_nan label into the delay slot, but I'm not sure if that'll discomfit any branch prediction mechanism. Thanks a lot of this one, It should fix the original problem on the restricted set of values as well. The cmpund patterns fix should probably have a similar checks. Disclaimer: I've not tested this code. For the DFmode case, what about NaNs denoted by the low word, e.g. 0x7ff0 1 ? If so, the DFmode code could become something like this: GLOBAL(nedf2): cmp/eq DBL0L,DBL1L mov.l LOCAL(inf2),r1 bf LOCAL(ne) cmp/eq DBL0H,DBL1H bt/sLOCAL(check_nan) mov DBL0H,r0 or DBL1H,r0 add r0,r0 rts or DBL0L,r0 LOCAL(check_nan): tst DBL0L,DBL0L add r0,r0 subcr1,r0 mov #-1,r0 rts negcr0,r0 LOCAL(ne): rts mov #1,r0 .balign 4 LOCAL(inf2): .long 0xffe0 > For an actual patch, you need to use the SL* macros from > config/sh/lib1funcs.h because the SH1 does not have delayed branches. OK, thanks
No GCC summit this year?
Hello, I am interested to attend GCC summit this year, but it doesn't seem to happen, does it? Cheers, Bingfeng
Re: No GCC summit this year?
"Bingfeng Mei" writes: > I am interested to attend GCC summit this year, but it doesn't seem > to happen, does it? It is reportedly being held in the last week of October this year. Ian
Re: No GCC summit this year?
On Fri, Jul 23, 2010 at 12:39 PM, Bingfeng Mei wrote: > Hello, > I am interested to attend GCC summit this year, but it doesn't seem > to happen, does it? Well - past attendees got date & location confirmation like "The Summit will be in Ottawa from October 25th to 27th, you should plan to arrive in the afternoon on the 24th and depart on the afternoon of the 28th." but a "website will go up shortly" promise didn't yet materialize. Richard. > Cheers, > Bingfeng > >
Re: SH optimized software floating point routines
> Joern Rennecke wrote: >> That's a bug, then; we shouldn't use a library function there, >> but the cmpordered[sd]f_t_4 patterns. > > Argh, I've missed the required patterns are incorporated already > in your patch. I'll test it again with sh-softfp-predicate-fix > when the tests for 4.5.1-rc are done. Thanks! I've tested sh-softfp-20100718-2131 + sh-softfp-predicate-fix on -m1, -m2, -m3, -m3 -ml, -m2a on sh-elf, sh4-linux and sh64-linux. sh64-linux required the first hunk of the attached patch to build. The test with -m3 -ml shows some regressions which look to be solved with the second hunk of the patch. Now all test results look clean. For NaN issue, I'd like to wait a full patch from Christian. I'm curious again about the numbers with/without it. Regards, kaz -- * config/sh/sh.md (cstoresf4): Fix typos. * config/sh/ieee-754-df.S (unorddf2): Use DBL1H instead of r6. diff -upr ORIG/trunk/gcc/config/sh/sh.md trunk/gcc/config/sh/sh.md --- ORIG/trunk/gcc/config/sh/sh.md Wed Jul 21 08:12:23 2010 +++ trunk/gcc/config/sh/sh.md Thu Jul 22 10:36:36 2010 @@ -9462,10 +9462,10 @@ mov.l\\t1f,r0\\n\\ "TARGET_SH1 || TARGET_SHMEDIA_FPU" "if (TARGET_SHMEDIA) { - if (!arith_operand (operands[2], DFmode)) -operands[2] = copy_to_mode_reg (DFmode, operands[2]); - if (!arith_operand (operands[3], DFmode)) -operands[3] = copy_to_mode_reg (DFmode, operands[3]); + if (!arith_operand (operands[2], SFmode)) +operands[2] = copy_to_mode_reg (SFmode, operands[2]); + if (!arith_operand (operands[3], SFmode)) +operands[3] = copy_to_mode_reg (SFmode, operands[3]); emit_insn (gen_cstore4_media (operands[0], operands[1], operands[2], operands[3])); DONE; diff -uprN ORIG/trunk/gcc/config/sh/ieee-754-df.S trunk/gcc/config/sh/ieee-754-df.S --- ORIG/trunk/gcc/config/sh/ieee-754-df.S 2010-07-20 11:39:29.0 +0900 +++ trunk/gcc/config/sh/ieee-754-df.S 2010-07-22 13:16:07.0 +0900 @@ -123,7 +123,7 @@ GLOBAL(unorddf2): mov.l LOCAL(c_DF_NAN_MASK),r1 not DBL0H,r0 tst r1,r0 - not r6,r0 + not DBL1H,r0 bt LOCAL(unord) tst r1,r0 LOCAL(unord):
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
> Dennis Clarke writes: > >> FYI , bug 44455 is a show stopper in the Solaris world. >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44455 > > This is > > bootstrap/44455 GCC fails to build if MPFR 3.0.0 (Release Candidate) is used > > Why would this be a showstopper? Who forces you to build and install mpfr 3.0.0? OpenSolaris comes with 2.4.1, and older versions don't OpenSolaris is not a production release run by anyone anywhere :-) > have mpfr bundled at all, so just use a version that works with GCC, building it in-tree if you must. OKay .. I guess details are needed. If I place the latest mpfr and gmp and mpc and ppl and cloog in tree then the build fails in stage one very early with bizarre warning about not being able to find gmp rev greater than 4.3.1 despite the face that I have already built and tested : GMP: include 4.3.2, lib 4.3.2 MPFR: include 3.0.0-p3, lib 3.0.0-p3 MPC: include 0.8.2, lib 0.8.2 Those would all be installed in /usr/local with no surprises. Regardless .. the build fails with the same message as bugid 44455. Of course I try with gmp-5.0.1 first and that also fails so long as ppl is around in the tree. So I throw away ppl and cloog ( which I have *never* seen build on Solaris 10 anyways ) and then the build fails a little later with : make[3]: Leaving directory `/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/gcc' mkdir i386-pc-solaris2.10/libgcc Checking multilib configuration for libgcc... Configuring stage 1 in i386-pc-solaris2.10/libgcc configure: creating cache ./config.cache checking for --enable-version-specific-runtime-libs... no checking for a BSD-compatible install... /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722/install-sh -c checking for gawk... nawk checking build system type... i386-pc-solaris2.10 checking host system type... i386-pc-solaris2.10 checking for i386-pc-solaris2.10-ar... ar checking for i386-pc-solaris2.10-lipo... lipo checking for i386-pc-solaris2.10-nm... /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/nm checking for i386-pc-solaris2.10-ranlib... ranlib checking for i386-pc-solaris2.10-strip... strip checking whether ln -s works... yes checking for i386-pc-solaris2.10-gcc... /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem /usr/local/gcc4/i386-pc-solaris2.10/include -isystem /usr/local/gcc4/i386-pc-solaris2.10/sys-include checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem /usr/local/gcc4/i386-pc-solaris2.10/include -isystem /usr/local/gcc4/i386-pc-solaris2.10/sys-includeaccepts -g... yes checking for /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem /usr/local/gcc4/i386-pc-solaris2.10/include -isystem /usr/local/gcc4/i386-pc-solaris2.10/sys-includeoption to accept ISO C89... none needed checking how to run the C preprocessor... /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem /usr/local/gcc4/i386-pc-solaris2.10/include -isystem /usr/local/gcc4/i386-pc-solaris2.10/sys-include-E checking whether decimal floating point is supported... no checking whether fixed-point is supported... no checking for __attribute__((visibility("hidden")))... no checking whether the target assembler supports thread-local storage... yes checking whether the thread-local storage support is from emutls... no configure: updating cache ./config.cache configure: creating ./config.status config.status: creating Makefile config.status: executing default commands Adding multilib support to Makefile in ../../../gcc-4.5.1-RC-20100722/libgcc multidirs=amd64 with_multisubdir= Running configure in multilib subdirs amd64 pwd: /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/i386-pc-solaris2.10/libgcc Running configure in multilib subdir amd64 pwd: /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/i386-pc-solaris2.10 mkdir amd64 configure: creating cache ./config.cache checking for --enable-version-specific-runtime-libs... no checking for a BSD-compatible install... /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722/install-sh -c checking for gawk... nawk checking build system type... i386-pc-solaris2.10 checking host system type... i386-pc-solaris2.10 checking for i386-pc-solaris2.10-ar... ar che
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
On Fri, 23 Jul 2010, Dennis Clarke wrote: > > Dennis Clarke writes: > > > >> FYI , bug 44455 is a show stopper in the Solaris world. > >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44455 > > > > This is > > > > bootstrap/44455 GCC fails to build if MPFR 3.0.0 (Release Candidate) is > used > > > > Why would this be a showstopper? Who forces you to build and install > mpfr 3.0.0? OpenSolaris comes with 2.4.1, and older versions don't > > OpenSolaris is not a production release run by anyone anywhere :-) > > > have mpfr bundled at all, so just use a version that works with GCC, > building it in-tree if you must. > > OKay .. I guess details are needed. > > If I place the latest mpfr and gmp and mpc and ppl and cloog in tree then > the build fails in stage one very early with bizarre warning about not > being able to find gmp rev greater than 4.3.1 despite the face that I have > already built and tested : > > GMP: include 4.3.2, lib 4.3.2 > MPFR: include 3.0.0-p3, lib 3.0.0-p3 > MPC: include 0.8.2, lib 0.8.2 > > Those would all be installed in /usr/local with no surprises. > > Regardless .. the build fails with the same message as bugid 44455. > > Of course I try with gmp-5.0.1 first and that also fails so long as ppl is > around in the tree. > > So I throw away ppl and cloog ( which I have *never* seen build on Solaris > 10 anyways ) and then the build fails a little later with : > > make[3]: Leaving directory > `/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/gcc' > mkdir i386-pc-solaris2.10/libgcc > Checking multilib configuration for libgcc... > Configuring stage 1 in i386-pc-solaris2.10/libgcc > configure: creating cache ./config.cache > checking for --enable-version-specific-runtime-libs... no > checking for a BSD-compatible install... > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722/install-sh -c > checking for gawk... nawk > checking build system type... i386-pc-solaris2.10 > checking host system type... i386-pc-solaris2.10 > checking for i386-pc-solaris2.10-ar... ar > checking for i386-pc-solaris2.10-lipo... lipo > checking for i386-pc-solaris2.10-nm... > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/nm > checking for i386-pc-solaris2.10-ranlib... ranlib > checking for i386-pc-solaris2.10-strip... strip > checking whether ln -s works... yes > checking for i386-pc-solaris2.10-gcc... > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc > -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ > -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ > -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem > /usr/local/gcc4/i386-pc-solaris2.10/include -isystem > /usr/local/gcc4/i386-pc-solaris2.10/sys-include > checking for suffix of object files... o > checking whether we are using the GNU C compiler... yes > checking whether > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc > -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ > -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ > -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem > /usr/local/gcc4/i386-pc-solaris2.10/include -isystem > /usr/local/gcc4/i386-pc-solaris2.10/sys-includeaccepts -g... yes > checking for > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc > -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ > -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ > -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem > /usr/local/gcc4/i386-pc-solaris2.10/include -isystem > /usr/local/gcc4/i386-pc-solaris2.10/sys-includeoption to accept ISO > C89... none needed > checking how to run the C preprocessor... > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/xgcc > -B/export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/./gcc/ > -B/usr/local/gcc4/i386-pc-solaris2.10/bin/ > -B/usr/local/gcc4/i386-pc-solaris2.10/lib/ -isystem > /usr/local/gcc4/i386-pc-solaris2.10/include -isystem > /usr/local/gcc4/i386-pc-solaris2.10/sys-include-E > checking whether decimal floating point is supported... no > checking whether fixed-point is supported... no > checking for __attribute__((visibility("hidden")))... no > checking whether the target assembler supports thread-local storage... yes > checking whether the thread-local storage support is from emutls... no > configure: updating cache ./config.cache > configure: creating ./config.status > config.status: creating Makefile > config.status: executing default commands > Adding multilib support to Makefile in > ../../../gcc-4.5.1-RC-20100722/libgcc > multidirs=amd64 > with_multisubdir= > Running configure in multilib subdirs amd64 > pwd: > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/i386-pc-solaris2.10/libgcc > Running configure in multilib subdir amd64 > pwd: > /export/home/dclarke/build/GCC/gcc-4.5.1-RC-20100722-001/i386-pc-solaris2.10 > mkdir amd64 > configure: creating cache ./config.cache > checking for --enable-version-specific-runtime-libs... no > checking for
Re: GFDL/GPL issues
Ian Lance Taylor wrote: >> I believe that the only real fix here is (a) for the FSF to abandon the >> GFDL, and relicense manuals under the GPL, or (b) for the FSF to add an >> exception to the GFDL, making it compatible with the GPL in some way. >> However, I have no evidence that the FSF is considering either of these >> ideas; RMS didn't provide encouraging feedback when I made such suggestions. > > What if we ask the FSF if we can dual license the constraints.md files > under both the GPL and the GFDL? We could do that. It's a hack, but it might be an acceptable hack. I've been thinking about this from the perspective of "how can we get the FSF to put an exception into the GFDL to allow inclusion/generation from GPL'd code?"; your clever idea is that if all the code is also GFDL'd then you don't have a problem. I call this is a hack, because we're changing the code license to deal with a problem created by the FSF's insistence on a separate license for documentation, but, hey, it might work. Do you think we should just ask the FSF to dual-license all of GCC? -- Mark Mitchell CodeSourcery m...@codesourcery.com (650) 331-3385 x713
Re: GFDL/GPL issues
Mark Mitchell writes: > Do you think we should just ask the FSF to dual-license all of GCC? Sure, it might at least be worth finding out whether they think there is any problem with that. Ian
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
>> If I go back and rebuild gmp mpfr and mpc thus : >> >> >> GMP: include 5.0.1, lib 5.0.1 >> MPFR: include 3.0.0-p3, lib 3.0.0-p3 >> MPC: include 0.8.2, lib 0.8.2 > > Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do > not build these libraries in-tree. I built and tested them separate. -- Dennis
Re: GFDL/GPL issues
Ian Lance Taylor wrote: >> Do you think we should just ask the FSF to dual-license all of GCC? > > Sure, it might at least be worth finding out whether they think there is > any problem with that. I've asked on the SC list. Thanks, -- Mark Mitchell CodeSourcery m...@codesourcery.com (650) 331-3385 x713
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
On Jul 23, 2010, at 9:37 AM, Dennis Clarke wrote: If I go back and rebuild gmp mpfr and mpc thus : GMP: include 5.0.1, lib 5.0.1 MPFR: include 3.0.0-p3, lib 3.0.0-p3 MPC: include 0.8.2, lib 0.8.2 Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do not build these libraries in-tree. I built and tested them separate. You forgot to set LD_LIBRARY_PATH. -- Dennis
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
GMP: include 5.0.1, lib 5.0.1 MPFR: include 3.0.0-p3, lib 3.0.0-p3 MPC: include 0.8.2, lib 0.8.2 >>> >>> Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do >>> not build these libraries in-tree. >> >> I built and tested them separate. > > You forgot to set LD_LIBRARY_PATH. > > That is considered evil on Solaris. http://blogs.sun.com/ali/entry/avoiding_ld_library_path_the http://blogs.sun.com/rie/entry/tt_ld_library_path_tt I did set LD_RUN_PATH and LD_OPTIONS however. -- Dennis
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
On Jul 23, 2010, at 9:58 AM, Dennis Clarke wrote: GMP: include 5.0.1, lib 5.0.1 MPFR: include 3.0.0-p3, lib 3.0.0-p3 MPC: include 0.8.2, lib 0.8.2 Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do not build these libraries in-tree. I built and tested them separate. You forgot to set LD_LIBRARY_PATH. That is considered evil on Solaris. http://blogs.sun.com/ali/entry/avoiding_ld_library_path_the http://blogs.sun.com/rie/entry/tt_ld_library_path_tt I did set LD_RUN_PATH and LD_OPTIONS however. -R and run path has bigger issues than ld library path. But then you should look into config.log and see why it fails. I bet a beer it is not finding the shared libraries. -- Dennis
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
> On Jul 23, 2010, at 9:58 AM, Dennis Clarke > wrote: >> GMP: include 5.0.1, lib 5.0.1 >> MPFR: include 3.0.0-p3, lib 3.0.0-p3 >> MPC: include 0.8.2, lib 0.8.2 > > Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or > do > not build these libraries in-tree. I built and tested them separate. >>> >>> You forgot to set LD_LIBRARY_PATH. >>> >>> >> >> That is considered evil on Solaris. >> >> http://blogs.sun.com/ali/entry/avoiding_ld_library_path_the >> >> http://blogs.sun.com/rie/entry/tt_ld_library_path_tt >> >> I did set LD_RUN_PATH and LD_OPTIONS however. > > -R and run path has bigger issues than ld library path. But then you > should look into config.log and see why it fails. I bet a beer it is > not finding the shared libraries. Now this is serious ! Would you bet a case of beer ? gcc -v Using built-in specs. Target: i386-pc-solaris2.10 Configured with: ../gcc-4.4.4/configure --host=i386-pc-solaris2.10 --build=i386-pc-solaris2.10 --with-gnu-as --with-as=/opt/csw/bin/gas --without-gnu-ld --with-ld=/usr/ccs/bin/ld --with-cpu-32=i386 --with-cpu-64=opteron --with-arch-32=i386 --with-arch-64=opteron --enable-stage1-languages=c --enable-nls --with-libiconv-prefix=/usr/local --enable-threads=posix --with-gmp=/usr/local --with-mpfr=/usr/local --with-mpc=/usr/local --prefix=/usr/local/gcc4 --with-local-prefix=/usr/local --enable-shared --enable-multilib --with-system-zlib --with-pkgversion='Blastwave.org Inc. Fri Jul 23 15:32:37 GMT 2010' --with-bugurl=http://www.blastwave.org/support --enable-languages=c,c++,objc,fortran --enable-bootstrap Thread model: posix gcc version 4.4.4 (Blastwave.org Inc. Fri Jul 23 15:32:37 GMT 2010) $ I'll run the testsuite , post the results and then make install. Then I'll rebuild binutils and try gcc 4.5.1 release candidate again with the exact same environment settings. By the way .. I did not use LD_LIBRARY_PATH at all. I was thinking Grolsch. I love that stuff and the bottles are cool. -- Dennis
embedded dataflow tracking code?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi. I'm sorry if I chose wrong place for my question. I would like to load debugger, attach to working process, and at some breakpoint, instead of numerical values in the CPU registers, I would like to see genesis of each value like "result of f(arg1, arg2,arg3) called at point X" or "result of comparison of values X and Y" and so on. Probably, compiler backend could embed some dataflow tracking code between basic blocks and store information about all variables flow in some separate data segment.. Are there any known attempts or projects or...? - -- My PGP public key: http://yurichev.com/dennis.yurichev.asc -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkxJ1G4ACgkQ1YPmFmJG++PtSwCeLYhvtOXTYNG51bIAksYdb2Ny 9vAAoL5RIcEdcPYZkXzLPNtf+sOa7SJT =IO9j -END PGP SIGNATURE-
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
Richard Guenther wrote: On Fri, 23 Jul 2010, Dennis Clarke wrote: GMP: include 4.3.2, lib 4.3.2 MPFR: include 3.0.0-p3, lib 3.0.0-p3 MPC: include 0.8.2, lib 0.8.2 fails, Richard recommends: Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do not build these libraries in-tree. Recently, I was thrown back to Debian Lenny, out of a mistake of my own regard 1) (which dates back to 14 February 2009, so over 1.5 years ago). What I did was downloading: gmp-4.3.2.tar.bz2 mpfr-2.4.2.tar.bz2 mpc-0.8.2.tar.gz unpack them into their own directories and adding: lrwxrwxrwx 1 toon toon 15 2010-07-14 15:19 gmp -> ../../gmp-4.3.2 lrwxrwxrwx 1 toon toon 15 2010-07-14 14:51 mpc -> ../../mpc-0.8.2 lrwxrwxrwx 1 toon toon 16 2010-07-14 15:24 mpfr -> ../../mpfr-2.4.2 as those source directories were two levels up from my 'gcc' source directory. That worked (I never got it working with mpfr 3.0.0 and gmp 5.0.x) Cheers, 1) As Steve Bourne says: When logged in as the superuser, the prompt turns into '#', to remind you of your responsibilities 2). 2) Throwing away /usr/sbin is a bad move, even if it's just a keystroke away from removing /usr/snp (and you're using command line completion). [ You can't imagine the pain working with a 1.5 year old OS ] -- Toon Moene - e-mail: t...@moene.org - phone: +31 346 214290 Saturnushof 14, 3738 XG Maartensdijk, The Netherlands At home: http://moene.org/~toon/; weather: http://moene.org/~hirlam/ Progress of GNU Fortran: http://gcc.gnu.org/gcc-4.5/changes.html#Fortran
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
> Richard Guenther wrote: > >> On Fri, 23 Jul 2010, Dennis Clarke wrote: > >>> GMP: include 4.3.2, lib 4.3.2 >>> MPFR: include 3.0.0-p3, lib 3.0.0-p3 >>> MPC: include 0.8.2, lib 0.8.2 > > fails, > > Richard recommends: > >> Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do >> not build these libraries in-tree. > > Recently, I was thrown back to Debian Lenny, out of a mistake of my own > regard 1) (which dates back to 14 February 2009, so over 1.5 years ago). > > What I did was downloading: > > gmp-4.3.2.tar.bz2 > mpfr-2.4.2.tar.bz2 > mpc-0.8.2.tar.gz > > unpack them into their own directories and adding: > > lrwxrwxrwx 1 toon toon 15 2010-07-14 15:19 gmp -> ../../gmp-4.3.2 > lrwxrwxrwx 1 toon toon 15 2010-07-14 14:51 mpc -> ../../mpc-0.8.2 > lrwxrwxrwx 1 toon toon 16 2010-07-14 15:24 mpfr -> ../../mpfr-2.4.2 > > as those source directories were two levels up from my 'gcc' source > directory. > > That worked (I never got it working with mpfr 3.0.0 and gmp 5.0.x) > [ You can't imagine the pain working with a 1.5 year old OS ] > Have you seen Solaris 8 ? [titan]uname -a SunOS titan 5.8 Generic_127722-03 i86pc i386 i86pc [titan]cat /etc/release Solaris 8 2/02 s28x_u7wos_08a INTEL Copyright 2002 Sun Microsystems, Inc. All Rights Reserved. Assembled 18 December 2001 [titan] [titan]psrinfo -v Status of virtual processor 0 as of: 07/23/10 17:46:33 on-line since 06/15/10 20:44:18. The i386 processor operates at 400 MHz, and has an i387 compatible floating point processor. Status of virtual processor 1 as of: 07/23/10 17:46:33 on-line since 06/15/10 20:44:22. The i386 processor operates at 400 MHz, and has an i387 compatible floating point processor. [titan] -- Dennis
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
Dennis Clarke wrote: > I wrote: [ You can't imagine the pain working with a 1.5 year old OS ] Have you seen Solaris 8 ? [titan]uname -a SunOS titan 5.8 Generic_127722-03 i86pc i386 i86pc [titan]cat /etc/release Solaris 8 2/02 s28x_u7wos_08a INTEL Copyright 2002 Sun Microsystems, Inc. All Rights Reserved. Assembled 18 December 2001 Yeah, but that was at *work* (2006-ish). At work I get paid for tending to the past (hey, I'm 53). At home I just want to be productive. -- Toon Moene - e-mail: t...@moene.org - phone: +31 346 214290 Saturnushof 14, 3738 XG Maartensdijk, The Netherlands At home: http://moene.org/~toon/; weather: http://moene.org/~hirlam/ Progress of GNU Fortran: http://gcc.gnu.org/gcc-4.5/changes.html#Fortran
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
> Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do > not build these libraries in-tree. Yes, and verify that GMP and MPFR are correctly compiled with "make check". Recent versions are miscompiled on SPARC/Solaris by GCC 4.3.x for x < 3 or 4. The recommended versions (GMP 4.3.2, MPFR 2.4.2, MPC 0.8.1) also work fine if compiled by the latest GCC 4.3.x compilers (or compilers of later series). -- Eric Botcazou
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
>> Use GMP from the 4.2.x series and MPFR from the 2.3.x series. Or do >> not build these libraries in-tree. > > Yes, and verify that GMP and MPFR are correctly compiled with > "make check". Recent versions are miscompiled on SPARC/Solaris > by GCC 4.3.x for x < 3 or 4. > > The recommended versions (GMP 4.3.2, MPFR 2.4.2, MPC 0.8.1) also > work fine if compiled by the latest GCC 4.3.x compilers (or > compilers of later series). === gcc Summary === # of expected passes57009 # of unexpected failures67 # of unexpected successes 7 # of expected failures 197 # of unsupported tests 518 === g++ Summary === # of expected passes20118 # of unexpected failures29 # of unexpected successes 4 # of expected failures 158 # of unsupported tests 136 Dennis
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
> === gcc Summary === > > # of expected passes57009 > # of unexpected failures67 > # of unexpected successes 7 > # of expected failures 197 > # of unsupported tests 518 > > === g++ Summary === > > # of expected passes20118 > # of unexpected failures29 > # of unexpected successes 4 > # of expected failures 158 > # of unsupported tests 136 I meant "make check" for GMP and MPFR, not for GCC. -- Eric Botcazou
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
>> === gcc Summary === >> >> # of expected passes57009 >> # of unexpected failures67 >> # of unexpected successes 7 >> # of expected failures 197 >> # of unsupported tests 518 >> >> === g++ Summary === >> >> # of expected passes20118 >> # of unexpected failures29 >> # of unexpected successes 4 >> # of expected failures 158 >> # of unsupported tests 136 > > I meant "make check" for GMP and MPFR, not for GCC. > did that too :-) -- Dennis
w#/*
Äú ºÃ £¡ ±¾¹«Ë¾ÏÖÓи÷ÐÐÒµ¹ú/µØË° ÔöÖµ¡£ÆÕͨ¡£½¨Öþ£¬¹ã¸æ¡£·þÎñ¡£¹¤³Ì¡£ÔËÊäµÈа淢 Øâ ´ú¿ª ¿ÉÓúø¶¿î ´¹Ñ¯µç»° 13528406753 ÁõÉú
Re: GCC 4.5.1 Release Candidate available from gcc.gnu.org
> Dennis Clarke writes: > >> FYI , bug 44455 is a show stopper in the Solaris world. >> >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44455 > > This is > > bootstrap/44455 GCC fails to build if MPFR 3.0.0 (Release Candidate) is > used > > Why would this be a showstopper? Who forces you to build and install > mpfr 3.0.0? OpenSolaris comes with 2.4.1, and older versions don't > have mpfr bundled at all, so just use a version that works with GCC, > building it in-tree if you must. > Sorted things out and all is well now : http://gcc.gnu.org/ml/gcc-testresults/2010-07/msg02266.html Thanks all for the lectures/pointers/edification :-) -- Dennis Clarke dcla...@opensolaris.ca <- Email related to the open source Solaris dcla...@blastwave.org <- Email related to open source for Solaris