This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [GIMPLE FE] add fma_expr


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)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]