Don't generate absolute references under nacl-x64.

All NaCl modules are PIC to some degree: they can use constant offsets
when statically linked, but these offsets must be relative to %r15.
movabs* with memory operand can never be used.

R=eaeltsin@google.com

Review URL: http://codereview.chromium.org/7694018
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 43b69e7..f958b16 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -7145,6 +7145,13 @@
 {
   rtx set, mem;
 
+  /* In Native Client we can not use movabs because it assumes that
+     non-PIC module is loaded using fixed address.  In Native client
+     non-PIC module is loaded using fixed address *relative* *to* R15.
+     Probably good idea to replace it with %rip-based mov, but for now
+     just disable movabs to produce working binaries.  */
+  if (TARGET_NACL)
+    return false;
   set = PATTERN (insn);
   if (GET_CODE (set) == PARALLEL)
     set = XVECEXP (set, 0, 0);