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