On Wed, Apr 10, 2024 at 8:24 AM Kewen.Lin <li...@linux.ibm.com> wrote:
>
> Hi,
>
> pr113359-2_*.c define a struct having unsigned long type
> members ay and az which have 4 bytes size at -m32, while
> the related constants CL1 and CL2 used for equality check
> are always 8 bytes, it makes compiler consider the below
>
>   69   if (a.ay != CL1)
>   70     __builtin_abort ();
>
> always to abort and optimize away the following call to
> getb, which leads to the expected wpa dumping on
> "Semantic equality" missing.
>
> This patch is to modify the types with unsigned long long
> accordingly.  Tested well on powerpc64-linux-gnu.
>
> Is it ok for trunk?

OK

> BR,
> Kewen
> -----
>         PR testsuite/114662
>
> gcc/testsuite/ChangeLog:
>
>         * gcc.dg/lto/pr113359-2_0.c: Use unsigned long long instead of
>         unsigned long.
>         * gcc.dg/lto/pr113359-2_1.c: Likewise.
> ---
>  gcc/testsuite/gcc.dg/lto/pr113359-2_0.c | 8 ++++----
>  gcc/testsuite/gcc.dg/lto/pr113359-2_1.c | 8 ++++----
>  2 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/gcc/testsuite/gcc.dg/lto/pr113359-2_0.c 
> b/gcc/testsuite/gcc.dg/lto/pr113359-2_0.c
> index 8b2d5bdfab2..8495667599d 100644
> --- a/gcc/testsuite/gcc.dg/lto/pr113359-2_0.c
> +++ b/gcc/testsuite/gcc.dg/lto/pr113359-2_0.c
> @@ -8,15 +8,15 @@
>  struct SA
>  {
>    unsigned int ax;
> -  unsigned long ay;
> -  unsigned long az;
> +  unsigned long long ay;
> +  unsigned long long az;
>  };
>
>  struct SB
>  {
>    unsigned int bx;
> -  unsigned long by;
> -  unsigned long bz;
> +  unsigned long long by;
> +  unsigned long long bz;
>  };
>
>  struct ZA
> diff --git a/gcc/testsuite/gcc.dg/lto/pr113359-2_1.c 
> b/gcc/testsuite/gcc.dg/lto/pr113359-2_1.c
> index 61bc0547981..8320f347efe 100644
> --- a/gcc/testsuite/gcc.dg/lto/pr113359-2_1.c
> +++ b/gcc/testsuite/gcc.dg/lto/pr113359-2_1.c
> @@ -5,15 +5,15 @@
>  struct SA
>  {
>    unsigned int ax;
> -  unsigned long ay;
> -  unsigned long az;
> +  unsigned long long ay;
> +  unsigned long long az;
>  };
>
>  struct SB
>  {
>    unsigned int bx;
> -  unsigned long by;
> -  unsigned long bz;
> +  unsigned long long by;
> +  unsigned long long bz;
>  };
>
>  struct ZA
> --
> 2.43.0

Reply via email to