From: uros Date: Fri, 31 Jul 2009 13:41:43 +0000 (+0000) Subject: * config/i386/bsd.h (ASM_BYTE): New define. X-Git-Url: http://git.sourceforge.jp/view?a=commitdiff_plain;h=640bddbeb1f809fc5355f48a2549718c4e265768;p=pf3gnuchains%2Fgcc-fork.git * config/i386/bsd.h (ASM_BYTE): New define. * config/i386/darwin.h (ASM_BYTE): Rename from ASM_BYTE_OP. * config/i386/att.h (ASM_BYTE): New define. Use ASM_BYTE instead of .byte. Use fputs or putc instead of fprintf where appropriate. * config/i386/i386-interix.h: Use ASM_BYTE instead of .byte. Use fputs or putc instead of fprintf where appropriate. * config/i386/i386elf.h: Ditto. * config/i386/sysv4.h: Ditto. * config/i386/i386.c (TARGET_ASM_BYTE_OP): New define. * config/i386/i386.md (x86_sahf_1): Use ASM_BYTE instead of .byte. (*tls_global_dynamic_64): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150315 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 309bc29a83c..9357738ca0a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,18 @@ +2009-07-31 Uros Bizjak + + * config/i386/bsd.h (ASM_BYTE): New define. + * config/i386/darwin.h (ASM_BYTE): Rename from ASM_BYTE_OP. + * config/i386/att.h (ASM_BYTE): New define. Use ASM_BYTE instead of + .byte. Use fputs or putc instead of fprintf where appropriate. + * config/i386/i386-interix.h: Use ASM_BYTE instead of .byte. Use + fputs or putc instead of fprintf where appropriate. + * config/i386/i386elf.h: Ditto. + * config/i386/sysv4.h: Ditto. + + * config/i386/i386.c (TARGET_ASM_BYTE_OP): New define. + * config/i386/i386.md (x86_sahf_1): Use ASM_BYTE instead of .byte. + (*tls_global_dynamic_64): Ditto. + 2009-07-31 Christian Bruel * gcc/config.gcc (sh*-*-elf): test with_libgloss. @@ -223,8 +238,7 @@ (vector_copysign3): Ditto. * config/rs6000/predicates.md (easy_vector_constant_msb): New - predicate for setting the high bit in each word, used for - copysign. + predicate for setting the high bit in each word, used for copysign. * config/rs6000/ppc-asm.h (f19): Whitespace. (f32-f63): Define if VSX. @@ -236,8 +250,7 @@ * config/rs6000/power7.md: New file, provide tuning parameters for -mcpu=power7. - * config/rs6000/rs6000-c.c (rs6000_macro_to_expand): Add VSX - support. + * config/rs6000/rs6000-c.c (rs6000_macro_to_expand): Add VSX support. (rs6000_cpu_cpp_builtins): Ditto. (altivec_overloaded_builtins): Ditto. (altivec_resolve_overloaded_builtin): Ditto. @@ -288,8 +301,7 @@ splitter for vectorizing copysign. (altivec_vrfiz): Rename from altivec_fturncv4sf2. Add support for vectorizing simple math functions. - (altivec_vrfip): Add support for vectorizing simple math - functions. + (altivec_vrfip): Add support for vectorizing simple math functions. (altivec_vrfim): Ditto. (altivec_copysign_v4sf3): New insn for Altivec copysign support. @@ -337,9 +349,8 @@ (vec_nearbyint): Ditto. (vec_rint): Ditto. (vec_sqrt): Ditto. - (all predicates): Use the generic builtin function, and not the - V4SF specific function so that the predicates will work with - VSX's V2DF. + (all predicates): Use the generic builtin function, and not the V4SF + specific function so that the predicates will work with VSX's V2DF. (vec_all_*): Ditto. (vec_any_*): Ditto. diff --git a/gcc/config/i386/att.h b/gcc/config/i386/att.h index 6586ddd3d87..30616904fe2 100644 --- a/gcc/config/i386/att.h +++ b/gcc/config/i386/att.h @@ -31,6 +31,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see /* Assembler pseudos to introduce constants of various size. */ +#define ASM_BYTE "\t.byte\t" #define ASM_SHORT "\t.value\t" #define ASM_LONG "\t.long\t" #define ASM_QUAD "\t.quad\t" /* Should not be used for 32bit compilation. */ @@ -43,7 +44,7 @@ do \ { size_t i = 0, limit = (SIZE); \ while (i < limit) \ { if (i%10 == 0) { if (i!=0) putc ('\n', (FILE)); \ - fputs ("\t.byte\t", (FILE)); } \ + fputs (ASM_BYTE, (FILE)); } \ else putc (',', (FILE)); \ fprintf ((FILE), "0x%x", ((PTR)[i++] & 0377)) ;} \ putc ('\n', (FILE)); \ diff --git a/gcc/config/i386/bsd.h b/gcc/config/i386/bsd.h index 229777a4640..e408ccdb032 100644 --- a/gcc/config/i386/bsd.h +++ b/gcc/config/i386/bsd.h @@ -32,6 +32,7 @@ along with GCC; see the file COPYING3. If not see /* Assembler pseudos to introduce constants of various size. */ +#define ASM_BYTE "\t.byte\t" #define ASM_SHORT "\t.word\t" #define ASM_LONG "\t.long\t" #define ASM_QUAD "\t.quad\t" /* Should not be used for 32bit compilation. */ diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h index 039f52f77ba..eb9ee70a04d 100644 --- a/gcc/config/i386/darwin.h +++ b/gcc/config/i386/darwin.h @@ -189,7 +189,7 @@ extern void darwin_x86_file_end (void); /* Assembler pseudos to introduce constants of various size. */ -#define ASM_BYTE_OP "\t.byte\t" +#define ASM_BYTE "\t.byte\t" #define ASM_SHORT "\t.word\t" #define ASM_LONG "\t.long\t" #define ASM_QUAD "\t.quad\t" diff --git a/gcc/config/i386/i386-interix.h b/gcc/config/i386/i386-interix.h index 380b46c3d3c..060b82ca245 100644 --- a/gcc/config/i386/i386-interix.h +++ b/gcc/config/i386/i386-interix.h @@ -209,7 +209,7 @@ along with GCC; see the file COPYING3. If not see else \ { \ if (bytes_in_chunk == 0) \ - fprintf ((FILE), "\t.byte\t"); \ + fputs (ASM_BYTE, (FILE)); \ else \ fputc (',', (FILE)); \ fprintf ((FILE), "0x%02x", *_ascii_bytes); \ @@ -217,7 +217,7 @@ along with GCC; see the file COPYING3. If not see } \ } \ if (bytes_in_chunk > 0) \ - fprintf ((FILE), "\n"); \ + fputc ('\n', (FILE)); \ } \ while (0) @@ -277,11 +277,11 @@ do { \ #define ASM_OUTPUT_DEF(FILE,LABEL1,LABEL2) \ do \ { \ - fprintf ((FILE), "%s", SET_ASM_OP); \ + fputs (SET_ASM_OP, (FILE)); \ assemble_name (FILE, LABEL1); \ - fprintf (FILE, ","); \ + fputc (',', (FILE)); \ assemble_name (FILE, LABEL2); \ - fprintf (FILE, "\n"); \ + fputc ('\n', (FILE)); \ } \ while (0) @@ -359,4 +359,4 @@ extern void i386_pe_unique_section (tree, int); #define SUBTARGET_RETURN_IN_MEMORY(TYPE, FNTYPE) \ (TYPE_MODE (TYPE) == BLKmode \ - || (AGGREGATE_TYPE_P (TYPE) && int_size_in_bytes (TYPE) > 8 )) \ No newline at end of file + || (AGGREGATE_TYPE_P (TYPE) && int_size_in_bytes (TYPE) > 8 )) diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 042ff4419f6..73b26907cc7 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -30491,6 +30491,9 @@ ix86_enum_va_list (int idx, const char **pname, tree *ptree) #undef TARGET_ASM_CLOSE_PAREN #define TARGET_ASM_CLOSE_PAREN "" +#undef TARGET_ASM_BYTE_OP +#define TARGET_ASM_BYTE_OP ASM_BYTE + #undef TARGET_ASM_ALIGNED_HI_OP #define TARGET_ASM_ALIGNED_HI_OP ASM_SHORT #undef TARGET_ASM_ALIGNED_SI_OP diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index f50bcc19320..3d832f11249 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -1555,7 +1555,7 @@ #ifdef HAVE_AS_IX86_SAHF return "sahf"; #else - return ".byte\t0x9e"; + return ASM_BYTE "0x9e"; #endif } [(set_attr "length" "1") @@ -16473,7 +16473,7 @@ (unspec:DI [(match_operand:DI 1 "tls_symbolic_operand" "")] UNSPEC_TLS_GD)] "TARGET_64BIT" - { return ".byte\t0x66\n\tlea{q}\t{%a1@TLSGD(%%rip), %%rdi|rdi, %a1@TLSGD[rip]}\n" ASM_SHORT "0x6666\n\trex64\n\tcall\t%P2"; } + { return ASM_BYTE "0x66\n\tlea{q}\t{%a1@TLSGD(%%rip), %%rdi|rdi, %a1@TLSGD[rip]}\n" ASM_SHORT "0x6666\n\trex64\n\tcall\t%P2"; } [(set_attr "type" "multi") (set_attr "length" "16")]) diff --git a/gcc/config/i386/i386elf.h b/gcc/config/i386/i386elf.h index ba53749acc9..44cf6818f7c 100644 --- a/gcc/config/i386/i386elf.h +++ b/gcc/config/i386/i386elf.h @@ -63,7 +63,7 @@ along with GCC; see the file COPYING3. If not see const unsigned char *limit = _ascii_bytes + (LENGTH); \ unsigned bytes_in_chunk = 0; \ for (; _ascii_bytes < limit; _ascii_bytes++) \ - { \ + { \ const unsigned char *p; \ if (bytes_in_chunk >= 64) \ { \ @@ -85,7 +85,7 @@ along with GCC; see the file COPYING3. If not see else \ { \ if (bytes_in_chunk == 0) \ - fprintf ((FILE), "\t.byte\t"); \ + fputs (ASM_BYTE, (FILE)); \ else \ fputc (',', (FILE)); \ fprintf ((FILE), "0x%02x", *_ascii_bytes); \ @@ -93,7 +93,7 @@ along with GCC; see the file COPYING3. If not see } \ } \ if (bytes_in_chunk > 0) \ - fprintf ((FILE), "\n"); \ + fputc ('\n', (FILE)); \ } \ while (0) diff --git a/gcc/config/i386/sysv4.h b/gcc/config/i386/sysv4.h index bedac7a58b6..63c0cbc85a7 100644 --- a/gcc/config/i386/sysv4.h +++ b/gcc/config/i386/sysv4.h @@ -55,7 +55,7 @@ along with GCC; see the file COPYING3. If not see const unsigned char *limit = _ascii_bytes + (LENGTH); \ unsigned bytes_in_chunk = 0; \ for (; _ascii_bytes < limit; _ascii_bytes++) \ - { \ + { \ const unsigned char *p; \ if (bytes_in_chunk >= 64) \ { \ @@ -77,7 +77,7 @@ along with GCC; see the file COPYING3. If not see else \ { \ if (bytes_in_chunk == 0) \ - fprintf ((FILE), "\t.byte\t"); \ + fputs (ASM_BYTE, (FILE)); \ else \ fputc (',', (FILE)); \ fprintf ((FILE), "0x%02x", *_ascii_bytes); \ @@ -85,7 +85,7 @@ along with GCC; see the file COPYING3. If not see } \ } \ if (bytes_in_chunk > 0) \ - fprintf ((FILE), "\n"); \ + fputc ('\n', (FILE)); \ } \ while (0) @@ -103,10 +103,10 @@ along with GCC; see the file COPYING3. If not see do { \ if ((SIZE) == 4 && ((ENCODING) & 0x70) == DW_EH_PE_datarel) \ { \ - fputs (ASM_LONG, FILE); \ - assemble_name (FILE, XSTR (ADDR, 0)); \ - fputs (((ENCODING) & DW_EH_PE_indirect ? "@GOT" : "@GOTOFF"), FILE); \ - goto DONE; \ + fputs (ASM_LONG, (FILE)); \ + assemble_name (FILE, XSTR (ADDR, 0)); \ + fputs (((ENCODING) & DW_EH_PE_indirect ? "@GOT" : "@GOTOFF"), (FILE)); \ + goto DONE; \ } \ } while (0)