On Sun, 8 Apr 2018, Jeff Law wrote:

> I think you need to go back to my earlier reply and read it carefully.
> In particular, you need an insn where the label_ref and pc are swapped.

 Ouch, there are no reversed interlocked branch instructions in the VAX 
ISA, so these would have to branch around a jump.  Like say:

(define_insn "*jbbssisi_reversed"
  [(parallel
    [(set (pc)
          (if_then_else
            (ne (zero_extract:SI (match_operand:SI 0 "memory_operand" "Q")
                                 (const_int 1)
                                 (match_operand:SI 1 "general_operand" "nrm"))
                (const_int 0))
            (pc))
            (label_ref (match_operand 2 "" "")))
     (set (zero_extract:SI (match_operand:SI 3 "memory_operand" "+0")
                           (const_int 1)
                           (match_dup 1))
          (const_int 1))])]
  ""
  "jbssi %1,%0,0f;jbr %l2;0:")

and likewise with the other modes.

 Is this what you have in mind?

  Maciej

Reply via email to