]>
Commit | Line | Data |
---|---|---|
a25f1211 RH |
1 | 2000-11-19 Richard Henderson <rth@redhat.com> |
2 | ||
3 | * c-decl.c (grokdeclarator): Support flexible array members. | |
4 | Use open-ended ranges for these and zero-length arrays. | |
5 | * c-typeck.c (push_init_level): Validate the context of | |
6 | initialization of a zero-length array. | |
7 | * tree.c (int_fits_type_p): Be prepared for missing bounds. | |
8 | * varasm.c (array_size_for_constructor): New. | |
9 | (output_constructor): Use it for arrays of unspecified length. | |
10 | * extend.texi (Zero Length): Mention C99 flexible array members. | |
11 | Document initialization in a top-level struct as valid. | |
12 | ||
65fa2185 JM |
13 | 2000-11-19 Joseph S. Myers <jsm28@cam.ac.uk> |
14 | ||
9e8fc4b8 JM |
15 | * config.gcc, invoke.texi: Fix errors in spelling of "deprecated". |
16 | ||
65fa2185 JM |
17 | * alias.c (mems_in_disjoint_alias_sets_p): Do use alias sets in |
18 | stdarg and varargs functions. | |
19 | ||
2e59adac ZW |
20 | 2000-11-19 Zack Weinberg <zack@wolery.stanford.edu> |
21 | ||
22 | * gcc.c (process_command): Define 'j' variable when | |
23 | MODIFY_TARGET_NAME is defined. | |
24 | ||
856442b6 RH |
25 | 2000-11-19 Richard Henderson <rth@redhat.com> |
26 | ||
27 | * stor-layout.c (variable_size): Only put SAVE_EXPRs on pending_sizes. | |
28 | ||
88c1e412 FS |
29 | 2000-11-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
30 | ||
31 | * rs6000/rs6000.c (rs6000_encode_section_info): Fix string length | |
32 | calculation and allocation. | |
33 | ||
ce1cc601 KG |
34 | 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
35 | ||
36 | * builtins.c (c_getstr): Constify variable. | |
37 | * gmon-sol2.c (_mcleanup): Comment out #endif labels. | |
38 | * conflict.c (const_conflict_graph_arc): New typedef. | |
39 | (arc_hash, arc_eq): Avoid needlessly casting away const-ness. | |
40 | * cppmacro.c (builtin_macro): Likewise. | |
41 | * dwarf2out.c (output_comp_unit): Constify variable. | |
42 | * fix-header.c (v_fatal): Add ATTRIBUTE_PRINTF. | |
43 | * protoize.c (IS_SAME_PATH_CHAR): Use TOUPPER, not toupper. | |
44 | * ssa.c (ssa_rename_from_hash_function): Avoid needlessly casting | |
45 | away const-ness. | |
46 | * tradcpp.c (rescan, do_line, macroexpand, macarg): Use | |
47 | ISALNUM/ISDIGIT/ISPRINT, not isalnum/isdigit/isprint. | |
48 | * varasm.c (const_str_htab_hash, const_str_htab_eq, | |
49 | compare_constant_1, record_constant_1): Constify. | |
50 | ||
967e627a RH |
51 | 2000-11-18 Richard Henderson <rth@redhat.com> |
52 | ||
53 | * c-decl.c (grokdeclarator): Special case the creation of an | |
54 | index for a zero-length array. | |
55 | * tree.c (build_index_type): Revert Oct 20 change. | |
56 | ||
e9284adf MM |
57 | 2000-11-18 Marek Michalkiewicz <marekm@linux.org.pl> |
58 | ||
59 | * config/avr/avr-protos.h (avr_output_addr_vec_elt): Prototype. | |
60 | * config/avr/avr.c (jump_tables_size): New variable. | |
61 | (function_prologue): Initialize it as 0. | |
62 | (function_epilogue): Add it to function_size. | |
63 | (avr_output_addr_vec_elt): New function. Count words in jump | |
64 | tables in jump_tables_size. Move code ... | |
65 | * config/avr/avr.h (ASM_OUTPUT_ADDR_VEC_ELT): ... from here. | |
66 | Call avr_output_addr_vec_elt instead. | |
67 | * config/avr/avr.md (tablejump): Remove disabled define_expand. | |
68 | ||
67c72a63 MM |
69 | 2000-11-18 Mark Mitchell <mark@codesourcery.com> |
70 | ||
71 | * configure.in: Make --enable-new-gxx-abi the default. | |
72 | * configure: Likewise. | |
73 | ||
0a8ad417 KG |
74 | 2000-11-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
75 | ||
76 | * Makefile.in (tradcpp.o, tradcif.o): Depend on tradcpp.h. | |
77 | ||
78 | * tradcif.y: Include tradcpp.h. Constify. Make functions static. | |
79 | Move extern function declarations to tradcpp.h. | |
80 | ||
81 | * tradcpp.c: Likewise. | |
82 | ||
83 | * tradcpp.h: New file. | |
84 | ||
77c4d6c0 JM |
85 | 2000-11-18 Joseph S. Myers <jsm28@cam.ac.uk> |
86 | ||
87 | * c-decl.c (check_for_loop_decls): New function. | |
88 | * c-parse.in (for_init_stmt): New. | |
89 | (select_or_iter_stmt): Use for_init_stmt. | |
90 | * c-tree.h (check_for_loop_decls): New declaration. | |
91 | ||
4a58aab6 NB |
92 | 2000-11-18 Neil Booth <neilb@earthling.net> |
93 | ||
94 | * cppinit.c: Update comments. | |
95 | (cpp_reader_init): Make -imacro and -include use the standard | |
96 | #include "" search path. | |
97 | (do_includes): New function. | |
98 | ||
c3e2d242 BE |
99 | 2000-11-18 Ben Elliston <bje@redhat.com> |
100 | ||
101 | * config/sh/crt1.asm (start_l): Move PC-relative move instruction | |
102 | out of a branch delay slot. | |
103 | ||
48adb36e RH |
104 | 2000-11-17 Richard Henderson <rth@redhat.com> |
105 | ||
106 | * config/alpha/elf.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG. | |
107 | (ASM_SPEC): Disable and enable .mdebug based on -gstabs. | |
108 | (ASM_FILE_START): Only write out ecoff .file directive if | |
109 | emitting mdebug debugging. | |
110 | ||
9d147085 RH |
111 | 2000-11-17 Richard Henderson <rth@redhat.com> |
112 | ||
113 | * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): New. Detect | |
114 | whether as accepts .file/.loc and produces dwarf2 line info. | |
115 | * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Default on if | |
116 | the assembler supports it. | |
117 | * config.in, configure: Regenerate. | |
118 | ||
5b87e928 RH |
119 | 2000-11-17 Richard Henderson <rth@redhat.com> |
120 | ||
121 | * fixinc/mkfixinc.sh: Don't disable fixincludes for any linux*. | |
122 | ||
95c8e04b JW |
123 | 2000-11-17 Jim Wilson <wilson@redhat.com> |
124 | ||
125 | * config/ia64/ia64.c (emit_insn_group_barriers, case CALL_INSN): | |
126 | Don't clear need_barrier is next_insn is a CALL_INSN, or has | |
127 | instruction type B or UNKNOWN. | |
128 | ||
14fbab6d NB |
129 | 2000-11-17 Neil Booth <neilb@earthling.net> |
130 | ||
a25f1211 | 131 | * cpperror.c (print_file_and_line): Don't display line number if 0. |
14fbab6d | 132 | |
a8a05998 ZW |
133 | 2000-11-17 Zack Weinberg <zack@wolery.stanford.edu> |
134 | ||
135 | * ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add | |
136 | digit_vector and digit_string. | |
137 | * stringpool.c (digit_vector): New. | |
138 | (ggc_alloc_string): Use digit_string. | |
139 | ||
140 | * stmt.c (digit_strings): Delete. | |
141 | (init_stmt): Do not initialize digit_strings. | |
142 | (expand_asm_operands): Use ggc.h's digit_string macro. | |
143 | * toplev.c (mark_file_stack): Delete. | |
144 | (compile_file): Don't call init_tree_codes. | |
145 | (main): No need to make the file stack a GC root. | |
146 | * tree.c (init_tree_codes): Delete. | |
147 | * tree.h (init_tree_codes): Delete. | |
148 | ||
149 | * c-lex.c: Don't include ggc.h. | |
150 | (mark_splay_tree_node, mark_splay_tree): Delete. | |
151 | (init_c_lex): No need to ggc_strdup string constant. Don't add | |
152 | file_info_tree to GGC roots. | |
153 | (cb_enter_file, cb_rename_file): No need to ggc_strdup | |
154 | ip->nominal_fname. | |
155 | ||
156 | * Makefile.in (c-lex.o): No longer depends on $(GGC_H). | |
157 | ||
158 | * dbxout.c (dbxout_init), | |
159 | dwarf2out.c (dwarf2out_line), | |
160 | ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees), | |
161 | varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once), | |
162 | xcoffout.c (xcoffout_source_file), | |
163 | i386.c (load_pic_register): | |
164 | Delete call(s) to ggc_add_string_root and/or ggc_mark_string. | |
165 | ||
166 | * except.c (create_rethrow_ref), | |
167 | profile.c (init_edge_profiler), | |
168 | toplev.c (compile_file), | |
169 | varasm.c (named_section, assemble_static_space, | |
170 | assemble_trampoline_template, output_constant_def, force_const_mem), | |
171 | i386.c (load_pic_register), | |
172 | ia64.c (ia64_encode_section_info), | |
173 | rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference, | |
174 | rs6000_emit_prologue, rs6000_emit_epilogue), | |
175 | rs6000.md (load_toc_aix_si, load_toc_aix_di): | |
176 | Change ggc_alloc_string (var, -1) to ggc_strdup (var). | |
177 | ||
178 | * profile.c (output_func_start_profiler), | |
179 | tree.c (make_node), | |
180 | i386.c (load_pic_register): No need to ggc_strdup string constant. | |
181 | ||
61ed06c3 HPN |
182 | 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
183 | ||
184 | * Makefile.in (config.status): Depend on config.gcc. | |
185 | * configure.in <for machine in $build $host $target>: Move | |
186 | contents of loop into config.gcc, removing autoconf quoting. | |
187 | Fix changequote bug for alpha*-*-vxworks*. | |
188 | * configure: Regenerate. | |
189 | * config.gcc: New. | |
190 | ||
520a57c8 ZW |
191 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> |
192 | ||
193 | * c-parse.in (if_prefix): Find the filename and line number at | |
194 | $-2 and $-1 respectively. | |
195 | * diagnostic.c (error_recursion): Add missing newline, use | |
196 | fputs, translate string. | |
197 | ||
198 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> | |
199 | ||
200 | * stringpool.c: New file. | |
201 | * ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete. | |
202 | (ggc_alloc_string): Now in stringpool.o. | |
203 | * ggc-page.c, ggc-simple.c: Do not define or allocate empty_string. | |
204 | * ggc.h: Delete prototype of ggc_add_string_root. #define | |
205 | ggc_add_string_root and ggc_mark_string to nothing. Prototype | |
206 | init_stringpool and stringpool_statistics. | |
207 | (ggc_alloc_string): Returns a const char *. | |
208 | * tree.c (hash_table, do_identifier_warnings): Delete. | |
209 | (init_obstacks): Don't initialize the identifier hash table. | |
210 | (get_identifier, maybe_get_identifier, start_identifier_warnings, | |
211 | set_identifier_size): Now in stringpool.c. | |
212 | * tree.h (struct tree_string): Constify pointer field. | |
213 | (approx_sqrt): Prototype. | |
214 | ||
215 | * Makefile.in (stringpool.o): Add rule, mention in OBJS. | |
216 | ||
217 | * toplev.c (approx_sqrt): New function. | |
218 | (compile_file): Call stringpool_statistics if mem_report is on. | |
219 | (main): Call init_stringpool. | |
220 | ||
221 | * builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c | |
222 | (process_directive), c-typeck.c (constructor_asmspec, struct | |
223 | initializer_stack, start_init), except.c (create_rethrow_ref), | |
224 | stmt.c (digit_strings), toplev.c (decode_f_option), tree.c | |
225 | (built_in_filename), varasm,c (in_named_name, | |
226 | assemble_static_space, struct constant_descriptor, struct | |
227 | deferred_string, struct pool_constant, force_const_mem), | |
228 | i386.c (pic_label_name, global_offset_table_name), rs6000.c | |
229 | (rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *. | |
230 | ||
231 | * c-common.c (combine_strings): Combine strings in scratch | |
232 | buffer, then pass to build_string. | |
233 | * optabs.c (init_libfuncs), profile.c (init_edge_profiler, | |
234 | output_func_start_profiler), stmt.c (init_stmt), alpha.c | |
235 | (alpha_need_linkage), arm.c (arm_encode_call_attribute), | |
236 | i386.c (load_pic_register), ia64.c (ia64_encode_section_info), | |
237 | rs6000.c (rs6000_encode_section_info): Create string in | |
238 | scratch buffer, then pass to ggc_alloc_string. | |
239 | ||
240 | * stmt.c (expand_asm_operands): If we must adjust the | |
241 | constraint strings, do so by creating a new one, not by | |
242 | modifying the old one in place. Constify some char *s. | |
243 | * config/pa/pa.c (hppa_encode_label): Drop unnecessary second | |
244 | argument. Create string in scratch buffer, then pass to | |
245 | ggc_alloc_string. | |
246 | * config/pa/pa-protos.h: Update prototype. | |
247 | * config/pa/elf.h, config/pa/pa.h, config/pa/som.h: | |
248 | hppa_encode_label takes only one argument. | |
249 | ||
dd3b81b4 KG |
250 | 2000-11-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
251 | ||
252 | * mcore.c (mcore_expand_prolog): Call xmalloc/xrealloc, not | |
253 | malloc/realloc. | |
254 | ||
255 | * cpplib.c (glue_header_name): Likewise. | |
256 | ||
257 | * fixincl.c (run_compiles, start_fixer): Likewise. | |
258 | ||
259 | * fixlib.c (load_file_data): Likewise. | |
260 | ||
261 | * mkdeps.c (munge): Likewise. | |
262 | ||
5074c1fe HPN |
263 | 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
264 | ||
265 | * defaults.h [EH_FRAME_SECTION_ASM_OP] (EH_FRAME_SECTION): Remove | |
266 | trailing ';'. Fix formatting. | |
267 | ||
74fe26b2 JW |
268 | 2000-11-16 Jim Wilson <wilson@redhat.com> |
269 | ||
35d9f39d JW |
270 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT, MASK_INLINE_DIV_THR): |
271 | Shift masks left by one to avoid conflict. | |
272 | ||
74fe26b2 JW |
273 | * config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with |
274 | DECL_EXTERNAL set. | |
275 | ||
68dfd979 NC |
276 | 2000-11-16 Nick Clifton <nickc@redhat.com> |
277 | ||
278 | * config/arm/arm.c (output_arm_prologue): Note nested functions. | |
279 | (arm_expand_prologue): For nested functions preserve the | |
280 | static chain register during stack frame creation. | |
281 | ||
282 | * config/arm/arm.h (STATIC_CHAIN_REGNUM): Change to 12. | |
283 | (ARM_INITIAL_FRAME_ELIMINATION_OFFSET): For a nested function | |
284 | with a stack frame there is a 4 byte gap between the arg | |
285 | pointer and the hard frame pointer (used to preserve the | |
286 | static chain register during stack frame creation). | |
287 | ||
3ab9a08f DD |
288 | 2000-11-16 DJ Delorie <dj@redhat.com> |
289 | ||
290 | * rtl.c (read_rtx): Provide suitable names for unnamed | |
291 | define_insn and define_insn_and_split patterns, based on file | |
292 | and line numbers. | |
293 | ||
fe6c2db9 NB |
294 | 2000-11-15 Neil Booth <neilb@earthling.net> |
295 | ||
a8a05998 ZW |
296 | * cpplib.c (start_directive, end_directive): New functions. |
297 | (_cpp_handle_directive, run_directive): Use them. | |
298 | (_cpp_handle_directive): Don't -Wtraditional on indented | |
299 | null directives. | |
300 | (_cpp_push_buffer): Don't re-clear was_skipping. | |
301 | * cpplib.h (struct cpp_reader): New member la_saved. | |
302 | * cppmacro.c (cpp_get_token): Don't interpret _Pragma in | |
303 | directives. | |
fe6c2db9 | 304 | |
a8a05998 ZW |
305 | gcc.dg/cpp/_Pragma1.c: Update. |
306 | gcc.dg/cpp/_Pragma2.c: New test. | |
fe6c2db9 | 307 | |
62136084 MM |
308 | 2000-11-15 Mark Mitchell <mark@codesourcery.com> |
309 | ||
310 | * toplev.c (wrapup_global_declarations): Don't write out | |
311 | artificial static variables that aren't needed. | |
312 | ||
099dde21 BS |
313 | 2000-11-15 Bernd Schmidt <bernds@redhat.co.uk> |
314 | ||
315 | * ia64.c (struct group): New structure. | |
316 | (last_group): New static array. | |
317 | (group_idx): New static variable. | |
318 | (emit_group_barrier_after, errata_find_address_regs, errata_emit_nops): | |
319 | New static functions. | |
320 | (emit_insn_group_barriers): Initialize and keep track of group_idx | |
321 | and last_group. | |
322 | Call errata_emit_nops if TARGET_B_STEP or TARGET_A_STEP. | |
323 | Replace all calls to emit_insn_after that emit a group barrier to use | |
324 | emit_group_barrier_after. | |
325 | * ia64.h (MASK_B_STEP): New. | |
326 | (other MASK_XXX macros): Renumbered. | |
327 | (TARGET_B_STEP): New. | |
328 | (TARGET_SWITCHES): Add -mb-step. | |
329 | ||
4e7b85ed FF |
330 | 2000-11-15 Fred Fish <fnf@be.com> |
331 | ||
332 | * fixinc/mkfixinc.sh (fixincludes): Add *-*-beos* to list of | |
333 | machines for which fixincludes is not needed. | |
334 | * config/i386/x-beos (STMP_FIXPROTO): Don't run fixproto. | |
335 | ||
ee3400e8 JM |
336 | 2000-11-15 Jason Merrill <jason@redhat.com> |
337 | ||
338 | * diagnostic.c (finish_abort): New fn. | |
339 | (fancy_abort, error_recursion): Use it. | |
340 | * toplev.c (crash_signal): Likewise. | |
341 | * diagnostic.h: Declare it. | |
342 | ||
12e1243e AH |
343 | 2000-11-13 Andrew Haley <aph@redhat.com> |
344 | ||
345 | * tree.c (build_type_no_quals): New function. | |
346 | * tree.h (build_type_no_quals): Declare. | |
347 | * c-common.c (c_get_alias_set): When considering type | |
348 | compatibility for pointer types, ignore cv-qualifiers anywhere in | |
349 | a pointer chain. | |
350 | ||
695e4773 GS |
351 | 2000-11-15 Graham Stott <grahams@redhat.com> |
352 | ||
353 | * regrename.c (scan_rtx_rtx): Skip to the next chain on | |
354 | encountering a terminated chain. | |
355 | ||
5a7c1037 MM |
356 | 2000-11-14 Mark Mitchell <mark@codesourcery.com> |
357 | ||
358 | * configure.in: Move check for V3 above check for C++ header-file | |
359 | directory. | |
360 | * configure: Regenerated. | |
a8a05998 | 361 | |
568c5140 DD |
362 | 2000-11-14 DJ Delorie <dj@redhat.com> |
363 | ||
364 | * config/v850/v850.c: Remove obstacks. | |
365 | ||
1268b05f MM |
366 | Tue Nov 14 21:54:31 2000 Marek Michalkiewicz <marekm@linux.org.pl> & Denis Chertykov <denisc@overta.ru> |
367 | ||
368 | * config/avr/avr.c (avr_case_values_threshold): New. | |
369 | (avr_override_options): Set it depending on options, make it large | |
370 | when not optimizing to work around "unable to generate reloads". | |
371 | ||
372 | * config/avr/avr.h (TARGET_SWITCHES): Add -mno-tablejump option. | |
373 | (EXTRA_SECTION_FUNCTIONS): Make the .progmem.gcc_sw_table section | |
374 | executable if not AVR_MEGA. Make sure jump tables are word-aligned. | |
375 | (JUMP_TABLES_IN_TEXT_SECTION): Define as 0, not 1. | |
376 | (ASM_OUTPUT_ADDR_VEC_ELT): Optimize, use "rjmp" if not AVR_MEGA. | |
377 | (avr_case_values_threshold): Declare as extern int. | |
378 | (CASE_VALUES_THRESHOLD): Define as avr_case_values_threshold. | |
379 | ||
380 | * config/avr/avr.md (tablejump): Removed. | |
381 | (*tablejump_rjmp): New for jump tables made from "rjmp" instructions. | |
382 | (*tablejump_lib, *tablejump_enh, *tablejump): Change to expect the | |
383 | index in the table, not multiplied by 2. | |
384 | (casesi): Change to match the above insns. Always enable. | |
385 | ||
386 | * config/avr/libgcc.S (__tablejump__): Rename to __tablejump2__. | |
387 | Change to expect the word address of the table, multiply it by 2 | |
388 | here and not in the caller. Change "adiw" to faster "inc". | |
389 | ||
7f2f1a66 NB |
390 | 2000-11-14 Neil Booth <neilb@earthling.net> |
391 | ||
392 | * cppexp.c (parse_defined): Call cpp_get_token not | |
393 | _cpp_get_token. | |
394 | (lex): Similarly. | |
395 | * cpplex.c (cpp_output_line): Similarly. | |
396 | * cpplib.c (glue_header_name, do_line, do_ident, | |
397 | parse_answer, parse_assertion): Similarly. | |
398 | (_cpp_handle_diretive): Don't save to lookaheads | |
399 | when processing directives. | |
400 | * cppmacro.c (parse_arg, expand_arg): Call cpp_get_token not | |
401 | _cpp_get_token. | |
402 | (funlike_invocation_p): Don't save to lookaheads | |
403 | when pre-expanding arguments. | |
404 | (_cpp_get_token): Delete. | |
405 | (cpp_get_token): Merge contents of _cpp_get_token. | |
406 | ||
f36d6244 JJ |
407 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
408 | ||
409 | * builtins.c (expand_builtin_setjmp): Set | |
410 | current_function_calls_setjmp. | |
411 | (expand_builtin_longjmp): Set current_function_calls_longjmp. | |
412 | ||
413 | * config/sparc/sparc.md (builtin_setjmp_setup): New expand. | |
414 | (do_builtin_setjmp_setup): New insn. | |
415 | ||
3401c26b RK |
416 | Tue Nov 14 12:34:56 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
417 | ||
418 | * tree.c (get_unwidened): Use host_integerp and tree_low_cst. | |
419 | (int_fits_type_p): For variable bounds, call force_fit_type. | |
420 | ||
bd7cf17e JJ |
421 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
422 | ||
423 | * varasm.c (struct deferred_string): New structure. | |
424 | (const_str_htab): New variable. | |
425 | (STRHASH): New macro. | |
426 | (mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash, | |
427 | constr_str_htab_eq, const_str_htab_del): New functions. | |
428 | (output_constant_def): Add DEFER argument, defer string | |
429 | constants until mark_constant_pool time if requested. | |
430 | (mark_constant_pool): Walk the insn chain even if const_str_htab is | |
431 | not empty. | |
432 | (mark_constants): If a SYMBOL_REF for deferred string is found, | |
433 | output it and remove from hash table. | |
434 | (output_addressed_constants): Set DEFER to 0 in call to | |
435 | output_constant_def. | |
436 | * rtl.h (STRING_POOL_ADDRESS_P): Define. | |
437 | (output_constant_def): Adjust prototype. | |
438 | * expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def. | |
439 | ||
10e927ef CC |
440 | 2000-11-14 Chandrakala Chavva <cchavva@redhat.com> |
441 | ||
442 | * optabs.c (expand_complex_ab):: Use overflow-trapping optabs for | |
443 | signed types if flag_trapv. | |
444 | ||
ef90743a ZW |
445 | 2000-11-14 Zack Weinberg <zack@wolery.stanford.edu> |
446 | ||
447 | * tradcpp.c, tradcif.y: Update FSF mailing address, delete | |
448 | reference to GPLv1. | |
449 | ||
fe8ca71f JM |
450 | 2000-11-14 Joseph S. Myers <jsm28@cam.ac.uk> |
451 | ||
452 | * c-common.h (CTI_C_SIZE_TYPE): Update comment. | |
453 | ||
94b01be3 JJ |
454 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
455 | ||
456 | * varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table | |
457 | to array of pool_constnat pointers. | |
458 | (struct pool_constant): Add next_sym and label members. | |
459 | (struct pool_sym): Remove. | |
460 | (init_varasm_status): Change pool_sym into pool_constant. | |
461 | (mark_pool_constant): Mark pc->label string as well. | |
462 | (mark_pool_sym_hash_table): Remove. | |
463 | (mark_varasm_status): Remove it from caller as well. | |
464 | (free_varasm_status): Don't free pool_sym structures. | |
465 | (force_const_mem): Don't allocate pool_sym structure, instead | |
466 | fill pool->label and chain it into rtx_sym hash table. | |
467 | (find_pool_constant, mark_constant_pool): Use pool_constant instead | |
468 | of pool_sym. | |
469 | ||
716120a7 JJ |
470 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
471 | ||
472 | * reload1.c (emit_input_reload_insns): Honour forcing of constants | |
473 | into memory by PREFERRED_RELOAD_CLASS NO_REGS. | |
474 | ||
f8032688 MM |
475 | 2000-11-14 Michael Matz <matzmich@cs.tu-berlin.de> |
476 | ||
477 | * dominance.c: New file. | |
478 | * Makefile.in (OBJS): Add dominance.o. | |
479 | ||
480 | * flow.c (compute_flow_dominators): Remove. | |
481 | (compute_immediate_dominators): Remove. | |
482 | (compute_immediate_postdominators): Remove. | |
483 | * basic-block.h: Remove their prototypes. | |
484 | (calculate_dominance_info): Add prototype. | |
485 | ||
486 | * dce.c (eliminate_dead_code): Change calls to above functions. | |
487 | Don't compute dominators but only immediate dominators. | |
488 | * flow.c (flow_loops_find): Change callers. | |
489 | * gcse.c (compute_code_hoist_data): Likewise. | |
490 | * haifa-sched.c (schedule_insns): Likewise. | |
491 | * ifcvt.c (if_convert): Likewise. | |
492 | * ssa.c (convert_to_ssa): Likewise, and only compute immediate | |
493 | dominators. | |
494 | ||
0caa3c8e RH |
495 | 2000-11-14 Richard Henderson <rth@redhat.com> |
496 | ||
6f122550 RH |
497 | * stmt.c (warn_if_unused_value): Don't warn if the expression |
498 | has side effects. | |
499 | ||
0caa3c8e RH |
500 | * c-typeck.c (c_sizeof): Fold result to c_size_type_node. |
501 | (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise. | |
502 | ||
a78cc542 FS |
503 | 2000-11-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
504 | ||
505 | * loop.c (basic_induction_var): Revert accidental checkin. | |
506 | ||
d9068c61 HPN |
507 | 2000-11-13 Hans-Peter Nilsson <hp@axis.com> |
508 | ||
509 | * c-lex.c (cb_leave_file): Harmonize conditions and order of | |
510 | statements to those of process_directive for (action == act_pop). | |
511 | ||
512 | * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS. | |
513 | ||
514 | * local-alloc.c (equiv_init_movable_p): References to CC0 are not | |
515 | movable. | |
516 | ||
ebf02523 JM |
517 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
518 | ||
519 | * c-parse.in (stmts_and_decls): Deprecate use of label at end of | |
520 | compound statement. | |
521 | ||
29b10746 NB |
522 | 2000-11-13 Neil Booth <neilb@earthling.net> |
523 | ||
ee3400e8 JM |
524 | * cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF |
525 | cases return without MI check. | |
526 | * cpplib.c (do_diagnostic): Take boolean of whether to | |
527 | print the directive name. | |
528 | (do_error, do_warning): Update. | |
529 | (do_pragma_dependency): Use it. | |
530 | * cpplib.h (VARARGS_FIRST): Delete. | |
531 | (struct cpp_token): Delete integer. | |
532 | * cppmacro.c (enter_macro_context): Move disabled check | |
533 | to _cpp_get_token. | |
534 | (_cpp_get_token): Simplify into a single loop. | |
29b10746 | 535 | |
8105825d RE |
536 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
537 | ||
538 | * configure.in: Use 'test -f' not '[ -e'. | |
539 | * configure: Regenerated. | |
540 | ||
481a6b4a DD |
541 | 2000-11-13 DJ Delorie <dj@redhat.com> |
542 | ||
543 | * config/mn10300/mn10300.md (store_movm): Note which registers are | |
544 | really used or clobbered. | |
545 | ||
b7438415 JM |
546 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
547 | ||
548 | * c-parse.in (ends_in_label): Remove from %union and %type. | |
549 | (decls, stmts, lineno_stmt_or_labels, xstmts, | |
550 | lineno_stmt_or_label, stmt_or_label): Remove. | |
551 | (stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt, | |
552 | lineno_stmt_decl_or_labels_ending_decl, | |
553 | lineno_stmt_decl_or_labels_ending_label, | |
554 | lineno_stmt_decl_or_labels_ending_error, | |
555 | lineno_stmt_decl_or_labels, compstmt_contents_nonempty, | |
556 | lineno_stmt, lineno_label): New. | |
557 | (compstmt_nostart): Use compstmt_contents_nonempty. | |
558 | ||
19552aa5 JM |
559 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
560 | ||
561 | * c-common.c (boolean_increment): New function. | |
562 | * c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE, | |
563 | CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE. | |
564 | (c_bool_type_node, c_bool_true_node, c_bool_false_node): Define. | |
565 | (boolean_increment): Declare. | |
566 | * c-convert.c (convert): Allow for BOOLEAN_TYPE. | |
567 | * c-decl.c (init_decl_processing): Create boolean nodes. | |
568 | (finish_struct): Allow for _Bool bitfields. | |
569 | * c-parse.in (reswords): Add _Bool. | |
570 | (rid_to_yy): Allow for RID_BOOL. | |
571 | * c-typeck.c (default_conversion): Make booleans promote to int. | |
572 | (convert_arguments, build_unary_op, build_modify_expr, | |
573 | convert_for_assignment): Allow for booleans. | |
574 | * ginclude/stdbool.h: Make conforming to C99. | |
575 | ||
444ca59f JM |
576 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
577 | ||
578 | * c-parse.in (c99_block_start, c99_block_end, | |
579 | c99_block_lineno_labeled_stmt): New. | |
580 | (simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt. | |
581 | (stmt): Split off selection and iteration statements into... | |
582 | (select_or_iter_stmt): New. Use c99_block_lineno_labeled_stmt. | |
583 | ||
f2ecb02d JM |
584 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
585 | ||
586 | * invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps, | |
587 | -time): Update. | |
588 | ||
b082bfdb RE |
589 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
590 | ||
591 | * arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change. | |
592 | Rewrite to avoid use of match_dup. Don't try to tie registers that | |
593 | are not in the same mode. | |
594 | ||
b9265ec1 JM |
595 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
596 | ||
597 | * invoke.texi: Update lists of languages and suffixes supported. | |
598 | ||
cc1e60ea JM |
599 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
600 | ||
601 | * configure.in: Take toplevel configure arguments from the | |
602 | environment to create configargs.h and substitute | |
603 | gcc_config_arguments, taking account of any existing configargs.h | |
604 | if reconfiguring. | |
605 | * configure: Regenerate. | |
606 | * gccbug.in: Include toplevel configure arguments in gccbug. | |
607 | ||
37357796 RE |
608 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
609 | ||
610 | * varasm.c (struct constant_descriptor): Put CONTENTS inside a | |
611 | union to make it well-aligned. Update all uses. | |
612 | ||
26d4fec7 JM |
613 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
614 | ||
615 | * c-parse.in (initelt): Give appropriate pedantic warnings, | |
616 | depending on flag_isoc99, for non-ISO syntax and for C99 syntax | |
617 | outside C99 mode. | |
618 | (designator): If pedantic, pedwarn for a designator specifying a | |
619 | range of elements. | |
620 | * c-typeck.c (set_init_index, set_init_label): Don't pedwarn for | |
621 | these cases. | |
622 | * extend.texi: Document the C99 syntax as the preferred syntax, | |
623 | and the pre-2.5 syntax as obsolete. Mention use of designator | |
624 | lists for nested subobjects. | |
625 | ||
88f3c477 JM |
626 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
627 | ||
628 | * diagnostic.c (vbuild_message_string, output_do_printf, vnotice): | |
629 | Add ATTRIBUTE_PRINTF. | |
630 | * tradcpp.c (v_message, warning, error, fatal, error_with_line): | |
631 | Add ATTRIBUTE_PRINTF*. | |
632 | ||
db5fbfb4 MM |
633 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
634 | ||
635 | * function.c (assign_parms): When calling put_var_into_stack, make | |
636 | sure that there are no hidden pending sequences. | |
637 | ||
c7b6c6cd KG |
638 | 2000-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
639 | ||
640 | * builtins.c (expand_builtin): Handle BUILT_IN_INDEX and | |
641 | BUILT_IN_RINDEX. Add missing checks for BUILT_IN_STRCHR and | |
642 | BUILT_IN_STRRCHR. | |
643 | ||
644 | * builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries. | |
645 | ||
646 | * c-common.c (c_common_nodes_and_builtins): Declare index and | |
647 | rindex when nonansi builtins are allowed. | |
648 | ||
649 | * extend.texi (index, rindex): Document new builtins. | |
650 | ||
2f86842d MM |
651 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
652 | ||
34f6fbdb MM |
653 | * configure.in: Turn on libstdc++ V3 by default. |
654 | * configure: Regenerated. | |
a8a05998 | 655 | |
2f86842d MM |
656 | * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris. |
657 | ||
0c0ba09c JJ |
658 | 2000-11-12 Jakub Jelinek <jakub@redhat.com> |
659 | ||
660 | * reload1.c (set_label_offsets): Go inside of PARALLELs. | |
661 | ||
84a0e7b8 JM |
662 | 2000-11-12 Joseph S. Myers <jsm28@cam.ac.uk> |
663 | ||
664 | * invoke.texi: Clean up option summary. | |
665 | ||
4816b8e4 NC |
666 | 2000-11-12 Nick Clifton <nickc@redhat.com> |
667 | ||
668 | * config/mcore/mcore.c: Fix comment formating, and adjust sequence | |
669 | of #include headers. | |
670 | ||
ee7692d2 | 671 | 2000-11-12 Marc Espie <espie@openbsd.org> |
a8a05998 | 672 | |
ee7692d2 ME |
673 | * configure.in: Fix filds test. |
674 | * configure: Regen. | |
675 | ||
f8c4f860 MM |
676 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
677 | ||
678 | * jump.c (delete_computation): Don't assume that just becuase an | |
679 | instruction sets a register, that register is dead. | |
680 | ||
b528a07e NB |
681 | 2000-11-12 Neil Booth <neilb@earthling.net> |
682 | ||
a8a05998 ZW |
683 | * cppexp.c: Don't worry about pfile->skipping. |
684 | * cpplib.c (struct if_stack): Make was_skipping unsigned char. | |
685 | (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer | |
686 | for handled directives. | |
687 | (skip_rest_of_line): Use _cpp_lex_token after popping contexts | |
688 | and releasing lookaheads. | |
689 | (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping. | |
690 | (do_else, do_elif, push_conditional): Update logic. | |
691 | (do_endif): Set buffer->was_skipping rather than pfile->skipping. | |
692 | (unwind_if_stack): Inline into cpp_pop_buffer. | |
693 | (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive. | |
694 | * cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle | |
695 | multiple-include optimisation. | |
696 | * cpplib.h (struct cpp_buffer): New member was_skipping. | |
697 | * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This | |
698 | works because skipping == 0 in directives. | |
699 | (_cpp_release_lookahead): Renamed from release_lookahead. | |
700 | (cpp_get_token): No need to check skipping as _cpp_get_token does | |
701 | this for us. No need to handle MI optimisation. | |
b528a07e | 702 | |
995c461c MM |
703 | Sat Nov 11 21:14:02 2000 Mark P Mitchell <mark@codesourcery.com> |
704 | ||
705 | * fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr | |
706 | declarations that use `__MATH_EXCEPTION' in their prototypes, too. | |
707 | * fixinc/fixincl.x: Regenerated. | |
a8a05998 | 708 | |
56a77e1e BK |
709 | 2000-11-11 Bruce Korb <bkorb@gnu.org> |
710 | ||
711 | * fixinc/inclhack.def (avoid_bool_type): avoid commenting out #endif | |
712 | (avoid_wchar_t_type): ditto | |
713 | * fixinc/fixinc.irix: obsoleted | |
714 | ||
72aaffbd ZW |
715 | 2000-11-11 Zack Weinberg <zack@wolery.stanford.edu> |
716 | ||
717 | * configure.in: Don't add $outputs to all_lang_makefiles. Add | |
718 | $srcdir/$s/Makefile.in if it exists. | |
719 | * configure: Regenerate. | |
720 | ||
bbdd639d MM |
721 | Sat Nov 11 18:41:20 2000 Mark P Mitchell <mark@codesourcery.com> |
722 | ||
723 | * fixinc/mkfixinc.sh: Use the ordinary fixincludes on IRIX. | |
724 | ||
d96a6d1a JM |
725 | 2000-11-11 Jason Merrill <jason@redhat.com> |
726 | ||
a8a05998 | 727 | * function.c (assign_parms): If TREE_ADDRESSABLE is set, try to |
d96a6d1a JM |
728 | give the parm a register and then call put_var_into_stack. |
729 | * stmt.c (expand_decl): Likewise. | |
730 | ||
8ee322c9 JM |
731 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
732 | ||
733 | * gcc.texi: Adjust wording. | |
734 | ||
8b4c8a86 MM |
735 | 2000-11-11 Mark Mitchell <mark@codesourcery.com> |
736 | ||
737 | * fixinc/inclhack.def (avoid_wchar_t_type): New fix. | |
738 | * fininc/fixincl.x: Regenerated. | |
739 | ||
639726ba JM |
740 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
741 | ||
742 | * invoke.texi: Correct spelling of -foptimize-register-move. | |
743 | ||
4c2b647d NB |
744 | 2000-11-11 Neil Booth <neilb@earthling.net> |
745 | ||
746 | Remove CPP_PLACEMARKERs. | |
747 | ||
748 | * cppexp.c (lex): Don't handle CPP_PLACEMARKER. | |
749 | * cpplex.c (_cpp_lex_token): Rename skip_newlines to next_bol | |
750 | * cpplib.c (skip_rest_of_line, check_eol, cpp_push_buffer): | |
a8a05998 | 751 | Similarly. |
4c2b647d NB |
752 | * cpplib.h: Remove CPP_PLACEMARKER. |
753 | (struct lexer_state): Rename skip_newlines to next_bol. | |
754 | * cppmacro.c (stringify_arg): Don't handle CPP_PLACEMARKER. | |
755 | Simplify prev_white handling as a result. | |
756 | (paste_all_tokens): Don't worry about CPP_PLACEMARKERs. | |
757 | (parse_arg): Empty arguments are now empty, not CPP_PLACEMARKERs. | |
758 | (parse_args): Similarly. Update argument count tests. | |
759 | (enter_macro_context): Return 2 to indicate an empty macro. | |
760 | (replace_args): Don't bother pre-expanding an empty argument. | |
761 | Handle placemarkers and ## extension during pre-expansion. | |
762 | (cpp_get_token): Handle empty macro expansions. Don't worry | |
763 | about CPP_PLACEMARKERs. | |
764 | (_cpp_create_definition): Empty macros are now empty. | |
765 | (cpp_macro_defintion): Don't special case empty macros. | |
766 | * scan-decls.c: Don't bother with CPP_PLACEMARKERs. | |
767 | * c-lex.c: Similarly. | |
768 | ||
c1030c7c JM |
769 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
770 | ||
771 | * gcc.texi, invoke.texi: Add new section discussing language | |
772 | standards; link to it where appropriate; refer to ISO C instead of | |
773 | ANSI C. | |
774 | ||
93a77848 AO |
775 | 2000-11-11 Alexandre Oliva <aoliva@redhat.com> |
776 | ||
3650b695 AO |
777 | * builtins.c (std_expand_builtin_va_start): Take PARM_BOUNDARY |
778 | into account. | |
779 | ||
93a77848 AO |
780 | * config/sh/sh.h (MODES_TIEABLE_P): Don't tie SFmode to other FP |
781 | modes. | |
782 | ||
9a5a13c9 JM |
783 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
784 | ||
785 | * gcc.texi, gcov.texi: Update dates and version numbers. | |
786 | ||
1e608388 ZW |
787 | 2000-11-10 Zack Weinberg <zack@wolery.stanford.edu> |
788 | ||
789 | * configure.in: Remove AC_PROG_LEX and AC_PROG_YACC. Look for | |
790 | flex and bison, specifically, first in a unified build and | |
791 | then installed on the system. | |
792 | * Makefile.in: Set BISON to @BISON@, FLEX to @FLEX@. Rename | |
793 | LEXFLAGS to FLEXFLAGS. Adjust ORDINARY_FLAGS_TO_PASS to | |
794 | match. | |
795 | ||
796 | (collect2.o, gcc.o, prefix.o, toplev.o, alloca.o, intl.o, | |
797 | cppdefault.o): Remove pointless sed munging of source file | |
798 | name. | |
799 | ||
9532e31f BS |
800 | 2000-11-10 Bernd Schmidt <bernds@redhat.co.uk> |
801 | ||
802 | * reload.c (find_reloads_address_1, case POST_MODIFY): Use RELOAD_OTHER | |
803 | for address reloads. Push replacements for REG_INC notes. | |
804 | (regno_clobbered_p): New arg SETS. Examine SETs if it's nonzero. All | |
805 | callers changed. | |
806 | * reload1.c (choose_reload_regs): Registers set in the insn can't be | |
807 | used for RELOAD_OTHER reloads. | |
808 | ||
721de836 MM |
809 | 2000-11-10 Mark Mitchell <mark@codesourcery.com> |
810 | ||
811 | * c-dump.h: New file. | |
812 | ||
4e135bdd KG |
813 | 2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
814 | ||
815 | * alpha.c (check_float_value): Use memcpy, not bcopy. | |
816 | * arm.c (output_move_double): Likewise. | |
817 | * arm.md: Likewise. | |
818 | * m88k.c (legitimize_operand): Likewise. | |
819 | * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise. | |
820 | * m88k.md: Likewise. | |
821 | * mips.c (override_options): Likewise. | |
822 | * mips.md: Likewise. | |
823 | * romp.c (output_fpops): Likewise. | |
824 | * rs6000.c (rs6000_override_options): Likewise. | |
825 | * sh.md: Likewise. | |
826 | * vax.c (check_float_value): Likewise. | |
827 | ||
828 | * emit-rtl.c (copy_rtx_if_shared, init_emit_once): Likewise. | |
829 | * expmed.c (synth_mult): Likewise. | |
830 | * final.c (add_bb_string): Likewise. | |
831 | * genattr.c (main): Likewise. | |
832 | * genattrtab.c (attr_string, simplify_cond, copy_rtx_unchanging): | |
833 | Likewise. | |
834 | * jump.c (thread_jumps): Likewise. | |
835 | * prefix.c (save_string): Likewise. | |
836 | * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Likewise. | |
837 | * regclass.c (init_reg_sets, init_reg_sets_1): Likewise. | |
838 | * reload1.c (reload, eliminate_regs): Likewise. | |
839 | ||
c8abeb44 JM |
840 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
841 | ||
842 | * gcc.texi (Service): Update to reflect current practice and | |
843 | location of the GNU service directory. | |
844 | ||
6fb85418 BS |
845 | 2000-11-09 Bernd Schmidt <bernds@redhat.co.uk> |
846 | ||
847 | * regrename.c (build_def_use): Mark contents of REG_INC notes as | |
848 | needing replacement. | |
849 | ||
0c478921 BS |
850 | * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Emit |
851 | a no-op move if regs are equal. | |
852 | * toplev.c (rest_of_compilation): Do the noop moves elimination pass | |
a8a05998 | 853 | when calling jump after post-reload splitting. |
0c478921 | 854 | |
3b7a2e58 JM |
855 | 2000-11-09 Jan van Male <jan.vanmale@fenk.wau.nl> |
856 | ||
a8a05998 ZW |
857 | * c-tree.texi: Fix typos. |
858 | * extend.texi: Likewise | |
859 | * gcov.texi: Likewise | |
860 | * rtl.texi: Likewise | |
861 | * tm.texi: Likewise | |
3b7a2e58 | 862 | |
59257980 HPN |
863 | 2000-11-09 Hans-Peter Nilsson <hp@axis.com> |
864 | ||
865 | * c-lex.c [! NO_IMPLICIT_EXTERN_C] (cb_enter_file): Check | |
866 | in_system_header and flags[1] before dereferencing flags[2]. | |
867 | ||
881a8969 MH |
868 | 2000-11-09 Matthew Hiller <hiller@redhat.com> |
869 | ||
870 | * reload1.c (reload_combine): Fixed calculation of | |
871 | first_index_reg, last_index_reg. | |
872 | ||
0a7394bc MM |
873 | 2000-11-09 Mark Mitchell <mark@codesourcery.com> |
874 | ||
13507bd8 MM |
875 | * c-dump.c (dequeue_and_dump): Dump function bodies. |
876 | ||
0a7394bc MM |
877 | * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o. |
878 | (c-dump.o): New target. | |
879 | * c-common.h (flag_dump_translation_unit): New variable. | |
880 | (C_TYPE_QUALS): New macro. | |
881 | (strip_array_types): New function. | |
882 | (DECL_C_BIT_FIELD): New macro. | |
883 | (SET_DECL_C_BIT_FIELD): Likewise. | |
884 | (CLEAR_DECL_C_BIT_FIELD): Likewise. | |
885 | (dump_info_p): New typedef. | |
886 | (dump_tree_fn): Likewise. | |
887 | (lang_dump_tree): New variable. | |
888 | (dump_node_to_file): New function. | |
889 | * c-common.c (flag_dump_translation_unit): Define it. | |
890 | (strip_array_types): New function. | |
891 | * c-decl.c (c_decode_option): Handle -fdump-translation-unit. | |
a8a05998 | 892 | * c-lang.c (finish_file): Call dump_node_to_file if |
0a7394bc MM |
893 | flag_dump_translation_unit. |
894 | * c-semantics.c (mark_rtl_for_local_static): Fix typo in comment. | |
895 | * c-tree.h (DECL_C_BIT_FIELD): Remove declaration. | |
896 | * c-dump.c: New file. | |
a8a05998 | 897 | |
abffe289 CF |
898 | 2000-11-09 Christopher Faylor <cgf@cygnus.com> |
899 | ||
900 | * config/i386/cygwin.h: Add mingw startfile prefix. | |
901 | ||
1288c070 RH |
902 | 2000-11-09 Richard Henderson <rth@redhat.com> |
903 | ||
904 | * flow.c (invalidate_mems_from_set): Split out from ... | |
905 | (mark_set_1): ... here. | |
906 | (try_pre_increment_1): Use it. Use propagate_block_delete_insn | |
907 | instead of turning insn into a NOTE_INSN_DELETED. | |
908 | ||
01702459 JM |
909 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
910 | ||
911 | * extend.texi, invoke.texi: Move documentation of builtin versions | |
912 | of C library functions to one place and update. | |
913 | ||
30355eaa RH |
914 | 2000-11-09 Richard Henderson <rth@redhat.com> |
915 | ||
916 | * fold-const.c (fold): Compare TYPE_MAIN_VARIANT rather than | |
917 | the types themselves to discover type equivalence. | |
918 | ||
5fcee6f3 MS |
919 | 2000-11-09 Mike Stump <mrs@wrs.com> |
920 | ||
921 | * Makefile.in (distclean): Remove a few extra leftovers. | |
922 | ||
377b6fce RH |
923 | 2000-11-09 Richard Henderson <rth@redhat.com> |
924 | ||
c0e3f87d RH |
925 | * recog.c (validate_replace_rtx_1): Consider subregs when |
926 | replacing a register with a constant inside a sign/zero_extend. | |
927 | ||
377b6fce RH |
928 | * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. |
929 | ||
b52114d2 GK |
930 | 2000-11-09 Geoffrey Keating <geoffk@redhat.com> |
931 | ||
932 | * c-decl.c (finish_struct): When a structure is completed, | |
933 | check all its variant types for completeness. | |
934 | ||
a949941c NB |
935 | 2000-11-09 Neil Booth <neilb@earthling.net> |
936 | ||
937 | * cpphash.c: Move cpp_defined here from cpplib.c. | |
938 | * cpplib.c: Update comments, move cpp_defined to cpphash.c. | |
939 | * cpplex.c (_cpp_lex_token): Don't leave the lexer at EOL. | |
940 | * cppmacro.c (cpp_get_token): Update comments, no need now | |
941 | to catch the CPP_EOF meaning EOL case. | |
942 | ||
9a0662b4 GK |
943 | 2000-11-08 Geoffrey Keating <geoffk@redhat.com> |
944 | ||
945 | * config/sparc/sparc.c (sparc_va_arg): When the required alignment | |
946 | is more than that provided, copy to a temporary. | |
947 | ||
6c80a645 AO |
948 | 2000-11-09 Alexandre Oliva <aoliva@redhat.com> |
949 | ||
950 | * mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from | |
951 | interpreting $out as a macro assignment. | |
952 | * Makefile.in (T_TARGET): New auxiliary macro and target. | |
953 | (all): Add a target right in the beginning, so that we don't build | |
954 | T_TARGET by default. | |
955 | ||
6a4afa6c GS |
956 | 2000-11-09 Graham Stott <grahams@redhat.com> |
957 | ||
a8a05998 | 958 | * config/i386/i386.md (mmx_pinsrw): Output operands in correct |
6a4afa6c GS |
959 | order for -mintel-syntax. Remove comment now that the operand |
960 | order has been checked. | |
961 | (mmx_pextrw): Likewise. | |
962 | (mmx_pshufw): Likewise. | |
963 | ||
2dee4af1 JJ |
964 | 2000-11-09 Jakub Jelinek <jakub@redhat.com> |
965 | ||
966 | * builtins.c (c_strlen): Use TREE_STRING_LENGTH - 1 for max. | |
967 | (c_getstr): New function. | |
968 | (expand_builtin_strstr): Do nothing if -fcheck-memory-usage. | |
969 | If both arguments are constant string, optimize out. | |
970 | (expand_builtin_strchr, expand_builtin_strrchr): New functions. | |
971 | (expand_builtin_strpbrk): Use c_getstr, do nothing if | |
972 | -fcheck-memory-usage. | |
973 | (expand_builtin_fputs): Likewise. | |
974 | (expand_builtin_strcmp): Add MODE argument. | |
975 | Use even if !HAVE_cmpstrsi. | |
976 | Optimize the case when both arguments are constant strings. | |
977 | (expand_builtin): Adjust expand_builtin_strcmp caller. | |
978 | Call expand_builtin_strchr and expand_builtin_strrchr. | |
979 | * c-common.c (c_common_nodes_and_builtins): Add strchr and strrchr | |
980 | builtins. | |
981 | * builtins.def (BUILT_IN_STRRCHR): Add. | |
982 | ||
97dc9fc0 GP |
983 | 2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
984 | ||
985 | * fixinc/gnu-regex.c: Rename EGCS LOCAL markers to GCC LOCAL. | |
986 | ||
2e09e75a JM |
987 | 2000-11-09 Joseph S. Myers <jsm28@cam.ac.uk> |
988 | ||
989 | * calls.c (expand_call, emit_library_call_value_1), collect2.c | |
990 | (scan_prog_file), config/a29k/a29k.c (print_operand), | |
991 | config/sparc/sparc.c (order_regs_for_local_alloc): Use memcpy () | |
992 | instead of bcopy (). | |
993 | * real.h: Use memcmp () instead of bcmp (). | |
994 | * config/m88k/m88k.c (m88k_layout_frame), config/sh/sh.c | |
995 | (split_branches), config/sparc/sparc.c (ultra_flush_pipeline, | |
996 | ultrasparc_sched_init, ultrasparc_sched_reorder), | |
997 | config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Use memset () | |
998 | instead of bzero (). | |
999 | * config/vax/xm-xms.h (FILE_NAME_NONDIRECTORY): Use strrchr () | |
1000 | instead of rindex (). | |
1001 | * configure.in: Don't check for bzero, bcmp, index or rindex. | |
1002 | * configure, config.in: Regenerate. | |
1003 | * system.h: Don't include declarations for bzero, bcmp, index or | |
1004 | rindex. | |
1005 | * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Don't define | |
1006 | bzero, bcmp, index or rindex. | |
1007 | ||
03fb4780 CF |
1008 | Wed Nov 8 21:58:20 2000 Christopher Faylor <cgf@cygnus.com> |
1009 | ||
1010 | * config/i386/cygwin.h: Add -no-win32 switch. Separate -mno-cygwin | |
1011 | include and library paths from -mcygwin case. Parameterize some | |
1012 | declarations to avoid warnings. Use standard locations for include and | |
1013 | lib dirs. | |
1014 | ||
ca68ea18 NC |
1015 | 2000-11-08 Nick Clifton <nickc@redhat.com> |
1016 | ||
1017 | * config/arm/arm.md (mulsidi3adddi): Change output operand | |
eb68ad7c | 1018 | constraint from "=&" to "+&". |
ca68ea18 | 1019 | (umulsidi3adddi): Change output operand constraint from "=&" to |
eb68ad7c | 1020 | "+&". |
ca68ea18 | 1021 | |
c32e1e6f RH |
1022 | 2000-11-08 Richard Henderson <rth@redhat.com> |
1023 | ||
1024 | * flow.c (init_propagate_block_info): Protect the rtx stored in | |
1025 | mem_set_list from modification by find_auto_inc. | |
1026 | (mark_set_1): Likewise. | |
1027 | ||
adb84b42 NB |
1028 | 2000-11-08 Neil Booth <neilb@earthling.net> |
1029 | ||
a8a05998 ZW |
1030 | Move directive handling into the lexer itself. |
1031 | ||
1032 | * cpplex.c (_cpp_lex_token): Handle directives directly. | |
1033 | In the case of a directive interrupting a function-like | |
1034 | macro invocation, use extra_char since read_ahead is | |
1035 | used to store the '#'. Return a CPP_EOF in this case. | |
1036 | * cppmacro.c (parse_arg): No need to handle CPP_DHASH any more. | |
1037 | (cpp_get_token): Don't handle directives here. | |
1038 | * cpplib.h: Remove CPP_DHASH token type. | |
adb84b42 | 1039 | |
756d6f0c JH |
1040 | Wed Nov 8 21:53:41 MET 2000 Jan Hubicka <jh@suse.cz> |
1041 | ||
1042 | * regmove.c (combine_stack_adjustments_for_blocks): Recognize pushes | |
1043 | formed using PRE_MODIFY too. | |
1044 | ||
c39c0db3 MM |
1045 | 2000-11-08 Mark Mitchell <mark@codesourcery.com> |
1046 | ||
69908851 MM |
1047 | * c-tree.texi (VAR_DECL): Describe representation of GCC's |
1048 | extension for placing variables in particular registers. | |
1049 | ||
c39c0db3 MM |
1050 | * c-tree.texi (FUNCTION_TYPE): Clarify TYPE_ARG_TYPES for |
1051 | unprototyped C functions with no parameters. | |
1052 | ||
6cada0cd JJ |
1053 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
1054 | ||
1055 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Cast DELTA to int | |
1056 | before passing to fprintf. | |
1057 | ||
768f0669 JJ |
1058 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
1059 | ||
1060 | * function.c (expand_function_start): Cast GET_MODE_SIZE to | |
1061 | HOST_WIDE_INT before negating it. | |
1062 | ||
df6018fd JJ |
1063 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
1064 | ||
1065 | * expr.c (expand_expr) [ADDR_EXPR]: Handle when op0 is RETURN_DECL | |
1066 | passed in multiple non-contiguous locations. | |
1067 | ||
14ae1d50 | 1068 | 2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
a8a05998 | 1069 | |
14ae1d50 GP |
1070 | * README.gnat: Remove file. |
1071 | ||
673887d5 AO |
1072 | 2000-11-08 Alexandre Oliva <aoliva@redhat.com> |
1073 | ||
1074 | * mklibgcc.in (EXTRA_MULTILIB_PARTS): Generate multilib parts | |
1075 | in-place. | |
1076 | ||
66234570 RH |
1077 | 2000-11-07 Richard Henderson <rth@redhat.com> |
1078 | ||
1079 | * dwarfout.c (INSN_LABEL_FMT): Remove. | |
1080 | (output_label_die): Use ASM_GENERATE_INTERNAL_LABEL. | |
1081 | (dwarfout_label): Remove. | |
1082 | * dwarfout.h: Remove it's prototype. | |
1083 | * dwarf2out.c (INSN_LABEL_FMT): Remove. | |
1084 | (gen_label_die): Use ASM_GENERATE_INTERNAL_LABEL. | |
1085 | (dwarf2out_label): Remove. | |
1086 | * dwarf2out.h: Remove it's prototype. | |
1087 | * final.c (final_scan_insn): Don't call dwarf[2]out_label. | |
1088 | ||
81b75d96 RH |
1089 | 2000-11-07 Richard Henderson <rth@redhat.com> |
1090 | ||
cd5c4048 RH |
1091 | * config/ia64/fde-glibc.c (find_fde_for_dso): Do a binary |
1092 | search on the unwind region section. | |
1093 | ||
1094 | * config/ia64/ia64.md (movbi): Add r/r alternative. | |
1095 | (cmovdi_internal_astep): Describe all combinations of register | |
1096 | classes for sources & destinations; remove matching constraints. | |
1097 | (cmovdi_internal): Likewise. | |
1098 | ||
81b75d96 RH |
1099 | * gcc.c (default_compilers) [@cpp-output]: Add -fpreprocessed. |
1100 | ||
6dbaddf9 RH |
1101 | 2000-11-07 Richard Henderson <rth@redhat.com> |
1102 | ||
1103 | * c-lang.c (start_cdtor, finish_cdtor): New functions. | |
1104 | (finish_file): Use them in building constructor/destructor functions. | |
1105 | ||
a8a05998 | 1106 | * config/alpha/alpha.h (HAS_INIT_SECTION, LD_INIT_SWITCH, |
6dbaddf9 RH |
1107 | LD_FINI_SWITCH): Move ... |
1108 | * config/alpha/osf.h: ... here. | |
1109 | * config/alpha/alpha-interix.h: Don't undef them. | |
1110 | ||
99b13084 JO |
1111 | 2000-11-07 Jeffrey Oldham <oldham@oz.codesourcery.com> |
1112 | ||
1113 | * config/mips/t-iris6 (FPBIT): New. Added so that __unorddf2 is | |
1114 | included in libgcc.a. | |
1115 | (DPBIT): Likewise. | |
1116 | (dp-bit.c): Likewise. | |
1117 | (fp-bit.c): Likewise. | |
1118 | ||
d7cac874 NC |
1119 | 2000-11-07 Nick Clifton <nickc@redhat.com> |
1120 | ||
1121 | * config/m88k/m88k.h (GLOBAL_ASM_OP): Add missing tab. | |
1122 | (INTERNAL_ASM_OP): Add missing tab. | |
1123 | ||
961192e1 JM |
1124 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
1125 | ||
1126 | * alias.c (init_alias_analysis), calls.c (expand_call, | |
1127 | emit_library_call_value_1), combine.c (init_reg_last_arrays), | |
1128 | cse.c (new_basic_block), dbxout.c (dbxout_type), diagnostic.c | |
1129 | (init_output_buffer, set_diagnostic_context), dwarf2out.c | |
1130 | (equate_decl_number_to_die, build_abbrev_table), emit-rtl.c | |
1131 | (init_emit_once), fold-const.c (mul_double, div_and_round_double), | |
1132 | function.c (assign_parms), gcse.c (compute_can_copy, | |
1133 | alloc_gcse_mem, alloc_reg_set_mem, record_one_set, | |
1134 | compute_hash_table, compute_set_hash_table, | |
1135 | compute_expr_hash_table), genattrtab.c (optimize_attrs), global.c | |
1136 | (global_alloc, global_conflicts), haifa-sched.c (compute_trg_info, | |
1137 | clear_units, schedule_block), integrate.c (initialize_for_inline, | |
1138 | expand_inline_function), jump.c (thread_jumps), local-alloc.c | |
1139 | (local_alloc), loop.c (combine_movables, count_loop_regs_set, | |
1140 | load_mems_and_recount_loop_regs_set), print-tree.c (debug_tree), | |
1141 | regclass.c (init_reg_sets, init_reg_sets_1, regclass, | |
1142 | record_reg_classes, allocate_reg_info), reload.c | |
1143 | (get_secondary_mem, remove_address_replacements, find_reloads), | |
1144 | reload1.c (reload, set_initial_label_offsets, finish_spills, | |
1145 | reload_as_needed, choose_reload_regs_init, | |
1146 | reload_cse_simplify_operands), reorg.c (dbr_schedule), sbitmap.c | |
1147 | (sbitmap_zero), simplify-rtx.c (simplify_plus_minus), ssa.c | |
1148 | (rename_registers), stmt.c (expand_end_case), unroll.c | |
1149 | (unroll_loop), varray.c (varray_grow), objc/objc-act.c: Use memset | |
1150 | () instead of bzero (). | |
1151 | ||
e3cc3581 NB |
1152 | 2000-11-07 Neil Booth <neilb@earthling.net> |
1153 | ||
1154 | * cp/lang-specs.h: Fix -save-temps specs under USE_CPPLIB. | |
1155 | ||
f8136648 KG |
1156 | 2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1157 | ||
1158 | * c-common.c (combine_strings): Only warn about long strings for C. | |
1159 | ||
71fd5a51 R |
1160 | Tue Nov 7 19:44:30 2000 J"orn Rennecke <amylaar@redhat.com> |
1161 | ||
1162 | * combine.c (distribute_notes): Fix typo in last change. | |
1163 | ||
bdaa0181 GK |
1164 | 2000-11-07 Geoff Keating <geoffk@redhat.com> |
1165 | ||
1166 | * config/rs6000/rs6000.md (movdi_internal32+1): Use | |
1167 | operand_subreg_force rather than gen_rtx_SUBREG. | |
1168 | (movdi_internal32+2): Likewise. | |
1169 | ||
bc56a125 PB |
1170 | 2000-11-07 Philip Blundell <philb@gnu.org> |
1171 | ||
1172 | * configure.in (arm*-*-linuxaout*): Obsolete, deleted. | |
1173 | * config/arm/linux-aout.h: Likewise. | |
1174 | * configure: Regenerate. | |
1175 | ||
a71d3613 PT |
1176 | 2000-11-07 Philipp Thomas <pthomas@suse.de> |
1177 | ||
1178 | * ABOUT-GCC-NLS: Remove the patch for gettext as it has been | |
1179 | accepted my the gettext maintainer. | |
1180 | ||
26a87cab KG |
1181 | 2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1182 | ||
1183 | * builtins.c (expand_builtin_strpbrk): New function. | |
1184 | (expand_builtin): Handle BUILT_IN_STRPBRK. | |
1185 | ||
1186 | * builtins.def (BUILT_IN_STRPBRK): New entry. | |
1187 | ||
1188 | * c-common.c (c_common_nodes_and_builtins): Declare builtin | |
1189 | strpbrk. | |
1190 | ||
ace54f91 DB |
1191 | 2000-11-07 David O'Brien <obrien@dragon.nuxi.com> |
1192 | ||
1193 | * config/alpha/freebsd.h: New file -- FreeBSD/alpha architecture file. | |
1194 | * POTFILES.in: Add config/alpha/freebsd.h | |
1195 | * configure.in: Add alpha*-freebsd support. | |
1196 | * configure: Regenerate. | |
1197 | ||
0dec5df9 JM |
1198 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
1199 | ||
1200 | * tree.c (build_common_tree_nodes_2): Make va_list_type_node be a | |
1201 | copy of ptr_type_node rather than ptr_type_node itself. | |
1202 | ||
bf103ec2 R |
1203 | Tue Nov 7 06:29:24 2000 J"orn Rennecke <amylaar@redhat.com> |
1204 | ||
1205 | * combine.c (recog_for_combine): Allocate uninitialized vector with | |
1206 | rtvec_alloc. | |
1207 | * recog.c (apply_change_group): Likewise. | |
1208 | ||
c762163e R |
1209 | Tue Nov 7 06:24:02 2000 J"orn Rennecke <amylaar@redhat.com> |
1210 | ||
1211 | * flow.c (verify_local_live_at_start): Back out last change. | |
1212 | * combine.c (distribute_notes): When parts of a hard reg are | |
1213 | neither set nor referenced in PLACE, search backwards for a | |
1214 | place to put a REG_UNUSED note; if none found, ask for flow | |
1215 | info refresh. | |
1216 | ||
f34c06e5 R |
1217 | Mon Nov 6 20:08:13 2000 J"orn Rennecke <amylaar@redhat.com> |
1218 | ||
1219 | * reload1.c (eliminate_regs_in_insn): Allow a set to be a PARALLEL | |
1220 | with (clobber (match_scratch...)). | |
1221 | ||
2b892489 NB |
1222 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1223 | ||
1224 | * c-lex.c (init_c_lex): If cpp_start_read fails, exit with | |
1225 | error status. | |
1226 | ||
ea33bfc5 NB |
1227 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1228 | ||
a8a05998 | 1229 | * tradcpp.c (special_symbol): Assign an null string rather |
ea33bfc5 NB |
1230 | than writing to an unallocated buffer. |
1231 | ||
56051c0a NB |
1232 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1233 | ||
1234 | * cpplex.c (_cpp_equiv_tokens): Check arg_no in the | |
1235 | CPP_MACRO_ARG case. | |
1236 | ||
6c53ebff NB |
1237 | 2000-11-06 Neil Booth <neilb@earthling.net> |
1238 | ||
1239 | * c-lex.c (c_lex): Replace tok.val.aux with tok.val.c or | |
1240 | tok.val.arg_no as appropriate. | |
1241 | * cppexp.c (lex): Similarly. | |
1242 | * cpplex.c (_cpp_lex_token, cpp_spell_token, cpp_output_token, | |
1243 | cpp_equiv_tokens, cpp_can_paste, cpp_avoid_paste): Similarly. | |
1244 | * cppmacro.c (stringify_arg, replace_args, lex_expansion_token, | |
1245 | cpp_macro_definition): Similarly. | |
1246 | * cpplib.h (struct cpp_token): Replace aux with c and arg_no. | |
1247 | ||
8b1c5fd0 JJ |
1248 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
1249 | ||
1250 | * config/sparc/sparc.md (adddi3): If operands[2] is 4096 and | |
1251 | operands[1] is constant, calculate the sum and generate movdi. | |
1252 | (addsi3): Similarly. Use SImode in call to arith_4096_operand. | |
1253 | (subsi3): Use SImode in call to arith_4096_operand. | |
1254 | ||
a0115140 JJ |
1255 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
1256 | ||
1257 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): On sparc64 we need to | |
1258 | adjust %o1, not %o0 if the return type is large structure. | |
1259 | ||
9ea2bda9 JJ |
1260 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
1261 | ||
1262 | * config/sparc/sparc.md (smulsi3_highpart_v8plus, ashldi3_v8plus+1, | |
1263 | update_return, flush, flushdi, ffssi2, ffsdi2): Fix output formatting. | |
1264 | ||
1cf7847f DC |
1265 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
1266 | ||
1267 | * expmed.c (expand_divmod): For signed divide by 2, prefer | |
1268 | a branch and fewer shifts if branches are very cheap. | |
1269 | ||
436a88a6 JM |
1270 | 2000-11-05 Joseph S. Myers <jsm28@cam.ac.uk> |
1271 | ||
1272 | * Makefile.in: Remove all targets related to building | |
1273 | distributions and diffs, or INSTALL. | |
1274 | * INSTALL, install1.texi: Remove. | |
1275 | * configure.in: Remove mention of distdir. | |
1276 | * configure: Regenerate. | |
1277 | * objc/Make-lang.in: Remove mention of distdir. | |
1278 | ||
9cf11a47 NB |
1279 | 2000-11-04 Neil Booth <neilb@earthling.net> |
1280 | ||
1281 | * cpp.texi: Update for _Pragma. | |
1282 | ||
f148ca88 JM |
1283 | 2000-11-04 Joseph S. Myers <jsm28@cam.ac.uk> |
1284 | ||
1285 | * gcc.texi (Contributing): Update URL for projects web page. | |
1286 | ||
16eb2788 NB |
1287 | 2000-11-04 Neil Booth <neilb@earthling.net> |
1288 | ||
a8a05998 ZW |
1289 | * cpplex.c (parse_string): Don't allow multiline strings in |
1290 | #include family directives. | |
16eb2788 | 1291 | |
9232b7d9 NB |
1292 | 2000-11-04 Neil Booth <neilb@earthling.net> |
1293 | ||
1294 | * cpplib.c (do_line): Only warn pedantically if not reading | |
a8a05998 | 1295 | preprocessed input. |
9232b7d9 | 1296 | |
f132f529 AO |
1297 | 2000-11-04 Alexandre Oliva <aoliva@redhat.com> |
1298 | ||
1299 | * calls.c (emit_call_1) [sibcall_pop]: Use n_popped instead of | |
1300 | RETURN_POPS_ARGS(). | |
1301 | ||
0e9295cf ZW |
1302 | 2000-11-03 Zack Weinberg <zack@wolery.stanford.edu> |
1303 | ||
1304 | * builtins.c (expand_builtin_strlen): Remove unused mode | |
1305 | argument. | |
1306 | * gcc.c (process_command): Remove unused variable. | |
1307 | * fold-const.c: Include expr.h. | |
1308 | * recog.c: Include reload.h. | |
1309 | * Makefile.in (recog.o, fold-const.o): Update deps. | |
1310 | ||
f2682362 GK |
1311 | 2000-11-02 Geoffrey Keating <geoffk@cygnus.com> |
1312 | ||
1313 | * fixinc/gnu-regex.c: Change 'CYGNUS LOCAL' to 'EGCS LOCAL'. | |
1314 | ||
25f80eae MM |
1315 | Fri Nov 3 13:41:04 2000 Mark P Mitchell <mark@codesourcery.com> |
1316 | ||
1317 | * config/mips/iris6.h (SUBTARGET_CC1_SPEC): Remove -static | |
1318 | handling. | |
1319 | (STARTFILE_SPEC): Likewise. | |
1320 | (LINK_SPEC): Likewise. | |
1321 | ||
426159a4 KG |
1322 | 2000-11-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1323 | ||
1324 | * Makefile.in (fold-const.o): Depend on $(GGC_H), not ggc.h. | |
1325 | (toplev.o): Likewise for $(LOOP_H)/loop.h and $(REGS_H)/regs.h. | |
1326 | (simplify-rtx.o): Likewise for $(GGC_H)/ggc.h. | |
1327 | ||
da61dec9 JM |
1328 | 2000-11-03 Joseph S. Myers <jsm28@cam.ac.uk> |
1329 | ||
1330 | * c-decl.c (duplicate_decls, copy_lang_decl), dwarfout.c | |
1331 | (dwarfout_line), gcc.c (main, save_string), tree.c (init_obstacks, | |
1332 | perm_calloc, get_identifier, maybe_get_identifier, | |
1333 | real_value_from_int_cst, simple_cst_equal), varasm.c | |
1334 | (assemble_name, assemble_real, immed_real_const_1, | |
1335 | compare_constant_1, decode_rtx_const, output_constant_pool): Use | |
1336 | strrchr () instead of rindex (). Use memcmp () instead of bcmp | |
1337 | (). Use memcpy () instead of bcopy (). Use memset () instead of | |
1338 | bzero (). | |
1339 | ||
def3263a NS |
1340 | 2000-11-03 Nathan Sidwell <nathan@codesourcery.com> |
1341 | ||
1342 | * cppfiles.c (open_file): If already read, then don't reopen. | |
1343 | Immediately close an empty file. | |
1344 | ||
94e9dc13 BS |
1345 | 2000-11-01 Bernd Schmidt <bernds@redhat.co.uk> |
1346 | ||
1347 | * expr.h (fold_builtin): Move declaration... | |
1348 | * tree.h (fold_builtin): ... here. | |
1349 | ||
6c6a14b5 R |
1350 | Fri Nov 3 05:41:07 2000 J"orn Rennecke <amylaar@redhat.com> |
1351 | ||
1352 | * flow.c (verify_local_live_at_start): Allow hard regs to die. | |
1353 | ||
5b569332 NB |
1354 | 2000-11-02 Neil Booth <neilb@earthling.net> |
1355 | ||
1356 | config: | |
1357 | * a29k/a29k.h, a29k/unix.h, a29k/vx29k.h, | |
1358 | alpha/alpha-interix.h, alpha/alpha.h, alpha/linux.h, | |
1359 | alpha/openbsd.h, alpha/osf.h, alpha/vms.h, alpha/vxworks.h, | |
1360 | alpha/win-nt.h, arc/arc.h, arm/arm.h, arm/conix-elf.h, | |
1361 | arm/linux-aout.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h, | |
1362 | arm/riscix1-1.h, arm/semiaof.h, arm/unknown-elf-oabi.h, arm/vxarm.h, | |
1363 | c4x/rtems.h, clipper/clix.h, convex/convex.h, d30v/d30v.h, | |
1364 | elxsi/elxsi.h, fr30/fr30.h, h8300/h8300.h, i370/linux.h, i370/mvs.h, | |
1365 | i370/oe.h, i386/386bsd.h, i386/aix386ng.h, i386/beos-elf.h, | |
1366 | i386/bsd386.h, i386/crtdll.h, i386/cygwin.h, i386/dgux.h, | |
1367 | i386/djgpp-rtems.h, i386/djgpp.h, i386/freebsd-aout.h, i386/freebsd.h, | |
1368 | i386/gnu.h, i386/i386-interix.h, i386/i386.h, i386/linux-aout.h, | |
1369 | i386/linux-oldld.h, i386/linux.h, i386/lynx-ng.h, i386/lynx.h, | |
1370 | i386/mach.h, i386/mingw32.h, i386/moss.h, i386/netbsd.h, | |
1371 | i386/netware.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h, | |
1372 | i386/osfelf.h, i386/osfrose.h, i386/ptx4-i.h, i386/rtems.h, | |
1373 | i386/rtemself.h, i386/sco.h, i386/sco4.h, i386/sco4dbx.h, i386/sco5.h, | |
1374 | i386/scodbx.h, i386/sequent.h, i386/sol2.h, i386/sun.h, i386/sysv3.h, | |
1375 | i386/sysv4.h, i386/uwin.h, i386/vsta.h, i386/vxi386.h, i386/win-nt.h, | |
1376 | i386/win32.h, i860/fx2800.h, i860/i860.h, i860/mach.h, i860/sysv3.h, | |
1377 | i860/sysv4.h, i960/i960.h, i960/rtems.h, i960/vx960-coff.h, | |
1378 | ia64/ia64.h, ia64/linux.h, m32r/m32r.h, m68k/3b1.h, m68k/3b1g.h, | |
1379 | m68k/a-ux.h, m68k/altos3068.h, m68k/amix.h, m68k/apollo68.h, | |
1380 | m68k/crds.h, m68k/ctix.h, m68k/dpx2.h, m68k/hp2bsd.h, m68k/hp320.h, | |
1381 | m68k/hp3bsd.h, m68k/hp3bsd44.h, m68k/isi.h, m68k/linux-aout.h, | |
1382 | m68k/linux.h, m68k/lynx-ng.h, m68k/lynx.h, m68k/m68kemb.h, | |
1383 | m68k/m68kv4.h, m68k/mot3300.h, m68k/netbsd.h, m68k/news.h, | |
1384 | m68k/next.h, m68k/openbsd.h, m68k/pbb.h, m68k/plexus.h, m68k/rtems.h, | |
1385 | m68k/rtemself.h, m68k/sun2.h, m68k/sun3.h, m68k/sun3mach.h, | |
1386 | m68k/tower-as.h, m68k/tower.h, m68k/vxm68k.h, m88k/dgux.h, | |
1387 | m88k/dolph.h, m88k/luna.h, m88k/m88k-aout.h, m88k/m88k-coff.h, | |
1388 | m88k/openbsd.h, m88k/sysv3.h, m88k/sysv4.h, mips/bsd-4.h, | |
1389 | mips/bsd-5.h, mips/dec-bsd.h, mips/dec-osf1.h, mips/gnu.h, | |
1390 | mips/iris3.h, mips/iris5.h, mips/iris6.h, mips/linux.h, mips/mips.h, | |
1391 | mips/netbsd.h, mips/news4.h, mips/news5.h, mips/nws3250v4.h, | |
1392 | mips/openbsd.h, mips/osfrose.h, mips/rtems64.h, mips/sni-svr4.h, | |
1393 | mips/svr3-4.h, mips/svr3-5.h, mips/svr4-4.h, mips/svr4-5.h, | |
1394 | mips/ultrix.h, ns32k/encore.h, ns32k/merlin.h, ns32k/netbsd.h, | |
1395 | ns32k/ns32k.h, ns32k/pc532-mach.h, ns32k/pc532.h, ns32k/sequent.h, | |
1396 | ns32k/tek6000.h, ns32k/tek6100.h, ns32k/tek6200.h, pa/pa-hiux.h, | |
1397 | pa/pa-hpux.h, pa/pa-hpux7.h, pa/pa-linux.h, pa/pa-osf.h, | |
1398 | pa/pa-pro-end.h, pa/pa.h, pa/rtems.h, pj/linux.h, pj/pj.h, | |
1399 | romp/romp.h, rs6000/aix.h, rs6000/aix31.h, rs6000/aix41.h, | |
1400 | rs6000/aix43.h, rs6000/beos.h, rs6000/eabi.h, rs6000/eabisim.h, | |
1401 | rs6000/linux.h, rs6000/lynx.h, rs6000/mach.h, rs6000/rtems.h, | |
1402 | rs6000/sysv4.h, rs6000/vxppc.h, sh/elf.h, sh/linux.h, sh/rtems.h, | |
1403 | sh/rtemself.h, sh/sh.h, sparc/aout.h, sparc/elf.h, sparc/linux-aout.h, | |
1404 | sparc/linux.h, sparc/linux64.h, sparc/lite.h, sparc/litecoff.h, | |
1405 | sparc/liteelf.h, sparc/lynx-ng.h, sparc/lynx.h, sparc/netbsd.h, | |
1406 | sparc/openbsd.h, sparc/pbd.h, sparc/rtems.h, sparc/rtemself.h, | |
1407 | sparc/sol2-sld-64.h, sparc/sol2.h, sparc/sp64-aout.h, | |
1408 | sparc/sp64-elf.h, sparc/sp86x-aout.h, sparc/sp86x-elf.h, | |
1409 | sparc/sparc.h, sparc/sysv4.h, sparc/vxsim.h, sparc/vxsparc.h, | |
1410 | v850/rtems.h, vax/netbsd.h, vax/openbsd.h, vax/ultrix.h, vax/vax.h, | |
1411 | vax/vaxv.h, vax/vms.h, we32k/we32k.h | |
a8a05998 | 1412 | |
5b569332 NB |
1413 | Replace -A() with -A=, the new assertion syntax. |
1414 | ||
03afaf36 R |
1415 | Thu Nov 2 21:52:35 2000 J"orn Rennecke <amylaar@redhat.com> |
1416 | ||
1417 | * combine.c (distribute_notes): Use rtx_equal_p to check elim_i2 / | |
1418 | elim_i1. | |
1419 | In REG_DEAD handling: When handling parts of multi-hard-reg hard | |
1420 | registers, increment the loop counter by the size of the parts; | |
1421 | use recursion to handle individual parts. | |
1422 | ||
04e3be98 NB |
1423 | 2000-11-02 Neil Booth <neilb@earthling.net> |
1424 | ||
1425 | * configure.in: Make integrated CPP the default. | |
1426 | * configure: Regenerate. | |
1427 | ||
0192d704 R |
1428 | Thu Nov 2 19:20:12 2000 J"orn Rennecke <amylaar@redhat.com> |
1429 | ||
1430 | * reload.c (find_equiv_reg): Test all hard registers for membership | |
1431 | in the requested class. | |
1432 | ||
9473c522 JM |
1433 | 2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk> |
1434 | ||
1435 | * collect2.c (main, write_c_file_stat), gcc.c (translate_options, | |
1436 | process_command, main), gcov.c (open_files, output_data), tlink.c | |
1437 | (frob_extension, scan_linker_output), toplev.c | |
1438 | (file_name_nondirectory): Use strchr () and strrchr () instead of | |
1439 | index () and rindex (). | |
1440 | ||
0304bbad JM |
1441 | 2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk> |
1442 | ||
1443 | * c-common.c (get_flag_spec, check_format_info_main, | |
1444 | check_format_types): Use strchr () instead of index (). Compare | |
1445 | against error_mark_node instead of comparing the TREE_CODE against | |
1446 | ERROR_MARK. | |
1447 | ||
23356f93 ZW |
1448 | 2000-11-02 Zack Weinberg <zackw@Stanford.EDU> |
1449 | ||
a8a05998 ZW |
1450 | Integrated CPP. |
1451 | ||
1452 | * c-lex.c (init_c_lex): Update cpp_start_read call. | |
1453 | (cb_ident): Update for new callback prototype. | |
1454 | (cb_def_pragma): Update for new cpp_get_token prototype. | |
1455 | (c_lex): Similarly. Use cpp_get_line. | |
1456 | ||
1457 | * c-parse.in (finish_parse): Update for new cpp_finish | |
1458 | prototype. | |
1459 | ||
1460 | * cp/lex.c (finish_parse): Similarly. | |
23356f93 | 1461 | |
7a099817 GK |
1462 | 2000-11-01 Geoff Keating <geoffk@cygnus.com> |
1463 | ||
1464 | * machmode.def: Add V16QImode. | |
1465 | ||
a97c9600 RH |
1466 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1467 | ||
1468 | * dwarf2out.c (loc_descriptor_from_tree): Check for null result | |
1469 | from rtl_for_decl_location. | |
1470 | (add_location_or_const_value_attribute): Likewise. | |
1471 | ||
a0a9606d NB |
1472 | 2000-11-01 Neil Booth <neilb@earthling.net> |
1473 | ||
a8a05998 ZW |
1474 | * cpplib.c (run_directive): Use correct line number for output |
1475 | of _Pragma. Remember any in-progress directive. | |
1476 | ||
1477 | * gcc.dg/cpp/vararg2.c, gcc.dg/cpp/_Pragm1.c: New tests. | |
a0a9606d | 1478 | |
ba89764a RH |
1479 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1480 | ||
1481 | * stmt.c (expand_start_null_loop): Set continue_label. | |
1482 | ||
b0b3afb2 BS |
1483 | 2000-11-01 Bernd Schmidt <bernds@redhat.co.uk> |
1484 | ||
1485 | * builtins.c (fold_builtin_constant_p, fold_builtin): New functions. | |
1486 | (expand_builtin_constant_p): Move parts of the code into | |
1487 | fold_builtin_constant_p. | |
1488 | (expand_builtin_strlen): Move parts of the code into fold_builtin. | |
1489 | * expr.h (fold_builtin): Declare. | |
1490 | * fold-const.c (fold): Handle builtin calls. | |
1491 | ||
1492 | * c-typeck.c (build_function_call): Call fold on the CALL_EXPR. | |
1493 | ||
f0de0c5d RH |
1494 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1495 | ||
1496 | * stmt.c (expand_start_null_loop): New. | |
a8a05998 | 1497 | (expand_end_null_loop): New. |
f0de0c5d RH |
1498 | * c-semantics.c (genrtl_do_stmt): Use them. |
1499 | * tree.h: Declare them. | |
1500 | ||
3a59c77c RH |
1501 | 2000-11-01 Richard Henderson <rth@redhat.com> |
1502 | ||
1503 | * cppmain.c (scan_buffer): Don't avoid paste for assembly. | |
1504 | ||
12c4f523 NB |
1505 | 2000-11-01 Neil Booth <neilb@earthling.net> |
1506 | ||
1507 | * c-parse.in (_yylex): Remove CPP_BACKSLASH case. | |
1508 | * cp/spew.c: Similarly. | |
1509 | * cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER. | |
1510 | * cppmacro.c (stringify_arg): Similarly. | |
1511 | * cpplib.h (CPP_BACKSLASH): Delete. | |
1512 | ||
78e7629e KG |
1513 | 2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1514 | ||
1515 | * builtins.c (expand_builtin_strstr): New function. | |
1516 | (expand_builtin): Handle BUILT_IN_STRSTR and BUILT_IN_STRCHR. | |
1517 | ||
1518 | * builtins.def (BUILT_IN_STRSTR, BUILT_IN_STRCHR): New entries. | |
1519 | ||
1520 | * c-common.c (c_common_nodes_and_builtins): Declare builtin strstr | |
1521 | and builtin strchr. | |
1522 | ||
32ee391b RH |
1523 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1524 | ||
1525 | * config/i386/i386.c (fcmov_comparison_operator): Check for | |
1526 | CCFPmode or CCFPUmode instead of CCmode. | |
1527 | (ix86_expand_fp_movcc): Call ix86_expand_setcc for most | |
1528 | unordered operations as well. | |
1529 | ||
5f10ef5b RH |
1530 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1531 | ||
1532 | * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead | |
1533 | of integer_zero_node. | |
1534 | ||
d599b81f RH |
1535 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1536 | ||
1537 | * c-semantics.c (genrtl_do_stmt): Special case do/while(0). | |
1538 | ||
1426f761 NC |
1539 | 2000-10-31 Nick Clifton <nickc@redhat.com> |
1540 | ||
1541 | * config/arm/unknown-elf.h (UNIQUE_SECTION_P): Do not allow | |
1542 | -fdata-sections to override the section attribute of a DECL. | |
1543 | ||
a8c0159a CD |
1544 | 2000-10-31 Chris Demetriou <cgd@sibyte.com> |
1545 | ||
1546 | * libgcc2.c (__shtab): Remove __shtab variable. | |
1547 | * libgcc-std.ver (GCC_3.0): Remove __shtab from symbol list. | |
1548 | * Makefile.in (LIB2FUNCS): Remove _shtab from list of library | |
1549 | members. | |
1550 | ||
8215347e JW |
1551 | 2000-10-31 Jim Wilson <wilson@redhat.com> |
1552 | ||
1553 | * defaults.h (ASM_OUTPUT_DEBUG_LABEL): New. | |
1554 | * tm.texi (ASM_OUTPUT_DEBUG_LABEL): Document. | |
1555 | * dwarf2out.c (dwarf2out_begin_block): Use ASM_OUTPUT_DEBUG_LABEL | |
1556 | instead of ASM_OUTPUT_INTERNAL_LABEL. | |
1557 | (dwarf2out_end_block, dwarf2out_label): Likewise. | |
1558 | * final.c (final_scan_insn, case NOTE_INSN_DELETED_LABEL): Likewise | |
1559 | * config/ia64/ia64.h (ASM_OUTPUT_DEBUG_LABEL): Define. | |
a8a05998 | 1560 | |
d8041cc8 RH |
1561 | 2000-10-31 Richard Henderson <rth@redhat.com> |
1562 | ||
1563 | * dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr. | |
1564 | (size_of_locs): Set it. | |
1565 | (output_loc_operands): Use it to compute branch displacement. | |
1566 | (int_loc_descriptor): New. | |
1567 | (mem_loc_descriptor): Dereference memory in the proper size. | |
1568 | Use DW_OP_plus_uconst when possible. Use int_loc_descriptor. | |
1569 | (loc_descriptor_from_tree): New. | |
1570 | (rtl_for_decl_location): Break out from ... | |
1571 | (add_location_or_const_value_attribute): ... here. | |
1572 | (add_bound_info): Use loc_descriptor_from_tree. | |
1573 | ||
86368122 NB |
1574 | 2000-10-31 Neil Booth <neilb@earthling.net> |
1575 | ||
1576 | * cpp.texi: Update for new command line assertion syntax. | |
1577 | * cpplib.c (cpp_define): Simplify a bit. | |
1578 | (cpp_assert, cpp_unassert): Use handle_assertion. | |
1579 | (handle_assertion): New function; accept new command line | |
1580 | syntax with '='. | |
1581 | * testsuite/gcc.dg/cpp/assert3.c: New tests. | |
1582 | ||
e1998242 NB |
1583 | 2000-10-31 Neil Booth <neilb@earthling.net> |
1584 | ||
1585 | * cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if | |
1586 | undefined. Remove #ifdef check. | |
1587 | * config/i386/sol2.h, config/rs6000/sol2.h, config/sparc/sol2.h: | |
1588 | Define STDC_0_IN_SYSTEM_HEADERS to 1. | |
1589 | ||
7e08e190 JH |
1590 | 2000-10-31 Jan Hubicka <jh@suse.cz> |
1591 | Jakub Jelinek <jakub@redhat.com> | |
1592 | ||
1593 | * config/i386/i386.h: Clarify CCNOmode description in comment. | |
1594 | (EXTRA_CC_MODES): Remove CCRCmode. | |
1595 | * config/i386/i386.c (ix86_comparison_operator): Remove CCRCmode. | |
1596 | (put_condition_code, ix86_match_ccmode): Likewise. | |
1597 | (ix86_cc_mode): Likewise. Fix comment. | |
1598 | (ix86_expand_strlensi_unroll_1): *rc patterns are gone. | |
1599 | * config/i386/i386.md: Add unspec 12 description. | |
1600 | (adddi3 split): Use unspec 12 instead of CCRCmode. | |
1601 | (addsi3_carry_rc): Remove. | |
1602 | (addsi3_cc, addqi3_cc): New patterns. | |
1603 | (addsi_3): Swap operands, match CCZmode. | |
1604 | (addsi_4): Rewritten. | |
1605 | (addsi_5): Renamed from addsi_6. | |
1606 | (addsi_6): Removed. | |
1607 | (addhi_3): Swap operands, match CCZmode. | |
1608 | (addhi_4): Rewritten. | |
1609 | (addhi_5): Renamed from addhi_6. | |
1610 | (addhi_6): Removed. | |
1611 | (addqi_3): Swap operands, match CCZmode. | |
1612 | (addqi_4): Rewritten. | |
1613 | (addqi_5): Renamed from addqi_6. Use =q constraint for clobber. | |
1614 | (subsi3_carry_rc): Removed. | |
1615 | (iorqi_3): Use =q constraint for clobber. | |
1616 | (xorqi_cc_2): Likewise. | |
1617 | (negdi2_1 split): Don't use CCRCmode, use ltu instead of gtu. | |
1618 | (x86_movsicc_0_m1_rc): Removed. | |
1619 | (cmp?i peepholes): Remove neg. Use CCGCmode instead of CCRCmode. | |
1620 | ||
93cc1c69 JM |
1621 | 2000-10-31 Joseph S. Myers <jsm28@cam.ac.uk> |
1622 | ||
1623 | * c-typeck.c (build_unary_op): If pedantic, pedwarn for increment | |
1624 | and decrement of complex types. | |
1625 | ||
bcb38cc1 KG |
1626 | 2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1627 | ||
1628 | * builtins.c (expand_builtin_fputs): When deleting NOP calls to | |
1629 | builtin fputs, ensure we still evaluate the stream in case it | |
1630 | has side-effects. | |
1631 | ||
681cb233 JJ |
1632 | 2000-10-31 Jakub Jelinek <jakub@redhat.com> |
1633 | ||
1634 | * expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0) | |
1635 | to expand_shift. | |
1636 | ||
4b9580a5 R |
1637 | Tue Oct 31 15:33:27 2000 J"orn Rennecke <amylaar@redhat.com> |
1638 | ||
1639 | * sh-protos.h (reg_no_subreg_operand, emit_fpscr_use): Don't declare. | |
1640 | (fp_extended_operand, emit_fpscr_use): Likewise. | |
1641 | * sh.c (reg_no_subreg_operand, fp_extended_operand): Delete functions. | |
1642 | (fpul_operand): New function. | |
1643 | * sh.h (PREDICATE_CODES): Remove reg_no_subreg_operand and | |
1644 | fp_extended_operand. Add fpul_operand. | |
1645 | * sh.md (mulsf3, mulsf3_i4): Use fp_arith_reg_operand for "f" operands. | |
1646 | (mulsf3_ie, macsf3, cmpgtsf_t, cmpeqsf_t, ieee_ccmpeqsf_t): Likewise. | |
1647 | (cmpgtsf_t_i4, cmpeqsf_t_i4, ieee_ccmpeqsf_t_4, negsf2): Likewise. | |
1648 | (negsf2_i, sqrtsf2, sqrtsf2_i, abssf2, abssf2_i, adddf3): Likewise. | |
1649 | (adddf3_i, subdf3, subdf3_i, muldf3, muldf3_i, divdf3): Likewise. | |
1650 | (divdf3_i): Likewise. | |
1651 | (floatsisf2): Likewise. Use fpul_operand for 'y' operand. | |
1652 | (floatsisf2_i4, floatsisf2_ie, fix_truncsfsi2): Likewise. | |
1653 | (fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i): Likewise. | |
1654 | (fix_truncdfsi2, fix_truncdfsi2_i, extendsfdf2): Likewise. | |
1655 | (extendsfdf2_i4, truncdfsf2, truncdfsf2_i4): Likewise. | |
1656 | ||
332316cd BS |
1657 | 2000-10-31 Bernd Schmidt <bernds@redhat.co.uk> |
1658 | ||
a8a05998 | 1659 | * config/i386/i386.c (ix86_init_builtins): Correct return type |
332316cd BS |
1660 | building v4hi_ftype_v4hi_int_int tree node. |
1661 | (ix86_expand_builtin): Use correct operand numbers 0 and 1. | |
1662 | Copy operand 0 into a Pmode register, don't generate a MEM rtx. | |
1663 | ||
1664 | * config/i386/i386.md (sse_movntdi): Use mmx register constraint | |
1665 | for operand 1. | |
1666 | (mmx__uavgv8qi3): Correct insn mnemonic. | |
1667 | (mmx_psadbw): Correct insn mnemonic. Use V8QI mode for operands 1 and 2. | |
1668 | (mmx_punpckhwd): Correct insn mnemonic. | |
1669 | (mmx_punpckhdq): Likewise. | |
1670 | (mmx_punpcklwd): Likewise. | |
1671 | (mmx_punpckldq): Likewise. | |
1672 | (prefetch): Use immediare_operand and 'n' constraint for operand 1. | |
1673 | Renumber case labels to match the _mm_prefetch constants defined in | |
1674 | xmmintrin.h. | |
1675 | ||
1d766db0 BS |
1676 | * recog.c (split_all_insns): Don't try to call cleanup_subreg_operands |
1677 | if the splitter didn't emit new insns. | |
1678 | Make sure we call cleanup_subreg_operands even when splitting the last | |
1679 | insn in a basic block. | |
1680 | ||
8bb16620 BS |
1681 | * invoke.texi (Debugging Options): Describe -do. |
1682 | * toplev.c (enum_dump_file_index): New entry DFI_postreload. | |
1683 | (dump_file): Likewise. | |
1684 | (rest_of_compilation): Split .greg dump into .greg and .postreload. | |
1685 | ||
a5c3cccd NB |
1686 | 2000-10-30 Neil Booth <neilb@earthling.net> |
1687 | ||
1688 | * cppfiles.c (stack_include_file): Check for stacked contexts | |
1689 | here. | |
1690 | * cpphash.h (_cpp_do__Pragma): New prototype. | |
1691 | * cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table. | |
1692 | ||
1693 | * cpplex.c (skip_escaped_newlines): Only process trigraphs and | |
1694 | escaped newlines if !(buffer->from_stage3). | |
1695 | (_cpp_lex_token): Warn about missing newlines iff | |
1696 | !buffer->from_stage3. | |
1697 | ||
1698 | * cpplib.c (get__Pragma_string, destringize, | |
1699 | _cpp_do__Pragma): New functions. | |
1700 | (run_directive): Set output_line for _Pragma to avoid line | |
1701 | markers in output. Set from_stage3 and prevent macro expansion | |
1702 | for _Pragma and command-line options. Check buffer exhaustion. | |
1703 | (cpp_push_buffer): Don't check for stacked macro contexts, as | |
1704 | this is perfectly legitimate for _Pragma. Move the check to | |
1705 | stack_include_file instead. Set from_stage3 iff buffer is | |
1706 | preprocessed input. | |
1707 | ||
1708 | * cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments | |
1709 | unsigned. New boolean from_stage3. | |
1710 | (struct spec_nodes): Add n__Pragma. | |
1711 | ||
1712 | * cppmacro.c (enter_macro_context): Flip sense of return value. | |
1713 | (_cpp_get_token): Handle _Pragma operator. | |
1714 | ||
dbdaea41 PE |
1715 | 2000-10-30 Phil Edwards <pme@sources.redhat.com> |
1716 | ||
1717 | * gcc.texi: The C++ standard isn't "draft" anymore. | |
1718 | ||
8a47978d MM |
1719 | 2000-10-30 Mark Mitchell <mark@codesourcery.com> |
1720 | ||
1721 | * cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID. | |
1722 | ||
1641a823 NB |
1723 | 2000-10-29 Neil Booth <neilb@earthling.net> |
1724 | ||
1725 | * cpplib.c (skip_rest_of_line): Use _cpp_get_token. | |
1726 | ||
8c7b74b9 JM |
1727 | 2000-10-29 Joseph S. Myers <jsm28@cam.ac.uk> |
1728 | ||
526aba28 JM |
1729 | * toplev.c, flags.h, fold-const.c, real.c, rtl.c, |
1730 | fixinc/inclhack.def: Change comments mentioning C9X to refer to | |
1731 | C99 instead. | |
1732 | ||
8c7b74b9 JM |
1733 | * invoke.texi: Document that -V will only work for very similar |
1734 | versions of driver and compiler. | |
1735 | ||
44ed91a1 NB |
1736 | 2000-10-29 Neil Booth <neilb@earthling.net> |
1737 | ||
1738 | * cppmacro.c (_cpp_create_definition): Optimize the case of | |
a8a05998 | 1739 | a macro defined to itself. |
44ed91a1 | 1740 | |
3542203b NB |
1741 | 2000-10-29 Neil Booth <neilb@earthling.net> |
1742 | ||
1743 | * cpplex.c (save_comment): Don't store new lines in C++ comments. | |
1744 | ||
6f268adf MH |
1745 | 2000-10-29 Michael Hayes <mhayes@redhat.com> |
1746 | ||
1747 | * integrate.c (copy_insn_list): Copy the unchanging flag for calls. | |
1748 | ||
926c5678 GK |
1749 | 2000-10-28 Geoffrey Keating <geoffk@cygnus.com> |
1750 | ||
1751 | * cpphash.c (cpp_forall_identifiers): Add context variable | |
1752 | for callback routine. | |
1753 | * cppmain.c (dump_macro): Update to match cpp_forall_identifiers | |
1754 | change. | |
1755 | (main): Call cpp_forall_identifiers with null context. | |
1756 | * cpplib.h (cpp_forall_identifiers): Update prototype. | |
1757 | ||
1758 | * cppmain.c: Make `parse_in' and `print' static. | |
1759 | ||
69f4cc4b AM |
1760 | 2000-10-28 Alan Modra <alan@linuxcare.com.au> |
1761 | ||
1762 | * c-decl.c (finish_function): Clear c_function_name_declared_p. | |
1763 | ||
ce73761f RH |
1764 | 2000-10-28 Richard Henderson <rth@redhat.com> |
1765 | ||
1766 | * regrename.c (scan_rtx_address): Frob action, not class, | |
1767 | when trying to disable optimization. | |
1768 | ||
2c21b247 MM |
1769 | 2000-10-28 Mark Mitchell <mark@codesourcery.com> |
1770 | ||
1771 | * c-semantics.c (make_rtl_for_local_static): Don't clobber | |
1772 | DECL_ASSEMBLER_NAME. | |
1773 | ||
8763704d JM |
1774 | 2000-10-28 Joseph S. Myers <jsm28@cam.ac.uk> |
1775 | ||
1776 | * configure.in: Determine and substitute gcc_version_full. | |
1777 | * configure: Regenerate. | |
1778 | * gccbug.in: Use it to give full version. Don't allow | |
1779 | confidential PRs. | |
1780 | ||
85941a0a RH |
1781 | 2000-10-28 Richard Henderson <rth@redhat.com> |
1782 | ||
1783 | * recog.c (split_all_insns): Run cleanup_subreg_operands | |
1784 | after reload. | |
1785 | ||
1786 | * regrename.c (regrename_optimize): Verify that all registers of | |
1787 | a multiple register mode are available. | |
1788 | (scan_rtx_address): Accept the mode of the address; all callers | |
1789 | changed. | |
1790 | ||
1791 | * cpplib.c (run_directive): Fix prototype. | |
1792 | ||
69add2a8 BS |
1793 | 2000-10-28 Bernd Schmidt <bernds@redhat.co.uk> |
1794 | ||
1795 | * reload.c (find_reloads): Distinguish "wins" so that we know whether | |
1796 | a given operand won because of a matching constraint or not; then use | |
1797 | that information to compute goal_alternative_matched properly. | |
4c3a2649 BS |
1798 | * reload1.c (choose_reload_regs): Never set reload_override_in for an |
1799 | optional reload. | |
69add2a8 | 1800 | |
005f39ce BS |
1801 | * config/ia64/ia64.h (RTX_COSTS): A few more entries, and a more |
1802 | accurate value for MULT. | |
55d8cb78 BS |
1803 | * config/ia64/ia64.c (ia64_print_operand): Require probability to be |
1804 | 2% or > 98% before using static branch prediction bits. | |
005f39ce | 1805 | |
93c80368 NB |
1806 | 2000-10-28 Neil Booth <neilb@earthling.net> |
1807 | ||
1808 | New macro expander. | |
a8a05998 | 1809 | |
93c80368 NB |
1810 | * cpplib.c (struct answer): New. |
1811 | (struct if_stack): Use cpp_lexer_pos rather than line and col. | |
1812 | Rename cmacro mi_cmacro. | |
1813 | (struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL, | |
1814 | IN_I): New directive and flags. | |
1815 | (skip_rest_of_line, check_eol, run_directive, glue_header_name, | |
1816 | parse_answer, parse_assertion, find_answer): New functions. | |
1817 | (parse_ifdef, detect_if_not_defined, validate_else): Remove. | |
1818 | (lex_macro_node): New function to replace parse_ifdef and | |
1819 | get_define_node. | |
1820 | ||
1821 | (_cpp_handle_directive): New function, combines _cpp_check_directive | |
1822 | and _cpp_check_linemarker. | |
1823 | ||
1824 | (do_define, do_undef, parse_include, do_include, do_import, | |
1825 | do_include_next, read_line_number, do_line, do_ident, do_pragma, | |
1826 | do_pragma_once, do_pragma_poison, do_pragma_dependency): | |
1827 | Update for new token getting interface. | |
1828 | ||
1829 | (do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional) | |
1830 | : Update for new multiple-include optimisation technique. | |
1831 | (do_elif): Don't forget to invalidate controlling macros. | |
1832 | ||
1833 | (unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update. | |
1834 | (parse_assertion, parse_answer, find_answer, _cpp_test_assertion): | |
1835 | Functions to handle assertions with the new token interface. | |
1836 | (do_assert, do_unassert): Use them. | |
1837 | ||
1838 | (cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert): | |
1839 | Use run_directive. | |
1840 | ||
1841 | (_cpp_init_stacks): Register directive names. Don't register special | |
1842 | nodes. | |
1843 | ||
1844 | * cpperror.c (print_containing_files, _cpp_begin_message): Update to | |
1845 | new position recording regime. | |
1846 | (cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning, | |
1847 | cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line, | |
1848 | cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes. | |
1849 | (cpp_type2name): Move to cpplex.c. | |
1850 | ||
1851 | * cppexp.c (parse_charconst): spec_nodes is no longer a pointer. | |
1852 | (parse_defined): Update to handle new multiple include optimisation | |
1853 | method. Remove poisoned identifier warning. | |
1854 | (parse_assertion, TYPE_NAME): Delete. | |
1855 | (lex): Update for multiple include optimisation, removal of | |
1856 | CPP_DEFINED, to use _cpp_test_assertion for assertions and | |
1857 | cpp_token_as_text. | |
1858 | (_cpp_parse_expr): Update for MI optimisation, and to use op_as_text. | |
1859 | (op_as_text): New function, to wrap cpp_token_as_text. | |
1860 | ||
1861 | * cppfiles.c (stack_include_file, _cpp_pop_file_buffer): | |
1862 | Update for MI optimisation. | |
1863 | (_cpp_execute_include): Take a token rather than 3 arguments. Fix | |
1864 | segfault on diagnostic. | |
1865 | (_cpp_compare_file_date): Take a token rather than 3 args. | |
1866 | (cpp_read_file): Work correctly for zero-length files. | |
1867 | ||
1868 | * cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename | |
1869 | _cpp_init_hashtable and _cpp_cleanup_hashtable. | |
1870 | (cpp_lookup): Place identifiers at front of identifier pool | |
1871 | for _cpp_lookup_with_hash. | |
1872 | (_cpp_lookup_with_hash): Require identifiers to be at the front of | |
1873 | the identifier pool. Commit the memory if not already in the | |
1874 | hash table. | |
1875 | ||
1876 | * cppinit.c (cpp_reader_init): Move cpp_init_completed test to top. | |
1877 | Initialise various members of cpp_reader, memory pools, and the | |
1878 | special nodes. | |
1879 | (cpp_printer_init): Delete. | |
1880 | (cpp_cleanup): Update. | |
1881 | (struct builtin, builtin_array, initialize_builtins): Update for new | |
1882 | hashnode definition and builtin handling. | |
1883 | (cpp_start_read, cpp_finish): Don't take or initialise a | |
1884 | printer. Update. | |
1885 | ||
1886 | * cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL, | |
1887 | PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE, | |
1888 | T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL, | |
1889 | T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete. | |
1890 | (struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos, | |
1891 | struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind, | |
1892 | NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos, | |
1893 | struct toklist, struct cpp_context, struct specnodes, | |
1894 | TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED, | |
1895 | NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION, | |
1896 | enum builtin_type, cpp_can_paste): New. | |
1897 | (struct cpp_token): Delete line and col members. | |
1898 | (struct cpp_buffer): New member output_lineno. | |
1899 | (struct lexer_state): Delete indented, in_lex_line, seen_dot. | |
1900 | Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args. | |
1901 | (struct cpp_reader): New members lexer_pos, macro_pos, directive_pos, | |
1902 | ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool, | |
1903 | base_context, context, directive, mi_state, mi_if_not_defined, | |
1904 | mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused, | |
1905 | mlstring_pos, macro_buffer, macro_buffer_len. | |
1906 | Delete members mls_line, mls_column, token_list, potential_control_macro, | |
1907 | temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token, | |
1908 | context_cap, cur_context, no_expand_level, paste_level, contexts, args, | |
1909 | save_parameter_spellings, need_newline, . | |
1910 | Change type of date, time and spec_nodes members. | |
1911 | Change prototypes for include and ident callbacks. | |
1912 | (struct cpp_hashnode): Change type of name. Remove union members | |
1913 | expansion and code. Add members macro, operator and builtin. | |
1914 | ||
1915 | (cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read, | |
1916 | cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line, | |
1917 | cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead, | |
1918 | cpp_stop_lookahead): New prototypes. | |
1919 | (cpp_printer_init, cpp_dump_definition): Delete prototypes. | |
1920 | ||
1921 | (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs): | |
1922 | Move from cpphash.h. | |
1923 | ||
1924 | * cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, | |
1925 | ufputs): Move to cpplib.h. | |
1926 | (enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL, | |
1927 | TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION, | |
1928 | COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler, | |
1929 | struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens, | |
1930 | _cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist, | |
1931 | _cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space, | |
1932 | _cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive, | |
1933 | _cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name, | |
1934 | _cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker, | |
1935 | _cpp_parse_assertion, _cpp_find_answer): Delete. | |
1936 | (VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE, | |
1937 | POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool, | |
1938 | _cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk, | |
1939 | _cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion, | |
1940 | _cpp_handle_directive, DSC): New. | |
1941 | (struct include_file): New member defined. | |
1942 | ||
1943 | (DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include, | |
1944 | _cpp_compare_file_date): Update. | |
1945 | (_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New. | |
1946 | (_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable, | |
1947 | _cpp_cleanup_hashtable. | |
1948 | ||
1949 | * Makefile.in: Remove cppoutput.c. | |
a8a05998 | 1950 | |
93c80368 NB |
1951 | * cppoutput.c: Delete |
1952 | ||
1953 | * fixheader.c (read_scan_file): Update for new cpp_get_token | |
1954 | prototype. | |
1955 | (recognized_function): New argument LINE. | |
1956 | ||
1957 | * scan-decls.c (skip_to_closing_brace, scan_decls): Update for | |
1958 | new cpp_get_token prototype. | |
1959 | ||
1960 | * scan.h (recognized_function): Update prototype. | |
1961 | ||
1962 | * po/POTFILES.in: Remove cppoutput.c. | |
a8a05998 | 1963 | |
229a2e65 MM |
1964 | 2000-10-27 Mark Mitchell <mark@codesourcery.com> |
1965 | ||
1966 | * c-typeck.c (check_init_type_bitfields): Remove. | |
1967 | (constructor_incremental): Likewise. | |
1968 | (struct constructor_stack): Remove incremental bit. | |
1969 | (struct initializer_stack): Likewise. | |
1970 | (start_init): Don't play with constructor_incremental. | |
1971 | (finish_init): Likewise. | |
1972 | (really_start_incremental_init): Likewise. | |
1973 | (push_init_level): Likewise. | |
1974 | (pop_init_level): Likewise. | |
1975 | (output_init_level): Likewise. | |
1976 | (output_pending_init_elements): Likewise. | |
1977 | ||
63eb1269 MC |
1978 | 2000-10-21 Mike Coleman <mcoleman2@kc.rr.com> |
1979 | ||
1980 | * c-pragma.c (handle_pragma_pack): Initialize align to -1. | |
a8a05998 | 1981 | Improve error messages. Correct parsing of |
63eb1269 MC |
1982 | #pragma pack(pop [,id]). Do not check the user-supplied |
1983 | alignment if we're popping. | |
1984 | ||
1985 | * gcc.dg/pack-test-1.c: New test case. | |
1986 | * gcc.dg/pack-test-2.c: New test case. | |
1987 | * gcc.dg/pack-test-1.h: New file. | |
1988 | ||
ae2eceaa NB |
1989 | 2000-10-27 Neil Booth <neilb@earthling.net> |
1990 | ||
1991 | * cpp.texi: Update. | |
1992 | ||
04e149ab KC |
1993 | 2000-10-27 Kelley Cook <kelley.cook@home.com> |
1994 | ||
1995 | * invoke.texi: Document -mintel-syntax | |
1996 | ||
2b2a8f1f RH |
1997 | 2000-10-27 Richard Henderson <rth@redhat.com> |
1998 | ||
1999 | * invoke.texi: Document -frename-registers. Add it to -O3. | |
2000 | * toplev.c (rest_of_compilation): Run regrename before ifcvt2. | |
2001 | (enum dump_file_index, dump_file): Update order. | |
2002 | (main): Set flag_rename_registers at -O3. | |
2003 | ||
10c9f189 RH |
2004 | 2000-10-27 Richard Henderson <rth@redhat.com> |
2005 | ||
93c89ab3 RH |
2006 | * config/alpha/alpha.h (enum reg_class): Add PV_REG. |
2007 | (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update. | |
2008 | (REG_CLASS_FROM_LETTER): Assign it to 'c'. | |
2009 | * config/alpha/alpha.md (call_osf_1): Use it. | |
2010 | (call_value_osf_1): Likewise. | |
2011 | ||
10c9f189 RH |
2012 | * config/ia64/ia64.c: Revert 10-23 patch. |
2013 | (ia64_hard_regno_rename_ok): New. | |
2014 | * config/ia64/ia64-protos.h: Declare it. | |
2015 | * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it. | |
2016 | ||
541f7d56 BS |
2017 | 2000-10-27 Bernd Schmidt <bernds@redhat.co.uk> |
2018 | Richard Henderson <rth@redhat.com> | |
2019 | ||
a8a05998 ZW |
2020 | * regrename.c: Rewrite to handle multi-register modes and |
2021 | cond_exec instructions. | |
2022 | * Makefile.in (regrename.o): Update dependancies. | |
2023 | * recog.h (struct operand_alternative): Add is_address. | |
2024 | * recog.c (preprocess_constraints) [case 'p']: Set it. | |
541f7d56 | 2025 | |
b8dad04b ZW |
2026 | 2000-10-27 Zack Weinberg <zack@wolery.stanford.edu> |
2027 | ||
2028 | * configure.in: If not NO_MINUS_C_MINUS_O, substitute | |
2029 | OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to | |
2030 | top level. Kill oldstyle_subdirs. Do not include | |
2031 | $srcdir/$s/Makefile.in in all_lang_makefiles, but do include | |
2032 | $outputs. Do not run configure.lang from config.status. | |
2033 | Rearrange warning-flag logic to correspond to what the | |
2034 | makefile wants. Put special vax stage1 options in | |
2035 | @stage1_flags@ not @stage1_warn_cflags@. Don't do anything | |
2036 | with extra_c_objs, extra_cxx_objs, or extra_cpp_objs. | |
2037 | (--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if | |
2038 | switch is given, nothing otherwise. | |
2039 | * configure.lang: Delete. | |
2040 | ||
a8a05998 ZW |
2041 | * Makefile.in: Expunge all traces of extra_c_objs, |
2042 | extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from | |
2043 | @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set | |
2044 | warning options via a three level scheme so that -pedantic and | |
2045 | -Wtraditional are not used for non-C front ends: LOOSE_WARN, | |
2046 | STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS -> | |
2047 | WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS. | |
b8dad04b ZW |
2048 | Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES. |
2049 | Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P, | |
a8a05998 ZW |
2050 | LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file |
2051 | generation rules. Wrap all rules that change the current | |
2052 | directory in parentheses; pmake doesn't spawn a new shell for | |
2053 | each command. Expunge all references to $(P). When one | |
2054 | command depends on another and they're run all at once, use && | |
2055 | to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files | |
2056 | deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2 | |
2057 | and beyond. | |
b8dad04b ZW |
2058 | |
2059 | * objc/Make-lang.in: Wrap all rules that change the current | |
2060 | directory in parentheses. Expunge all references to $(P). | |
2061 | When one command depends on another and they're run all at | |
2062 | once, use && to separate them, not ;. Add OUTPUT_OPTION to | |
2063 | all object-file generation rules. Delete obsolete variables. | |
2064 | * objc/Makefile.in: Delete. | |
2065 | ||
fadb729c JJ |
2066 | 2000-10-27 Jakub Jelinek <jakub@redhat.com> |
2067 | ||
2068 | * calls.c (expand_call): If sibcall_failure is set during pass 1, | |
2069 | clear tail_call_insns as well. | |
2070 | ||
254bb256 NC |
2071 | 2000-10-27 Nick Clifton <nickc@redhat.com> |
2072 | ||
2073 | * config/arm/arm-protos.h (arm_function_ok_for_sibcall): Add | |
2074 | prototype. | |
2075 | ||
8eb99146 RH |
2076 | 2000-10-26 Richard Henderson <rth@redhat.com> |
2077 | ||
b8dad04b | 2078 | * calls.c (expand_call): Supress sibcall if we have a |
8eb99146 RH |
2079 | BLKmode return in registers. |
2080 | ||
036099eb BS |
2081 | 2000-10-26 Bernd Schmidt <bernds@redhat.co.uk> |
2082 | ||
2083 | * ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants | |
2084 | into memory. | |
2085 | ||
13c6f0d5 NS |
2086 | 2000-10-26 Nathan Sidwell <nathan@codesourcery.com> |
2087 | ||
2088 | * tree.c (make_node, case 't'): Set alignment to that of | |
2089 | char_type_node. | |
2090 | * expr.c (move_by_pieces_ninsns): Abort if some length remains. | |
2091 | ||
be5aeb60 MM |
2092 | 2000-10-25 Mark Mitchell <mark@codesourcery.com> |
2093 | ||
2094 | * Makefile.in (site.exp): Define HAVE_LIBSTDCXX_V3. | |
2095 | * configure.in (enable-libstdcxx-v3): Arrange to have | |
2096 | HAVE_LIBSTDCXX_V3 substituted into the output files. | |
2097 | ||
78192b09 RH |
2098 | 2000-10-25 Richard Henderson <rth@redhat.com> |
2099 | ||
4667f705 RH |
2100 | * recog.c (constrain_operands): Initialize which_alternative |
2101 | before no alternatives early exit. | |
2102 | ||
78192b09 RH |
2103 | * cse.c (find_comparison_args): Check that we can reverse a |
2104 | comparison if needed before accepting the substitution. | |
2105 | ||
081b49f1 RH |
2106 | * reload.c (find_reloads_address_part): Kill rtx obstack hackery. |
2107 | ||
d4f1c1fa RH |
2108 | * simplify-rtx.c (simplify_relational_operation): Sign extend |
2109 | low words before sign extending to high words. | |
2110 | ||
bc27e96c NC |
2111 | 2000-10-25 Nick Clifton <nickc@redhat.com> |
2112 | ||
2113 | * config/mcore/mcore.c: Include config.h before system.h. | |
2114 | ||
2115 | 2000-10-25 Ray Essick <essick@ddna.labs.mot.com> | |
2116 | ||
2117 | * config/mcore/mcore.md (return): Force function epilogue to | |
2118 | always be generated to work around epilogue suppression bug in | |
2119 | M*Core backend. | |
2120 | ||
e0c9fbb7 JM |
2121 | 2000-10-25 Joseph S. Myers <jsm28@cam.ac.uk> |
2122 | ||
2123 | * c-decl.c (grokdeclarator): Move warning for qualified void | |
2124 | return types with -pedantic to when the function type is | |
2125 | constructed. At -W, warn in general for qualified function return | |
2126 | types, except for volatile void. | |
2127 | * invoke.texi: Document this new warning at -W. | |
2128 | ||
138e79e7 NB |
2129 | 2000-10-25 Neil Booth <neilb@earthling.net> |
2130 | ||
b8dad04b ZW |
2131 | * cpp.texi: Update with implementation-defined behavior and |
2132 | internal limits. | |
138e79e7 | 2133 | |
dc5041ab JJ |
2134 | 2000-10-25 Jakub Jelinek <jakub@redhat.com> |
2135 | ||
2136 | * stor-layout.c (layout_type): If TYPE_ALIAS_SET was already set on the | |
2137 | incomplete type force it into alias set 0. | |
2138 | ||
e004f2f7 JW |
2139 | Wed Oct 25 01:02:44 EDT 2000 John Wehle (john@feith.com) |
2140 | ||
2141 | * alias.c: Include basic-block.h. | |
2142 | (loop_p): New function. | |
2143 | (mark_constant_function): Use it. | |
2144 | * Makefile.in (alias.o): Update dependencies. | |
2145 | ||
15c09738 AH |
2146 | 2000-10-24 Aldy Hernandez <aldyh@redhat.com> |
2147 | ||
2148 | * config/mn10300/mn10300.c (secondary_reload_class): Treat pseudos | |
2149 | like memory. | |
b8dad04b | 2150 | |
a8ca7756 JW |
2151 | 2000-10-24 Jim Wilson <wilson@cygnus.com> |
2152 | ||
2153 | * expmed.c (store_bit_field): Move integer pun code down after | |
2154 | code that calls emit_move_insn for entire register move. | |
2155 | * stor-layout.c (compute_record_mode): Revert Mar 25, Aug 18, and | |
2156 | Oct 20 changes. Only store mode in TYPE_MODE if RECORD_TYPE. | |
b8dad04b | 2157 | |
c0fc376b RH |
2158 | 2000-10-24 Richard Henderson <rth@cygnus.com> |
2159 | ||
2160 | * rtlanal.c (rtx_unstable_p, rtx_varies_p): Don't consider pic | |
2161 | register stable if PIC_OFFSET_TABLE_REG_CALL_CLOBBERED. | |
2162 | ||
d7836e38 AH |
2163 | 2000-10-24 Aldy Hernandez <aldyh@redhat.com> |
2164 | ||
b8dad04b ZW |
2165 | * gcse.c (cprop_insn): do not propagate constants into jump_insn |
2166 | for machines with CC0 more than once. | |
d7836e38 | 2167 | |
5e2c51ba RH |
2168 | 2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com> |
2169 | ||
b8dad04b ZW |
2170 | * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat |
2171 | pseudos just like memory. | |
5e2c51ba | 2172 | |
c71e1201 AO |
2173 | 2000-10-24 Alexandre Oliva <aoliva@redhat.com> |
2174 | ||
2175 | * combine.c (distribute_notes): Discard REG_LIBCALL and REG_RETVAL | |
2176 | when deleting libcall sequence collapsed to a single instruction. | |
2177 | ||
5129d2ce AH |
2178 | 2000-10-24 Andrew Haley <aph@cygnus.co.uk> |
2179 | ||
2180 | * expr.c (do_store_flag): Don't crash if either side of a | |
2181 | comparison is error_mark_node. | |
2182 | ||
f85b5d65 JJ |
2183 | 2000-10-24 Jakub Jelinek <jakub@redhat.com> |
2184 | ||
2185 | * sibcall.c (purge_mem_unchanging_flag): New function. | |
2186 | (optimize_sibling_and_tail_recursive_calls): Call it. | |
2187 | ||
4adee315 PT |
2188 | 2000-10-24 Philipp Thomas <pthomas@suse.de> |
2189 | ||
2190 | * Makefile.in (check-po): New target for doing checks in the po | |
2191 | subdir if all languages configured. | |
2192 | (CHECK_TARGETS): Add @CHECK_PO@, replaced with check-po via | |
2193 | configure if NLS is enabled. | |
2194 | * configure.in: If NLS is enabled, substitute CHECK_PO by check-po, | |
2195 | otherwise leave empty. | |
2196 | * configure: Regenerate. | |
2197 | ||
fb204271 DN |
2198 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
2199 | ||
2200 | * i386.c (print_operand): Handle new 'A' formatting code. | |
2201 | 387 opcodes need suffixes even with -mintel-syntax. | |
2202 | Check for explicit size override (codes 'b', 'w' and 'k'). | |
2203 | (print_operand_address): Check if register prefix is needed when | |
2204 | emitting `ds' segment override. | |
2205 | * i386.h: Add comment about new 'A' formatting code. | |
2206 | * i386.md (jump and call patterns): Emit absolute references using %A. | |
2207 | ||
8a959ea5 RH |
2208 | 2000-10-23 Richard Henderson <rth@cygnus.com> |
2209 | ||
b8dad04b | 2210 | * config/ia64/ia64.c (ia64_expand_prologue): Mark extra |
8a959ea5 RH |
2211 | output registers as fixed. |
2212 | (ia64_function_epilogue): Undo output fixation. | |
2213 | ||
964686de RH |
2214 | 2000-10-23 Richard Henderson <rth@cygnus.com> |
2215 | ||
2216 | * config/alpha/alpha.md: Add names for all unnamed insns; use | |
2217 | define_insn_and_split in some obvious places. | |
2218 | (lda): Remove. | |
2219 | (zero_extendqihi2): Use an expander w/ nonimmediate_operand for BWX. | |
2220 | (zero_extendqisi2, zero_extendqidi2): Likewise. | |
2221 | (zero_extendhisi2, zero_extendhidi2): Likewise. | |
2222 | (abs splitters): Fix match_scratch operand number. | |
2223 | (bcc_reverse): Swap pc & label instead of non-canonical compare. | |
2224 | ||
18a3c539 JW |
2225 | 2000-10-23 Jim Wilson <wilson@cygnus.com> |
2226 | ||
2227 | * ia64.c (ia64_print_operand, case 'r'): Correct comment. Handle | |
2228 | CONST_INT. | |
2229 | * ia64.md (cmpsi_adjusted): Use %r3. | |
2230 | (cmpdi_adjusted): Likewise. | |
2231 | ||
57dd137f DN |
2232 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
2233 | ||
2234 | * config/i386/att.h (ASM_FILE_START): Define. | |
2235 | ||
d984704d DN |
2236 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
2237 | ||
2238 | * config/i386/linux.h (ASM_FILE_START): Define. | |
2239 | ||
261f21e7 DL |
2240 | Wed Oct 18 11:16:40 2000 Donald Lindsay <dlindsay@cygnus.com> |
2241 | ||
2242 | * gcc/configure.in: m68k-coff tm_file should not have libgloss.h, | |
2243 | since this (only) drags in a crt0.o reference that the .ld files | |
2244 | also introduce. | |
2245 | ||
96af667a GK |
2246 | 2000-10-23 Geoff Keating <geoffk@cygnus.com> |
2247 | ||
2af88768 GK |
2248 | * reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can |
2249 | overwrite the value in a RELOAD_FOR_INPUT and other kinds of | |
2250 | reloads just like an RELOAD_FOR_OUTPUT would. | |
2251 | ||
96af667a GK |
2252 | * local-alloc.c (update_equiv_regs): Add an abort(). When |
2253 | deleting or moving insns, update reg_equiv[regno].init_insns. | |
2254 | ||
d252a515 MM |
2255 | 2000-10-23 Mark Mitchell <mark@codesourcery.com> |
2256 | ||
2257 | * c-tree.texi: Improve documentation for IF_STMTs and related | |
2258 | conditional statements. | |
2259 | ||
f9808f81 MM |
2260 | 2000-10-22 Mark Mitchell <mark@codesourcery.com> |
2261 | ||
2262 | * expr.c (do_preexpand_calls): Remove. | |
2263 | (same_from_p): Don't use CALL_EXPR_RTL. | |
2264 | (expand_expr): Don't call preexpand_calls, or use CALL_EXPR_RTL. | |
2265 | (preexpand_calls): Remove. | |
2266 | * tree.c (first_rtl_op): Remove CALL_EXPR case. | |
2267 | (unsave_expr_1): Likewise. | |
2268 | * tree.def (CALL_EXPR): Give it only two slots. | |
2269 | * tree.h (CALL_EXPR_RTL): Remove. | |
2270 | ||
ae4bd622 CC |
2271 | 2000-10-21 Chandrakala Chavva <cchavva@redhat.com> |
2272 | ||
2273 | * libgcc-std.ver (__addvsi3, __addvdi3, __subvsi3, __subvdi3, | |
b8dad04b ZW |
2274 | __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3): |
2275 | New functions. | |
ae4bd622 | 2276 | |
3e555c7d AO |
2277 | 2000-10-22 Alexandre Oliva <aoliva@redhat.com> |
2278 | ||
2279 | * calls.c (combine_pending_stack_adjustment_and_call): Don't | |
2280 | adjust stack when unadjusted_alignment ends up as zero. | |
2281 | ||
99bdaa68 JM |
2282 | 2000-10-22 Joseph S. Myers <jsm28@cam.ac.uk> |
2283 | ||
2284 | * fixinc/genfixes: Remove EGCS reference. | |
2285 | * install.texi: Remove EGCS reference. | |
2286 | * INSTALL: Regenerate. | |
2287 | ||
e36308b0 MM |
2288 | 2000-10-22 Mark Mitchell <mark@codesourcery.com> |
2289 | ||
2290 | * tree.h (TYPE_IS_SIZETYPE): Add more documentation. | |
2291 | ||
bf6eb15f JM |
2292 | 2000-10-21 Joseph S. Myers <jsm28@cam.ac.uk> |
2293 | ||
2294 | * diagnostic.c: Remove EGCS reference in comment. | |
2295 | ||
e62ff0c3 RK |
2296 | Sat Oct 21 08:24:25 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2297 | ||
2298 | * loop.c (strength_reduce): Fix error in last change. | |
2299 | ||
0ad7574f DE |
2300 | 2000-10-20 David Edelsohn <edelsohn@gnu.org> |
2301 | ||
2302 | * Makefile.in (SHLIB_NM_FLAGS): New. | |
2303 | (libgcc.mk): Pass it. | |
2304 | * mklibgcc.in (libgcc.map): Use it. | |
2305 | ||
2306 | * rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_LIBS, | |
2307 | SHLIB_MKMAP, SHLIB_MAPFILES, SHLIB_NM_FLAGS): New. | |
2308 | ||
8f54374e KG |
2309 | 2000-10-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2310 | ||
2311 | * mips.h (REG_CLASS_FROM_LETTER): Cast array arg to unsigned char. | |
2312 | ||
2313 | * sparc.c (load_pic_register): Delete unused varaible. | |
2314 | ||
2315 | * libgcc2.c (__addvsi3): Delete unused variable. | |
2316 | ||
2317 | * libgcc2.h (__absvsi2, __absvdi2, __addvsi3, __addvdi3, | |
2318 | __subvsi3, __subvdi3, __mulvsi3, __mulvdi3, __negvsi2, | |
2319 | __negvdi2): Prototype. | |
2320 | ||
2321 | * ssa.c (apply_delayed_renames): Avoid undefined operation. | |
2322 | ||
2323 | * toplev.c (display_target_options): Make static to match | |
2324 | prototype. Delete empty declaration. | |
2325 | ||
3f568531 TT |
2326 | 2000-10-20 Tom Tromey <tromey@cygnus.com> |
2327 | ||
2328 | * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT. | |
2329 | * gcc.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT. | |
2330 | ||
235783d1 RK |
2331 | Fri Oct 20 17:05:49 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2332 | ||
2333 | * expr.c (expand_expr, case SAVE_EXPR): Set RTX_UNCHANGING_P on | |
2334 | returned MEM. | |
2335 | (expand_expr_unaligned, case ARRAY_REF): Check that index is | |
2336 | a constant before comparing it; use tree_low_cst. | |
2337 | * tree.c (save_expr): Set TREE_READONLY. | |
2338 | (substitute_expr): Return inside of NON_LVALUE_EXPR. | |
2339 | (build, build1): Set TREE_READONLY if all operands are. | |
2340 | (build_index_type): If upper bound is a negative number, lower | |
2341 | bound is zero and sizetype is unsigned, use upper bound of one and | |
2342 | lower of zero. | |
2343 | ||
2e44948d DE |
2344 | 2000-10-20 David Edelsohn <edelsohn@gnu.org> |
2345 | ||
2346 | * gcc.c (process_command, main): Use "because" instead of | |
2347 | "since" in error messages. | |
2348 | ||
44475138 RK |
2349 | Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2350 | ||
382110c0 RK |
2351 | * stor-layout.c (compute_record_mode): Use tree_low_cst. |
2352 | Don't use mode of field for record unless sizes are the same. | |
2353 | (layout_type, case ARRAY_TYPE): Remove special bounds handling | |
2354 | previously added for Ada; also change to using host_integerp | |
2355 | and tree_low_cst. | |
2356 | ||
1dcdb0df RK |
2357 | * loop.c (strength_reduce): Show when new register made for |
2358 | giv is known to be a pointer and its aligment if so and known. | |
2359 | (loop_dump_aux): Show VERBOSE parameter unused. | |
2360 | ||
ebb13e7e RK |
2361 | * gcse.c (set_hash_table_size): Now unsigned. |
2362 | * sdbout.c (template_name_p): Add "const" to avoid warnings. | |
2363 | (sdbout_record_type_name, plain_type_1, sdbout_symbol): Likewise. | |
2364 | (sdbout_one_type, sdbout_parms, sdbout_reg_parms): Likewise. | |
2365 | (sdbout_end_epilogue): Remove variable NAME. | |
2366 | * system.h (getopt): Add default definition. | |
2367 | * config/alpha/alpha.c (print_operand): Don't continue processing | |
2368 | after issuing error. | |
2369 | (summarize_insn): Avoid use of UL in constant. | |
2370 | ||
1468899d RK |
2371 | * function.c (locate_and_pad_parm): Use host_integerp and tree_low_cst. |
2372 | ||
44475138 RK |
2373 | * fold-const.c (force_fit_type): Unsigned values can overflow |
2374 | if they are sizetype. | |
2375 | (int_const_binop): Don't use cache if overflows. | |
391db8c9 | 2376 | |
23ccfa6d RH |
2377 | 2000-10-20 Richard Henderson <rth@cygnus.com> |
2378 | ||
2379 | * function.c (locate_and_pad_parm): Zero alignment_pad. | |
2380 | ||
4ca0f257 RH |
2381 | * regrename.c (rr_replace_reg): Rewrite to use recog_data to |
2382 | perform substitutions, and apply_change_group to see if it worked. | |
2383 | ||
0345195a RK |
2384 | Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2385 | ||
d57e164f RK |
2386 | * dwarf2out.c (add_bound_info): Also ignore COND_EXPR. |
2387 | ||
0345195a RK |
2388 | * combine.c (struct undo): Change int to unsigned int. |
2389 | (do_SUBST_INT): Args are unsigned int. | |
2390 | (make_extraction, force_to_mode): Use proper type when forming mask. | |
2391 | (make_field_assignment): Likewise. | |
2392 | ||
2f74f7e9 JM |
2393 | 2000-10-20 Joseph S. Myers <jsm28@cam.ac.uk> |
2394 | ||
2395 | * c-common.c (check_format_info_recurse): Extract string constant | |
2396 | initializers from non-volatile constant arrays and check them as | |
2397 | formats. | |
2398 | * c-typeck.c (decl_constant_value): Don't check pedantic or check | |
2399 | for DECL_MODE (decl) != BLKmode. | |
2400 | (decl_constant_value_for_broken_optimization): New function which | |
2401 | includes these checks. | |
2402 | (default_conversion, convert_for_assignment, digest_init): Use | |
2403 | decl_constant_value_for_broken_optimization instead of | |
2404 | decl_constant_value. | |
2405 | ||
971774bb MM |
2406 | 2000-10-20 Mark Mitchell <mark@codesourcery.com> |
2407 | ||
2408 | * tree.h (DECL_ALIGN_UNIT): New macro. | |
2409 | ||
afee2a52 MM |
2410 | 2000-10-14 Marek Michalkiewicz <marekm@linux.org.pl> |
2411 | ||
2412 | * config/avr/avr-protos.h (avr_output_bld): New. | |
2413 | (out_shift_with_cnt): Add t_len argument. | |
2414 | * config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args. | |
2415 | (output_movqi, output_movhi, output_movsisf): Optimize loading | |
2416 | any constant with exactly one bit set to NO_LD_REGS. | |
2417 | (out_shift_with_cnt): Optimize output code for size or speed, | |
2418 | depending on optimize_size. Handle small shift counts as well | |
2419 | (if not hand-optimized in ?sh??i3_out). Shifts can be done | |
2420 | with or without a scratch register, with help of __tmp_reg__ | |
2421 | or __zero_reg__ if necessary. Add T_LEN argument to pass the | |
2422 | length of TEMPLATE in words, return total insn length in *LEN. | |
2423 | (ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to | |
2424 | out_shift_with_cnt to work with the above change. | |
2425 | (ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out, | |
2426 | lshrsi3_out): Likewise. Optimize more known shift count cases. | |
2427 | Remove cases already well optimized in out_shift_with_cnt. | |
2428 | (avr_output_bld): New function. | |
2429 | * config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove. | |
2430 | (TARGET_SWITCHES): Remove -mpack-args backward compatibility. | |
2431 | * config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi): | |
2432 | Add reload_completed to insn condition - only for peepholes. | |
2433 | (ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts | |
2434 | in a register or memory. | |
2435 | (ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise. | |
2436 | Do not require a scratch register. | |
2437 | (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const, | |
2438 | *lshrhi3_const, *lshrsi3_const): New insns and matching peepholes. | |
2439 | Optimize shifts by known count using a scratch register, but only | |
2440 | if one is still available after register allocation. | |
2441 | ||
831f9339 | 2442 | 2000-10-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
b8dad04b | 2443 | |
831f9339 DA |
2444 | * t-vax: New file. Don't build modules from libgcc1.c. |
2445 | ||
bf6d9fd7 JW |
2446 | Fri Oct 20 00:57:00 EDT 2000 John Wehle (john@feith.com) |
2447 | ||
2448 | * alias.c: (mark_constant_function): Don't check pure functions. | |
2449 | Initialize and end alias analysis. | |
2450 | (nonlocal_mentioned_p): Rename from nonlocal_reference_p. | |
2451 | Don't make a special exception for recursion. Handle | |
2452 | UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local | |
2453 | unless it's volatile. | |
2454 | ||
2455 | * local-alloc.c (equivalence): New structure. | |
2456 | (reg_equiv): Define. | |
2457 | (contains_replace_regs): Remove array and use | |
2458 | field in reg_equiv. | |
2459 | (memref_referenced_p): Likewise. | |
2460 | (no_equiv): Likewise. | |
2461 | (update_equiv_regs): Likewise. | |
2462 | ||
2463 | (equiv_init_varies_p, | |
2464 | equiv_init_movable_p): New functions. | |
2465 | (update_equiv_regs): Use them. Use rtx_varies_p | |
2466 | instead of function_invariant_p. Process insns | |
2467 | from end to beginning. Allow a REG_EQUIV insn | |
2468 | within the same loop as a use to be moved, also | |
2469 | allow it to be moved out of a loop. Update | |
2470 | REG_DEAD notes when substituting into an insn. | |
2471 | ||
ef375129 JW |
2472 | 2000-10-19 Jim Wilson <wilson@cygnus.com> |
2473 | ||
f4fce7ed JW |
2474 | * c-decl.c (start_decl): Check for error_mark_node type before using |
2475 | COMPLETE_TYPE_P. | |
2476 | (finish_decl): Likewise. Don't give an error if decl type is | |
2477 | already error_mark_node. | |
2478 | ||
ef375129 JW |
2479 | * haifa-sched.c (compute_trg_info): Add explanatory comments. |
2480 | New local update_blocks. Use update_blocks to remove duplicates | |
2481 | when computing update blocks. Check for bblst_table overflow. | |
2482 | (schedule_block): Add explanatory comment. Reduce bblst_size by | |
2483 | factor of 2. | |
2484 | * config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL | |
2485 | notes. | |
b8dad04b | 2486 | |
3cf37281 CC |
2487 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
2488 | ||
2489 | * libgcc2.c (_mulvsi3): Change variables u and v to a and b. | |
2490 | ||
e6b4d09d CC |
2491 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
2492 | ||
2493 | * expmed.c: Minor corrections in comments. | |
2494 | * invoke.texi: Added desciption for the new option -ftrapv. | |
2495 | ||
3d2adde6 CC |
2496 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
2497 | ||
2498 | * libgcc2.c: Added the missing #endif. | |
2499 | ||
1aa9fd24 JH |
2500 | Thu Oct 19 14:25:11 MET DST 2000 Jan Hubicka <jh@suse.cz> |
2501 | ||
2502 | * i386.h (CONST_OK_FOR_LETTER): Re-add 'N'; document. | |
2503 | ||
91ce572a CC |
2504 | 2000-10-18 Chandrakala Chavva <cchavva@redhat.com> |
2505 | ||
b8dad04b ZW |
2506 | * expmed.c (expand_mult): Don't do synth_mult optimization for -ftrapv. |
2507 | Use smulv_optab for -ftrapv. | |
2508 | (expand_mult_highpart): Use unsigned multiply. | |
2509 | (expand_divmod): Special-case division by -1. | |
2510 | For EXACT_DIV_EXPR, do right shift first, then the multiply. | |
2511 | For complex divide, use abs with unsigned result. | |
2512 | * expr.c (force_operand): Use unsigned multiply. | |
2513 | (expand_expr): Use overflow-trapping optabs for signed types if | |
2514 | flag_trapv. | |
2515 | If flag_trapv, don't generate a recursive call with EXPAND_SUM | |
2516 | if the type is signed and the original call wasn't EXPAND_SUM or | |
2517 | EXPAND_INITIALIZER. | |
2518 | * expr.h (addv_optab, subv_optab, smulv_optab, sdivv_optab): Declare. | |
2519 | (negv_optab, absv_optab): Declare. | |
2520 | * flags.h (flag_trapv): Declare. | |
2521 | * genopinit.c (optabs): Add entries for addv_optab, subv_optab, | |
2522 | smulv_optab, sdivv_optab, negv_optab and absv_optab. | |
91ce572a | 2523 | (gen_insn): Interpret '$P' as requiring an integer mode, |
b8dad04b ZW |
2524 | including partial integer modes. |
2525 | * loop.c (emit_iv_add_mult): Use unsigned expand_mult_add. | |
2526 | (product_cheap_p): Use unsigned expand_mult. | |
2527 | * optabs.c (addv_optab, subv_optab, smulv_optab, sdivv_optab): Define. | |
2528 | (negv_optab, absv_optab): Define. | |
2529 | (expand_binop): Use overflow-trapping optabs for signed types if | |
2530 | flag_trapv. | |
2531 | Handle negv_optab libe neg_optab. | |
2532 | (expand_abs): Take result_unsignedp argument instead of unsignedp one. | |
2533 | Use overflow-trapping optabs for signed result if flag_trapv. | |
2534 | (expand_complex_abs): Use overflow-trapping optabs for signed types if | |
2535 | flag_trapv. | |
2536 | Don't open-code complex absolute-value operation for flag_trapv. | |
2537 | (init_optabs): Initialize addv_optab, subv_optab, smulv_optab, | |
2538 | sdivv_optab, negv_optab and absv_optab. | |
2539 | * toplev.c (flag_trapv): Define. | |
2540 | (lang_independent_options f_options): Include flag_trapv. | |
2541 | * tree.h (TYPE_TRAP_SIGNED): Define. | |
2542 | * libgcc2.c (__addvsi3, __addvdi3, __subvsi3,__subvsi3, __subvdi3, | |
2543 | __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3): | |
2544 | New functions. | |
2545 | * Makefile.in: add _absvsi2 _absvdi2 _addvsi3 _addvdi3 _subvsi3 | |
2546 | _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2. | |
91ce572a | 2547 | |
4c2c5712 GK |
2548 | 2000-10-18 Geoffrey Keating <geoffk@cygnus.com> |
2549 | David V. Henkel-Wallace <gumby@cygnus.com> | |
2550 | ||
2551 | * config/i386/t-netware: Bring in from the Red Hat tree. | |
2552 | * config/i386/netware.h: Likewise. | |
2553 | * config/netware.h: Likewise. | |
2554 | * config/rs6000/netware.h: Delete. | |
2555 | * configure.in: Add i[34567]86-*-netware. | |
2556 | * configure: Hand-edit to match configure.in change. | |
2557 | ||
6bcedb4e MM |
2558 | 2000-10-18 Mark Mitchell <mark@codesourcery.com> |
2559 | ||
2560 | * c-common.h (flag_no_builtin): Declare. | |
2561 | (flag_no_nonansi_builtin): Likewise. | |
2562 | (c_common_nodes_and_builtins): Change prototype. | |
2563 | * c-common.c (flag_no_builtin): New variable. | |
2564 | (flag_no_nonansi_builtin): Likewise. | |
2565 | (c_common_nodes_and_builtins): Remove parameters. Adjust | |
2566 | accordingly. | |
2567 | * c-decl.c (flag_no_builtin): Remove. | |
2568 | (flag_no_nonansi_builtin): Likewise. | |
2569 | (init_decl_processing): Adjust call to | |
2570 | c_common_nodes_and_builtins. | |
b8dad04b | 2571 | |
989b26a7 ME |
2572 | 2000-10-18 Marc Espie <espie@openbsd.org> |
2573 | ||
2574 | * tm.texi (LIBGCC_SPEC): Synch with reality. | |
2575 | ||
81cf47b2 JM |
2576 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
2577 | ||
2578 | * c-common.c (check_format_types): Check for writing through a | |
2579 | NULL pointer argument. | |
2580 | ||
27c35f4b HPN |
2581 | 2000-10-18 Hans-Peter Nilsson <hp@axis.com> |
2582 | ||
2583 | * tm.texi (Exception Region Output): Document | |
2584 | DWARF_CIE_DATA_ALIGNMENT. | |
2585 | * dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in | |
2586 | #ifndef. | |
2587 | [ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of | |
2588 | DWARF_CIE_DATA_ALIGNMENT. | |
2589 | ||
4a7da9b5 MH |
2590 | 2000-10-18 Michael Hayes <mhayes@cygnus.com> |
2591 | ||
2592 | * basic-block.h (struct loop): Delete fields pre_header_root | |
2593 | and pre_header_trace and replace with pre_header_edges | |
2594 | and num_pre_header_edges. | |
2595 | * flow.c (flow_loop_dump): Dump pre_header_edges. | |
2596 | (flow_loops_free): Free pre_header_edges. | |
2597 | (flow_loop_pre_header_scan): Calculate pre_header_edges. | |
2598 | ||
42c10750 GP |
2599 | 2000-10-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
2600 | ||
2601 | * contrib.texi: Update references to steering committee members | |
2602 | and Jeff Law's entry. | |
2603 | ||
ade7d3cc JM |
2604 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
2605 | ||
2606 | * c-common.c (CPLUSPLUS_STD_VER, C_STD_VER, C_STD_NAME): Define. | |
2607 | (maybe_read_dollar_number, check_format_info_main): Use them for | |
2608 | pedantic warning messages. | |
2609 | ||
c5251260 JM |
2610 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
2611 | ||
2612 | * c-common.c (check_format_info_main): Minor cleanup: move | |
2613 | variables into inner scopes; initialize declarations where | |
2614 | appropriate; don't hardcode "scanf" name on warning for zero | |
2615 | width. | |
2616 | ||
67673f5c MM |
2617 | 2000-10-17 Mark Mitchell <mark@codesourcery.com> |
2618 | ||
2619 | * c-common.c (back_end_hook): New variable. | |
2620 | * c-common.h (back_end_hook): Declare it. | |
2621 | * c-lang.c (finish_file): Use it. | |
2622 | ||
2623 | * emit-rtl.c (init_emit_once): Initialize the const_int_htab | |
2624 | earlier. | |
b8dad04b | 2625 | |
1aa9fd24 | 2626 | 2000-10-18 Jan Hubicka <jh@suse.cz> |
265dab10 | 2627 | |
b8dad04b ZW |
2628 | * i386.c (ix86_comparison_operator, put_condition_code, |
2629 | ix86_match_ccmode, ix86_cc_mode): Handle CCRCmode. | |
2630 | (ix86_expand_strlensi_unroll_1): Use CCRCmode. | |
2631 | * i386.h (EXTRA_CC_MODES): Add CCRCmode. | |
2632 | * i386.md (adddi and negdi splitter): Use CCRCmode. | |
2633 | (add?i_3, add?i_4, add?i_5): Use CCRCmode; swap operands | |
2634 | (subsi3_carry): add '*' | |
2635 | (addsi3_carry_rc, subsi3_carry_rc, x86_movsicc_0_m1_rc): New. | |
2636 | (cmp to add peep2): Use CCRCmode; swap operands. | |
265dab10 | 2637 | |
b054460b KH |
2638 | 2000-10-18 Kazu Hirata <kazu@hxi.com> |
2639 | ||
8682223f KH |
2640 | * h8300.c: Fix a comment typo. |
2641 | (round_frame_size): New. | |
2642 | (compute_saved_regs): Likewise. | |
2643 | (push): Likewise. | |
2644 | (pop): Likewise. | |
2645 | (push_order): Remove. | |
2646 | (pop_order): Likewise. | |
2647 | (function_prologue): Rearrange code for readability. | |
2648 | (function_epilogue): Likewise. | |
2649 | ||
b054460b KH |
2650 | * config/h8300/h8300.md: Remove an unnecessary sign_extend |
2651 | expander that is used when not optimizing. Output a tab after | |
2652 | each assembly insns. | |
2653 | ||
f27e6bb2 KH |
2654 | * reorg.c: Fix formatting. |
2655 | ||
19ca869b JR |
2656 | 2000-10-17 Joern Rennecke <amylaar@redhat.co.uk> |
2657 | ||
2658 | * reload1.c (move2add_note_store): Check for simple | |
2659 | auto-inc in destination. | |
2660 | ||
2ddb1ca1 MC |
2661 | 2000-10-17 Michael Chastain <chastain@redhat.com> |
2662 | ||
2663 | * config/i386/i386-aout.h: define INT_ASM_OP. | |
2664 | ||
11881f37 AM |
2665 | Tue Oct 17 20:11:08 2000 Alan Modra <alan@linuxcare.com.au> |
2666 | ||
2667 | * pa.c (print_operand): Handle case 'c' for .vtable_inherit | |
2668 | ||
33e39e38 MB |
2669 | Tue Oct 17 20:05:51 2000 Martin Buchholz <martin@xemacs.org> |
2670 | ||
2671 | * i370.md: Fix spelling typo. | |
2672 | ||
832ea3b3 FS |
2673 | 2000-10-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
2674 | ||
2675 | * function.c (locate_and_pad_parm): Don't align stack unconditionally. | |
2b7fb034 | 2676 | Fixes execute/20001017-1.c on powerpc-linux-gnu. |
832ea3b3 FS |
2677 | |
2678 | * expr.c (store_constructor): Apply MEM_ALIAS_SET to MEMs only. | |
2b7fb034 | 2679 | * rs6000/rs6000.c (rs6000_hash_constant): Use X0INT to access a |
832ea3b3 FS |
2680 | LABEL_REF. |
2681 | ||
2682 | * rs6000/rs6000.h (NO_DOLLAR_IN_LABEL, DOLLARS_IN_IDENTIFIERS, | |
2683 | ENCODE_SECTION_INFO, ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Move from | |
2684 | here... | |
2685 | * rs6000/aix.h: ...to here. | |
2686 | * rs6000/linux.h (ASM_APP_ON, ASM_APP_OFF): Define to Linux-style. | |
2687 | ||
4c646291 JJ |
2688 | 2000-10-17 Jakub Jelinek <jakub@redhat.com> |
2689 | ||
2690 | * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Reload gp if needed. | |
2691 | ||
2692 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Always use call, make | |
2693 | sure linker can relax even the delay slot mov %g1,%o7, fix output | |
2694 | formating. | |
2695 | ||
07e0fe3d KH |
2696 | 2000-10-17 Kazu Hirata <kazu@hxi.com> |
2697 | ||
2698 | * config/h8300/h8300.md: Remove an unnecessary zero_extend | |
2699 | expander that is used when not optimizing. Output a tab after | |
2700 | each assembly insns. | |
2701 | ||
10501d8f CC |
2702 | 2000-10-17 Chandrakala Chavva <cchavva@redhat.com> |
2703 | ||
2704 | * gcc.c: New options --target-help. | |
2705 | (process_command): Added code to parse this new option. | |
2706 | * toplev.c (display_target_options): New function to support the | |
2707 | above new option. | |
2708 | * cppinit.c (new_pending_directive) : New option OPT_target__help. | |
2709 | (cpp_handle_option): Support this new option. | |
2710 | * invoke.texi: Added notes about --target-help option. | |
b8dad04b | 2711 | |
c330e9c1 | 2712 | 2000-10-17 Graham Stott <grahams@redhat.com> |
b8dad04b | 2713 | |
c330e9c1 GS |
2714 | * config/i386/i386.md (testqi_1): Add missing operand prefix |
2715 | for operand 0. | |
2716 | * config/i386/i386-protos.h: Add missing prototype. | |
b8dad04b | 2717 | |
69ac4831 DN |
2718 | 2000-10-17 Diego Novillo <dnovillo@cygnus.com> |
2719 | ||
2720 | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Symbol | |
2721 | _GLOBAL_OFFSET_TABLE should not have a $ prefix when | |
2722 | using -mintel-syntax. | |
2723 | ||
b691cb00 JM |
2724 | 2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk> |
2725 | ||
2726 | * c-common.c (FMT_FLAG_DOLLAR_MULTIPLE): Define. | |
2727 | (format_types): Use it for printf. | |
2728 | (maybe_read_dollar_number): Add parameter for the kind of format | |
2729 | involved. Warn for multiple use for arguments if this is | |
2730 | inappropriate for the kind of format involved. | |
2731 | (check_format_info_main): Update calls to maybe_read_dollar_number. | |
2732 | ||
948eab23 DA |
2733 | 2000-10-17 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
2734 | ||
2735 | * inclhack.def (hpux_maxint): Also apply fix to values.h. | |
2736 | * fixincl.x: Rebuilt. | |
2737 | ||
1651ab85 AO |
2738 | 2000-10-17 Alexandre Oliva <aoliva@redhat.com> |
2739 | ||
2740 | * genrecog.c (write_switch): Return the first condition that needs a | |
2741 | label. | |
2742 | ||
2683ed8d BS |
2743 | 2000-10-17 Bernd Schmidt <bernds@redhat.co.uk> |
2744 | ||
2745 | * c-tree.h (warn_sequence_point): Move declaration to... | |
2746 | * c-common.h (warn_sequence_point): ... here. | |
2747 | * c-decl.c (warn_sequence_point): Move definition to... | |
2748 | * c-common.c (warn_sequence_point): ... here. | |
2749 | (struct reverse_tree): New. | |
2750 | (reverse_list, reverse_max_depth): New static variables. | |
2751 | (build_reverse_tree, common_ancestor, modify_ok | |
2752 | verify_sequence_points): New functions. | |
2753 | (c_expand_expr_stmt): Call verify_sequence_points if -Wsequence-point. | |
2754 | * c-typeck.c (check_modify_expr): Delete. | |
2755 | (build_modify_expr): Don't call it. | |
2756 | ||
74ff4629 JM |
2757 | 2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk> |
2758 | ||
2759 | * c-common.h (warn_missing_format_attribute): New variable. | |
2760 | * c-decl.c (warn_missing_format_attribute): New variable. | |
2761 | (c_decode_option): Decode -Wmissing-format-attribute and | |
2762 | -Wno-missing-format-attribute. | |
2763 | * c-common.c (check_function_format): If | |
2764 | -Wmissing-format-attribute, give a warning where a vprintf or | |
2765 | vscanf function is called by a function without its own printf or | |
2766 | scanf attribute. | |
2767 | * toplev.c (documented_lang_options): Add | |
2768 | -Wmissing-format-attribute. | |
2769 | * invoke.texi: Document -Wmissing-format-attribute. | |
2770 | ||
1d3b0e2c ME |
2771 | 2000-10-17 Marc Espie <espie@openbsd.org> |
2772 | ||
2773 | * invoke.texi (-shared): Insist on requiring code generation flags | |
2774 | to be used along with -shared, and document the subtle failure that | |
2775 | may occur otherwise. | |
2776 | ||
1c217171 DA |
2777 | 2000-10-16 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
2778 | ||
2779 | * pa.md (return_internal): Move `use' after `return'. | |
2780 | ||
11f3dc89 TP |
2781 | 2000-10-16 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> |
2782 | ||
2783 | * machmode.def: Correct comment. | |
2784 | ||
0952f89b RB |
2785 | 2000-10-16 Rodney Brown <RodneyBrown@mynd.com> |
2786 | ||
47c10e9b RB |
2787 | * print-rtl.c (print_rtx_head): Constify. |
2788 | * rtl.h (print_rtx_head): Similarly. | |
2789 | ||
0952f89b RB |
2790 | * config/pa/pa/pa-protos.h (output_64bit_and, output_64bit_ior): |
2791 | Constify char * return value. | |
2792 | * config/pa/pa/pa.c | |
2793 | (output_64bit_and, output_64bit_ior): Constify char * return value. | |
2794 | (pa_can_combine_p): Make static. | |
2795 | (function_arg): Decorate unused `named' argument. Fix comment typo. | |
2796 | (function_arg_partial_nregs): Decorate unused `named' argument. | |
2797 | ||
6d2e1454 JM |
2798 | 2000-10-16 Joseph S. Myers <jsm28@cam.ac.uk> |
2799 | ||
2800 | * c-common.c (format_check_results): New structure. | |
2801 | (finish_dollar_format_checking): Adjust to take a | |
2802 | format_check_results * parameter. | |
2803 | (check_format_info, check_format_info_recurse, | |
2804 | check_format_info_main): Split check_format_info into three | |
2805 | functions, the main checking going in check_format_info_main. | |
2806 | Recurse when any reduction of the format string argument towards a | |
2807 | string literal is done; go down both branches of a conditional | |
2808 | expression. Don't warn for extra format arguments or empty format | |
2809 | strings if they only occur in some branches of a conditional | |
2810 | expression. | |
2811 | ||
4d231df7 KH |
2812 | 2000-10-16 Kazu Hirata <kazu@hxi.com> |
2813 | ||
f2a9645f | 2814 | * config/h8300/h8300.c: Remove obstack. Include ggc.h. |
4d231df7 | 2815 | |
55143861 JJ |
2816 | 2000-10-16 Jakub Jelinek <jakub@redhat.com> |
2817 | ||
2818 | * rtlanal.c (may_trap_p): Check operand modes of COMPARE. | |
2819 | ||
406df25c DN |
2820 | 2000-10-15 Diego Novillo <dnovillo@cygnus.com> |
2821 | ||
2822 | * i386.md (*movsi_or): Switch operand order for intel syntax. | |
2823 | ||
e8beb821 JM |
2824 | 2000-10-14 Joseph S. Myers <jsm28@cam.ac.uk> |
2825 | ||
2f6256e7 JM |
2826 | * PROBLEMS: Remove. |
2827 | ||
e8beb821 JM |
2828 | * gcc.texi (Contributing): Update. |
2829 | ||
c1f9de5a DN |
2830 | 2000-10-13 Diego Novillo <dnovillo@cygnus.com> |
2831 | ||
2832 | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Output final jump using | |
2833 | appropriate assembler dialect. | |
2834 | ||
f58e0b0c AO |
2835 | 2000-10-13 Alexandre Oliva <aoliva@redhat.com> |
2836 | ||
2837 | * c-common.c (c_expand_builtin): PARAMS-ize prototype. | |
2838 | ||
08f81276 MM |
2839 | 2000-10-12 Marek Michalkiewicz <marekm@linux.org.pl> |
2840 | ||
2841 | * config/avr/avr.c (output_movhi, output_movsisf): Fix loading | |
2842 | constants 1 and 2 to NO_LD_REGS. | |
2843 | ||
4b945402 KG |
2844 | 2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2845 | ||
2846 | * Makefile.in (c-parse.c, tradcif.c): Create atomically. | |
b8dad04b | 2847 | |
4b945402 KG |
2848 | * objc/Make-lang.in (objc-parse.c): Likewise. |
2849 | ||
c7319d87 RE |
2850 | 2000-10-13 Richard Earnshaw <rearnsha@arm.com> |
2851 | ||
2852 | * arm.c: Include obstack.h | |
2853 | (minipool_obstack, minipool_startobj): Define. | |
2854 | (arm_add_gc_roots): Initialize them. | |
2855 | (create_fix_barrier): Use our new obstack. | |
2856 | (push_minipool_barrier, push_minipool_fix): Likewise. | |
2857 | (arm_reorg): Release obstack memory. | |
2858 | ||
fccf9848 JJ |
2859 | 2000-10-13 Jakub Jelinek <jakub@redhat.com> |
2860 | ||
2861 | * config/sparc/sparc.md (nonlocal_goto_receiver): Remove. | |
2862 | (prologue, exception_receiver, builtin_setjmp_receiver): New | |
2863 | patterns. | |
2864 | * config/sparc/sparc.h (FINALIZE_PIC): Remove. | |
2865 | * config/sparc/sparc-protos.h (finalize_pic): Remove. | |
2866 | (load_pic_register): New prototype. | |
2867 | * config/sparc/sparc.c (pic_setup_code): Remove. | |
2868 | (finalize_pic): Rename to... | |
2869 | (load_pic_register): ...this function. | |
2870 | Don't look for nonlocal_goto_receivers and emit pic setup code | |
2871 | directly. Don't check current_function_uses_pic_offset_table. | |
2872 | ||
7584b89f RE |
2873 | 2000-10-13 Richard Earnshaw <rearnsha@arm.com> |
2874 | ||
2875 | * tree.h (struct obstack): Declare. | |
2876 | ||
1f8f4a0b MM |
2877 | 2000-10-12 Mark Mitchell <mark@codesourcery.com> |
2878 | ||
b8dad04b | 2879 | Remove obstacks. |
1f8f4a0b | 2880 | * Makefile.in (ggc-callbacks.o): Remove target. |
b8dad04b | 2881 | (flow.o): Depend on GGC_H. |
1f8f4a0b MM |
2882 | * alias.c (init_alias_analysis): |
2883 | Remove ggc_p conditionals. | |
b8dad04b | 2884 | (end_alias_analysis): Likewise. |
1f8f4a0b | 2885 | * basic-block.h (init_flow): New function. |
b8dad04b | 2886 | (allocate_reg_life_data): Declare. |
1f8f4a0b MM |
2887 | * bb-reorder.c (function_obstack): Replace with ... |
2888 | (flow_obstack): ... new variable. | |
b8dad04b | 2889 | (fixup_reorder_chain): Use it. |
1f8f4a0b | 2890 | * c-decl.c (ggc_p): Remove. |
b8dad04b | 2891 | (caller-save.c): Don't call oballoc/obfree. |
1f8f4a0b MM |
2892 | * combine.c (struct |
2893 | undobuf): Remove storage. | |
2894 | (try_combine): Don't call oballoc. | |
b8dad04b | 2895 | (undo_all): Don't call obfree. |
1f8f4a0b MM |
2896 | * cse.c (insert): Use xmalloc, not |
2897 | oballoc. | |
b8dad04b | 2898 | (cse_main): Adjust accordingly. |
1f8f4a0b MM |
2899 | * dwarf2out.c (save_rtx): Remove |
2900 | obstack code. | |
b8dad04b | 2901 | (dwarf2out_init): Remove ggc_p conditionals. |
1f8f4a0b MM |
2902 | * emit-rtl.c (rtl_obstack): Remove. |
2903 | (gen_rtx_CONST_INT): Remove ggc_p conditionals. | |
2904 | (make_insn_raw): Likewise. | |
2905 | (emit_insn_before): Likewise. | |
2906 | (emit_insn_after): Likewise. | |
2907 | (emit_insn): Likewise. | |
2908 | (gen_sequence): Likewise. | |
2909 | (copy_insn_1): Remove handling of `b' RTL components. | |
b8dad04b | 2910 | (init_emit_once): Remove ggc_p conditionals. |
1f8f4a0b MM |
2911 | * except.c (create_rethrow_ref): Don't fool with obstacks. |
2912 | (add_partial_entry): Likewise. | |
2913 | (call_get_eh_context): Likewise. | |
2914 | (begin_protect_partials): Likewise. | |
b8dad04b | 2915 | (protect_with_terminate): Likewise. |
1f8f4a0b | 2916 | * explow.c |
b8dad04b | 2917 | (plus_constant_wide): Likewise. |
1f8f4a0b MM |
2918 | * expr.c (init_expr_once): |
2919 | Likewise. | |
2920 | (emit_block_move): Likewise. | |
2921 | (clear_storage): Likewise. | |
b8dad04b | 2922 | (expand_expr): Likewise. |
1f8f4a0b MM |
2923 | * flow.c (function_obstack): Remove. |
2924 | (flow_obstack): New variable. | |
2925 | (flow_firstobj): Likewise. | |
2926 | (create_base_block): Use the flow_obstack. | |
2927 | (split_block): Likewise. | |
2928 | (split_edge): Likewise. | |
2929 | (calculate_global_regs_live): Likewise. | |
2930 | (allocate_bb_life_data): Make it static. Likewiwse. | |
2931 | (init_flow): New function. | |
b8dad04b | 2932 | (size_int_type_wide): Remove ggc_p conditionals. |
1f8f4a0b MM |
2933 | * function.c |
2934 | (push_function_context_to): Don't call save_tree_status. | |
2935 | (pop_function_context_from): Or restore_tree_status. | |
2936 | (assign_stack_local_1): Don't call push_obstacks. | |
2937 | (find_fixup_replacement): Use xmalloc. | |
2938 | (fixup_var_refs_insns): Free the storage. | |
2939 | (insns_for_mem_walk): Don't mess with obstacks. | |
2940 | (instantiate_decls): Likewise. | |
2941 | (trampoline_address): Likewise. | |
b8dad04b | 2942 | (expand_function_end): Likewise. |
1f8f4a0b MM |
2943 | * function.h (sturct function): |
2944 | Remove obstack-related variables. | |
2945 | (save_tree_status): Don't declare. | |
b8dad04b | 2946 | (restore_tree_status): Likewise. |
1f8f4a0b | 2947 | * gcse.c (compute_can_copy): |
b8dad04b | 2948 | Don't call oballoc/obfree. |
1f8f4a0b MM |
2949 | * genattrtab.c (operate_exp): Remove |
2950 | ggc_p conditionals. | |
2951 | (simplify_cond): Likewise. | |
2952 | (simplify_test_exp): Don't mess with obstacks. | |
b8dad04b | 2953 | (optimize_attrs): Likewise. |
1f8f4a0b | 2954 | * gengenrtl.c (gendef): Don't include |
b8dad04b ZW |
2955 | ggc_p conditionals. |
2956 | * ggc-callbacks.c (ggc_p): Remove. | |
2957 | * ggc-none.c (ggc_p): Remove. | |
2958 | * ggc.h (ggc_p): Don't declare. | |
265dab10 | 2959 | * integrate.c (save_for_inline): Don't mess with obstacks. |
1f8f4a0b | 2960 | (integrate_decl_tree): Likewise. |
b8dad04b | 2961 | (output_inline_function): Likewise. |
1f8f4a0b | 2962 | * lists.c |
b8dad04b | 2963 | (init_EXPR_INSN_LIST_cache): Likewise. |
1f8f4a0b MM |
2964 | * loop.c (temp_obstack): |
2965 | Remove. | |
2966 | (rtl_obstack): Likewise. | |
2967 | (init_loop): Don't mess with obstacks. | |
2968 | (reg_address_cost): Free BIVs and GIVs. | |
2969 | (check_insns_for_bivs): Use xmalloc, not oballoc. | |
2970 | (find_mem_givs): Likewise. | |
2971 | (record_biv): Likewise. | |
2972 | (general_induction_var): Likewise. | |
b8dad04b | 2973 | (product_cheap_p): Likewse. |
1f8f4a0b | 2974 | * optabs.c (init_one_libfunc): Remove |
b8dad04b | 2975 | ggc_p conditional. |
1f8f4a0b MM |
2976 | * print-tree.c (debug_tree): Don't use |
2977 | oballoc/obfree. | |
b8dad04b | 2978 | (print_node): Likewise. |
1f8f4a0b | 2979 | * profile.c (output_func_start_profiler): |
b8dad04b | 2980 | Remove call to temporary_allocation. |
1f8f4a0b | 2981 | * reload1.c |
b8dad04b | 2982 | (eliminate_regs_in_insn): Don't mess with obstacks. |
1f8f4a0b MM |
2983 | * resource.c |
2984 | (mark_target_live_regs): Use xmalloc. | |
b8dad04b | 2985 | (free_resource_info): Free the memory. |
1f8f4a0b MM |
2986 | * rtl.c (rtl_obstack): |
2987 | Remove. | |
2988 | (rtvec_alloc): Don't mess with obstacks. | |
2989 | (rtx_alloc): Likewise. | |
2990 | (rtx_free): Remove. | |
2991 | (copy_rtx): Don't handle `b' cases. | |
b8dad04b | 2992 | (read_rtx): Use a local rtl_obstack. |
1f8f4a0b MM |
2993 | * rtl.h (oballoc): Remove. |
2994 | (obfree): Likewise. | |
2995 | (pop_obstacks): Likewise. | |
2996 | (push_obstacks): Likewise. | |
2997 | (allocate_bb_life_data): Likewise. | |
2998 | (allocate_reg_life_data): Likewise. | |
b8dad04b | 2999 | (rtx_free): Likewise. |
1f8f4a0b | 3000 | * sdbout.c (sdbout_queue_anonymous_type): |
b8dad04b | 3001 | Use tree_cons, not saveable_tree_cons. |
1f8f4a0b | 3002 | * simplify-rtx.c |
b8dad04b | 3003 | (cselib_init): Don't mess with obstacks. |
1f8f4a0b MM |
3004 | * stmt.c |
3005 | (mark_block_nesting): Mark the label_chain. | |
3006 | (epxand_label): Use ggc_alloc, not oballoc. | |
3007 | (clear_last_expr): Don't mess with obstacks. | |
3008 | (expand_decl_cleanup): Likewise. | |
3009 | (expand_dcc_cleanup): Likewise. | |
3010 | (expand_dhc_cleanup): Likewise. | |
3011 | (expand_anon_union_decl): Likewise. | |
3012 | (add_case_node): Use xmalloc, not oballoc. | |
3013 | (free_case_nodes): New function. | |
b8dad04b | 3014 | (expand_end_case): Call it. |
1f8f4a0b MM |
3015 | * stor-layout.c (layout_type): Don't |
3016 | mess with obstacks. | |
b8dad04b | 3017 | (layout_type): Likewise. |
1f8f4a0b MM |
3018 | * toplev.c (wrapup_global_declarations): |
3019 | Likewise. | |
3020 | (compile_file): Remove ggc_p conditionals. | |
3021 | (rest_of_compilation): Call init_flow. Remove ggc_p conditionals. | |
b8dad04b | 3022 | (decode_f_option): Remove ggc_p conditionals. |
1f8f4a0b MM |
3023 | * tree.c |
3024 | (function_maybepermanent_obstack): Remove. | |
3025 | (maybepermanent_obstack): Likewise. | |
3026 | (function_obstack): Likewise. | |
3027 | (tmeporary_obstack): Likewise. | |
3028 | (momentary_obstack): Likewise. | |
3029 | (temp_decl_obstack): Likewise. | |
3030 | (saveable_obstack): Likewise. | |
3031 | (rtl_obstack): Likewise. | |
3032 | (current_obstack): Likewise. | |
3033 | (expression_obstack): Likewise. | |
3034 | (struct obstack_stack): Likewise. | |
3035 | (obstack_stack): Likewise. | |
3036 | (obstack_stack_obstack): Likewise. | |
3037 | (maybepermanent_firstobj): Likewise. | |
3038 | (temporary_firstobj): Likewise. | |
3039 | (momentary_firstobj): Likewise. | |
3040 | (temp_decl_firstobj): Likewise. | |
3041 | (momentary_function_firstobj): Likewise. | |
3042 | (all_types_permanent): Likewise. | |
3043 | (struct momentary_level): Likewise. | |
3044 | (momentary_stack): Likewise. | |
3045 | (init_obstacks): Remove initialization of removed obstacks. | |
3046 | (save_tree_status): Remove. | |
3047 | (restore_tree_status): Likewise. | |
3048 | (temporary_allocation): Liekwise. | |
3049 | (end_temporary_allocation): Liekwise. | |
3050 | (resume_temporary_allocation): Likewise. | |
3051 | (saveable_allocation): Likewise. | |
3052 | (push_obstacks): Likewise. | |
3053 | (push_obstacks_nochange): Likewise. | |
3054 | (pop_obstacks): Likewise. | |
3055 | (allocation_temporary_p): Likewise. | |
3056 | (permanent_allocation): Likewise. | |
3057 | (preserve_data): Likewise. | |
3058 | (preserve_initializer): Likewise. | |
3059 | (rtl_in_current_obstack): Likewise. | |
3060 | (rtl_in_saveable_obstack): Likewise. | |
3061 | (oballoc): Likewise. | |
3062 | (obfree): Likewise. | |
3063 | (savealloc): Likewise. | |
3064 | (expralloc): Likewise. | |
3065 | (print_obstack_name): Likewise. | |
3066 | (debug_obstack): Likewise. | |
3067 | (object_permanent_p): Likewise. | |
3068 | (push_momentary): Likewise. | |
3069 | (perserve_momentary): Likewise. | |
3070 | (clear_momentary): Likewise. | |
3071 | (pop_momentary): Likewise. | |
3072 | (pop_momentary_nofree): Likewise. | |
3073 | (suspend_momentary): Likewise. | |
3074 | (resume_momentary): Likewise. | |
3075 | (make_node): Don't set TREE_PERMANENT. | |
3076 | (copy_node): Remove ggc_p conditionals. Don't set TYPE_OBSTACK. | |
3077 | Don't set TREE_PERMANENT. | |
3078 | (get_identifier): Remove ggc_p conditionals. | |
3079 | (build_string): Likewise. | |
3080 | (make_tree_vec): Likewise. | |
3081 | (build_decl_list): Remove. | |
3082 | (build_expr_list): Likewise. | |
3083 | (tree_cons): Remove ggc_p conditionals. | |
3084 | (decl_tree_cons): Remove. | |
3085 | (expr_tree_cons): Likewise. | |
3086 | (perm_tree_cons): Likewise. | |
3087 | (temp_tree_cons): Likewise. | |
3088 | (saveable_tree_cons): Likewise. | |
3089 | (build1): Remove ggc_p conditionals. | |
3090 | (build_parse_node): Likewise. | |
3091 | (build_type_attribute_variant): Don't mess with obstacks. | |
3092 | (build_type_copy): Likewise. | |
3093 | (type_hash_canon): Likewise. | |
3094 | (build_pointer_type): Likewise. | |
3095 | (build_reference_type): Likewise. | |
3096 | (build_index_type): Likewise. | |
3097 | (build_range_type): Likewise. | |
b8dad04b | 3098 | (dump_tree_statistics): Don't print obstack information. |
1f8f4a0b MM |
3099 | * tree.h |
3100 | (struct tree_common): Remove permanent_flag. | |
3101 | (TREE_PERMANENT): Remove. | |
3102 | (TREE_SET_PERMANENT): Likewise. | |
3103 | (TYPE_OBSTACK): Likewise. | |
3104 | (struct tree_type): Remove obstack. | |
3105 | (oballoc): Remove. | |
3106 | (savealloc): Likewise. | |
3107 | (build_decl_list): Likewise. | |
3108 | (build_expr_list): Likewise. | |
3109 | (perm_tree_cons): Likewise. | |
3110 | (temp_tree_cons): Likewise. | |
3111 | (saveable_tree_cons): Likewise. | |
3112 | (decl_tree_cons): Likewise. | |
3113 | (expr_tree_cons): Likewise. | |
3114 | (suspend_momentary): Likewise. | |
3115 | (allocation_temporary_p): Likewise. | |
3116 | (resume_momentary): Likewise. | |
3117 | (push_obstacks_nochange): Likewise. | |
3118 | (permanent_allocation): Likewise. | |
3119 | (push_momentary): Likewise. | |
3120 | (clear_momentary): Likewise. | |
3121 | (pop_momentary): Likewise. | |
3122 | (end_temporary_allocation): Likewise. | |
3123 | (pop_obstacks): Likewise. | |
3124 | (push_obstacks): Likewise. | |
3125 | (pop_momentary_nofree): LIkewise. | |
3126 | (preserve_momentary): Likewise. | |
3127 | (saveable_allocation): Likewise. | |
3128 | (temporary_allocation): Likewise. | |
3129 | (resume_temporary_allocation): Likewise. | |
3130 | (perserve_initializer): Likewise. | |
3131 | (debug_obstack): Likewise. | |
3132 | (rtl_in_current_obstack): Likewise. | |
3133 | (rtl_in_saveable_obstack): Likewise. | |
b8dad04b | 3134 | (obfree): Likewise. |
1f8f4a0b MM |
3135 | * varasm.c (current_obstack): Remove. |
3136 | (saveable_obstack): Remove. | |
3137 | (rtl_obstack): Remove. | |
3138 | (immed_double_const): Don't mess with obstacks. | |
3139 | (immed_real_cons): Likewise. | |
3140 | (output_constant_def): Likewise. | |
3141 | (init_varasm_status): Use xcalloc. | |
3142 | (mark_pool_constant): Mark the pool constant itself. | |
3143 | (free_varasm_status): Free memory. | |
3144 | (decode_rtx_const): Call bzero directly, rather than expanding it | |
3145 | inline. | |
3146 | (record_rtx_const): Don't mess with obstacks. | |
3147 | (force_const_mem): Likewise. | |
3148 | * config/arm/arm.c (arm_encode_call_attribute): Remove ggc_p | |
3149 | conditionals. | |
3150 | (aof_pic_entry): Likewise. | |
3151 | * config/ia64/ia64.c (ia64_encode_section_info): Likewise. | |
3152 | * config/m32r/m32r.c (m32r_encode_section_info): Likewise. | |
3153 | * config/pa/pa.c (saveable_obstack): Remove. | |
3154 | (rtl_obstack): Likewise. | |
3155 | (current_obstack): Likewise. | |
3156 | (output_call): Don't mess with obstacks. | |
3157 | (hppa_encode_label): Remove ggc_p conditionals. | |
3158 | * config/romp/romp.c (get_symref): Don't mess with obstacks. | |
3159 | * config/rs6000/rs6000.c (output_toc): Remove ggc_p conditional. | |
3160 | (rs6000_encode_section_info): Likewise. | |
3161 | * config/sh/sh.c (get_fpscr_rtx): Likewise. | |
b8dad04b | 3162 | |
9dcbdc7e JH |
3163 | Thu Oct 12 16:02:31 MET DST 2000 Jan Hubicka <jh@suse.cz> |
3164 | ||
3165 | * i386.md (adddi3, subdi3 splitters): Update for new pattern. | |
3166 | (addsi3_cc, addqi3_cc, subsi3_cc): Remove | |
3167 | (addsi3_carry): Canonicalize. | |
3168 | (addqi_5): Remove '*'. | |
3169 | (sbb pattern): Canonicalize. | |
3170 | ||
3171 | * i386.md (cmp to inc/add peep2): New. | |
3172 | ||
74490e05 RE |
3173 | 2000-10-12 Richard Earnshaw <rearnsha@arm.com> |
3174 | ||
3175 | * bb-reorder.c (reorder_basic_blocks): Allocate an aux block for | |
3176 | the exit block. | |
3177 | ||
bc87c1c8 JM |
3178 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3179 | ||
3180 | * gcc.texi: Merge in contents of README.TRAD and TESTS.FLUNK. | |
3181 | * README.TRAD, TESTS.FLUNK: Remove. | |
3182 | ||
9fa8f75d JM |
3183 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3184 | ||
3185 | * c-common.c (decl_attributes): Don't allow strftime formats with | |
3186 | first_arg_num nonzero. | |
3187 | (check_format_info): Set wanted_type and wanted_type_name to zero | |
3188 | before they are possibly assigned and used. | |
3189 | ||
4831bc84 JM |
3190 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3191 | ||
3192 | * c-common.c (scanf_flag_specs): Add flags ' and I. | |
3193 | (strftime_flag_pairs): Disallow any pair of the _, - and 0 flags, | |
3194 | or the ^ and # flags together. | |
3195 | (scan_char_table): Handle the ' and I flags. | |
3196 | (format_types): Add ' and I flags for scanf. | |
3197 | ||
2f7026a0 JM |
3198 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
3199 | ||
3200 | * c-common.c (print_char_table): Use the unpromoted type for | |
3201 | lengths "h" and "hh" with conversions dioxXu. | |
3202 | (check_format_types): Apply the default argument promotions where | |
3203 | the wanted type is not a pointer target. | |
3204 | ||
bb58bec5 | 3205 | 2000-10-11 Michael Meeks <mmeeks@gnu.org> |
b8dad04b | 3206 | Joseph S. Myers <jsm28@cam.ac.uk> |
bb58bec5 JM |
3207 | |
3208 | * c-typeck.c (check_modify_expr): New function. | |
3209 | (build_modify_expr): Call it if warn_sequence_point. | |
3210 | * c-decl.c (warn_sequence_point): New variable. | |
3211 | (c_decode_option): Handle -Wsequence-point and | |
3212 | -Wno-sequence-point. Enable -Wsequence-point as part of -Wall. | |
3213 | * c-tree.h (warn_sequence_point): Declare. | |
3214 | * invoke.texi (-Wsequence-point): Document. | |
3215 | * toplev.c (documented_lang_options): Add -Wsequence-point and | |
3216 | -Wno-sequence-point. | |
3217 | Original work by Michael Meeks, 16 Jun 1998. | |
3218 | ||
0fba7208 RK |
3219 | Wed Oct 11 06:15:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3220 | ||
3221 | * tree.c (get_narrower): Don't look at precision of field if | |
3222 | not laid out yet. | |
3223 | ||
67e570ea DC |
3224 | Tue Oct 10 23:14:33 2000 Denis Chertykov <denisc@overta.ru> |
3225 | ||
3226 | * config/avr/avr.c (valid_machine_decl_attribute): Allow `extern' | |
3227 | declaration for data with "progmem" attribute. | |
3228 | ||
80b8585d MM |
3229 | 2000-10-09 Marek Michalkiewicz <marekm@linux.org.pl> |
3230 | ||
3231 | * config/avr/avr.c (out_shift_with_cnt): Use AS2 macro. | |
3232 | Correct insn length if shift count is a memory operand. | |
3233 | * config/avr/avr.md: New define_peephole2 to use *reload_inqi. | |
3234 | (*iorhi3_clobber): Change lo8 to hi8. | |
3235 | (zero_extendhisi2): Change %B0 to %A1. | |
3236 | (ashlhi3, ashrhi3): Correct insn length. | |
3237 | (andhi3, abssf2, extendqisi2, extendhisi2): Change "cc" | |
3238 | from "clobber" to "set_n" in some alternatives. | |
3239 | ||
462561b7 JJ |
3240 | 2000-10-10 Jakub Jelinek <jakub@redhat.com> |
3241 | ||
3242 | * reload1.c (calculate_needs_all_insns): If deleting an instruction, | |
3243 | remove its insn_chain structure as well. | |
3244 | ||
0b8833aa DA |
3245 | 2000-10-09 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
3246 | ||
3247 | * dbxout.c (dbxout_source_line): Remove extra tab. | |
3248 | ||
c690f089 HPN |
3249 | 2000-10-09 Hans-Peter Nilsson <hp@bitrange.com> |
3250 | ||
3251 | * config/elfos.h (UNIQUE_SECTION): Apply STRIP_NAME_ENCODING on name. | |
3252 | ||
1854631b RH |
3253 | 2000-10-09 Richard Henderson <rth@cygnus.com> |
3254 | ||
3255 | * Makefile.in (LANG_LIB2FUNCS): Remove. | |
3256 | (LIB2FUNCS): Remove _pure. | |
3257 | (LIB2ADD): Remove LANG_LIB2FUNCS. | |
3258 | (stage_a): Don't set LANG_LIB2FUNCS. | |
3259 | * libgcc2.c (__terminate): Mark noreturn. | |
3260 | (__pure_virtual): Remove. | |
3261 | * mklibgcc.in: Remove LIB2ADD .txt processing. | |
3262 | ||
880c4dcb RE |
3263 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3264 | ||
3265 | * arm.md (push_multi): Revert unintended change. | |
3266 | ||
5895f793 RE |
3267 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3268 | ||
b8dad04b | 3269 | * arm.c: Miscellaneous white space and comment clean-ups. No |
5895f793 RE |
3270 | functional change. |
3271 | * arm.md: Likewise. | |
3272 | ||
1092710d KG |
3273 | 2000-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3274 | ||
3275 | * c-common.c (c_expand_builtin_printf): Set the TREE_TYPE of a new | |
3276 | STRING_CST by calling combine_strings. | |
3277 | ||
ca356f3a RE |
3278 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3279 | ||
3280 | * arm.c (thumb_expand_movstrqi): Rewrite to support SSA form. | |
3281 | (thumb_output_move_mem_multiple): Support new insn format. | |
3282 | * arm.md (movmem12b): Use SSA compatible format. | |
3283 | (movmem8b): Likewise. | |
3284 | ||
cca0a211 RE |
3285 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
3286 | ||
3287 | * arm.md (predicable): New attribute, default to "no". | |
3288 | (all patterns): Mark as predicable if appropriate. | |
3289 | (conditional execution splits): Split using predication format. | |
3290 | (define_cond_exec): Define. | |
3291 | * arm.c (arm_print_operand): handle insn predicate. | |
b8dad04b | 3292 | |
1146cfde GP |
3293 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
3294 | ||
3295 | * README.NS32K: Remove file. | |
3296 | ||
3297 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
3298 | ||
3299 | * README-bugs: Remove file. | |
3300 | ||
4d0230e1 PT |
3301 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
3302 | * aclocal.m4 (AM_GNU_GETTEXT): Fix non portable use of == operator | |
3303 | for test. | |
3304 | * configure: Rebuilt. | |
3305 | ||
9fdf713f PT |
3306 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
3307 | * aclocal.m4 (AM_WITH_NLS): When not using included gettext, | |
3308 | disable catalog building if no suitable program was found. | |
3309 | Move warning message from here | |
3310 | (AM_GNU_GETTEXT): To here. | |
3311 | * configure: Rebuilt. | |
3312 | ||
00036f5c PT |
3313 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
3314 | * aclocal.m4 (GCC_PATH_PROG): New. Like AC_PATH_PROG but uses | |
3315 | different cache variables. | |
3316 | (GCC_PATH_PROG_WITH_TEST): New. Like AM_PATH_PROG_WITH_TEST but | |
3317 | uses different cache variables. | |
3318 | (AM_WITH_NLS): Use GCC_PATH_PROG and GCC_PATH_PROG_WITH_TEST. | |
3319 | * configure: Regenerated. | |
b8dad04b | 3320 | |
aefa45d3 RH |
3321 | 2000-10-08 Richard Henderson <rth@cygnus.com> |
3322 | ||
3323 | * Makefile.in (libgcc.mk): Pass SHLIB_EXT, not SHLIB_LIBS. | |
3324 | * configure.in (sparc*-*-solaris*): Use t-slibgcc{,-sld}. | |
3325 | * mklibgcc.in: Consider SHLIB_LINK the entire shlib build command. | |
3326 | Use SHLIB_EXT. | |
3327 | ||
3328 | * config/t-linux (SHLIB_EXT): New. | |
3329 | (SHLIB_LINK): Use the entire build command, with substitutions. | |
3330 | (SHLIB_LIBS): Remove. | |
3331 | * config/alpha/t-osf4: Likewise. | |
3332 | * config/mips/t-iris6: Likewise. | |
3333 | * config/sparc/t-sol2: Likewise, but move shlib stuff... | |
3334 | * config/sparc/t-slibgcc-sld: ...here. | |
3335 | * config/sparc/t-slibgcc: New file. | |
3336 | ||
b15ad712 JM |
3337 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
3338 | ||
3339 | * tm.texi (INTMAX_TYPE, UINTMAX_TYPE): Define. | |
3340 | * c-common.h (enum c_tree_index): Add CTI_INTMAX_TYPE and | |
3341 | CTI_UINTMAX_TYPE. | |
3342 | (intmax_type_node, uintmax_type_node): Define. | |
3343 | * c-common.c (decl_attributes): If pedantic, warn if `mode' | |
3344 | attributes create a type wider than intmax_t. | |
3345 | (T_IM, T_UIM): Define properly. | |
3346 | * c-decl.c (INTMAX_TYPE, UINTMAX_TYPE): Define if not already | |
3347 | defined. | |
3348 | (init_decl_processing): Initialize intmax_type_node and | |
3349 | uintmax_type_node. | |
3350 | * c-lex.c (lex_number): When pedantic and warning for integer | |
3351 | constants that are too large, in C99 mode warn for those that have | |
3352 | a type wider than long long. | |
3353 | ||
2588e44e JM |
3354 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
3355 | ||
3356 | * c-common.c (FMT_FLAG_ARG_CONVERT, FMT_FLAG_SCANF_A_KLUDGE, | |
3357 | FMT_FLAG_FANCY_PERCENT_OK): Define. | |
3358 | (format_char_info): Add flag "4" to comment. | |
3359 | (format_flag_spec, format_flag_pair): New structures. | |
3360 | (format_kind_info): Add additional fields to control format | |
3361 | checking. | |
3362 | (printf_flag_specs, printf_flag_pairs, scanf_flag_specs, | |
3363 | scanf_flag_pairs, strftime_flag_specs, strftime_flag_pairs): New | |
3364 | arrays. | |
3365 | (time_char_table): Use "4" flag to handle %Ey. | |
3366 | (format_types): Add entries for new fields. | |
3367 | (get_flag_spec): New function. | |
3368 | (check_format_info): Increase size of flag_chars[] to 256. | |
3369 | Control format checking using the new fields of a format_kind_info | |
3370 | and the new tables; remove all conditionals on printf_format_type, | |
3371 | scanf_format_type or strftime_format_type. Handle all details of | |
3372 | bad combinations of flags (including width, precision and strftime | |
3373 | modifiers) through data rather than ad hoc code. Handle all | |
3374 | details of standard versions in which flags appeared through | |
3375 | data. Use the "4" flag. | |
3376 | ||
7b7de7c0 WC |
3377 | 2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com> |
3378 | ||
3379 | * config/h8300/h8300.md: Remove the memory alternative and correct | |
3380 | the insn lengths in the templates for sign extention and zero | |
3381 | extention. | |
3382 | ||
9a1ba437 RH |
3383 | 2000-10-07 Richard Henderson <rth@cygnus.com> |
3384 | ||
3385 | * calls.c (expand_call): Disallow sibcalls to noreturn functions. | |
3386 | * flow.c (make_edges): Revert last change. | |
3387 | ||
3388 | * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Don't test | |
3389 | TREE_THIS_VOLATILE. | |
3390 | * config/pa/pa.h (FUNCTION_OK_FOR_SIBCALL): Likewise. | |
3391 | ||
d38d55b4 DB |
3392 | 2000-10-06 David O'Brien <obrien@dragon.nuxi.com> |
3393 | ||
3394 | * config/alpha/elf.h: Standardize the formatting. | |
3395 | ||
94984e91 DB |
3396 | 2000-10-06 David O'Brien <obrien@FreeBSD.org> |
3397 | ||
3398 | * config/alpha/elf.h: Protect the ASM_OUTPUT_IDENT definition with an | |
3399 | #undef. | |
3400 | ||
3e4eac3f RH |
3401 | 2000-10-06 Richard Henderson <rth@cygnus.com> |
3402 | ||
3403 | * function.c (diddle_return_value): Examine | |
3404 | current_function_return_rtx instead of the DECL_RESULT. | |
3405 | (expand_function_end): Handle reloading DECL_RESULT from memory | |
3406 | into a hard register. Query promote_mode for sign of mismatched | |
3407 | modes. | |
3408 | ||
4071f896 VM |
3409 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
3410 | ||
3411 | * haifa-sched.c (schedule_insns): Fix typo in freeing | |
3412 | forward_dependency_cache. | |
3413 | ||
eb69f95c AO |
3414 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
3415 | ||
3416 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): Add | |
3417 | `TARGET_SH2' as a condition. | |
3418 | ||
178b88b9 VM |
3419 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
3420 | ||
3421 | * haifa-sched.c (anti_dependency_cache, output_dependency_cache, | |
3422 | forward_dependency_cache): New variables. | |
3423 | (add_dependence, remove_dependence): Use anti_dependency_cache and | |
3424 | output_dependency_cache. | |
3425 | (compute_block_forward_dependences): Use forward_dependency_cache. | |
3426 | (schedule_insns): Allocate and free memory for anti/output/forward | |
3427 | dependencies caches. | |
b8dad04b | 3428 | |
827bdee4 AO |
3429 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
3430 | ||
3431 | * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of | |
3432 | `! TARGET_SH1'. Reindent. | |
3433 | ||
c70eaeaf KG |
3434 | 2000-10-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3435 | ||
3436 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): | |
3437 | Move functions from here ... | |
3438 | ||
3439 | * c-common.c (is_valid_printf_arglist, c_expand_builtin_printf): | |
3440 | ... to here. | |
3441 | (c_expand_builtin): New function. | |
3442 | (init_function_format_info): Don't set `check_function_format_ptr'. | |
3443 | (c_common_nodes_and_builtins): Set built_in_class type for | |
3444 | printf/__builtin_printf to BUILT_IN_FRONTEND. | |
3445 | (c_expand_expr): Handle CALL_EXPRs that are front-end builtins. | |
3446 | ||
3447 | * c-common.h (build_function_call): Declare. | |
3448 | ||
3449 | * expr.c (expand_expr): Pass builtins with class BUILT_IN_FRONTEND | |
3450 | to `lang_expand_expr' rather than `expand_builtin'. | |
3451 | ||
3452 | * tree.c (check_function_format_ptr): Delete. | |
3453 | ||
3454 | * tree.h (check_function_format_ptr): Likewise. | |
3455 | ||
f299afab HPN |
3456 | 2000-10-06 Hans-Peter Nilsson <hp@bitrange.com> |
3457 | ||
3458 | * dwarf2out.c (build_cfa_loc): Correct to use DW_OP_regx or | |
3459 | DW_OP_bregx when cfa->reg > 31. | |
3460 | ||
3461 | * frame-dwarf2.c (decode_stack_op) [case DW_OP_regx]: Add missing | |
3462 | break. | |
3463 | ||
b313a0fe RH |
3464 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3465 | ||
3466 | * c-decl.c (warn_missing_noreturn): Remove. | |
3467 | (c_expand_body): Don't set or check can_reach_end. | |
3468 | * c-tree.h (warn_missing_noreturn): Move ... | |
3469 | * flags.h: ... here. | |
3470 | (can_reach_end): Remove. | |
3471 | * flow.c (check_function_return_warnings): New. | |
3472 | (make_edges): No edge to exit for noreturn sibcalls. | |
3473 | * function.c (expand_function_end): Save the return value | |
3474 | clobber instruction. | |
3475 | (mark_function_status): Mark it. | |
3476 | * function.h (struct function): Add x_clobber_return_insn. | |
3477 | * jump.c (can_reach_end): Remove. | |
3478 | (calculate_can_reach_end): Remove. | |
3479 | (jump_optimize_1): Don't call it. | |
3480 | * output.h (check_function_return_warnings): Declare. | |
3481 | * toplev.c (warn_missing_noreturn): Move from c-decl.c | |
3482 | (rest_of_compilation): Call check_function_return_warnings. | |
3483 | ||
83dad10c RH |
3484 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3485 | ||
3486 | * Makefile.in (NM_FOR_TARGET): New. | |
3487 | (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES. | |
3488 | (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET. | |
3489 | * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map. Depend the | |
3490 | shared library build on that and EXTRA_MULTILIB_PARTS. | |
3491 | * mkmap-flat.awk: New file. | |
3492 | * mkmap-symver.awk: New file. | |
3493 | * libgcc-std.ver: New file. | |
3494 | * config/libgcc-glibc.ver: New file. | |
3495 | * config/ia64/libgcc-ia64.ver: New file. | |
3496 | * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
3497 | (SHLIB_LINK): Add --version-script. | |
3498 | * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver. | |
3499 | * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
3500 | * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
3501 | (SHLIB_LINK): Add -M. | |
3502 | ||
d6eacd48 RH |
3503 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3504 | ||
3505 | * Makefile.in (LIB2FUNCS): Add _clz. | |
3506 | * libgcc2.c (__ffsdi2): Use count_trailing_zeros. | |
3507 | (__clz_tab): Put in its own unit, non-static. | |
3508 | * libgcc2.h: Always include longlong.h. | |
3509 | ||
29279975 RH |
3510 | * longlong.h [alpha] (count_leading_zeros): Use cmpbge with |
3511 | a zero instead of -1. | |
3512 | (count_trailing_zeros): Likewise. | |
3513 | ||
c74fa144 RH |
3514 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3515 | ||
3516 | * config/alpha/alpha.c (alpha_emit_setcc): Don't swap GT tests | |
3517 | when second op1 is const0_rtx. Validate op0 as a register. | |
3518 | * config/alpha/alpha.md (setcc_internal): Don't allow constants | |
3519 | in the first argument of the compare. | |
3520 | (setcc_swapped_internal): Likewise. | |
3521 | (setne_internal): Likewise. | |
3522 | ||
c5620996 GK |
3523 | 2000-10-05 Geoff Keating <geoffk@cygnus.com> |
3524 | ||
3525 | * tree.c (tree_size): New function split out of copy_node. | |
3526 | (make_node): Remove obstack handling. Use tree_size. | |
3527 | (copy_node): Use tree_size. | |
3528 | * tree.h: Prototype tree_size. | |
3529 | ||
331fe257 RH |
3530 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
3531 | ||
3532 | * diagnostic.c (output_format): Add missing break. | |
3533 | ||
cc0cbae1 JW |
3534 | 2000-10-05 Jim Wilson <wilson@cygnus.com> |
3535 | ||
3536 | * function.c (fixup_var_refs_1, case SET): When gen_move_insn returns a | |
3537 | SEQUENCE, call emit_insn_before, copy PATTERN and REG_NOTES of last | |
3538 | sequence insn to INSN, and delete last sequence insn. | |
3539 | ||
f5fa9a5b PE |
3540 | 2000-10-05 Phil Edwards <pme@gcc.gnu.org> |
3541 | ||
3542 | * gcc.c (main): Include generated configargs.h header | |
3543 | and use arguments in '-v' output. | |
3544 | ||
2296d164 RK |
3545 | Thu Oct 5 16:16:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3546 | ||
3547 | * gcc.c: Move data on prefixes forward in file and reorganize. | |
3548 | (md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1): | |
3549 | Always define, but make null if no value. | |
3550 | (static_specs): Add "md_exec_prefix", "md_startfile_prefix", | |
3551 | and "md_startfile_prefix_1". | |
3552 | (main): Check whether md_exec_prefix and the others are the | |
3553 | null string rather than whether the macro is defined. | |
3554 | ||
43d75418 R |
3555 | Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
3556 | ||
3557 | * (convert_move): Use zero_extendpsisi2 to do an unsigned extension | |
3558 | from PSImode to SImode. | |
3559 | ||
e389897b JJ |
3560 | 2000-10-05 Jakub Jelinek <jakub@redhat.com> |
3561 | ||
3562 | * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion | |
3563 | from float to integral mode with HOST_BITS_PER_WIDE_INT 64. | |
3564 | * dwarf2out.c (add_const_value_attribute): Divide by 4, not | |
3565 | sizeof(long). | |
3566 | ||
b8fbe62c RK |
3567 | Thu Oct 5 09:31:31 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
3568 | ||
3569 | * fold-const.c (fold, case MINUS_EXPR, case EQ_EXPR): Perform | |
3570 | negation in proper type.a | |
3571 | ||
50503ac8 RH |
3572 | 2000-10-04 Richard Henderson <rth@cygnus.com> |
3573 | ||
3574 | * configure.in (enable-shared): New. | |
3575 | * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well. | |
3576 | (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc. | |
3577 | * mklibgcc.in: Use them to link shared a libgcc. | |
3578 | * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New. | |
3579 | * config/alpha/t-ieee (SHLIB_MULTILIB): New. | |
3580 | * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New. | |
3581 | * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New. | |
3582 | ||
3583 | * configure.in (alpha-osf*): Use t-osf and x-osf. | |
3584 | * config/alpha/t-osf: New file. | |
3585 | * config/alpha/t-osf4: New file. | |
3586 | * config/alpha/x-osf: New file. | |
3587 | * config/alpha/x-alpha: Remove file. | |
3588 | ||
4b606faf WC |
3589 | 2000-10-04 Will Cohen <wcohen@redhat.com> |
3590 | ||
3591 | * c-typeck.c (process_init_element): Added warning for zero-length | |
3592 | array. | |
3593 | ||
3594 | * extend.texi (Zero Length): State that static initializers for | |
3595 | zero-length arrays are not allowed. | |
3596 | ||
c9b89a21 JH |
3597 | Mon Oct 2 14:50:14 MET DST 2000 Jan Hubicka <jh@suse.cz> |
3598 | ||
3599 | * rtlanal.c (single_set_1): Do not require USE and CLOBBERs | |
3600 | to come last. | |
3601 | ||
81bce466 MH |
3602 | 2000-10-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
3603 | ||
3604 | * config/float-c4x.h: New. | |
3605 | * configure.in (c4x-*): Set float_format to c4x. | |
b8dad04b | 3606 | * configure: Regenerate. |
81bce466 | 3607 | |
72882e08 KG |
3608 | 2000-10-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3609 | ||
3610 | * configure.in (sparc-*-solaris2*): Disable 32-to-64 cross | |
3611 | compilation for solaris versions 2.7 and greater. | |
3612 | ||
ea205a52 ME |
3613 | 2000-10-02 Marc Espie <espie@openbsd.org> |
3614 | ||
3615 | * config/alpha.h (WORD_SWITCH_TAKES_ARG): add -rpath to default, | |
3616 | instead of redefining from scratch. | |
3617 | ||
618ec0d7 DB |
3618 | 2000-10-02 David O'Brien <obrien@dragon.nuxi.com> |
3619 | ||
3620 | * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define. | |
3621 | ||
f15b9af9 MM |
3622 | 2000-10-01 Mark Mitchell <mark@codesourcery.com> |
3623 | ||
776749c5 MM |
3624 | * config/ns32k/genix.h: Remove. |
3625 | * config/ns32k/x-genix: Likewise. | |
3626 | * config/ns32k/xm-genix.h: Likewise. | |
3627 | * config/fx80: Remove all filee in directory. | |
3628 | * config/pyr: Likewise. | |
3629 | * config/tahoe: Likewise. | |
3630 | * config/gmicro: Likewise. | |
3631 | * config/spur: Likewise. | |
3632 | * configure.in: Remove configury bits for above targets. | |
3633 | * configure: Regenerated. | |
b8dad04b | 3634 | |
a7b4171a MM |
3635 | * configure.in: Don't configure chill by default. |
3636 | * configure: Regenerated. | |
b8dad04b | 3637 | |
f15b9af9 MM |
3638 | * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only. |
3639 | (lang_mark_false_label_stack): Remove. | |
3640 | * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate | |
3641 | <top level> string in GC area. | |
3642 | (mark_splay_tree_node): New function. | |
3643 | (mark_splay_tree): Likewise. | |
3644 | * except.c (mark_eh_status): Only call lang_mark_false_label_stack | |
3645 | if it exists. | |
3646 | * ggc-callbacks.c (lang_mark_false_label_stack): Remove. | |
3647 | * ggc-common.c (lang_mark_false_label_stack): Change type. | |
3648 | * ggc.h (ggc_alloc_string): Add comment. | |
3649 | (ggc_strdup): New function. | |
b8dad04b | 3650 | |
51296ba0 DC |
3651 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> |
3652 | ||
3653 | * config/avr/avr.h (BRANCH_COST): Define as 0. | |
3654 | ||
3655 | * config/pdp11/pdp11.c: #include "tree.h" added. | |
3656 | ||
adcd8f77 MM |
3657 | 2000-09-30 Marek Michalkiewicz <marekm@linux.org.pl> |
3658 | ||
3659 | * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out, | |
3660 | ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases | |
3661 | with known shift count. | |
3662 | * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3): | |
3663 | New alternative for shift count 2 with no scratch register. | |
3664 | (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to | |
3665 | "set_n" for shift counts 1 and 2. | |
3666 | ||
e35b9579 GK |
3667 | 2000-09-30 Geoff Keating <geoffk@cygnus.com> |
3668 | ||
3669 | * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE. Calculate | |
3670 | the mask value from the individual SET operations. | |
3671 | (return_internal_si): Move the USE after the RETURN. | |
3672 | (return_internal_di): Likewise. | |
3673 | (return_and_restore_fpregs_si): Likewise. | |
3674 | (return_and_restore_fpregs_di): Likewise. | |
3675 | (return_eh_si): Likewise. | |
3676 | (return_eh_di): Likewise. | |
3677 | * config/rs6000/rs6000.c (mtcrf_operation): Don't look for, | |
3678 | or check, the USE. | |
3679 | (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr. | |
3680 | Don't generate a PARALLEL around a single operation movsi_to_cr. | |
3681 | Generate the RETURN first in any PARALLELs. | |
3682 | ||
3683 | * rtlanal.c (single_set_1): Use fatal_insn to display the | |
3684 | invalid insn. Check for more cases when a USE or CLOBBER occurs | |
3685 | before a SET. | |
3686 | * Makefile.in: Update dependencies for rtlanal.o. | |
3687 | ||
1fba7553 JM |
3688 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
3689 | ||
3690 | * i386.c: Move include of "config.h" to before that of <setjmp.h>. | |
3691 | ||
28e6b1c2 JM |
3692 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
3693 | ||
3694 | * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi: | |
3695 | Consistently use @email for formatting email addresses. | |
3696 | ||
f2fa288f RH |
3697 | 2000-09-29 Richard Henderson <rth@cygnus.com> |
3698 | ||
3699 | * cse.c (notreg_cost): New argument outer. | |
3700 | (COST): Pass in SET to notreg_cost | |
3701 | (COST_IN): New. | |
3702 | (fold_rtx): Use COST_IN. Prefer constants when costs | |
3703 | are the same. | |
3704 | ||
a1c63101 DE |
3705 | 2000-09-29 David Edelsohn <edelsohn@gnu.org> |
3706 | ||
3707 | * fixinc/inclhack.def (broken_cabs): Generalize regex. | |
3708 | * fixinc/fixincl.x: Regenerate. | |
3709 | ||
70dd0f7f FS |
3710 | 2000-09-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
3711 | ||
3712 | * loop.c (check_final_value): A GIV is not replaceable if used | |
3713 | before set. | |
3714 | ||
0c6129af JL |
3715 | Fri Sep 29 10:04:12 2000 Jeffrey A Law (law@cygnus.com) |
3716 | ||
3717 | * version.c: Bump to gcc-2.97. | |
3718 | ||
3719 | Frs Sep 29 13:37:59 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
6c698a6d JH |
3720 | |
3721 | * final.c (final_scan_insn): Remove extra extract_insn call; | |
3722 | Use caching for constrain_operands. | |
3723 | (cleanup_subreg_operands): Use caching for extract_insn. | |
3724 | * recog.c (constrain_operands_cached): New. | |
3725 | * recog.h (constrain_operands_cached): Declare. | |
3726 | * i386.c (ix86_attr_length_immediate_default, | |
3727 | ix86_attr_length_address_default, ix86_agi_dependant): Cache | |
3728 | extract_insn call. | |
3729 | ||
3730 | * recog.c (asm_noperands): Tweak. | |
3731 | (extract_insn): Do not call asm_noperads for non-asm instructions. | |
3732 | ||
3733 | Fri Sep 29 13:20:42 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
3734 | ||
3735 | * recog.c (recog_memoized): Rename to recog_memoized_1. | |
3736 | * recog.h (recog_memoized): Rename to recog_memoized_1. | |
3737 | (recog_memoized): New macro. | |
3738 | * rtl.h (single_set): Rename to single_set_1 | |
3739 | (single_set): New macro. | |
3740 | * rtlanal.c (single_set): Rename to single_set_1; expect clobbers | |
3741 | to be last. | |
3742 | ||
3743 | * i386.md (strmovsi_1, strmovhi_1 strmovqi_1): | |
3744 | Do not use match_dup of input operands at outputs. | |
3745 | Use register_operand for memory expression. | |
3746 | (rep_movsi): Put use last, canonicalize. | |
3747 | Use register_operand for memory expression. | |
3748 | (rep_movqi): Put use last. | |
3749 | Use register_operand for memory expression. | |
3750 | (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup | |
3751 | of input operands at outputs. Use register_operand for memory | |
3752 | expression. | |
3753 | (rep_stossi): Put use last; canonicalize; fix match_dup in | |
3754 | the address expression | |
3755 | (rep_stosqi): Likewise. | |
3756 | (memcmp expander): Update calls. | |
3757 | (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in | |
3758 | the clobbers. | |
3759 | ||
3760 | * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is | |
3761 | VOIDmode. | |
3762 | (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons. | |
3763 | ||
41e5a1f5 DB |
3764 | 2000-09-28 David O'Brien <obrien@FreeBSD.org> |
3765 | ||
3766 | * config/i386/freebsd-aout.h: New, FreeBSD a.out config file. | |
3767 | Contains the old contents of config/i386/freebsd.h | |
3768 | * config/i386/freebsd.h: Now the ELF rather than a.out config file. | |
3769 | Contains the old contents of config/i386/freebsd-elf.h | |
3770 | * config/i386/freebsd-elf.h: Retire this file -- contents moved to | |
3771 | config/i386/freebsd.h. | |
3772 | * configure.in: Adjust for above changes. | |
3773 | * po/POTFILES.in: Likewise. | |
3774 | * po/en_GB.po: Likewise. | |
3775 | * po/gcc.pot: Likewise. | |
3776 | * configure: Rebuilt. | |
3777 | ||
1db88ef9 | 3778 | 2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
70dd0f7f | 3779 | |
1db88ef9 FS |
3780 | * doloop.c (doloop_modify): Prevent delete_insn() from |
3781 | deleting too much. Prefer loop->top over loop->start as | |
3782 | target for the new JUMP insn. | |
3783 | (doloop_valid_p): Ignore loop with exit_count != 0. | |
3784 | ||
6a07a77f PT |
3785 | 2000-09-28 Philipp Thomas <pthomas@suse.de> |
3786 | ||
3787 | * invoke.texi (i386 Options): Add athlon to table of possible | |
3788 | choices for -mcpu=. | |
3789 | ||
b5dd2c76 GDR |
3790 | 2000-09-28 Gabriel Dos Reis <gdr@codesourcery.com> |
3791 | ||
3792 | * diagnostic.h (output_clear_message_text): New function. | |
3793 | (output_message_text): New macro. | |
3794 | ||
3795 | * diagnostic.c (clear_text_info): Rename to | |
b8dad04b | 3796 | output_clear_message_text. |
b5dd2c76 GDR |
3797 | (output_clear): Adjust. |
3798 | (output_finish): Rename to output_finalize_message. Tweek. | |
b8dad04b | 3799 | (output_to_stream): Adjust. |
b5dd2c76 | 3800 | |
d8090680 NB |
3801 | 2000-09-28 Neil Booth <neilb@earthling.net> |
3802 | ||
3803 | * cpperror.c (_cpp_begin_message): Do the test for suppression | |
b8dad04b ZW |
3804 | of warnings and pedantic warnings before the "is a warning an |
3805 | error" tests. | |
d8090680 NB |
3806 | * cppinit.c (cpp_handle_option): Remove surplus \n. |
3807 | * cpplex.c (ON_REST_ARG): Delete. | |
3808 | (skip_block_comment): Initialise prevc. | |
3809 | (parse_args): Improve error messages. | |
3810 | (maybe_paste_with_next): Use CONTEXT_VARARGS rather | |
3811 | than ON_REST_ARG. | |
3812 | * cpplib.c (cpp_push_buffer): Fix grammar in message. | |
3813 | * cppmain.c (main): Set callbacks for #ident and #pragma | |
3814 | only if no_output option is false. | |
3815 | (do_pragma_implementation): Only call the #pragma handler | |
3816 | if it is set in the cpp_reader structure. | |
3817 | ||
e93eff94 DL |
3818 | Wed Sep 27 14:00:07 2000 Donald Lindsay <dlindsay@cygnus.com> |
3819 | ||
3820 | * integrate.c (copy_insn_list): if an ignored return value | |
3821 | is being clobbered, skip cloning that into the inline copy. | |
3822 | ||
59c5d27a JM |
3823 | 2000-09-27 Joseph S. Myers <jsm28@cam.ac.uk> |
3824 | ||
3825 | * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently | |
3826 | use @uref for formatting URLs. | |
3827 | ||
15ca066d ME |
3828 | 2000-09-27 Mark Elbrecht <snowball3@bigfoot.com> |
3829 | ||
3830 | * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables | |
3831 | name and prefix. | |
3832 | ||
5a8e2650 NB |
3833 | Tue 26-Sep-2000 18:25:38 BST Neil Booth <neilb@earthling.net> |
3834 | ||
3835 | * gcc.c (cpp_options): Add spec for -ftabstop=. | |
3836 | (invoke_as): New spec that handles invoking as. | |
3837 | Update specs to handle -save-temps and -traditional. | |
3838 | * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h: | |
3839 | Use invoke_as. | |
3840 | * cp/lang-specs.h, objc/lang-specs.h: Update to use | |
3841 | invoke_as, and handle -save-temps and -traditional (if | |
3842 | appropriate). | |
3843 | ||
380f6ad3 JJ |
3844 | 2000-09-26 Jakub Jelinek <jakub@redhat.com> |
3845 | ||
3846 | * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when | |
3847 | op0 is a SUBREG. | |
3848 | (function_arg_slotno): Accept TImode/CTImode. | |
3849 | * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define | |
3850 | to UNITS_PER_WORD. | |
3851 | ||
ef120fc0 MH |
3852 | 2000-09-26 Michael Hayes <mhayes@cygnus.com> |
3853 | ||
3854 | * flow.c (flow_loop_pre_header_scan): Punt if loop enters | |
3855 | from entry block. | |
3856 | ||
cf606f45 JW |
3857 | 2000-09-25 Jim Wilson <wilson@cygnus.com> |
3858 | ||
3859 | * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS. | |
3860 | (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P. | |
3861 | (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG. | |
3862 | (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P. | |
3863 | ||
a94c1199 NB |
3864 | Tue 26-Sep-2000 00:16:22 BST Neil Booth <neilb@earthling.net> |
3865 | ||
b8dad04b | 3866 | * cpplex.c (parse_args): Don't set VOID_REST flag. |
a94c1199 NB |
3867 | (CONTEXT_VARARGS): New flag. |
3868 | (maybe_paste_with_next): Set context earlier in loop. Use | |
3869 | it. Do varargs test with CONTEXT_VARARGS flag. | |
3870 | (push_arg_context): Set CONTEXT_VARARGS flag if we're | |
3871 | pushing an argument context for a varargs argument. | |
3872 | * cpplib.h (VOID_REST): Delete. | |
b8dad04b | 3873 | * gcc.dg/cpp/vararg1.c: Add test case. |
a94c1199 | 3874 | |
317639a8 BC |
3875 | 2000-09-25 Branko Cibej <branko.cibej@hermes.si> |
3876 | ||
b8dad04b ZW |
3877 | * flags.h: Declare warning flag warn_system_headers. |
3878 | * toplev.c: Define it. | |
3879 | (W_options): Add option -Wsystem-headers. | |
3880 | * diagnostic.c (count_error): Test warn_system_headers. | |
3881 | * invoke.texi: Add description for -Wsystem-headers. | |
317639a8 BC |
3882 | * cpplib.h (cpp_options): New member warn_system_headers. |
3883 | * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test | |
3884 | CPP_IN_SYSTEM_HEADER. | |
3885 | * cpplib.c (do_import, do_pragma_once): Likewise. | |
3886 | * cpperror.c (_cpp_begin_message): Test warn_system_headers | |
3887 | and CPP_IN_SYSTEM_HEADER. | |
3888 | * cppinit.c (handle_option): Recognize -Wsystem_headers. | |
3889 | (print_help): Describe -Wsystem_headers. | |
3890 | * cpplex.c (lex_line): Reorganize condition so that warnings | |
3891 | about C++ comments in system headers can be enabled. Remove | |
3892 | label do_line_comment. | |
3893 | ||
1c6d33ef NB |
3894 | Mon 25-Sep-2000 23:38:27 BST Neil Booth <neilb@earthling.net> |
3895 | ||
3896 | * cpplex.c (save_comment): Only store the initial '/' | |
3897 | now. | |
3898 | (lex_token): Combine handling of the two comment types. | |
b8dad04b | 3899 | Pass everything but the initial '/' to save_comment. |
1c6d33ef | 3900 | |
7de4d004 NB |
3901 | Mon 25-Sep-2000 23:31:45 BST Neil Booth <neilb@earthling.net> |
3902 | ||
3903 | * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive, | |
3904 | _cpp_can_paste): New library-internal prototypes. | |
3905 | * cpplex.c (dump_param_spelling, output_line_command, | |
3906 | output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput, | |
3907 | cpp_printf, cpp_output_list): Move to cppoutput.c. | |
3908 | (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix. | |
3909 | * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to | |
3910 | cppoutput.c. | |
3911 | * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token, | |
3912 | dump_param_spelling, output_line_command, cpp_scan_buffer, | |
3913 | cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved | |
3914 | from elsewhere. | |
3915 | * Makefile.in: Add cppoutput.c. | |
3916 | * po/POTFILES.in: Add cppoutput.c. | |
3917 | ||
66db6b45 RH |
3918 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
3919 | ||
3920 | * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n. | |
3921 | * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't | |
3922 | split until after reload. | |
3923 | (rotlsi3, rotldi3): New. | |
3924 | ||
4b40f758 GDR |
3925 | 2000-09-25 Gabriel Dos Reis <gdr@codesourcery.com> |
3926 | ||
3927 | * diagnostic.c (output_last_position): Define. | |
3928 | (set_real_maximum_length): Tweek. | |
3929 | * diagnostic.h (output_last_position): Declare. | |
3930 | ||
0f290768 KH |
3931 | 2000-09-25 Kazu Hirata <kazu@hxi.com> |
3932 | ||
3933 | * config/i386/i386.c: Fix formatting. | |
3934 | ||
90e9ee6c AL |
3935 | 2000-09-24 Alan Lehotsky <alehotsky@cygnus.com> |
3936 | ||
3937 | * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when | |
3938 | UNITS_PER_WORD is small. | |
3939 | ||
0e00b68b JM |
3940 | 2000-09-25 Joseph S. Myers <jsm28@cam.ac.uk> |
3941 | ||
3942 | * c-common.c (format_char_info): Add flags2; update comments. | |
3943 | (print_char_table, scan_char_table, time_char_table): Split some | |
3944 | flags out into flags2. | |
3945 | (check_format_info): Use flags2 for those flags, for identifying | |
3946 | the initial character of a scanf scanset, and for identifying | |
3947 | printf formats where the '0' flag is ignored with precision. | |
3948 | ||
0a3e1f45 HPN |
3949 | 2000-09-25 Hans-Peter Nilsson <hp@axis.com> |
3950 | ||
3951 | Changes below marked "here" add TABs on either or both sides, | |
3952 | covering start of line, up to any operand for all noted .*ASM.*_OP | |
e8638df0 | 3953 | definitions. All callers changed. |
047c1c92 HPN |
3954 | * tm.texi: Make documented *_ASM.*_OP:s include spacing |
3955 | (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP, | |
3956 | BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
3957 | ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
3958 | ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP). | |
3959 | Fix typos in description for LONG_LONG_TYPE_SIZE and | |
3960 | FINI_SECTION_ASM_OP. | |
0a3e1f45 HPN |
3961 | * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain |
3962 | why these defaults don't have leading spacing. | |
3963 | * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here. | |
3964 | * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
3965 | UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
3966 | * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP, | |
3967 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP, | |
3968 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here. | |
3969 | * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
3970 | * varasm.c (ASM_STABS_OP): Here. | |
3971 | * xcoffout.h (ASM_STABS_OP): Here. | |
e662a129 HPN |
3972 | * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, |
3973 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
3974 | INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, | |
3975 | STRING_ASM_OP): Here. | |
3976 | * config/freebsd.h (IDENT_ASM_OP): Here. | |
3977 | * config/linux-aout.h (SET_ASM_OP): Here. | |
3978 | * config/linux.h (SET_ASM_OP): Here. | |
3979 | * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
3980 | INT_ASM_OP): Here. | |
3981 | * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
3982 | * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here. | |
3983 | * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
3984 | * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
3985 | INT_ASM_OP): Here. | |
3986 | * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, | |
3987 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
3988 | INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP, | |
3989 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
3990 | FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here. | |
3991 | * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
3992 | CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
8c13c7b3 HPN |
3993 | * config/a29k/udi.h (INT_ASM_OP): Here. |
3994 | * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP, | |
3995 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
3996 | SET_ASM_OP): Here. | |
3997 | * config/alpha/alpha.h (TEXT_SECTION_ASM_OP, | |
3998 | READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
3999 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4000 | UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP, | |
4001 | ASM_STABD_OP): Here. | |
4002 | * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP, | |
4003 | COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP, | |
4004 | CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4005 | BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP, | |
4006 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP, | |
4007 | SIZE_ASM_OP, STRING_ASM_OP): Here. | |
4008 | * config/alpha/vms.h (LINK_SECTION_ASM_OP, | |
4009 | READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP, | |
4010 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here. | |
4011 | * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here. | |
8202cda0 | 4012 | (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT. |
8c13c7b3 HPN |
4013 | * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): |
4014 | Here. | |
4015 | * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4016 | BSS_SECTION_ASM_OP, SET_ASM_OP): Here. | |
4017 | * config/arm/coff.h (INT_ASM_OP): Here. | |
4018 | * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
4019 | * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here. | |
4020 | * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP, | |
4021 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here. | |
4022 | * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
4023 | * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4024 | ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP, | |
4025 | STRING_ASM_OP): Here. Update documentation copy in comments. | |
4e8aa65c HPN |
4026 | * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here. |
4027 | * config/clipper/clipper.h (TEXT_SECTION_ASM_OP, | |
4028 | DATA_SECTION_ASM_OP): Here. | |
4029 | * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): | |
4030 | Here. | |
4031 | * config/convex/convex.h (TEXT_SECTION_ASM_OP, | |
4032 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
4033 | * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4034 | BSS_SECTION_ASM_OP): Here. | |
4035 | * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4036 | BSS_SECTION_ASM_OP): Here. | |
4037 | * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4038 | Here. | |
4039 | * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP, | |
4040 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
4041 | * config/h8300/h8300.h (ASM_WORD_OP): Here. | |
71d48a01 HPN |
4042 | * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, |
4043 | BSS_SECTION_ASM_OP): Here. | |
4044 | * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here. | |
4045 | * config/i386/bsd.h (ASM_BYTE_OP): Here. | |
4046 | * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here. | |
4047 | * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here. | |
4048 | * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP): | |
4049 | Here. | |
4050 | * config/i386/freebsd-elf.h (SET_ASM_OP): Here. | |
4051 | * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): | |
4052 | Here. | |
4053 | * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP, | |
4054 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4055 | * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP, | |
4056 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
4057 | SET_ASM_OP): Here. | |
4058 | * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here. | |
4059 | * config/i386/netbsd.h (INT_ASM_OP): Here. | |
4060 | * config/i386/openbsd.h (INT_ASM_OP): Here. | |
4061 | * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP, | |
4062 | IDENT_ASM_OP): Here. | |
4063 | * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP, | |
4064 | ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP, | |
4065 | LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP, | |
4066 | SKIP_ASM_OP, GLOBAL_ASM_OP): Here. | |
4067 | * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP, | |
4068 | SHARED_BSS_SECTION_ASM_OP): Here. | |
4069 | * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
4070 | * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
4071 | DATA_SECTION_ASM_OP): Here. | |
4072 | * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4073 | CONST_SECTION_ASM_OP): Here. | |
4074 | * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here. | |
4075 | * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4076 | BSS_SECTION_ASM_OP): Here. | |
de323aa1 HPN |
4077 | * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here. |
4078 | * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here. | |
4079 | * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP, | |
4080 | BSS_ASM_OP): Here, but use trailing spaces. | |
4081 | * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
4082 | DATA_SECTION_ASM_OP): Here. | |
4083 | * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP): | |
4084 | Here. | |
4085 | * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP, | |
4086 | DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here. | |
4087 | * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4088 | TDESC_SECTION_ASM_OP): Here. | |
4089 | * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP, | |
4090 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4091 | * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4092 | Here. | |
4093 | * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4094 | BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
4095 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4096 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
4097 | * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP, | |
4098 | COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP, | |
4099 | FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4100 | SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here. | |
6e7b07a7 HPN |
4101 | * config/m32r/m32r.h (SCOMMON_ASM_OP): Here. |
4102 | * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here. | |
4103 | * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
4104 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
4105 | SET_ASM_OP): Here. | |
4106 | * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
4107 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4108 | * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here. | |
4109 | * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here. | |
4110 | * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here. | |
4111 | * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here. | |
4112 | * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here. | |
4113 | * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4114 | GLOBAL_ASM_OP): Here. | |
4115 | * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP, | |
4116 | BSS_SECTION_ASM_OP): Here. | |
4117 | * config/m68k/m68kv4.h (BSS_ASM_OP): Here. | |
4118 | * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4119 | ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP, | |
4120 | DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP, | |
4121 | SKIP_ASM_OP): Here. | |
4122 | * config/m68k/newsgas.h (SET_ASM_OP): Here. | |
4123 | * config/m68k/rtemself.h (INIT_SECTION_ASM_OP, | |
4124 | FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
4125 | * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
4126 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
4127 | SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here, | |
4128 | but use trailing spaces. | |
4129 | * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP, | |
4130 | DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP, | |
4131 | FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP): | |
4132 | Here. | |
4133 | * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
4134 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
4135 | * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4136 | CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
4137 | DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4138 | IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP, | |
4139 | GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP, | |
4140 | BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP, | |
4141 | CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP, | |
4142 | SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP, | |
4143 | VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4144 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP, | |
4145 | ASM_BYTE_OP): Here. | |
4146 | * config/m88k/openbsd.h (SET_ASM_OP): Here. | |
4147 | * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4148 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
78d057d8 HPN |
4149 | * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP, |
4150 | UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP, | |
4151 | DTORS_SECTION_ASM_OP): Here. | |
4152 | * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP, | |
4153 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4154 | * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
4155 | BSS_SECTION_ASM_OP): Here. | |
4156 | * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
4157 | * config/mips/iris5.h (ABICALLS_ASM_OP): Here. | |
4158 | * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
4159 | POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32, | |
4160 | CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP, | |
4161 | DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
4162 | * config/mips/mips.c (ABICALLS_ASM_OP): Here. | |
4163 | * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): | |
4164 | Here. | |
4165 | * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP): | |
4166 | Here. | |
4167 | * config/mips/osfrose.h (SET_ASM_OP): Here. | |
4168 | * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here. | |
76bbee81 HPN |
4169 | * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here. |
4170 | * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here. | |
4171 | * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4172 | Here. | |
4173 | * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
4174 | * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here. | |
4175 | * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
4176 | * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here. | |
4177 | * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
4178 | * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4179 | Here. | |
4180 | * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4181 | Here. | |
4182 | * config/rs6000/rs6000.h (SET_ASM_OP): Here. | |
4183 | * config/rs6000/sol2.h (ASM_STABN_OP): Here. | |
4184 | * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP): | |
4185 | Here. | |
471b6f1b HPN |
4186 | * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP, |
4187 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here. | |
4188 | * config/sparc/linux.h (COMMON_ASM_OP): Here. | |
4189 | * config/sparc/linux64.h (COMMON_ASM_OP, | |
4190 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
4191 | * config/sparc/litecoff.h (BSS_SECTION_ASM_OP, | |
4192 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
4193 | * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here. | |
4194 | * config/sparc/pbd.h (ASM_INT_OP): Here. | |
4195 | * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here. | |
4196 | * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
4197 | DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here. | |
4198 | * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP, | |
4199 | UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here. | |
4200 | * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP, | |
4201 | UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
4202 | UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, | |
4203 | TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, | |
4204 | CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
4205 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
4206 | EH_FRAME_SECTION_ASM_OP): Here. | |
4207 | * config/sparc/vxsim.h (COMMON_ASM_OP): Here. | |
4208 | * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4209 | Here. | |
4210 | * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4211 | Here. | |
4212 | * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP, | |
4213 | TCOMMON_ASM_OP): Here. | |
4214 | * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
4215 | Here. | |
4216 | * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
4217 | ASM_BYTE_OP): Here. | |
0a3e1f45 | 4218 | |
ea9ea008 RH |
4219 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
4220 | ||
4221 | * expmed.c (store_bit_field): Adjust last change to not consider | |
4222 | any word-sized field naturally aligned. | |
4223 | ||
9e495700 RH |
4224 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
4225 | ||
4226 | * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle | |
4227 | TFmode unordered compares properly. Revalidate integer compare | |
4228 | operands. | |
4229 | (alpha_emit_setcc): New. | |
4230 | (alpha_emit_conditional_move): Revalidate integer compare operands. | |
4231 | * config/alpha/alpha-protos.h: Update. | |
4232 | * config/alpha/alpha.md (cmpdi): Allow general operands. | |
4233 | (sne): Use alpha_emit_setcc. | |
4234 | (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise. | |
4235 | (sunordered, sordered): New. | |
4236 | ||
2ed4af6f RH |
4237 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
4238 | ||
4239 | * config/ia64/ia64-protos.h: Update. | |
4240 | * config/ia64/ia64.c (call_multiple_values_operation): Remove. | |
4241 | (ia64_expand_call): New. | |
4242 | (ia64_expand_prologue): Emit an alloc if we need extra input | |
4243 | registers. | |
4244 | (ia64_expand_epilogue): New arg sibcall_p; don't emit the return | |
4245 | instruction if true. | |
4246 | (struct reg_flags): Add is_sibcall. | |
4247 | (rtx_needs_barrier): A sibcall does not use CFM et al. Ignore USEs. | |
4248 | (emit_insn_group_barriers): Set flags.is_sibcall. Remove hacks | |
4249 | for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal. | |
4250 | * config/ia64/ia64.h (PREDICATE_CODES): Update. | |
4251 | * config/ia64/ia64.md (call): Use ia64_expand_call. | |
4252 | (call_value): Likewise. | |
4253 | (sibcall, sibcall_value): New. | |
4254 | (call patterns): Remove extra expanders; tidy. | |
4255 | (sibcall_epilogue): New. | |
4256 | (set_bsp): Remove the extra USE. Put the operand inside the UNSPEC. | |
4257 | ||
e1389cac RH |
4258 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
4259 | ||
4260 | * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode. | |
4261 | ||
fd442cef RH |
4262 | * sibcall.c (skip_pic_restore): New. |
4263 | (identify_call_return_value): Use it. | |
4264 | ||
c06aa51e MM |
4265 | 2000-09-24 Mark Mitchell <mark@codesourcery.com> |
4266 | ||
4267 | * c-tree.texi: Moved here from cp/ir.texi. Documented nested | |
4268 | functions. Generalize to handle both C and C++. | |
4269 | * Makefile.in (c-tree.info): New target. | |
4270 | (info): Add c-tree.info. | |
b8dad04b | 4271 | |
bd5dab53 RK |
4272 | Sun Sep 24 09:15:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4273 | ||
4274 | * expr.c (store_field): If BITSIZE is negative, use size of type. | |
4275 | (expand_expr, case COMPONENT_EXPR): Likewise. | |
4276 | ||
838f313b NB |
4277 | Sun 24-Sep-2000 11:40:23 BST Neil Booth <NeilB@earthling.net> |
4278 | ||
4279 | * cpplex.c: Update TODO comment. | |
4280 | * cpplib.c (do_error, do_warning): Merge common code of | |
4281 | do_error and do_warning into do_diagnostic. Use it. | |
4282 | (do_diagnostic): New function. | |
4283 | * cpplib.h: Fix comment typo. | |
4284 | ||
c5412f06 JM |
4285 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
4286 | ||
4287 | * c-common.c (check_format_info): Warn for a wide character string | |
4288 | used as a non-wide format argument. | |
4289 | ||
1c44c45d JM |
4290 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
4291 | ||
4292 | * builtins.def (BUILT_IN_LLABS): Add. | |
4293 | * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS. | |
4294 | * c-common.c (c_common_nodes_builtins): Create builtin functions | |
4295 | __builtin_llabs, and plain llabs unless no_nonansi_builtins | |
4296 | outside of C99 mode. | |
4297 | (expand_tree_builtin): Handle BUILT_IN_LLABS. | |
4298 | ||
cbcff6df NB |
4299 | Sat 23-Sep-2000 22:39:18 BST Neil Booth <NeilB@earthling.net> |
4300 | ||
4301 | * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q, | |
4302 | CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete. | |
4303 | * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist, | |
4304 | _cpp_free_toklist): No need to worry about extra dummy token | |
4305 | at the start of token lists any more. | |
4306 | (trigraph_ok): Only warn outside comments. | |
4307 | (skip_block_comment): Set and clear lexing_comment. | |
4308 | (skip_line_comment): Take a cpp_reader not cpp_buffer. | |
4309 | Set and clear lexing_comment. | |
4310 | (parse_number): Handle leading '.' indicated by pfile->seen_dot. | |
4311 | (check_long_token): Delete. | |
4312 | (lex_percent, lex_dot): New subroutines of lex_token to | |
4313 | handle lexing of '.' and '%' without lookback. | |
4314 | (lex_token): Use lex_dot and lex_percent. | |
4315 | (lex_line): Don't check for LIST_OFFSET. | |
4316 | (_cpp_init_input_buffer): Update for new _cpp_init_toklist. | |
4317 | * cpplib.c (_cpp_parse_assertion): Similarly. | |
4318 | (cpp_push_buffer): Initialize extra_char. | |
4319 | * cpplib.h (LIST_OFFSET): Delete. | |
4320 | (struct cpp_buffer): New member extra_char. | |
4321 | (struct lexer_state): New members lexing_comment and seen_dot. | |
4322 | ||
2abdcaee JM |
4323 | 2000-09-23 Jason Merrill <jason@redhat.com> |
4324 | ||
4325 | * config/rs6000/x-aix41 (CLIB): Define here. | |
4326 | * config/rs6000/t-aix43: Not here. | |
4327 | * config/rs6000/t-aix41: Or here. Remove. | |
4328 | * configure.in: Don't use it. | |
4329 | ||
981d4858 JM |
4330 | 2000-09-22 Jason Merrill <jason@redhat.com> |
4331 | ||
2abdcaee JM |
4332 | * configure.in: Add test for HAVE_LD_DWARF_LINKONCE. |
4333 | * toplev.c: Use it to initialize flag_eliminate_dwarf2dups. | |
4334 | * config.in: Regenerate. | |
4335 | ||
981d4858 JM |
4336 | * configure.in: Fix checks for assembler features when using a |
4337 | one-tree assembler that has not yet been built. | |
4338 | Fix --disable-threads. | |
4339 | ||
afa223c6 GK |
4340 | 2000-09-19 Geoff Keating <geoffk@cygnus.com> |
4341 | ||
4342 | * stmt.c (expand_asm_operands): Allow # in constraints. | |
4343 | ||
a3a834aa JM |
4344 | 2000-09-22 Jason Merrill <jason@redhat.com> |
4345 | ||
4346 | * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace. | |
4347 | ||
4348 | * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for | |
4349 | function-local names. | |
4350 | ||
18424ae1 BL |
4351 | 2000-09-22 Brad Lucier <lucier@math.purdue.edu> |
4352 | Mark Mitchell <mark@codesourcery.com> | |
4353 | ||
b8dad04b ZW |
4354 | * toplev.c (warn_disabled_optimization): Declare new warning flag. |
4355 | * flags.h (warn_disabled_optimization): Add it here. | |
4356 | * gcse.c (gcse_main): Add warning when disabled. | |
4357 | * invoke.texi: Document -Wdisabled-optimization. | |
18424ae1 | 4358 | |
1bfb5f8f JM |
4359 | 2000-09-21 Jason Merrill <jason@redhat.com> |
4360 | ||
4361 | * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4. | |
4362 | ||
4363 | * dwarf2out.c (tree_add_const_value_attribute): New fn. | |
4364 | (gen_variable_die): Call it for non-definitions. | |
4365 | ||
4366 | * dwarf2out.c (die_struct): Add die_mark field. | |
4367 | (mark_dies, unmark_dies): New fns. | |
4368 | (clear_die_sizes): Remove. | |
4369 | (print_die): Check die_symbol rather than die_offset. | |
4370 | (build_abbrev_table, output_pubnames, output_aranges): Check | |
4371 | die_mark rather than die_offset. | |
4372 | (output_comp_unit): Move calc_die_sizes after build_abbrev_table. | |
4373 | Call mark_dies. | |
4374 | ||
2047e26f NB |
4375 | Thu 21-Sep-2000 18:19:05 BST Neil Booth <NeilB@earthling.net> |
4376 | ||
4377 | * cppfiles.c (lookup_include_file): Rename to open_file. | |
4378 | Always create a splay tree value, even on syscall failures. | |
4379 | Negative entries indicated by fd == -2. | |
4380 | Re-open files closed in the meantime. | |
4381 | (_cpp_fake_include): Create a negative splay tree entry. | |
4382 | (find_include_file, cpp_read_file): Update for function name | |
4383 | change. | |
4384 | * gcc.gd/cpp/mi4.c: Testcase. | |
4385 | ||
f27cd94d NC |
4386 | 2000-09-21 Nick Clifton <nickc@redhat.com> |
4387 | ||
2359a5e1 NC |
4388 | * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for |
4389 | ARM and THUMB modes. | |
4390 | ||
f27cd94d | 4391 | * config/mcore/mcore.c: Fix compile time warnings. |
b8dad04b | 4392 | * config/mcore/mcore-protos.h: Fix compile time warnings. |
f27cd94d | 4393 | |
7373064a DA |
4394 | 2000-09-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
4395 | ||
4396 | * configure.in: Correct test of gcc_cv_glibc. | |
4397 | * configure: Rebuilt. | |
4398 | * config.in: Rebuilt. | |
4399 | ||
07328167 KG |
4400 | 2000-09-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4401 | ||
4402 | * builtins.c (expand_builtin_fputs): Also expand when length!=1. | |
4403 | (expand_builtin): Handle BUILT_IN_FWRITE. | |
4404 | ||
4405 | * builtins.def (BUILT_IN_FWRITE): New entry. | |
4406 | ||
4407 | * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite. | |
4408 | ||
5fa7c8ce RK |
4409 | Wed Sep 20 15:39:14 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4410 | ||
dc36ec2c RK |
4411 | * gcc.c (modify_target): New variable and struct. |
4412 | (process_command): Handle MODIFY_TARGET_NAME. | |
4413 | * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro. | |
4414 | * config/pa/pa.h (MODIFY_TARGET_NAME): New macro. | |
4415 | ||
5fa7c8ce RK |
4416 | * c-decl.c (finish_decl): Add else's to avoid referencing |
4417 | TYPE_DOMAIN of an ERROR_MARK. | |
4418 | ||
155b14a8 DC |
4419 | Wed Sep 20 21:44:31 2000 Denis Chertykov <denisc@overta.ru> |
4420 | ||
4421 | * config/avr/avr.c (adjust_insn_length): Adjust lengths of | |
4422 | `reload_in*' insns. | |
4423 | ||
4424 | 2000-09-19 Marek Michalkiewicz <marekm@linux.org.pl> | |
4425 | ||
4426 | * config/avr/avr.md (neghi2): Add alternative for input and output | |
4427 | operands in different registers, as in negsi2. | |
4428 | (*negsi2): Remove '*' from the name. Use "movw" if available. | |
4429 | ||
fd09c61f JW |
4430 | 2000-09-19 Jim Wilson <wilson@cygnus.com> |
4431 | ||
4432 | * config/ia64/crtbegin.asm (__dso_handle): Delete use of | |
4433 | HAVE_GAS_HIDDEN macro. | |
4434 | ||
7eea5554 NB |
4435 | Tue 19-Sep-2000 22:38:57 BST Neil Booth <NeilB@earthling.net> |
4436 | ||
4437 | * cpplex.c (lex_line): Drop the EOF token for unknown | |
4438 | directives in assembler. | |
4439 | ||
a473fe45 DE |
4440 | 2000-09-19 David Edelsohn <edelsohn@gnu.org> |
4441 | ||
4442 | * configure.in: Allow enable_threads_flag value of "aix". Define | |
fd60bf96 | 4443 | thread_file as "aix" for AIX 4.3 and above. |
a473fe45 | 4444 | * configure: Regenerated. |
fd60bf96 DE |
4445 | |
4446 | * gthr-aix.h: New file. | |
4447 | ||
a473fe45 DE |
4448 | * rs6000/t-aix43: Replace soft-float multilib with pthread. |
4449 | Remove 403 processor multilib match. Fix rios2 processor multilib | |
4450 | match. | |
4451 | ||
fd60bf96 DE |
4452 | * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section |
4453 | to return to appropriate csect. | |
4454 | ||
ad3fd36f KG |
4455 | 2000-09-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4456 | ||
4457 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New | |
4458 | functions. | |
4459 | (expand_builtin_fputs): Set `target' parameter for `expand_expr'. | |
4460 | (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and | |
4461 | BUILT_IN_PRINTF. | |
4462 | ||
4463 | * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF): | |
4464 | New entries. | |
4465 | ||
4466 | * c-common.c (init_function_format_info): Handle __builtin_printf. | |
4467 | Set `check_function_format_ptr'. | |
4468 | (c_common_nodes_and_builtins): Set `puts_ftype' and | |
4469 | `printf_ftype'. Declare __builtin_putchar, __builtin_puts, | |
4470 | __builtin_printf and printf. | |
4471 | ||
4472 | * tree.c, tree.h (check_function_format_ptr): Declare. | |
4473 | ||
6f3d20a0 NB |
4474 | Tue 19-Sep-2000 18:26:57 BST Neil Booth <NeilB@earthling.net> |
4475 | ||
b8dad04b | 4476 | * cppfiles.c (read_include_file): Take no special action for |
6f3d20a0 NB |
4477 | zero-length files. |
4478 | ||
b4f75276 BS |
4479 | 2000-09-19 Bernd Schmidt <bernds@redhat.co.uk> |
4480 | ||
afc6898e BS |
4481 | * final.c (insn_current_reference_address): Use INSN_SHUID of seq |
4482 | rather than that of branch. | |
4483 | (shorten_branches): Don't increment insn_current_address twice. | |
4484 | ||
b4f75276 BS |
4485 | Undo most of the Wed Jan 27 23:39:53 1999 patch: |
4486 | * loop.h (struct induction): Delete members derived, ix and last_use. | |
4487 | (struct loop_ivs): Delete members first_increment_giv and | |
4488 | last_increment_giv. | |
4489 | * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats, | |
4490 | recombine_givs): Delete functions. | |
4491 | (find_and_verify_loops): Don't initialize cont_dominator. | |
4492 | (strength_reduce): Lose code to try to find bivs that can be | |
4493 | expressed as givs of another biv, and to convert biv increments | |
4494 | into givs. | |
4495 | Lose loop_scan_start variable, always use loop->scan_start. | |
4496 | Don't call recombine_givs. Don't handle derived givs. | |
4497 | (record_giv): Don't initialize derived and last_use fields. | |
4498 | (biv_eliminiation_giv_has_0_offset): Lose code to handle derived | |
4499 | givs. | |
4500 | * unroll.c (derived_regs): Delete static variable. | |
4501 | (unroll_loop): Don't initialize it. | |
4502 | (copy_loop_body): Lose code to handle derived givs. | |
4503 | (find_splittable_givs): Don't check for givs made from biv | |
4504 | increments. | |
4505 | Don't set derived_regs. | |
4506 | ||
0f805606 BS |
4507 | Fix misapplied earlier patch: |
4508 | * config/sh/sh.md (floatsisf_ie): Reenable. Remove explicit reference | |
4509 | to fpul. | |
4510 | (floatsisf2): Generate floatsisf_ie by default. | |
4511 | (floatsisf_i4): Conditional on TARGET_SH4. | |
4512 | ||
4513 | (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand | |
4514 | predicate for the expanders. | |
4515 | ||
8aa0e194 RH |
4516 | 2000-09-19 Richard Henderson <rth@cygnus.com> |
4517 | ||
0d97fd9e RH |
4518 | * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols |
4519 | in addition to pentium and pentiumpro symbols. | |
4520 | (CPP_CPU_DEFAULT_SPEC): Likewise. | |
4521 | ||
39b726dd RH |
4522 | * c-typeck.c (c_expand_asm_operands): Restore the output tree |
4523 | after expanding. | |
4524 | ||
9790cefd RH |
4525 | * stmt.c (expand_expr_stmt): Only call warn_if_unused_value |
4526 | if the tree has side effects. | |
4527 | (warn_if_unused_value): Do not warn about void constructs. | |
4528 | ||
8e5a0fcb RH |
4529 | * c-decl.c (poplevel): Invoke warn_about_unused_variables. |
4530 | ||
8aa0e194 RH |
4531 | * unroll.c (copy_loop_body): Update LABEL_NUSES before |
4532 | calling invert_jump. | |
4533 | ||
62f7f1f5 GK |
4534 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
4535 | ||
4536 | * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS | |
4537 | into anything. | |
4538 | ||
3f80e6ac KG |
4539 | 2000-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4540 | ||
4541 | * Makefile.in (c-common.o): Depend on diagnostic.h. | |
4542 | ||
4543 | * c-common.c: Include diagnostic.h. | |
4544 | (tfaff): Delete. | |
4545 | (status_warning): New function. | |
4546 | (check_format_info, maybe_read_dollar_number, check_format_types, | |
4547 | finish_dollar_format_checking, check_function_format): Accept a | |
4548 | `status' parameter. All callers changed. | |
4549 | ||
4550 | * c-common.h (check_function_format): Accept a `status' parameter. | |
4551 | ||
4552 | * c-typeck.c: Update call to `check_function_format'. | |
4553 | ||
cfbd829c RH |
4554 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4555 | ||
4556 | * c-decl.c (c_expand_body): Call mark_varargs before | |
4557 | expand_function_start. | |
4558 | ||
c21d86e1 GK |
4559 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
4560 | ||
4561 | * config/rs6000/eabi-cn.asm: Use /**/ to delimit comments, not #. | |
4562 | * config/rs6000/eabi-ci.asm: Likewise. | |
4563 | ||
f0417c82 RH |
4564 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4565 | ||
4566 | * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx | |
4567 | for BImode. | |
4568 | ||
226ed43f JW |
4569 | 2000-09-18 Jim Wilson <wilson@cygnus.com> |
4570 | ||
5c3c320e JW |
4571 | * unroll.c (loop_iterations): Pass increment to extend_for_giv_value |
4572 | before passing it to fold_rtx_mult_add. | |
4573 | ||
ec919c98 JW |
4574 | * unroll.c (final_giv_value): Pass increment through |
4575 | extend_value_for_giv before passing it to emit_iv_add_mult. | |
4576 | ||
226ed43f JW |
4577 | * function.c (fixup_var_refs_1, case ZERO_EXTRACT): If we have a |
4578 | paradoxical subreg, then directly substitute the replacement and | |
4579 | return. | |
4580 | ||
b542c0fb NB |
4581 | Mon 18-Sep-2000 22:12:44 BST Neil Booth <NeilB@earthling.net> |
4582 | ||
b4f75276 | 4583 | * cpp.texi: Update documentation, including some clarifications, |
b542c0fb NB |
4584 | the treatment of various newline combinations, and space between |
4585 | backslash and newline. | |
4586 | ||
800a6a0c R |
4587 | Mon Sep 18 21:00:47 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
4588 | ||
4589 | * sdbout.c (PUT_SDB_DEF, PUT_SDB_TAG, PUT_SDB_EPILOGUE_END): | |
4590 | Replace ASM_OUTPUT_LABELREF with assemble_name. | |
4591 | ||
50ceefc2 R |
4592 | Mon Sep 18 20:26:50 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
4593 | ||
4594 | * sh.c (addsubcosts): CONST is not cheap. | |
4595 | (find_barrier): For Sh1, take alignment after jumps into account. | |
4596 | ||
659e47fb AH |
4597 | 2000-09-15 Andrew Haley <aph@redhat.com> |
4598 | ||
4599 | * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to | |
4600 | remove all SETs of SUBREGs of hard registers. | |
7373064a | 4601 | * function.c (purge_hard_subreg_sets): New function. |
659e47fb AH |
4602 | (purge_single_hard_subreg_set): New function. |
4603 | * rtl.h: (purge_hard_subreg_sets): New function. | |
4604 | ||
f2f90c63 RH |
4605 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4606 | ||
4607 | * config/ia64/ia64-protos.h: Update. | |
4608 | * config/ia64/ia64.c (signed_inequality_operator): New. | |
4609 | (ia64_expand_compare): New. | |
4610 | (ia64_register_move_cost): Handle PR_REGS moves. | |
4611 | (ia64_secondary_reload_class): Require a GR when moving to a PR. | |
4612 | (struct reg_write_state): Add written_by_and/or. | |
4613 | (struct reg_flags): Add is_and/or. | |
4614 | (rws_update): Set them. | |
4615 | (rws_access_regno): Test them to allow parallel comparisons. | |
4616 | (rtx_needs_barrier): Recognize parallel comparisons. | |
4617 | (emit_insn_group_barriers): Set prev_insn after a call stop bit. | |
4618 | Call recog_memoized; ignore pred_rel_mutex. | |
4619 | (emit_predicate_relation_info): Don't call find_basic_blocks here. | |
4620 | (ia64_reorg): Do it here instead. | |
4621 | * config/ia64/ia64.h: s/CCmode/BImode/g | |
4622 | (MODES_TIEABLE_P): Don't tie BImode. | |
4623 | (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs. | |
4624 | (CONST_COSTS): Pick sensible values for CONST_INT based on context. | |
4625 | (RTX_COSTS): Make multiply 4 insns. | |
4626 | (MEMORY_MOVE_COST): New. | |
4627 | (PREDICATE_CODES): Update. | |
4628 | * config/ia64/ia64.md: s/CCmode/BImode/g | |
4629 | (movcci, movbi): New. | |
4630 | (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New. | |
4631 | (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New. | |
4632 | (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New. | |
4633 | (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New. | |
4634 | (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New. | |
4635 | (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New. | |
4636 | (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New. | |
4637 | (mulsi, muldi): Use xmpy not xma. | |
4638 | (cmpbi): New. | |
4639 | (movcc, movcc_internal): Remove. | |
4640 | (branch expanders): Use ia64_expand_compare. | |
4641 | (setcc expanders): Likewise. | |
4642 | (cmov insns): Use move_operand and ia64_move_ok. | |
4643 | (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the | |
4644 | scheduler from moving it past a use. | |
4645 | * config/ia64/build.hacks: Remove. | |
4646 | ||
0d9f234d NB |
4647 | Mon 18-Sep-2000 19:21:35 BST Neil Booth <NeilB@earthling.net> |
4648 | ||
4649 | * cpphash.h (HASHSTEP): Take character rather than pointer | |
4650 | to character. | |
4651 | (_cpp_check_directive, _cpp_check_linemarker): Update prototypes. | |
4652 | ||
4653 | * cpphash.c (cpp_loookup): Update for new HASHSTEP. | |
4654 | ||
4655 | * cpplex.c (auto_expand_name_space, trigraph_replace, | |
4656 | backslash_start, handle_newline, parse_name, INIT_TOKEN_STR, | |
4657 | IMMED_TOKEN, PREV_TOKEN_TYPE, PUSH_TOKEN, REVISE_TOKEN, | |
4658 | BACKUP_TOKEN, BACKUP_TRIGRAPH, MIGHT_BE_DIRECTIVE, | |
4659 | KNOWN_DIRECTIVE): Delete. | |
4660 | ||
4661 | (handle_newline, check_long_token, skip_escaped_newlines, | |
4662 | unterminated): New functions. | |
4663 | (ACCEPT_CHAR, SAVE_STATE, RESTORE_STATE): New macros. | |
4664 | ||
4665 | (parse_identifier): Was parse_name, new implementation. | |
4666 | (skip_line_comment, skip_block_comment, skip_whitespace, | |
4667 | parse_number, parse_string, trigraph_ok, save_comment, | |
4668 | adjust_column, _cpp_get_line): New implementations. | |
4669 | ||
4670 | (lex_token): New function. Lexes a token at a time, looking | |
4671 | forwards. Contains most of the guts of the old lex_line. | |
4672 | (lex_line): New implementation, using lex_token to obtain | |
4673 | individual tokens. | |
4674 | (cpp_scan_buffer): Use the token's line, not the list's line. | |
4675 | ||
4676 | * cpplib.c (_cpp_check_directive, _cpp_check_linemarker): | |
4677 | New implementations. | |
4678 | (do_assert): Don't bother setting the answer's list's line. | |
4679 | (cpp_push_buffer): Initialise new pfile and read_ahead members | |
4680 | of struct cpp_buffer. | |
4681 | ||
4682 | * cpplib.h (cppchar_t): New typedef. | |
4683 | (struct cpp_buffer): read_ahead, pfile and col_adjust are | |
4684 | new members. | |
4685 | (struct lexer_state): New structure that determines the state | |
4686 | and behaviour of the lexer. | |
4687 | (IN_DIRECTIVE, KNOWN_DIRECTIVE): New macros. | |
4688 | (struct cpp_reader): New member "state". Rename | |
4689 | multiline_string_line and multiline_string_column. Delete | |
4690 | col_adjust, in_lex_line members. | |
4691 | (CPP_BUF_COLUMN): Update. | |
4692 | ||
a191f0ee RH |
4693 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
4694 | ||
9f8e169e RH |
4695 | * combine.c (simplify_comparison): Shift a NOT out of a single |
4696 | bit test. | |
4697 | ||
1f3f36d1 RH |
4698 | * combine.c (if_then_else_cond): Canonicalize BImode true to |
4699 | STORE_FLAG_VALUE. | |
4700 | * explow.c (trunc_int_for_mode): Likewise. | |
4701 | ||
5bd60ce6 RH |
4702 | * combine.c (combine_simplify_rtx): Use gen_unary to distribute |
4703 | the NOT for De Morgan's rule. | |
4704 | * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT | |
4705 | of a comparison to the reverse comparison. | |
4706 | ||
d340408c RH |
4707 | * combine.c (try_combine): Allow split to create a single insn. |
4708 | ||
a191f0ee RH |
4709 | * machmode.def: Add BImode. Add a column for bitsize. |
4710 | * machmode.h (DEF_MACHMODE): Adjust for extra column. | |
4711 | (GET_MODE_BITSIZE): Use it. | |
4712 | * rtl.c (DEF_MACHMODE): Adjust for extra column. | |
4713 | (mode_bitsize): New. | |
4714 | (mode_mask_array): Use bitsize. | |
4715 | * combine.c (combine_simplify_rtx): Require inner and outer | |
4716 | modes to match on nonzero_bits optimizations. | |
4717 | ||
5d77a50c BS |
4718 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
4719 | ||
4720 | * reload1.c (forget_old_reloads_1): If a hard reg is stored, clear | |
4721 | its entry in spill_reg_store. | |
0fb8cb90 | 4722 | * config/sh/lib1funcs.ams (movstr_i4 functions): Always compile in. |
2e361e59 BS |
4723 | * sh.c (reg_no_subreg_operand): New function. |
4724 | * sh-protos.h (reg_no_subreg_operand): Declare it. | |
4725 | * sh.h (PREDICATE_CODES): Add it. | |
4726 | * sh.md (floatsisf2_i4, floatsidf2_i, extendsfdf2_i4): Use it for | |
4727 | input operand that needs to be in fpul. | |
4728 | (fix_truncsfsi2, fix_truncsfsi2_i4): Use register_operand for output. | |
42d5d0f1 BS |
4729 | * sh.c (find_barrier): Take into account that machine_dependent_reorg |
4730 | might add new insns. | |
5d77a50c | 4731 | |
55eec660 AO |
4732 | 2000-09-18 Alexandre Oliva <aoliva@redhat.com> |
4733 | ||
40fc375d AO |
4734 | * config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as |
4735 | MAYBE_DEAD. | |
4736 | (sh_expand_epilogue): Take the PIC register into account when | |
4737 | computing the frame size. | |
4738 | ||
55eec660 AO |
4739 | * config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs. |
4740 | * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect | |
4741 | LABEL_REFs with a PIC-safe unspec. | |
4742 | ||
fc6df7e1 JM |
4743 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4744 | ||
4745 | * c-common.c (check_format_info): Properly save the argument | |
4746 | number and parameter for $ operand number formats in case width | |
4747 | and precision arguments are also used. Allow printf width and | |
4748 | precision arguments to have operand numbers even if none was | |
4749 | specified for the main format, since this is OK for %*.*m. Only | |
4750 | object to missing $ operand number if the format used requires an | |
4751 | argument. | |
4752 | ||
effa5541 JM |
4753 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4754 | ||
4755 | * c-common.c (format_char_info): Add 'W' flag to comment. | |
4756 | (print_char_table, scan_char_table): Use it. | |
4757 | (check_format_info): Use the 'W' flag to determine whether a | |
4758 | format argument is written into. | |
4759 | ||
99303ae4 JM |
4760 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4761 | ||
4762 | * c-common.c (check_format_types): Reorganise and clean up, | |
4763 | checking earlier for ERROR_MARKs and making cur_type into its | |
4764 | TYPE_MAIN_VARIANT where convenient. | |
4765 | ||
9231abf2 JM |
4766 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4767 | ||
4768 | * gcc.c (cpp_options): Add specs for __STDC_HOSTED__. | |
4769 | ||
cf67d231 BS |
4770 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
4771 | ||
4772 | * optabs.c (emit_libcall_block): Set CONST_CALL_P for the call. | |
4773 | ||
bd793c65 BS |
4774 | * i386-protos.h (ix86_init_builtins, ix86_expand_builtin): Declare. |
4775 | * i386.c (struct builtin_description): New. | |
4776 | (bdesc_comi, bdesc_2arg, bdesc_1arg): New arrays. | |
4777 | (mmx_reg_operand): Declare MODE arg as unused. | |
4778 | (ix86_expand_sse_comi, ix86_expand_sse_compare, safe_vector_operand, | |
4779 | ix86_expand_unop1_builtin, ix86_expand_unop_builtin, | |
4780 | ix86_expand_binop_builtin, ix86_expand_store_builtin, | |
4781 | ix86_init_builtins, ix86_expand_builtin): New functions. | |
4782 | * i386.h (ix86_builtins): New enumeration. | |
4783 | (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): New macros. | |
4784 | * i386.md (attr length_immediate): 0 for mmx/sse types. | |
4785 | (attr prefix_0f): 1 for mmx/sse types. | |
4786 | (setcc_2): Remove "*" so we get gen_setcc_2. | |
4787 | (emms): Account for changed register numbering. Set "memory" attr | |
4788 | to unknown. | |
4789 | (sfence): Set "memory" attr to unknown. | |
4790 | ||
4070d885 AJ |
4791 | 2000-09-18 Andreas Jaeger <aj@suse.de> |
4792 | ||
4793 | * configure.in: Define _GNU_SOURCE only when using the GNU C | |
4794 | Library. | |
a191f0ee RH |
4795 | * configure: Regenerated. |
4796 | * config.in: Regenerated. | |
4070d885 | 4797 | |
2ac86f90 MM |
4798 | 2000-09-17 Mark Mitchell <mark@codesourcery.com> |
4799 | ||
31a1fdad MM |
4800 | * cppinit.c (cpp_init): Don't use ANSI prototypes. |
4801 | * flow.c (flow_dump_loop): Likewise. | |
4802 | (flow_loops_dump): Likewise. | |
4803 | ||
2ac86f90 MM |
4804 | * c-typeck.c (c_start_case): Fix typo. |
4805 | ||
60e9d01c JM |
4806 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
4807 | ||
4808 | * c-decl.c (grokdeclarator): Don't give a warning about defaulting | |
4809 | to int for plain complex which defaults to complex double. Do | |
4810 | warn about defaulting to complex double if pedantic. Warn about | |
4811 | complex integer types if pedantic. Warn about complex types if | |
4812 | pedantic and not in C99 mode. | |
4813 | * c-typeck.c (build_unary_op): If pedantic, warn about use of ~ | |
4814 | for complex conjugation. | |
4815 | ||
bc5006c7 JM |
4816 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
4817 | ||
4818 | * contrib.texi: Update my entry. | |
4819 | ||
7e3bd81e DC |
4820 | Sun Sep 17 18:48:32 2000 Denis Chertykov <denisc@overta.ru> |
4821 | ||
23cb1766 RK |
4822 | * config/avr/avr.md (mcu_enhanced): New attribute. |
4823 | (mcu_mega): Likewise. | |
4824 | (extendhisi2): Use mcu_enhanced. | |
4825 | (zero_extendhisi2): Likewise. | |
4826 | (call_insn): Use mcu_enhanced and mcu_mega. | |
4827 | (call_value_insn): Likewise. | |
4828 | (*sbrx_branch): Use mcu_mega. | |
4829 | (*sbrx_and_branchsi): Likewise. | |
4830 | (*sbrx_and_branchhi): Likewise. | |
4831 | (*tablejump_lib): Likewise. | |
7e3bd81e | 4832 | |
6a51f4a0 RK |
4833 | Sun Sep 17 10:46:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4834 | ||
ec569656 RK |
4835 | * alias.c (true_dependence): Allow non-unchanging read to conflict |
4836 | with unchanging write. | |
4837 | ||
23cb1766 RK |
4838 | * expr.c (store_constructor_field): Accept ALIAS_SET arg. |
4839 | (store_constructor): Pass alias_set to it. | |
4840 | ||
a52fb89b RK |
4841 | * c-decl.c (grokdeclarator): Reorder tests to avoid looking at |
4842 | TYPE_MAIN_VARIANT of ERROR_MARK. | |
4843 | * c-lex.c (readescape): Avoid using printf syntax we don't recognize. | |
4844 | ||
6a51f4a0 RK |
4845 | * simplify-rtx.c (simplify_unary_operation): Add cases |
4846 | FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0. | |
4847 | ||
ebb1b59a BS |
4848 | 2000-09-17 Bernd Schmidt <bernds@redhat.co.uk> |
4849 | ||
a191f0ee | 4850 | * expr.h (emit_library_call, emit_library_call_value): Delete |
ebb1b59a BS |
4851 | declarations. |
4852 | * rtl.h (enum libcall_type): New. | |
4853 | (emit_library_call, emit_library_call_value): Change fn_type arg to | |
a191f0ee | 4854 | be of type enum libcall_type. |
ebb1b59a BS |
4855 | * calls.c: Likewise for the function definitions. Several callers |
4856 | throughout changed to use the new enumeration appropriately. | |
4857 | (emit_library_call_value_1): Likewise. Put back code to make libcall | |
a191f0ee | 4858 | blocks of equal form, but only use it for the two new higher |
ebb1b59a BS |
4859 | enumeration values. |
4860 | ||
8f17b5c5 MM |
4861 | 2000-09-16 Mark Mitchell <mark@codesourcery.com> |
4862 | ||
4863 | Convert the C front-end to use function-at-a-time mode. | |
4864 | * c-common.h: Include splay-tree.h. | |
4865 | (C_DECLARED_LABEL_FLAG): New macro. | |
4866 | (struct language_function): Add x_scope_stmt_stack and | |
4867 | x_function_name_declared_p. | |
4868 | (RECHAIN_STMTS): Move definition. | |
4869 | (lang_statment_code_p): Likewise. | |
4870 | (lang_expand_stmt): Likewise. | |
4871 | (lang_expand_decl_stmt): New variable. | |
4872 | (lang_expand_function_end): Likewise. | |
4873 | (current_scope_stmt_stack): New function. | |
4874 | (add_decl_stmt): Likewise. | |
4875 | (add_scope_stmt): Likewise. | |
4876 | (mark_stmt_tree): Likewise. | |
4877 | (struct c_lang_decl): New structure. | |
4878 | (DECL_SAVED_TREE): Define. | |
4879 | (c_mark_lang_decl): New function. | |
4880 | (c_expand_start_cond): Change prototype. | |
4881 | (c_finish_then): New function. | |
4882 | (c_finish_else): Likewise. | |
4883 | (current_function_name_declared): Remove. | |
4884 | (set_current_function_name_declared): Likewise. | |
4885 | (mark_c_language_function): Declare. | |
4886 | (case_compare): Likewise. | |
4887 | (c_add_case_label): Likewise. | |
4888 | (c_expand_expr): Likewise. | |
4889 | (c_safe_from_p): Likewise. | |
4890 | * c-common.c (lang_expand_function_end): New variable. | |
4891 | (struct if_elt): Add if_stmt. | |
4892 | (c_expand_start_cond): Add the if-statement to the statement-tree, | |
4893 | rather than generating RTL. | |
4894 | (c_finish_then): New function. | |
4895 | (c_expand_start_else): Don't generate RTL. | |
4896 | (c_finish_else): New function. | |
4897 | (c_expand_expr_stmt): Don't generate RTL. | |
4898 | (statement_code_p): Add SCOPE_STMT. | |
4899 | (case_compare): New function. | |
4900 | (c_add_case_label): Likewise. | |
4901 | (mark_stmt_tree): Likewise. | |
4902 | (c_mark_lang_decl): Likewise. | |
4903 | (mark_c_language_function): Likewise. | |
4904 | (c_expand_expr): Likewise. | |
4905 | (c_safe_from_p): Likewise. | |
4906 | * c-decl.c (c_stmt_tree): New variable | |
4907 | (c_scope_stmt_stack): Likewise. | |
4908 | (c_function_name_declared_p): Likewise. | |
4909 | (lang_expand_expr_stmt): Remove. | |
4910 | (poplevel): Don't call output_inline_function for nested | |
4911 | functions. | |
4912 | (pushdecl): Don't set DECL_CONTEXT for a local declaration of an | |
4913 | `extern' function. | |
4914 | (redeclaration_error_message): Change means of computing whether | |
4915 | or not a function is nested. | |
4916 | (lookup_label): Don't call label_rtx. | |
4917 | (init_decl_processing): Add more GC roots. | |
4918 | (start_decl): Add DECL_STMTs to the statement-tree, rather than | |
4919 | calling rest_of_decl_compilation. | |
4920 | (finish_decl): Don't call expand_decl. | |
4921 | (store_parm_decls): Begin the statement-tree, but don't generate | |
4922 | RTL. | |
4923 | (finish_function): Tie off the statement-tree. Call c_expand_body | |
4924 | if appropriate. | |
4925 | (c_expand_body): New function. | |
4926 | (push_c_function_context): Save more information. | |
4927 | (pop_c_function_contxt): Likewise. | |
4928 | (copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it. | |
4929 | (lang_mark_tree): Mark it. | |
4930 | (current_stmt_tree): Adjust. | |
4931 | (current_scope_stmt_stack): New function. | |
4932 | (do_case): Remove. | |
4933 | (set_current_name_declared): Likewise. | |
4934 | (c_begin_compound_stmt): Define. | |
4935 | (c_expand_decl_stmt): Likewise. | |
4936 | * c-lang.c: Include rtl.h and expr.h. | |
4937 | (lang_init): Set more language-specific hooks. | |
4938 | * c-lex.c: Include expr.h. | |
4939 | * c-parse.in: Changes throughout to add statements to the | |
4940 | statement-tree, rather than generating RTL after every statement. | |
4941 | * c-semantics.c (lang_expand_decl_stmt): Define. | |
4942 | (add_decl_stmt): New function. | |
4943 | (add_scope_stmt): Likewise. | |
4944 | (finish_stmt_tree): Tweak. | |
4945 | (genrtl_expr_stmt): Likewise. | |
4946 | (genrtl_decl_stmt): Handle local labels, and call | |
4947 | lang_expand_decl_stmt if required. | |
4948 | (genrtl_for_stmt): Fix line-number handling. | |
4949 | (genrtl_case_label): Handle cleanups. | |
4950 | (genrtl_asm_stmt): Don't call combine_strings. | |
4951 | (genrtl_compound_stmt): Simplify. | |
4952 | (expand_stmt): Handle SCOPE_STMTs. | |
4953 | * c-tree.h (struct lang_decl): New structure. | |
4954 | (C_DECLARED_LABEL_FLAG): Remove. | |
4955 | (c_begin_compound_stmt): Declare. | |
4956 | (c_expand_decl_stmt): Likewise. | |
4957 | (c_expand_start_case): Rename to c_start_case. | |
4958 | (c_finish_case): New function. | |
4959 | * c-typeck.c (start_init): Tweak setting of | |
4960 | constructor_incremental. | |
4961 | (c_expand_asm_operands): Tweak error-handling. Add to the | |
4962 | statement-tree. | |
4963 | (c_expand_return): Add to the statement-tree. | |
4964 | (c_expand_start_case): Rename to ... | |
4965 | (c_start_case): ... this. | |
4966 | (struct c_switch): New type. | |
4967 | (switch_stack): New variable. | |
4968 | (do_case): Simplify. | |
4969 | (c_finish_case): New function. | |
4970 | * dependence.c: Include expr.h. | |
4971 | (enum dependence_type): Change spelling of enumerals. | |
4972 | (check_node_dependence): Adjust. | |
4973 | * expr.h (lang_safe_from_p): Declare. | |
4974 | (safe_from_p): Likewise. | |
4975 | * expr.c (lang_safe_from_p): New variable. | |
4976 | (safe_from_p): Give it external linkage. Use lang_safe_from_p. | |
4977 | * stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type. | |
4978 | * toplev.c (rest_of_decl_compilation): Robustify. | |
4979 | * tree.c (contains_placeholder_p): Likewise. | |
4980 | * Makefile.in: Update dependencies. | |
4981 | * objc/objc-act.h: Adjust calculation of value for dummy_tree_code. | |
4982 | * objc/objc-act.c: Include rtl.h, expr.h, and c-common.h. | |
4983 | (objc_expand_function_end): New function. | |
4984 | (finish_method_def): Use it. | |
4985 | (init_objc): Initialize more language-specific hooks. | |
4986 | * objc/Make-lang.in: Update dependencies. | |
7373064a | 4987 | |
4797e955 GK |
4988 | 2000-09-16 Geoffrey Keating <geoffk@cygnus.com> |
4989 | ||
4990 | * configure.in: Define macros that affect features before | |
4991 | testing for features. Don't define _XOPEN_SOURCE. | |
4992 | * configure: Regenerated. | |
4993 | * config.in: Regenerated. | |
4994 | ||
ae0fb1b9 JW |
4995 | Sat Sep 16 19:42:50 EDT 2000 John Wehle (john@feith.com) |
4996 | ||
4997 | * rtlanal.c (rtx_varies_p): Volatile asms vary. | |
4998 | (rtx_unstable_p): Restructure code. Volatile asms | |
4999 | are unstable. | |
5000 | ||
5748b2cb | 5001 | Sat Sep 16 14:35:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
ae0f4dee | 5002 | |
87c31d6b RK |
5003 | * function.h (no_debugging_symbols): New field. |
5004 | * integrate.c (save_for_inline): Renamed from save_for_inline_nocopy. | |
5005 | Initialize no_debugging_symbols. | |
5006 | (output_inline_function): Save and restore write_symbols and set from | |
5007 | no_debugging_symbols. | |
5008 | * toplev.c (rest_of_compilation): Call save_for_inline. | |
5009 | * tree.h: Update comment. | |
7373064a | 5010 | |
5748b2cb RK |
5011 | * stor-layout.c (place_field): Don't do anything if field or |
5012 | its type are ERROR_MARK. | |
5013 | ||
5014 | Sat Sep 16 19:14:00 2000 Laurynas Biveinis <lauras@softhome.net> | |
5015 | ||
5016 | * cppfiles.c (purge_cache): Use munmap only if MMAP_THRESHOLD defined. | |
5017 | (read_include_file): Ensure inc->mmaped is initialized. | |
ae0f4dee | 5018 | |
6f84c9bd RH |
5019 | 2000-09-16 Richard Henderson <rth@cygnus.com> |
5020 | ||
5021 | * cppiles.c (purge_cache): Use PTR not caddr_t. | |
5022 | ||
50c57e7b HPN |
5023 | 2000-09-16 Hans-Peter Nilsson <hp@axis.com> |
5024 | ||
5025 | * gcc.c: In description for %{<S}, say the option removed is -S. | |
5026 | * invoke.texi (Spec Files): Ditto. | |
5027 | ||
dd745546 AJ |
5028 | 2000-09-16 Andreas Jaeger <aj@suse.de> |
5029 | ||
5030 | * configure.in: Always define _GNU_SOURCE to make interfaces | |
5031 | visible that were hidden by only defining _GNU_SOURCE. | |
5032 | * configure: Regenerated. | |
5033 | ||
08ebc1c5 NB |
5034 | Sat 16-Sep-2000 08:13:45 BST Neil Booth <NeilB@earthling.net> |
5035 | ||
5036 | * cpplex.c (push_macro_context): Set an argument's level after | |
5037 | calling parse_args. We could loop infinitely otherwise. | |
5038 | ||
16abe34a TT |
5039 | 2000-09-15 Tom Tromey <tromey@cygnus.com> |
5040 | ||
5041 | * configure, config.in: Rebuilt. | |
5042 | * configure.in: Check for iconv.h. Define _XOPEN_SOURCE. | |
5043 | ||
61c16b10 GM |
5044 | 2000-09-15 Greg McGary <greg@mcgary.org> |
5045 | ||
5046 | * cppmacro.c (check_trad_stringification): Check token | |
5047 | text pointers against limit before dereferencing. | |
5048 | ||
6a357625 JM |
5049 | 2000-09-15 Joseph S. Myers <jsm28@cam.ac.uk> |
5050 | ||
5051 | * c-common.c (format_wanted_type): New structure. | |
5052 | (check_format_types): New function. | |
5053 | (check_format_info): Pass all checking of types of format | |
5054 | arguments, including width and precision arguments, to this new | |
5055 | function. | |
5056 | ||
6a1d1088 GP |
5057 | 2000-09-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
5058 | ||
5059 | * BUGS: Remove file. | |
5060 | ||
a3b815cb JJ |
5061 | 2000-09-15 Jakub Jelinek <jakub@redhat.com> |
5062 | ||
54f5c4b0 JJ |
5063 | * config/alpha/alpha.c (override_options): ev6 cache latencies |
5064 | from Richard Henderson. Don't allow -mmemory-latency=L0. | |
5065 | ||
a3b815cb JJ |
5066 | * config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define. |
5067 | (TARGET_OPTIONS): Add tune=. | |
5068 | (alpha_tune_string): Declare. | |
5069 | * config/alpha/alpha.c (override_options): Add cpu_table. | |
5070 | Use alpha_cpu_string first to set both alpha_cpu and target_flags | |
5071 | and then alpha_tune_string to set alpha_cpu only. | |
5072 | Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests. | |
5073 | * config/alpha/elf.h (ASM_FILE_START): Likewise. | |
5074 | * config/alpha/osf.h (ASM_FILE_START): Likewise. | |
5075 | * config/alpha/openbsd.h (ASM_FILE_START): Likewise. | |
5076 | ||
9076b9c1 JH |
5077 | Fri Sep 15 19:45:55 MET DST 2000 Jan Hubicka <jh@suse.cz> |
5078 | ||
5079 | * i386-protos.h (no_comparison_operator, uno_comparison_operator): | |
5080 | Remove. | |
5081 | (ix86_comparison_operator, ix86_cc_mode): Declare | |
5082 | * i386.h (CCGC, CCGCO): New modes. | |
5083 | (SELECT_CC_MODE): Move offline to .... | |
5084 | * i386.c (ix86_cc_mode): .... here; use new modes. | |
5085 | (ix86_comparison_operator): New. | |
5086 | (fcmov_comparison_operator): Ensure proper mode. | |
5087 | (put_condition_mode): More sanity checking. | |
5088 | (ix86_match_ccmode): Handle new modes. | |
5089 | (ix86_expand_fp_compare): GEU requires CCmode. | |
5090 | (ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of | |
5091 | doing it by hand. | |
5092 | * i386.md (cmp?i_ccz_1): Remove | |
5093 | (cmp?i_ccno_1): Use ix86_match_ccmode. | |
5094 | (cmp?i_minus_1): New. | |
5095 | (cmpsi_1): New expander. | |
5096 | (cmpqi_ext_1): Use match_ccmode | |
5097 | (cmpqi_ext_3): New expander. | |
5098 | (cmpqi_ext_3_insn): Rename from cmpqi_ext_3. | |
5099 | (cmpqi_ext_4): Use match_ccmode. | |
5100 | (add?i_?): Use match_ccmode. | |
5101 | (add?i_6): New. | |
5102 | (test?i_ccz_1): Remove | |
5103 | (test?i_1): New. | |
5104 | (testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander. | |
5105 | (testqi_ext_0): Use ix86_match_ccmode. | |
5106 | (*xorqi_cc_ext_1): Use ix86_match_ccmode. | |
5107 | (xorqi_cc_ext_1): New expander. | |
5108 | (shift patterns): Use CCGOCmode for all shifts except for sar. | |
5109 | (setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator. | |
5110 | (setcc_3, jcc_3, miv?icc_c): Remove. | |
5111 | ||
3724ec07 WC |
5112 | 2000-09-15 Will Cohen <wcohen@redhat.com> |
5113 | ||
5114 | * dwarf2out.c (add_const_value_attribute): Changed array into a | |
5115 | xmalloced object, so it exists after function exit. | |
5116 | (free_AT): Added case for dw_val_class_float to free allocated | |
5117 | memory. | |
5118 | ||
182a4620 KH |
5119 | 2000-09-15 Kazu Hirata <kazu@hxi.com> |
5120 | ||
5121 | * config/i386/i386.md: Fix a comment typo. | |
d25a45d4 | 5122 | * gcc.c: Fix formatting. |
182a4620 | 5123 | |
aff2c2d3 BS |
5124 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
5125 | ||
5126 | * optabs.c (emit_libcall_block): If target is a user variable, | |
5127 | copy to a temporary first. | |
642dfa8b BS |
5128 | * expr.c (convert_move): When generating a libcall, make a libcall |
5129 | block. | |
188c5e6c BS |
5130 | * calls.c (emit_library_call_value_1): Don't create a libcall |
5131 | sequence here; our caller will in most cases do it. | |
aff2c2d3 | 5132 | |
0c4c9b16 BS |
5133 | * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Handle moving T, MACL or |
5134 | MACH into FPUL. | |
5135 | (SECONDARY_OUTPUT_RELOAD_CLASS): Similar case. | |
5136 | * sh.md (reload_outsf): Generate recognizable patterns for | |
5137 | TARGET_SH3E. | |
5138 | (floatsisf2, floatsisf2_ie, floatsisf2_i4, fix_truncsfsi2, | |
5139 | fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i, fix_truncdfsi2, | |
5140 | fix_truncdfsi2_i, extendsfdf2, extendsfdf2_i4, truncdfsf2, | |
5141 | truncdfsf2_i4): Change not to use explicit references to fpul. | |
5142 | (floatsisf2_ie): Remove USE of fpscr. | |
5143 | (floatsisf2): Change default expansion to match this. | |
5144 | (fix_truncsfsi2_i4_2, fix_truncdfsi2_i4 & splitters): Comment out | |
5145 | unused patterns. | |
5146 | ||
308ecea0 RH |
5147 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
5148 | ||
5149 | * expmed.c (store_bit_field): Consider naturally aligned | |
5150 | memory for direct reference. | |
5151 | ||
e01acbb1 RH |
5152 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
5153 | ||
5154 | * config/alpha/alpha.c (alpha_expand_unaligned_load): Force all | |
5155 | AND addresses into alias set 0. | |
5156 | (alpha_expand_unaligned_store): Likewise. | |
5157 | (alpha_expand_unaligned_load_words): Likewise. | |
5158 | (alpha_expand_unaligned_store_words): Likewise. | |
5159 | ||
c363a0c0 BS |
5160 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
5161 | ||
5162 | * config/sh/sh.h (CPP_SPEC): For -m4-nofpu, define __SH4_NOFPU__. | |
5163 | * config/sh/lib1funcs.asm (movstr_i4): Also compile if __SH4_NOFPU__ | |
5164 | is defined. | |
dd193c79 BS |
5165 | * config/mips/mips.c (mips_va_arg): Args passed by reference have a |
5166 | rsize of UNITS_PER_WORD. | |
c363a0c0 | 5167 | |
ff94c747 NB |
5168 | Fri 15-Sep-2000 06:49:07 BST Neil Booth <NeilB@earthling.net> |
5169 | ||
5170 | * cpplex.c (ON_REST_ARG): Correct the test. | |
5171 | (maybe_paste_with_next): Duplicate a token that fail pasting, | |
5172 | and clear its PASTE_LEFT flag, so that nested pasting attempts | |
5173 | do not occur. | |
5174 | ||
b437f1a7 RH |
5175 | 2000-09-14 Richard Henderson <rth@cygnus.com> |
5176 | ||
5177 | * calls.c (precompute_register_parameters): Use COSTS_N_INSNS, not 2. | |
5178 | * cse.c (rtx_cost): Likewise. | |
5179 | * optabls.c (expand_binop): Likewise. | |
5180 | (expand_twoval_binop, prepare_cmp_insn): Likewise. | |
5181 | * regclass.c (copy_cost): Likewise. | |
5182 | * reload1.c (reload_cse_move2add): Likewise. | |
5183 | ||
d9dbd9b1 JM |
5184 | 2000-09-14 Joseph S. Myers <jsm28@cam.ac.uk> |
5185 | ||
5186 | * c-parse.in (reswords): Add _Complex. | |
5187 | ||
9207d3b1 DA |
5188 | 2000-09-14 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
5189 | ||
5190 | * gcc.1: Delete documentation for -undef preprocessor option. | |
5191 | ||
395a451c AO |
5192 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com> |
5193 | ||
5194 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5195 | STARTFILE_SPEC, ENDFILE_SPEC): Remove define. | |
5196 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
5197 | Remove undefine before config/elfos.h. | |
5198 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Comment out. | |
5199 | ||
17f0f8fa KH |
5200 | 2000-09-14 Kazu Hirata <kazu@hxi.com> |
5201 | ||
5202 | * invoke.texi (H8/300 Options): Add -ms2600. | |
5203 | * config/h8300.c (h8300_init_once): Output an error when -ms2600 | |
5204 | is used without -ms. | |
5205 | * config/h8300.h (TARGET_MAC): New. | |
5206 | (TARGET_SWITCHES): Add -ms2600 and -mno-s2600. | |
5207 | (CONDITIONA_REGISTER_USAGE): Disable the mac register on any | |
5208 | machine other than H8/S2600. | |
5209 | * config/h8300.md: Accept mac instructions on the H8/S2600 instead | |
5210 | of the H8/S2000. | |
5211 | ||
9e8f528c AO |
5212 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com>, Bernd Schmidt <bernds@redhat.co.uk> |
5213 | ||
5214 | * reload.c (find_reloads_address_1): Generate reloads for auto_inc | |
5215 | pseudos that refer to the original pseudos, not only to their | |
5216 | equivalent memory locations. | |
5217 | ||
9985f210 RK |
5218 | Thu Sep 14 12:10:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
5219 | ||
fe7a8445 RK |
5220 | * expr.c (expand_expr, case COMPONENT_EXPR): Copy memory attributes |
5221 | when making new MEM. | |
5222 | ||
9985f210 RK |
5223 | * Makefile.in (LN): Remove duplicate definition. |
5224 | ||
2f93c5c3 BS |
5225 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
5226 | ||
5227 | From Joern Rennecke: | |
5228 | * local-alloc.c (update_equiv_regs): If there is no REG_EQUAL note | |
5229 | on an insn and function_invariant_p returns nonzero for the source, | |
5230 | add a REG_EQUAL note. | |
5231 | ||
b24ea077 JW |
5232 | Thu Sep 14 00:51:57 EDT 2000 John Wehle (john@feith.com) |
5233 | ||
5234 | * alias.c (memrefs_conflict_p): An ADDRESSOF doesn't | |
5235 | conflict with frame_pointer_rtx. | |
5236 | ||
fd5d5b07 KH |
5237 | 2000-09-13 Kazu Hirata <kazu@hxi.com> |
5238 | ||
5239 | * loop.c: Fix formatting. | |
5240 | * loop.h: Likewise. | |
5241 | ||
26102535 RH |
5242 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
5243 | ||
5244 | * config/ia64/ia64.md (divsf3): New. | |
5245 | (divsf3_internal_lat, divsf3_internal_thr): New. | |
5246 | (divdf3, divdf3_internal_lat, divdf3_internal_thr): New. | |
5247 | (divtf3, divtf3_internal_lat, divtf3_internal_thr): New. | |
5248 | (adddf3_trunc, subdf3_trunc, muldf3_trunc): New. | |
5249 | (madddf4_trunc, msubdf4_trunc, nmuldf3_trunc): New. | |
5250 | (nmadddf4_alts, nmadddf4_trunc): New. | |
5251 | (addtf3_truncsf, addtf3_truncdf, subtf3_truncsf): New. | |
5252 | (subtf3_truncdf, multf3_truncsf, multf3_truncdf): New. | |
5253 | (multf3_truncsf_alts, multf3_truncdf_alts): New. | |
5254 | (maddtf4_truncsf, maddtf4_truncdf, maddtf4_alts_truncdf): New. | |
5255 | (msubtf4_truncsf, msubtf4_truncdf, nmultf3_truncsf): New. | |
5256 | (nmultf3_truncdf, nmaddtf4_truncsf, nmaddtf4_truncdf): New. | |
5257 | (nmaddtf4_truncdf_alts): New. | |
5258 | (recip_approx): Don't predicate. | |
5259 | ||
938566fb RH |
5260 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
5261 | ||
5262 | * config/ia64/lib1funcs.asm (__divsf3): Protect fnorm.s with p6. | |
5263 | ||
c349e40b SC |
5264 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5265 | ||
5266 | * flags.h (flag_dump_rtl_in_asm): Declare. | |
5267 | * toplev.c (flag_dump_rtl_in_asm): Define. | |
5268 | (decode_d_option): Set flag_dump_rtl_in_asm and flag_print_asm_name | |
5269 | if -dP is specified. | |
5270 | * rtl.h (print_rtx_head): Declare. | |
5271 | * print-rtl.c (print_rtx_head): Define. | |
5272 | (print_rtx): Print the string pointed to by print_rtx_head | |
5273 | at beginning of each dump line. | |
5274 | (print_rtl): Likewise. | |
5275 | (print_rtl_single): Likewise. | |
5276 | * final.c (final_scan_insn): Dump the insn in the assembly | |
5277 | file for debugging. | |
5278 | * gcc.1: Document -dP option. | |
5279 | * invoke.texi (Debugging Options): Likewise. | |
5280 | ||
2856c3e3 SC |
5281 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5282 | ||
5283 | * md.texi (Machine Constraints): Document the 68HC11 constraints. | |
5284 | * install.texi (Configurations): Document the 68HC11&68HC12 port. | |
5285 | * invoke.texi (Option Summary, M68hc1x Options): Document the options. | |
5286 | ||
1ca04dc8 DC |
5287 | Tue Sep 12 13:51:13 2000 Denis Chertykov <denisc@overta.ru> |
5288 | ||
5289 | * config/avr/avr.h (ASSEMBLER_DIALECT): New macro declared. | |
5290 | * config/avr/avr.md (*movstrqi_insn): Cleanup output template. | |
5291 | (*clrstrqi): Likewise. | |
5292 | (xorhi3,xorsi3,absqi2): Likewise. | |
5293 | (one_cmplhi2,one_cmplsi2): Likewise. | |
5294 | (addsi3): Two stupid constraint alternatives removed. | |
5295 | (extendhisi2): Use `movw' for enhanced avr cores. | |
5296 | (zero_extendhisi2): Likewise. | |
5297 | ||
bb07060a JW |
5298 | Wed Sep 13 02:31:23 EDT 2000 John Wehle (john@feith.com) |
5299 | ||
5300 | * alias.c (find_base_term): Use frame_pointer_rtx | |
5301 | when handling an ADDRESSOF. | |
5302 | ||
5303 | * cse.c (canon_hash): Handle USE of BLKmode memory. | |
5304 | (cse_insn): Outgoing arguments for a libcall don't | |
5305 | affect any recorded expressions. | |
5306 | ||
d21445e7 TT |
5307 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
5308 | ||
5309 | * configure, config.in: Rebuilt. | |
5310 | * configure.in: Check for iconv, nl_langinfo, langinfo.h. | |
5311 | ||
5c80f6e6 JJ |
5312 | 2000-09-12 Jakub Jelinek <jakub@redhat.com> |
5313 | ||
5314 | * c-lex.c (lex_string): Use charwidth to compute bytemask. | |
5315 | * expr.c (expand_expr): Don't optimize constant array references | |
5316 | initialized with wide string constants. | |
5317 | ||
635a2a90 MH |
5318 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
5319 | ||
a191f0ee | 5320 | * loop.c (note_set_pseudo_multiple_uses): Correct. |
635a2a90 | 5321 | |
cc2999aa JW |
5322 | 2000-09-12 Jim Wilson <wilson@cygnus.com> |
5323 | ||
5324 | * ifcvt.c (noce_process_if_block): If A and B are the same, and no | |
5325 | else block, and X has side-effects, then fail. | |
5326 | ||
a0b6cdee GM |
5327 | 2000-09-12 Greg McGary <greg@mcgary.org> |
5328 | ||
5329 | * config/mips/mips-protos.h | |
5330 | (trap_cmp_op, mips_gen_conditional_trap): New func decls. | |
5331 | * config/mips/mips.h (ISA_HAS_COND_TRAP): New macro. | |
5332 | (PREDICATE_CODES): Add "trap_cmp_op". | |
5333 | * config/mips/mips.c | |
5334 | (trap_cmp_op, mips_gen_conditional_trap): New functions. | |
5335 | * config/mips/mips.md (trap, conditional_trap): New patterns. | |
5336 | ||
24948ccc BS |
5337 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
5338 | ||
5339 | * flow.c (try_pre_increment_1): Don't do anything to sets of the stack | |
5340 | pointer. | |
5341 | ||
3ff5f682 KG |
5342 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5343 | ||
5344 | * builtins.c (built_in_decls): New array. | |
5345 | (expand_builtin_fputs): New function. | |
5346 | (expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS. | |
5347 | ||
5348 | * builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members. | |
5349 | ||
5350 | * c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs. | |
5351 | ||
5352 | * tree.h (built_in_decls): New array. | |
5353 | ||
208b0ab1 JL |
5354 | Tue Sep 12 08:53:57 2000 Jeffrey A Law (law@cygnus.com) |
5355 | ||
5356 | * convex.md: Use "+" instead of "=" for outputs wrapped in a | |
5357 | STRICT_LOW_PART. | |
5358 | * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise. | |
5359 | ||
a86dc4a3 KH |
5360 | 2000-09-12 Kazu Hirata <kazu@hxi.com> |
5361 | ||
7a403706 KH |
5362 | * haifa-sched.c: Fix formatting. |
5363 | ||
c9541287 KH |
5364 | * genattrtab.c: Fix formatting. |
5365 | ||
a86dc4a3 KH |
5366 | * unroll.c: Fix formatting. |
5367 | ||
3af556f7 BK |
5368 | 2000-09-12 Bruce Korb <bkorb@gnu.org> |
5369 | ||
5370 | * fixinc/fixfixes.c: make a type for the fix procedure & use it, | |
5371 | remove obsolete code | |
5372 | * fixinc/fixincl.c: Use PARAMS, not _P_. Add no-op default to switch. | |
5373 | * fixinc/fixincl.tpl: make non-exported arrays static scope | |
5374 | * fixinc/fixincl.x: regenerate | |
5375 | * fixinc/fixlib.h: Use PARAMS, not _P_ | |
5376 | * fixinc/fixtests.c: make a type for the test proc & use it | |
5377 | * fixinc/server.h: Use PARAMS, not _P_ | |
5378 | ||
32892c52 KG |
5379 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5380 | ||
5381 | * c-typeck.c (process_init_element): Avoid union init warnings on | |
5382 | floating point zero. Don't crash on unions containing structs. | |
5383 | ||
ae0a1c23 AO |
5384 | 2000-09-12 Alexandre Oliva <aoliva@redhat.com> |
5385 | ||
5386 | * config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to | |
5387 | general_movsrc_operand, and remove CONST_INT from | |
5388 | general_movdst_operand. | |
5389 | ||
f1c1dfc3 BS |
5390 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
5391 | ||
5392 | * cse.c (approx_reg_cost): If SMALL_REGISTER_CLASSES, return INT_MAX | |
5393 | if a reference to non-fixed hardreg is seen. Otherwise, count hard | |
5394 | regs with a higher cost. | |
5395 | (preferrable): Deal with cases where either cost or regcost is | |
5396 | MAX_COST. | |
5397 | (cse_insn): Use MAX_COST rather than 10000. Always initialize | |
5398 | regcost values. | |
5399 | (COSTS_N_INSNS): Move definition... | |
5400 | * rtl.h: ...here. | |
5401 | (MAX_COST): New macro. | |
5402 | * loop.c (init_loop): Use COSTS_N_INSNS macro instead of hardcoded | |
5403 | constant. | |
5404 | ||
f444e36b MM |
5405 | 2000-09-11 Mark Mitchell <mark@codesourcery.com> |
5406 | ||
5407 | * c-common.h (genrtl_clear_out_block): Remove. | |
5408 | * c-semantics.c (genrtl_clear_out_block): Remove. | |
5409 | (genrtl_while_stmt): Don't call it. | |
5410 | (genrtl_for_stmt): Likewise. | |
5411 | ||
a58d32c2 ZW |
5412 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> |
5413 | ||
5414 | * cppfiles.c: Move all default-#defines to top of file. | |
5415 | (open_include_file): Replace by lookup_include_file. | |
5416 | (read_with_read, read_file): Merged into read_include_file. | |
5417 | (stack_include_file, purge_cache): New functions. | |
5418 | (close_cached_fd): Delete. | |
dd745546 | 5419 | (lookup_include_file, read_include_file, _cpp_pop_file_buffer): |
a58d32c2 ZW |
5420 | Cache the in-memory buffer, not the file descriptor. |
5421 | ||
5422 | * cpphash.h (struct include_file): Add buffer, st, refcnt, | |
5423 | mapped fields. | |
5424 | (xcnew): New utility macro. | |
5425 | (DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file. | |
5426 | * cpplib.h (struct cpp_buffer): Remove mapped field. | |
5427 | ||
5428 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> | |
5429 | ||
5430 | * cpplex.c (parse_string): Accept backslash space newline as a | |
5431 | line continuation. | |
5432 | (lex_line): Likewise. | |
5433 | (_cpp_get_token): Remove hard limit on macro nesting. | |
5434 | ||
bfa29b63 PT |
5435 | 2000-09-12 Philipp Thomas <pthomas@suse.de> |
5436 | ||
5437 | * aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext. | |
5438 | * configure: Rebuilt. | |
5439 | ||
97ca9316 MH |
5440 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
5441 | ||
5442 | * flow.c (split_block): Fix update of registers live at | |
5443 | end of split block. | |
5444 | ||
d90ffc8d JH |
5445 | Tue Sep 12 01:51:38 MET DST 2000 Jan Hubicka <jh@suse.cz> |
5446 | ||
5447 | * i386.md (add?i_3, add?i_5): New. | |
5448 | (add?i_4): Rename from add?i_3; Fix compare pattern. | |
5449 | (sub?i_3, xor?i_3, ior?i_3): New. | |
5450 | ||
5451 | * genrecog.c (write_tree): Output code to clear insn_extract cache. | |
5452 | * genattrtab.c (write_attr_case): Gen call to extract_insn_cache | |
5453 | instead of extract_insn and extract_constrain_insn_cache instead of | |
5454 | extract_insn and constrain_operands. | |
5455 | * recog.c (extract_insn_cached, extract_constrain_insn_cached): | |
5456 | New functions. | |
5457 | (extract_insn): Clear which_alternative. | |
5458 | (constrain_operands): Set which_alternative to -1 when failed. | |
5459 | * recog.h (extract_constrain_insn_cached, extract_insn_cached): | |
5460 | Declare. | |
5461 | ||
4843bda9 MH |
5462 | 2000-09-11 Matthew Hiller <hiller@redhat.com> |
5463 | ||
5464 | * config/h8300/h8300.md (movstrictqi): Changed constraint modifier | |
5465 | on operand 0 to '+'. | |
5466 | (movstricthi): Likewise. | |
5467 | ||
ed5bb68d MH |
5468 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5469 | ||
5470 | * loop.h (LOOP_IVS): New macro. | |
5471 | (REG_IV_TYPE, REG_IV_INFO): Add ivs argument. | |
5472 | (struct loop_ivs): New. | |
5473 | (struct loop_info): Add ivs field. | |
5474 | (reg_iv_type, reg_iv_info): Delete prototype. | |
5475 | (reg_biv_class, loop_iv_list): Likewise. | |
5476 | * loop.c (record_biv, find_life_end): Pass loop argument. | |
5477 | (reg_iv_type): Remove global array and use | |
5478 | field in loop_regs structure within loop_ivs structure. | |
5479 | (reg_iv_info, reg_biv_class, loop_iv_list): Likewise. | |
5480 | (first_increment_giv, last_increment_giv): Use entry in | |
5481 | loop_ivs structure. | |
5482 | (record_initial): Pass ivs pointer. | |
5483 | * unroll.c (copy_loop_body, remap_split_bivs): Add loop argument. | |
5484 | ||
1ecd860b MH |
5485 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5486 | ||
5487 | * loop.h (LOOP_REGS): New macro. | |
5488 | (struct loop_regs): New. | |
5489 | (struct loop_info): Add regs field. | |
dd745546 | 5490 | * loop.c (set_in_loop): Remove global array and store |
1ecd860b MH |
5491 | in loop_regs structure as part of loop_info structure. |
5492 | (n_times_set, may_not_optimize): Likewise. | |
5493 | (reg_single_usage, moved_once): Likewise. | |
5494 | (count_one_set): Add regs argument. | |
5495 | (combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise. | |
5496 | (set_pseudo_multiple_uses): Pass regs pointer. | |
5497 | ||
0a5b41f2 MH |
5498 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5499 | ||
5500 | * unroll.c (iteration_info): Subsume into loop_iterations. | |
5501 | * loop.h (loop_info): New field iv. | |
5502 | ||
5d6a16e2 MH |
5503 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5504 | ||
5505 | * basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New. | |
5506 | (LOOP_EXITS_DOMS, LOOP_ALL): Likewise. | |
5507 | (flow_loops_update): New prototype. | |
5508 | (flow_loops_find): Add flags to prototype. | |
5509 | (struct loop): Add `pre_header_root' and `pre_header_trace' fields. | |
5510 | * flow.c (flow_loop_pre_header_scan): New. | |
5511 | (flow_loop_dump): Dump pre-header root and trace and exit dominators. | |
5512 | (flow_loop_free): Free pre-header root and trace and exit dominators. | |
5513 | (flow_loops_find): New argument flags. | |
5514 | (flow_loops_update): New function. | |
5515 | * toplev.c (rest_of_compilation): Add flag argument to flow_loops_find. | |
5516 | ||
c586192c MH |
5517 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
5518 | ||
5519 | * basic-block.h (split_block, update_bb_for_insn): New prototypes. | |
5520 | * flow.c (split_block, update_bb_for_insn): New functions. | |
5521 | ||
a5e5cf67 RH |
5522 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
5523 | ||
5524 | * cse.c (fold_rtx): Honor NO_FUNCTION_CSE. | |
5525 | ||
655f2eb9 RH |
5526 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
5527 | ||
5528 | * config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare. | |
5529 | * config/ia64/ia64.c (fr_nonimmediate_operand): New. | |
5530 | (ia64_override_options): Prevent optimizing division for both | |
5531 | latency and throughput. | |
5532 | (rtx_needs_barrier): Handle frcpa. | |
5533 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New. | |
5534 | (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New. | |
5535 | (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New. | |
5536 | (TARGET_SWITCHES): Add -minline-divide-min-latency and | |
5537 | -minline-divide-max-throughput. | |
5538 | (PREDICATE_CODES): Update. | |
5539 | * config/ia64/ia64.md (extendsidi2): Remove * from f case. | |
5540 | (zero_extendsidi2): Likewise. Fix typo in f case insn. | |
5541 | (extendsfdf2): Add cases for gr<->fr and fr<->mem. | |
5542 | (extendsftf2): Likewise. | |
5543 | (extenddftf2): Likewise. | |
5544 | (fix_trunctfdi2_alts): New. | |
5545 | (fixuns_trunctfdi2_alts): New. | |
5546 | (madd*4): Rename from madd*3. | |
5547 | (divsi3, modsi3, udivsi3, umodsi3): New. | |
5548 | (divsi3_internal): New. | |
5549 | (divdi3, moddi3, udivdi3, umoddi3): New. | |
5550 | (divdi3_internal_lat, divdi3_internal_thr): New. | |
5551 | (multf3_alts, maddtf4_alts, nmaddtf4_alts): New. | |
5552 | (recip_approx): New. | |
5553 | ||
b5d7770c AO |
5554 | 2000-09-11 Alexandre Oliva <aoliva@redhat.com> |
5555 | ||
5556 | * print-rtl.c (debug_call_placeholder_verbose): New variable. | |
5557 | (print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is | |
5558 | set. | |
5559 | * integrate.c (copy_rtx_and_substitute): Don't share | |
5560 | LEAF_REG_REMAPpable registers with the inlined function. Don't | |
5561 | share the function value with calling sequences. | |
5562 | ||
6ff85fd8 JJ |
5563 | 2000-09-11 Jakub Jelinek <jakub@redhat.com> |
5564 | ||
2a1da89b JJ |
5565 | * c-decl.c (do_case): Fix a typo. |
5566 | ||
6ff85fd8 JJ |
5567 | * combine.c (simplify_if_then_else): Don't convert a == b ? b : a |
5568 | to a if the comparison is floating mode and not -ffast-math. | |
5569 | * simplify-rtx.c (simplify_ternary_operation): Likewise. | |
5570 | ||
4102c782 R |
5571 | Mon Sep 11 20:07:48 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
5572 | ||
5573 | * sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to | |
5574 | gen_ic_invalidate_line. | |
5575 | ||
52a21fc6 PB |
5576 | 2000-09-11 Philip Blundell <pb@futuretv.com> |
5577 | ||
5578 | * config/arm/elf.h (SUBTARGET_CPP_SPEC): Don't define `arm_elf'. | |
5579 | ||
669ed2b1 UD |
5580 | Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com> |
5581 | ||
5582 | * install.texi (LANGUAGES): Update to include new languages. | |
5583 | * INSTALL: Rebuilt. | |
5584 | ||
50936d27 DD |
5585 | 2000-09-11 DJ Delorie <dj@redhat.com> |
5586 | ||
5587 | * gcc.c (main): Don't warn about unused -B prefixes | |
5588 | (unused_prefix_warnings): remove | |
5589 | ||
00174bdf KH |
5590 | 2000-09-11 Kazu Hirata <kazu@hxi.com> |
5591 | ||
f5d927c0 KH |
5592 | * final.c: Fix formatting. |
5593 | ||
00174bdf KH |
5594 | * integrate.c: Fix formatting. |
5595 | ||
b14066a9 GK |
5596 | 2000-09-11 Geoff Keating <geoffk@cygnus.com> |
5597 | ||
5598 | * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry. | |
5599 | ||
e695931e BS |
5600 | 2000-09-11 Bernd Schmidt <bernds@redhat.co.uk> |
5601 | ||
5602 | * reload.c (regno_clobbered_p): Fix thinko in previous change. | |
5603 | ||
456aadaa SC |
5604 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5605 | ||
5606 | * gcc.1: Document 68hc11 specific options. | |
5607 | ||
9cb8fcaf GK |
5608 | 2000-09-10 Geoff Keating <geoffk@cygnus.com> |
5609 | ||
e0f7170a GK |
5610 | * config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define. |
5611 | (TARGET_LONG_DOUBLE_128): Define. | |
5612 | (SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128. | |
5613 | (LONG_DOUBLE_TYPE_SIZE): Redefine. | |
5614 | (MAX_LONG_DOUBLE_TYPE_SIZE): Define. | |
5615 | (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition | |
5616 | of __LONG_DOUBLE_128__. | |
5617 | (CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128 | |
5618 | passed. | |
5619 | (CPP_LONGDOUBLE_DEFAULT_SPEC): Define. | |
5620 | (CPP_SYSV_DEFAULT_SPEC): Define. | |
5621 | (SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default. | |
5622 | (INIT_TARGET_OPTABS): Define. | |
5623 | ||
9cb8fcaf GK |
5624 | * config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h. |
5625 | (RS6000_UITRUNC): Likewise. | |
5626 | (INIT_TARGET_OPTABS): New macro. | |
5627 | * config/rs6000/rs6000.c (rs6000_trunc_used): Delete. | |
5628 | (trunc_defined): Delete. | |
5629 | (output_prolog): Don't output .extern definitions for fp->int | |
5630 | conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it. | |
5631 | * config/rs6000/rs6000.h (rs6000_trunc_used): Delete. | |
5632 | (trunc_defined): Delete. | |
5633 | (RS6000_ITRUNC): Moved to aix.h. | |
5634 | (RS6000_UITRUNC): Likewise. | |
5635 | * config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would | |
5636 | only emit a libcall. | |
5637 | (fixuns_truncdfsi2): Delete. | |
5638 | (trunc_call): Delete. | |
5639 | (trunc_call_rtl): Delete. | |
5640 | ||
8f820299 ZW |
5641 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
5642 | ||
5643 | * varasm.c (make_decl_rtl): Restore leading star on | |
dd745546 | 5644 | DECL_ASSEMBLER_NAME set for decls with an asmspec. |
8f820299 | 5645 | |
4337bc93 ZW |
5646 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
5647 | ||
5648 | * c-pragma.c (handle_pragma_pack): Correct parsing logic so it | |
5649 | won't give a spurious error for '#pragma pack()'. Simplify | |
5650 | control flow for readability. 'reset' action is not necessary. | |
5651 | ||
d8ea8f28 ZW |
5652 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
5653 | ||
5654 | * defaults.h: Provide default definitions for: CHAR_TYPE_SIZE, | |
5655 | SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE, | |
5656 | LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE, | |
5657 | DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED. | |
5658 | ||
5659 | * cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c, | |
5660 | profile.c, sdbout.c, tradcif.y, tree.c: | |
5661 | Include defaults.h if not already included. | |
5662 | Don't define the above macros. | |
5663 | ||
5664 | * Makefile.in: Update dependencies. | |
5665 | ||
56cb9733 MM |
5666 | 2000-09-10 Mark Mitchell <mark@codesourcery.com> |
5667 | ||
5668 | * c-common.h (add_stmt): Change prototype. | |
5669 | (RECHAIN_STMTS): New macro. | |
5670 | (CASE_LABEL_DECL): Likewise. | |
5671 | (genrtl_case_label): Change prototype. | |
5672 | (c_expand_start_case): Remove prototype. | |
5673 | (build_case_label): Change prototype. | |
5674 | (decl_constant_value): Declare. | |
5675 | * c-common.c (check_case_value): Handle C++'s extensions to C | |
5676 | semantics. | |
5677 | * c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL | |
d8ea8f28 | 5678 | field. |
56cb9733 MM |
5679 | * c-parse.in (stmt): Adjust handling of return statements and case |
5680 | laels. | |
5681 | * c-semantics.c (add_stmt): Return the new statement. | |
5682 | (genrtl_return_stmt): Take the RETURN_STMT as input, not the | |
5683 | returned expression. Directly generate RTL, rather than calling | |
5684 | c_expand_return. | |
5685 | (genrtl_switch_stmt): Don't call c_expand_start_case. | |
5686 | (build_case_label): Take the LABEL_DECL as input, too. | |
5687 | (genrtl_case_label): Just call add_case_node. | |
5688 | (expand_stmt): Adjust calls to genrtl_return_stmt and | |
5689 | genrtl_case_label. | |
5690 | * c-tree.h (c_expand_start_case): Declare. | |
5691 | * c-typeck.c (decl_constant_value): Give it external linkage. | |
5692 | (c_expand_return): Don't call expand_return or expand_null_return; | |
5693 | use genrtl_return_stmt instead. | |
5694 | * stmt.c (struct nesting): Remove num_ranges field. | |
5695 | (add_case_node): Give it external linkage. | |
5696 | (expand_start_case): Don't set num_ranges. | |
5697 | (expand_start_case_dummy): Don't clear it. | |
5698 | (pushcase): Rely on add_case_node to handle `default' labels. | |
5699 | (add_case_node): Handle `default' labels. | |
5700 | * tree.c (tree_int_cst_compare): New function. | |
5701 | * tree.h (tree_int_cst_compare): Declare. | |
5702 | (add_case_node): Likewise. | |
5703 | ||
aac02f4e RH |
5704 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
5705 | ||
5706 | * c-parse.in: Revert last change. | |
5707 | (init_reswords): Do not enter disabled keywords into the ridpointers | |
5708 | table, modulo objc weirdness. | |
5709 | (_yylex): Return the canonical spelling for a keyword. | |
5710 | ||
75d8aea7 PB |
5711 | 2000-09-10 Philip Blundell <philb@gnu.org> |
5712 | ||
5713 | * config/arm/arm.h (CPP_ISA_SPEC): Don't define `arm' or `thumb'. | |
5714 | * config/arm/linux-elf.h (CPP_PREDEFINES): Don't define `__arm__'. | |
5715 | ||
d982e46e JW |
5716 | Sun Sep 10 14:30:28 EDT 2000 John Wehle (john@feith.com) |
5717 | ||
5718 | * alias.c (find_base_term): Handle ADDRESSOF. | |
5719 | (memrefs_conflict_p): An ADDRESSOF doesn't conflict. | |
5720 | ||
212d447c DC |
5721 | 2000-09-10 Denis Chertykov <denisc@overta.ru> |
5722 | ||
5723 | * genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while | |
5724 | outputting templates with many lines. | |
5725 | ||
a746dbf5 SC |
5726 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5727 | ||
5728 | * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD | |
5729 | to decide whether 64-bit support must be generated. | |
5730 | ||
1d0f6d89 RH |
5731 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
5732 | ||
5733 | * c-parse.in (asm patterns): Fix volatile check. | |
5734 | ||
e1aa5140 KG |
5735 | 2000-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5736 | ||
5737 | * cppmacro.c (check_trad_stringification): New function. | |
5738 | (save_expansion): If -Wtraditional, warn about stringification of | |
5739 | macro arguments. | |
5740 | ||
afa1738b MH |
5741 | 2000-09-11 Michael Hayes <mhayes@cygnus.com> |
5742 | ||
5743 | * loop.h (struct loop_mem_info): Move from loop.c | |
5744 | (struct loop_info): Add fields store_mems, mems, mems_idx, | |
5745 | mems_allocated, unknown_address_altered, | |
5746 | unknown_constant_address_altered, num_mem_sets, and | |
5747 | first_loop_store_insn. | |
5748 | ||
5749 | * loop.c (loop_store_mems): Replace with field in loop_info struct. | |
5750 | (loop_mems, loop_mems_idx, loop_mems_allocated): Likewise. | |
5751 | (unknown_address_altered, unknown_constant_address_altered): Likewise. | |
5752 | (num_mem_sets): Likewise. | |
dd745546 | 5753 | (replace_loop_mems, replace_loop_regs): New. |
afa1738b MH |
5754 | (struct loop_replace_args): New. |
5755 | (load_mems): Use replace_loop_mems. | |
5756 | (try_copy_prop): Use replace_loop_regs. | |
5757 | (replace_loop_reg, replace_loop_mem): Use loop_replace_args structure. | |
5758 | ||
63883fc3 SC |
5759 | 2000-09-09 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5760 | ||
5761 | * configure.in: Recognize m6811-elf and m6812-elf. | |
5762 | * configure: Regenerate. | |
5763 | ||
808788fe GK |
5764 | 2000-09-09 Geoff Keating <geoffk@cygnus.com> |
5765 | ||
5766 | * recog.c (validate_replace_rtx_1): Correct MODE parameter in call | |
5767 | to operand_subword. | |
5768 | ||
02055ad6 MH |
5769 | 2000-09-10 Michael Hayes <mhayes@cygnus.com> |
5770 | ||
5771 | * loop.c (struct movables): New. | |
5772 | (num_movables): Move into struct movables. | |
5773 | (the_movables): Change type to struct movables. | |
5774 | (ignore_some_movables): Change struct movable arg to struct movables. | |
dd745546 | 5775 | (force_movables, combine_movables, regs_match_p): Likewise. |
02055ad6 MH |
5776 | (rtx_equal_for_loop_p, move_movables): Likewise. |
5777 | (scan_loop): Change movables to be of type struct movables. | |
5778 | Replace last_movable with field in movables structure. | |
5779 | ||
ae54392b ZW |
5780 | 2000-09-08 Zack Weinberg <zack@wolery.cumb.org> |
5781 | ||
5782 | * c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS. | |
5783 | (init_pragma): Avoid warning if pfile happens to be unused. | |
5784 | * c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never | |
5785 | define init_pragma to nothing. Always prototype | |
5786 | init_pragma. Prototype dispatch_pragma if !USE_CPPLIB. | |
5787 | ||
5788 | * c-lex.c (process_directive): Always call dispatch_pragma. | |
5789 | Initialize entering_c_header to 0. | |
5790 | ||
385c9217 SC |
5791 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5792 | ||
5793 | * config/m68hc11/m68hc11.md: New file, machine description for | |
5794 | 68HC11 & 68HC12. | |
5795 | * config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12. | |
5796 | * config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12. | |
5797 | * config/m68hc11/m68hc12.h: New file, definitions for 68HC12. | |
5798 | * config/m68hc11/m68hc11-protos.h: New file. | |
5799 | * config/m68hc11/m68hc11-crt0.S: New file, startup code. | |
5800 | * config/m68hc11/t-m68hc11-gas: New file, makefile fragment. | |
5801 | * config/m68hc11/xm-m68hc11.h: New file, target defs. | |
5802 | * config/m68hc11/larith.asm: New file, libgcc routines. | |
5803 | ||
dfaf3cdb SC |
5804 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
5805 | ||
5806 | * Makefile.in (DPBIT_FUNCS): Add _usi_to_df. | |
5807 | (FPBIT_FUNCS): Add _usi_to_sf. | |
5808 | * config/fp-bit.c (usi_to_float): New function. | |
5809 | * config/fp-bit.h (L_usi_to_sf, L_usi_to_df): Define. | |
5810 | (usi_to_float): Add appropriate #define. | |
5811 | ||
915119a5 BS |
5812 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
5813 | ||
5814 | * i386-protos.h (sse_comparison_operator, mmx_reg_operand): Declare | |
5815 | new functions. | |
5816 | * i386.c (sse_comparison_operator, mmx_reg_operand): New functions. | |
5817 | * i386.md (attr "type"): Add sse and mmx types. | |
5818 | (attr "memory"): Handle them without a crash. | |
5819 | (movsi_1, movdi_2): Allow MMX regs. | |
5820 | (movdi splits): Don't split moves involving MMX regs. | |
5821 | (setcc_4): Remove '*' from pattern name so we get a gen_setcc4. | |
5822 | (movv4sf_internal, movv4si_internal, movv8qi_internal, | |
5823 | movv4hi_internal, movv2si_internal, movv8qi, movv4hi, movv2si, | |
5824 | movv4sf, movv4si, pushv4sf, pushv4si, pushv8qi, pushv4hi, pushv2si, | |
5825 | sse_movaps, sse_movups, sse_movmskps, mmx_pmovmskb, mmx_maskmovq, | |
5826 | sse_movntv4sf, sse_movntdi, sse_movhlps, sse_movlhps, sse_movhps, | |
5827 | sse_movlps, sse_loadss, sse_movss, sse_storess, sse_shufps, | |
5828 | addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, mulv4sf3, vmmulv4sf3, | |
5829 | divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2, rsqrtv4sf2, vmrsqrtv4sf2, | |
5830 | sqrtv4sf2, vmsqrtv4sf2, sse_andti3, sse_nandti3, sse_iorti3, | |
dd745546 AJ |
5831 | sse_xorti3, maskcmpv4sf3, maskncmpv4sf3, vmmaskcmpv4sf3, |
5832 | vmmaskncmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps, | |
915119a5 BS |
5833 | smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi, |
5834 | cvttps2pi, cvtsi2ss, cvtss2si, cvttss2si, addv8qi3, addv4hi3, | |
5835 | addv2si3, ssaddv8qi3, ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3, | |
5836 | subv4hi3, subv2si3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3, | |
5837 | mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd, | |
5838 | mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3, mmx_uavgv8qi3, | |
5839 | mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pextrw, mmx_pshufw, | |
5840 | eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3, gtv2si3, umaxv8qi3, | |
5841 | smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3, ashrv2si3, lshrv4hi3, | |
5842 | lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3, mmx_ashldi3, | |
5843 | mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw, | |
5844 | mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd, | |
5845 | mmx_punpckldq, emms, sfence, ldmxcsr, prefetch, stmxcsr, sse_clrti, | |
5846 | mmx_clrdi): New patterns. | |
5847 | ||
8e49e00a RE |
5848 | 2000-09-08 Richard Earnshaw <rearnsha@arm.com> |
5849 | ||
5850 | * arm.c: Don't include tm.h directly. | |
5851 | ||
bd5621a3 JH |
5852 | Fri Sep 8 14:34:56 MET DST 2000 Jan Hubicka <jh@suse.cz> |
5853 | ||
5854 | * recog.c (validate_replace_rtx_1): Fix confusion about equality | |
5855 | testing; simplify subregs of constants and nested subregs. | |
e65d02cf | 5856 | |
6b3783de AO |
5857 | 2000-09-08 Alexandre Oliva <aoliva@redhat.com> |
5858 | ||
5859 | * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg. | |
5860 | ||
82be40f7 BS |
5861 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
5862 | ||
5863 | * combine.c (combine_simplify_rtx): Try to simplify VEC_SELECT of a | |
5864 | VEC_CONCAT. | |
9af354b7 BS |
5865 | * rtl.texi (description of USE): Add note about possible pitfalls |
5866 | with this rtx. | |
ce701d1b BS |
5867 | From Richard Henderson: |
5868 | * reload1.c (choose_reload_regs): Compute need_mode properly. | |
82be40f7 | 5869 | |
4287b5f1 RH |
5870 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
5871 | ||
5872 | * config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa. | |
5873 | (__modsi3, __umodsi3): Likewise. | |
5874 | (__udivsi3): Likewise. Normalize the TFmode values. | |
5875 | ||
c5d71f39 GK |
5876 | 2000-09-07 Geoff Keating <geoffk@cygnus.com> |
5877 | ||
5878 | * config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter | |
5879 | with a prototype. | |
5880 | * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress | |
5881 | warning. | |
5882 | ||
712646d0 R |
5883 | Fri Sep 8 03:26:38 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
5884 | ||
5885 | * sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove. | |
5886 | (cmpeqdi_t): Add output pattern. | |
5887 | (cmpeqdi_t+1): Don't split when not optimizing. | |
5888 | Restore proper splitting operation. | |
5889 | ||
30acbc3e RH |
5890 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
5891 | ||
5892 | * c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS, | |
5893 | do not call dispatch_pragma. | |
5894 | ||
46146529 JW |
5895 | 2000-09-07 Jim Wilson <wilson@cygnus.com> |
5896 | ||
5897 | * reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition | |
5898 | to CLASS_CANNOT_CHANGE_MODE. | |
5899 | * config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the | |
5900 | mode classes are different. | |
5901 | ||
6db83155 ZW |
5902 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
5903 | ||
5904 | * cpplib.h (struct cpp_options): Add user_label_prefix member, | |
5905 | left out of commit which removed cppulp.c. | |
5906 | ||
0d45144b RH |
5907 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
5908 | ||
5909 | * bb-reorder.c (fixup_reorder_chain): Add jump in new block | |
5910 | after switch for CASE_DROPS_THROUGH. | |
5911 | ||
e8cb4873 RH |
5912 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
5913 | ||
5914 | * loop.c (strength_reduce): Call check_ext_dependant_givs. | |
5915 | Properly extend the biv initial value for the giv. | |
5916 | (record_biv): Zero ext_dependant. | |
5917 | (record_giv): New argument ext_val. Update all callers. | |
5918 | (general_induction_var): Likewise. | |
5919 | (consec_sets_giv): Likewise. | |
5920 | (simplify_giv_expr): Likewise. Fill in ext_val if we find | |
5921 | a sign-extend, zero-extend, or truncate. | |
5922 | (combine_givs_p): Make sure modes are compatible. | |
5923 | (check_ext_dependant_givs): New. | |
5924 | (extend_value_for_giv): New. | |
5925 | * loop.h (struct induction): Add ext_dependant. | |
5926 | * unroll.c (iteration_info): Extend the biv initial value for the giv. | |
5927 | (find_splittable_givs): Likewise. | |
5928 | (final_giv_value): Likewise. | |
5929 | ||
8b97c5f8 ZW |
5930 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
5931 | ||
5932 | * c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if | |
5933 | REGISTER_TARGET_PRAGMAS is defined. Duplicate some | |
5934 | definitions from cpplib.h. | |
5935 | * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has | |
5936 | already done it. | |
5937 | * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add | |
5938 | documentation for REGISTER_TARGET_PRAGMAS. | |
5939 | ||
5940 | * c-lex.c: Include cpplib.h before c-pragma.h. Define a | |
5941 | default-pragma callback to implement -Wunknown-pragmas if | |
5942 | USE_CPPLIB. | |
5943 | * c-parse.in: Move all includes to top of file. | |
5944 | * c-pragma.c: Include cpplib.h before c-pragma.h. Include | |
5945 | tm_p.h. | |
5946 | (dispatch_pragma): Put the namespace in the -Wunknown-pragmas | |
5947 | warning. | |
5948 | (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it. | |
5949 | ||
5950 | * arm.h, arm-protos.h, arm.c, | |
5951 | c4x.h, c4x-protos.h, c4x.c, | |
5952 | h8300.h, h8300-protos.h, h8300.c, | |
5953 | i370.h, i370-protos.h, i370.c, | |
5954 | i960.h, i960-protos.h, i960.c, | |
d8ea8f28 | 5955 | sh.h, sh-protos.h, sh.c, |
8b97c5f8 ZW |
5956 | v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based |
5957 | pragmata scheme to use REGISTER_TARGET_PRAGMAS instead. | |
5958 | ||
5959 | * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add | |
5960 | multiple include guard. | |
5961 | * i370.md (untyped_call): Use GEN_CALL. | |
5962 | (umodsi3): Remove unused variable. | |
5963 | * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA. | |
5964 | * v850.c (output_move_single, output_move_double): Constify | |
5965 | return value. | |
5966 | (print_operand): Constify a char *. | |
5967 | * v850.h (struct small_memory_info): Constify name member. | |
5968 | ||
1898584f KH |
5969 | 2000-09-07 Kazu Hirata <kazu@hxi.com> |
5970 | ||
5971 | * config/h8300.h: Fix comment typos. | |
5972 | * config/h8300/h8300.md: Likewise. | |
5973 | * config/h8300/lib1funcs.asm: Likewise. | |
5974 | ||
771c4df3 NB |
5975 | Thu 07-Sep-2000 21:29:00 BST Neil Booth <NeilB@earthling.net> |
5976 | ||
5977 | * Makefile.in: Remove references to cppulp.{c,o}. | |
5978 | * cppinit.c (initialize_builtins, cpp_start_read, | |
5979 | cpp_handle_option): Update to use cpp_options structure. | |
5980 | * cppulp.c: Remove. | |
5981 | ||
2496f0b5 JM |
5982 | 2000-09-07 Joseph S. Myers <jsm28@cam.ac.uk> |
5983 | ||
5984 | * c-common.c (time_char_table): Allow %#b and %#h. | |
5985 | ||
bf6302f0 HB |
5986 | 2000-09-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
5987 | ||
5988 | * reorg.c (find_end_label): If the basic block reorder pass moves the | |
5989 | return insn to some other place try to locate it again and put our | |
5990 | end_of_function_label there. | |
5991 | * reorg.c (relax_delay_slots): Check if find_end_label created a | |
5992 | new label that invalidates the current optimazation. | |
5993 | ||
4598ffe9 CM |
5994 | 2000-09-07 Catherine Moore <clm@redhat.com> |
5995 | ||
e8cb4873 RH |
5996 | * unroll.c (unroll_loop): Check for unconditional jumps |
5997 | to loop continuation. Delete if n_iterations is 1. | |
5998 | (ujump_to_loop_cont): New routine. | |
4598ffe9 | 5999 | |
ff427764 BS |
6000 | 2000-09-07 Bernd Schmidt <bernds@redhat.co.uk> |
6001 | ||
6002 | * rtl.c (class_narrowest_mode): Add entries for MODE_VECTOR_INT and | |
6003 | MODE_VECTOR_FLOAT. | |
8441bc30 BS |
6004 | * reload.c (regno_clobbered_p): Accept new arg, MODE, and use it |
6005 | to handle multiword modes correctly. All callers and the declaration | |
6006 | changed. | |
d8ea8f28 | 6007 | |
54f7877c MM |
6008 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
6009 | ||
6010 | * c-common.h (prep_stmt): Declare. | |
6011 | (lang_expand_stmt): Likewise. | |
6012 | * c-decl.c (lang_expand_stmt): Remove. | |
6013 | * c-semantics.c (lang_expand_stmt): Define. | |
6014 | (prep_stmt): New function. | |
6015 | (expand_stmt): Handle common statement types here. | |
d8ea8f28 | 6016 | |
93ca1662 NY |
6017 | 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> |
6018 | ||
6019 | * configure.in (sh-*-linux*): Added. | |
6020 | * configure: Rebuilt. | |
6021 | * config/sh/t-linux: New file. | |
6022 | * config/sh/sh.h (USERMODE_BIT): Define. | |
6023 | (TARGET_USERMODE): Likewise. | |
6024 | (TARGET_SWITCHES): New switches for the bits above. | |
6025 | (INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE. | |
6026 | * config/sh/linux.h: New file. | |
6027 | * config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with | |
6028 | underscore on linux. | |
6029 | (L_sdivsi3, L_udivsi3): Define for linux. | |
6030 | (L_ic_invalidate): Define. | |
6031 | * invoke.texi (SH Options): Document -musermode. | |
6032 | ||
71105114 AO |
6033 | 2000-09-07 Alexandre Oliva <aoliva@redhat.com> |
6034 | ||
4979c2a9 AO |
6035 | * config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function |
6036 | CSE unless generating PIC. | |
6037 | ||
71105114 AO |
6038 | * config/sh/sh.md (symPLT_label2reg): Force the initialization of |
6039 | the PIC register. | |
6040 | ||
d5cfb451 L |
6041 | 2000-09-06 H.J. Lu (hjl@gnu.org) |
6042 | ||
6043 | * Makefile.in (clean_s1): Depend on stage_b. | |
6044 | (clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in | |
6045 | stage2. They are used for "make compare". | |
6046 | ||
ae499cce MM |
6047 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
6048 | ||
6049 | Move statement-tree facilities from C++ to C front-end. | |
6050 | * c-common.h (c_tree_index): Add CTI_VOID_ZERO. | |
6051 | (void_zero_node): New macro. | |
6052 | (struct stmt_tree_s): New type. | |
6053 | (stmt_tree): New typedef. | |
6054 | (struct language_function): New type. | |
6055 | (last_tree): New macro. | |
6056 | (last_expr_type): Likewise. | |
6057 | (walk_tree_fn): New typedef. | |
6058 | (current_stmt_tree): New function. | |
6059 | (begin_stmt_tree): Likewise. | |
6060 | (add_stmt): Likewise. | |
6061 | (finish_stmt_tree): Likewise. | |
6062 | (statement_code_p): Likewise. | |
6063 | (lang_statement_code_p): New variable. | |
6064 | (walk_stmt_tree): New function. | |
6065 | (STMT_IS_FULL_EXPR_P): New macro. | |
6066 | * c-common.c (lang_statement_code_p): New variable. | |
6067 | (c_common_nodes_and_builtins): Initialize void_zero_node. | |
6068 | (statement_code_p): New function. | |
6069 | (walk_stmt_tree): Likewise. | |
6070 | * c-decl.c (language_function): Rename to ... | |
6071 | (c_language_function): ... this. Include language_function. | |
6072 | (push_c_function_context): Adjust accordingly. | |
6073 | (pop_c_function_context): Likewise. | |
6074 | (mark_c_function_context): Likewise. | |
6075 | (current_stmt_tree): Define. | |
6076 | * c-semantics.c (begin_stmt_tree): New function. | |
6077 | (add_stmt): Likewise. | |
6078 | (prune_unused_decls): Likewise. | |
6079 | (finish_stmt_tree): Likewise. | |
6080 | ||
4f4b88d0 HB |
6081 | 2000-09-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
6082 | ||
e8cb4873 | 6083 | * flow.c (insn_dead_p): Detect dead memory stores with auto increments. |
4f4b88d0 | 6084 | |
f725a3ec KH |
6085 | 2000-09-06 Kazu Hirata <kazu@hxi.com> |
6086 | ||
6087 | * calls.c: Fix formatting. | |
6088 | ||
0806f95f GS |
6089 | 2000-09-06 Graham Stott <grahams@cygnus.co.uk> |
6090 | ||
e8cb4873 | 6091 | * config/i386/i386.h (ADDRESS_COST): Fix typo. |
0806f95f | 6092 | |
0e5921e8 ZW |
6093 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
6094 | ||
6095 | Integrated preprocessor. | |
6096 | ||
6097 | * Makefile.in: Remove all references to c-parse.gperf, | |
6098 | c-gperf.h, and c-parse.h. Remove -d from yacc command line | |
6099 | generating c-parse.c. Update dependencies. | |
6100 | * c-parse.gperf, c-gperf.h: Delete. | |
6101 | ||
6102 | * c-common.c: Don't define parse_options, cpp_token, yy_cur, | |
6103 | yy_lim, or yy_get_token. Don't define get_directive_line if | |
6104 | USE_CPPLIB. | |
6105 | * c-common.h: Add multiple include guard. Define RID values | |
6106 | for every keyword in C, C++, and Objective C. Put all the | |
6107 | modifiers first. | |
6108 | (struct c_fileinfo, get_fileinfo, dump_time_statistics): New. | |
6109 | * c-decl.c (c_decode_option): Handle -lang-objc here. | |
6110 | (print_lang_identifier): Handle C_IS_RESERVED_WORD case. | |
6111 | (grokdeclarator): Adjust for new RID scheme. | |
6112 | (extract_interface_info): New stub. | |
6113 | * c-lang.c: Don't declare yy_cur or parse_options. | |
6114 | (lang_init_options): Call cpp_init. Don't call | |
6115 | cpp_options_init. | |
6116 | (lang_init): Don't call check_newline if USE_CPPLIB. | |
6117 | ||
6118 | * c-lex.c: Don't include c-parse.h. Do include timevar.h. | |
6119 | Elide lots of unnecessary code if USE_CPPLIB. Delete code | |
6120 | rendered unnecessary by new architecture. Move routines not | |
6121 | shared with C++ to c-parse.in. Maintain a local idea of the | |
6122 | line number. Handle C++ as well as C. | |
6123 | [USE_CPPLIB]: Declare and register callbacks for #ident and | |
6124 | for entering/leaving files. | |
6125 | (init_c_lex, c_lex): Are now the entry points to this file. | |
6126 | (check_newline): Break out directive handling to | |
6127 | process_directive. | |
6128 | (read_ucs, is_extended_char, utf8_extend_token): Moved here | |
6129 | from C++ front end. | |
6130 | (readescape, parse_float): Overhaul. | |
6131 | (lex_number, lex_string, lex_charconst): Break out of c_lex | |
6132 | (n'ee yylex). | |
6133 | (get_fileinfo, update_header_times, dump_one_header, | |
6134 | dump_time_statistics): New and/or moved here from C++. | |
6135 | Support per-file data needed by C++ and per-header timing | |
6136 | statistics (C++ only, at the moment). | |
6137 | * c-lex.h: Update prototypes. Add multiple include guard. | |
6138 | * c-tree.h (struct lang_identifier): Add rid_code field. | |
6139 | (C_IS_RESERVED_WORD, C_RID_CODE): New. | |
6140 | ||
6141 | * c-parse.in: Include c-pragma.h. Remove unnecesary calls to | |
6142 | reinit_parse_for_function and/or position_after_white_space. | |
6143 | (save_filename, save_lineno): Look ahead before saving. | |
6144 | (label -> identifier ':'): Save file and line before shifting ':'. | |
6145 | (reservedwords): No need to call get_identifier. | |
6146 | (init_parse, finish_parse, yyerror, yylex, yyprint, | |
6147 | make_pointer_declarator): Are now here for C/ObjC. | |
6148 | (rid_to_yy): Conversion table from RID constants to Yacc codes. | |
6149 | ||
6150 | * c-pragma.c: Rewrite parsing logic to fit with cpplib's | |
6151 | #pragma registry. Provide dummy implementation of that | |
6152 | interface if !USE_CPPLIB. | |
6153 | * c-pragma.h: Update to match. | |
6154 | ||
6155 | * flags.h: Add multiple include guard. | |
6156 | (flag_detailed_statistics): Moved here from C++. | |
6157 | * toplev.c: Define flag_detailed_statistics. | |
6158 | ||
6159 | * gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case | |
6160 | #if USE_CPPLIB. | |
6161 | * timevar.def (TV_CPP, TV_LEX): New. | |
6162 | * timevar.h: Add multiple include guard. | |
6163 | ||
6164 | * objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case | |
6165 | #if USE_CPPLIB. | |
6166 | * objc/objc-act.c: Don't mention yy_cur or parse_options. | |
6167 | Initialize cpplib properly. Force lineno to 0 after first | |
6168 | call to check_newline. Don't handle -lang-objc here. | |
6169 | Move forget_protocol_qualifiers and remember_protocol_qualifiers here. | |
6170 | ||
5638268e DE |
6171 | 2000-09-06 David Edelsohn <edelsohn@gnu.org> |
6172 | ||
6173 | * rs6000.md: Correct function unit definitions for cr_logical and | |
6174 | mtjmpr. | |
6175 | (sCOND): Additionally fail for sgt, slt, sge, sle if !TARGET_POWER | |
6176 | and use portable method for >=0 and floating point >=. Remove | |
6177 | associated matchers. | |
6178 | ||
44835fdd MM |
6179 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
6180 | ||
6181 | * extend.texi: Mark named return value extension as deprecated. | |
6182 | ||
bab6226b GK |
6183 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
6184 | ||
6185 | * config/rs6000/rs6000.c (rs6000_reverse_condition): Return | |
6186 | the result. | |
6187 | ||
e6513023 GDR |
6188 | 2000-09-06 Gabriel Dos Reis <gdr@codesourcery.com> |
6189 | ||
6190 | * toplev.c (display_help): Fix thinko in documentation. | |
6191 | ||
6192 | * diagnostic.h (output_buffer::indent_skip): New fields. | |
6193 | (output_indentation): New macro. | |
6194 | ||
6195 | * diagnostic.c (output_indent): New function. | |
6196 | (output_set_prefix, clear_diagnostic_info): Use. | |
6197 | (output_emit_prefix): Predict future indentation. | |
6198 | ||
112c7aea DD |
6199 | 2000-09-06 DJ Delorie <dj@redhat.com> |
6200 | ||
6201 | * Makefile.in (stage_*): add more dependencies to ensure parallel | |
6202 | builds build correctly | |
6203 | ||
1bac0fb4 MH |
6204 | 2000-09-06 Manfred Hollstein <manfredh@redhat.com> |
6205 | ||
6206 | * Makefile.in (bootstrap-lean): Depend on bootstrap-lean_g, | |
6207 | not bootstrap-lean_f. | |
6208 | ||
f472a17c AS |
6209 | 2000-09-06 Andreas Schwab <schwab@suse.de> |
6210 | ||
6211 | * mklibgcc.in: Emit rule for libgcc-stage-start. | |
6212 | * Makefile.in (stage1-start, stage2-start, stage3-start, | |
6213 | stage4-start): Don't handle libgcc here, use libgcc.mk instead. | |
6214 | ||
630c79be | 6215 | 2000-09-06 Bernd Schmidt <bernds@redhat.co.uk> |
611bbf2a BS |
6216 | |
6217 | * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED. | |
6218 | (update_equiv_regs): Likewise, except for the mn10200 kludge. | |
6219 | (combine_regs): Likewise. | |
6220 | ||
630c79be BS |
6221 | * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H). |
6222 | * cse.c: Include "basic-block.h". | |
6223 | (struct table_elt): New field REGCOST. | |
6224 | (CHEAP_REG): Delete macro. | |
6225 | (COST): Return 0 for REGs. | |
6226 | (approx_reg_cost_1, approx_reg_cost, preferrable): New functions. | |
6227 | (notreg_cost): Return 0 for appropriate SUBREGs. | |
6228 | (COSTS_N_INSNS): Return N * 2. | |
6229 | (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap | |
6230 | SUBREGs. | |
6231 | (CHEAPER): Use new function preferrable. | |
6232 | (insert): Initialize REGCOST member. | |
6233 | (find_best_addr): Use approx_reg_cost for estimation of register | |
6234 | usage. | |
6235 | (cse_insn): Likewise. | |
6236 | * loop.c (iv_add_mult_cost): New function. | |
6237 | (add_cost, shift_cost, mult_cost): Delete variables. | |
6238 | (init_loop): Don't initialize add_cost; reduce copy_cost by half. | |
6239 | (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost. | |
6240 | Make code that detects autoinc opportunities slightly less optimistic. | |
6241 | (simplify_giv_expr): If expression contains other reg that is also a | |
6242 | giv, only increment benefit if this is the only use of that reg. | |
6243 | (consec_sets_giv): Take that change into account. | |
6244 | (combine_givs): Slightly more verbose output. | |
6245 | ||
6246 | * i386.h (RTX_COSTS): For MULT, return true cost of multiplication, | |
6247 | not the cost of an equivalent shift. | |
6248 | * sh-protos.h (addsubcosts): Declare. | |
6249 | * sh.c (addsubcosts): New function. | |
6250 | * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0. | |
6251 | (RTX_COSTS): Tweak. Use addsubcosts. | |
6252 | (ADDRESS_COST): Return higher cost for reg+reg addressing. | |
6253 | ||
39a10a29 GK |
6254 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
6255 | ||
6256 | * config/rs6000/rs6000.c (validate_condition_mode): New function. | |
6257 | (branch_comparison_operator): Call validate_condition_mode to | |
6258 | abort rather than returning 0. | |
6259 | (branch_positive_comparison_operator): New function. | |
6260 | (scc_comparison_operator): Call validate_condition_mode to abort | |
6261 | rather than returning 0. | |
6262 | (ccr_bit): Call validate_condition_mode. Update for | |
6263 | new branch scheme. | |
6264 | (print_operand): Delete %C modifier. Update %E case | |
6265 | to use EQ bit not SO bit. | |
6266 | (rs6000_reverse_condition): New function. | |
6267 | (rs6000_generate_compare): New function. | |
6268 | (rs6000_emit_sCOND): New function. | |
6269 | (rs6000_emit_cbranch): New function. | |
6270 | (output_cbranch): The length of a long branch insn is | |
6271 | now only 8 bytes. Add validate_condition_mode. Use | |
6272 | rs6000_reverse_condition. Remove cror generation. | |
bab6226b | 6273 | |
39a10a29 GK |
6274 | * config/rs6000/rs6000.h: Update comments. |
6275 | (PREDICATE_CODES): Add new predicate. Update codes used | |
6276 | by branch_comparison_operator and scc_comparison_operator. | |
6277 | * config/rs6000/rs6000-protos.h: Add prototypes for | |
6278 | new external functions. | |
6279 | * config/rs6000/rs6000.md: Add new scheduling parameters | |
6280 | for cr_logical instructions. Change length of branch | |
6281 | instructions. | |
6282 | (bCOND patterns): Call rs6000_emit_cbranch. | |
6283 | (sCOND patterns): Call rs6000_emit_sCOND. | |
6284 | (branch patterns): Change lengths to 4. | |
6285 | (cr logical patterns): New. | |
6286 | ||
2a4bbffa RH |
6287 | 2000-09-06 Richard Henderson <rth@cygnus.com> |
6288 | ||
6289 | * config/i386/i386.md (call_pop): Fix test for setting | |
6290 | current_function_uses_pic_offset_table. | |
6291 | (call, call_value_pop, call_value): Likewise. | |
6292 | ||
eab828ba ZW |
6293 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
6294 | ||
6295 | * timevar.c (timevar_add): Delete. | |
6296 | (timevar_get): Also count time since the selected timer was | |
6297 | last updated. Do not examine the timevar stack if the | |
6298 | selected timer is standalone. | |
6299 | ||
f1d6a533 DA |
6300 | 2000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6301 | ||
6302 | * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend. | |
6303 | ||
53c5b5d7 JM |
6304 | 2000-09-05 Jason Merrill <jason@redhat.com> |
6305 | ||
6306 | * c-decl.c (finish_incomplete_decl): Don't call complete_array_type | |
6307 | for 'extern' arrays. | |
6308 | ||
3392dafc RH |
6309 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6310 | ||
6311 | * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium. | |
6312 | Eliminate final copy from non-trapping case. | |
6313 | (__divdf3, __divsf3): Likewise. | |
6314 | ||
2a7ffc85 RH |
6315 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6316 | ||
6317 | * config/ia64/ia64.md (mulhi3): Fix typo last change. | |
6318 | * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise. | |
6319 | ||
204093e6 DT |
6320 | 2000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net> |
6321 | ||
6322 | * Makefile.in: Restructure bootstrap stages to allow clean | |
6323 | restart after failure. | |
6324 | ||
514f96e6 RH |
6325 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6326 | ||
6327 | * config/ia64.md (movsi and movdi patterns): Allow moves from | |
6328 | 8-bit constants to AR registers. | |
6329 | ||
cf1f6ae3 RH |
6330 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6331 | ||
6332 | * config/ia64/ia64.md (mulhi3): New. | |
6333 | ||
d8d7a286 RH |
6334 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
6335 | ||
6336 | * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove. | |
6337 | * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64 | |
6338 | Optimization Guide, minimum latency alternative. | |
6339 | (__moddi3, __udivdi3, __umoddi3): Likewise. | |
6340 | (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise. | |
6341 | ||
a6efbece BK |
6342 | 2000-09-05 Bruce Korb <bkorb@gnu.org> |
6343 | ||
0e5921e8 ZW |
6344 | * fixinc/fixincl.c (load_file): always read header files |
6345 | with sizes that are a multiple of the page size. | |
dc46505a | 6346 | & use libiberty's getpagesize for determining that. |
a6efbece | 6347 | |
c0712acb AO |
6348 | 2000-09-05 Alexandre Oliva <aoliva@redhat.com> |
6349 | ||
6350 | * gcse.c (hash_string_1): Add prototype. | |
6351 | * cse.c (canon_hash_string): Likewise. | |
6352 | ||
af7f0fde CN |
6353 | 2000-09-04 Craig Newell <CraigN@ieee.org> |
6354 | ||
6355 | * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it. | |
6356 | ||
4993ddc1 AS |
6357 | 2000-09-04 Andreas Schwab <schwab@suse.de> |
6358 | ||
6359 | * Makefile.in (STAGESTUFF): Remove libgcc. | |
6360 | (stage1-start, stage2-start, stage3-start): Copy the contents of | |
6361 | the libgcc directory explicitly. | |
6362 | (mostlyclean): Clean libgcc. | |
6363 | ||
5e640c56 AH |
6364 | 2000-09-04 Andrew Haley <aph@redhat.com> |
6365 | ||
6366 | * dwarf2out.c: (stack_adjust_offset): New prototype. | |
6367 | ||
25ffb1f6 JH |
6368 | Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz> |
6369 | ||
6370 | * combine.c (make_extraction): Fix rtx_cost comparison to | |
6371 | match the comment. | |
6372 | ||
6373 | Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz> | |
6374 | ||
0e5921e8 | 6375 | * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf, |
25ffb1f6 JH |
6376 | umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1): |
6377 | Add '*' to insn pattern name. | |
6378 | ||
29844fa7 JJ |
6379 | 2000-09-04 Jakub Jelinek <jakub@redhat.com> |
6380 | ||
6381 | * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context, | |
6382 | use posn - 1 to index into tokens array. | |
6383 | (maybe_paste_with_next): Adjust caller. | |
6384 | ||
0d86f538 GK |
6385 | 2000-09-03 Geoff Keating <geoffk@cygnus.com> |
6386 | ||
bff46771 GK |
6387 | * invoke.texi: Document the -mvxworks option for rs6000 ELF. |
6388 | ||
0d86f538 GK |
6389 | * config/rs6000/rs6000.h: Update various comments about XER_REGNO. |
6390 | (REGNO_REG_CLASS): Use symbolic register | |
6391 | names. | |
6392 | ||
4e67550b RE |
6393 | 2000-09-03 Richard Earnshaw <rearnsha@arm.com> |
6394 | ||
0e5921e8 | 6395 | * arm.c (final_prescan_insn): If the form of a jump insn isn't |
4e67550b RE |
6396 | recognized, don't try to conditionally execute it. |
6397 | ||
150f4100 DC |
6398 | Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru> |
6399 | ||
6400 | * config/avr/avr.md ("*tablejump_lib"): New pattern. | |
6401 | (call_value_insn): Right length claculation. | |
6402 | (call_insn): Likewise. | |
6403 | ||
5fecfd8d MM |
6404 | 2000-09-02 Marek Michalkiewicz <marekm@linux.org.pl> |
6405 | ||
6406 | * config/avr/avr-protos.h, config/avr/avr.c (unique_section, | |
6407 | gas_output_limited_string, gas_output_ascii, output_movqi, | |
6408 | output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr, | |
6409 | out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf, | |
6410 | out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out, | |
6411 | ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out, | |
6412 | lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf, | |
6413 | out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info): | |
6414 | Add "const" as needed to remove warnings. | |
6415 | ||
6416 | * config/avr/avr.c (avr_override_options, avr_init_once, | |
6417 | function_prologue, function_epilogue, frame_pointer_required_p, | |
6418 | class_likely_spilled_p, order_regs_for_local_alloc, | |
6419 | avr_address_cost, avr_ret_register): Use K&R style arguments. | |
6420 | (initial_elimination_offset, gas_output_limited_string): | |
6421 | Remove ATTRIBUTE_UNUSED from the used arguments. | |
6422 | (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf): | |
6423 | Use local variables src, dest, base to access operands[]. | |
6424 | Rename reg_dest to reg_src if that's what it is. | |
6425 | (output_movhi, output_movsisf): Optimize loading 8-bit immediate | |
6426 | constants to LD_REGS if reg_was_0. | |
6427 | (output_reload_insisf): Change arg 3 to insn length and set it. | |
6428 | (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient | |
6429 | access to 16-bit I/O register pairs. | |
6430 | (avr_address_cost): Lower cost for the above case. | |
6431 | (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand | |
6432 | may be clobbered, also for LD_REGS. | |
6433 | (adjust_insn_length): Correct insn length for iorhi3 and iorsi3 | |
6434 | with a CONST_INT. | |
6435 | ||
6436 | * config/avr/avr.h (PTRDIFF_TYPE): Make signed. | |
6437 | ||
6438 | * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS | |
6439 | macro to test_hard_reg_class function. | |
6440 | (*movsi, *movsf): Change "cc" attribute from "clobber" to "none" | |
6441 | for loading immediate constants to LD_REGS. | |
6442 | (andsi3, cmphi, cmpsi): Add return statements to avoid warnings. | |
6443 | ||
6444 | ||
bad3869a MM |
6445 | Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl> |
6446 | ||
6447 | * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__ | |
6448 | * config/avr/libgcc.S: Lost part of the previous patch. | |
6449 | ||
802a8181 DA |
6450 | 2000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6451 | ||
6452 | * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t | |
6453 | object before calling pthread_mutex_init. | |
6454 | ||
1a66cd67 AO |
6455 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com> |
6456 | ||
6457 | * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm, | |
6458 | config/sh/crtn.asm: New files. | |
6459 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set. | |
6460 | (crt1.o, crti.o, crtn.o): New targets. | |
6461 | * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added | |
6462 | sh/t-elf. | |
6463 | * configure: Rebuilt. | |
6464 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
6465 | STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define. | |
6466 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
6467 | Undefine for config/elfos.h to redefine. | |
6468 | (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h. | |
6469 | ||
6470 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> | |
6471 | ||
6472 | * config/sh/sh-protos.h (nonpic_symbol_mentioned_p, | |
6473 | legitimize_pic_address, output_pic_addr_const): Declare. | |
6474 | * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register. | |
6475 | (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise. | |
6476 | (TARGET_SWITCHES): New switch -mprefergot. | |
6477 | (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot. | |
6478 | (PIC_OFFSET_TABLE_REGNUM): Define. | |
6479 | (GOT_SYMBOL_TABLE): Likewise. | |
6480 | (LEGITIMIZE_ADDRESS): Use legitimize_pic_address. | |
6481 | (ENCODE_SECTION_INFO): Define. | |
6482 | (FINALIZE_PIC): New macros. | |
6483 | (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro. | |
6484 | (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const. | |
6485 | * config/sh/sh.c (print_operand_address): Use output_pic_addr_const. | |
6486 | (prepare_move_operands): Call emit_pic_move or | |
6487 | emit_pic_const_move if appropriate. | |
6488 | (output_far_jump): For PIC, use braf and output long offset. | |
0e5921e8 | 6489 | (machine_dependent_reorg): |
1a66cd67 AO |
6490 | (sh_expand_prologue): Save and initialize the PIC register. |
6491 | (sh_expand_epilogue): Restore it. | |
6492 | (initial_elimination_offset): Account for it. | |
6493 | (nonpic_symbol_mentioned_p): New function. | |
6494 | (legitimize_pic_address): Likewise. | |
6495 | (output_pic_addr_const): Likewise. | |
6496 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns. | |
6497 | (call, call_value): Use them. | |
6498 | (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg, | |
6499 | symPLT_label2reg): New expands. | |
6500 | * invoke.texi (SH Options): Document -mprefergot. | |
6501 | ||
6462bb43 AO |
6502 | 2000-09-01 Alexandre Oliva <aoliva@redhat.com> |
6503 | ||
6504 | * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro. | |
6505 | * gcse.c (hash_string_1): New function. | |
6506 | (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number. | |
6507 | (expr_equiv_p) <ASM_OPERANDS>: Likewise. | |
6508 | * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS. | |
6509 | (canon_hash_string): New function. | |
6510 | (canon_hash) <ASM_OPERANDS>: Disregard filename and line number. | |
6511 | (exp_equiv_p) <ASM_OPERANDS>: Likewise. | |
6512 | (fold_rtx): Use ASM_OPERANDS accessor macros. | |
6513 | * emit-rtl.c (copy_insn_1): Likewise. | |
6514 | * integrate.c (copy_rtx_and_substitute): Likewise. | |
6515 | * stmt.c (expand_asm_operands): Likewise. Give an | |
6516 | ASM_OPERANDS rtx the mode of the output reg being set from it. | |
6517 | ||
1b4f90cd FF |
6518 | 2000-09-01 Fred Fish <fnf@be.com> |
6519 | ||
6520 | * fix-header.c (write_rbrac): Add putc and getc to list of | |
6521 | functions to protect against prior definition as a macro. | |
0e5921e8 | 6522 | |
3c786c69 JM |
6523 | 2000-09-01 Joseph S. Myers <jsm28@cam.ac.uk> |
6524 | ||
6525 | * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE. | |
6526 | (c_size_type_node): Define. | |
6527 | * c-decl.c (init_decl_processing): Initialize c_size_type_node. | |
6528 | * c-common.c (enum format_lengths, enum format_std_version, | |
6529 | format_length_info, format_type_detail, BADLEN, NOLENGTHS, | |
6530 | format_kind_info, printf_length_specs, scanf_length_specs, T89_I, | |
6531 | T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL, | |
6532 | T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD, | |
6533 | T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI, | |
6534 | TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM, | |
6535 | format_types): Define. | |
6536 | (format_char_info, print_char_table, scan_char_table, | |
6537 | time_char_table): Rearrange for new organization of information | |
6538 | about format length modifiers and standard versions. | |
6539 | (T_ST): Redefine to use c_size_type_node. | |
6540 | (check_format_info): Obtain information about length modifiers and | |
6541 | standard versions from tables. Adjust warning message wordings. | |
6542 | Use the name from the user's program for `ll' and `hh' length | |
6543 | modifiers in warning messages. Use more informative names for | |
6544 | wanted types where available (for wchar_t, wint_t, size_t, signed | |
6545 | size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t). | |
6546 | ||
8a09bb27 JW |
6547 | 2000-09-01 Jim Wilson <wilson@cygnus.com> |
6548 | ||
ca3920ad JW |
6549 | * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN. |
6550 | * combine.c (distribute_notes): Handle REG_NORETURN. | |
6551 | * rtl.c (reg_note_name): Add REG_NORETURN. | |
6552 | * rtl.h (enum reg_note): Likewise. | |
6553 | ||
6554 | * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from | |
6555 | ia64_file_start. | |
6556 | * config/ia64/ia64.c (emit_safe_across_calls): Likewise. | |
6557 | (rtx_needs_barrier): Handle unspec_volatile 8 and 9. | |
6558 | (emit_predicate_relation_info): Handle conditional calls with | |
6559 | REG_NORETURN. | |
6560 | * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls | |
6561 | instead of ia64_file_start. | |
6562 | * config/ia64/sysv4.h (ASM_FILE_START): Likewise. | |
6563 | * config/ia64/ia64.md (safe_across_calls_all, | |
6564 | save_across_calls_normal): New patterns. | |
6565 | ||
8a09bb27 JW |
6566 | * loop.c (check_final_value): Check for biv use before checking for |
6567 | giv use. Check for both biv and giv uses. Always set last_giv_use | |
6568 | if there is a giv use. | |
6569 | ||
11a13704 RH |
6570 | 2000-09-01 Richard Henderson <rth@cygnus.com> |
6571 | ||
6572 | * config/ia64/ia64.md (mulsi3): Use grfr_register_operand. | |
6573 | (madddi3): Likewise. | |
6574 | (maddsi3): New. | |
6575 | ||
6324d2bb RK |
6576 | Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6577 | ||
fcf1b822 RK |
6578 | * expr.c (clear_storage): Don't use emit_move_insn unless |
6579 | either BLKmode or proper size. | |
6580 | (store_constructor): Don't call clear_storage if REG of wrong size. | |
6581 | ||
6324d2bb RK |
6582 | * flow.c (init_propagate_block_info): Don't mark frame dead at end |
6583 | of function if returns wiht stack pointer depressed. | |
6584 | ||
1ba5ae8f AH |
6585 | 2000-09-01 Andrew Haley <aph@redhat.com> |
6586 | ||
0e5921e8 ZW |
6587 | * dwarf2out.c (stack_adjust_offset): New function. |
6588 | (dwarf2out_stack_adjust): Break out stack adjust logic into | |
6589 | new stack_adjust_offset function. Look inside parallels and | |
6590 | sequences for stack adjustments. | |
1ba5ae8f | 6591 | |
893f3d5b JL |
6592 | 2000-08-31 Jeff Law <law@cygnus.com> |
6593 | ||
94c51f7a JL |
6594 | * arm.md: Use no_new_pseudos to determine when it is safe |
6595 | to create new pseudo registers. | |
6596 | ||
0e5921e8 ZW |
6597 | * arm.c (legitimize_pic_address): Use no_new_pseudos to determine |
6598 | when we can safely allocate new registers. | |
893f3d5b | 6599 | |
1b3d8f8a GK |
6600 | 2000-08-31 Geoffrey Keating <geoffk@cygnus.com> |
6601 | ||
6602 | * stmt.c (expand_asm_operands): Twiddle generating_concat_p | |
6603 | so that CONCATs are not generated for ASMs. | |
6604 | * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when | |
6605 | not generating_concat_p. | |
6606 | * function.c (pop_function_context_from): Reset | |
6607 | generating_concat_p. | |
6608 | (prepare_function_start): Likewise. | |
6609 | * rtl.c (generating_concat_p): Define. | |
6610 | * rtl.h (generating_concat_p): Declare. | |
6611 | * toplev.c (rest_of_compilation): No CONCATs after RTL generation. | |
6612 | ||
4e8bd75f | 6613 | 2000-08-22 Philipp Thomas <pthomas@suse.de> |
0e5921e8 | 6614 | Masanobu Yuhara <yuhara@flab.fujitsu.co.jp> |
4e8bd75f PT |
6615 | |
6616 | * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them | |
6617 | for translation. | |
6618 | ||
b145ee27 GM |
6619 | 2000-08-30 Greg McGary <greg@mcgary.org> |
6620 | ||
6621 | * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh | |
6622 | * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC). | |
6623 | * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE. | |
6624 | ||
2afaa41c GM |
6625 | 2000-08-30 Greg McGary <greg@mcgary.org> |
6626 | ||
6627 | * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct. | |
6628 | (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct. | |
6629 | (TREE_INT_CST): New macro. | |
6630 | * varasm.c (const_hash, compare_constant_1, record_constant_1): | |
6631 | Use new macro TREE_INT_CST. | |
6632 | ||
1d92b3e1 NB |
6633 | Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net> |
6634 | ||
6635 | * contrib.texi: Add self. | |
6636 | ||
b23ca156 AO |
6637 | 2000-08-30 Alexandre Oliva <aoliva@redhat.com> |
6638 | ||
6639 | * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns. | |
6640 | (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps | |
6641 | and labels. | |
6642 | ||
aef9fbbf DA |
6643 | 2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6644 | ||
6645 | * fixinc/gnu-regex.c: Don't define `const'. | |
6646 | ||
85f3d674 RK |
6647 | Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6648 | ||
6649 | * expr.c (store_constructor): Allow variable bounds of array type. | |
6650 | (expand_expr): Don't blow up if type is ERROR_MARK. | |
6651 | * varasm.c (output_constructor): Don't access lower bound of array | |
6652 | type unless need it if index is supplied (so it can be a variable | |
6653 | if no index is supplied). | |
6654 | Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS. | |
6655 | Other minor cleanups. | |
6656 | ||
5b67ad6f DA |
6657 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6658 | ||
6659 | * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS | |
6660 | for compilations in stage 1 and subsequent stages, respectively. | |
6661 | * configure.in (vax): Add compiler-dependent CFLAGS for stage 1. | |
6662 | * configure: Rebuilt. | |
6663 | * x-vax, x-vax-gcc: Deleted. | |
6664 | ||
63ad61ed ZW |
6665 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
6666 | ||
6667 | * c-common.c (declare_function_name): Use func_id_node, | |
6668 | function_id_node, and pretty_function_id_node. Do not make | |
0e5921e8 | 6669 | __func__ visible at file scope. |
63ad61ed ZW |
6670 | * c-common.h (c_tree_index): Add CTI_FUNCTION_ID, |
6671 | CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID. | |
6672 | (function_id_node, pretty_function_id_node, func_id_node): New | |
6673 | macros. | |
6674 | * c-decl.c (init_decl_processing): Initialize function_id_node, | |
6675 | pretty_function_id_node, and func_id_node. | |
6676 | (c_make_fname_decl): Correct comment. | |
6677 | ||
6678 | * tree.h (struct tree_identifier): Constify pointer member. | |
6679 | ||
6680 | * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *. | |
6681 | * c-pragma.h (struct weak_syms): Constify name and value members. | |
0e5921e8 | 6682 | (add_weak): Constify arguments. |
63ad61ed ZW |
6683 | |
6684 | * calls.c (special_function_p): Constify a char *. | |
6685 | (expand_call): Remove variable which is initialized and then | |
6686 | never used. | |
6687 | * dependence.c (struct def_use, struct induction, struct subscript): | |
6688 | Constify 'variable' member. | |
6689 | (get_low_bound, have_induction_variable): Constify char * argument. | |
6690 | (find_induction_variable): Add braces to avoid dangling else. | |
6691 | (classify_dependence): Constify char * arrays. | |
6692 | * profile.c (output_func_start_profiler): Constify a char *. | |
6693 | * stor-layout.c (finalize_record_size): Constify a char *. | |
6694 | * tree.c (is_attribute_p): Constify a char *. | |
6695 | * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument. | |
6696 | ||
6697 | * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code | |
6698 | for comprehensibility. Do not call get_identifier if we did | |
6699 | not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to | |
6700 | create temporary string constants, not ggc_alloc_string. No | |
6701 | need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const | |
6702 | char * to hold IDENTIFIER_POINTERs. | |
6703 | ||
cee58bc0 RH |
6704 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
6705 | ||
6706 | * config/ia64/ia64.md (muldi3): Use grfr_register_operand | |
6707 | for the inputs. | |
6708 | ||
94aaab7a RH |
6709 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
6710 | ||
6711 | * reload.c (push_secondary_reload): Allow class == reload_class | |
6712 | if we're using a reload_in/out pattern. | |
6713 | ||
60a3c181 RH |
6714 | * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use |
6715 | the half that does not conflict with the reload register. | |
6716 | (reload_outti): Likewise. | |
6717 | ||
9218435e KH |
6718 | 2000-08-29 Kazu Hirata <kazu@hxi.com> |
6719 | ||
4381f7c2 KH |
6720 | * reload.c: Fix formatting. |
6721 | ||
6722 | * stmt.c: Fix formatting. | |
6723 | ||
9218435e KH |
6724 | * gcc.c: Fix formatting. |
6725 | ||
fba0bfd4 ZW |
6726 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
6727 | ||
6728 | * flags.h (time_report, mem_report): New global flags. | |
6729 | * toplev.c: Define time_report and mem_report. | |
6730 | (f_options): Add -ftime-report and -fmem-report. | |
6731 | (compile_file): Turn on time_report if quiet_flag is off. | |
6732 | Call ggc_print_statistics at very end if mem_report is on. | |
6733 | * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag. | |
6734 | ||
6735 | * ggc-common.c (ggc_print_statistics): Rename to | |
6736 | ggc_print_common_statistics; all callers changed. Scale | |
6737 | quantities above 10K to kilobytes and above 10M to megabytes. | |
6738 | * ggc-page.c (ggc_page_print_statistics): Rename to | |
6739 | ggc_print_statistics. Report memory consumed by internal data | |
6740 | structures for each allocation bucket. Scale quantities above | |
6741 | 10K to kilobytes and above 10M to megabytes. | |
6742 | * ggc-simple.c: Prototype debug_ggc_tree to avoid warning. | |
6743 | Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning. | |
6744 | Define tally_leaves always. | |
6745 | (ggc_print_statistics): New function. | |
6746 | * ggc.h: Adjust for renamed functions. | |
6747 | ||
612105a6 DC |
6748 | Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru> |
6749 | ||
6750 | * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to | |
6751 | output_movsisf instead of which_alternative. | |
6752 | ||
6753 | * config/avr/avr.c (output_reload_inhi): Check for NULL ponter. | |
6754 | ||
6bec29c9 DC |
6755 | Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
6756 | ||
6757 | * config/avr/avr-protos.h: (avr_output_ascii) Removed. | |
6758 | (avr_progmem_p): New prototype. | |
6759 | (output_movsisf): Prototype declaration changed. | |
6760 | (output_movqi): New prototype. | |
6761 | (output_movhi): New prototype. | |
6762 | (call_insn_operand): Likewise. | |
0e5921e8 | 6763 | (final_prescan_insn): Likewise. |
6bec29c9 DC |
6764 | (avr_simplify_comparision_p): Likewise. |
6765 | (avr_normalize_condition): Likewise. | |
6766 | (compare_eq_p): Likewise. | |
6767 | (out_shift_with_cnt): Likewise. | |
6768 | (const_int_pow2_p): Likewise. | |
6769 | (output_reload_inhi): Prototype declaration changed. | |
6770 | ||
6771 | * config/avr/avr.c: (debug_hard_reg_set): Prototype declared. | |
6772 | (ldi_reg_rtx): New. rtx for r31. | |
6773 | (avr_init_stack): Initialize as "__stack". | |
6774 | (function_prologue): Use it. | |
6775 | Replace all TARGET_ENHANCED with AVR_ENHANCED. | |
6776 | (avr_mcu_name): Initialize as "avr2". | |
6777 | (avr_enhanced_p, avr_mega_p): New variables. | |
6778 | (mcu_types, avr_override_options): Handle all known MCU types. | |
6779 | Also handle avr1 (only preprocess, assemble and link). | |
6780 | (print_operand): Using of `%K' in output template removed. | |
6781 | (out_movqi_r_mr): Optimized. | |
6782 | (out_movhi_r_mr): Likewise. | |
6783 | (output_movqi): New function. | |
6784 | (output_movhi): Likewise. | |
6785 | (out_movsi_r_mr): Optimized. | |
6786 | (output_movsisf): Compute insn length for `adjust_insn_length' | |
6787 | (out_movqi_mr_r): Optimized. | |
6788 | (out_movhi_mr_r): Optimized. | |
6789 | (adjust_insn_length): Use output_movsisf, output_movqi, | |
6790 | output_movhi for insn length adjusting. | |
6791 | (reg_unused_after): Use dead_or_set_p. | |
6792 | (preferred_reload_class): Now havn't any restriction. | |
6793 | (reg_was_0): New function. | |
6794 | (io_address_p): Likewise. | |
6795 | (const_int_pow2_p): Likewise. | |
6796 | (output_reload_inhi): Likewise. | |
6797 | (output_reload_insisf): Likewise. | |
6798 | ||
6799 | * config/avr/avr.h (MULTILIB_DEFAULTS): Define. | |
6800 | (LIB_SPEC): Use -lc for all supported devices. | |
6801 | (LIBGCC_SPEC): Use -lgcc for all supported devices. | |
6802 | (AVR_MEGA): Define as avr_mega_p. | |
6803 | (AVR_ENHANCED): New, define as avr_enhanced_p. | |
6804 | (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=... | |
6805 | (CPP_SPEC, LINK_SPEC): Handle all known MCU types. | |
6806 | (CRT_BINUTILS_SPECS): Handle all known MCU types. | |
6807 | Rename gcrt1-*.o to make file names unique on 8.3 filesystems. | |
6808 | (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC. | |
6809 | (ASM_SPEC): Pass -mmcu=... to the assembler. | |
6810 | Change all -DAVR_* to -D__AVR_*__. | |
6811 | (INIT_TARGET_OPTABS), config/avr/libgcc.S: | |
6812 | Rename library functions to start with two underscores. | |
6813 | (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid | |
6814 | alignment. | |
6815 | (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)). | |
6816 | (SUPPORTS_WEAK): Likewise. | |
6817 | (LDI_REG_REGNO): New. Register r31 will be used as temporary | |
6818 | register for loading constants to r0-r14. | |
6819 | ||
6820 | * config/avr/avr.md: Replace all TARGET_ENHANCED with | |
6821 | AVR_ENHANCED. | |
6822 | (*mov_r_sp): Removed. Handled by output_movhi. | |
6823 | (*mov_sp_r): Likewise. | |
6824 | (*mov_sp_r_no_interrupts): Likewise | |
6825 | (*mov_sp_r_tiny): Likewise. | |
6826 | (*movqi): Use output_movqi. | |
6827 | (*reload_inqi): New. | |
6828 | (*movhi): Use output_movhi. | |
6829 | (*reload_inhi): New. | |
6830 | (*negsi2): Optimized. | |
6831 | (*negsf2): Likewise. | |
6832 | Added peepholes (define_peephole2) for loading constants to r0-r14 | |
6833 | and for using `cpse' command. | |
6834 | ||
6835 | * config/avr/libgcc.S: Rename library functions to start with two | |
6836 | underscores. | |
6837 | Add support for enhanced core. | |
6838 | (_moqhi3): Fix typo, now _modqi3. | |
6839 | (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word. | |
6840 | (__prologue_saves__): Remove test for stack adjust by 0. | |
6841 | (__tablejump__): New. | |
6842 | ||
6843 | * config/avr/t-avr: Build libgcc2 with -mcall-prologues. | |
6844 | Add multilib support. | |
6845 | ||
20bd7bfa JW |
6846 | Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com) |
6847 | ||
6848 | * loop.c (prescan_loop): Don't check unknown_address_altered | |
6849 | when deciding if insert_loop_mem is safe. Add BLKmode MEMs | |
6850 | to loop_store_mems as necessary. | |
6851 | (loop_invariant_p): Don't check unknown_address_altered | |
6852 | or unknown_constant_address_altered. | |
6853 | ||
76f941a8 DA |
6854 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6855 | ||
6856 | * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns. | |
6857 | ||
2c8f0515 ZW |
6858 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
6859 | ||
6860 | * cpperror.c (print_file_and_line): If line is (unsigned int)-1, | |
6861 | print just the filename. | |
6862 | * cpplex.c (_cpp_run_directive): Add additional argument, the | |
6863 | name to give the synthetic buffer. This defaults to | |
6864 | translated "<command line>". | |
6865 | * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert): | |
6866 | Adjust to match. | |
6867 | (_cpp_define_builtin): New function. | |
6868 | * cppinit.c (initialize_builtins): Use _cpp_define_builtin. | |
6869 | * cpphash.h: Update prototypes. | |
6870 | ||
6871 | * tradcpp.c (main): Process -D and -U simultaneously, in the | |
6872 | order they appeared on the command line. | |
6873 | ||
6ad79f1b KG |
6874 | 2000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6875 | ||
6876 | * c-decl.c (define_label): Call warning_with_file_and_line and | |
6877 | error_with_file_and_line instead of plain warning or error. | |
6878 | ||
6879 | * c-parse.in (label): Use save_filename/save_lineno to ensure | |
6880 | correct values for calls to define_label. | |
6881 | ||
4361b41d MM |
6882 | 2000-08-29 Mark Mitchell <mark@codesourcery.com> |
6883 | ||
6884 | * calls.c (expand_call): Don't create a VAR_DECL just to throw it | |
6885 | away. | |
6886 | * expr.c (expand_expr, case TARGET_EXPR): Don't call | |
6887 | mark_addressable. | |
6888 | * tree.h (get_file_function_name): Remove two duplicate | |
6889 | declarations. | |
6890 | ||
abf9af02 KH |
6891 | 2000-08-28 Kazu Hirata <kazu@hxi.com> |
6892 | ||
dc478a5d KH |
6893 | * tree.c: Fix formatting. |
6894 | ||
abf9af02 KH |
6895 | * xcoffout.c: Fix formatting. |
6896 | ||
5f632b5e JM |
6897 | 2000-08-28 Jason Merrill <jason@redhat.com> |
6898 | ||
6899 | * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer. | |
6900 | ||
6901 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> | |
6902 | ||
6903 | * dwarf2out.c (dwarf2out_finish): Don't bother calling | |
6904 | break_out_includes if it won't do anything. | |
6905 | ||
38323cc3 RH |
6906 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
6907 | ||
6908 | * reload.c (push_secondary_reload): Revert 2000-08-16 change. | |
6909 | (find_reloads): Likewise. | |
6910 | * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change. | |
6911 | (reload_inhi): Likewise. | |
6912 | ||
e1ff012c RH |
6913 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
6914 | ||
6915 | * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined. | |
6916 | (call_insn_operand): Don't expect a surrounding mem. | |
6917 | (constant_call_address_operand): Likewise. | |
6918 | * config/i386/i386.h (PREDICATE_CODES): Update. | |
6919 | * config/i386/i386.md (call patterns): Move the match_operand | |
6920 | for the call destination inside the mem. | |
6921 | ||
c2cba7a9 RH |
6922 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
6923 | ||
6924 | * local-alloc.c (requires_inout): Don't use reserved range for | |
6925 | EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER. | |
6926 | * recog.c (asm_operand_ok): Likewise. | |
6927 | (preprocess_constraints, constrain_operands): Likewise. | |
6928 | * regclass.c (record_reg_classes): Likewise. | |
6929 | * reload.c (find_reloads): Likewise. | |
6930 | * reload1.c (maybe_fix_stack_asms): Likewise. | |
6931 | (reload_cse_simplify_operands): Likewise. | |
6932 | * stmt.c (expand_asm_operands): Likewise. | |
6933 | ||
6934 | * md.texi: Update constraints documentation. | |
6935 | * tm.texi (EXTRA_CONSTRAINT): Update. | |
6936 | ||
5f632b5e JM |
6937 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> |
6938 | ||
6939 | * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__". | |
6940 | (print_die): If we don't know the offset of the | |
6941 | target die, try the symbol. Add a trailing newline. | |
6942 | (reverse_all_dies): New fn. | |
6943 | (dwarf2out_finish): Call it. | |
6944 | (break_out_includes): Reorganize for clarity. | |
6945 | (add_sibling_attributes): Don't call reverse_die_lists. | |
6946 | (output_comp_unit): Rename from output_comdat_comp_unit. Use for | |
6947 | primary CU, too. | |
6948 | * flags.h: Add flag_eliminate_dwarf2_dups. | |
6949 | * toplev.c (f_options): Support -feliminate-dwarf2-dups. | |
6950 | ||
5de0e8d4 JM |
6951 | 2000-08-28 Jason Merrill <jason@redhat.com> |
6952 | ||
5f632b5e JM |
6953 | * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags. |
6954 | * dwarf2out.c: #include "md5.h". | |
6955 | (DIE_LABEL_PREFIX): New macro. | |
6956 | (dw_val_struct): Add 'external' flag to val_die_ref. | |
6957 | (add_AT_die_ref, AT_ref): Adjust. | |
6958 | (AT_ref_external, set_AT_ref_external): New fns. | |
6959 | (build_abbrev_table): Call set_AT_ref_external. | |
6960 | (value_format): Call AT_ref_external. | |
6961 | (die_struct): Add die_symbol field. | |
6962 | (new_die): Clear it. | |
6963 | (dwarf_tag_name): Handle BINCL/EINCL. | |
6964 | (dwarf2out_start_source_file): Add BINCL DIE. | |
6965 | (dwarf2out_end_source_file): Add EINCL DIE. | |
6966 | (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns. | |
6967 | (loc_checksum, attr_checksum, die_checksum): New fns. | |
6968 | (is_type_die, is_comdat_die, is_symbol_die): New fns. | |
6969 | (compute_section_prefix, assign_symbol_names): New fns. | |
6970 | (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns. | |
6971 | (output_die): Call output_die_symbol and AT_ref_external. | |
6972 | (output_comdat_comp_unit): New fn, split out from... | |
0e5921e8 | 6973 | (dwarf2out_finish): ...here. Also call add_sibling_attributes for |
5f632b5e JM |
6974 | secondary CUs. |
6975 | (output_pubnames, output_aranges): Abort if we see entries from | |
6976 | secondary CUs. | |
6977 | * toplev.h: Declare file_name_nondirectory. | |
6978 | * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend. | |
6979 | (rest_of_type_compilation): Call dwarf2out_decl if at toplevel. | |
6980 | (debug_start_source_file): Call dwarf2out_start_source_file | |
6981 | regardless of debug verbosity. | |
6982 | (debug_end_source_file): Similarly. | |
6983 | * tree.h: Declare clean_symbol_name. | |
6984 | * tree.c (clean_symbol_name): Split out from... | |
6985 | (get_file_function_name_long): ...here. | |
6986 | ||
5de0e8d4 JM |
6987 | * dwarf2out.c (new_loc_descr): Use calloc. |
6988 | (splice_child_die): Remove the die from the right parent. | |
6989 | (gen_struct_or_union_die): Don't add AT_name to a specification DIE. | |
6990 | ||
04324727 RK |
6991 | Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6992 | ||
6993 | * toplev.c (decode_g_option): Don't give warning for unknown -g | |
6994 | option; return 0 instead. | |
6995 | (main): If -g option is not recognized by front end or | |
6996 | language-independent code, give warning. | |
6997 | ||
9e3e266c GM |
6998 | 2000-08-28 Greg McGary <greg@mcgary.org> |
6999 | ||
7000 | * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl. | |
7001 | * config/i386/i386.c (ix86_expand_compare): Remove `static'. | |
7002 | * config/i386/i386.md (trap, conditional_trap): New insn & expand. | |
7003 | ||
a0bff95f GM |
7004 | 2000-08-27 Greg McGary <greg@mcgary.org> |
7005 | ||
7006 | * cpplex.c (parse_string): Don't look for backslash | |
7007 | before first char in `namebuf'. | |
7008 | * loop.c (strength_reduce): Skip NOTEs. | |
7009 | ||
edb4c415 JM |
7010 | 2000-08-27 Jason Merrill <jason@redhat.com> |
7011 | ||
7012 | * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear | |
7013 | DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or | |
7014 | TREE_ASM_WRITTEN, either. | |
7015 | (finish_decl): Adjust. | |
7016 | ||
6e88e75c PT |
7017 | 2000-08-28 Philipp Thomas <pthomas@suse.de> |
7018 | ||
7019 | * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as | |
7020 | they have been incorporated into the gettext CVS. Change the text to | |
7021 | reflect the current status of NLS. Add instructions for accessing | |
7022 | the gettext CVS and add the patch from Martin v. Loewis. | |
7023 | ||
e53ca51f GK |
7024 | 2000-08-27 Geoff Keating <geoffk@cygnus.com> |
7025 | ||
7026 | * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe | |
7027 | by using gen_lowpart_common. | |
7028 | (movdi_internal64+6): Likewise. | |
7029 | ||
a0a6fdc8 AO |
7030 | 2000-08-26 Alexandre Oliva <aoliva@redhat.com> |
7031 | ||
1b2dd04a AO |
7032 | * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): |
7033 | Document. | |
7034 | ||
a0a6fdc8 AO |
7035 | * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register |
7036 | numbers to the ranges used by GDB. | |
7037 | ||
26a110f5 RH |
7038 | 2000-08-25 Richard Henderson <rth@cygnus.com> |
7039 | ||
7040 | * config/ia64/ia64.h (struct machine_function): Add n_varargs. | |
7041 | * config/ia64/ia64.c (ia64_compute_frame_size): Use it. | |
7042 | (ia64_expand_prologue): Likewise. | |
7043 | (ia64_setup_incoming_varargs): Set it. Properly skip the current | |
7044 | argument for stdargs. | |
7045 | ||
ecff20d4 JM |
7046 | 2000-08-25 Jason Merrill <jason@redhat.com> |
7047 | ||
7048 | * integrate.c (expand_inline_function): Pull out the original decl. | |
7049 | ||
caa511fd JW |
7050 | 2000-08-25 Jim Wilson <wilson@cygnus.com> |
7051 | ||
d51ff7cb JW |
7052 | * cse.c (cse_insn): Don't pass label subtraction to force_const_mem. |
7053 | ||
caa511fd JW |
7054 | * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl. |
7055 | ||
9a56f4f6 GM |
7056 | 2000-08-25 Greg McGary <greg@mcgary.org> |
7057 | ||
7058 | * flow.c (dump_edge_info): Use ARRAY_SIZE. | |
7059 | * config/alpha/alpha.c (alpha_expand_block_move): Likewise. | |
7060 | ||
31448271 RE |
7061 | 2000-08-25 Richard Earnshaw <rearnsha@arm.com> |
7062 | ||
7063 | * arm.h (STRUCT_VALUE): Define to 0, not NULL. | |
7064 | ||
b949ea8b JW |
7065 | Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com) |
7066 | ||
7067 | * i386.c (ix86_find_base_term): New. | |
7068 | * i386-protos.h (ix86_find_base_term): Prototype. | |
7069 | * i386.h (FIND_BASE_TERM): Define. | |
7070 | * alias.c (find_base_term): Use it. | |
7071 | * tm.texi (FIND_BASE_TERM): Document it. | |
7072 | ||
7073 | * alias.c (true_dependence, write_dependence_p): Unchanging | |
7074 | memory can't conflict with non-unchanging memory. | |
7075 | ||
7076 | * alias.c (memrefs_conflict_p): A BLKmode reference | |
7077 | to a symbol (or CONST_INT address) always conflicts | |
7078 | with a reference to another symbol. | |
7079 | ||
343b7260 JM |
7080 | 2000-08-25 Joseph S. Myers <jsm28@cam.ac.uk> |
7081 | ||
7082 | * c-common.c (time_char_table): Don't allow width and flags with | |
7083 | "z" format. | |
7084 | ||
1f9124e4 JJ |
7085 | 2000-08-25 Jakub Jelinek <jakub@redhat.com> |
7086 | ||
7087 | * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same | |
7088 | way as LT and LTU when the second operand has 0 in low word. | |
7089 | ||
6057c0e6 MH |
7090 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
7091 | ||
135ebc36 MH |
7092 | * basic-block.h (struct loop): Rename `exits' field to |
7093 | `exit_edges'. Add `entry_edges' and `num_entries' fields. | |
7094 | ||
7095 | * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find. | |
7096 | (flow_loop_entry_edges_find): Add. | |
7097 | (flow_edge_list_print): Rename from flow_exits_print. | |
7098 | (flow_loops_find): Call flow_loop_entry_edges_find. | |
7099 | (flow_loop_dump): Dump entry_edges list. | |
7100 | (flow_loops_free): Free entry_edges. | |
0e5921e8 | 7101 | |
135ebc36 | 7102 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 7103 | |
6057c0e6 MH |
7104 | * loop.c (loop_dump_aux, debug_loop): New functions. |
7105 | (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros. | |
7106 | ||
7107 | * flow.c (flow_loops_dump): Add callback parameter. | |
7108 | (flow_loop_dump): Add callback parameter and call it. Move | |
7109 | loop note debugging code to loop_dump_aux. | |
7110 | ||
7111 | * basic-block.h (flow_loop_dump): Add callback parameter | |
7112 | (flow_loops_dump): Likewise. | |
7113 | ||
7114 | * toplev.c (rest_of_compilation): Add NULL callback function pointer | |
7115 | to call to flow_loops_dump. | |
0e5921e8 | 7116 | |
028fc6e7 MH |
7117 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
7118 | ||
7119 | * loop.c (count_loop_regs_set): Replace start and end arguments | |
7120 | with loop argument. All callers udated. | |
0e5921e8 | 7121 | |
371502a8 | 7122 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 7123 | |
371502a8 MH |
7124 | * loop.c (constant_high_bytes): Delete. |
7125 | ||
e375c819 MH |
7126 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
7127 | ||
7128 | * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT | |
7129 | and NOTE_INSN_LOOP_VTOP to... | |
7130 | (find_and_verify_loops) ...here. | |
7131 | ||
036cfb36 AO |
7132 | Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com> |
7133 | ||
7134 | * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default. | |
7135 | (fini_dummy, init_dummy): Use it. | |
7136 | ||
c2e20542 NB |
7137 | Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net> |
7138 | ||
7139 | * cpplex.c (is_macro_disabled): Caller has already checked | |
7140 | that we're not a preprocessed file. | |
7141 | ||
83bab8db MM |
7142 | 2000-08-24 Mark Mitchell <mark@codesourcery.com> |
7143 | ||
7144 | * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o. | |
7145 | (c-iterate.o): Remove target. | |
7146 | * gcc/c-common.h (enum rid): Remove RID_ITERATOR. | |
7147 | * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators. | |
7148 | (finish_decl): Don't handle iterators. | |
7149 | (grokdeclarator): Likewise. | |
7150 | * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords. | |
7151 | * gcc/c-gperf.h: Regenerated. | |
7152 | * gcc/c-iterate.c: Removed. | |
7153 | * gcc/c-lex.c (init_lex): Don't handle iterators. | |
7154 | * gcc/c-parse.in (primary): Remove pop_iterator_stack call. | |
7155 | (compstmt_primary_start): Remove push_iterator_stack call. | |
7156 | (stmt): Don't allow iterator statements. Replace iterator_expand | |
7157 | with expand_expr_stmt. | |
7158 | (all_iter_stmt): Remove. | |
7159 | (all_iter_stmt_simple): Likewise. | |
7160 | (all_iter_stmt_with_decl): Likewise. | |
7161 | * gcc/c-tree.h (ITERATOR_P): Remove. | |
7162 | (ITERATOR_BOUND_P): Likewise. | |
7163 | (init_iterators): Remove declaration. | |
7164 | (iterator_expand): Likewise. | |
7165 | (iterator_for_loop_start): Likewise. | |
7166 | (iterator_for_loop_end): Likewise. | |
7167 | (iterator_for_loop_record): Likewise. | |
7168 | (push_iterator_stack): Likewise. | |
7169 | (pop_iterator_stack): Likewise. | |
7170 | * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P. | |
7171 | (readonly_warning): Likewise. | |
7172 | * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it. | |
0e5921e8 | 7173 | |
aee3c6b0 JW |
7174 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
7175 | ||
7176 | * c-common.c (decl_attributes, case A_ALIGN): Revert last change. | |
7177 | Copy type in a TYPE_DECL, just like pushdecl does. | |
7178 | ||
58d8c980 RH |
7179 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
7180 | ||
7181 | * toplev.c (main): Enable flag_reorder_blocks at -O2. | |
7182 | ||
054f5e69 ZW |
7183 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> |
7184 | ||
0e5921e8 | 7185 | * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're |
054f5e69 ZW |
7186 | asked for one page, allocate GGC_QUIRE_SIZE of them and put |
7187 | the extras on the free list. | |
7188 | (release_pages): Clean up. | |
7189 | (ggc_set_mark): Don't adjust G.allocated here... | |
7190 | (sweep_pages): ... do it here. | |
7191 | ||
7192 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> | |
7193 | ||
7194 | * cppfiles.c (read_include_file): Rearrange initializations. | |
7195 | ||
0551c32d RH |
7196 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
7197 | ||
7198 | * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X. | |
7199 | ||
7200 | * config/ia64/ia64-protos.h: Update. | |
7201 | * config/ia64/ia64.c (gr_register_operand): New. | |
7202 | (fr_register_operand, grfr_register_operand): New. | |
7203 | (gr_nonimmediate_operand, grfr_nonimmediate_operand): New. | |
7204 | (grfr_reg_or_8bit_operand): New. | |
0e5921e8 | 7205 | (gr_reg_or_0_operand): Rename from reg_or_0_operand and |
0551c32d RH |
7206 | use gr_register_operand. |
7207 | (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise. | |
7208 | (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise. | |
7209 | (gr_reg_or_8bit_and_adjusted_operand): Likewise. | |
7210 | (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise. | |
7211 | (fr_reg_or_fp01_operand): Likewise. | |
7212 | (not_postinc_memory_operand): New. | |
7213 | (ia64_split_timode): Remove unused variables. | |
7214 | (rtx_needs_barrier): Check arguments to cmpxchg. | |
7215 | (builtin_description): Remove. | |
7216 | (bdesc_2argsi, bdesc_2argdi): Remove. | |
7217 | (ia64_init_builtins): Declare all builtins directly. | |
7218 | (ia64_expand_fetch_and_op): Rewrite to be called from | |
7219 | ia64_expand_builtin directly. Use expand_binop and co. | |
7220 | (ia64_expand_op_and_fetch): Likewise. | |
7221 | (ia64_expand_compare_and_swap): Likewise. | |
7222 | (ia64_expand_binop_builtin): Remove. | |
7223 | (ia64_expand_lock_test_and_set): New. | |
7224 | (ia64_expand_lock_release): New. | |
7225 | (ia64_expand_builtin): Use them. | |
7226 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New. | |
7227 | (EXTRA_CONSTRAINT): Use it. | |
7228 | (PREDICATE_CODES): Update. | |
7229 | * config/ia64/ia64.md (*): Use gr_register_operand and co. | |
7230 | (mf): Indicate that we set memory as well as use it. | |
7231 | (fetchadd_acq_si): Show memory being modified as well. | |
0e5921e8 | 7232 | (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise. |
0551c32d RH |
7233 | (val_compare_and_swap_si, val_compare_and_swap_di): Remove. |
7234 | (lock_test_and_set_si, lock_test_and_set_di): Remove. | |
7235 | (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove. | |
7236 | (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove. | |
7237 | (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove. | |
7238 | (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove. | |
7239 | (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove. | |
7240 | (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove. | |
7241 | (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove. | |
7242 | (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove. | |
7243 | * config/ia64/ia64intrin.h (*): Cast result to the appropriate | |
7244 | return type. Pretty print definitions. | |
7245 | ||
7c866fb5 JW |
7246 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
7247 | ||
7248 | * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if | |
7249 | we have a SYMBOL_REF with SYMBOL_REF_FLAG set. | |
7250 | ||
40e8cc95 JM |
7251 | 2000-08-24 Jason Merrill <jason@redhat.com> |
7252 | ||
7253 | * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, | |
7254 | AT_loc, AT_addr, AT_lbl): Abort on unsuitable input. | |
0e5921e8 | 7255 | (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag, |
40e8cc95 JM |
7256 | get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails. |
7257 | ||
b6a1cbae GM |
7258 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7259 | ||
7260 | * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab, | |
7261 | and extendtab within their proper array boundaries. | |
7262 | * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds | |
7263 | for the entire array. | |
7264 | ||
7265 | * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE. | |
7266 | * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise. | |
7267 | * config/avr/avr.c (order_regs_for_local_alloc): Likewise. | |
7268 | * config/fr30/fr30.c (fr30_print_operand): Likewise. | |
7269 | * config/i386/dgux.c (output_options): Likewise. | |
7270 | * config/i386/dgux.h (ASM_FILE_START): Likewise. | |
7271 | * config/m88k/m88k.c (output_options): Likewise. | |
7272 | * config/m88k/m88k.h (ASM_FILE_START): Likewise. | |
7273 | * config/mcore/mcore.c (mcore_output_inline_const_forced, | |
7274 | layout_mcore_frame, handle_structs_in_regs): Likewise. | |
7275 | * config/mips/mips.c (output_block_move): Likewise. | |
7276 | * config/rs6000/rs6000.c (rs6000_override_options, | |
7277 | rs6000_file_start): Likewise. | |
7278 | * config/sparc/sparc.c (sparc_add_gc_roots): Likewise. | |
7279 | * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise. | |
7280 | * fixinc/fixtests.c (TEST_TABLE_CT): Likewise. | |
7281 | * builtins.c (expand_builtin_setjmp): Likewise. | |
7282 | * expr.c (safe_from_p): Likewise. | |
7283 | * flow.c (life_analysis): Likewise. | |
7284 | * fold-const.c (size_int_type_wide): Likewise. | |
7285 | * gcc.c (translate_options, init_spec, set_spec, main): Likewise. | |
7286 | * genattrtab.c (make_length_attrs): Likewise. | |
7287 | * genopinit.c (gen_insn): Likewise. | |
7288 | * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise. | |
7289 | * global.c (global_alloc): Likewise. | |
7290 | * local-alloc.c (find_free_reg): Likewise. | |
7291 | * mips-tdump.c (print_symbol): Likewise. | |
7292 | * mips-tfile.c (parse_def, parse_input): Likewise. | |
7293 | * reload1.c (NUM_ELIMINABLE_REGS): Likewise. | |
7294 | * stmt.c (expand_nl_goto_receiver): Likewise. | |
7295 | * stor-layout.c (set_sizetype): Likewise. | |
7296 | * varasm.c (decode_reg_name): Likewise. | |
7297 | * toplev.c (decode_f_option, decode_W_option, | |
7298 | set_target_switch, print_switch_values): Likewise. | |
7299 | (NUM_ELEM): Remove macro. | |
7300 | (display_help, main): s/NUM_ELEM/ARRAY_SIZE/ | |
7301 | ||
5b47282c GM |
7302 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7303 | ||
7304 | * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'. | |
7305 | (MAIN_NAME_P, main_identifier_node): New macros. | |
7306 | * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node. | |
7307 | * c-decl.c (start_decl, grokdeclarator, start_function, | |
7308 | store_parm_decls, finish_function): Use MAIN_NAME_P. | |
7309 | * config/avr/avr.c (function_prologue, function_epilogue): Likewise. | |
7310 | * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise. | |
7311 | * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise. | |
7312 | * config/pdp11/pdp11.c (output_function_prologue): Likewise. | |
7313 | ||
87ae0c74 GM |
7314 | 2000-08-24 Greg McGary <greg@mcgary.org> |
7315 | ||
7316 | * cppfiles.c (actual_directory): Don't write beyond `dir' | |
7317 | when it contains "". | |
7318 | * real.c (asctoeg): Stay within bounds of etens[][]. | |
7319 | ||
b148aeaa KG |
7320 | 2000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7321 | ||
7322 | * dependence.c (dependence_string, direction_string, | |
7323 | dump_one_node, dump_node_dependence): Hide unused identifiers. | |
7324 | (get_low_bound, normalize_coefficients): Match definition to | |
7325 | static prototype. | |
7326 | (get_one_coefficient): Initialize variables `value0_is_idx' and | |
7327 | `value1_is_idx'. | |
7328 | (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED. | |
7329 | (ziv_test): Delete variable `idx', use parameter `sub' instead. | |
7330 | (direction_merge): Avoid automatic aggregate initialization. | |
7331 | (have_dependence_p): Use `src' not `dest' to set `src_idx'. | |
7332 | Initialize variables `dest_idx' and `src_idx'. | |
7333 | (end_dependence_analysis): Avoid C89 style function definition. | |
7334 | ||
4894ecce JM |
7335 | 2000-08-24 Joseph S. Myers <jsm28@cam.ac.uk> |
7336 | ||
7337 | * c-common.c (time_char_table): Don't allow width with %F. | |
7338 | (check_format_info): Don't allow "Z" length with scanf. | |
7339 | ||
2ab99c46 GDR |
7340 | 2000-08-24 Gabriel Dos Reis <gdr@codesourcery.com> |
7341 | ||
7342 | * diagnostic.c (finish_diagnostic): Define. | |
7343 | (output_do_printf): Use wrap_text instead of output_add_string. | |
7344 | (default_print_error_function): Avoid embedded '\n'. | |
7345 | ||
7346 | * diagnostic.h (flush_diagnostic_buffer): Declare. | |
7347 | ||
335e59bd AO |
7348 | 2000-08-23 Alexandre Oliva <aoliva@redhat.com> |
7349 | ||
7350 | * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'. | |
7351 | ||
d9fe00bb HPN |
7352 | 2000-08-23 Hans-Peter Nilsson <hp@axis.com> |
7353 | ||
7354 | * Makefile.in (GCC_PASSES): Add specs. | |
7355 | ||
b97644fc JW |
7356 | 2000-08-23 Jim Wilson <wilson@cygnus.com> |
7357 | ||
7358 | * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New. | |
7359 | * config/ia64/frame-ia64.c (__get_personality): Return zero if neither | |
7360 | EHANDLER nor UHANDLER bit is set. | |
7361 | (__get_except_table): Likewise. | |
7362 | ||
64a7723d NC |
7363 | 2000-08-23 Nick Clifton <nickc@redhat.com> |
7364 | ||
02689e18 NC |
7365 | * config/arm/lib1funcs.asm: Replace upper case condition codes |
7366 | with lower case versions. | |
7367 | ||
64a7723d NC |
7368 | * config/arm/arm.h (STRUCT_VALUE): Define. |
7369 | (STRUCT_VALUE_REGNUM): Delete. | |
7370 | ||
bbdac7d0 ZW |
7371 | 2000-08-23 Zack Weinberg <zack@wolery.cumb.org> |
7372 | ||
7373 | * cpphash.h (IN_I): New flag for directive table. | |
7374 | * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and | |
7375 | #pragma with IN_I. | |
7376 | (_cpp_check_directive): If -fpreprocessed, execute directives | |
7377 | marked with IN_I. Issue no warnings in this case. | |
7378 | * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed. | |
7379 | ||
d8eceea4 JM |
7380 | 2000-08-23 Joseph S. Myers <jsm28@cam.ac.uk> |
7381 | ||
7382 | * c-common.c (print_char_table): Allow 'I' flag with %d, %i and | |
7383 | %u. | |
7384 | (check_format_info): Support printf 'I' flag; warn about it with | |
7385 | -pedantic. | |
7386 | ||
e04c2d6c RE |
7387 | 2000-08-23 Richard Earnshaw (rearnsha@arm.com) |
7388 | ||
7389 | * arm.c (arm_expand_prologue): Ensure that the stack-adjustment | |
7390 | barrier can't be ignored by the alias analysis code. | |
7391 | ||
f4306baa EZ |
7392 | 2000-08-12 Eli Zaretskii <eliz@is.elta.co.il> |
7393 | ||
7394 | * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it | |
7395 | works inside fixincl. | |
7396 | ||
95d0e5f1 AO |
7397 | Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com> |
7398 | ||
7399 | * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to | |
7400 | simplify_relational_operation() unless both operands are of | |
7401 | VOIDmode. | |
7402 | * cse.c (fold_rtx): Likewise. | |
7403 | ||
55efb413 JW |
7404 | Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com) |
7405 | ||
7406 | * rtlanal.c (rtx_unstable_p): The pic register is stable | |
7407 | (within one function) and the actual rtx should be used | |
7408 | when checking the registers. | |
7409 | (rtx_addr_can_trap_p): Pic memory addresses can't trap. | |
7410 | ||
7411 | * alias.c (true_dependence, write_dependence_p): Fix | |
7412 | bug in previous patch. | |
7413 | ||
7414 | * i386.c (ix86_GOT_alias_set): New. | |
7415 | (legitimize_pic_address): Use it. | |
7416 | ||
7417 | * rtlanal.c (rtx_unstable_p): An unchanging MEM is | |
7418 | only stable if its address is stable. | |
7419 | (rtx_varies_p): An unchanging MEM can't vary if | |
7420 | its address doesn't vary. | |
7421 | ||
aac625ac KG |
7422 | 2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7423 | ||
7424 | * c-parse.in (unop +): Restrict -Wtraditional warnings to user code. | |
7425 | ||
62432849 DA |
7426 | 2000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
7427 | ||
7428 | * vax.h (ASM_SPEC): Pass `-J' to assembler. | |
7429 | * x-vax-gcc: New file for bootstrapping with gcc. | |
dd745546 | 7430 | * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'. |
62432849 DA |
7431 | * configure.in: Use x-vax-gcc with gcc. |
7432 | * configure: Rebuilt. | |
7433 | ||
1eb994b7 R |
7434 | Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
7435 | ||
7436 | * toplev.c (rest_of_compilation): Rebuild label notes after | |
7437 | post-reload splitting pass if new labels have been created. | |
7438 | ||
f6a542de GDR |
7439 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
7440 | ||
7441 | * diagnostic.h (output_buffer_state): New macro. | |
7442 | * diagnostic.c (diagnostic_for_decl, sorry, | |
7443 | default_print_error_function, output_do_verbatim, | |
7444 | report_diagnostic, report_problematic_module): Use it. | |
7445 | (wrap_text): Tweak. | |
7446 | (output_format): Use wrap_text instead of maybe_wrap_text. | |
7447 | ||
888e552f NC |
7448 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
7449 | ||
7450 | * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro. | |
7451 | Common code for ARM divide and modulus functions. | |
7452 | (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of | |
7453 | ARM_DIV_MOD_BODY. | |
7454 | (FUNC_END): New macro: Common code at the end of the division and | |
7455 | modulo functions. | |
7456 | (THUMB_FUNCTION_START): New macro: Common code at the start of | |
7457 | Thumb functions. | |
7458 | (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros. | |
0e5921e8 | 7459 | |
89e43e33 KK |
7460 | Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
7461 | ||
7462 | * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing. | |
7463 | ||
7464 | * config/sh/sh.c (prepare_scc_operands): Apply force_reg to | |
7465 | sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't | |
7466 | const0_rtx. | |
7467 | ||
7405dc37 NC |
7468 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
7469 | ||
7470 | * config/arm/lib1funcs.asm (__umodsi3): Before performing any | |
7471 | restorative additions, test for bottom bits of IP being set, | |
7472 | rather than relying upon the RORs not matching. | |
7473 | (__modsi3): Ditto. | |
7474 | ||
9861b0c9 DE |
7475 | 2000-08-22 David Edelsohn <edelsohn@gnu.org> |
7476 | ||
7477 | * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or | |
60a3c181 | 7478 | text_section() as appropriate instead of emitting text csect |
9861b0c9 DE |
7479 | pseudo-op directly. |
7480 | (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment. | |
7481 | (UNIQUE_SECTION): Define macro. | |
7482 | (ASM_OUTPUT_SECTION_NAME): Define macro. | |
7483 | * rs6000.c (rs6000_override_options): Disable -ffunction-sections | |
60a3c181 | 7484 | on AIX if debugging and -fdata-sections always. |
9861b0c9 DE |
7485 | |
7486 | 2000-08-22 Steven King <sxking@uswest.net> | |
df3a88f0 SK |
7487 | |
7488 | * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double | |
7489 | machinery. | |
7490 | (LDBL_MAX): Same here. | |
7491 | ||
b578dbd7 RH |
7492 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
7493 | ||
7494 | * flow.c (tidy_fallthru_edge): Update b->end properly. | |
7495 | ||
d061bc1e SC |
7496 | 2000-08-22 Stan Cox <scox@redhat.com> |
7497 | ||
60a3c181 RH |
7498 | * Makefile.in (OBJS): Add dependence.o. |
7499 | * dependence.c: New file. | |
0e5921e8 | 7500 | |
23d16877 | 7501 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca> |
3cadd778 | 7502 | |
d60eab50 AO |
7503 | * calls.c (check_sibcall_argument_overlap_1): Adjust for |
7504 | ARGS_GROW_DOWNWARD. | |
7505 | (check_sibcall_argument_overlap): Likewise. | |
7506 | ||
23d16877 AO |
7507 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com> |
7508 | ||
3cadd778 AO |
7509 | * invoke.texi (SH Options): Document -m4-nofpu, |
7510 | -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd, | |
7511 | -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace. | |
7512 | ||
23e4d028 JM |
7513 | 2000-08-22 Joseph S. Myers <jsm28@cam.ac.uk> |
7514 | ||
7515 | * c-common.c (check_format_info): Give the 'some locales' warning | |
7516 | for strftime %Ey rather than the unconditional 'only last 2 digits | |
7517 | of year' one. | |
7518 | ||
bc82c87c RH |
7519 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
7520 | ||
7521 | * alias.c (init_alias_analysis): Do not register | |
7522 | struct_value_incoming_rtx or static_chain_rtx as pointing | |
7523 | to stack memory. | |
7524 | ||
7db9125f JL |
7525 | Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com) |
7526 | ||
7527 | * protoize.c (munge_compile_params): Fix typo and formatting buglets. | |
7528 | ||
b413d64d GDR |
7529 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
7530 | ||
7531 | * diagnostic.h (report_problematic_module): Declare. | |
7532 | * diagnostic.c (report_problematic_module): New function. | |
7533 | (report_error_function): Tweak. | |
7534 | ||
c4a6c0f3 RK |
7535 | Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7536 | ||
7537 | * stmt.c (expand_goto_internal, fixup_gotos): Only check | |
7538 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
7539 | ||
770a7feb RH |
7540 | 2000-08-21 Richard Henderson <rth@cygnus.com> |
7541 | ||
7542 | * flow.c (calculate_global_regs_live): Mark frame pointer live | |
7543 | everywhere before reload. | |
7544 | ||
280db205 JW |
7545 | 2000-08-21 Jim Wilson <wilson@cygnus.com> |
7546 | ||
7547 | * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle | |
7548 | INTEL_EXTENDED_IEEE_FORMAT. | |
7549 | (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally | |
7550 | clear last two bytes of output FP value. | |
7551 | ||
94c21c17 GS |
7552 | 2000-08-21 Graham Stott <grahams@cygnus.co.uk> |
7553 | ||
7554 | * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL. | |
7555 | ||
6315f068 JJ |
7556 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
7557 | ||
7558 | * unroll.c (loop_find_equiv_value): If ret is modified between | |
7559 | insn and loop_start, ret might not be equivalent to reg. | |
7560 | ||
5804a754 JM |
7561 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
7562 | ||
7563 | * c-common.c (init_dollar_format_checking, | |
7564 | maybe_read_dollar_number, finish_dollar_format_checking): New | |
7565 | functions. | |
7566 | (dollar_arguments_used, dollar_arguments_count, | |
7567 | dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned): | |
7568 | New variables. | |
7569 | (check_format_info): Support $ formats for scanf and printf width | |
7570 | and precision. Always increment format_chars to advance past the | |
7571 | '*' of precision, not just when the format parameters are | |
7572 | available to check. | |
7573 | ||
95adab8e KG |
7574 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7575 | ||
7576 | * mips.c (block_move_loop, expand_block_move, | |
7577 | function_arg_partial_nregs, save_restore_insns, function_prologue, | |
7578 | mips_expand_prologue, RA_MASK): Avoid using the `U' integer | |
7579 | constant suffix. | |
7580 | (function_arg_advance, function_arg): Match argument to format | |
7581 | specifier `%p'. | |
7582 | ||
49009afd JL |
7583 | 2000-08-21 Nix <nix@esperi.demon.co.uk> |
7584 | ||
7585 | * gcc.c (do_spec_1): Implement %j spec flag. | |
7586 | Remove dead comment. | |
7587 | ||
7588 | * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET. | |
60a3c181 RH |
7589 | * system.h (HOST_BIT_BUCKET): Default to "/dev/null". |
7590 | * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL". | |
7591 | * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise. | |
49009afd | 7592 | |
60a3c181 | 7593 | * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if |
49009afd JL |
7594 | writable) instead of hardcoded value. |
7595 | ||
7596 | * toplev.c (compile_file): Output to a file even if -fsyntax-only. | |
7597 | ||
60a3c181 RH |
7598 | * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill |
7599 | MKTEMP_EACH_FILE. | |
49009afd | 7600 | |
60a3c181 | 7601 | * gcc.c (cc1_options): Do not process -o or run the assembler if |
49009afd | 7602 | -fsyntax-only. |
05a3d06e | 7603 | * objc/lang-spec.h: Likewise. |
49009afd JL |
7604 | |
7605 | 2000-08-21 Eli Zaretskii <eliz@is.elta.co.il> | |
dc13bad7 EZ |
7606 | |
7607 | * fixinc/fixincl.c (fix_with_system): Pipe the output of | |
7608 | "external" fixes through `cat', to avoid truncating the input | |
7609 | file by redirection. | |
7610 | ||
cb694d2c JJ |
7611 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
7612 | ||
7613 | * config/i386/i386.md (lea_general_1): Copy insn condition to split | |
7614 | condition. | |
7615 | (lea_general_2, lea_general_3): Likewise. | |
7616 | ||
cde6e684 KG |
7617 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7618 | ||
7619 | * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional | |
7620 | warnings to user code. | |
7621 | ||
7622 | * c-lex.c (readescape, yylex): Likewise. | |
7623 | ||
7624 | * c-typeck.c (store_init_value, process_init_element): Likewise | |
7625 | (c_expand_start_case): Format. | |
7626 | ||
120dc6cd MR |
7627 | 2000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
7628 | ||
7629 | * mips/linux.h (LINK_SPEC): Use %(endian_spec). | |
7630 | ||
7631 | * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC | |
0e5921e8 | 7632 | and linker_endian_spec to endian_spec. |
120dc6cd MR |
7633 | (ENDIAN_SPEC): Add %{EB} and %{EL}. |
7634 | (LINK_SPEC): Remove %{EB} and %{EL}. | |
0e5921e8 | 7635 | (ASM_SPEC): Likewise. Use %(endian_spec). |
120dc6cd | 7636 | |
93e2382f JM |
7637 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
7638 | ||
7639 | * c-tree.h (flag_hosted): Move declaration from here... | |
7640 | * c-common.h (flag_hosted): ... to here. | |
7641 | (flag_noniso_default_format_attributes): New declaration. | |
7642 | * c-decl.c (flag_noniso_default_format_attributes): New variable. | |
7643 | (c_decode_option): Set it appropriately for options choosing | |
7644 | language standard variant. | |
7645 | * c-common.c (init_function_format_info): Only provide default | |
7646 | format attributes if flag_hosted. Only provide the gettext | |
7647 | formats if flag_noniso_default_format_attributes. Update | |
7648 | comments. | |
7649 | (check_format_info): Disable treatment of %a as a scanf flag in | |
7650 | C99 mode. | |
7651 | ||
f3d360aa JM |
7652 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
7653 | ||
7654 | * c-common.c (scan_char_table): Add 'w' to flags for all formats | |
7655 | except 'n'. | |
7656 | (check_format_info): Set 'wide' for scanf format widths. Warn for | |
7657 | a zero scanf width. Make the check for writing into a constant | |
7658 | object at the first level of indirection; at later levels, warn if | |
7659 | any type qualifiers are encountered. | |
7660 | ||
e04ca094 JL |
7661 | Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com) |
7662 | ||
e6ea3b5f JL |
7663 | * reload.c (reload_inner_reg_of_subreg): New function broken out of |
7664 | push_reload. | |
7665 | (push_reload): Use reload_inner_reg_of_subreg. | |
7666 | (combine_reloads): Do not combine reloads if the input reload | |
7667 | is a SUBREG in which the inner part will need reloading. | |
7668 | ||
e04ca094 JL |
7669 | * global.c (global_alloc): Avoid passing dumpfile argument to |
7670 | reload routines. | |
7671 | * toplev.c (rest_of_compilation): Likewise. | |
7672 | * reload.h (reload): Remove dumpfile argument. Callers changed. | |
7673 | (debug_reload, debug_reload_to_stream): Move prototypes here. | |
7674 | * rtl.h (reload): Remove dumpfile argument. | |
7675 | * reload.c (debug_reload): Remove prototype. | |
7676 | (debug_reload_to_stream): Likewise. | |
7677 | * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file | |
7678 | instead. | |
7679 | ||
24805e80 GDR |
7680 | 2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com> |
7681 | ||
7682 | * diagnostic.c (context_as_prefix): Export. | |
7683 | (need_error_newline): Remove. | |
7684 | (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects. | |
7685 | (error_module_changed, record_last_error_module, | |
7686 | error_function_changed, record_last_error_function): New functions. | |
7687 | (initialize_diagnostics): Default intialize | |
7688 | lang_diagnostic_starter, lang_diagnostic_finalizer. | |
7689 | (init_output_buffer): Tweak. | |
7690 | (file_name_as_prefix): New function. | |
7691 | (announce_function, default_print_error_function, | |
7692 | report_error_function, set_diagnostic_context): Tweak. | |
7693 | ||
056b6841 RE |
7694 | 2000-08-21 Richard Earnshaw <rearnsha@arm.com> |
7695 | ||
7696 | * flow.c (init_propagate_block_info): Handle SUBREG in a jump | |
7697 | condition expression. | |
7698 | ||
7171b491 RH |
7699 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
7700 | ||
7701 | * flow.c (merge_blocks_nomove): Don't seek back past the bb note. | |
7702 | ||
3cb553b4 ZW |
7703 | 2000-08-20 Zack Weinberg <zack@wolery.cumb.org> |
7704 | ||
7705 | * cppinit.c (cpp_init): Set global flag when called. | |
7706 | (cpp_reader_init): Bomb out if cpp_init hasn't been called. | |
7707 | ||
9861b0c9 | 7708 | Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su> |
3cb553b4 | 7709 | |
60a3c181 RH |
7710 | * cpplex.c (cpp_scan_buffer): Move `output_line_command' just |
7711 | before `process_directive' so that newlines won't be missed | |
7712 | for directives. | |
7713 | (cpp_printf): Increment `print->lineno' when newline is emitted. | |
3cb553b4 | 7714 | |
60a3c181 RH |
7715 | * cppmain.c (cb_ident): Likewise. |
7716 | (cb_define): Likewise. | |
7717 | (cb_undef): Likewise. | |
7718 | (cb_include): Likewise. | |
7719 | (cb_def_pragma): Likewise. | |
7720 | (dump_macros_helper): Likewise. | |
3cb553b4 | 7721 | |
9c668921 RH |
7722 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
7723 | ||
7724 | * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc | |
7725 | assigned before a loop. | |
7726 | ||
7727 | * config/ia64/ia64.md (ashlsi3): Zero extend the shift count. | |
7728 | (ashrsi3, lshrsi3): Likewise. | |
7729 | ||
4e1e6a01 GDR |
7730 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
7731 | ||
7732 | * c-lang.c: #include diagnostic.h | |
7733 | (c_tree_printer): New function. | |
7734 | (lang_init): Initialize lang_printer. | |
7735 | ||
7736 | * Makefile.in (c-lang.o): Depends on diagnostic.h | |
7737 | ||
e2840263 GDR |
7738 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
7739 | ||
7740 | * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. | |
7741 | ||
7742 | * diagnostic.c (default_diagnostic_starter, | |
7743 | default_diagnostic_finalizer): New functions. | |
7744 | (diagnostic_for_asm, diagnostic_for_decl): Tweak. | |
7745 | (pedwarn, pedwarn_with_file_and_line, error, | |
7746 | error_with_file_and_line, fatal, warning, | |
7747 | warning_with_file_and_line): Adjust call to report_diagnostic. | |
7748 | (report_diagnostic): Rework. | |
7749 | (set_diagnostic_context): New function. | |
7750 | ||
7751 | * diagnostic.h (struct diagnostic_context): New data structure. | |
7752 | (diagnostic_message, diagnostic_argument_list, | |
7753 | diagnostic_file_location, diagnostic_line_location, | |
7754 | diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer, | |
7755 | diagnostic_finalizer, diagnostic_auxiliary_data): New macros. | |
7756 | (set_diagnostic_context): Declare. | |
7757 | (report_diagnostic): Change prototype. | |
7758 | ||
574f7425 NB |
7759 | Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net> |
7760 | ||
7761 | * fix-header.c (main): Initialize cpplib. | |
7762 | ||
f1e42c81 MM |
7763 | 2000-08-19 Michael Meissner <meissner@redhat.com> |
7764 | ||
34c9e848 MM |
7765 | * ifcvt.c (find_if_block): Do not assume that a THEN block has any |
7766 | instructions in it before checking for indirect jumps. | |
7767 | ||
f1e42c81 MM |
7768 | * ifcvt.c (find_if_block): Do not consider a THEN block that ends |
7769 | in a indirect jump as a potential for conditional execution. | |
7770 | ||
7771 | * d30v.h (d30v_init_expanders): Don't declare here. | |
7772 | * d30v-protos.h (d30v_init_expanders): Declare here with a valid | |
7773 | prototype. | |
7774 | ||
9d6c2770 NB |
7775 | Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net> |
7776 | ||
7777 | * cpp.texi: Add @section for assertions. | |
7778 | ||
e76d9acb JW |
7779 | Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com) |
7780 | ||
7781 | * loop.c (scan_loop): Use CONST_CALL_P instead of | |
7782 | checking for REG_LIBCALL / REG_RETVAL. | |
7783 | ||
f49957d6 JL |
7784 | Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com) |
7785 | ||
850aac53 JL |
7786 | * reload1.c (reload_as_needed): Accept dumpfile argument, |
7787 | pass it to emit_reload_insns. | |
7788 | (emit_reload_insns): Add new dumpfile argument. If non-null | |
7789 | then dump the reloads for each insn into the dumpfile. | |
7790 | (reload): Pass dumpfile to reload_as_needed. | |
7791 | ||
f49957d6 JL |
7792 | * invoke.texi: Clean up linux-gnu vs linux comments. |
7793 | ||
041f25e6 RH |
7794 | 2000-08-19 Richard Henderson <rth@cygnus.com> |
7795 | ||
7796 | * config/ia64/ia64.c (reg_or_5bit_operand): New. | |
7797 | (ia64_depz_field_mask): New. | |
7798 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New. | |
7799 | (PREDICATE_CODES): Update. | |
7800 | * config/ia64/ia64.md: Update commentary. | |
7801 | (depz_internal): New. | |
7802 | (ashlsi3): Implement directly. | |
7803 | (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants. | |
7804 | (ashldi3): Use shladd. | |
7805 | * config/ia64/ia64-protos.h: Update. | |
7806 | ||
319ea138 ZW |
7807 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
7808 | ||
7809 | * toplev.c (independent_decode_option): Always process -g. | |
7810 | Remove third argument, now unused. Adjust caller to match. | |
7811 | ||
8231ad94 RH |
7812 | 2000-08-18 Richard Henderson <rth@cygnus.com> |
7813 | ||
7814 | * combine.c (make_compound_operation): Break after creating | |
7815 | the extraction. | |
7816 | ||
6e19bb38 ZW |
7817 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
7818 | ||
7819 | * cpplib.c (cpp_register_pragma_space): Just return if the | |
7820 | namespace is already registered. | |
7821 | ||
477d303f RE |
7822 | 2000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com> |
7823 | ||
7824 | * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a | |
7825 | constant amount. Do not generate ROTL instruction. | |
7826 | ||
ffe51c8a AO |
7827 | Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com> |
7828 | ||
7829 | * config/sh/elf.h: Do not include sh/sh.h. | |
7830 | * config/sh/rtems.h: Likewise. | |
7831 | * config/sh/rtemself.h: Do not include sh/elf.h. | |
7832 | * configure.in: Get them included with `tm_file's. | |
7833 | * configure: Rebuilt. | |
7834 | ||
8845e874 AO |
7835 | * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify. |
7836 | * config/sh/sh.c (fpscr_set_from_mem): Use them. | |
7837 | ||
3f546a53 RK |
7838 | Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7839 | ||
7d2950e5 RK |
7840 | * stor-layout.c (compute_record_type): Don't use mode of single |
7841 | field as mode of record if not integer mode of same type. | |
7842 | ||
a1c1fdd0 RK |
7843 | * regmove.c (perhaps_ends_bb_p): New function. |
7844 | (optimize_reg_copy_1, optimize_reg_copy_2): Call it. | |
7845 | (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise. | |
7846 | (fixup_match_1): Likewise. | |
7847 | (fixup_match_1, combine_stack_adjustments_for_block): Add casts to | |
7848 | avoid signed/unsigned warnings. | |
0e5921e8 | 7849 | |
3f546a53 RK |
7850 | * function.c (fixup_var_refs_1, case MEM): Update CODE after |
7851 | updating X. | |
7852 | ||
61d0346d NB |
7853 | Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net> |
7854 | ||
7855 | * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS. | |
7856 | (_cpp_trigraph_map): Declaration moved from cpplex.c | |
7857 | ||
7858 | * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1 | |
7859 | instead of 256. Use consistent test for designated initializers. | |
7860 | (cpp_init): Initialize trigraph_map. | |
7861 | (initialize_standard_includes, parse_option): Use memcmp | |
7862 | instead of strncmp. | |
7863 | ||
7864 | * cpplex.c (init_trigraph_map): Remove. | |
7865 | (trigraph_ok, trigraph_replace, lex_line): Refer to | |
7866 | _cpp_trigraph_map. | |
7867 | ||
7868 | * cpplib.c (str_match, WARNING, ERROR, ICE): Delete. | |
7869 | (do_unassert): Remove unused "next" local. | |
7870 | ||
7871 | * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype. | |
7872 | ||
ef42b1dd EM |
7873 | 2000-08-18 Emmanuel Marty <emarty@suntech.fr> |
7874 | ||
7875 | * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return | |
7876 | insn. | |
7877 | ||
bc08aefe RH |
7878 | 2000-08-17 Richard Henderson <rth@cygnus.com> |
7879 | ||
7880 | * config/ia64/ia64.c (spill_restore_mem): Handle emitting | |
7881 | the first insn in a sequence. | |
7882 | ||
49982682 JW |
7883 | Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com) |
7884 | ||
7885 | * alias.c (true_dependence, write_dependence_p): A read | |
7886 | involving a label_ref or the constant pool doesn't create | |
7887 | a dependency. | |
7888 | ||
7889 | * rtl.h (unchanging): Improve documentation. | |
7890 | ||
889e5964 RB |
7891 | 2000-08-17 Rodney Brown <RodneyBrown@mynd.com> |
7892 | ||
7893 | * cse.c (insert_regs): Remove unused `regno'. | |
7894 | ||
dd69c71b NB |
7895 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
7896 | ||
7897 | * (cppinit.c) merge_include_chains: Use remove_dup_dir, | |
7898 | remove_dup_dirs. If qtail == brack, remove brack not | |
7899 | qtail. | |
7900 | (remove_dup_dir, remove_dup_dirs): New functions. | |
7901 | ||
709e9e50 NB |
7902 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
7903 | ||
7904 | * cppinit.c (cpp_cleanup): Free include dir chains. | |
7905 | * cpplib.c (do_undef): Let _cpp_free_definition make the node void. | |
7906 | (do_unassert): Free the assert with _cpp_free_definition. | |
7907 | * cppmacro.c (_cpp_free_definition): Free memory allocated for | |
7908 | assertions. Make the node a T_VOID node. | |
7909 | ||
e33f6253 NB |
7910 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
7911 | ||
7912 | * cppinit.c (path_include, append_include_chain): | |
7913 | Remove 2nd parameter (struct cpp_pending *). | |
7914 | (path_include, initialize_standard_includes, cpp_handle_option): | |
7915 | Update callers appropriately. | |
7916 | (cpp_handle_option): Use pend. | |
7917 | ||
c154ba66 NB |
7918 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
7919 | ||
7920 | * cppinit.c (sort_options): Remove, put functionality in | |
7921 | cpp_init. | |
7922 | (cpp_init): New. | |
7923 | (initialize_builtins): Free memory. | |
7924 | (cpp_start_read): Move init_IStable to cpp_init. | |
7925 | ||
7926 | * cpplib.h (cpp_init): New prototype. | |
7927 | * cppmain.c (main): Call cpp_init. | |
7928 | ||
9c82ac6b JW |
7929 | Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com) |
7930 | ||
7931 | * rtlanal.c (rtx_unstable_p): Use CONSTANT_P. | |
7932 | (rtx_unstable_p, rtx_varies_p): Process vectors. | |
7933 | ||
acd50a92 NY |
7934 | 2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> |
7935 | ||
7936 | * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all | |
7937 | references to GLOBAL symbols. Use LOCAL where appropriate. | |
7938 | ||
cfedbb1f KG |
7939 | 2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7940 | ||
7941 | * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always | |
7942 | use t-aix41 when host == target. | |
7943 | ||
31989264 RH |
7944 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
7945 | ||
7946 | * reload.c (push_secondary_reload): Revert last change. | |
7947 | If we use a reload_in/out pattern, make the when the same | |
7948 | as the primary reload. | |
7949 | (find_reloads): Likewise. | |
7950 | ||
d84c5634 MH |
7951 | 2000-08-16 Manfred Hollstein <manfredh@redhat.com> |
7952 | ||
7953 | * configure.in (libstdcxx-v3): Fix test. | |
7954 | * configure: Regenerate. | |
7955 | ||
43db0363 RK |
7956 | Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7957 | ||
7958 | * calls.c (calls_function_1, expand_call): Only test | |
7959 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
7960 | * function.c (thread_prologue_and_epilogue_insns): Likewise. | |
7961 | ||
853d8828 RH |
7962 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
7963 | ||
7964 | * combine.c (simplify_shift_const): Revert previous two | |
7965 | changes. If SHIFT_COUNT_TRUNCATED, crop the shift count | |
7966 | before the main loop. | |
7967 | ||
3e626beb RH |
7968 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
7969 | ||
7970 | * combine.c (simplify_shift_const): Bound shift count when | |
7971 | combining shifts. | |
7972 | ||
f507188a RK |
7973 | Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7974 | ||
7393c642 RK |
7975 | * calls.c (ECF_SP_DEPRESSED): New macro. |
7976 | (calls_function_1): Treat calling sp-depressed function as alloca. | |
7977 | (emit_call_1): Don't adjust SP if calling sp-depressed function. | |
7978 | (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED. | |
7979 | If sp-depressed, ensure block saves and restores SP. | |
7980 | * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE | |
7981 | for INTEGER_TYPE. | |
7982 | * function.c (keep_stack_depressed): New function. | |
7983 | (thread_prologue_and_epilogue_insns): Call it. | |
7984 | * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED | |
7985 | to print DECL_OFFSET_ALIGN. | |
7986 | Print no-force-blk and transparent-union flags properly. | |
7987 | * stmt.c (expand_goto_internal): Don't restore stack if last block | |
7988 | and function returns with sp depressed. | |
7989 | (fixup_gotos): Likewise. | |
7990 | (save_stack_pointer): New function, from code in expand_decl. | |
7991 | (expand_decl): Call new function. | |
7992 | * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK. | |
7993 | (TYPE_RETURNS_STACK_DEPRESSED): New macro. | |
7994 | (save_stack_pointer): New declaration. | |
7995 | ||
f507188a RK |
7996 | * diagnostic.c (fatal_function): New variable. |
7997 | (set_fatal_function): New function. | |
7998 | (fatal): Call it. | |
7999 | * diagnostic.h (set_fatal_function): New declaration. | |
8000 | ||
56847207 WC |
8001 | 2000-08-15 William Cohen <wcohen@redhat.com> |
8002 | ||
8003 | * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined. | |
8004 | (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info. | |
8005 | (DWARF2_ASM_LINE_DEBUG_INFO): Defined. | |
8006 | ||
7791b7f9 RH |
8007 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
8008 | ||
8009 | * flow.c (mark_used_reg): Set reg_cond_reg appropriately. | |
8010 | ||
f99fce0c RE |
8011 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8012 | ||
8013 | * arm.c (arm_function_ok_for_sibcall): New function. | |
8014 | * arm.h (FUNCTION_OK_FOR_SIBCALL): Define. | |
8015 | * arm.md (call expanders): Don't check here for calls that can't | |
8016 | be sibling calls. | |
8017 | ||
74da3101 RE |
8018 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8019 | ||
8020 | * arm.md (splits generating cond_exec): Disable. | |
8021 | ||
2c210617 RE |
8022 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8023 | ||
8024 | * arm/linux-elf.h (text_section): Delete declaration. | |
8025 | ||
05ed98a1 RE |
8026 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
8027 | ||
8028 | ARM support for unordered FP operations. | |
8029 | * arm-protos.h (arm_comparison_operator): Declare. | |
8030 | * arm.c (arm_comparison_operator): New function. | |
8031 | (arm_select_cc_mode): Add unordered comparison codes. | |
8032 | (get_arm_condition_code): Likewise. | |
8033 | (arm_final_prescan_insn): Can't handle unordered jumps that can't | |
8034 | be done in one insn. | |
8035 | * arm.h (PREDICATE_CODES): Add arm_comparison_operator. | |
8036 | * arm.md (all uses of comparison_operator): Replace with | |
8037 | arm_comparison_operator. | |
8038 | (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New | |
8039 | expands. | |
8040 | (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New | |
8041 | patterns. | |
0e5921e8 | 8042 | |
ed78c862 OP |
8043 | Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com> |
8044 | ||
8045 | * gthr-posix.h: Conditionally include <sched.h>; include | |
8046 | <config.h> from libobjc/. | |
8047 | ||
4859dd36 RH |
8048 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8049 | ||
8050 | * config/i386/i386.c (legitimize_pic_address): Use Pmode | |
8051 | for all CONSTs. | |
8052 | ||
3f622353 RH |
8053 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8054 | ||
8055 | * configure.in (ia64-*): Set float_format for i386 long double. | |
8056 | ||
8057 | * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT | |
8058 | as we would for i386 XFmode. | |
8059 | (PUT_REAL): Likewise. | |
8060 | (endian, ereal_atof, real_value_truncate): Likewise. | |
8061 | (ereal_isneg, toe64, etens, make_nan): Likewise. | |
8062 | * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise. | |
8063 | ||
8064 | * config/ia64/ia64-protos.h: Update. | |
8065 | * config/ia64/ia64.c (general_tfmode_operand): New. | |
8066 | (destination_tfmode_operand): New. | |
8067 | (tfreg_or_fp01_operand): New. | |
8068 | (ia64_split_timode): New. | |
8069 | (spill_tfmode_operand): New. | |
8070 | (ia64_expand_prologue): Use TFmode not XFmode. | |
8071 | (ia64_expand_epilogue): Likewise. | |
8072 | (ia64_function_arg): Likewise. | |
8073 | (ia64_function_arg_advance): Likewise. | |
8074 | (ia64_return_in_memory): Likewise. | |
8075 | (ia64_function_value): Likewise. | |
8076 | (ia64_print_operand): Likewise. | |
8077 | (ia64_register_move_cost): Set GR<->FR to 5. | |
8078 | (ia64_secondary_reload_class): Get GR for TImode memory op. | |
8079 | * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove. | |
8080 | (ROUND_TYPE_ALIGN): Remove. | |
8081 | (LONG_DOUBLE_TYPE_SIZE): Set to 128. | |
8082 | (INTEL_EXTENDED_IEEE_FORMAT): Define. | |
8083 | (HARD_REGNO_NREGS): Use TFmode, not XFmode. | |
8084 | (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs. | |
8085 | (MODES_TIEABLE_P): Use TFmode, not XFmode. | |
8086 | (CLASS_MAX_NREGS): Likewise. | |
8087 | (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks. | |
8088 | (PREDICATE_CODES): Update. | |
8089 | * config/ia64/ia64.md (movti): New. | |
8090 | (movti_internal): Use a clobber for memory alternatives. | |
8091 | (reload_inti, reload_outti): New. | |
8092 | (movsfcc_astep): Predicate properly. | |
8093 | (movdfcc_astep): Likewise. | |
8094 | (movxf): Remove. | |
8095 | (movtf): New. | |
8096 | (extendsftf2, extenddftf2): New. | |
8097 | (trunctfsf2, trunctfdf2): New. | |
8098 | (floatditf2, fix_trunctfdi2): New. | |
8099 | (floatunsditf2, fixuns_trunctfdi2): New. | |
8100 | (addtf3, subtf3, multf3, abstf2): New. | |
8101 | (negtf2, nabstf2, mintf3, maxtf3): New. | |
8102 | (maddtf3, msubtf3, nmultf3, nmaddtf3): New. | |
8103 | (cmptf): New. | |
8104 | (fr_spill): Use TFmode, not XFmode. | |
8105 | (fr_restore): Likewise. | |
8106 | * config/ia64/lib1funcs.asm (__divtf3): New. | |
8107 | * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it. | |
8108 | ||
e49a1d2e KG |
8109 | 2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
8110 | ||
8111 | * cse.c (fold_rtx): Avoid empty body in an if-statement. | |
0e5921e8 | 8112 | |
e49a1d2e KG |
8113 | * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the |
8114 | `U' integer constant suffix. | |
8115 | ||
8116 | * dwarf2out.c (add_subscript_info): Avoid empty body in an | |
8117 | else-statement. | |
8118 | ||
8119 | * sparc/sol2.h (__enable_execute_stack): Prototype. | |
8120 | ||
78fbdbf7 DE |
8121 | 2000-08-14 David Edelsohn <edelsohn@gnu.org> |
8122 | ||
8123 | * collect2.c: Remove use of AIX import file. | |
8124 | ||
8125 | * longlong.h: Test ARCH_PWR not ARCH_POWER. | |
8126 | ||
8127 | * rs6000.c (print_operand, case 'E'): Add else. | |
8128 | ||
9a89adb8 RH |
8129 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8130 | ||
8131 | * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address. | |
8132 | (movdi_symbolic): New. | |
8133 | ||
00e149c7 JW |
8134 | 2000-08-14 Jim Wilson <wilson@cygnus.com> |
8135 | ||
8136 | * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
8137 | to GNU as. For Intel as, pass -M const_gp and -M no_plabel. | |
8138 | * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
8139 | to GNU as. | |
8140 | ||
2ee5437b RH |
8141 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
8142 | ||
8143 | * expr.c (emit_group_load): Don't force constants into registers. | |
8144 | Special case source already in the correct mode. | |
8145 | ||
57119aa9 ZW |
8146 | 2000-08-14 Zack Weinberg <zack@wolery.cumb.org> |
8147 | ||
8148 | * configure.in: Accept *-*-linux* not just *-*-linux-gnu*. | |
8149 | * fixinc/inclhack.def: Likewise. | |
0e5921e8 | 8150 | * fixinc/mkfixinc.sh: Likewise. |
57119aa9 ZW |
8151 | * configure: Regenerate. |
8152 | * fixinc/fixincl.x: Regenerate. | |
8153 | * install.texi: Document equivalence of linux and linux-gnu. | |
8154 | ||
d9f20424 R |
8155 | Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
8156 | ||
8157 | * cse.c (insert_regs): Also in REG case: When finding an invalid | |
8158 | value, and we make a new quantity, make sure that it won't be | |
8159 | mistaken by for a valid one by mention_regs. | |
8160 | ||
c8fa6556 RG |
8161 |