[PATCH] aarch64: Remove testing of saturation cumulative QC bit

Kyrylo Tkachov Kyrylo.Tkachov@arm.com
Tue Jan 19 17:31:24 GMT 2021


Hi all,

Since we don't guarantee the ordering of the QC flag in FPSR in the saturation intrinsics, we shouldn't be testing for it.
I want to relax the flags for some of the builtins to enable more optimisation but that triggers the QC flag tests in advsimd-intrinsics.exp.
We don't implement the saturation flag access intrinsics in aarch64 anyway and we don't want to.

Tested on aarch64-none-elf and arm-none-eabi.

Pushing to master.
Thanks,
Kyrill

gcc/testsuite/ChangeLog:

	* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (CHECK_CUMULATIVE_SAT): Delete.
	(CHECK_CUMULATIVE_SAT_NAMED): Likewise.  Deleted related variables.
	* gcc.target/aarch64/advsimd-intrinsics/binary_sat_op.inc: Remove uses of the above.
	* gcc.target/aarch64/advsimd-intrinsics/unary_sat_op.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqabs.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqadd.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_lane.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_n.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlal.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlal_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlal_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlsl.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmulh.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmulh_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmulh_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmull.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmull_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqmovn.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqmovun.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqneg.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmlXh.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmlXh_lane.inc: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmlah.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmlah_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmlsh.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmlsh_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmulh.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmulh_lane.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrdmulh_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrshl.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrshrn_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqrshrun_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqshl.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqshl_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqshlu_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqshrn_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqshrun_n.c: Likewise.
	* gcc.target/aarch64/advsimd-intrinsics/vqsub.c: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: qc-test.patch
Type: application/octet-stream
Size: 229415 bytes
Desc: qc-test.patch
URL: <https://gcc.gnu.org/pipermail/gcc-patches/attachments/20210119/353da0ba/attachment-0001.obj>


More information about the Gcc-patches mailing list