This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [GIMPLE FE] add fma_expr
- From: Richard Biener <rguenther at suse dot de>
- To: Kyrill Tkachov <kyrylo dot tkachov at foss dot arm dot com>
- Cc: Prathamesh Kulkarni <prathamesh dot kulkarni at linaro dot org>, gcc Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 21 Feb 2017 09:56:01 +0100 (CET)
- Subject: Re: [GIMPLE FE] add fma_expr
- Authentication-results: sourceware.org; auth=none
- References: <CAAgBjMkiiBK=z-+jA1F96fDV0A9oh6H_yYmQ7aHG43DO49Vyig@mail.gmail.com> <58AB00CB.6080306@foss.arm.com> <alpine.LSU.2.20.1702210942280.8538@zhemvz.fhfr.qr> <58AC000F.9020708@foss.arm.com>
On Tue, 21 Feb 2017, Kyrill Tkachov wrote:
>
> On 21/02/17 08:43, Richard Biener wrote:
> > On Mon, 20 Feb 2017, Kyrill Tkachov wrote:
> >
> > > Hi Prathamesh,
> > >
> > > On 16/02/17 12:47, Prathamesh Kulkarni wrote:
> > > > Hi Richard,
> > > > The attached patch handles fma_expr in gimple-fe.
> > > > Does it look OK ?
> > > >
> > > > Thanks,
> > > > Prathamesh
> > > I see the new test ICEing on aarch64-none-elf.
> > FMA_EXPR relies on either target support or library support so the
> > testcase should be appropriately limited to targets supporting that.
> > { target c99_runtime } maybe.
>
> That does skip it on aarch64-none-elf, but is ICEing the expected behaviour in
> this case?
> Shouldn't the frontend give an error message of some kind?
Well, IMHO it's not the purpose of the FE to reject all invalid IL. We
have verifiers for this.
> Or is the gimple frontend considered an internal feature and any errors in
> input are expected
> to cause an ICE?
Yes, mostly. The FE itself shouldn't ICE.
Richard.
> Thanks,
> Kyrill
>
> > Richard.
> >
> > > Thanks,
> > > Kyrill
> > >
> > > ------------------------------------------
> > >
> > > $DIR/build-aarch64/obj/gcc2/gcc/xgcc -B$DIR/build-aarch64/obj/gcc2/gcc/
> > > $DIR/gcc/gcc/testsuite/gcc.dg/gimplefe-26.c -fno-diagnos
> > > tics-show-caret -fdiagnostics-color=never -O -fgimple
> > > -fdump-tree-ssa-gimple
> > > -S -specs=aem-ve.specs -o gimplefe-26.s
> > > $DIR/gcc/gcc/testsuite/gcc.dg/gimplefe-26.c: In function 'foo_3':
> > > $DIR/gcc/gcc/testsuite/gcc.dg/gimplefe-26.c:5:18: internal compiler error:
> > > in
> > > expand_expr_real_2, at expr.c:8705
> > > $DIR/gcc/gcc/testsuite/gcc.dg/gimplefe-26.c:14:1: note: in expansion of
> > > macro
> > > 'foo'
> > > 0x84e7a3 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
> > > expand_modifier)
> > > $DIR/gcc/gcc/expr.c:8705
> > > 0x838bd6 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
> > > expand_modifier, rtx_def**, bool)
> > > $DIR/gcc/gcc/expr.c:9730
> > > 0x83f0f5 expand_expr_real(tree_node*, rtx_def*, machine_mode,
> > > expand_modifier,
> > > rtx_def**, bool)
> > > $DIR/gcc/gcc/expr.c:8072
> > > 0x73ab2f expand_expr
> > > $DIR/gcc/gcc/expr.h:276
> > > 0x73ab2f expand_return
> > > $DIR/gcc/gcc/cfgexpand.c:3526
> > > 0x73ab2f expand_gimple_stmt_1
> > > $DIR/gcc/gcc/cfgexpand.c:3610
> > > 0x73ab2f expand_gimple_stmt
> > > $DIR/gcc/gcc/cfgexpand.c:3737
> > > 0x73d55b expand_gimple_basic_block
> > > $DIR/gcc/gcc/cfgexpand.c:5744
> > > 0x740b14 execute
> > > $DIR/gcc/gcc/cfgexpand.c:6357
> > > Please submit a full bug report,
> > > with preprocessed source if appropriate.
> > > Please include the complete backtrace with any bug report.
> > > See <https://gcc.gnu.org/bugs/> for instructions.
> > >
> > >
>
>
--
Richard Biener <rguenther@suse.de>
SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nuernberg)