This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC][PATCH] Change default to -fcommon


> There is one use in Ada which looks like an optimization for specific
> targets:
> 
>   /* Ada doesn't feature Fortran-like COMMON variables so we shouldn't
>      try to fiddle with DECL_COMMON.  However, on platforms that don't
>      support global BSS sections, uninitialized global variables would
>      go in DATA instead, thus increasing the size of the executable.  */
>   if (!flag_no_common
>       && TREE_CODE (var_decl) == VAR_DECL
>       && TREE_PUBLIC (var_decl)
>       && !have_global_bss_p ())
>     DECL_COMMON (var_decl) = 1;

It's for Darwin - you need to evaluate your patch on Darwin.

> I don't understand how this works - if there is no bss support in the
> linker, wouldn't common variables would still end up in the data section?

There is, it's essentially a syntactic issue in the assembler IIRC.

-- 
Eric Botcazou


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]