gcc/gcc/common
Ilya Tocar 36e9b73ea9 Add x86 pcommit instruction.
gcc/

	* common/config/i386/i386-common.c (OPTION_MASK_ISA_PCOMMIT_UNSET,
	OPTION_MASK_ISA_PCOMMIT_SET): New.
	(ix86_handle_option): Handle OPT_mpcommit.
	* config.gcc: Add pcommitintrin.h
	* config/i386/pcommitintrin.h: New file.
	* config/i386/cpuid.h (bit_PCOMMIT): Define.
	* config/i386/driver-i386.c (host_detect_local_cpu): Detect pcommit.
	* config/i386/i386-c.c (ix86_target_macros_internal): Define
	__PCOMMIT__.
	* config/i386/i386.c (ix86_target_string): Add -mpcommit.
	(PTA_PCOMMIT): Define.
	(ix86_option_override_internal): Handle new option.
	(ix86_valid_target_attribute_inner_p): Add pcommit.
	(ix86_builtins): Add IX86_BUILTIN_PCOMMIT.
	(bdesc_special_args): Add __builtin_ia32_pcommit.
	* config/i386/i386.h (TARGET_PCOMMIT, TARGET_PCOMMIT_P): Define.
	* config/i386/i386.md (unspecv): Add UNSPECV_PCOMMIT.
	(pcommit): New instruction.
	* config/i386/i386.opt: Add mpcommit.
	* config/i386/x86intrin.h: Include pcommitintrin.h.

gcc/testsuite/

	* g++.dg/other/i386-2.C: Add -mpcommit.
	* g++.dg/other/i386-3.C: Ditto.
	* gcc.target/i386/pcommit-1.c: New test.
	* gcc.target/i386/sse-12.c: Add new options.
	* 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.

From-SVN: r217935
2014-11-21 19:04:20 +03:00
..
config Add x86 pcommit instruction. 2014-11-21 19:04:20 +03:00
common-target-def.h Update copyright years in gcc/ 2014-01-02 22:23:26 +00:00
common-target.def Update copyright years in gcc/ 2014-01-02 22:23:26 +00:00
common-target.h Update copyright years in gcc/ 2014-01-02 22:23:26 +00:00
common-targhooks.c Update copyright years in gcc/ 2014-01-02 22:23:26 +00:00
common-targhooks.h Update copyright years in gcc/ 2014-01-02 22:23:26 +00:00