OSDN Git Service

PR target/26347
[pf3gnuchains/gcc-fork.git] / gcc / config / alpha / predicates.md
index a035fff..8d37560 100644 (file)
 
   return (SYMBOL_REF_LOCAL_P (op)
          && SYMBOL_REF_SMALL_P (op)
-         && SYMBOL_REF_TLS_MODEL (op) == 0);
+         && !SYMBOL_REF_WEAK (op)
+         && !SYMBOL_REF_TLS_MODEL (op));
 })
 
 ;; Return true if OP is a SYMBOL_REF or CONST referencing a variable
   if (GET_CODE (op) != SYMBOL_REF)
     return 0;
 
-  return !SYMBOL_REF_LOCAL_P (op) && !SYMBOL_REF_TLS_MODEL (op);
+  return ((!SYMBOL_REF_LOCAL_P (op) || SYMBOL_REF_WEAK (op))
+         && !SYMBOL_REF_TLS_MODEL (op));
 })
 
 ;; Returns 1 if OP is a symbolic operand, i.e. a symbol_ref or a label_ref,