[PATCH v2] aarch64: gas: Allow movprfx with fmmla widening instructions and bfscale [PR gas/33562]

Alice Carlotti alice.carlotti@arm.com
Tue Oct 28 13:17:06 GMT 2025


On Thu, Oct 23, 2025 at 09:45:22AM +0000, Alfie Richards wrote:
> Updated with some extra movprfx tests for bfscale.
> 
> Reg tested and approved by Alice C.
> 
> As I don't have commit access, please could this be applied to master and
> backported to 2.45?
> 
> Thanks,
> Alfie

Thanks - I've committed this with the commit message tweaked to:

aarch64: gas: Allow movprfx with fmmla and bfscale [PR gas/33562]
    
These instructions were previously incorrectly marked as not accepting
movprfx.  Fix this and add tests.
    
	PR gas/33562



and trailing blank lines removed from the two hunks below:

> 
> -- >8 --
> 
> Instructions were previously incorrectly marked as not accepting movprfx.
> Fixes this and adds tests.
> 
> 	PR gas/33562
> 
> opcodes:
> 	* aarch64-tbl.h: Update widening fmmmla and bfscale instructions.
> gas:
> 	* testsuite/gas/aarch64/f8f16mm_sve2-bad.l: Update test with movprfx.
> 	* testsuite/gas/aarch64/f8f16mm_sve2.d: Ditto.
> 	* testsuite/gas/aarch64/f8f16mm_sve2.s: Ditto.
> 	* testsuite/gas/aarch64/f8f32mm_sve2-bad.l: Ditto.
> 	* testsuite/gas/aarch64/f8f32mm_sve2.d: Ditto.
> 	* testsuite/gas/aarch64/f8f32mm_sve2.s: Ditto.
> 	* testsuite/gas/aarch64/sve-f16f32mm-bad.l: Ditto.
> 	* testsuite/gas/aarch64/sve-f16f32mm.d: Ditto.
> 	* testsuite/gas/aarch64/sve-f16f32mm.s: Ditto.
> 	* testsuite/gas/aarch64/sve-bfscale-sve2.s: Ditto.
> 	* testsuite/gas/aarch64/sve-bfscale-sve2.d: Ditto.
> 
> Approved-By: Alice Carlotti <alice.carlotti@arm.com>
> 
> ---

> diff --git a/gas/testsuite/gas/aarch64/f8f32mm.d b/gas/testsuite/gas/aarch64/f8f32mm.d
> index b1e6bebfd9c..e3ddf33513b 100644
> --- a/gas/testsuite/gas/aarch64/f8f32mm.d
> +++ b/gas/testsuite/gas/aarch64/f8f32mm.d
> @@ -16,3 +16,4 @@ Disassembly of section .*:
>  .*:	6e9fec1f 	fmmla	v31.4s, v0.16b, v31.16b
>  .*:	6e80efff 	fmmla	v31.4s, v31.16b, v0.16b
>  .*:	6e9fefff 	fmmla	v31.4s, v31.16b, v31.16b
> +

> diff --git a/gas/testsuite/gas/aarch64/sve-f16f32mm.d b/gas/testsuite/gas/aarch64/sve-f16f32mm.d
> index 8b72bf2b681..6f7e4bd4f2b 100644
> --- a/gas/testsuite/gas/aarch64/sve-f16f32mm.d
> +++ b/gas/testsuite/gas/aarch64/sve-f16f32mm.d
> @@ -16,3 +16,22 @@ Disassembly of section .*:
>  .*:	643fe41f 	fmmla	z31.s, z0.h, z31.h
>  .*:	6420e7ff 	fmmla	z31.s, z31.h, z0.h
>  .*:	643fe7ff 	fmmla	z31.s, z31.h, z31.h
> +
> +.* <b>:
> +.*:	0420bde0 	movprfx	z0, z15
> +.*:	6421e420 	fmmla	z0.s, z1.h, z1.h
> +.*:	0420bde0 	movprfx	z0, z15
> +.*:	643fe420 	fmmla	z0.s, z1.h, z31.h
> +.*:	0420bde0 	movprfx	z0, z15
> +.*:	6421e7e0 	fmmla	z0.s, z31.h, z1.h
> +.*:	0420bde0 	movprfx	z0, z15
> +.*:	643fe7e0 	fmmla	z0.s, z31.h, z31.h
> +.*:	0420bdff 	movprfx	z31, z15
> +.*:	6420e41f 	fmmla	z31.s, z0.h, z0.h
> +.*:	0420bdff 	movprfx	z31, z15
> +.*:	643ee41f 	fmmla	z31.s, z0.h, z30.h
> +.*:	0420bdff 	movprfx	z31, z15
> +.*:	6420e7df 	fmmla	z31.s, z30.h, z0.h
> +.*:	0420bdff 	movprfx	z31, z15
> +.*:	643ee7df 	fmmla	z31.s, z30.h, z30.h
> +


More information about the Binutils mailing list