Commit e070095c by Uros Bizjak Committed by Uros Bizjak

i386.md (*movqi_internal): Use if_then_else or cond RTXes to calculate attribute value.

	* config/i386/i386.md (*movqi_internal) <attr "isa">: Use
	if_then_else or cond RTXes to calculate attribute value.
	* config/i386/mmx.md (*vec_extractv2sf_1) <attr "prefix_rep">: Ditto.
	<attr "length_immediate>: Ditto.
	(*vec_extractv2sf_1) <attr "length_immediate">: Ditto.
	* config/i386/sse.md (sse_loadlps) <attr "length_immediate">: Ditto.
	(*vec_concatv2sf_sse4_1) <attr "isa">: Ditto.
	<attr "type">: Ditto.
	<attr "prefix_data16">: Ditto.
	<attr "prefix_extra">: Ditto.
	<attr "length_immediate">: Ditto.
	<attr "prefix">: Ditto.
	(vec_set<mode>_0) <attr "isa">: Ditto.
	<attr "prefix_extra">: Ditto.
	<attr "length_immediate">: Ditto.
	<attr "prefix">: Ditto.
	(*vec_interleave_highv2df) <attr "prefix_data16">: Ditto.
	(*vec_interleave_lowv2df) <attr "prefix_data16">: Ditto.
	(sse2_storelpd) <attr "prefix_data16">: Ditto.
	(sse2_loadhpd) <attr "prefix_data16">: Ditto.
	(sse2_loadlpd) <attr "prefix_data16">: Ditto.
	<attr "length_immediate">: Ditto.
	<attr "prefix">: Ditto.
	(sse2_movsd) <attr "length_immediate">: Ditto.
	<attr "prefix">: Ditto.
	(vec_concatv2df)  <attr "isa">: Ditto.
	<attr "prefix">: Ditto.
	(*vec_extractv4si) <attr "prefix_extra">: Ditto.
	(*vec_extractv2di_1) <attr "isa">: Ditto.
	<attr "type">: Ditto.
	<attr "length_immediate">: Ditto.
	<attr "prefix_rex">: Ditto.
	<attr "prefix_extra">: Ditto.
	(*vec_concatv2si_sse4_1) <attr "type">: Ditto.
	<attr "prefix_extra">: Ditto.
	<attr "length_immediate">: Ditto.
	(vec_concatv2di) <attr "isa">: Ditto.
	<attr "prefix_extra">: Ditto.
	<attr "length_immediate">: Ditto.
	<attr "prefix">: Ditto.

From-SVN: r236787
parent 8d18b6df
2016-05-26 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (*movqi_internal) <attr "isa">: Use
if_then_else or cond RTXes to calculate attribute value.
* config/i386/mmx.md (*vec_extractv2sf_1) <attr "prefix_rep">: Ditto.
<attr "length_immediate>: Ditto.
(*vec_extractv2sf_1) <attr "length_immediate">: Ditto.
* config/i386/sse.md (sse_loadlps) <attr "length_immediate">: Ditto.
(*vec_concatv2sf_sse4_1) <attr "isa">: Ditto.
<attr "type">: Ditto.
<attr "prefix_data16">: Ditto.
<attr "prefix_extra">: Ditto.
<attr "length_immediate">: Ditto.
<attr "prefix">: Ditto.
(vec_set<mode>_0) <attr "isa">: Ditto.
<attr "prefix_extra">: Ditto.
<attr "length_immediate">: Ditto.
<attr "prefix">: Ditto.
(*vec_interleave_highv2df) <attr "prefix_data16">: Ditto.
(*vec_interleave_lowv2df) <attr "prefix_data16">: Ditto.
(sse2_storelpd) <attr "prefix_data16">: Ditto.
(sse2_loadhpd) <attr "prefix_data16">: Ditto.
(sse2_loadlpd) <attr "prefix_data16">: Ditto.
<attr "length_immediate">: Ditto.
<attr "prefix">: Ditto.
(sse2_movsd) <attr "length_immediate">: Ditto.
<attr "prefix">: Ditto.
(vec_concatv2df) <attr "isa">: Ditto.
<attr "prefix">: Ditto.
(*vec_extractv4si) <attr "prefix_extra">: Ditto.
(*vec_extractv2di_1) <attr "isa">: Ditto.
<attr "type">: Ditto.
<attr "length_immediate">: Ditto.
<attr "prefix_rex">: Ditto.
<attr "prefix_extra">: Ditto.
(*vec_concatv2si_sse4_1) <attr "type">: Ditto.
<attr "prefix_extra">: Ditto.
<attr "length_immediate">: Ditto.
(vec_concatv2di) <attr "isa">: Ditto.
<attr "prefix_extra">: Ditto.
<attr "length_immediate">: Ditto.
<attr "prefix">: Ditto.
2016-05-26 Martin Liska <mliska@suse.cz>
* tree-ssa-loop-ivopts.c (comp_cost::infinite_cost_p): New
......
......@@ -2594,7 +2594,10 @@
return "mov{b}\t{%1, %0|%0, %1}";
}
}
[(set_attr "isa" "*,*,*,*,*,*,*,*,*,*,avx512dq,avx512dq")
[(set (attr "isa")
(if_then_else (eq_attr "alternative" "10,11")
(const_string "avx512dq")
(const_string "*")))
(set (attr "type")
(cond [(eq_attr "alternative" "7,8,9,10,11")
(const_string "mskmov")
......
......@@ -610,8 +610,14 @@
#"
[(set_attr "isa" "*,sse3,noavx,*,*,*,*")
(set_attr "type" "mmxcvt,sse,sseshuf1,mmxmov,ssemov,fmov,imov")
(set_attr "length_immediate" "*,*,1,*,*,*,*")
(set_attr "prefix_rep" "*,1,*,*,*,*,*")
(set (attr "length_immediate")
(if_then_else (eq_attr "alternative" "2")
(const_string "1")
(const_string "*")))
(set (attr "prefix_rep")
(if_then_else (eq_attr "alternative" "1")
(const_string "1")
(const_string "*")))
(set_attr "prefix" "orig,maybe_vex,orig,orig,orig,orig,orig")
(set_attr "mode" "DI,V4SF,V4SF,SF,SF,SF,SF")])
......@@ -1297,7 +1303,10 @@
#"
[(set_attr "isa" "*,sse2,noavx,*,*,*")
(set_attr "type" "mmxcvt,sseshuf1,sseshuf1,mmxmov,ssemov,imov")
(set_attr "length_immediate" "*,1,1,*,*,*")
(set (attr "length_immediate")
(if_then_else (eq_attr "alternative" "1,2")
(const_string "1")
(const_string "*")))
(set_attr "prefix" "orig,maybe_vex,orig,orig,orig,orig")
(set_attr "mode" "DI,TI,V4SF,SI,SI,SI")])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment