On Thu, Apr 07, 2022 at 03:00:14PM +0200, Jakub Jelinek wrote:
> On Thu, Apr 07, 2022 at 06:09:52AM -0500, Segher Boessenkool wrote:
> > On Thu, Mar 03, 2022 at 10:11:32AM +0800, Kewen.Lin wrote:
> > > As PR103623 shows, it's a regression failure due to new built-in
> > > function framework, previously we guard __builtin_{un,}pack_{longdouble,
> > > ibm128} built-in functions under hard float, so they are unavailable
> > > with the given configuration.  While with new bif infrastructure, it
> > > becomes available and gets ICE due to incomplete supports.
> > > 
> > > Segher and Peter pointed out that we should make them available with
> > > soft float, I agree we can extend them to cover both soft and hard
> > > float.  But considering it's stage 4 now and this regression is
> > > classified as P1, also the previous behavior requiring hard float
> > > aligns with what document [1] says, I guess it may be a good idea to
> > > fix it with the attached small patch to be consistent with the previous
> > > behavior.  Then we can extend the functionality in upcoming stage 1.
> > 
> > Or you could just not take away the existing functionality.
> 
> Have those builtins ever worked with 64-bit soft-float?

I thought they did right now, but apparently not :-(

> When I try e.g. gcc 11 on the #c0 testcase from the PR, I get:

> >From what I can see, those builtins were using:

Yes, and we fixed that bug.

Now everything is fine until the insn

(insn 6 5 8 2 (set (reg/v:DF 117 [ x0 ])
        (unspec:DF [
                (reg:TF 119)
                (const_int 0 [0])
            ] UNSPEC_UNPACK_128BIT)) "103623.c":11:15 1067 {unpacktf_nodm}
     (expr_list:REG_DEAD (reg:TF 119)
        (expr_list:REG_EQUAL (unspec:DF [
                    (const_double:TF 1.152921504606846978e+18 [0x0.8000000000000
01p+61])
                    (const_int 0 [0])
                ] UNSPEC_UNPACK_128BIT)
            (nil))))

no longer recognises during combine.  It did in earlier passes, and
nothing changed as far as I can see.  Pretty baffled.


Segher

Reply via email to