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