Skip to content
Snippets Groups Projects
Commit af0a0627 authored by Haochen Jiang's avatar Haochen Jiang
Browse files

[PATCH 2/2] AVX10.2: Support media instructions


gcc/ChangeLog:

	* config/i386/avx10_2-512mediaintrin.h: Add new intrins.
	* config/i386/avx10_2mediaintrin.h: Ditto.
	* config/i386/i386-builtin.def: Add new builtins.
	* config/i386/i386-builtins.cc (def_builtin): Handle shared
	builtins between AVXVNNIINT16 and AVX10.2.
	* config/i386/i386-expand.cc (ix86_check_builtin_isa_match):
	Ditto.
	* config/i386/sse.md (unspec): Add UNSPEC_VDPPHPS.
	(avx10_2_mpsadbw<mask_name>): New define_insn.
	(<mask_codefor><sse4_1_avx2>_mpsadbw<mask_name>): Ditto.
	(vpdp<vpdpwprodtype>_<mode>): Add AVX10_2_256.
	(vpdp<vpdpwprodtype>_v16si): New defin_insn.
	(vpdp<vpdpwprodtype>_<mode>_mask): Ditto.
	(*vpdp<vpdpwprodtype>_<mode>_maskz): Ditto.
	(vpdp<vpdpwprodtype>_<mode>_maskz): New expander.
	(vdpphps_<mode>): New define_insn.
	(vdpphps_<mode>_mask): Ditto.
	(*vdpphps_<mode>_maskz): Ditto.
	(vdpphps_<mode>_maskz): New expander.

gcc/testsuite/ChangeLog:

	* gcc.target/i386/avxvnniint16-1.c: Add new macro test.
	* gcc.target/i386/avx-1.c: Ditto.
	* gcc.target/i386/sse-13.c: Ditto.
	* gcc.target/i386/sse-14.c: Ditto.
	* gcc.target/i386/sse-22.c: Ditto.
	* gcc.target/i386/sse-23.c: Ditto.
	* gcc.target/i386/avx10_2-512-media-1.c: Add test.
	* gcc.target/i386/avx10_2-media-1.c: Ditto.
	* gcc.target/i386/avxvnniint16-builtin.c: New test.
	* gcc.target/i386/avx10_2-512-vdpphps-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vmpsadbw-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vpdpwsud-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vpdpwsuds-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vpdpwusd-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vpdpwusds-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vpdpwuud-2.c: Ditto.
	* gcc.target/i386/avx10_2-512-vpdpwuuds-2.c: Ditto.
	* gcc.target/i386/avx10_2-builtin-2.c: Ditto.
	* gcc.target/i386/avx10_2-vdpphps-2.c: Ditto.
	* gcc.target/i386/avx10_2-vmpsadbw-2.c: Ditto.
	* gcc.target/i386/avx10_2-vpdpwsud-2.c: Ditto.
	* gcc.target/i386/avx10_2-vpdpwsuds-2.c: Ditto.
	* gcc.target/i386/avx10_2-vpdpwusd-2.c: Ditto.
	* gcc.target/i386/avx10_2-vpdpwusds-2.c: Ditto.
	* gcc.target/i386/avx10_2-vpdpwuud-2.c: Ditto.
	* gcc.target/i386/avx10_2-vpdpwuuds-2.c: Ditto.

Co-authored-by: default avatarHongyu Wang <hongyu.wang@intel.com>
parent 8db80b27
Loading
Showing
with 1781 additions and 23 deletions
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