public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 1/2] Support get_range_query with a nullptr argument
@ 2023-02-17 21:45 Andrew Pinski
  2023-02-17 21:45 ` [PATCH 2/2] Remove #if GIMPLE around 1 - a pattern Andrew Pinski
  2023-02-20  8:01 ` [PATCH 1/2] Support get_range_query with a nullptr argument Richard Biener
  0 siblings, 2 replies; 4+ messages in thread
From: Andrew Pinski @ 2023-02-17 21:45 UTC (permalink / raw)
  To: gcc-patches; +Cc: Andrew Pinski

get_range_query didn't support a nullptr argument
before and would crash.
See also the thread at
https://inbox.sourceware.org/gcc/4f6718af-e17a-41ef-a886-f45e4ac3d7a4@redhat.com/T/

OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.

gcc/ChangeLog:

	* value-query.h (get_range_query): Return the global ranges
	for a nullptr func.
---
 gcc/value-query.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/value-query.h b/gcc/value-query.h
index 63878968118..2d7bf8fcf33 100644
--- a/gcc/value-query.h
+++ b/gcc/value-query.h
@@ -140,7 +140,7 @@ get_global_range_query ()
 ATTRIBUTE_RETURNS_NONNULL inline range_query *
 get_range_query (const struct function *fun)
 {
-  return fun->x_range_query ? fun->x_range_query : &global_ranges;
+  return (fun && fun->x_range_query) ? fun->x_range_query : &global_ranges;
 }
 
 // Query the global range of NAME in function F.  Default to cfun.
-- 
2.17.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 2/2] Remove #if GIMPLE around 1 - a pattern
  2023-02-17 21:45 [PATCH 1/2] Support get_range_query with a nullptr argument Andrew Pinski
@ 2023-02-17 21:45 ` Andrew Pinski
  2023-02-17 22:12   ` Jeff Law
  2023-02-20  8:01 ` [PATCH 1/2] Support get_range_query with a nullptr argument Richard Biener
  1 sibling, 1 reply; 4+ messages in thread
From: Andrew Pinski @ 2023-02-17 21:45 UTC (permalink / raw)
  To: gcc-patches; +Cc: Andrew Pinski

This removes the "#if GIMPLE" around the
"1 - a" pattern as ssa_name_has_boolean_range
(get_range_query) works when cfun is a nullptr.

OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.

gcc/ChangeLog:

	* match.pd: Remove #if GIMPLE around the
	"1 - a" pattern
---
 gcc/match.pd | 2 --
 1 file changed, 2 deletions(-)

diff --git a/gcc/match.pd b/gcc/match.pd
index e7b700349a6..e352bd422f5 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -1732,7 +1732,6 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
  (if (!FIXED_POINT_TYPE_P (type))
  (plus @0 (negate @1))))
 
-#if GIMPLE
 /* 1 - a is a ^ 1 if a had a bool range. */
 /* This is only enabled for gimple as sometimes
    cfun is not set for the function which contains
@@ -1743,7 +1742,6 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
   (if (INTEGRAL_TYPE_P (type)
        && ssa_name_has_boolean_range (@1))
    (bit_xor @1 @0)))
-#endif
 
 /* Other simplifications of negation (c.f. fold_negate_expr_1).  */
 (simplify
-- 
2.17.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 2/2] Remove #if GIMPLE around 1 - a pattern
  2023-02-17 21:45 ` [PATCH 2/2] Remove #if GIMPLE around 1 - a pattern Andrew Pinski
@ 2023-02-17 22:12   ` Jeff Law
  0 siblings, 0 replies; 4+ messages in thread
From: Jeff Law @ 2023-02-17 22:12 UTC (permalink / raw)
  To: Andrew Pinski, gcc-patches



On 2/17/23 14:45, Andrew Pinski via Gcc-patches wrote:
> This removes the "#if GIMPLE" around the
> "1 - a" pattern as ssa_name_has_boolean_range
> (get_range_query) works when cfun is a nullptr.
> 
> OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.
> 
> gcc/ChangeLog:
> 
> 	* match.pd: Remove #if GIMPLE around the
> 	"1 - a" pattern
Both patches in this series are OK.  They're really just a slight 
refinement on a prior approved patch that addressed a regression.

jeff

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] Support get_range_query with a nullptr argument
  2023-02-17 21:45 [PATCH 1/2] Support get_range_query with a nullptr argument Andrew Pinski
  2023-02-17 21:45 ` [PATCH 2/2] Remove #if GIMPLE around 1 - a pattern Andrew Pinski
@ 2023-02-20  8:01 ` Richard Biener
  1 sibling, 0 replies; 4+ messages in thread
From: Richard Biener @ 2023-02-20  8:01 UTC (permalink / raw)
  To: Andrew Pinski; +Cc: gcc-patches

On Fri, Feb 17, 2023 at 10:46 PM Andrew Pinski via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> get_range_query didn't support a nullptr argument
> before and would crash.
> See also the thread at
> https://inbox.sourceware.org/gcc/4f6718af-e17a-41ef-a886-f45e4ac3d7a4@redhat.com/T/
>
> OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.

OK.

> gcc/ChangeLog:
>
>         * value-query.h (get_range_query): Return the global ranges
>         for a nullptr func.
> ---
>  gcc/value-query.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/value-query.h b/gcc/value-query.h
> index 63878968118..2d7bf8fcf33 100644
> --- a/gcc/value-query.h
> +++ b/gcc/value-query.h
> @@ -140,7 +140,7 @@ get_global_range_query ()
>  ATTRIBUTE_RETURNS_NONNULL inline range_query *
>  get_range_query (const struct function *fun)
>  {
> -  return fun->x_range_query ? fun->x_range_query : &global_ranges;
> +  return (fun && fun->x_range_query) ? fun->x_range_query : &global_ranges;
>  }
>
>  // Query the global range of NAME in function F.  Default to cfun.
> --
> 2.17.1
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-02-20 10:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-17 21:45 [PATCH 1/2] Support get_range_query with a nullptr argument Andrew Pinski
2023-02-17 21:45 ` [PATCH 2/2] Remove #if GIMPLE around 1 - a pattern Andrew Pinski
2023-02-17 22:12   ` Jeff Law
2023-02-20  8:01 ` [PATCH 1/2] Support get_range_query with a nullptr argument Richard Biener

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).