From: Dale Johannesen Date: Tue, 3 Aug 2004 18:23:35 +0000 (+0000) Subject: rs6000.c (machopic_output_stub): Align Darwin stubs. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d974312d077aeccd53b6a042d40f6e1789b6efb7;p=gcc.git rs6000.c (machopic_output_stub): Align Darwin stubs. 2004-08-03 Dale Johannesen * config/rs6000/rs6000.c (machopic_output_stub): Align Darwin stubs. * c-common.c: Include opts.h. (c_common_get_alias_set): Fix check for a single input file. * toplev.c: Remove current_file_decl. * tree.h: Ditto. From-SVN: r85492 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 61a30ba405c..35d137afe42 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2004-08-03 Dale Johannesen + + * config/rs6000/rs6000.c (machopic_output_stub): Align Darwin stubs. + * c-common.c: Include opts.h. + (c_common_get_alias_set): Fix check for a single input file. + * toplev.c: Remove current_file_decl. + * tree.h: Ditto. + 2004-08-03 Mark Mitchell * config.gcc (arm*-*-symbianelf*): New target. diff --git a/gcc/c-common.c b/gcc/c-common.c index 31b8dd91daf..30d96e6223b 100644 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -45,6 +45,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "tree-iterator.h" #include "hashtab.h" #include "tree-mudflap.h" +#include "opts.h" cpp_reader *parse_in; /* Declared in c-pragma.h. */ @@ -2672,7 +2673,7 @@ c_common_get_alias_set (tree t) return -1; /* Save time if there's only one input file. */ - if (!current_file_decl || TREE_CHAIN (current_file_decl) == NULL_TREE) + if (num_in_fnames == 1) return -1; /* Pointers need special handling if they point to any type that diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 1a9cf8d1fe2..b5710946eb3 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -16076,13 +16076,14 @@ machopic_output_stub (FILE *file, const char *symb, const char *stub) machopic_picsymbol_stub1_section (); else machopic_symbol_stub1_section (); - fprintf (file, "\t.align 2\n"); - - fprintf (file, "%s:\n", stub); - fprintf (file, "\t.indirect_symbol %s\n", symbol_name); if (flag_pic == 2) { + fprintf (file, "\t.align 5\n"); + + fprintf (file, "%s:\n", stub); + fprintf (file, "\t.indirect_symbol %s\n", symbol_name); + label++; local_label_0 = alloca (sizeof("\"L0000000000$spb\"")); sprintf (local_label_0, "\"L%011d$spb\"", label); @@ -16099,12 +16100,17 @@ machopic_output_stub (FILE *file, const char *symb, const char *stub) fprintf (file, "\tbctr\n"); } else - { - fprintf (file, "\tlis r11,ha16(%s)\n", lazy_ptr_name); - fprintf (file, "\tlwzu r12,lo16(%s)(r11)\n", lazy_ptr_name); - fprintf (file, "\tmtctr r12\n"); - fprintf (file, "\tbctr\n"); - } + { + fprintf (file, "\t.align 4\n"); + + fprintf (file, "%s:\n", stub); + fprintf (file, "\t.indirect_symbol %s\n", symbol_name); + + fprintf (file, "\tlis r11,ha16(%s)\n", lazy_ptr_name); + fprintf (file, "\tlwzu r12,lo16(%s)(r11)\n", lazy_ptr_name); + fprintf (file, "\tmtctr r12\n"); + fprintf (file, "\tbctr\n"); + } machopic_lazy_symbol_ptr_section (); fprintf (file, "%s:\n", lazy_ptr_name); diff --git a/gcc/toplev.c b/gcc/toplev.c index f0c18cb2e45..5df0155adc1 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -225,11 +225,6 @@ tree current_function_decl; if none. */ tree current_function_func_begin_label; -/* A DECL for the current file-scope context. When using IMA, this heads a - chain of FILE_DECLs; currently only C uses it. */ - -tree current_file_decl; - /* Temporarily suppress certain warnings. This is set while reading code from a system header file. */ diff --git a/gcc/tree.h b/gcc/tree.h index 3e672e38878..92e9a55d802 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -3318,11 +3318,6 @@ extern GTY(()) tree current_function_decl; /* Nonzero means a FUNC_BEGIN label was emitted. */ extern GTY(()) tree current_function_func_begin_label; - -/* A DECL for the current file-scope context. When using IMA, this heads a - chain of FILE_DECLs; currently only C uses it. */ - -extern GTY(()) tree current_file_decl; /* In tree.c */ extern unsigned crc32_string (unsigned, const char *);