|
Message-ID: <108407b0-24ac-d3d3-43c1-f394ba6bbebe@linux.ibm.com> Date: Thu, 3 Dec 2020 17:53:52 +0100 From: Marius Hillenbrand <mhillen@...ux.ibm.com> To: musl@...ts.openwall.com Subject: Re: [PATCH] s390x: derive float_t from compiler or default to float On 12/2/20 8:13 PM, Rich Felker wrote: > On Wed, Dec 02, 2020 at 06:09:44PM +0100, Marius Hillenbrand wrote: >> On 12/2/20 5:01 PM, Rich Felker wrote: >>> On Wed, Dec 02, 2020 at 09:25:04AM -0500, Rich Felker wrote: [...] >>> I'm looking at >>> https://gcc.gnu.org/pipermail/gcc-patches/2020-November/560225.html >>> which seems to be what you're talking about, and don't understand how >>> it's intended to work. It looks like it's running a test for target >>> behavior on the host compiler (there is no target compiler at the >>> point this test is run). Looking again, I guess that's why it's under >>> a condition for build==host==target. >> >> Right, that's the patch. The check only applies to a "native build", >> with the assumption that the build environment is the same as the >> intended target environment. >> >>> What happens when cross >>> compiling? Do you get the old behavior unless manually setting >>> --disable-s390-excess-float-precision? >> >> When cross compiling, we get the new behavior (the setting starts at >> "auto", which is never resolved to yes or no; so the AC_DEFINE is left out). >> >> In any case, manually setting >> --enable/disable-s390-excess-float-precision takes precedence. > > FWIW this means building GCC 11 for any older version of glibc or musl > will give a broken configuration unless you pass > --disable-s390-excess-float-precision to configure. I'm not sure if > anything should be done about that; at least I might want to handle it > in mcm... I will look into handling cross compiles in a more differentiating way... > > In any case this probably means I should include your patch in this > release cycle so at least current version builds right. > > BTW is there a -m option to override at runtime in order to test both > behaviors, so you don't have to build a new GCC from scratch to do it? Yes, in the current GCC, -fexcess-precision=standard or fast switches between the two behaviors (i.e., both __FLT_EVAL_METHOD__ and emitted code; "fast" corresponds to the "new" behavior). Marius -- Marius Hillenbrand Linux on Z development IBM Deutschland Research & Development GmbH Vors. des Aufsichtsrats: Gregor Pillen / Geschäftsführung: Dirk Wittkopp Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.