Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(151)

Side by Side Diff: gcc/gcc/config/m68k/linux.h

Issue 3050029: [gcc] GCC 4.5.0=>4.5.1 (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/nacl-toolchain.git
Patch Set: Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « gcc/gcc/config/m68k/lb1sf68.asm ('k') | gcc/gcc/config/m68k/m68k.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* Definitions for Motorola 68k running Linux-based GNU systems with 1 /* Definitions for Motorola 68k running Linux-based GNU systems with
2 ELF format. 2 ELF format.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2006, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2006,
4 2007 Free Software Foundation, Inc. 4 2007, 2009 Free Software Foundation, Inc.
5 5
6 This file is part of GCC. 6 This file is part of GCC.
7 7
8 GCC is free software; you can redistribute it and/or modify 8 GCC is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by 9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3, or (at your option) 10 the Free Software Foundation; either version 3, or (at your option)
11 any later version. 11 any later version.
12 12
13 GCC is distributed in the hope that it will be useful, 13 GCC is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 } while (0) 119 } while (0)
120 120
121 /* This is how to output an assembler line that says to advance the 121 /* This is how to output an assembler line that says to advance the
122 location counter to a multiple of 2**LOG bytes. */ 122 location counter to a multiple of 2**LOG bytes. */
123 123
124 #undef ASM_OUTPUT_ALIGN 124 #undef ASM_OUTPUT_ALIGN
125 #define ASM_OUTPUT_ALIGN(FILE,LOG) \ 125 #define ASM_OUTPUT_ALIGN(FILE,LOG) \
126 if ((LOG) > 0) \ 126 if ((LOG) > 0) \
127 fprintf ((FILE), "%s%u\n", ALIGN_ASM_OP, 1 << (LOG)); 127 fprintf ((FILE), "%s%u\n", ALIGN_ASM_OP, 1 << (LOG));
128 128
129 #ifdef HAVE_GAS_BALIGN_AND_P2ALIGN
130 /* Use "move.l %a4,%a4" to advance within code. */
131 #define ASM_OUTPUT_ALIGN_WITH_NOP(FILE,LOG) \
132 if ((LOG) > 0) \
133 fprintf ((FILE), "\t.balignw %u,0x284c\n", 1 << (LOG));
134 #endif
135
136 /* If defined, a C expression whose value is a string containing the 129 /* If defined, a C expression whose value is a string containing the
137 assembler operation to identify the following data as uninitialized global 130 assembler operation to identify the following data as uninitialized global
138 data. */ 131 data. */
139 132
140 #define BSS_SECTION_ASM_OP "\t.section\t.bss" 133 #define BSS_SECTION_ASM_OP "\t.section\t.bss"
141 134
142 /* A C statement (sans semicolon) to output to the stdio stream 135 /* A C statement (sans semicolon) to output to the stdio stream
143 FILE the assembler definition of uninitialized global DECL named 136 FILE the assembler definition of uninitialized global DECL named
144 NAME whose size is SIZE bytes and alignment is ALIGN bytes. 137 NAME whose size is SIZE bytes and alignment is ALIGN bytes.
145 Try to use asm_output_aligned_bss to implement this macro. */ 138 Try to use asm_output_aligned_bss to implement this macro. */
146 139
147 #define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ 140 #define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
148 asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) 141 asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
149 142
150 /* Output assembler code to FILE to increment profiler label # LABELNO 143 /* Output assembler code to FILE to increment profiler label # LABELNO
151 for profiling a function entry. */ 144 for profiling a function entry. */
152 145 #define NO_PROFILE_COUNTERS 1
153 #undef FUNCTION_PROFILER 146 #undef FUNCTION_PROFILER
154 #define FUNCTION_PROFILER(FILE, LABELNO) \ 147 #define FUNCTION_PROFILER(FILE, LABELNO) \
155 { \ 148 { \
156 asm_fprintf (FILE, "\tlea (%LLP%d,%Rpc),%Ra1\n", (LABELNO)); \
157 if (flag_pic) \ 149 if (flag_pic) \
158 fprintf (FILE, "\tbsr.l _mcount@PLTPC\n"); \ 150 fprintf (FILE, "\tbsr.l _mcount@PLTPC\n"); \
159 else \ 151 else \
160 fprintf (FILE, "\tjbsr _mcount\n"); \ 152 fprintf (FILE, "\tjbsr _mcount\n"); \
161 } 153 }
162 154
163 /* Do not break .stabs pseudos into continuations. */ 155 /* Do not break .stabs pseudos into continuations. */
164 156
165 #define DBX_CONTIN_LENGTH 0 157 #define DBX_CONTIN_LENGTH 0
166 158
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 /* For m68k SVR4, structures are returned using the reentrant 194 /* For m68k SVR4, structures are returned using the reentrant
203 technique. */ 195 technique. */
204 #undef PCC_STATIC_STRUCT_RETURN 196 #undef PCC_STATIC_STRUCT_RETURN
205 #define DEFAULT_PCC_STRUCT_RETURN 0 197 #define DEFAULT_PCC_STRUCT_RETURN 0
206 198
207 /* Finalize the trampoline by flushing the insn cache. */ 199 /* Finalize the trampoline by flushing the insn cache. */
208 200
209 #undef FINALIZE_TRAMPOLINE 201 #undef FINALIZE_TRAMPOLINE
210 #define FINALIZE_TRAMPOLINE(TRAMP) \ 202 #define FINALIZE_TRAMPOLINE(TRAMP) \
211 emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "__clear_cache"), \ 203 emit_library_call (gen_rtx_SYMBOL_REF (Pmode, "__clear_cache"), \
212 » » 0, VOIDmode, 2, TRAMP, Pmode,» » » \ 204 » » LCT_NORMAL, VOIDmode, 2, TRAMP, Pmode,» » \
213 plus_constant (TRAMP, TRAMPOLINE_SIZE), Pmode); 205 plus_constant (TRAMP, TRAMPOLINE_SIZE), Pmode);
214 206
215 /* Clear the instruction cache from `beg' to `end'. This makes an 207 /* Clear the instruction cache from `beg' to `end'. This makes an
216 inline system call to SYS_cacheflush. The arguments are as 208 inline system call to SYS_cacheflush. The arguments are as
217 follows: 209 follows:
218 210
219 cacheflush (addr, scope, cache, len) 211 cacheflush (addr, scope, cache, len)
220 212
221 addr - the start address for the flush 213 addr - the start address for the flush
222 scope - the scope of the flush (see the cpush insn) 214 scope - the scope of the flush (see the cpush insn)
(...skipping 12 matching lines...) Expand all
235 "move%.l #3, %/d3\n\t" /* insn+data caches */ \ 227 "move%.l #3, %/d3\n\t" /* insn+data caches */ \
236 "trap #0" \ 228 "trap #0" \
237 : /* no outputs */ \ 229 : /* no outputs */ \
238 : "d" (_beg), "d" (_len) \ 230 : "d" (_beg), "d" (_len) \
239 : "%d0", "%d2", "%d3"); \ 231 : "%d0", "%d2", "%d3"); \
240 } 232 }
241 233
242 #define TARGET_ASM_FILE_END file_end_indicate_exec_stack 234 #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
243 235
244 #define MD_UNWIND_SUPPORT "config/m68k/linux-unwind.h" 236 #define MD_UNWIND_SUPPORT "config/m68k/linux-unwind.h"
OLDNEW
« no previous file with comments | « gcc/gcc/config/m68k/lb1sf68.asm ('k') | gcc/gcc/config/m68k/m68k.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698