On May 28, 2024, Jason Merrill <ja...@redhat.com> wrote: > On 5/25/24 08:12, Alexandre Oliva wrote: >> On Apr 27, 2023, Alexandre Oliva <ol...@adacore.com> wrote: >>> On Apr 14, 2023, Alexandre Oliva <ol...@adacore.com> wrote: >>>> On Mar 23, 2023, Alexandre Oliva <ol...@adacore.com> wrote: >>>>> This patch introduces infrastructure for targets to add an offset to >>>>> the label issued after the call_insn to set the call_return_pc >>>>> attribute. This will be used on rs6000, that sometimes issues another >>>>> instruction after the call proper as part of a call insn. >> >>>> Ping? >>>> https://gcc.gnu.org/pipermail/gcc-patches/2023-March/614452.html >> Ping? >> Refreshed, retested on ppc64le-linux-gnu. Ok to install?
> I wonder about adding this information to REG_CALL_ARG_LOCATION, but > doing it this way also seems reasonable. I'm interested in Jakub's > input, but the patch is OK in a week if he doesn't get to it. Thanks, I'm putting it in, but I also look forward to Jakub's feedback. As for REG_CALL_ARG_LOCATION, I suppose that would be a decent place to hold it for the new hook to get at it, but since it can usually be computed directly, possibly with help of an attribute, adding extra rtl to call insns is probably unnecessary and undesirable. >> for gcc/ChangeLog >> * target.def (call_offset_return_label): New hook. >> * gcc/doc/tm.texi.in (TARGET_CALL_OFFSET_RETURN_LABEL): Add >> placeholder. >> * gcc/doc/tm.texi: Rebuild. >> * dwarf2out.cc (struct call_arg_loc_node): Record call_insn >> instad of call_arg_loc_note. >> (add_AT_lbl_id): Add optional offset argument. >> (gen_call_site_die): Compute and pass on a return pc offset. >> (gen_subprogram_die): Move call_arg_loc_note computation... >> (dwarf2out_var_location): ... from here. Set call_insn. -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer More tolerance and less prejudice are key for inclusion and diversity Excluding neuro-others for not behaving ""normal"" is *not* inclusive