Re: [patch] handle casesi dispatch insns in create_trace_edges

2019-08-13 Thread Olivier Hainque
Hi Jeff, > On 12 Aug 2019, at 16:48, Jeff Law wrote: > I think part of the reason I settled on rtl.c was because we're not > really just looking at the form, not doing any real "analysis". BUt I > think either location for the implementation is fine. The reference to pc_rtx and to single_set t

Re: [patch] handle casesi dispatch insns in create_trace_edges

2019-08-12 Thread Olivier Hainque
> On 12 Aug 2019, at 16:48, Jeff Law wrote: >> >> Searching for tablejump related prototypes in rtl.h led to >> declarations for functions in rtlanal.c. Wouldn't that be a >> better place than rtl.c for the new function ? > I think part of the reason I settled on rtl.c was because we're not >

Re: [patch] handle casesi dispatch insns in create_trace_edges

2019-08-12 Thread Jeff Law
On 8/12/19 2:54 AM, Olivier Hainque wrote: > Hi Jeff, > > Thanks for your prompt feedback :-) > >>>* rtl.h (tablejump_casesi_pattern): New helper, casesi >>>recognition logic originating from code in cfgrtl.c. >>>* cfgrtl.c (patch_jump_insn): Use it. >>>* dwarf2cfi

Re: [patch] handle casesi dispatch insns in create_trace_edges

2019-08-12 Thread Olivier Hainque
Hi Jeff, Thanks for your prompt feedback :-) >>* rtl.h (tablejump_casesi_pattern): New helper, casesi >>recognition logic originating from code in cfgrtl.c. >>* cfgrtl.c (patch_jump_insn): Use it. >>* dwarf2cfi.c (create_trace_edges): Handle casesi patterns. > Is

Re: [patch] handle casesi dispatch insns in create_trace_edges

2019-08-09 Thread Jeff Law
On 8/9/19 11:07 AM, Olivier Hainque wrote: > Hello, > > The attached patch is a proposal to plug a hole in create_trace_edges > (dwarf2cfi.c), which doesn't handle casesi dispatch insns. > > The visible misbehavior we observed is a failure in a cross configuration > of a recent acats test for Ada

[patch] handle casesi dispatch insns in create_trace_edges

2019-08-09 Thread Olivier Hainque
Hello, The attached patch is a proposal to plug a hole in create_trace_edges (dwarf2cfi.c), which doesn't handle casesi dispatch insns. The visible misbehavior we observed is a failure in a cross configuration of a recent acats test for Ada, a very simplified sketch of which is provided below. T