On Wed, Jan 11, 2023 at 4:43 AM Jakub Jelinek <ja...@redhat.com> wrote: > > On Wed, Jan 11, 2023 at 04:27:11AM -0500, NightStrike wrote: > > On Wed, Jan 11, 2023 at 4:07 AM Jakub Jelinek <ja...@redhat.com> wrote: > > > > > > On Wed, Jan 11, 2023 at 03:58:40AM -0500, NightStrike wrote: > > > > On Fri, Jan 6, 2023 at 4:56 AM Jakub Jelinek via Gcc-patches > > > > <gcc-patches@gcc.gnu.org> wrote: > > > > > --- gcc/testsuite/gcc.dg/pr108308.c.jj 2023-01-06 10:43:45.793009294 > > > > > +0100 > > > > > +++ gcc/testsuite/gcc.dg/pr108308.c 2023-01-06 10:43:40.218090375 > > > > > +0100 > > > > > @@ -0,0 +1,39 @@ > > > > > +/* PR target/108308 */ > > > > > +/* { dg-do run { target { ilp32 || lp64 } } } */ > > > > > > > > This test passes on Windows, and I don't see anything in the test that > > > > jumps out at me as being affected by storing pointers in longs. Is > > > > there something I'm missing about why this would be disabled on LLP64? > > > > > > Maybe the test just needs int32, it didn't look important enough to me. > > > ilp32 || lp64 covers most of important targets. > > > > Could you change to int32plus, then? > > I think int32plus would be wrong, the testcase has some overlarge constant > and I doubt it would work correctly on the hypothetical target with 64-bit > ints where the overlarge constant would fit into int.
Ok, then: /* { dg-do run { target { { ilp32 || lp64 } || llp64 } } } */ or even: /* { dg-do run { target { ! int16 } } } */ Though I'd point out that in your original message, you only cared about the "important targets". I don't think nonexistent ones where sizeof(int) == 8 qualifies :)