Use x86_64_general_operand in a bunch more SI mode insn patterns
The x86_64_general_operand predicate applies some important constraints,
such as that a symbol_ref cannot be an immediate operand under -fPIC.
With the ILP32 model, these constraints matter for SI mode instructions
(rather than just DI mode) too, since address values are SI mode.
Previously the x86_64_general_operand predicate was used inconsistently,
e.g. on add patterns but not on sub and mul patterns. This fix changes
all the relevant patterns to use x86_64_general_operand in place of
vanilla general_operand. This is consistent with how the -mx32 support
handles this issue in the upstream trunk code.
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3549
TEST= toolchain trybots
[email protected]
Review URL: https://codereview.chromium.org/20820002
1 file changed