m3-sys/m3cc/gcc-apple/gcc/varasm.c
/* DECL is an object (either VAR_DECL or FUNCTION_DECL) which is going
   to be output to assembler.
   Set first_global_object_name and weak_global_object_name as appropriate.  */
DECL is an object (either VAR_DECL or FUNCTION_DECL) which is going
to be output to assembler.
DECL is an object ( either VAR_DECL or FUNCTION_DECL ) which is going to be output to assembler .
void
notice_global_symbol (tree decl)
{
  const char **type = &first_global_object_name;
  if (first_global_object_name
      || !TREE_PUBLIC (decl)
      || DECL_EXTERNAL (decl)
      || !DECL_NAME (decl)
      || (TREE_CODE (decl) != FUNCTION_DECL
	  && (TREE_CODE (decl) != VAR_DECL
	      || (DECL_COMMON (decl)
		  && (DECL_INITIAL (decl) == 0
		      || DECL_INITIAL (decl) == error_mark_node))))
      || !MEM_P (DECL_RTL (decl)))
    return;
  if (DECL_WEAK (decl) || DECL_ONE_ONLY (decl))
    type = &weak_global_object_name;
  if (!*type)
    {
      const char *p;
      const char *name;
      rtx decl_rtl = DECL_RTL (decl);
      p = targetm.strip_name_encoding (XSTR (XEXP (decl_rtl, 0), 0));
      name = ggc_strdup (p);
      *type = name;
    }
}
void notice_global_symbol ( tree decl ) { const char * * type = & first_global_object_name ; if ( first_global_object_name || ! TREE_PUBLIC ( decl ) || DECL_EXTERNAL ( decl ) || ! DECL_NAME ( decl ) || ( TREE_CODE ( decl ) != FUNCTION_DECL && ( TREE_CODE ( decl ) != VAR_DECL || ( DECL_COMMON ( decl ) && ( DECL_INITIAL ( decl ) == 0 || DECL_INITIAL ( decl ) == error_mark_node ) ) ) ) || ! MEM_P ( DECL_RTL ( decl ) ) ) return ; if ( DECL_WEAK ( decl ) || DECL_ONE_ONLY ( decl ) ) type = & weak_global_object_name ; if ( ! * type ) { const char * p ; const char * name ; rtx decl_rtl = DECL_RTL ( decl ) ; p = targetm . strip_name_encoding ( XSTR ( XEXP ( decl_rtl , 0 ) , 0 ) ) ; name = ggc_strdup ( p ) ; * type = name ; } }
DECL is an object (either VAR_DECL or FUNCTION_DECL) which is going
to be output to assembler.
DECL is an object ( either VAR_DECL or FUNCTION_DECL ) which is going to be output to assembler .
/* We win when global object is found, but it is useful to know about weak
     symbol as well so we can produce nicer unique names.  */