]>
Commit | Line | Data |
---|---|---|
c3410241 BS |
1 | 2000-11-24 Bernd Schmidt <bernds@redhat.co.uk> |
2 | ||
90d10fb9 BS |
3 | * config/i386/i386.md (call_pop_0, call_pop_1, call_value_pop_0, |
4 | call_value_pop_1): Make sure operand numbers are contiguous. | |
5 | ||
7cf5c9e1 BS |
6 | * fold-const.c (fold_range_test): Avoid crash if LHS or RHS is null. |
7 | ||
ff6534ad BS |
8 | * reload1.c (conflicts_with_override): New function. |
9 | (emit_input_reload_insns): Use it to tighten test for validity | |
10 | of substituting into output of previous insn. | |
11 | ||
176f9a7b BS |
12 | * haifa-sched.c (struct ready_list): New. |
13 | (ready_lastpos, ready_add, ready_remove_first, ready_sort): New static | |
14 | functions. | |
15 | (schedule_insn): Replace args READY and N_READY with a pointer to a | |
16 | ready_list; return void. Use the new functions to access the ready | |
17 | list. All callers changed. | |
18 | (queue_to_ready, debug_ready_list): Likewise. | |
19 | (schedule_block): Initialize a ready_list structure. Use new | |
20 | functions to access it. | |
21 | (max_priority): Remove unused variable. | |
22 | (schedule_insn): Don't set it. | |
23 | ||
52a84e42 BS |
24 | * c-common.c (verify_tree): Don't recurse into CONSTRUCTORs. |
25 | ||
c3410241 BS |
26 | * combine.c (cant_combine_insn_p): New function. |
27 | (try_combine): Use it. | |
28 | ||
235cfbc4 BS |
29 | * Makefile.in (c-common.o): Depend on $(OBSTACK_H). |
30 | * c-common.c (c-obstack.c): Include "obstack.h". | |
31 | (struct reverse_tree): Delete. | |
32 | (reverse_list, reverse_max_depth): Delete. | |
33 | (build_reverse_tree, common_ancestor, modify_ok): Delete functions. | |
34 | (struct tlist, struct tlist_cache): New. | |
35 | (tlist_obstack, tlist_firstobj, warned_ids, save_expr_cache): New. | |
36 | (add_tlist, merge_tlist, verify_tree, warning_candidate_p, | |
37 | warn_for_collisions, warn_for_collisions_1, new_tlist): New | |
38 | static functions. | |
39 | (verify_sequence_points): Rewritten. | |
40 | * fold-const.c (fold): Don't lose possibly important sequence | |
41 | points when removing one arm of TRUTH_ORIF_EXPRs or TRUTH_ANDIF_EXPRs. | |
42 | ||
58ecb5e2 RS |
43 | 2000-11-24 Richard Sandiford <rsandifo@redhat.com> |
44 | ||
45 | * gcc/cse.c (cse_insn): Removed conversion of REG_EQUIV to REG_EQUAL | |
46 | when reversing a register-to-register copy. Reversal now disabled | |
47 | when the previous instruction has a REG_EQUIV. | |
48 | ||
2f401cc8 NS |
49 | 2000-11-24 Nathan Sidwell <nathan@codesourcery.com> |
50 | ||
51 | * c-parse.in (unary_expr): Move VA_ARG from here ... | |
52 | (primary): ... to here. | |
53 | ||
963a2a84 GS |
54 | 2000-11-23 Graham Stott <grahams@redhat.com> |
55 | ||
56 | * expr.c (store_constructor): If a field is non addressable and | |
57 | the target is a MEM use MEM_ALIAS_SET otherwise use get_alias_set. | |
58 | ||
f9b697bf BS |
59 | 2000-11-23 Bernd Schmidt <bernds@redhat.co.uk> |
60 | ||
61 | * flow.c (print_rtl_and_abort): New function. | |
62 | (verify_wide_reg, verify_local_live_at_start): Try to dump more | |
63 | information before aborting. | |
64 | ||
69295d6d AO |
65 | 2000-11-23 Alexandre Oliva <aoliva@redhat.com> |
66 | ||
67 | * emit-rtl.c (gen_lowpart_common): Use word 0 if register mode | |
68 | is narrower than requested mode. | |
69 | (gen_highpart): Abort if register mode is narrower than | |
70 | requested mode. | |
71 | ||
99a9c946 GS |
72 | 2000-11-23 Graham Stott <grahams@redhat.com> |
73 | ||
74 | * cse.c (cse_insn): Initialise all regcost variables. | |
75 | Fix a typo add missing '='. | |
76 | Only compare costs if there is a replacement insn. | |
77 | ||
422be3c3 AO |
78 | Thu Nov 23 04:33:33 2000 Alexandre Oliva <aoliva@redhat.com> |
79 | ||
80 | * final.c (output_addr_const) [LABEL_REF]: Simplify. | |
81 | [MINUS]: Enclose non-CONST_INTs in parentheses. | |
82 | [default]: Try OUTPUT_ADDR_CONST_EXTRA. | |
83 | * tm.texi (OUTPUT_ADDR_CONST_EXTRA): Document it. | |
84 | * varasm.c (decode_rtx_const) [CONST]: If it's not something | |
85 | PLUS or MINUS a CONST_INT, use the whole CONST with offset 0 | |
86 | instead of abort()ing. | |
87 | * sh.c (output_pic_addr_const): Removed. Fixed all callers. | |
88 | * sh.h (OUTPUT_ADDR_CONST_EXTRA): New. Handle the UNSPECs | |
89 | formerly handled in output_pic_addr_const. | |
90 | * sh.md (sym_label2reg, symPLT_label2reg): Enclose UNSPEC | |
91 | operands of MINUS in CONSTs so that decode_rtx_const() will | |
92 | accept them. | |
93 | ||
43c05634 AO |
94 | Thu Nov 23 04:10:30 2000 Alexandre Oliva <aoliva@redhat.com> |
95 | ||
96 | * config/sh/sh.md (mova_const): New pattern. | |
97 | (GOTaddr2picreg): Use it. | |
98 | * config/sh/sh.c (broken_move): Match it. | |
99 | (mova_p): Don't match it. | |
100 | (machine_dependent_reorg): Adjust it. | |
101 | ||
4773afa4 AO |
102 | Thu Nov 23 02:09:09 2000 Alexandre Oliva <aoliva@redhat.com> |
103 | ||
104 | * config/sh/sh.h (FIRST_GENERAL_REG, LAST_GENERAL_REG): New. | |
105 | Moved most register-number #defines... | |
106 | * config/sh/sh.md (define_constants): ... here. Use macros to | |
107 | refer to registers and unspecs. | |
108 | * config/sh/sh.c: Likewise. | |
109 | ||
9196ece5 R |
110 | Thu Nov 23 01:01:32 2000 J"orn Rennecke <amylaar@redhat.com> |
111 | ||
112 | * Makefile.in (HOST_CFLAGS): Add -DGENERATOR_FILE. | |
113 | (rtl.o, print-rtl.o, bitmap.o, obstack.o): Build with -DGENERATOR_FILE. | |
114 | (alloca.o, vfprintf.o, ggc-none.o, errors.o): Likewise. | |
115 | (splay-tree.o, hash.o): Likewise. | |
116 | GCONFIG_H: New. | |
117 | (rtl.o, print-rtl.o): Depend on $(GCONFIG_H) instead of $(CONFIG_H). | |
118 | (bitmap.o, obstack.o, vfprintf.o, ggc-none.o, errors.o): Likewise. | |
119 | (hashtab.o): Likewise. | |
120 | (gcov.o): Depend on $(CONFIG_H). | |
121 | * configure.in: #include insn-codes.h in tm.h. | |
122 | ||
48a08b9c NC |
123 | 2000-11-22 Nick Clifton <nickc@redhat.com> |
124 | ||
57f56af4 NC |
125 | * config/arm/arm.c (arm_encode_call_attribute): Make 'newstr' a |
126 | const char * to avoid a compile time warning. | |
127 | ||
48a08b9c NC |
128 | * config/arm/arm.md (define_constants): Define symbolic names for |
129 | the link register, last integer register and the fake CC register. | |
130 | Update patterns to use these symbolic names. | |
131 | ||
4a5b68a2 NB |
132 | 2000-11-22 Neil Booth <neilb@earthling.net> |
133 | ||
134 | * cpplex.c (trigraph_ok): Ensure we don't warn twice. | |
135 | * cpplib.h (struct cpp_buffer): New member last_Wtrigraphs. | |
136 | ||
a165f034 RH |
137 | 2000-11-22 Richard Henderson <rth@redhat.com> |
138 | ||
139 | * haifa-sched.c (sched_analyze_1): Don't special-case calls | |
140 | for clobbering registers. | |
141 | (sched_analyze_2): Likewise. | |
142 | (sched_analyze): Zap reg_last_uses and reg_last_sets after calls. | |
143 | ||
10ebf5fe | 144 | 2000-11-22 Chris Demetriou <cgd@sibyte.com> |
a165f034 | 145 | Neil Booth <neilb@earthling.net> |
10ebf5fe | 146 | |
a165f034 RH |
147 | * gcc.c (validate_switches): Validate multiple switches named |
148 | in '|' (or) expressions in specs. | |
149 | (handle_braces): If more than 1 alternative in a '|' spec | |
150 | matches, call do_spec1 just once. | |
10ebf5fe | 151 | |
fb0b2546 MM |
152 | 2000-11-22 Michael Meissner <meissner@redhat.com> |
153 | ||
154 | * d30v.h (TARGET_SWITCHES): Add documentation strings. | |
155 | (TARGET_OPTIONS): Ditto. | |
156 | (OPTIMIZATION_OPTIONS): Temporarily turn off -frename-registers if | |
157 | -O3. | |
158 | ||
67d6f2fc JL |
159 | Wed Nov 22 06:40:56 2000 Jeffrey A Law (law@cygnus.com) |
160 | ||
161 | * pa.c (hppa_encode_label): Account for addition of encoding | |
162 | character when allocating persistent space for the new label | |
163 | name. | |
164 | ||
d1209685 ZW |
165 | 2000-11-22 Zack Weinberg <zack@wolery.stanford.edu> |
166 | ||
167 | * Makefile.in, config.gcc, configure.in: Expunge remaining | |
168 | traces of facility for running MD files through C preprocessor. | |
169 | ||
c01a508e JM |
170 | 2000-11-22 Joseph S. Myers <jsm28@cam.ac.uk> |
171 | ||
172 | * gcov.texi: Add magic comments for texi2pod.pl. | |
173 | * Makefile.in: Add rules to generate and install gcov.1. | |
174 | * gcov.1: New (generated) file. | |
175 | ||
a125d855 RH |
176 | 2000-11-21 Richard Henderson <rth@redhat.com> |
177 | ||
178 | * regrename.c (scan_rtx_reg): Terminate the chain rather than | |
179 | abort on mark_read with NO_REGS. | |
180 | ||
ed311407 MS |
181 | 2000-11-21 Mike Stump <mrs@wrs.com> |
182 | ||
183 | * fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow | |
184 | compilation with older compilers, such as /bin/cc on SunOS. | |
185 | * fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto. | |
186 | ||
cac16ef9 RH |
187 | 2000-11-21 Richard Henderson <rth@redhat.com> |
188 | ||
189 | * varasm.c (record_constant): Pad the constructed | |
190 | constant_descriptor appropriately. | |
191 | ||
c25c12b8 R |
192 | Wed Nov 22 00:52:55 2000 J"orn Rennecke <amylaar@redhat.com> |
193 | ||
194 | * rtl.h (traverse_md_constants): Declare. | |
195 | (struct md_constant): Define. | |
196 | * Makefile.in (HOST_RTL): Add hashtab.o . | |
197 | (OBJS): Add hashtab.o . | |
198 | (hashtab.o): New rule. | |
199 | (rtl.o): Depends on HASHTAB_H. | |
200 | * rtl.c (hashtab.h): #include. | |
201 | (md_constants): New static variable. | |
202 | (def_hash, def_name_eq_p, read_constants): New static functions. | |
203 | (traverse_md_constants): New function. | |
204 | (read_name): Do constant expansion. | |
205 | (read_rtx): Recognize define_constants. | |
206 | * gencodes.c (print_md_constant): New function. | |
207 | (main): Emit #defines for all constant definitions encountered. | |
208 | * md.texi (Constant Definitions): New node. | |
209 | * gensupport.c (xcalloc): New function. | |
210 | ||
f940c352 RH |
211 | 2000-11-21 Richard Henderson <rth@redhat.com> |
212 | ||
213 | * config/alpha/alpha.c (alpha_split_tfmode_frobsign): New. | |
214 | * config/alpha/alpha-protos.h: Declare it. | |
215 | * config/alpha/alpha.md (abstf_internal): Use it. | |
216 | (negtf_internal): Likewise. | |
217 | (andnotdi3): Unstar the name. | |
218 | (movtf_internal): Add o/G alternative. | |
219 | ||
dfc55970 ZW |
220 | 2000-11-21 Zack Weinberg <zack@wolery.stanford.edu> |
221 | ||
222 | * stringpool.c (stringpool_statistics): Also report number and | |
223 | percentage of entries which are identifiers. | |
224 | ||
d1cc928a DN |
225 | 2000-11-21 Diego Novillo <dnovillo@redhat.com> |
226 | ||
227 | * gcse.c (hoist_expr_reaches_here_p): Do not mark expr_bb as | |
228 | visited before visiting it. | |
229 | ||
70f24e49 NC |
230 | 2000-11-21 Nick Clifton <nickc@redhat.com> |
231 | ||
232 | * config/arm/arm.h: Accept TARGET_CPU_arm9tdmi, | |
233 | TARGET_CPU_strongarm110 and TARGET_SPU_strongarm1100. | |
234 | ||
235 | * config.gcc: Accept --with-cpu=arm9 and --with-cpu=arm9tdmi. | |
236 | ||
3fe30ff6 RH |
237 | 2000-11-21 Richard Henderson <rth@redhat.com> |
238 | ||
239 | * c-common.c (c_unsafe_for_reeval): New function. | |
240 | (add_c_tree_codes): Register it. | |
241 | * c-common.h: Declare it. | |
242 | * tree.c (lang_unsafe_for_reeval): New hook. | |
243 | (unsafe_for_reeval): Call it. | |
244 | * tree.h: Declare it. | |
245 | ||
3adbce3d RH |
246 | 2000-11-21 Richard Henderson <rth@redhat.com> |
247 | ||
248 | * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT | |
249 | references as well. | |
250 | ||
0736a307 NB |
251 | 2000-11-21 Neil Booth <neilb@earthling.net> |
252 | ||
a165f034 | 253 | * do_includes: Revert to using cpp_read_file. |
0736a307 | 254 | |
52e12ad0 BS |
255 | 2000-11-21 Bernd Schmidt <bernds@redhat.co.uk> |
256 | ||
847dde95 BS |
257 | * loop.c (consec_sets_giv): If the reg we're examining is anything |
258 | but UNKNOWN_INDUCT, do nothing. | |
259 | Reset the reg's type to UNKNOWN_INDUCT before returning. | |
260 | ||
52e12ad0 BS |
261 | Mostly from Vladimir Makarov (vmakarov@redhat.com) |
262 | * ia64.md (attr itanium_class): Define insn types as described in | |
263 | Itanium docs. | |
264 | (all insn patterns): Use itanium_class, not type attributes. | |
265 | Occasionally split alternatives as necessary. | |
266 | (attr type): Compute from new attr itanium_class. | |
267 | ||
b3e2d1eb KG |
268 | 2000-11-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
269 | ||
270 | * tradcpp.c (output_line_command): Mark system headers as such in | |
271 | `line' commands. | |
272 | ||
0faf814f JJ |
273 | 2000-11-21 Jakub Jelinek <jakub@redhat.com> |
274 | ||
275 | * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Sparc has .file/.loc | |
276 | support in as as well. | |
277 | * configure: Regenerate. | |
278 | ||
3aac38d7 RH |
279 | 2000-11-20 Richard Henderson <rth@redhat.com> |
280 | ||
281 | * c-lex.c (orig_filename): New variable. | |
282 | (init_c_lex): Set it. Move call to cpp_start_read ... | |
283 | (yyparse): ... here. New function. | |
284 | * c-parse.in (yyparse_1): Rename the parser entry point. | |
285 | * c-tree.h: Declare it. | |
286 | ||
6b16805e JJ |
287 | 2000-11-21 Jakub Jelinek <jakub@redhat.com> |
288 | ||
289 | * expr.c (do_compare_and_jump): If op0 was replaced by promoted | |
290 | integer constant, use type of op1 for comparison. | |
291 | ||
18922061 SS |
292 | 2000-11-20 Stan Shebs <shebs@apple.com> |
293 | ||
294 | * config/rs6000/xm-darwin.h: New file, Darwin host definitions. | |
295 | * config/rs6000/x-darwin: New file, Darwin host fragment. | |
296 | * config.gcc (powerpc-*-darwin*): New host. | |
297 | * system.h (HAVE_DESIGNATED_INITIALIZERS): Allow this to be | |
298 | overridden by a config file. | |
299 | ||
d63eefbf NB |
300 | 2000-11-20 Neil Booth <neilb@earthling.net> |
301 | ||
302 | * cppmacro.c (paste_tokens): Rename from paste_payloads. | |
303 | Change token type after pasting spellings. | |
304 | (paste_all_tokens): Use it. | |
305 | * gcc.dg/cpp/paste2.c: Update test. | |
306 | * objc/execute/paste.m: New test. | |
307 | ||
21bc13c9 RH |
308 | 2000-11-20 Richard Henderson <rth@redhat.com> |
309 | ||
310 | * dwarf.h (FMT_CODE): Adjust argument order; fix mapping to | |
311 | dwarf_subscr_data_formats bits. | |
312 | * dwarfout.c (simple_type_size_in_bits): Handle a type with | |
313 | no computed size as size zero. | |
314 | (field_byte_offset): Likewise. | |
315 | (subscript_data_attribute): Handle a range with no upper bound. | |
316 | ||
250333d0 KG |
317 | 2000-11-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
318 | ||
319 | * gansidecl.h (const): Check __STDC__ before undef'ing `const'. | |
320 | ||
1d7ff272 JM |
321 | 2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk> |
322 | ||
323 | * c-typeck.c (build_conditional_expr): When merging type | |
324 | qualifiers for conditional expressions between a pointer and a | |
325 | pointer to a void type, merge the qualifiers on the target types | |
326 | rather than the pointer type. Remove obsolete conditioned out | |
327 | code. | |
328 | ||
dd07b884 NB |
329 | 2000-11-20 Neil Booth <neilb@earthling.net> |
330 | ||
331 | * c-lang.c (lang_init_options): Update call to | |
332 | cpp_reader_init. | |
333 | * cppmain.c (main): Similarly. | |
334 | * fix-header.c (read_scan_file): Similarly. | |
335 | * cp/lex.c (lang_init_options): Similarly. | |
336 | * objc/objc-act.c (lang_init_options): Similarly. | |
337 | * cppexp.c (parse_number): Only warn for unextended C89. | |
338 | * cppinit.c (set_lang): New function. | |
339 | (cpp_reader_init): Take a LANG argument and pass it to set_lang. | |
340 | (COMMAND_LINE_OPTIONS): New option std=c++98. | |
341 | (cpp_handle_option): Use set_lang. | |
342 | * cpplex.c (_cpp_lex_token): Warn pedantically if not C99. | |
343 | * cppib.h (enum_c_lang): New enumeration. Update comments. | |
344 | ||
8d50dfb8 WC |
345 | 2000-11-20 Will Cohen <wcohen@redhat.com> |
346 | ||
347 | * calls.c (expand_call): Clear target only when target is in | |
348 | hard register and current_function_check_memory_usage is set. | |
349 | ||
bd675859 BS |
350 | 2000-11-20 Bernd Schmidt <bernds@redhat.co.uk> |
351 | ||
352 | * toplev.c (rest_of_compilation): Run optimize_mode_switching even | |
353 | if not optimizing. | |
354 | * sh.c (emit_sf_insn, emit_df_insn): Just call emit_insn. | |
355 | ||
3df18884 RH |
356 | 2000-11-19 Richard Henderson <rth@redhat.com> |
357 | ||
52403abb RH |
358 | * crtstuff.c (force_to_data): Use array size 1 not 0. |
359 | ||
3df18884 RH |
360 | * dwarf2out.c (simple_type_size_in_bits): Handle a type with |
361 | no computed size as size zero. | |
362 | (field_byte_offset): Likewise. | |
363 | ||
cfd1c7ea JM |
364 | 2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk> |
365 | ||
366 | * config.gcc: Fix another typo. | |
367 | ||
a25f1211 RH |
368 | 2000-11-19 Richard Henderson <rth@redhat.com> |
369 | ||
370 | * c-decl.c (grokdeclarator): Support flexible array members. | |
371 | Use open-ended ranges for these and zero-length arrays. | |
372 | * c-typeck.c (push_init_level): Validate the context of | |
373 | initialization of a zero-length array. | |
374 | * tree.c (int_fits_type_p): Be prepared for missing bounds. | |
375 | * varasm.c (array_size_for_constructor): New. | |
376 | (output_constructor): Use it for arrays of unspecified length. | |
377 | * extend.texi (Zero Length): Mention C99 flexible array members. | |
378 | Document initialization in a top-level struct as valid. | |
379 | ||
65fa2185 JM |
380 | 2000-11-19 Joseph S. Myers <jsm28@cam.ac.uk> |
381 | ||
9e8fc4b8 JM |
382 | * config.gcc, invoke.texi: Fix errors in spelling of "deprecated". |
383 | ||
65fa2185 JM |
384 | * alias.c (mems_in_disjoint_alias_sets_p): Do use alias sets in |
385 | stdarg and varargs functions. | |
386 | ||
2e59adac ZW |
387 | 2000-11-19 Zack Weinberg <zack@wolery.stanford.edu> |
388 | ||
389 | * gcc.c (process_command): Define 'j' variable when | |
390 | MODIFY_TARGET_NAME is defined. | |
391 | ||
856442b6 RH |
392 | 2000-11-19 Richard Henderson <rth@redhat.com> |
393 | ||
394 | * stor-layout.c (variable_size): Only put SAVE_EXPRs on pending_sizes. | |
395 | ||
88c1e412 FS |
396 | 2000-11-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
397 | ||
398 | * rs6000/rs6000.c (rs6000_encode_section_info): Fix string length | |
399 | calculation and allocation. | |
400 | ||
ce1cc601 KG |
401 | 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
402 | ||
403 | * builtins.c (c_getstr): Constify variable. | |
404 | * gmon-sol2.c (_mcleanup): Comment out #endif labels. | |
405 | * conflict.c (const_conflict_graph_arc): New typedef. | |
406 | (arc_hash, arc_eq): Avoid needlessly casting away const-ness. | |
407 | * cppmacro.c (builtin_macro): Likewise. | |
408 | * dwarf2out.c (output_comp_unit): Constify variable. | |
409 | * fix-header.c (v_fatal): Add ATTRIBUTE_PRINTF. | |
410 | * protoize.c (IS_SAME_PATH_CHAR): Use TOUPPER, not toupper. | |
411 | * ssa.c (ssa_rename_from_hash_function): Avoid needlessly casting | |
412 | away const-ness. | |
413 | * tradcpp.c (rescan, do_line, macroexpand, macarg): Use | |
414 | ISALNUM/ISDIGIT/ISPRINT, not isalnum/isdigit/isprint. | |
415 | * varasm.c (const_str_htab_hash, const_str_htab_eq, | |
416 | compare_constant_1, record_constant_1): Constify. | |
417 | ||
967e627a RH |
418 | 2000-11-18 Richard Henderson <rth@redhat.com> |
419 | ||
420 | * c-decl.c (grokdeclarator): Special case the creation of an | |
421 | index for a zero-length array. | |
422 | * tree.c (build_index_type): Revert Oct 20 change. | |
423 | ||
e9284adf MM |
424 | 2000-11-18 Marek Michalkiewicz <marekm@linux.org.pl> |
425 | ||
426 | * config/avr/avr-protos.h (avr_output_addr_vec_elt): Prototype. | |
427 | * config/avr/avr.c (jump_tables_size): New variable. | |
428 | (function_prologue): Initialize it as 0. | |
429 | (function_epilogue): Add it to function_size. | |
430 | (avr_output_addr_vec_elt): New function. Count words in jump | |
431 | tables in jump_tables_size. Move code ... | |
432 | * config/avr/avr.h (ASM_OUTPUT_ADDR_VEC_ELT): ... from here. | |
433 | Call avr_output_addr_vec_elt instead. | |
434 | * config/avr/avr.md (tablejump): Remove disabled define_expand. | |
435 | ||
67c72a63 MM |
436 | 2000-11-18 Mark Mitchell <mark@codesourcery.com> |
437 | ||
438 | * configure.in: Make --enable-new-gxx-abi the default. | |
439 | * configure: Likewise. | |
440 | ||
0a8ad417 KG |
441 | 2000-11-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
442 | ||
443 | * Makefile.in (tradcpp.o, tradcif.o): Depend on tradcpp.h. | |
444 | ||
445 | * tradcif.y: Include tradcpp.h. Constify. Make functions static. | |
446 | Move extern function declarations to tradcpp.h. | |
447 | ||
448 | * tradcpp.c: Likewise. | |
449 | ||
450 | * tradcpp.h: New file. | |
451 | ||
77c4d6c0 JM |
452 | 2000-11-18 Joseph S. Myers <jsm28@cam.ac.uk> |
453 | ||
454 | * c-decl.c (check_for_loop_decls): New function. | |
455 | * c-parse.in (for_init_stmt): New. | |
456 | (select_or_iter_stmt): Use for_init_stmt. | |
457 | * c-tree.h (check_for_loop_decls): New declaration. | |
458 | ||
4a58aab6 NB |
459 | 2000-11-18 Neil Booth <neilb@earthling.net> |
460 | ||
461 | * cppinit.c: Update comments. | |
462 | (cpp_reader_init): Make -imacro and -include use the standard | |
463 | #include "" search path. | |
464 | (do_includes): New function. | |
465 | ||
c3e2d242 BE |
466 | 2000-11-18 Ben Elliston <bje@redhat.com> |
467 | ||
468 | * config/sh/crt1.asm (start_l): Move PC-relative move instruction | |
469 | out of a branch delay slot. | |
470 | ||
48adb36e RH |
471 | 2000-11-17 Richard Henderson <rth@redhat.com> |
472 | ||
473 | * config/alpha/elf.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG. | |
474 | (ASM_SPEC): Disable and enable .mdebug based on -gstabs. | |
475 | (ASM_FILE_START): Only write out ecoff .file directive if | |
476 | emitting mdebug debugging. | |
477 | ||
9d147085 RH |
478 | 2000-11-17 Richard Henderson <rth@redhat.com> |
479 | ||
480 | * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): New. Detect | |
481 | whether as accepts .file/.loc and produces dwarf2 line info. | |
482 | * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Default on if | |
483 | the assembler supports it. | |
484 | * config.in, configure: Regenerate. | |
485 | ||
5b87e928 RH |
486 | 2000-11-17 Richard Henderson <rth@redhat.com> |
487 | ||
488 | * fixinc/mkfixinc.sh: Don't disable fixincludes for any linux*. | |
489 | ||
95c8e04b JW |
490 | 2000-11-17 Jim Wilson <wilson@redhat.com> |
491 | ||
492 | * config/ia64/ia64.c (emit_insn_group_barriers, case CALL_INSN): | |
493 | Don't clear need_barrier is next_insn is a CALL_INSN, or has | |
494 | instruction type B or UNKNOWN. | |
495 | ||
14fbab6d NB |
496 | 2000-11-17 Neil Booth <neilb@earthling.net> |
497 | ||
a25f1211 | 498 | * cpperror.c (print_file_and_line): Don't display line number if 0. |
14fbab6d | 499 | |
a8a05998 ZW |
500 | 2000-11-17 Zack Weinberg <zack@wolery.stanford.edu> |
501 | ||
502 | * ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add | |
503 | digit_vector and digit_string. | |
504 | * stringpool.c (digit_vector): New. | |
505 | (ggc_alloc_string): Use digit_string. | |
506 | ||
507 | * stmt.c (digit_strings): Delete. | |
508 | (init_stmt): Do not initialize digit_strings. | |
509 | (expand_asm_operands): Use ggc.h's digit_string macro. | |
510 | * toplev.c (mark_file_stack): Delete. | |
511 | (compile_file): Don't call init_tree_codes. | |
512 | (main): No need to make the file stack a GC root. | |
513 | * tree.c (init_tree_codes): Delete. | |
514 | * tree.h (init_tree_codes): Delete. | |
515 | ||
516 | * c-lex.c: Don't include ggc.h. | |
517 | (mark_splay_tree_node, mark_splay_tree): Delete. | |
518 | (init_c_lex): No need to ggc_strdup string constant. Don't add | |
519 | file_info_tree to GGC roots. | |
520 | (cb_enter_file, cb_rename_file): No need to ggc_strdup | |
521 | ip->nominal_fname. | |
522 | ||
523 | * Makefile.in (c-lex.o): No longer depends on $(GGC_H). | |
524 | ||
525 | * dbxout.c (dbxout_init), | |
526 | dwarf2out.c (dwarf2out_line), | |
527 | ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees), | |
528 | varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once), | |
529 | xcoffout.c (xcoffout_source_file), | |
530 | i386.c (load_pic_register): | |
531 | Delete call(s) to ggc_add_string_root and/or ggc_mark_string. | |
532 | ||
533 | * except.c (create_rethrow_ref), | |
534 | profile.c (init_edge_profiler), | |
535 | toplev.c (compile_file), | |
536 | varasm.c (named_section, assemble_static_space, | |
537 | assemble_trampoline_template, output_constant_def, force_const_mem), | |
538 | i386.c (load_pic_register), | |
539 | ia64.c (ia64_encode_section_info), | |
540 | rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference, | |
541 | rs6000_emit_prologue, rs6000_emit_epilogue), | |
542 | rs6000.md (load_toc_aix_si, load_toc_aix_di): | |
543 | Change ggc_alloc_string (var, -1) to ggc_strdup (var). | |
544 | ||
545 | * profile.c (output_func_start_profiler), | |
546 | tree.c (make_node), | |
547 | i386.c (load_pic_register): No need to ggc_strdup string constant. | |
548 | ||
61ed06c3 HPN |
549 | 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
550 | ||
551 | * Makefile.in (config.status): Depend on config.gcc. | |
552 | * configure.in <for machine in $build $host $target>: Move | |
553 | contents of loop into config.gcc, removing autoconf quoting. | |
554 | Fix changequote bug for alpha*-*-vxworks*. | |
555 | * configure: Regenerate. | |
556 | * config.gcc: New. | |
557 | ||
520a57c8 ZW |
558 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> |
559 | ||
560 | * c-parse.in (if_prefix): Find the filename and line number at | |
561 | $-2 and $-1 respectively. | |
562 | * diagnostic.c (error_recursion): Add missing newline, use | |
563 | fputs, translate string. | |
564 | ||
565 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> | |
566 | ||
567 | * stringpool.c: New file. | |
568 | * ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete. | |
569 | (ggc_alloc_string): Now in stringpool.o. | |
570 | * ggc-page.c, ggc-simple.c: Do not define or allocate empty_string. | |
571 | * ggc.h: Delete prototype of ggc_add_string_root. #define | |
572 | ggc_add_string_root and ggc_mark_string to nothing. Prototype | |
573 | init_stringpool and stringpool_statistics. | |
574 | (ggc_alloc_string): Returns a const char *. | |
575 | * tree.c (hash_table, do_identifier_warnings): Delete. | |
576 | (init_obstacks): Don't initialize the identifier hash table. | |
577 | (get_identifier, maybe_get_identifier, start_identifier_warnings, | |
578 | set_identifier_size): Now in stringpool.c. | |
579 | * tree.h (struct tree_string): Constify pointer field. | |
580 | (approx_sqrt): Prototype. | |
581 | ||
582 | * Makefile.in (stringpool.o): Add rule, mention in OBJS. | |
583 | ||
584 | * toplev.c (approx_sqrt): New function. | |
585 | (compile_file): Call stringpool_statistics if mem_report is on. | |
586 | (main): Call init_stringpool. | |
587 | ||
588 | * builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c | |
589 | (process_directive), c-typeck.c (constructor_asmspec, struct | |
590 | initializer_stack, start_init), except.c (create_rethrow_ref), | |
591 | stmt.c (digit_strings), toplev.c (decode_f_option), tree.c | |
592 | (built_in_filename), varasm,c (in_named_name, | |
593 | assemble_static_space, struct constant_descriptor, struct | |
594 | deferred_string, struct pool_constant, force_const_mem), | |
595 | i386.c (pic_label_name, global_offset_table_name), rs6000.c | |
596 | (rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *. | |
597 | ||
598 | * c-common.c (combine_strings): Combine strings in scratch | |
599 | buffer, then pass to build_string. | |
600 | * optabs.c (init_libfuncs), profile.c (init_edge_profiler, | |
601 | output_func_start_profiler), stmt.c (init_stmt), alpha.c | |
602 | (alpha_need_linkage), arm.c (arm_encode_call_attribute), | |
603 | i386.c (load_pic_register), ia64.c (ia64_encode_section_info), | |
604 | rs6000.c (rs6000_encode_section_info): Create string in | |
605 | scratch buffer, then pass to ggc_alloc_string. | |
606 | ||
607 | * stmt.c (expand_asm_operands): If we must adjust the | |
608 | constraint strings, do so by creating a new one, not by | |
609 | modifying the old one in place. Constify some char *s. | |
610 | * config/pa/pa.c (hppa_encode_label): Drop unnecessary second | |
611 | argument. Create string in scratch buffer, then pass to | |
612 | ggc_alloc_string. | |
613 | * config/pa/pa-protos.h: Update prototype. | |
614 | * config/pa/elf.h, config/pa/pa.h, config/pa/som.h: | |
615 | hppa_encode_label takes only one argument. | |
616 | ||
dd3b81b4 KG |
617 | 2000-11-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
618 | ||
619 | * mcore.c (mcore_expand_prolog): Call xmalloc/xrealloc, not | |
620 | malloc/realloc. | |
621 | ||
622 | * cpplib.c (glue_header_name): Likewise. | |
623 | ||
624 | * fixincl.c (run_compiles, start_fixer): Likewise. | |
625 | ||
626 | * fixlib.c (load_file_data): Likewise. | |
627 | ||
628 | * mkdeps.c (munge): Likewise. | |
629 | ||
5074c1fe HPN |
630 | 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
631 | ||
632 | * defaults.h [EH_FRAME_SECTION_ASM_OP] (EH_FRAME_SECTION): Remove | |
633 | trailing ';'. Fix formatting. | |
634 | ||
74fe26b2 JW |
635 | 2000-11-16 Jim Wilson <wilson@redhat.com> |
636 | ||
35d9f39d JW |
637 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT, MASK_INLINE_DIV_THR): |
638 | Shift masks left by one to avoid conflict. | |
639 | ||
74fe26b2 JW |
640 | * config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with |
641 | DECL_EXTERNAL set. | |
642 | ||
68dfd979 NC |
643 | 2000-11-16 Nick Clifton <nickc@redhat.com> |
644 | ||
645 | * config/arm/arm.c (output_arm_prologue): Note nested functions. | |
646 | (arm_expand_prologue): For nested functions preserve the | |
647 | static chain register during stack frame creation. | |
648 | ||
649 | * config/arm/arm.h (STATIC_CHAIN_REGNUM): Change to 12. | |
650 | (ARM_INITIAL_FRAME_ELIMINATION_OFFSET): For a nested function | |
651 | with a stack frame there is a 4 byte gap between the arg | |
652 | pointer and the hard frame pointer (used to preserve the | |
653 | static chain register during stack frame creation). | |
654 | ||
3ab9a08f DD |
655 | 2000-11-16 DJ Delorie <dj@redhat.com> |
656 | ||
657 | * rtl.c (read_rtx): Provide suitable names for unnamed | |
658 | define_insn and define_insn_and_split patterns, based on file | |
659 | and line numbers. | |
660 | ||
fe6c2db9 NB |
661 | 2000-11-15 Neil Booth <neilb@earthling.net> |
662 | ||
a8a05998 ZW |
663 | * cpplib.c (start_directive, end_directive): New functions. |
664 | (_cpp_handle_directive, run_directive): Use them. | |
665 | (_cpp_handle_directive): Don't -Wtraditional on indented | |
666 | null directives. | |
667 | (_cpp_push_buffer): Don't re-clear was_skipping. | |
668 | * cpplib.h (struct cpp_reader): New member la_saved. | |
669 | * cppmacro.c (cpp_get_token): Don't interpret _Pragma in | |
670 | directives. | |
fe6c2db9 | 671 | |
a8a05998 ZW |
672 | gcc.dg/cpp/_Pragma1.c: Update. |
673 | gcc.dg/cpp/_Pragma2.c: New test. | |
fe6c2db9 | 674 | |
62136084 MM |
675 | 2000-11-15 Mark Mitchell <mark@codesourcery.com> |
676 | ||
677 | * toplev.c (wrapup_global_declarations): Don't write out | |
678 | artificial static variables that aren't needed. | |
679 | ||
099dde21 BS |
680 | 2000-11-15 Bernd Schmidt <bernds@redhat.co.uk> |
681 | ||
682 | * ia64.c (struct group): New structure. | |
683 | (last_group): New static array. | |
684 | (group_idx): New static variable. | |
685 | (emit_group_barrier_after, errata_find_address_regs, errata_emit_nops): | |
686 | New static functions. | |
687 | (emit_insn_group_barriers): Initialize and keep track of group_idx | |
688 | and last_group. | |
689 | Call errata_emit_nops if TARGET_B_STEP or TARGET_A_STEP. | |
690 | Replace all calls to emit_insn_after that emit a group barrier to use | |
691 | emit_group_barrier_after. | |
692 | * ia64.h (MASK_B_STEP): New. | |
693 | (other MASK_XXX macros): Renumbered. | |
694 | (TARGET_B_STEP): New. | |
695 | (TARGET_SWITCHES): Add -mb-step. | |
696 | ||
4e7b85ed FF |
697 | 2000-11-15 Fred Fish <fnf@be.com> |
698 | ||
699 | * fixinc/mkfixinc.sh (fixincludes): Add *-*-beos* to list of | |
700 | machines for which fixincludes is not needed. | |
701 | * config/i386/x-beos (STMP_FIXPROTO): Don't run fixproto. | |
702 | ||
ee3400e8 JM |
703 | 2000-11-15 Jason Merrill <jason@redhat.com> |
704 | ||
705 | * diagnostic.c (finish_abort): New fn. | |
706 | (fancy_abort, error_recursion): Use it. | |
707 | * toplev.c (crash_signal): Likewise. | |
708 | * diagnostic.h: Declare it. | |
709 | ||
12e1243e AH |
710 | 2000-11-13 Andrew Haley <aph@redhat.com> |
711 | ||
712 | * tree.c (build_type_no_quals): New function. | |
713 | * tree.h (build_type_no_quals): Declare. | |
714 | * c-common.c (c_get_alias_set): When considering type | |
715 | compatibility for pointer types, ignore cv-qualifiers anywhere in | |
716 | a pointer chain. | |
717 | ||
695e4773 GS |
718 | 2000-11-15 Graham Stott <grahams@redhat.com> |
719 | ||
720 | * regrename.c (scan_rtx_rtx): Skip to the next chain on | |
721 | encountering a terminated chain. | |
722 | ||
5a7c1037 MM |
723 | 2000-11-14 Mark Mitchell <mark@codesourcery.com> |
724 | ||
725 | * configure.in: Move check for V3 above check for C++ header-file | |
726 | directory. | |
727 | * configure: Regenerated. | |
a8a05998 | 728 | |
568c5140 DD |
729 | 2000-11-14 DJ Delorie <dj@redhat.com> |
730 | ||
731 | * config/v850/v850.c: Remove obstacks. | |
732 | ||
1268b05f MM |
733 | Tue Nov 14 21:54:31 2000 Marek Michalkiewicz <marekm@linux.org.pl> & Denis Chertykov <denisc@overta.ru> |
734 | ||
735 | * config/avr/avr.c (avr_case_values_threshold): New. | |
736 | (avr_override_options): Set it depending on options, make it large | |
737 | when not optimizing to work around "unable to generate reloads". | |
738 | ||
739 | * config/avr/avr.h (TARGET_SWITCHES): Add -mno-tablejump option. | |
740 | (EXTRA_SECTION_FUNCTIONS): Make the .progmem.gcc_sw_table section | |
741 | executable if not AVR_MEGA. Make sure jump tables are word-aligned. | |
742 | (JUMP_TABLES_IN_TEXT_SECTION): Define as 0, not 1. | |
743 | (ASM_OUTPUT_ADDR_VEC_ELT): Optimize, use "rjmp" if not AVR_MEGA. | |
744 | (avr_case_values_threshold): Declare as extern int. | |
745 | (CASE_VALUES_THRESHOLD): Define as avr_case_values_threshold. | |
746 | ||
747 | * config/avr/avr.md (tablejump): Removed. | |
748 | (*tablejump_rjmp): New for jump tables made from "rjmp" instructions. | |
749 | (*tablejump_lib, *tablejump_enh, *tablejump): Change to expect the | |
750 | index in the table, not multiplied by 2. | |
751 | (casesi): Change to match the above insns. Always enable. | |
752 | ||
753 | * config/avr/libgcc.S (__tablejump__): Rename to __tablejump2__. | |
754 | Change to expect the word address of the table, multiply it by 2 | |
755 | here and not in the caller. Change "adiw" to faster "inc". | |
756 | ||
7f2f1a66 NB |
757 | 2000-11-14 Neil Booth <neilb@earthling.net> |
758 | ||
759 | * cppexp.c (parse_defined): Call cpp_get_token not | |
760 | _cpp_get_token. | |
761 | (lex): Similarly. | |
762 | * cpplex.c (cpp_output_line): Similarly. | |
763 | * cpplib.c (glue_header_name, do_line, do_ident, | |
764 | parse_answer, parse_assertion): Similarly. | |
765 | (_cpp_handle_diretive): Don't save to lookaheads | |
766 | when processing directives. | |
767 | * cppmacro.c (parse_arg, expand_arg): Call cpp_get_token not | |
768 | _cpp_get_token. | |
769 | (funlike_invocation_p): Don't save to lookaheads | |
770 | when pre-expanding arguments. | |
771 | (_cpp_get_token): Delete. | |
772 | (cpp_get_token): Merge contents of _cpp_get_token. | |
773 | ||
f36d6244 JJ |
774 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
775 | ||
776 | * builtins.c (expand_builtin_setjmp): Set | |
777 | current_function_calls_setjmp. | |
778 | (expand_builtin_longjmp): Set current_function_calls_longjmp. | |
779 | ||
780 | * config/sparc/sparc.md (builtin_setjmp_setup): New expand. | |
781 | (do_builtin_setjmp_setup): New insn. | |
782 | ||
3401c26b RK |
783 | Tue Nov 14 12:34:56 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
784 | ||
785 | * tree.c (get_unwidened): Use host_integerp and tree_low_cst. | |
786 | (int_fits_type_p): For variable bounds, call force_fit_type. | |
787 | ||
bd7cf17e JJ |
788 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
789 | ||
790 | * varasm.c (struct deferred_string): New structure. | |
791 | (const_str_htab): New variable. | |
792 | (STRHASH): New macro. | |
793 | (mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash, | |
794 | constr_str_htab_eq, const_str_htab_del): New functions. | |
795 | (output_constant_def): Add DEFER argument, defer string | |
796 | constants until mark_constant_pool time if requested. | |
797 | (mark_constant_pool): Walk the insn chain even if const_str_htab is | |
798 | not empty. | |
799 | (mark_constants): If a SYMBOL_REF for deferred string is found, | |
800 | output it and remove from hash table. | |
801 | (output_addressed_constants): Set DEFER to 0 in call to | |
802 | output_constant_def. | |
803 | * rtl.h (STRING_POOL_ADDRESS_P): Define. | |
804 | (output_constant_def): Adjust prototype. | |
805 | * expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def. | |
806 | ||
10e927ef CC |
807 | 2000-11-14 Chandrakala Chavva <cchavva@redhat.com> |
808 | ||
809 | * optabs.c (expand_complex_ab):: Use overflow-trapping optabs for | |
810 | signed types if flag_trapv. | |
811 | ||
ef90743a ZW |
812 | 2000-11-14 Zack Weinberg <zack@wolery.stanford.edu> |
813 | ||
814 | * tradcpp.c, tradcif.y: Update FSF mailing address, delete | |
815 | reference to GPLv1. | |
816 | ||
fe8ca71f JM |
817 | 2000-11-14 Joseph S. Myers <jsm28@cam.ac.uk> |
818 | ||
819 | * c-common.h (CTI_C_SIZE_TYPE): Update comment. | |
820 | ||
94b01be3 JJ |
821 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
822 | ||
823 | * varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table | |
824 | to array of pool_constnat pointers. | |
825 | (struct pool_constant): Add next_sym and label members. | |
826 | (struct pool_sym): Remove. | |
827 | (init_varasm_status): Change pool_sym into pool_constant. | |
828 | (mark_pool_constant): Mark pc->label string as well. | |
829 | (mark_pool_sym_hash_table): Remove. | |
830 | (mark_varasm_status): Remove it from caller as well. | |
831 | (free_varasm_status): Don't free pool_sym structures. | |
832 | (force_const_mem): Don't allocate pool_sym structure, instead | |
833 | fill pool->label and chain it into rtx_sym hash table. | |
834 | (find_pool_constant, mark_constant_pool): Use pool_constant instead | |
835 | of pool_sym. | |
836 | ||
716120a7 JJ |
837 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
838 | ||
839 | * reload1.c (emit_input_reload_insns): Honour forcing of constants | |
840 | into memory by PREFERRED_RELOAD_CLASS NO_REGS. | |
841 | ||
f8032688 MM |
842 | 2000-11-14 Michael Matz <matzmich@cs.tu-berlin.de> |
843 | ||
844 | * dominance.c: New file. | |
845 | * Makefile.in (OBJS): Add dominance.o. | |
846 | ||
847 | * flow.c (compute_flow_dominators): Remove. | |
848 | (compute_immediate_dominators): Remove. | |
849 | (compute_immediate_postdominators): Remove. | |
850 | * basic-block.h: Remove their prototypes. | |
851 | (calculate_dominance_info): Add prototype. | |
852 | ||
853 | * dce.c (eliminate_dead_code): Change calls to above functions. | |
854 | Don't compute dominators but only immediate dominators. | |
855 | * flow.c (flow_loops_find): Change callers. | |
856 | * gcse.c (compute_code_hoist_data): Likewise. | |
857 | * haifa-sched.c (schedule_insns): Likewise. | |
858 | * ifcvt.c (if_convert): Likewise. | |
859 | * ssa.c (convert_to_ssa): Likewise, and only compute immediate | |
860 | dominators. | |
861 | ||
0caa3c8e RH |
862 | 2000-11-14 Richard Henderson <rth@redhat.com> |
863 | ||
6f122550 RH |
864 | * stmt.c (warn_if_unused_value): Don't warn if the expression |
865 | has side effects. | |
866 | ||
0caa3c8e RH |
867 | * c-typeck.c (c_sizeof): Fold result to c_size_type_node. |
868 | (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise. | |
869 | ||
a78cc542 FS |
870 | 2000-11-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
871 | ||
872 | * loop.c (basic_induction_var): Revert accidental checkin. | |
873 | ||
d9068c61 HPN |
874 | 2000-11-13 Hans-Peter Nilsson <hp@axis.com> |
875 | ||
876 | * c-lex.c (cb_leave_file): Harmonize conditions and order of | |
877 | statements to those of process_directive for (action == act_pop). | |
878 | ||
879 | * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS. | |
880 | ||
881 | * local-alloc.c (equiv_init_movable_p): References to CC0 are not | |
882 | movable. | |
883 | ||
ebf02523 JM |
884 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
885 | ||
886 | * c-parse.in (stmts_and_decls): Deprecate use of label at end of | |
887 | compound statement. | |
888 | ||
29b10746 NB |
889 | 2000-11-13 Neil Booth <neilb@earthling.net> |
890 | ||
ee3400e8 JM |
891 | * cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF |
892 | cases return without MI check. | |
893 | * cpplib.c (do_diagnostic): Take boolean of whether to | |
894 | print the directive name. | |
895 | (do_error, do_warning): Update. | |
896 | (do_pragma_dependency): Use it. | |
897 | * cpplib.h (VARARGS_FIRST): Delete. | |
898 | (struct cpp_token): Delete integer. | |
899 | * cppmacro.c (enter_macro_context): Move disabled check | |
900 | to _cpp_get_token. | |
901 | (_cpp_get_token): Simplify into a single loop. | |
29b10746 | 902 | |
8105825d RE |
903 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
904 | ||
905 | * configure.in: Use 'test -f' not '[ -e'. | |
906 | * configure: Regenerated. | |
907 | ||
481a6b4a DD |
908 | 2000-11-13 DJ Delorie <dj@redhat.com> |
909 | ||
910 | * config/mn10300/mn10300.md (store_movm): Note which registers are | |
911 | really used or clobbered. | |
912 | ||
b7438415 JM |
913 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
914 | ||
915 | * c-parse.in (ends_in_label): Remove from %union and %type. | |
916 | (decls, stmts, lineno_stmt_or_labels, xstmts, | |
917 | lineno_stmt_or_label, stmt_or_label): Remove. | |
918 | (stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt, | |
919 | lineno_stmt_decl_or_labels_ending_decl, | |
920 | lineno_stmt_decl_or_labels_ending_label, | |
921 | lineno_stmt_decl_or_labels_ending_error, | |
922 | lineno_stmt_decl_or_labels, compstmt_contents_nonempty, | |
923 | lineno_stmt, lineno_label): New. | |
924 | (compstmt_nostart): Use compstmt_contents_nonempty. | |
925 | ||
19552aa5 JM |
926 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
927 | ||
928 | * c-common.c (boolean_increment): New function. | |
929 | * c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE, | |
930 | CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE. | |
931 | (c_bool_type_node, c_bool_true_node, c_bool_false_node): Define. | |
932 | (boolean_increment): Declare. | |
933 | * c-convert.c (convert): Allow for BOOLEAN_TYPE. | |
934 | * c-decl.c (init_decl_processing): Create boolean nodes. | |
935 | (finish_struct): Allow for _Bool bitfields. | |
936 | * c-parse.in (reswords): Add _Bool. | |
937 | (rid_to_yy): Allow for RID_BOOL. | |
938 | * c-typeck.c (default_conversion): Make booleans promote to int. | |
939 | (convert_arguments, build_unary_op, build_modify_expr, | |
940 | convert_for_assignment): Allow for booleans. | |
941 | * ginclude/stdbool.h: Make conforming to C99. | |
942 | ||
444ca59f JM |
943 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
944 | ||
945 | * c-parse.in (c99_block_start, c99_block_end, | |
946 | c99_block_lineno_labeled_stmt): New. | |
947 | (simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt. | |
948 | (stmt): Split off selection and iteration statements into... | |
949 | (select_or_iter_stmt): New. Use c99_block_lineno_labeled_stmt. | |
950 | ||
f2ecb02d JM |
951 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
952 | ||
953 | * invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps, | |
954 | -time): Update. | |
955 | ||
b082bfdb RE |
956 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
957 | ||
958 | * arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change. | |
959 | Rewrite to avoid use of match_dup. Don't try to tie registers that | |
960 | are not in the same mode. | |
961 | ||
b9265ec1 JM |
962 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
963 | ||
964 | * invoke.texi: Update lists of languages and suffixes supported. | |
965 | ||
cc1e60ea JM |
966 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
967 | ||
968 | * configure.in: Take toplevel configure arguments from the | |
969 | environment to create configargs.h and substitute | |
970 | gcc_config_arguments, taking account of any existing configargs.h | |
971 | if reconfiguring. | |
972 | * configure: Regenerate. | |
973 | * gccbug.in: Include toplevel configure arguments in gccbug. | |
974 | ||
37357796 RE |
975 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
976 | ||
977 | * varasm.c (struct constant_descriptor): Put CONTENTS inside a | |
978 | union to make it well-aligned. Update all uses. | |
979 | ||
26d4fec7 JM |
980 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
981 | ||
982 | * c-parse.in (initelt): Give appropriate pedantic warnings, | |
983 | depending on flag_isoc99, for non-ISO syntax and for C99 syntax | |
984 | outside C99 mode. | |
985 | (designator): If pedantic, pedwarn for a designator specifying a | |
986 | range of elements. | |
987 | * c-typeck.c (set_init_index, set_init_label): Don't pedwarn for | |
988 | these cases. | |
989 | * extend.texi: Document the C99 syntax as the preferred syntax, | |
990 | and the pre-2.5 syntax as obsolete. Mention use of designator | |
991 | lists for nested subobjects. | |
992 | ||
88f3c477 JM |
993 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
994 | ||
995 | * diagnostic.c (vbuild_message_string, output_do_printf, vnotice): | |
996 | Add ATTRIBUTE_PRINTF. | |
997 | * tradcpp.c (v_message, warning, error, fatal, error_with_line): | |
998 | Add ATTRIBUTE_PRINTF*. | |
999 | ||
db5fbfb4 MM |
1000 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
1001 | ||
1002 | * function.c (assign_parms): When calling put_var_into_stack, make | |
1003 | sure that there are no hidden pending sequences. | |
1004 | ||
c7b6c6cd KG |
1005 | 2000-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1006 | ||
1007 | * builtins.c (expand_builtin): Handle BUILT_IN_INDEX and | |
1008 | BUILT_IN_RINDEX. Add missing checks for BUILT_IN_STRCHR and | |
1009 | BUILT_IN_STRRCHR. | |
1010 | ||
1011 | * builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries. | |
1012 | ||
1013 | * c-common.c (c_common_nodes_and_builtins): Declare index and | |
1014 | rindex when nonansi builtins are allowed. | |
1015 | ||
1016 | * extend.texi (index, rindex): Document new builtins. | |
1017 | ||
2f86842d MM |
1018 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
1019 | ||
34f6fbdb MM |
1020 | * configure.in: Turn on libstdc++ V3 by default. |
1021 | * configure: Regenerated. | |
a8a05998 | 1022 | |
2f86842d MM |
1023 | * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris. |
1024 | ||
0c0ba09c JJ |
1025 | 2000-11-12 Jakub Jelinek <jakub@redhat.com> |
1026 | ||
1027 | * reload1.c (set_label_offsets): Go inside of PARALLELs. | |
1028 | ||
84a0e7b8 JM |
1029 | 2000-11-12 Joseph S. Myers <jsm28@cam.ac.uk> |
1030 | ||
1031 | * invoke.texi: Clean up option summary. | |
1032 | ||
4816b8e4 NC |
1033 | 2000-11-12 Nick Clifton <nickc@redhat.com> |
1034 | ||
1035 | * config/mcore/mcore.c: Fix comment formating, and adjust sequence | |
1036 | of #include headers. | |
1037 | ||
ee7692d2 | 1038 | 2000-11-12 Marc Espie <espie@openbsd.org> |
a8a05998 | 1039 | |
ee7692d2 ME |
1040 | * configure.in: Fix filds test. |
1041 | * configure: Regen. | |
1042 | ||
f8c4f860 MM |
1043 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
1044 | ||
1045 | * jump.c (delete_computation): Don't assume that just becuase an | |
1046 | instruction sets a register, that register is dead. | |
1047 | ||
b528a07e NB |
1048 | 2000-11-12 Neil Booth <neilb@earthling.net> |
1049 | ||
a8a05998 ZW |
1050 | * cppexp.c: Don't worry about pfile->skipping. |
1051 | * cpplib.c (struct if_stack): Make was_skipping unsigned char. | |
1052 | (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer | |
1053 | for handled directives. | |
1054 | (skip_rest_of_line): Use _cpp_lex_token after popping contexts | |
1055 | and releasing lookaheads. | |
1056 | (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping. | |
1057 | (do_else, do_elif, push_conditional): Update logic. | |
1058 | (do_endif): Set buffer->was_skipping rather than pfile->skipping. | |
1059 | (unwind_if_stack): Inline into cpp_pop_buffer. | |
1060 | (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive. | |
1061 | * cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle | |
1062 | multiple-include optimisation. | |
1063 | * cpplib.h (struct cpp_buffer): New member was_skipping. | |
1064 | * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This | |
1065 | works because skipping == 0 in directives. | |
1066 | (_cpp_release_lookahead): Renamed from release_lookahead. | |
1067 | (cpp_get_token): No need to check skipping as _cpp_get_token does | |
1068 | this for us. No need to handle MI optimisation. | |
b528a07e | 1069 | |
995c461c MM |
1070 | Sat Nov 11 21:14:02 2000 Mark P Mitchell <mark@codesourcery.com> |
1071 | ||
1072 | * fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr | |
1073 | declarations that use `__MATH_EXCEPTION' in their prototypes, too. | |
1074 | * fixinc/fixincl.x: Regenerated. | |
a8a05998 | 1075 | |
56a77e1e BK |
1076 | 2000-11-11 Bruce Korb <bkorb@gnu.org> |
1077 | ||
1078 | * fixinc/inclhack.def (avoid_bool_type): avoid commenting out #endif | |
1079 | (avoid_wchar_t_type): ditto | |
1080 | * fixinc/fixinc.irix: obsoleted | |
1081 | ||
72aaffbd ZW |
1082 | 2000-11-11 Zack Weinberg <zack@wolery.stanford.edu> |
1083 | ||
1084 | * configure.in: Don't add $outputs to all_lang_makefiles. Add | |
1085 | $srcdir/$s/Makefile.in if it exists. | |
1086 | * configure: Regenerate. | |
1087 | ||
bbdd639d MM |
1088 | Sat Nov 11 18:41:20 2000 Mark P Mitchell <mark@codesourcery.com> |
1089 | ||
1090 | * fixinc/mkfixinc.sh: Use the ordinary fixincludes on IRIX. | |
1091 | ||
d96a6d1a JM |
1092 | 2000-11-11 Jason Merrill <jason@redhat.com> |
1093 | ||
a8a05998 | 1094 | * function.c (assign_parms): If TREE_ADDRESSABLE is set, try to |
d96a6d1a JM |
1095 | give the parm a register and then call put_var_into_stack. |
1096 | * stmt.c (expand_decl): Likewise. | |
1097 | ||
8ee322c9 JM |
1098 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
1099 | ||
1100 | * gcc.texi: Adjust wording. | |
1101 | ||
8b4c8a86 MM |
1102 | 2000-11-11 Mark Mitchell <mark@codesourcery.com> |
1103 | ||
1104 | * fixinc/inclhack.def (avoid_wchar_t_type): New fix. | |
1105 | * fininc/fixincl.x: Regenerated. | |
1106 | ||
639726ba JM |
1107 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
1108 | ||
1109 | * invoke.texi: Correct spelling of -foptimize-register-move. | |
1110 | ||
4c2b647d NB |
1111 | 2000-11-11 Neil Booth <neilb@earthling.net> |
1112 | ||
1113 | Remove CPP_PLACEMARKERs. | |
1114 | ||
1115 | * cppexp.c (lex): Don't handle CPP_PLACEMARKER. | |
1116 | * cpplex.c (_cpp_lex_token): Rename skip_newlines to next_bol | |
1117 | * cpplib.c (skip_rest_of_line, check_eol, cpp_push_buffer): | |
a8a05998 | 1118 | Similarly. |
4c2b647d NB |
1119 | * cpplib.h: Remove CPP_PLACEMARKER. |
1120 | (struct lexer_state): Rename skip_newlines to next_bol. | |
1121 | * cppmacro.c (stringify_arg): Don't handle CPP_PLACEMARKER. | |
1122 | Simplify prev_white handling as a result. | |
1123 | (paste_all_tokens): Don't worry about CPP_PLACEMARKERs. | |
1124 | (parse_arg): Empty arguments are now empty, not CPP_PLACEMARKERs. | |
1125 | (parse_args): Similarly. Update argument count tests. | |
1126 | (enter_macro_context): Return 2 to indicate an empty macro. | |
1127 | (replace_args): Don't bother pre-expanding an empty argument. | |
1128 | Handle placemarkers and ## extension during pre-expansion. | |
1129 | (cpp_get_token): Handle empty macro expansions. Don't worry | |
1130 | about CPP_PLACEMARKERs. | |
1131 | (_cpp_create_definition): Empty macros are now empty. | |
1132 | (cpp_macro_defintion): Don't special case empty macros. | |
1133 | * scan-decls.c: Don't bother with CPP_PLACEMARKERs. | |
1134 | * c-lex.c: Similarly. | |
1135 | ||
c1030c7c JM |
1136 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
1137 | ||
1138 | * gcc.texi, invoke.texi: Add new section discussing language | |
1139 | standards; link to it where appropriate; refer to ISO C instead of | |
1140 | ANSI C. | |
1141 | ||
93a77848 AO |
1142 | 2000-11-11 Alexandre Oliva <aoliva@redhat.com> |
1143 | ||
3650b695 AO |
1144 | * builtins.c (std_expand_builtin_va_start): Take PARM_BOUNDARY |
1145 | into account. | |
1146 | ||
93a77848 AO |
1147 | * config/sh/sh.h (MODES_TIEABLE_P): Don't tie SFmode to other FP |
1148 | modes. | |
1149 | ||
9a5a13c9 JM |
1150 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
1151 | ||
1152 | * gcc.texi, gcov.texi: Update dates and version numbers. | |
1153 | ||
1e608388 ZW |
1154 | 2000-11-10 Zack Weinberg <zack@wolery.stanford.edu> |
1155 | ||
1156 | * configure.in: Remove AC_PROG_LEX and AC_PROG_YACC. Look for | |
1157 | flex and bison, specifically, first in a unified build and | |
1158 | then installed on the system. | |
1159 | * Makefile.in: Set BISON to @BISON@, FLEX to @FLEX@. Rename | |
1160 | LEXFLAGS to FLEXFLAGS. Adjust ORDINARY_FLAGS_TO_PASS to | |
1161 | match. | |
1162 | ||
1163 | (collect2.o, gcc.o, prefix.o, toplev.o, alloca.o, intl.o, | |
1164 | cppdefault.o): Remove pointless sed munging of source file | |
1165 | name. | |
1166 | ||
9532e31f BS |
1167 | 2000-11-10 Bernd Schmidt <bernds@redhat.co.uk> |
1168 | ||
1169 | * reload.c (find_reloads_address_1, case POST_MODIFY): Use RELOAD_OTHER | |
1170 | for address reloads. Push replacements for REG_INC notes. | |
1171 | (regno_clobbered_p): New arg SETS. Examine SETs if it's nonzero. All | |
1172 | callers changed. | |
1173 | * reload1.c (choose_reload_regs): Registers set in the insn can't be | |
1174 | used for RELOAD_OTHER reloads. | |
1175 | ||
721de836 MM |
1176 | 2000-11-10 Mark Mitchell <mark@codesourcery.com> |
1177 | ||
1178 | * c-dump.h: New file. | |
1179 | ||
4e135bdd KG |
1180 | 2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1181 | ||
1182 | * alpha.c (check_float_value): Use memcpy, not bcopy. | |
1183 | * arm.c (output_move_double): Likewise. | |
1184 | * arm.md: Likewise. | |
1185 | * m88k.c (legitimize_operand): Likewise. | |
1186 | * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise. | |
1187 | * m88k.md: Likewise. | |
1188 | * mips.c (override_options): Likewise. | |
1189 | * mips.md: Likewise. | |
1190 | * romp.c (output_fpops): Likewise. | |
1191 | * rs6000.c (rs6000_override_options): Likewise. | |
1192 | * sh.md: Likewise. | |
1193 | * vax.c (check_float_value): Likewise. | |
1194 | ||
1195 | * emit-rtl.c (copy_rtx_if_shared, init_emit_once): Likewise. | |
1196 | * expmed.c (synth_mult): Likewise. | |
1197 | * final.c (add_bb_string): Likewise. | |
1198 | * genattr.c (main): Likewise. | |
1199 | * genattrtab.c (attr_string, simplify_cond, copy_rtx_unchanging): | |
1200 | Likewise. | |
1201 | * jump.c (thread_jumps): Likewise. | |
1202 | * prefix.c (save_string): Likewise. | |
1203 | * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Likewise. | |
1204 | * regclass.c (init_reg_sets, init_reg_sets_1): Likewise. | |
1205 | * reload1.c (reload, eliminate_regs): Likewise. | |
1206 | ||
c8abeb44 JM |
1207 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
1208 | ||
1209 | * gcc.texi (Service): Update to reflect current practice and | |
1210 | location of the GNU service directory. | |
1211 | ||
6fb85418 BS |
1212 | 2000-11-09 Bernd Schmidt <bernds@redhat.co.uk> |
1213 | ||
1214 | * regrename.c (build_def_use): Mark contents of REG_INC notes as | |
1215 | needing replacement. | |
1216 | ||
0c478921 BS |
1217 | * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Emit |
1218 | a no-op move if regs are equal. | |
1219 | * toplev.c (rest_of_compilation): Do the noop moves elimination pass | |
a8a05998 | 1220 | when calling jump after post-reload splitting. |
0c478921 | 1221 | |
3b7a2e58 JM |
1222 | 2000-11-09 Jan van Male <jan.vanmale@fenk.wau.nl> |
1223 | ||
a8a05998 ZW |
1224 | * c-tree.texi: Fix typos. |
1225 | * extend.texi: Likewise | |
1226 | * gcov.texi: Likewise | |
1227 | * rtl.texi: Likewise | |
1228 | * tm.texi: Likewise | |
3b7a2e58 | 1229 | |
59257980 HPN |
1230 | 2000-11-09 Hans-Peter Nilsson <hp@axis.com> |
1231 | ||
1232 | * c-lex.c [! NO_IMPLICIT_EXTERN_C] (cb_enter_file): Check | |
1233 | in_system_header and flags[1] before dereferencing flags[2]. | |
1234 | ||
881a8969 MH |
1235 | 2000-11-09 Matthew Hiller <hiller@redhat.com> |
1236 | ||
1237 | * reload1.c (reload_combine): Fixed calculation of | |
1238 | first_index_reg, last_index_reg. | |
1239 | ||
0a7394bc MM |
1240 | 2000-11-09 Mark Mitchell <mark@codesourcery.com> |
1241 | ||
13507bd8 MM |
1242 | * c-dump.c (dequeue_and_dump): Dump function bodies. |
1243 | ||
0a7394bc MM |
1244 | * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o. |
1245 | (c-dump.o): New target. | |
1246 | * c-common.h (flag_dump_translation_unit): New variable. | |
1247 | (C_TYPE_QUALS): New macro. | |
1248 | (strip_array_types): New function. | |
1249 | (DECL_C_BIT_FIELD): New macro. | |
1250 | (SET_DECL_C_BIT_FIELD): Likewise. | |
1251 | (CLEAR_DECL_C_BIT_FIELD): Likewise. | |
1252 | (dump_info_p): New typedef. | |
1253 | (dump_tree_fn): Likewise. | |
1254 | (lang_dump_tree): New variable. | |
1255 | (dump_node_to_file): New function. | |
1256 | * c-common.c (flag_dump_translation_unit): Define it. | |
1257 | (strip_array_types): New function. | |
1258 | * c-decl.c (c_decode_option): Handle -fdump-translation-unit. | |
a8a05998 | 1259 | * c-lang.c (finish_file): Call dump_node_to_file if |
0a7394bc MM |
1260 | flag_dump_translation_unit. |
1261 | * c-semantics.c (mark_rtl_for_local_static): Fix typo in comment. | |
1262 | * c-tree.h (DECL_C_BIT_FIELD): Remove declaration. | |
1263 | * c-dump.c: New file. | |
a8a05998 | 1264 | |
abffe289 CF |
1265 | 2000-11-09 Christopher Faylor <cgf@cygnus.com> |
1266 | ||
1267 | * config/i386/cygwin.h: Add mingw startfile prefix. | |
1268 | ||
1288c070 RH |
1269 | 2000-11-09 Richard Henderson <rth@redhat.com> |
1270 | ||
1271 | * flow.c (invalidate_mems_from_set): Split out from ... | |
1272 | (mark_set_1): ... here. | |
1273 | (try_pre_increment_1): Use it. Use propagate_block_delete_insn | |
1274 | instead of turning insn into a NOTE_INSN_DELETED. | |
1275 | ||
01702459 JM |
1276 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
1277 | ||
1278 | * extend.texi, invoke.texi: Move documentation of builtin versions | |
1279 | of C library functions to one place and update. | |
1280 | ||
30355eaa RH |
1281 | 2000-11-09 Richard Henderson <rth@redhat.com> |
1282 | ||
1283 | * fold-const.c (fold): Compare TYPE_MAIN_VARIANT rather than | |
1284 | the types themselves to discover type equivalence. | |
1285 | ||
5fcee6f3 MS |
1286 | 2000-11-09 Mike Stump <mrs@wrs.com> |
1287 | ||
1288 | * Makefile.in (distclean): Remove a few extra leftovers. | |
1289 | ||
377b6fce RH |
1290 | 2000-11-09 Richard Henderson <rth@redhat.com> |
1291 | ||
c0e3f87d RH |
1292 | * recog.c (validate_replace_rtx_1): Consider subregs when |
1293 | replacing a register with a constant inside a sign/zero_extend. | |
1294 | ||
377b6fce RH |
1295 | * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. |
1296 | ||
b52114d2 GK |
1297 | 2000-11-09 Geoffrey Keating <geoffk@redhat.com> |
1298 | ||
1299 | * c-decl.c (finish_struct): When a structure is completed, | |
1300 | check all its variant types for completeness. | |
1301 | ||
a949941c NB |
1302 | 2000-11-09 Neil Booth <neilb@earthling.net> |
1303 | ||
1304 | * cpphash.c: Move cpp_defined here from cpplib.c. | |
1305 | * cpplib.c: Update comments, move cpp_defined to cpphash.c. | |
1306 | * cpplex.c (_cpp_lex_token): Don't leave the lexer at EOL. | |
1307 | * cppmacro.c (cpp_get_token): Update comments, no need now | |
1308 | to catch the CPP_EOF meaning EOL case. | |
1309 | ||
9a0662b4 GK |
1310 | 2000-11-08 Geoffrey Keating <geoffk@redhat.com> |
1311 | ||
1312 | * config/sparc/sparc.c (sparc_va_arg): When the required alignment | |
1313 | is more than that provided, copy to a temporary. | |
1314 | ||
6c80a645 AO |
1315 | 2000-11-09 Alexandre Oliva <aoliva@redhat.com> |
1316 | ||
1317 | * mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from | |
1318 | interpreting $out as a macro assignment. | |
1319 | * Makefile.in (T_TARGET): New auxiliary macro and target. | |
1320 | (all): Add a target right in the beginning, so that we don't build | |
1321 | T_TARGET by default. | |
1322 | ||
6a4afa6c GS |
1323 | 2000-11-09 Graham Stott <grahams@redhat.com> |
1324 | ||
a8a05998 | 1325 | * config/i386/i386.md (mmx_pinsrw): Output operands in correct |
6a4afa6c GS |
1326 | order for -mintel-syntax. Remove comment now that the operand |
1327 | order has been checked. | |
1328 | (mmx_pextrw): Likewise. | |
1329 | (mmx_pshufw): Likewise. | |
1330 | ||
2dee4af1 JJ |
1331 | 2000-11-09 Jakub Jelinek <jakub@redhat.com> |
1332 | ||
1333 | * builtins.c (c_strlen): Use TREE_STRING_LENGTH - 1 for max. | |
1334 | (c_getstr): New function. | |
1335 | (expand_builtin_strstr): Do nothing if -fcheck-memory-usage. | |
1336 | If both arguments are constant string, optimize out. | |
1337 | (expand_builtin_strchr, expand_builtin_strrchr): New functions. | |
1338 | (expand_builtin_strpbrk): Use c_getstr, do nothing if | |
1339 | -fcheck-memory-usage. | |
1340 | (expand_builtin_fputs): Likewise. | |
1341 | (expand_builtin_strcmp): Add MODE argument. | |
1342 | Use even if !HAVE_cmpstrsi. | |
1343 | Optimize the case when both arguments are constant strings. | |
1344 | (expand_builtin): Adjust expand_builtin_strcmp caller. | |
1345 | Call expand_builtin_strchr and expand_builtin_strrchr. | |
1346 | * c-common.c (c_common_nodes_and_builtins): Add strchr and strrchr | |
1347 | builtins. | |
1348 | * builtins.def (BUILT_IN_STRRCHR): Add. | |
1349 | ||
97dc9fc0 GP |
1350 | 2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
1351 | ||
1352 | * fixinc/gnu-regex.c: Rename EGCS LOCAL markers to GCC LOCAL. | |
1353 | ||
2e09e75a JM |
1354 | 2000-11-09 Joseph S. Myers <jsm28@cam.ac.uk> |
1355 | ||
1356 | * calls.c (expand_call, emit_library_call_value_1), collect2.c | |
1357 | (scan_prog_file), config/a29k/a29k.c (print_operand), | |
1358 | config/sparc/sparc.c (order_regs_for_local_alloc): Use memcpy () | |
1359 | instead of bcopy (). | |
1360 | * real.h: Use memcmp () instead of bcmp (). | |
1361 | * config/m88k/m88k.c (m88k_layout_frame), config/sh/sh.c | |
1362 | (split_branches), config/sparc/sparc.c (ultra_flush_pipeline, | |
1363 | ultrasparc_sched_init, ultrasparc_sched_reorder), | |
1364 | config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Use memset () | |
1365 | instead of bzero (). | |
1366 | * config/vax/xm-xms.h (FILE_NAME_NONDIRECTORY): Use strrchr () | |
1367 | instead of rindex (). | |
1368 | * configure.in: Don't check for bzero, bcmp, index or rindex. | |
1369 | * configure, config.in: Regenerate. | |
1370 | * system.h: Don't include declarations for bzero, bcmp, index or | |
1371 | rindex. | |
1372 | * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Don't define | |
1373 | bzero, bcmp, index or rindex. | |
1374 | ||
03fb4780 CF |
1375 | Wed Nov 8 21:58:20 2000 Christopher Faylor <cgf@cygnus.com> |
1376 | ||
1377 | * config/i386/cygwin.h: Add -no-win32 switch. Separate -mno-cygwin | |
1378 | include and library paths from -mcygwin case. Parameterize some | |
1379 | declarations to avoid warnings. Use standard locations for include and | |
1380 | lib dirs. | |
1381 | ||
ca68ea18 NC |
1382 | 2000-11-08 Nick Clifton <nickc@redhat.com> |
1383 | ||
1384 | * config/arm/arm.md (mulsidi3adddi): Change output operand | |
eb68ad7c | 1385 | constraint from "=&" to "+&". |
ca68ea18 | 1386 | (umulsidi3adddi): Change output operand constraint from "=&" to |
eb68ad7c | 1387 | "+&". |
ca68ea18 | 1388 | |
c32e1e6f RH |
1389 | 2000-11-08 Richard Henderson <rth@redhat.com> |
1390 | ||
1391 | * flow.c (init_propagate_block_info): Protect the rtx stored in | |
1392 | mem_set_list from modification by find_auto_inc. | |
1393 | (mark_set_1): Likewise. | |
1394 | ||
adb84b42 NB |
1395 | 2000-11-08 Neil Booth <neilb@earthling.net> |
1396 | ||
a8a05998 ZW |
1397 | Move directive handling into the lexer itself. |
1398 | ||
1399 | * cpplex.c (_cpp_lex_token): Handle directives directly. | |
1400 | In the case of a directive interrupting a function-like | |
1401 | macro invocation, use extra_char since read_ahead is | |
1402 | used to store the '#'. Return a CPP_EOF in this case. | |
1403 | * cppmacro.c (parse_arg): No need to handle CPP_DHASH any more. | |
1404 | (cpp_get_token): Don't handle directives here. | |
1405 | * cpplib.h: Remove CPP_DHASH token type. | |
adb84b42 | 1406 | |
756d6f0c JH |
1407 | Wed Nov 8 21:53:41 MET 2000 Jan Hubicka <jh@suse.cz> |
1408 | ||
1409 | * regmove.c (combine_stack_adjustments_for_blocks): Recognize pushes | |
1410 | formed using PRE_MODIFY too. | |
1411 | ||
c39c0db3 MM |
1412 | 2000-11-08 Mark Mitchell <mark@codesourcery.com> |
1413 | ||
69908851 MM |
1414 | * c-tree.texi (VAR_DECL): Describe representation of GCC's |
1415 | extension for placing variables in particular registers. | |
1416 | ||
c39c0db3 MM |
1417 | * c-tree.texi (FUNCTION_TYPE): Clarify TYPE_ARG_TYPES for |
1418 | unprototyped C functions with no parameters. | |
1419 | ||
6cada0cd JJ |
1420 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
1421 | ||
1422 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Cast DELTA to int | |
1423 | before passing to fprintf. | |
1424 | ||
768f0669 JJ |
1425 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
1426 | ||
1427 | * function.c (expand_function_start): Cast GET_MODE_SIZE to | |
1428 | HOST_WIDE_INT before negating it. | |
1429 | ||
df6018fd JJ |
1430 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
1431 | ||
1432 | * expr.c (expand_expr) [ADDR_EXPR]: Handle when op0 is RETURN_DECL | |
1433 | passed in multiple non-contiguous locations. | |
1434 | ||
14ae1d50 | 1435 | 2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
a8a05998 | 1436 | |
14ae1d50 GP |
1437 | * README.gnat: Remove file. |
1438 | ||
673887d5 AO |
1439 | 2000-11-08 Alexandre Oliva <aoliva@redhat.com> |
1440 | ||
1441 | * mklibgcc.in (EXTRA_MULTILIB_PARTS): Generate multilib parts | |
1442 | in-place. | |
1443 | ||
66234570 RH |
1444 | 2000-11-07 Richard Henderson <rth@redhat.com> |
1445 | ||
1446 | * dwarfout.c (INSN_LABEL_FMT): Remove. | |
1447 | (output_label_die): Use ASM_GENERATE_INTERNAL_LABEL. | |
1448 | (dwarfout_label): Remove. | |
1449 | * dwarfout.h: Remove it's prototype. | |
1450 | * dwarf2out.c (INSN_LABEL_FMT): Remove. | |
1451 | (gen_label_die): Use ASM_GENERATE_INTERNAL_LABEL. | |
1452 | (dwarf2out_label): Remove. | |
1453 | * dwarf2out.h: Remove it's prototype. | |
1454 | * final.c (final_scan_insn): Don't call dwarf[2]out_label. | |
1455 | ||
81b75d96 RH |
1456 | 2000-11-07 Richard Henderson <rth@redhat.com> |
1457 | ||
cd5c4048 RH |
1458 | * config/ia64/fde-glibc.c (find_fde_for_dso): Do a binary |
1459 | search on the unwind region section. | |
1460 | ||
1461 | * config/ia64/ia64.md (movbi): Add r/r alternative. | |
1462 | (cmovdi_internal_astep): Describe all combinations of register | |
1463 | classes for sources & destinations; remove matching constraints. | |
1464 | (cmovdi_internal): Likewise. | |
1465 | ||
81b75d96 RH |
1466 | * gcc.c (default_compilers) [@cpp-output]: Add -fpreprocessed. |
1467 | ||
6dbaddf9 RH |
1468 | 2000-11-07 Richard Henderson <rth@redhat.com> |
1469 | ||
1470 | * c-lang.c (start_cdtor, finish_cdtor): New functions. | |
1471 | (finish_file): Use them in building constructor/destructor functions. | |
1472 | ||
a8a05998 | 1473 | * config/alpha/alpha.h (HAS_INIT_SECTION, LD_INIT_SWITCH, |
6dbaddf9 RH |
1474 | LD_FINI_SWITCH): Move ... |
1475 | * config/alpha/osf.h: ... here. | |
1476 | * config/alpha/alpha-interix.h: Don't undef them. | |
1477 | ||
99b13084 JO |
1478 | 2000-11-07 Jeffrey Oldham <oldham@oz.codesourcery.com> |
1479 | ||
1480 | * config/mips/t-iris6 (FPBIT): New. Added so that __unorddf2 is | |
1481 | included in libgcc.a. | |
1482 | (DPBIT): Likewise. | |
1483 | (dp-bit.c): Likewise. | |
1484 | (fp-bit.c): Likewise. | |
1485 | ||
d7cac874 NC |
1486 | 2000-11-07 Nick Clifton <nickc@redhat.com> |
1487 | ||
1488 | * config/m88k/m88k.h (GLOBAL_ASM_OP): Add missing tab. | |
1489 | (INTERNAL_ASM_OP): Add missing tab. | |
1490 | ||
961192e1 JM |
1491 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
1492 | ||
1493 | * alias.c (init_alias_analysis), calls.c (expand_call, | |
1494 | emit_library_call_value_1), combine.c (init_reg_last_arrays), | |
1495 | cse.c (new_basic_block), dbxout.c (dbxout_type), diagnostic.c | |
1496 | (init_output_buffer, set_diagnostic_context), dwarf2out.c | |
1497 | (equate_decl_number_to_die, build_abbrev_table), emit-rtl.c | |
1498 | (init_emit_once), fold-const.c (mul_double, div_and_round_double), | |
1499 | function.c (assign_parms), gcse.c (compute_can_copy, | |
1500 | alloc_gcse_mem, alloc_reg_set_mem, record_one_set, | |
1501 | compute_hash_table, compute_set_hash_table, | |
1502 | compute_expr_hash_table), genattrtab.c (optimize_attrs), global.c | |
1503 | (global_alloc, global_conflicts), haifa-sched.c (compute_trg_info, | |
1504 | clear_units, schedule_block), integrate.c (initialize_for_inline, | |
1505 | expand_inline_function), jump.c (thread_jumps), local-alloc.c | |
1506 | (local_alloc), loop.c (combine_movables, count_loop_regs_set, | |
1507 | load_mems_and_recount_loop_regs_set), print-tree.c (debug_tree), | |
1508 | regclass.c (init_reg_sets, init_reg_sets_1, regclass, | |
1509 | record_reg_classes, allocate_reg_info), reload.c | |
1510 | (get_secondary_mem, remove_address_replacements, find_reloads), | |
1511 | reload1.c (reload, set_initial_label_offsets, finish_spills, | |
1512 | reload_as_needed, choose_reload_regs_init, | |
1513 | reload_cse_simplify_operands), reorg.c (dbr_schedule), sbitmap.c | |
1514 | (sbitmap_zero), simplify-rtx.c (simplify_plus_minus), ssa.c | |
1515 | (rename_registers), stmt.c (expand_end_case), unroll.c | |
1516 | (unroll_loop), varray.c (varray_grow), objc/objc-act.c: Use memset | |
1517 | () instead of bzero (). | |
1518 | ||
e3cc3581 NB |
1519 | 2000-11-07 Neil Booth <neilb@earthling.net> |
1520 | ||
1521 | * cp/lang-specs.h: Fix -save-temps specs under USE_CPPLIB. | |
1522 | ||
f8136648 KG |
1523 | 2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1524 | ||
1525 | * c-common.c (combine_strings): Only warn about long strings for C. | |
1526 | ||
71fd5a51 R |
1527 | Tue Nov 7 19:44:30 2000 J"orn Rennecke <amylaar@redhat.com> |
1528 | ||
1529 | * combine.c (distribute_notes): Fix typo in last change. | |
1530 | ||
bdaa0181 GK |
1531 | 2000-11-07 Geoff Keating <geoffk@redhat.com> |
1532 | ||
1533 | * config/rs6000/rs6000.md (movdi_internal32+1): Use | |
1534 | operand_subreg_force rather than gen_rtx_SUBREG. | |
1535 | (movdi_internal32+2): Likewise. | |
1536 | ||
bc56a125 PB |
1537 | 2000-11-07 Philip Blundell <philb@gnu.org> |
1538 | ||
1539 | * configure.in (arm*-*-linuxaout*): Obsolete, deleted. | |
1540 | * config/arm/linux-aout.h: Likewise. | |
1541 | * configure: Regenerate. | |
1542 | ||
a71d3613 PT |
1543 | 2000-11-07 Philipp Thomas <pthomas@suse.de> |
1544 | ||
1545 | * ABOUT-GCC-NLS: Remove the patch for gettext as it has been | |
1546 | accepted my the gettext maintainer. | |
1547 | ||
26a87cab KG |
1548 | 2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1549 | ||
1550 | * builtins.c (expand_builtin_strpbrk): New function. | |
1551 | (expand_builtin): Handle BUILT_IN_STRPBRK. | |
1552 | ||
1553 | * builtins.def (BUILT_IN_STRPBRK): New entry. | |
1554 | ||
1555 | * c-common.c (c_common_nodes_and_builtins): Declare builtin | |
1556 | strpbrk. | |
1557 | ||
ace54f91 DB |
1558 | 2000-11-07 David O'Brien <obrien@dragon.nuxi.com> |
1559 | ||
1560 | * config/alpha/freebsd.h: New file -- FreeBSD/alpha architecture file. | |
1561 | * POTFILES.in: Add config/alpha/freebsd.h | |
1562 | * configure.in: Add alpha*-freebsd support. | |
1563 | * configure: Regenerate. | |
1564 | ||
0dec5df9 JM |
1565 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
1566 | ||
1567 | * tree.c (build_common_tree_nodes_2): Make va_list_type_node be a | |
1568 | copy of ptr_type_node rather than ptr_type_node itself. | |
1569 | ||
bf103ec2 R |
1570 | Tue Nov 7 06:29:24 2000 J"orn Rennecke <amylaar@redhat.com> |
1571 | ||
1572 | * combine.c (recog_for_combine): Allocate uninitialized vector with | |
1573 | rtvec_alloc. | |
1574 | * recog.c (apply_change_group): Likewise. | |
1575 | ||
c762163e R |
1576 | Tue Nov 7 06:24:02 2000 J"orn Rennecke <amylaar@redhat.com> |
1577 | ||
1578 | * flow.c (verify_local_live_at_start): Back out last change. | |
1579 | * combine.c (distribute_notes): When parts of a hard reg are | |
1580 | neither set nor referenced in PLACE, search backwards for a | |
1581 | place to put a REG_UNUSED note; if none found, ask for flow | |
1582 | info refresh. | |
1583 | ||
f34c06e5 R |
1584 | Mon Nov 6 20:08:13 2000 J"orn Rennecke <amylaar@redhat.com> |
1585 | ||
1586 | * reload1.c (eliminate_regs_in_insn): Allow a set to be a PARALLEL | |
1587 | with (clobber (match_scratch...)). | |
1588 | ||
2b892489 NB |
1589 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1590 | ||
1591 | * c-lex.c (init_c_lex): If cpp_start_read fails, exit with | |
1592 | error status. | |
1593 | ||
ea33bfc5 NB |
1594 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1595 | ||
a8a05998 | 1596 | * tradcpp.c (special_symbol): Assign an null string rather |
ea33bfc5 NB |
1597 | than writing to an unallocated buffer. |
1598 | ||
56051c0a NB |
1599 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1600 | ||
1601 | * cpplex.c (_cpp_equiv_tokens): Check arg_no in the | |
1602 | CPP_MACRO_ARG case. | |
1603 | ||
6c53ebff NB |
1604 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1605 | ||
1606 | * c-lex.c (c_lex): Replace tok.val.aux with tok.val.c or | |
1607 | tok.val.arg_no as appropriate. | |
1608 | * cppexp.c (lex): Similarly. | |
1609 | * cpplex.c (_cpp_lex_token, cpp_spell_token, cpp_output_token, | |
1610 | cpp_equiv_tokens, cpp_can_paste, cpp_avoid_paste): Similarly. | |
1611 | * cppmacro.c (stringify_arg, replace_args, lex_expansion_token, | |
1612 | cpp_macro_definition): Similarly. | |
1613 | * cpplib.h (struct cpp_token): Replace aux with c and arg_no. | |
1614 | ||
8b1c5fd0 JJ |
1615 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
1616 | ||
1617 | * config/sparc/sparc.md (adddi3): If operands[2] is 4096 and | |
1618 | operands[1] is constant, calculate the sum and generate movdi. | |
1619 | (addsi3): Similarly. Use SImode in call to arith_4096_operand. | |
1620 | (subsi3): Use SImode in call to arith_4096_operand. | |
1621 | ||
a0115140 JJ |
1622 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
1623 | ||
1624 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): On sparc64 we need to | |
1625 | adjust %o1, not %o0 if the return type is large structure. | |
1626 | ||
9ea2bda9 JJ |
1627 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
1628 | ||
1629 | * config/sparc/sparc.md (smulsi3_highpart_v8plus, ashldi3_v8plus+1, | |
1630 | update_return, flush, flushdi, ffssi2, ffsdi2): Fix output formatting. | |
1631 | ||
1cf7847f DC |
1632 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
1633 | ||
1634 | * expmed.c (expand_divmod): For signed divide by 2, prefer | |
1635 | a branch and fewer shifts if branches are very cheap. | |
1636 | ||
436a88a6 JM |
1637 | 2000-11-05 Joseph S. Myers <jsm28@cam.ac.uk> |
1638 | ||
1639 | * Makefile.in: Remove all targets related to building | |
1640 | distributions and diffs, or INSTALL. | |
1641 | * INSTALL, install1.texi: Remove. | |
1642 | * configure.in: Remove mention of distdir. | |
1643 | * configure: Regenerate. | |
1644 | * objc/Make-lang.in: Remove mention of distdir. | |
1645 | ||
9cf11a47 NB |
1646 | 2000-11-04 Neil Booth <neilb@earthling.net> |
1647 | ||
1648 | * cpp.texi: Update for _Pragma. | |
1649 | ||
f148ca88 JM |
1650 | 2000-11-04 Joseph S. Myers <jsm28@cam.ac.uk> |
1651 | ||
1652 | * gcc.texi (Contributing): Update URL for projects web page. | |
1653 | ||
16eb2788 NB |
1654 | 2000-11-04 Neil Booth <neilb@earthling.net> |
1655 | ||
a8a05998 ZW |
1656 | * cpplex.c (parse_string): Don't allow multiline strings in |
1657 | #include family directives. | |
16eb2788 | 1658 | |
9232b7d9 NB |
1659 | 2000-11-04 Neil Booth <neilb@earthling.net> |
1660 | ||
1661 | * cpplib.c (do_line): Only warn pedantically if not reading | |
a8a05998 | 1662 | preprocessed input. |
9232b7d9 | 1663 | |
f132f529 AO |
1664 | 2000-11-04 Alexandre Oliva <aoliva@redhat.com> |
1665 | ||
1666 | * calls.c (emit_call_1) [sibcall_pop]: Use n_popped instead of | |
1667 | RETURN_POPS_ARGS(). | |
1668 | ||
0e9295cf ZW |
1669 | 2000-11-03 Zack Weinberg <zack@wolery.stanford.edu> |
1670 | ||
1671 | * builtins.c (expand_builtin_strlen): Remove unused mode | |
1672 | argument. | |
1673 | * gcc.c (process_command): Remove unused variable. | |
1674 | * fold-const.c: Include expr.h. | |
1675 | * recog.c: Include reload.h. | |
1676 | * Makefile.in (recog.o, fold-const.o): Update deps. | |
1677 | ||
f2682362 GK |
1678 | 2000-11-02 Geoffrey Keating <geoffk@cygnus.com> |
1679 | ||
1680 | * fixinc/gnu-regex.c: Change 'CYGNUS LOCAL' to 'EGCS LOCAL'. | |
1681 | ||
25f80eae MM |
1682 | Fri Nov 3 13:41:04 2000 Mark P Mitchell <mark@codesourcery.com> |
1683 | ||
1684 | * config/mips/iris6.h (SUBTARGET_CC1_SPEC): Remove -static | |
1685 | handling. | |
1686 | (STARTFILE_SPEC): Likewise. | |
1687 | (LINK_SPEC): Likewise. | |
1688 | ||
426159a4 KG |
1689 | 2000-11-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1690 | ||
1691 | * Makefile.in (fold-const.o): Depend on $(GGC_H), not ggc.h. | |
1692 | (toplev.o): Likewise for $(LOOP_H)/loop.h and $(REGS_H)/regs.h. | |
1693 | (simplify-rtx.o): Likewise for $(GGC_H)/ggc.h. | |
1694 | ||
da61dec9 JM |
1695 | 2000-11-03 Joseph S. Myers <jsm28@cam.ac.uk> |
1696 | ||
1697 | * c-decl.c (duplicate_decls, copy_lang_decl), dwarfout.c | |
1698 | (dwarfout_line), gcc.c (main, save_string), tree.c (init_obstacks, | |
1699 | perm_calloc, get_identifier, maybe_get_identifier, | |
1700 | real_value_from_int_cst, simple_cst_equal), varasm.c | |
1701 | (assemble_name, assemble_real, immed_real_const_1, | |
1702 | compare_constant_1, decode_rtx_const, output_constant_pool): Use | |
1703 | strrchr () instead of rindex (). Use memcmp () instead of bcmp | |
1704 | (). Use memcpy () instead of bcopy (). Use memset () instead of | |
1705 | bzero (). | |
1706 | ||
def3263a NS |
1707 | 2000-11-03 Nathan Sidwell <nathan@codesourcery.com> |
1708 | ||
1709 | * cppfiles.c (open_file): If already read, then don't reopen. | |
1710 | Immediately close an empty file. | |
1711 | ||
94e9dc13 BS |
1712 | 2000-11-01 Bernd Schmidt <bernds@redhat.co.uk> |
1713 | ||
1714 | * expr.h (fold_builtin): Move declaration... | |
1715 | * tree.h (fold_builtin): ... here. | |
1716 | ||
6c6a14b5 R |
1717 | Fri Nov 3 05:41:07 2000 J"orn Rennecke <amylaar@redhat.com> |
1718 | ||
1719 | * flow.c (verify_local_live_at_start): Allow hard regs to die. | |
1720 | ||
5b569332 NB |
1721 | 2000-11-02 Neil Booth <neilb@earthling.net> |
1722 | ||
1723 | config: | |
1724 | * a29k/a29k.h, a29k/unix.h, a29k/vx29k.h, | |
1725 | alpha/alpha-interix.h, alpha/alpha.h, alpha/linux.h, | |
1726 | alpha/openbsd.h, alpha/osf.h, alpha/vms.h, alpha/vxworks.h, | |
1727 | alpha/win-nt.h, arc/arc.h, arm/arm.h, arm/conix-elf.h, | |
1728 | arm/linux-aout.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h, | |
1729 | arm/riscix1-1.h, arm/semiaof.h, arm/unknown-elf-oabi.h, arm/vxarm.h, | |
1730 | c4x/rtems.h, clipper/clix.h, convex/convex.h, d30v/d30v.h, | |
1731 | elxsi/elxsi.h, fr30/fr30.h, h8300/h8300.h, i370/linux.h, i370/mvs.h, | |
1732 | i370/oe.h, i386/386bsd.h, i386/aix386ng.h, i386/beos-elf.h, | |
1733 | i386/bsd386.h, i386/crtdll.h, i386/cygwin.h, i386/dgux.h, | |
1734 | i386/djgpp-rtems.h, i386/djgpp.h, i386/freebsd-aout.h, i386/freebsd.h, | |
1735 | i386/gnu.h, i386/i386-interix.h, i386/i386.h, i386/linux-aout.h, | |
1736 | i386/linux-oldld.h, i386/linux.h, i386/lynx-ng.h, i386/lynx.h, | |
1737 | i386/mach.h, i386/mingw32.h, i386/moss.h, i386/netbsd.h, | |
1738 | i386/netware.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h, | |
1739 | i386/osfelf.h, i386/osfrose.h, i386/ptx4-i.h, i386/rtems.h, | |
1740 | i386/rtemself.h, i386/sco.h, i386/sco4.h, i386/sco4dbx.h, i386/sco5.h, | |
1741 | i386/scodbx.h, i386/sequent.h, i386/sol2.h, i386/sun.h, i386/sysv3.h, | |
1742 | i386/sysv4.h, i386/uwin.h, i386/vsta.h, i386/vxi386.h, i386/win-nt.h, | |
1743 | i386/win32.h, i860/fx2800.h, i860/i860.h, i860/mach.h, i860/sysv3.h, | |
1744 | i860/sysv4.h, i960/i960.h, i960/rtems.h, i960/vx960-coff.h, | |
1745 | ia64/ia64.h, ia64/linux.h, m32r/m32r.h, m68k/3b1.h, m68k/3b1g.h, | |
1746 | m68k/a-ux.h, m68k/altos3068.h, m68k/amix.h, m68k/apollo68.h, | |
1747 | m68k/crds.h, m68k/ctix.h, m68k/dpx2.h, m68k/hp2bsd.h, m68k/hp320.h, | |
1748 | m68k/hp3bsd.h, m68k/hp3bsd44.h, m68k/isi.h, m68k/linux-aout.h, | |
1749 | m68k/linux.h, m68k/lynx-ng.h, m68k/lynx.h, m68k/m68kemb.h, | |
1750 | m68k/m68kv4.h, m68k/mot3300.h, m68k/netbsd.h, m68k/news.h, | |
1751 | m68k/next.h, m68k/openbsd.h, m68k/pbb.h, m68k/plexus.h, m68k/rtems.h, | |
1752 | m68k/rtemself.h, m68k/sun2.h, m68k/sun3.h, m68k/sun3mach.h, | |
1753 | m68k/tower-as.h, m68k/tower.h, m68k/vxm68k.h, m88k/dgux.h, | |
1754 | m88k/dolph.h, m88k/luna.h, m88k/m88k-aout.h, m88k/m88k-coff.h, | |
1755 | m88k/openbsd.h, m88k/sysv3.h, m88k/sysv4.h, mips/bsd-4.h, | |
1756 | mips/bsd-5.h, mips/dec-bsd.h, mips/dec-osf1.h, mips/gnu.h, | |
1757 | mips/iris3.h, mips/iris5.h, mips/iris6.h, mips/linux.h, mips/mips.h, | |
1758 | mips/netbsd.h, mips/news4.h, mips/news5.h, mips/nws3250v4.h, | |
1759 | mips/openbsd.h, mips/osfrose.h, mips/rtems64.h, mips/sni-svr4.h, | |
1760 | mips/svr3-4.h, mips/svr3-5.h, mips/svr4-4.h, mips/svr4-5.h, | |
1761 | mips/ultrix.h, ns32k/encore.h, ns32k/merlin.h, ns32k/netbsd.h, | |
1762 | ns32k/ns32k.h, ns32k/pc532-mach.h, ns32k/pc532.h, ns32k/sequent.h, | |
1763 | ns32k/tek6000.h, ns32k/tek6100.h, ns32k/tek6200.h, pa/pa-hiux.h, | |
1764 | pa/pa-hpux.h, pa/pa-hpux7.h, pa/pa-linux.h, pa/pa-osf.h, | |
1765 | pa/pa-pro-end.h, pa/pa.h, pa/rtems.h, pj/linux.h, pj/pj.h, | |
1766 | romp/romp.h, rs6000/aix.h, rs6000/aix31.h, rs6000/aix41.h, | |
1767 | rs6000/aix43.h, rs6000/beos.h, rs6000/eabi.h, rs6000/eabisim.h, | |
1768 | rs6000/linux.h, rs6000/lynx.h, rs6000/mach.h, rs6000/rtems.h, | |
1769 | rs6000/sysv4.h, rs6000/vxppc.h, sh/elf.h, sh/linux.h, sh/rtems.h, | |
1770 | sh/rtemself.h, sh/sh.h, sparc/aout.h, sparc/elf.h, sparc/linux-aout.h, | |
1771 | sparc/linux.h, sparc/linux64.h, sparc/lite.h, sparc/litecoff.h, | |
1772 | sparc/liteelf.h, sparc/lynx-ng.h, sparc/lynx.h, sparc/netbsd.h, | |
1773 | sparc/openbsd.h, sparc/pbd.h, sparc/rtems.h, sparc/rtemself.h, | |
1774 | sparc/sol2-sld-64.h, sparc/sol2.h, sparc/sp64-aout.h, | |
1775 | sparc/sp64-elf.h, sparc/sp86x-aout.h, sparc/sp86x-elf.h, | |
1776 | sparc/sparc.h, sparc/sysv4.h, sparc/vxsim.h, sparc/vxsparc.h, | |
1777 | v850/rtems.h, vax/netbsd.h, vax/openbsd.h, vax/ultrix.h, vax/vax.h, | |
1778 | vax/vaxv.h, vax/vms.h, we32k/we32k.h | |
a8a05998 | 1779 | |
5b569332 NB |
1780 | Replace -A() with -A=, the new assertion syntax. |
1781 | ||
03afaf36 R |
1782 | Thu Nov 2 21:52:35 2000 J"orn Rennecke <amylaar@redhat.com> |
1783 | ||
1784 | * combine.c (distribute_notes): Use rtx_equal_p to check elim_i2 / | |
1785 | elim_i1. | |
1786 | In REG_DEAD handling: When handling parts of multi-hard-reg hard | |
1787 | registers, increment the loop counter by the size of the parts; | |
1788 | use recursion to handle individual parts. | |
1789 | ||
04e3be98 NB |
1790 | 2000-11-02 Neil Booth <neilb@earthling.net> |
1791 | ||
1792 | * configure.in: Make integrated CPP the default. | |
1793 | * configure: Regenerate. | |
1794 | ||
0192d704 R |
1795 | Thu Nov 2 19:20:12 2000 J"orn Rennecke <amylaar@redhat.com> |
1796 | ||
1797 | * reload.c (find_equiv_reg): Test all hard registers for membership | |
1798 | in the requested class. | |
1799 | ||
9473c522 JM |
1800 | 2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk> |
1801 | ||
1802 | * collect2.c (main, write_c_file_stat), gcc.c (translate_options, | |
1803 | process_command, main), gcov.c (open_files, output_data), tlink.c | |
1804 | (frob_extension, scan_linker_output), toplev.c | |
1805 | (file_name_nondirectory): Use strchr () and strrchr () instead of | |
1806 | index () and rindex (). | |
1807 | ||
0304bbad JM |
1808 | 2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk> |
1809 | ||
1810 | * c-common.c (get_flag_spec, check_format_info_main, | |
1811 | check_format_types): Use strchr () instead of index (). Compare | |
1812 | against error_mark_node instead of comparing the TREE_CODE against | |
1813 | ERROR_MARK. | |
1814 | ||
23356f93 ZW |
1815 | 2000-11-02 Zack Weinberg <zackw@Stanford.EDU> |
1816 | ||
a8a05998 ZW |
1817 | Integrated CPP. |
1818 | ||
1819 | * c-lex.c (init_c_lex): Update cpp_start_read call. | |
1820 | (cb_ident): Update for new callback prototype. | |
1821 | (cb_def_pragma): Update for new cpp_get_token prototype. | |
1822 | (c_lex): Similarly. Use cpp_get_line. | |
1823 | ||
1824 | * c-parse.in (finish_parse): Update for new cpp_finish | |
1825 | prototype. | |
1826 | ||
1827 | * cp/lex.c (finish_parse): Similarly. | |
23356f93 | 1828 | |
7a099817 GK |
1829 | 2000-11-01 Geoff Keating <geoffk@cygnus.com> |
1830 | ||
1831 | * machmode.def: Add V16QImode. | |
1832 | ||
a97c9600 RH |
1833 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1834 | ||
1835 | * dwarf2out.c (loc_descriptor_from_tree): Check for null result | |
1836 | from rtl_for_decl_location. | |
1837 | (add_location_or_const_value_attribute): Likewise. | |
1838 | ||
a0a9606d NB |
1839 | 2000-11-01 Neil Booth <neilb@earthling.net> |
1840 | ||
a8a05998 ZW |
1841 | * cpplib.c (run_directive): Use correct line number for output |
1842 | of _Pragma. Remember any in-progress directive. | |
1843 | ||
1844 | * gcc.dg/cpp/vararg2.c, gcc.dg/cpp/_Pragm1.c: New tests. | |
a0a9606d | 1845 | |
ba89764a RH |
1846 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1847 | ||
1848 | * stmt.c (expand_start_null_loop): Set continue_label. | |
1849 | ||
b0b3afb2 BS |
1850 | 2000-11-01 Bernd Schmidt <bernds@redhat.co.uk> |
1851 | ||
1852 | * builtins.c (fold_builtin_constant_p, fold_builtin): New functions. | |
1853 | (expand_builtin_constant_p): Move parts of the code into | |
1854 | fold_builtin_constant_p. | |
1855 | (expand_builtin_strlen): Move parts of the code into fold_builtin. | |
1856 | * expr.h (fold_builtin): Declare. | |
1857 | * fold-const.c (fold): Handle builtin calls. | |
1858 | ||
1859 | * c-typeck.c (build_function_call): Call fold on the CALL_EXPR. | |
1860 | ||
f0de0c5d RH |
1861 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1862 | ||
1863 | * stmt.c (expand_start_null_loop): New. | |
a8a05998 | 1864 | (expand_end_null_loop): New. |
f0de0c5d RH |
1865 | * c-semantics.c (genrtl_do_stmt): Use them. |
1866 | * tree.h: Declare them. | |
1867 | ||
3a59c77c RH |
1868 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1869 | ||
1870 | * cppmain.c (scan_buffer): Don't avoid paste for assembly. | |
1871 | ||
12c4f523 NB |
1872 | 2000-11-01 Neil Booth <neilb@earthling.net> |
1873 | ||
1874 | * c-parse.in (_yylex): Remove CPP_BACKSLASH case. | |
1875 | * cp/spew.c: Similarly. | |
1876 | * cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER. | |
1877 | * cppmacro.c (stringify_arg): Similarly. | |
1878 | * cpplib.h (CPP_BACKSLASH): Delete. | |
1879 | ||
78e7629e KG |
1880 | 2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1881 | ||
1882 | * builtins.c (expand_builtin_strstr): New function. | |
1883 | (expand_builtin): Handle BUILT_IN_STRSTR and BUILT_IN_STRCHR. | |
1884 | ||
1885 | * builtins.def (BUILT_IN_STRSTR, BUILT_IN_STRCHR): New entries. | |
1886 | ||
1887 | * c-common.c (c_common_nodes_and_builtins): Declare builtin strstr | |
1888 | and builtin strchr. | |
1889 | ||
32ee391b RH |
1890 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1891 | ||
1892 | * config/i386/i386.c (fcmov_comparison_operator): Check for | |
1893 | CCFPmode or CCFPUmode instead of CCmode. | |
1894 | (ix86_expand_fp_movcc): Call ix86_expand_setcc for most | |
1895 | unordered operations as well. | |
1896 | ||
5f10ef5b RH |
1897 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1898 | ||
1899 | * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead | |
1900 | of integer_zero_node. | |
1901 | ||
d599b81f RH |
1902 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1903 | ||
1904 | * c-semantics.c (genrtl_do_stmt): Special case do/while(0). | |
1905 | ||
1426f761 NC |
1906 | 2000-10-31 Nick Clifton <nickc@redhat.com> |
1907 | ||
1908 | * config/arm/unknown-elf.h (UNIQUE_SECTION_P): Do not allow | |
1909 | -fdata-sections to override the section attribute of a DECL. | |
1910 | ||
a8c0159a CD |
1911 | 2000-10-31 Chris Demetriou <cgd@sibyte.com> |
1912 | ||
1913 | * libgcc2.c (__shtab): Remove __shtab variable. | |
1914 | * libgcc-std.ver (GCC_3.0): Remove __shtab from symbol list. | |
1915 | * Makefile.in (LIB2FUNCS): Remove _shtab from list of library | |
1916 | members. | |
1917 | ||
8215347e JW |
1918 | 2000-10-31 Jim Wilson <wilson@redhat.com> |
1919 | ||
1920 | * defaults.h (ASM_OUTPUT_DEBUG_LABEL): New. | |
1921 | * tm.texi (ASM_OUTPUT_DEBUG_LABEL): Document. | |
1922 | * dwarf2out.c (dwarf2out_begin_block): Use ASM_OUTPUT_DEBUG_LABEL | |
1923 | instead of ASM_OUTPUT_INTERNAL_LABEL. | |
1924 | (dwarf2out_end_block, dwarf2out_label): Likewise. | |
1925 | * final.c (final_scan_insn, case NOTE_INSN_DELETED_LABEL): Likewise | |
1926 | * config/ia64/ia64.h (ASM_OUTPUT_DEBUG_LABEL): Define. | |
a8a05998 | 1927 | |
d8041cc8 RH |
1928 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1929 | ||
1930 | * dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr. | |
1931 | (size_of_locs): Set it. | |
1932 | (output_loc_operands): Use it to compute branch displacement. | |
1933 | (int_loc_descriptor): New. | |
1934 | (mem_loc_descriptor): Dereference memory in the proper size. | |
1935 | Use DW_OP_plus_uconst when possible. Use int_loc_descriptor. | |
1936 | (loc_descriptor_from_tree): New. | |
1937 | (rtl_for_decl_location): Break out from ... | |
1938 | (add_location_or_const_value_attribute): ... here. | |
1939 | (add_bound_info): Use loc_descriptor_from_tree. | |
1940 | ||
86368122 NB |
1941 | 2000-10-31 Neil Booth <neilb@earthling.net> |
1942 | ||
1943 | * cpp.texi: Update for new command line assertion syntax. | |
1944 | * cpplib.c (cpp_define): Simplify a bit. | |
1945 | (cpp_assert, cpp_unassert): Use handle_assertion. | |
1946 | (handle_assertion): New function; accept new command line | |
1947 | syntax with '='. | |
1948 | * testsuite/gcc.dg/cpp/assert3.c: New tests. | |
1949 | ||
e1998242 NB |
1950 | 2000-10-31 Neil Booth <neilb@earthling.net> |
1951 | ||
1952 | * cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if | |
1953 | undefined. Remove #ifdef check. | |
1954 | * config/i386/sol2.h, config/rs6000/sol2.h, config/sparc/sol2.h: | |
1955 | Define STDC_0_IN_SYSTEM_HEADERS to 1. | |
1956 | ||
7e08e190 JH |
1957 | 2000-10-31 Jan Hubicka <jh@suse.cz> |
1958 | Jakub Jelinek <jakub@redhat.com> | |
1959 | ||
1960 | * config/i386/i386.h: Clarify CCNOmode description in comment. | |
1961 | (EXTRA_CC_MODES): Remove CCRCmode. | |
1962 | * config/i386/i386.c (ix86_comparison_operator): Remove CCRCmode. | |
1963 | (put_condition_code, ix86_match_ccmode): Likewise. | |
1964 | (ix86_cc_mode): Likewise. Fix comment. | |
1965 | (ix86_expand_strlensi_unroll_1): *rc patterns are gone. | |
1966 | * config/i386/i386.md: Add unspec 12 description. | |
1967 | (adddi3 split): Use unspec 12 instead of CCRCmode. | |
1968 | (addsi3_carry_rc): Remove. | |
1969 | (addsi3_cc, addqi3_cc): New patterns. | |
1970 | (addsi_3): Swap operands, match CCZmode. | |
1971 | (addsi_4): Rewritten. | |
1972 | (addsi_5): Renamed from addsi_6. | |
1973 | (addsi_6): Removed. | |
1974 | (addhi_3): Swap operands, match CCZmode. | |
1975 | (addhi_4): Rewritten. | |
1976 | (addhi_5): Renamed from addhi_6. | |
1977 | (addhi_6): Removed. | |
1978 | (addqi_3): Swap operands, match CCZmode. | |
1979 | (addqi_4): Rewritten. | |
1980 | (addqi_5): Renamed from addqi_6. Use =q constraint for clobber. | |
1981 | (subsi3_carry_rc): Removed. | |
1982 | (iorqi_3): Use =q constraint for clobber. | |
1983 | (xorqi_cc_2): Likewise. | |
1984 | (negdi2_1 split): Don't use CCRCmode, use ltu instead of gtu. | |
1985 | (x86_movsicc_0_m1_rc): Removed. | |
1986 | (cmp?i peepholes): Remove neg. Use CCGCmode instead of CCRCmode. | |
1987 | ||
93cc1c69 JM |
1988 | 2000-10-31 Joseph S. Myers <jsm28@cam.ac.uk> |
1989 | ||
1990 | * c-typeck.c (build_unary_op): If pedantic, pedwarn for increment | |
1991 | and decrement of complex types. | |
1992 | ||
bcb38cc1 KG |
1993 | 2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1994 | ||
1995 | * builtins.c (expand_builtin_fputs): When deleting NOP calls to | |
1996 | builtin fputs, ensure we still evaluate the stream in case it | |
1997 | has side-effects. | |
1998 | ||
681cb233 JJ |
1999 | 2000-10-31 Jakub Jelinek <jakub@redhat.com> |
2000 | ||
2001 | * expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0) | |
2002 | to expand_shift. | |
2003 | ||
4b9580a5 R |
2004 | Tue Oct 31 15:33:27 2000 J"orn Rennecke <amylaar@redhat.com> |
2005 | ||
2006 | * sh-protos.h (reg_no_subreg_operand, emit_fpscr_use): Don't declare. | |
2007 | (fp_extended_operand, emit_fpscr_use): Likewise. | |
2008 | * sh.c (reg_no_subreg_operand, fp_extended_operand): Delete functions. | |
2009 | (fpul_operand): New function. | |
2010 | * sh.h (PREDICATE_CODES): Remove reg_no_subreg_operand and | |
2011 | fp_extended_operand. Add fpul_operand. | |
2012 | * sh.md (mulsf3, mulsf3_i4): Use fp_arith_reg_operand for "f" operands. | |
2013 | (mulsf3_ie, macsf3, cmpgtsf_t, cmpeqsf_t, ieee_ccmpeqsf_t): Likewise. | |
2014 | (cmpgtsf_t_i4, cmpeqsf_t_i4, ieee_ccmpeqsf_t_4, negsf2): Likewise. | |
2015 | (negsf2_i, sqrtsf2, sqrtsf2_i, abssf2, abssf2_i, adddf3): Likewise. | |
2016 | (adddf3_i, subdf3, subdf3_i, muldf3, muldf3_i, divdf3): Likewise. | |
2017 | (divdf3_i): Likewise. | |
2018 | (floatsisf2): Likewise. Use fpul_operand for 'y' operand. | |
2019 | (floatsisf2_i4, floatsisf2_ie, fix_truncsfsi2): Likewise. | |
2020 | (fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i): Likewise. | |
2021 | (fix_truncdfsi2, fix_truncdfsi2_i, extendsfdf2): Likewise. | |
2022 | (extendsfdf2_i4, truncdfsf2, truncdfsf2_i4): Likewise. | |
2023 | ||
332316cd BS |
2024 | 2000-10-31 Bernd Schmidt <bernds@redhat.co.uk> |
2025 | ||
a8a05998 | 2026 | * config/i386/i386.c (ix86_init_builtins): Correct return type |
332316cd BS |
2027 | building v4hi_ftype_v4hi_int_int tree node. |
2028 | (ix86_expand_builtin): Use correct operand numbers 0 and 1. | |
2029 | Copy operand 0 into a Pmode register, don't generate a MEM rtx. | |
2030 | ||
2031 | * config/i386/i386.md (sse_movntdi): Use mmx register constraint | |
2032 | for operand 1. | |
2033 | (mmx__uavgv8qi3): Correct insn mnemonic. | |
2034 | (mmx_psadbw): Correct insn mnemonic. Use V8QI mode for operands 1 and 2. | |
2035 | (mmx_punpckhwd): Correct insn mnemonic. | |
2036 | (mmx_punpckhdq): Likewise. | |
2037 | (mmx_punpcklwd): Likewise. | |
2038 | (mmx_punpckldq): Likewise. | |
2039 | (prefetch): Use immediare_operand and 'n' constraint for operand 1. | |
2040 | Renumber case labels to match the _mm_prefetch constants defined in | |
2041 | xmmintrin.h. | |
2042 | ||
1d766db0 BS |
2043 | * recog.c (split_all_insns): Don't try to call cleanup_subreg_operands |
2044 | if the splitter didn't emit new insns. | |
2045 | Make sure we call cleanup_subreg_operands even when splitting the last | |
2046 | insn in a basic block. | |
2047 | ||
8bb16620 BS |
2048 | * invoke.texi (Debugging Options): Describe -do. |
2049 | * toplev.c (enum_dump_file_index): New entry DFI_postreload. | |
2050 | (dump_file): Likewise. | |
2051 | (rest_of_compilation): Split .greg dump into .greg and .postreload. | |
2052 | ||
a5c3cccd NB |
2053 | 2000-10-30 Neil Booth <neilb@earthling.net> |
2054 | ||
2055 | * cppfiles.c (stack_include_file): Check for stacked contexts | |
2056 | here. | |
2057 | * cpphash.h (_cpp_do__Pragma): New prototype. | |
2058 | * cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table. | |
2059 | ||
2060 | * cpplex.c (skip_escaped_newlines): Only process trigraphs and | |
2061 | escaped newlines if !(buffer->from_stage3). | |
2062 | (_cpp_lex_token): Warn about missing newlines iff | |
2063 | !buffer->from_stage3. | |
2064 | ||
2065 | * cpplib.c (get__Pragma_string, destringize, | |
2066 | _cpp_do__Pragma): New functions. | |
2067 | (run_directive): Set output_line for _Pragma to avoid line | |
2068 | markers in output. Set from_stage3 and prevent macro expansion | |
2069 | for _Pragma and command-line options. Check buffer exhaustion. | |
2070 | (cpp_push_buffer): Don't check for stacked macro contexts, as | |
2071 | this is perfectly legitimate for _Pragma. Move the check to | |
2072 | stack_include_file instead. Set from_stage3 iff buffer is | |
2073 | preprocessed input. | |
2074 | ||
2075 | * cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments | |
2076 | unsigned. New boolean from_stage3. | |
2077 | (struct spec_nodes): Add n__Pragma. | |
2078 | ||
2079 | * cppmacro.c (enter_macro_context): Flip sense of return value. | |
2080 | (_cpp_get_token): Handle _Pragma operator. | |
2081 | ||
dbdaea41 PE |
2082 | 2000-10-30 Phil Edwards <pme@sources.redhat.com> |
2083 | ||
2084 | * gcc.texi: The C++ standard isn't "draft" anymore. | |
2085 | ||
8a47978d MM |
2086 | 2000-10-30 Mark Mitchell <mark@codesourcery.com> |
2087 | ||
2088 | * cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID. | |
2089 | ||
1641a823 NB |
2090 | 2000-10-29 Neil Booth <neilb@earthling.net> |
2091 | ||
2092 | * cpplib.c (skip_rest_of_line): Use _cpp_get_token. | |
2093 | ||
8c7b74b9 JM |
2094 | 2000-10-29 Joseph S. Myers <jsm28@cam.ac.uk> |
2095 | ||
526aba28 JM |
2096 | * toplev.c, flags.h, fold-const.c, real.c, rtl.c, |
2097 | fixinc/inclhack.def: Change comments mentioning C9X to refer to | |
2098 | C99 instead. | |
2099 | ||
8c7b74b9 JM |
2100 | * invoke.texi: Document that -V will only work for very similar |
2101 | versions of driver and compiler. | |
2102 | ||
44ed91a1 NB |
2103 | 2000-10-29 Neil Booth <neilb@earthling.net> |
2104 | ||
2105 | * cppmacro.c (_cpp_create_definition): Optimize the case of | |
a8a05998 | 2106 | a macro defined to itself. |
44ed91a1 | 2107 | |
3542203b NB |
2108 | 2000-10-29 Neil Booth <neilb@earthling.net> |
2109 | ||
2110 | * cpplex.c (save_comment): Don't store new lines in C++ comments. | |
2111 | ||
6f268adf MH |
2112 | 2000-10-29 Michael Hayes <mhayes@redhat.com> |
2113 | ||
2114 | * integrate.c (copy_insn_list): Copy the unchanging flag for calls. | |
2115 | ||
926c5678 GK |
2116 | 2000-10-28 Geoffrey Keating <geoffk@cygnus.com> |
2117 | ||
2118 | * cpphash.c (cpp_forall_identifiers): Add context variable | |
2119 | for callback routine. | |
2120 | * cppmain.c (dump_macro): Update to match cpp_forall_identifiers | |
2121 | change. | |
2122 | (main): Call cpp_forall_identifiers with null context. | |
2123 | * cpplib.h (cpp_forall_identifiers): Update prototype. | |
2124 | ||
2125 | * cppmain.c: Make `parse_in' and `print' static. | |
2126 | ||
69f4cc4b AM |
2127 | 2000-10-28 Alan Modra <alan@linuxcare.com.au> |
2128 | ||
2129 | * c-decl.c (finish_function): Clear c_function_name_declared_p. | |
2130 | ||
ce73761f RH |
2131 | 2000-10-28 Richard Henderson <rth@redhat.com> |
2132 | ||
2133 | * regrename.c (scan_rtx_address): Frob action, not class, | |
2134 | when trying to disable optimization. | |
2135 | ||
2c21b247 MM |
2136 | 2000-10-28 Mark Mitchell <mark@codesourcery.com> |
2137 | ||
2138 | * c-semantics.c (make_rtl_for_local_static): Don't clobber | |
2139 | DECL_ASSEMBLER_NAME. | |
2140 | ||
8763704d JM |
2141 | 2000-10-28 Joseph S. Myers <jsm28@cam.ac.uk> |
2142 | ||
2143 | * configure.in: Determine and substitute gcc_version_full. | |
2144 | * configure: Regenerate. | |
2145 | * gccbug.in: Use it to give full version. Don't allow | |
2146 | confidential PRs. | |
2147 | ||
85941a0a RH |
2148 | 2000-10-28 Richard Henderson <rth@redhat.com> |
2149 | ||
2150 | * recog.c (split_all_insns): Run cleanup_subreg_operands | |
2151 | after reload. | |
2152 | ||
2153 | * regrename.c (regrename_optimize): Verify that all registers of | |
2154 | a multiple register mode are available. | |
2155 | (scan_rtx_address): Accept the mode of the address; all callers | |
2156 | changed. | |
2157 | ||
2158 | * cpplib.c (run_directive): Fix prototype. | |
2159 | ||
69add2a8 BS |
2160 | 2000-10-28 Bernd Schmidt <bernds@redhat.co.uk> |
2161 | ||
2162 | * reload.c (find_reloads): Distinguish "wins" so that we know whether | |
2163 | a given operand won because of a matching constraint or not; then use | |
2164 | that information to compute goal_alternative_matched properly. | |
4c3a2649 BS |
2165 | * reload1.c (choose_reload_regs): Never set reload_override_in for an |
2166 | optional reload. | |
69add2a8 | 2167 | |
005f39ce BS |
2168 | * config/ia64/ia64.h (RTX_COSTS): A few more entries, and a more |
2169 | accurate value for MULT. | |
55d8cb78 BS |
2170 | * config/ia64/ia64.c (ia64_print_operand): Require probability to be |
2171 | 2% or > 98% before using static branch prediction bits. | |
005f39ce | 2172 | |
93c80368 NB |
2173 | 2000-10-28 Neil Booth <neilb@earthling.net> |
2174 | ||
2175 | New macro expander. | |
a8a05998 | 2176 | |
93c80368 NB |
2177 | * cpplib.c (struct answer): New. |
2178 | (struct if_stack): Use cpp_lexer_pos rather than line and col. | |
2179 | Rename cmacro mi_cmacro. | |
2180 | (struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL, | |
2181 | IN_I): New directive and flags. | |
2182 | (skip_rest_of_line, check_eol, run_directive, glue_header_name, | |
2183 | parse_answer, parse_assertion, find_answer): New functions. | |
2184 | (parse_ifdef, detect_if_not_defined, validate_else): Remove. | |
2185 | (lex_macro_node): New function to replace parse_ifdef and | |
2186 | get_define_node. | |
2187 | ||
2188 | (_cpp_handle_directive): New function, combines _cpp_check_directive | |
2189 | and _cpp_check_linemarker. | |
2190 | ||
2191 | (do_define, do_undef, parse_include, do_include, do_import, | |
2192 | do_include_next, read_line_number, do_line, do_ident, do_pragma, | |
2193 | do_pragma_once, do_pragma_poison, do_pragma_dependency): | |
2194 | Update for new token getting interface. | |
2195 | ||
2196 | (do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional) | |
2197 | : Update for new multiple-include optimisation technique. | |
2198 | (do_elif): Don't forget to invalidate controlling macros. | |
2199 | ||
2200 | (unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update. | |
2201 | (parse_assertion, parse_answer, find_answer, _cpp_test_assertion): | |
2202 | Functions to handle assertions with the new token interface. | |
2203 | (do_assert, do_unassert): Use them. | |
2204 | ||
2205 | (cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert): | |
2206 | Use run_directive. | |
2207 | ||
2208 | (_cpp_init_stacks): Register directive names. Don't register special | |
2209 | nodes. | |
2210 | ||
2211 | * cpperror.c (print_containing_files, _cpp_begin_message): Update to | |
2212 | new position recording regime. | |
2213 | (cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning, | |
2214 | cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line, | |
2215 | cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes. | |
2216 | (cpp_type2name): Move to cpplex.c. | |
2217 | ||
2218 | * cppexp.c (parse_charconst): spec_nodes is no longer a pointer. | |
2219 | (parse_defined): Update to handle new multiple include optimisation | |
2220 | method. Remove poisoned identifier warning. | |
2221 | (parse_assertion, TYPE_NAME): Delete. | |
2222 | (lex): Update for multiple include optimisation, removal of | |
2223 | CPP_DEFINED, to use _cpp_test_assertion for assertions and | |
2224 | cpp_token_as_text. | |
2225 | (_cpp_parse_expr): Update for MI optimisation, and to use op_as_text. | |
2226 | (op_as_text): New function, to wrap cpp_token_as_text. | |
2227 | ||
2228 | * cppfiles.c (stack_include_file, _cpp_pop_file_buffer): | |
2229 | Update for MI optimisation. | |
2230 | (_cpp_execute_include): Take a token rather than 3 arguments. Fix | |
2231 | segfault on diagnostic. | |
2232 | (_cpp_compare_file_date): Take a token rather than 3 args. | |
2233 | (cpp_read_file): Work correctly for zero-length files. | |
2234 | ||
2235 | * cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename | |
2236 | _cpp_init_hashtable and _cpp_cleanup_hashtable. | |
2237 | (cpp_lookup): Place identifiers at front of identifier pool | |
2238 | for _cpp_lookup_with_hash. | |
2239 | (_cpp_lookup_with_hash): Require identifiers to be at the front of | |
2240 | the identifier pool. Commit the memory if not already in the | |
2241 | hash table. | |
2242 | ||
2243 | * cppinit.c (cpp_reader_init): Move cpp_init_completed test to top. | |
2244 | Initialise various members of cpp_reader, memory pools, and the | |
2245 | special nodes. | |
2246 | (cpp_printer_init): Delete. | |
2247 | (cpp_cleanup): Update. | |
2248 | (struct builtin, builtin_array, initialize_builtins): Update for new | |
2249 | hashnode definition and builtin handling. | |
2250 | (cpp_start_read, cpp_finish): Don't take or initialise a | |
2251 | printer. Update. | |
2252 | ||
2253 | * cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL, | |
2254 | PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE, | |
2255 | T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL, | |
2256 | T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete. | |
2257 | (struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos, | |
2258 | struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind, | |
2259 | NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos, | |
2260 | struct toklist, struct cpp_context, struct specnodes, | |
2261 | TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED, | |
2262 | NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION, | |
2263 | enum builtin_type, cpp_can_paste): New. | |
2264 | (struct cpp_token): Delete line and col members. | |
2265 | (struct cpp_buffer): New member output_lineno. | |
2266 | (struct lexer_state): Delete indented, in_lex_line, seen_dot. | |
2267 | Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args. | |
2268 | (struct cpp_reader): New members lexer_pos, macro_pos, directive_pos, | |
2269 | ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool, | |
2270 | base_context, context, directive, mi_state, mi_if_not_defined, | |
2271 | mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused, | |
2272 | mlstring_pos, macro_buffer, macro_buffer_len. | |
2273 | Delete members mls_line, mls_column, token_list, potential_control_macro, | |
2274 | temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token, | |
2275 | context_cap, cur_context, no_expand_level, paste_level, contexts, args, | |
2276 | save_parameter_spellings, need_newline, . | |
2277 | Change type of date, time and spec_nodes members. | |
2278 | Change prototypes for include and ident callbacks. | |
2279 | (struct cpp_hashnode): Change type of name. Remove union members | |
2280 | expansion and code. Add members macro, operator and builtin. | |
2281 | ||
2282 | (cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read, | |
2283 | cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line, | |
2284 | cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead, | |
2285 | cpp_stop_lookahead): New prototypes. | |
2286 | (cpp_printer_init, cpp_dump_definition): Delete prototypes. | |
2287 | ||
2288 | (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs): | |
2289 | Move from cpphash.h. | |
2290 | ||
2291 | * cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, | |
2292 | ufputs): Move to cpplib.h. | |
2293 | (enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL, | |
2294 | TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION, | |
2295 | COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler, | |
2296 | struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens, | |
2297 | _cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist, | |
2298 | _cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space, | |
2299 | _cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive, | |
2300 | _cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name, | |
2301 | _cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker, | |
2302 | _cpp_parse_assertion, _cpp_find_answer): Delete. | |
2303 | (VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE, | |
2304 | POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool, | |
2305 | _cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk, | |
2306 | _cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion, | |
2307 | _cpp_handle_directive, DSC): New. | |
2308 | (struct include_file): New member defined. | |
2309 | ||
2310 | (DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include, | |
2311 | _cpp_compare_file_date): Update. | |
2312 | (_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New. | |
2313 | (_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable, | |
2314 | _cpp_cleanup_hashtable. | |
2315 | ||
2316 | * Makefile.in: Remove cppoutput.c. | |
a8a05998 | 2317 | |
93c80368 NB |
2318 | * cppoutput.c: Delete |
2319 | ||
2320 | * fixheader.c (read_scan_file): Update for new cpp_get_token | |
2321 | prototype. | |
2322 | (recognized_function): New argument LINE. | |
2323 | ||
2324 | * scan-decls.c (skip_to_closing_brace, scan_decls): Update for | |
2325 | new cpp_get_token prototype. | |
2326 | ||
2327 | * scan.h (recognized_function): Update prototype. | |
2328 | ||
2329 | * po/POTFILES.in: Remove cppoutput.c. | |
a8a05998 | 2330 | |
229a2e65 MM |
2331 | 2000-10-27 Mark Mitchell <mark@codesourcery.com> |
2332 | ||
2333 | * c-typeck.c (check_init_type_bitfields): Remove. | |
2334 | (constructor_incremental): Likewise. | |
2335 | (struct constructor_stack): Remove incremental bit. | |
2336 | (struct initializer_stack): Likewise. | |
2337 | (start_init): Don't play with constructor_incremental. | |
2338 | (finish_init): Likewise. | |
2339 | (really_start_incremental_init): Likewise. | |
2340 | (push_init_level): Likewise. | |
2341 | (pop_init_level): Likewise. | |
2342 | (output_init_level): Likewise. | |
2343 | (output_pending_init_elements): Likewise. | |
2344 | ||
63eb1269 MC |
2345 | 2000-10-21 Mike Coleman <mcoleman2@kc.rr.com> |
2346 | ||
2347 | * c-pragma.c (handle_pragma_pack): Initialize align to -1. | |
a8a05998 | 2348 | Improve error messages. Correct parsing of |
63eb1269 MC |
2349 | #pragma pack(pop [,id]). Do not check the user-supplied |
2350 | alignment if we're popping. | |
2351 | ||
2352 | * gcc.dg/pack-test-1.c: New test case. | |
2353 | * gcc.dg/pack-test-2.c: New test case. | |
2354 | * gcc.dg/pack-test-1.h: New file. | |
2355 | ||
ae2eceaa NB |
2356 | 2000-10-27 Neil Booth <neilb@earthling.net> |
2357 | ||
2358 | * cpp.texi: Update. | |
2359 | ||
04e149ab KC |
2360 | 2000-10-27 Kelley Cook <kelley.cook@home.com> |
2361 | ||
2362 | * invoke.texi: Document -mintel-syntax | |
2363 | ||
2b2a8f1f RH |
2364 | 2000-10-27 Richard Henderson <rth@redhat.com> |
2365 | ||
2366 | * invoke.texi: Document -frename-registers. Add it to -O3. | |
2367 | * toplev.c (rest_of_compilation): Run regrename before ifcvt2. | |
2368 | (enum dump_file_index, dump_file): Update order. | |
2369 | (main): Set flag_rename_registers at -O3. | |
2370 | ||
10c9f189 RH |
2371 | 2000-10-27 Richard Henderson <rth@redhat.com> |
2372 | ||
93c89ab3 RH |
2373 | * config/alpha/alpha.h (enum reg_class): Add PV_REG. |
2374 | (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update. | |
2375 | (REG_CLASS_FROM_LETTER): Assign it to 'c'. | |
2376 | * config/alpha/alpha.md (call_osf_1): Use it. | |
2377 | (call_value_osf_1): Likewise. | |
2378 | ||
10c9f189 RH |
2379 | * config/ia64/ia64.c: Revert 10-23 patch. |
2380 | (ia64_hard_regno_rename_ok): New. | |
2381 | * config/ia64/ia64-protos.h: Declare it. | |
2382 | * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it. | |
2383 | ||
541f7d56 BS |
2384 | 2000-10-27 Bernd Schmidt <bernds@redhat.co.uk> |
2385 | Richard Henderson <rth@redhat.com> | |
2386 | ||
a8a05998 ZW |
2387 | * regrename.c: Rewrite to handle multi-register modes and |
2388 | cond_exec instructions. | |
2389 | * Makefile.in (regrename.o): Update dependancies. | |
2390 | * recog.h (struct operand_alternative): Add is_address. | |
2391 | * recog.c (preprocess_constraints) [case 'p']: Set it. | |
541f7d56 | 2392 | |
b8dad04b ZW |
2393 | 2000-10-27 Zack Weinberg <zack@wolery.stanford.edu> |
2394 | ||
2395 | * configure.in: If not NO_MINUS_C_MINUS_O, substitute | |
2396 | OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to | |
2397 | top level. Kill oldstyle_subdirs. Do not include | |
2398 | $srcdir/$s/Makefile.in in all_lang_makefiles, but do include | |
2399 | $outputs. Do not run configure.lang from config.status. | |
2400 | Rearrange warning-flag logic to correspond to what the | |
2401 | makefile wants. Put special vax stage1 options in | |
2402 | @stage1_flags@ not @stage1_warn_cflags@. Don't do anything | |
2403 | with extra_c_objs, extra_cxx_objs, or extra_cpp_objs. | |
2404 | (--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if | |
2405 | switch is given, nothing otherwise. | |
2406 | * configure.lang: Delete. | |
2407 | ||
a8a05998 ZW |
2408 | * Makefile.in: Expunge all traces of extra_c_objs, |
2409 | extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from | |
2410 | @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set | |
2411 | warning options via a three level scheme so that -pedantic and | |
2412 | -Wtraditional are not used for non-C front ends: LOOSE_WARN, | |
2413 | STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS -> | |
2414 | WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS. | |
b8dad04b ZW |
2415 | Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES. |
2416 | Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P, | |
a8a05998 ZW |
2417 | LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file |
2418 | generation rules. Wrap all rules that change the current | |
2419 | directory in parentheses; pmake doesn't spawn a new shell for | |
2420 | each command. Expunge all references to $(P). When one | |
2421 | command depends on another and they're run all at once, use && | |
2422 | to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files | |
2423 | deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2 | |
2424 | and beyond. | |
b8dad04b ZW |
2425 | |
2426 | * objc/Make-lang.in: Wrap all rules that change the current | |
2427 | directory in parentheses. Expunge all references to $(P). | |
2428 | When one command depends on another and they're run all at | |
2429 | once, use && to separate them, not ;. Add OUTPUT_OPTION to | |
2430 | all object-file generation rules. Delete obsolete variables. | |
2431 | * objc/Makefile.in: Delete. | |
2432 | ||
fadb729c JJ |
2433 | 2000-10-27 Jakub Jelinek <jakub@redhat.com> |
2434 | ||
2435 | * calls.c (expand_call): If sibcall_failure is set during pass 1, | |
2436 | clear tail_call_insns as well. | |
2437 | ||
254bb256 NC |
2438 | 2000-10-27 Nick Clifton <nickc@redhat.com> |
2439 | ||
2440 | * config/arm/arm-protos.h (arm_function_ok_for_sibcall): Add | |
2441 | prototype. | |
2442 | ||
8eb99146 RH |
2443 | 2000-10-26 Richard Henderson <rth@redhat.com> |
2444 | ||
b8dad04b | 2445 | * calls.c (expand_call): Supress sibcall if we have a |
8eb99146 RH |
2446 | BLKmode return in registers. |
2447 | ||
036099eb BS |
2448 | 2000-10-26 Bernd Schmidt <bernds@redhat.co.uk> |
2449 | ||
2450 | * ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants | |
2451 | into memory. | |
2452 | ||
13c6f0d5 NS |
2453 | 2000-10-26 Nathan Sidwell <nathan@codesourcery.com> |
2454 | ||
2455 | * tree.c (make_node, case 't'): Set alignment to that of | |
2456 | char_type_node. | |
2457 | * expr.c (move_by_pieces_ninsns): Abort if some length remains. | |
2458 | ||
be5aeb60 MM |
2459 | 2000-10-25 Mark Mitchell <mark@codesourcery.com> |
2460 | ||
2461 | * Makefile.in (site.exp): Define HAVE_LIBSTDCXX_V3. | |
2462 | * configure.in (enable-libstdcxx-v3): Arrange to have | |
2463 | HAVE_LIBSTDCXX_V3 substituted into the output files. | |
2464 | ||
78192b09 RH |
2465 | 2000-10-25 Richard Henderson <rth@redhat.com> |
2466 | ||
4667f705 RH |
2467 | * recog.c (constrain_operands): Initialize which_alternative |
2468 | before no alternatives early exit. | |
2469 | ||
78192b09 RH |
2470 | * cse.c (find_comparison_args): Check that we can reverse a |
2471 | comparison if needed before accepting the substitution. | |
2472 | ||
081b49f1 RH |
2473 | * reload.c (find_reloads_address_part): Kill rtx obstack hackery. |
2474 | ||
d4f1c1fa RH |
2475 | * simplify-rtx.c (simplify_relational_operation): Sign extend |
2476 | low words before sign extending to high words. | |
2477 | ||
bc27e96c NC |
2478 | 2000-10-25 Nick Clifton <nickc@redhat.com> |
2479 | ||
2480 | * config/mcore/mcore.c: Include config.h before system.h. | |
2481 | ||
2482 | 2000-10-25 Ray Essick <essick@ddna.labs.mot.com> | |
2483 | ||
2484 | * config/mcore/mcore.md (return): Force function epilogue to | |
2485 | always be generated to work around epilogue suppression bug in | |
2486 | M*Core backend. | |
2487 | ||
e0c9fbb7 JM |
2488 | 2000-10-25 Joseph S. Myers <jsm28@cam.ac.uk> |
2489 | ||
2490 | * c-decl.c (grokdeclarator): Move warning for qualified void | |
2491 | return types with -pedantic to when the function type is | |
2492 | constructed. At -W, warn in general for qualified function return | |
2493 | types, except for volatile void. | |
2494 | * invoke.texi: Document this new warning at -W. | |
2495 | ||
138e79e7 NB |
2496 | 2000-10-25 Neil Booth <neilb@earthling.net> |
2497 | ||
b8dad04b ZW |
2498 | * cpp.texi: Update with implementation-defined behavior and |
2499 | internal limits. | |
138e79e7 | 2500 | |
dc5041ab JJ |
2501 | 2000-10-25 Jakub Jelinek <jakub@redhat.com> |
2502 | ||
2503 | * stor-layout.c (layout_type): If TYPE_ALIAS_SET was already set on the | |
2504 | incomplete type force it into alias set 0. | |
2505 | ||
e004f2f7 JW |
2506 | Wed Oct 25 01:02:44 EDT 2000 John Wehle (john@feith.com) |
2507 | ||
2508 | * alias.c: Include basic-block.h. | |
2509 | (loop_p): New function. | |
2510 | (mark_constant_function): Use it. | |
2511 | * Makefile.in (alias.o): Update dependencies. | |
2512 | ||
15c09738 AH |
2513 | 2000-10-24 Aldy Hernandez <aldyh@redhat.com> |
2514 | ||
2515 | * config/mn10300/mn10300.c (secondary_reload_class): Treat pseudos | |
2516 | like memory. | |
b8dad04b | 2517 | |
a8ca7756 JW |
2518 | 2000-10-24 Jim Wilson <wilson@cygnus.com> |
2519 | ||
2520 | * expmed.c (store_bit_field): Move integer pun code down after | |
2521 | code that calls emit_move_insn for entire register move. | |
2522 | * stor-layout.c (compute_record_mode): Revert Mar 25, Aug 18, and | |
2523 | Oct 20 changes. Only store mode in TYPE_MODE if RECORD_TYPE. | |
b8dad04b | 2524 | |
c0fc376b RH |
2525 | 2000-10-24 Richard Henderson <rth@cygnus.com> |
2526 | ||
2527 | * rtlanal.c (rtx_unstable_p, rtx_varies_p): Don't consider pic | |
2528 | register stable if PIC_OFFSET_TABLE_REG_CALL_CLOBBERED. | |
2529 | ||
d7836e38 AH |
2530 | 2000-10-24 Aldy Hernandez <aldyh@redhat.com> |
2531 | ||
b8dad04b ZW |
2532 | * gcse.c (cprop_insn): do not propagate constants into jump_insn |
2533 | for machines with CC0 more than once. | |
d7836e38 | 2534 | |
5e2c51ba RH |
2535 | 2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com> |
2536 | ||
b8dad04b ZW |
2537 | * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat |
2538 | pseudos just like memory. | |
5e2c51ba | 2539 | |
c71e1201 AO |
2540 | 2000-10-24 Alexandre Oliva <aoliva@redhat.com> |
2541 | ||
2542 | * combine.c (distribute_notes): Discard REG_LIBCALL and REG_RETVAL | |
2543 | when deleting libcall sequence collapsed to a single instruction. | |
2544 | ||
5129d2ce AH |
2545 | 2000-10-24 Andrew Haley <aph@cygnus.co.uk> |
2546 | ||
2547 | * expr.c (do_store_flag): Don't crash if either side of a | |
2548 | comparison is error_mark_node. | |
2549 | ||
f85b5d65 JJ |
2550 | 2000-10-24 Jakub Jelinek <jakub@redhat.com> |
2551 | ||
2552 | * sibcall.c (purge_mem_unchanging_flag): New function. | |
2553 | (optimize_sibling_and_tail_recursive_calls): Call it. | |
2554 | ||
4adee315 PT |
2555 | 2000-10-24 Philipp Thomas <pthomas@suse.de> |
2556 | ||
2557 | * Makefile.in (check-po): New target for doing checks in the po | |
2558 | subdir if all languages configured. | |
2559 | (CHECK_TARGETS): Add @CHECK_PO@, replaced with check-po via | |
2560 | configure if NLS is enabled. | |
2561 | * configure.in: If NLS is enabled, substitute CHECK_PO by check-po, | |
2562 | otherwise leave empty. | |
2563 | * configure: Regenerate. | |
2564 | ||
fb204271 DN |
2565 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
2566 | ||
2567 | * i386.c (print_operand): Handle new 'A' formatting code. | |
2568 | 387 opcodes need suffixes even with -mintel-syntax. | |
2569 | Check for explicit size override (codes 'b', 'w' and 'k'). | |
2570 | (print_operand_address): Check if register prefix is needed when | |
2571 | emitting `ds' segment override. | |
2572 | * i386.h: Add comment about new 'A' formatting code. | |
2573 | * i386.md (jump and call patterns): Emit absolute references using %A. | |
2574 | ||
8a959ea5 RH |
2575 | 2000-10-23 Richard Henderson <rth@cygnus.com> |
2576 | ||
b8dad04b | 2577 | * config/ia64/ia64.c (ia64_expand_prologue): Mark extra |
8a959ea5 RH |
2578 | output registers as fixed. |
2579 | (ia64_function_epilogue): Undo output fixation. | |
2580 | ||
964686de RH |
2581 | 2000-10-23 Richard Henderson <rth@cygnus.com> |
2582 | ||
2583 | * config/alpha/alpha.md: Add names for all unnamed insns; use | |
2584 | define_insn_and_split in some obvious places. | |
2585 | (lda): Remove. | |
2586 | (zero_extendqihi2): Use an expander w/ nonimmediate_operand for BWX. | |
2587 | (zero_extendqisi2, zero_extendqidi2): Likewise. | |
2588 | (zero_extendhisi2, zero_extendhidi2): Likewise. | |
2589 | (abs splitters): Fix match_scratch operand number. | |
2590 | (bcc_reverse): Swap pc & label instead of non-canonical compare. | |
2591 | ||
18a3c539 JW |
2592 | 2000-10-23 Jim Wilson <wilson@cygnus.com> |
2593 | ||
2594 | * ia64.c (ia64_print_operand, case 'r'): Correct comment. Handle | |
2595 | CONST_INT. | |
2596 | * ia64.md (cmpsi_adjusted): Use %r3. | |
2597 | (cmpdi_adjusted): Likewise. | |
2598 | ||
57dd137f DN |
2599 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
2600 | ||
2601 | * config/i386/att.h (ASM_FILE_START): Define. | |
2602 | ||
d984704d DN |
2603 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
2604 | ||
2605 | * config/i386/linux.h (ASM_FILE_START): Define. | |
2606 | ||
261f21e7 DL |
2607 | Wed Oct 18 11:16:40 2000 Donald Lindsay <dlindsay@cygnus.com> |
2608 | ||
2609 | * gcc/configure.in: m68k-coff tm_file should not have libgloss.h, | |
2610 | since this (only) drags in a crt0.o reference that the .ld files | |
2611 | also introduce. | |
2612 | ||
96af667a GK |
2613 | 2000-10-23 Geoff Keating <geoffk@cygnus.com> |
2614 | ||
2af88768 GK |
2615 | * reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can |
2616 | overwrite the value in a RELOAD_FOR_INPUT and other kinds of | |
2617 | reloads just like an RELOAD_FOR_OUTPUT would. | |
2618 | ||
96af667a GK |
2619 | * local-alloc.c (update_equiv_regs): Add an abort(). When |
2620 | deleting or moving insns, update reg_equiv[regno].init_insns. | |
2621 | ||
d252a515 MM |
2622 | 2000-10-23 Mark Mitchell <mark@codesourcery.com> |
2623 | ||
2624 | * c-tree.texi: Improve documentation for IF_STMTs and related | |
2625 | conditional statements. | |
2626 | ||
f9808f81 MM |
2627 | 2000-10-22 Mark Mitchell <mark@codesourcery.com> |
2628 | ||
2629 | * expr.c (do_preexpand_calls): Remove. | |
2630 | (same_from_p): Don't use CALL_EXPR_RTL. | |
2631 | (expand_expr): Don't call preexpand_calls, or use CALL_EXPR_RTL. | |
2632 | (preexpand_calls): Remove. | |
2633 | * tree.c (first_rtl_op): Remove CALL_EXPR case. | |
2634 | (unsave_expr_1): Likewise. | |
2635 | * tree.def (CALL_EXPR): Give it only two slots. | |
2636 | * tree.h (CALL_EXPR_RTL): Remove. | |
2637 | ||
ae4bd622 CC |
2638 | 2000-10-21 Chandrakala Chavva <cchavva@redhat.com> |
2639 | ||
2640 | * libgcc-std.ver (__addvsi3, __addvdi3, __subvsi3, __subvdi3, | |
b8dad04b ZW |
2641 | __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3): |
2642 | New functions. | |
ae4bd622 | 2643 | |
3e555c7d AO |
2644 | 2000-10-22 Alexandre Oliva <aoliva@redhat.com> |
2645 | ||
2646 | * calls.c (combine_pending_stack_adjustment_and_call): Don't | |
2647 | adjust stack when unadjusted_alignment ends up as zero. | |
2648 | ||
99bdaa68 JM |
2649 | 2000-10-22 Joseph S. Myers <jsm28@cam.ac.uk> |
2650 | ||
2651 | * fixinc/genfixes: Remove EGCS reference. | |
2652 | * install.texi: Remove EGCS reference. | |
2653 | * INSTALL: Regenerate. | |
2654 | ||
e36308b0 MM |
2655 | 2000-10-22 Mark Mitchell <mark@codesourcery.com> |
2656 | ||
2657 | * tree.h (TYPE_IS_SIZETYPE): Add more documentation. | |
2658 | ||
bf6eb15f JM |
2659 | 2000-10-21 Joseph S. Myers <jsm28@cam.ac.uk> |
2660 | ||
2661 | * diagnostic.c: Remove EGCS reference in comment. | |
2662 | ||
e62ff0c3 RK |
2663 | Sat Oct 21 08:24:25 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2664 | ||
2665 | * loop.c (strength_reduce): Fix error in last change. | |
2666 | ||
0ad7574f DE |
2667 | 2000-10-20 David Edelsohn <edelsohn@gnu.org> |
2668 | ||
2669 | * Makefile.in (SHLIB_NM_FLAGS): New. | |
2670 | (libgcc.mk): Pass it. | |
2671 | * mklibgcc.in (libgcc.map): Use it. | |
2672 | ||
2673 | * rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_LIBS, | |
2674 | SHLIB_MKMAP, SHLIB_MAPFILES, SHLIB_NM_FLAGS): New. | |
2675 | ||
8f54374e KG |
2676 | 2000-10-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2677 | ||
2678 | * mips.h (REG_CLASS_FROM_LETTER): Cast array arg to unsigned char. | |
2679 | ||
2680 | * sparc.c (load_pic_register): Delete unused varaible. | |
2681 | ||
2682 | * libgcc2.c (__addvsi3): Delete unused variable. | |
2683 | ||
2684 | * libgcc2.h (__absvsi2, __absvdi2, __addvsi3, __addvdi3, | |
2685 | __subvsi3, __subvdi3, __mulvsi3, __mulvdi3, __negvsi2, | |
2686 | __negvdi2): Prototype. | |
2687 | ||
2688 | * ssa.c (apply_delayed_renames): Avoid undefined operation. | |
2689 | ||
2690 | * toplev.c (display_target_options): Make static to match | |
2691 | prototype. Delete empty declaration. | |
2692 | ||
3f568531 TT |
2693 | 2000-10-20 Tom Tromey <tromey@cygnus.com> |
2694 | ||
2695 | * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT. | |
2696 | * gcc.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT. | |
2697 | ||
235783d1 RK |
2698 | Fri Oct 20 17:05:49 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2699 | ||
2700 | * expr.c (expand_expr, case SAVE_EXPR): Set RTX_UNCHANGING_P on | |
2701 | returned MEM. | |
2702 | (expand_expr_unaligned, case ARRAY_REF): Check that index is | |
2703 | a constant before comparing it; use tree_low_cst. | |
2704 | * tree.c (save_expr): Set TREE_READONLY. | |
2705 | (substitute_expr): Return inside of NON_LVALUE_EXPR. | |
2706 | (build, build1): Set TREE_READONLY if all operands are. | |
2707 | (build_index_type): If upper bound is a negative number, lower | |
2708 | bound is zero and sizetype is unsigned, use upper bound of one and | |
2709 | lower of zero. | |
2710 | ||
2e44948d DE |
2711 | 2000-10-20 David Edelsohn <edelsohn@gnu.org> |
2712 | ||
2713 | * gcc.c (process_command, main): Use "because" instead of | |
2714 | "since" in error messages. | |
2715 | ||
44475138 RK |
2716 | Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2717 | ||
382110c0 RK |
2718 | * stor-layout.c (compute_record_mode): Use tree_low_cst. |
2719 | Don't use mode of field for record unless sizes are the same. | |
2720 | (layout_type, case ARRAY_TYPE): Remove special bounds handling | |
2721 | previously added for Ada; also change to using host_integerp | |
2722 | and tree_low_cst. | |
2723 | ||
1dcdb0df RK |
2724 | * loop.c (strength_reduce): Show when new register made for |
2725 | giv is known to be a pointer and its aligment if so and known. | |
2726 | (loop_dump_aux): Show VERBOSE parameter unused. | |
2727 | ||
ebb13e7e RK |
2728 | * gcse.c (set_hash_table_size): Now unsigned. |
2729 | * sdbout.c (template_name_p): Add "const" to avoid warnings. | |
2730 | (sdbout_record_type_name, plain_type_1, sdbout_symbol): Likewise. | |
2731 | (sdbout_one_type, sdbout_parms, sdbout_reg_parms): Likewise. | |
2732 | (sdbout_end_epilogue): Remove variable NAME. | |
2733 | * system.h (getopt): Add default definition. | |
2734 | * config/alpha/alpha.c (print_operand): Don't continue processing | |
2735 | after issuing error. | |
2736 | (summarize_insn): Avoid use of UL in constant. | |
2737 | ||
1468899d RK |
2738 | * function.c (locate_and_pad_parm): Use host_integerp and tree_low_cst. |
2739 | ||
44475138 RK |
2740 | * fold-const.c (force_fit_type): Unsigned values can overflow |
2741 | if they are sizetype. | |
2742 | (int_const_binop): Don't use cache if overflows. | |
391db8c9 | 2743 | |
23ccfa6d RH |
2744 | 2000-10-20 Richard Henderson <rth@cygnus.com> |
2745 | ||
2746 | * function.c (locate_and_pad_parm): Zero alignment_pad. | |
2747 | ||
4ca0f257 RH |
2748 | * regrename.c (rr_replace_reg): Rewrite to use recog_data to |
2749 | perform substitutions, and apply_change_group to see if it worked. | |
2750 | ||
0345195a RK |
2751 | Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2752 | ||
d57e164f RK |
2753 | * dwarf2out.c (add_bound_info): Also ignore COND_EXPR. |
2754 | ||
0345195a RK |
2755 | * combine.c (struct undo): Change int to unsigned int. |
2756 | (do_SUBST_INT): Args are unsigned int. | |
2757 | (make_extraction, force_to_mode): Use proper type when forming mask. | |
2758 | (make_field_assignment): Likewise. | |
2759 | ||
2f74f7e9 JM |
2760 | 2000-10-20 Joseph S. Myers <jsm28@cam.ac.uk> |
2761 | ||
2762 | * c-common.c (check_format_info_recurse): Extract string constant | |
2763 | initializers from non-volatile constant arrays and check them as | |
2764 | formats. | |
2765 | * c-typeck.c (decl_constant_value): Don't check pedantic or check | |
2766 | for DECL_MODE (decl) != BLKmode. | |
2767 | (decl_constant_value_for_broken_optimization): New function which | |
2768 | includes these checks. | |
2769 | (default_conversion, convert_for_assignment, digest_init): Use | |
2770 | decl_constant_value_for_broken_optimization instead of | |
2771 | decl_constant_value. | |
2772 | ||
971774bb MM |
2773 | 2000-10-20 Mark Mitchell <mark@codesourcery.com> |
2774 | ||
2775 | * tree.h (DECL_ALIGN_UNIT): New macro. | |
2776 | ||
afee2a52 MM |
2777 | 2000-10-14 Marek Michalkiewicz <marekm@linux.org.pl> |
2778 | ||
2779 | * config/avr/avr-protos.h (avr_output_bld): New. | |
2780 | (out_shift_with_cnt): Add t_len argument. | |
2781 | * config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args. | |
2782 | (output_movqi, output_movhi, output_movsisf): Optimize loading | |
2783 | any constant with exactly one bit set to NO_LD_REGS. | |
2784 | (out_shift_with_cnt): Optimize output code for size or speed, | |
2785 | depending on optimize_size. Handle small shift counts as well | |
2786 | (if not hand-optimized in ?sh??i3_out). Shifts can be done | |
2787 | with or without a scratch register, with help of __tmp_reg__ | |
2788 | or __zero_reg__ if necessary. Add T_LEN argument to pass the | |
2789 | length of TEMPLATE in words, return total insn length in *LEN. | |
2790 | (ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to | |
2791 | out_shift_with_cnt to work with the above change. | |
2792 | (ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out, | |
2793 | lshrsi3_out): Likewise. Optimize more known shift count cases. | |
2794 | Remove cases already well optimized in out_shift_with_cnt. | |
2795 | (avr_output_bld): New function. | |
2796 | * config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove. | |
2797 | (TARGET_SWITCHES): Remove -mpack-args backward compatibility. | |
2798 | * config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi): | |
2799 | Add reload_completed to insn condition - only for peepholes. | |
2800 | (ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts | |
2801 | in a register or memory. | |
2802 | (ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise. | |
2803 | Do not require a scratch register. | |
2804 | (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const, | |
2805 | *lshrhi3_const, *lshrsi3_const): New insns and matching peepholes. | |
2806 | Optimize shifts by known count using a scratch register, but only | |
2807 | if one is still available after register allocation. | |
2808 | ||
831f9339 | 2809 | 2000-10-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
b8dad04b | 2810 | |
831f9339 DA |
2811 | * t-vax: New file. Don't build modules from libgcc1.c. |
2812 | ||
bf6d9fd7 JW |
2813 | Fri Oct 20 00:57:00 EDT 2000 John Wehle (john@feith.com) |
2814 | ||
2815 | * alias.c: (mark_constant_function): Don't check pure functions. | |
2816 | Initialize and end alias analysis. | |
2817 | (nonlocal_mentioned_p): Rename from nonlocal_reference_p. | |
2818 | Don't make a special exception for recursion. Handle | |
2819 | UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local | |
2820 | unless it's volatile. | |
2821 | ||
2822 | * local-alloc.c (equivalence): New structure. | |
2823 | (reg_equiv): Define. | |
2824 | (contains_replace_regs): Remove array and use | |
2825 | field in reg_equiv. | |
2826 | (memref_referenced_p): Likewise. | |
2827 | (no_equiv): Likewise. | |
2828 | (update_equiv_regs): Likewise. | |
2829 | ||
2830 | (equiv_init_varies_p, | |
2831 | equiv_init_movable_p): New functions. | |
2832 | (update_equiv_regs): Use them. Use rtx_varies_p | |
2833 | instead of function_invariant_p. Process insns | |
2834 | from end to beginning. Allow a REG_EQUIV insn | |
2835 | within the same loop as a use to be moved, also | |
2836 | allow it to be moved out of a loop. Update | |
2837 | REG_DEAD notes when substituting into an insn. | |
2838 | ||
ef375129 JW |
2839 | 2000-10-19 Jim Wilson <wilson@cygnus.com> |
2840 | ||
f4fce7ed JW |
2841 | * c-decl.c (start_decl): Check for error_mark_node type before using |
2842 | COMPLETE_TYPE_P. | |
2843 | (finish_decl): Likewise. Don't give an error if decl type is | |
2844 | already error_mark_node. | |
2845 | ||
ef375129 JW |
2846 | * haifa-sched.c (compute_trg_info): Add explanatory comments. |
2847 | New local update_blocks. Use update_blocks to remove duplicates | |
2848 | when computing update blocks. Check for bblst_table overflow. | |
2849 | (schedule_block): Add explanatory comment. Reduce bblst_size by | |
2850 | factor of 2. | |
2851 | * config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL | |
2852 | notes. | |
b8dad04b | 2853 | |
3cf37281 CC |
2854 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
2855 | ||
2856 | * libgcc2.c (_mulvsi3): Change variables u and v to a and b. | |
2857 | ||
e6b4d09d CC |
2858 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
2859 | ||
2860 | * expmed.c: Minor corrections in comments. | |
2861 | * invoke.texi: Added desciption for the new option -ftrapv. | |
2862 | ||
3d2adde6 CC |
2863 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
2864 | ||
2865 | * libgcc2.c: Added the missing #endif. | |
2866 | ||
1aa9fd24 JH |
2867 | Thu Oct 19 14:25:11 MET DST 2000 Jan Hubicka <jh@suse.cz> |
2868 | ||
2869 | * i386.h (CONST_OK_FOR_LETTER): Re-add 'N'; document. | |
2870 | ||
91ce572a CC |
2871 | 2000-10-18 Chandrakala Chavva <cchavva@redhat.com> |
2872 | ||
b8dad04b ZW |
2873 | * expmed.c (expand_mult): Don't do synth_mult optimization for -ftrapv. |
2874 | Use smulv_optab for -ftrapv. | |
2875 | (expand_mult_highpart): Use unsigned multiply. | |
2876 | (expand_divmod): Special-case division by -1. | |
2877 | For EXACT_DIV_EXPR, do right shift first, then the multiply. | |
2878 | For complex divide, use abs with unsigned result. | |
2879 | * expr.c (force_operand): Use unsigned multiply. | |
2880 | (expand_expr): Use overflow-trapping optabs for signed types if | |
2881 | flag_trapv. | |
2882 | If flag_trapv, don't generate a recursive call with EXPAND_SUM | |
2883 | if the type is signed and the original call wasn't EXPAND_SUM or | |
2884 | EXPAND_INITIALIZER. | |
2885 | * expr.h (addv_optab, subv_optab, smulv_optab, sdivv_optab): Declare. | |
2886 | (negv_optab, absv_optab): Declare. | |
2887 | * flags.h (flag_trapv): Declare. | |
2888 | * genopinit.c (optabs): Add entries for addv_optab, subv_optab, | |
2889 | smulv_optab, sdivv_optab, negv_optab and absv_optab. | |
91ce572a | 2890 | (gen_insn): Interpret '$P' as requiring an integer mode, |
b8dad04b ZW |
2891 | including partial integer modes. |
2892 | * loop.c (emit_iv_add_mult): Use unsigned expand_mult_add. | |
2893 | (product_cheap_p): Use unsigned expand_mult. | |
2894 | * optabs.c (addv_optab, subv_optab, smulv_optab, sdivv_optab): Define. | |
2895 | (negv_optab, absv_optab): Define. | |
2896 | (expand_binop): Use overflow-trapping optabs for signed types if | |
2897 | flag_trapv. | |
2898 | Handle negv_optab libe neg_optab. | |
2899 | (expand_abs): Take result_unsignedp argument instead of unsignedp one. | |
2900 | Use overflow-trapping optabs for signed result if flag_trapv. | |
2901 | (expand_complex_abs): Use overflow-trapping optabs for signed types if | |
2902 | flag_trapv. | |
2903 | Don't open-code complex absolute-value operation for flag_trapv. | |
2904 | (init_optabs): Initialize addv_optab, subv_optab, smulv_optab, | |
2905 | sdivv_optab, negv_optab and absv_optab. | |
2906 | * toplev.c (flag_trapv): Define. | |
2907 | (lang_independent_options f_options): Include flag_trapv. | |
2908 | * tree.h (TYPE_TRAP_SIGNED): Define. | |
2909 | * libgcc2.c (__addvsi3, __addvdi3, __subvsi3,__subvsi3, __subvdi3, | |
2910 | __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3): | |
2911 | New functions. | |
2912 | * Makefile.in: add _absvsi2 _absvdi2 _addvsi3 _addvdi3 _subvsi3 | |
2913 | _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2. | |
91ce572a | 2914 | |
4c2c5712 GK |
2915 | 2000-10-18 Geoffrey Keating <geoffk@cygnus.com> |
2916 | David V. Henkel-Wallace <gumby@cygnus.com> | |
2917 | ||
2918 | * config/i386/t-netware: Bring in from the Red Hat tree. | |
2919 | * config/i386/netware.h: Likewise. | |
2920 | * config/netware.h: Likewise. | |
2921 | * config/rs6000/netware.h: Delete. | |
2922 | * configure.in: Add i[34567]86-*-netware. | |
2923 | * configure: Hand-edit to match configure.in change. | |
2924 | ||
6bcedb4e MM |
2925 | 2000-10-18 Mark Mitchell <mark@codesourcery.com> |
2926 | ||
2927 | * c-common.h (flag_no_builtin): Declare. | |
2928 | (flag_no_nonansi_builtin): Likewise. | |
2929 | (c_common_nodes_and_builtins): Change prototype. | |
2930 | * c-common.c (flag_no_builtin): New variable. | |
2931 | (flag_no_nonansi_builtin): Likewise. | |
2932 | (c_common_nodes_and_builtins): Remove parameters. Adjust | |
2933 | accordingly. | |
2934 | * c-decl.c (flag_no_builtin): Remove. | |
2935 | (flag_no_nonansi_builtin): Likewise. | |
2936 | (init_decl_processing): Adjust call to | |
2937 | c_common_nodes_and_builtins. | |
b8dad04b | 2938 | |
989b26a7 ME |
2939 | 2000-10-18 Marc Espie <espie@openbsd.org> |
2940 | ||
2941 | * tm.texi (LIBGCC_SPEC): Synch with reality. | |
2942 | ||
81cf47b2 JM |
2943 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
2944 | ||
2945 | * c-common.c (check_format_types): Check for writing through a | |
2946 | NULL pointer argument. | |
2947 | ||
27c35f4b HPN |
2948 | 2000-10-18 Hans-Peter Nilsson <hp@axis.com> |
2949 | ||
2950 | * tm.texi (Exception Region Output): Document | |
2951 | DWARF_CIE_DATA_ALIGNMENT. | |
2952 | * dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in | |
2953 | #ifndef. | |
2954 | [ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of | |
2955 | DWARF_CIE_DATA_ALIGNMENT. | |
2956 | ||
4a7da9b5 MH |
2957 | 2000-10-18 Michael Hayes <mhayes@cygnus.com> |
2958 | ||
2959 | * basic-block.h (struct loop): Delete fields pre_header_root | |
2960 | and pre_header_trace and replace with pre_header_edges | |
2961 | and num_pre_header_edges. | |
2962 | * flow.c (flow_loop_dump): Dump pre_header_edges. | |
2963 | (flow_loops_free): Free pre_header_edges. | |
2964 | (flow_loop_pre_header_scan): Calculate pre_header_edges. | |
2965 | ||
42c10750 GP |
2966 | 2000-10-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
2967 | ||
2968 | * contrib.texi: Update references to steering committee members | |
2969 | and Jeff Law's entry. | |
2970 | ||
ade7d3cc JM |
2971 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
2972 | ||
2973 | * c-common.c (CPLUSPLUS_STD_VER, C_STD_VER, C_STD_NAME): Define. | |
2974 | (maybe_read_dollar_number, check_format_info_main): Use them for | |
2975 | pedantic warning messages. | |
2976 | ||
c5251260 JM |
2977 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
2978 | ||
2979 | * c-common.c (check_format_info_main): Minor cleanup: move | |
2980 | variables into inner scopes; initialize declarations where | |
2981 | appropriate; don't hardcode "scanf" name on warning for zero | |
2982 | width. | |
2983 | ||
67673f5c MM |
2984 | 2000-10-17 Mark Mitchell <mark@codesourcery.com> |
2985 | ||
2986 | * c-common.c (back_end_hook): New variable. | |
2987 | * c-common.h (back_end_hook): Declare it. | |
2988 | * c-lang.c (finish_file): Use it. | |
2989 | ||
2990 | * emit-rtl.c (init_emit_once): Initialize the const_int_htab | |
2991 | earlier. | |
b8dad04b | 2992 | |
1aa9fd24 | 2993 | 2000-10-18 Jan Hubicka <jh@suse.cz> |
265dab10 | 2994 | |
b8dad04b ZW |
2995 | * i386.c (ix86_comparison_operator, put_condition_code, |
2996 | ix86_match_ccmode, ix86_cc_mode): Handle CCRCmode. | |
2997 | (ix86_expand_strlensi_unroll_1): Use CCRCmode. | |
2998 | * i386.h (EXTRA_CC_MODES): Add CCRCmode. | |
2999 | * i386.md (adddi and negdi splitter): Use CCRCmode. | |
3000 | (add?i_3, add?i_4, add?i_5): Use CCRCmode; swap operands | |
3001 | (subsi3_carry): add '*' | |
3002 | (addsi3_carry_rc, subsi3_carry_rc, x86_movsicc_0_m1_rc): New. | |
3003 | (cmp to add peep2): Use CCRCmode; swap operands. | |
265dab10 | 3004 | |
b054460b KH |
3005 | 2000-10-18 Kazu Hirata <kazu@hxi.com> |
3006 | ||
8682223f KH |
3007 | * h8300.c: Fix a comment typo. |
3008 | (round_frame_size): New. | |
3009 | (compute_saved_regs): Likewise. | |
3010 | (push): Likewise. | |
3011 | (pop): Likewise. | |
3012 | (push_order): Remove. | |
3013 | (pop_order): Likewise. | |
3014 | (function_prologue): Rearrange code for readability. | |
3015 | (function_epilogue): Likewise. | |
3016 | ||
b054460b KH |
3017 | * config/h8300/h8300.md: Remove an unnecessary sign_extend |
3018 | expander that is used when not optimizing. Output a tab after | |
3019 | each assembly insns. | |
3020 | ||
f27e6bb2 KH |
3021 | * reorg.c: Fix formatting. |
3022 | ||
19ca869b JR |
3023 | 2000-10-17 Joern Rennecke <amylaar@redhat.co.uk> |
3024 | ||
3025 | * reload1.c (move2add_note_store): Check for simple | |
3026 | auto-inc in destination. | |
3027 | ||
2ddb1ca1 MC |
3028 | 2000-10-17 Michael Chastain <chastain@redhat.com> |
3029 | ||
3030 | * config/i386/i386-aout.h: define INT_ASM_OP. | |
3031 | ||
11881f37 AM |
3032 | Tue Oct 17 20:11:08 2000 Alan Modra <alan@linuxcare.com.au> |
3033 | ||
3034 | * pa.c (print_operand): Handle case 'c' for .vtable_inherit | |
3035 | ||
33e39e38 MB |
3036 | Tue Oct 17 20:05:51 2000 Martin Buchholz <martin@xemacs.org> |
3037 | ||
3038 | * i370.md: Fix spelling typo. | |
3039 | ||
832ea3b3 FS |
3040 | 2000-10-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
3041 | ||
3042 | * function.c (locate_and_pad_parm): Don't align stack unconditionally. | |
2b7fb034 | 3043 | Fixes execute/20001017-1.c on powerpc-linux-gnu. |
832ea3b3 FS |
3044 | |
3045 | * expr.c (store_constructor): Apply MEM_ALIAS_SET to MEMs only. | |
2b7fb034 | 3046 | * rs6000/rs6000.c (rs6000_hash_constant): Use X0INT to access a |
832ea3b3 FS |
3047 | LABEL_REF. |
3048 | ||
3049 | * rs6000/rs6000.h (NO_DOLLAR_IN_LABEL, DOLLARS_IN_IDENTIFIERS, | |
3050 | ENCODE_SECTION_INFO, ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Move from | |
3051 | here... | |
3052 | * rs6000/aix.h: ...to here. | |
3053 | * rs6000/linux.h (ASM_APP_ON, ASM_APP_OFF): Define to Linux-style. | |
3054 | ||
4c646291 JJ |
3055 | 2000-10-17 Jakub Jelinek <jakub@redhat.com> |
3056 | ||
3057 | * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Reload gp if needed. | |
3058 | ||
3059 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Always use call, make | |
3060 | sure linker can relax even the delay slot mov %g1,%o7, fix output | |
3061 | formating. | |
3062 | ||
07e0fe3d KH |
3063 | 2000-10-17 Kazu Hirata <kazu@hxi.com> |
3064 | ||
3065 | * config/h8300/h8300.md: Remove an unnecessary zero_extend | |
3066 | expander that is used when not optimizing. Output a tab after | |
3067 | each assembly insns. | |
3068 | ||
10501d8f CC |
3069 | 2000-10-17 Chandrakala Chavva <cchavva@redhat.com> |
3070 | ||
3071 | * gcc.c: New options --target-help. | |
3072 | (process_command): Added code to parse this new option. | |
3073 | * toplev.c (display_target_options): New function to support the | |
3074 | above new option. | |
3075 | * cppinit.c (new_pending_directive) : New option OPT_target__help. | |
3076 | (cpp_handle_option): Support this new option. | |
3077 | * invoke.texi: Added notes about --target-help option. | |
b8dad04b | 3078 | |
c330e9c1 | 3079 | 2000-10-17 Graham Stott <grahams@redhat.com> |
b8dad04b | 3080 | |
c330e9c1 GS |
3081 | * config/i386/i386.md (testqi_1): Add missing operand prefix |
3082 | for operand 0. | |
3083 | * config/i386/i386-protos.h: Add missing prototype. | |
b8dad04b | 3084 | |
69ac4831 DN |
3085 | 2000-10-17 Diego Novillo <dnovillo@cygnus.com> |
3086 | ||
3087 | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Symbol | |
3088 | _GLOBAL_OFFSET_TABLE should not have a $ prefix when | |
3089 | using -mintel-syntax. | |
3090 | ||
b691cb00 JM |
3091 | 2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk> |
3092 | ||
3093 | * c-common.c (FMT_FLAG_DOLLAR_MULTIPLE): Define. | |
3094 | (format_types): Use it for printf. | |
3095 | (maybe_read_dollar_number): Add parameter for the kind of format | |
3096 | involved. Warn for multiple use for arguments if this is | |
3097 | inappropriate for the kind of format involved. | |
3098 | (check_format_info_main): Update calls to maybe_read_dollar_number. | |
3099 | ||
948eab23 DA |
3100 | 2000-10-17 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3101 | ||
3102 | * inclhack.def (hpux_maxint): Also apply fix to values.h. | |
3103 | * fixincl.x: Rebuilt. | |
3104 | ||
1651ab85 AO |
3105 | 2000-10-17 Alexandre Oliva <aoliva@redhat.com> |
3106 | ||
3107 | * genrecog.c (write_switch): Return the first condition that needs a | |
3108 | label. | |
3109 | ||
2683ed8d BS |
3110 | 2000-10-17 Bernd Schmidt <bernds@redhat.co.uk> |
3111 | ||
3112 | * c-tree.h (warn_sequence_point): Move declaration to... | |
3113 | * c-common.h (warn_sequence_point): ... here. | |
3114 | * c-decl.c (warn_sequence_point): Move definition to... | |
3115 | * c-common.c (warn_sequence_point): ... here. | |
3116 | (struct reverse_tree): New. | |
3117 | (reverse_list, reverse_max_depth): New static variables. | |
3118 | (build_reverse_tree, common_ancestor, modify_ok | |
3119 | verify_sequence_points): New functions. | |
3120 | (c_expand_expr_stmt): Call verify_sequence_points if -Wsequence-point. | |
3121 | * c-typeck.c (check_modify_expr): Delete. | |
3122 | (build_modify_expr): Don't call it. | |
3123 | ||
74ff4629 JM |
3124 | 2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk> |
3125 | ||
3126 | * c-common.h (warn_missing_format_attribute): New variable. | |
3127 | * c-decl.c (warn_missing_format_attribute): New variable. | |
3128 | (c_decode_option): Decode -Wmissing-format-attribute and | |
3129 | -Wno-missing-format-attribute. | |
3130 | * c-common.c (check_function_format): If | |
3131 | -Wmissing-format-attribute, give a warning where a vprintf or | |
3132 | vscanf function is called by a function without its own printf or | |
3133 | scanf attribute. | |
3134 | * toplev.c (documented_lang_options): Add | |
3135 | -Wmissing-format-attribute. | |
3136 | * invoke.texi: Document -Wmissing-format-attribute. | |
3137 | ||
1d3b0e2c ME |
3138 | 2000-10-17 Marc Espie <espie@openbsd.org> |
3139 | ||
3140 | * invoke.texi (-shared): Insist on requiring code generation flags | |
3141 | to be used along with -shared, and document the subtle failure that | |
3142 | may occur otherwise. | |
3143 | ||
1c217171 DA |
3144 | 2000-10-16 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3145 | ||
3146 | * pa.md (return_internal): Move `use' after `return'. | |
3147 | ||
11f3dc89 TP |
3148 | 2000-10-16 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> |
3149 | ||
3150 | * machmode.def: Correct comment. | |
3151 | ||
0952f89b RB |
3152 | 2000-10-16 Rodney Brown <RodneyBrown@mynd.com> |
3153 | ||
47c10e9b RB |
3154 | * print-rtl.c (print_rtx_head): Constify. |
3155 | * rtl.h (print_rtx_head): Similarly. | |
3156 | ||
0952f89b RB |
3157 | * config/pa/pa/pa-protos.h (output_64bit_and, output_64bit_ior): |
3158 | Constify char * return value. | |
3159 | * config/pa/pa/pa.c | |
3160 | (output_64bit_and, output_64bit_ior): Constify char * return value. | |
3161 | (pa_can_combine_p): Make static. | |
3162 | (function_arg): Decorate unused `named' argument. Fix comment typo. | |
3163 | (function_arg_partial_nregs): Decorate unused `named' argument. | |
3164 | ||
6d2e1454 JM |
3165 | 2000-10-16 Joseph S. Myers <jsm28@cam.ac.uk> |
3166 | ||
3167 | * c-common.c (format_check_results): New structure. | |
3168 | (finish_dollar_format_checking): Adjust to take a | |
3169 | format_check_results * parameter. | |
3170 | (check_format_info, check_format_info_recurse, | |
3171 | check_format_info_main): Split check_format_info into three | |
3172 | functions, the main checking going in check_format_info_main. | |
3173 | Recurse when any reduction of the format string argument towards a | |
3174 | string literal is done; go down both branches of a conditional | |
3175 | expression. Don't warn for extra format arguments or empty format | |
3176 | strings if they only occur in some branches of a conditional | |
3177 | expression. | |
3178 | ||
4d231df7 KH |
3179 | 2000-10-16 Kazu Hirata <kazu@hxi.com> |
3180 | ||
f2a9645f | 3181 | * config/h8300/h8300.c: Remove obstack. Include ggc.h. |
4d231df7 | 3182 | |
55143861 JJ |
3183 | 2000-10-16 Jakub Jelinek <jakub@redhat.com> |
3184 | ||
3185 | * rtlanal.c (may_trap_p): Check operand modes of COMPARE. | |
3186 | ||
406df25c DN |
3187 | 2000-10-15 Diego Novillo <dnovillo@cygnus.com> |
3188 | ||
3189 | * i386.md (*movsi_or): Switch operand order for intel syntax. | |
3190 | ||
e8beb821 JM |
3191 | 2000-10-14 Joseph S. Myers <jsm28@cam.ac.uk> |
3192 | ||
2f6256e7 JM |
3193 | * PROBLEMS: Remove. |
3194 | ||
e8beb821 JM |
3195 | * gcc.texi (Contributing): Update. |
3196 | ||
c1f9de5a DN |
3197 | 2000-10-13 Diego Novillo <dnovillo@cygnus.com> |
3198 | ||
3199 | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Output final jump using | |
3200 | appropriate assembler dialect. | |
3201 | ||
f58e0b0c AO |
3202 | 2000-10-13 Alexandre Oliva <aoliva@redhat.com> |
3203 | ||
3204 | * c-common.c (c_expand_builtin): PARAMS-ize prototype. | |
3205 | ||
08f81276 MM |
3206 | 2000-10-12 Marek Michalkiewicz <marekm@linux.org.pl> |
3207 | ||
3208 | * config/avr/avr.c (output_movhi, output_movsisf): Fix loading | |
3209 | constants 1 and 2 to NO_LD_REGS. | |
3210 | ||
4b945402 KG |
3211 | 2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3212 | ||
3213 | * Makefile.in (c-parse.c, tradcif.c): Create atomically. | |
b8dad04b | 3214 | |
4b945402 KG |
3215 | * objc/Make-lang.in (objc-parse.c): Likewise. |
3216 | ||
c7319d87 RE |
3217 | 2000-10-13 Richard Earnshaw <rearnsha@arm.com> |
3218 | ||
3219 | * arm.c: Include obstack.h | |
3220 | (minipool_obstack, minipool_startobj): Define. | |
3221 | (arm_add_gc_roots): Initialize them. | |
3222 | (create_fix_barrier): Use our new obstack. | |
3223 | (push_minipool_barrier, push_minipool_fix): Likewise. | |
3224 | (arm_reorg): Release obstack memory. | |
3225 | ||
fccf9848 JJ |
3226 | 2000-10-13 Jakub Jelinek <jakub@redhat.com> |
3227 | ||
3228 | * config/sparc/sparc.md (nonlocal_goto_receiver): Remove. | |
3229 | (prologue, exception_receiver, builtin_setjmp_receiver): New | |
3230 | patterns. | |
3231 | * config/sparc/sparc.h (FINALIZE_PIC): Remove. | |
3232 | * config/sparc/sparc-protos.h (finalize_pic): Remove. | |
3233 | (load_pic_register): New prototype. | |
3234 | * config/sparc/sparc.c (pic_setup_code): Remove. | |
3235 | (finalize_pic): Rename to... | |
3236 | (load_pic_register): ...this function. | |
3237 | Don't look for nonlocal_goto_receivers and emit pic setup code | |
3238 | directly. Don't check current_function_uses_pic_offset_table. | |
3239 | ||
7584b89f RE |
3240 | 2000-10-13 Richard Earnshaw <rearnsha@arm.com> |
3241 | ||
3242 | * tree.h (struct obstack): Declare. | |
3243 | ||
1f8f4a0b MM |
3244 | 2000-10-12 Mark Mitchell <mark@codesourcery.com> |
3245 | ||
b8dad04b | 3246 | Remove obstacks. |
1f8f4a0b | 3247 | * Makefile.in (ggc-callbacks.o): Remove target. |
b8dad04b | 3248 | (flow.o): Depend on GGC_H. |
1f8f4a0b MM |
3249 | * alias.c (init_alias_analysis): |
3250 | Remove ggc_p conditionals. | |
b8dad04b | 3251 | (end_alias_analysis): Likewise. |
1f8f4a0b | 3252 | * basic-block.h (init_flow): New function. |
b8dad04b | 3253 | (allocate_reg_life_data): Declare. |
1f8f4a0b MM |
3254 | * bb-reorder.c (function_obstack): Replace with ... |
3255 | (flow_obstack): ... new variable. | |
b8dad04b | 3256 | (fixup_reorder_chain): Use it. |
1f8f4a0b | 3257 | * c-decl.c (ggc_p): Remove. |
b8dad04b | 3258 | (caller-save.c): Don't call oballoc/obfree. |
1f8f4a0b MM |
3259 | * combine.c (struct |
3260 | undobuf): Remove storage. | |
3261 | (try_combine): Don't call oballoc. | |
b8dad04b | 3262 | (undo_all): Don't call obfree. |
1f8f4a0b MM |
3263 | * cse.c (insert): Use xmalloc, not |
3264 | oballoc. | |
b8dad04b | 3265 | (cse_main): Adjust accordingly. |
1f8f4a0b MM |
3266 | * dwarf2out.c (save_rtx): Remove |
3267 | obstack code. | |
b8dad04b | 3268 | (dwarf2out_init): Remove ggc_p conditionals. |
1f8f4a0b MM |
3269 | * emit-rtl.c (rtl_obstack): Remove. |
3270 | (gen_rtx_CONST_INT): Remove ggc_p conditionals. | |
3271 | (make_insn_raw): Likewise. | |
3272 | (emit_insn_before): Likewise. | |
3273 | (emit_insn_after): Likewise. | |
3274 | (emit_insn): Likewise. | |
3275 | (gen_sequence): Likewise. | |
3276 | (copy_insn_1): Remove handling of `b' RTL components. | |
b8dad04b | 3277 | (init_emit_once): Remove ggc_p conditionals. |
1f8f4a0b MM |
3278 | * except.c (create_rethrow_ref): Don't fool with obstacks. |
3279 | (add_partial_entry): Likewise. | |
3280 | (call_get_eh_context): Likewise. | |
3281 | (begin_protect_partials): Likewise. | |
b8dad04b | 3282 | (protect_with_terminate): Likewise. |
1f8f4a0b | 3283 | * explow.c |
b8dad04b | 3284 | (plus_constant_wide): Likewise. |
1f8f4a0b MM |
3285 | * expr.c (init_expr_once): |
3286 | Likewise. | |
3287 | (emit_block_move): Likewise. | |
3288 | (clear_storage): Likewise. | |
b8dad04b | 3289 | (expand_expr): Likewise. |
1f8f4a0b MM |
3290 | * flow.c (function_obstack): Remove. |
3291 | (flow_obstack): New variable. | |
3292 | (flow_firstobj): Likewise. | |
3293 | (create_base_block): Use the flow_obstack. | |
3294 | (split_block): Likewise. | |
3295 | (split_edge): Likewise. | |
3296 | (calculate_global_regs_live): Likewise. | |
3297 | (allocate_bb_life_data): Make it static. Likewiwse. | |
3298 | (init_flow): New function. | |
b8dad04b | 3299 | (size_int_type_wide): Remove ggc_p conditionals. |
1f8f4a0b MM |
3300 | * function.c |
3301 | (push_function_context_to): Don't call save_tree_status. | |
3302 | (pop_function_context_from): Or restore_tree_status. | |
3303 | (assign_stack_local_1): Don't call push_obstacks. | |
3304 | (find_fixup_replacement): Use xmalloc. | |
3305 | (fixup_var_refs_insns): Free the storage. | |
3306 | (insns_for_mem_walk): Don't mess with obstacks. | |
3307 | (instantiate_decls): Likewise. | |
3308 | (trampoline_address): Likewise. | |
b8dad04b | 3309 | (expand_function_end): Likewise. |
1f8f4a0b MM |
3310 | * function.h (sturct function): |
3311 | Remove obstack-related variables. | |
3312 | (save_tree_status): Don't declare. | |
b8dad04b | 3313 | (restore_tree_status): Likewise. |
1f8f4a0b | 3314 | * gcse.c (compute_can_copy): |
b8dad04b | 3315 | Don't call oballoc/obfree. |
1f8f4a0b MM |
3316 | * genattrtab.c (operate_exp): Remove |
3317 | ggc_p conditionals. | |
3318 | (simplify_cond): Likewise. | |
3319 | (simplify_test_exp): Don't mess with obstacks. | |
b8dad04b | 3320 | (optimize_attrs): Likewise. |
1f8f4a0b | 3321 | * gengenrtl.c (gendef): Don't include |
b8dad04b ZW |
3322 | ggc_p conditionals. |
3323 | * ggc-callbacks.c (ggc_p): Remove. | |
3324 | * ggc-none.c (ggc_p): Remove. | |
3325 | * ggc.h (ggc_p): Don't declare. | |
265dab10 | 3326 | * integrate.c (save_for_inline): Don't mess with obstacks. |
1f8f4a0b | 3327 | (integrate_decl_tree): Likewise. |
b8dad04b | 3328 | (output_inline_function): Likewise. |
1f8f4a0b | 3329 | * lists.c |
b8dad04b | 3330 | (init_EXPR_INSN_LIST_cache): Likewise. |
1f8f4a0b MM |
3331 | * loop.c (temp_obstack): |
3332 | Remove. | |
3333 | (rtl_obstack): Likewise. | |
3334 | (init_loop): Don't mess with obstacks. | |
3335 | (reg_address_cost): Free BIVs and GIVs. | |
3336 | (check_insns_for_bivs): Use xmalloc, not oballoc. | |
3337 | (find_mem_givs): Likewise. | |
3338 | (record_biv): Likewise. | |
3339 | (general_induction_var): Likewise. | |
b8dad04b | 3340 | (product_cheap_p): Likewse. |
1f8f4a0b | 3341 | * optabs.c (init_one_libfunc): Remove |
b8dad04b | 3342 | ggc_p conditional. |
1f8f4a0b MM |
3343 | * print-tree.c (debug_tree): Don't use |
3344 | oballoc/obfree. | |
b8dad04b | 3345 | (print_node): Likewise. |
1f8f4a0b | 3346 | * profile.c (output_func_start_profiler): |
b8dad04b | 3347 | Remove call to temporary_allocation. |
1f8f4a0b | 3348 | * reload1.c |
b8dad04b | 3349 | (eliminate_regs_in_insn): Don't mess with obstacks. |
1f8f4a0b MM |
3350 | * resource.c |
3351 | (mark_target_live_regs): Use xmalloc. | |
b8dad04b | 3352 | (free_resource_info): Free the memory. |
1f8f4a0b MM |
3353 | * rtl.c (rtl_obstack): |
3354 | Remove. | |
3355 | (rtvec_alloc): Don't mess with obstacks. | |
3356 | (rtx_alloc): Likewise. | |
3357 | (rtx_free): Remove. | |
3358 | (copy_rtx): Don't handle `b' cases. | |
b8dad04b | 3359 | (read_rtx): Use a local rtl_obstack. |
1f8f4a0b MM |
3360 | * rtl.h (oballoc): Remove. |
3361 | (obfree): Likewise. | |
3362 | (pop_obstacks): Likewise. | |
3363 | (push_obstacks): Likewise. | |
3364 | (allocate_bb_life_data): Likewise. | |
3365 | (allocate_reg_life_data): Likewise. | |
b8dad04b | 3366 | (rtx_free): Likewise. |
1f8f4a0b | 3367 | * sdbout.c (sdbout_queue_anonymous_type): |
b8dad04b | 3368 | Use tree_cons, not saveable_tree_cons. |
1f8f4a0b | 3369 | * simplify-rtx.c |
b8dad04b | 3370 | (cselib_init): Don't mess with obstacks. |
1f8f4a0b MM |
3371 | * stmt.c |
3372 | (mark_block_nesting): Mark the label_chain. | |
3373 | (epxand_label): Use ggc_alloc, not oballoc. | |
3374 | (clear_last_expr): Don't mess with obstacks. | |
3375 | (expand_decl_cleanup): Likewise. | |
3376 | (expand_dcc_cleanup): Likewise. | |
3377 | (expand_dhc_cleanup): Likewise. | |
3378 | (expand_anon_union_decl): Likewise. | |
3379 | (add_case_node): Use xmalloc, not oballoc. | |
3380 | (free_case_nodes): New function. | |
b8dad04b | 3381 | (expand_end_case): Call it. |
1f8f4a0b MM |
3382 | * stor-layout.c (layout_type): Don't |
3383 | mess with obstacks. | |
b8dad04b | 3384 | (layout_type): Likewise. |
1f8f4a0b MM |
3385 | * toplev.c (wrapup_global_declarations): |
3386 | Likewise. | |
3387 | (compile_file): Remove ggc_p conditionals. | |
3388 | (rest_of_compilation): Call init_flow. Remove ggc_p conditionals. | |
b8dad04b | 3389 | (decode_f_option): Remove ggc_p conditionals. |
1f8f4a0b MM |
3390 | * tree.c |
3391 | (function_maybepermanent_obstack): Remove. | |
3392 | (maybepermanent_obstack): Likewise. | |
3393 | (function_obstack): Likewise. | |
3394 | (tmeporary_obstack): Likewise. | |
3395 | (momentary_obstack): Likewise. | |
3396 | (temp_decl_obstack): Likewise. | |
3397 | (saveable_obstack): Likewise. | |
3398 | (rtl_obstack): Likewise. | |
3399 | (current_obstack): Likewise. | |
3400 | (expression_obstack): Likewise. | |
3401 | (struct obstack_stack): Likewise. | |
3402 | (obstack_stack): Likewise. | |
3403 | (obstack_stack_obstack): Likewise. | |
3404 | (maybepermanent_firstobj): Likewise. | |
3405 | (temporary_firstobj): Likewise. | |
3406 | (momentary_firstobj): Likewise. | |
3407 | (temp_decl_firstobj): Likewise. | |
3408 | (momentary_function_firstobj): Likewise. | |
3409 | (all_types_permanent): Likewise. | |
3410 | (struct momentary_level): Likewise. | |
3411 | (momentary_stack): Likewise. | |
3412 | (init_obstacks): Remove initialization of removed obstacks. | |
3413 | (save_tree_status): Remove. | |
3414 | (restore_tree_status): Likewise. | |
3415 | (temporary_allocation): Liekwise. | |
3416 | (end_temporary_allocation): Liekwise. | |
3417 | (resume_temporary_allocation): Likewise. | |
3418 | (saveable_allocation): Likewise. | |
3419 | (push_obstacks): Likewise. | |
3420 | (push_obstacks_nochange): Likewise. | |
3421 | (pop_obstacks): Likewise. | |
3422 | (allocation_temporary_p): Likewise. | |
3423 | (permanent_allocation): Likewise. | |
3424 | (preserve_data): Likewise. | |
3425 | (preserve_initializer): Likewise. | |
3426 | (rtl_in_current_obstack): Likewise. | |
3427 | (rtl_in_saveable_obstack): Likewise. | |
3428 | (oballoc): Likewise. | |
3429 | (obfree): Likewise. | |
3430 | (savealloc): Likewise. | |
3431 | (expralloc): Likewise. | |
3432 | (print_obstack_name): Likewise. | |
3433 | (debug_obstack): Likewise. | |
3434 | (object_permanent_p): Likewise. | |
3435 | (push_momentary): Likewise. | |
3436 | (perserve_momentary): Likewise. | |
3437 | (clear_momentary): Likewise. | |
3438 | (pop_momentary): Likewise. | |
3439 | (pop_momentary_nofree): Likewise. | |
3440 | (suspend_momentary): Likewise. | |
3441 | (resume_momentary): Likewise. | |
3442 | (make_node): Don't set TREE_PERMANENT. | |
3443 | (copy_node): Remove ggc_p conditionals. Don't set TYPE_OBSTACK. | |
3444 | Don't set TREE_PERMANENT. | |
3445 | (get_identifier): Remove ggc_p conditionals. | |
3446 | (build_string): Likewise. | |
3447 | (make_tree_vec): Likewise. | |
3448 | (build_decl_list): Remove. | |
3449 | (build_expr_list): Likewise. | |
3450 | (tree_cons): Remove ggc_p conditionals. | |
3451 | (decl_tree_cons): Remove. | |
3452 | (expr_tree_cons): Likewise. | |
3453 | (perm_tree_cons): Likewise. | |
3454 | (temp_tree_cons): Likewise. | |
3455 | (saveable_tree_cons): Likewise. | |
3456 | (build1): Remove ggc_p conditionals. | |
3457 | (build_parse_node): Likewise. | |
3458 | (build_type_attribute_variant): Don't mess with obstacks. | |
3459 | (build_type_copy): Likewise. | |
3460 | (type_hash_canon): Likewise. | |
3461 | (build_pointer_type): Likewise. | |
3462 | (build_reference_type): Likewise. | |
3463 | (build_index_type): Likewise. | |
3464 | (build_range_type): Likewise. | |
b8dad04b | 3465 | (dump_tree_statistics): Don't print obstack information. |
1f8f4a0b MM |
3466 | * tree.h |
3467 | (struct tree_common): Remove permanent_flag. | |
3468 | (TREE_PERMANENT): Remove. | |
3469 | (TREE_SET_PERMANENT): Likewise. | |
3470 | (TYPE_OBSTACK): Likewise. | |
3471 | (struct tree_type): Remove obstack. | |
3472 | (oballoc): Remove. | |
3473 | (savealloc): Likewise. | |
3474 | (build_decl_list): Likewise. | |
3475 | (build_expr_list): Likewise. | |
3476 | (perm_tree_cons): Likewise. | |
3477 | (temp_tree_cons): Likewise. | |
3478 | (saveable_tree_cons): Likewise. | |
3479 | (decl_tree_cons): Likewise. | |
3480 | (expr_tree_cons): Likewise. | |
3481 | (suspend_momentary): Likewise. | |
3482 | (allocation_temporary_p): Likewise. | |
3483 | (resume_momentary): Likewise. | |
3484 | (push_obstacks_nochange): Likewise. | |
3485 | (permanent_allocation): Likewise. | |
3486 | (push_momentary): Likewise. | |
3487 | (clear_momentary): Likewise. | |
3488 | (pop_momentary): Likewise. | |
3489 | (end_temporary_allocation): Likewise. | |
3490 | (pop_obstacks): Likewise. | |
3491 | (push_obstacks): Likewise. | |
3492 | (pop_momentary_nofree): LIkewise. | |
3493 | (preserve_momentary): Likewise. | |
3494 | (saveable_allocation): Likewise. | |
3495 | (temporary_allocation): Likewise. | |
3496 | (resume_temporary_allocation): Likewise. | |
3497 | (perserve_initializer): Likewise. | |
3498 | (debug_obstack): Likewise. | |
3499 | (rtl_in_current_obstack): Likewise. | |
3500 | (rtl_in_saveable_obstack): Likewise. | |
b8dad04b | 3501 | (obfree): Likewise. |
1f8f4a0b MM |
3502 | * varasm.c (current_obstack): Remove. |
3503 | (saveable_obstack): Remove. | |
3504 | (rtl_obstack): Remove. | |
3505 | (immed_double_const): Don't mess with obstacks. | |
3506 | (immed_real_cons): Likewise. | |
3507 | (output_constant_def): Likewise. | |
3508 | (init_varasm_status): Use xcalloc. | |
3509 | (mark_pool_constant): Mark the pool constant itself. | |
3510 | (free_varasm_status): Free memory. | |
3511 | (decode_rtx_const): Call bzero directly, rather than expanding it | |
3512 | inline. | |
3513 | (record_rtx_const): Don't mess with obstacks. | |
3514 | (force_const_mem): Likewise. | |
3515 | * config/arm/arm.c (arm_encode_call_attribute): Remove ggc_p | |
3516 | conditionals. | |
3517 | (aof_pic_entry): Likewise. | |
3518 | * config/ia64/ia64.c (ia64_encode_section_info): Likewise. | |
3519 | * config/m32r/m32r.c (m32r_encode_section_info): Likewise. | |
3520 | * config/pa/pa.c (saveable_obstack): Remove. | |
3521 | (rtl_obstack): Likewise. | |
3522 | (current_obstack): Likewise. | |
3523 | (output_call): Don't mess with obstacks. | |
3524 | (hppa_encode_label): Remove ggc_p conditionals. | |
3525 | * config/romp/romp.c (get_symref): Don't mess with obstacks. | |
3526 | * config/rs6000/rs6000.c (output_toc): Remove ggc_p conditional. | |
3527 | (rs6000_encode_section_info): Likewise. | |
3528 | * config/sh/sh.c (get_fpscr_rtx): Likewise. | |
b8dad04b | 3529 | |
9dcbdc7e JH |
3530 | Thu Oct 12 16:02:31 MET DST 2000 Jan Hubicka <jh@suse.cz> |
3531 | ||
3532 | * i386.md (adddi3, subdi3 splitters): Update for new pattern. | |
3533 | (addsi3_cc, addqi3_cc, subsi3_cc): Remove | |
3534 | (addsi3_carry): Canonicalize. | |
3535 | (addqi_5): Remove '*'. | |
3536 | (sbb pattern): Canonicalize. | |
3537 | ||
3538 | * i386.md (cmp to inc/add peep2): New. | |
3539 | ||
74490e05 RE |
3540 | 2000-10-12 Richard Earnshaw <rearnsha@arm.com> |
3541 | ||
3542 | * bb-reorder.c (reorder_basic_blocks): Allocate an aux block for | |
3543 | the exit block. | |
3544 | ||
bc87c1c8 JM |
3545 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3546 | ||
3547 | * gcc.texi: Merge in contents of README.TRAD and TESTS.FLUNK. | |
3548 | * README.TRAD, TESTS.FLUNK: Remove. | |
3549 | ||
9fa8f75d JM |
3550 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3551 | ||
3552 | * c-common.c (decl_attributes): Don't allow strftime formats with | |
3553 | first_arg_num nonzero. | |
3554 | (check_format_info): Set wanted_type and wanted_type_name to zero | |
3555 | before they are possibly assigned and used. | |
3556 | ||
4831bc84 JM |
3557 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3558 | ||
3559 | * c-common.c (scanf_flag_specs): Add flags ' and I. | |
3560 | (strftime_flag_pairs): Disallow any pair of the _, - and 0 flags, | |
3561 | or the ^ and # flags together. | |
3562 | (scan_char_table): Handle the ' and I flags. | |
3563 | (format_types): Add ' and I flags for scanf. | |
3564 | ||
2f7026a0 JM |
3565 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3566 | ||
3567 | * c-common.c (print_char_table): Use the unpromoted type for | |
3568 | lengths "h" and "hh" with conversions dioxXu. | |
3569 | (check_format_types): Apply the default argument promotions where | |
3570 | the wanted type is not a pointer target. | |
3571 | ||
bb58bec5 | 3572 | 2000-10-11 Michael Meeks <mmeeks@gnu.org> |
b8dad04b | 3573 | Joseph S. Myers <jsm28@cam.ac.uk> |
bb58bec5 JM |
3574 | |
3575 | * c-typeck.c (check_modify_expr): New function. | |
3576 | (build_modify_expr): Call it if warn_sequence_point. | |
3577 | * c-decl.c (warn_sequence_point): New variable. | |
3578 | (c_decode_option): Handle -Wsequence-point and | |
3579 | -Wno-sequence-point. Enable -Wsequence-point as part of -Wall. | |
3580 | * c-tree.h (warn_sequence_point): Declare. | |
3581 | * invoke.texi (-Wsequence-point): Document. | |
3582 | * toplev.c (documented_lang_options): Add -Wsequence-point and | |
3583 | -Wno-sequence-point. | |
3584 | Original work by Michael Meeks, 16 Jun 1998. | |
3585 | ||
0fba7208 RK |
3586 | Wed Oct 11 06:15:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3587 | ||
3588 | * tree.c (get_narrower): Don't look at precision of field if | |
3589 | not laid out yet. | |
3590 | ||
67e570ea DC |
3591 | Tue Oct 10 23:14:33 2000 Denis Chertykov <denisc@overta.ru> |
3592 | ||
3593 | * config/avr/avr.c (valid_machine_decl_attribute): Allow `extern' | |
3594 | declaration for data with "progmem" attribute. | |
3595 | ||
80b8585d MM |
3596 | 2000-10-09 Marek Michalkiewicz <marekm@linux.org.pl> |
3597 | ||
3598 | * config/avr/avr.c (out_shift_with_cnt): Use AS2 macro. | |
3599 | Correct insn length if shift count is a memory operand. | |
3600 | * config/avr/avr.md: New define_peephole2 to use *reload_inqi. | |
3601 | (*iorhi3_clobber): Change lo8 to hi8. | |
3602 | (zero_extendhisi2): Change %B0 to %A1. | |
3603 | (ashlhi3, ashrhi3): Correct insn length. | |
3604 | (andhi3, abssf2, extendqisi2, extendhisi2): Change "cc" | |
3605 | from "clobber" to "set_n" in some alternatives. | |
3606 | ||
462561b7 JJ |
3607 | 2000-10-10 Jakub Jelinek <jakub@redhat.com> |
3608 | ||
3609 | * reload1.c (calculate_needs_all_insns): If deleting an instruction, | |
3610 | remove its insn_chain structure as well. | |
3611 | ||
0b8833aa DA |
3612 | 2000-10-09 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3613 | ||
3614 | * dbxout.c (dbxout_source_line): Remove extra tab. | |
3615 | ||
c690f089 HPN |
3616 | 2000-10-09 Hans-Peter Nilsson <hp@bitrange.com> |
3617 | ||
3618 | * config/elfos.h (UNIQUE_SECTION): Apply STRIP_NAME_ENCODING on name. | |
3619 | ||
1854631b RH |
3620 | 2000-10-09 Richard Henderson <rth@cygnus.com> |
3621 | ||
3622 | * Makefile.in (LANG_LIB2FUNCS): Remove. | |
3623 | (LIB2FUNCS): Remove _pure. | |
3624 | (LIB2ADD): Remove LANG_LIB2FUNCS. | |
3625 | (stage_a): Don't set LANG_LIB2FUNCS. | |
3626 | * libgcc2.c (__terminate): Mark noreturn. | |
3627 | (__pure_virtual): Remove. | |
3628 | * mklibgcc.in: Remove LIB2ADD .txt processing. | |
3629 | ||
880c4dcb RE |
3630 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3631 | ||
3632 | * arm.md (push_multi): Revert unintended change. | |
3633 | ||
5895f793 RE |
3634 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3635 | ||
b8dad04b | 3636 | * arm.c: Miscellaneous white space and comment clean-ups. No |
5895f793 RE |
3637 | functional change. |
3638 | * arm.md: Likewise. | |
3639 | ||
1092710d KG |
3640 | 2000-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3641 | ||
3642 | * c-common.c (c_expand_builtin_printf): Set the TREE_TYPE of a new | |
3643 | STRING_CST by calling combine_strings. | |
3644 | ||
ca356f3a RE |
3645 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3646 | ||
3647 | * arm.c (thumb_expand_movstrqi): Rewrite to support SSA form. | |
3648 | (thumb_output_move_mem_multiple): Support new insn format. | |
3649 | * arm.md (movmem12b): Use SSA compatible format. | |
3650 | (movmem8b): Likewise. | |
3651 | ||
cca0a211 RE |
3652 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3653 | ||
3654 | * arm.md (predicable): New attribute, default to "no". | |
3655 | (all patterns): Mark as predicable if appropriate. | |
3656 | (conditional execution splits): Split using predication format. | |
3657 | (define_cond_exec): Define. | |
3658 | * arm.c (arm_print_operand): handle insn predicate. | |
b8dad04b | 3659 | |
1146cfde GP |
3660 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
3661 | ||
3662 | * README.NS32K: Remove file. | |
3663 | ||
3664 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
3665 | ||
3666 | * README-bugs: Remove file. | |
3667 | ||
4d0230e1 PT |
3668 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
3669 | * aclocal.m4 (AM_GNU_GETTEXT): Fix non portable use of == operator | |
3670 | for test. | |
3671 | * configure: Rebuilt. | |
3672 | ||
9fdf713f PT |
3673 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
3674 | * aclocal.m4 (AM_WITH_NLS): When not using included gettext, | |
3675 | disable catalog building if no suitable program was found. | |
3676 | Move warning message from here | |
3677 | (AM_GNU_GETTEXT): To here. | |
3678 | * configure: Rebuilt. | |
3679 | ||
00036f5c PT |
3680 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
3681 | * aclocal.m4 (GCC_PATH_PROG): New. Like AC_PATH_PROG but uses | |
3682 | different cache variables. | |
3683 | (GCC_PATH_PROG_WITH_TEST): New. Like AM_PATH_PROG_WITH_TEST but | |
3684 | uses different cache variables. | |
3685 | (AM_WITH_NLS): Use GCC_PATH_PROG and GCC_PATH_PROG_WITH_TEST. | |
3686 | * configure: Regenerated. | |
b8dad04b | 3687 | |
aefa45d3 RH |
3688 | 2000-10-08 Richard Henderson <rth@cygnus.com> |
3689 | ||
3690 | * Makefile.in (libgcc.mk): Pass SHLIB_EXT, not SHLIB_LIBS. | |
3691 | * configure.in (sparc*-*-solaris*): Use t-slibgcc{,-sld}. | |
3692 | * mklibgcc.in: Consider SHLIB_LINK the entire shlib build command. | |
3693 | Use SHLIB_EXT. | |
3694 | ||
3695 | * config/t-linux (SHLIB_EXT): New. | |
3696 | (SHLIB_LINK): Use the entire build command, with substitutions. | |
3697 | (SHLIB_LIBS): Remove. | |
3698 | * config/alpha/t-osf4: Likewise. | |
3699 | * config/mips/t-iris6: Likewise. | |
3700 | * config/sparc/t-sol2: Likewise, but move shlib stuff... | |
3701 | * config/sparc/t-slibgcc-sld: ...here. | |
3702 | * config/sparc/t-slibgcc: New file. | |
3703 | ||
b15ad712 JM |
3704 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
3705 | ||
3706 | * tm.texi (INTMAX_TYPE, UINTMAX_TYPE): Define. | |
3707 | * c-common.h (enum c_tree_index): Add CTI_INTMAX_TYPE and | |
3708 | CTI_UINTMAX_TYPE. | |
3709 | (intmax_type_node, uintmax_type_node): Define. | |
3710 | * c-common.c (decl_attributes): If pedantic, warn if `mode' | |
3711 | attributes create a type wider than intmax_t. | |
3712 | (T_IM, T_UIM): Define properly. | |
3713 | * c-decl.c (INTMAX_TYPE, UINTMAX_TYPE): Define if not already | |
3714 | defined. | |
3715 | (init_decl_processing): Initialize intmax_type_node and | |
3716 | uintmax_type_node. | |
3717 | * c-lex.c (lex_number): When pedantic and warning for integer | |
3718 | constants that are too large, in C99 mode warn for those that have | |
3719 | a type wider than long long. | |
3720 | ||
2588e44e JM |
3721 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
3722 | ||
3723 | * c-common.c (FMT_FLAG_ARG_CONVERT, FMT_FLAG_SCANF_A_KLUDGE, | |
3724 | FMT_FLAG_FANCY_PERCENT_OK): Define. | |
3725 | (format_char_info): Add flag "4" to comment. | |
3726 | (format_flag_spec, format_flag_pair): New structures. | |
3727 | (format_kind_info): Add additional fields to control format | |
3728 | checking. | |
3729 | (printf_flag_specs, printf_flag_pairs, scanf_flag_specs, | |
3730 | scanf_flag_pairs, strftime_flag_specs, strftime_flag_pairs): New | |
3731 | arrays. | |
3732 | (time_char_table): Use "4" flag to handle %Ey. | |
3733 | (format_types): Add entries for new fields. | |
3734 | (get_flag_spec): New function. | |
3735 | (check_format_info): Increase size of flag_chars[] to 256. | |
3736 | Control format checking using the new fields of a format_kind_info | |
3737 | and the new tables; remove all conditionals on printf_format_type, | |
3738 | scanf_format_type or strftime_format_type. Handle all details of | |
3739 | bad combinations of flags (including width, precision and strftime | |
3740 | modifiers) through data rather than ad hoc code. Handle all | |
3741 | details of standard versions in which flags appeared through | |
3742 | data. Use the "4" flag. | |
3743 | ||
7b7de7c0 WC |
3744 | 2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com> |
3745 | ||
3746 | * config/h8300/h8300.md: Remove the memory alternative and correct | |
3747 | the insn lengths in the templates for sign extention and zero | |
3748 | extention. | |
3749 | ||
9a1ba437 RH |
3750 | 2000-10-07 Richard Henderson <rth@cygnus.com> |
3751 | ||
3752 | * calls.c (expand_call): Disallow sibcalls to noreturn functions. | |
3753 | * flow.c (make_edges): Revert last change. | |
3754 | ||
3755 | * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Don't test | |
3756 | TREE_THIS_VOLATILE. | |
3757 | * config/pa/pa.h (FUNCTION_OK_FOR_SIBCALL): Likewise. | |
3758 | ||
d38d55b4 DB |
3759 | 2000-10-06 David O'Brien <obrien@dragon.nuxi.com> |
3760 | ||
3761 | * config/alpha/elf.h: Standardize the formatting. | |
3762 | ||
94984e91 DB |
3763 | 2000-10-06 David O'Brien <obrien@FreeBSD.org> |
3764 | ||
3765 | * config/alpha/elf.h: Protect the ASM_OUTPUT_IDENT definition with an | |
3766 | #undef. | |
3767 | ||
3e4eac3f RH |
3768 | 2000-10-06 Richard Henderson <rth@cygnus.com> |
3769 | ||
3770 | * function.c (diddle_return_value): Examine | |
3771 | current_function_return_rtx instead of the DECL_RESULT. | |
3772 | (expand_function_end): Handle reloading DECL_RESULT from memory | |
3773 | into a hard register. Query promote_mode for sign of mismatched | |
3774 | modes. | |
3775 | ||
4071f896 VM |
3776 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
3777 | ||
3778 | * haifa-sched.c (schedule_insns): Fix typo in freeing | |
3779 | forward_dependency_cache. | |
3780 | ||
eb69f95c AO |
3781 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
3782 | ||
3783 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): Add | |
3784 | `TARGET_SH2' as a condition. | |
3785 | ||
178b88b9 VM |
3786 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
3787 | ||
3788 | * haifa-sched.c (anti_dependency_cache, output_dependency_cache, | |
3789 | forward_dependency_cache): New variables. | |
3790 | (add_dependence, remove_dependence): Use anti_dependency_cache and | |
3791 | output_dependency_cache. | |
3792 | (compute_block_forward_dependences): Use forward_dependency_cache. | |
3793 | (schedule_insns): Allocate and free memory for anti/output/forward | |
3794 | dependencies caches. | |
b8dad04b | 3795 | |
827bdee4 AO |
3796 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
3797 | ||
3798 | * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of | |
3799 | `! TARGET_SH1'. Reindent. | |
3800 | ||
c70eaeaf KG |
3801 | 2000-10-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3802 | ||
3803 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): | |
3804 | Move functions from here ... | |
3805 | ||
3806 | * c-common.c (is_valid_printf_arglist, c_expand_builtin_printf): | |
3807 | ... to here. | |
3808 | (c_expand_builtin): New function. | |
3809 | (init_function_format_info): Don't set `check_function_format_ptr'. | |
3810 | (c_common_nodes_and_builtins): Set built_in_class type for | |
3811 | printf/__builtin_printf to BUILT_IN_FRONTEND. | |
3812 | (c_expand_expr): Handle CALL_EXPRs that are front-end builtins. | |
3813 | ||
3814 | * c-common.h (build_function_call): Declare. | |
3815 | ||
3816 | * expr.c (expand_expr): Pass builtins with class BUILT_IN_FRONTEND | |
3817 | to `lang_expand_expr' rather than `expand_builtin'. | |
3818 | ||
3819 | * tree.c (check_function_format_ptr): Delete. | |
3820 | ||
3821 | * tree.h (check_function_format_ptr): Likewise. | |
3822 | ||
f299afab HPN |
3823 | 2000-10-06 Hans-Peter Nilsson <hp@bitrange.com> |
3824 | ||
3825 | * dwarf2out.c (build_cfa_loc): Correct to use DW_OP_regx or | |
3826 | DW_OP_bregx when cfa->reg > 31. | |
3827 | ||
3828 | * frame-dwarf2.c (decode_stack_op) [case DW_OP_regx]: Add missing | |
3829 | break. | |
3830 | ||
b313a0fe RH |
3831 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3832 | ||
3833 | * c-decl.c (warn_missing_noreturn): Remove. | |
3834 | (c_expand_body): Don't set or check can_reach_end. | |
3835 | * c-tree.h (warn_missing_noreturn): Move ... | |
3836 | * flags.h: ... here. | |
3837 | (can_reach_end): Remove. | |
3838 | * flow.c (check_function_return_warnings): New. | |
3839 | (make_edges): No edge to exit for noreturn sibcalls. | |
3840 | * function.c (expand_function_end): Save the return value | |
3841 | clobber instruction. | |
3842 | (mark_function_status): Mark it. | |
3843 | * function.h (struct function): Add x_clobber_return_insn. | |
3844 | * jump.c (can_reach_end): Remove. | |
3845 | (calculate_can_reach_end): Remove. | |
3846 | (jump_optimize_1): Don't call it. | |
3847 | * output.h (check_function_return_warnings): Declare. | |
3848 | * toplev.c (warn_missing_noreturn): Move from c-decl.c | |
3849 | (rest_of_compilation): Call check_function_return_warnings. | |
3850 | ||
83dad10c RH |
3851 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3852 | ||
3853 | * Makefile.in (NM_FOR_TARGET): New. | |
3854 | (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES. | |
3855 | (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET. | |
3856 | * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map. Depend the | |
3857 | shared library build on that and EXTRA_MULTILIB_PARTS. | |
3858 | * mkmap-flat.awk: New file. | |
3859 | * mkmap-symver.awk: New file. | |
3860 | * libgcc-std.ver: New file. | |
3861 | * config/libgcc-glibc.ver: New file. | |
3862 | * config/ia64/libgcc-ia64.ver: New file. | |
3863 | * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
3864 | (SHLIB_LINK): Add --version-script. | |
3865 | * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver. | |
3866 | * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
3867 | * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
3868 | (SHLIB_LINK): Add -M. | |
3869 | ||
d6eacd48 RH |
3870 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3871 | ||
3872 | * Makefile.in (LIB2FUNCS): Add _clz. | |
3873 | * libgcc2.c (__ffsdi2): Use count_trailing_zeros. | |
3874 | (__clz_tab): Put in its own unit, non-static. | |
3875 | * libgcc2.h: Always include longlong.h. | |
3876 | ||
29279975 RH |
3877 | * longlong.h [alpha] (count_leading_zeros): Use cmpbge with |
3878 | a zero instead of -1. | |
3879 | (count_trailing_zeros): Likewise. | |
3880 | ||
c74fa144 RH |
3881 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3882 | ||
3883 | * config/alpha/alpha.c (alpha_emit_setcc): Don't swap GT tests | |
3884 | when second op1 is const0_rtx. Validate op0 as a register. | |
3885 | * config/alpha/alpha.md (setcc_internal): Don't allow constants | |
3886 | in the first argument of the compare. | |
3887 | (setcc_swapped_internal): Likewise. | |
3888 | (setne_internal): Likewise. | |
3889 | ||
c5620996 GK |
3890 | 2000-10-05 Geoff Keating <geoffk@cygnus.com> |
3891 | ||
3892 | * tree.c (tree_size): New function split out of copy_node. | |
3893 | (make_node): Remove obstack handling. Use tree_size. | |
3894 | (copy_node): Use tree_size. | |
3895 | * tree.h: Prototype tree_size. | |
3896 | ||
331fe257 RH |
3897 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3898 | ||
3899 | * diagnostic.c (output_format): Add missing break. | |
3900 | ||
cc0cbae1 JW |
3901 | 2000-10-05 Jim Wilson <wilson@cygnus.com> |
3902 | ||
3903 | * function.c (fixup_var_refs_1, case SET): When gen_move_insn returns a | |
3904 | SEQUENCE, call emit_insn_before, copy PATTERN and REG_NOTES of last | |
3905 | sequence insn to INSN, and delete last sequence insn. | |
3906 | ||
f5fa9a5b PE |
3907 | 2000-10-05 Phil Edwards <pme@gcc.gnu.org> |
3908 | ||
3909 | * gcc.c (main): Include generated configargs.h header | |
3910 | and use arguments in '-v' output. | |
3911 | ||
2296d164 RK |
3912 | Thu Oct 5 16:16:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3913 | ||
3914 | * gcc.c: Move data on prefixes forward in file and reorganize. | |
3915 | (md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1): | |
3916 | Always define, but make null if no value. | |
3917 | (static_specs): Add "md_exec_prefix", "md_startfile_prefix", | |
3918 | and "md_startfile_prefix_1". | |
3919 | (main): Check whether md_exec_prefix and the others are the | |
3920 | null string rather than whether the macro is defined. | |
3921 | ||
43d75418 R |
3922 | Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
3923 | ||
3924 | * (convert_move): Use zero_extendpsisi2 to do an unsigned extension | |
3925 | from PSImode to SImode. | |
3926 | ||
e389897b JJ |
3927 | 2000-10-05 Jakub Jelinek <jakub@redhat.com> |
3928 | ||
3929 | * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion | |
3930 | from float to integral mode with HOST_BITS_PER_WIDE_INT 64. | |
3931 | * dwarf2out.c (add_const_value_attribute): Divide by 4, not | |
3932 | sizeof(long). | |
3933 | ||
b8fbe62c RK |
3934 | Thu Oct 5 09:31:31 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3935 | ||
3936 | * fold-const.c (fold, case MINUS_EXPR, case EQ_EXPR): Perform | |
3937 | negation in proper type.a | |
3938 | ||
50503ac8 RH |
3939 | 2000-10-04 Richard Henderson <rth@cygnus.com> |
3940 | ||
3941 | * configure.in (enable-shared): New. | |
3942 | * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well. | |
3943 | (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc. | |
3944 | * mklibgcc.in: Use them to link shared a libgcc. | |
3945 | * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New. | |
3946 | * config/alpha/t-ieee (SHLIB_MULTILIB): New. | |
3947 | * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New. | |
3948 | * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New. | |
3949 | ||
3950 | * configure.in (alpha-osf*): Use t-osf and x-osf. | |
3951 | * config/alpha/t-osf: New file. | |
3952 | * config/alpha/t-osf4: New file. | |
3953 | * config/alpha/x-osf: New file. | |
3954 | * config/alpha/x-alpha: Remove file. | |
3955 | ||
4b606faf WC |
3956 | 2000-10-04 Will Cohen <wcohen@redhat.com> |
3957 | ||
3958 | * c-typeck.c (process_init_element): Added warning for zero-length | |
3959 | array. | |
3960 | ||
3961 | * extend.texi (Zero Length): State that static initializers for | |
3962 | zero-length arrays are not allowed. | |
3963 | ||
c9b89a21 JH |
3964 | Mon Oct 2 14:50:14 MET DST 2000 Jan Hubicka <jh@suse.cz> |
3965 | ||
3966 | * rtlanal.c (single_set_1): Do not require USE and CLOBBERs | |
3967 | to come last. | |
3968 | ||
81bce466 MH |
3969 | 2000-10-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
3970 | ||
3971 | * config/float-c4x.h: New. | |
3972 | * configure.in (c4x-*): Set float_format to c4x. | |
b8dad04b | 3973 | * configure: Regenerate. |
81bce466 | 3974 | |
72882e08 KG |
3975 | 2000-10-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3976 | ||
3977 | * configure.in (sparc-*-solaris2*): Disable 32-to-64 cross | |
3978 | compilation for solaris versions 2.7 and greater. | |
3979 | ||
ea205a52 ME |
3980 | 2000-10-02 Marc Espie <espie@openbsd.org> |
3981 | ||
3982 | * config/alpha.h (WORD_SWITCH_TAKES_ARG): add -rpath to default, | |
3983 | instead of redefining from scratch. | |
3984 | ||
618ec0d7 DB |
3985 | 2000-10-02 David O'Brien <obrien@dragon.nuxi.com> |
3986 | ||
3987 | * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define. | |
3988 | ||
f15b9af9 MM |
3989 | 2000-10-01 Mark Mitchell <mark@codesourcery.com> |
3990 | ||
776749c5 MM |
3991 | * config/ns32k/genix.h: Remove. |
3992 | * config/ns32k/x-genix: Likewise. | |
3993 | * config/ns32k/xm-genix.h: Likewise. | |
3994 | * config/fx80: Remove all filee in directory. | |
3995 | * config/pyr: Likewise. | |
3996 | * config/tahoe: Likewise. | |
3997 | * config/gmicro: Likewise. | |
3998 | * config/spur: Likewise. | |
3999 | * configure.in: Remove configury bits for above targets. | |
4000 | * configure: Regenerated. | |
b8dad04b | 4001 | |
a7b4171a MM |
4002 | * configure.in: Don't configure chill by default. |
4003 | * configure: Regenerated. | |
b8dad04b | 4004 | |
f15b9af9 MM |
4005 | * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only. |
4006 | (lang_mark_false_label_stack): Remove. | |
4007 | * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate | |
4008 | <top level> string in GC area. | |
4009 | (mark_splay_tree_node): New function. | |
4010 | (mark_splay_tree): Likewise. | |
4011 | * except.c (mark_eh_status): Only call lang_mark_false_label_stack | |
4012 | if it exists. | |
4013 | * ggc-callbacks.c (lang_mark_false_label_stack): Remove. | |
4014 | * ggc-common.c (lang_mark_false_label_stack): Change type. | |
4015 | * ggc.h (ggc_alloc_string): Add comment. | |
4016 | (ggc_strdup): New function. | |
b8dad04b | 4017 | |
51296ba0 DC |
4018 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> |
4019 | ||
4020 | * config/avr/avr.h (BRANCH_COST): Define as 0. | |
4021 | ||
4022 | * config/pdp11/pdp11.c: #include "tree.h" added. | |
4023 | ||
adcd8f77 MM |
4024 | 2000-09-30 Marek Michalkiewicz <marekm@linux.org.pl> |
4025 | ||
4026 | * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out, | |
4027 | ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases | |
4028 | with known shift count. | |
4029 | * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3): | |
4030 | New alternative for shift count 2 with no scratch register. | |
4031 | (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to | |
4032 | "set_n" for shift counts 1 and 2. | |
4033 | ||
e35b9579 GK |
4034 | 2000-09-30 Geoff Keating <geoffk@cygnus.com> |
4035 | ||
4036 | * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE. Calculate | |
4037 | the mask value from the individual SET operations. | |
4038 | (return_internal_si): Move the USE after the RETURN. | |
4039 | (return_internal_di): Likewise. | |
4040 | (return_and_restore_fpregs_si): Likewise. | |
4041 | (return_and_restore_fpregs_di): Likewise. | |
4042 | (return_eh_si): Likewise. | |
4043 | (return_eh_di): Likewise. | |
4044 | * config/rs6000/rs6000.c (mtcrf_operation): Don't look for, | |
4045 | or check, the USE. | |
4046 | (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr. | |
4047 | Don't generate a PARALLEL around a single operation movsi_to_cr. | |
4048 | Generate the RETURN first in any PARALLELs. | |
4049 | ||
4050 | * rtlanal.c (single_set_1): Use fatal_insn to display the | |
4051 | invalid insn. Check for more cases when a USE or CLOBBER occurs | |
4052 | before a SET. | |
4053 | * Makefile.in: Update dependencies for rtlanal.o. | |
4054 | ||
1fba7553 JM |
4055 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
4056 | ||
4057 | * i386.c: Move include of "config.h" to before that of <setjmp.h>. | |
4058 | ||
28e6b1c2 JM |
4059 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
4060 | ||
4061 | * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi: | |
4062 | Consistently use @email for formatting email addresses. | |
4063 | ||
f2fa288f RH |
4064 | 2000-09-29 Richard Henderson <rth@cygnus.com> |
4065 | ||
4066 | * cse.c (notreg_cost): New argument outer. | |
4067 | (COST): Pass in SET to notreg_cost | |
4068 | (COST_IN): New. | |
4069 | (fold_rtx): Use COST_IN. Prefer constants when costs | |
4070 | are the same. | |
4071 | ||
a1c63101 DE |
4072 | 2000-09-29 David Edelsohn <edelsohn@gnu.org> |
4073 | ||
4074 | * fixinc/inclhack.def (broken_cabs): Generalize regex. | |
4075 | * fixinc/fixincl.x: Regenerate. | |
4076 | ||
70dd0f7f FS |
4077 | 2000-09-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
4078 | ||
4079 | * loop.c (check_final_value): A GIV is not replaceable if used | |
4080 | before set. | |
4081 | ||
0c6129af JL |
4082 | Fri Sep 29 10:04:12 2000 Jeffrey A Law (law@cygnus.com) |
4083 | ||
4084 | * version.c: Bump to gcc-2.97. | |
4085 | ||
4086 | Frs Sep 29 13:37:59 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
6c698a6d JH |
4087 | |
4088 | * final.c (final_scan_insn): Remove extra extract_insn call; | |
4089 | Use caching for constrain_operands. | |
4090 | (cleanup_subreg_operands): Use caching for extract_insn. | |
4091 | * recog.c (constrain_operands_cached): New. | |
4092 | * recog.h (constrain_operands_cached): Declare. | |
4093 | * i386.c (ix86_attr_length_immediate_default, | |
4094 | ix86_attr_length_address_default, ix86_agi_dependant): Cache | |
4095 | extract_insn call. | |
4096 | ||
4097 | * recog.c (asm_noperands): Tweak. | |
4098 | (extract_insn): Do not call asm_noperads for non-asm instructions. | |
4099 | ||
4100 | Fri Sep 29 13:20:42 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
4101 | ||
4102 | * recog.c (recog_memoized): Rename to recog_memoized_1. | |
4103 | * recog.h (recog_memoized): Rename to recog_memoized_1. | |
4104 | (recog_memoized): New macro. | |
4105 | * rtl.h (single_set): Rename to single_set_1 | |
4106 | (single_set): New macro. | |
4107 | * rtlanal.c (single_set): Rename to single_set_1; expect clobbers | |
4108 | to be last. | |
4109 | ||
4110 | * i386.md (strmovsi_1, strmovhi_1 strmovqi_1): | |
4111 | Do not use match_dup of input operands at outputs. | |
4112 | Use register_operand for memory expression. | |
4113 | (rep_movsi): Put use last, canonicalize. | |
4114 | Use register_operand for memory expression. | |
4115 | (rep_movqi): Put use last. | |
4116 | Use register_operand for memory expression. | |
4117 | (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup | |
4118 | of input operands at outputs. Use register_operand for memory | |
4119 | expression. | |
4120 | (rep_stossi): Put use last; canonicalize; fix match_dup in | |
4121 | the address expression | |
4122 | (rep_stosqi): Likewise. | |
4123 | (memcmp expander): Update calls. | |
4124 | (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in | |
4125 | the clobbers. | |
4126 | ||
4127 | * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is | |
4128 | VOIDmode. | |
4129 | (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons. | |
4130 | ||
41e5a1f5 DB |
4131 | 2000-09-28 David O'Brien <obrien@FreeBSD.org> |
4132 | ||
4133 | * config/i386/freebsd-aout.h: New, FreeBSD a.out config file. | |
4134 | Contains the old contents of config/i386/freebsd.h | |
4135 | * config/i386/freebsd.h: Now the ELF rather than a.out config file. | |
4136 | Contains the old contents of config/i386/freebsd-elf.h | |
4137 | * config/i386/freebsd-elf.h: Retire this file -- contents moved to | |
4138 | config/i386/freebsd.h. | |
4139 | * configure.in: Adjust for above changes. | |
4140 | * po/POTFILES.in: Likewise. | |
4141 | * po/en_GB.po: Likewise. | |
4142 | * po/gcc.pot: Likewise. | |
4143 | * configure: Rebuilt. | |
4144 | ||
1db88ef9 | 4145 | 2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
70dd0f7f | 4146 | |
1db88ef9 FS |
4147 | * doloop.c (doloop_modify): Prevent delete_insn() from |
4148 | deleting too much. Prefer loop->top over loop->start as | |
4149 | target for the new JUMP insn. | |
4150 | (doloop_valid_p): Ignore loop with exit_count != 0. | |
4151 | ||
6a07a77f PT |
4152 | 2000-09-28 Philipp Thomas <pthomas@suse.de> |
4153 | ||
4154 | * invoke.texi (i386 Options): Add athlon to table of possible | |
4155 | choices for -mcpu=. | |
4156 | ||
b5dd2c76 GDR |
4157 | 2000-09-28 Gabriel Dos Reis <gdr@codesourcery.com> |
4158 | ||
4159 | * diagnostic.h (output_clear_message_text): New function. | |
4160 | (output_message_text): New macro. | |
4161 | ||
4162 | * diagnostic.c (clear_text_info): Rename to | |
b8dad04b | 4163 | output_clear_message_text. |
b5dd2c76 GDR |
4164 | (output_clear): Adjust. |
4165 | (output_finish): Rename to output_finalize_message. Tweek. | |
b8dad04b | 4166 | (output_to_stream): Adjust. |
b5dd2c76 | 4167 | |
d8090680 NB |
4168 | 2000-09-28 Neil Booth <neilb@earthling.net> |
4169 | ||
4170 | * cpperror.c (_cpp_begin_message): Do the test for suppression | |
b8dad04b ZW |
4171 | of warnings and pedantic warnings before the "is a warning an |
4172 | error" tests. | |
d8090680 NB |
4173 | * cppinit.c (cpp_handle_option): Remove surplus \n. |
4174 | * cpplex.c (ON_REST_ARG): Delete. | |
4175 | (skip_block_comment): Initialise prevc. | |
4176 | (parse_args): Improve error messages. | |
4177 | (maybe_paste_with_next): Use CONTEXT_VARARGS rather | |
4178 | than ON_REST_ARG. | |
4179 | * cpplib.c (cpp_push_buffer): Fix grammar in message. | |
4180 | * cppmain.c (main): Set callbacks for #ident and #pragma | |
4181 | only if no_output option is false. | |
4182 | (do_pragma_implementation): Only call the #pragma handler | |
4183 | if it is set in the cpp_reader structure. | |
4184 | ||
e93eff94 DL |
4185 | Wed Sep 27 14:00:07 2000 Donald Lindsay <dlindsay@cygnus.com> |
4186 | ||
4187 | * integrate.c (copy_insn_list): if an ignored return value | |
4188 | is being clobbered, skip cloning that into the inline copy. | |
4189 | ||
59c5d27a JM |
4190 | 2000-09-27 Joseph S. Myers <jsm28@cam.ac.uk> |
4191 | ||
4192 | * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently | |
4193 | use @uref for formatting URLs. | |
4194 | ||
15ca066d ME |
4195 | 2000-09-27 Mark Elbrecht <snowball3@bigfoot.com> |
4196 | ||
4197 | * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables | |
4198 | name and prefix. | |
4199 | ||
5a8e2650 NB |
4200 | Tue 26-Sep-2000 18:25:38 BST Neil Booth <neilb@earthling.net> |
4201 | ||
4202 | * gcc.c (cpp_options): Add spec for -ftabstop=. | |
4203 | (invoke_as): New spec that handles invoking as. | |
4204 | Update specs to handle -save-temps and -traditional. | |
4205 | * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h: | |
4206 | Use invoke_as. | |
4207 | * cp/lang-specs.h, objc/lang-specs.h: Update to use | |
4208 | invoke_as, and handle -save-temps and -traditional (if | |
4209 | appropriate). | |
4210 | ||
380f6ad3 JJ |
4211 | 2000-09-26 Jakub Jelinek <jakub@redhat.com> |
4212 | ||
4213 | * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when | |
4214 | op0 is a SUBREG. | |
4215 | (function_arg_slotno): Accept TImode/CTImode. | |
4216 | * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define | |
4217 | to UNITS_PER_WORD. | |
4218 | ||
ef120fc0 MH |
4219 | 2000-09-26 Michael Hayes <mhayes@cygnus.com> |
4220 | ||
4221 | * flow.c (flow_loop_pre_header_scan): Punt if loop enters | |
4222 | from entry block. | |
4223 | ||
cf606f45 JW |
4224 | 2000-09-25 Jim Wilson <wilson@cygnus.com> |
4225 | ||
4226 | * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS. | |
4227 | (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P. | |
4228 | (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG. | |
4229 | (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P. | |
4230 | ||
a94c1199 NB |
4231 | Tue 26-Sep-2000 00:16:22 BST Neil Booth <neilb@earthling.net> |
4232 | ||
b8dad04b | 4233 | * cpplex.c (parse_args): Don't set VOID_REST flag. |
a94c1199 NB |
4234 | (CONTEXT_VARARGS): New flag. |
4235 | (maybe_paste_with_next): Set context earlier in loop. Use | |
4236 | it. Do varargs test with CONTEXT_VARARGS flag. | |
4237 | (push_arg_context): Set CONTEXT_VARARGS flag if we're | |
4238 | pushing an argument context for a varargs argument. | |
4239 | * cpplib.h (VOID_REST): Delete. | |
b8dad04b | 4240 | * gcc.dg/cpp/vararg1.c: Add test case. |
a94c1199 | 4241 | |
317639a8 BC |
4242 | 2000-09-25 Branko Cibej <branko.cibej@hermes.si> |
4243 | ||
b8dad04b ZW |
4244 | * flags.h: Declare warning flag warn_system_headers. |
4245 | * toplev.c: Define it. | |
4246 | (W_options): Add option -Wsystem-headers. | |
4247 | * diagnostic.c (count_error): Test warn_system_headers. | |
4248 | * invoke.texi: Add description for -Wsystem-headers. | |
317639a8 BC |
4249 | * cpplib.h (cpp_options): New member warn_system_headers. |
4250 | * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test | |
4251 | CPP_IN_SYSTEM_HEADER. | |
4252 | * cpplib.c (do_import, do_pragma_once): Likewise. | |
4253 | * cpperror.c (_cpp_begin_message): Test warn_system_headers | |
4254 | and CPP_IN_SYSTEM_HEADER. | |
4255 | * cppinit.c (handle_option): Recognize -Wsystem_headers. | |
4256 | (print_help): Describe -Wsystem_headers. | |
4257 | * cpplex.c (lex_line): Reorganize condition so that warnings | |
4258 | about C++ comments in system headers can be enabled. Remove | |
4259 | label do_line_comment. | |
4260 | ||
1c6d33ef NB |
4261 | Mon 25-Sep-2000 23:38:27 BST Neil Booth <neilb@earthling.net> |
4262 | ||
4263 | * cpplex.c (save_comment): Only store the initial '/' | |
4264 | now. | |
4265 | (lex_token): Combine handling of the two comment types. | |
b8dad04b | 4266 | Pass everything but the initial '/' to save_comment. |
1c6d33ef | 4267 | |
7de4d004 NB |
4268 | Mon 25-Sep-2000 23:31:45 BST Neil Booth <neilb@earthling.net> |
4269 | ||
4270 | * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive, | |
4271 | _cpp_can_paste): New library-internal prototypes. | |
4272 | * cpplex.c (dump_param_spelling, output_line_command, | |
4273 | output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput, | |
4274 | cpp_printf, cpp_output_list): Move to cppoutput.c. | |
4275 | (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix. | |
4276 | * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to | |
4277 | cppoutput.c. | |
4278 | * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token, | |
4279 | dump_param_spelling, output_line_command, cpp_scan_buffer, | |
4280 | cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved | |
4281 | from elsewhere. | |
4282 | * Makefile.in: Add cppoutput.c. | |
4283 | * po/POTFILES.in: Add cppoutput.c. | |
4284 | ||
66db6b45 RH |
4285 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
4286 | ||
4287 | * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n. | |
4288 | * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't | |
4289 | split until after reload. | |
4290 | (rotlsi3, rotldi3): New. | |
4291 | ||
4b40f758 GDR |
4292 | 2000-09-25 Gabriel Dos Reis <gdr@codesourcery.com> |
4293 | ||
4294 | * diagnostic.c (output_last_position): Define. | |
4295 | (set_real_maximum_length): Tweek. | |
4296 | * diagnostic.h (output_last_position): Declare. | |
4297 | ||
0f290768 KH |
4298 | 2000-09-25 Kazu Hirata <kazu@hxi.com> |
4299 | ||
4300 | * config/i386/i386.c: Fix formatting. | |
4301 | ||
90e9ee6c AL |
4302 | 2000-09-24 Alan Lehotsky <alehotsky@cygnus.com> |
4303 | ||
4304 | * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when | |
4305 | UNITS_PER_WORD is small. | |
4306 | ||
0e00b68b JM |
4307 | 2000-09-25 Joseph S. Myers <jsm28@cam.ac.uk> |
4308 | ||
4309 | * c-common.c (format_char_info): Add flags2; update comments. | |
4310 | (print_char_table, scan_char_table, time_char_table): Split some | |
4311 | flags out into flags2. | |
4312 | (check_format_info): Use flags2 for those flags, for identifying | |
4313 | the initial character of a scanf scanset, and for identifying | |
4314 | printf formats where the '0' flag is ignored with precision. | |
4315 | ||
0a3e1f45 HPN |
4316 | 2000-09-25 Hans-Peter Nilsson <hp@axis.com> |
4317 | ||
4318 | Changes below marked "here" add TABs on either or both sides, | |
4319 | covering start of line, up to any operand for all noted .*ASM.*_OP | |
e8638df0 | 4320 | definitions. All callers changed. |
047c1c92 HPN |
4321 | * tm.texi: Make documented *_ASM.*_OP:s include spacing |
4322 | (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP, | |
4323 | BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
4324 | ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
4325 | ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP). | |
4326 | Fix typos in description for LONG_LONG_TYPE_SIZE and | |
4327 | FINI_SECTION_ASM_OP. | |
0a3e1f45 HPN |
4328 | * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain |
4329 | why these defaults don't have leading spacing. | |
4330 | * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here. | |
4331 | * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4332 | UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
4333 | * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP, | |
4334 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP, | |
4335 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here. | |
4336 | * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
4337 | * varasm.c (ASM_STABS_OP): Here. | |
4338 | * xcoffout.h (ASM_STABS_OP): Here. | |
e662a129 HPN |
4339 | * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, |
4340 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
4341 | INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, | |
4342 | STRING_ASM_OP): Here. | |
4343 | * config/freebsd.h (IDENT_ASM_OP): Here. | |
4344 | * config/linux-aout.h (SET_ASM_OP): Here. | |
4345 | * config/linux.h (SET_ASM_OP): Here. | |
4346 | * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4347 | INT_ASM_OP): Here. | |
4348 | * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
4349 | * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here. | |
4350 | * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
4351 | * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4352 | INT_ASM_OP): Here. | |
4353 | * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, | |
4354 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
4355 | INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP, | |
4356 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
4357 | FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here. | |
4358 | * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4359 | CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
8c13c7b3 HPN |
4360 | * config/a29k/udi.h (INT_ASM_OP): Here. |
4361 | * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP, | |
4362 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
4363 | SET_ASM_OP): Here. | |
4364 | * config/alpha/alpha.h (TEXT_SECTION_ASM_OP, | |
4365 | READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4366 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4367 | UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP, | |
4368 | ASM_STABD_OP): Here. | |
4369 | * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP, | |
4370 | COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP, | |
4371 | CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4372 | BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP, | |
4373 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP, | |
4374 | SIZE_ASM_OP, STRING_ASM_OP): Here. | |
4375 | * config/alpha/vms.h (LINK_SECTION_ASM_OP, | |
4376 | READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP, | |
4377 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here. | |
4378 | * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here. | |
8202cda0 | 4379 | (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT. |
8c13c7b3 HPN |
4380 | * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): |
4381 | Here. | |
4382 | * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4383 | BSS_SECTION_ASM_OP, SET_ASM_OP): Here. | |
4384 | * config/arm/coff.h (INT_ASM_OP): Here. | |
4385 | * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
4386 | * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here. | |
4387 | * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP, | |
4388 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here. | |
4389 | * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
4390 | * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4391 | ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP, | |
4392 | STRING_ASM_OP): Here. Update documentation copy in comments. | |
4e8aa65c HPN |
4393 | * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here. |
4394 | * config/clipper/clipper.h (TEXT_SECTION_ASM_OP, | |
4395 | DATA_SECTION_ASM_OP): Here. | |
4396 | * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): | |
4397 | Here. | |
4398 | * config/convex/convex.h (TEXT_SECTION_ASM_OP, | |
4399 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
4400 | * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4401 | BSS_SECTION_ASM_OP): Here. | |
4402 | * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4403 | BSS_SECTION_ASM_OP): Here. | |
4404 | * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4405 | Here. | |
4406 | * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP, | |
4407 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
4408 | * config/h8300/h8300.h (ASM_WORD_OP): Here. | |
71d48a01 HPN |
4409 | * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, |
4410 | BSS_SECTION_ASM_OP): Here. | |
4411 | * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here. | |
4412 | * config/i386/bsd.h (ASM_BYTE_OP): Here. | |
4413 | * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here. | |
4414 | * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here. | |
4415 | * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP): | |
4416 | Here. | |
4417 | * config/i386/freebsd-elf.h (SET_ASM_OP): Here. | |
4418 | * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): | |
4419 | Here. | |
4420 | * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP, | |
4421 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4422 | * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP, | |
4423 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
4424 | SET_ASM_OP): Here. | |
4425 | * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here. | |
4426 | * config/i386/netbsd.h (INT_ASM_OP): Here. | |
4427 | * config/i386/openbsd.h (INT_ASM_OP): Here. | |
4428 | * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP, | |
4429 | IDENT_ASM_OP): Here. | |
4430 | * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP, | |
4431 | ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP, | |
4432 | LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP, | |
4433 | SKIP_ASM_OP, GLOBAL_ASM_OP): Here. | |
4434 | * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP, | |
4435 | SHARED_BSS_SECTION_ASM_OP): Here. | |
4436 | * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
4437 | * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
4438 | DATA_SECTION_ASM_OP): Here. | |
4439 | * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4440 | CONST_SECTION_ASM_OP): Here. | |
4441 | * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here. | |
4442 | * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4443 | BSS_SECTION_ASM_OP): Here. | |
de323aa1 HPN |
4444 | * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here. |
4445 | * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here. | |
4446 | * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP, | |
4447 | BSS_ASM_OP): Here, but use trailing spaces. | |
4448 | * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
4449 | DATA_SECTION_ASM_OP): Here. | |
4450 | * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP): | |
4451 | Here. | |
4452 | * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP, | |
4453 | DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here. | |
4454 | * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4455 | TDESC_SECTION_ASM_OP): Here. | |
4456 | * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP, | |
4457 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4458 | * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4459 | Here. | |
4460 | * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4461 | BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
4462 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4463 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
4464 | * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP, | |
4465 | COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP, | |
4466 | FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4467 | SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here. | |
6e7b07a7 HPN |
4468 | * config/m32r/m32r.h (SCOMMON_ASM_OP): Here. |
4469 | * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here. | |
4470 | * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
4471 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
4472 | SET_ASM_OP): Here. | |
4473 | * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
4474 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4475 | * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here. | |
4476 | * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here. | |
4477 | * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here. | |
4478 | * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here. | |
4479 | * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here. | |
4480 | * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4481 | GLOBAL_ASM_OP): Here. | |
4482 | * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP, | |
4483 | BSS_SECTION_ASM_OP): Here. | |
4484 | * config/m68k/m68kv4.h (BSS_ASM_OP): Here. | |
4485 | * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4486 | ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP, | |
4487 | DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP, | |
4488 | SKIP_ASM_OP): Here. | |
4489 | * config/m68k/newsgas.h (SET_ASM_OP): Here. | |
4490 | * config/m68k/rtemself.h (INIT_SECTION_ASM_OP, | |
4491 | FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
4492 | * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
4493 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
4494 | SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here, | |
4495 | but use trailing spaces. | |
4496 | * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP, | |
4497 | DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP, | |
4498 | FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP): | |
4499 | Here. | |
4500 | * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
4501 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
4502 | * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4503 | CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
4504 | DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4505 | IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP, | |
4506 | GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP, | |
4507 | BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP, | |
4508 | CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP, | |
4509 | SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP, | |
4510 | VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4511 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP, | |
4512 | ASM_BYTE_OP): Here. | |
4513 | * config/m88k/openbsd.h (SET_ASM_OP): Here. | |
4514 | * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4515 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
78d057d8 HPN |
4516 | * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP, |
4517 | UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP, | |
4518 | DTORS_SECTION_ASM_OP): Here. | |
4519 | * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP, | |
4520 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4521 | * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
4522 | BSS_SECTION_ASM_OP): Here. | |
4523 | * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
4524 | * config/mips/iris5.h (ABICALLS_ASM_OP): Here. | |
4525 | * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
4526 | POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32, | |
4527 | CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP, | |
4528 | DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
4529 | * config/mips/mips.c (ABICALLS_ASM_OP): Here. | |
4530 | * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): | |
4531 | Here. | |
4532 | * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP): | |
4533 | Here. | |
4534 | * config/mips/osfrose.h (SET_ASM_OP): Here. | |
4535 | * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here. | |
76bbee81 HPN |
4536 | * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here. |
4537 | * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here. | |
4538 | * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4539 | Here. | |
4540 | * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
4541 | * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here. | |
4542 | * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
4543 | * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here. | |
4544 | * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
4545 | * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4546 | Here. | |
4547 | * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4548 | Here. | |
4549 | * config/rs6000/rs6000.h (SET_ASM_OP): Here. | |
4550 | * config/rs6000/sol2.h (ASM_STABN_OP): Here. | |
4551 | * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP): | |
4552 | Here. | |
471b6f1b HPN |
4553 | * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP, |
4554 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here. | |
4555 | * config/sparc/linux.h (COMMON_ASM_OP): Here. | |
4556 | * config/sparc/linux64.h (COMMON_ASM_OP, | |
4557 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
4558 | * config/sparc/litecoff.h (BSS_SECTION_ASM_OP, | |
4559 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4560 | * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here. | |
4561 | * config/sparc/pbd.h (ASM_INT_OP): Here. | |
4562 | * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here. | |
4563 | * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
4564 | DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here. | |
4565 | * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP, | |
4566 | UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here. | |
4567 | * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP, | |
4568 | UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4569 | UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, | |
4570 | TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, | |
4571 | CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4572 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4573 | EH_FRAME_SECTION_ASM_OP): Here. | |
4574 | * config/sparc/vxsim.h (COMMON_ASM_OP): Here. | |
4575 | * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4576 | Here. | |
4577 | * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4578 | Here. | |
4579 | * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP, | |
4580 | TCOMMON_ASM_OP): Here. | |
4581 | * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4582 | Here. | |
4583 | * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4584 | ASM_BYTE_OP): Here. | |
0a3e1f45 | 4585 | |
ea9ea008 RH |
4586 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
4587 | ||
4588 | * expmed.c (store_bit_field): Adjust last change to not consider | |
4589 | any word-sized field naturally aligned. | |
4590 | ||
9e495700 RH |
4591 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
4592 | ||
4593 | * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle | |
4594 | TFmode unordered compares properly. Revalidate integer compare | |
4595 | operands. | |
4596 | (alpha_emit_setcc): New. | |
4597 | (alpha_emit_conditional_move): Revalidate integer compare operands. | |
4598 | * config/alpha/alpha-protos.h: Update. | |
4599 | * config/alpha/alpha.md (cmpdi): Allow general operands. | |
4600 | (sne): Use alpha_emit_setcc. | |
4601 | (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise. | |
4602 | (sunordered, sordered): New. | |
4603 | ||
2ed4af6f RH |
4604 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
4605 | ||
4606 | * config/ia64/ia64-protos.h: Update. | |
4607 | * config/ia64/ia64.c (call_multiple_values_operation): Remove. | |
4608 | (ia64_expand_call): New. | |
4609 | (ia64_expand_prologue): Emit an alloc if we need extra input | |
4610 | registers. | |
4611 | (ia64_expand_epilogue): New arg sibcall_p; don't emit the return | |
4612 | instruction if true. | |
4613 | (struct reg_flags): Add is_sibcall. | |
4614 | (rtx_needs_barrier): A sibcall does not use CFM et al. Ignore USEs. | |
4615 | (emit_insn_group_barriers): Set flags.is_sibcall. Remove hacks | |
4616 | for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal. | |
4617 | * config/ia64/ia64.h (PREDICATE_CODES): Update. | |
4618 | * config/ia64/ia64.md (call): Use ia64_expand_call. | |
4619 | (call_value): Likewise. | |
4620 | (sibcall, sibcall_value): New. | |
4621 | (call patterns): Remove extra expanders; tidy. | |
4622 | (sibcall_epilogue): New. | |
4623 | (set_bsp): Remove the extra USE. Put the operand inside the UNSPEC. | |
4624 | ||
e1389cac RH |
4625 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
4626 | ||
4627 | * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode. | |
4628 | ||
fd442cef RH |
4629 | * sibcall.c (skip_pic_restore): New. |
4630 | (identify_call_return_value): Use it. | |
4631 | ||
c06aa51e MM |
4632 | 2000-09-24 Mark Mitchell <mark@codesourcery.com> |
4633 | ||
4634 | * c-tree.texi: Moved here from cp/ir.texi. Documented nested | |
4635 | functions. Generalize to handle both C and C++. | |
4636 | * Makefile.in (c-tree.info): New target. | |
4637 | (info): Add c-tree.info. | |
b8dad04b | 4638 | |
bd5dab53 RK |
4639 | Sun Sep 24 09:15:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4640 | ||
4641 | * expr.c (store_field): If BITSIZE is negative, use size of type. | |
4642 | (expand_expr, case COMPONENT_EXPR): Likewise. | |
4643 | ||
838f313b NB |
4644 | Sun 24-Sep-2000 11:40:23 BST Neil Booth <NeilB@earthling.net> |
4645 | ||
4646 | * cpplex.c: Update TODO comment. | |
4647 | * cpplib.c (do_error, do_warning): Merge common code of | |
4648 | do_error and do_warning into do_diagnostic. Use it. | |
4649 | (do_diagnostic): New function. | |
4650 | * cpplib.h: Fix comment typo. | |
4651 | ||
c5412f06 JM |
4652 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
4653 | ||
4654 | * c-common.c (check_format_info): Warn for a wide character string | |
4655 | used as a non-wide format argument. | |
4656 | ||
1c44c45d JM |
4657 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
4658 | ||
4659 | * builtins.def (BUILT_IN_LLABS): Add. | |
4660 | * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS. | |
4661 | * c-common.c (c_common_nodes_builtins): Create builtin functions | |
4662 | __builtin_llabs, and plain llabs unless no_nonansi_builtins | |
4663 | outside of C99 mode. | |
4664 | (expand_tree_builtin): Handle BUILT_IN_LLABS. | |
4665 | ||
cbcff6df NB |
4666 | Sat 23-Sep-2000 22:39:18 BST Neil Booth <NeilB@earthling.net> |
4667 | ||
4668 | * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q, | |
4669 | CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete. | |
4670 | * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist, | |
4671 | _cpp_free_toklist): No need to worry about extra dummy token | |
4672 | at the start of token lists any more. | |
4673 | (trigraph_ok): Only warn outside comments. | |
4674 | (skip_block_comment): Set and clear lexing_comment. | |
4675 | (skip_line_comment): Take a cpp_reader not cpp_buffer. | |
4676 | Set and clear lexing_comment. | |
4677 | (parse_number): Handle leading '.' indicated by pfile->seen_dot. | |
4678 | (check_long_token): Delete. | |
4679 | (lex_percent, lex_dot): New subroutines of lex_token to | |
4680 | handle lexing of '.' and '%' without lookback. | |
4681 | (lex_token): Use lex_dot and lex_percent. | |
4682 | (lex_line): Don't check for LIST_OFFSET. | |
4683 | (_cpp_init_input_buffer): Update for new _cpp_init_toklist. | |
4684 | * cpplib.c (_cpp_parse_assertion): Similarly. | |
4685 | (cpp_push_buffer): Initialize extra_char. | |
4686 | * cpplib.h (LIST_OFFSET): Delete. | |
4687 | (struct cpp_buffer): New member extra_char. | |
4688 | (struct lexer_state): New members lexing_comment and seen_dot. | |
4689 | ||
2abdcaee JM |
4690 | 2000-09-23 Jason Merrill <jason@redhat.com> |
4691 | ||
4692 | * config/rs6000/x-aix41 (CLIB): Define here. | |
4693 | * config/rs6000/t-aix43: Not here. | |
4694 | * config/rs6000/t-aix41: Or here. Remove. | |
4695 | * configure.in: Don't use it. | |
4696 | ||
981d4858 JM |
4697 | 2000-09-22 Jason Merrill <jason@redhat.com> |
4698 | ||
2abdcaee JM |
4699 | * configure.in: Add test for HAVE_LD_DWARF_LINKONCE. |
4700 | * toplev.c: Use it to initialize flag_eliminate_dwarf2dups. | |
4701 | * config.in: Regenerate. | |
4702 | ||
981d4858 JM |
4703 | * configure.in: Fix checks for assembler features when using a |
4704 | one-tree assembler that has not yet been built. | |
4705 | Fix --disable-threads. | |
4706 | ||
afa223c6 GK |
4707 | 2000-09-19 Geoff Keating <geoffk@cygnus.com> |
4708 | ||
4709 | * stmt.c (expand_asm_operands): Allow # in constraints. | |
4710 | ||
a3a834aa JM |
4711 | 2000-09-22 Jason Merrill <jason@redhat.com> |
4712 | ||
4713 | * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace. | |
4714 | ||
4715 | * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for | |
4716 | function-local names. | |
4717 | ||
18424ae1 BL |
4718 | 2000-09-22 Brad Lucier <lucier@math.purdue.edu> |
4719 | Mark Mitchell <mark@codesourcery.com> | |
4720 | ||
b8dad04b ZW |
4721 | * toplev.c (warn_disabled_optimization): Declare new warning flag. |
4722 | * flags.h (warn_disabled_optimization): Add it here. | |
4723 | * gcse.c (gcse_main): Add warning when disabled. | |
4724 | * invoke.texi: Document -Wdisabled-optimization. | |
18424ae1 | 4725 | |
1bfb5f8f JM |
4726 | 2000-09-21 Jason Merrill <jason@redhat.com> |
4727 | ||
4728 | * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4. | |
4729 | ||
4730 | * dwarf2out.c (tree_add_const_value_attribute): New fn. | |
4731 | (gen_variable_die): Call it for non-definitions. | |
4732 | ||
4733 | * dwarf2out.c (die_struct): Add die_mark field. | |
4734 | (mark_dies, unmark_dies): New fns. | |
4735 | (clear_die_sizes): Remove. | |
4736 | (print_die): Check die_symbol rather than die_offset. | |
4737 | (build_abbrev_table, output_pubnames, output_aranges): Check | |
4738 | die_mark rather than die_offset. | |
4739 | (output_comp_unit): Move calc_die_sizes after build_abbrev_table. | |
4740 | Call mark_dies. | |
4741 | ||
2047e26f NB |
4742 | Thu 21-Sep-2000 18:19:05 BST Neil Booth <NeilB@earthling.net> |
4743 | ||
4744 | * cppfiles.c (lookup_include_file): Rename to open_file. | |
4745 | Always create a splay tree value, even on syscall failures. | |
4746 | Negative entries indicated by fd == -2. | |
4747 | Re-open files closed in the meantime. | |
4748 | (_cpp_fake_include): Create a negative splay tree entry. | |
4749 | (find_include_file, cpp_read_file): Update for function name | |
4750 | change. | |
4751 | * gcc.gd/cpp/mi4.c: Testcase. | |
4752 | ||
f27cd94d NC |
4753 | 2000-09-21 Nick Clifton <nickc@redhat.com> |
4754 | ||
2359a5e1 NC |
4755 | * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for |
4756 | ARM and THUMB modes. | |
4757 | ||
f27cd94d | 4758 | * config/mcore/mcore.c: Fix compile time warnings. |
b8dad04b | 4759 | * config/mcore/mcore-protos.h: Fix compile time warnings. |
f27cd94d | 4760 | |
7373064a DA |
4761 | 2000-09-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
4762 | ||
4763 | * configure.in: Correct test of gcc_cv_glibc. | |
4764 | * configure: Rebuilt. | |
4765 | * config.in: Rebuilt. | |
4766 | ||
07328167 KG |
4767 | 2000-09-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4768 | ||
4769 | * builtins.c (expand_builtin_fputs): Also expand when length!=1. | |
4770 | (expand_builtin): Handle BUILT_IN_FWRITE. | |
4771 | ||
4772 | * builtins.def (BUILT_IN_FWRITE): New entry. | |
4773 | ||
4774 | * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite. | |
4775 | ||
5fa7c8ce RK |
4776 | Wed Sep 20 15:39:14 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4777 | ||
dc36ec2c RK |
4778 | * gcc.c (modify_target): New variable and struct. |
4779 | (process_command): Handle MODIFY_TARGET_NAME. | |
4780 | * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro. | |
4781 | * config/pa/pa.h (MODIFY_TARGET_NAME): New macro. | |
4782 | ||
5fa7c8ce RK |
4783 | * c-decl.c (finish_decl): Add else's to avoid referencing |
4784 | TYPE_DOMAIN of an ERROR_MARK. | |
4785 | ||
155b14a8 DC |
4786 | Wed Sep 20 21:44:31 2000 Denis Chertykov <denisc@overta.ru> |
4787 | ||
4788 | * config/avr/avr.c (adjust_insn_length): Adjust lengths of | |
4789 | `reload_in*' insns. | |
4790 | ||
4791 | 2000-09-19 Marek Michalkiewicz <marekm@linux.org.pl> | |
4792 | ||
4793 | * config/avr/avr.md (neghi2): Add alternative for input and output | |
4794 | operands in different registers, as in negsi2. | |
4795 | (*negsi2): Remove '*' from the name. Use "movw" if available. | |
4796 | ||
fd09c61f JW |
4797 | 2000-09-19 Jim Wilson <wilson@cygnus.com> |
4798 | ||
4799 | * config/ia64/crtbegin.asm (__dso_handle): Delete use of | |
4800 | HAVE_GAS_HIDDEN macro. | |
4801 | ||
7eea5554 NB |
4802 | Tue 19-Sep-2000 22:38:57 BST Neil Booth <NeilB@earthling.net> |
4803 | ||
4804 | * cpplex.c (lex_line): Drop the EOF token for unknown | |
4805 | directives in assembler. | |
4806 | ||
a473fe45 DE |
4807 | 2000-09-19 David Edelsohn <edelsohn@gnu.org> |
4808 | ||
4809 | * configure.in: Allow enable_threads_flag value of "aix". Define | |
fd60bf96 | 4810 | thread_file as "aix" for AIX 4.3 and above. |
a473fe45 | 4811 | * configure: Regenerated. |
fd60bf96 DE |
4812 | |
4813 | * gthr-aix.h: New file. | |
4814 | ||
a473fe45 DE |
4815 | * rs6000/t-aix43: Replace soft-float multilib with pthread. |
4816 | Remove 403 processor multilib match. Fix rios2 processor multilib | |
4817 | match. | |
4818 | ||
fd60bf96 DE |
4819 | * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section |
4820 | to return to appropriate csect. | |
4821 | ||
ad3fd36f KG |
4822 | 2000-09-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4823 | ||
4824 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New | |
4825 | functions. | |
4826 | (expand_builtin_fputs): Set `target' parameter for `expand_expr'. | |
4827 | (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and | |
4828 | BUILT_IN_PRINTF. | |
4829 | ||
4830 | * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF): | |
4831 | New entries. | |
4832 | ||
4833 | * c-common.c (init_function_format_info): Handle __builtin_printf. | |
4834 | Set `check_function_format_ptr'. | |
4835 | (c_common_nodes_and_builtins): Set `puts_ftype' and | |
4836 | `printf_ftype'. Declare __builtin_putchar, __builtin_puts, | |
4837 | __builtin_printf and printf. | |
4838 | ||
4839 | * tree.c, tree.h (check_function_format_ptr): Declare. | |
4840 | ||
6f3d20a0 NB |
4841 | Tue 19-Sep-2000 18:26:57 BST Neil Booth <NeilB@earthling.net> |
4842 | ||
b8dad04b | 4843 | * cppfiles.c (read_include_file): Take no special action for |
6f3d20a0 NB |
4844 | zero-length files. |
4845 | ||
b4f75276 BS |
4846 | 2000-09-19 Bernd Schmidt <bernds@redhat.co.uk> |
4847 | ||
afc6898e BS |
4848 | * final.c (insn_current_reference_address): Use INSN_SHUID of seq |
4849 | rather than that of branch. | |
4850 | (shorten_branches): Don't increment insn_current_address twice. | |
4851 | ||
b4f75276 BS |
4852 | Undo most of the Wed Jan 27 23:39:53 1999 patch: |
4853 | * loop.h (struct induction): Delete members derived, ix and last_use. | |
4854 | (struct loop_ivs): Delete members first_increment_giv and | |
4855 | last_increment_giv. | |
4856 | * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats, | |
4857 | recombine_givs): Delete functions. | |
4858 | (find_and_verify_loops): Don't initialize cont_dominator. | |
4859 | (strength_reduce): Lose code to try to find bivs that can be | |
4860 | expressed as givs of another biv, and to convert biv increments | |
4861 | into givs. | |
4862 | Lose loop_scan_start variable, always use loop->scan_start. | |
4863 | Don't call recombine_givs. Don't handle derived givs. | |
4864 | (record_giv): Don't initialize derived and last_use fields. | |
4865 | (biv_eliminiation_giv_has_0_offset): Lose code to handle derived | |
4866 | givs. | |
4867 | * unroll.c (derived_regs): Delete static variable. | |
4868 | (unroll_loop): Don't initialize it. | |
4869 | (copy_loop_body): Lose code to handle derived givs. | |
4870 | (find_splittable_givs): Don't check for givs made from biv | |
4871 | increments. | |
4872 | Don't set derived_regs. | |
4873 | ||
0f805606 BS |
4874 | Fix misapplied earlier patch: |
4875 | * config/sh/sh.md (floatsisf_ie): Reenable. Remove explicit reference | |
4876 | to fpul. | |
4877 | (floatsisf2): Generate floatsisf_ie by default. | |
4878 | (floatsisf_i4): Conditional on TARGET_SH4. | |
4879 | ||
4880 | (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand | |
4881 | predicate for the expanders. | |
4882 | ||
8aa0e194 RH |
4883 | 2000-09-19 Richard Henderson <rth@cygnus.com> |
4884 | ||
0d97fd9e RH |
4885 | * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols |
4886 | in addition to pentium and pentiumpro symbols. | |
4887 | (CPP_CPU_DEFAULT_SPEC): Likewise. | |
4888 | ||
39b726dd RH |
4889 | * c-typeck.c (c_expand_asm_operands): Restore the output tree |
4890 | after expanding. | |
4891 | ||
9790cefd RH |
4892 | * stmt.c (expand_expr_stmt): Only call warn_if_unused_value |
4893 | if the tree has side effects. | |
4894 | (warn_if_unused_value): Do not warn about void constructs. | |
4895 | ||
8e5a0fcb RH |
4896 | * c-decl.c (poplevel): Invoke warn_about_unused_variables. |
4897 | ||
8aa0e194 RH |
4898 | * unroll.c (copy_loop_body): Update LABEL_NUSES before |
4899 | calling invert_jump. | |
4900 | ||
62f7f1f5 GK |
4901 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
4902 | ||
4903 | * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS | |
4904 | into anything. | |
4905 | ||
3f80e6ac KG |
4906 | 2000-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4907 | ||
4908 | * Makefile.in (c-common.o): Depend on diagnostic.h. | |
4909 | ||
4910 | * c-common.c: Include diagnostic.h. | |
4911 | (tfaff): Delete. | |
4912 | (status_warning): New function. | |
4913 | (check_format_info, maybe_read_dollar_number, check_format_types, | |
4914 | finish_dollar_format_checking, check_function_format): Accept a | |
4915 | `status' parameter. All callers changed. | |
4916 | ||
4917 | * c-common.h (check_function_format): Accept a `status' parameter. | |
4918 | ||
4919 | * c-typeck.c: Update call to `check_function_format'. | |
4920 | ||
cfbd829c RH |
4921 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4922 | ||
4923 | * c-decl.c (c_expand_body): Call mark_varargs before | |
4924 | expand_function_start. | |
4925 | ||
c21d86e1 GK |
4926 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
4927 | ||
4928 | * config/rs6000/eabi-cn.asm: Use /**/ to delimit comments, not #. | |
4929 | * config/rs6000/eabi-ci.asm: Likewise. | |
4930 | ||
f0417c82 RH |
4931 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4932 | ||
4933 | * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx | |
4934 | for BImode. | |
4935 | ||
226ed43f JW |
4936 | 2000-09-18 Jim Wilson <wilson@cygnus.com> |
4937 | ||
5c3c320e JW |
4938 | * unroll.c (loop_iterations): Pass increment to extend_for_giv_value |
4939 | before passing it to fold_rtx_mult_add. | |
4940 | ||
ec919c98 JW |
4941 | * unroll.c (final_giv_value): Pass increment through |
4942 | extend_value_for_giv before passing it to emit_iv_add_mult. | |
4943 | ||
226ed43f JW |
4944 | * function.c (fixup_var_refs_1, case ZERO_EXTRACT): If we have a |
4945 | paradoxical subreg, then directly substitute the replacement and | |
4946 | return. | |
4947 | ||
b542c0fb NB |
4948 | Mon 18-Sep-2000 22:12:44 BST Neil Booth <NeilB@earthling.net> |
4949 | ||
b4f75276 | 4950 | * cpp.texi: Update documentation, including some clarifications, |
b542c0fb NB |
4951 | the treatment of various newline combinations, and space between |
4952 | backslash and newline. | |
4953 | ||
800a6a0c R |
4954 | Mon Sep 18 21:00:47 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
4955 | ||
4956 | * sdbout.c (PUT_SDB_DEF, PUT_SDB_TAG, PUT_SDB_EPILOGUE_END): | |
4957 | Replace ASM_OUTPUT_LABELREF with assemble_name. | |
4958 | ||
50ceefc2 R |
4959 | Mon Sep 18 20:26:50 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
4960 | ||
4961 | * sh.c (addsubcosts): CONST is not cheap. | |
4962 | (find_barrier): For Sh1, take alignment after jumps into account. | |
4963 | ||
659e47fb AH |
4964 | 2000-09-15 Andrew Haley <aph@redhat.com> |
4965 | ||
4966 | * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to | |
4967 | remove all SETs of SUBREGs of hard registers. | |
7373064a | 4968 | * function.c (purge_hard_subreg_sets): New function. |
659e47fb AH |
4969 | (purge_single_hard_subreg_set): New function. |
4970 | * rtl.h: (purge_hard_subreg_sets): New function. | |
4971 | ||
f2f90c63 RH |
4972 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4973 | ||
4974 | * config/ia64/ia64-protos.h: Update. | |
4975 | * config/ia64/ia64.c (signed_inequality_operator): New. | |
4976 | (ia64_expand_compare): New. | |
4977 | (ia64_register_move_cost): Handle PR_REGS moves. | |
4978 | (ia64_secondary_reload_class): Require a GR when moving to a PR. | |
4979 | (struct reg_write_state): Add written_by_and/or. | |
4980 | (struct reg_flags): Add is_and/or. | |
4981 | (rws_update): Set them. | |
4982 | (rws_access_regno): Test them to allow parallel comparisons. | |
4983 | (rtx_needs_barrier): Recognize parallel comparisons. | |
4984 | (emit_insn_group_barriers): Set prev_insn after a call stop bit. | |
4985 | Call recog_memoized; ignore pred_rel_mutex. | |
4986 | (emit_predicate_relation_info): Don't call find_basic_blocks here. | |
4987 | (ia64_reorg): Do it here instead. | |
4988 | * config/ia64/ia64.h: s/CCmode/BImode/g | |
4989 | (MODES_TIEABLE_P): Don't tie BImode. | |
4990 | (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs. | |
4991 | (CONST_COSTS): Pick sensible values for CONST_INT based on context. | |
4992 | (RTX_COSTS): Make multiply 4 insns. | |
4993 | (MEMORY_MOVE_COST): New. | |
4994 | (PREDICATE_CODES): Update. | |
4995 | * config/ia64/ia64.md: s/CCmode/BImode/g | |
4996 | (movcci, movbi): New. | |
4997 | (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New. | |
4998 | (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New. | |
4999 | (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New. | |
5000 | (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New. | |
5001 | (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New. | |
5002 | (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New. | |
5003 | (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New. | |
5004 | (mulsi, muldi): Use xmpy not xma. | |
5005 | (cmpbi): New. | |
5006 | (movcc, movcc_internal): Remove. | |
5007 | (branch expanders): Use ia64_expand_compare. | |
5008 | (setcc expanders): Likewise. | |
5009 | (cmov insns): Use move_operand and ia64_move_ok. | |
5010 | (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the | |
5011 | scheduler from moving it past a use. | |
5012 | * config/ia64/build.hacks: Remove. | |
5013 | ||
0d9f234d NB |
5014 | Mon 18-Sep-2000 19:21:35 BST Neil Booth <NeilB@earthling.net> |
5015 | ||
5016 | * cpphash.h (HASHSTEP): Take character rather than pointer | |
5017 | to character. | |
5018 | (_cpp_check_directive, _cpp_check_linemarker): Update prototypes. | |
5019 | ||
5020 | * cpphash.c (cpp_loookup): Update for new HASHSTEP. | |
5021 | ||
5022 | * cpplex.c (auto_expand_name_space, trigraph_replace, | |
5023 | backslash_start, handle_newline, parse_name, INIT_TOKEN_STR, | |
5024 | IMMED_TOKEN, PREV_TOKEN_TYPE, PUSH_TOKEN, REVISE_TOKEN, | |
5025 | BACKUP_TOKEN, BACKUP_TRIGRAPH, MIGHT_BE_DIRECTIVE, | |
5026 | KNOWN_DIRECTIVE): Delete. | |
5027 | ||
5028 | (handle_newline, check_long_token, skip_escaped_newlines, | |
5029 | unterminated): New functions. | |
5030 | (ACCEPT_CHAR, SAVE_STATE, RESTORE_STATE): New macros. | |
5031 | ||
5032 | (parse_identifier): Was parse_name, new implementation. | |
5033 | (skip_line_comment, skip_block_comment, skip_whitespace, | |
5034 | parse_number, parse_string, trigraph_ok, save_comment, | |
5035 | adjust_column, _cpp_get_line): New implementations. | |
5036 | ||
5037 | (lex_token): New function. Lexes a token at a time, looking | |
5038 | forwards. Contains most of the guts of the old lex_line. | |
5039 | (lex_line): New implementation, using lex_token to obtain | |
5040 | individual tokens. | |
5041 | (cpp_scan_buffer): Use the token's line, not the list's line. | |
5042 | ||
5043 | * cpplib.c (_cpp_check_directive, _cpp_check_linemarker): | |
5044 | New implementations. | |
5045 | (do_assert): Don't bother setting the answer's list's line. | |
5046 | (cpp_push_buffer): Initialise new pfile and read_ahead members | |
5047 | of struct cpp_buffer. | |
5048 | ||
5049 | * cpplib.h (cppchar_t): New typedef. | |
5050 | (struct cpp_buffer): read_ahead, pfile and col_adjust are | |
5051 | new members. | |
5052 | (struct lexer_state): New structure that determines the state | |
5053 | and behaviour of the lexer. | |
5054 | (IN_DIRECTIVE, KNOWN_DIRECTIVE): New macros. | |
5055 | (struct cpp_reader): New member "state". Rename | |
5056 | multiline_string_line and multiline_string_column. Delete | |
5057 | col_adjust, in_lex_line members. | |
5058 | (CPP_BUF_COLUMN): Update. | |
5059 | ||
a191f0ee RH |
5060 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
5061 | ||
9f8e169e RH |
5062 | * combine.c (simplify_comparison): Shift a NOT out of a single |
5063 | bit test. | |
5064 | ||
1f3f36d1 RH |
5065 | * combine.c (if_then_else_cond): Canonicalize BImode true to |
5066 | STORE_FLAG_VALUE. | |
5067 | * explow.c (trunc_int_for_mode): Likewise. | |
5068 | ||
5bd60ce6 RH |
5069 | * combine.c (combine_simplify_rtx): Use gen_unary to distribute |
5070 | the NOT for De Morgan's rule. | |
5071 | * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT | |
5072 | of a comparison to the reverse comparison. | |
5073 | ||
d340408c RH |
5074 | * combine.c (try_combine): Allow split to create a single insn. |
5075 | ||
a191f0ee RH |
5076 | * machmode.def: Add BImode. Add a column for bitsize. |
5077 | * machmode.h (DEF_MACHMODE): Adjust for extra column. | |
5078 | (GET_MODE_BITSIZE): Use it. | |
5079 | * rtl.c (DEF_MACHMODE): Adjust for extra column. | |
5080 | (mode_bitsize): New. | |
5081 | (mode_mask_array): Use bitsize. | |
5082 | * combine.c (combine_simplify_rtx): Require inner and outer | |
5083 | modes to match on nonzero_bits optimizations. | |
5084 | ||
5d77a50c BS |
5085 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
5086 | ||
5087 | * reload1.c (forget_old_reloads_1): If a hard reg is stored, clear | |
5088 | its entry in spill_reg_store. | |
0fb8cb90 | 5089 | * config/sh/lib1funcs.ams (movstr_i4 functions): Always compile in. |
2e361e59 BS |
5090 | * sh.c (reg_no_subreg_operand): New function. |
5091 | * sh-protos.h (reg_no_subreg_operand): Declare it. | |
5092 | * sh.h (PREDICATE_CODES): Add it. | |
5093 | * sh.md (floatsisf2_i4, floatsidf2_i, extendsfdf2_i4): Use it for | |
5094 | input operand that needs to be in fpul. | |
5095 | (fix_truncsfsi2, fix_truncsfsi2_i4): Use register_operand for output. | |
42d5d0f1 BS |
5096 | * sh.c (find_barrier): Take into account that machine_dependent_reorg |
5097 | might add new insns. | |
5d77a50c | 5098 | |
55eec660 AO |
5099 | 2000-09-18 Alexandre Oliva <aoliva@redhat.com> |
5100 | ||
40fc375d AO |
5101 | * config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as |
5102 | MAYBE_DEAD. | |
5103 | (sh_expand_epilogue): Take the PIC register into account when | |
5104 | computing the frame size. | |
5105 | ||
55eec660 AO |
5106 | * config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs. |
5107 | * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect | |
5108 | LABEL_REFs with a PIC-safe unspec. | |
5109 | ||
fc6df7e1 JM |
5110 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
5111 | ||
5112 | * c-common.c (check_format_info): Properly save the argument | |
5113 | number and parameter for $ operand number formats in case width | |
5114 | and precision arguments are also used. Allow printf width and | |
5115 | precision arguments to have operand numbers even if none was | |
5116 | specified for the main format, since this is OK for %*.*m. Only | |
5117 | object to missing $ operand number if the format used requires an | |
5118 | argument. | |
5119 | ||
effa5541 JM |
5120 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
5121 | ||
5122 | * c-common.c (format_char_info): Add 'W' flag to comment. | |
5123 | (print_char_table, scan_char_table): Use it. | |
5124 | (check_format_info): Use the 'W' flag to determine whether a | |
5125 | format argument is written into. | |
5126 | ||
99303ae4 JM |
5127 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
5128 | ||
5129 | * c-common.c (check_format_types): Reorganise and clean up, | |
5130 | checking earlier for ERROR_MARKs and making cur_type into its | |
5131 | TYPE_MAIN_VARIANT where convenient. | |
5132 | ||
9231abf2 JM |
5133 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
5134 | ||
5135 | * gcc.c (cpp_options): Add specs for __STDC_HOSTED__. | |
5136 | ||
cf67d231 BS |
5137 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
5138 | ||
5139 | * optabs.c (emit_libcall_block): Set CONST_CALL_P for the call. | |
5140 | ||
bd793c65 BS |
5141 | * i386-protos.h (ix86_init_builtins, ix86_expand_builtin): Declare. |
5142 | * i386.c (struct builtin_description): New. | |
5143 | (bdesc_comi, bdesc_2arg, bdesc_1arg): New arrays. | |
5144 | (mmx_reg_operand): Declare MODE arg as unused. | |
5145 | (ix86_expand_sse_comi, ix86_expand_sse_compare, safe_vector_operand, | |
5146 | ix86_expand_unop1_builtin, ix86_expand_unop_builtin, | |
5147 | ix86_expand_binop_builtin, ix86_expand_store_builtin, | |
5148 | ix86_init_builtins, ix86_expand_builtin): New functions. | |
5149 | * i386.h (ix86_builtins): New enumeration. | |
5150 | (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): New macros. | |
5151 | * i386.md (attr length_immediate): 0 for mmx/sse types. | |
5152 | (attr prefix_0f): 1 for mmx/sse types. | |
5153 | (setcc_2): Remove "*" so we get gen_setcc_2. | |
5154 | (emms): Account for changed register numbering. Set "memory" attr | |
5155 | to unknown. | |
5156 | (sfence): Set "memory" attr to unknown. | |
5157 | ||
4070d885 AJ |
5158 | 2000-09-18 Andreas Jaeger <aj@suse.de> |
5159 | ||
5160 | * configure.in: Define _GNU_SOURCE only when using the GNU C | |
5161 | Library. | |
a191f0ee RH |
5162 | * configure: Regenerated. |
5163 | * config.in: Regenerated. | |
4070d885 | 5164 | |
2ac86f90 MM |
5165 | 2000-09-17 Mark Mitchell <mark@codesourcery.com> |
5166 | ||
31a1fdad MM |
5167 | * cppinit.c (cpp_init): Don't use ANSI prototypes. |
5168 | * flow.c (flow_dump_loop): Likewise. | |
5169 | (flow_loops_dump): Likewise. | |
5170 | ||
2ac86f90 MM |
5171 | * c-typeck.c (c_start_case): Fix typo. |
5172 | ||
60e9d01c JM |
5173 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
5174 | ||
5175 | * c-decl.c (grokdeclarator): Don't give a warning about defaulting | |
5176 | to int for plain complex which defaults to complex double. Do | |
5177 | warn about defaulting to complex double if pedantic. Warn about | |
5178 | complex integer types if pedantic. Warn about complex types if | |
5179 | pedantic and not in C99 mode. | |
5180 | * c-typeck.c (build_unary_op): If pedantic, warn about use of ~ | |
5181 | for complex conjugation. | |
5182 | ||
bc5006c7 JM |
5183 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
5184 | ||
5185 | * contrib.texi: Update my entry. | |
5186 | ||
7e3bd81e DC |
5187 | Sun Sep 17 18:48:32 2000 Denis Chertykov <denisc@overta.ru> |
5188 | ||
23cb1766 RK |
5189 | * config/avr/avr.md (mcu_enhanced): New attribute. |
5190 | (mcu_mega): Likewise. | |
5191 | (extendhisi2): Use mcu_enhanced. | |
5192 | (zero_extendhisi2): Likewise. | |
5193 | (call_insn): Use mcu_enhanced and mcu_mega. | |
5194 | (call_value_insn): Likewise. | |
5195 | (*sbrx_branch): Use mcu_mega. | |
5196 | (*sbrx_and_branchsi): Likewise. | |
5197 | (*sbrx_and_branchhi): Likewise. | |
5198 | (*tablejump_lib): Likewise. | |
7e3bd81e | 5199 | |
6a51f4a0 RK |
5200 | Sun Sep 17 10:46:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
5201 | ||
ec569656 RK |
5202 | * alias.c (true_dependence): Allow non-unchanging read to conflict |
5203 | with unchanging write. | |
5204 | ||
23cb1766 RK |
5205 | * expr.c (store_constructor_field): Accept ALIAS_SET arg. |
5206 | (store_constructor): Pass alias_set to it. | |
5207 | ||
a52fb89b RK |
5208 | * c-decl.c (grokdeclarator): Reorder tests to avoid looking at |
5209 | TYPE_MAIN_VARIANT of ERROR_MARK. | |
5210 | * c-lex.c (readescape): Avoid using printf syntax we don't recognize. | |
5211 | ||
6a51f4a0 RK |
5212 | * simplify-rtx.c (simplify_unary_operation): Add cases |
5213 | FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0. | |
5214 | ||
ebb1b59a BS |
5215 | 2000-09-17 Bernd Schmidt <bernds@redhat.co.uk> |
5216 | ||
a191f0ee | 5217 | * expr.h (emit_library_call, emit_library_call_value): Delete |
ebb1b59a BS |
5218 | declarations. |
5219 | * rtl.h (enum libcall_type): New. | |
5220 | (emit_library_call, emit_library_call_value): Change fn_type arg to | |
a191f0ee | 5221 | be of type enum libcall_type. |
ebb1b59a BS |
5222 | * calls.c: Likewise for the function definitions. Several callers |
5223 | throughout changed to use the new enumeration appropriately. | |
5224 | (emit_library_call_value_1): Likewise. Put back code to make libcall | |
a191f0ee | 5225 | blocks of equal form, but only use it for the two new higher |
ebb1b59a BS |
5226 | enumeration values. |
5227 | ||
8f17b5c5 MM |
5228 | 2000-09-16 Mark Mitchell <mark@codesourcery.com> |
5229 | ||
5230 | Convert the C front-end to use function-at-a-time mode. | |
5231 | * c-common.h: Include splay-tree.h. | |
5232 | (C_DECLARED_LABEL_FLAG): New macro. | |
5233 | (struct language_function): Add x_scope_stmt_stack and | |
5234 | x_function_name_declared_p. | |
5235 | (RECHAIN_STMTS): Move definition. | |
5236 | (lang_statment_code_p): Likewise. | |
5237 | (lang_expand_stmt): Likewise. | |
5238 | (lang_expand_decl_stmt): New variable. | |
5239 | (lang_expand_function_end): Likewise. | |
5240 | (current_scope_stmt_stack): New function. | |
5241 | (add_decl_stmt): Likewise. | |
5242 | (add_scope_stmt): Likewise. | |
5243 | (mark_stmt_tree): Likewise. | |
5244 | (struct c_lang_decl): New structure. | |
5245 | (DECL_SAVED_TREE): Define. | |
5246 | (c_mark_lang_decl): New function. | |
5247 | (c_expand_start_cond): Change prototype. | |
5248 | (c_finish_then): New function. | |
5249 | (c_finish_else): Likewise. | |
5250 | (current_function_name_declared): Remove. | |
5251 | (set_current_function_name_declared): Likewise. | |
5252 | (mark_c_language_function): Declare. | |
5253 | (case_compare): Likewise. | |
5254 | (c_add_case_label): Likewise. | |
5255 | (c_expand_expr): Likewise. | |
5256 | (c_safe_from_p): Likewise. | |
5257 | * c-common.c (lang_expand_function_end): New variable. | |
5258 | (struct if_elt): Add if_stmt. | |
5259 | (c_expand_start_cond): Add the if-statement to the statement-tree, | |
5260 | rather than generating RTL. | |
5261 | (c_finish_then): New function. | |
5262 | (c_expand_start_else): Don't generate RTL. | |
5263 | (c_finish_else): New function. | |
5264 | (c_expand_expr_stmt): Don't generate RTL. | |
5265 | (statement_code_p): Add SCOPE_STMT. | |
5266 | (case_compare): New function. | |
5267 | (c_add_case_label): Likewise. | |
5268 | (mark_stmt_tree): Likewise. | |
5269 | (c_mark_lang_decl): Likewise. | |
5270 | (mark_c_language_function): Likewise. | |
5271 | (c_expand_expr): Likewise. | |
5272 | (c_safe_from_p): Likewise. | |
5273 | * c-decl.c (c_stmt_tree): New variable | |
5274 | (c_scope_stmt_stack): Likewise. | |
5275 | (c_function_name_declared_p): Likewise. | |
5276 | (lang_expand_expr_stmt): Remove. | |
5277 | (poplevel): Don't call output_inline_function for nested | |
5278 | functions. | |
5279 | (pushdecl): Don't set DECL_CONTEXT for a local declaration of an | |
5280 | `extern' function. | |
5281 | (redeclaration_error_message): Change means of computing whether | |
5282 | or not a function is nested. | |
5283 | (lookup_label): Don't call label_rtx. | |
5284 | (init_decl_processing): Add more GC roots. | |
5285 | (start_decl): Add DECL_STMTs to the statement-tree, rather than | |
5286 | calling rest_of_decl_compilation. | |
5287 | (finish_decl): Don't call expand_decl. | |
5288 | (store_parm_decls): Begin the statement-tree, but don't generate | |
5289 | RTL. | |
5290 | (finish_function): Tie off the statement-tree. Call c_expand_body | |
5291 | if appropriate. | |
5292 | (c_expand_body): New function. | |
5293 | (push_c_function_context): Save more information. | |
5294 | (pop_c_function_contxt): Likewise. | |
5295 | (copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it. | |
5296 | (lang_mark_tree): Mark it. | |
5297 | (current_stmt_tree): Adjust. | |
5298 | (current_scope_stmt_stack): New function. | |
5299 | (do_case): Remove. | |
5300 | (set_current_name_declared): Likewise. | |
5301 | (c_begin_compound_stmt): Define. | |
5302 | (c_expand_decl_stmt): Likewise. | |
5303 | * c-lang.c: Include rtl.h and expr.h. | |
5304 | (lang_init): Set more language-specific hooks. | |
5305 | * c-lex.c: Include expr.h. | |
5306 | * c-parse.in: Changes throughout to add statements to the | |
5307 | statement-tree, rather than generating RTL after every statement. | |
5308 | * c-semantics.c (lang_expand_decl_stmt): Define. | |
5309 | (add_decl_stmt): New function. | |
5310 | (add_scope_stmt): Likewise. | |
5311 | (finish_stmt_tree): Tweak. | |
5312 | (genrtl_expr_stmt): Likewise. | |
5313 | (genrtl_decl_stmt): Handle local labels, and call | |
5314 | lang_expand_decl_stmt if required. | |
5315 | (genrtl_for_stmt): Fix line-number handling. | |
5316 | (genrtl_case_label): Handle cleanups. | |
5317 | (genrtl_asm_stmt): Don't call combine_strings. | |
5318 | (genrtl_compound_stmt): Simplify. | |
5319 | (expand_stmt): Handle SCOPE_STMTs. | |
5320 | * c-tree.h (struct lang_decl): New structure. | |
5321 | (C_DECLARED_LABEL_FLAG): Remove. | |
5322 | (c_begin_compound_stmt): Declare. | |
5323 | (c_expand_decl_stmt): Likewise. | |
5324 | (c_expand_start_case): Rename to c_start_case. | |
5325 | (c_finish_case): New function. | |
5326 | * c-typeck.c (start_init): Tweak setting of | |
5327 | constructor_incremental. | |
5328 | (c_expand_asm_operands): Tweak error-handling. Add to the | |
5329 | statement-tree. | |
5330 | (c_expand_return): Add to the statement-tree. | |
5331 | (c_expand_start_case): Rename to ... | |
5332 | (c_start_case): ... this. | |
5333 | (struct c_switch): New type. | |
5334 | (switch_stack): New variable. | |
5335 | (do_case): Simplify. | |
5336 | (c_finish_case): New function. | |
5337 | * dependence.c: Include expr.h. | |
5338 | (enum dependence_type): Change spelling of enumerals. | |
5339 | (check_node_dependence): Adjust. | |
5340 | * expr.h (lang_safe_from_p): Declare. | |
5341 | (safe_from_p): Likewise. | |
5342 | * expr.c (lang_safe_from_p): New variable. | |
5343 | (safe_from_p): Give it external linkage. Use lang_safe_from_p. | |
5344 | * stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type. | |
5345 | * toplev.c (rest_of_decl_compilation): Robustify. | |
5346 | * tree.c (contains_placeholder_p): Likewise. | |
5347 | * Makefile.in: Update dependencies. | |
5348 | * objc/objc-act.h: Adjust calculation of value for dummy_tree_code. | |
5349 | * objc/objc-act.c: Include rtl.h, expr.h, and c-common.h. | |
5350 | (objc_expand_function_end): New function. | |
5351 | (finish_method_def): Use it. | |
5352 | (init_objc): Initialize more language-specific hooks. | |
5353 | * objc/Make-lang.in: Update dependencies. | |
7373064a | 5354 | |
4797e955 GK |
5355 | 2000-09-16 Geoffrey Keating <geoffk@cygnus.com> |
5356 | ||
5357 | * configure.in: Define macros that affect features before | |
5358 | testing for features. Don't define _XOPEN_SOURCE. | |
5359 | * configure: Regenerated. | |
5360 | * config.in: Regenerated. | |
5361 | ||
ae0fb1b9 JW |
5362 | Sat Sep 16 19:42:50 EDT 2000 John Wehle (john@feith.com) |
5363 | ||
5364 | * rtlanal.c (rtx_varies_p): Volatile asms vary. | |
5365 | (rtx_unstable_p): Restructure code. Volatile asms | |
5366 | are unstable. | |
5367 | ||
5748b2cb | 5368 | Sat Sep 16 14:35:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
ae0f4dee | 5369 | |
87c31d6b RK |
5370 | * function.h (no_debugging_symbols): New field. |
5371 | * integrate.c (save_for_inline): Renamed from save_for_inline_nocopy. | |
5372 | Initialize no_debugging_symbols. | |
5373 | (output_inline_function): Save and restore write_symbols and set from | |
5374 | no_debugging_symbols. | |
5375 | * toplev.c (rest_of_compilation): Call save_for_inline. | |
5376 | * tree.h: Update comment. | |
7373064a | 5377 | |
5748b2cb RK |
5378 | * stor-layout.c (place_field): Don't do anything if field or |
5379 | its type are ERROR_MARK. | |
5380 | ||
5381 | Sat Sep 16 19:14:00 2000 Laurynas Biveinis <lauras@softhome.net> | |
5382 | ||
5383 | * cppfiles.c (purge_cache): Use munmap only if MMAP_THRESHOLD defined. | |
5384 | (read_include_file): Ensure inc->mmaped is initialized. | |
ae0f4dee | 5385 | |
6f84c9bd RH |
5386 | 2000-09-16 Richard Henderson <rth@cygnus.com> |
5387 | ||
5388 | * cppiles.c (purge_cache): Use PTR not caddr_t. | |
5389 | ||
50c57e7b HPN |
5390 | 2000-09-16 Hans-Peter Nilsson <hp@axis.com> |
5391 | ||
5392 | * gcc.c: In description for %{<S}, say the option removed is -S. | |
5393 | * invoke.texi (Spec Files): Ditto. | |
5394 | ||
dd745546 AJ |
5395 | 2000-09-16 Andreas Jaeger <aj@suse.de> |
5396 | ||
5397 | * configure.in: Always define _GNU_SOURCE to make interfaces | |
5398 | visible that were hidden by only defining _GNU_SOURCE. | |
5399 | * configure: Regenerated. | |
5400 | ||
08ebc1c5 NB |
5401 | Sat 16-Sep-2000 08:13:45 BST Neil Booth <NeilB@earthling.net> |
5402 | ||
5403 | * cpplex.c (push_macro_context): Set an argument's level after | |
5404 | calling parse_args. We could loop infinitely otherwise. | |
5405 | ||
16abe34a TT |
5406 | 2000-09-15 Tom Tromey <tromey@cygnus.com> |
5407 | ||
5408 | * configure, config.in: Rebuilt. | |
5409 | * configure.in: Check for iconv.h. Define _XOPEN_SOURCE. | |
5410 | ||
61c16b10 GM |
5411 | 2000-09-15 Greg McGary <greg@mcgary.org> |
5412 | ||
5413 | * cppmacro.c (check_trad_stringification): Check token | |
5414 | text pointers against limit before dereferencing. | |
5415 | ||
6a357625 JM |
5416 | 2000-09-15 Joseph S. Myers <jsm28@cam.ac.uk> |
5417 | ||
5418 | * c-common.c (format_wanted_type): New structure. | |
5419 | (check_format_types): New function. | |
5420 | (check_format_info): Pass all checking of types of format | |
5421 | arguments, including width and precision arguments, to this new | |
5422 | function. | |
5423 | ||
6a1d1088 GP |
5424 | 2000-09-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
5425 | ||
5426 | * BUGS: Remove file. | |
5427 | ||
a3b815cb JJ |
5428 | 2000-09-15 Jakub Jelinek <jakub@redhat.com> |
5429 | ||
54f5c4b0 JJ |
5430 | * config/alpha/alpha.c (override_options): ev6 cache latencies |
5431 | from Richard Henderson. Don't allow -mmemory-latency=L0. | |
5432 | ||
a3b815cb JJ |
5433 | * config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define. |
5434 | (TARGET_OPTIONS): Add tune=. | |
5435 | (alpha_tune_string): Declare. | |
5436 | * config/alpha/alpha.c (override_options): Add cpu_table. | |
5437 | Use alpha_cpu_string first to set both alpha_cpu and target_flags | |
5438 | and then alpha_tune_string to set alpha_cpu only. | |
5439 | Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests. | |
5440 | * config/alpha/elf.h (ASM_FILE_START): Likewise. | |
5441 | * config/alpha/osf.h (ASM_FILE_START): Likewise. | |
5442 | * config/alpha/openbsd.h (ASM_FILE_START): Likewise. | |
5443 | ||
9076b9c1 JH |
5444 | Fri Sep 15 19:45:55 MET DST 2000 Jan Hubicka <jh@suse.cz> |
5445 | ||
5446 | * i386-protos.h (no_comparison_operator, uno_comparison_operator): | |
5447 | Remove. | |
5448 | (ix86_comparison_operator, ix86_cc_mode): Declare | |
5449 | * i386.h (CCGC, CCGCO): New modes. | |
5450 | (SELECT_CC_MODE): Move offline to .... | |
5451 | * i386.c (ix86_cc_mode): .... here; use new modes. | |
5452 | (ix86_comparison_operator): New. | |
5453 | (fcmov_comparison_operator): Ensure proper mode. | |
5454 | (put_condition_mode): More sanity checking. | |
5455 | (ix86_match_ccmode): Handle new modes. | |
5456 | (ix86_expand_fp_compare): GEU requires CCmode. | |
5457 | (ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of | |
5458 | doing it by hand. | |
5459 | * i386.md (cmp?i_ccz_1): Remove | |
5460 | (cmp?i_ccno_1): Use ix86_match_ccmode. | |
5461 | (cmp?i_minus_1): New. | |
5462 | (cmpsi_1): New expander. | |
5463 | (cmpqi_ext_1): Use match_ccmode | |
5464 | (cmpqi_ext_3): New expander. | |
5465 | (cmpqi_ext_3_insn): Rename from cmpqi_ext_3. | |
5466 | (cmpqi_ext_4): Use match_ccmode. | |
5467 | (add?i_?): Use match_ccmode. | |
5468 | (add?i_6): New. | |
5469 | (test?i_ccz_1): Remove | |
5470 | (test?i_1): New. | |
5471 | (testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander. | |
5472 | (testqi_ext_0): Use ix86_match_ccmode. | |
5473 | (*xorqi_cc_ext_1): Use ix86_match_ccmode. | |
5474 | (xorqi_cc_ext_1): New expander. | |
5475 | (shift patterns): Use CCGOCmode for all shifts except for sar. | |
5476 | (setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator. | |
5477 | (setcc_3, jcc_3, miv?icc_c): Remove. | |
5478 | ||
3724ec07 WC |
5479 | 2000-09-15 Will Cohen <wcohen@redhat.com> |
5480 | ||
5481 | * dwarf2out.c (add_const_value_attribute): Changed array into a | |
5482 | xmalloced object, so it exists after function exit. | |
5483 | (free_AT): Added case for dw_val_class_float to free allocated | |
5484 | memory. | |
5485 | ||
182a4620 KH |
5486 | 2000-09-15 Kazu Hirata <kazu@hxi.com> |
5487 | ||
5488 | * config/i386/i386.md: Fix a comment typo. | |
d25a45d4 | 5489 | * gcc.c: Fix formatting. |
182a4620 | 5490 | |
aff2c2d3 BS |
5491 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
5492 | ||
5493 | * optabs.c (emit_libcall_block): If target is a user variable, | |
5494 | copy to a temporary first. | |
642dfa8b BS |
5495 | * expr.c (convert_move): When generating a libcall, make a libcall |
5496 | block. | |
188c5e6c BS |
5497 | * calls.c (emit_library_call_value_1): Don't create a libcall |
5498 | sequence here; our caller will in most cases do it. | |
aff2c2d3 | 5499 | |
0c4c9b16 BS |
5500 | * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Handle moving T, MACL or |
5501 | MACH into FPUL. | |
5502 | (SECONDARY_OUTPUT_RELOAD_CLASS): Similar case. | |
5503 | * sh.md (reload_outsf): Generate recognizable patterns for | |
5504 | TARGET_SH3E. | |
5505 | (floatsisf2, floatsisf2_ie, floatsisf2_i4, fix_truncsfsi2, | |
5506 | fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i, fix_truncdfsi2, | |
5507 | fix_truncdfsi2_i, extendsfdf2, extendsfdf2_i4, truncdfsf2, | |
5508 | truncdfsf2_i4): Change not to use explicit references to fpul. | |
5509 | (floatsisf2_ie): Remove USE of fpscr. | |
5510 | (floatsisf2): Change default expansion to match this. | |
5511 | (fix_truncsfsi2_i4_2, fix_truncdfsi2_i4 & splitters): Comment out | |
5512 | unused patterns. | |
5513 | ||
308ecea0 RH |
5514 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
5515 | ||
5516 | * expmed.c (store_bit_field): Consider naturally aligned | |
5517 | memory for direct reference. | |
5518 | ||
e01acbb1 RH |
5519 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
5520 | ||
5521 | * config/alpha/alpha.c (alpha_expand_unaligned_load): Force all | |
5522 | AND addresses into alias set 0. | |
5523 | (alpha_expand_unaligned_store): Likewise. | |
5524 | (alpha_expand_unaligned_load_words): Likewise. | |
5525 | (alpha_expand_unaligned_store_words): Likewise. | |
5526 | ||
c363a0c0 BS |
5527 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
5528 | ||
5529 | * config/sh/sh.h (CPP_SPEC): For -m4-nofpu, define __SH4_NOFPU__. | |
5530 | * config/sh/lib1funcs.asm (movstr_i4): Also compile if __SH4_NOFPU__ | |
5531 | is defined. | |
dd193c79 BS |
5532 | * config/mips/mips.c (mips_va_arg): Args passed by reference have a |
5533 | rsize of UNITS_PER_WORD. | |
c363a0c0 | 5534 | |
ff94c747 NB |
5535 | Fri 15-Sep-2000 06:49:07 BST Neil Booth <NeilB@earthling.net> |
5536 | ||
5537 | * cpplex.c (ON_REST_ARG): Correct the test. | |
5538 | (maybe_paste_with_next): Duplicate a token that fail pasting, | |
5539 | and clear its PASTE_LEFT flag, so that nested pasting attempts | |
5540 | do not occur. | |
5541 | ||
b437f1a7 RH |
5542 | 2000-09-14 Richard Henderson <rth@cygnus.com> |
5543 | ||
5544 | * calls.c (precompute_register_parameters): Use COSTS_N_INSNS, not 2. | |
5545 | * cse.c (rtx_cost): Likewise. | |
5546 | * optabls.c (expand_binop): Likewise. | |
5547 | (expand_twoval_binop, prepare_cmp_insn): Likewise. | |
5548 | * regclass.c (copy_cost): Likewise. | |
5549 | * reload1.c (reload_cse_move2add): Likewise. | |
5550 | ||
d9dbd9b1 JM |
5551 | 2000-09-14 Joseph S. Myers <jsm28@cam.ac.uk> |
5552 | ||
5553 | * c-parse.in (reswords): Add _Complex. | |
5554 | ||
9207d3b1 DA |
5555 | 2000-09-14 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
5556 | ||
5557 | * gcc.1: Delete documentation for -undef preprocessor option. | |
5558 | ||
395a451c AO |
5559 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com> |
5560 | ||
5561 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5562 | STARTFILE_SPEC, ENDFILE_SPEC): Remove define. | |
5563 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
5564 | Remove undefine before config/elfos.h. | |
5565 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Comment out. | |
5566 | ||
17f0f8fa KH |
5567 | 2000-09-14 Kazu Hirata <kazu@hxi.com> |
5568 | ||
5569 | * invoke.texi (H8/300 Options): Add -ms2600. | |
5570 | * config/h8300.c (h8300_init_once): Output an error when -ms2600 | |
5571 | is used without -ms. | |
5572 | * config/h8300.h (TARGET_MAC): New. | |
5573 | (TARGET_SWITCHES): Add -ms2600 and -mno-s2600. | |
5574 | (CONDITIONA_REGISTER_USAGE): Disable the mac register on any | |
5575 | machine other than H8/S2600. | |
5576 | * config/h8300.md: Accept mac instructions on the H8/S2600 instead | |
5577 | of the H8/S2000. | |
5578 | ||
9e8f528c AO |
5579 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com>, Bernd Schmidt <bernds@redhat.co.uk> |
5580 | ||
5581 | * reload.c (find_reloads_address_1): Generate reloads for auto_inc | |
5582 | pseudos that refer to the original pseudos, not only to their | |
5583 | equivalent memory locations. | |
5584 | ||
9985f210 RK |
5585 | Thu Sep 14 12:10:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
5586 | ||
fe7a8445 RK |
5587 | * expr.c (expand_expr, case COMPONENT_EXPR): Copy memory attributes |
5588 | when making new MEM. | |
5589 | ||
9985f210 RK |
5590 | * Makefile.in (LN): Remove duplicate definition. |
5591 | ||
2f93c5c3 BS |
5592 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
5593 | ||
5594 | From Joern Rennecke: | |
5595 | * local-alloc.c (update_equiv_regs): If there is no REG_EQUAL note | |
5596 | on an insn and function_invariant_p returns nonzero for the source, | |
5597 | add a REG_EQUAL note. | |
5598 | ||
b24ea077 JW |
5599 | Thu Sep 14 00:51:57 EDT 2000 John Wehle (john@feith.com) |
5600 | ||
5601 | * alias.c (memrefs_conflict_p): An ADDRESSOF doesn't | |
5602 | conflict with frame_pointer_rtx. | |
5603 | ||
fd5d5b07 KH |
5604 | 2000-09-13 Kazu Hirata <kazu@hxi.com> |
5605 | ||
5606 | * loop.c: Fix formatting. | |
5607 | * loop.h: Likewise. | |
5608 | ||
26102535 RH |
5609 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
5610 | ||
5611 | * config/ia64/ia64.md (divsf3): New. | |
5612 | (divsf3_internal_lat, divsf3_internal_thr): New. | |
5613 | (divdf3, divdf3_internal_lat, divdf3_internal_thr): New. | |
5614 | (divtf3, divtf3_internal_lat, divtf3_internal_thr): New. | |
5615 | (adddf3_trunc, subdf3_trunc, muldf3_trunc): New. | |
5616 | (madddf4_trunc, msubdf4_trunc, nmuldf3_trunc): New. | |
5617 | (nmadddf4_alts, nmadddf4_trunc): New. | |
5618 | (addtf3_truncsf, addtf3_truncdf, subtf3_truncsf): New. | |
5619 | (subtf3_truncdf, multf3_truncsf, multf3_truncdf): New. | |
5620 | (multf3_truncsf_alts, multf3_truncdf_alts): New. | |
5621 | (maddtf4_truncsf, maddtf4_truncdf, maddtf4_alts_truncdf): New. | |
5622 | (msubtf4_truncsf, msubtf4_truncdf, nmultf3_truncsf): New. | |
5623 | (nmultf3_truncdf, nmaddtf4_truncsf, nmaddtf4_truncdf): New. | |
5624 | (nmaddtf4_truncdf_alts): New. | |
5625 | (recip_approx): Don't predicate. | |
5626 | ||
938566fb RH |
5627 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
5628 | ||
5629 | * config/ia64/lib1funcs.asm (__divsf3): Protect fnorm.s with p6. | |
5630 | ||
c349e40b SC |
5631 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5632 | ||
5633 | * flags.h (flag_dump_rtl_in_asm): Declare. | |
5634 | * toplev.c (flag_dump_rtl_in_asm): Define. | |
5635 | (decode_d_option): Set flag_dump_rtl_in_asm and flag_print_asm_name | |
5636 | if -dP is specified. | |
5637 | * rtl.h (print_rtx_head): Declare. | |
5638 | * print-rtl.c (print_rtx_head): Define. | |
5639 | (print_rtx): Print the string pointed to by print_rtx_head | |
5640 | at beginning of each dump line. | |
5641 | (print_rtl): Likewise. | |
5642 | (print_rtl_single): Likewise. | |
5643 | * final.c (final_scan_insn): Dump the insn in the assembly | |
5644 | file for debugging. | |
5645 | * gcc.1: Document -dP option. | |
5646 | * invoke.texi (Debugging Options): Likewise. | |
5647 | ||
2856c3e3 SC |
5648 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5649 | ||
5650 | * md.texi (Machine Constraints): Document the 68HC11 constraints. | |
5651 | * install.texi (Configurations): Document the 68HC11&68HC12 port. | |
5652 | * invoke.texi (Option Summary, M68hc1x Options): Document the options. | |
5653 | ||
1ca04dc8 DC |
5654 | Tue Sep 12 13:51:13 2000 Denis Chertykov <denisc@overta.ru> |
5655 | ||
5656 | * config/avr/avr.h (ASSEMBLER_DIALECT): New macro declared. | |
5657 | * config/avr/avr.md (*movstrqi_insn): Cleanup output template. | |
5658 | (*clrstrqi): Likewise. | |
5659 | (xorhi3,xorsi3,absqi2): Likewise. | |
5660 | (one_cmplhi2,one_cmplsi2): Likewise. | |
5661 | (addsi3): Two stupid constraint alternatives removed. | |
5662 | (extendhisi2): Use `movw' for enhanced avr cores. | |
5663 | (zero_extendhisi2): Likewise. | |
5664 | ||
bb07060a JW |
5665 | Wed Sep 13 02:31:23 EDT 2000 John Wehle (john@feith.com) |
5666 | ||
5667 | * alias.c (find_base_term): Use frame_pointer_rtx | |
5668 | when handling an ADDRESSOF. | |
5669 | ||
5670 | * cse.c (canon_hash): Handle USE of BLKmode memory. | |
5671 | (cse_insn): Outgoing arguments for a libcall don't | |
5672 | affect any recorded expressions. | |
5673 | ||
d21445e7 TT |
5674 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
5675 | ||
5676 | * configure, config.in: Rebuilt. | |
5677 | * configure.in: Check for iconv, nl_langinfo, langinfo.h. | |
5678 | ||
5c80f6e6 JJ |
5679 | 2000-09-12 Jakub Jelinek <jakub@redhat.com> |
5680 | ||
5681 | * c-lex.c (lex_string): Use charwidth to compute bytemask. | |
5682 | * expr.c (expand_expr): Don't optimize constant array references | |
5683 | initialized with wide string constants. | |
5684 | ||
635a2a90 MH |
5685 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
5686 | ||
a191f0ee | 5687 | * loop.c (note_set_pseudo_multiple_uses): Correct. |
635a2a90 | 5688 | |
cc2999aa JW |
5689 | 2000-09-12 Jim Wilson <wilson@cygnus.com> |
5690 | ||
5691 | * ifcvt.c (noce_process_if_block): If A and B are the same, and no | |
5692 | else block, and X has side-effects, then fail. | |
5693 | ||
a0b6cdee GM |
5694 | 2000-09-12 Greg McGary <greg@mcgary.org> |
5695 | ||
5696 | * config/mips/mips-protos.h | |
5697 | (trap_cmp_op, mips_gen_conditional_trap): New func decls. | |
5698 | * config/mips/mips.h (ISA_HAS_COND_TRAP): New macro. | |
5699 | (PREDICATE_CODES): Add "trap_cmp_op". | |
5700 | * config/mips/mips.c | |
5701 | (trap_cmp_op, mips_gen_conditional_trap): New functions. | |
5702 | * config/mips/mips.md (trap, conditional_trap): New patterns. | |
5703 | ||
24948ccc BS |
5704 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
5705 | ||
5706 | * flow.c (try_pre_increment_1): Don't do anything to sets of the stack | |
5707 | pointer. | |
5708 | ||
3ff5f682 KG |
5709 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5710 | ||
5711 | * builtins.c (built_in_decls): New array. | |
5712 | (expand_builtin_fputs): New function. | |
5713 | (expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS. | |
5714 | ||
5715 | * builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members. | |
5716 | ||
5717 | * c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs. | |
5718 | ||
5719 | * tree.h (built_in_decls): New array. | |
5720 | ||
208b0ab1 JL |
5721 | Tue Sep 12 08:53:57 2000 Jeffrey A Law (law@cygnus.com) |
5722 | ||
5723 | * convex.md: Use "+" instead of "=" for outputs wrapped in a | |
5724 | STRICT_LOW_PART. | |
5725 | * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise. | |
5726 | ||
a86dc4a3 KH |
5727 | 2000-09-12 Kazu Hirata <kazu@hxi.com> |
5728 | ||
7a403706 KH |
5729 | * haifa-sched.c: Fix formatting. |
5730 | ||
c9541287 KH |
5731 | * genattrtab.c: Fix formatting. |
5732 | ||
a86dc4a3 KH |
5733 | * unroll.c: Fix formatting. |
5734 | ||
3af556f7 BK |
5735 | 2000-09-12 Bruce Korb <bkorb@gnu.org> |
5736 | ||
5737 | * fixinc/fixfixes.c: make a type for the fix procedure & use it, | |
5738 | remove obsolete code | |
5739 | * fixinc/fixincl.c: Use PARAMS, not _P_. Add no-op default to switch. | |
5740 | * fixinc/fixincl.tpl: make non-exported arrays static scope | |
5741 | * fixinc/fixincl.x: regenerate | |
5742 | * fixinc/fixlib.h: Use PARAMS, not _P_ | |
5743 | * fixinc/fixtests.c: make a type for the test proc & use it | |
5744 | * fixinc/server.h: Use PARAMS, not _P_ | |
5745 | ||
32892c52 KG |
5746 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5747 | ||
5748 | * c-typeck.c (process_init_element): Avoid union init warnings on | |
5749 | floating point zero. Don't crash on unions containing structs. | |
5750 | ||
ae0a1c23 AO |
5751 | 2000-09-12 Alexandre Oliva <aoliva@redhat.com> |
5752 | ||
5753 | * config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to | |
5754 | general_movsrc_operand, and remove CONST_INT from | |
5755 | general_movdst_operand. | |
5756 | ||
f1c1dfc3 BS |
5757 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
5758 | ||
5759 | * cse.c (approx_reg_cost): If SMALL_REGISTER_CLASSES, return INT_MAX | |
5760 | if a reference to non-fixed hardreg is seen. Otherwise, count hard | |
5761 | regs with a higher cost. | |
5762 | (preferrable): Deal with cases where either cost or regcost is | |
5763 | MAX_COST. | |
5764 | (cse_insn): Use MAX_COST rather than 10000. Always initialize | |
5765 | regcost values. | |
5766 | (COSTS_N_INSNS): Move definition... | |
5767 | * rtl.h: ...here. | |
5768 | (MAX_COST): New macro. | |
5769 | * loop.c (init_loop): Use COSTS_N_INSNS macro instead of hardcoded | |
5770 | constant. | |
5771 | ||
f444e36b MM |
5772 | 2000-09-11 Mark Mitchell <mark@codesourcery.com> |
5773 | ||
5774 | * c-common.h (genrtl_clear_out_block): Remove. | |
5775 | * c-semantics.c (genrtl_clear_out_block): Remove. | |
5776 | (genrtl_while_stmt): Don't call it. | |
5777 | (genrtl_for_stmt): Likewise. | |
5778 | ||
a58d32c2 ZW |
5779 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> |
5780 | ||
5781 | * cppfiles.c: Move all default-#defines to top of file. | |
5782 | (open_include_file): Replace by lookup_include_file. | |
5783 | (read_with_read, read_file): Merged into read_include_file. | |
5784 | (stack_include_file, purge_cache): New functions. | |
5785 | (close_cached_fd): Delete. | |
dd745546 | 5786 | (lookup_include_file, read_include_file, _cpp_pop_file_buffer): |
a58d32c2 ZW |
5787 | Cache the in-memory buffer, not the file descriptor. |
5788 | ||
5789 | * cpphash.h (struct include_file): Add buffer, st, refcnt, | |
5790 | mapped fields. | |
5791 | (xcnew): New utility macro. | |
5792 | (DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file. | |
5793 | * cpplib.h (struct cpp_buffer): Remove mapped field. | |
5794 | ||
5795 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> | |
5796 | ||
5797 | * cpplex.c (parse_string): Accept backslash space newline as a | |
5798 | line continuation. | |
5799 | (lex_line): Likewise. | |
5800 | (_cpp_get_token): Remove hard limit on macro nesting. | |
5801 | ||
bfa29b63 PT |
5802 | 2000-09-12 Philipp Thomas <pthomas@suse.de> |
5803 | ||
5804 | * aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext. | |
5805 | * configure: Rebuilt. | |
5806 | ||
97ca9316 MH |
5807 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
5808 | ||
5809 | * flow.c (split_block): Fix update of registers live at | |
5810 | end of split block. | |
5811 | ||
d90ffc8d JH |
5812 | Tue Sep 12 01:51:38 MET DST 2000 Jan Hubicka <jh@suse.cz> |
5813 | ||
5814 | * i386.md (add?i_3, add?i_5): New. | |
5815 | (add?i_4): Rename from add?i_3; Fix compare pattern. | |
5816 | (sub?i_3, xor?i_3, ior?i_3): New. | |
5817 | ||
5818 | * genrecog.c (write_tree): Output code to clear insn_extract cache. | |
5819 | * genattrtab.c (write_attr_case): Gen call to extract_insn_cache | |
5820 | instead of extract_insn and extract_constrain_insn_cache instead of | |
5821 | extract_insn and constrain_operands. | |
5822 | * recog.c (extract_insn_cached, extract_constrain_insn_cached): | |
5823 | New functions. | |
5824 | (extract_insn): Clear which_alternative. | |
5825 | (constrain_operands): Set which_alternative to -1 when failed. | |
5826 | * recog.h (extract_constrain_insn_cached, extract_insn_cached): | |
5827 | Declare. | |
5828 | ||
4843bda9 MH |
5829 | 2000-09-11 Matthew Hiller <hiller@redhat.com> |
5830 | ||
5831 | * config/h8300/h8300.md (movstrictqi): Changed constraint modifier | |
5832 | on operand 0 to '+'. | |
5833 | (movstricthi): Likewise. | |
5834 | ||
ed5bb68d MH |
5835 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5836 | ||
5837 | * loop.h (LOOP_IVS): New macro. | |
5838 | (REG_IV_TYPE, REG_IV_INFO): Add ivs argument. | |
5839 | (struct loop_ivs): New. | |
5840 | (struct loop_info): Add ivs field. | |
5841 | (reg_iv_type, reg_iv_info): Delete prototype. | |
5842 | (reg_biv_class, loop_iv_list): Likewise. | |
5843 | * loop.c (record_biv, find_life_end): Pass loop argument. | |
5844 | (reg_iv_type): Remove global array and use | |
5845 | field in loop_regs structure within loop_ivs structure. | |
5846 | (reg_iv_info, reg_biv_class, loop_iv_list): Likewise. | |
5847 | (first_increment_giv, last_increment_giv): Use entry in | |
5848 | loop_ivs structure. | |
5849 | (record_initial): Pass ivs pointer. | |
5850 | * unroll.c (copy_loop_body, remap_split_bivs): Add loop argument. | |
5851 | ||
1ecd860b MH |
5852 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5853 | ||
5854 | * loop.h (LOOP_REGS): New macro. | |
5855 | (struct loop_regs): New. | |
5856 | (struct loop_info): Add regs field. | |
dd745546 | 5857 | * loop.c (set_in_loop): Remove global array and store |
1ecd860b MH |
5858 | in loop_regs structure as part of loop_info structure. |
5859 | (n_times_set, may_not_optimize): Likewise. | |
5860 | (reg_single_usage, moved_once): Likewise. | |
5861 | (count_one_set): Add regs argument. | |
5862 | (combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise. | |
5863 | (set_pseudo_multiple_uses): Pass regs pointer. | |
5864 | ||
0a5b41f2 MH |
5865 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5866 | ||
5867 | * unroll.c (iteration_info): Subsume into loop_iterations. | |
5868 | * loop.h (loop_info): New field iv. | |
5869 | ||
5d6a16e2 MH |
5870 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5871 | ||
5872 | * basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New. | |
5873 | (LOOP_EXITS_DOMS, LOOP_ALL): Likewise. | |
5874 | (flow_loops_update): New prototype. | |
5875 | (flow_loops_find): Add flags to prototype. | |
5876 | (struct loop): Add `pre_header_root' and `pre_header_trace' fields. | |
5877 | * flow.c (flow_loop_pre_header_scan): New. | |
5878 | (flow_loop_dump): Dump pre-header root and trace and exit dominators. | |
5879 | (flow_loop_free): Free pre-header root and trace and exit dominators. | |
5880 | (flow_loops_find): New argument flags. | |
5881 | (flow_loops_update): New function. | |
5882 | * toplev.c (rest_of_compilation): Add flag argument to flow_loops_find. | |
5883 | ||
c586192c MH |
5884 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5885 | ||
5886 | * basic-block.h (split_block, update_bb_for_insn): New prototypes. | |
5887 | * flow.c (split_block, update_bb_for_insn): New functions. | |
5888 | ||
a5e5cf67 RH |
5889 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
5890 | ||
5891 | * cse.c (fold_rtx): Honor NO_FUNCTION_CSE. | |
5892 | ||
655f2eb9 RH |
5893 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
5894 | ||
5895 | * config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare. | |
5896 | * config/ia64/ia64.c (fr_nonimmediate_operand): New. | |
5897 | (ia64_override_options): Prevent optimizing division for both | |
5898 | latency and throughput. | |
5899 | (rtx_needs_barrier): Handle frcpa. | |
5900 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New. | |
5901 | (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New. | |
5902 | (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New. | |
5903 | (TARGET_SWITCHES): Add -minline-divide-min-latency and | |
5904 | -minline-divide-max-throughput. | |
5905 | (PREDICATE_CODES): Update. | |
5906 | * config/ia64/ia64.md (extendsidi2): Remove * from f case. | |
5907 | (zero_extendsidi2): Likewise. Fix typo in f case insn. | |
5908 | (extendsfdf2): Add cases for gr<->fr and fr<->mem. | |
5909 | (extendsftf2): Likewise. | |
5910 | (extenddftf2): Likewise. | |
5911 | (fix_trunctfdi2_alts): New. | |
5912 | (fixuns_trunctfdi2_alts): New. | |
5913 | (madd*4): Rename from madd*3. | |
5914 | (divsi3, modsi3, udivsi3, umodsi3): New. | |
5915 | (divsi3_internal): New. | |
5916 | (divdi3, moddi3, udivdi3, umoddi3): New. | |
5917 | (divdi3_internal_lat, divdi3_internal_thr): New. | |
5918 | (multf3_alts, maddtf4_alts, nmaddtf4_alts): New. | |
5919 | (recip_approx): New. | |
5920 | ||
b5d7770c AO |
5921 | 2000-09-11 Alexandre Oliva <aoliva@redhat.com> |
5922 | ||
5923 | * print-rtl.c (debug_call_placeholder_verbose): New variable. | |
5924 | (print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is | |
5925 | set. | |
5926 | * integrate.c (copy_rtx_and_substitute): Don't share | |
5927 | LEAF_REG_REMAPpable registers with the inlined function. Don't | |
5928 | share the function value with calling sequences. | |
5929 | ||
6ff85fd8 JJ |
5930 | 2000-09-11 Jakub Jelinek <jakub@redhat.com> |
5931 | ||
2a1da89b JJ |
5932 | * c-decl.c (do_case): Fix a typo. |
5933 | ||
6ff85fd8 JJ |
5934 | * combine.c (simplify_if_then_else): Don't convert a == b ? b : a |
5935 | to a if the comparison is floating mode and not -ffast-math. | |
5936 | * simplify-rtx.c (simplify_ternary_operation): Likewise. | |
5937 | ||
4102c782 R |
5938 | Mon Sep 11 20:07:48 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
5939 | ||
5940 | * sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to | |
5941 | gen_ic_invalidate_line. | |
5942 | ||
52a21fc6 PB |
5943 | 2000-09-11 Philip Blundell <pb@futuretv.com> |
5944 | ||
5945 | * config/arm/elf.h (SUBTARGET_CPP_SPEC): Don't define `arm_elf'. | |
5946 | ||
669ed2b1 UD |
5947 | Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com> |
5948 | ||
5949 | * install.texi (LANGUAGES): Update to include new languages. | |
5950 | * INSTALL: Rebuilt. | |
5951 | ||
50936d27 DD |
5952 | 2000-09-11 DJ Delorie <dj@redhat.com> |
5953 | ||
5954 | * gcc.c (main): Don't warn about unused -B prefixes | |
5955 | (unused_prefix_warnings): remove | |
5956 | ||
00174bdf KH |
5957 | 2000-09-11 Kazu Hirata <kazu@hxi.com> |
5958 | ||
f5d927c0 KH |
5959 | * final.c: Fix formatting. |
5960 | ||
00174bdf KH |
5961 | * integrate.c: Fix formatting. |
5962 | ||
b14066a9 GK |
5963 | 2000-09-11 Geoff Keating <geoffk@cygnus.com> |
5964 | ||
5965 | * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry. | |
5966 | ||
e695931e BS |
5967 | 2000-09-11 Bernd Schmidt <bernds@redhat.co.uk> |
5968 | ||
5969 | * reload.c (regno_clobbered_p): Fix thinko in previous change. | |
5970 | ||
456aadaa SC |
5971 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5972 | ||
5973 | * gcc.1: Document 68hc11 specific options. | |
5974 | ||
9cb8fcaf GK |
5975 | 2000-09-10 Geoff Keating <geoffk@cygnus.com> |
5976 | ||
e0f7170a GK |
5977 | * config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define. |
5978 | (TARGET_LONG_DOUBLE_128): Define. | |
5979 | (SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128. | |
5980 | (LONG_DOUBLE_TYPE_SIZE): Redefine. | |
5981 | (MAX_LONG_DOUBLE_TYPE_SIZE): Define. | |
5982 | (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition | |
5983 | of __LONG_DOUBLE_128__. | |
5984 | (CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128 | |
5985 | passed. | |
5986 | (CPP_LONGDOUBLE_DEFAULT_SPEC): Define. | |
5987 | (CPP_SYSV_DEFAULT_SPEC): Define. | |
5988 | (SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default. | |
5989 | (INIT_TARGET_OPTABS): Define. | |
5990 | ||
9cb8fcaf GK |
5991 | * config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h. |
5992 | (RS6000_UITRUNC): Likewise. | |
5993 | (INIT_TARGET_OPTABS): New macro. | |
5994 | * config/rs6000/rs6000.c (rs6000_trunc_used): Delete. | |
5995 | (trunc_defined): Delete. | |
5996 | (output_prolog): Don't output .extern definitions for fp->int | |
5997 | conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it. | |
5998 | * config/rs6000/rs6000.h (rs6000_trunc_used): Delete. | |
5999 | (trunc_defined): Delete. | |
6000 | (RS6000_ITRUNC): Moved to aix.h. | |
6001 | (RS6000_UITRUNC): Likewise. | |
6002 | * config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would | |
6003 | only emit a libcall. | |
6004 | (fixuns_truncdfsi2): Delete. | |
6005 | (trunc_call): Delete. | |
6006 | (trunc_call_rtl): Delete. | |
6007 | ||
8f820299 ZW |
6008 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
6009 | ||
6010 | * varasm.c (make_decl_rtl): Restore leading star on | |
dd745546 | 6011 | DECL_ASSEMBLER_NAME set for decls with an asmspec. |
8f820299 | 6012 | |
4337bc93 ZW |
6013 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
6014 | ||
6015 | * c-pragma.c (handle_pragma_pack): Correct parsing logic so it | |
6016 | won't give a spurious error for '#pragma pack()'. Simplify | |
6017 | control flow for readability. 'reset' action is not necessary. | |
6018 | ||
d8ea8f28 ZW |
6019 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
6020 | ||
6021 | * defaults.h: Provide default definitions for: CHAR_TYPE_SIZE, | |
6022 | SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE, | |
6023 | LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE, | |
6024 | DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED. | |
6025 | ||
6026 | * cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c, | |
6027 | profile.c, sdbout.c, tradcif.y, tree.c: | |
6028 | Include defaults.h if not already included. | |
6029 | Don't define the above macros. | |
6030 | ||
6031 | * Makefile.in: Update dependencies. | |
6032 | ||
56cb9733 MM |
6033 | 2000-09-10 Mark Mitchell <mark@codesourcery.com> |
6034 | ||
6035 | * c-common.h (add_stmt): Change prototype. | |
6036 | (RECHAIN_STMTS): New macro. | |
6037 | (CASE_LABEL_DECL): Likewise. | |
6038 | (genrtl_case_label): Change prototype. | |
6039 | (c_expand_start_case): Remove prototype. | |
6040 | (build_case_label): Change prototype. | |
6041 | (decl_constant_value): Declare. | |
6042 | * c-common.c (check_case_value): Handle C++'s extensions to C | |
6043 | semantics. | |
6044 | * c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL | |
d8ea8f28 | 6045 | field. |
56cb9733 MM |
6046 | * c-parse.in (stmt): Adjust handling of return statements and case |
6047 | laels. | |
6048 | * c-semantics.c (add_stmt): Return the new statement. | |
6049 | (genrtl_return_stmt): Take the RETURN_STMT as input, not the | |
6050 | returned expression. Directly generate RTL, rather than calling | |
6051 | c_expand_return. | |
6052 | (genrtl_switch_stmt): Don't call c_expand_start_case. | |
6053 | (build_case_label): Take the LABEL_DECL as input, too. | |
6054 | (genrtl_case_label): Just call add_case_node. | |
6055 | (expand_stmt): Adjust calls to genrtl_return_stmt and | |
6056 | genrtl_case_label. | |
6057 | * c-tree.h (c_expand_start_case): Declare. | |
6058 | * c-typeck.c (decl_constant_value): Give it external linkage. | |
6059 | (c_expand_return): Don't call expand_return or expand_null_return; | |
6060 | use genrtl_return_stmt instead. | |
6061 | * stmt.c (struct nesting): Remove num_ranges field. | |
6062 | (add_case_node): Give it external linkage. | |
6063 | (expand_start_case): Don't set num_ranges. | |
6064 | (expand_start_case_dummy): Don't clear it. | |
6065 | (pushcase): Rely on add_case_node to handle `default' labels. | |
6066 | (add_case_node): Handle `default' labels. | |
6067 | * tree.c (tree_int_cst_compare): New function. | |
6068 | * tree.h (tree_int_cst_compare): Declare. | |
6069 | (add_case_node): Likewise. | |
6070 | ||
aac02f4e RH |
6071 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
6072 | ||
6073 | * c-parse.in: Revert last change. | |
6074 | (init_reswords): Do not enter disabled keywords into the ridpointers | |
6075 | table, modulo objc weirdness. | |
6076 | (_yylex): Return the canonical spelling for a keyword. | |
6077 | ||
75d8aea7 PB |
6078 | 2000-09-10 Philip Blundell <philb@gnu.org> |
6079 | ||
6080 | * config/arm/arm.h (CPP_ISA_SPEC): Don't define `arm' or `thumb'. | |
6081 | * config/arm/linux-elf.h (CPP_PREDEFINES): Don't define `__arm__'. | |
6082 | ||
d982e46e JW |
6083 | Sun Sep 10 14:30:28 EDT 2000 John Wehle (john@feith.com) |
6084 | ||
6085 | * alias.c (find_base_term): Handle ADDRESSOF. | |
6086 | (memrefs_conflict_p): An ADDRESSOF doesn't conflict. | |
6087 | ||
212d447c DC |
6088 | 2000-09-10 Denis Chertykov <denisc@overta.ru> |
6089 | ||
6090 | * genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while | |
6091 | outputting templates with many lines. | |
6092 | ||
a746dbf5 SC |
6093 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
6094 | ||
6095 | * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD | |
6096 | to decide whether 64-bit support must be generated. | |
6097 | ||
1d0f6d89 RH |
6098 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
6099 | ||
6100 | * c-parse.in (asm patterns): Fix volatile check. | |
6101 | ||
e1aa5140 KG |
6102 | 2000-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6103 | ||
6104 | * cppmacro.c (check_trad_stringification): New function. | |
6105 | (save_expansion): If -Wtraditional, warn about stringification of | |
6106 | macro arguments. | |
6107 | ||
afa1738b MH |
6108 | 2000-09-11 Michael Hayes <mhayes@cygnus.com> |
6109 | ||
6110 | * loop.h (struct loop_mem_info): Move from loop.c | |
6111 | (struct loop_info): Add fields store_mems, mems, mems_idx, | |
6112 | mems_allocated, unknown_address_altered, | |
6113 | unknown_constant_address_altered, num_mem_sets, and | |
6114 | first_loop_store_insn. | |
6115 | ||
6116 | * loop.c (loop_store_mems): Replace with field in loop_info struct. | |
6117 | (loop_mems, loop_mems_idx, loop_mems_allocated): Likewise. | |
6118 | (unknown_address_altered, unknown_constant_address_altered): Likewise. | |
6119 | (num_mem_sets): Likewise. | |
dd745546 | 6120 | (replace_loop_mems, replace_loop_regs): New. |
afa1738b MH |
6121 | (struct loop_replace_args): New. |
6122 | (load_mems): Use replace_loop_mems. | |
6123 | (try_copy_prop): Use replace_loop_regs. | |
6124 | (replace_loop_reg, replace_loop_mem): Use loop_replace_args structure. | |
6125 | ||
63883fc3 SC |
6126 | 2000-09-09 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
6127 | ||
6128 | * configure.in: Recognize m6811-elf and m6812-elf. | |
6129 | * configure: Regenerate. | |
6130 | ||
808788fe GK |
6131 | 2000-09-09 Geoff Keating <geoffk@cygnus.com> |
6132 | ||
6133 | * recog.c (validate_replace_rtx_1): Correct MODE parameter in call | |
6134 | to operand_subword. | |
6135 | ||
02055ad6 MH |
6136 | 2000-09-10 Michael Hayes <mhayes@cygnus.com> |
6137 | ||
6138 | * loop.c (struct movables): New. | |
6139 | (num_movables): Move into struct movables. | |
6140 | (the_movables): Change type to struct movables. | |
6141 | (ignore_some_movables): Change struct movable arg to struct movables. | |
dd745546 | 6142 | (force_movables, combine_movables, regs_match_p): Likewise. |
02055ad6 MH |
6143 | (rtx_equal_for_loop_p, move_movables): Likewise. |
6144 | (scan_loop): Change movables to be of type struct movables. | |
6145 | Replace last_movable with field in movables structure. | |
6146 | ||
ae54392b ZW |
6147 | 2000-09-08 Zack Weinberg <zack@wolery.cumb.org> |
6148 | ||
6149 | * c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS. | |
6150 | (init_pragma): Avoid warning if pfile happens to be unused. | |
6151 | * c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never | |
6152 | define init_pragma to nothing. Always prototype | |
6153 | init_pragma. Prototype dispatch_pragma if !USE_CPPLIB. | |
6154 | ||
6155 | * c-lex.c (process_directive): Always call dispatch_pragma. | |
6156 | Initialize entering_c_header to 0. | |
6157 | ||
385c9217 SC |
6158 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
6159 | ||
6160 | * config/m68hc11/m68hc11.md: New file, machine description for | |
6161 | 68HC11 & 68HC12. | |
6162 | * config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12. | |
6163 | * config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12. | |
6164 | * config/m68hc11/m68hc12.h: New file, definitions for 68HC12. | |
6165 | * config/m68hc11/m68hc11-protos.h: New file. | |
6166 | * config/m68hc11/m68hc11-crt0.S: New file, startup code. | |
6167 | * config/m68hc11/t-m68hc11-gas: New file, makefile fragment. | |
6168 | * config/m68hc11/xm-m68hc11.h: New file, target defs. | |
6169 | * config/m68hc11/larith.asm: New file, libgcc routines. | |
6170 | ||
dfaf3cdb SC |
6171 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
6172 | ||
6173 | * Makefile.in (DPBIT_FUNCS): Add _usi_to_df. | |
6174 | (FPBIT_FUNCS): Add _usi_to_sf. | |
6175 | * config/fp-bit.c (usi_to_float): New function. | |
6176 | * config/fp-bit.h (L_usi_to_sf, L_usi_to_df): Define. | |
6177 | (usi_to_float): Add appropriate #define. | |
6178 | ||
915119a5 BS |
6179 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
6180 | ||
6181 | * i386-protos.h (sse_comparison_operator, mmx_reg_operand): Declare | |
6182 | new functions. | |
6183 | * i386.c (sse_comparison_operator, mmx_reg_operand): New functions. | |
6184 | * i386.md (attr "type"): Add sse and mmx types. | |
6185 | (attr "memory"): Handle them without a crash. | |
6186 | (movsi_1, movdi_2): Allow MMX regs. | |
6187 | (movdi splits): Don't split moves involving MMX regs. | |
6188 | (setcc_4): Remove '*' from pattern name so we get a gen_setcc4. | |
6189 | (movv4sf_internal, movv4si_internal, movv8qi_internal, | |
6190 | movv4hi_internal, movv2si_internal, movv8qi, movv4hi, movv2si, | |
6191 | movv4sf, movv4si, pushv4sf, pushv4si, pushv8qi, pushv4hi, pushv2si, | |
6192 | sse_movaps, sse_movups, sse_movmskps, mmx_pmovmskb, mmx_maskmovq, | |
6193 | sse_movntv4sf, sse_movntdi, sse_movhlps, sse_movlhps, sse_movhps, | |
6194 | sse_movlps, sse_loadss, sse_movss, sse_storess, sse_shufps, | |
6195 | addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, mulv4sf3, vmmulv4sf3, | |
6196 | divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2, rsqrtv4sf2, vmrsqrtv4sf2, | |
6197 | sqrtv4sf2, vmsqrtv4sf2, sse_andti3, sse_nandti3, sse_iorti3, | |
dd745546 AJ |
6198 | sse_xorti3, maskcmpv4sf3, maskncmpv4sf3, vmmaskcmpv4sf3, |
6199 | vmmaskncmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps, | |
915119a5 BS |
6200 | smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi, |
6201 | cvttps2pi, cvtsi2ss, cvtss2si, cvttss2si, addv8qi3, addv4hi3, | |
6202 | addv2si3, ssaddv8qi3, ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3, | |
6203 | subv4hi3, subv2si3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3, | |
6204 | mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd, | |
6205 | mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3, mmx_uavgv8qi3, | |
6206 | mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pextrw, mmx_pshufw, | |
6207 | eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3, gtv2si3, umaxv8qi3, | |
6208 | smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3, ashrv2si3, lshrv4hi3, | |
6209 | lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3, mmx_ashldi3, | |
6210 | mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw, | |
6211 | mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd, | |
6212 | mmx_punpckldq, emms, sfence, ldmxcsr, prefetch, stmxcsr, sse_clrti, | |
6213 | mmx_clrdi): New patterns. | |
6214 | ||
8e49e00a RE |
6215 | 2000-09-08 Richard Earnshaw <rearnsha@arm.com> |
6216 | ||
6217 | * arm.c: Don't include tm.h directly. | |
6218 | ||
bd5621a3 JH |
6219 | Fri Sep 8 14:34:56 MET DST 2000 Jan Hubicka <jh@suse.cz> |
6220 | ||
6221 | * recog.c (validate_replace_rtx_1): Fix confusion about equality | |
6222 | testing; simplify subregs of constants and nested subregs. | |
e65d02cf | 6223 | |
6b3783de AO |
6224 | 2000-09-08 Alexandre Oliva <aoliva@redhat.com> |
6225 | ||
6226 | * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg. | |
6227 | ||
82be40f7 BS |
6228 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
6229 | ||
6230 | * combine.c (combine_simplify_rtx): Try to simplify VEC_SELECT of a | |
6231 | VEC_CONCAT. | |
9af354b7 BS |
6232 | * rtl.texi (description of USE): Add note about possible pitfalls |
6233 | with this rtx. | |
ce701d1b BS |
6234 | From Richard Henderson: |
6235 | * reload1.c (choose_reload_regs): Compute need_mode properly. | |
82be40f7 | 6236 | |
4287b5f1 RH |
6237 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
6238 | ||
6239 | * config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa. | |
6240 | (__modsi3, __umodsi3): Likewise. | |
6241 | (__udivsi3): Likewise. Normalize the TFmode values. | |
6242 | ||
c5d71f39 GK |
6243 | 2000-09-07 Geoff Keating <geoffk@cygnus.com> |
6244 | ||
6245 | * config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter | |
6246 | with a prototype. | |
6247 | * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress | |
6248 | warning. | |
6249 | ||
712646d0 R |
6250 | Fri Sep 8 03:26:38 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
6251 | ||
6252 | * sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove. | |
6253 | (cmpeqdi_t): Add output pattern. | |
6254 | (cmpeqdi_t+1): Don't split when not optimizing. | |
6255 | Restore proper splitting operation. | |
6256 | ||
30acbc3e RH |
6257 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
6258 | ||
6259 | * c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS, | |
6260 | do not call dispatch_pragma. | |
6261 | ||
46146529 JW |
6262 | 2000-09-07 Jim Wilson <wilson@cygnus.com> |
6263 | ||
6264 | * reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition | |
6265 | to CLASS_CANNOT_CHANGE_MODE. | |
6266 | * config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the | |
6267 | mode classes are different. | |
6268 | ||
6db83155 ZW |
6269 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
6270 | ||
6271 | * cpplib.h (struct cpp_options): Add user_label_prefix member, | |
6272 | left out of commit which removed cppulp.c. | |
6273 | ||
0d45144b RH |
6274 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
6275 | ||
6276 | * bb-reorder.c (fixup_reorder_chain): Add jump in new block | |
6277 | after switch for CASE_DROPS_THROUGH. | |
6278 | ||
e8cb4873 RH |
6279 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
6280 | ||
6281 | * loop.c (strength_reduce): Call check_ext_dependant_givs. | |
6282 | Properly extend the biv initial value for the giv. | |
6283 | (record_biv): Zero ext_dependant. | |
6284 | (record_giv): New argument ext_val. Update all callers. | |
6285 | (general_induction_var): Likewise. | |
6286 | (consec_sets_giv): Likewise. | |
6287 | (simplify_giv_expr): Likewise. Fill in ext_val if we find | |
6288 | a sign-extend, zero-extend, or truncate. | |
6289 | (combine_givs_p): Make sure modes are compatible. | |
6290 | (check_ext_dependant_givs): New. | |
6291 | (extend_value_for_giv): New. | |
6292 | * loop.h (struct induction): Add ext_dependant. | |
6293 | * unroll.c (iteration_info): Extend the biv initial value for the giv. | |
6294 | (find_splittable_givs): Likewise. | |
6295 | (final_giv_value): Likewise. | |
6296 | ||
8b97c5f8 ZW |
6297 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
6298 | ||
6299 | * c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if | |
6300 | REGISTER_TARGET_PRAGMAS is defined. Duplicate some | |
6301 | definitions from cpplib.h. | |
6302 | * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has | |
6303 | already done it. | |
6304 | * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add | |
6305 | documentation for REGISTER_TARGET_PRAGMAS. | |
6306 | ||
6307 | * c-lex.c: Include cpplib.h before c-pragma.h. Define a | |
6308 | default-pragma callback to implement -Wunknown-pragmas if | |
6309 | USE_CPPLIB. | |
6310 | * c-parse.in: Move all includes to top of file. | |
6311 | * c-pragma.c: Include cpplib.h before c-pragma.h. Include | |
6312 | tm_p.h. | |
6313 | (dispatch_pragma): Put the namespace in the -Wunknown-pragmas | |
6314 | warning. | |
6315 | (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it. | |
6316 | ||
6317 | * arm.h, arm-protos.h, arm.c, | |
6318 | c4x.h, c4x-protos.h, c4x.c, | |
6319 | h8300.h, h8300-protos.h, h8300.c, | |
6320 | i370.h, i370-protos.h, i370.c, | |
6321 | i960.h, i960-protos.h, i960.c, | |
d8ea8f28 | 6322 | sh.h, sh-protos.h, sh.c, |
8b97c5f8 ZW |
6323 | v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based |
6324 | pragmata scheme to use REGISTER_TARGET_PRAGMAS instead. | |
6325 | ||
6326 | * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add | |
6327 | multiple include guard. | |
6328 | * i370.md (untyped_call): Use GEN_CALL. | |
6329 | (umodsi3): Remove unused variable. | |
6330 | * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA. | |
6331 | * v850.c (output_move_single, output_move_double): Constify | |
6332 | return value. | |
6333 | (print_operand): Constify a char *. | |
6334 | * v850.h (struct small_memory_info): Constify name member. | |
6335 | ||
1898584f KH |
6336 | 2000-09-07 Kazu Hirata <kazu@hxi.com> |
6337 | ||
6338 | * config/h8300.h: Fix comment typos. | |
6339 | * config/h8300/h8300.md: Likewise. | |
6340 | * config/h8300/lib1funcs.asm: Likewise. | |
6341 | ||
771c4df3 NB |
6342 | Thu 07-Sep-2000 21:29:00 BST Neil Booth <NeilB@earthling.net> |
6343 | ||
6344 | * Makefile.in: Remove references to cppulp.{c,o}. | |
6345 | * cppinit.c (initialize_builtins, cpp_start_read, | |
6346 | cpp_handle_option): Update to use cpp_options structure. | |
6347 | * cppulp.c: Remove. | |
6348 | ||
2496f0b5 JM |
6349 | 2000-09-07 Joseph S. Myers <jsm28@cam.ac.uk> |
6350 | ||
6351 | * c-common.c (time_char_table): Allow %#b and %#h. | |
6352 | ||
bf6302f0 HB |
6353 | 2000-09-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
6354 | ||
6355 | * reorg.c (find_end_label): If the basic block reorder pass moves the | |
6356 | return insn to some other place try to locate it again and put our | |
6357 | end_of_function_label there. | |
6358 | * reorg.c (relax_delay_slots): Check if find_end_label created a | |
6359 | new label that invalidates the current optimazation. | |
6360 | ||
4598ffe9 CM |
6361 | 2000-09-07 Catherine Moore <clm@redhat.com> |
6362 | ||
e8cb4873 RH |
6363 | * unroll.c (unroll_loop): Check for unconditional jumps |
6364 | to loop continuation. Delete if n_iterations is 1. | |
6365 | (ujump_to_loop_cont): New routine. | |
4598ffe9 | 6366 | |
ff427764 BS |
6367 | 2000-09-07 Bernd Schmidt <bernds@redhat.co.uk> |
6368 | ||
6369 | * rtl.c (class_narrowest_mode): Add entries for MODE_VECTOR_INT and | |
6370 | MODE_VECTOR_FLOAT. | |
8441bc30 BS |
6371 | * reload.c (regno_clobbered_p): Accept new arg, MODE, and use it |
6372 | to handle multiword modes correctly. All callers and the declaration | |
6373 | changed. | |
d8ea8f28 | 6374 | |
54f7877c MM |
6375 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
6376 | ||
6377 | * c-common.h (prep_stmt): Declare. | |
6378 | (lang_expand_stmt): Likewise. | |
6379 | * c-decl.c (lang_expand_stmt): Remove. | |
6380 | * c-semantics.c (lang_expand_stmt): Define. | |
6381 | (prep_stmt): New function. | |
6382 | (expand_stmt): Handle common statement types here. | |
d8ea8f28 | 6383 | |
93ca1662 NY |
6384 | 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> |
6385 | ||
6386 | * configure.in (sh-*-linux*): Added. | |
6387 | * configure: Rebuilt. | |
6388 | * config/sh/t-linux: New file. | |
6389 | * config/sh/sh.h (USERMODE_BIT): Define. | |
6390 | (TARGET_USERMODE): Likewise. | |
6391 | (TARGET_SWITCHES): New switches for the bits above. | |
6392 | (INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE. | |
6393 | * config/sh/linux.h: New file. | |
6394 | * config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with | |
6395 | underscore on linux. | |
6396 | (L_sdivsi3, L_udivsi3): Define for linux. | |
6397 | (L_ic_invalidate): Define. | |
6398 | * invoke.texi (SH Options): Document -musermode. | |
6399 | ||
71105114 AO |
6400 | 2000-09-07 Alexandre Oliva <aoliva@redhat.com> |
6401 | ||
4979c2a9 AO |
6402 | * config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function |
6403 | CSE unless generating PIC. | |
6404 | ||
71105114 AO |
6405 | * config/sh/sh.md (symPLT_label2reg): Force the initialization of |
6406 | the PIC register. | |
6407 | ||
d5cfb451 L |
6408 | 2000-09-06 H.J. Lu (hjl@gnu.org) |
6409 | ||
6410 | * Makefile.in (clean_s1): Depend on stage_b. | |
6411 | (clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in | |
6412 | stage2. They are used for "make compare". | |
6413 | ||
ae499cce MM |
6414 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
6415 | ||
6416 | Move statement-tree facilities from C++ to C front-end. | |
6417 | * c-common.h (c_tree_index): Add CTI_VOID_ZERO. | |
6418 | (void_zero_node): New macro. | |
6419 | (struct stmt_tree_s): New type. | |
6420 | (stmt_tree): New typedef. | |
6421 | (struct language_function): New type. | |
6422 | (last_tree): New macro. | |
6423 | (last_expr_type): Likewise. | |
6424 | (walk_tree_fn): New typedef. | |
6425 | (current_stmt_tree): New function. | |
6426 | (begin_stmt_tree): Likewise. | |
6427 | (add_stmt): Likewise. | |
6428 | (finish_stmt_tree): Likewise. | |
6429 | (statement_code_p): Likewise. | |
6430 | (lang_statement_code_p): New variable. | |
6431 | (walk_stmt_tree): New function. | |
6432 | (STMT_IS_FULL_EXPR_P): New macro. | |
6433 | * c-common.c (lang_statement_code_p): New variable. | |
6434 | (c_common_nodes_and_builtins): Initialize void_zero_node. | |
6435 | (statement_code_p): New function. | |
6436 | (walk_stmt_tree): Likewise. | |
6437 | * c-decl.c (language_function): Rename to ... | |
6438 | (c_language_function): ... this. Include language_function. | |
6439 | (push_c_function_context): Adjust accordingly. | |
6440 | (pop_c_function_context): Likewise. | |
6441 | (mark_c_function_context): Likewise. | |
6442 | (current_stmt_tree): Define. | |
6443 | * c-semantics.c (begin_stmt_tree): New function. | |
6444 | (add_stmt): Likewise. | |
6445 | (prune_unused_decls): Likewise. | |
6446 | (finish_stmt_tree): Likewise. | |
6447 | ||
4f4b88d0 HB |
6448 | 2000-09-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
6449 | ||
e8cb4873 | 6450 | * flow.c (insn_dead_p): Detect dead memory stores with auto increments. |
4f4b88d0 | 6451 | |
f725a3ec KH |
6452 | 2000-09-06 Kazu Hirata <kazu@hxi.com> |
6453 | ||
6454 | * calls.c: Fix formatting. | |
6455 | ||
0806f95f GS |
6456 | 2000-09-06 Graham Stott <grahams@cygnus.co.uk> |
6457 | ||
e8cb4873 | 6458 | * config/i386/i386.h (ADDRESS_COST): Fix typo. |
0806f95f | 6459 | |
0e5921e8 ZW |
6460 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
6461 | ||
6462 | Integrated preprocessor. | |
6463 | ||
6464 | * Makefile.in: Remove all references to c-parse.gperf, | |
6465 | c-gperf.h, and c-parse.h. Remove -d from yacc command line | |
6466 | generating c-parse.c. Update dependencies. | |
6467 | * c-parse.gperf, c-gperf.h: Delete. | |
6468 | ||
6469 | * c-common.c: Don't define parse_options, cpp_token, yy_cur, | |
6470 | yy_lim, or yy_get_token. Don't define get_directive_line if | |
6471 | USE_CPPLIB. | |
6472 | * c-common.h: Add multiple include guard. Define RID values | |
6473 | for every keyword in C, C++, and Objective C. Put all the | |
6474 | modifiers first. | |
6475 | (struct c_fileinfo, get_fileinfo, dump_time_statistics): New. | |
6476 | * c-decl.c (c_decode_option): Handle -lang-objc here. | |
6477 | (print_lang_identifier): Handle C_IS_RESERVED_WORD case. | |
6478 | (grokdeclarator): Adjust for new RID scheme. | |
6479 | (extract_interface_info): New stub. | |
6480 | * c-lang.c: Don't declare yy_cur or parse_options. | |
6481 | (lang_init_options): Call cpp_init. Don't call | |
6482 | cpp_options_init. | |
6483 | (lang_init): Don't call check_newline if USE_CPPLIB. | |
6484 | ||
6485 | * c-lex.c: Don't include c-parse.h. Do include timevar.h. | |
6486 | Elide lots of unnecessary code if USE_CPPLIB. Delete code | |
6487 | rendered unnecessary by new architecture. Move routines not | |
6488 | shared with C++ to c-parse.in. Maintain a local idea of the | |
6489 | line number. Handle C++ as well as C. | |
6490 | [USE_CPPLIB]: Declare and register callbacks for #ident and | |
6491 | for entering/leaving files. | |
6492 | (init_c_lex, c_lex): Are now the entry points to this file. | |
6493 | (check_newline): Break out directive handling to | |
6494 | process_directive. | |
6495 | (read_ucs, is_extended_char, utf8_extend_token): Moved here | |
6496 | from C++ front end. | |
6497 | (readescape, parse_float): Overhaul. | |
6498 | (lex_number, lex_string, lex_charconst): Break out of c_lex | |
6499 | (n'ee yylex). | |
6500 | (get_fileinfo, update_header_times, dump_one_header, | |
6501 | dump_time_statistics): New and/or moved here from C++. | |
6502 | Support per-file data needed by C++ and per-header timing | |
6503 | statistics (C++ only, at the moment). | |
6504 | * c-lex.h: Update prototypes. Add multiple include guard. | |
6505 | * c-tree.h (struct lang_identifier): Add rid_code field. | |
6506 | (C_IS_RESERVED_WORD, C_RID_CODE): New. | |
6507 | ||
6508 | * c-parse.in: Include c-pragma.h. Remove unnecesary calls to | |
6509 | reinit_parse_for_function and/or position_after_white_space. | |
6510 | (save_filename, save_lineno): Look ahead before saving. | |
6511 | (label -> identifier ':'): Save file and line before shifting ':'. | |
6512 | (reservedwords): No need to call get_identifier. | |
6513 | (init_parse, finish_parse, yyerror, yylex, yyprint, | |
6514 | make_pointer_declarator): Are now here for C/ObjC. | |
6515 | (rid_to_yy): Conversion table from RID constants to Yacc codes. | |
6516 | ||
6517 | * c-pragma.c: Rewrite parsing logic to fit with cpplib's | |
6518 | #pragma registry. Provide dummy implementation of that | |
6519 | interface if !USE_CPPLIB. | |
6520 | * c-pragma.h: Update to match. | |
6521 | ||
6522 | * flags.h: Add multiple include guard. | |
6523 | (flag_detailed_statistics): Moved here from C++. | |
6524 | * toplev.c: Define flag_detailed_statistics. | |
6525 | ||
6526 | * gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case | |
6527 | #if USE_CPPLIB. | |
6528 | * timevar.def (TV_CPP, TV_LEX): New. | |
6529 | * timevar.h: Add multiple include guard. | |
6530 | ||
6531 | * objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case | |
6532 | #if USE_CPPLIB. | |
6533 | * objc/objc-act.c: Don't mention yy_cur or parse_options. | |
6534 | Initialize cpplib properly. Force lineno to 0 after first | |
6535 | call to check_newline. Don't handle -lang-objc here. | |
6536 | Move forget_protocol_qualifiers and remember_protocol_qualifiers here. | |
6537 | ||
5638268e DE |
6538 | 2000-09-06 David Edelsohn <edelsohn@gnu.org> |
6539 | ||
6540 | * rs6000.md: Correct function unit definitions for cr_logical and | |
6541 | mtjmpr. | |
6542 | (sCOND): Additionally fail for sgt, slt, sge, sle if !TARGET_POWER | |
6543 | and use portable method for >=0 and floating point >=. Remove | |
6544 | associated matchers. | |
6545 | ||
44835fdd MM |
6546 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
6547 | ||
6548 | * extend.texi: Mark named return value extension as deprecated. | |
6549 | ||
bab6226b GK |
6550 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
6551 | ||
6552 | * config/rs6000/rs6000.c (rs6000_reverse_condition): Return | |
6553 | the result. | |
6554 | ||
e6513023 GDR |
6555 | 2000-09-06 Gabriel Dos Reis <gdr@codesourcery.com> |
6556 | ||
6557 | * toplev.c (display_help): Fix thinko in documentation. | |
6558 | ||
6559 | * diagnostic.h (output_buffer::indent_skip): New fields. | |
6560 | (output_indentation): New macro. | |
6561 | ||
6562 | * diagnostic.c (output_indent): New function. | |
6563 | (output_set_prefix, clear_diagnostic_info): Use. | |
6564 | (output_emit_prefix): Predict future indentation. | |
6565 | ||
112c7aea DD |
6566 | 2000-09-06 DJ Delorie <dj@redhat.com> |
6567 | ||
6568 | * Makefile.in (stage_*): add more dependencies to ensure parallel | |
6569 | builds build correctly | |
6570 | ||
1bac0fb4 MH |
6571 | 2000-09-06 Manfred Hollstein <manfredh@redhat.com> |
6572 | ||
6573 | * Makefile.in (bootstrap-lean): Depend on bootstrap-lean_g, | |
6574 | not bootstrap-lean_f. | |
6575 | ||
f472a17c AS |
6576 | 2000-09-06 Andreas Schwab <schwab@suse.de> |
6577 | ||
6578 | * mklibgcc.in: Emit rule for libgcc-stage-start. | |
6579 | * Makefile.in (stage1-start, stage2-start, stage3-start, | |
6580 | stage4-start): Don't handle libgcc here, use libgcc.mk instead. | |
6581 | ||
630c79be | 6582 | 2000-09-06 Bernd Schmidt <bernds@redhat.co.uk> |
611bbf2a BS |
6583 | |
6584 | * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED. | |
6585 | (update_equiv_regs): Likewise, except for the mn10200 kludge. | |
6586 | (combine_regs): Likewise. | |
6587 | ||
630c79be BS |
6588 | * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H). |
6589 | * cse.c: Include "basic-block.h". | |
6590 | (struct table_elt): New field REGCOST. | |
6591 | (CHEAP_REG): Delete macro. | |
6592 | (COST): Return 0 for REGs. | |
6593 | (approx_reg_cost_1, approx_reg_cost, preferrable): New functions. | |
6594 | (notreg_cost): Return 0 for appropriate SUBREGs. | |
6595 | (COSTS_N_INSNS): Return N * 2. | |
6596 | (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap | |
6597 | SUBREGs. | |
6598 | (CHEAPER): Use new function preferrable. | |
6599 | (insert): Initialize REGCOST member. | |
6600 | (find_best_addr): Use approx_reg_cost for estimation of register | |
6601 | usage. | |
6602 | (cse_insn): Likewise. | |
6603 | * loop.c (iv_add_mult_cost): New function. | |
6604 | (add_cost, shift_cost, mult_cost): Delete variables. | |
6605 | (init_loop): Don't initialize add_cost; reduce copy_cost by half. | |
6606 | (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost. | |
6607 | Make code that detects autoinc opportunities slightly less optimistic. | |
6608 | (simplify_giv_expr): If expression contains other reg that is also a | |
6609 | giv, only increment benefit if this is the only use of that reg. | |
6610 | (consec_sets_giv): Take that change into account. | |
6611 | (combine_givs): Slightly more verbose output. | |
6612 | ||
6613 | * i386.h (RTX_COSTS): For MULT, return true cost of multiplication, | |
6614 | not the cost of an equivalent shift. | |
6615 | * sh-protos.h (addsubcosts): Declare. | |
6616 | * sh.c (addsubcosts): New function. | |
6617 | * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0. | |
6618 | (RTX_COSTS): Tweak. Use addsubcosts. | |
6619 | (ADDRESS_COST): Return higher cost for reg+reg addressing. | |
6620 | ||
39a10a29 GK |
6621 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
6622 | ||
6623 | * config/rs6000/rs6000.c (validate_condition_mode): New function. | |
6624 | (branch_comparison_operator): Call validate_condition_mode to | |
6625 | abort rather than returning 0. | |
6626 | (branch_positive_comparison_operator): New function. | |
6627 | (scc_comparison_operator): Call validate_condition_mode to abort | |
6628 | rather than returning 0. | |
6629 | (ccr_bit): Call validate_condition_mode. Update for | |
6630 | new branch scheme. | |
6631 | (print_operand): Delete %C modifier. Update %E case | |
6632 | to use EQ bit not SO bit. | |
6633 | (rs6000_reverse_condition): New function. | |
6634 | (rs6000_generate_compare): New function. | |
6635 | (rs6000_emit_sCOND): New function. | |
6636 | (rs6000_emit_cbranch): New function. | |
6637 | (output_cbranch): The length of a long branch insn is | |
6638 | now only 8 bytes. Add validate_condition_mode. Use | |
6639 | rs6000_reverse_condition. Remove cror generation. | |
bab6226b | 6640 | |
39a10a29 GK |
6641 | * config/rs6000/rs6000.h: Update comments. |
6642 | (PREDICATE_CODES): Add new predicate. Update codes used | |
6643 | by branch_comparison_operator and scc_comparison_operator. | |
6644 | * config/rs6000/rs6000-protos.h: Add prototypes for | |
6645 | new external functions. | |
6646 | * config/rs6000/rs6000.md: Add new scheduling parameters | |
6647 | for cr_logical instructions. Change length of branch | |
6648 | instructions. | |
6649 | (bCOND patterns): Call rs6000_emit_cbranch. | |
6650 | (sCOND patterns): Call rs6000_emit_sCOND. | |
6651 | (branch patterns): Change lengths to 4. | |
6652 | (cr logical patterns): New. | |
6653 | ||
2a4bbffa RH |
6654 | 2000-09-06 Richard Henderson <rth@cygnus.com> |
6655 | ||
6656 | * config/i386/i386.md (call_pop): Fix test for setting | |
6657 | current_function_uses_pic_offset_table. | |
6658 | (call, call_value_pop, call_value): Likewise. | |
6659 | ||
eab828ba ZW |
6660 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
6661 | ||
6662 | * timevar.c (timevar_add): Delete. | |
6663 | (timevar_get): Also count time since the selected timer was | |
6664 | last updated. Do not examine the timevar stack if the | |
6665 | selected timer is standalone. | |
6666 | ||
f1d6a533 DA |
6667 | 2000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6668 | ||
6669 | * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend. | |
6670 | ||
53c5b5d7 JM |
6671 | 2000-09-05 Jason Merrill <jason@redhat.com> |
6672 | ||
6673 | * c-decl.c (finish_incomplete_decl): Don't call complete_array_type | |
6674 | for 'extern' arrays. | |
6675 | ||
3392dafc RH |
6676 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6677 | ||
6678 | * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium. | |
6679 | Eliminate final copy from non-trapping case. | |
6680 | (__divdf3, __divsf3): Likewise. | |
6681 | ||
2a7ffc85 RH |
6682 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6683 | ||
6684 | * config/ia64/ia64.md (mulhi3): Fix typo last change. | |
6685 | * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise. | |
6686 | ||
204093e6 DT |
6687 | 2000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net> |
6688 | ||
6689 | * Makefile.in: Restructure bootstrap stages to allow clean | |
6690 | restart after failure. | |
6691 | ||
514f96e6 RH |
6692 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6693 | ||
6694 | * config/ia64.md (movsi and movdi patterns): Allow moves from | |
6695 | 8-bit constants to AR registers. | |
6696 | ||
cf1f6ae3 RH |
6697 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6698 | ||
6699 | * config/ia64/ia64.md (mulhi3): New. | |
6700 | ||
d8d7a286 RH |
6701 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6702 | ||
6703 | * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove. | |
6704 | * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64 | |
6705 | Optimization Guide, minimum latency alternative. | |
6706 | (__moddi3, __udivdi3, __umoddi3): Likewise. | |
6707 | (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise. | |
6708 | ||
a6efbece BK |
6709 | 2000-09-05 Bruce Korb <bkorb@gnu.org> |
6710 | ||
0e5921e8 ZW |
6711 | * fixinc/fixincl.c (load_file): always read header files |
6712 | with sizes that are a multiple of the page size. | |
dc46505a | 6713 | & use libiberty's getpagesize for determining that. |
a6efbece | 6714 | |
c0712acb AO |
6715 | 2000-09-05 Alexandre Oliva <aoliva@redhat.com> |
6716 | ||
6717 | * gcse.c (hash_string_1): Add prototype. | |
6718 | * cse.c (canon_hash_string): Likewise. | |
6719 | ||
af7f0fde CN |
6720 | 2000-09-04 Craig Newell <CraigN@ieee.org> |
6721 | ||
6722 | * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it. | |
6723 | ||
4993ddc1 AS |
6724 | 2000-09-04 Andreas Schwab <schwab@suse.de> |
6725 | ||
6726 | * Makefile.in (STAGESTUFF): Remove libgcc. | |
6727 | (stage1-start, stage2-start, stage3-start): Copy the contents of | |
6728 | the libgcc directory explicitly. | |
6729 | (mostlyclean): Clean libgcc. | |
6730 | ||
5e640c56 AH |
6731 | 2000-09-04 Andrew Haley <aph@redhat.com> |
6732 | ||
6733 | * dwarf2out.c: (stack_adjust_offset): New prototype. | |
6734 | ||
25ffb1f6 JH |
6735 | Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz> |
6736 | ||
6737 | * combine.c (make_extraction): Fix rtx_cost comparison to | |
6738 | match the comment. | |
6739 | ||
6740 | Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz> | |
6741 | ||
0e5921e8 | 6742 | * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf, |
25ffb1f6 JH |
6743 | umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1): |
6744 | Add '*' to insn pattern name. | |
6745 | ||
29844fa7 JJ |
6746 | 2000-09-04 Jakub Jelinek <jakub@redhat.com> |
6747 | ||
6748 | * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context, | |
6749 | use posn - 1 to index into tokens array. | |
6750 | (maybe_paste_with_next): Adjust caller. | |
6751 | ||
0d86f538 GK |
6752 | 2000-09-03 Geoff Keating <geoffk@cygnus.com> |
6753 | ||
bff46771 GK |
6754 | * invoke.texi: Document the -mvxworks option for rs6000 ELF. |
6755 | ||
0d86f538 GK |
6756 | * config/rs6000/rs6000.h: Update various comments about XER_REGNO. |
6757 | (REGNO_REG_CLASS): Use symbolic register | |
6758 | names. | |
6759 | ||
4e67550b RE |
6760 | 2000-09-03 Richard Earnshaw <rearnsha@arm.com> |
6761 | ||
0e5921e8 | 6762 | * arm.c (final_prescan_insn): If the form of a jump insn isn't |
4e67550b RE |
6763 | recognized, don't try to conditionally execute it. |
6764 | ||
150f4100 DC |
6765 | Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru> |
6766 | ||
6767 | * config/avr/avr.md ("*tablejump_lib"): New pattern. | |
6768 | (call_value_insn): Right length claculation. | |
6769 | (call_insn): Likewise. | |
6770 | ||
5fecfd8d MM |
6771 | 2000-09-02 Marek Michalkiewicz <marekm@linux.org.pl> |
6772 | ||
6773 | * config/avr/avr-protos.h, config/avr/avr.c (unique_section, | |
6774 | gas_output_limited_string, gas_output_ascii, output_movqi, | |
6775 | output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr, | |
6776 | out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf, | |
6777 | out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out, | |
6778 | ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out, | |
6779 | lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf, | |
6780 | out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info): | |
6781 | Add "const" as needed to remove warnings. | |
6782 | ||
6783 | * config/avr/avr.c (avr_override_options, avr_init_once, | |
6784 | function_prologue, function_epilogue, frame_pointer_required_p, | |
6785 | class_likely_spilled_p, order_regs_for_local_alloc, | |
6786 | avr_address_cost, avr_ret_register): Use K&R style arguments. | |
6787 | (initial_elimination_offset, gas_output_limited_string): | |
6788 | Remove ATTRIBUTE_UNUSED from the used arguments. | |
6789 | (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf): | |
6790 | Use local variables src, dest, base to access operands[]. | |
6791 | Rename reg_dest to reg_src if that's what it is. | |
6792 | (output_movhi, output_movsisf): Optimize loading 8-bit immediate | |
6793 | constants to LD_REGS if reg_was_0. | |
6794 | (output_reload_insisf): Change arg 3 to insn length and set it. | |
6795 | (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient | |
6796 | access to 16-bit I/O register pairs. | |
6797 | (avr_address_cost): Lower cost for the above case. | |
6798 | (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand | |
6799 | may be clobbered, also for LD_REGS. | |
6800 | (adjust_insn_length): Correct insn length for iorhi3 and iorsi3 | |
6801 | with a CONST_INT. | |
6802 | ||
6803 | * config/avr/avr.h (PTRDIFF_TYPE): Make signed. | |
6804 | ||
6805 | * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS | |
6806 | macro to test_hard_reg_class function. | |
6807 | (*movsi, *movsf): Change "cc" attribute from "clobber" to "none" | |
6808 | for loading immediate constants to LD_REGS. | |
6809 | (andsi3, cmphi, cmpsi): Add return statements to avoid warnings. | |
6810 | ||
6811 | ||
bad3869a MM |
6812 | Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl> |
6813 | ||
6814 | * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__ | |
6815 | * config/avr/libgcc.S: Lost part of the previous patch. | |
6816 | ||
802a8181 DA |
6817 | 2000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6818 | ||
6819 | * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t | |
6820 | object before calling pthread_mutex_init. | |
6821 | ||
1a66cd67 AO |
6822 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com> |
6823 | ||
6824 | * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm, | |
6825 | config/sh/crtn.asm: New files. | |
6826 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set. | |
6827 | (crt1.o, crti.o, crtn.o): New targets. | |
6828 | * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added | |
6829 | sh/t-elf. | |
6830 | * configure: Rebuilt. | |
6831 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
6832 | STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define. | |
6833 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
6834 | Undefine for config/elfos.h to redefine. | |
6835 | (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h. | |
6836 | ||
6837 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> | |
6838 | ||
6839 | * config/sh/sh-protos.h (nonpic_symbol_mentioned_p, | |
6840 | legitimize_pic_address, output_pic_addr_const): Declare. | |
6841 | * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register. | |
6842 | (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise. | |
6843 | (TARGET_SWITCHES): New switch -mprefergot. | |
6844 | (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot. | |
6845 | (PIC_OFFSET_TABLE_REGNUM): Define. | |
6846 | (GOT_SYMBOL_TABLE): Likewise. | |
6847 | (LEGITIMIZE_ADDRESS): Use legitimize_pic_address. | |
6848 | (ENCODE_SECTION_INFO): Define. | |
6849 | (FINALIZE_PIC): New macros. | |
6850 | (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro. | |
6851 | (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const. | |
6852 | * config/sh/sh.c (print_operand_address): Use output_pic_addr_const. | |
6853 | (prepare_move_operands): Call emit_pic_move or | |
6854 | emit_pic_const_move if appropriate. | |
6855 | (output_far_jump): For PIC, use braf and output long offset. | |
0e5921e8 | 6856 | (machine_dependent_reorg): |
1a66cd67 AO |
6857 | (sh_expand_prologue): Save and initialize the PIC register. |
6858 | (sh_expand_epilogue): Restore it. | |
6859 | (initial_elimination_offset): Account for it. | |
6860 | (nonpic_symbol_mentioned_p): New function. | |
6861 | (legitimize_pic_address): Likewise. | |
6862 | (output_pic_addr_const): Likewise. | |
6863 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns. | |
6864 | (call, call_value): Use them. | |
6865 | (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg, | |
6866 | symPLT_label2reg): New expands. | |
6867 | * invoke.texi (SH Options): Document -mprefergot. | |
6868 | ||
6462bb43 AO |
6869 | 2000-09-01 Alexandre Oliva <aoliva@redhat.com> |
6870 | ||
6871 | * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro. | |
6872 | * gcse.c (hash_string_1): New function. | |
6873 | (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number. | |
6874 | (expr_equiv_p) <ASM_OPERANDS>: Likewise. | |
6875 | * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS. | |
6876 | (canon_hash_string): New function. | |
6877 | (canon_hash) <ASM_OPERANDS>: Disregard filename and line number. | |
6878 | (exp_equiv_p) <ASM_OPERANDS>: Likewise. | |
6879 | (fold_rtx): Use ASM_OPERANDS accessor macros. | |
6880 | * emit-rtl.c (copy_insn_1): Likewise. | |
6881 | * integrate.c (copy_rtx_and_substitute): Likewise. | |
6882 | * stmt.c (expand_asm_operands): Likewise. Give an | |
6883 | ASM_OPERANDS rtx the mode of the output reg being set from it. | |
6884 | ||
1b4f90cd FF |
6885 | 2000-09-01 Fred Fish <fnf@be.com> |
6886 | ||
6887 | * fix-header.c (write_rbrac): Add putc and getc to list of | |
6888 | functions to protect against prior definition as a macro. | |
0e5921e8 | 6889 | |
3c786c69 JM |
6890 | 2000-09-01 Joseph S. Myers <jsm28@cam.ac.uk> |
6891 | ||
6892 | * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE. | |
6893 | (c_size_type_node): Define. | |
6894 | * c-decl.c (init_decl_processing): Initialize c_size_type_node. | |
6895 | * c-common.c (enum format_lengths, enum format_std_version, | |
6896 | format_length_info, format_type_detail, BADLEN, NOLENGTHS, | |
6897 | format_kind_info, printf_length_specs, scanf_length_specs, T89_I, | |
6898 | T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL, | |
6899 | T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD, | |
6900 | T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI, | |
6901 | TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM, | |
6902 | format_types): Define. | |
6903 | (format_char_info, print_char_table, scan_char_table, | |
6904 | time_char_table): Rearrange for new organization of information | |
6905 | about format length modifiers and standard versions. | |
6906 | (T_ST): Redefine to use c_size_type_node. | |
6907 | (check_format_info): Obtain information about length modifiers and | |
6908 | standard versions from tables. Adjust warning message wordings. | |
6909 | Use the name from the user's program for `ll' and `hh' length | |
6910 | modifiers in warning messages. Use more informative names for | |
6911 | wanted types where available (for wchar_t, wint_t, size_t, signed | |
6912 | size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t). | |
6913 | ||
8a09bb27 JW |
6914 | 2000-09-01 Jim Wilson <wilson@cygnus.com> |
6915 | ||
ca3920ad JW |
6916 | * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN. |
6917 | * combine.c (distribute_notes): Handle REG_NORETURN. | |
6918 | * rtl.c (reg_note_name): Add REG_NORETURN. | |
6919 | * rtl.h (enum reg_note): Likewise. | |
6920 | ||
6921 | * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from | |
6922 | ia64_file_start. | |
6923 | * config/ia64/ia64.c (emit_safe_across_calls): Likewise. | |
6924 | (rtx_needs_barrier): Handle unspec_volatile 8 and 9. | |
6925 | (emit_predicate_relation_info): Handle conditional calls with | |
6926 | REG_NORETURN. | |
6927 | * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls | |
6928 | instead of ia64_file_start. | |
6929 | * config/ia64/sysv4.h (ASM_FILE_START): Likewise. | |
6930 | * config/ia64/ia64.md (safe_across_calls_all, | |
6931 | save_across_calls_normal): New patterns. | |
6932 | ||
8a09bb27 JW |
6933 | * loop.c (check_final_value): Check for biv use before checking for |
6934 | giv use. Check for both biv and giv uses. Always set last_giv_use | |
6935 | if there is a giv use. | |
6936 | ||
11a13704 RH |
6937 | 2000-09-01 Richard Henderson <rth@cygnus.com> |
6938 | ||
6939 | * config/ia64/ia64.md (mulsi3): Use grfr_register_operand. | |
6940 | (madddi3): Likewise. | |
6941 | (maddsi3): New. | |
6942 | ||
6324d2bb RK |
6943 | Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6944 | ||
fcf1b822 RK |
6945 | * expr.c (clear_storage): Don't use emit_move_insn unless |
6946 | either BLKmode or proper size. | |
6947 | (store_constructor): Don't call clear_storage if REG of wrong size. | |
6948 | ||
6324d2bb RK |
6949 | * flow.c (init_propagate_block_info): Don't mark frame dead at end |
6950 | of function if returns wiht stack pointer depressed. | |
6951 | ||
1ba5ae8f AH |
6952 | 2000-09-01 Andrew Haley <aph@redhat.com> |
6953 | ||
0e5921e8 ZW |
6954 | * dwarf2out.c (stack_adjust_offset): New function. |
6955 | (dwarf2out_stack_adjust): Break out stack adjust logic into | |
6956 | new stack_adjust_offset function. Look inside parallels and | |
6957 | sequences for stack adjustments. | |
1ba5ae8f | 6958 | |
893f3d5b JL |
6959 | 2000-08-31 Jeff Law <law@cygnus.com> |
6960 | ||
94c51f7a JL |
6961 | * arm.md: Use no_new_pseudos to determine when it is safe |
6962 | to create new pseudo registers. | |
6963 | ||
0e5921e8 ZW |
6964 | * arm.c (legitimize_pic_address): Use no_new_pseudos to determine |
6965 | when we can safely allocate new registers. | |
893f3d5b | 6966 | |
1b3d8f8a GK |
6967 | 2000-08-31 Geoffrey Keating <geoffk@cygnus.com> |
6968 | ||
6969 | * stmt.c (expand_asm_operands): Twiddle generating_concat_p | |
6970 | so that CONCATs are not generated for ASMs. | |
6971 | * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when | |
6972 | not generating_concat_p. | |
6973 | * function.c (pop_function_context_from): Reset | |
6974 | generating_concat_p. | |
6975 | (prepare_function_start): Likewise. | |
6976 | * rtl.c (generating_concat_p): Define. | |
6977 | * rtl.h (generating_concat_p): Declare. | |
6978 | * toplev.c (rest_of_compilation): No CONCATs after RTL generation. | |
6979 | ||
4e8bd75f | 6980 | 2000-08-22 Philipp Thomas <pthomas@suse.de> |
0e5921e8 | 6981 | Masanobu Yuhara <yuhara@flab.fujitsu.co.jp> |
4e8bd75f PT |
6982 | |
6983 | * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them | |
6984 | for translation. | |
6985 | ||
b145ee27 GM |
6986 | 2000-08-30 Greg McGary <greg@mcgary.org> |
6987 | ||
6988 | * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh | |
6989 | * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC). | |
6990 | * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE. | |
6991 | ||
2afaa41c GM |
6992 | 2000-08-30 Greg McGary <greg@mcgary.org> |
6993 | ||
6994 | * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct. | |
6995 | (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct. | |
6996 | (TREE_INT_CST): New macro. | |
6997 | * varasm.c (const_hash, compare_constant_1, record_constant_1): | |
6998 | Use new macro TREE_INT_CST. | |
6999 | ||
1d92b3e1 NB |
7000 | Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net> |
7001 | ||
7002 | * contrib.texi: Add self. | |
7003 | ||
b23ca156 AO |
7004 | 2000-08-30 Alexandre Oliva <aoliva@redhat.com> |
7005 | ||
7006 | * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns. | |
7007 | (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps | |
7008 | and labels. | |
7009 | ||
aef9fbbf DA |
7010 | 2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
7011 | ||
7012 | * fixinc/gnu-regex.c: Don't define `const'. | |
7013 | ||
85f3d674 RK |
7014 | Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7015 | ||
7016 | * expr.c (store_constructor): Allow variable bounds of array type. | |
7017 | (expand_expr): Don't blow up if type is ERROR_MARK. | |
7018 | * varasm.c (output_constructor): Don't access lower bound of array | |
7019 | type unless need it if index is supplied (so it can be a variable | |
7020 | if no index is supplied). | |
7021 | Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS. | |
7022 | Other minor cleanups. | |
7023 | ||
5b67ad6f DA |
7024 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
7025 | ||
7026 | * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS | |
7027 | for compilations in stage 1 and subsequent stages, respectively. | |
7028 | * configure.in (vax): Add compiler-dependent CFLAGS for stage 1. | |
7029 | * configure: Rebuilt. | |
7030 | * x-vax, x-vax-gcc: Deleted. | |
7031 | ||
63ad61ed ZW |
7032 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
7033 | ||
7034 | * c-common.c (declare_function_name): Use func_id_node, | |
7035 | function_id_node, and pretty_function_id_node. Do not make | |
0e5921e8 | 7036 | __func__ visible at file scope. |
63ad61ed ZW |
7037 | * c-common.h (c_tree_index): Add CTI_FUNCTION_ID, |
7038 | CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID. | |
7039 | (function_id_node, pretty_function_id_node, func_id_node): New | |
7040 | macros. | |
7041 | * c-decl.c (init_decl_processing): Initialize function_id_node, | |
7042 | pretty_function_id_node, and func_id_node. | |
7043 | (c_make_fname_decl): Correct comment. | |
7044 | ||
7045 | * tree.h (struct tree_identifier): Constify pointer member. | |
7046 | ||
7047 | * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *. | |
7048 | * c-pragma.h (struct weak_syms): Constify name and value members. | |
0e5921e8 | 7049 | (add_weak): Constify arguments. |
63ad61ed ZW |
7050 | |
7051 | * calls.c (special_function_p): Constify a char *. | |
7052 | (expand_call): Remove variable which is initialized and then | |
7053 | never used. | |
7054 | * dependence.c (struct def_use, struct induction, struct subscript): | |
7055 | Constify 'variable' member. | |
7056 | (get_low_bound, have_induction_variable): Constify char * argument. | |
7057 | (find_induction_variable): Add braces to avoid dangling else. | |
7058 | (classify_dependence): Constify char * arrays. | |
7059 | * profile.c (output_func_start_profiler): Constify a char *. | |
7060 | * stor-layout.c (finalize_record_size): Constify a char *. | |
7061 | * tree.c (is_attribute_p): Constify a char *. | |
7062 | * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument. | |
7063 | ||
7064 | * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code | |
7065 | for comprehensibility. Do not call get_identifier if we did | |
7066 | not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to | |
7067 | create temporary string constants, not ggc_alloc_string. No | |
7068 | need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const | |
7069 | char * to hold IDENTIFIER_POINTERs. | |
7070 | ||
cee58bc0 RH |
7071 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
7072 | ||
7073 | * config/ia64/ia64.md (muldi3): Use grfr_register_operand | |
7074 | for the inputs. | |
7075 | ||
94aaab7a RH |
7076 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
7077 | ||
7078 | * reload.c (push_secondary_reload): Allow class == reload_class | |
7079 | if we're using a reload_in/out pattern. | |
7080 | ||
60a3c181 RH |
7081 | * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use |
7082 | the half that does not conflict with the reload register. | |
7083 | (reload_outti): Likewise. | |
7084 | ||
9218435e KH |
7085 | 2000-08-29 Kazu Hirata <kazu@hxi.com> |
7086 | ||
4381f7c2 KH |
7087 | * reload.c: Fix formatting. |
7088 | ||
7089 | * stmt.c: Fix formatting. | |
7090 | ||
9218435e KH |
7091 | * gcc.c: Fix formatting. |
7092 | ||
fba0bfd4 ZW |
7093 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
7094 | ||
7095 | * flags.h (time_report, mem_report): New global flags. | |
7096 | * toplev.c: Define time_report and mem_report. | |
7097 | (f_options): Add -ftime-report and -fmem-report. | |
7098 | (compile_file): Turn on time_report if quiet_flag is off. | |
7099 | Call ggc_print_statistics at very end if mem_report is on. | |
7100 | * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag. | |
7101 | ||
7102 | * ggc-common.c (ggc_print_statistics): Rename to | |
7103 | ggc_print_common_statistics; all callers changed. Scale | |
7104 | quantities above 10K to kilobytes and above 10M to megabytes. | |
7105 | * ggc-page.c (ggc_page_print_statistics): Rename to | |
7106 | ggc_print_statistics. Report memory consumed by internal data | |
7107 | structures for each allocation bucket. Scale quantities above | |
7108 | 10K to kilobytes and above 10M to megabytes. | |
7109 | * ggc-simple.c: Prototype debug_ggc_tree to avoid warning. | |
7110 | Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning. | |
7111 | Define tally_leaves always. | |
7112 | (ggc_print_statistics): New function. | |
7113 | * ggc.h: Adjust for renamed functions. | |
7114 | ||
612105a6 DC |
7115 | Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru> |
7116 | ||
7117 | * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to | |
7118 | output_movsisf instead of which_alternative. | |
7119 | ||
7120 | * config/avr/avr.c (output_reload_inhi): Check for NULL ponter. | |
7121 | ||
6bec29c9 DC |
7122 | Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
7123 | ||
7124 | * config/avr/avr-protos.h: (avr_output_ascii) Removed. | |
7125 | (avr_progmem_p): New prototype. | |
7126 | (output_movsisf): Prototype declaration changed. | |
7127 | (output_movqi): New prototype. | |
7128 | (output_movhi): New prototype. | |
7129 | (call_insn_operand): Likewise. | |
0e5921e8 | 7130 | (final_prescan_insn): Likewise. |
6bec29c9 DC |
7131 | (avr_simplify_comparision_p): Likewise. |
7132 | (avr_normalize_condition): Likewise. | |
7133 | (compare_eq_p): Likewise. | |
7134 | (out_shift_with_cnt): Likewise. | |
7135 | (const_int_pow2_p): Likewise. | |
7136 | (output_reload_inhi): Prototype declaration changed. | |
7137 | ||
7138 | * config/avr/avr.c: (debug_hard_reg_set): Prototype declared. | |
7139 | (ldi_reg_rtx): New. rtx for r31. | |
7140 | (avr_init_stack): Initialize as "__stack". | |
7141 | (function_prologue): Use it. | |
7142 | Replace all TARGET_ENHANCED with AVR_ENHANCED. | |
7143 | (avr_mcu_name): Initialize as "avr2". | |
7144 | (avr_enhanced_p, avr_mega_p): New variables. | |
7145 | (mcu_types, avr_override_options): Handle all known MCU types. | |
7146 | Also handle avr1 (only preprocess, assemble and link). | |
7147 | (print_operand): Using of `%K' in output template removed. | |
7148 | (out_movqi_r_mr): Optimized. | |
7149 | (out_movhi_r_mr): Likewise. | |
7150 | (output_movqi): New function. | |
7151 | (output_movhi): Likewise. | |
7152 | (out_movsi_r_mr): Optimized. | |
7153 | (output_movsisf): Compute insn length for `adjust_insn_length' | |
7154 | (out_movqi_mr_r): Optimized. | |
7155 | (out_movhi_mr_r): Optimized. | |
7156 | (adjust_insn_length): Use output_movsisf, output_movqi, | |
7157 | output_movhi for insn length adjusting. | |
7158 | (reg_unused_after): Use dead_or_set_p. | |
7159 | (preferred_reload_class): Now havn't any restriction. | |
7160 | (reg_was_0): New function. | |
7161 | (io_address_p): Likewise. | |
7162 | (const_int_pow2_p): Likewise. | |
7163 | (output_reload_inhi): Likewise. | |
7164 | (output_reload_insisf): Likewise. | |
7165 | ||
7166 | * config/avr/avr.h (MULTILIB_DEFAULTS): Define. | |
7167 | (LIB_SPEC): Use -lc for all supported devices. | |
7168 | (LIBGCC_SPEC): Use -lgcc for all supported devices. | |
7169 | (AVR_MEGA): Define as avr_mega_p. | |
7170 | (AVR_ENHANCED): New, define as avr_enhanced_p. | |
7171 | (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=... | |
7172 | (CPP_SPEC, LINK_SPEC): Handle all known MCU types. | |
7173 | (CRT_BINUTILS_SPECS): Handle all known MCU types. | |
7174 | Rename gcrt1-*.o to make file names unique on 8.3 filesystems. | |
7175 | (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC. | |
7176 | (ASM_SPEC): Pass -mmcu=... to the assembler. | |
7177 | Change all -DAVR_* to -D__AVR_*__. | |
7178 | (INIT_TARGET_OPTABS), config/avr/libgcc.S: | |
7179 | Rename library functions to start with two underscores. | |
7180 | (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid | |
7181 | alignment. | |
7182 | (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)). | |
7183 | (SUPPORTS_WEAK): Likewise. | |
7184 | (LDI_REG_REGNO): New. Register r31 will be used as temporary | |
7185 | register for loading constants to r0-r14. | |
7186 | ||
7187 | * config/avr/avr.md: Replace all TARGET_ENHANCED with | |
7188 | AVR_ENHANCED. | |
7189 | (*mov_r_sp): Removed. Handled by output_movhi. | |
7190 | (*mov_sp_r): Likewise. | |
7191 | (*mov_sp_r_no_interrupts): Likewise | |
7192 | (*mov_sp_r_tiny): Likewise. | |
7193 | (*movqi): Use output_movqi. | |
7194 | (*reload_inqi): New. | |
7195 | (*movhi): Use output_movhi. | |
7196 | (*reload_inhi): New. | |
7197 | (*negsi2): Optimized. | |
7198 | (*negsf2): Likewise. | |
7199 | Added peepholes (define_peephole2) for loading constants to r0-r14 | |
7200 | and for using `cpse' command. | |
7201 | ||
7202 | * config/avr/libgcc.S: Rename library functions to start with two | |
7203 | underscores. | |
7204 | Add support for enhanced core. | |
7205 | (_moqhi3): Fix typo, now _modqi3. | |
7206 | (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word. | |
7207 | (__prologue_saves__): Remove test for stack adjust by 0. | |
7208 | (__tablejump__): New. | |
7209 | ||
7210 | * config/avr/t-avr: Build libgcc2 with -mcall-prologues. | |
7211 | Add multilib support. | |
7212 | ||
20bd7bfa JW |
7213 | Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com) |
7214 | ||
7215 | * loop.c (prescan_loop): Don't check unknown_address_altered | |
7216 | when deciding if insert_loop_mem is safe. Add BLKmode MEMs | |
7217 | to loop_store_mems as necessary. | |
7218 | (loop_invariant_p): Don't check unknown_address_altered | |
7219 | or unknown_constant_address_altered. | |
7220 | ||
76f941a8 DA |
7221 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
7222 | ||
7223 | * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns. | |
7224 | ||
2c8f0515 ZW |
7225 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
7226 | ||
7227 | * cpperror.c (print_file_and_line): If line is (unsigned int)-1, | |
7228 | print just the filename. | |
7229 | * cpplex.c (_cpp_run_directive): Add additional argument, the | |
7230 | name to give the synthetic buffer. This defaults to | |
7231 | translated "<command line>". | |
7232 | * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert): | |
7233 | Adjust to match. | |
7234 | (_cpp_define_builtin): New function. | |
7235 | * cppinit.c (initialize_builtins): Use _cpp_define_builtin. | |
7236 | * cpphash.h: Update prototypes. | |
7237 | ||
7238 | * tradcpp.c (main): Process -D and -U simultaneously, in the | |
7239 | order they appeared on the command line. | |
7240 | ||
6ad79f1b KG |
7241 | 2000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7242 | ||
7243 | * c-decl.c (define_label): Call warning_with_file_and_line and | |
7244 | error_with_file_and_line instead of plain warning or error. | |
7245 | ||
7246 | * c-parse.in (label): Use save_filename/save_lineno to ensure | |
7247 | correct values for calls to define_label. | |
7248 | ||
4361b41d MM |
7249 | 2000-08-29 Mark Mitchell <mark@codesourcery.com> |
7250 | ||
7251 | * calls.c (expand_call): Don't create a VAR_DECL just to throw it | |
7252 | away. | |
7253 | * expr.c (expand_expr, case TARGET_EXPR): Don't call | |
7254 | mark_addressable. | |
7255 | * tree.h (get_file_function_name): Remove two duplicate | |
7256 | declarations. | |
7257 | ||
abf9af02 KH |
7258 | 2000-08-28 Kazu Hirata <kazu@hxi.com> |
7259 | ||
dc478a5d KH |
7260 | * tree.c: Fix formatting. |
7261 | ||
abf9af02 KH |
7262 | * xcoffout.c: Fix formatting. |
7263 | ||
5f632b5e JM |
7264 | 2000-08-28 Jason Merrill <jason@redhat.com> |
7265 | ||
7266 | * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer. | |
7267 | ||
7268 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> | |
7269 | ||
7270 | * dwarf2out.c (dwarf2out_finish): Don't bother calling | |
7271 | break_out_includes if it won't do anything. | |
7272 | ||
38323cc3 RH |
7273 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
7274 | ||
7275 | * reload.c (push_secondary_reload): Revert 2000-08-16 change. | |
7276 | (find_reloads): Likewise. | |
7277 | * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change. | |
7278 | (reload_inhi): Likewise. | |
7279 | ||
e1ff012c RH |
7280 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
7281 | ||
7282 | * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined. | |
7283 | (call_insn_operand): Don't expect a surrounding mem. | |
7284 | (constant_call_address_operand): Likewise. | |
7285 | * config/i386/i386.h (PREDICATE_CODES): Update. | |
7286 | * config/i386/i386.md (call patterns): Move the match_operand | |
7287 | for the call destination inside the mem. | |
7288 | ||
c2cba7a9 RH |
7289 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
7290 | ||
7291 | * local-alloc.c (requires_inout): Don't use reserved range for | |
7292 | EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER. | |
7293 | * recog.c (asm_operand_ok): Likewise. | |
7294 | (preprocess_constraints, constrain_operands): Likewise. | |
7295 | * regclass.c (record_reg_classes): Likewise. | |
7296 | * reload.c (find_reloads): Likewise. | |
7297 | * reload1.c (maybe_fix_stack_asms): Likewise. | |
7298 | (reload_cse_simplify_operands): Likewise. | |
7299 | * stmt.c (expand_asm_operands): Likewise. | |
7300 | ||
7301 | * md.texi: Update constraints documentation. | |
7302 | * tm.texi (EXTRA_CONSTRAINT): Update. | |
7303 | ||
5f632b5e JM |
7304 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> |
7305 | ||
7306 | * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__". | |
7307 | (print_die): If we don't know the offset of the | |
7308 | target die, try the symbol. Add a trailing newline. | |
7309 | (reverse_all_dies): New fn. | |
7310 | (dwarf2out_finish): Call it. | |
7311 | (break_out_includes): Reorganize for clarity. | |
7312 | (add_sibling_attributes): Don't call reverse_die_lists. | |
7313 | (output_comp_unit): Rename from output_comdat_comp_unit. Use for | |
7314 | primary CU, too. | |
7315 | * flags.h: Add flag_eliminate_dwarf2_dups. | |
7316 | * toplev.c (f_options): Support -feliminate-dwarf2-dups. | |
7317 | ||
5de0e8d4 JM |
7318 | 2000-08-28 Jason Merrill <jason@redhat.com> |
7319 | ||
5f632b5e JM |
7320 | * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags. |
7321 | * dwarf2out.c: #include "md5.h". | |
7322 | (DIE_LABEL_PREFIX): New macro. | |
7323 | (dw_val_struct): Add 'external' flag to val_die_ref. | |
7324 | (add_AT_die_ref, AT_ref): Adjust. | |
7325 | (AT_ref_external, set_AT_ref_external): New fns. | |
7326 | (build_abbrev_table): Call set_AT_ref_external. | |
7327 | (value_format): Call AT_ref_external. | |
7328 | (die_struct): Add die_symbol field. | |
7329 | (new_die): Clear it. | |
7330 | (dwarf_tag_name): Handle BINCL/EINCL. | |
7331 | (dwarf2out_start_source_file): Add BINCL DIE. | |
7332 | (dwarf2out_end_source_file): Add EINCL DIE. | |
7333 | (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns. | |
7334 | (loc_checksum, attr_checksum, die_checksum): New fns. | |
7335 | (is_type_die, is_comdat_die, is_symbol_die): New fns. | |
7336 | (compute_section_prefix, assign_symbol_names): New fns. | |
7337 | (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns. | |
7338 | (output_die): Call output_die_symbol and AT_ref_external. | |
7339 | (output_comdat_comp_unit): New fn, split out from... | |
0e5921e8 | 7340 | (dwarf2out_finish): ...here. Also call add_sibling_attributes for |
5f632b5e JM |
7341 | secondary CUs. |
7342 | (output_pubnames, output_aranges): Abort if we see entries from | |
7343 | secondary CUs. | |
7344 | * toplev.h: Declare file_name_nondirectory. | |
7345 | * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend. | |
7346 | (rest_of_type_compilation): Call dwarf2out_decl if at toplevel. | |
7347 | (debug_start_source_file): Call dwarf2out_start_source_file | |
7348 | regardless of debug verbosity. | |
7349 | (debug_end_source_file): Similarly. | |
7350 | * tree.h: Declare clean_symbol_name. | |
7351 | * tree.c (clean_symbol_name): Split out from... | |
7352 | (get_file_function_name_long): ...here. | |
7353 | ||
5de0e8d4 JM |
7354 | * dwarf2out.c (new_loc_descr): Use calloc. |
7355 | (splice_child_die): Remove the die from the right parent. | |
7356 | (gen_struct_or_union_die): Don't add AT_name to a specification DIE. | |
7357 | ||
04324727 RK |
7358 | Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7359 | ||
7360 | * toplev.c (decode_g_option): Don't give warning for unknown -g | |
7361 | option; return 0 instead. | |
7362 | (main): If -g option is not recognized by front end or | |
7363 | language-independent code, give warning. | |
7364 | ||
9e3e266c GM |
7365 | 2000-08-28 Greg McGary <greg@mcgary.org> |
7366 | ||
7367 | * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl. | |
7368 | * config/i386/i386.c (ix86_expand_compare): Remove `static'. | |
7369 | * config/i386/i386.md (trap, conditional_trap): New insn & expand. | |
7370 | ||
a0bff95f GM |
7371 | 2000-08-27 Greg McGary <greg@mcgary.org> |
7372 | ||
7373 | * cpplex.c (parse_string): Don't look for backslash | |
7374 | before first char in `namebuf'. | |
7375 | * loop.c (strength_reduce): Skip NOTEs. | |
7376 | ||
edb4c415 JM |
7377 | 2000-08-27 Jason Merrill <jason@redhat.com> |
7378 | ||
7379 | * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear | |
7380 | DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or | |
7381 | TREE_ASM_WRITTEN, either. | |
7382 | (finish_decl): Adjust. | |
7383 | ||
6e88e75c PT |
7384 | 2000-08-28 Philipp Thomas <pthomas@suse.de> |
7385 | ||
7386 | * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as | |
7387 | they have been incorporated into the gettext CVS. Change the text to | |
7388 | reflect the current status of NLS. Add instructions for accessing | |
7389 | the gettext CVS and add the patch from Martin v. Loewis. | |
7390 | ||
e53ca51f GK |
7391 | 2000-08-27 Geoff Keating <geoffk@cygnus.com> |
7392 | ||
7393 | * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe | |
7394 | by using gen_lowpart_common. | |
7395 | (movdi_internal64+6): Likewise. | |
7396 | ||
a0a6fdc8 AO |
7397 | 2000-08-26 Alexandre Oliva <aoliva@redhat.com> |
7398 | ||
1b2dd04a AO |
7399 | * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): |
7400 | Document. | |
7401 | ||
a0a6fdc8 AO |
7402 | * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register |
7403 | numbers to the ranges used by GDB. | |
7404 | ||
26a110f5 RH |
7405 | 2000-08-25 Richard Henderson <rth@cygnus.com> |
7406 | ||
7407 | * config/ia64/ia64.h (struct machine_function): Add n_varargs. | |
7408 | * config/ia64/ia64.c (ia64_compute_frame_size): Use it. | |
7409 | (ia64_expand_prologue): Likewise. | |
7410 | (ia64_setup_incoming_varargs): Set it. Properly skip the current | |
7411 | argument for stdargs. | |
7412 | ||
ecff20d4 JM |
7413 | 2000-08-25 Jason Merrill <jason@redhat.com> |
7414 | ||
7415 | * integrate.c (expand_inline_function): Pull out the original decl. | |
7416 | ||
caa511fd JW |
7417 | 2000-08-25 Jim Wilson <wilson@cygnus.com> |
7418 | ||
d51ff7cb JW |
7419 | * cse.c (cse_insn): Don't pass label subtraction to force_const_mem. |
7420 | ||
caa511fd JW |
7421 | * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl. |
7422 | ||
9a56f4f6 GM |
7423 | 2000-08-25 Greg McGary <greg@mcgary.org> |
7424 | ||
7425 | * flow.c (dump_edge_info): Use ARRAY_SIZE. | |
7426 | * config/alpha/alpha.c (alpha_expand_block_move): Likewise. | |
7427 | ||
31448271 RE |
7428 | 2000-08-25 Richard Earnshaw <rearnsha@arm.com> |
7429 | ||
7430 | * arm.h (STRUCT_VALUE): Define to 0, not NULL. | |
7431 | ||
b949ea8b JW |
7432 | Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com) |
7433 | ||
7434 | * i386.c (ix86_find_base_term): New. | |
7435 | * i386-protos.h (ix86_find_base_term): Prototype. | |
7436 | * i386.h (FIND_BASE_TERM): Define. | |
7437 | * alias.c (find_base_term): Use it. | |
7438 | * tm.texi (FIND_BASE_TERM): Document it. | |
7439 | ||
7440 | * alias.c (true_dependence, write_dependence_p): Unchanging | |
7441 | memory can't conflict with non-unchanging memory. | |
7442 | ||
7443 | * alias.c (memrefs_conflict_p): A BLKmode reference | |
7444 | to a symbol (or CONST_INT address) always conflicts | |
7445 | with a reference to another symbol. | |
7446 | ||
343b7260 JM |
7447 | 2000-08-25 Joseph S. Myers <jsm28@cam.ac.uk> |
7448 | ||
7449 | * c-common.c (time_char_table): Don't allow width and flags with | |
7450 | "z" format. | |
7451 | ||
1f9124e4 JJ |
7452 | 2000-08-25 Jakub Jelinek <jakub@redhat.com> |
7453 | ||
7454 | * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same | |
7455 | way as LT and LTU when the second operand has 0 in low word. | |
7456 | ||
6057c0e6 MH |
7457 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
7458 | ||
135ebc36 MH |
7459 | * basic-block.h (struct loop): Rename `exits' field to |
7460 | `exit_edges'. Add `entry_edges' and `num_entries' fields. | |
7461 | ||
7462 | * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find. | |
7463 | (flow_loop_entry_edges_find): Add. | |
7464 | (flow_edge_list_print): Rename from flow_exits_print. | |
7465 | (flow_loops_find): Call flow_loop_entry_edges_find. | |
7466 | (flow_loop_dump): Dump entry_edges list. | |
7467 | (flow_loops_free): Free entry_edges. | |
0e5921e8 | 7468 | |
135ebc36 | 7469 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 7470 | |
6057c0e6 MH |
7471 | * loop.c (loop_dump_aux, debug_loop): New functions. |
7472 | (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros. | |
7473 | ||
7474 | * flow.c (flow_loops_dump): Add callback parameter. | |
7475 | (flow_loop_dump): Add callback parameter and call it. Move | |
7476 | loop note debugging code to loop_dump_aux. | |
7477 | ||
7478 | * basic-block.h (flow_loop_dump): Add callback parameter | |
7479 | (flow_loops_dump): Likewise. | |
7480 | ||
7481 | * toplev.c (rest_of_compilation): Add NULL callback function pointer | |
7482 | to call to flow_loops_dump. | |
0e5921e8 | 7483 | |
028fc6e7 MH |
7484 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
7485 | ||
7486 | * loop.c (count_loop_regs_set): Replace start and end arguments | |
7487 | with loop argument. All callers udated. | |
0e5921e8 | 7488 | |
371502a8 | 7489 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 7490 | |
371502a8 MH |
7491 | * loop.c (constant_high_bytes): Delete. |
7492 | ||
e375c819 MH |
7493 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
7494 | ||
7495 | * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT | |
7496 | and NOTE_INSN_LOOP_VTOP to... | |
7497 | (find_and_verify_loops) ...here. | |
7498 | ||
036cfb36 AO |
7499 | Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com> |
7500 | ||
7501 | * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default. | |
7502 | (fini_dummy, init_dummy): Use it. | |
7503 | ||
c2e20542 NB |
7504 | Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net> |
7505 | ||
7506 | * cpplex.c (is_macro_disabled): Caller has already checked | |
7507 | that we're not a preprocessed file. | |
7508 | ||
83bab8db MM |
7509 | 2000-08-24 Mark Mitchell <mark@codesourcery.com> |
7510 | ||
7511 | * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o. | |
7512 | (c-iterate.o): Remove target. | |
7513 | * gcc/c-common.h (enum rid): Remove RID_ITERATOR. | |
7514 | * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators. | |
7515 | (finish_decl): Don't handle iterators. | |
7516 | (grokdeclarator): Likewise. | |
7517 | * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords. | |
7518 | * gcc/c-gperf.h: Regenerated. | |
7519 | * gcc/c-iterate.c: Removed. | |
7520 | * gcc/c-lex.c (init_lex): Don't handle iterators. | |
7521 | * gcc/c-parse.in (primary): Remove pop_iterator_stack call. | |
7522 | (compstmt_primary_start): Remove push_iterator_stack call. | |
7523 | (stmt): Don't allow iterator statements. Replace iterator_expand | |
7524 | with expand_expr_stmt. | |
7525 | (all_iter_stmt): Remove. | |
7526 | (all_iter_stmt_simple): Likewise. | |
7527 | (all_iter_stmt_with_decl): Likewise. | |
7528 | * gcc/c-tree.h (ITERATOR_P): Remove. | |
7529 | (ITERATOR_BOUND_P): Likewise. | |
7530 | (init_iterators): Remove declaration. | |
7531 | (iterator_expand): Likewise. | |
7532 | (iterator_for_loop_start): Likewise. | |
7533 | (iterator_for_loop_end): Likewise. | |
7534 | (iterator_for_loop_record): Likewise. | |
7535 | (push_iterator_stack): Likewise. | |
7536 | (pop_iterator_stack): Likewise. | |
7537 | * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P. | |
7538 | (readonly_warning): Likewise. | |
7539 | * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it. | |
0e5921e8 | 7540 | |
aee3c6b0 JW |
7541 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
7542 | ||
7543 | * c-common.c (decl_attributes, case A_ALIGN): Revert last change. | |
7544 | Copy type in a TYPE_DECL, just like pushdecl does. | |
7545 | ||
58d8c980 RH |
7546 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
7547 | ||
7548 | * toplev.c (main): Enable flag_reorder_blocks at -O2. | |
7549 | ||
054f5e69 ZW |
7550 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> |
7551 | ||
0e5921e8 | 7552 | * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're |
054f5e69 ZW |
7553 | asked for one page, allocate GGC_QUIRE_SIZE of them and put |
7554 | the extras on the free list. | |
7555 | (release_pages): Clean up. | |
7556 | (ggc_set_mark): Don't adjust G.allocated here... | |
7557 | (sweep_pages): ... do it here. | |
7558 | ||
7559 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> | |
7560 | ||
7561 | * cppfiles.c (read_include_file): Rearrange initializations. | |
7562 | ||
0551c32d RH |
7563 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
7564 | ||
7565 | * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X. | |
7566 | ||
7567 | * config/ia64/ia64-protos.h: Update. | |
7568 | * config/ia64/ia64.c (gr_register_operand): New. | |
7569 | (fr_register_operand, grfr_register_operand): New. | |
7570 | (gr_nonimmediate_operand, grfr_nonimmediate_operand): New. | |
7571 | (grfr_reg_or_8bit_operand): New. | |
0e5921e8 | 7572 | (gr_reg_or_0_operand): Rename from reg_or_0_operand and |
0551c32d RH |
7573 | use gr_register_operand. |
7574 | (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise. | |
7575 | (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise. | |
7576 | (gr_reg_or_8bit_and_adjusted_operand): Likewise. | |
7577 | (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise. | |
7578 | (fr_reg_or_fp01_operand): Likewise. | |
7579 | (not_postinc_memory_operand): New. | |
7580 | (ia64_split_timode): Remove unused variables. | |
7581 | (rtx_needs_barrier): Check arguments to cmpxchg. | |
7582 | (builtin_description): Remove. | |
7583 | (bdesc_2argsi, bdesc_2argdi): Remove. | |
7584 | (ia64_init_builtins): Declare all builtins directly. | |
7585 | (ia64_expand_fetch_and_op): Rewrite to be called from | |
7586 | ia64_expand_builtin directly. Use expand_binop and co. | |
7587 | (ia64_expand_op_and_fetch): Likewise. | |
7588 | (ia64_expand_compare_and_swap): Likewise. | |
7589 | (ia64_expand_binop_builtin): Remove. | |
7590 | (ia64_expand_lock_test_and_set): New. | |
7591 | (ia64_expand_lock_release): New. | |
7592 | (ia64_expand_builtin): Use them. | |
7593 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New. | |
7594 | (EXTRA_CONSTRAINT): Use it. | |
7595 | (PREDICATE_CODES): Update. | |
7596 | * config/ia64/ia64.md (*): Use gr_register_operand and co. | |
7597 | (mf): Indicate that we set memory as well as use it. | |
7598 | (fetchadd_acq_si): Show memory being modified as well. | |
0e5921e8 | 7599 | (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise. |
0551c32d RH |
7600 | (val_compare_and_swap_si, val_compare_and_swap_di): Remove. |
7601 | (lock_test_and_set_si, lock_test_and_set_di): Remove. | |
7602 | (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove. | |
7603 | (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove. | |
7604 | (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove. | |
7605 | (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove. | |
7606 | (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove. | |
7607 | (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove. | |
7608 | (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove. | |
7609 | (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove. | |
7610 | * config/ia64/ia64intrin.h (*): Cast result to the appropriate | |
7611 | return type. Pretty print definitions. | |
7612 | ||
7c866fb5 JW |
7613 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
7614 | ||
7615 | * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if | |
7616 | we have a SYMBOL_REF with SYMBOL_REF_FLAG set. | |
7617 | ||
40e8cc95 JM |
7618 | 2000-08-24 Jason Merrill <jason@redhat.com> |
7619 | ||
7620 | * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, | |
7621 | AT_loc, AT_addr, AT_lbl): Abort on unsuitable input. | |
0e5921e8 | 7622 | (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag, |
40e8cc95 JM |
7623 | get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails. |
7624 | ||
b6a1cbae GM |
7625 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7626 | ||
7627 | * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab, | |
7628 | and extendtab within their proper array boundaries. | |
7629 | * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds | |
7630 | for the entire array. | |
7631 | ||
7632 | * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE. | |
7633 | * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise. | |
7634 | * config/avr/avr.c (order_regs_for_local_alloc): Likewise. | |
7635 | * config/fr30/fr30.c (fr30_print_operand): Likewise. | |
7636 | * config/i386/dgux.c (output_options): Likewise. | |
7637 | * config/i386/dgux.h (ASM_FILE_START): Likewise. | |
7638 | * config/m88k/m88k.c (output_options): Likewise. | |
7639 | * config/m88k/m88k.h (ASM_FILE_START): Likewise. | |
7640 | * config/mcore/mcore.c (mcore_output_inline_const_forced, | |
7641 | layout_mcore_frame, handle_structs_in_regs): Likewise. | |
7642 | * config/mips/mips.c (output_block_move): Likewise. | |
7643 | * config/rs6000/rs6000.c (rs6000_override_options, | |
7644 | rs6000_file_start): Likewise. | |
7645 | * config/sparc/sparc.c (sparc_add_gc_roots): Likewise. | |
7646 | * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise. | |
7647 | * fixinc/fixtests.c (TEST_TABLE_CT): Likewise. | |
7648 | * builtins.c (expand_builtin_setjmp): Likewise. | |
7649 | * expr.c (safe_from_p): Likewise. | |
7650 | * flow.c (life_analysis): Likewise. | |
7651 | * fold-const.c (size_int_type_wide): Likewise. | |
7652 | * gcc.c (translate_options, init_spec, set_spec, main): Likewise. | |
7653 | * genattrtab.c (make_length_attrs): Likewise. | |
7654 | * genopinit.c (gen_insn): Likewise. | |
7655 | * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise. | |
7656 | * global.c (global_alloc): Likewise. | |
7657 | * local-alloc.c (find_free_reg): Likewise. | |
7658 | * mips-tdump.c (print_symbol): Likewise. | |
7659 | * mips-tfile.c (parse_def, parse_input): Likewise. | |
7660 | * reload1.c (NUM_ELIMINABLE_REGS): Likewise. | |
7661 | * stmt.c (expand_nl_goto_receiver): Likewise. | |
7662 | * stor-layout.c (set_sizetype): Likewise. | |
7663 | * varasm.c (decode_reg_name): Likewise. | |
7664 | * toplev.c (decode_f_option, decode_W_option, | |
7665 | set_target_switch, print_switch_values): Likewise. | |
7666 | (NUM_ELEM): Remove macro. | |
7667 | (display_help, main): s/NUM_ELEM/ARRAY_SIZE/ | |
7668 | ||
5b47282c GM |
7669 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7670 | ||
7671 | * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'. | |
7672 | (MAIN_NAME_P, main_identifier_node): New macros. | |
7673 | * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node. | |
7674 | * c-decl.c (start_decl, grokdeclarator, start_function, | |
7675 | store_parm_decls, finish_function): Use MAIN_NAME_P. | |
7676 | * config/avr/avr.c (function_prologue, function_epilogue): Likewise. | |
7677 | * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise. | |
7678 | * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise. | |
7679 | * config/pdp11/pdp11.c (output_function_prologue): Likewise. | |
7680 | ||
87ae0c74 GM |
7681 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7682 | ||
7683 | * cppfiles.c (actual_directory): Don't write beyond `dir' | |
7684 | when it contains "". | |
7685 | * real.c (asctoeg): Stay within bounds of etens[][]. | |
7686 | ||
b148aeaa KG |
7687 | 2000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7688 | ||
7689 | * dependence.c (dependence_string, direction_string, | |
7690 | dump_one_node, dump_node_dependence): Hide unused identifiers. | |
7691 | (get_low_bound, normalize_coefficients): Match definition to | |
7692 | static prototype. | |
7693 | (get_one_coefficient): Initialize variables `value0_is_idx' and | |
7694 | `value1_is_idx'. | |
7695 | (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED. | |
7696 | (ziv_test): Delete variable `idx', use parameter `sub' instead. | |
7697 | (direction_merge): Avoid automatic aggregate initialization. | |
7698 | (have_dependence_p): Use `src' not `dest' to set `src_idx'. | |
7699 | Initialize variables `dest_idx' and `src_idx'. | |
7700 | (end_dependence_analysis): Avoid C89 style function definition. | |
7701 | ||
4894ecce JM |
7702 | 2000-08-24 Joseph S. Myers <jsm28@cam.ac.uk> |
7703 | ||
7704 | * c-common.c (time_char_table): Don't allow width with %F. | |
7705 | (check_format_info): Don't allow "Z" length with scanf. | |
7706 | ||
2ab99c46 GDR |
7707 | 2000-08-24 Gabriel Dos Reis <gdr@codesourcery.com> |
7708 | ||
7709 | * diagnostic.c (finish_diagnostic): Define. | |
7710 | (output_do_printf): Use wrap_text instead of output_add_string. | |
7711 | (default_print_error_function): Avoid embedded '\n'. | |
7712 | ||
7713 | * diagnostic.h (flush_diagnostic_buffer): Declare. | |
7714 | ||
335e59bd AO |
7715 | 2000-08-23 Alexandre Oliva <aoliva@redhat.com> |
7716 | ||
7717 | * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'. | |
7718 | ||
d9fe00bb HPN |
7719 | 2000-08-23 Hans-Peter Nilsson <hp@axis.com> |
7720 | ||
7721 | * Makefile.in (GCC_PASSES): Add specs. | |
7722 | ||
b97644fc JW |
7723 | 2000-08-23 Jim Wilson <wilson@cygnus.com> |
7724 | ||
7725 | * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New. | |
7726 | * config/ia64/frame-ia64.c (__get_personality): Return zero if neither | |
7727 | EHANDLER nor UHANDLER bit is set. | |
7728 | (__get_except_table): Likewise. | |
7729 | ||
64a7723d NC |
7730 | 2000-08-23 Nick Clifton <nickc@redhat.com> |
7731 | ||
02689e18 NC |
7732 | * config/arm/lib1funcs.asm: Replace upper case condition codes |
7733 | with lower case versions. | |
7734 | ||
64a7723d NC |
7735 | * config/arm/arm.h (STRUCT_VALUE): Define. |
7736 | (STRUCT_VALUE_REGNUM): Delete. | |
7737 | ||
bbdac7d0 ZW |
7738 | 2000-08-23 Zack Weinberg <zack@wolery.cumb.org> |
7739 | ||
7740 | * cpphash.h (IN_I): New flag for directive table. | |
7741 | * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and | |
7742 | #pragma with IN_I. | |
7743 | (_cpp_check_directive): If -fpreprocessed, execute directives | |
7744 | marked with IN_I. Issue no warnings in this case. | |
7745 | * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed. | |
7746 | ||
d8eceea4 JM |
7747 | 2000-08-23 Joseph S. Myers <jsm28@cam.ac.uk> |
7748 | ||
7749 | * c-common.c (print_char_table): Allow 'I' flag with %d, %i and | |
7750 | %u. | |
7751 | (check_format_info): Support printf 'I' flag; warn about it with | |
7752 | -pedantic. | |
7753 | ||
e04c2d6c RE |
7754 | 2000-08-23 Richard Earnshaw (rearnsha@arm.com) |
7755 | ||
7756 | * arm.c (arm_expand_prologue): Ensure that the stack-adjustment | |
7757 | barrier can't be ignored by the alias analysis code. | |
7758 | ||
f4306baa EZ |
7759 | 2000-08-12 Eli Zaretskii <eliz@is.elta.co.il> |
7760 | ||
7761 | * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it | |
7762 | works inside fixincl. | |
7763 | ||
95d0e5f1 AO |
7764 | Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com> |
7765 | ||
7766 | * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to | |
7767 | simplify_relational_operation() unless both operands are of | |
7768 | VOIDmode. | |
7769 | * cse.c (fold_rtx): Likewise. | |
7770 | ||
55efb413 JW |
7771 | Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com) |
7772 | ||
7773 | * rtlanal.c (rtx_unstable_p): The pic register is stable | |
7774 | (within one function) and the actual rtx should be used | |
7775 | when checking the registers. | |
7776 | (rtx_addr_can_trap_p): Pic memory addresses can't trap. | |
7777 | ||
7778 | * alias.c (true_dependence, write_dependence_p): Fix | |
7779 | bug in previous patch. | |
7780 | ||
7781 | * i386.c (ix86_GOT_alias_set): New. | |
7782 | (legitimize_pic_address): Use it. | |
7783 | ||
7784 | * rtlanal.c (rtx_unstable_p): An unchanging MEM is | |
7785 | only stable if its address is stable. | |
7786 | (rtx_varies_p): An unchanging MEM can't vary if | |
7787 | its address doesn't vary. | |
7788 | ||
aac625ac KG |
7789 | 2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7790 | ||
7791 | * c-parse.in (unop +): Restrict -Wtraditional warnings to user code. | |
7792 | ||
62432849 DA |
7793 | 2000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
7794 | ||
7795 | * vax.h (ASM_SPEC): Pass `-J' to assembler. | |
7796 | * x-vax-gcc: New file for bootstrapping with gcc. | |
dd745546 | 7797 | * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'. |
62432849 DA |
7798 | * configure.in: Use x-vax-gcc with gcc. |
7799 | * configure: Rebuilt. | |
7800 | ||
1eb994b7 R |
7801 | Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
7802 | ||
7803 | * toplev.c (rest_of_compilation): Rebuild label notes after | |
7804 | post-reload splitting pass if new labels have been created. | |
7805 | ||
f6a542de GDR |
7806 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
7807 | ||
7808 | * diagnostic.h (output_buffer_state): New macro. | |
7809 | * diagnostic.c (diagnostic_for_decl, sorry, | |
7810 | default_print_error_function, output_do_verbatim, | |
7811 | report_diagnostic, report_problematic_module): Use it. | |
7812 | (wrap_text): Tweak. | |
7813 | (output_format): Use wrap_text instead of maybe_wrap_text. | |
7814 | ||
888e552f NC |
7815 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
7816 | ||
7817 | * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro. | |
7818 | Common code for ARM divide and modulus functions. | |
7819 | (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of | |
7820 | ARM_DIV_MOD_BODY. | |
7821 | (FUNC_END): New macro: Common code at the end of the division and | |
7822 | modulo functions. | |
7823 | (THUMB_FUNCTION_START): New macro: Common code at the start of | |
7824 | Thumb functions. | |
7825 | (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros. | |
0e5921e8 | 7826 | |
89e43e33 KK |
7827 | Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
7828 | ||
7829 | * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing. | |
7830 | ||
7831 | * config/sh/sh.c (prepare_scc_operands): Apply force_reg to | |
7832 | sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't | |
7833 | const0_rtx. | |
7834 | ||
7405dc37 NC |
7835 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
7836 | ||
7837 | * config/arm/lib1funcs.asm (__umodsi3): Before performing any | |
7838 | restorative additions, test for bottom bits of IP being set, | |
7839 | rather than relying upon the RORs not matching. | |
7840 | (__modsi3): Ditto. | |
7841 | ||
9861b0c9 DE |
7842 | 2000-08-22 David Edelsohn <edelsohn@gnu.org> |
7843 | ||
7844 | * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or | |
60a3c181 | 7845 | text_section() as appropriate instead of emitting text csect |
9861b0c9 DE |
7846 | pseudo-op directly. |
7847 | (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment. | |
7848 | (UNIQUE_SECTION): Define macro. | |
7849 | (ASM_OUTPUT_SECTION_NAME): Define macro. | |
7850 | * rs6000.c (rs6000_override_options): Disable -ffunction-sections | |
60a3c181 | 7851 | on AIX if debugging and -fdata-sections always. |
9861b0c9 DE |
7852 | |
7853 | 2000-08-22 Steven King <sxking@uswest.net> | |
df3a88f0 SK |
7854 | |
7855 | * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double | |
7856 | machinery. | |
7857 | (LDBL_MAX): Same here. | |
7858 | ||
b578dbd7 RH |
7859 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
7860 | ||
7861 | * flow.c (tidy_fallthru_edge): Update b->end properly. | |
7862 | ||
d061bc1e SC |
7863 | 2000-08-22 Stan Cox <scox@redhat.com> |
7864 | ||
60a3c181 RH |
7865 | * Makefile.in (OBJS): Add dependence.o. |
7866 | * dependence.c: New file. | |
0e5921e8 | 7867 | |
23d16877 | 7868 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca> |
3cadd778 | 7869 | |
d60eab50 AO |
7870 | * calls.c (check_sibcall_argument_overlap_1): Adjust for |
7871 | ARGS_GROW_DOWNWARD. | |
7872 | (check_sibcall_argument_overlap): Likewise. | |
7873 | ||
23d16877 AO |
7874 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com> |
7875 | ||
3cadd778 AO |
7876 | * invoke.texi (SH Options): Document -m4-nofpu, |
7877 | -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd, | |
7878 | -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace. | |
7879 | ||
23e4d028 JM |
7880 | 2000-08-22 Joseph S. Myers <jsm28@cam.ac.uk> |
7881 | ||
7882 | * c-common.c (check_format_info): Give the 'some locales' warning | |
7883 | for strftime %Ey rather than the unconditional 'only last 2 digits | |
7884 | of year' one. | |
7885 | ||
bc82c87c RH |
7886 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
7887 | ||
7888 | * alias.c (init_alias_analysis): Do not register | |
7889 | struct_value_incoming_rtx or static_chain_rtx as pointing | |
7890 | to stack memory. | |
7891 | ||
7db9125f JL |
7892 | Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com) |
7893 | ||
7894 | * protoize.c (munge_compile_params): Fix typo and formatting buglets. | |
7895 | ||
b413d64d GDR |
7896 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
7897 | ||
7898 | * diagnostic.h (report_problematic_module): Declare. | |
7899 | * diagnostic.c (report_problematic_module): New function. | |
7900 | (report_error_function): Tweak. | |
7901 | ||
c4a6c0f3 RK |
7902 | Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7903 | ||
7904 | * stmt.c (expand_goto_internal, fixup_gotos): Only check | |
7905 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
7906 | ||
770a7feb RH |
7907 | 2000-08-21 Richard Henderson <rth@cygnus.com> |
7908 | ||
7909 | * flow.c (calculate_global_regs_live): Mark frame pointer live | |
7910 | everywhere before reload. | |
7911 | ||
280db205 JW |
7912 | 2000-08-21 Jim Wilson <wilson@cygnus.com> |
7913 | ||
7914 | * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle | |
7915 | INTEL_EXTENDED_IEEE_FORMAT. | |
7916 | (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally | |
7917 | clear last two bytes of output FP value. | |
7918 | ||
94c21c17 GS |
7919 | 2000-08-21 Graham Stott <grahams@cygnus.co.uk> |
7920 | ||
7921 | * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL. | |
7922 | ||
6315f068 JJ |
7923 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
7924 | ||
7925 | * unroll.c (loop_find_equiv_value): If ret is modified between | |
7926 | insn and loop_start, ret might not be equivalent to reg. | |
7927 | ||
5804a754 JM |
7928 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
7929 | ||
7930 | * c-common.c (init_dollar_format_checking, | |
7931 | maybe_read_dollar_number, finish_dollar_format_checking): New | |
7932 | functions. | |
7933 | (dollar_arguments_used, dollar_arguments_count, | |
7934 | dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned): | |
7935 | New variables. | |
7936 | (check_format_info): Support $ formats for scanf and printf width | |
7937 | and precision. Always increment format_chars to advance past the | |
7938 | '*' of precision, not just when the format parameters are | |
7939 | available to check. | |
7940 | ||
95adab8e KG |
7941 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7942 | ||
7943 | * mips.c (block_move_loop, expand_block_move, | |
7944 | function_arg_partial_nregs, save_restore_insns, function_prologue, | |
7945 | mips_expand_prologue, RA_MASK): Avoid using the `U' integer | |
7946 | constant suffix. | |
7947 | (function_arg_advance, function_arg): Match argument to format | |
7948 | specifier `%p'. | |
7949 | ||
49009afd JL |
7950 | 2000-08-21 Nix <nix@esperi.demon.co.uk> |
7951 | ||
7952 | * gcc.c (do_spec_1): Implement %j spec flag. | |
7953 | Remove dead comment. | |
7954 | ||
7955 | * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET. | |
60a3c181 RH |
7956 | * system.h (HOST_BIT_BUCKET): Default to "/dev/null". |
7957 | * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL". | |
7958 | * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise. | |
49009afd | 7959 | |
60a3c181 | 7960 | * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if |
49009afd JL |
7961 | writable) instead of hardcoded value. |
7962 | ||
7963 | * toplev.c (compile_file): Output to a file even if -fsyntax-only. | |
7964 | ||
60a3c181 RH |
7965 | * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill |
7966 | MKTEMP_EACH_FILE. | |
49009afd | 7967 | |
60a3c181 | 7968 | * gcc.c (cc1_options): Do not process -o or run the assembler if |
49009afd | 7969 | -fsyntax-only. |
05a3d06e | 7970 | * objc/lang-spec.h: Likewise. |
49009afd JL |
7971 | |
7972 | 2000-08-21 Eli Zaretskii <eliz@is.elta.co.il> | |
dc13bad7 EZ |
7973 | |
7974 | * fixinc/fixincl.c (fix_with_system): Pipe the output of | |
7975 | "external" fixes through `cat', to avoid truncating the input | |
7976 | file by redirection. | |
7977 | ||
cb694d2c JJ |
7978 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
7979 | ||
7980 | * config/i386/i386.md (lea_general_1): Copy insn condition to split | |
7981 | condition. | |
7982 | (lea_general_2, lea_general_3): Likewise. | |
7983 | ||
cde6e684 KG |
7984 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7985 | ||
7986 | * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional | |
7987 | warnings to user code. | |
7988 | ||
7989 | * c-lex.c (readescape, yylex): Likewise. | |
7990 | ||
7991 | * c-typeck.c (store_init_value, process_init_element): Likewise | |
7992 | (c_expand_start_case): Format. | |
7993 | ||
120dc6cd MR |
7994 | 2000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
7995 | ||
7996 | * mips/linux.h (LINK_SPEC): Use %(endian_spec). | |
7997 | ||
7998 | * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC | |
0e5921e8 | 7999 | and linker_endian_spec to endian_spec. |
120dc6cd MR |
8000 | (ENDIAN_SPEC): Add %{EB} and %{EL}. |
8001 | (LINK_SPEC): Remove %{EB} and %{EL}. | |
0e5921e8 | 8002 | (ASM_SPEC): Likewise. Use %(endian_spec). |
120dc6cd | 8003 | |
93e2382f JM |
8004 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
8005 | ||
8006 | * c-tree.h (flag_hosted): Move declaration from here... | |
8007 | * c-common.h (flag_hosted): ... to here. | |
8008 | (flag_noniso_default_format_attributes): New declaration. | |
8009 | * c-decl.c (flag_noniso_default_format_attributes): New variable. | |
8010 | (c_decode_option): Set it appropriately for options choosing | |
8011 | language standard variant. | |
8012 | * c-common.c (init_function_format_info): Only provide default | |
8013 | format attributes if flag_hosted. Only provide the gettext | |
8014 | formats if flag_noniso_default_format_attributes. Update | |
8015 | comments. | |
8016 | (check_format_info): Disable treatment of %a as a scanf flag in | |
8017 | C99 mode. | |
8018 | ||
f3d360aa JM |
8019 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
8020 | ||
8021 | * c-common.c (scan_char_table): Add 'w' to flags for all formats | |
8022 | except 'n'. | |
8023 | (check_format_info): Set 'wide' for scanf format widths. Warn for | |
8024 | a zero scanf width. Make the check for writing into a constant | |
8025 | object at the first level of indirection; at later levels, warn if | |
8026 | any type qualifiers are encountered. | |
8027 | ||
e04ca094 JL |
8028 | Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com) |
8029 | ||
e6ea3b5f JL |
8030 | * reload.c (reload_inner_reg_of_subreg): New function broken out of |
8031 | push_reload. | |
8032 | (push_reload): Use reload_inner_reg_of_subreg. | |
8033 | (combine_reloads): Do not combine reloads if the input reload | |
8034 | is a SUBREG in which the inner part will need reloading. | |
8035 | ||
e04ca094 JL |
8036 | * global.c (global_alloc): Avoid passing dumpfile argument to |
8037 | reload routines. | |
8038 | * toplev.c (rest_of_compilation): Likewise. | |
8039 | * reload.h (reload): Remove dumpfile argument. Callers changed. | |
8040 | (debug_reload, debug_reload_to_stream): Move prototypes here. | |
8041 | * rtl.h (reload): Remove dumpfile argument. | |
8042 | * reload.c (debug_reload): Remove prototype. | |
8043 | (debug_reload_to_stream): Likewise. | |
8044 | * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file | |
8045 | instead. | |
8046 | ||
24805e80 GDR |
8047 | 2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com> |
8048 | ||
8049 | * diagnostic.c (context_as_prefix): Export. | |
8050 | (need_error_newline): Remove. | |
8051 | (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects. | |
8052 | (error_module_changed, record_last_error_module, | |
8053 | error_function_changed, record_last_error_function): New functions. | |
8054 | (initialize_diagnostics): Default intialize | |
8055 | lang_diagnostic_starter, lang_diagnostic_finalizer. | |
8056 | (init_output_buffer): Tweak. | |
8057 | (file_name_as_prefix): New function. | |
8058 | (announce_function, default_print_error_function, | |
8059 | report_error_function, set_diagnostic_context): Tweak. | |
8060 | ||
056b6841 RE |
8061 | 2000-08-21 Richard Earnshaw <rearnsha@arm.com> |
8062 | ||
8063 | * flow.c (init_propagate_block_info): Handle SUBREG in a jump | |
8064 | condition expression. | |
8065 | ||
7171b491 RH |
8066 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
8067 | ||
8068 | * flow.c (merge_blocks_nomove): Don't seek back past the bb note. | |
8069 | ||
3cb553b4 ZW |
8070 | 2000-08-20 Zack Weinberg <zack@wolery.cumb.org> |
8071 | ||
8072 | * cppinit.c (cpp_init): Set global flag when called. | |
8073 | (cpp_reader_init): Bomb out if cpp_init hasn't been called. | |
8074 | ||
9861b0c9 | 8075 | Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su> |
3cb553b4 | 8076 | |
60a3c181 RH |
8077 | * cpplex.c (cpp_scan_buffer): Move `output_line_command' just |
8078 | before `process_directive' so that newlines won't be missed | |
8079 | for directives. | |
8080 | (cpp_printf): Increment `print->lineno' when newline is emitted. | |
3cb553b4 | 8081 | |
60a3c181 RH |
8082 | * cppmain.c (cb_ident): Likewise. |
8083 | (cb_define): Likewise. | |
8084 | (cb_undef): Likewise. | |
8085 | (cb_include): Likewise. | |
8086 | (cb_def_pragma): Likewise. | |
8087 | (dump_macros_helper): Likewise. | |
3cb553b4 | 8088 | |
9c668921 RH |
8089 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
8090 | ||
8091 | * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc | |
8092 | assigned before a loop. | |
8093 | ||
8094 | * config/ia64/ia64.md (ashlsi3): Zero extend the shift count. | |
8095 | (ashrsi3, lshrsi3): Likewise. | |
8096 | ||
4e1e6a01 GDR |
8097 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
8098 | ||
8099 | * c-lang.c: #include diagnostic.h | |
8100 | (c_tree_printer): New function. | |
8101 | (lang_init): Initialize lang_printer. | |
8102 | ||
8103 | * Makefile.in (c-lang.o): Depends on diagnostic.h | |
8104 | ||
e2840263 GDR |
8105 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
8106 | ||
8107 | * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. | |
8108 | ||
8109 | * diagnostic.c (default_diagnostic_starter, | |
8110 | default_diagnostic_finalizer): New functions. | |
8111 | (diagnostic_for_asm, diagnostic_for_decl): Tweak. | |
8112 | (pedwarn, pedwarn_with_file_and_line, error, | |
8113 | error_with_file_and_line, fatal, warning, | |
8114 | warning_with_file_and_line): Adjust call to report_diagnostic. | |
8115 | (report_diagnostic): Rework. | |
8116 | (set_diagnostic_context): New function. | |
8117 | ||
8118 | * diagnostic.h (struct diagnostic_context): New data structure. | |
8119 | (diagnostic_message, diagnostic_argument_list, | |
8120 | diagnostic_file_location, diagnostic_line_location, | |
8121 | diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer, | |
8122 | diagnostic_finalizer, diagnostic_auxiliary_data): New macros. | |
8123 | (set_diagnostic_context): Declare. | |
8124 | (report_diagnostic): Change prototype. | |
8125 | ||
574f7425 NB |
8126 | Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net> |
8127 | ||
8128 | * fix-header.c (main): Initialize cpplib. | |
8129 | ||
f1e42c81 MM |
8130 | 2000-08-19 Michael Meissner <meissner@redhat.com> |
8131 | ||
34c9e848 MM |
8132 | * ifcvt.c (find_if_block): Do not assume that a THEN block has any |
8133 | instructions in it before checking for indirect jumps. | |
8134 | ||
f1e42c81 MM |
8135 | * ifcvt.c (find_if_block): Do not consider a THEN block that ends |
8136 | in a indirect jump as a potential for conditional execution. | |
8137 | ||
8138 | * d30v.h (d30v_init_expanders): Don't declare here. | |
8139 | * d30v-protos.h (d30v_init_expanders): Declare here with a valid | |
8140 | prototype. | |
8141 | ||
9d6c2770 NB |
8142 | Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net> |
8143 | ||
8144 | * cpp.texi: Add @section for assertions. | |
8145 | ||
e76d9acb JW |
8146 | Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com) |
8147 | ||
8148 | * loop.c (scan_loop): Use CONST_CALL_P instead of | |
8149 | checking for REG_LIBCALL / REG_RETVAL. | |
8150 | ||
f49957d6 JL |
8151 | Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com) |
8152 | ||
850aac53 JL |
8153 | * reload1.c (reload_as_needed): Accept dumpfile argument, |
8154 | pass it to emit_reload_insns. | |
8155 | (emit_reload_insns): Add new dumpfile argument. If non-null | |
8156 | then dump the reloads for each insn into the dumpfile. | |
8157 | (reload): Pass dumpfile to reload_as_needed. | |
8158 | ||
f49957d6 JL |
8159 | * invoke.texi: Clean up linux-gnu vs linux comments. |
8160 | ||
041f25e6 RH |
8161 | 2000-08-19 Richard Henderson <rth@cygnus.com> |
8162 | ||
8163 | * config/ia64/ia64.c (reg_or_5bit_operand): New. | |
8164 | (ia64_depz_field_mask): New. | |
8165 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New. | |
8166 | (PREDICATE_CODES): Update. | |
8167 | * config/ia64/ia64.md: Update commentary. | |
8168 | (depz_internal): New. | |
8169 | (ashlsi3): Implement directly. | |
8170 | (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants. | |
8171 | (ashldi3): Use shladd. | |
8172 | * config/ia64/ia64-protos.h: Update. | |
8173 | ||
319ea138 ZW |
8174 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
8175 | ||
8176 | * toplev.c (independent_decode_option): Always process -g. | |
8177 | Remove third argument, now unused. Adjust caller to match. | |
8178 | ||
8231ad94 RH |
8179 | 2000-08-18 Richard Henderson <rth@cygnus.com> |
8180 | ||
8181 | * combine.c (make_compound_operation): Break after creating | |
8182 | the extraction. | |
8183 | ||
6e19bb38 ZW |
8184 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
8185 | ||
8186 | * cpplib.c (cpp_register_pragma_space): Just return if the | |
8187 | namespace is already registered. | |
8188 | ||
477d303f RE |
8189 | 2000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com> |
8190 | ||
8191 | * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a | |
8192 | constant amount. Do not generate ROTL instruction. | |
8193 | ||
ffe51c8a AO |
8194 | Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com> |
8195 | ||
8196 | * config/sh/elf.h: Do not include sh/sh.h. | |
8197 | * config/sh/rtems.h: Likewise. | |
8198 | * config/sh/rtemself.h: Do not include sh/elf.h. | |
8199 | * configure.in: Get them included with `tm_file's. | |
8200 | * configure: Rebuilt. | |
8201 | ||
8845e874 AO |
8202 | * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify. |
8203 | * config/sh/sh.c (fpscr_set_from_mem): Use them. | |
8204 | ||
3f546a53 RK |
8205 | Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8206 | ||
7d2950e5 RK |
8207 | * stor-layout.c (compute_record_type): Don't use mode of single |
8208 | field as mode of record if not integer mode of same type. | |
8209 | ||
a1c1fdd0 RK |
8210 | * regmove.c (perhaps_ends_bb_p): New function. |
8211 | (optimize_reg_copy_1, optimize_reg_copy_2): Call it. | |
8212 | (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise. | |
8213 | (fixup_match_1): Likewise. | |
8214 | (fixup_match_1, combine_stack_adjustments_for_block): Add casts to | |
8215 | avoid signed/unsigned warnings. | |
0e5921e8 | 8216 | |
3f546a53 RK |
8217 | * function.c (fixup_var_refs_1, case MEM): Update CODE after |
8218 | updating X. | |
8219 | ||
61d0346d NB |
8220 | Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net> |
8221 | ||
8222 | * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS. | |
8223 | (_cpp_trigraph_map): Declaration moved from cpplex.c | |
8224 | ||
8225 | * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1 | |
8226 | instead of 256. Use consistent test for designated initializers. | |
8227 | (cpp_init): Initialize trigraph_map. | |
8228 | (initialize_standard_includes, parse_option): Use memcmp | |
8229 | instead of strncmp. | |
8230 | ||
8231 | * cpplex.c (init_trigraph_map): Remove. | |
8232 | (trigraph_ok, trigraph_replace, lex_line): Refer to | |
8233 | _cpp_trigraph_map. | |
8234 | ||
8235 | * cpplib.c (str_match, WARNING, ERROR, ICE): Delete. | |
8236 | (do_unassert): Remove unused "next" local. | |
8237 | ||
8238 | * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype. | |
8239 | ||
ef42b1dd EM |
8240 | 2000-08-18 Emmanuel Marty <emarty@suntech.fr> |
8241 | ||
8242 | * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return | |
8243 | insn. | |
8244 | ||
bc08aefe RH |
8245 | 2000-08-17 Richard Henderson <rth@cygnus.com> |
8246 | ||
8247 | * config/ia64/ia64.c (spill_restore_mem): Handle emitting | |
8248 | the first insn in a sequence. | |
8249 | ||
49982682 JW |
8250 | Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com) |
8251 | ||
8252 | * alias.c (true_dependence, write_dependence_p): A read | |
8253 | involving a label_ref or the constant pool doesn't create | |
8254 | a dependency. | |
8255 | ||
8256 | * rtl.h (unchanging): Improve documentation. | |
8257 | ||
889e5964 RB |
8258 | 2000-08-17 Rodney Brown <RodneyBrown@mynd.com> |
8259 | ||
8260 | * cse.c (insert_regs): Remove unused `regno'. | |
8261 | ||
dd69c71b NB |
8262 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
8263 | ||
8264 | * (cppinit.c) merge_include_chains: Use remove_dup_dir, | |
8265 | remove_dup_dirs. If qtail == brack, remove brack not | |
8266 | qtail. | |
8267 | (remove_dup_dir, remove_dup_dirs): New functions. | |
8268 | ||
709e9e50 NB |
8269 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
8270 | ||
8271 | * cppinit.c (cpp_cleanup): Free include dir chains. | |
8272 | * cpplib.c (do_undef): Let _cpp_free_definition make the node void. | |
8273 | (do_unassert): Free the assert with _cpp_free_definition. | |
8274 | * cppmacro.c (_cpp_free_definition): Free memory allocated for | |
8275 | assertions. Make the node a T_VOID node. | |
8276 | ||
e33f6253 NB |
8277 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
8278 | ||
8279 | * cppinit.c (path_include, append_include_chain): | |
8280 | Remove 2nd parameter (struct cpp_pending *). | |
8281 | (path_include, initialize_standard_includes, cpp_handle_option): | |
8282 | Update callers appropriately. | |
8283 | (cpp_handle_option): Use pend. | |
8284 | ||
c154ba66 NB |
8285 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
8286 | ||
8287 | * cppinit.c (sort_options): Remove, put functionality in | |
8288 | cpp_init. | |
8289 | (cpp_init): New. | |
8290 | (initialize_builtins): Free memory. | |
8291 | (cpp_start_read): Move init_IStable to cpp_init. | |
8292 | ||
8293 | * cpplib.h (cpp_init): New prototype. | |
8294 | * cppmain.c (main): Call cpp_init. | |
8295 | ||
9c82ac6b JW |
8296 | Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com) |
8297 | ||
8298 | * rtlanal.c (rtx_unstable_p): Use CONSTANT_P. | |
8299 | (rtx_unstable_p, rtx_varies_p): Process vectors. | |
8300 | ||
acd50a92 NY |
8301 | 2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> |
8302 | ||
8303 | * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all | |
8304 | references to GLOBAL symbols. Use LOCAL where appropriate. | |
8305 | ||
cfedbb1f KG |
8306 | 2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
8307 | ||
8308 | * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always | |
8309 | use t-aix41 when host == target. | |
8310 | ||
31989264 RH |
8311 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
8312 | ||
8313 | * reload.c (push_secondary_reload): Revert last change. | |
8314 | If we use a reload_in/out pattern, make the when the same | |
8315 | as the primary reload. | |
8316 | (find_reloads): Likewise. | |
8317 | ||
d84c5634 MH |
8318 | 2000-08-16 Manfred Hollstein <manfredh@redhat.com> |
8319 | ||
8320 | * configure.in (libstdcxx-v3): Fix test. | |
8321 | * configure: Regenerate. | |
8322 | ||
43db0363 RK |
8323 | Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8324 | ||
8325 | * calls.c (calls_function_1, expand_call): Only test | |
8326 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
8327 | * function.c (thread_prologue_and_epilogue_insns): Likewise. | |
8328 | ||
853d8828 RH |
8329 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
8330 | ||
8331 | * combine.c (simplify_shift_const): Revert previous two | |
8332 | changes. If SHIFT_COUNT_TRUNCATED, crop the shift count | |
8333 | before the main loop. | |
8334 | ||
3e626beb RH |
8335 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
8336 | ||
8337 | * combine.c (simplify_shift_const): Bound shift count when | |
8338 | combining shifts. | |
8339 | ||
f507188a RK |
8340 | Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8341 | ||
7393c642 RK |
8342 | * calls.c (ECF_SP_DEPRESSED): New macro. |
8343 | (calls_function_1): Treat calling sp-depressed function as alloca. | |
8344 | (emit_call_1): Don't adjust SP if calling sp-depressed function. | |
8345 | (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED. | |
8346 | If sp-depressed, ensure block saves and restores SP. | |
8347 | * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE | |
8348 | for INTEGER_TYPE. | |
8349 | * function.c (keep_stack_depressed): New function. | |
8350 | (thread_prologue_and_epilogue_insns): Call it. | |
8351 | * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED | |
8352 | to print DECL_OFFSET_ALIGN. | |
8353 | Print no-force-blk and transparent-union flags properly. | |
8354 | * stmt.c (expand_goto_internal): Don't restore stack if last block | |
8355 | and function returns with sp depressed. | |
8356 | (fixup_gotos): Likewise. | |
8357 | (save_stack_pointer): New function, from code in expand_decl. | |
8358 | (expand_decl): Call new function. | |
8359 | * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK. | |
8360 | (TYPE_RETURNS_STACK_DEPRESSED): New macro. | |
8361 | (save_stack_pointer): New declaration. | |
8362 | ||
f507188a RK |
8363 | * diagnostic.c (fatal_function): New variable. |
8364 | (set_fatal_function): New function. | |
8365 | (fatal): Call it. | |
8366 | * diagnostic.h (set_fatal_function): New declaration. | |
8367 | ||
56847207 WC |
8368 | 2000-08-15 William Cohen <wcohen@redhat.com> |
8369 | ||
8370 | * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined. | |
8371 | (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info. | |
8372 | (DWARF2_ASM_LINE_DEBUG_INFO): Defined. | |
8373 | ||
7791b7f9 RH |
8374 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
8375 | ||
8376 | * flow.c (mark_used_reg): Set reg_cond_reg appropriately. | |
8377 | ||
f99fce0c RE |
8378 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8379 | ||
8380 | * arm.c (arm_function_ok_for_sibcall): New function. | |
8381 | * arm.h (FUNCTION_OK_FOR_SIBCALL): Define. | |
8382 | * arm.md (call expanders): Don't check here for calls that can't | |
8383 | be sibling calls. | |
8384 | ||
74da3101 RE |
8385 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8386 | ||
8387 | * arm.md (splits generating cond_exec): Disable. | |
8388 | ||
2c210617 RE |
8389 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8390 | ||
8391 | * arm/linux-elf.h (text_section): Delete declaration. | |
8392 | ||
05ed98a1 RE |
8393 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8394 | ||
8395 | ARM support for unordered FP operations. | |
8396 | * arm-protos.h (arm_comparison_operator): Declare. | |
8397 | * arm.c (arm_comparison_operator): New function. | |
8398 | (arm_select_cc_mode): Add unordered comparison codes. | |
8399 | (get_arm_condition_code): Likewise. | |
8400 | (arm_final_prescan_insn): Can't handle unordered jumps that can't | |
8401 | be done in one insn. | |
8402 | * arm.h (PREDICATE_CODES): Add arm_comparison_operator. | |
8403 | * arm.md (all uses of comparison_operator): Replace with | |
8404 | arm_comparison_operator. | |
8405 | (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New | |
8406 | expands. | |
8407 | (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New | |
8408 | patterns. | |
0e5921e8 | 8409 | |
ed78c862 OP |
8410 | Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com> |
8411 | ||
8412 | * gthr-posix.h: Conditionally include <sched.h>; include | |
8413 | <config.h> from libobjc/. | |
8414 | ||
4859dd36 RH |
8415 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8416 | ||
8417 | * config/i386/i386.c (legitimize_pic_address): Use Pmode | |
8418 | for all CONSTs. | |
8419 | ||
3f622353 RH |
8420 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8421 | ||
8422 | * configure.in (ia64-*): Set float_format for i386 long double. | |
8423 | ||
8424 | * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT | |
8425 | as we would for i386 XFmode. | |
8426 | (PUT_REAL): Likewise. | |
8427 | (endian, ereal_atof, real_value_truncate): Likewise. | |
8428 | (ereal_isneg, toe64, etens, make_nan): Likewise. | |
8429 | * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise. | |
8430 | ||
8431 | * config/ia64/ia64-protos.h: Update. | |
8432 | * config/ia64/ia64.c (general_tfmode_operand): New. | |
8433 | (destination_tfmode_operand): New. | |
8434 | (tfreg_or_fp01_operand): New. | |
8435 | (ia64_split_timode): New. | |
8436 | (spill_tfmode_operand): New. | |
8437 | (ia64_expand_prologue): Use TFmode not XFmode. | |
8438 | (ia64_expand_epilogue): Likewise. | |
8439 | (ia64_function_arg): Likewise. | |
8440 | (ia64_function_arg_advance): Likewise. | |
8441 | (ia64_return_in_memory): Likewise. | |
8442 | (ia64_function_value): Likewise. | |
8443 | (ia64_print_operand): Likewise. | |
8444 | (ia64_register_move_cost): Set GR<->FR to 5. | |
8445 | (ia64_secondary_reload_class): Get GR for TImode memory op. | |
8446 | * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove. | |
8447 | (ROUND_TYPE_ALIGN): Remove. | |
8448 | (LONG_DOUBLE_TYPE_SIZE): Set to 128. | |
8449 | (INTEL_EXTENDED_IEEE_FORMAT): Define. | |
8450 | (HARD_REGNO_NREGS): Use TFmode, not XFmode. | |
8451 | (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs. | |
8452 | (MODES_TIEABLE_P): Use TFmode, not XFmode. | |
8453 | (CLASS_MAX_NREGS): Likewise. | |
8454 | (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks. | |
8455 | (PREDICATE_CODES): Update. | |
8456 | * config/ia64/ia64.md (movti): New. | |
8457 | (movti_internal): Use a clobber for memory alternatives. | |
8458 | (reload_inti, reload_outti): New. | |
8459 | (movsfcc_astep): Predicate properly. | |
8460 | (movdfcc_astep): Likewise. | |
8461 | (movxf): Remove. | |
8462 | (movtf): New. | |
8463 | (extendsftf2, extenddftf2): New. | |
8464 | (trunctfsf2, trunctfdf2): New. | |
8465 | (floatditf2, fix_trunctfdi2): New. | |
8466 | (floatunsditf2, fixuns_trunctfdi2): New. | |
8467 | (addtf3, subtf3, multf3, abstf2): New. | |
8468 | (negtf2, nabstf2, mintf3, maxtf3): New. | |
8469 | (maddtf3, msubtf3, nmultf3, nmaddtf3): New. | |
8470 | (cmptf): New. | |
8471 | (fr_spill): Use TFmode, not XFmode. | |
8472 | (fr_restore): Likewise. | |
8473 | * config/ia64/lib1funcs.asm (__divtf3): New. | |
8474 | * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it. | |
8475 | ||
e49a1d2e KG |
8476 | 2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
8477 | ||
8478 | * cse.c (fold_rtx): Avoid empty body in an if-statement. | |
0e5921e8 | 8479 | |
e49a1d2e KG |
8480 | * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the |
8481 | `U' integer constant suffix. | |
8482 | ||
8483 | * dwarf2out.c (add_subscript_info): Avoid empty body in an | |
8484 | else-statement. | |
8485 | ||
8486 | * sparc/sol2.h (__enable_execute_stack): Prototype. | |
8487 | ||
78fbdbf7 DE |
8488 | 2000-08-14 David Edelsohn <edelsohn@gnu.org> |
8489 | ||
8490 | * collect2.c: Remove use of AIX import file. | |
8491 | ||
8492 | * longlong.h: Test ARCH_PWR not ARCH_POWER. | |
8493 | ||
8494 | * rs6000.c (print_operand, case 'E'): Add else. | |
8495 | ||
9a89adb8 RH |
8496 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8497 | ||
8498 | * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address. | |
8499 | (movdi_symbolic): New. | |
8500 | ||
00e149c7 JW |
8501 | 2000-08-14 Jim Wilson <wilson@cygnus.com> |
8502 | ||
8503 | * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
8504 | to GNU as. For Intel as, pass -M const_gp and -M no_plabel. | |
8505 | * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
8506 | to GNU as. | |
8507 | ||
2ee5437b RH |
8508 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8509 | ||
8510 | * expr.c (emit_group_load): Don't force constants into registers. | |
8511 | Special case source already in the correct mode. | |
8512 | ||
57119aa9 ZW |
8513 | 2000-08-14 Zack Weinberg <zack@wolery.cumb.org> |
8514 | ||
8515 | * configure.in: Accept *-*-linux* not just *-*-linux-gnu*. | |
8516 | * fixinc/inclhack.def: Likewise. | |
0e5921e8 | 8517 | * fixinc/mkfixinc.sh: Likewise. |
57119aa9 ZW |
8518 | * configure: Regenerate. |
8519 | * fixinc/fixincl.x: Regenerate. | |
8520 | * install.texi: Document equivalence of linux and linux-gnu. | |
8521 | ||
d9f20424 R |
8522 | Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
8523 | ||
8524 | * cse.c (insert_regs): Also in REG case: When finding an invalid | |
8525 | value, and we make a new quantity, make sure that it won't be | |
8526 | mistaken by for a valid one by mention_regs. | |
8527 | ||
c8fa6556 RG |
8528 |