This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, committed] SH: Fix PR58314 (unsatisfied constraints)
- From: Richard Sandiford <rdsandiford at googlemail dot com>
- To: Christian Bruel <christian dot bruel at st dot com>
- Cc: "gcc-patches\ at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 16 Sep 2013 18:10:01 +0100
- Subject: Re: [PATCH, committed] SH: Fix PR58314 (unsatisfied constraints)
- Authentication-results: sourceware.org; auth=none
- References: <5231C3AB dot 3040401 at st dot com> <20130913 dot 080155 dot 487158670 dot kkojima at rr dot iij4u dot or dot jp> <5232D014 dot 8050801 at st dot com>
Hi Christian,
Christian Bruel <christian.bruel@st.com> writes:
> @@ -6893,11 +6894,14 @@ label:
> ;; reloading MAC subregs otherwise. For that probably special patterns
> ;; would be required.
> (define_insn "*mov<mode>_reg_reg"
> - [(set (match_operand:QIHI 0 "arith_reg_dest" "=r")
> - (match_operand:QIHI 1 "register_operand" "r"))]
> + [(set (match_operand:QIHI 0 "arith_reg_dest" "=r,m,*z")
> + (match_operand:QIHI 1 "register_operand" "r,*z,m"))]
If the constraints allow "m", the predicates need to accept memories too.
(It'd be worth having an insn condition that rejects both operands
being memories though.)
Thanks,
Richard