[i386] : Simplify indirect_branch_operand predicate

Submitted by Uros Bizjak on March 8, 2012, 8:51 p.m.

Details

Message ID CAFULd4b6CeC2-2qAaYtJaau_MtzC_q8QFMH+vmmFC7WzX8DjCQ@mail.gmail.com
State New
Headers show

Commit Message

Uros Bizjak March 8, 2012, 8:51 p.m.
Hello!

No functional changes.

2012-03-08  Uros Bizjak  <ubizjak@gmail.com>

	* config/i386/predicates.md (indirect_branch_operand): Simplify.

Tested on x86_64-pc-linux-gnu, committed to mainline SVN.

Uros.

Patch hide | download patch | download mbox

Index: predicates.md
===================================================================
--- predicates.md	(revision 185107)
+++ predicates.md	(working copy)
@@ -566,9 +566,9 @@ 
 
 ;; Test for a valid operand for indirect branch.
 (define_predicate "indirect_branch_operand"
-  (if_then_else (match_test "TARGET_X32")
-    (match_operand 0 "register_operand")
-    (match_operand 0 "nonimmediate_operand")))
+  (ior (match_operand 0 "register_operand")
+       (and (not (match_test "TARGET_X32"))
+	    (match_operand 0 "memory_operand"))))
 
 ;; Test for a valid operand for a call instruction.
 (define_predicate "call_insn_operand"