Don't check ix86_indirect_branch_register for GOT operand
authorH.J. Lu <hongjiu.lu@intel.com>
Mon, 15 Jan 2018 22:35:36 +0000 (22:35 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Mon, 15 Jan 2018 22:35:36 +0000 (14:35 -0800)
commit4a5a0497ba984382955babd44a4d63e0d91a3243
tree3cc7f75d3141794847f50b2ffd2c8e5bd9c810de
parent5ca876c398d856b99a3427eabea5a992f328ee2d
Don't check ix86_indirect_branch_register for GOT operand

Since GOT_memory_operand and GOT32_symbol_operand are simple pattern
matches, don't check ix86_indirect_branch_register here.  If needed,
-mindirect-branch= will convert indirect branch via GOT slot to a call
and return thunk.

* config/i386/constraints.md (Bs): Update
ix86_indirect_branch_register check.  Don't check
ix86_indirect_branch_register with GOT_memory_operand.
(Bw): Likewise.
* config/i386/predicates.md (GOT_memory_operand): Don't check
ix86_indirect_branch_register here.
(GOT32_symbol_operand): Likewise.

From-SVN: r256714
gcc/ChangeLog
gcc/config/i386/constraints.md
gcc/config/i386/predicates.md