I'm going a bit out-of-order to report a build failure in a test:

Mark Brown <[email protected]> writes:

> +// Recurse x20 times
> +.macro recurse id

I get an assembler error here:

gcc -nostdlib gcs-stress-thread.S -o 
/home/thiago.bauermann/src/linux/tools/testing/selftests/arm64/gcs/gcs-stress-thread
gcs-stress-thread.S: Assembler messages:
gcs-stress-thread.S:236: Error: unexpected end of file in macro `recurse' 
definition
make[2]: *** [Makefile:24: 
/home/thiago.bauermann/src/linux/tools/testing/selftests/arm64/gcs/gcs-stress-thread]
 Error 1

This is with gas from Ubuntu 22.04, which ships binutils 2.38.

> +function recurse\id
> +     stp     x29, x30, [sp, #-16]!
> +     mov     x29, sp
> +
> +     cmp     x20, 0
> +     beq     1f
> +     sub     x20, x20, 1
> +     bl      recurse\id
> +
> +1:
> +     ldp     x29, x30, [sp], #16
> +
> +     // Do a syscall immediately prior to returning to try to provoke
> +     // scheduling and migration at a point where coherency issues
> +     // might trigger.
> +     mov     x8, #__NR_getpid
> +     svc     #0
> +
> +     ret
> +endfunction
> +.endmacro
> +
> +// Generate and use two copies so we're changing the GCS contents
> +recurse 1
> +recurse 2

-- 
Thiago

Reply via email to