This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: More MUST_NOT_THROW region cleanups
Diego Novillo wrote:
> On Mon, Mar 30, 2009 at 12:57, Jan Hubicka <hubicka@ucw.cz> wrote:
>
>> The patch eliminates about half of the regions on tramp3d saving
>
> Nice.
>
>> + /* MUST_NOT_THROW regions without local handler are all the same; they
>> + trigger terminate call in runtime.
>> + MUST_NOT_THROW handled locally can differ in debug info associated
>> + to std::terminate () call or if one is comming from Java and other
>
> s/comming/coming/
>
>> + from C++ whether they call terminate or abort.
>> +
>> + We merge all runtime handler MUST_NOT_THROW region into single
>
> I can't parse this.
We merge all MUST_NOT_THROW regions handled by the run-time into one.
>> + Merging of local receivers can not be done without redirecting CFG
>> + and is job for crossjumping that can decide whether cleanup really
>> + is the same. */
>
> Nor this.
Merging of locally handled regions needs changes to the CFG.
Crossjumping should take care of this, by looking at the actual code and
ensuring that the cleanup actions are really the same.
> OK otherwise.
Almost:
> +/* Splice REGION from the region tree and replace it by OUTER etc. */
s/OUTER/REPLACE/
> +/* Splice REGION from the region tree etc. */
Adding "and replace it by the outer region" here.
Paolo