mirror of
https://review.haiku-os.org/buildtools
synced 2025-01-31 18:44:48 +01:00
activate MULTIPLE_SYMBOL_SPACES only if not optimizing (using a single
symbol space generates smaller object-files). git-svn-id: file:///srv/svn/repos/haiku/trunk/buildtools@9617 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
c21fc23a27
commit
5c130f4191
@ -67,6 +67,8 @@ typedef struct priority_info_s {
|
|||||||
int destructions_p;
|
int destructions_p;
|
||||||
} *priority_info;
|
} *priority_info;
|
||||||
|
|
||||||
|
extern int optimize; /* lives in toplev.c */
|
||||||
|
|
||||||
static tree get_sentry PROTO((tree));
|
static tree get_sentry PROTO((tree));
|
||||||
static void mark_vtable_entries PROTO((tree));
|
static void mark_vtable_entries PROTO((tree));
|
||||||
static void grok_function_init PROTO((tree, tree));
|
static void grok_function_init PROTO((tree, tree));
|
||||||
@ -2696,10 +2698,9 @@ import_export_class (ctype)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef MULTIPLE_SYMBOL_SPACES
|
if (!optimize)
|
||||||
if (import_export == -1)
|
if (import_export == -1)
|
||||||
import_export = 0;
|
import_export = 0;
|
||||||
#endif
|
|
||||||
|
|
||||||
if (import_export)
|
if (import_export)
|
||||||
{
|
{
|
||||||
|
@ -86,6 +86,8 @@ static void parse_float PROTO((PTR));
|
|||||||
static int is_global PROTO((tree));
|
static int is_global PROTO((tree));
|
||||||
static void init_filename_times PROTO((void));
|
static void init_filename_times PROTO((void));
|
||||||
|
|
||||||
|
extern int optimize; /* lives in toplev.c */
|
||||||
|
|
||||||
/* Given a file name X, return the nondirectory portion.
|
/* Given a file name X, return the nondirectory portion.
|
||||||
Keep in mind that X can be computed more than once. */
|
Keep in mind that X can be computed more than once. */
|
||||||
char *
|
char *
|
||||||
@ -4879,12 +4881,19 @@ handle_cp_pragma (pname)
|
|||||||
}
|
}
|
||||||
|
|
||||||
interface_only = interface_strcmp (main_filename);
|
interface_only = interface_strcmp (main_filename);
|
||||||
#ifdef MULTIPLE_SYMBOL_SPACES
|
|
||||||
|
if (!optimize)
|
||||||
|
{ /* activate multiple symbol spaces */
|
||||||
|
#ifdef WORK_AROUND_PRAGMA_INTERFACE_BUG
|
||||||
|
interface_only = 0;
|
||||||
|
interface_unknown = 1;
|
||||||
|
#else /* WORK_AROUND_PRAGMA_INTERFACE_BUG */
|
||||||
if (! interface_only)
|
if (! interface_only)
|
||||||
interface_unknown = 0;
|
interface_unknown = 0;
|
||||||
#else /* MULTIPLE_SYMBOL_SPACES */
|
#endif /* WORK_AROUND_PRAGMA_INTERFACE_BUG */
|
||||||
|
}
|
||||||
|
else /* single symbol space: */
|
||||||
interface_unknown = 0;
|
interface_unknown = 0;
|
||||||
#endif /* MULTIPLE_SYMBOL_SPACES */
|
|
||||||
TREE_INT_CST_LOW (fileinfo) = interface_only;
|
TREE_INT_CST_LOW (fileinfo) = interface_only;
|
||||||
TREE_INT_CST_HIGH (fileinfo) = interface_unknown;
|
TREE_INT_CST_HIGH (fileinfo) = interface_unknown;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user