-  (ior (and (not (match_test "TARGET_X32"))
+  (ior (and (not (match_test "TARGET_X32
+      || ix86_indirect_branch_thunk_register"))
     (match_operand 0 "sibcall_memory_operand"))
-       (and (match_test "TARGET_X32 && Pmode == DImode")
+       (and (match_test "TARGET_X32 && Pmode == DImode
+ && !ix86_indirect_branch_thunk_register")
     (match_operand 0 "GOT_memory_operand"))))

Is this patch just trying to disable the predicate when
ix86_indirect_branch_thunk_register is set? Because this is what this
convoluted logic does.

While there is some sense for "TARGET_X32 && Pmode == DImode", we try
to use RTX codes as much as possible in constraints.md and
predicates.md.

Uros.

Reply via email to