> Am 18.12.2024 um 21:28 schrieb Jakub Jelinek <ja...@redhat.com>:
> 
> On Wed, Dec 18, 2024 at 01:19:43PM +0100, Andreas Schwab wrote:
>>> On Dez 12 2024, Jakub Jelinek wrote:
>>> 
>>> The intent was to test %cN because %N doesn't DTRT on various targets.
>>> I have a patch to add %ccN support which should then work even on riscv
>>> hopefully, but unfortunately it hasn't been fully reviewed yet.
>> 
>> That didn't change toplevel-asm-1, so the failure remains.
> 
> Yes, I've only committed what was approved.
> 
> The following patch ought to fix this (and if there are other targets which
> don't really support %cN for SYMBOL_REFs even with -fno-pic, they can be
> added there too; I think it is useful to test %cN on the targets where it
> works though).
> 
> Tested on x86_64-linux and with cross to riscv64-linux, ok for trunk?

Ok

> 2024-12-18  Jakub Jelinek  <ja...@redhat.com>
> 
>    * c-c++-common/toplevel-asm-1.c: Use %cc3 %cc4 instead of %c3 %c4
>    on riscv.
> 
> --- gcc/testsuite/c-c++-common/toplevel-asm-1.c.jj    2024-12-05 
> 09:24:54.788005777 +0100
> +++ gcc/testsuite/c-c++-common/toplevel-asm-1.c    2024-12-18 
> 19:06:33.567248675 +0100
> @@ -8,7 +8,12 @@ enum E { E0, E1 = sizeof (struct S) + 15
> int v[42];
> void foo (void) {}
> 
> +/* Not all targets can use %cN even in non-pic code.  */
> +#if defined(__riscv)
> +asm ("# %0 %1 %2 %cc3 %cc4 %5 %% %="
> +#else
> asm ("# %0 %1 %2 %c3 %c4 %5 %% %="
> +#endif
>      :: "i" (sizeof (struct S)),
>    "i" (__builtin_offsetof (struct S, c)),
>    "i" (E1),
> 
> 
>    Jakub
> 

Reply via email to