https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87163

--- Comment #11 from Peter Bergner <bergner at gcc dot gnu.org> ---
(In reply to Bill Seurer from comment #8)
> Cross:
> ;;
> ;; Full RTL generated for this function:
> ;;
> (note 1 0 4 NOTE_INSN_DELETED)
> (note 4 1 2 2 [bb 2] NOTE_INSN_BASIC_BLOCK)
> (insn 2 4 3 2 (set (mem/c:IF (reg/f:DI 112 virtual-stack-vars) [1 a+0 S16
> A128])
>         (reg:IF 33 1 [ a ])) "./signbit-1.c":7:32 -1
>      (nil))

I can get close to this with a native build using -O2 -mcpu=power8 -mfloat128
-mabi=ieeelongdouble, but I still don't see an ICE:

void
do_signbit_if (__ibm128 a)
{
  volatile __ibm128 dst;
  dst = a;
}

Full rtl:
(insn 2 4 3 2 (set (reg/v:IF 117 [ aD.2831 ])
        (reg:IF 33 1 [ aD.2831 ])) "str.i":3:1 -1
     (nil))
(note 3 2 6 2 NOTE_INSN_FUNCTION_BEG)
(insn 6 3 0 2 (set (mem/v/c:IF (reg/f:DI 112 virtual-stack-vars) [1 dstD.2834+0
S16 A128])
        (reg/v:IF 117 [ aD.2831 ])) "str.i":5:7 -1
     (nil))

Reply via email to