https://bugs.kde.org/show_bug.cgi?id=401828

--- Comment #6 from Will Schmidt <will_schm...@vnet.ibm.com> ---
(In reply to Will Schmidt from comment #4)
> So, it looks like the correct value is in the register, we are losing it
> somewhere in the cast from float to (raw/hex) on the call to printf.
> I'm undecided whether this is simply an improper cast, or if there is
> something additionally wrong here.
> 
> tentative patch (attached) while I think on this a bit more...

brain-dump update.

I've bisected GCC to determine where the behavior changed.  looks like the gcc
commit referenced here exposed this issue.    A sniff test suggests 401827 was
also triggered by the same gcc change.

  commit 93dabbb66cf3e2495c382451f85a0c17c3c326eb (HEAD, refs/bisect/bad)
  Author: meissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
  Date:   Tue Sep 26 18:04:37 2017 +0000

    2017-09-26  Michael Meissner  <meiss...@linux.vnet.ibm.com>

            * config/rs6000/rs6000.md (movsi_from_sf): Adjust code to
            eliminate doing a 32-bit shift right or vector extract after doing
            XSCVDPSPN.  Use zero_extendsidi2 instead of p8_mfvsrd_4_disf to
            move the value to the GPRs.
            (movdi_from_sf_zero_ext): Likewise.
            (reload_gpr_from_vsxsf): Likewise.
            (p8_mfvsrd_4_disf): Delete, no longer used.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to