Skip to content
Snippets Groups Projects
Commit 271e36d9 authored by Uros Bizjak's avatar Uros Bizjak
Browse files

i386: Enable VxHF vector modes lower ABI levels [PR103571]

Enable VxHF vector modes for SSE2, AVX and AVX512F ABIs.

2021-12-16  Uroš Bizjak  <ubizjak@gmail.com>

gcc/ChangeLog:

	PR target/103571
	* config/i386/i386.h (VALID_AVX256_REG_MODE): Add V16HFmode.
	(VALID_AVX256_REG_OR_OI_VHF_MODE): Replace with ...
	(VALID_AVX256_REG_OR_OI_MODE): ... this.  Remove V16HFmode.
	(VALID_AVX512F_SCALAR_MODE): Remove HImode and HFmode.
	(VALID_AVX512FP16_SCALAR_MODE): New.
	(VALID_AVX512F_REG_MODE): Add V32HFmode.
	(VALID_SSE2_REG_MODE): Add V8HFmode, V4HFmode and V2HFmode.
	(VALID_SSE2_REG_VHF_MODE): Remove.
	(VALID_INT_MODE_P): Add V2HFmode.
	* config/i386/i386.c (function_arg_advance_64):
	Remove explicit mention of V16HFmode and V32HFmode.
	(ix86_hard_regno_mode_ok): Remove explicit mention of XImode
	and V32HFmode, use VALID_AVX512F_REG_OR_XI_MODE instead.
	Use VALID_AVX512FP_SCALAR_MODE for TARGET_aVX512FP16.
	Use VALID_AVX256_REG_OR_OI_MODE instead of
	VALID_AVX256_REG_OR_OI_VHF_MODE and VALID_SSE2_REG_MODE instead
	of VALID_SSE2_REG_VHF_MODE.
	(ix86_set_reg_reg_cost): Remove usge of VALID_AVX512FP16_REG_MODE.
	(ix86_vector_mode_supported): Ditto.

gcc/testsuite/ChangeLog:

	PR target/103571
	* gcc.target/i386/pr102812.c (dg-final): Do not scan for movdqa.
parent 06cd44b4
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