Commit 628d13d9 by James Greenhalgh Committed by James Greenhalgh

[Patch AArch64] Simplify reduc_plus_scal_v2[sd]f sequence

gcc/

	* config/aarch64/aarch64-simd.md
	(aarch64_reduc_plus_internal<mode>): Rename to...
	(reduc_plus_scal): ...This, and remove previous implementation.

From-SVN: r236360
parent f3874863
2016-05-18 James Greenhalgh <james.greenhalgh@arm.com>
* config/aarch64/aarch64-simd.md
(aarch64_reduc_plus_internal<mode>): Rename to...
(reduc_plus_scal): ...This, and remove previous implementation.
2016-05-18 Richard Biener <rguenther@suse.de> 2016-05-18 Richard Biener <rguenther@suse.de>
* passes.def: Put late dse and cd_dce in canonical order. * passes.def: Put late dse and cd_dce in canonical order.
......
...@@ -1979,19 +1979,6 @@ ...@@ -1979,19 +1979,6 @@
} }
) )
(define_expand "reduc_plus_scal_<mode>"
[(match_operand:<VEL> 0 "register_operand" "=w")
(match_operand:V2F 1 "register_operand" "w")]
"TARGET_SIMD"
{
rtx elt = GEN_INT (ENDIAN_LANE_N (<MODE>mode, 0));
rtx scratch = gen_reg_rtx (<MODE>mode);
emit_insn (gen_aarch64_reduc_plus_internal<mode> (scratch, operands[1]));
emit_insn (gen_aarch64_get_lane<mode> (operands[0], scratch, elt));
DONE;
}
)
(define_insn "aarch64_reduc_plus_internal<mode>" (define_insn "aarch64_reduc_plus_internal<mode>"
[(set (match_operand:VDQV 0 "register_operand" "=w") [(set (match_operand:VDQV 0 "register_operand" "=w")
(unspec:VDQV [(match_operand:VDQV 1 "register_operand" "w")] (unspec:VDQV [(match_operand:VDQV 1 "register_operand" "w")]
...@@ -2010,9 +1997,9 @@ ...@@ -2010,9 +1997,9 @@
[(set_attr "type" "neon_reduc_add")] [(set_attr "type" "neon_reduc_add")]
) )
(define_insn "aarch64_reduc_plus_internal<mode>" (define_insn "reduc_plus_scal_<mode>"
[(set (match_operand:V2F 0 "register_operand" "=w") [(set (match_operand:<VEL> 0 "register_operand" "=w")
(unspec:V2F [(match_operand:V2F 1 "register_operand" "w")] (unspec:<VEL> [(match_operand:V2F 1 "register_operand" "w")]
UNSPEC_FADDV))] UNSPEC_FADDV))]
"TARGET_SIMD" "TARGET_SIMD"
"faddp\\t%<Vetype>0, %1.<Vtype>" "faddp\\t%<Vetype>0, %1.<Vtype>"
......
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