This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH, rtl-optimization]: Fix PR rtl-optimization/33638
Eric Botcazou <firstname.lastname@example.org> writes:
> * dse.c (struct insn_info): Add 'frame_read' field.
> (scan_insn): For the call to a const function, set frame_read if
> reload has been run.
> If the insn reads the frame, remove the frame related stores from
> the list of local active stores.
> (scan_reads_nospill): Likewise.
Note that a const call only reads the frame if there is a MEM in
CALL_INSN_FUNCTION_USAGE. On many platforms a const call will not
normally read the frame.
Otherwise looks reasonable to me.
I have the feeling that your previous patch has more or less wiped out
DSE for const calls. Does DSE still actually eliminate any stores in
the presence of a const call?