Hi,

On Fri, Oct 28, 2016 at 02:03:47PM +1100, kugan wrote:
>
> ...snip...
> 
> I have also separated the constant parameter conversion out and posted as
> https://gcc.gnu.org/ml/gcc-patches/2016-10/msg02309.html. This is now
> handling just unary pass-through jump functions.
> 
> Bootstrapped and regression tested on x86_64-linux-gnu with no new
> regressions.
> 
> Is this OK for trunk?
> 
> Thanks,
> Kugan
> 
> gcc/testsuite/ChangeLog:
> 
> 2016-10-28  Kugan Vivekanandarajah  <kug...@linaro.org>
> 
>       * gcc.dg/ipa/vrp7.c: New test.
> 
> 
> gcc/ChangeLog:
> 
> 2016-10-28  Kugan Vivekanandarajah  <kug...@linaro.org>
> 
>       * ipa-cp.c (ipa_get_jf_pass_through_result): Handle unary expressions.
>       (propagate_vr_accross_jump_function): Likewise.
>       * ipa-prop.c (ipa_set_jf_unary_pass_through): New.
>       (load_from_param_1): New.
>       (load_from_unmodified_param): Factor common part into load_from_param_1.
>       (load_from_param): New.
>       (compute_complex_assign_jump_func): Handle unary expressions.
>       (ipa_write_jump_function): Likewise.
>       (ipa_read_jump_function): Likewise.
> 
> 
> > Patch is OK with changes Martin suggested.
> > 
> > Honza
> > 

> From b7d9b413951ba20d156a7801640cc7d7bc57c062 Mon Sep 17 00:00:00 2001
> From: Kugan Vivekanandarajah <kugan.vivekanandara...@linaro.org>
> Date: Fri, 28 Oct 2016 10:16:38 +1100
> Subject: [PATCH 2/2] add unary jump function
> 
> ---
>  gcc/ipa-cp.c                    | 39 +++++++++++++++---
>  gcc/ipa-prop.c                  | 89 
> +++++++++++++++++++++++++++++++++++------
>  gcc/testsuite/gcc.dg/ipa/vrp7.c | 32 +++++++++++++++
>  3 files changed, 142 insertions(+), 18 deletions(-)
>  create mode 100644 gcc/testsuite/gcc.dg/ipa/vrp7.c
> 
> diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
> index 9f28557..8fc95dd 100644
> --- a/gcc/ipa-cp.c
> +++ b/gcc/ipa-cp.c
> @@ -1225,13 +1225,21 @@ ipa_get_jf_pass_through_result (struct ipa_jump_func 
> *jfunc, tree input)
>      return NULL_TREE;
>  
>    if (TREE_CODE_CLASS (ipa_get_jf_pass_through_operation (jfunc))
> -      == tcc_comparison)
> -    restype = boolean_type_node;
> +      == tcc_unary)
> +    {
> +      res = fold_unary (ipa_get_jf_pass_through_operation (jfunc),
> +                     TREE_TYPE (input), input);
> +    }

Please do not put curly braces around a single statement.  Apart from
that, no objection from me.

Thanks,

Martin

Reply via email to