|
710 | 710 | (ior (match_test "constant_call_address_operand |
711 | 711 | (op, mode == VOIDmode ? mode : Pmode)") |
712 | 712 | (match_operand 0 "call_register_no_elim_operand") |
713 | | - (ior (and (not (match_test "TARGET_X32 |
714 | | - || ix86_indirect_branch_register")) |
715 | | - (match_operand 0 "memory_operand")) |
716 | | - (and (match_test "TARGET_X32 && Pmode == DImode |
717 | | - && !ix86_indirect_branch_register") |
718 | | - (match_operand 0 "GOT_memory_operand"))))) |
| 713 | + (and (not (match_test "ix86_indirect_branch_register")) |
| 714 | + (ior (and (not (match_test "TARGET_X32")) |
| 715 | + (match_operand 0 "memory_operand")) |
| 716 | + (and (match_test "TARGET_X32 && Pmode == DImode") |
| 717 | + (match_operand 0 "GOT_memory_operand")))))) |
719 | 718 |
|
720 | 719 | ;; Similarly, but for tail calls, in which we cannot allow memory references. |
721 | 720 | (define_special_predicate "sibcall_insn_operand" |
722 | 721 | (ior (match_test "constant_call_address_operand |
723 | 722 | (op, mode == VOIDmode ? mode : Pmode)") |
724 | 723 | (match_operand 0 "register_no_elim_operand") |
725 | | - (ior (and (not (match_test "TARGET_X32 |
726 | | - || ix86_indirect_branch_register")) |
727 | | - (match_operand 0 "sibcall_memory_operand")) |
728 | | - (and (match_test "TARGET_X32 && Pmode == DImode |
729 | | - && !ix86_indirect_branch_register") |
730 | | - (match_operand 0 "GOT_memory_operand"))))) |
| 724 | + (and (not (match_test "ix86_indirect_branch_register")) |
| 725 | + (ior (and (not (match_test "TARGET_X32")) |
| 726 | + (match_operand 0 "sibcall_memory_operand")) |
| 727 | + (and (match_test "TARGET_X32 && Pmode == DImode") |
| 728 | + (match_operand 0 "GOT_memory_operand")))))) |
731 | 729 |
|
732 | 730 | ;; Return true if OP is a 32-bit GOT symbol operand. |
733 | 731 | (define_predicate "GOT32_symbol_operand" |
|
0 commit comments