From b4d74ed7660295d23ec33d84150b2d3073126eb4 Mon Sep 17 00:00:00 2001 From: Andrew Stubbs Date: Mon, 6 Jan 2020 15:40:01 +0000 Subject: [PATCH] Fix early-clobber in amdgcn vec_extract 2020-01-06 Andrew Stubbs gcc/ * config/gcn/gcn-valu.md (vec_extract): Add early clobber. From-SVN: r279904 --- gcc/ChangeLog | 5 +++++ gcc/config/gcn/gcn-valu.md | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 820a86f..8084d5c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2020-01-06 Andrew Stubbs + + * config/gcn/gcn-valu.md (vec_extract): Add early + clobber. + 2020-01-06 Richard Sandiford * config/aarch64/t-aarch64 ($(srcdir)/config/aarch64/aarch64-tune.md): diff --git a/gcc/config/gcn/gcn-valu.md b/gcc/config/gcn/gcn-valu.md index 457a66c..9baef24 100644 --- a/gcc/config/gcn/gcn-valu.md +++ b/gcc/config/gcn/gcn-valu.md @@ -580,10 +580,10 @@ (set_attr "laneselect" "yes")]) (define_insn "vec_extract" - [(set (match_operand: 0 "register_operand" "=Sg") + [(set (match_operand: 0 "register_operand" "=&Sg") (vec_select: - (match_operand:VEC_2REG_MODE 1 "register_operand" " v") - (parallel [(match_operand:SI 2 "gcn_alu_operand" "SvB")])))] + (match_operand:VEC_2REG_MODE 1 "register_operand" " v") + (parallel [(match_operand:SI 2 "gcn_alu_operand" " SvB")])))] "" "v_readlane_b32 %L0, %L1, %2\;v_readlane_b32 %H0, %H1, %2" [(set_attr "type" "vmult") -- 2.7.4