On Wed, Oct 03, 2012 at 11:26:09AM -0700, Dehao Chen wrote:
> @@ -6340,6 +6341,20 @@ move_block_to_fn (struct function *dest_cfun, basi
>           SET_USE (use, replace_ssa_name (op, d->vars_map, dest_cfun->decl));
>       }
>  
> +      for (i = 0; i < EDGE_COUNT (bb->preds); i++)
> +     {
> +       location_t locus = gimple_phi_arg_location (phi, i);
> +       if (locus != UNKNOWN_LOCATION)
> +         {
> +           tree block = LOCATION_BLOCK (locus);
> +           if (d->orig_block == NULL_TREE
                  || block == d->orig_block)
> +             gimple_phi_arg_set_location (phi, i, d->new_block ?
> +                 COMBINE_LOCATION_DATA (line_table, locus, d->new_block) :
> +                 LOCATION_LOCUS (locus));
> +         }
> +     }
> +

The formatting is wrong on this.  ? and : would need to go to the next line
and even the indentation of part of an argument is weird.
IMHO better just do:
              if (d->orig_block == NULL_TREE || block == d->orig_block)
                {
                  if (d->new_block)
                    locus = COMBINE_LOCATION_DATA (line_table, locus,
                                                   d->new_block);
                  else
                    locus = LOCATION_LOCUS (locus);
                  gimple_phi_arg_set_location (phi, i, locus);
                }

It will be far more readable.
And/or to decrease indentation level you could do
          if (locus == UNKNOWN_LOCATION)
            continue;
          block = LOCATION_BLOCK (locus);
          ...

        Jakub

Reply via email to