This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] PR63404, gcc 5 miscompiles linux block layer
- From: Jeff Law <law at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>, Jiong Wang <jiong dot wang at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 10 Oct 2014 11:00:54 -0600
- Subject: Re: [PATCH] PR63404, gcc 5 miscompiles linux block layer
- Authentication-results: sourceware.org; auth=none
- References: <5429A102 dot 4000602 at arm dot com> <5429A5D9 dot 9040404 at redhat dot com> <5429B204 dot 7040200 at arm dot com> <542A2FC5 dot 4020605 at redhat dot com> <542AC02D dot 70508 at arm dot com> <542ADA9D dot 8070709 at redhat dot com> <CAAfDdZ0ti4nfkOL1qTHTtsgpYLCmC5NQcM=_GEBFfJHpcx+XCw at mail dot gmail dot com> <543558B8 dot 3060006 at arm dot com> <54380267 dot 8030705 at redhat dot com> <54380BAF dot 9000602 at arm dot com> <54380ED3 dot 1020203 at redhat dot com>
On 10/10/14 10:52, Richard Henderson wrote:
I missed that message. Interesting.
I wonder what kind of fallout there would be from changing LO_SUM to
RTX_BIN_ARITH, which is what it should have been all along.
My guess is that someone looked at HIGH being RTX_CONST_OBJ and thought that
LO_SUM should also be a kind of object too.
Most likely. One could even make an argument that LO_SUM should be a
constant, but that's a more intrusive change.
But it's really a lot more like a
kind of PLUS. If instead we had a LOW to match HIGH it would have been
Right. In fact, I believe at the hardware level it's typically
implemented as addition.
Jeff