conditional based transfer pattern issue in md file

Ian Lance Taylor iant@google.com
Fri Feb 1 15:41:00 GMT 2008


"Sivaprasad.pv" <sivaprasad.pv@redpinesignals.com> writes:

> While updating the machine description file for our architecture ,we
> encountered the problem regarding conditional based transfer.
> In gcc internals  specified that  conditional based transfer  can be
> supported using the standard pattern 'movModecc' as shown below.
>                                  op0=(cc)? op2:op3
> But our  architecture supports conditional transfer instruction as
> shown below:
>            T<CC> op1, op2      It transfers the op1 to op2 if the <CC>
> is true otherwise it should behave like 'nop' .
>  would u people tell me ,how to define the pattern in machine
> description file regarding the above specified issue.

Use a "0" constraint to force one of the operands to be in the same
location as operand 0.  See the i386 movsicc_nocc insn for an example.

Ian



More information about the Gcc-help mailing list