Commit d974312d by Dale Johannesen Committed by Dale Johannesen

rs6000.c (machopic_output_stub): Align Darwin stubs.


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.

From-SVN: r85492
parent 8e9031ec
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.
......
......@@ -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
......
......@@ -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);
......
......@@ -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. */
......
......@@ -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 *);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment