Skip to content
Snippets Groups Projects
Commit ae7e2566 authored by Xi Ruoyao's avatar Xi Ruoyao Committed by Lulu Cheng
Browse files

LoongArch: Make __builtin_lsx_vorn_v and __builtin_lasx_xvorn_v arguments and...

LoongArch: Make __builtin_lsx_vorn_v and __builtin_lasx_xvorn_v arguments and return values unsigned

Align them with other vector bitwise builtins.

This may break programs directly invoking __builtin_lsx_vorn_v or
__builtin_lasx_xvorn_v, but doing so is not supported (as builtins are
not documented, only intrinsics are documented and users should use them
instead).

gcc/ChangeLog:

	* config/loongarch/loongarch-builtins.cc (vorn_v, xvorn_v): Use
	unsigned vector modes.
	* config/loongarch/lsxintrin.h (__lsx_vorn_v): Cast arguments to
	v16u8.
	* config/loongarch/lasxintrin.h (__lasx_xvorn_v): Cast arguments
	to v32u8.

gcc/testsuite/ChangeLog:

	* gcc.target/loongarch/vector/lsx/lsx-builtin.c (__lsx_vorn_v):
	Change arguments and return value to v16u8.
	* gcc.target/loongarch/vector/lasx/lasx-builtin.c
	(__lasx_xvorn_v): Change arguments and return value to v32u8.
parent 8500a8c3
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment