]>
Commit | Line | Data |
---|---|---|
4831bc84 JM |
1 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
2 | ||
3 | * c-common.c (scanf_flag_specs): Add flags ' and I. | |
4 | (strftime_flag_pairs): Disallow any pair of the _, - and 0 flags, | |
5 | or the ^ and # flags together. | |
6 | (scan_char_table): Handle the ' and I flags. | |
7 | (format_types): Add ' and I flags for scanf. | |
8 | ||
2f7026a0 JM |
9 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
10 | ||
11 | * c-common.c (print_char_table): Use the unpromoted type for | |
12 | lengths "h" and "hh" with conversions dioxXu. | |
13 | (check_format_types): Apply the default argument promotions where | |
14 | the wanted type is not a pointer target. | |
15 | ||
bb58bec5 JM |
16 | 2000-10-11 Michael Meeks <mmeeks@gnu.org> |
17 | Joseph S. Myers <jsm28@cam.ac.uk> | |
18 | ||
19 | * c-typeck.c (check_modify_expr): New function. | |
20 | (build_modify_expr): Call it if warn_sequence_point. | |
21 | * c-decl.c (warn_sequence_point): New variable. | |
22 | (c_decode_option): Handle -Wsequence-point and | |
23 | -Wno-sequence-point. Enable -Wsequence-point as part of -Wall. | |
24 | * c-tree.h (warn_sequence_point): Declare. | |
25 | * invoke.texi (-Wsequence-point): Document. | |
26 | * toplev.c (documented_lang_options): Add -Wsequence-point and | |
27 | -Wno-sequence-point. | |
28 | Original work by Michael Meeks, 16 Jun 1998. | |
29 | ||
0fba7208 RK |
30 | Wed Oct 11 06:15:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
31 | ||
32 | * tree.c (get_narrower): Don't look at precision of field if | |
33 | not laid out yet. | |
34 | ||
67e570ea DC |
35 | Tue Oct 10 23:14:33 2000 Denis Chertykov <denisc@overta.ru> |
36 | ||
37 | * config/avr/avr.c (valid_machine_decl_attribute): Allow `extern' | |
38 | declaration for data with "progmem" attribute. | |
39 | ||
80b8585d MM |
40 | 2000-10-09 Marek Michalkiewicz <marekm@linux.org.pl> |
41 | ||
42 | * config/avr/avr.c (out_shift_with_cnt): Use AS2 macro. | |
43 | Correct insn length if shift count is a memory operand. | |
44 | * config/avr/avr.md: New define_peephole2 to use *reload_inqi. | |
45 | (*iorhi3_clobber): Change lo8 to hi8. | |
46 | (zero_extendhisi2): Change %B0 to %A1. | |
47 | (ashlhi3, ashrhi3): Correct insn length. | |
48 | (andhi3, abssf2, extendqisi2, extendhisi2): Change "cc" | |
49 | from "clobber" to "set_n" in some alternatives. | |
50 | ||
462561b7 JJ |
51 | 2000-10-10 Jakub Jelinek <jakub@redhat.com> |
52 | ||
53 | * reload1.c (calculate_needs_all_insns): If deleting an instruction, | |
54 | remove its insn_chain structure as well. | |
55 | ||
0b8833aa DA |
56 | 2000-10-09 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
57 | ||
58 | * dbxout.c (dbxout_source_line): Remove extra tab. | |
59 | ||
c690f089 HPN |
60 | 2000-10-09 Hans-Peter Nilsson <hp@bitrange.com> |
61 | ||
62 | * config/elfos.h (UNIQUE_SECTION): Apply STRIP_NAME_ENCODING on name. | |
63 | ||
1854631b RH |
64 | 2000-10-09 Richard Henderson <rth@cygnus.com> |
65 | ||
66 | * Makefile.in (LANG_LIB2FUNCS): Remove. | |
67 | (LIB2FUNCS): Remove _pure. | |
68 | (LIB2ADD): Remove LANG_LIB2FUNCS. | |
69 | (stage_a): Don't set LANG_LIB2FUNCS. | |
70 | * libgcc2.c (__terminate): Mark noreturn. | |
71 | (__pure_virtual): Remove. | |
72 | * mklibgcc.in: Remove LIB2ADD .txt processing. | |
73 | ||
880c4dcb RE |
74 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
75 | ||
76 | * arm.md (push_multi): Revert unintended change. | |
77 | ||
5895f793 RE |
78 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
79 | ||
80 | * arm.c: Miscellaneous white space and comment clean-ups. No | |
81 | functional change. | |
82 | * arm.md: Likewise. | |
83 | ||
1092710d KG |
84 | 2000-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
85 | ||
86 | * c-common.c (c_expand_builtin_printf): Set the TREE_TYPE of a new | |
87 | STRING_CST by calling combine_strings. | |
88 | ||
ca356f3a RE |
89 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
90 | ||
91 | * arm.c (thumb_expand_movstrqi): Rewrite to support SSA form. | |
92 | (thumb_output_move_mem_multiple): Support new insn format. | |
93 | * arm.md (movmem12b): Use SSA compatible format. | |
94 | (movmem8b): Likewise. | |
95 | ||
cca0a211 RE |
96 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
97 | ||
98 | * arm.md (predicable): New attribute, default to "no". | |
99 | (all patterns): Mark as predicable if appropriate. | |
100 | (conditional execution splits): Split using predication format. | |
101 | (define_cond_exec): Define. | |
102 | * arm.c (arm_print_operand): handle insn predicate. | |
103 | ||
1146cfde GP |
104 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
105 | ||
106 | * README.NS32K: Remove file. | |
107 | ||
108 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
109 | ||
110 | * README-bugs: Remove file. | |
111 | ||
4d0230e1 PT |
112 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
113 | * aclocal.m4 (AM_GNU_GETTEXT): Fix non portable use of == operator | |
114 | for test. | |
115 | * configure: Rebuilt. | |
116 | ||
9fdf713f PT |
117 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
118 | * aclocal.m4 (AM_WITH_NLS): When not using included gettext, | |
119 | disable catalog building if no suitable program was found. | |
120 | Move warning message from here | |
121 | (AM_GNU_GETTEXT): To here. | |
122 | * configure: Rebuilt. | |
123 | ||
00036f5c PT |
124 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
125 | * aclocal.m4 (GCC_PATH_PROG): New. Like AC_PATH_PROG but uses | |
126 | different cache variables. | |
127 | (GCC_PATH_PROG_WITH_TEST): New. Like AM_PATH_PROG_WITH_TEST but | |
128 | uses different cache variables. | |
129 | (AM_WITH_NLS): Use GCC_PATH_PROG and GCC_PATH_PROG_WITH_TEST. | |
130 | * configure: Regenerated. | |
131 | ||
aefa45d3 RH |
132 | 2000-10-08 Richard Henderson <rth@cygnus.com> |
133 | ||
134 | * Makefile.in (libgcc.mk): Pass SHLIB_EXT, not SHLIB_LIBS. | |
135 | * configure.in (sparc*-*-solaris*): Use t-slibgcc{,-sld}. | |
136 | * mklibgcc.in: Consider SHLIB_LINK the entire shlib build command. | |
137 | Use SHLIB_EXT. | |
138 | ||
139 | * config/t-linux (SHLIB_EXT): New. | |
140 | (SHLIB_LINK): Use the entire build command, with substitutions. | |
141 | (SHLIB_LIBS): Remove. | |
142 | * config/alpha/t-osf4: Likewise. | |
143 | * config/mips/t-iris6: Likewise. | |
144 | * config/sparc/t-sol2: Likewise, but move shlib stuff... | |
145 | * config/sparc/t-slibgcc-sld: ...here. | |
146 | * config/sparc/t-slibgcc: New file. | |
147 | ||
b15ad712 JM |
148 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
149 | ||
150 | * tm.texi (INTMAX_TYPE, UINTMAX_TYPE): Define. | |
151 | * c-common.h (enum c_tree_index): Add CTI_INTMAX_TYPE and | |
152 | CTI_UINTMAX_TYPE. | |
153 | (intmax_type_node, uintmax_type_node): Define. | |
154 | * c-common.c (decl_attributes): If pedantic, warn if `mode' | |
155 | attributes create a type wider than intmax_t. | |
156 | (T_IM, T_UIM): Define properly. | |
157 | * c-decl.c (INTMAX_TYPE, UINTMAX_TYPE): Define if not already | |
158 | defined. | |
159 | (init_decl_processing): Initialize intmax_type_node and | |
160 | uintmax_type_node. | |
161 | * c-lex.c (lex_number): When pedantic and warning for integer | |
162 | constants that are too large, in C99 mode warn for those that have | |
163 | a type wider than long long. | |
164 | ||
2588e44e JM |
165 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
166 | ||
167 | * c-common.c (FMT_FLAG_ARG_CONVERT, FMT_FLAG_SCANF_A_KLUDGE, | |
168 | FMT_FLAG_FANCY_PERCENT_OK): Define. | |
169 | (format_char_info): Add flag "4" to comment. | |
170 | (format_flag_spec, format_flag_pair): New structures. | |
171 | (format_kind_info): Add additional fields to control format | |
172 | checking. | |
173 | (printf_flag_specs, printf_flag_pairs, scanf_flag_specs, | |
174 | scanf_flag_pairs, strftime_flag_specs, strftime_flag_pairs): New | |
175 | arrays. | |
176 | (time_char_table): Use "4" flag to handle %Ey. | |
177 | (format_types): Add entries for new fields. | |
178 | (get_flag_spec): New function. | |
179 | (check_format_info): Increase size of flag_chars[] to 256. | |
180 | Control format checking using the new fields of a format_kind_info | |
181 | and the new tables; remove all conditionals on printf_format_type, | |
182 | scanf_format_type or strftime_format_type. Handle all details of | |
183 | bad combinations of flags (including width, precision and strftime | |
184 | modifiers) through data rather than ad hoc code. Handle all | |
185 | details of standard versions in which flags appeared through | |
186 | data. Use the "4" flag. | |
187 | ||
7b7de7c0 WC |
188 | 2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com> |
189 | ||
190 | * config/h8300/h8300.md: Remove the memory alternative and correct | |
191 | the insn lengths in the templates for sign extention and zero | |
192 | extention. | |
193 | ||
9a1ba437 RH |
194 | 2000-10-07 Richard Henderson <rth@cygnus.com> |
195 | ||
196 | * calls.c (expand_call): Disallow sibcalls to noreturn functions. | |
197 | * flow.c (make_edges): Revert last change. | |
198 | ||
199 | * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Don't test | |
200 | TREE_THIS_VOLATILE. | |
201 | * config/pa/pa.h (FUNCTION_OK_FOR_SIBCALL): Likewise. | |
202 | ||
d38d55b4 DB |
203 | 2000-10-06 David O'Brien <obrien@dragon.nuxi.com> |
204 | ||
205 | * config/alpha/elf.h: Standardize the formatting. | |
206 | ||
94984e91 DB |
207 | 2000-10-06 David O'Brien <obrien@FreeBSD.org> |
208 | ||
209 | * config/alpha/elf.h: Protect the ASM_OUTPUT_IDENT definition with an | |
210 | #undef. | |
211 | ||
3e4eac3f RH |
212 | 2000-10-06 Richard Henderson <rth@cygnus.com> |
213 | ||
214 | * function.c (diddle_return_value): Examine | |
215 | current_function_return_rtx instead of the DECL_RESULT. | |
216 | (expand_function_end): Handle reloading DECL_RESULT from memory | |
217 | into a hard register. Query promote_mode for sign of mismatched | |
218 | modes. | |
219 | ||
4071f896 VM |
220 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
221 | ||
222 | * haifa-sched.c (schedule_insns): Fix typo in freeing | |
223 | forward_dependency_cache. | |
224 | ||
eb69f95c AO |
225 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
226 | ||
227 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): Add | |
228 | `TARGET_SH2' as a condition. | |
229 | ||
178b88b9 VM |
230 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
231 | ||
232 | * haifa-sched.c (anti_dependency_cache, output_dependency_cache, | |
233 | forward_dependency_cache): New variables. | |
234 | (add_dependence, remove_dependence): Use anti_dependency_cache and | |
235 | output_dependency_cache. | |
236 | (compute_block_forward_dependences): Use forward_dependency_cache. | |
237 | (schedule_insns): Allocate and free memory for anti/output/forward | |
238 | dependencies caches. | |
239 | ||
827bdee4 AO |
240 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
241 | ||
242 | * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of | |
243 | `! TARGET_SH1'. Reindent. | |
244 | ||
c70eaeaf KG |
245 | 2000-10-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
246 | ||
247 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): | |
248 | Move functions from here ... | |
249 | ||
250 | * c-common.c (is_valid_printf_arglist, c_expand_builtin_printf): | |
251 | ... to here. | |
252 | (c_expand_builtin): New function. | |
253 | (init_function_format_info): Don't set `check_function_format_ptr'. | |
254 | (c_common_nodes_and_builtins): Set built_in_class type for | |
255 | printf/__builtin_printf to BUILT_IN_FRONTEND. | |
256 | (c_expand_expr): Handle CALL_EXPRs that are front-end builtins. | |
257 | ||
258 | * c-common.h (build_function_call): Declare. | |
259 | ||
260 | * expr.c (expand_expr): Pass builtins with class BUILT_IN_FRONTEND | |
261 | to `lang_expand_expr' rather than `expand_builtin'. | |
262 | ||
263 | * tree.c (check_function_format_ptr): Delete. | |
264 | ||
265 | * tree.h (check_function_format_ptr): Likewise. | |
266 | ||
f299afab HPN |
267 | 2000-10-06 Hans-Peter Nilsson <hp@bitrange.com> |
268 | ||
269 | * dwarf2out.c (build_cfa_loc): Correct to use DW_OP_regx or | |
270 | DW_OP_bregx when cfa->reg > 31. | |
271 | ||
272 | * frame-dwarf2.c (decode_stack_op) [case DW_OP_regx]: Add missing | |
273 | break. | |
274 | ||
b313a0fe RH |
275 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
276 | ||
277 | * c-decl.c (warn_missing_noreturn): Remove. | |
278 | (c_expand_body): Don't set or check can_reach_end. | |
279 | * c-tree.h (warn_missing_noreturn): Move ... | |
280 | * flags.h: ... here. | |
281 | (can_reach_end): Remove. | |
282 | * flow.c (check_function_return_warnings): New. | |
283 | (make_edges): No edge to exit for noreturn sibcalls. | |
284 | * function.c (expand_function_end): Save the return value | |
285 | clobber instruction. | |
286 | (mark_function_status): Mark it. | |
287 | * function.h (struct function): Add x_clobber_return_insn. | |
288 | * jump.c (can_reach_end): Remove. | |
289 | (calculate_can_reach_end): Remove. | |
290 | (jump_optimize_1): Don't call it. | |
291 | * output.h (check_function_return_warnings): Declare. | |
292 | * toplev.c (warn_missing_noreturn): Move from c-decl.c | |
293 | (rest_of_compilation): Call check_function_return_warnings. | |
294 | ||
83dad10c RH |
295 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
296 | ||
297 | * Makefile.in (NM_FOR_TARGET): New. | |
298 | (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES. | |
299 | (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET. | |
300 | * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map. Depend the | |
301 | shared library build on that and EXTRA_MULTILIB_PARTS. | |
302 | * mkmap-flat.awk: New file. | |
303 | * mkmap-symver.awk: New file. | |
304 | * libgcc-std.ver: New file. | |
305 | * config/libgcc-glibc.ver: New file. | |
306 | * config/ia64/libgcc-ia64.ver: New file. | |
307 | * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
308 | (SHLIB_LINK): Add --version-script. | |
309 | * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver. | |
310 | * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
311 | * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
312 | (SHLIB_LINK): Add -M. | |
313 | ||
d6eacd48 RH |
314 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
315 | ||
316 | * Makefile.in (LIB2FUNCS): Add _clz. | |
317 | * libgcc2.c (__ffsdi2): Use count_trailing_zeros. | |
318 | (__clz_tab): Put in its own unit, non-static. | |
319 | * libgcc2.h: Always include longlong.h. | |
320 | ||
29279975 RH |
321 | * longlong.h [alpha] (count_leading_zeros): Use cmpbge with |
322 | a zero instead of -1. | |
323 | (count_trailing_zeros): Likewise. | |
324 | ||
c74fa144 RH |
325 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
326 | ||
327 | * config/alpha/alpha.c (alpha_emit_setcc): Don't swap GT tests | |
328 | when second op1 is const0_rtx. Validate op0 as a register. | |
329 | * config/alpha/alpha.md (setcc_internal): Don't allow constants | |
330 | in the first argument of the compare. | |
331 | (setcc_swapped_internal): Likewise. | |
332 | (setne_internal): Likewise. | |
333 | ||
c5620996 GK |
334 | 2000-10-05 Geoff Keating <geoffk@cygnus.com> |
335 | ||
336 | * tree.c (tree_size): New function split out of copy_node. | |
337 | (make_node): Remove obstack handling. Use tree_size. | |
338 | (copy_node): Use tree_size. | |
339 | * tree.h: Prototype tree_size. | |
340 | ||
331fe257 RH |
341 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
342 | ||
343 | * diagnostic.c (output_format): Add missing break. | |
344 | ||
cc0cbae1 JW |
345 | 2000-10-05 Jim Wilson <wilson@cygnus.com> |
346 | ||
347 | * function.c (fixup_var_refs_1, case SET): When gen_move_insn returns a | |
348 | SEQUENCE, call emit_insn_before, copy PATTERN and REG_NOTES of last | |
349 | sequence insn to INSN, and delete last sequence insn. | |
350 | ||
f5fa9a5b PE |
351 | 2000-10-05 Phil Edwards <pme@gcc.gnu.org> |
352 | ||
353 | * gcc.c (main): Include generated configargs.h header | |
354 | and use arguments in '-v' output. | |
355 | ||
2296d164 RK |
356 | Thu Oct 5 16:16:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
357 | ||
358 | * gcc.c: Move data on prefixes forward in file and reorganize. | |
359 | (md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1): | |
360 | Always define, but make null if no value. | |
361 | (static_specs): Add "md_exec_prefix", "md_startfile_prefix", | |
362 | and "md_startfile_prefix_1". | |
363 | (main): Check whether md_exec_prefix and the others are the | |
364 | null string rather than whether the macro is defined. | |
365 | ||
43d75418 R |
366 | Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
367 | ||
368 | * (convert_move): Use zero_extendpsisi2 to do an unsigned extension | |
369 | from PSImode to SImode. | |
370 | ||
e389897b JJ |
371 | 2000-10-05 Jakub Jelinek <jakub@redhat.com> |
372 | ||
373 | * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion | |
374 | from float to integral mode with HOST_BITS_PER_WIDE_INT 64. | |
375 | * dwarf2out.c (add_const_value_attribute): Divide by 4, not | |
376 | sizeof(long). | |
377 | ||
b8fbe62c RK |
378 | Thu Oct 5 09:31:31 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
379 | ||
380 | * fold-const.c (fold, case MINUS_EXPR, case EQ_EXPR): Perform | |
381 | negation in proper type.a | |
382 | ||
50503ac8 RH |
383 | 2000-10-04 Richard Henderson <rth@cygnus.com> |
384 | ||
385 | * configure.in (enable-shared): New. | |
386 | * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well. | |
387 | (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc. | |
388 | * mklibgcc.in: Use them to link shared a libgcc. | |
389 | * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New. | |
390 | * config/alpha/t-ieee (SHLIB_MULTILIB): New. | |
391 | * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New. | |
392 | * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New. | |
393 | ||
394 | * configure.in (alpha-osf*): Use t-osf and x-osf. | |
395 | * config/alpha/t-osf: New file. | |
396 | * config/alpha/t-osf4: New file. | |
397 | * config/alpha/x-osf: New file. | |
398 | * config/alpha/x-alpha: Remove file. | |
399 | ||
4b606faf WC |
400 | 2000-10-04 Will Cohen <wcohen@redhat.com> |
401 | ||
402 | * c-typeck.c (process_init_element): Added warning for zero-length | |
403 | array. | |
404 | ||
405 | * extend.texi (Zero Length): State that static initializers for | |
406 | zero-length arrays are not allowed. | |
407 | ||
c9b89a21 JH |
408 | Mon Oct 2 14:50:14 MET DST 2000 Jan Hubicka <jh@suse.cz> |
409 | ||
410 | * rtlanal.c (single_set_1): Do not require USE and CLOBBERs | |
411 | to come last. | |
412 | ||
81bce466 MH |
413 | 2000-10-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
414 | ||
415 | * config/float-c4x.h: New. | |
416 | * configure.in (c4x-*): Set float_format to c4x. | |
417 | * configure: Regenerate. | |
418 | ||
72882e08 KG |
419 | 2000-10-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
420 | ||
421 | * configure.in (sparc-*-solaris2*): Disable 32-to-64 cross | |
422 | compilation for solaris versions 2.7 and greater. | |
423 | ||
618ec0d7 DB |
424 | 2000-10-02 David O'Brien <obrien@dragon.nuxi.com> |
425 | ||
426 | * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define. | |
427 | ||
f15b9af9 MM |
428 | 2000-10-01 Mark Mitchell <mark@codesourcery.com> |
429 | ||
776749c5 MM |
430 | * config/ns32k/genix.h: Remove. |
431 | * config/ns32k/x-genix: Likewise. | |
432 | * config/ns32k/xm-genix.h: Likewise. | |
433 | * config/fx80: Remove all filee in directory. | |
434 | * config/pyr: Likewise. | |
435 | * config/tahoe: Likewise. | |
436 | * config/gmicro: Likewise. | |
437 | * config/spur: Likewise. | |
438 | * configure.in: Remove configury bits for above targets. | |
439 | * configure: Regenerated. | |
440 | ||
a7b4171a MM |
441 | * configure.in: Don't configure chill by default. |
442 | * configure: Regenerated. | |
443 | ||
f15b9af9 MM |
444 | * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only. |
445 | (lang_mark_false_label_stack): Remove. | |
446 | * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate | |
447 | <top level> string in GC area. | |
448 | (mark_splay_tree_node): New function. | |
449 | (mark_splay_tree): Likewise. | |
450 | * except.c (mark_eh_status): Only call lang_mark_false_label_stack | |
451 | if it exists. | |
452 | * ggc-callbacks.c (lang_mark_false_label_stack): Remove. | |
453 | * ggc-common.c (lang_mark_false_label_stack): Change type. | |
454 | * ggc.h (ggc_alloc_string): Add comment. | |
455 | (ggc_strdup): New function. | |
456 | ||
51296ba0 DC |
457 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> |
458 | ||
459 | * config/avr/avr.h (BRANCH_COST): Define as 0. | |
460 | ||
461 | * config/pdp11/pdp11.c: #include "tree.h" added. | |
462 | ||
adcd8f77 MM |
463 | 2000-09-30 Marek Michalkiewicz <marekm@linux.org.pl> |
464 | ||
465 | * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out, | |
466 | ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases | |
467 | with known shift count. | |
468 | * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3): | |
469 | New alternative for shift count 2 with no scratch register. | |
470 | (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to | |
471 | "set_n" for shift counts 1 and 2. | |
472 | ||
e35b9579 GK |
473 | 2000-09-30 Geoff Keating <geoffk@cygnus.com> |
474 | ||
475 | * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE. Calculate | |
476 | the mask value from the individual SET operations. | |
477 | (return_internal_si): Move the USE after the RETURN. | |
478 | (return_internal_di): Likewise. | |
479 | (return_and_restore_fpregs_si): Likewise. | |
480 | (return_and_restore_fpregs_di): Likewise. | |
481 | (return_eh_si): Likewise. | |
482 | (return_eh_di): Likewise. | |
483 | * config/rs6000/rs6000.c (mtcrf_operation): Don't look for, | |
484 | or check, the USE. | |
485 | (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr. | |
486 | Don't generate a PARALLEL around a single operation movsi_to_cr. | |
487 | Generate the RETURN first in any PARALLELs. | |
488 | ||
489 | * rtlanal.c (single_set_1): Use fatal_insn to display the | |
490 | invalid insn. Check for more cases when a USE or CLOBBER occurs | |
491 | before a SET. | |
492 | * Makefile.in: Update dependencies for rtlanal.o. | |
493 | ||
1fba7553 JM |
494 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
495 | ||
496 | * i386.c: Move include of "config.h" to before that of <setjmp.h>. | |
497 | ||
28e6b1c2 JM |
498 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
499 | ||
500 | * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi: | |
501 | Consistently use @email for formatting email addresses. | |
502 | ||
f2fa288f RH |
503 | 2000-09-29 Richard Henderson <rth@cygnus.com> |
504 | ||
505 | * cse.c (notreg_cost): New argument outer. | |
506 | (COST): Pass in SET to notreg_cost | |
507 | (COST_IN): New. | |
508 | (fold_rtx): Use COST_IN. Prefer constants when costs | |
509 | are the same. | |
510 | ||
a1c63101 DE |
511 | 2000-09-29 David Edelsohn <edelsohn@gnu.org> |
512 | ||
513 | * fixinc/inclhack.def (broken_cabs): Generalize regex. | |
514 | * fixinc/fixincl.x: Regenerate. | |
515 | ||
70dd0f7f FS |
516 | 2000-09-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
517 | ||
518 | * loop.c (check_final_value): A GIV is not replaceable if used | |
519 | before set. | |
520 | ||
0c6129af JL |
521 | Fri Sep 29 10:04:12 2000 Jeffrey A Law (law@cygnus.com) |
522 | ||
523 | * version.c: Bump to gcc-2.97. | |
524 | ||
525 | Frs Sep 29 13:37:59 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
6c698a6d JH |
526 | |
527 | * final.c (final_scan_insn): Remove extra extract_insn call; | |
528 | Use caching for constrain_operands. | |
529 | (cleanup_subreg_operands): Use caching for extract_insn. | |
530 | * recog.c (constrain_operands_cached): New. | |
531 | * recog.h (constrain_operands_cached): Declare. | |
532 | * i386.c (ix86_attr_length_immediate_default, | |
533 | ix86_attr_length_address_default, ix86_agi_dependant): Cache | |
534 | extract_insn call. | |
535 | ||
536 | * recog.c (asm_noperands): Tweak. | |
537 | (extract_insn): Do not call asm_noperads for non-asm instructions. | |
538 | ||
539 | Fri Sep 29 13:20:42 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
540 | ||
541 | * recog.c (recog_memoized): Rename to recog_memoized_1. | |
542 | * recog.h (recog_memoized): Rename to recog_memoized_1. | |
543 | (recog_memoized): New macro. | |
544 | * rtl.h (single_set): Rename to single_set_1 | |
545 | (single_set): New macro. | |
546 | * rtlanal.c (single_set): Rename to single_set_1; expect clobbers | |
547 | to be last. | |
548 | ||
549 | * i386.md (strmovsi_1, strmovhi_1 strmovqi_1): | |
550 | Do not use match_dup of input operands at outputs. | |
551 | Use register_operand for memory expression. | |
552 | (rep_movsi): Put use last, canonicalize. | |
553 | Use register_operand for memory expression. | |
554 | (rep_movqi): Put use last. | |
555 | Use register_operand for memory expression. | |
556 | (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup | |
557 | of input operands at outputs. Use register_operand for memory | |
558 | expression. | |
559 | (rep_stossi): Put use last; canonicalize; fix match_dup in | |
560 | the address expression | |
561 | (rep_stosqi): Likewise. | |
562 | (memcmp expander): Update calls. | |
563 | (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in | |
564 | the clobbers. | |
565 | ||
566 | * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is | |
567 | VOIDmode. | |
568 | (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons. | |
569 | ||
41e5a1f5 DB |
570 | 2000-09-28 David O'Brien <obrien@FreeBSD.org> |
571 | ||
572 | * config/i386/freebsd-aout.h: New, FreeBSD a.out config file. | |
573 | Contains the old contents of config/i386/freebsd.h | |
574 | * config/i386/freebsd.h: Now the ELF rather than a.out config file. | |
575 | Contains the old contents of config/i386/freebsd-elf.h | |
576 | * config/i386/freebsd-elf.h: Retire this file -- contents moved to | |
577 | config/i386/freebsd.h. | |
578 | * configure.in: Adjust for above changes. | |
579 | * po/POTFILES.in: Likewise. | |
580 | * po/en_GB.po: Likewise. | |
581 | * po/gcc.pot: Likewise. | |
582 | * configure: Rebuilt. | |
583 | ||
1db88ef9 | 584 | 2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
70dd0f7f | 585 | |
1db88ef9 FS |
586 | * doloop.c (doloop_modify): Prevent delete_insn() from |
587 | deleting too much. Prefer loop->top over loop->start as | |
588 | target for the new JUMP insn. | |
589 | (doloop_valid_p): Ignore loop with exit_count != 0. | |
590 | ||
6a07a77f PT |
591 | 2000-09-28 Philipp Thomas <pthomas@suse.de> |
592 | ||
593 | * invoke.texi (i386 Options): Add athlon to table of possible | |
594 | choices for -mcpu=. | |
595 | ||
b5dd2c76 GDR |
596 | 2000-09-28 Gabriel Dos Reis <gdr@codesourcery.com> |
597 | ||
598 | * diagnostic.h (output_clear_message_text): New function. | |
599 | (output_message_text): New macro. | |
600 | ||
601 | * diagnostic.c (clear_text_info): Rename to | |
602 | output_clear_message_text. | |
603 | (output_clear): Adjust. | |
604 | (output_finish): Rename to output_finalize_message. Tweek. | |
605 | (output_to_stream): Adjust. | |
606 | ||
d8090680 NB |
607 | 2000-09-28 Neil Booth <neilb@earthling.net> |
608 | ||
609 | * cpperror.c (_cpp_begin_message): Do the test for suppression | |
610 | of warnings and pedantic warnings before the "is a warning an | |
611 | error" tests. | |
612 | * cppinit.c (cpp_handle_option): Remove surplus \n. | |
613 | * cpplex.c (ON_REST_ARG): Delete. | |
614 | (skip_block_comment): Initialise prevc. | |
615 | (parse_args): Improve error messages. | |
616 | (maybe_paste_with_next): Use CONTEXT_VARARGS rather | |
617 | than ON_REST_ARG. | |
618 | * cpplib.c (cpp_push_buffer): Fix grammar in message. | |
619 | * cppmain.c (main): Set callbacks for #ident and #pragma | |
620 | only if no_output option is false. | |
621 | (do_pragma_implementation): Only call the #pragma handler | |
622 | if it is set in the cpp_reader structure. | |
623 | ||
e93eff94 DL |
624 | Wed Sep 27 14:00:07 2000 Donald Lindsay <dlindsay@cygnus.com> |
625 | ||
626 | * integrate.c (copy_insn_list): if an ignored return value | |
627 | is being clobbered, skip cloning that into the inline copy. | |
628 | ||
59c5d27a JM |
629 | 2000-09-27 Joseph S. Myers <jsm28@cam.ac.uk> |
630 | ||
631 | * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently | |
632 | use @uref for formatting URLs. | |
633 | ||
15ca066d ME |
634 | 2000-09-27 Mark Elbrecht <snowball3@bigfoot.com> |
635 | ||
636 | * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables | |
637 | name and prefix. | |
638 | ||
5a8e2650 NB |
639 | Tue 26-Sep-2000 18:25:38 BST Neil Booth <neilb@earthling.net> |
640 | ||
641 | * gcc.c (cpp_options): Add spec for -ftabstop=. | |
642 | (invoke_as): New spec that handles invoking as. | |
643 | Update specs to handle -save-temps and -traditional. | |
644 | * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h: | |
645 | Use invoke_as. | |
646 | * cp/lang-specs.h, objc/lang-specs.h: Update to use | |
647 | invoke_as, and handle -save-temps and -traditional (if | |
648 | appropriate). | |
649 | ||
380f6ad3 JJ |
650 | 2000-09-26 Jakub Jelinek <jakub@redhat.com> |
651 | ||
652 | * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when | |
653 | op0 is a SUBREG. | |
654 | (function_arg_slotno): Accept TImode/CTImode. | |
655 | * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define | |
656 | to UNITS_PER_WORD. | |
657 | ||
ef120fc0 MH |
658 | 2000-09-26 Michael Hayes <mhayes@cygnus.com> |
659 | ||
660 | * flow.c (flow_loop_pre_header_scan): Punt if loop enters | |
661 | from entry block. | |
662 | ||
cf606f45 JW |
663 | 2000-09-25 Jim Wilson <wilson@cygnus.com> |
664 | ||
665 | * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS. | |
666 | (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P. | |
667 | (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG. | |
668 | (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P. | |
669 | ||
a94c1199 NB |
670 | Tue 26-Sep-2000 00:16:22 BST Neil Booth <neilb@earthling.net> |
671 | ||
672 | * cpplex.c (parse_args): Don't set VOID_REST flag. | |
673 | (CONTEXT_VARARGS): New flag. | |
674 | (maybe_paste_with_next): Set context earlier in loop. Use | |
675 | it. Do varargs test with CONTEXT_VARARGS flag. | |
676 | (push_arg_context): Set CONTEXT_VARARGS flag if we're | |
677 | pushing an argument context for a varargs argument. | |
678 | * cpplib.h (VOID_REST): Delete. | |
679 | * gcc.dg/cpp/vararg1.c: Add test case. | |
680 | ||
317639a8 BC |
681 | 2000-09-25 Branko Cibej <branko.cibej@hermes.si> |
682 | ||
683 | * flags.h: Declare warning flag warn_system_headers. | |
684 | * toplev.c: Define it. | |
685 | (W_options): Add option -Wsystem-headers. | |
686 | * diagnostic.c (count_error): Test warn_system_headers. | |
687 | * invoke.texi: Add description for -Wsystem-headers. | |
688 | * cpplib.h (cpp_options): New member warn_system_headers. | |
689 | * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test | |
690 | CPP_IN_SYSTEM_HEADER. | |
691 | * cpplib.c (do_import, do_pragma_once): Likewise. | |
692 | * cpperror.c (_cpp_begin_message): Test warn_system_headers | |
693 | and CPP_IN_SYSTEM_HEADER. | |
694 | * cppinit.c (handle_option): Recognize -Wsystem_headers. | |
695 | (print_help): Describe -Wsystem_headers. | |
696 | * cpplex.c (lex_line): Reorganize condition so that warnings | |
697 | about C++ comments in system headers can be enabled. Remove | |
698 | label do_line_comment. | |
699 | ||
1c6d33ef NB |
700 | Mon 25-Sep-2000 23:38:27 BST Neil Booth <neilb@earthling.net> |
701 | ||
702 | * cpplex.c (save_comment): Only store the initial '/' | |
703 | now. | |
704 | (lex_token): Combine handling of the two comment types. | |
705 | Pass everything but the initial '/' to save_comment. | |
706 | ||
7de4d004 NB |
707 | Mon 25-Sep-2000 23:31:45 BST Neil Booth <neilb@earthling.net> |
708 | ||
709 | * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive, | |
710 | _cpp_can_paste): New library-internal prototypes. | |
711 | * cpplex.c (dump_param_spelling, output_line_command, | |
712 | output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput, | |
713 | cpp_printf, cpp_output_list): Move to cppoutput.c. | |
714 | (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix. | |
715 | * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to | |
716 | cppoutput.c. | |
717 | * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token, | |
718 | dump_param_spelling, output_line_command, cpp_scan_buffer, | |
719 | cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved | |
720 | from elsewhere. | |
721 | * Makefile.in: Add cppoutput.c. | |
722 | * po/POTFILES.in: Add cppoutput.c. | |
723 | ||
66db6b45 RH |
724 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
725 | ||
726 | * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n. | |
727 | * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't | |
728 | split until after reload. | |
729 | (rotlsi3, rotldi3): New. | |
730 | ||
4b40f758 GDR |
731 | 2000-09-25 Gabriel Dos Reis <gdr@codesourcery.com> |
732 | ||
733 | * diagnostic.c (output_last_position): Define. | |
734 | (set_real_maximum_length): Tweek. | |
735 | * diagnostic.h (output_last_position): Declare. | |
736 | ||
0f290768 KH |
737 | 2000-09-25 Kazu Hirata <kazu@hxi.com> |
738 | ||
739 | * config/i386/i386.c: Fix formatting. | |
740 | ||
90e9ee6c AL |
741 | 2000-09-24 Alan Lehotsky <alehotsky@cygnus.com> |
742 | ||
743 | * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when | |
744 | UNITS_PER_WORD is small. | |
745 | ||
0e00b68b JM |
746 | 2000-09-25 Joseph S. Myers <jsm28@cam.ac.uk> |
747 | ||
748 | * c-common.c (format_char_info): Add flags2; update comments. | |
749 | (print_char_table, scan_char_table, time_char_table): Split some | |
750 | flags out into flags2. | |
751 | (check_format_info): Use flags2 for those flags, for identifying | |
752 | the initial character of a scanf scanset, and for identifying | |
753 | printf formats where the '0' flag is ignored with precision. | |
754 | ||
0a3e1f45 HPN |
755 | 2000-09-25 Hans-Peter Nilsson <hp@axis.com> |
756 | ||
757 | Changes below marked "here" add TABs on either or both sides, | |
758 | covering start of line, up to any operand for all noted .*ASM.*_OP | |
e8638df0 | 759 | definitions. All callers changed. |
047c1c92 HPN |
760 | * tm.texi: Make documented *_ASM.*_OP:s include spacing |
761 | (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP, | |
762 | BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
763 | ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
764 | ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP). | |
765 | Fix typos in description for LONG_LONG_TYPE_SIZE and | |
766 | FINI_SECTION_ASM_OP. | |
0a3e1f45 HPN |
767 | * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain |
768 | why these defaults don't have leading spacing. | |
769 | * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here. | |
770 | * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
771 | UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
772 | * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP, | |
773 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP, | |
774 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here. | |
775 | * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
776 | * varasm.c (ASM_STABS_OP): Here. | |
777 | * xcoffout.h (ASM_STABS_OP): Here. | |
e662a129 HPN |
778 | * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, |
779 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
780 | INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, | |
781 | STRING_ASM_OP): Here. | |
782 | * config/freebsd.h (IDENT_ASM_OP): Here. | |
783 | * config/linux-aout.h (SET_ASM_OP): Here. | |
784 | * config/linux.h (SET_ASM_OP): Here. | |
785 | * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
786 | INT_ASM_OP): Here. | |
787 | * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
788 | * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here. | |
789 | * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
790 | * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
791 | INT_ASM_OP): Here. | |
792 | * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, | |
793 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
794 | INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP, | |
795 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
796 | FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here. | |
797 | * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
798 | CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
8c13c7b3 HPN |
799 | * config/a29k/udi.h (INT_ASM_OP): Here. |
800 | * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP, | |
801 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
802 | SET_ASM_OP): Here. | |
803 | * config/alpha/alpha.h (TEXT_SECTION_ASM_OP, | |
804 | READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
805 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
806 | UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP, | |
807 | ASM_STABD_OP): Here. | |
808 | * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP, | |
809 | COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP, | |
810 | CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
811 | BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP, | |
812 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP, | |
813 | SIZE_ASM_OP, STRING_ASM_OP): Here. | |
814 | * config/alpha/vms.h (LINK_SECTION_ASM_OP, | |
815 | READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP, | |
816 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here. | |
817 | * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here. | |
8202cda0 | 818 | (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT. |
8c13c7b3 HPN |
819 | * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): |
820 | Here. | |
821 | * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
822 | BSS_SECTION_ASM_OP, SET_ASM_OP): Here. | |
823 | * config/arm/coff.h (INT_ASM_OP): Here. | |
824 | * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
825 | * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here. | |
826 | * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP, | |
827 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here. | |
828 | * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
829 | * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
830 | ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP, | |
831 | STRING_ASM_OP): Here. Update documentation copy in comments. | |
4e8aa65c HPN |
832 | * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here. |
833 | * config/clipper/clipper.h (TEXT_SECTION_ASM_OP, | |
834 | DATA_SECTION_ASM_OP): Here. | |
835 | * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): | |
836 | Here. | |
837 | * config/convex/convex.h (TEXT_SECTION_ASM_OP, | |
838 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
839 | * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
840 | BSS_SECTION_ASM_OP): Here. | |
841 | * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
842 | BSS_SECTION_ASM_OP): Here. | |
843 | * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
844 | Here. | |
845 | * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP, | |
846 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
847 | * config/h8300/h8300.h (ASM_WORD_OP): Here. | |
71d48a01 HPN |
848 | * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, |
849 | BSS_SECTION_ASM_OP): Here. | |
850 | * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here. | |
851 | * config/i386/bsd.h (ASM_BYTE_OP): Here. | |
852 | * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here. | |
853 | * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here. | |
854 | * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP): | |
855 | Here. | |
856 | * config/i386/freebsd-elf.h (SET_ASM_OP): Here. | |
857 | * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): | |
858 | Here. | |
859 | * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP, | |
860 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
861 | * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP, | |
862 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
863 | SET_ASM_OP): Here. | |
864 | * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here. | |
865 | * config/i386/netbsd.h (INT_ASM_OP): Here. | |
866 | * config/i386/openbsd.h (INT_ASM_OP): Here. | |
867 | * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP, | |
868 | IDENT_ASM_OP): Here. | |
869 | * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP, | |
870 | ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP, | |
871 | LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP, | |
872 | SKIP_ASM_OP, GLOBAL_ASM_OP): Here. | |
873 | * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP, | |
874 | SHARED_BSS_SECTION_ASM_OP): Here. | |
875 | * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
876 | * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
877 | DATA_SECTION_ASM_OP): Here. | |
878 | * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
879 | CONST_SECTION_ASM_OP): Here. | |
880 | * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here. | |
881 | * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
882 | BSS_SECTION_ASM_OP): Here. | |
de323aa1 HPN |
883 | * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here. |
884 | * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here. | |
885 | * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP, | |
886 | BSS_ASM_OP): Here, but use trailing spaces. | |
887 | * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
888 | DATA_SECTION_ASM_OP): Here. | |
889 | * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP): | |
890 | Here. | |
891 | * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP, | |
892 | DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here. | |
893 | * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
894 | TDESC_SECTION_ASM_OP): Here. | |
895 | * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP, | |
896 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
897 | * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
898 | Here. | |
899 | * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
900 | BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
901 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
902 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
903 | * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP, | |
904 | COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP, | |
905 | FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
906 | SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here. | |
6e7b07a7 HPN |
907 | * config/m32r/m32r.h (SCOMMON_ASM_OP): Here. |
908 | * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here. | |
909 | * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
910 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
911 | SET_ASM_OP): Here. | |
912 | * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
913 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
914 | * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here. | |
915 | * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here. | |
916 | * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here. | |
917 | * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here. | |
918 | * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here. | |
919 | * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
920 | GLOBAL_ASM_OP): Here. | |
921 | * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP, | |
922 | BSS_SECTION_ASM_OP): Here. | |
923 | * config/m68k/m68kv4.h (BSS_ASM_OP): Here. | |
924 | * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
925 | ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP, | |
926 | DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP, | |
927 | SKIP_ASM_OP): Here. | |
928 | * config/m68k/newsgas.h (SET_ASM_OP): Here. | |
929 | * config/m68k/rtemself.h (INIT_SECTION_ASM_OP, | |
930 | FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
931 | * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
932 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
933 | SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here, | |
934 | but use trailing spaces. | |
935 | * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP, | |
936 | DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP, | |
937 | FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP): | |
938 | Here. | |
939 | * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
940 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
941 | * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
942 | CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
943 | DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
944 | IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP, | |
945 | GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP, | |
946 | BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP, | |
947 | CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP, | |
948 | SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP, | |
949 | VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
950 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP, | |
951 | ASM_BYTE_OP): Here. | |
952 | * config/m88k/openbsd.h (SET_ASM_OP): Here. | |
953 | * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
954 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
78d057d8 HPN |
955 | * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP, |
956 | UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP, | |
957 | DTORS_SECTION_ASM_OP): Here. | |
958 | * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP, | |
959 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
960 | * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
961 | BSS_SECTION_ASM_OP): Here. | |
962 | * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
963 | * config/mips/iris5.h (ABICALLS_ASM_OP): Here. | |
964 | * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
965 | POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32, | |
966 | CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP, | |
967 | DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
968 | * config/mips/mips.c (ABICALLS_ASM_OP): Here. | |
969 | * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): | |
970 | Here. | |
971 | * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP): | |
972 | Here. | |
973 | * config/mips/osfrose.h (SET_ASM_OP): Here. | |
974 | * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here. | |
76bbee81 HPN |
975 | * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here. |
976 | * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here. | |
977 | * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
978 | Here. | |
979 | * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
980 | * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here. | |
981 | * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
982 | * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here. | |
983 | * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
984 | * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
985 | Here. | |
986 | * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
987 | Here. | |
988 | * config/rs6000/rs6000.h (SET_ASM_OP): Here. | |
989 | * config/rs6000/sol2.h (ASM_STABN_OP): Here. | |
990 | * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP): | |
991 | Here. | |
471b6f1b HPN |
992 | * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP, |
993 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here. | |
994 | * config/sparc/linux.h (COMMON_ASM_OP): Here. | |
995 | * config/sparc/linux64.h (COMMON_ASM_OP, | |
996 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
997 | * config/sparc/litecoff.h (BSS_SECTION_ASM_OP, | |
998 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
999 | * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here. | |
1000 | * config/sparc/pbd.h (ASM_INT_OP): Here. | |
1001 | * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here. | |
1002 | * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
1003 | DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here. | |
1004 | * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP, | |
1005 | UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here. | |
1006 | * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP, | |
1007 | UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
1008 | UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, | |
1009 | TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, | |
1010 | CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
1011 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
1012 | EH_FRAME_SECTION_ASM_OP): Here. | |
1013 | * config/sparc/vxsim.h (COMMON_ASM_OP): Here. | |
1014 | * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
1015 | Here. | |
1016 | * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
1017 | Here. | |
1018 | * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP, | |
1019 | TCOMMON_ASM_OP): Here. | |
1020 | * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
1021 | Here. | |
1022 | * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
1023 | ASM_BYTE_OP): Here. | |
0a3e1f45 | 1024 | |
ea9ea008 RH |
1025 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
1026 | ||
1027 | * expmed.c (store_bit_field): Adjust last change to not consider | |
1028 | any word-sized field naturally aligned. | |
1029 | ||
9e495700 RH |
1030 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
1031 | ||
1032 | * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle | |
1033 | TFmode unordered compares properly. Revalidate integer compare | |
1034 | operands. | |
1035 | (alpha_emit_setcc): New. | |
1036 | (alpha_emit_conditional_move): Revalidate integer compare operands. | |
1037 | * config/alpha/alpha-protos.h: Update. | |
1038 | * config/alpha/alpha.md (cmpdi): Allow general operands. | |
1039 | (sne): Use alpha_emit_setcc. | |
1040 | (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise. | |
1041 | (sunordered, sordered): New. | |
1042 | ||
2ed4af6f RH |
1043 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
1044 | ||
1045 | * config/ia64/ia64-protos.h: Update. | |
1046 | * config/ia64/ia64.c (call_multiple_values_operation): Remove. | |
1047 | (ia64_expand_call): New. | |
1048 | (ia64_expand_prologue): Emit an alloc if we need extra input | |
1049 | registers. | |
1050 | (ia64_expand_epilogue): New arg sibcall_p; don't emit the return | |
1051 | instruction if true. | |
1052 | (struct reg_flags): Add is_sibcall. | |
1053 | (rtx_needs_barrier): A sibcall does not use CFM et al. Ignore USEs. | |
1054 | (emit_insn_group_barriers): Set flags.is_sibcall. Remove hacks | |
1055 | for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal. | |
1056 | * config/ia64/ia64.h (PREDICATE_CODES): Update. | |
1057 | * config/ia64/ia64.md (call): Use ia64_expand_call. | |
1058 | (call_value): Likewise. | |
1059 | (sibcall, sibcall_value): New. | |
1060 | (call patterns): Remove extra expanders; tidy. | |
1061 | (sibcall_epilogue): New. | |
1062 | (set_bsp): Remove the extra USE. Put the operand inside the UNSPEC. | |
1063 | ||
e1389cac RH |
1064 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
1065 | ||
1066 | * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode. | |
1067 | ||
fd442cef RH |
1068 | * sibcall.c (skip_pic_restore): New. |
1069 | (identify_call_return_value): Use it. | |
1070 | ||
c06aa51e MM |
1071 | 2000-09-24 Mark Mitchell <mark@codesourcery.com> |
1072 | ||
1073 | * c-tree.texi: Moved here from cp/ir.texi. Documented nested | |
1074 | functions. Generalize to handle both C and C++. | |
1075 | * Makefile.in (c-tree.info): New target. | |
1076 | (info): Add c-tree.info. | |
1077 | ||
bd5dab53 RK |
1078 | Sun Sep 24 09:15:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1079 | ||
1080 | * expr.c (store_field): If BITSIZE is negative, use size of type. | |
1081 | (expand_expr, case COMPONENT_EXPR): Likewise. | |
1082 | ||
838f313b NB |
1083 | Sun 24-Sep-2000 11:40:23 BST Neil Booth <NeilB@earthling.net> |
1084 | ||
1085 | * cpplex.c: Update TODO comment. | |
1086 | * cpplib.c (do_error, do_warning): Merge common code of | |
1087 | do_error and do_warning into do_diagnostic. Use it. | |
1088 | (do_diagnostic): New function. | |
1089 | * cpplib.h: Fix comment typo. | |
1090 | ||
c5412f06 JM |
1091 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
1092 | ||
1093 | * c-common.c (check_format_info): Warn for a wide character string | |
1094 | used as a non-wide format argument. | |
1095 | ||
1c44c45d JM |
1096 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
1097 | ||
1098 | * builtins.def (BUILT_IN_LLABS): Add. | |
1099 | * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS. | |
1100 | * c-common.c (c_common_nodes_builtins): Create builtin functions | |
1101 | __builtin_llabs, and plain llabs unless no_nonansi_builtins | |
1102 | outside of C99 mode. | |
1103 | (expand_tree_builtin): Handle BUILT_IN_LLABS. | |
1104 | ||
cbcff6df NB |
1105 | Sat 23-Sep-2000 22:39:18 BST Neil Booth <NeilB@earthling.net> |
1106 | ||
1107 | * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q, | |
1108 | CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete. | |
1109 | * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist, | |
1110 | _cpp_free_toklist): No need to worry about extra dummy token | |
1111 | at the start of token lists any more. | |
1112 | (trigraph_ok): Only warn outside comments. | |
1113 | (skip_block_comment): Set and clear lexing_comment. | |
1114 | (skip_line_comment): Take a cpp_reader not cpp_buffer. | |
1115 | Set and clear lexing_comment. | |
1116 | (parse_number): Handle leading '.' indicated by pfile->seen_dot. | |
1117 | (check_long_token): Delete. | |
1118 | (lex_percent, lex_dot): New subroutines of lex_token to | |
1119 | handle lexing of '.' and '%' without lookback. | |
1120 | (lex_token): Use lex_dot and lex_percent. | |
1121 | (lex_line): Don't check for LIST_OFFSET. | |
1122 | (_cpp_init_input_buffer): Update for new _cpp_init_toklist. | |
1123 | * cpplib.c (_cpp_parse_assertion): Similarly. | |
1124 | (cpp_push_buffer): Initialize extra_char. | |
1125 | * cpplib.h (LIST_OFFSET): Delete. | |
1126 | (struct cpp_buffer): New member extra_char. | |
1127 | (struct lexer_state): New members lexing_comment and seen_dot. | |
1128 | ||
2abdcaee JM |
1129 | 2000-09-23 Jason Merrill <jason@redhat.com> |
1130 | ||
1131 | * config/rs6000/x-aix41 (CLIB): Define here. | |
1132 | * config/rs6000/t-aix43: Not here. | |
1133 | * config/rs6000/t-aix41: Or here. Remove. | |
1134 | * configure.in: Don't use it. | |
1135 | ||
981d4858 JM |
1136 | 2000-09-22 Jason Merrill <jason@redhat.com> |
1137 | ||
2abdcaee JM |
1138 | * configure.in: Add test for HAVE_LD_DWARF_LINKONCE. |
1139 | * toplev.c: Use it to initialize flag_eliminate_dwarf2dups. | |
1140 | * config.in: Regenerate. | |
1141 | ||
981d4858 JM |
1142 | * configure.in: Fix checks for assembler features when using a |
1143 | one-tree assembler that has not yet been built. | |
1144 | Fix --disable-threads. | |
1145 | ||
afa223c6 GK |
1146 | 2000-09-19 Geoff Keating <geoffk@cygnus.com> |
1147 | ||
1148 | * stmt.c (expand_asm_operands): Allow # in constraints. | |
1149 | ||
a3a834aa JM |
1150 | 2000-09-22 Jason Merrill <jason@redhat.com> |
1151 | ||
1152 | * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace. | |
1153 | ||
1154 | * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for | |
1155 | function-local names. | |
1156 | ||
18424ae1 BL |
1157 | 2000-09-22 Brad Lucier <lucier@math.purdue.edu> |
1158 | Mark Mitchell <mark@codesourcery.com> | |
1159 | ||
1160 | * toplev.c (warn_disabled_optimization): Declare new warning flag. | |
1161 | * flags.h (warn_disabled_optimization): Add it here. | |
1162 | * gcse.c (gcse_main): Add warning when disabled. | |
a3a834aa | 1163 | * invoke.texi: Document -Wdisabled-optimization. |
18424ae1 | 1164 | |
1bfb5f8f JM |
1165 | 2000-09-21 Jason Merrill <jason@redhat.com> |
1166 | ||
1167 | * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4. | |
1168 | ||
1169 | * dwarf2out.c (tree_add_const_value_attribute): New fn. | |
1170 | (gen_variable_die): Call it for non-definitions. | |
1171 | ||
1172 | * dwarf2out.c (die_struct): Add die_mark field. | |
1173 | (mark_dies, unmark_dies): New fns. | |
1174 | (clear_die_sizes): Remove. | |
1175 | (print_die): Check die_symbol rather than die_offset. | |
1176 | (build_abbrev_table, output_pubnames, output_aranges): Check | |
1177 | die_mark rather than die_offset. | |
1178 | (output_comp_unit): Move calc_die_sizes after build_abbrev_table. | |
1179 | Call mark_dies. | |
1180 | ||
2047e26f NB |
1181 | Thu 21-Sep-2000 18:19:05 BST Neil Booth <NeilB@earthling.net> |
1182 | ||
1183 | * cppfiles.c (lookup_include_file): Rename to open_file. | |
1184 | Always create a splay tree value, even on syscall failures. | |
1185 | Negative entries indicated by fd == -2. | |
1186 | Re-open files closed in the meantime. | |
1187 | (_cpp_fake_include): Create a negative splay tree entry. | |
1188 | (find_include_file, cpp_read_file): Update for function name | |
1189 | change. | |
1190 | * gcc.gd/cpp/mi4.c: Testcase. | |
1191 | ||
f27cd94d NC |
1192 | 2000-09-21 Nick Clifton <nickc@redhat.com> |
1193 | ||
2359a5e1 NC |
1194 | * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for |
1195 | ARM and THUMB modes. | |
1196 | ||
f27cd94d NC |
1197 | * config/mcore/mcore.c: Fix compile time warnings. |
1198 | * config/mcore/mcore-protos.h: Fix compile time warnings. | |
1199 | ||
7373064a DA |
1200 | 2000-09-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
1201 | ||
1202 | * configure.in: Correct test of gcc_cv_glibc. | |
1203 | * configure: Rebuilt. | |
1204 | * config.in: Rebuilt. | |
1205 | ||
07328167 KG |
1206 | 2000-09-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1207 | ||
1208 | * builtins.c (expand_builtin_fputs): Also expand when length!=1. | |
1209 | (expand_builtin): Handle BUILT_IN_FWRITE. | |
1210 | ||
1211 | * builtins.def (BUILT_IN_FWRITE): New entry. | |
1212 | ||
1213 | * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite. | |
1214 | ||
5fa7c8ce RK |
1215 | Wed Sep 20 15:39:14 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1216 | ||
dc36ec2c RK |
1217 | * gcc.c (modify_target): New variable and struct. |
1218 | (process_command): Handle MODIFY_TARGET_NAME. | |
1219 | * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro. | |
1220 | * config/pa/pa.h (MODIFY_TARGET_NAME): New macro. | |
1221 | ||
5fa7c8ce RK |
1222 | * c-decl.c (finish_decl): Add else's to avoid referencing |
1223 | TYPE_DOMAIN of an ERROR_MARK. | |
1224 | ||
155b14a8 DC |
1225 | Wed Sep 20 21:44:31 2000 Denis Chertykov <denisc@overta.ru> |
1226 | ||
1227 | * config/avr/avr.c (adjust_insn_length): Adjust lengths of | |
1228 | `reload_in*' insns. | |
1229 | ||
1230 | 2000-09-19 Marek Michalkiewicz <marekm@linux.org.pl> | |
1231 | ||
1232 | * config/avr/avr.md (neghi2): Add alternative for input and output | |
1233 | operands in different registers, as in negsi2. | |
1234 | (*negsi2): Remove '*' from the name. Use "movw" if available. | |
1235 | ||
fd09c61f JW |
1236 | 2000-09-19 Jim Wilson <wilson@cygnus.com> |
1237 | ||
1238 | * config/ia64/crtbegin.asm (__dso_handle): Delete use of | |
1239 | HAVE_GAS_HIDDEN macro. | |
1240 | ||
7eea5554 NB |
1241 | Tue 19-Sep-2000 22:38:57 BST Neil Booth <NeilB@earthling.net> |
1242 | ||
1243 | * cpplex.c (lex_line): Drop the EOF token for unknown | |
1244 | directives in assembler. | |
1245 | ||
a473fe45 DE |
1246 | 2000-09-19 David Edelsohn <edelsohn@gnu.org> |
1247 | ||
1248 | * configure.in: Allow enable_threads_flag value of "aix". Define | |
fd60bf96 | 1249 | thread_file as "aix" for AIX 4.3 and above. |
a473fe45 | 1250 | * configure: Regenerated. |
fd60bf96 DE |
1251 | |
1252 | * gthr-aix.h: New file. | |
1253 | ||
a473fe45 DE |
1254 | * rs6000/t-aix43: Replace soft-float multilib with pthread. |
1255 | Remove 403 processor multilib match. Fix rios2 processor multilib | |
1256 | match. | |
1257 | ||
fd60bf96 DE |
1258 | * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section |
1259 | to return to appropriate csect. | |
1260 | ||
ad3fd36f KG |
1261 | 2000-09-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1262 | ||
1263 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New | |
1264 | functions. | |
1265 | (expand_builtin_fputs): Set `target' parameter for `expand_expr'. | |
1266 | (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and | |
1267 | BUILT_IN_PRINTF. | |
1268 | ||
1269 | * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF): | |
1270 | New entries. | |
1271 | ||
1272 | * c-common.c (init_function_format_info): Handle __builtin_printf. | |
1273 | Set `check_function_format_ptr'. | |
1274 | (c_common_nodes_and_builtins): Set `puts_ftype' and | |
1275 | `printf_ftype'. Declare __builtin_putchar, __builtin_puts, | |
1276 | __builtin_printf and printf. | |
1277 | ||
1278 | * tree.c, tree.h (check_function_format_ptr): Declare. | |
1279 | ||
6f3d20a0 NB |
1280 | Tue 19-Sep-2000 18:26:57 BST Neil Booth <NeilB@earthling.net> |
1281 | ||
1282 | * cppfiles.c (read_include_file): Take no special action for | |
1283 | zero-length files. | |
1284 | ||
b4f75276 BS |
1285 | 2000-09-19 Bernd Schmidt <bernds@redhat.co.uk> |
1286 | ||
afc6898e BS |
1287 | * final.c (insn_current_reference_address): Use INSN_SHUID of seq |
1288 | rather than that of branch. | |
1289 | (shorten_branches): Don't increment insn_current_address twice. | |
1290 | ||
b4f75276 BS |
1291 | Undo most of the Wed Jan 27 23:39:53 1999 patch: |
1292 | * loop.h (struct induction): Delete members derived, ix and last_use. | |
1293 | (struct loop_ivs): Delete members first_increment_giv and | |
1294 | last_increment_giv. | |
1295 | * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats, | |
1296 | recombine_givs): Delete functions. | |
1297 | (find_and_verify_loops): Don't initialize cont_dominator. | |
1298 | (strength_reduce): Lose code to try to find bivs that can be | |
1299 | expressed as givs of another biv, and to convert biv increments | |
1300 | into givs. | |
1301 | Lose loop_scan_start variable, always use loop->scan_start. | |
1302 | Don't call recombine_givs. Don't handle derived givs. | |
1303 | (record_giv): Don't initialize derived and last_use fields. | |
1304 | (biv_eliminiation_giv_has_0_offset): Lose code to handle derived | |
1305 | givs. | |
1306 | * unroll.c (derived_regs): Delete static variable. | |
1307 | (unroll_loop): Don't initialize it. | |
1308 | (copy_loop_body): Lose code to handle derived givs. | |
1309 | (find_splittable_givs): Don't check for givs made from biv | |
1310 | increments. | |
1311 | Don't set derived_regs. | |
1312 | ||
0f805606 BS |
1313 | Fix misapplied earlier patch: |
1314 | * config/sh/sh.md (floatsisf_ie): Reenable. Remove explicit reference | |
1315 | to fpul. | |
1316 | (floatsisf2): Generate floatsisf_ie by default. | |
1317 | (floatsisf_i4): Conditional on TARGET_SH4. | |
1318 | ||
1319 | (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand | |
1320 | predicate for the expanders. | |
1321 | ||
8aa0e194 RH |
1322 | 2000-09-19 Richard Henderson <rth@cygnus.com> |
1323 | ||
0d97fd9e RH |
1324 | * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols |
1325 | in addition to pentium and pentiumpro symbols. | |
1326 | (CPP_CPU_DEFAULT_SPEC): Likewise. | |
1327 | ||
39b726dd RH |
1328 | * c-typeck.c (c_expand_asm_operands): Restore the output tree |
1329 | after expanding. | |
1330 | ||
9790cefd RH |
1331 | * stmt.c (expand_expr_stmt): Only call warn_if_unused_value |
1332 | if the tree has side effects. | |
1333 | (warn_if_unused_value): Do not warn about void constructs. | |
1334 | ||
8e5a0fcb RH |
1335 | * c-decl.c (poplevel): Invoke warn_about_unused_variables. |
1336 | ||
8aa0e194 RH |
1337 | * unroll.c (copy_loop_body): Update LABEL_NUSES before |
1338 | calling invert_jump. | |
1339 | ||
62f7f1f5 GK |
1340 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
1341 | ||
1342 | * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS | |
1343 | into anything. | |
1344 | ||
3f80e6ac KG |
1345 | 2000-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1346 | ||
1347 | * Makefile.in (c-common.o): Depend on diagnostic.h. | |
1348 | ||
1349 | * c-common.c: Include diagnostic.h. | |
1350 | (tfaff): Delete. | |
1351 | (status_warning): New function. | |
1352 | (check_format_info, maybe_read_dollar_number, check_format_types, | |
1353 | finish_dollar_format_checking, check_function_format): Accept a | |
1354 | `status' parameter. All callers changed. | |
1355 | ||
1356 | * c-common.h (check_function_format): Accept a `status' parameter. | |
1357 | ||
1358 | * c-typeck.c: Update call to `check_function_format'. | |
1359 | ||
cfbd829c RH |
1360 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
1361 | ||
1362 | * c-decl.c (c_expand_body): Call mark_varargs before | |
1363 | expand_function_start. | |
1364 | ||
c21d86e1 GK |
1365 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
1366 | ||
1367 | * config/rs6000/eabi-cn.asm: Use /**/ to delimit comments, not #. | |
1368 | * config/rs6000/eabi-ci.asm: Likewise. | |
1369 | ||
f0417c82 RH |
1370 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
1371 | ||
1372 | * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx | |
1373 | for BImode. | |
1374 | ||
226ed43f JW |
1375 | 2000-09-18 Jim Wilson <wilson@cygnus.com> |
1376 | ||
5c3c320e JW |
1377 | * unroll.c (loop_iterations): Pass increment to extend_for_giv_value |
1378 | before passing it to fold_rtx_mult_add. | |
1379 | ||
ec919c98 JW |
1380 | * unroll.c (final_giv_value): Pass increment through |
1381 | extend_value_for_giv before passing it to emit_iv_add_mult. | |
1382 | ||
226ed43f JW |
1383 | * function.c (fixup_var_refs_1, case ZERO_EXTRACT): If we have a |
1384 | paradoxical subreg, then directly substitute the replacement and | |
1385 | return. | |
1386 | ||
b542c0fb NB |
1387 | Mon 18-Sep-2000 22:12:44 BST Neil Booth <NeilB@earthling.net> |
1388 | ||
b4f75276 | 1389 | * cpp.texi: Update documentation, including some clarifications, |
b542c0fb NB |
1390 | the treatment of various newline combinations, and space between |
1391 | backslash and newline. | |
1392 | ||
800a6a0c R |
1393 | Mon Sep 18 21:00:47 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
1394 | ||
1395 | * sdbout.c (PUT_SDB_DEF, PUT_SDB_TAG, PUT_SDB_EPILOGUE_END): | |
1396 | Replace ASM_OUTPUT_LABELREF with assemble_name. | |
1397 | ||
50ceefc2 R |
1398 | Mon Sep 18 20:26:50 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
1399 | ||
1400 | * sh.c (addsubcosts): CONST is not cheap. | |
1401 | (find_barrier): For Sh1, take alignment after jumps into account. | |
1402 | ||
659e47fb AH |
1403 | 2000-09-15 Andrew Haley <aph@redhat.com> |
1404 | ||
1405 | * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to | |
1406 | remove all SETs of SUBREGs of hard registers. | |
7373064a | 1407 | * function.c (purge_hard_subreg_sets): New function. |
659e47fb AH |
1408 | (purge_single_hard_subreg_set): New function. |
1409 | * rtl.h: (purge_hard_subreg_sets): New function. | |
1410 | ||
f2f90c63 RH |
1411 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
1412 | ||
1413 | * config/ia64/ia64-protos.h: Update. | |
1414 | * config/ia64/ia64.c (signed_inequality_operator): New. | |
1415 | (ia64_expand_compare): New. | |
1416 | (ia64_register_move_cost): Handle PR_REGS moves. | |
1417 | (ia64_secondary_reload_class): Require a GR when moving to a PR. | |
1418 | (struct reg_write_state): Add written_by_and/or. | |
1419 | (struct reg_flags): Add is_and/or. | |
1420 | (rws_update): Set them. | |
1421 | (rws_access_regno): Test them to allow parallel comparisons. | |
1422 | (rtx_needs_barrier): Recognize parallel comparisons. | |
1423 | (emit_insn_group_barriers): Set prev_insn after a call stop bit. | |
1424 | Call recog_memoized; ignore pred_rel_mutex. | |
1425 | (emit_predicate_relation_info): Don't call find_basic_blocks here. | |
1426 | (ia64_reorg): Do it here instead. | |
1427 | * config/ia64/ia64.h: s/CCmode/BImode/g | |
1428 | (MODES_TIEABLE_P): Don't tie BImode. | |
1429 | (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs. | |
1430 | (CONST_COSTS): Pick sensible values for CONST_INT based on context. | |
1431 | (RTX_COSTS): Make multiply 4 insns. | |
1432 | (MEMORY_MOVE_COST): New. | |
1433 | (PREDICATE_CODES): Update. | |
1434 | * config/ia64/ia64.md: s/CCmode/BImode/g | |
1435 | (movcci, movbi): New. | |
1436 | (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New. | |
1437 | (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New. | |
1438 | (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New. | |
1439 | (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New. | |
1440 | (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New. | |
1441 | (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New. | |
1442 | (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New. | |
1443 | (mulsi, muldi): Use xmpy not xma. | |
1444 | (cmpbi): New. | |
1445 | (movcc, movcc_internal): Remove. | |
1446 | (branch expanders): Use ia64_expand_compare. | |
1447 | (setcc expanders): Likewise. | |
1448 | (cmov insns): Use move_operand and ia64_move_ok. | |
1449 | (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the | |
1450 | scheduler from moving it past a use. | |
1451 | * config/ia64/build.hacks: Remove. | |
1452 | ||
0d9f234d NB |
1453 | Mon 18-Sep-2000 19:21:35 BST Neil Booth <NeilB@earthling.net> |
1454 | ||
1455 | * cpphash.h (HASHSTEP): Take character rather than pointer | |
1456 | to character. | |
1457 | (_cpp_check_directive, _cpp_check_linemarker): Update prototypes. | |
1458 | ||
1459 | * cpphash.c (cpp_loookup): Update for new HASHSTEP. | |
1460 | ||
1461 | * cpplex.c (auto_expand_name_space, trigraph_replace, | |
1462 | backslash_start, handle_newline, parse_name, INIT_TOKEN_STR, | |
1463 | IMMED_TOKEN, PREV_TOKEN_TYPE, PUSH_TOKEN, REVISE_TOKEN, | |
1464 | BACKUP_TOKEN, BACKUP_TRIGRAPH, MIGHT_BE_DIRECTIVE, | |
1465 | KNOWN_DIRECTIVE): Delete. | |
1466 | ||
1467 | (handle_newline, check_long_token, skip_escaped_newlines, | |
1468 | unterminated): New functions. | |
1469 | (ACCEPT_CHAR, SAVE_STATE, RESTORE_STATE): New macros. | |
1470 | ||
1471 | (parse_identifier): Was parse_name, new implementation. | |
1472 | (skip_line_comment, skip_block_comment, skip_whitespace, | |
1473 | parse_number, parse_string, trigraph_ok, save_comment, | |
1474 | adjust_column, _cpp_get_line): New implementations. | |
1475 | ||
1476 | (lex_token): New function. Lexes a token at a time, looking | |
1477 | forwards. Contains most of the guts of the old lex_line. | |
1478 | (lex_line): New implementation, using lex_token to obtain | |
1479 | individual tokens. | |
1480 | (cpp_scan_buffer): Use the token's line, not the list's line. | |
1481 | ||
1482 | * cpplib.c (_cpp_check_directive, _cpp_check_linemarker): | |
1483 | New implementations. | |
1484 | (do_assert): Don't bother setting the answer's list's line. | |
1485 | (cpp_push_buffer): Initialise new pfile and read_ahead members | |
1486 | of struct cpp_buffer. | |
1487 | ||
1488 | * cpplib.h (cppchar_t): New typedef. | |
1489 | (struct cpp_buffer): read_ahead, pfile and col_adjust are | |
1490 | new members. | |
1491 | (struct lexer_state): New structure that determines the state | |
1492 | and behaviour of the lexer. | |
1493 | (IN_DIRECTIVE, KNOWN_DIRECTIVE): New macros. | |
1494 | (struct cpp_reader): New member "state". Rename | |
1495 | multiline_string_line and multiline_string_column. Delete | |
1496 | col_adjust, in_lex_line members. | |
1497 | (CPP_BUF_COLUMN): Update. | |
1498 | ||
a191f0ee RH |
1499 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
1500 | ||
9f8e169e RH |
1501 | * combine.c (simplify_comparison): Shift a NOT out of a single |
1502 | bit test. | |
1503 | ||
1f3f36d1 RH |
1504 | * combine.c (if_then_else_cond): Canonicalize BImode true to |
1505 | STORE_FLAG_VALUE. | |
1506 | * explow.c (trunc_int_for_mode): Likewise. | |
1507 | ||
5bd60ce6 RH |
1508 | * combine.c (combine_simplify_rtx): Use gen_unary to distribute |
1509 | the NOT for De Morgan's rule. | |
1510 | * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT | |
1511 | of a comparison to the reverse comparison. | |
1512 | ||
d340408c RH |
1513 | * combine.c (try_combine): Allow split to create a single insn. |
1514 | ||
a191f0ee RH |
1515 | * machmode.def: Add BImode. Add a column for bitsize. |
1516 | * machmode.h (DEF_MACHMODE): Adjust for extra column. | |
1517 | (GET_MODE_BITSIZE): Use it. | |
1518 | * rtl.c (DEF_MACHMODE): Adjust for extra column. | |
1519 | (mode_bitsize): New. | |
1520 | (mode_mask_array): Use bitsize. | |
1521 | * combine.c (combine_simplify_rtx): Require inner and outer | |
1522 | modes to match on nonzero_bits optimizations. | |
1523 | ||
5d77a50c BS |
1524 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
1525 | ||
1526 | * reload1.c (forget_old_reloads_1): If a hard reg is stored, clear | |
1527 | its entry in spill_reg_store. | |
0fb8cb90 | 1528 | * config/sh/lib1funcs.ams (movstr_i4 functions): Always compile in. |
2e361e59 BS |
1529 | * sh.c (reg_no_subreg_operand): New function. |
1530 | * sh-protos.h (reg_no_subreg_operand): Declare it. | |
1531 | * sh.h (PREDICATE_CODES): Add it. | |
1532 | * sh.md (floatsisf2_i4, floatsidf2_i, extendsfdf2_i4): Use it for | |
1533 | input operand that needs to be in fpul. | |
1534 | (fix_truncsfsi2, fix_truncsfsi2_i4): Use register_operand for output. | |
42d5d0f1 BS |
1535 | * sh.c (find_barrier): Take into account that machine_dependent_reorg |
1536 | might add new insns. | |
5d77a50c | 1537 | |
55eec660 AO |
1538 | 2000-09-18 Alexandre Oliva <aoliva@redhat.com> |
1539 | ||
40fc375d AO |
1540 | * config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as |
1541 | MAYBE_DEAD. | |
1542 | (sh_expand_epilogue): Take the PIC register into account when | |
1543 | computing the frame size. | |
1544 | ||
55eec660 AO |
1545 | * config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs. |
1546 | * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect | |
1547 | LABEL_REFs with a PIC-safe unspec. | |
1548 | ||
fc6df7e1 JM |
1549 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
1550 | ||
1551 | * c-common.c (check_format_info): Properly save the argument | |
1552 | number and parameter for $ operand number formats in case width | |
1553 | and precision arguments are also used. Allow printf width and | |
1554 | precision arguments to have operand numbers even if none was | |
1555 | specified for the main format, since this is OK for %*.*m. Only | |
1556 | object to missing $ operand number if the format used requires an | |
1557 | argument. | |
1558 | ||
effa5541 JM |
1559 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
1560 | ||
1561 | * c-common.c (format_char_info): Add 'W' flag to comment. | |
1562 | (print_char_table, scan_char_table): Use it. | |
1563 | (check_format_info): Use the 'W' flag to determine whether a | |
1564 | format argument is written into. | |
1565 | ||
99303ae4 JM |
1566 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
1567 | ||
1568 | * c-common.c (check_format_types): Reorganise and clean up, | |
1569 | checking earlier for ERROR_MARKs and making cur_type into its | |
1570 | TYPE_MAIN_VARIANT where convenient. | |
1571 | ||
9231abf2 JM |
1572 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
1573 | ||
1574 | * gcc.c (cpp_options): Add specs for __STDC_HOSTED__. | |
1575 | ||
cf67d231 BS |
1576 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
1577 | ||
1578 | * optabs.c (emit_libcall_block): Set CONST_CALL_P for the call. | |
1579 | ||
bd793c65 BS |
1580 | * i386-protos.h (ix86_init_builtins, ix86_expand_builtin): Declare. |
1581 | * i386.c (struct builtin_description): New. | |
1582 | (bdesc_comi, bdesc_2arg, bdesc_1arg): New arrays. | |
1583 | (mmx_reg_operand): Declare MODE arg as unused. | |
1584 | (ix86_expand_sse_comi, ix86_expand_sse_compare, safe_vector_operand, | |
1585 | ix86_expand_unop1_builtin, ix86_expand_unop_builtin, | |
1586 | ix86_expand_binop_builtin, ix86_expand_store_builtin, | |
1587 | ix86_init_builtins, ix86_expand_builtin): New functions. | |
1588 | * i386.h (ix86_builtins): New enumeration. | |
1589 | (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): New macros. | |
1590 | * i386.md (attr length_immediate): 0 for mmx/sse types. | |
1591 | (attr prefix_0f): 1 for mmx/sse types. | |
1592 | (setcc_2): Remove "*" so we get gen_setcc_2. | |
1593 | (emms): Account for changed register numbering. Set "memory" attr | |
1594 | to unknown. | |
1595 | (sfence): Set "memory" attr to unknown. | |
1596 | ||
4070d885 AJ |
1597 | 2000-09-18 Andreas Jaeger <aj@suse.de> |
1598 | ||
1599 | * configure.in: Define _GNU_SOURCE only when using the GNU C | |
1600 | Library. | |
a191f0ee RH |
1601 | * configure: Regenerated. |
1602 | * config.in: Regenerated. | |
4070d885 | 1603 | |
2ac86f90 MM |
1604 | 2000-09-17 Mark Mitchell <mark@codesourcery.com> |
1605 | ||
31a1fdad MM |
1606 | * cppinit.c (cpp_init): Don't use ANSI prototypes. |
1607 | * flow.c (flow_dump_loop): Likewise. | |
1608 | (flow_loops_dump): Likewise. | |
1609 | ||
2ac86f90 MM |
1610 | * c-typeck.c (c_start_case): Fix typo. |
1611 | ||
60e9d01c JM |
1612 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
1613 | ||
1614 | * c-decl.c (grokdeclarator): Don't give a warning about defaulting | |
1615 | to int for plain complex which defaults to complex double. Do | |
1616 | warn about defaulting to complex double if pedantic. Warn about | |
1617 | complex integer types if pedantic. Warn about complex types if | |
1618 | pedantic and not in C99 mode. | |
1619 | * c-typeck.c (build_unary_op): If pedantic, warn about use of ~ | |
1620 | for complex conjugation. | |
1621 | ||
bc5006c7 JM |
1622 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
1623 | ||
1624 | * contrib.texi: Update my entry. | |
1625 | ||
7e3bd81e DC |
1626 | Sun Sep 17 18:48:32 2000 Denis Chertykov <denisc@overta.ru> |
1627 | ||
23cb1766 RK |
1628 | * config/avr/avr.md (mcu_enhanced): New attribute. |
1629 | (mcu_mega): Likewise. | |
1630 | (extendhisi2): Use mcu_enhanced. | |
1631 | (zero_extendhisi2): Likewise. | |
1632 | (call_insn): Use mcu_enhanced and mcu_mega. | |
1633 | (call_value_insn): Likewise. | |
1634 | (*sbrx_branch): Use mcu_mega. | |
1635 | (*sbrx_and_branchsi): Likewise. | |
1636 | (*sbrx_and_branchhi): Likewise. | |
1637 | (*tablejump_lib): Likewise. | |
7e3bd81e | 1638 | |
6a51f4a0 RK |
1639 | Sun Sep 17 10:46:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1640 | ||
ec569656 RK |
1641 | * alias.c (true_dependence): Allow non-unchanging read to conflict |
1642 | with unchanging write. | |
1643 | ||
23cb1766 RK |
1644 | * expr.c (store_constructor_field): Accept ALIAS_SET arg. |
1645 | (store_constructor): Pass alias_set to it. | |
1646 | ||
a52fb89b RK |
1647 | * c-decl.c (grokdeclarator): Reorder tests to avoid looking at |
1648 | TYPE_MAIN_VARIANT of ERROR_MARK. | |
1649 | * c-lex.c (readescape): Avoid using printf syntax we don't recognize. | |
1650 | ||
6a51f4a0 RK |
1651 | * simplify-rtx.c (simplify_unary_operation): Add cases |
1652 | FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0. | |
1653 | ||
ebb1b59a BS |
1654 | 2000-09-17 Bernd Schmidt <bernds@redhat.co.uk> |
1655 | ||
a191f0ee | 1656 | * expr.h (emit_library_call, emit_library_call_value): Delete |
ebb1b59a BS |
1657 | declarations. |
1658 | * rtl.h (enum libcall_type): New. | |
1659 | (emit_library_call, emit_library_call_value): Change fn_type arg to | |
a191f0ee | 1660 | be of type enum libcall_type. |
ebb1b59a BS |
1661 | * calls.c: Likewise for the function definitions. Several callers |
1662 | throughout changed to use the new enumeration appropriately. | |
1663 | (emit_library_call_value_1): Likewise. Put back code to make libcall | |
a191f0ee | 1664 | blocks of equal form, but only use it for the two new higher |
ebb1b59a BS |
1665 | enumeration values. |
1666 | ||
8f17b5c5 MM |
1667 | 2000-09-16 Mark Mitchell <mark@codesourcery.com> |
1668 | ||
1669 | Convert the C front-end to use function-at-a-time mode. | |
1670 | * c-common.h: Include splay-tree.h. | |
1671 | (C_DECLARED_LABEL_FLAG): New macro. | |
1672 | (struct language_function): Add x_scope_stmt_stack and | |
1673 | x_function_name_declared_p. | |
1674 | (RECHAIN_STMTS): Move definition. | |
1675 | (lang_statment_code_p): Likewise. | |
1676 | (lang_expand_stmt): Likewise. | |
1677 | (lang_expand_decl_stmt): New variable. | |
1678 | (lang_expand_function_end): Likewise. | |
1679 | (current_scope_stmt_stack): New function. | |
1680 | (add_decl_stmt): Likewise. | |
1681 | (add_scope_stmt): Likewise. | |
1682 | (mark_stmt_tree): Likewise. | |
1683 | (struct c_lang_decl): New structure. | |
1684 | (DECL_SAVED_TREE): Define. | |
1685 | (c_mark_lang_decl): New function. | |
1686 | (c_expand_start_cond): Change prototype. | |
1687 | (c_finish_then): New function. | |
1688 | (c_finish_else): Likewise. | |
1689 | (current_function_name_declared): Remove. | |
1690 | (set_current_function_name_declared): Likewise. | |
1691 | (mark_c_language_function): Declare. | |
1692 | (case_compare): Likewise. | |
1693 | (c_add_case_label): Likewise. | |
1694 | (c_expand_expr): Likewise. | |
1695 | (c_safe_from_p): Likewise. | |
1696 | * c-common.c (lang_expand_function_end): New variable. | |
1697 | (struct if_elt): Add if_stmt. | |
1698 | (c_expand_start_cond): Add the if-statement to the statement-tree, | |
1699 | rather than generating RTL. | |
1700 | (c_finish_then): New function. | |
1701 | (c_expand_start_else): Don't generate RTL. | |
1702 | (c_finish_else): New function. | |
1703 | (c_expand_expr_stmt): Don't generate RTL. | |
1704 | (statement_code_p): Add SCOPE_STMT. | |
1705 | (case_compare): New function. | |
1706 | (c_add_case_label): Likewise. | |
1707 | (mark_stmt_tree): Likewise. | |
1708 | (c_mark_lang_decl): Likewise. | |
1709 | (mark_c_language_function): Likewise. | |
1710 | (c_expand_expr): Likewise. | |
1711 | (c_safe_from_p): Likewise. | |
1712 | * c-decl.c (c_stmt_tree): New variable | |
1713 | (c_scope_stmt_stack): Likewise. | |
1714 | (c_function_name_declared_p): Likewise. | |
1715 | (lang_expand_expr_stmt): Remove. | |
1716 | (poplevel): Don't call output_inline_function for nested | |
1717 | functions. | |
1718 | (pushdecl): Don't set DECL_CONTEXT for a local declaration of an | |
1719 | `extern' function. | |
1720 | (redeclaration_error_message): Change means of computing whether | |
1721 | or not a function is nested. | |
1722 | (lookup_label): Don't call label_rtx. | |
1723 | (init_decl_processing): Add more GC roots. | |
1724 | (start_decl): Add DECL_STMTs to the statement-tree, rather than | |
1725 | calling rest_of_decl_compilation. | |
1726 | (finish_decl): Don't call expand_decl. | |
1727 | (store_parm_decls): Begin the statement-tree, but don't generate | |
1728 | RTL. | |
1729 | (finish_function): Tie off the statement-tree. Call c_expand_body | |
1730 | if appropriate. | |
1731 | (c_expand_body): New function. | |
1732 | (push_c_function_context): Save more information. | |
1733 | (pop_c_function_contxt): Likewise. | |
1734 | (copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it. | |
1735 | (lang_mark_tree): Mark it. | |
1736 | (current_stmt_tree): Adjust. | |
1737 | (current_scope_stmt_stack): New function. | |
1738 | (do_case): Remove. | |
1739 | (set_current_name_declared): Likewise. | |
1740 | (c_begin_compound_stmt): Define. | |
1741 | (c_expand_decl_stmt): Likewise. | |
1742 | * c-lang.c: Include rtl.h and expr.h. | |
1743 | (lang_init): Set more language-specific hooks. | |
1744 | * c-lex.c: Include expr.h. | |
1745 | * c-parse.in: Changes throughout to add statements to the | |
1746 | statement-tree, rather than generating RTL after every statement. | |
1747 | * c-semantics.c (lang_expand_decl_stmt): Define. | |
1748 | (add_decl_stmt): New function. | |
1749 | (add_scope_stmt): Likewise. | |
1750 | (finish_stmt_tree): Tweak. | |
1751 | (genrtl_expr_stmt): Likewise. | |
1752 | (genrtl_decl_stmt): Handle local labels, and call | |
1753 | lang_expand_decl_stmt if required. | |
1754 | (genrtl_for_stmt): Fix line-number handling. | |
1755 | (genrtl_case_label): Handle cleanups. | |
1756 | (genrtl_asm_stmt): Don't call combine_strings. | |
1757 | (genrtl_compound_stmt): Simplify. | |
1758 | (expand_stmt): Handle SCOPE_STMTs. | |
1759 | * c-tree.h (struct lang_decl): New structure. | |
1760 | (C_DECLARED_LABEL_FLAG): Remove. | |
1761 | (c_begin_compound_stmt): Declare. | |
1762 | (c_expand_decl_stmt): Likewise. | |
1763 | (c_expand_start_case): Rename to c_start_case. | |
1764 | (c_finish_case): New function. | |
1765 | * c-typeck.c (start_init): Tweak setting of | |
1766 | constructor_incremental. | |
1767 | (c_expand_asm_operands): Tweak error-handling. Add to the | |
1768 | statement-tree. | |
1769 | (c_expand_return): Add to the statement-tree. | |
1770 | (c_expand_start_case): Rename to ... | |
1771 | (c_start_case): ... this. | |
1772 | (struct c_switch): New type. | |
1773 | (switch_stack): New variable. | |
1774 | (do_case): Simplify. | |
1775 | (c_finish_case): New function. | |
1776 | * dependence.c: Include expr.h. | |
1777 | (enum dependence_type): Change spelling of enumerals. | |
1778 | (check_node_dependence): Adjust. | |
1779 | * expr.h (lang_safe_from_p): Declare. | |
1780 | (safe_from_p): Likewise. | |
1781 | * expr.c (lang_safe_from_p): New variable. | |
1782 | (safe_from_p): Give it external linkage. Use lang_safe_from_p. | |
1783 | * stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type. | |
1784 | * toplev.c (rest_of_decl_compilation): Robustify. | |
1785 | * tree.c (contains_placeholder_p): Likewise. | |
1786 | * Makefile.in: Update dependencies. | |
1787 | * objc/objc-act.h: Adjust calculation of value for dummy_tree_code. | |
1788 | * objc/objc-act.c: Include rtl.h, expr.h, and c-common.h. | |
1789 | (objc_expand_function_end): New function. | |
1790 | (finish_method_def): Use it. | |
1791 | (init_objc): Initialize more language-specific hooks. | |
1792 | * objc/Make-lang.in: Update dependencies. | |
7373064a | 1793 | |
4797e955 GK |
1794 | 2000-09-16 Geoffrey Keating <geoffk@cygnus.com> |
1795 | ||
1796 | * configure.in: Define macros that affect features before | |
1797 | testing for features. Don't define _XOPEN_SOURCE. | |
1798 | * configure: Regenerated. | |
1799 | * config.in: Regenerated. | |
1800 | ||
ae0fb1b9 JW |
1801 | Sat Sep 16 19:42:50 EDT 2000 John Wehle (john@feith.com) |
1802 | ||
1803 | * rtlanal.c (rtx_varies_p): Volatile asms vary. | |
1804 | (rtx_unstable_p): Restructure code. Volatile asms | |
1805 | are unstable. | |
1806 | ||
5748b2cb | 1807 | Sat Sep 16 14:35:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
ae0f4dee | 1808 | |
87c31d6b RK |
1809 | * function.h (no_debugging_symbols): New field. |
1810 | * integrate.c (save_for_inline): Renamed from save_for_inline_nocopy. | |
1811 | Initialize no_debugging_symbols. | |
1812 | (output_inline_function): Save and restore write_symbols and set from | |
1813 | no_debugging_symbols. | |
1814 | * toplev.c (rest_of_compilation): Call save_for_inline. | |
1815 | * tree.h: Update comment. | |
7373064a | 1816 | |
5748b2cb RK |
1817 | * stor-layout.c (place_field): Don't do anything if field or |
1818 | its type are ERROR_MARK. | |
1819 | ||
1820 | Sat Sep 16 19:14:00 2000 Laurynas Biveinis <lauras@softhome.net> | |
1821 | ||
1822 | * cppfiles.c (purge_cache): Use munmap only if MMAP_THRESHOLD defined. | |
1823 | (read_include_file): Ensure inc->mmaped is initialized. | |
ae0f4dee | 1824 | |
6f84c9bd RH |
1825 | 2000-09-16 Richard Henderson <rth@cygnus.com> |
1826 | ||
1827 | * cppiles.c (purge_cache): Use PTR not caddr_t. | |
1828 | ||
50c57e7b HPN |
1829 | 2000-09-16 Hans-Peter Nilsson <hp@axis.com> |
1830 | ||
1831 | * gcc.c: In description for %{<S}, say the option removed is -S. | |
1832 | * invoke.texi (Spec Files): Ditto. | |
1833 | ||
dd745546 AJ |
1834 | 2000-09-16 Andreas Jaeger <aj@suse.de> |
1835 | ||
1836 | * configure.in: Always define _GNU_SOURCE to make interfaces | |
1837 | visible that were hidden by only defining _GNU_SOURCE. | |
1838 | * configure: Regenerated. | |
1839 | ||
08ebc1c5 NB |
1840 | Sat 16-Sep-2000 08:13:45 BST Neil Booth <NeilB@earthling.net> |
1841 | ||
1842 | * cpplex.c (push_macro_context): Set an argument's level after | |
1843 | calling parse_args. We could loop infinitely otherwise. | |
1844 | ||
16abe34a TT |
1845 | 2000-09-15 Tom Tromey <tromey@cygnus.com> |
1846 | ||
1847 | * configure, config.in: Rebuilt. | |
1848 | * configure.in: Check for iconv.h. Define _XOPEN_SOURCE. | |
1849 | ||
61c16b10 GM |
1850 | 2000-09-15 Greg McGary <greg@mcgary.org> |
1851 | ||
1852 | * cppmacro.c (check_trad_stringification): Check token | |
1853 | text pointers against limit before dereferencing. | |
1854 | ||
6a357625 JM |
1855 | 2000-09-15 Joseph S. Myers <jsm28@cam.ac.uk> |
1856 | ||
1857 | * c-common.c (format_wanted_type): New structure. | |
1858 | (check_format_types): New function. | |
1859 | (check_format_info): Pass all checking of types of format | |
1860 | arguments, including width and precision arguments, to this new | |
1861 | function. | |
1862 | ||
6a1d1088 GP |
1863 | 2000-09-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
1864 | ||
1865 | * BUGS: Remove file. | |
1866 | ||
a3b815cb JJ |
1867 | 2000-09-15 Jakub Jelinek <jakub@redhat.com> |
1868 | ||
54f5c4b0 JJ |
1869 | * config/alpha/alpha.c (override_options): ev6 cache latencies |
1870 | from Richard Henderson. Don't allow -mmemory-latency=L0. | |
1871 | ||
a3b815cb JJ |
1872 | * config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define. |
1873 | (TARGET_OPTIONS): Add tune=. | |
1874 | (alpha_tune_string): Declare. | |
1875 | * config/alpha/alpha.c (override_options): Add cpu_table. | |
1876 | Use alpha_cpu_string first to set both alpha_cpu and target_flags | |
1877 | and then alpha_tune_string to set alpha_cpu only. | |
1878 | Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests. | |
1879 | * config/alpha/elf.h (ASM_FILE_START): Likewise. | |
1880 | * config/alpha/osf.h (ASM_FILE_START): Likewise. | |
1881 | * config/alpha/openbsd.h (ASM_FILE_START): Likewise. | |
1882 | ||
9076b9c1 JH |
1883 | Fri Sep 15 19:45:55 MET DST 2000 Jan Hubicka <jh@suse.cz> |
1884 | ||
1885 | * i386-protos.h (no_comparison_operator, uno_comparison_operator): | |
1886 | Remove. | |
1887 | (ix86_comparison_operator, ix86_cc_mode): Declare | |
1888 | * i386.h (CCGC, CCGCO): New modes. | |
1889 | (SELECT_CC_MODE): Move offline to .... | |
1890 | * i386.c (ix86_cc_mode): .... here; use new modes. | |
1891 | (ix86_comparison_operator): New. | |
1892 | (fcmov_comparison_operator): Ensure proper mode. | |
1893 | (put_condition_mode): More sanity checking. | |
1894 | (ix86_match_ccmode): Handle new modes. | |
1895 | (ix86_expand_fp_compare): GEU requires CCmode. | |
1896 | (ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of | |
1897 | doing it by hand. | |
1898 | * i386.md (cmp?i_ccz_1): Remove | |
1899 | (cmp?i_ccno_1): Use ix86_match_ccmode. | |
1900 | (cmp?i_minus_1): New. | |
1901 | (cmpsi_1): New expander. | |
1902 | (cmpqi_ext_1): Use match_ccmode | |
1903 | (cmpqi_ext_3): New expander. | |
1904 | (cmpqi_ext_3_insn): Rename from cmpqi_ext_3. | |
1905 | (cmpqi_ext_4): Use match_ccmode. | |
1906 | (add?i_?): Use match_ccmode. | |
1907 | (add?i_6): New. | |
1908 | (test?i_ccz_1): Remove | |
1909 | (test?i_1): New. | |
1910 | (testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander. | |
1911 | (testqi_ext_0): Use ix86_match_ccmode. | |
1912 | (*xorqi_cc_ext_1): Use ix86_match_ccmode. | |
1913 | (xorqi_cc_ext_1): New expander. | |
1914 | (shift patterns): Use CCGOCmode for all shifts except for sar. | |
1915 | (setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator. | |
1916 | (setcc_3, jcc_3, miv?icc_c): Remove. | |
1917 | ||
3724ec07 WC |
1918 | 2000-09-15 Will Cohen <wcohen@redhat.com> |
1919 | ||
1920 | * dwarf2out.c (add_const_value_attribute): Changed array into a | |
1921 | xmalloced object, so it exists after function exit. | |
1922 | (free_AT): Added case for dw_val_class_float to free allocated | |
1923 | memory. | |
1924 | ||
182a4620 KH |
1925 | 2000-09-15 Kazu Hirata <kazu@hxi.com> |
1926 | ||
1927 | * config/i386/i386.md: Fix a comment typo. | |
d25a45d4 | 1928 | * gcc.c: Fix formatting. |
182a4620 | 1929 | |
aff2c2d3 BS |
1930 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
1931 | ||
1932 | * optabs.c (emit_libcall_block): If target is a user variable, | |
1933 | copy to a temporary first. | |
642dfa8b BS |
1934 | * expr.c (convert_move): When generating a libcall, make a libcall |
1935 | block. | |
188c5e6c BS |
1936 | * calls.c (emit_library_call_value_1): Don't create a libcall |
1937 | sequence here; our caller will in most cases do it. | |
aff2c2d3 | 1938 | |
0c4c9b16 BS |
1939 | * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Handle moving T, MACL or |
1940 | MACH into FPUL. | |
1941 | (SECONDARY_OUTPUT_RELOAD_CLASS): Similar case. | |
1942 | * sh.md (reload_outsf): Generate recognizable patterns for | |
1943 | TARGET_SH3E. | |
1944 | (floatsisf2, floatsisf2_ie, floatsisf2_i4, fix_truncsfsi2, | |
1945 | fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i, fix_truncdfsi2, | |
1946 | fix_truncdfsi2_i, extendsfdf2, extendsfdf2_i4, truncdfsf2, | |
1947 | truncdfsf2_i4): Change not to use explicit references to fpul. | |
1948 | (floatsisf2_ie): Remove USE of fpscr. | |
1949 | (floatsisf2): Change default expansion to match this. | |
1950 | (fix_truncsfsi2_i4_2, fix_truncdfsi2_i4 & splitters): Comment out | |
1951 | unused patterns. | |
1952 | ||
308ecea0 RH |
1953 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
1954 | ||
1955 | * expmed.c (store_bit_field): Consider naturally aligned | |
1956 | memory for direct reference. | |
1957 | ||
e01acbb1 RH |
1958 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
1959 | ||
1960 | * config/alpha/alpha.c (alpha_expand_unaligned_load): Force all | |
1961 | AND addresses into alias set 0. | |
1962 | (alpha_expand_unaligned_store): Likewise. | |
1963 | (alpha_expand_unaligned_load_words): Likewise. | |
1964 | (alpha_expand_unaligned_store_words): Likewise. | |
1965 | ||
c363a0c0 BS |
1966 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
1967 | ||
1968 | * config/sh/sh.h (CPP_SPEC): For -m4-nofpu, define __SH4_NOFPU__. | |
1969 | * config/sh/lib1funcs.asm (movstr_i4): Also compile if __SH4_NOFPU__ | |
1970 | is defined. | |
dd193c79 BS |
1971 | * config/mips/mips.c (mips_va_arg): Args passed by reference have a |
1972 | rsize of UNITS_PER_WORD. | |
c363a0c0 | 1973 | |
ff94c747 NB |
1974 | Fri 15-Sep-2000 06:49:07 BST Neil Booth <NeilB@earthling.net> |
1975 | ||
1976 | * cpplex.c (ON_REST_ARG): Correct the test. | |
1977 | (maybe_paste_with_next): Duplicate a token that fail pasting, | |
1978 | and clear its PASTE_LEFT flag, so that nested pasting attempts | |
1979 | do not occur. | |
1980 | ||
b437f1a7 RH |
1981 | 2000-09-14 Richard Henderson <rth@cygnus.com> |
1982 | ||
1983 | * calls.c (precompute_register_parameters): Use COSTS_N_INSNS, not 2. | |
1984 | * cse.c (rtx_cost): Likewise. | |
1985 | * optabls.c (expand_binop): Likewise. | |
1986 | (expand_twoval_binop, prepare_cmp_insn): Likewise. | |
1987 | * regclass.c (copy_cost): Likewise. | |
1988 | * reload1.c (reload_cse_move2add): Likewise. | |
1989 | ||
d9dbd9b1 JM |
1990 | 2000-09-14 Joseph S. Myers <jsm28@cam.ac.uk> |
1991 | ||
1992 | * c-parse.in (reswords): Add _Complex. | |
1993 | ||
9207d3b1 DA |
1994 | 2000-09-14 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
1995 | ||
1996 | * gcc.1: Delete documentation for -undef preprocessor option. | |
1997 | ||
395a451c AO |
1998 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com> |
1999 | ||
2000 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
2001 | STARTFILE_SPEC, ENDFILE_SPEC): Remove define. | |
2002 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
2003 | Remove undefine before config/elfos.h. | |
2004 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Comment out. | |
2005 | ||
17f0f8fa KH |
2006 | 2000-09-14 Kazu Hirata <kazu@hxi.com> |
2007 | ||
2008 | * invoke.texi (H8/300 Options): Add -ms2600. | |
2009 | * config/h8300.c (h8300_init_once): Output an error when -ms2600 | |
2010 | is used without -ms. | |
2011 | * config/h8300.h (TARGET_MAC): New. | |
2012 | (TARGET_SWITCHES): Add -ms2600 and -mno-s2600. | |
2013 | (CONDITIONA_REGISTER_USAGE): Disable the mac register on any | |
2014 | machine other than H8/S2600. | |
2015 | * config/h8300.md: Accept mac instructions on the H8/S2600 instead | |
2016 | of the H8/S2000. | |
2017 | ||
9e8f528c AO |
2018 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com>, Bernd Schmidt <bernds@redhat.co.uk> |
2019 | ||
2020 | * reload.c (find_reloads_address_1): Generate reloads for auto_inc | |
2021 | pseudos that refer to the original pseudos, not only to their | |
2022 | equivalent memory locations. | |
2023 | ||
9985f210 RK |
2024 | Thu Sep 14 12:10:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2025 | ||
fe7a8445 RK |
2026 | * expr.c (expand_expr, case COMPONENT_EXPR): Copy memory attributes |
2027 | when making new MEM. | |
2028 | ||
9985f210 RK |
2029 | * Makefile.in (LN): Remove duplicate definition. |
2030 | ||
2f93c5c3 BS |
2031 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
2032 | ||
2033 | From Joern Rennecke: | |
2034 | * local-alloc.c (update_equiv_regs): If there is no REG_EQUAL note | |
2035 | on an insn and function_invariant_p returns nonzero for the source, | |
2036 | add a REG_EQUAL note. | |
2037 | ||
b24ea077 JW |
2038 | Thu Sep 14 00:51:57 EDT 2000 John Wehle (john@feith.com) |
2039 | ||
2040 | * alias.c (memrefs_conflict_p): An ADDRESSOF doesn't | |
2041 | conflict with frame_pointer_rtx. | |
2042 | ||
fd5d5b07 KH |
2043 | 2000-09-13 Kazu Hirata <kazu@hxi.com> |
2044 | ||
2045 | * loop.c: Fix formatting. | |
2046 | * loop.h: Likewise. | |
2047 | ||
26102535 RH |
2048 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
2049 | ||
2050 | * config/ia64/ia64.md (divsf3): New. | |
2051 | (divsf3_internal_lat, divsf3_internal_thr): New. | |
2052 | (divdf3, divdf3_internal_lat, divdf3_internal_thr): New. | |
2053 | (divtf3, divtf3_internal_lat, divtf3_internal_thr): New. | |
2054 | (adddf3_trunc, subdf3_trunc, muldf3_trunc): New. | |
2055 | (madddf4_trunc, msubdf4_trunc, nmuldf3_trunc): New. | |
2056 | (nmadddf4_alts, nmadddf4_trunc): New. | |
2057 | (addtf3_truncsf, addtf3_truncdf, subtf3_truncsf): New. | |
2058 | (subtf3_truncdf, multf3_truncsf, multf3_truncdf): New. | |
2059 | (multf3_truncsf_alts, multf3_truncdf_alts): New. | |
2060 | (maddtf4_truncsf, maddtf4_truncdf, maddtf4_alts_truncdf): New. | |
2061 | (msubtf4_truncsf, msubtf4_truncdf, nmultf3_truncsf): New. | |
2062 | (nmultf3_truncdf, nmaddtf4_truncsf, nmaddtf4_truncdf): New. | |
2063 | (nmaddtf4_truncdf_alts): New. | |
2064 | (recip_approx): Don't predicate. | |
2065 | ||
938566fb RH |
2066 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
2067 | ||
2068 | * config/ia64/lib1funcs.asm (__divsf3): Protect fnorm.s with p6. | |
2069 | ||
c349e40b SC |
2070 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2071 | ||
2072 | * flags.h (flag_dump_rtl_in_asm): Declare. | |
2073 | * toplev.c (flag_dump_rtl_in_asm): Define. | |
2074 | (decode_d_option): Set flag_dump_rtl_in_asm and flag_print_asm_name | |
2075 | if -dP is specified. | |
2076 | * rtl.h (print_rtx_head): Declare. | |
2077 | * print-rtl.c (print_rtx_head): Define. | |
2078 | (print_rtx): Print the string pointed to by print_rtx_head | |
2079 | at beginning of each dump line. | |
2080 | (print_rtl): Likewise. | |
2081 | (print_rtl_single): Likewise. | |
2082 | * final.c (final_scan_insn): Dump the insn in the assembly | |
2083 | file for debugging. | |
2084 | * gcc.1: Document -dP option. | |
2085 | * invoke.texi (Debugging Options): Likewise. | |
2086 | ||
2856c3e3 SC |
2087 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2088 | ||
2089 | * md.texi (Machine Constraints): Document the 68HC11 constraints. | |
2090 | * install.texi (Configurations): Document the 68HC11&68HC12 port. | |
2091 | * invoke.texi (Option Summary, M68hc1x Options): Document the options. | |
2092 | ||
1ca04dc8 DC |
2093 | Tue Sep 12 13:51:13 2000 Denis Chertykov <denisc@overta.ru> |
2094 | ||
2095 | * config/avr/avr.h (ASSEMBLER_DIALECT): New macro declared. | |
2096 | * config/avr/avr.md (*movstrqi_insn): Cleanup output template. | |
2097 | (*clrstrqi): Likewise. | |
2098 | (xorhi3,xorsi3,absqi2): Likewise. | |
2099 | (one_cmplhi2,one_cmplsi2): Likewise. | |
2100 | (addsi3): Two stupid constraint alternatives removed. | |
2101 | (extendhisi2): Use `movw' for enhanced avr cores. | |
2102 | (zero_extendhisi2): Likewise. | |
2103 | ||
bb07060a JW |
2104 | Wed Sep 13 02:31:23 EDT 2000 John Wehle (john@feith.com) |
2105 | ||
2106 | * alias.c (find_base_term): Use frame_pointer_rtx | |
2107 | when handling an ADDRESSOF. | |
2108 | ||
2109 | * cse.c (canon_hash): Handle USE of BLKmode memory. | |
2110 | (cse_insn): Outgoing arguments for a libcall don't | |
2111 | affect any recorded expressions. | |
2112 | ||
d21445e7 TT |
2113 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
2114 | ||
2115 | * configure, config.in: Rebuilt. | |
2116 | * configure.in: Check for iconv, nl_langinfo, langinfo.h. | |
2117 | ||
5c80f6e6 JJ |
2118 | 2000-09-12 Jakub Jelinek <jakub@redhat.com> |
2119 | ||
2120 | * c-lex.c (lex_string): Use charwidth to compute bytemask. | |
2121 | * expr.c (expand_expr): Don't optimize constant array references | |
2122 | initialized with wide string constants. | |
2123 | ||
635a2a90 MH |
2124 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
2125 | ||
a191f0ee | 2126 | * loop.c (note_set_pseudo_multiple_uses): Correct. |
635a2a90 | 2127 | |
cc2999aa JW |
2128 | 2000-09-12 Jim Wilson <wilson@cygnus.com> |
2129 | ||
2130 | * ifcvt.c (noce_process_if_block): If A and B are the same, and no | |
2131 | else block, and X has side-effects, then fail. | |
2132 | ||
a0b6cdee GM |
2133 | 2000-09-12 Greg McGary <greg@mcgary.org> |
2134 | ||
2135 | * config/mips/mips-protos.h | |
2136 | (trap_cmp_op, mips_gen_conditional_trap): New func decls. | |
2137 | * config/mips/mips.h (ISA_HAS_COND_TRAP): New macro. | |
2138 | (PREDICATE_CODES): Add "trap_cmp_op". | |
2139 | * config/mips/mips.c | |
2140 | (trap_cmp_op, mips_gen_conditional_trap): New functions. | |
2141 | * config/mips/mips.md (trap, conditional_trap): New patterns. | |
2142 | ||
24948ccc BS |
2143 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
2144 | ||
2145 | * flow.c (try_pre_increment_1): Don't do anything to sets of the stack | |
2146 | pointer. | |
2147 | ||
3ff5f682 KG |
2148 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2149 | ||
2150 | * builtins.c (built_in_decls): New array. | |
2151 | (expand_builtin_fputs): New function. | |
2152 | (expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS. | |
2153 | ||
2154 | * builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members. | |
2155 | ||
2156 | * c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs. | |
2157 | ||
2158 | * tree.h (built_in_decls): New array. | |
2159 | ||
208b0ab1 JL |
2160 | Tue Sep 12 08:53:57 2000 Jeffrey A Law (law@cygnus.com) |
2161 | ||
2162 | * convex.md: Use "+" instead of "=" for outputs wrapped in a | |
2163 | STRICT_LOW_PART. | |
2164 | * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise. | |
2165 | ||
a86dc4a3 KH |
2166 | 2000-09-12 Kazu Hirata <kazu@hxi.com> |
2167 | ||
7a403706 KH |
2168 | * haifa-sched.c: Fix formatting. |
2169 | ||
c9541287 KH |
2170 | * genattrtab.c: Fix formatting. |
2171 | ||
a86dc4a3 KH |
2172 | * unroll.c: Fix formatting. |
2173 | ||
3af556f7 BK |
2174 | 2000-09-12 Bruce Korb <bkorb@gnu.org> |
2175 | ||
2176 | * fixinc/fixfixes.c: make a type for the fix procedure & use it, | |
2177 | remove obsolete code | |
2178 | * fixinc/fixincl.c: Use PARAMS, not _P_. Add no-op default to switch. | |
2179 | * fixinc/fixincl.tpl: make non-exported arrays static scope | |
2180 | * fixinc/fixincl.x: regenerate | |
2181 | * fixinc/fixlib.h: Use PARAMS, not _P_ | |
2182 | * fixinc/fixtests.c: make a type for the test proc & use it | |
2183 | * fixinc/server.h: Use PARAMS, not _P_ | |
2184 | ||
32892c52 KG |
2185 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2186 | ||
2187 | * c-typeck.c (process_init_element): Avoid union init warnings on | |
2188 | floating point zero. Don't crash on unions containing structs. | |
2189 | ||
ae0a1c23 AO |
2190 | 2000-09-12 Alexandre Oliva <aoliva@redhat.com> |
2191 | ||
2192 | * config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to | |
2193 | general_movsrc_operand, and remove CONST_INT from | |
2194 | general_movdst_operand. | |
2195 | ||
f1c1dfc3 BS |
2196 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
2197 | ||
2198 | * cse.c (approx_reg_cost): If SMALL_REGISTER_CLASSES, return INT_MAX | |
2199 | if a reference to non-fixed hardreg is seen. Otherwise, count hard | |
2200 | regs with a higher cost. | |
2201 | (preferrable): Deal with cases where either cost or regcost is | |
2202 | MAX_COST. | |
2203 | (cse_insn): Use MAX_COST rather than 10000. Always initialize | |
2204 | regcost values. | |
2205 | (COSTS_N_INSNS): Move definition... | |
2206 | * rtl.h: ...here. | |
2207 | (MAX_COST): New macro. | |
2208 | * loop.c (init_loop): Use COSTS_N_INSNS macro instead of hardcoded | |
2209 | constant. | |
2210 | ||
f444e36b MM |
2211 | 2000-09-11 Mark Mitchell <mark@codesourcery.com> |
2212 | ||
2213 | * c-common.h (genrtl_clear_out_block): Remove. | |
2214 | * c-semantics.c (genrtl_clear_out_block): Remove. | |
2215 | (genrtl_while_stmt): Don't call it. | |
2216 | (genrtl_for_stmt): Likewise. | |
2217 | ||
a58d32c2 ZW |
2218 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> |
2219 | ||
2220 | * cppfiles.c: Move all default-#defines to top of file. | |
2221 | (open_include_file): Replace by lookup_include_file. | |
2222 | (read_with_read, read_file): Merged into read_include_file. | |
2223 | (stack_include_file, purge_cache): New functions. | |
2224 | (close_cached_fd): Delete. | |
dd745546 | 2225 | (lookup_include_file, read_include_file, _cpp_pop_file_buffer): |
a58d32c2 ZW |
2226 | Cache the in-memory buffer, not the file descriptor. |
2227 | ||
2228 | * cpphash.h (struct include_file): Add buffer, st, refcnt, | |
2229 | mapped fields. | |
2230 | (xcnew): New utility macro. | |
2231 | (DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file. | |
2232 | * cpplib.h (struct cpp_buffer): Remove mapped field. | |
2233 | ||
2234 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> | |
2235 | ||
2236 | * cpplex.c (parse_string): Accept backslash space newline as a | |
2237 | line continuation. | |
2238 | (lex_line): Likewise. | |
2239 | (_cpp_get_token): Remove hard limit on macro nesting. | |
2240 | ||
bfa29b63 PT |
2241 | 2000-09-12 Philipp Thomas <pthomas@suse.de> |
2242 | ||
2243 | * aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext. | |
2244 | * configure: Rebuilt. | |
2245 | ||
97ca9316 MH |
2246 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
2247 | ||
2248 | * flow.c (split_block): Fix update of registers live at | |
2249 | end of split block. | |
2250 | ||
d90ffc8d JH |
2251 | Tue Sep 12 01:51:38 MET DST 2000 Jan Hubicka <jh@suse.cz> |
2252 | ||
2253 | * i386.md (add?i_3, add?i_5): New. | |
2254 | (add?i_4): Rename from add?i_3; Fix compare pattern. | |
2255 | (sub?i_3, xor?i_3, ior?i_3): New. | |
2256 | ||
2257 | * genrecog.c (write_tree): Output code to clear insn_extract cache. | |
2258 | * genattrtab.c (write_attr_case): Gen call to extract_insn_cache | |
2259 | instead of extract_insn and extract_constrain_insn_cache instead of | |
2260 | extract_insn and constrain_operands. | |
2261 | * recog.c (extract_insn_cached, extract_constrain_insn_cached): | |
2262 | New functions. | |
2263 | (extract_insn): Clear which_alternative. | |
2264 | (constrain_operands): Set which_alternative to -1 when failed. | |
2265 | * recog.h (extract_constrain_insn_cached, extract_insn_cached): | |
2266 | Declare. | |
2267 | ||
4843bda9 MH |
2268 | 2000-09-11 Matthew Hiller <hiller@redhat.com> |
2269 | ||
2270 | * config/h8300/h8300.md (movstrictqi): Changed constraint modifier | |
2271 | on operand 0 to '+'. | |
2272 | (movstricthi): Likewise. | |
2273 | ||
ed5bb68d MH |
2274 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
2275 | ||
2276 | * loop.h (LOOP_IVS): New macro. | |
2277 | (REG_IV_TYPE, REG_IV_INFO): Add ivs argument. | |
2278 | (struct loop_ivs): New. | |
2279 | (struct loop_info): Add ivs field. | |
2280 | (reg_iv_type, reg_iv_info): Delete prototype. | |
2281 | (reg_biv_class, loop_iv_list): Likewise. | |
2282 | * loop.c (record_biv, find_life_end): Pass loop argument. | |
2283 | (reg_iv_type): Remove global array and use | |
2284 | field in loop_regs structure within loop_ivs structure. | |
2285 | (reg_iv_info, reg_biv_class, loop_iv_list): Likewise. | |
2286 | (first_increment_giv, last_increment_giv): Use entry in | |
2287 | loop_ivs structure. | |
2288 | (record_initial): Pass ivs pointer. | |
2289 | * unroll.c (copy_loop_body, remap_split_bivs): Add loop argument. | |
2290 | ||
1ecd860b MH |
2291 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
2292 | ||
2293 | * loop.h (LOOP_REGS): New macro. | |
2294 | (struct loop_regs): New. | |
2295 | (struct loop_info): Add regs field. | |
dd745546 | 2296 | * loop.c (set_in_loop): Remove global array and store |
1ecd860b MH |
2297 | in loop_regs structure as part of loop_info structure. |
2298 | (n_times_set, may_not_optimize): Likewise. | |
2299 | (reg_single_usage, moved_once): Likewise. | |
2300 | (count_one_set): Add regs argument. | |
2301 | (combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise. | |
2302 | (set_pseudo_multiple_uses): Pass regs pointer. | |
2303 | ||
0a5b41f2 MH |
2304 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
2305 | ||
2306 | * unroll.c (iteration_info): Subsume into loop_iterations. | |
2307 | * loop.h (loop_info): New field iv. | |
2308 | ||
5d6a16e2 MH |
2309 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
2310 | ||
2311 | * basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New. | |
2312 | (LOOP_EXITS_DOMS, LOOP_ALL): Likewise. | |
2313 | (flow_loops_update): New prototype. | |
2314 | (flow_loops_find): Add flags to prototype. | |
2315 | (struct loop): Add `pre_header_root' and `pre_header_trace' fields. | |
2316 | * flow.c (flow_loop_pre_header_scan): New. | |
2317 | (flow_loop_dump): Dump pre-header root and trace and exit dominators. | |
2318 | (flow_loop_free): Free pre-header root and trace and exit dominators. | |
2319 | (flow_loops_find): New argument flags. | |
2320 | (flow_loops_update): New function. | |
2321 | * toplev.c (rest_of_compilation): Add flag argument to flow_loops_find. | |
2322 | ||
c586192c MH |
2323 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
2324 | ||
2325 | * basic-block.h (split_block, update_bb_for_insn): New prototypes. | |
2326 | * flow.c (split_block, update_bb_for_insn): New functions. | |
2327 | ||
a5e5cf67 RH |
2328 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
2329 | ||
2330 | * cse.c (fold_rtx): Honor NO_FUNCTION_CSE. | |
2331 | ||
655f2eb9 RH |
2332 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
2333 | ||
2334 | * config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare. | |
2335 | * config/ia64/ia64.c (fr_nonimmediate_operand): New. | |
2336 | (ia64_override_options): Prevent optimizing division for both | |
2337 | latency and throughput. | |
2338 | (rtx_needs_barrier): Handle frcpa. | |
2339 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New. | |
2340 | (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New. | |
2341 | (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New. | |
2342 | (TARGET_SWITCHES): Add -minline-divide-min-latency and | |
2343 | -minline-divide-max-throughput. | |
2344 | (PREDICATE_CODES): Update. | |
2345 | * config/ia64/ia64.md (extendsidi2): Remove * from f case. | |
2346 | (zero_extendsidi2): Likewise. Fix typo in f case insn. | |
2347 | (extendsfdf2): Add cases for gr<->fr and fr<->mem. | |
2348 | (extendsftf2): Likewise. | |
2349 | (extenddftf2): Likewise. | |
2350 | (fix_trunctfdi2_alts): New. | |
2351 | (fixuns_trunctfdi2_alts): New. | |
2352 | (madd*4): Rename from madd*3. | |
2353 | (divsi3, modsi3, udivsi3, umodsi3): New. | |
2354 | (divsi3_internal): New. | |
2355 | (divdi3, moddi3, udivdi3, umoddi3): New. | |
2356 | (divdi3_internal_lat, divdi3_internal_thr): New. | |
2357 | (multf3_alts, maddtf4_alts, nmaddtf4_alts): New. | |
2358 | (recip_approx): New. | |
2359 | ||
b5d7770c AO |
2360 | 2000-09-11 Alexandre Oliva <aoliva@redhat.com> |
2361 | ||
2362 | * print-rtl.c (debug_call_placeholder_verbose): New variable. | |
2363 | (print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is | |
2364 | set. | |
2365 | * integrate.c (copy_rtx_and_substitute): Don't share | |
2366 | LEAF_REG_REMAPpable registers with the inlined function. Don't | |
2367 | share the function value with calling sequences. | |
2368 | ||
6ff85fd8 JJ |
2369 | 2000-09-11 Jakub Jelinek <jakub@redhat.com> |
2370 | ||
2a1da89b JJ |
2371 | * c-decl.c (do_case): Fix a typo. |
2372 | ||
6ff85fd8 JJ |
2373 | * combine.c (simplify_if_then_else): Don't convert a == b ? b : a |
2374 | to a if the comparison is floating mode and not -ffast-math. | |
2375 | * simplify-rtx.c (simplify_ternary_operation): Likewise. | |
2376 | ||
4102c782 R |
2377 | Mon Sep 11 20:07:48 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
2378 | ||
2379 | * sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to | |
2380 | gen_ic_invalidate_line. | |
2381 | ||
52a21fc6 PB |
2382 | 2000-09-11 Philip Blundell <pb@futuretv.com> |
2383 | ||
2384 | * config/arm/elf.h (SUBTARGET_CPP_SPEC): Don't define `arm_elf'. | |
2385 | ||
669ed2b1 UD |
2386 | Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com> |
2387 | ||
2388 | * install.texi (LANGUAGES): Update to include new languages. | |
2389 | * INSTALL: Rebuilt. | |
2390 | ||
50936d27 DD |
2391 | 2000-09-11 DJ Delorie <dj@redhat.com> |
2392 | ||
2393 | * gcc.c (main): Don't warn about unused -B prefixes | |
2394 | (unused_prefix_warnings): remove | |
2395 | ||
00174bdf KH |
2396 | 2000-09-11 Kazu Hirata <kazu@hxi.com> |
2397 | ||
f5d927c0 KH |
2398 | * final.c: Fix formatting. |
2399 | ||
00174bdf KH |
2400 | * integrate.c: Fix formatting. |
2401 | ||
b14066a9 GK |
2402 | 2000-09-11 Geoff Keating <geoffk@cygnus.com> |
2403 | ||
2404 | * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry. | |
2405 | ||
e695931e BS |
2406 | 2000-09-11 Bernd Schmidt <bernds@redhat.co.uk> |
2407 | ||
2408 | * reload.c (regno_clobbered_p): Fix thinko in previous change. | |
2409 | ||
456aadaa SC |
2410 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2411 | ||
2412 | * gcc.1: Document 68hc11 specific options. | |
2413 | ||
9cb8fcaf GK |
2414 | 2000-09-10 Geoff Keating <geoffk@cygnus.com> |
2415 | ||
e0f7170a GK |
2416 | * config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define. |
2417 | (TARGET_LONG_DOUBLE_128): Define. | |
2418 | (SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128. | |
2419 | (LONG_DOUBLE_TYPE_SIZE): Redefine. | |
2420 | (MAX_LONG_DOUBLE_TYPE_SIZE): Define. | |
2421 | (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition | |
2422 | of __LONG_DOUBLE_128__. | |
2423 | (CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128 | |
2424 | passed. | |
2425 | (CPP_LONGDOUBLE_DEFAULT_SPEC): Define. | |
2426 | (CPP_SYSV_DEFAULT_SPEC): Define. | |
2427 | (SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default. | |
2428 | (INIT_TARGET_OPTABS): Define. | |
2429 | ||
9cb8fcaf GK |
2430 | * config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h. |
2431 | (RS6000_UITRUNC): Likewise. | |
2432 | (INIT_TARGET_OPTABS): New macro. | |
2433 | * config/rs6000/rs6000.c (rs6000_trunc_used): Delete. | |
2434 | (trunc_defined): Delete. | |
2435 | (output_prolog): Don't output .extern definitions for fp->int | |
2436 | conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it. | |
2437 | * config/rs6000/rs6000.h (rs6000_trunc_used): Delete. | |
2438 | (trunc_defined): Delete. | |
2439 | (RS6000_ITRUNC): Moved to aix.h. | |
2440 | (RS6000_UITRUNC): Likewise. | |
2441 | * config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would | |
2442 | only emit a libcall. | |
2443 | (fixuns_truncdfsi2): Delete. | |
2444 | (trunc_call): Delete. | |
2445 | (trunc_call_rtl): Delete. | |
2446 | ||
8f820299 ZW |
2447 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
2448 | ||
2449 | * varasm.c (make_decl_rtl): Restore leading star on | |
dd745546 | 2450 | DECL_ASSEMBLER_NAME set for decls with an asmspec. |
8f820299 | 2451 | |
4337bc93 ZW |
2452 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
2453 | ||
2454 | * c-pragma.c (handle_pragma_pack): Correct parsing logic so it | |
2455 | won't give a spurious error for '#pragma pack()'. Simplify | |
2456 | control flow for readability. 'reset' action is not necessary. | |
2457 | ||
d8ea8f28 ZW |
2458 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
2459 | ||
2460 | * defaults.h: Provide default definitions for: CHAR_TYPE_SIZE, | |
2461 | SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE, | |
2462 | LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE, | |
2463 | DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED. | |
2464 | ||
2465 | * cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c, | |
2466 | profile.c, sdbout.c, tradcif.y, tree.c: | |
2467 | Include defaults.h if not already included. | |
2468 | Don't define the above macros. | |
2469 | ||
2470 | * Makefile.in: Update dependencies. | |
2471 | ||
56cb9733 MM |
2472 | 2000-09-10 Mark Mitchell <mark@codesourcery.com> |
2473 | ||
2474 | * c-common.h (add_stmt): Change prototype. | |
2475 | (RECHAIN_STMTS): New macro. | |
2476 | (CASE_LABEL_DECL): Likewise. | |
2477 | (genrtl_case_label): Change prototype. | |
2478 | (c_expand_start_case): Remove prototype. | |
2479 | (build_case_label): Change prototype. | |
2480 | (decl_constant_value): Declare. | |
2481 | * c-common.c (check_case_value): Handle C++'s extensions to C | |
2482 | semantics. | |
2483 | * c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL | |
d8ea8f28 | 2484 | field. |
56cb9733 MM |
2485 | * c-parse.in (stmt): Adjust handling of return statements and case |
2486 | laels. | |
2487 | * c-semantics.c (add_stmt): Return the new statement. | |
2488 | (genrtl_return_stmt): Take the RETURN_STMT as input, not the | |
2489 | returned expression. Directly generate RTL, rather than calling | |
2490 | c_expand_return. | |
2491 | (genrtl_switch_stmt): Don't call c_expand_start_case. | |
2492 | (build_case_label): Take the LABEL_DECL as input, too. | |
2493 | (genrtl_case_label): Just call add_case_node. | |
2494 | (expand_stmt): Adjust calls to genrtl_return_stmt and | |
2495 | genrtl_case_label. | |
2496 | * c-tree.h (c_expand_start_case): Declare. | |
2497 | * c-typeck.c (decl_constant_value): Give it external linkage. | |
2498 | (c_expand_return): Don't call expand_return or expand_null_return; | |
2499 | use genrtl_return_stmt instead. | |
2500 | * stmt.c (struct nesting): Remove num_ranges field. | |
2501 | (add_case_node): Give it external linkage. | |
2502 | (expand_start_case): Don't set num_ranges. | |
2503 | (expand_start_case_dummy): Don't clear it. | |
2504 | (pushcase): Rely on add_case_node to handle `default' labels. | |
2505 | (add_case_node): Handle `default' labels. | |
2506 | * tree.c (tree_int_cst_compare): New function. | |
2507 | * tree.h (tree_int_cst_compare): Declare. | |
2508 | (add_case_node): Likewise. | |
2509 | ||
aac02f4e RH |
2510 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
2511 | ||
2512 | * c-parse.in: Revert last change. | |
2513 | (init_reswords): Do not enter disabled keywords into the ridpointers | |
2514 | table, modulo objc weirdness. | |
2515 | (_yylex): Return the canonical spelling for a keyword. | |
2516 | ||
75d8aea7 PB |
2517 | 2000-09-10 Philip Blundell <philb@gnu.org> |
2518 | ||
2519 | * config/arm/arm.h (CPP_ISA_SPEC): Don't define `arm' or `thumb'. | |
2520 | * config/arm/linux-elf.h (CPP_PREDEFINES): Don't define `__arm__'. | |
2521 | ||
d982e46e JW |
2522 | Sun Sep 10 14:30:28 EDT 2000 John Wehle (john@feith.com) |
2523 | ||
2524 | * alias.c (find_base_term): Handle ADDRESSOF. | |
2525 | (memrefs_conflict_p): An ADDRESSOF doesn't conflict. | |
2526 | ||
212d447c DC |
2527 | 2000-09-10 Denis Chertykov <denisc@overta.ru> |
2528 | ||
2529 | * genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while | |
2530 | outputting templates with many lines. | |
2531 | ||
a746dbf5 SC |
2532 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2533 | ||
2534 | * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD | |
2535 | to decide whether 64-bit support must be generated. | |
2536 | ||
1d0f6d89 RH |
2537 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
2538 | ||
2539 | * c-parse.in (asm patterns): Fix volatile check. | |
2540 | ||
e1aa5140 KG |
2541 | 2000-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2542 | ||
2543 | * cppmacro.c (check_trad_stringification): New function. | |
2544 | (save_expansion): If -Wtraditional, warn about stringification of | |
2545 | macro arguments. | |
2546 | ||
afa1738b MH |
2547 | 2000-09-11 Michael Hayes <mhayes@cygnus.com> |
2548 | ||
2549 | * loop.h (struct loop_mem_info): Move from loop.c | |
2550 | (struct loop_info): Add fields store_mems, mems, mems_idx, | |
2551 | mems_allocated, unknown_address_altered, | |
2552 | unknown_constant_address_altered, num_mem_sets, and | |
2553 | first_loop_store_insn. | |
2554 | ||
2555 | * loop.c (loop_store_mems): Replace with field in loop_info struct. | |
2556 | (loop_mems, loop_mems_idx, loop_mems_allocated): Likewise. | |
2557 | (unknown_address_altered, unknown_constant_address_altered): Likewise. | |
2558 | (num_mem_sets): Likewise. | |
dd745546 | 2559 | (replace_loop_mems, replace_loop_regs): New. |
afa1738b MH |
2560 | (struct loop_replace_args): New. |
2561 | (load_mems): Use replace_loop_mems. | |
2562 | (try_copy_prop): Use replace_loop_regs. | |
2563 | (replace_loop_reg, replace_loop_mem): Use loop_replace_args structure. | |
2564 | ||
63883fc3 SC |
2565 | 2000-09-09 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2566 | ||
2567 | * configure.in: Recognize m6811-elf and m6812-elf. | |
2568 | * configure: Regenerate. | |
2569 | ||
808788fe GK |
2570 | 2000-09-09 Geoff Keating <geoffk@cygnus.com> |
2571 | ||
2572 | * recog.c (validate_replace_rtx_1): Correct MODE parameter in call | |
2573 | to operand_subword. | |
2574 | ||
02055ad6 MH |
2575 | 2000-09-10 Michael Hayes <mhayes@cygnus.com> |
2576 | ||
2577 | * loop.c (struct movables): New. | |
2578 | (num_movables): Move into struct movables. | |
2579 | (the_movables): Change type to struct movables. | |
2580 | (ignore_some_movables): Change struct movable arg to struct movables. | |
dd745546 | 2581 | (force_movables, combine_movables, regs_match_p): Likewise. |
02055ad6 MH |
2582 | (rtx_equal_for_loop_p, move_movables): Likewise. |
2583 | (scan_loop): Change movables to be of type struct movables. | |
2584 | Replace last_movable with field in movables structure. | |
2585 | ||
ae54392b ZW |
2586 | 2000-09-08 Zack Weinberg <zack@wolery.cumb.org> |
2587 | ||
2588 | * c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS. | |
2589 | (init_pragma): Avoid warning if pfile happens to be unused. | |
2590 | * c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never | |
2591 | define init_pragma to nothing. Always prototype | |
2592 | init_pragma. Prototype dispatch_pragma if !USE_CPPLIB. | |
2593 | ||
2594 | * c-lex.c (process_directive): Always call dispatch_pragma. | |
2595 | Initialize entering_c_header to 0. | |
2596 | ||
385c9217 SC |
2597 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2598 | ||
2599 | * config/m68hc11/m68hc11.md: New file, machine description for | |
2600 | 68HC11 & 68HC12. | |
2601 | * config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12. | |
2602 | * config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12. | |
2603 | * config/m68hc11/m68hc12.h: New file, definitions for 68HC12. | |
2604 | * config/m68hc11/m68hc11-protos.h: New file. | |
2605 | * config/m68hc11/m68hc11-crt0.S: New file, startup code. | |
2606 | * config/m68hc11/t-m68hc11-gas: New file, makefile fragment. | |
2607 | * config/m68hc11/xm-m68hc11.h: New file, target defs. | |
2608 | * config/m68hc11/larith.asm: New file, libgcc routines. | |
2609 | ||
dfaf3cdb SC |
2610 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
2611 | ||
2612 | * Makefile.in (DPBIT_FUNCS): Add _usi_to_df. | |
2613 | (FPBIT_FUNCS): Add _usi_to_sf. | |
2614 | * config/fp-bit.c (usi_to_float): New function. | |
2615 | * config/fp-bit.h (L_usi_to_sf, L_usi_to_df): Define. | |
2616 | (usi_to_float): Add appropriate #define. | |
2617 | ||
915119a5 BS |
2618 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
2619 | ||
2620 | * i386-protos.h (sse_comparison_operator, mmx_reg_operand): Declare | |
2621 | new functions. | |
2622 | * i386.c (sse_comparison_operator, mmx_reg_operand): New functions. | |
2623 | * i386.md (attr "type"): Add sse and mmx types. | |
2624 | (attr "memory"): Handle them without a crash. | |
2625 | (movsi_1, movdi_2): Allow MMX regs. | |
2626 | (movdi splits): Don't split moves involving MMX regs. | |
2627 | (setcc_4): Remove '*' from pattern name so we get a gen_setcc4. | |
2628 | (movv4sf_internal, movv4si_internal, movv8qi_internal, | |
2629 | movv4hi_internal, movv2si_internal, movv8qi, movv4hi, movv2si, | |
2630 | movv4sf, movv4si, pushv4sf, pushv4si, pushv8qi, pushv4hi, pushv2si, | |
2631 | sse_movaps, sse_movups, sse_movmskps, mmx_pmovmskb, mmx_maskmovq, | |
2632 | sse_movntv4sf, sse_movntdi, sse_movhlps, sse_movlhps, sse_movhps, | |
2633 | sse_movlps, sse_loadss, sse_movss, sse_storess, sse_shufps, | |
2634 | addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, mulv4sf3, vmmulv4sf3, | |
2635 | divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2, rsqrtv4sf2, vmrsqrtv4sf2, | |
2636 | sqrtv4sf2, vmsqrtv4sf2, sse_andti3, sse_nandti3, sse_iorti3, | |
dd745546 AJ |
2637 | sse_xorti3, maskcmpv4sf3, maskncmpv4sf3, vmmaskcmpv4sf3, |
2638 | vmmaskncmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps, | |
915119a5 BS |
2639 | smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi, |
2640 | cvttps2pi, cvtsi2ss, cvtss2si, cvttss2si, addv8qi3, addv4hi3, | |
2641 | addv2si3, ssaddv8qi3, ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3, | |
2642 | subv4hi3, subv2si3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3, | |
2643 | mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd, | |
2644 | mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3, mmx_uavgv8qi3, | |
2645 | mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pextrw, mmx_pshufw, | |
2646 | eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3, gtv2si3, umaxv8qi3, | |
2647 | smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3, ashrv2si3, lshrv4hi3, | |
2648 | lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3, mmx_ashldi3, | |
2649 | mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw, | |
2650 | mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd, | |
2651 | mmx_punpckldq, emms, sfence, ldmxcsr, prefetch, stmxcsr, sse_clrti, | |
2652 | mmx_clrdi): New patterns. | |
2653 | ||
8e49e00a RE |
2654 | 2000-09-08 Richard Earnshaw <rearnsha@arm.com> |
2655 | ||
2656 | * arm.c: Don't include tm.h directly. | |
2657 | ||
bd5621a3 JH |
2658 | Fri Sep 8 14:34:56 MET DST 2000 Jan Hubicka <jh@suse.cz> |
2659 | ||
2660 | * recog.c (validate_replace_rtx_1): Fix confusion about equality | |
2661 | testing; simplify subregs of constants and nested subregs. | |
e65d02cf | 2662 | |
6b3783de AO |
2663 | 2000-09-08 Alexandre Oliva <aoliva@redhat.com> |
2664 | ||
2665 | * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg. | |
2666 | ||
82be40f7 BS |
2667 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
2668 | ||
2669 | * combine.c (combine_simplify_rtx): Try to simplify VEC_SELECT of a | |
2670 | VEC_CONCAT. | |
9af354b7 BS |
2671 | * rtl.texi (description of USE): Add note about possible pitfalls |
2672 | with this rtx. | |
ce701d1b BS |
2673 | From Richard Henderson: |
2674 | * reload1.c (choose_reload_regs): Compute need_mode properly. | |
82be40f7 | 2675 | |
4287b5f1 RH |
2676 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
2677 | ||
2678 | * config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa. | |
2679 | (__modsi3, __umodsi3): Likewise. | |
2680 | (__udivsi3): Likewise. Normalize the TFmode values. | |
2681 | ||
c5d71f39 GK |
2682 | 2000-09-07 Geoff Keating <geoffk@cygnus.com> |
2683 | ||
2684 | * config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter | |
2685 | with a prototype. | |
2686 | * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress | |
2687 | warning. | |
2688 | ||
712646d0 R |
2689 | Fri Sep 8 03:26:38 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
2690 | ||
2691 | * sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove. | |
2692 | (cmpeqdi_t): Add output pattern. | |
2693 | (cmpeqdi_t+1): Don't split when not optimizing. | |
2694 | Restore proper splitting operation. | |
2695 | ||
30acbc3e RH |
2696 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
2697 | ||
2698 | * c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS, | |
2699 | do not call dispatch_pragma. | |
2700 | ||
46146529 JW |
2701 | 2000-09-07 Jim Wilson <wilson@cygnus.com> |
2702 | ||
2703 | * reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition | |
2704 | to CLASS_CANNOT_CHANGE_MODE. | |
2705 | * config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the | |
2706 | mode classes are different. | |
2707 | ||
6db83155 ZW |
2708 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
2709 | ||
2710 | * cpplib.h (struct cpp_options): Add user_label_prefix member, | |
2711 | left out of commit which removed cppulp.c. | |
2712 | ||
0d45144b RH |
2713 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
2714 | ||
2715 | * bb-reorder.c (fixup_reorder_chain): Add jump in new block | |
2716 | after switch for CASE_DROPS_THROUGH. | |
2717 | ||
e8cb4873 RH |
2718 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
2719 | ||
2720 | * loop.c (strength_reduce): Call check_ext_dependant_givs. | |
2721 | Properly extend the biv initial value for the giv. | |
2722 | (record_biv): Zero ext_dependant. | |
2723 | (record_giv): New argument ext_val. Update all callers. | |
2724 | (general_induction_var): Likewise. | |
2725 | (consec_sets_giv): Likewise. | |
2726 | (simplify_giv_expr): Likewise. Fill in ext_val if we find | |
2727 | a sign-extend, zero-extend, or truncate. | |
2728 | (combine_givs_p): Make sure modes are compatible. | |
2729 | (check_ext_dependant_givs): New. | |
2730 | (extend_value_for_giv): New. | |
2731 | * loop.h (struct induction): Add ext_dependant. | |
2732 | * unroll.c (iteration_info): Extend the biv initial value for the giv. | |
2733 | (find_splittable_givs): Likewise. | |
2734 | (final_giv_value): Likewise. | |
2735 | ||
8b97c5f8 ZW |
2736 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
2737 | ||
2738 | * c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if | |
2739 | REGISTER_TARGET_PRAGMAS is defined. Duplicate some | |
2740 | definitions from cpplib.h. | |
2741 | * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has | |
2742 | already done it. | |
2743 | * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add | |
2744 | documentation for REGISTER_TARGET_PRAGMAS. | |
2745 | ||
2746 | * c-lex.c: Include cpplib.h before c-pragma.h. Define a | |
2747 | default-pragma callback to implement -Wunknown-pragmas if | |
2748 | USE_CPPLIB. | |
2749 | * c-parse.in: Move all includes to top of file. | |
2750 | * c-pragma.c: Include cpplib.h before c-pragma.h. Include | |
2751 | tm_p.h. | |
2752 | (dispatch_pragma): Put the namespace in the -Wunknown-pragmas | |
2753 | warning. | |
2754 | (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it. | |
2755 | ||
2756 | * arm.h, arm-protos.h, arm.c, | |
2757 | c4x.h, c4x-protos.h, c4x.c, | |
2758 | h8300.h, h8300-protos.h, h8300.c, | |
2759 | i370.h, i370-protos.h, i370.c, | |
2760 | i960.h, i960-protos.h, i960.c, | |
d8ea8f28 | 2761 | sh.h, sh-protos.h, sh.c, |
8b97c5f8 ZW |
2762 | v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based |
2763 | pragmata scheme to use REGISTER_TARGET_PRAGMAS instead. | |
2764 | ||
2765 | * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add | |
2766 | multiple include guard. | |
2767 | * i370.md (untyped_call): Use GEN_CALL. | |
2768 | (umodsi3): Remove unused variable. | |
2769 | * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA. | |
2770 | * v850.c (output_move_single, output_move_double): Constify | |
2771 | return value. | |
2772 | (print_operand): Constify a char *. | |
2773 | * v850.h (struct small_memory_info): Constify name member. | |
2774 | ||
1898584f KH |
2775 | 2000-09-07 Kazu Hirata <kazu@hxi.com> |
2776 | ||
2777 | * config/h8300.h: Fix comment typos. | |
2778 | * config/h8300/h8300.md: Likewise. | |
2779 | * config/h8300/lib1funcs.asm: Likewise. | |
2780 | ||
771c4df3 NB |
2781 | Thu 07-Sep-2000 21:29:00 BST Neil Booth <NeilB@earthling.net> |
2782 | ||
2783 | * Makefile.in: Remove references to cppulp.{c,o}. | |
2784 | * cppinit.c (initialize_builtins, cpp_start_read, | |
2785 | cpp_handle_option): Update to use cpp_options structure. | |
2786 | * cppulp.c: Remove. | |
2787 | ||
2496f0b5 JM |
2788 | 2000-09-07 Joseph S. Myers <jsm28@cam.ac.uk> |
2789 | ||
2790 | * c-common.c (time_char_table): Allow %#b and %#h. | |
2791 | ||
bf6302f0 HB |
2792 | 2000-09-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
2793 | ||
2794 | * reorg.c (find_end_label): If the basic block reorder pass moves the | |
2795 | return insn to some other place try to locate it again and put our | |
2796 | end_of_function_label there. | |
2797 | * reorg.c (relax_delay_slots): Check if find_end_label created a | |
2798 | new label that invalidates the current optimazation. | |
2799 | ||
4598ffe9 CM |
2800 | 2000-09-07 Catherine Moore <clm@redhat.com> |
2801 | ||
e8cb4873 RH |
2802 | * unroll.c (unroll_loop): Check for unconditional jumps |
2803 | to loop continuation. Delete if n_iterations is 1. | |
2804 | (ujump_to_loop_cont): New routine. | |
4598ffe9 | 2805 | |
ff427764 BS |
2806 | 2000-09-07 Bernd Schmidt <bernds@redhat.co.uk> |
2807 | ||
2808 | * rtl.c (class_narrowest_mode): Add entries for MODE_VECTOR_INT and | |
2809 | MODE_VECTOR_FLOAT. | |
8441bc30 BS |
2810 | * reload.c (regno_clobbered_p): Accept new arg, MODE, and use it |
2811 | to handle multiword modes correctly. All callers and the declaration | |
2812 | changed. | |
d8ea8f28 | 2813 | |
54f7877c MM |
2814 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
2815 | ||
2816 | * c-common.h (prep_stmt): Declare. | |
2817 | (lang_expand_stmt): Likewise. | |
2818 | * c-decl.c (lang_expand_stmt): Remove. | |
2819 | * c-semantics.c (lang_expand_stmt): Define. | |
2820 | (prep_stmt): New function. | |
2821 | (expand_stmt): Handle common statement types here. | |
d8ea8f28 | 2822 | |
93ca1662 NY |
2823 | 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> |
2824 | ||
2825 | * configure.in (sh-*-linux*): Added. | |
2826 | * configure: Rebuilt. | |
2827 | * config/sh/t-linux: New file. | |
2828 | * config/sh/sh.h (USERMODE_BIT): Define. | |
2829 | (TARGET_USERMODE): Likewise. | |
2830 | (TARGET_SWITCHES): New switches for the bits above. | |
2831 | (INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE. | |
2832 | * config/sh/linux.h: New file. | |
2833 | * config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with | |
2834 | underscore on linux. | |
2835 | (L_sdivsi3, L_udivsi3): Define for linux. | |
2836 | (L_ic_invalidate): Define. | |
2837 | * invoke.texi (SH Options): Document -musermode. | |
2838 | ||
71105114 AO |
2839 | 2000-09-07 Alexandre Oliva <aoliva@redhat.com> |
2840 | ||
4979c2a9 AO |
2841 | * config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function |
2842 | CSE unless generating PIC. | |
2843 | ||
71105114 AO |
2844 | * config/sh/sh.md (symPLT_label2reg): Force the initialization of |
2845 | the PIC register. | |
2846 | ||
d5cfb451 L |
2847 | 2000-09-06 H.J. Lu (hjl@gnu.org) |
2848 | ||
2849 | * Makefile.in (clean_s1): Depend on stage_b. | |
2850 | (clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in | |
2851 | stage2. They are used for "make compare". | |
2852 | ||
ae499cce MM |
2853 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
2854 | ||
2855 | Move statement-tree facilities from C++ to C front-end. | |
2856 | * c-common.h (c_tree_index): Add CTI_VOID_ZERO. | |
2857 | (void_zero_node): New macro. | |
2858 | (struct stmt_tree_s): New type. | |
2859 | (stmt_tree): New typedef. | |
2860 | (struct language_function): New type. | |
2861 | (last_tree): New macro. | |
2862 | (last_expr_type): Likewise. | |
2863 | (walk_tree_fn): New typedef. | |
2864 | (current_stmt_tree): New function. | |
2865 | (begin_stmt_tree): Likewise. | |
2866 | (add_stmt): Likewise. | |
2867 | (finish_stmt_tree): Likewise. | |
2868 | (statement_code_p): Likewise. | |
2869 | (lang_statement_code_p): New variable. | |
2870 | (walk_stmt_tree): New function. | |
2871 | (STMT_IS_FULL_EXPR_P): New macro. | |
2872 | * c-common.c (lang_statement_code_p): New variable. | |
2873 | (c_common_nodes_and_builtins): Initialize void_zero_node. | |
2874 | (statement_code_p): New function. | |
2875 | (walk_stmt_tree): Likewise. | |
2876 | * c-decl.c (language_function): Rename to ... | |
2877 | (c_language_function): ... this. Include language_function. | |
2878 | (push_c_function_context): Adjust accordingly. | |
2879 | (pop_c_function_context): Likewise. | |
2880 | (mark_c_function_context): Likewise. | |
2881 | (current_stmt_tree): Define. | |
2882 | * c-semantics.c (begin_stmt_tree): New function. | |
2883 | (add_stmt): Likewise. | |
2884 | (prune_unused_decls): Likewise. | |
2885 | (finish_stmt_tree): Likewise. | |
2886 | ||
4f4b88d0 HB |
2887 | 2000-09-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
2888 | ||
e8cb4873 | 2889 | * flow.c (insn_dead_p): Detect dead memory stores with auto increments. |
4f4b88d0 | 2890 | |
f725a3ec KH |
2891 | 2000-09-06 Kazu Hirata <kazu@hxi.com> |
2892 | ||
2893 | * calls.c: Fix formatting. | |
2894 | ||
0806f95f GS |
2895 | 2000-09-06 Graham Stott <grahams@cygnus.co.uk> |
2896 | ||
e8cb4873 | 2897 | * config/i386/i386.h (ADDRESS_COST): Fix typo. |
0806f95f | 2898 | |
0e5921e8 ZW |
2899 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
2900 | ||
2901 | Integrated preprocessor. | |
2902 | ||
2903 | * Makefile.in: Remove all references to c-parse.gperf, | |
2904 | c-gperf.h, and c-parse.h. Remove -d from yacc command line | |
2905 | generating c-parse.c. Update dependencies. | |
2906 | * c-parse.gperf, c-gperf.h: Delete. | |
2907 | ||
2908 | * c-common.c: Don't define parse_options, cpp_token, yy_cur, | |
2909 | yy_lim, or yy_get_token. Don't define get_directive_line if | |
2910 | USE_CPPLIB. | |
2911 | * c-common.h: Add multiple include guard. Define RID values | |
2912 | for every keyword in C, C++, and Objective C. Put all the | |
2913 | modifiers first. | |
2914 | (struct c_fileinfo, get_fileinfo, dump_time_statistics): New. | |
2915 | * c-decl.c (c_decode_option): Handle -lang-objc here. | |
2916 | (print_lang_identifier): Handle C_IS_RESERVED_WORD case. | |
2917 | (grokdeclarator): Adjust for new RID scheme. | |
2918 | (extract_interface_info): New stub. | |
2919 | * c-lang.c: Don't declare yy_cur or parse_options. | |
2920 | (lang_init_options): Call cpp_init. Don't call | |
2921 | cpp_options_init. | |
2922 | (lang_init): Don't call check_newline if USE_CPPLIB. | |
2923 | ||
2924 | * c-lex.c: Don't include c-parse.h. Do include timevar.h. | |
2925 | Elide lots of unnecessary code if USE_CPPLIB. Delete code | |
2926 | rendered unnecessary by new architecture. Move routines not | |
2927 | shared with C++ to c-parse.in. Maintain a local idea of the | |
2928 | line number. Handle C++ as well as C. | |
2929 | [USE_CPPLIB]: Declare and register callbacks for #ident and | |
2930 | for entering/leaving files. | |
2931 | (init_c_lex, c_lex): Are now the entry points to this file. | |
2932 | (check_newline): Break out directive handling to | |
2933 | process_directive. | |
2934 | (read_ucs, is_extended_char, utf8_extend_token): Moved here | |
2935 | from C++ front end. | |
2936 | (readescape, parse_float): Overhaul. | |
2937 | (lex_number, lex_string, lex_charconst): Break out of c_lex | |
2938 | (n'ee yylex). | |
2939 | (get_fileinfo, update_header_times, dump_one_header, | |
2940 | dump_time_statistics): New and/or moved here from C++. | |
2941 | Support per-file data needed by C++ and per-header timing | |
2942 | statistics (C++ only, at the moment). | |
2943 | * c-lex.h: Update prototypes. Add multiple include guard. | |
2944 | * c-tree.h (struct lang_identifier): Add rid_code field. | |
2945 | (C_IS_RESERVED_WORD, C_RID_CODE): New. | |
2946 | ||
2947 | * c-parse.in: Include c-pragma.h. Remove unnecesary calls to | |
2948 | reinit_parse_for_function and/or position_after_white_space. | |
2949 | (save_filename, save_lineno): Look ahead before saving. | |
2950 | (label -> identifier ':'): Save file and line before shifting ':'. | |
2951 | (reservedwords): No need to call get_identifier. | |
2952 | (init_parse, finish_parse, yyerror, yylex, yyprint, | |
2953 | make_pointer_declarator): Are now here for C/ObjC. | |
2954 | (rid_to_yy): Conversion table from RID constants to Yacc codes. | |
2955 | ||
2956 | * c-pragma.c: Rewrite parsing logic to fit with cpplib's | |
2957 | #pragma registry. Provide dummy implementation of that | |
2958 | interface if !USE_CPPLIB. | |
2959 | * c-pragma.h: Update to match. | |
2960 | ||
2961 | * flags.h: Add multiple include guard. | |
2962 | (flag_detailed_statistics): Moved here from C++. | |
2963 | * toplev.c: Define flag_detailed_statistics. | |
2964 | ||
2965 | * gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case | |
2966 | #if USE_CPPLIB. | |
2967 | * timevar.def (TV_CPP, TV_LEX): New. | |
2968 | * timevar.h: Add multiple include guard. | |
2969 | ||
2970 | * objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case | |
2971 | #if USE_CPPLIB. | |
2972 | * objc/objc-act.c: Don't mention yy_cur or parse_options. | |
2973 | Initialize cpplib properly. Force lineno to 0 after first | |
2974 | call to check_newline. Don't handle -lang-objc here. | |
2975 | Move forget_protocol_qualifiers and remember_protocol_qualifiers here. | |
2976 | ||
5638268e DE |
2977 | 2000-09-06 David Edelsohn <edelsohn@gnu.org> |
2978 | ||
2979 | * rs6000.md: Correct function unit definitions for cr_logical and | |
2980 | mtjmpr. | |
2981 | (sCOND): Additionally fail for sgt, slt, sge, sle if !TARGET_POWER | |
2982 | and use portable method for >=0 and floating point >=. Remove | |
2983 | associated matchers. | |
2984 | ||
44835fdd MM |
2985 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
2986 | ||
2987 | * extend.texi: Mark named return value extension as deprecated. | |
2988 | ||
bab6226b GK |
2989 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
2990 | ||
2991 | * config/rs6000/rs6000.c (rs6000_reverse_condition): Return | |
2992 | the result. | |
2993 | ||
e6513023 GDR |
2994 | 2000-09-06 Gabriel Dos Reis <gdr@codesourcery.com> |
2995 | ||
2996 | * toplev.c (display_help): Fix thinko in documentation. | |
2997 | ||
2998 | * diagnostic.h (output_buffer::indent_skip): New fields. | |
2999 | (output_indentation): New macro. | |
3000 | ||
3001 | * diagnostic.c (output_indent): New function. | |
3002 | (output_set_prefix, clear_diagnostic_info): Use. | |
3003 | (output_emit_prefix): Predict future indentation. | |
3004 | ||
112c7aea DD |
3005 | 2000-09-06 DJ Delorie <dj@redhat.com> |
3006 | ||
3007 | * Makefile.in (stage_*): add more dependencies to ensure parallel | |
3008 | builds build correctly | |
3009 | ||
1bac0fb4 MH |
3010 | 2000-09-06 Manfred Hollstein <manfredh@redhat.com> |
3011 | ||
3012 | * Makefile.in (bootstrap-lean): Depend on bootstrap-lean_g, | |
3013 | not bootstrap-lean_f. | |
3014 | ||
f472a17c AS |
3015 | 2000-09-06 Andreas Schwab <schwab@suse.de> |
3016 | ||
3017 | * mklibgcc.in: Emit rule for libgcc-stage-start. | |
3018 | * Makefile.in (stage1-start, stage2-start, stage3-start, | |
3019 | stage4-start): Don't handle libgcc here, use libgcc.mk instead. | |
3020 | ||
630c79be | 3021 | 2000-09-06 Bernd Schmidt <bernds@redhat.co.uk> |
611bbf2a BS |
3022 | |
3023 | * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED. | |
3024 | (update_equiv_regs): Likewise, except for the mn10200 kludge. | |
3025 | (combine_regs): Likewise. | |
3026 | ||
630c79be BS |
3027 | * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H). |
3028 | * cse.c: Include "basic-block.h". | |
3029 | (struct table_elt): New field REGCOST. | |
3030 | (CHEAP_REG): Delete macro. | |
3031 | (COST): Return 0 for REGs. | |
3032 | (approx_reg_cost_1, approx_reg_cost, preferrable): New functions. | |
3033 | (notreg_cost): Return 0 for appropriate SUBREGs. | |
3034 | (COSTS_N_INSNS): Return N * 2. | |
3035 | (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap | |
3036 | SUBREGs. | |
3037 | (CHEAPER): Use new function preferrable. | |
3038 | (insert): Initialize REGCOST member. | |
3039 | (find_best_addr): Use approx_reg_cost for estimation of register | |
3040 | usage. | |
3041 | (cse_insn): Likewise. | |
3042 | * loop.c (iv_add_mult_cost): New function. | |
3043 | (add_cost, shift_cost, mult_cost): Delete variables. | |
3044 | (init_loop): Don't initialize add_cost; reduce copy_cost by half. | |
3045 | (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost. | |
3046 | Make code that detects autoinc opportunities slightly less optimistic. | |
3047 | (simplify_giv_expr): If expression contains other reg that is also a | |
3048 | giv, only increment benefit if this is the only use of that reg. | |
3049 | (consec_sets_giv): Take that change into account. | |
3050 | (combine_givs): Slightly more verbose output. | |
3051 | ||
3052 | * i386.h (RTX_COSTS): For MULT, return true cost of multiplication, | |
3053 | not the cost of an equivalent shift. | |
3054 | * sh-protos.h (addsubcosts): Declare. | |
3055 | * sh.c (addsubcosts): New function. | |
3056 | * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0. | |
3057 | (RTX_COSTS): Tweak. Use addsubcosts. | |
3058 | (ADDRESS_COST): Return higher cost for reg+reg addressing. | |
3059 | ||
39a10a29 GK |
3060 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
3061 | ||
3062 | * config/rs6000/rs6000.c (validate_condition_mode): New function. | |
3063 | (branch_comparison_operator): Call validate_condition_mode to | |
3064 | abort rather than returning 0. | |
3065 | (branch_positive_comparison_operator): New function. | |
3066 | (scc_comparison_operator): Call validate_condition_mode to abort | |
3067 | rather than returning 0. | |
3068 | (ccr_bit): Call validate_condition_mode. Update for | |
3069 | new branch scheme. | |
3070 | (print_operand): Delete %C modifier. Update %E case | |
3071 | to use EQ bit not SO bit. | |
3072 | (rs6000_reverse_condition): New function. | |
3073 | (rs6000_generate_compare): New function. | |
3074 | (rs6000_emit_sCOND): New function. | |
3075 | (rs6000_emit_cbranch): New function. | |
3076 | (output_cbranch): The length of a long branch insn is | |
3077 | now only 8 bytes. Add validate_condition_mode. Use | |
3078 | rs6000_reverse_condition. Remove cror generation. | |
bab6226b | 3079 | |
39a10a29 GK |
3080 | * config/rs6000/rs6000.h: Update comments. |
3081 | (PREDICATE_CODES): Add new predicate. Update codes used | |
3082 | by branch_comparison_operator and scc_comparison_operator. | |
3083 | * config/rs6000/rs6000-protos.h: Add prototypes for | |
3084 | new external functions. | |
3085 | * config/rs6000/rs6000.md: Add new scheduling parameters | |
3086 | for cr_logical instructions. Change length of branch | |
3087 | instructions. | |
3088 | (bCOND patterns): Call rs6000_emit_cbranch. | |
3089 | (sCOND patterns): Call rs6000_emit_sCOND. | |
3090 | (branch patterns): Change lengths to 4. | |
3091 | (cr logical patterns): New. | |
3092 | ||
2a4bbffa RH |
3093 | 2000-09-06 Richard Henderson <rth@cygnus.com> |
3094 | ||
3095 | * config/i386/i386.md (call_pop): Fix test for setting | |
3096 | current_function_uses_pic_offset_table. | |
3097 | (call, call_value_pop, call_value): Likewise. | |
3098 | ||
eab828ba ZW |
3099 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
3100 | ||
3101 | * timevar.c (timevar_add): Delete. | |
3102 | (timevar_get): Also count time since the selected timer was | |
3103 | last updated. Do not examine the timevar stack if the | |
3104 | selected timer is standalone. | |
3105 | ||
f1d6a533 DA |
3106 | 2000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3107 | ||
3108 | * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend. | |
3109 | ||
53c5b5d7 JM |
3110 | 2000-09-05 Jason Merrill <jason@redhat.com> |
3111 | ||
3112 | * c-decl.c (finish_incomplete_decl): Don't call complete_array_type | |
3113 | for 'extern' arrays. | |
3114 | ||
3392dafc RH |
3115 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
3116 | ||
3117 | * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium. | |
3118 | Eliminate final copy from non-trapping case. | |
3119 | (__divdf3, __divsf3): Likewise. | |
3120 | ||
2a7ffc85 RH |
3121 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
3122 | ||
3123 | * config/ia64/ia64.md (mulhi3): Fix typo last change. | |
3124 | * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise. | |
3125 | ||
204093e6 DT |
3126 | 2000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net> |
3127 | ||
3128 | * Makefile.in: Restructure bootstrap stages to allow clean | |
3129 | restart after failure. | |
3130 | ||
514f96e6 RH |
3131 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
3132 | ||
3133 | * config/ia64.md (movsi and movdi patterns): Allow moves from | |
3134 | 8-bit constants to AR registers. | |
3135 | ||
cf1f6ae3 RH |
3136 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
3137 | ||
3138 | * config/ia64/ia64.md (mulhi3): New. | |
3139 | ||
d8d7a286 RH |
3140 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
3141 | ||
3142 | * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove. | |
3143 | * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64 | |
3144 | Optimization Guide, minimum latency alternative. | |
3145 | (__moddi3, __udivdi3, __umoddi3): Likewise. | |
3146 | (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise. | |
3147 | ||
a6efbece BK |
3148 | 2000-09-05 Bruce Korb <bkorb@gnu.org> |
3149 | ||
0e5921e8 ZW |
3150 | * fixinc/fixincl.c (load_file): always read header files |
3151 | with sizes that are a multiple of the page size. | |
dc46505a | 3152 | & use libiberty's getpagesize for determining that. |
a6efbece | 3153 | |
c0712acb AO |
3154 | 2000-09-05 Alexandre Oliva <aoliva@redhat.com> |
3155 | ||
3156 | * gcse.c (hash_string_1): Add prototype. | |
3157 | * cse.c (canon_hash_string): Likewise. | |
3158 | ||
af7f0fde CN |
3159 | 2000-09-04 Craig Newell <CraigN@ieee.org> |
3160 | ||
3161 | * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it. | |
3162 | ||
4993ddc1 AS |
3163 | 2000-09-04 Andreas Schwab <schwab@suse.de> |
3164 | ||
3165 | * Makefile.in (STAGESTUFF): Remove libgcc. | |
3166 | (stage1-start, stage2-start, stage3-start): Copy the contents of | |
3167 | the libgcc directory explicitly. | |
3168 | (mostlyclean): Clean libgcc. | |
3169 | ||
5e640c56 AH |
3170 | 2000-09-04 Andrew Haley <aph@redhat.com> |
3171 | ||
3172 | * dwarf2out.c: (stack_adjust_offset): New prototype. | |
3173 | ||
25ffb1f6 JH |
3174 | Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz> |
3175 | ||
3176 | * combine.c (make_extraction): Fix rtx_cost comparison to | |
3177 | match the comment. | |
3178 | ||
3179 | Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz> | |
3180 | ||
0e5921e8 | 3181 | * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf, |
25ffb1f6 JH |
3182 | umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1): |
3183 | Add '*' to insn pattern name. | |
3184 | ||
29844fa7 JJ |
3185 | 2000-09-04 Jakub Jelinek <jakub@redhat.com> |
3186 | ||
3187 | * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context, | |
3188 | use posn - 1 to index into tokens array. | |
3189 | (maybe_paste_with_next): Adjust caller. | |
3190 | ||
0d86f538 GK |
3191 | 2000-09-03 Geoff Keating <geoffk@cygnus.com> |
3192 | ||
bff46771 GK |
3193 | * invoke.texi: Document the -mvxworks option for rs6000 ELF. |
3194 | ||
0d86f538 GK |
3195 | * config/rs6000/rs6000.h: Update various comments about XER_REGNO. |
3196 | (REGNO_REG_CLASS): Use symbolic register | |
3197 | names. | |
3198 | ||
4e67550b RE |
3199 | 2000-09-03 Richard Earnshaw <rearnsha@arm.com> |
3200 | ||
0e5921e8 | 3201 | * arm.c (final_prescan_insn): If the form of a jump insn isn't |
4e67550b RE |
3202 | recognized, don't try to conditionally execute it. |
3203 | ||
150f4100 DC |
3204 | Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru> |
3205 | ||
3206 | * config/avr/avr.md ("*tablejump_lib"): New pattern. | |
3207 | (call_value_insn): Right length claculation. | |
3208 | (call_insn): Likewise. | |
3209 | ||
5fecfd8d MM |
3210 | 2000-09-02 Marek Michalkiewicz <marekm@linux.org.pl> |
3211 | ||
3212 | * config/avr/avr-protos.h, config/avr/avr.c (unique_section, | |
3213 | gas_output_limited_string, gas_output_ascii, output_movqi, | |
3214 | output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr, | |
3215 | out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf, | |
3216 | out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out, | |
3217 | ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out, | |
3218 | lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf, | |
3219 | out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info): | |
3220 | Add "const" as needed to remove warnings. | |
3221 | ||
3222 | * config/avr/avr.c (avr_override_options, avr_init_once, | |
3223 | function_prologue, function_epilogue, frame_pointer_required_p, | |
3224 | class_likely_spilled_p, order_regs_for_local_alloc, | |
3225 | avr_address_cost, avr_ret_register): Use K&R style arguments. | |
3226 | (initial_elimination_offset, gas_output_limited_string): | |
3227 | Remove ATTRIBUTE_UNUSED from the used arguments. | |
3228 | (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf): | |
3229 | Use local variables src, dest, base to access operands[]. | |
3230 | Rename reg_dest to reg_src if that's what it is. | |
3231 | (output_movhi, output_movsisf): Optimize loading 8-bit immediate | |
3232 | constants to LD_REGS if reg_was_0. | |
3233 | (output_reload_insisf): Change arg 3 to insn length and set it. | |
3234 | (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient | |
3235 | access to 16-bit I/O register pairs. | |
3236 | (avr_address_cost): Lower cost for the above case. | |
3237 | (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand | |
3238 | may be clobbered, also for LD_REGS. | |
3239 | (adjust_insn_length): Correct insn length for iorhi3 and iorsi3 | |
3240 | with a CONST_INT. | |
3241 | ||
3242 | * config/avr/avr.h (PTRDIFF_TYPE): Make signed. | |
3243 | ||
3244 | * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS | |
3245 | macro to test_hard_reg_class function. | |
3246 | (*movsi, *movsf): Change "cc" attribute from "clobber" to "none" | |
3247 | for loading immediate constants to LD_REGS. | |
3248 | (andsi3, cmphi, cmpsi): Add return statements to avoid warnings. | |
3249 | ||
3250 | ||
bad3869a MM |
3251 | Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl> |
3252 | ||
3253 | * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__ | |
3254 | * config/avr/libgcc.S: Lost part of the previous patch. | |
3255 | ||
802a8181 DA |
3256 | 2000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3257 | ||
3258 | * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t | |
3259 | object before calling pthread_mutex_init. | |
3260 | ||
1a66cd67 AO |
3261 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com> |
3262 | ||
3263 | * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm, | |
3264 | config/sh/crtn.asm: New files. | |
3265 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set. | |
3266 | (crt1.o, crti.o, crtn.o): New targets. | |
3267 | * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added | |
3268 | sh/t-elf. | |
3269 | * configure: Rebuilt. | |
3270 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
3271 | STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define. | |
3272 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
3273 | Undefine for config/elfos.h to redefine. | |
3274 | (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h. | |
3275 | ||
3276 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> | |
3277 | ||
3278 | * config/sh/sh-protos.h (nonpic_symbol_mentioned_p, | |
3279 | legitimize_pic_address, output_pic_addr_const): Declare. | |
3280 | * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register. | |
3281 | (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise. | |
3282 | (TARGET_SWITCHES): New switch -mprefergot. | |
3283 | (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot. | |
3284 | (PIC_OFFSET_TABLE_REGNUM): Define. | |
3285 | (GOT_SYMBOL_TABLE): Likewise. | |
3286 | (LEGITIMIZE_ADDRESS): Use legitimize_pic_address. | |
3287 | (ENCODE_SECTION_INFO): Define. | |
3288 | (FINALIZE_PIC): New macros. | |
3289 | (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro. | |
3290 | (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const. | |
3291 | * config/sh/sh.c (print_operand_address): Use output_pic_addr_const. | |
3292 | (prepare_move_operands): Call emit_pic_move or | |
3293 | emit_pic_const_move if appropriate. | |
3294 | (output_far_jump): For PIC, use braf and output long offset. | |
0e5921e8 | 3295 | (machine_dependent_reorg): |
1a66cd67 AO |
3296 | (sh_expand_prologue): Save and initialize the PIC register. |
3297 | (sh_expand_epilogue): Restore it. | |
3298 | (initial_elimination_offset): Account for it. | |
3299 | (nonpic_symbol_mentioned_p): New function. | |
3300 | (legitimize_pic_address): Likewise. | |
3301 | (output_pic_addr_const): Likewise. | |
3302 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns. | |
3303 | (call, call_value): Use them. | |
3304 | (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg, | |
3305 | symPLT_label2reg): New expands. | |
3306 | * invoke.texi (SH Options): Document -mprefergot. | |
3307 | ||
6462bb43 AO |
3308 | 2000-09-01 Alexandre Oliva <aoliva@redhat.com> |
3309 | ||
3310 | * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro. | |
3311 | * gcse.c (hash_string_1): New function. | |
3312 | (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number. | |
3313 | (expr_equiv_p) <ASM_OPERANDS>: Likewise. | |
3314 | * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS. | |
3315 | (canon_hash_string): New function. | |
3316 | (canon_hash) <ASM_OPERANDS>: Disregard filename and line number. | |
3317 | (exp_equiv_p) <ASM_OPERANDS>: Likewise. | |
3318 | (fold_rtx): Use ASM_OPERANDS accessor macros. | |
3319 | * emit-rtl.c (copy_insn_1): Likewise. | |
3320 | * integrate.c (copy_rtx_and_substitute): Likewise. | |
3321 | * stmt.c (expand_asm_operands): Likewise. Give an | |
3322 | ASM_OPERANDS rtx the mode of the output reg being set from it. | |
3323 | ||
1b4f90cd FF |
3324 | 2000-09-01 Fred Fish <fnf@be.com> |
3325 | ||
3326 | * fix-header.c (write_rbrac): Add putc and getc to list of | |
3327 | functions to protect against prior definition as a macro. | |
0e5921e8 | 3328 | |
3c786c69 JM |
3329 | 2000-09-01 Joseph S. Myers <jsm28@cam.ac.uk> |
3330 | ||
3331 | * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE. | |
3332 | (c_size_type_node): Define. | |
3333 | * c-decl.c (init_decl_processing): Initialize c_size_type_node. | |
3334 | * c-common.c (enum format_lengths, enum format_std_version, | |
3335 | format_length_info, format_type_detail, BADLEN, NOLENGTHS, | |
3336 | format_kind_info, printf_length_specs, scanf_length_specs, T89_I, | |
3337 | T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL, | |
3338 | T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD, | |
3339 | T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI, | |
3340 | TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM, | |
3341 | format_types): Define. | |
3342 | (format_char_info, print_char_table, scan_char_table, | |
3343 | time_char_table): Rearrange for new organization of information | |
3344 | about format length modifiers and standard versions. | |
3345 | (T_ST): Redefine to use c_size_type_node. | |
3346 | (check_format_info): Obtain information about length modifiers and | |
3347 | standard versions from tables. Adjust warning message wordings. | |
3348 | Use the name from the user's program for `ll' and `hh' length | |
3349 | modifiers in warning messages. Use more informative names for | |
3350 | wanted types where available (for wchar_t, wint_t, size_t, signed | |
3351 | size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t). | |
3352 | ||
8a09bb27 JW |
3353 | 2000-09-01 Jim Wilson <wilson@cygnus.com> |
3354 | ||
ca3920ad JW |
3355 | * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN. |
3356 | * combine.c (distribute_notes): Handle REG_NORETURN. | |
3357 | * rtl.c (reg_note_name): Add REG_NORETURN. | |
3358 | * rtl.h (enum reg_note): Likewise. | |
3359 | ||
3360 | * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from | |
3361 | ia64_file_start. | |
3362 | * config/ia64/ia64.c (emit_safe_across_calls): Likewise. | |
3363 | (rtx_needs_barrier): Handle unspec_volatile 8 and 9. | |
3364 | (emit_predicate_relation_info): Handle conditional calls with | |
3365 | REG_NORETURN. | |
3366 | * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls | |
3367 | instead of ia64_file_start. | |
3368 | * config/ia64/sysv4.h (ASM_FILE_START): Likewise. | |
3369 | * config/ia64/ia64.md (safe_across_calls_all, | |
3370 | save_across_calls_normal): New patterns. | |
3371 | ||
8a09bb27 JW |
3372 | * loop.c (check_final_value): Check for biv use before checking for |
3373 | giv use. Check for both biv and giv uses. Always set last_giv_use | |
3374 | if there is a giv use. | |
3375 | ||
11a13704 RH |
3376 | 2000-09-01 Richard Henderson <rth@cygnus.com> |
3377 | ||
3378 | * config/ia64/ia64.md (mulsi3): Use grfr_register_operand. | |
3379 | (madddi3): Likewise. | |
3380 | (maddsi3): New. | |
3381 | ||
6324d2bb RK |
3382 | Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3383 | ||
fcf1b822 RK |
3384 | * expr.c (clear_storage): Don't use emit_move_insn unless |
3385 | either BLKmode or proper size. | |
3386 | (store_constructor): Don't call clear_storage if REG of wrong size. | |
3387 | ||
6324d2bb RK |
3388 | * flow.c (init_propagate_block_info): Don't mark frame dead at end |
3389 | of function if returns wiht stack pointer depressed. | |
3390 | ||
1ba5ae8f AH |
3391 | 2000-09-01 Andrew Haley <aph@redhat.com> |
3392 | ||
0e5921e8 ZW |
3393 | * dwarf2out.c (stack_adjust_offset): New function. |
3394 | (dwarf2out_stack_adjust): Break out stack adjust logic into | |
3395 | new stack_adjust_offset function. Look inside parallels and | |
3396 | sequences for stack adjustments. | |
1ba5ae8f | 3397 | |
893f3d5b JL |
3398 | 2000-08-31 Jeff Law <law@cygnus.com> |
3399 | ||
94c51f7a JL |
3400 | * arm.md: Use no_new_pseudos to determine when it is safe |
3401 | to create new pseudo registers. | |
3402 | ||
0e5921e8 ZW |
3403 | * arm.c (legitimize_pic_address): Use no_new_pseudos to determine |
3404 | when we can safely allocate new registers. | |
893f3d5b | 3405 | |
1b3d8f8a GK |
3406 | 2000-08-31 Geoffrey Keating <geoffk@cygnus.com> |
3407 | ||
3408 | * stmt.c (expand_asm_operands): Twiddle generating_concat_p | |
3409 | so that CONCATs are not generated for ASMs. | |
3410 | * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when | |
3411 | not generating_concat_p. | |
3412 | * function.c (pop_function_context_from): Reset | |
3413 | generating_concat_p. | |
3414 | (prepare_function_start): Likewise. | |
3415 | * rtl.c (generating_concat_p): Define. | |
3416 | * rtl.h (generating_concat_p): Declare. | |
3417 | * toplev.c (rest_of_compilation): No CONCATs after RTL generation. | |
3418 | ||
4e8bd75f | 3419 | 2000-08-22 Philipp Thomas <pthomas@suse.de> |
0e5921e8 | 3420 | Masanobu Yuhara <yuhara@flab.fujitsu.co.jp> |
4e8bd75f PT |
3421 | |
3422 | * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them | |
3423 | for translation. | |
3424 | ||
b145ee27 GM |
3425 | 2000-08-30 Greg McGary <greg@mcgary.org> |
3426 | ||
3427 | * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh | |
3428 | * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC). | |
3429 | * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE. | |
3430 | ||
2afaa41c GM |
3431 | 2000-08-30 Greg McGary <greg@mcgary.org> |
3432 | ||
3433 | * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct. | |
3434 | (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct. | |
3435 | (TREE_INT_CST): New macro. | |
3436 | * varasm.c (const_hash, compare_constant_1, record_constant_1): | |
3437 | Use new macro TREE_INT_CST. | |
3438 | ||
1d92b3e1 NB |
3439 | Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net> |
3440 | ||
3441 | * contrib.texi: Add self. | |
3442 | ||
b23ca156 AO |
3443 | 2000-08-30 Alexandre Oliva <aoliva@redhat.com> |
3444 | ||
3445 | * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns. | |
3446 | (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps | |
3447 | and labels. | |
3448 | ||
aef9fbbf DA |
3449 | 2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3450 | ||
3451 | * fixinc/gnu-regex.c: Don't define `const'. | |
3452 | ||
85f3d674 RK |
3453 | Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3454 | ||
3455 | * expr.c (store_constructor): Allow variable bounds of array type. | |
3456 | (expand_expr): Don't blow up if type is ERROR_MARK. | |
3457 | * varasm.c (output_constructor): Don't access lower bound of array | |
3458 | type unless need it if index is supplied (so it can be a variable | |
3459 | if no index is supplied). | |
3460 | Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS. | |
3461 | Other minor cleanups. | |
3462 | ||
5b67ad6f DA |
3463 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3464 | ||
3465 | * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS | |
3466 | for compilations in stage 1 and subsequent stages, respectively. | |
3467 | * configure.in (vax): Add compiler-dependent CFLAGS for stage 1. | |
3468 | * configure: Rebuilt. | |
3469 | * x-vax, x-vax-gcc: Deleted. | |
3470 | ||
63ad61ed ZW |
3471 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
3472 | ||
3473 | * c-common.c (declare_function_name): Use func_id_node, | |
3474 | function_id_node, and pretty_function_id_node. Do not make | |
0e5921e8 | 3475 | __func__ visible at file scope. |
63ad61ed ZW |
3476 | * c-common.h (c_tree_index): Add CTI_FUNCTION_ID, |
3477 | CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID. | |
3478 | (function_id_node, pretty_function_id_node, func_id_node): New | |
3479 | macros. | |
3480 | * c-decl.c (init_decl_processing): Initialize function_id_node, | |
3481 | pretty_function_id_node, and func_id_node. | |
3482 | (c_make_fname_decl): Correct comment. | |
3483 | ||
3484 | * tree.h (struct tree_identifier): Constify pointer member. | |
3485 | ||
3486 | * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *. | |
3487 | * c-pragma.h (struct weak_syms): Constify name and value members. | |
0e5921e8 | 3488 | (add_weak): Constify arguments. |
63ad61ed ZW |
3489 | |
3490 | * calls.c (special_function_p): Constify a char *. | |
3491 | (expand_call): Remove variable which is initialized and then | |
3492 | never used. | |
3493 | * dependence.c (struct def_use, struct induction, struct subscript): | |
3494 | Constify 'variable' member. | |
3495 | (get_low_bound, have_induction_variable): Constify char * argument. | |
3496 | (find_induction_variable): Add braces to avoid dangling else. | |
3497 | (classify_dependence): Constify char * arrays. | |
3498 | * profile.c (output_func_start_profiler): Constify a char *. | |
3499 | * stor-layout.c (finalize_record_size): Constify a char *. | |
3500 | * tree.c (is_attribute_p): Constify a char *. | |
3501 | * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument. | |
3502 | ||
3503 | * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code | |
3504 | for comprehensibility. Do not call get_identifier if we did | |
3505 | not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to | |
3506 | create temporary string constants, not ggc_alloc_string. No | |
3507 | need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const | |
3508 | char * to hold IDENTIFIER_POINTERs. | |
3509 | ||
cee58bc0 RH |
3510 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
3511 | ||
3512 | * config/ia64/ia64.md (muldi3): Use grfr_register_operand | |
3513 | for the inputs. | |
3514 | ||
94aaab7a RH |
3515 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
3516 | ||
3517 | * reload.c (push_secondary_reload): Allow class == reload_class | |
3518 | if we're using a reload_in/out pattern. | |
3519 | ||
60a3c181 RH |
3520 | * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use |
3521 | the half that does not conflict with the reload register. | |
3522 | (reload_outti): Likewise. | |
3523 | ||
9218435e KH |
3524 | 2000-08-29 Kazu Hirata <kazu@hxi.com> |
3525 | ||
4381f7c2 KH |
3526 | * reload.c: Fix formatting. |
3527 | ||
3528 | * stmt.c: Fix formatting. | |
3529 | ||
9218435e KH |
3530 | * gcc.c: Fix formatting. |
3531 | ||
fba0bfd4 ZW |
3532 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
3533 | ||
3534 | * flags.h (time_report, mem_report): New global flags. | |
3535 | * toplev.c: Define time_report and mem_report. | |
3536 | (f_options): Add -ftime-report and -fmem-report. | |
3537 | (compile_file): Turn on time_report if quiet_flag is off. | |
3538 | Call ggc_print_statistics at very end if mem_report is on. | |
3539 | * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag. | |
3540 | ||
3541 | * ggc-common.c (ggc_print_statistics): Rename to | |
3542 | ggc_print_common_statistics; all callers changed. Scale | |
3543 | quantities above 10K to kilobytes and above 10M to megabytes. | |
3544 | * ggc-page.c (ggc_page_print_statistics): Rename to | |
3545 | ggc_print_statistics. Report memory consumed by internal data | |
3546 | structures for each allocation bucket. Scale quantities above | |
3547 | 10K to kilobytes and above 10M to megabytes. | |
3548 | * ggc-simple.c: Prototype debug_ggc_tree to avoid warning. | |
3549 | Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning. | |
3550 | Define tally_leaves always. | |
3551 | (ggc_print_statistics): New function. | |
3552 | * ggc.h: Adjust for renamed functions. | |
3553 | ||
612105a6 DC |
3554 | Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru> |
3555 | ||
3556 | * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to | |
3557 | output_movsisf instead of which_alternative. | |
3558 | ||
3559 | * config/avr/avr.c (output_reload_inhi): Check for NULL ponter. | |
3560 | ||
6bec29c9 DC |
3561 | Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
3562 | ||
3563 | * config/avr/avr-protos.h: (avr_output_ascii) Removed. | |
3564 | (avr_progmem_p): New prototype. | |
3565 | (output_movsisf): Prototype declaration changed. | |
3566 | (output_movqi): New prototype. | |
3567 | (output_movhi): New prototype. | |
3568 | (call_insn_operand): Likewise. | |
0e5921e8 | 3569 | (final_prescan_insn): Likewise. |
6bec29c9 DC |
3570 | (avr_simplify_comparision_p): Likewise. |
3571 | (avr_normalize_condition): Likewise. | |
3572 | (compare_eq_p): Likewise. | |
3573 | (out_shift_with_cnt): Likewise. | |
3574 | (const_int_pow2_p): Likewise. | |
3575 | (output_reload_inhi): Prototype declaration changed. | |
3576 | ||
3577 | * config/avr/avr.c: (debug_hard_reg_set): Prototype declared. | |
3578 | (ldi_reg_rtx): New. rtx for r31. | |
3579 | (avr_init_stack): Initialize as "__stack". | |
3580 | (function_prologue): Use it. | |
3581 | Replace all TARGET_ENHANCED with AVR_ENHANCED. | |
3582 | (avr_mcu_name): Initialize as "avr2". | |
3583 | (avr_enhanced_p, avr_mega_p): New variables. | |
3584 | (mcu_types, avr_override_options): Handle all known MCU types. | |
3585 | Also handle avr1 (only preprocess, assemble and link). | |
3586 | (print_operand): Using of `%K' in output template removed. | |
3587 | (out_movqi_r_mr): Optimized. | |
3588 | (out_movhi_r_mr): Likewise. | |
3589 | (output_movqi): New function. | |
3590 | (output_movhi): Likewise. | |
3591 | (out_movsi_r_mr): Optimized. | |
3592 | (output_movsisf): Compute insn length for `adjust_insn_length' | |
3593 | (out_movqi_mr_r): Optimized. | |
3594 | (out_movhi_mr_r): Optimized. | |
3595 | (adjust_insn_length): Use output_movsisf, output_movqi, | |
3596 | output_movhi for insn length adjusting. | |
3597 | (reg_unused_after): Use dead_or_set_p. | |
3598 | (preferred_reload_class): Now havn't any restriction. | |
3599 | (reg_was_0): New function. | |
3600 | (io_address_p): Likewise. | |
3601 | (const_int_pow2_p): Likewise. | |
3602 | (output_reload_inhi): Likewise. | |
3603 | (output_reload_insisf): Likewise. | |
3604 | ||
3605 | * config/avr/avr.h (MULTILIB_DEFAULTS): Define. | |
3606 | (LIB_SPEC): Use -lc for all supported devices. | |
3607 | (LIBGCC_SPEC): Use -lgcc for all supported devices. | |
3608 | (AVR_MEGA): Define as avr_mega_p. | |
3609 | (AVR_ENHANCED): New, define as avr_enhanced_p. | |
3610 | (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=... | |
3611 | (CPP_SPEC, LINK_SPEC): Handle all known MCU types. | |
3612 | (CRT_BINUTILS_SPECS): Handle all known MCU types. | |
3613 | Rename gcrt1-*.o to make file names unique on 8.3 filesystems. | |
3614 | (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC. | |
3615 | (ASM_SPEC): Pass -mmcu=... to the assembler. | |
3616 | Change all -DAVR_* to -D__AVR_*__. | |
3617 | (INIT_TARGET_OPTABS), config/avr/libgcc.S: | |
3618 | Rename library functions to start with two underscores. | |
3619 | (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid | |
3620 | alignment. | |
3621 | (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)). | |
3622 | (SUPPORTS_WEAK): Likewise. | |
3623 | (LDI_REG_REGNO): New. Register r31 will be used as temporary | |
3624 | register for loading constants to r0-r14. | |
3625 | ||
3626 | * config/avr/avr.md: Replace all TARGET_ENHANCED with | |
3627 | AVR_ENHANCED. | |
3628 | (*mov_r_sp): Removed. Handled by output_movhi. | |
3629 | (*mov_sp_r): Likewise. | |
3630 | (*mov_sp_r_no_interrupts): Likewise | |
3631 | (*mov_sp_r_tiny): Likewise. | |
3632 | (*movqi): Use output_movqi. | |
3633 | (*reload_inqi): New. | |
3634 | (*movhi): Use output_movhi. | |
3635 | (*reload_inhi): New. | |
3636 | (*negsi2): Optimized. | |
3637 | (*negsf2): Likewise. | |
3638 | Added peepholes (define_peephole2) for loading constants to r0-r14 | |
3639 | and for using `cpse' command. | |
3640 | ||
3641 | * config/avr/libgcc.S: Rename library functions to start with two | |
3642 | underscores. | |
3643 | Add support for enhanced core. | |
3644 | (_moqhi3): Fix typo, now _modqi3. | |
3645 | (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word. | |
3646 | (__prologue_saves__): Remove test for stack adjust by 0. | |
3647 | (__tablejump__): New. | |
3648 | ||
3649 | * config/avr/t-avr: Build libgcc2 with -mcall-prologues. | |
3650 | Add multilib support. | |
3651 | ||
20bd7bfa JW |
3652 | Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com) |
3653 | ||
3654 | * loop.c (prescan_loop): Don't check unknown_address_altered | |
3655 | when deciding if insert_loop_mem is safe. Add BLKmode MEMs | |
3656 | to loop_store_mems as necessary. | |
3657 | (loop_invariant_p): Don't check unknown_address_altered | |
3658 | or unknown_constant_address_altered. | |
3659 | ||
76f941a8 DA |
3660 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3661 | ||
3662 | * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns. | |
3663 | ||
2c8f0515 ZW |
3664 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
3665 | ||
3666 | * cpperror.c (print_file_and_line): If line is (unsigned int)-1, | |
3667 | print just the filename. | |
3668 | * cpplex.c (_cpp_run_directive): Add additional argument, the | |
3669 | name to give the synthetic buffer. This defaults to | |
3670 | translated "<command line>". | |
3671 | * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert): | |
3672 | Adjust to match. | |
3673 | (_cpp_define_builtin): New function. | |
3674 | * cppinit.c (initialize_builtins): Use _cpp_define_builtin. | |
3675 | * cpphash.h: Update prototypes. | |
3676 | ||
3677 | * tradcpp.c (main): Process -D and -U simultaneously, in the | |
3678 | order they appeared on the command line. | |
3679 | ||
6ad79f1b KG |
3680 | 2000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3681 | ||
3682 | * c-decl.c (define_label): Call warning_with_file_and_line and | |
3683 | error_with_file_and_line instead of plain warning or error. | |
3684 | ||
3685 | * c-parse.in (label): Use save_filename/save_lineno to ensure | |
3686 | correct values for calls to define_label. | |
3687 | ||
4361b41d MM |
3688 | 2000-08-29 Mark Mitchell <mark@codesourcery.com> |
3689 | ||
3690 | * calls.c (expand_call): Don't create a VAR_DECL just to throw it | |
3691 | away. | |
3692 | * expr.c (expand_expr, case TARGET_EXPR): Don't call | |
3693 | mark_addressable. | |
3694 | * tree.h (get_file_function_name): Remove two duplicate | |
3695 | declarations. | |
3696 | ||
abf9af02 KH |
3697 | 2000-08-28 Kazu Hirata <kazu@hxi.com> |
3698 | ||
dc478a5d KH |
3699 | * tree.c: Fix formatting. |
3700 | ||
abf9af02 KH |
3701 | * xcoffout.c: Fix formatting. |
3702 | ||
5f632b5e JM |
3703 | 2000-08-28 Jason Merrill <jason@redhat.com> |
3704 | ||
3705 | * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer. | |
3706 | ||
3707 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> | |
3708 | ||
3709 | * dwarf2out.c (dwarf2out_finish): Don't bother calling | |
3710 | break_out_includes if it won't do anything. | |
3711 | ||
38323cc3 RH |
3712 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
3713 | ||
3714 | * reload.c (push_secondary_reload): Revert 2000-08-16 change. | |
3715 | (find_reloads): Likewise. | |
3716 | * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change. | |
3717 | (reload_inhi): Likewise. | |
3718 | ||
e1ff012c RH |
3719 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
3720 | ||
3721 | * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined. | |
3722 | (call_insn_operand): Don't expect a surrounding mem. | |
3723 | (constant_call_address_operand): Likewise. | |
3724 | * config/i386/i386.h (PREDICATE_CODES): Update. | |
3725 | * config/i386/i386.md (call patterns): Move the match_operand | |
3726 | for the call destination inside the mem. | |
3727 | ||
c2cba7a9 RH |
3728 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
3729 | ||
3730 | * local-alloc.c (requires_inout): Don't use reserved range for | |
3731 | EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER. | |
3732 | * recog.c (asm_operand_ok): Likewise. | |
3733 | (preprocess_constraints, constrain_operands): Likewise. | |
3734 | * regclass.c (record_reg_classes): Likewise. | |
3735 | * reload.c (find_reloads): Likewise. | |
3736 | * reload1.c (maybe_fix_stack_asms): Likewise. | |
3737 | (reload_cse_simplify_operands): Likewise. | |
3738 | * stmt.c (expand_asm_operands): Likewise. | |
3739 | ||
3740 | * md.texi: Update constraints documentation. | |
3741 | * tm.texi (EXTRA_CONSTRAINT): Update. | |
3742 | ||
5f632b5e JM |
3743 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> |
3744 | ||
3745 | * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__". | |
3746 | (print_die): If we don't know the offset of the | |
3747 | target die, try the symbol. Add a trailing newline. | |
3748 | (reverse_all_dies): New fn. | |
3749 | (dwarf2out_finish): Call it. | |
3750 | (break_out_includes): Reorganize for clarity. | |
3751 | (add_sibling_attributes): Don't call reverse_die_lists. | |
3752 | (output_comp_unit): Rename from output_comdat_comp_unit. Use for | |
3753 | primary CU, too. | |
3754 | * flags.h: Add flag_eliminate_dwarf2_dups. | |
3755 | * toplev.c (f_options): Support -feliminate-dwarf2-dups. | |
3756 | ||
5de0e8d4 JM |
3757 | 2000-08-28 Jason Merrill <jason@redhat.com> |
3758 | ||
5f632b5e JM |
3759 | * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags. |
3760 | * dwarf2out.c: #include "md5.h". | |
3761 | (DIE_LABEL_PREFIX): New macro. | |
3762 | (dw_val_struct): Add 'external' flag to val_die_ref. | |
3763 | (add_AT_die_ref, AT_ref): Adjust. | |
3764 | (AT_ref_external, set_AT_ref_external): New fns. | |
3765 | (build_abbrev_table): Call set_AT_ref_external. | |
3766 | (value_format): Call AT_ref_external. | |
3767 | (die_struct): Add die_symbol field. | |
3768 | (new_die): Clear it. | |
3769 | (dwarf_tag_name): Handle BINCL/EINCL. | |
3770 | (dwarf2out_start_source_file): Add BINCL DIE. | |
3771 | (dwarf2out_end_source_file): Add EINCL DIE. | |
3772 | (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns. | |
3773 | (loc_checksum, attr_checksum, die_checksum): New fns. | |
3774 | (is_type_die, is_comdat_die, is_symbol_die): New fns. | |
3775 | (compute_section_prefix, assign_symbol_names): New fns. | |
3776 | (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns. | |
3777 | (output_die): Call output_die_symbol and AT_ref_external. | |
3778 | (output_comdat_comp_unit): New fn, split out from... | |
0e5921e8 | 3779 | (dwarf2out_finish): ...here. Also call add_sibling_attributes for |
5f632b5e JM |
3780 | secondary CUs. |
3781 | (output_pubnames, output_aranges): Abort if we see entries from | |
3782 | secondary CUs. | |
3783 | * toplev.h: Declare file_name_nondirectory. | |
3784 | * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend. | |
3785 | (rest_of_type_compilation): Call dwarf2out_decl if at toplevel. | |
3786 | (debug_start_source_file): Call dwarf2out_start_source_file | |
3787 | regardless of debug verbosity. | |
3788 | (debug_end_source_file): Similarly. | |
3789 | * tree.h: Declare clean_symbol_name. | |
3790 | * tree.c (clean_symbol_name): Split out from... | |
3791 | (get_file_function_name_long): ...here. | |
3792 | ||
5de0e8d4 JM |
3793 | * dwarf2out.c (new_loc_descr): Use calloc. |
3794 | (splice_child_die): Remove the die from the right parent. | |
3795 | (gen_struct_or_union_die): Don't add AT_name to a specification DIE. | |
3796 | ||
04324727 RK |
3797 | Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3798 | ||
3799 | * toplev.c (decode_g_option): Don't give warning for unknown -g | |
3800 | option; return 0 instead. | |
3801 | (main): If -g option is not recognized by front end or | |
3802 | language-independent code, give warning. | |
3803 | ||
9e3e266c GM |
3804 | 2000-08-28 Greg McGary <greg@mcgary.org> |
3805 | ||
3806 | * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl. | |
3807 | * config/i386/i386.c (ix86_expand_compare): Remove `static'. | |
3808 | * config/i386/i386.md (trap, conditional_trap): New insn & expand. | |
3809 | ||
a0bff95f GM |
3810 | 2000-08-27 Greg McGary <greg@mcgary.org> |
3811 | ||
3812 | * cpplex.c (parse_string): Don't look for backslash | |
3813 | before first char in `namebuf'. | |
3814 | * loop.c (strength_reduce): Skip NOTEs. | |
3815 | ||
edb4c415 JM |
3816 | 2000-08-27 Jason Merrill <jason@redhat.com> |
3817 | ||
3818 | * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear | |
3819 | DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or | |
3820 | TREE_ASM_WRITTEN, either. | |
3821 | (finish_decl): Adjust. | |
3822 | ||
6e88e75c PT |
3823 | 2000-08-28 Philipp Thomas <pthomas@suse.de> |
3824 | ||
3825 | * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as | |
3826 | they have been incorporated into the gettext CVS. Change the text to | |
3827 | reflect the current status of NLS. Add instructions for accessing | |
3828 | the gettext CVS and add the patch from Martin v. Loewis. | |
3829 | ||
e53ca51f GK |
3830 | 2000-08-27 Geoff Keating <geoffk@cygnus.com> |
3831 | ||
3832 | * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe | |
3833 | by using gen_lowpart_common. | |
3834 | (movdi_internal64+6): Likewise. | |
3835 | ||
a0a6fdc8 AO |
3836 | 2000-08-26 Alexandre Oliva <aoliva@redhat.com> |
3837 | ||
1b2dd04a AO |
3838 | * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): |
3839 | Document. | |
3840 | ||
a0a6fdc8 AO |
3841 | * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register |
3842 | numbers to the ranges used by GDB. | |
3843 | ||
26a110f5 RH |
3844 | 2000-08-25 Richard Henderson <rth@cygnus.com> |
3845 | ||
3846 | * config/ia64/ia64.h (struct machine_function): Add n_varargs. | |
3847 | * config/ia64/ia64.c (ia64_compute_frame_size): Use it. | |
3848 | (ia64_expand_prologue): Likewise. | |
3849 | (ia64_setup_incoming_varargs): Set it. Properly skip the current | |
3850 | argument for stdargs. | |
3851 | ||
ecff20d4 JM |
3852 | 2000-08-25 Jason Merrill <jason@redhat.com> |
3853 | ||
3854 | * integrate.c (expand_inline_function): Pull out the original decl. | |
3855 | ||
caa511fd JW |
3856 | 2000-08-25 Jim Wilson <wilson@cygnus.com> |
3857 | ||
d51ff7cb JW |
3858 | * cse.c (cse_insn): Don't pass label subtraction to force_const_mem. |
3859 | ||
caa511fd JW |
3860 | * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl. |
3861 | ||
9a56f4f6 GM |
3862 | 2000-08-25 Greg McGary <greg@mcgary.org> |
3863 | ||
3864 | * flow.c (dump_edge_info): Use ARRAY_SIZE. | |
3865 | * config/alpha/alpha.c (alpha_expand_block_move): Likewise. | |
3866 | ||
31448271 RE |
3867 | 2000-08-25 Richard Earnshaw <rearnsha@arm.com> |
3868 | ||
3869 | * arm.h (STRUCT_VALUE): Define to 0, not NULL. | |
3870 | ||
b949ea8b JW |
3871 | Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com) |
3872 | ||
3873 | * i386.c (ix86_find_base_term): New. | |
3874 | * i386-protos.h (ix86_find_base_term): Prototype. | |
3875 | * i386.h (FIND_BASE_TERM): Define. | |
3876 | * alias.c (find_base_term): Use it. | |
3877 | * tm.texi (FIND_BASE_TERM): Document it. | |
3878 | ||
3879 | * alias.c (true_dependence, write_dependence_p): Unchanging | |
3880 | memory can't conflict with non-unchanging memory. | |
3881 | ||
3882 | * alias.c (memrefs_conflict_p): A BLKmode reference | |
3883 | to a symbol (or CONST_INT address) always conflicts | |
3884 | with a reference to another symbol. | |
3885 | ||
343b7260 JM |
3886 | 2000-08-25 Joseph S. Myers <jsm28@cam.ac.uk> |
3887 | ||
3888 | * c-common.c (time_char_table): Don't allow width and flags with | |
3889 | "z" format. | |
3890 | ||
1f9124e4 JJ |
3891 | 2000-08-25 Jakub Jelinek <jakub@redhat.com> |
3892 | ||
3893 | * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same | |
3894 | way as LT and LTU when the second operand has 0 in low word. | |
3895 | ||
6057c0e6 MH |
3896 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
3897 | ||
135ebc36 MH |
3898 | * basic-block.h (struct loop): Rename `exits' field to |
3899 | `exit_edges'. Add `entry_edges' and `num_entries' fields. | |
3900 | ||
3901 | * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find. | |
3902 | (flow_loop_entry_edges_find): Add. | |
3903 | (flow_edge_list_print): Rename from flow_exits_print. | |
3904 | (flow_loops_find): Call flow_loop_entry_edges_find. | |
3905 | (flow_loop_dump): Dump entry_edges list. | |
3906 | (flow_loops_free): Free entry_edges. | |
0e5921e8 | 3907 | |
135ebc36 | 3908 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 3909 | |
6057c0e6 MH |
3910 | * loop.c (loop_dump_aux, debug_loop): New functions. |
3911 | (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros. | |
3912 | ||
3913 | * flow.c (flow_loops_dump): Add callback parameter. | |
3914 | (flow_loop_dump): Add callback parameter and call it. Move | |
3915 | loop note debugging code to loop_dump_aux. | |
3916 | ||
3917 | * basic-block.h (flow_loop_dump): Add callback parameter | |
3918 | (flow_loops_dump): Likewise. | |
3919 | ||
3920 | * toplev.c (rest_of_compilation): Add NULL callback function pointer | |
3921 | to call to flow_loops_dump. | |
0e5921e8 | 3922 | |
028fc6e7 MH |
3923 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
3924 | ||
3925 | * loop.c (count_loop_regs_set): Replace start and end arguments | |
3926 | with loop argument. All callers udated. | |
0e5921e8 | 3927 | |
371502a8 | 3928 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 3929 | |
371502a8 MH |
3930 | * loop.c (constant_high_bytes): Delete. |
3931 | ||
e375c819 MH |
3932 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
3933 | ||
3934 | * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT | |
3935 | and NOTE_INSN_LOOP_VTOP to... | |
3936 | (find_and_verify_loops) ...here. | |
3937 | ||
036cfb36 AO |
3938 | Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com> |
3939 | ||
3940 | * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default. | |
3941 | (fini_dummy, init_dummy): Use it. | |
3942 | ||
c2e20542 NB |
3943 | Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net> |
3944 | ||
3945 | * cpplex.c (is_macro_disabled): Caller has already checked | |
3946 | that we're not a preprocessed file. | |
3947 | ||
83bab8db MM |
3948 | 2000-08-24 Mark Mitchell <mark@codesourcery.com> |
3949 | ||
3950 | * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o. | |
3951 | (c-iterate.o): Remove target. | |
3952 | * gcc/c-common.h (enum rid): Remove RID_ITERATOR. | |
3953 | * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators. | |
3954 | (finish_decl): Don't handle iterators. | |
3955 | (grokdeclarator): Likewise. | |
3956 | * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords. | |
3957 | * gcc/c-gperf.h: Regenerated. | |
3958 | * gcc/c-iterate.c: Removed. | |
3959 | * gcc/c-lex.c (init_lex): Don't handle iterators. | |
3960 | * gcc/c-parse.in (primary): Remove pop_iterator_stack call. | |
3961 | (compstmt_primary_start): Remove push_iterator_stack call. | |
3962 | (stmt): Don't allow iterator statements. Replace iterator_expand | |
3963 | with expand_expr_stmt. | |
3964 | (all_iter_stmt): Remove. | |
3965 | (all_iter_stmt_simple): Likewise. | |
3966 | (all_iter_stmt_with_decl): Likewise. | |
3967 | * gcc/c-tree.h (ITERATOR_P): Remove. | |
3968 | (ITERATOR_BOUND_P): Likewise. | |
3969 | (init_iterators): Remove declaration. | |
3970 | (iterator_expand): Likewise. | |
3971 | (iterator_for_loop_start): Likewise. | |
3972 | (iterator_for_loop_end): Likewise. | |
3973 | (iterator_for_loop_record): Likewise. | |
3974 | (push_iterator_stack): Likewise. | |
3975 | (pop_iterator_stack): Likewise. | |
3976 | * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P. | |
3977 | (readonly_warning): Likewise. | |
3978 | * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it. | |
0e5921e8 | 3979 | |
aee3c6b0 JW |
3980 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
3981 | ||
3982 | * c-common.c (decl_attributes, case A_ALIGN): Revert last change. | |
3983 | Copy type in a TYPE_DECL, just like pushdecl does. | |
3984 | ||
58d8c980 RH |
3985 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
3986 | ||
3987 | * toplev.c (main): Enable flag_reorder_blocks at -O2. | |
3988 | ||
054f5e69 ZW |
3989 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> |
3990 | ||
0e5921e8 | 3991 | * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're |
054f5e69 ZW |
3992 | asked for one page, allocate GGC_QUIRE_SIZE of them and put |
3993 | the extras on the free list. | |
3994 | (release_pages): Clean up. | |
3995 | (ggc_set_mark): Don't adjust G.allocated here... | |
3996 | (sweep_pages): ... do it here. | |
3997 | ||
3998 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> | |
3999 | ||
4000 | * cppfiles.c (read_include_file): Rearrange initializations. | |
4001 | ||
0551c32d RH |
4002 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
4003 | ||
4004 | * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X. | |
4005 | ||
4006 | * config/ia64/ia64-protos.h: Update. | |
4007 | * config/ia64/ia64.c (gr_register_operand): New. | |
4008 | (fr_register_operand, grfr_register_operand): New. | |
4009 | (gr_nonimmediate_operand, grfr_nonimmediate_operand): New. | |
4010 | (grfr_reg_or_8bit_operand): New. | |
0e5921e8 | 4011 | (gr_reg_or_0_operand): Rename from reg_or_0_operand and |
0551c32d RH |
4012 | use gr_register_operand. |
4013 | (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise. | |
4014 | (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise. | |
4015 | (gr_reg_or_8bit_and_adjusted_operand): Likewise. | |
4016 | (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise. | |
4017 | (fr_reg_or_fp01_operand): Likewise. | |
4018 | (not_postinc_memory_operand): New. | |
4019 | (ia64_split_timode): Remove unused variables. | |
4020 | (rtx_needs_barrier): Check arguments to cmpxchg. | |
4021 | (builtin_description): Remove. | |
4022 | (bdesc_2argsi, bdesc_2argdi): Remove. | |
4023 | (ia64_init_builtins): Declare all builtins directly. | |
4024 | (ia64_expand_fetch_and_op): Rewrite to be called from | |
4025 | ia64_expand_builtin directly. Use expand_binop and co. | |
4026 | (ia64_expand_op_and_fetch): Likewise. | |
4027 | (ia64_expand_compare_and_swap): Likewise. | |
4028 | (ia64_expand_binop_builtin): Remove. | |
4029 | (ia64_expand_lock_test_and_set): New. | |
4030 | (ia64_expand_lock_release): New. | |
4031 | (ia64_expand_builtin): Use them. | |
4032 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New. | |
4033 | (EXTRA_CONSTRAINT): Use it. | |
4034 | (PREDICATE_CODES): Update. | |
4035 | * config/ia64/ia64.md (*): Use gr_register_operand and co. | |
4036 | (mf): Indicate that we set memory as well as use it. | |
4037 | (fetchadd_acq_si): Show memory being modified as well. | |
0e5921e8 | 4038 | (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise. |
0551c32d RH |
4039 | (val_compare_and_swap_si, val_compare_and_swap_di): Remove. |
4040 | (lock_test_and_set_si, lock_test_and_set_di): Remove. | |
4041 | (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove. | |
4042 | (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove. | |
4043 | (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove. | |
4044 | (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove. | |
4045 | (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove. | |
4046 | (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove. | |
4047 | (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove. | |
4048 | (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove. | |
4049 | * config/ia64/ia64intrin.h (*): Cast result to the appropriate | |
4050 | return type. Pretty print definitions. | |
4051 | ||
7c866fb5 JW |
4052 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
4053 | ||
4054 | * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if | |
4055 | we have a SYMBOL_REF with SYMBOL_REF_FLAG set. | |
4056 | ||
40e8cc95 JM |
4057 | 2000-08-24 Jason Merrill <jason@redhat.com> |
4058 | ||
4059 | * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, | |
4060 | AT_loc, AT_addr, AT_lbl): Abort on unsuitable input. | |
0e5921e8 | 4061 | (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag, |
40e8cc95 JM |
4062 | get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails. |
4063 | ||
b6a1cbae GM |
4064 | 2000-08-24 Greg McGary <greg@mcgary.org> |
4065 | ||
4066 | * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab, | |
4067 | and extendtab within their proper array boundaries. | |
4068 | * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds | |
4069 | for the entire array. | |
4070 | ||
4071 | * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE. | |
4072 | * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise. | |
4073 | * config/avr/avr.c (order_regs_for_local_alloc): Likewise. | |
4074 | * config/fr30/fr30.c (fr30_print_operand): Likewise. | |
4075 | * config/i386/dgux.c (output_options): Likewise. | |
4076 | * config/i386/dgux.h (ASM_FILE_START): Likewise. | |
4077 | * config/m88k/m88k.c (output_options): Likewise. | |
4078 | * config/m88k/m88k.h (ASM_FILE_START): Likewise. | |
4079 | * config/mcore/mcore.c (mcore_output_inline_const_forced, | |
4080 | layout_mcore_frame, handle_structs_in_regs): Likewise. | |
4081 | * config/mips/mips.c (output_block_move): Likewise. | |
4082 | * config/rs6000/rs6000.c (rs6000_override_options, | |
4083 | rs6000_file_start): Likewise. | |
4084 | * config/sparc/sparc.c (sparc_add_gc_roots): Likewise. | |
4085 | * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise. | |
4086 | * fixinc/fixtests.c (TEST_TABLE_CT): Likewise. | |
4087 | * builtins.c (expand_builtin_setjmp): Likewise. | |
4088 | * expr.c (safe_from_p): Likewise. | |
4089 | * flow.c (life_analysis): Likewise. | |
4090 | * fold-const.c (size_int_type_wide): Likewise. | |
4091 | * gcc.c (translate_options, init_spec, set_spec, main): Likewise. | |
4092 | * genattrtab.c (make_length_attrs): Likewise. | |
4093 | * genopinit.c (gen_insn): Likewise. | |
4094 | * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise. | |
4095 | * global.c (global_alloc): Likewise. | |
4096 | * local-alloc.c (find_free_reg): Likewise. | |
4097 | * mips-tdump.c (print_symbol): Likewise. | |
4098 | * mips-tfile.c (parse_def, parse_input): Likewise. | |
4099 | * reload1.c (NUM_ELIMINABLE_REGS): Likewise. | |
4100 | * stmt.c (expand_nl_goto_receiver): Likewise. | |
4101 | * stor-layout.c (set_sizetype): Likewise. | |
4102 | * varasm.c (decode_reg_name): Likewise. | |
4103 | * toplev.c (decode_f_option, decode_W_option, | |
4104 | set_target_switch, print_switch_values): Likewise. | |
4105 | (NUM_ELEM): Remove macro. | |
4106 | (display_help, main): s/NUM_ELEM/ARRAY_SIZE/ | |
4107 | ||
5b47282c GM |
4108 | 2000-08-24 Greg McGary <greg@mcgary.org> |
4109 | ||
4110 | * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'. | |
4111 | (MAIN_NAME_P, main_identifier_node): New macros. | |
4112 | * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node. | |
4113 | * c-decl.c (start_decl, grokdeclarator, start_function, | |
4114 | store_parm_decls, finish_function): Use MAIN_NAME_P. | |
4115 | * config/avr/avr.c (function_prologue, function_epilogue): Likewise. | |
4116 | * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise. | |
4117 | * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise. | |
4118 | * config/pdp11/pdp11.c (output_function_prologue): Likewise. | |
4119 | ||
87ae0c74 GM |
4120 | 2000-08-24 Greg McGary <greg@mcgary.org> |
4121 | ||
4122 | * cppfiles.c (actual_directory): Don't write beyond `dir' | |
4123 | when it contains "". | |
4124 | * real.c (asctoeg): Stay within bounds of etens[][]. | |
4125 | ||
b148aeaa KG |
4126 | 2000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4127 | ||
4128 | * dependence.c (dependence_string, direction_string, | |
4129 | dump_one_node, dump_node_dependence): Hide unused identifiers. | |
4130 | (get_low_bound, normalize_coefficients): Match definition to | |
4131 | static prototype. | |
4132 | (get_one_coefficient): Initialize variables `value0_is_idx' and | |
4133 | `value1_is_idx'. | |
4134 | (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED. | |
4135 | (ziv_test): Delete variable `idx', use parameter `sub' instead. | |
4136 | (direction_merge): Avoid automatic aggregate initialization. | |
4137 | (have_dependence_p): Use `src' not `dest' to set `src_idx'. | |
4138 | Initialize variables `dest_idx' and `src_idx'. | |
4139 | (end_dependence_analysis): Avoid C89 style function definition. | |
4140 | ||
4894ecce JM |
4141 | 2000-08-24 Joseph S. Myers <jsm28@cam.ac.uk> |
4142 | ||
4143 | * c-common.c (time_char_table): Don't allow width with %F. | |
4144 | (check_format_info): Don't allow "Z" length with scanf. | |
4145 | ||
2ab99c46 GDR |
4146 | 2000-08-24 Gabriel Dos Reis <gdr@codesourcery.com> |
4147 | ||
4148 | * diagnostic.c (finish_diagnostic): Define. | |
4149 | (output_do_printf): Use wrap_text instead of output_add_string. | |
4150 | (default_print_error_function): Avoid embedded '\n'. | |
4151 | ||
4152 | * diagnostic.h (flush_diagnostic_buffer): Declare. | |
4153 | ||
335e59bd AO |
4154 | 2000-08-23 Alexandre Oliva <aoliva@redhat.com> |
4155 | ||
4156 | * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'. | |
4157 | ||
d9fe00bb HPN |
4158 | 2000-08-23 Hans-Peter Nilsson <hp@axis.com> |
4159 | ||
4160 | * Makefile.in (GCC_PASSES): Add specs. | |
4161 | ||
b97644fc JW |
4162 | 2000-08-23 Jim Wilson <wilson@cygnus.com> |
4163 | ||
4164 | * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New. | |
4165 | * config/ia64/frame-ia64.c (__get_personality): Return zero if neither | |
4166 | EHANDLER nor UHANDLER bit is set. | |
4167 | (__get_except_table): Likewise. | |
4168 | ||
64a7723d NC |
4169 | 2000-08-23 Nick Clifton <nickc@redhat.com> |
4170 | ||
02689e18 NC |
4171 | * config/arm/lib1funcs.asm: Replace upper case condition codes |
4172 | with lower case versions. | |
4173 | ||
64a7723d NC |
4174 | * config/arm/arm.h (STRUCT_VALUE): Define. |
4175 | (STRUCT_VALUE_REGNUM): Delete. | |
4176 | ||
bbdac7d0 ZW |
4177 | 2000-08-23 Zack Weinberg <zack@wolery.cumb.org> |
4178 | ||
4179 | * cpphash.h (IN_I): New flag for directive table. | |
4180 | * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and | |
4181 | #pragma with IN_I. | |
4182 | (_cpp_check_directive): If -fpreprocessed, execute directives | |
4183 | marked with IN_I. Issue no warnings in this case. | |
4184 | * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed. | |
4185 | ||
d8eceea4 JM |
4186 | 2000-08-23 Joseph S. Myers <jsm28@cam.ac.uk> |
4187 | ||
4188 | * c-common.c (print_char_table): Allow 'I' flag with %d, %i and | |
4189 | %u. | |
4190 | (check_format_info): Support printf 'I' flag; warn about it with | |
4191 | -pedantic. | |
4192 | ||
e04c2d6c RE |
4193 | 2000-08-23 Richard Earnshaw (rearnsha@arm.com) |
4194 | ||
4195 | * arm.c (arm_expand_prologue): Ensure that the stack-adjustment | |
4196 | barrier can't be ignored by the alias analysis code. | |
4197 | ||
f4306baa EZ |
4198 | 2000-08-12 Eli Zaretskii <eliz@is.elta.co.il> |
4199 | ||
4200 | * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it | |
4201 | works inside fixincl. | |
4202 | ||
95d0e5f1 AO |
4203 | Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com> |
4204 | ||
4205 | * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to | |
4206 | simplify_relational_operation() unless both operands are of | |
4207 | VOIDmode. | |
4208 | * cse.c (fold_rtx): Likewise. | |
4209 | ||
55efb413 JW |
4210 | Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com) |
4211 | ||
4212 | * rtlanal.c (rtx_unstable_p): The pic register is stable | |
4213 | (within one function) and the actual rtx should be used | |
4214 | when checking the registers. | |
4215 | (rtx_addr_can_trap_p): Pic memory addresses can't trap. | |
4216 | ||
4217 | * alias.c (true_dependence, write_dependence_p): Fix | |
4218 | bug in previous patch. | |
4219 | ||
4220 | * i386.c (ix86_GOT_alias_set): New. | |
4221 | (legitimize_pic_address): Use it. | |
4222 | ||
4223 | * rtlanal.c (rtx_unstable_p): An unchanging MEM is | |
4224 | only stable if its address is stable. | |
4225 | (rtx_varies_p): An unchanging MEM can't vary if | |
4226 | its address doesn't vary. | |
4227 | ||
aac625ac KG |
4228 | 2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4229 | ||
4230 | * c-parse.in (unop +): Restrict -Wtraditional warnings to user code. | |
4231 | ||
62432849 DA |
4232 | 2000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
4233 | ||
4234 | * vax.h (ASM_SPEC): Pass `-J' to assembler. | |
4235 | * x-vax-gcc: New file for bootstrapping with gcc. | |
dd745546 | 4236 | * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'. |
62432849 DA |
4237 | * configure.in: Use x-vax-gcc with gcc. |
4238 | * configure: Rebuilt. | |
4239 | ||
1eb994b7 R |
4240 | Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
4241 | ||
4242 | * toplev.c (rest_of_compilation): Rebuild label notes after | |
4243 | post-reload splitting pass if new labels have been created. | |
4244 | ||
f6a542de GDR |
4245 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
4246 | ||
4247 | * diagnostic.h (output_buffer_state): New macro. | |
4248 | * diagnostic.c (diagnostic_for_decl, sorry, | |
4249 | default_print_error_function, output_do_verbatim, | |
4250 | report_diagnostic, report_problematic_module): Use it. | |
4251 | (wrap_text): Tweak. | |
4252 | (output_format): Use wrap_text instead of maybe_wrap_text. | |
4253 | ||
888e552f NC |
4254 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
4255 | ||
4256 | * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro. | |
4257 | Common code for ARM divide and modulus functions. | |
4258 | (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of | |
4259 | ARM_DIV_MOD_BODY. | |
4260 | (FUNC_END): New macro: Common code at the end of the division and | |
4261 | modulo functions. | |
4262 | (THUMB_FUNCTION_START): New macro: Common code at the start of | |
4263 | Thumb functions. | |
4264 | (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros. | |
0e5921e8 | 4265 | |
89e43e33 KK |
4266 | Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
4267 | ||
4268 | * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing. | |
4269 | ||
4270 | * config/sh/sh.c (prepare_scc_operands): Apply force_reg to | |
4271 | sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't | |
4272 | const0_rtx. | |
4273 | ||
7405dc37 NC |
4274 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
4275 | ||
4276 | * config/arm/lib1funcs.asm (__umodsi3): Before performing any | |
4277 | restorative additions, test for bottom bits of IP being set, | |
4278 | rather than relying upon the RORs not matching. | |
4279 | (__modsi3): Ditto. | |
4280 | ||
9861b0c9 DE |
4281 | 2000-08-22 David Edelsohn <edelsohn@gnu.org> |
4282 | ||
4283 | * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or | |
60a3c181 | 4284 | text_section() as appropriate instead of emitting text csect |
9861b0c9 DE |
4285 | pseudo-op directly. |
4286 | (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment. | |
4287 | (UNIQUE_SECTION): Define macro. | |
4288 | (ASM_OUTPUT_SECTION_NAME): Define macro. | |
4289 | * rs6000.c (rs6000_override_options): Disable -ffunction-sections | |
60a3c181 | 4290 | on AIX if debugging and -fdata-sections always. |
9861b0c9 DE |
4291 | |
4292 | 2000-08-22 Steven King <sxking@uswest.net> | |
df3a88f0 SK |
4293 | |
4294 | * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double | |
4295 | machinery. | |
4296 | (LDBL_MAX): Same here. | |
4297 | ||
b578dbd7 RH |
4298 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
4299 | ||
4300 | * flow.c (tidy_fallthru_edge): Update b->end properly. | |
4301 | ||
d061bc1e SC |
4302 | 2000-08-22 Stan Cox <scox@redhat.com> |
4303 | ||
60a3c181 RH |
4304 | * Makefile.in (OBJS): Add dependence.o. |
4305 | * dependence.c: New file. | |
0e5921e8 | 4306 | |
23d16877 | 4307 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca> |
3cadd778 | 4308 | |
d60eab50 AO |
4309 | * calls.c (check_sibcall_argument_overlap_1): Adjust for |
4310 | ARGS_GROW_DOWNWARD. | |
4311 | (check_sibcall_argument_overlap): Likewise. | |
4312 | ||
23d16877 AO |
4313 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com> |
4314 | ||
3cadd778 AO |
4315 | * invoke.texi (SH Options): Document -m4-nofpu, |
4316 | -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd, | |
4317 | -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace. | |
4318 | ||
23e4d028 JM |
4319 | 2000-08-22 Joseph S. Myers <jsm28@cam.ac.uk> |
4320 | ||
4321 | * c-common.c (check_format_info): Give the 'some locales' warning | |
4322 | for strftime %Ey rather than the unconditional 'only last 2 digits | |
4323 | of year' one. | |
4324 | ||
bc82c87c RH |
4325 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
4326 | ||
4327 | * alias.c (init_alias_analysis): Do not register | |
4328 | struct_value_incoming_rtx or static_chain_rtx as pointing | |
4329 | to stack memory. | |
4330 | ||
7db9125f JL |
4331 | Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com) |
4332 | ||
4333 | * protoize.c (munge_compile_params): Fix typo and formatting buglets. | |
4334 | ||
b413d64d GDR |
4335 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
4336 | ||
4337 | * diagnostic.h (report_problematic_module): Declare. | |
4338 | * diagnostic.c (report_problematic_module): New function. | |
4339 | (report_error_function): Tweak. | |
4340 | ||
c4a6c0f3 RK |
4341 | Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4342 | ||
4343 | * stmt.c (expand_goto_internal, fixup_gotos): Only check | |
4344 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
4345 | ||
770a7feb RH |
4346 | 2000-08-21 Richard Henderson <rth@cygnus.com> |
4347 | ||
4348 | * flow.c (calculate_global_regs_live): Mark frame pointer live | |
4349 | everywhere before reload. | |
4350 | ||
280db205 JW |
4351 | 2000-08-21 Jim Wilson <wilson@cygnus.com> |
4352 | ||
4353 | * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle | |
4354 | INTEL_EXTENDED_IEEE_FORMAT. | |
4355 | (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally | |
4356 | clear last two bytes of output FP value. | |
4357 | ||
94c21c17 GS |
4358 | 2000-08-21 Graham Stott <grahams@cygnus.co.uk> |
4359 | ||
4360 | * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL. | |
4361 | ||
6315f068 JJ |
4362 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
4363 | ||
4364 | * unroll.c (loop_find_equiv_value): If ret is modified between | |
4365 | insn and loop_start, ret might not be equivalent to reg. | |
4366 | ||
5804a754 JM |
4367 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
4368 | ||
4369 | * c-common.c (init_dollar_format_checking, | |
4370 | maybe_read_dollar_number, finish_dollar_format_checking): New | |
4371 | functions. | |
4372 | (dollar_arguments_used, dollar_arguments_count, | |
4373 | dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned): | |
4374 | New variables. | |
4375 | (check_format_info): Support $ formats for scanf and printf width | |
4376 | and precision. Always increment format_chars to advance past the | |
4377 | '*' of precision, not just when the format parameters are | |
4378 | available to check. | |
4379 | ||
95adab8e KG |
4380 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4381 | ||
4382 | * mips.c (block_move_loop, expand_block_move, | |
4383 | function_arg_partial_nregs, save_restore_insns, function_prologue, | |
4384 | mips_expand_prologue, RA_MASK): Avoid using the `U' integer | |
4385 | constant suffix. | |
4386 | (function_arg_advance, function_arg): Match argument to format | |
4387 | specifier `%p'. | |
4388 | ||
49009afd JL |
4389 | 2000-08-21 Nix <nix@esperi.demon.co.uk> |
4390 | ||
4391 | * gcc.c (do_spec_1): Implement %j spec flag. | |
4392 | Remove dead comment. | |
4393 | ||
4394 | * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET. | |
60a3c181 RH |
4395 | * system.h (HOST_BIT_BUCKET): Default to "/dev/null". |
4396 | * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL". | |
4397 | * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise. | |
49009afd | 4398 | |
60a3c181 | 4399 | * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if |
49009afd JL |
4400 | writable) instead of hardcoded value. |
4401 | ||
4402 | * toplev.c (compile_file): Output to a file even if -fsyntax-only. | |
4403 | ||
60a3c181 RH |
4404 | * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill |
4405 | MKTEMP_EACH_FILE. | |
49009afd | 4406 | |
60a3c181 | 4407 | * gcc.c (cc1_options): Do not process -o or run the assembler if |
49009afd | 4408 | -fsyntax-only. |
05a3d06e | 4409 | * objc/lang-spec.h: Likewise. |
49009afd JL |
4410 | |
4411 | 2000-08-21 Eli Zaretskii <eliz@is.elta.co.il> | |
dc13bad7 EZ |
4412 | |
4413 | * fixinc/fixincl.c (fix_with_system): Pipe the output of | |
4414 | "external" fixes through `cat', to avoid truncating the input | |
4415 | file by redirection. | |
4416 | ||
cb694d2c JJ |
4417 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
4418 | ||
4419 | * config/i386/i386.md (lea_general_1): Copy insn condition to split | |
4420 | condition. | |
4421 | (lea_general_2, lea_general_3): Likewise. | |
4422 | ||
cde6e684 KG |
4423 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4424 | ||
4425 | * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional | |
4426 | warnings to user code. | |
4427 | ||
4428 | * c-lex.c (readescape, yylex): Likewise. | |
4429 | ||
4430 | * c-typeck.c (store_init_value, process_init_element): Likewise | |
4431 | (c_expand_start_case): Format. | |
4432 | ||
120dc6cd MR |
4433 | 2000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
4434 | ||
4435 | * mips/linux.h (LINK_SPEC): Use %(endian_spec). | |
4436 | ||
4437 | * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC | |
0e5921e8 | 4438 | and linker_endian_spec to endian_spec. |
120dc6cd MR |
4439 | (ENDIAN_SPEC): Add %{EB} and %{EL}. |
4440 | (LINK_SPEC): Remove %{EB} and %{EL}. | |
0e5921e8 | 4441 | (ASM_SPEC): Likewise. Use %(endian_spec). |
120dc6cd | 4442 | |
93e2382f JM |
4443 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
4444 | ||
4445 | * c-tree.h (flag_hosted): Move declaration from here... | |
4446 | * c-common.h (flag_hosted): ... to here. | |
4447 | (flag_noniso_default_format_attributes): New declaration. | |
4448 | * c-decl.c (flag_noniso_default_format_attributes): New variable. | |
4449 | (c_decode_option): Set it appropriately for options choosing | |
4450 | language standard variant. | |
4451 | * c-common.c (init_function_format_info): Only provide default | |
4452 | format attributes if flag_hosted. Only provide the gettext | |
4453 | formats if flag_noniso_default_format_attributes. Update | |
4454 | comments. | |
4455 | (check_format_info): Disable treatment of %a as a scanf flag in | |
4456 | C99 mode. | |
4457 | ||
f3d360aa JM |
4458 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
4459 | ||
4460 | * c-common.c (scan_char_table): Add 'w' to flags for all formats | |
4461 | except 'n'. | |
4462 | (check_format_info): Set 'wide' for scanf format widths. Warn for | |
4463 | a zero scanf width. Make the check for writing into a constant | |
4464 | object at the first level of indirection; at later levels, warn if | |
4465 | any type qualifiers are encountered. | |
4466 | ||
e04ca094 JL |
4467 | Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com) |
4468 | ||
e6ea3b5f JL |
4469 | * reload.c (reload_inner_reg_of_subreg): New function broken out of |
4470 | push_reload. | |
4471 | (push_reload): Use reload_inner_reg_of_subreg. | |
4472 | (combine_reloads): Do not combine reloads if the input reload | |
4473 | is a SUBREG in which the inner part will need reloading. | |
4474 | ||
e04ca094 JL |
4475 | * global.c (global_alloc): Avoid passing dumpfile argument to |
4476 | reload routines. | |
4477 | * toplev.c (rest_of_compilation): Likewise. | |
4478 | * reload.h (reload): Remove dumpfile argument. Callers changed. | |
4479 | (debug_reload, debug_reload_to_stream): Move prototypes here. | |
4480 | * rtl.h (reload): Remove dumpfile argument. | |
4481 | * reload.c (debug_reload): Remove prototype. | |
4482 | (debug_reload_to_stream): Likewise. | |
4483 | * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file | |
4484 | instead. | |
4485 | ||
24805e80 GDR |
4486 | 2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com> |
4487 | ||
4488 | * diagnostic.c (context_as_prefix): Export. | |
4489 | (need_error_newline): Remove. | |
4490 | (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects. | |
4491 | (error_module_changed, record_last_error_module, | |
4492 | error_function_changed, record_last_error_function): New functions. | |
4493 | (initialize_diagnostics): Default intialize | |
4494 | lang_diagnostic_starter, lang_diagnostic_finalizer. | |
4495 | (init_output_buffer): Tweak. | |
4496 | (file_name_as_prefix): New function. | |
4497 | (announce_function, default_print_error_function, | |
4498 | report_error_function, set_diagnostic_context): Tweak. | |
4499 | ||
056b6841 RE |
4500 | 2000-08-21 Richard Earnshaw <rearnsha@arm.com> |
4501 | ||
4502 | * flow.c (init_propagate_block_info): Handle SUBREG in a jump | |
4503 | condition expression. | |
4504 | ||
7171b491 RH |
4505 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
4506 | ||
4507 | * flow.c (merge_blocks_nomove): Don't seek back past the bb note. | |
4508 | ||
3cb553b4 ZW |
4509 | 2000-08-20 Zack Weinberg <zack@wolery.cumb.org> |
4510 | ||
4511 | * cppinit.c (cpp_init): Set global flag when called. | |
4512 | (cpp_reader_init): Bomb out if cpp_init hasn't been called. | |
4513 | ||
9861b0c9 | 4514 | Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su> |
3cb553b4 | 4515 | |
60a3c181 RH |
4516 | * cpplex.c (cpp_scan_buffer): Move `output_line_command' just |
4517 | before `process_directive' so that newlines won't be missed | |
4518 | for directives. | |
4519 | (cpp_printf): Increment `print->lineno' when newline is emitted. | |
3cb553b4 | 4520 | |
60a3c181 RH |
4521 | * cppmain.c (cb_ident): Likewise. |
4522 | (cb_define): Likewise. | |
4523 | (cb_undef): Likewise. | |
4524 | (cb_include): Likewise. | |
4525 | (cb_def_pragma): Likewise. | |
4526 | (dump_macros_helper): Likewise. | |
3cb553b4 | 4527 | |
9c668921 RH |
4528 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
4529 | ||
4530 | * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc | |
4531 | assigned before a loop. | |
4532 | ||
4533 | * config/ia64/ia64.md (ashlsi3): Zero extend the shift count. | |
4534 | (ashrsi3, lshrsi3): Likewise. | |
4535 | ||
4e1e6a01 GDR |
4536 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
4537 | ||
4538 | * c-lang.c: #include diagnostic.h | |
4539 | (c_tree_printer): New function. | |
4540 | (lang_init): Initialize lang_printer. | |
4541 | ||
4542 | * Makefile.in (c-lang.o): Depends on diagnostic.h | |
4543 | ||
e2840263 GDR |
4544 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
4545 | ||
4546 | * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. | |
4547 | ||
4548 | * diagnostic.c (default_diagnostic_starter, | |
4549 | default_diagnostic_finalizer): New functions. | |
4550 | (diagnostic_for_asm, diagnostic_for_decl): Tweak. | |
4551 | (pedwarn, pedwarn_with_file_and_line, error, | |
4552 | error_with_file_and_line, fatal, warning, | |
4553 | warning_with_file_and_line): Adjust call to report_diagnostic. | |
4554 | (report_diagnostic): Rework. | |
4555 | (set_diagnostic_context): New function. | |
4556 | ||
4557 | * diagnostic.h (struct diagnostic_context): New data structure. | |
4558 | (diagnostic_message, diagnostic_argument_list, | |
4559 | diagnostic_file_location, diagnostic_line_location, | |
4560 | diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer, | |
4561 | diagnostic_finalizer, diagnostic_auxiliary_data): New macros. | |
4562 | (set_diagnostic_context): Declare. | |
4563 | (report_diagnostic): Change prototype. | |
4564 | ||
574f7425 NB |
4565 | Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net> |
4566 | ||
4567 | * fix-header.c (main): Initialize cpplib. | |
4568 | ||
f1e42c81 MM |
4569 | 2000-08-19 Michael Meissner <meissner@redhat.com> |
4570 | ||
34c9e848 MM |
4571 | * ifcvt.c (find_if_block): Do not assume that a THEN block has any |
4572 | instructions in it before checking for indirect jumps. | |
4573 | ||
f1e42c81 MM |
4574 | * ifcvt.c (find_if_block): Do not consider a THEN block that ends |
4575 | in a indirect jump as a potential for conditional execution. | |
4576 | ||
4577 | * d30v.h (d30v_init_expanders): Don't declare here. | |
4578 | * d30v-protos.h (d30v_init_expanders): Declare here with a valid | |
4579 | prototype. | |
4580 | ||
9d6c2770 NB |
4581 | Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net> |
4582 | ||
4583 | * cpp.texi: Add @section for assertions. | |
4584 | ||
e76d9acb JW |
4585 | Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com) |
4586 | ||
4587 | * loop.c (scan_loop): Use CONST_CALL_P instead of | |
4588 | checking for REG_LIBCALL / REG_RETVAL. | |
4589 | ||
f49957d6 JL |
4590 | Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com) |
4591 | ||
850aac53 JL |
4592 | * reload1.c (reload_as_needed): Accept dumpfile argument, |
4593 | pass it to emit_reload_insns. | |
4594 | (emit_reload_insns): Add new dumpfile argument. If non-null | |
4595 | then dump the reloads for each insn into the dumpfile. | |
4596 | (reload): Pass dumpfile to reload_as_needed. | |
4597 | ||
f49957d6 JL |
4598 | * invoke.texi: Clean up linux-gnu vs linux comments. |
4599 | ||
041f25e6 RH |
4600 | 2000-08-19 Richard Henderson <rth@cygnus.com> |
4601 | ||
4602 | * config/ia64/ia64.c (reg_or_5bit_operand): New. | |
4603 | (ia64_depz_field_mask): New. | |
4604 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New. | |
4605 | (PREDICATE_CODES): Update. | |
4606 | * config/ia64/ia64.md: Update commentary. | |
4607 | (depz_internal): New. | |
4608 | (ashlsi3): Implement directly. | |
4609 | (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants. | |
4610 | (ashldi3): Use shladd. | |
4611 | * config/ia64/ia64-protos.h: Update. | |
4612 | ||
319ea138 ZW |
4613 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
4614 | ||
4615 | * toplev.c (independent_decode_option): Always process -g. | |
4616 | Remove third argument, now unused. Adjust caller to match. | |
4617 | ||
8231ad94 RH |
4618 | 2000-08-18 Richard Henderson <rth@cygnus.com> |
4619 | ||
4620 | * combine.c (make_compound_operation): Break after creating | |
4621 | the extraction. | |
4622 | ||
6e19bb38 ZW |
4623 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
4624 | ||
4625 | * cpplib.c (cpp_register_pragma_space): Just return if the | |
4626 | namespace is already registered. | |
4627 | ||
477d303f RE |
4628 | 2000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com> |
4629 | ||
4630 | * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a | |
4631 | constant amount. Do not generate ROTL instruction. | |
4632 | ||
ffe51c8a AO |
4633 | Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com> |
4634 | ||
4635 | * config/sh/elf.h: Do not include sh/sh.h. | |
4636 | * config/sh/rtems.h: Likewise. | |
4637 | * config/sh/rtemself.h: Do not include sh/elf.h. | |
4638 | * configure.in: Get them included with `tm_file's. | |
4639 | * configure: Rebuilt. | |
4640 | ||
8845e874 AO |
4641 | * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify. |
4642 | * config/sh/sh.c (fpscr_set_from_mem): Use them. | |
4643 | ||
3f546a53 RK |
4644 | Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4645 | ||
7d2950e5 RK |
4646 | * stor-layout.c (compute_record_type): Don't use mode of single |
4647 | field as mode of record if not integer mode of same type. | |
4648 | ||
a1c1fdd0 RK |
4649 | * regmove.c (perhaps_ends_bb_p): New function. |
4650 | (optimize_reg_copy_1, optimize_reg_copy_2): Call it. | |
4651 | (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise. | |
4652 | (fixup_match_1): Likewise. | |
4653 | (fixup_match_1, combine_stack_adjustments_for_block): Add casts to | |
4654 | avoid signed/unsigned warnings. | |
0e5921e8 | 4655 | |
3f546a53 RK |
4656 | * function.c (fixup_var_refs_1, case MEM): Update CODE after |
4657 | updating X. | |
4658 | ||
61d0346d NB |
4659 | Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net> |
4660 | ||
4661 | * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS. | |
4662 | (_cpp_trigraph_map): Declaration moved from cpplex.c | |
4663 | ||
4664 | * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1 | |
4665 | instead of 256. Use consistent test for designated initializers. | |
4666 | (cpp_init): Initialize trigraph_map. | |
4667 | (initialize_standard_includes, parse_option): Use memcmp | |
4668 | instead of strncmp. | |
4669 | ||
4670 | * cpplex.c (init_trigraph_map): Remove. | |
4671 | (trigraph_ok, trigraph_replace, lex_line): Refer to | |
4672 | _cpp_trigraph_map. | |
4673 | ||
4674 | * cpplib.c (str_match, WARNING, ERROR, ICE): Delete. | |
4675 | (do_unassert): Remove unused "next" local. | |
4676 | ||
4677 | * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype. | |
4678 | ||
ef42b1dd EM |
4679 | 2000-08-18 Emmanuel Marty <emarty@suntech.fr> |
4680 | ||
4681 | * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return | |
4682 | insn. | |
4683 | ||
bc08aefe RH |
4684 | 2000-08-17 Richard Henderson <rth@cygnus.com> |
4685 | ||
4686 | * config/ia64/ia64.c (spill_restore_mem): Handle emitting | |
4687 | the first insn in a sequence. | |
4688 | ||
49982682 JW |
4689 | Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com) |
4690 | ||
4691 | * alias.c (true_dependence, write_dependence_p): A read | |
4692 | involving a label_ref or the constant pool doesn't create | |
4693 | a dependency. | |
4694 | ||
4695 | * rtl.h (unchanging): Improve documentation. | |
4696 | ||
889e5964 RB |
4697 | 2000-08-17 Rodney Brown <RodneyBrown@mynd.com> |
4698 | ||
4699 | * cse.c (insert_regs): Remove unused `regno'. | |
4700 | ||
dd69c71b NB |
4701 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
4702 | ||
4703 | * (cppinit.c) merge_include_chains: Use remove_dup_dir, | |
4704 | remove_dup_dirs. If qtail == brack, remove brack not | |
4705 | qtail. | |
4706 | (remove_dup_dir, remove_dup_dirs): New functions. | |
4707 | ||
709e9e50 NB |
4708 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
4709 | ||
4710 | * cppinit.c (cpp_cleanup): Free include dir chains. | |
4711 | * cpplib.c (do_undef): Let _cpp_free_definition make the node void. | |
4712 | (do_unassert): Free the assert with _cpp_free_definition. | |
4713 | * cppmacro.c (_cpp_free_definition): Free memory allocated for | |
4714 | assertions. Make the node a T_VOID node. | |
4715 | ||
e33f6253 NB |
4716 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
4717 | ||
4718 | * cppinit.c (path_include, append_include_chain): | |
4719 | Remove 2nd parameter (struct cpp_pending *). | |
4720 | (path_include, initialize_standard_includes, cpp_handle_option): | |
4721 | Update callers appropriately. | |
4722 | (cpp_handle_option): Use pend. | |
4723 | ||
c154ba66 NB |
4724 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
4725 | ||
4726 | * cppinit.c (sort_options): Remove, put functionality in | |
4727 | cpp_init. | |
4728 | (cpp_init): New. | |
4729 | (initialize_builtins): Free memory. | |
4730 | (cpp_start_read): Move init_IStable to cpp_init. | |
4731 | ||
4732 | * cpplib.h (cpp_init): New prototype. | |
4733 | * cppmain.c (main): Call cpp_init. | |
4734 | ||
9c82ac6b JW |
4735 | Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com) |
4736 | ||
4737 | * rtlanal.c (rtx_unstable_p): Use CONSTANT_P. | |
4738 | (rtx_unstable_p, rtx_varies_p): Process vectors. | |
4739 | ||
acd50a92 NY |
4740 | 2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> |
4741 | ||
4742 | * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all | |
4743 | references to GLOBAL symbols. Use LOCAL where appropriate. | |
4744 | ||
cfedbb1f KG |
4745 | 2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4746 | ||
4747 | * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always | |
4748 | use t-aix41 when host == target. | |
4749 | ||
31989264 RH |
4750 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
4751 | ||
4752 | * reload.c (push_secondary_reload): Revert last change. | |
4753 | If we use a reload_in/out pattern, make the when the same | |
4754 | as the primary reload. | |
4755 | (find_reloads): Likewise. | |
4756 | ||
d84c5634 MH |
4757 | 2000-08-16 Manfred Hollstein <manfredh@redhat.com> |
4758 | ||
4759 | * configure.in (libstdcxx-v3): Fix test. | |
4760 | * configure: Regenerate. | |
4761 | ||
43db0363 RK |
4762 | Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4763 | ||
4764 | * calls.c (calls_function_1, expand_call): Only test | |
4765 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
4766 | * function.c (thread_prologue_and_epilogue_insns): Likewise. | |
4767 | ||
853d8828 RH |
4768 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
4769 | ||
4770 | * combine.c (simplify_shift_const): Revert previous two | |
4771 | changes. If SHIFT_COUNT_TRUNCATED, crop the shift count | |
4772 | before the main loop. | |
4773 | ||
3e626beb RH |
4774 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
4775 | ||
4776 | * combine.c (simplify_shift_const): Bound shift count when | |
4777 | combining shifts. | |
4778 | ||
f507188a RK |
4779 | Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4780 | ||
7393c642 RK |
4781 | * calls.c (ECF_SP_DEPRESSED): New macro. |
4782 | (calls_function_1): Treat calling sp-depressed function as alloca. | |
4783 | (emit_call_1): Don't adjust SP if calling sp-depressed function. | |
4784 | (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED. | |
4785 | If sp-depressed, ensure block saves and restores SP. | |
4786 | * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE | |
4787 | for INTEGER_TYPE. | |
4788 | * function.c (keep_stack_depressed): New function. | |
4789 | (thread_prologue_and_epilogue_insns): Call it. | |
4790 | * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED | |
4791 | to print DECL_OFFSET_ALIGN. | |
4792 | Print no-force-blk and transparent-union flags properly. | |
4793 | * stmt.c (expand_goto_internal): Don't restore stack if last block | |
4794 | and function returns with sp depressed. | |
4795 | (fixup_gotos): Likewise. | |
4796 | (save_stack_pointer): New function, from code in expand_decl. | |
4797 | (expand_decl): Call new function. | |
4798 | * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK. | |
4799 | (TYPE_RETURNS_STACK_DEPRESSED): New macro. | |
4800 | (save_stack_pointer): New declaration. | |
4801 | ||
f507188a RK |
4802 | * diagnostic.c (fatal_function): New variable. |
4803 | (set_fatal_function): New function. | |
4804 | (fatal): Call it. | |
4805 | * diagnostic.h (set_fatal_function): New declaration. | |
4806 | ||
56847207 WC |
4807 | 2000-08-15 William Cohen <wcohen@redhat.com> |
4808 | ||
4809 | * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined. | |
4810 | (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info. | |
4811 | (DWARF2_ASM_LINE_DEBUG_INFO): Defined. | |
4812 | ||
7791b7f9 RH |
4813 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
4814 | ||
4815 | * flow.c (mark_used_reg): Set reg_cond_reg appropriately. | |
4816 | ||
f99fce0c RE |
4817 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
4818 | ||
4819 | * arm.c (arm_function_ok_for_sibcall): New function. | |
4820 | * arm.h (FUNCTION_OK_FOR_SIBCALL): Define. | |
4821 | * arm.md (call expanders): Don't check here for calls that can't | |
4822 | be sibling calls. | |
4823 | ||
74da3101 RE |
4824 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
4825 | ||
4826 | * arm.md (splits generating cond_exec): Disable. | |
4827 | ||
2c210617 RE |
4828 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
4829 | ||
4830 | * arm/linux-elf.h (text_section): Delete declaration. | |
4831 | ||
05ed98a1 RE |
4832 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
4833 | ||
4834 | ARM support for unordered FP operations. | |
4835 | * arm-protos.h (arm_comparison_operator): Declare. | |
4836 | * arm.c (arm_comparison_operator): New function. | |
4837 | (arm_select_cc_mode): Add unordered comparison codes. | |
4838 | (get_arm_condition_code): Likewise. | |
4839 | (arm_final_prescan_insn): Can't handle unordered jumps that can't | |
4840 | be done in one insn. | |
4841 | * arm.h (PREDICATE_CODES): Add arm_comparison_operator. | |
4842 | * arm.md (all uses of comparison_operator): Replace with | |
4843 | arm_comparison_operator. | |
4844 | (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New | |
4845 | expands. | |
4846 | (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New | |
4847 | patterns. | |
0e5921e8 | 4848 | |
ed78c862 OP |
4849 | Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com> |
4850 | ||
4851 | * gthr-posix.h: Conditionally include <sched.h>; include | |
4852 | <config.h> from libobjc/. | |
4853 | ||
4859dd36 RH |
4854 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
4855 | ||
4856 | * config/i386/i386.c (legitimize_pic_address): Use Pmode | |
4857 | for all CONSTs. | |
4858 | ||
3f622353 RH |
4859 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
4860 | ||
4861 | * configure.in (ia64-*): Set float_format for i386 long double. | |
4862 | ||
4863 | * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT | |
4864 | as we would for i386 XFmode. | |
4865 | (PUT_REAL): Likewise. | |
4866 | (endian, ereal_atof, real_value_truncate): Likewise. | |
4867 | (ereal_isneg, toe64, etens, make_nan): Likewise. | |
4868 | * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise. | |
4869 | ||
4870 | * config/ia64/ia64-protos.h: Update. | |
4871 | * config/ia64/ia64.c (general_tfmode_operand): New. | |
4872 | (destination_tfmode_operand): New. | |
4873 | (tfreg_or_fp01_operand): New. | |
4874 | (ia64_split_timode): New. | |
4875 | (spill_tfmode_operand): New. | |
4876 | (ia64_expand_prologue): Use TFmode not XFmode. | |
4877 | (ia64_expand_epilogue): Likewise. | |
4878 | (ia64_function_arg): Likewise. | |
4879 | (ia64_function_arg_advance): Likewise. | |
4880 | (ia64_return_in_memory): Likewise. | |
4881 | (ia64_function_value): Likewise. | |
4882 | (ia64_print_operand): Likewise. | |
4883 | (ia64_register_move_cost): Set GR<->FR to 5. | |
4884 | (ia64_secondary_reload_class): Get GR for TImode memory op. | |
4885 | * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove. | |
4886 | (ROUND_TYPE_ALIGN): Remove. | |
4887 | (LONG_DOUBLE_TYPE_SIZE): Set to 128. | |
4888 | (INTEL_EXTENDED_IEEE_FORMAT): Define. | |
4889 | (HARD_REGNO_NREGS): Use TFmode, not XFmode. | |
4890 | (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs. | |
4891 | (MODES_TIEABLE_P): Use TFmode, not XFmode. | |
4892 | (CLASS_MAX_NREGS): Likewise. | |
4893 | (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks. | |
4894 | (PREDICATE_CODES): Update. | |
4895 | * config/ia64/ia64.md (movti): New. | |
4896 | (movti_internal): Use a clobber for memory alternatives. | |
4897 | (reload_inti, reload_outti): New. | |
4898 | (movsfcc_astep): Predicate properly. | |
4899 | (movdfcc_astep): Likewise. | |
4900 | (movxf): Remove. | |
4901 | (movtf): New. | |
4902 | (extendsftf2, extenddftf2): New. | |
4903 | (trunctfsf2, trunctfdf2): New. | |
4904 | (floatditf2, fix_trunctfdi2): New. | |
4905 | (floatunsditf2, fixuns_trunctfdi2): New. | |
4906 | (addtf3, subtf3, multf3, abstf2): New. | |
4907 | (negtf2, nabstf2, mintf3, maxtf3): New. | |
4908 | (maddtf3, msubtf3, nmultf3, nmaddtf3): New. | |
4909 | (cmptf): New. | |
4910 | (fr_spill): Use TFmode, not XFmode. | |
4911 | (fr_restore): Likewise. | |
4912 | * config/ia64/lib1funcs.asm (__divtf3): New. | |
4913 | * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it. | |
4914 | ||
e49a1d2e KG |
4915 | 2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4916 | ||
4917 | * cse.c (fold_rtx): Avoid empty body in an if-statement. | |
0e5921e8 | 4918 | |
e49a1d2e KG |
4919 | * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the |
4920 | `U' integer constant suffix. | |
4921 | ||
4922 | * dwarf2out.c (add_subscript_info): Avoid empty body in an | |
4923 | else-statement. | |
4924 | ||
4925 | * sparc/sol2.h (__enable_execute_stack): Prototype. | |
4926 | ||
78fbdbf7 DE |
4927 | 2000-08-14 David Edelsohn <edelsohn@gnu.org> |
4928 | ||
4929 | * collect2.c: Remove use of AIX import file. | |
4930 | ||
4931 | * longlong.h: Test ARCH_PWR not ARCH_POWER. | |
4932 | ||
4933 | * rs6000.c (print_operand, case 'E'): Add else. | |
4934 | ||
9a89adb8 RH |
4935 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
4936 | ||
4937 | * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address. | |
4938 | (movdi_symbolic): New. | |
4939 | ||
00e149c7 JW |
4940 | 2000-08-14 Jim Wilson <wilson@cygnus.com> |
4941 | ||
4942 | * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
4943 | to GNU as. For Intel as, pass -M const_gp and -M no_plabel. | |
4944 | * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
4945 | to GNU as. | |
4946 | ||
2ee5437b RH |
4947 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
4948 | ||
4949 | * expr.c (emit_group_load): Don't force constants into registers. | |
4950 | Special case source already in the correct mode. | |
4951 | ||
57119aa9 ZW |
4952 | 2000-08-14 Zack Weinberg <zack@wolery.cumb.org> |
4953 | ||
4954 | * configure.in: Accept *-*-linux* not just *-*-linux-gnu*. | |
4955 | * fixinc/inclhack.def: Likewise. | |
0e5921e8 | 4956 | * fixinc/mkfixinc.sh: Likewise. |
57119aa9 ZW |
4957 | * configure: Regenerate. |
4958 | * fixinc/fixincl.x: Regenerate. | |
4959 | * install.texi: Document equivalence of linux and linux-gnu. | |
4960 | ||
d9f20424 R |
4961 | Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
4962 | ||
4963 | * cse.c (insert_regs): Also in REG case: When finding an invalid | |
4964 | value, and we make a new quantity, make sure that it won't be | |
4965 | mistaken by for a valid one by mention_regs. | |
4966 | ||
c8fa6556 RG |
4967 |