Hal Finkel via llvm-dev
2016-Sep-07 12:40 UTC
[llvm-dev] [PowerPC] Recent branch too far breakage
----- Original Message -----> From: "Hal Finkel via llvm-dev" <llvm-dev at lists.llvm.org> > To: "Richard Pennington" <rich at pennware.com> > Cc: llvm-dev at lists.llvm.org > Sent: Wednesday, September 7, 2016 7:37:50 AM > Subject: Re: [llvm-dev] [PowerPC] Recent branch too far breakage > > Hi Rich, > > It is hard to tell, but there was a bug fix made to the branch > relaxation code; perhaps the fix was not bug free -- Could this have > been caused by r280626?Is this a release or a debug build? -Hal> > -Hal > > ----- Original Message ----- > > From: "Richard Pennington via llvm-dev" <llvm-dev at lists.llvm.org> > > To: llvm-dev at lists.llvm.org > > Sent: Wednesday, September 7, 2016 7:29:25 AM > > Subject: [llvm-dev] [PowerPC] Recent branch too far breakage > > > > I'm using a recent revision of TOT (280704) to build clang/LLVM for > > PowerPC64 little endian. I'm getting an assembler error when > > building > > PPCInstPrinter.cpp: > > > > The error is: > > > > /tmp/PPCInstPrinter-84c835.s: Assembler messages: > > /tmp/PPCInstPrinter-84c835.s:7671: Error: operand out of range > > (0x0000000000008004 is not between 0xffffffffffff8000 and > > 0x0000000000007ffc) > > > > The offending line is the bne branch in this snippet: > > > > .LBB24_787: > > ld 3, 16(29) > > ld 4, 24(29) > > sub 4, 4, 3 > > rldicl 4, 4, 60, 4 > > cmplwi 0, 4, 3 > > bne 0, .LBB24_2630 > > > > Could this be because of a recent change in the PowerPC code > > generator > > or just because PPCInstPrinter.cpp changed a bit and exposed a > > pre-existing bug? > > > > > > -Rich > > > > _______________________________________________ > > LLVM Developers mailing list > > llvm-dev at lists.llvm.org > > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-- Hal Finkel Assistant Computational Scientist Leadership Computing Facility Argonne National Laboratory
Richard Pennington via llvm-dev
2016-Sep-07 13:00 UTC
[llvm-dev] [PowerPC] Recent branch too far breakage
On 09/07/2016 07:40 AM, Hal Finkel wrote:> ----- Original Message ----- >> From: "Hal Finkel via llvm-dev" <llvm-dev at lists.llvm.org> >> To: "Richard Pennington" <rich at pennware.com> >> Cc: llvm-dev at lists.llvm.org >> Sent: Wednesday, September 7, 2016 7:37:50 AM >> Subject: Re: [llvm-dev] [PowerPC] Recent branch too far breakage >> >> Hi Rich, >> >> It is hard to tell, but there was a bug fix made to the branch >> relaxation code; perhaps the fix was not bug free -- Could this have >> been caused by r280626? > Is this a release or a debug build? > > -HalHi Hal, This occurred between r279916 and r280704, so it could have been r280626. I'll try to revert it in my code and see if the problem goes away. It is a release build. -Rich>> -Hal >> >> ----- Original Message ----- >>> From: "Richard Pennington via llvm-dev" <llvm-dev at lists.llvm.org> >>> To: llvm-dev at lists.llvm.org >>> Sent: Wednesday, September 7, 2016 7:29:25 AM >>> Subject: [llvm-dev] [PowerPC] Recent branch too far breakage >>> >>> I'm using a recent revision of TOT (280704) to build clang/LLVM for >>> PowerPC64 little endian. I'm getting an assembler error when >>> building >>> PPCInstPrinter.cpp: >>> >>> The error is: >>> >>> /tmp/PPCInstPrinter-84c835.s: Assembler messages: >>> /tmp/PPCInstPrinter-84c835.s:7671: Error: operand out of range >>> (0x0000000000008004 is not between 0xffffffffffff8000 and >>> 0x0000000000007ffc) >>> >>> The offending line is the bne branch in this snippet: >>> >>> .LBB24_787: >>> ld 3, 16(29) >>> ld 4, 24(29) >>> sub 4, 4, 3 >>> rldicl 4, 4, 60, 4 >>> cmplwi 0, 4, 3 >>> bne 0, .LBB24_2630 >>> >>> Could this be because of a recent change in the PowerPC code >>> generator >>> or just because PPCInstPrinter.cpp changed a bit and exposed a >>> pre-existing bug? >>> >>> >>> -Rich >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> llvm-dev at lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>
Hal Finkel via llvm-dev
2016-Oct-03 04:20 UTC
[llvm-dev] [PowerPC] Recent branch too far breakage
Hi Rich, r283086 should fix this. Thanks again, Hal ----- Original Message -----> From: "Richard Pennington" <rich at pennware.com> > To: "Hal Finkel" <hfinkel at anl.gov> > Cc: llvm-dev at lists.llvm.org > Sent: Wednesday, September 7, 2016 8:00:12 AM > Subject: Re: [llvm-dev] [PowerPC] Recent branch too far breakage > > On 09/07/2016 07:40 AM, Hal Finkel wrote: > > ----- Original Message ----- > >> From: "Hal Finkel via llvm-dev" <llvm-dev at lists.llvm.org> > >> To: "Richard Pennington" <rich at pennware.com> > >> Cc: llvm-dev at lists.llvm.org > >> Sent: Wednesday, September 7, 2016 7:37:50 AM > >> Subject: Re: [llvm-dev] [PowerPC] Recent branch too far breakage > >> > >> Hi Rich, > >> > >> It is hard to tell, but there was a bug fix made to the branch > >> relaxation code; perhaps the fix was not bug free -- Could this > >> have > >> been caused by r280626? > > Is this a release or a debug build? > > > > -Hal > > Hi Hal, > > This occurred between r279916 and r280704, so it could have been > r280626. I'll try to revert it in my code and see if the problem goes > away. > It is a release build. > > -Rich > >> -Hal > >> > >> ----- Original Message ----- > >>> From: "Richard Pennington via llvm-dev" <llvm-dev at lists.llvm.org> > >>> To: llvm-dev at lists.llvm.org > >>> Sent: Wednesday, September 7, 2016 7:29:25 AM > >>> Subject: [llvm-dev] [PowerPC] Recent branch too far breakage > >>> > >>> I'm using a recent revision of TOT (280704) to build clang/LLVM > >>> for > >>> PowerPC64 little endian. I'm getting an assembler error when > >>> building > >>> PPCInstPrinter.cpp: > >>> > >>> The error is: > >>> > >>> /tmp/PPCInstPrinter-84c835.s: Assembler messages: > >>> /tmp/PPCInstPrinter-84c835.s:7671: Error: operand out of range > >>> (0x0000000000008004 is not between 0xffffffffffff8000 and > >>> 0x0000000000007ffc) > >>> > >>> The offending line is the bne branch in this snippet: > >>> > >>> .LBB24_787: > >>> ld 3, 16(29) > >>> ld 4, 24(29) > >>> sub 4, 4, 3 > >>> rldicl 4, 4, 60, 4 > >>> cmplwi 0, 4, 3 > >>> bne 0, .LBB24_2630 > >>> > >>> Could this be because of a recent change in the PowerPC code > >>> generator > >>> or just because PPCInstPrinter.cpp changed a bit and exposed a > >>> pre-existing bug? > >>> > >>> > >>> -Rich > >>> > >>> _______________________________________________ > >>> LLVM Developers mailing list > >>> llvm-dev at lists.llvm.org > >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >>> > >> _______________________________________________ > >> LLVM Developers mailing list > >> llvm-dev at lists.llvm.org > >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > >> > >-- Hal Finkel Lead, Compiler Technology and Programming Languages Leadership Computing Facility Argonne National Laboratory