diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 61a30ba405c8aba65ccf0cbaf81f55c18b61de19..35d137afe42cad021f4b61549a746becc1c21276 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2004-08-03 Dale Johannesen <dalej@apple.com> + + * 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 <mark@codesourcery.com> * config.gcc (arm*-*-symbianelf*): New target. diff --git a/gcc/c-common.c b/gcc/c-common.c index 31b8dd91daf7987a698ac09b2c1b20497a0428a8..30d96e6223ba2f5f155eca08a68e4af6e6f05d24 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 1a9cf8d1fe21507e97b0f549753417d67cc25339..b5710946eb3f18b77afd211c3d0c143b605f8b23 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 f0c18cb2e45f3fe33ae5c73fa5eb2acdeed841e7..5df0155adc12e2829496844deb3d0dd86e9ad81a 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 3e672e38878f793c1bd77994a552dface61cdce4..92e9a55d8025856c8da3aaf0e8a1e02b37d29621 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 *);