This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Matching of non-standard instructions
On Tue, Jun 27, 2006 at 11:53:52AM +0200, Roland Persson wrote:
> I've been trying patterns like this one:
>
> (define_insn "*pip_add_di_sesi"
> [(set (match_operand:DI 0 "register_operand" "=r")
> (plus:DI (match_operand:DI 1 "register_operand" "r")
> (sign_extend:DI (match_operand:SI "register_operand"
> "r"))))]
> ...
> )
My first bet would be to place the sign_extend operand first of the two
operands to plus.
Also, the output from -fdump-rtl-combine will tell you if combine is
rejecting the pattern because the cost is too high.
--
Rask Ingemann Lambertsen