Commit 8f27fc6b by Uros Bizjak

config.gcc (alpha*-*-linux*): Add elfos.h to tm_file.

	* config.gcc (alpha*-*-linux*): Add elfos.h to tm_file.
	(alpha*-*-freebsd*): Ditto.
	(alpha*-*-netbsd*): Ditto.
	(alpha*-*-openbsd*): Ditto.
	* config/alpha/elf.h (OBJECT_FORMAT_ELF): Remove.
	(DWARF2_DEBUGGING_INFO): Remove.
	(PREFERRED_DEBUGGING_TYPE): Remove.
	(ASM_FINAL_SPEC): Remove.
	(IDENT_ASM_OP): Remove.
	(ASM_OUTPUT_IDENT): Remove.
	(SKIP_ASM_OP): Remove.
	(ASM_OUTPUT_SKIP): Remove.
	(ALIGN_ASM_OP): Remove.
	(ASM_OUTPUT_BEFORE_CASE_LABEL): Remove.
	(ASM_OUTPUT_CASE_LABEL): Remove.
	(ASM_OUTPUT_EXTERNAL_LIBCALL): Remove.
	(COMMON_ASM_OP): Remove.
	(ASM_OUTPUT_ALIGNED_COMMON): Remove.
	(ASCII_DATA_ASM_OP): Remove.
	(READONLY_DATA_SECTION_ASM_OP): Remove.
	(INIT_SECTION_ASM_OP): Remove.
	(FINI_SECTION_ASM_OP): Remove.
	(ASM_SECTION_START_OP): Remove.
	(ASM_OUTPUT_SECTION_START_FILE): Remove.
	(TARGET_ASM_NAMED_SECTION): Remove.
	(TARGET_ASM_SELECT_SECTION): Remove.
	(MAKE_DECL_ONE_ONLY): Remove.
	(TYPE_ASM_OP): Remove.
	(SIZE_ASM_OP): Remove.
	(ASM_WEAKEN_LABEL): Remove.
	(TYPE_OPERAND_FMT): Remove.
	(ASM_DECLARE_RESULT): Remove.
	(ASM_DECLARE_OBJECT_NAME): Remove.
	(ASM_FINISH_DECLARE_OBJECT): Remove.
	(ELF_ASCII_ESCAPES): Remove.
	(ELF_STRING_LIMIT): Remove.
	(STRING_ASM_OP): Remove.
	(ASM_OUTPUT_EXTERNAL): Remove.
	(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Redefine to false.
	* config/alpha/alpha.h (PCC_BITFIELD_TYPE_MATTERS): Undefine
	before define.
	(ASM_DECLARE_FUNCTION_NAME): Ditto.
	(ASM_DECLARE_FUNCTION_SIZE): Ditto.
	(ASM_GENERATE_INTERNAL_LABEL): Ditto.
	(ASM_OUTPUT_SKIP): Ditto.
	(READONLY_DATA_SECTION_ASM_OP): Remove.
	(USER_LABEL_PREFIX): Remove.
	(ASM_OUTPUT_ASCII): Remove.
	(ASM_OUTPUT_CASE_LABEL): Remove.
	(NO_DOLLAR_IN_LABEL): Undefine.

From-SVN: r185677
parent 109a16c2
2012-03-22 Uros Bizjak <ubizjak@gmail.com>
* config.gcc (alpha*-*-linux*): Add elfos.h to tm_file.
(alpha*-*-freebsd*): Ditto.
(alpha*-*-netbsd*): Ditto.
(alpha*-*-openbsd*): Ditto.
* config/alpha/elf.h (OBJECT_FORMAT_ELF): Remove.
(DWARF2_DEBUGGING_INFO): Remove.
(PREFERRED_DEBUGGING_TYPE): Remove.
(ASM_FINAL_SPEC): Remove.
(IDENT_ASM_OP): Remove.
(ASM_OUTPUT_IDENT): Remove.
(SKIP_ASM_OP): Remove.
(ASM_OUTPUT_SKIP): Remove.
(ALIGN_ASM_OP): Remove.
(ASM_OUTPUT_BEFORE_CASE_LABEL): Remove.
(ASM_OUTPUT_CASE_LABEL): Remove.
(ASM_OUTPUT_EXTERNAL_LIBCALL): Remove.
(COMMON_ASM_OP): Remove.
(ASM_OUTPUT_ALIGNED_COMMON): Remove.
(ASCII_DATA_ASM_OP): Remove.
(READONLY_DATA_SECTION_ASM_OP): Remove.
(INIT_SECTION_ASM_OP): Remove.
(FINI_SECTION_ASM_OP): Remove.
(ASM_SECTION_START_OP): Remove.
(ASM_OUTPUT_SECTION_START_FILE): Remove.
(TARGET_ASM_NAMED_SECTION): Remove.
(TARGET_ASM_SELECT_SECTION): Remove.
(MAKE_DECL_ONE_ONLY): Remove.
(TYPE_ASM_OP): Remove.
(SIZE_ASM_OP): Remove.
(ASM_WEAKEN_LABEL): Remove.
(TYPE_OPERAND_FMT): Remove.
(ASM_DECLARE_RESULT): Remove.
(ASM_DECLARE_OBJECT_NAME): Remove.
(ASM_FINISH_DECLARE_OBJECT): Remove.
(ELF_ASCII_ESCAPES): Remove.
(ELF_STRING_LIMIT): Remove.
(STRING_ASM_OP): Remove.
(ASM_OUTPUT_EXTERNAL): Remove.
(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Redefine to false.
* config/alpha/alpha.h (PCC_BITFIELD_TYPE_MATTERS): Undefine
before define.
(ASM_DECLARE_FUNCTION_NAME): Ditto.
(ASM_DECLARE_FUNCTION_SIZE): Ditto.
(ASM_GENERATE_INTERNAL_LABEL): Ditto.
(ASM_OUTPUT_SKIP): Ditto.
(READONLY_DATA_SECTION_ASM_OP): Remove.
(USER_LABEL_PREFIX): Remove.
(ASM_OUTPUT_ASCII): Remove.
(ASM_OUTPUT_CASE_LABEL): Remove.
(NO_DOLLAR_IN_LABEL): Undefine.
2012-03-22 Richard Guenther <rguenther@suse.de> 2012-03-22 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52459 PR tree-optimization/52459
...@@ -22,7 +75,7 @@ ...@@ -22,7 +75,7 @@
PR target/52642 PR target/52642
* config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of * config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of
prologue for unwinder and profiler. prologue for unwinder and profiler.
2012-03-21 Andreas Tobler <andreast@fgznet.ch> 2012-03-21 Andreas Tobler <andreast@fgznet.ch>
...@@ -507,8 +560,7 @@ ...@@ -507,8 +560,7 @@
(vect_pattern_recog): Add new argument. Support basic blocks. (vect_pattern_recog): Add new argument. Support basic blocks.
* tree-vect-stmts.c (vectorizable_conversion): Pass basic block * tree-vect-stmts.c (vectorizable_conversion): Pass basic block
info to vect_is_simple_use_1. info to vect_is_simple_use_1.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Support basic * tree-vect-slp.c (vect_get_and_check_slp_defs): Support basic blocks.
blocks.
(vect_slp_analyze_bb_1): Call vect_pattern_recog. (vect_slp_analyze_bb_1): Call vect_pattern_recog.
2012-03-15 Jakub Jelinek <jakub@redhat.com> 2012-03-15 Jakub Jelinek <jakub@redhat.com>
...@@ -569,8 +621,7 @@ ...@@ -569,8 +621,7 @@
* config/i386/i386.c (ix86_option_override_internal): Properly * config/i386/i386.c (ix86_option_override_internal): Properly
check and set ix86_pmode. check and set ix86_pmode.
* config/i386/i386.h (Pmode): Check ix86_pmode instead of * config/i386/i386.h (Pmode): Check ix86_pmode instead of TARGET_64BIT.
TARGET_64BIT.
* config/i386/i386.opt (maddress-mode=): New. * config/i386/i386.opt (maddress-mode=): New.
......
...@@ -768,21 +768,21 @@ esac ...@@ -768,21 +768,21 @@ esac
case ${target} in case ${target} in
alpha*-*-linux*) alpha*-*-linux*)
tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h glibc-stdint.h" tm_file="elfos.h ${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h glibc-stdint.h"
extra_options="${extra_options} alpha/elf.opt" extra_options="${extra_options} alpha/elf.opt"
;; ;;
alpha*-*-freebsd*) alpha*-*-freebsd*)
tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h" tm_file="elfos.h ${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
extra_options="${extra_options} alpha/elf.opt" extra_options="${extra_options} alpha/elf.opt"
;; ;;
alpha*-*-netbsd*) alpha*-*-netbsd*)
tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h" tm_file="elfos.h ${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h"
extra_options="${extra_options} netbsd.opt netbsd-elf.opt \ extra_options="${extra_options} netbsd.opt netbsd-elf.opt \
alpha/elf.opt" alpha/elf.opt"
;; ;;
alpha*-*-openbsd*) alpha*-*-openbsd*)
tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_FUNCTION_SIZE OBSD_HAS_DECLARE_OBJECT" tm_defines="${tm_defines} OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_FUNCTION_SIZE OBSD_HAS_DECLARE_OBJECT"
tm_file="alpha/alpha.h alpha/elf.h openbsd.h openbsd-stdint.h alpha/openbsd.h openbsd-libpthread.h" tm_file="elfos.h alpha/alpha.h alpha/elf.h openbsd.h openbsd-stdint.h alpha/openbsd.h openbsd-libpthread.h"
extra_options="${extra_options} openbsd.opt alpha/elf.opt" extra_options="${extra_options} openbsd.opt alpha/elf.opt"
# default x-alpha is only appropriate for dec-osf. # default x-alpha is only appropriate for dec-osf.
;; ;;
......
...@@ -284,6 +284,7 @@ extern enum alpha_fp_trap_mode alpha_fptm; ...@@ -284,6 +284,7 @@ extern enum alpha_fp_trap_mode alpha_fptm;
#define STRUCTURE_SIZE_BOUNDARY 8 #define STRUCTURE_SIZE_BOUNDARY 8
/* A bit-field declared as `int' forces `int' alignment for the struct. */ /* A bit-field declared as `int' forces `int' alignment for the struct. */
#undef PCC_BITFILED_TYPE_MATTERS
#define PCC_BITFIELD_TYPE_MATTERS 1 #define PCC_BITFIELD_TYPE_MATTERS 1
/* No data type wants to be aligned rounder than this. */ /* No data type wants to be aligned rounder than this. */
...@@ -700,11 +701,13 @@ extern int alpha_memory_latency; ...@@ -700,11 +701,13 @@ extern int alpha_memory_latency;
/* This macro produces the initial definition of a function. */ /* This macro produces the initial definition of a function. */
#undef ASM_DECLARE_FUNCTION_NAME
#define ASM_DECLARE_FUNCTION_NAME(FILE,NAME,DECL) \ #define ASM_DECLARE_FUNCTION_NAME(FILE,NAME,DECL) \
alpha_start_function(FILE,NAME,DECL); alpha_start_function(FILE,NAME,DECL);
/* This macro closes up a function definition for the assembler. */ /* This macro closes up a function definition for the assembler. */
#undef ASM_DECLARE_FUNCTION_SIZE
#define ASM_DECLARE_FUNCTION_SIZE(FILE,NAME,DECL) \ #define ASM_DECLARE_FUNCTION_SIZE(FILE,NAME,DECL) \
alpha_end_function(FILE,NAME,DECL) alpha_end_function(FILE,NAME,DECL)
...@@ -982,10 +985,6 @@ do { \ ...@@ -982,10 +985,6 @@ do { \
#define TEXT_SECTION_ASM_OP "\t.text" #define TEXT_SECTION_ASM_OP "\t.text"
/* Output before read-only data. */
#define READONLY_DATA_SECTION_ASM_OP "\t.rdata"
/* Output before writable data. */ /* Output before writable data. */
#define DATA_SECTION_ASM_OP "\t.data" #define DATA_SECTION_ASM_OP "\t.data"
...@@ -1020,69 +1019,19 @@ do { \ ...@@ -1020,69 +1019,19 @@ do { \
/* Globalizing directive for a label. */ /* Globalizing directive for a label. */
#define GLOBAL_ASM_OP "\t.globl " #define GLOBAL_ASM_OP "\t.globl "
/* The prefix to add to user-visible assembler symbols. */ /* Use dollar signs rather than periods in special g++ assembler names. */
#define USER_LABEL_PREFIX ""
/* This is how to output a label for a jump table. Arguments are the same as #undef NO_DOLLAR_IN_LABEL
for (*targetm.asm_out.internal_label), except the insn for the jump table is
passed. */
#define ASM_OUTPUT_CASE_LABEL(FILE,PREFIX,NUM,TABLEINSN) \
{ ASM_OUTPUT_ALIGN (FILE, 2); (*targetm.asm_out.internal_label) (FILE, PREFIX, NUM); }
/* This is how to store into the string LABEL /* This is how to store into the string LABEL
the symbol_ref name of an internal numbered label where the symbol_ref name of an internal numbered label where
PREFIX is the class of label and NUM is the number within the class. PREFIX is the class of label and NUM is the number within the class.
This is suitable for output with `assemble_name'. */ This is suitable for output with `assemble_name'. */
#undef ASM_GENERATE_INTERNAL_LABEL
#define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \ #define ASM_GENERATE_INTERNAL_LABEL(LABEL,PREFIX,NUM) \
sprintf ((LABEL), "*$%s%ld", (PREFIX), (long)(NUM)) sprintf ((LABEL), "*$%s%ld", (PREFIX), (long)(NUM))
/* We use the default ASCII-output routine, except that we don't write more
than 50 characters since the assembler doesn't support very long lines. */
#define ASM_OUTPUT_ASCII(MYFILE, MYSTRING, MYLENGTH) \
do { \
FILE *_hide_asm_out_file = (MYFILE); \
const unsigned char *_hide_p = (const unsigned char *) (MYSTRING); \
int _hide_thissize = (MYLENGTH); \
int _size_so_far = 0; \
{ \
FILE *asm_out_file = _hide_asm_out_file; \
const unsigned char *p = _hide_p; \
int thissize = _hide_thissize; \
int i; \
fprintf (asm_out_file, "\t.ascii \""); \
\
for (i = 0; i < thissize; i++) \
{ \
register int c = p[i]; \
\
if (_size_so_far ++ > 50 && i < thissize - 4) \
_size_so_far = 0, fprintf (asm_out_file, "\"\n\t.ascii \""); \
\
if (c == '\"' || c == '\\') \
putc ('\\', asm_out_file); \
if (c >= ' ' && c < 0177) \
putc (c, asm_out_file); \
else \
{ \
fprintf (asm_out_file, "\\%o", c); \
/* After an octal-escape, if a digit follows, \
terminate one string constant and start another. \
The VAX assembler fails to stop reading the escape \
after three digits, so this is the only way we \
can get it to parse the data properly. */ \
if (i < thissize - 1 && ISDIGIT (p[i + 1])) \
_size_so_far = 0, fprintf (asm_out_file, "\"\n\t.ascii \""); \
} \
} \
fprintf (asm_out_file, "\"\n"); \
} \
} \
while (0)
/* This is how to output an element of a case-vector that is relative. */ /* This is how to output an element of a case-vector that is relative. */
#define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL) \ #define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL) \
...@@ -1098,6 +1047,7 @@ do { \ ...@@ -1098,6 +1047,7 @@ do { \
/* This is how to advance the location counter by SIZE bytes. */ /* This is how to advance the location counter by SIZE bytes. */
#undef ASM_OUTPUT_SKIP
#define ASM_OUTPUT_SKIP(FILE,SIZE) \ #define ASM_OUTPUT_SKIP(FILE,SIZE) \
fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE)) fprintf (FILE, "\t.space "HOST_WIDE_INT_PRINT_UNSIGNED"\n", (SIZE))
......
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