arm.c (arm_function_in_section_p): Fix predicate to correctly check weak symbol binding.
authorAlex Velenko <Alex.Velenko@arm.com>
Thu, 5 Mar 2015 16:45:21 +0000 (16:45 +0000)
committerAlex Velenko <avelenko@gcc.gnu.org>
Thu, 5 Mar 2015 16:45:21 +0000 (16:45 +0000)
2015-03-05  Alex Velenko  <alex.velenko@arm.com>

* config/arm/arm.c (arm_function_in_section_p): Fix predicate to
correctly check weak symbol binding.

From-SVN: r221220

gcc/ChangeLog
gcc/config/arm/arm.c

index 368a7d04887ad7da1183e1780cb49ac52682f792..73a346a5f4ae7f0264664b92736511edac2560f0 100644 (file)
@@ -1,3 +1,8 @@
+2015-03-05  Alex Velenko  <alex.velenko@arm.com>
+
+       * config/arm/arm.c (arm_function_in_section_p): Fix predicate to
+       correctly check weak symbol binding.
+
 2015-03-05  Steve Ellcey  <sellcey@imgtec.com>
 
        PR middle-end/65315
index f7063bc06fa7c1bb289ba098b77573f07b188b02..48342d0c0ec7ffcef123f6f7c162001bbdaebead 100644 (file)
@@ -6396,14 +6396,8 @@ arm_set_default_type_attributes (tree type)
 static bool
 arm_function_in_section_p (tree decl, section *section)
 {
-  /* We can only be certain about functions defined in the same
-     compilation unit.  */
-  if (!TREE_STATIC (decl))
-    return false;
-
-  /* Make sure that SYMBOL always binds to the definition in this
-     compilation unit.  */
-  if (!targetm.binds_local_p (decl))
+  /* We can only be certain about the prevailing symbol definition.  */
+  if (!decl_binds_to_current_def_p (decl))
     return false;
 
   /* If DECL_SECTION_NAME is set, assume it is trustworthy.  */