]>
Commit | Line | Data |
---|---|---|
9d86bffc JM |
1 | 2000-12-05 Joseph S. Myers <jsm28@cam.ac.uk> |
2 | ||
3 | * invoke.texi: Add support for using texi2pod.pl. Don't use | |
4 | @multitable. | |
5 | ||
c84df4c5 NC |
6 | 2000-12-04 Nick Clifton <nickc@redhat.com> |
7 | ||
a67ded0f NC |
8 | * config/arm/arm.c (arm_override_options): Test 'insn_flags' not |
9 | 'tune_flags' for XScale nature. | |
1269f395 | 10 | Remove spurious test of HARD_FLOAT and XScale flags. |
a67ded0f NC |
11 | |
12 | * config/arm/arm.md (umulsidi3adddi): Restore "=&r" register | |
13 | contraint, accidentally changed during XScale contribution. | |
14 | ||
c84df4c5 NC |
15 | * config/arm/lib1funcs.asm (interwork_call_via_, call_via_): Do |
16 | not create these functions if the target architecture does not | |
17 | support Thumb instructions. | |
18 | ||
c4f0b011 JM |
19 | 2000-12-04 Joseph S. Myers <jsm28@cam.ac.uk> |
20 | ||
21 | * ONEWS: New file with the current contents of NEWS up to EGCS | |
22 | 1.1. | |
23 | * NEWS: Generate automatically from online release notes from EGCS | |
24 | 1.0 to GCC 2.95.2, using ../contrib/gennews. | |
25 | ||
7682e7bc NB |
26 | 2000-12-04 Neil Booth <neilb@earthling.net> |
27 | ||
28 | * tradcif.y: Move lexptr to top of file. Add rule to handle | |
29 | assertions in conditional expressions. | |
30 | * tradcpp.c (parse_answer): Assertions do not need to go to | |
31 | end of line in conditional directives. | |
32 | (parse_assertion): Get first character of identifiers correct. | |
33 | (test_assertion): New function. | |
34 | * tradcpp.h (test_assertion): New prototype. | |
35 | ||
23a535c4 RB |
36 | 2000-12-01 Rodney Brown <RodneyBrown@mynd.com> |
37 | ||
38 | * config.gcc: Fix typo for UnixWare 7. | |
39 | ||
32fb1fb2 PE |
40 | 2000-12-03 Phil Edwards <pme@sources.redhat.com> |
41 | ||
42 | * invoke.texi: Replace `pedwarns' with clearer text. | |
43 | ||
e1e0c658 BK |
44 | 2000-12-04 Bruce Korb <bkorb@gnu.org> |
45 | ||
46 | * fixinc/Makefile.*(clean): don't clean autogenerated files. | |
47 | (mainainer-clean): clean autogenerated files | |
48 | ||
55e4756f DD |
49 | 2000-12-04 DJ Delorie <dj@redhat.com> |
50 | ||
51 | * md.texi: Add overview, clarify match_dup and define_expand. | |
52 | ||
7d492372 DD |
53 | 2000-12-04 DJ Delorie <dj@redhat.com> |
54 | ||
b3869591 | 55 | * print-tree.c (print_node): Target-specific builtins print |
7d492372 DD |
56 | numbers, not names. |
57 | ||
62c07905 JM |
58 | 2000-12-04 Jason Merrill <jason@redhat.com> |
59 | ||
60 | * stor-layout.c (int_mode_for_mode): Handle MODE_VECTOR_INT, | |
61 | MODE_VECTOR_FLOAT. | |
62 | ||
63 | * diagnostic.c (report_problematic_module): s/function/module/. | |
64 | ||
65 | * c-lex.h: Remove decl for check_newline. | |
66 | ||
ae50db03 GP |
67 | 2000-12-04 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
68 | ||
69 | * README.APOLLO: Remove obsolete file. | |
70 | ||
6951bc4a NB |
71 | 2000-12-04 Neil Booth <neilb@earthling.net> |
72 | ||
73 | * cppinternals.texi: New file. | |
74 | ||
614c7d37 NB |
75 | 2000-12-04 Neil Booth <neilb@earthling.net> |
76 | ||
77 | * cppfiles.c (cpp_make_system_header): Take 2 booleans, | |
78 | and operate on current buffer. | |
79 | (cpp_read_file): Rename _cpp_read_file. | |
80 | * cpplib.c (do_line, do_pragma_system_header): Update calls to | |
81 | cpp_make_system_header. | |
82 | * fix-header.c: Similarly. | |
83 | * cpphash.h (_cpp_read_file): Move from... | |
84 | * cpplib.h: ... here. | |
85 | * cppinit.c (do_includes, cpp_start_read): Update appropriately. | |
86 | ||
611b1df4 KG |
87 | 2000-12-03 Kaveh R. Ghazi <ghazi@teal.rutgers.edu> |
88 | ||
89 | * builtins.c (expand_builtin_strspn, expand_builtin_strcspn): | |
90 | Handle another transformation. | |
91 | ||
d19fb8e3 NC |
92 | 2000-12-03 Nick Clifton <nickc@redhat.com> |
93 | ||
94 | * config.gcc: Add support for StrongARM targets. | |
95 | * config/arm/t-strongarm-elf: New file. | |
96 | * config/arm/t-strongarm-coff: New file. | |
97 | * config/arm/t-strongarm-pe: New file. | |
98 | * config/arm/strongarm-pe.h: New file. | |
99 | ||
100 | 2000-12-03 Nick Clifton <nickc@redhat.com> | |
101 | ||
102 | * NEWS: Mention XScale has been added. | |
103 | * config.gcc: Add support for XScale targets. | |
104 | * config/arm/arm.h: Add support for XScale processor. | |
105 | * config/arm/arm.c: Add support for XScale processor. | |
106 | * config/arm/arm.md: Add support for XScale processor. | |
107 | * config/arm/t-xscale-elf: New file. | |
108 | * config/arm/t-xscale-coff: New file. | |
109 | * config/arm/xscale-elf.h: New file. | |
110 | * config/arm/xscale-coff.h: New file. | |
111 | ||
250d07b6 RH |
112 | 2000-12-03 Richard Henderson <rth@redhat.com> |
113 | ||
114 | * bb-reorder.c (reorder_basic_blocks): Don't check for EH edges | |
115 | unless exception handling is enabled, and if not using sjlj. | |
116 | ||
117 | * builtins.c (expand_builtin_setjmp_setup): New. | |
118 | (expand_builtin_setjmp_receiver): New. | |
119 | (expand_builtin_setjmp): Split out _setup and _receiver functions. | |
120 | Move argument parsing in from ... | |
121 | (expand_builtin): ... here. | |
122 | * except.c (receive_exception_label): Branch around receiver | |
123 | unless new-style exceptions. Call expand_builtin_setjmp_receiver. | |
124 | (start_dynamic_handler): Call expand_builtin_setjmp_setup. | |
125 | * expr.h: Update builtin setjmp decls. | |
126 | ||
5c032c4d BK |
127 | 2000-12-03 Bruce Korb <bkorb@gcc.org> |
128 | ||
129 | * fixinc/mkfixinc.sh(build machine): Sometimes, there is no canonical | |
130 | build machine name. Default to the target. | |
131 | ||
3769600a LB |
132 | 2000-12-03 Laurynas Biveinis <lauras@softhome.net> |
133 | ||
134 | * Makefile.in: use $(build_canonical), not $(canonical_build). | |
135 | ||
b4ead7d4 BS |
136 | 2000-12-03 Bernd Schmidt <bernds@redhat.co.uk> |
137 | ||
138 | * Makefile.in (OBJS): Add sched-rgn.o. | |
139 | (sched-rgn.o): New rule. * haifa-sched.c (sched_verbose): No | |
140 | longer static. | |
141 | (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT, | |
142 | INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE, | |
143 | UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST, | |
144 | MAX_BLOCKAGE_COST): Move to sched-int.h. | |
145 | (MAX_RGN_BLOCKS, MAX_RGN_INSNS, INSN_REF_COUNT, FED_BY_SPEC_LOAD, | |
146 | IS_LOAD_INSN, struct haifa_edge, edge_table, NEXT_IN, NEXT_OUT, | |
147 | FROM_BLOCK, TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES, | |
148 | OUT_EDGES, edgelst, struct region, nr_regions, rgn_table, | |
149 | rgn_bb_table, block_to_bb, containing_rgn, RGN_NR_BLOCKS, | |
150 | RGN_BLOCKS, BLOCK_TO_BB, BB_TO_BLOCK, CONTAINING_RGN, | |
151 | debug_regions, find_single_block_region, find_rgns, too_large, | |
152 | init_regions, current_nr_blocks, current_blocks, bitset, bitlst, | |
153 | bitlst_table_last, bitlst_table_size, bitlst_table, bitset_member, | |
154 | extract_bitlst, bblst, struct candidate, candidate_table, | |
155 | bblst_table, bblst_size, bblst_last, IS_VALID, IS_SPECULATIVE, | |
156 | SRC_PROB, target_bb, split_edges, compute_trg_info, | |
157 | debug_candidate, debug_candidates, bbset, bbset_size, dom, | |
158 | IS_RGN_ENTRY, IS_DOMINATED, prob, GET_SRC_PROB, edgeset, | |
159 | rgn_nr_edges, rgn_edges, edgeset_size, edgeset_bitsize, | |
160 | EDGE_TO_BIT, edge_to_bit, pot_split, ancestor_edges, | |
161 | compute_dom_prob_ps, ABS_VALUE, INSN_PROBABILITY, | |
162 | IS_SPECULATIVE_INSN, INSN_BB, MIN_DIFF_PRIORITY, MIN_PROBABILITY, | |
163 | MIN_PROB_DIFF, check_live_1, update_live_1, check_live, | |
164 | update_live, set_spec_fed, is_pfree, find_conditional_protection, | |
165 | is_conditionally_protected, may_trap_exp, haifa_classify_insn, | |
166 | is_prisky, is_exception_free, add_branch_dependences, | |
167 | propagate_deps, compute_block_backward_dependences, | |
168 | debug_dependencies, is_cfg_nonregular, build_control_flow, | |
169 | new_edge, bb_deps, BITSET_UNION, BITSET_INTER, BITSET_DIFFER, | |
170 | BITSET_INVERT, BITSET_ADD, BITSET_REMOVE, debug_regions, | |
171 | UPDATE_LOOP_RELATIONS, INSN_TRAP_CLASS, WORST_CLASS, IS_REACHABLE, | |
172 | CONST_BASED_ADDRESS_P, free_pending_lists, sched_target_n_insns, | |
173 | target_n_insns, sched_n_insns, init_ready_list, deaths_in_region, | |
174 | can_schedule_ready_p, new_ready, schedule_more_p, rgn_print_insn, | |
175 | rgn_rank, region_sched_info): Move to sched-rgn.c. | |
176 | (debug_reg_vector): Delete useless function. | |
177 | (get_bb_head_tail): Likewise. | |
178 | (insn_issue_delay, insn_cost, ready_add, get_block_head_tail, | |
179 | no_real_insns_p, rm_line_notes, save_line_notes, | |
180 | restore_line_notes, rm_redundant_line_notes, sched_init): No | |
181 | longer static. | |
182 | (rm_line_notes, save_line_notes, restore_line_notes, | |
183 | schedule_block, set_priorities): Change argument to be a real | |
184 | basic block, not one of haifa's "bb"s. All callers changed | |
185 | (rm_other_notes): Initialize note_list here, not in | |
186 | schedule_region. | |
187 | (sched_finish): New function, called from schedule_insn. * * | |
188 | sched-int.h (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT, | |
189 | INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE, | |
190 | UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST, | |
191 | MAX_BLOCKAGE_COST): Moved here from haifa-sched.c. | |
192 | (get_block_head_tail, no_real_insns_p, rm_line_notes, | |
193 | save_line_notes, restore_line_notes, rm_redundant_line_notes, | |
194 | rm_other_notes, insn_issue_delay, set_priorities, schedule_block, | |
195 | sched_init, sched_finish, ready_add, insn_cost): Declare. | |
196 | ||
f415f5a4 LB |
197 | 2000-12-03 Laurynas Biveinis <lauras@softhome.net> |
198 | Bruce Korb <bkorb@gnu.org> | |
199 | ||
200 | * Makefile.in: pass $(build_canonical) to mkfixinc.sh. | |
201 | * fixinc/mkfixinc.sh: accept build system name as an argument. | |
202 | Use it for choosing the fix build method. Use the target for | |
203 | selecting special fix rules. | |
204 | ||
1708fd40 BS |
205 | 2000-12-03 Bernd Schmidt <bernds@redhat.co.uk> |
206 | ||
16f6ece6 BS |
207 | * Makefile.in (OBJS): Add sched-deps.o. |
208 | (sched-deps.o): New rule. | |
209 | * haifa-sched.c (struct deps, struct haifa_insn_data): Moved to | |
210 | sched-int.h. | |
211 | (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved to | |
212 | sched-int.h. | |
213 | (SIZE_FOR_MODE): Delete unused macro. | |
214 | (reg_known_equiv_p, reg_known_value, reg_pending_clobbers, | |
215 | reg_pending_sets, reg_pending_sets_all, true_dependency_cache, | |
216 | anti_dependency_cache, output_dependency_cache, | |
217 | forward_dependency_cache): Variables moved to sched-deps.c. | |
218 | (add_dependence, remove_dependence, find_insn_list, | |
219 | find_insn_mem_list, add_insn_mem_dependence, flush_pending_lists, | |
220 | sched_analyze_insn, sched_analyze_1, sched_analyze_2, | |
221 | sched_analyze, group_leader, compute_forward_dependences, | |
222 | init_deps, free_deps, init_dependency_caches, free_dependency_caches): | |
223 | Functions moved to sched-deps.c. | |
224 | (schedule_region): Call init_deps_global and finish_deps_global | |
225 | instead of directly manipulating dependency data structures. | |
226 | * sched-deps.c: New file. | |
227 | (init_deps_global, finish_deps_global): New functions. | |
228 | * sched-int.h (struct haifa_insn_data, struct deps): Moved here from | |
229 | haifa-sched.c. | |
230 | (h_i_d): Declare. | |
231 | (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved here | |
232 | from haifa-sched.c. | |
233 | ||
c62c2659 BS |
234 | * Makefile.in (OBJS): Add sched-vis.o. |
235 | (sched-vis.o): New rule. | |
236 | * haifa-sched.c (get_unit_last_insn): New function. | |
237 | (sched_dump, insn_unit, actual_hazard_this_instance): No longer | |
238 | static. | |
239 | (schedule_block): Call visualize_alloc and visualize_free. Delete | |
240 | spurious return statement. | |
241 | (init_target_units, insn_print_units, get_visual_tbl_length, | |
242 | init_block_visualization, print_block_visualization, safe_concat, | |
243 | visualize_scheduled_inns, visualize_no_unit, visualize_stall_cycles, | |
244 | print_exp, print_value, print_pattern, print_insn, target_units, | |
245 | MAX_VISUAL_LINES, INSN_LEN, n_visual_lines, visual_tbl, | |
246 | n_vis_no_unit, vis_no_unit): Move scheduling visualization | |
247 | functions/variables... | |
248 | * sched-vis.c: ...here. New file. | |
249 | (visualize_alloc, visualize_free): New functions. | |
250 | (visualize_scheduled_insns, visualize_stall_cycles, | |
251 | print_block_visualization): Lose basic block argument. All callers | |
252 | changed. | |
253 | (visualize_scheduled_insns): Use new function get_unit_last_insn. | |
16f6ece6 BS |
254 | * sched-int.h (current_sched_info, sched_dump): Declare. |
255 | (init_target_units, insn_print_units, init_block_visualization, | |
256 | print_block_visualization, visualize_scheduled_inns, | |
257 | visualize_no_unit, visualize_stall_cycles, visualize_alloc, | |
258 | visualize_free): Declare functions. | |
c62c2659 | 259 | |
1708fd40 BS |
260 | * sched-int.h: New file. |
261 | * Makefile.in (haifa-sched.o): Depend on it. | |
262 | * haifa-sched.c: Include it. | |
263 | (no_real_insns_p): New function. | |
264 | (current_sched_info): New static variable. | |
265 | (__inline, HAIFA_INLINE): Moved to sched-int.h. | |
266 | (get_block_head_tail): Minor cleanup. | |
267 | (init_ready_list, can_schedule_ready_p, new_ready, schedule_more_p, | |
268 | rgn_print_insn, rgn_rank): New functions, broken out of | |
269 | rank_for_schedule, schedule_insn and schedule_block, where they | |
270 | are now called through function pointers in current_sched_info. | |
271 | (queue_insn, schedule_insn, queue_to_ready, debug_ready_list, | |
272 | print_insn): To display uid and block number, call the print_insn | |
273 | function pointer in current_schedule_info. | |
274 | (region_sched_info): New static variable. | |
275 | (sched_target_n_insns, sched_n_insns, target_n_insns): New global | |
276 | variables, moved out of schedule_block. | |
277 | (schedule_block): Return void. All callers changed. | |
278 | Move some of the setup code into schedule_region. Get head/tail | |
279 | from current_sched_info, and update it when done. | |
280 | (schedule_region): Slightly rearranged, some code moved here from | |
281 | schedule_block. Call no_real_insns_p to avoid doing work for a | |
282 | block that consists only of notes and labels. | |
283 | (schedule_insns): Initialize current_sched_info. | |
284 | ||
8aaef6e0 NB |
285 | 2000-12-03 Neil Booth <neilb@earthling.net> |
286 | ||
287 | * cppmacro.c (funlike_invocation_p): Re-disable macros enabled | |
288 | by contexts drops AFTER argument pre-expansion, so that they | |
289 | remain enabled during argument pre-expansion. | |
290 | (_cpp_pop_context): Unconditionally re-enable a macro when | |
291 | dropping a context level. | |
292 | ||
94a3d3b9 MH |
293 | 2000-12-03 Manfred Hollstein <manfredh@redhat.com> |
294 | ||
295 | * arm/t-linux (MULTILIB_OPTIONS): Comment. | |
296 | (MULTILIB_DIRNAMES): Likewise. | |
297 | (EXTRA_MULTILIB_PARTS): Likewise. | |
298 | (LIBGCC): Likewise. | |
299 | (INSTALL_LIBGCC): Likewise. | |
300 | ||
d118937d KG |
301 | 2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
302 | ||
303 | * builtins.c (expand_builtin_strcat, expand_builtin_strncat, | |
304 | expand_builtin_strspn, expand_builtin_strcspn): New functions. | |
305 | (expand_builtin): Handle BUILT_IN_STRCAT, BUILT_IN_STRNCAT, | |
306 | BUILT_IN_STRSPN and BUILT_IN_STRCSPN. | |
307 | ||
308 | * builtins.def (BUILT_IN_STRCAT, BUILT_IN_STRNCAT, | |
309 | BUILT_IN_STRSPN, BUILT_IN_STRCSPN): New entries. | |
310 | ||
311 | * c-common.c (c_common_nodes_and_builtins): Declare builtin | |
312 | strcat, strncat, strspn and strcspn. | |
313 | (string_ftype_string_cstring): Renamed from `string_ftype_ptr_ptr'. | |
314 | ||
315 | * extend.texi (strcat, strcspn, strncat, strspn): Document new | |
316 | builtins. | |
317 | ||
ca8034a0 KG |
318 | 2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
319 | ||
320 | * builtins.c (expand_builtin_strcmp): Use const*_rtx when | |
321 | expanding strcmp at compile-time. Add another transformation. | |
322 | (expand_builtin_strncmp): Add more transformations. Call | |
323 | expand_builtin_memcmp, not expand_builtin_strcmp, under | |
324 | appropriate conditions if HAVE_cmpstrsi. | |
325 | ||
6c873122 DE |
326 | 2000-12-02 David Edelsohn <edelsohn@gnu.org> |
327 | ||
328 | * rs6000.md (anddi3_internal[23]): Prefer rldic? over andis | |
329 | instruction. | |
330 | (cr logic): Really make operands sequential. | |
331 | ||
690c96c8 GK |
332 | 2000-12-02 Geoffrey Keating <geoffk@redhat.com> |
333 | ||
334 | * c-common.c (combine_strings): When the ISO C standard specifies | |
335 | the maximum length of a string, it doesn't include the trailing | |
336 | zero byte. | |
b43db0b3 GK |
337 | |
338 | * cpplib.c (do_ifdef): Add check_eol() call. | |
339 | (do_ifndef): Likewise. | |
340 | ||
283da1d3 DB |
341 | 2000-12-02 Daniel Berlin <dberlin@redhat.com> |
342 | Bruce Korb <bkorb@gnu.org> | |
343 | ||
344 | * fixinc/*: global substitute /__MSDOS__/SEPARATE_FIX_PROC/ | |
345 | * fixinc/mkfixinc.sh: prepare to use Makefile.BEOS for *-*-beos* | |
346 | * fixinc/Makefile.DOS: define SEPARATE_FIX_PROC for build | |
347 | * fixinc/fixfix.c(wrap_fix): avoid wrapping files that | |
348 | use the "__need_" hackery. It breaks them. | |
349 | * fixinc/fixincl.c(process - SEPARATE_FIX_PROC): | |
350 | Sometimes on DOS and BeOS the temp output file cannot be opened. | |
351 | Skip the file noisily. Ought to be fixed instead. | |
352 | ||
6864a6c6 BK |
353 | 2000-12-02 Bruce Korb <bkorb@gnu.org> |
354 | ||
355 | From: 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> | |
356 | ||
357 | * fixfixes.c (emit_gnu_type, format_write): Prototype. | |
358 | (format_write, char_macro_use_fix, char_macro_def_fix): Use gcc's | |
359 | custom uppercase ctype macros. | |
360 | * fixincl.c (do_version): Make static and add ATTRIBUTE_NORETURN. | |
361 | Use gcc's custom uppercase ctype macros. | |
362 | (main): Prototype. | |
363 | (machine_matches): Add static prototype and constify variable. | |
364 | (create_file, test_test, egrep_test): Add static prototype. | |
365 | (quoted_file_exists): Likewise, and constify parameters. | |
366 | (extract_quoted_files, internal_fix, start_fixer, fix_applies, | |
367 | write_replacement, test_for_changes): Add static prototype. | |
368 | (write_replacement, test_for_changes): Delete excess argument to | |
369 | `create_file'. | |
370 | * fixtests.c (test): Make static. | |
371 | * server.c (load_data, sig_handler, server_setup, find_shell): Add | |
372 | static prototype. | |
373 | (sig_handler): Mark parameter with ATTRIBUTE_UNUSED. | |
374 | ||
d7156fee BK |
375 | 2000-12-02 Bruce Korb <bkorb@gnu.org> |
376 | ||
377 | * fixnc/mkfixinc.sh(msdosdjgpp): remove from fixincludes exception list | |
378 | (per Laurynas Biveinis <lauras@softhome.net>) | |
379 | ||
f1008e52 RE |
380 | 2000-12-02 Richard Earnshaw <rearnsha@arm.com> |
381 | ||
382 | * arm.h (ARM_REGNO_OK_FOR_BASE_P, THUMB_REGNO_MODE_OK_FOR_BASE_P): New | |
383 | macros. | |
384 | (REGNO_MODE_OK_FOR_BASE_P): Define in terms of above. | |
385 | (REGNO_OK_FOR_FOR_BASE_P): Delete. | |
386 | (ARM_REG_OK_FOR_BASE_P, THUMB_REG_MODE_OK_FOR_BASE_P): New macros for | |
387 | both strict and non-strict uses. | |
388 | (REG_MODE_OK_FOR_BASE_P): Define in terms of above. | |
389 | (ARM_REG_OK_FOR_INDEX_P, THUMB_REG_OK_FOR_INDEX_P): New macros. | |
390 | (REG_OK_FOR_INDEX_P): Define in terms of above. | |
391 | (REG_OK_FOR_BASE_P): Delete. | |
392 | (REG_OK_FOR_PRE_POST_P): Delete. | |
393 | (ARM_BASE_REGISTER_RTX_P): Renamed from BASE_REGISTER_RTX_P. | |
394 | (ARM_INDEX_REGISTER_RTX_P): Renamed from INDEX_REGISTER_RTX_P. | |
395 | (ARM_GO_IF_LEGITIMATE_INDEX): Renamed from GO_IF_LEGITIMATE_INDEX. | |
396 | (THUMB_LEGITIMATE_OFFSET): Renamed from LEGITIMATE_OFFSET. | |
397 | (ARM_GO_IF_LEGITIMATE_ADDRESS): Adjust for name changes. Use ARM | |
398 | specific variants rather than general ones. Use ARM_REG_OK_FOR_BASE_P | |
399 | in pre/post increment cases. | |
400 | (THUMB_GO_IF_LEGITIMATE_ADDRESS): Similarly for Thumb. | |
401 | (ARM_LEGITIMIZE_ADDRESS): Similarly. | |
402 | (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Similarly. | |
403 | * arm.c (legitimate_pic_address): Similarly. | |
404 | ||
4eb191f3 NB |
405 | 2000-12-02 Neil Booth <neilb@earthling.net> |
406 | ||
407 | * tradcpp.c (struct answer, parse_assertion, parse_answer, | |
408 | canonicalize_text, find_answer): New. | |
409 | (do_assert, do_unassert): Provide appropriate function bodies. | |
410 | (union hashval): New member answers. | |
411 | ||
84e6f1ba MM |
412 | 2000-11-23 Marek Michalkiewicz <marekm@linux.org.pl> |
413 | ||
414 | * config/avr/avr.md: Document UNSPEC usage. | |
415 | (*tablejump_rjmp, *tablejump_lib, *tablejump_enh, *tablejump): | |
416 | Make operand 0 input only, clobber it. Use UNSPEC, not a bogus | |
417 | MEM for program memory word reference. Do not add the label to | |
418 | the table index in each of the asm output templates, instead ... | |
419 | (casesi): ... do it in RTL. Adjust to match the above change. | |
420 | ||
a88f02e7 BS |
421 | 2000-12-02 Bernd Schmidt <bernds@redhat.co.uk> |
422 | ||
0884b60c BS |
423 | * c-common.c (PTRDIFF_TYPE): Provide default here, ... |
424 | * c-decl.c: ... not here. | |
425 | ||
a88f02e7 BS |
426 | * haifa-sched.c (sched_dump): Renamed from dump. All users changed. |
427 | (old_max_uid): New variable. | |
428 | (compute_forward_dependences): Renamed from | |
429 | compute_block_forward_dependences; changed to accept block head and | |
430 | tail instead of block number. Caller changed. | |
431 | (free_deps, init_dependency_caches, free_dependency_caches, | |
432 | init_regions, sched_init): New functions, split out from | |
433 | schedule_insns and compute_block_backward_dependences. | |
434 | ||
fef1de5d NB |
435 | 2000-12-02 Neil Booth <neilb@earthling.net> |
436 | ||
437 | * cppexp.c (parse_number): Update diagnostic test. | |
438 | ||
88edcc06 BS |
439 | 2000-12-02 Bernd Schmidt <bernds@redhat.co.uk> |
440 | ||
441 | * reload1.c (free_for_value_p): New function, frontend to | |
442 | reload_reg_free_for_value_p. All callers of the latter now call | |
443 | this function with an additional mode argument. | |
444 | ||
a325caa0 GP |
445 | 2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
446 | ||
447 | * install.texi (Configurations): Remove obsolete documentation for | |
448 | hppa*-*-*. | |
449 | ||
3808a17d GP |
450 | 2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
451 | ||
452 | * install.texi (Installation): Remove obsolete description for | |
453 | libstdc++ which is now an integral part of GCC. | |
454 | ||
27646dba JB |
455 | 2000-12-01 Jim Blandy <jimb@redhat.com> |
456 | ||
457 | * dbxout.c (dbxout_parms): Correctly describe parameters passed by | |
458 | invisible reference in registers, but then spilled to the stack. | |
459 | Remove code to emit a second stab for such parameters; it attempts | |
460 | to describe the value's location by introducing a synthetic C++ | |
461 | `reference' type, and then saying the stack slot has that | |
462 | reference type. This loses type information (breaking GDB's | |
463 | `ptype' command, among other things) just to describe a location | |
464 | which stabs can represent correctly in other ways. | |
465 | ||
cb51ecd2 AO |
466 | 2000-12-01 Alexandre Oliva <aoliva@redhat.com> |
467 | ||
08106825 AO |
468 | * final.c (output_addr_const) <PLUS>: Don't assume at least one |
469 | operand is a CONST_INT. | |
470 | ||
cb51ecd2 AO |
471 | * config/sh/sh.c (reg_class_from_letter): Assign `k' to SIBCALL_REGS. |
472 | (machine_dependent_reorg): Split all insns. | |
473 | * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Compute | |
474 | reg_class_contents[SIBCALL_REGS]. | |
475 | (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add SIBCALL_REGS. | |
476 | * config/sh/sh.md (calli_pcrel, call_pcrel, call_valuei_pcrel, | |
477 | call_value_pcrel, call, call_value, sibcall): Match even when | |
478 | not optimizing. | |
479 | (sibcalli_pcrel, sibcall_pcrel): Likewise. Use constraint `k' | |
480 | for call address. | |
481 | (sibcalli): Likewise. | |
482 | ||
4d808927 JM |
483 | 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
484 | ||
485 | * c-common.c (warn_format, warn_format_y2k, | |
486 | warn_format_extra_args, warn_format_nonliteral): Define. | |
487 | (check_format_info): Check warn_format_nonliteral and | |
488 | warn_format_extra_args. | |
489 | (check_format_info_main): Check warn_format_y2k. | |
490 | (set_Wformat): New function. | |
491 | * c-common.h (warn_format_y2k, warn_format_extra_args, | |
492 | warn_format_nonliteral, set_Wformat): Declare. | |
493 | * c-decl.c (warn_format): Remove definition. | |
494 | (c_decode_option): Handle -Wformat-nonliteral, | |
495 | -Wno-format-extra-args and -Wno-format-y2k, and negated versions. | |
496 | Use set_Wformat. | |
497 | * invoke.texi: Document these new options and -Wformat=2. | |
498 | * toplev.c (documented_lang_options): Add these new options. | |
499 | ||
e78f4a97 JM |
500 | 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
501 | ||
502 | * builtins.def (BUILT_IN_IMAXABS): Add. | |
503 | * builtins.c (expand_builtin): Also abort on BUILT_IN_IMAXABS. | |
504 | * c-common.c (c_common_nodes_and_builtins): Create builtin | |
505 | functions __builtin_imaxabs, and plain imaxabs unless | |
506 | flag_no_nonansi_builtin outside C99 mode. | |
507 | (expand_tree_builtin): Handle BUILT_IN_IMAXABS. | |
508 | * extend.texi: Document builtin imaxabs. | |
509 | ||
5fd8e536 JM |
510 | 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
511 | ||
512 | * c-common.c: Include "defaults.h". | |
513 | (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Define. | |
514 | (c_common_nodes_and_builtins): Create string_type_node, | |
515 | const_string_type_node, wint_type_node, intmax_type_node, | |
516 | uintmax_type_node, default_function_type, ptrdiff_type_node and | |
517 | unsigned_ptrdiff_type_node. | |
518 | * c-common.h (identifier_global_value): Declare. | |
519 | * c-decl.c (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Don't define. | |
520 | (init_decl_processing): Don't create string_type_node, | |
521 | const_string_type_node, wint_type_node, intmax_type_node, | |
522 | uintmax_type_node, default_function_type, ptrdiff_type_node and | |
523 | unsigned_ptrdiff_type_node. | |
524 | (identifier_global_value): New function. | |
525 | ||
8d9e9a08 NB |
526 | 2000-12-01 Neil Booth <neilb@earthling.net> |
527 | ||
528 | * cppinit.c (initialize): Forgotten prototype. | |
529 | * cpplex.c (_cpp_lex_token): Loop until not skipping. | |
530 | Always clear PREV_WHITE upon meeting a new line. | |
531 | * cpplib.c (end_directive): Set pfile->skipping after | |
532 | skip_rest_of_line. | |
533 | * cpplib.h (cpp_reader): Remove macro_pos. | |
534 | * cppmacro.c (cpp_get_line): Don't do anything special inside | |
535 | macros. | |
536 | (parse_arg): Add PREV_WHITE if a token appears after new lines. | |
537 | (funlike_invocation_p): Save and restore the output position | |
538 | over a successful check for a '('. | |
539 | (enter_macro_context): Delete uses of macro_pos. | |
540 | (cpp_get_token): Don't use pfile->skipping. | |
541 | ||
c4765d18 PE |
542 | 2000-12-01 Phil Edwards <pme@sources.redhat.com> |
543 | ||
544 | * diagnostic.c: Fix typos in comments. | |
545 | * diagnostic.h: Likewise. | |
546 | ||
815d683e PE |
547 | 2000-11-30 Phil Edwards <pme@sources.redhat.com> |
548 | ||
549 | * rtl.texi (Machine Modes): Document BImode and OImode. | |
550 | ||
ae24178a JM |
551 | 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
552 | ||
553 | * gcc.c (default_compilers): Add suffixes .mi, .cp, .ii, .FOR and | |
554 | .FPP. | |
555 | ||
c7b82833 JM |
556 | 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
557 | ||
558 | * c-decl.c (grokdeclarator): If pedantic, warn about arrays with | |
559 | incomplete element type. | |
560 | (grokparms): Before checking for incomplete parameter type, check | |
561 | the type isn't error_mark_node. | |
562 | ||
ab937357 JJ |
563 | 2000-12-01 Jakub Jelinek <jakub@redhat.com> |
564 | ||
565 | * builtins.c (target_char_cast): New function. | |
566 | (expand_builtin_strchr): Use it. | |
567 | (expand_builtin_strrchr): Use it. | |
568 | (builtin_memset_read_str): New function. | |
569 | (expand_builtin_memset): Use target_char_cast. | |
570 | Try to optimize memset with second argument non-zero using | |
571 | store_by_pieces. | |
572 | ||
3a69a7d5 MM |
573 | 2000-11-30 Marek Michalkiewicz <marekm@linux.org.pl> |
574 | ||
575 | * install.texi (avr): Replace incomplete list of supported MCU | |
576 | types with a link to the current one ... | |
577 | * invoke.texi (AVR Options): ... here. Update -mmcu= to list | |
578 | all supported MCU types. Document -minit-stack= default. | |
579 | Document new options -mno-tablejump, -mtiny-stack. | |
580 | * md.texi (AVR family): Fix typo in 'w' constraint letter | |
581 | description. Document 'q'. Update 'O'. | |
582 | ||
53895717 BS |
583 | 2000-12-01 Bernd Schmidt <bernds@redhat.co.uk> |
584 | ||
585 | * combine.c (cant_combine_insn_p): Only disallow insns involving | |
586 | hard regs if they are reg-reg moves. | |
587 | (try_combine, can_combine_p, combinable_i3pat): Delete old | |
588 | SMALL_REGISTER_CLASSES tests. | |
589 | ||
f00018dd AO |
590 | 2000-12-01 Alexandre Oliva <aoliva@redhat.com> |
591 | ||
3d422cb1 AO |
592 | * config/sh/sh.c (shiftcosts): Don't get INTVAL before testing |
593 | whether X is a CONST_INT. | |
594 | (addsubcosts): Likewise. | |
595 | ||
f00018dd AO |
596 | * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Use INTVAL instead of |
597 | mis-used XINT. | |
598 | (ARG_POINTER_REGNUM): Set to AP_REG. | |
599 | ||
95ac07b0 AO |
600 | 2000-11-30 Alexandre Oliva <aoliva@redhat.com> |
601 | ||
ecfdeaeb AO |
602 | * config/sh/sh.md (fpu_switch0, fpu_switch1, movpsi, fpu_switch, |
603 | splits): Only match on TARGET_SH4. | |
604 | ||
95ac07b0 AO |
605 | * combine.c (try_combine): Disregard USEs when updating LOG_LINKS |
606 | of subsequent insns. | |
607 | ||
f2720858 RH |
608 | 2000-11-30 Richard Henderson <rth@redhat.com> |
609 | ||
610 | * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Disable. | |
611 | * config/alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise. | |
612 | ||
ef7d91cd RH |
613 | 2000-11-30 Richard Henderson <rth@redhat.com> |
614 | ||
615 | * config/alpha/elf.h (ASM_OUTPUT_SECTION_NAME): Copy elfos.h defn. | |
616 | (DO_SELECT_SECTION): New. | |
617 | (SELECT_SECTION): Use it. | |
618 | (UNIQUE_SECTION_P): New. | |
619 | (UNIQUE_SECTION): New. | |
620 | ||
29ced803 AO |
621 | 2000-11-30 Alexandre Oliva <aoliva@redhat.com> |
622 | ||
623 | * c-common.c (status_warning) [! ANSI_PROTOTYPES]: Load status | |
624 | from va_list before using it. | |
625 | ||
25e4379f MM |
626 | 2000-11-30 Michael Matz <matzmich@cs.tu-berlin.de> |
627 | ||
628 | * flow.c (make_edge): Early out, if no flags to set. | |
629 | (calculate_global_regs_live): Clear out garbage only when necessary. | |
630 | ||
631 | * simplify-rtx.c (varray_type used_regs): New. | |
632 | (clear_table): Use it to only clear necessary items. | |
633 | (cselib_lookup, cselib_record_set): Remember newly set items. | |
634 | (cselib_update_varray_sizes, cselib_init): Initialize and grow | |
635 | used_regs. | |
636 | ||
637 | * local-alloc.c (update_equiv_regs): New local `cleared_regs'. | |
638 | Move clearing of dead regs out of insn-loop. | |
639 | ||
41c39533 RH |
640 | 2000-11-30 Richard Henderson <rth@redhat.com> |
641 | ||
642 | * calls.c (expand_call): Emit queued insns before creating | |
643 | the tail recursion sequence. | |
644 | ||
039df8c7 DA |
645 | 2000-11-30 J. David Anglin <dave.anglin@nrc.ca> |
646 | Bruce Korb <bkorb@gnu.org> | |
647 | ||
648 | * fixinc/inclhack.def(): prevent dual double definition protection | |
649 | * fixinc/fixincl.x: regenerate | |
650 | ||
42cfed37 LR |
651 | 2000-11-29 Loren J. Rittle <ljrittle@acm.org> |
652 | ||
653 | * fixinc/Makefile.in (fixincl.x): Explicitly state the | |
654 | location of the generated file. | |
655 | ||
a6bb9efa GP |
656 | 2000-11-30 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
657 | ||
658 | * README.FRESCO: Remove obsolete file. | |
659 | ||
255b8a49 JL |
660 | 2000-11-30 Mark Kettenis <kettenis@gnu.org> |
661 | ||
662 | * configure.in: Reorganize handling of *-*-gnu*, to share target | |
663 | specific make details with Linux. Update comments to clarify | |
664 | the distinction between GNU/Linux and GNU/Hurd. | |
665 | * config/t-gnu (LIBGCC1, CROSS_LIBGCC1, CRTSTUFF_T_CFLAGS, | |
666 | TARGET_LIBGCC2_CFLAGS): Remove. We now use the settings from | |
667 | config/t-linux for the Hurd. | |
668 | ||
669 | 2000-11-30 Stephane Carrez <Stephane.Carrez@worldnet.fr> | |
75273d08 SC |
670 | |
671 | * config/mn10200/udivmod.c, config/mn10200/divmod.c, | |
672 | config/mn10200/udivmodsi4.c: Moved from here. | |
673 | * config/udivmod.c, config/divmod.c, config/udivmodsi4.c: To here. | |
674 | * config/mn10200/t-mn10200 (LIB2FUNCS_EXTRA): Use the generic | |
675 | C division functions. | |
676 | * config/m68hc11/t-m68hc11-gas (LIB2FUNCS_EXTRA): Likewise. | |
677 | ||
15c2086a JL |
678 | Thu Nov 30 01:12:52 2000 Jeffrey A Law (law@cygnus.com) |
679 | ||
680 | * pa.md (conditional moves): Avoid holes in operand list. | |
681 | (mod, umod patterns): Similarly. | |
682 | (variable extract/shift patterns): Similarly. | |
683 | ||
9105f671 NB |
684 | 2000-11-30 Neil Booth <neilb@earthling.net> |
685 | ||
686 | * objc/objc-act.c (lang_init, finish_file, maybe_objc_comptypes, | |
687 | maybe_objc_check_decl, build_objc_string_object, | |
688 | objc_declare_alias, objc_declare_class, build_message_expr, | |
689 | build_protocol_expr, build_selector_expr, build_encode_expr, | |
690 | get_class_ivars, start_class, start_protocol): Remove | |
691 | redundant code, assuming doing_objc_thang is true. | |
692 | ||
31a7659b JDA |
693 | 2000-11-29 John David Anglin <dave@hiauly1.hia.nrc.ca> |
694 | ||
1f80ea95 JDA |
695 | * pa.c (restore_unscaled_index_insn_codes): Delete procedure. |
696 | (record_unscaled_index_insn_codes): Likewise. | |
697 | (unscaled_index_insn_codes): Delete. | |
698 | (max_unscaled_index_insn_codes_uid): Delete. | |
699 | (output_function_prologue, output_function_epilogue, pa_reorg): | |
700 | Don't use the unscaled index insn hack. | |
701 | ||
d16ca6a6 JDA |
702 | * pa.md: Remove hack from all index insns to reverse the operand |
703 | order of frame and stack pointer references incorrectly created | |
704 | in the reload pass. | |
705 | ||
3502dc9c JDA |
706 | * function.h (emit_status): Delete member regno_pointer_flag and |
707 | rename regno_pointer_flag_length to regno_pointer_align_length. | |
708 | Delete define for REGNO_POINTER_FLAG. | |
709 | * integrate.h (inline_remap): Delete member regno_pointer_flag. | |
710 | Add member x_regno_reg_rtx. | |
711 | * rtl.h (rtx_def): Use frame_related bit to indicate register is | |
712 | a pointer in REG expressions. Define REG_POINTER macro. | |
713 | * alias.c (find_base_value, find_base_term): Use REG_POINTER | |
714 | instead of REGNO_POINTER_FLAG. | |
715 | * combine.c (nonzero_bits, num_sign_bit_copies): Likewise. | |
716 | * emit-rtl.c (gen_reg_rtx): Use regno_pointer_align_length instead | |
717 | of regno_pointer_flag_length. Remove code which refers to | |
718 | regno_pointer_flag. | |
719 | (mark_reg_pointer): Use REG_POINTER. | |
720 | (free_emit_status): Remove code which refers to regno_pointer_flag. | |
721 | (init_emit, mark_emit_status): Likewise. | |
722 | * flow.c (dump_flow_info): Likewise. | |
723 | * function.c (preserve_temp_slots): Likewise. | |
724 | * integrate.c (expand_inline_function, copy_rtx_and_substitute): | |
725 | Use x_regno_reg_rtx instead of regno_pointer_flag for function | |
726 | pointer determination in map. | |
727 | * loop.c (strength_reduce, maybe_eliminate_biv_1): Use REG_POINTER. | |
728 | * predict.c (estimate_probability): Likewise. | |
729 | * regclass.c (record_address_regs, reg_scan_mark_refs): Likewise. | |
730 | * unroll.c (unroll_loop): Use x_regno_reg_rtx instead of | |
731 | regno_pointer_flag for function pointer determination in map. | |
732 | * convex.h (RTX_COSTS): Don't test regno_pointer_flag and use | |
733 | REG_POINTER. | |
734 | * pa.c (hppa_legitimize_address, emit_move_sequence, basereg_operand): | |
735 | Use REG_POINTER. | |
736 | (restore_unscaled_index_insn_codes): Revise comment. | |
737 | ||
31a7659b JDA |
738 | * expr.c (do_compare_and_jump): Add missing TYPE_MODE in statement. |
739 | ||
9f1bbeaa JM |
740 | 2000-11-30 Joseph S. Myers <jsm28@cam.ac.uk> |
741 | ||
742 | * extend.texi: Update documentation for attributes. | |
743 | ||
74e5aa4b DB |
744 | 2000-11-29 David O'Brien <obrien@FreeBSD.org> |
745 | ||
746 | * config/alpha/elf.h (IDENT_ASM_OP): Protect the #define. | |
747 | (ASM_DECLARE_OBJECT_NAME): Same. | |
748 | (ASM_FILE_END): Same. | |
749 | (ASM_FINISH_DECLARE_OBJECT): Same. | |
750 | (ASM_IDENTIFY_GCC): Same. | |
751 | (ASM_IDENTIFY_LANGUAGE): Same. | |
752 | (ASM_OUTPUT_CONSTRUCTOR): Same. | |
753 | (ASM_OUTPUT_DEF): Same. | |
754 | (ASM_OUTPUT_DESTRUCTOR): Same. | |
755 | (ASM_OUTPUT_EXTERNAL_LIBCALL): Same. | |
756 | (ASM_OUTPUT_SECTION_NAME): Same. | |
757 | (ASM_WEAKEN_LABEL): Same. | |
758 | (BSS_SECTION_ASM_OP): Same. | |
759 | (COMMON_ASM_OP): Same. | |
760 | (CONST_SECTION_ASM_OP): Same. | |
761 | (CONST_SECTION_FUNCTION): Same. | |
762 | (CTORS_SECTION_ASM_OP): Same. | |
763 | (DTORS_SECTION_ASM_OP): Same. | |
764 | (ESCAPES): Same. | |
765 | (FINI_SECTION_ASM_OP): Same. | |
766 | (IDENT_ASM_OP): Same. | |
767 | (IDENT_ASM_OP): Same. | |
768 | (INIT_SECTION_ASM_OP): Same. | |
769 | (INT_ASM_OP): Same. | |
770 | (MAX_OFILE_ALIGNMENT): Same. | |
771 | (SBSS_SECTION_ASM_OP): Same. | |
772 | (SDATA_SECTION_ASM_OP): Same. | |
773 | (SECTION_FUNCTION_TEMPLATE): Same. | |
774 | (SELECT_SECTION): Same. | |
775 | (SE_CONST_SECTION): Same. | |
776 | (SIZE_ASM_OP): Same. | |
777 | (SKIP_ASM_OP): Same. | |
778 | (STRING_ASM_OP): Same. | |
779 | (STRING_LIMIT): Same. | |
780 | (TYPE_ASM_OP): Same. | |
781 | (TYPE_OPERAND_FMT): Same. | |
782 | ||
0eaed3c6 NB |
783 | 2000-11-29 Neil Booth <neilb@earthling.net> |
784 | ||
785 | * c-decl.c (c_decode_option): Don't handle -lang-objc. | |
786 | * objc/lang-options.h: Remove -lang-objc. | |
787 | * objc/lang-specs.h: Don't pass -lang-objc to cc1obj. | |
788 | * objc/objc-act.c (lang_init_options): Set c_language. | |
789 | ||
98166639 JJ |
790 | 2000-11-29 Jakub Jelinek <jakub@redhat.com> |
791 | ||
792 | * expr.c (can_store_by_pieces): Reinitialize max_size for reverse | |
793 | tests. | |
794 | ||
f3b55474 NB |
795 | 2000-11-29 Neil Booth <neilb@earthling.net> |
796 | ||
797 | * c-pragma.c (init_pragma): Update for parse_in type change. | |
798 | ||
b86ecfa9 LB |
799 | 2000-11-29 Laurynas Biveinis <lauras@softhome.net> |
800 | ||
801 | * configure.in: recognize DOS-style absolute paths. | |
802 | ||
57814e5e JJ |
803 | 2000-11-29 Jakub Jelinek <jakub@redhat.com> |
804 | ||
805 | * expr.h (store_by_pieces): Add prototype. | |
806 | (can_store_by_pieces): Likewise. | |
807 | * expr.c (struct store_by_pieces): Renamed from clear_by_pieces. | |
808 | (can_store_by_pieces): New. | |
809 | (store_by_pieces): New. | |
810 | (clear_by_pieces): New. | |
811 | (clear_by_pieces_1): New. | |
812 | (store_by_pieces_1): Renamed from clear_by_pieces, handle storing | |
813 | arbitrary compiler generated constants into memory block. | |
814 | (store_by_pieces_2): Renamed from clear_by_pieces_1, likewise. | |
815 | * builtins.c (c_readstr): New. | |
816 | (builtin_memcpy_read_str): New. | |
817 | (expand_builtin_memcpy): If src is string constant and | |
818 | emit_block_move would move it by pieces, compute integer constants | |
819 | from the string and store it into memory block instead. | |
820 | (builtin_strncpy_read_str): New. | |
821 | (expand_builtin_strncpy): If N is not constant zero and c_strlen does | |
822 | not return INTEGER_CST, don't optimize. | |
823 | If N is larger than strlen(src) + 1, try to copy the string | |
824 | including padding with store_by_pieces. | |
825 | (expand_builtin_strcmp): If both arguments have side effects, don't | |
826 | optimize. | |
827 | (expand_builtin_fputs): If STR has side effects, don't optimize. | |
828 | ||
76b7dad3 RE |
829 | 2000-11-29 Richard Earnshaw <rearnsha@arm.com> |
830 | ||
831 | * arm.md (sibcall, sibcall_value, sibcall_insn, sibcall_value_insn): | |
832 | Add use of link register. | |
833 | ||
b722c82c JM |
834 | 2000-11-29 Joseph S. Myers <jsm28@cam.ac.uk> |
835 | ||
836 | * extend.texi: Update documentation for default format attributes. | |
837 | ||
01fa3508 JL |
838 | Tue Nov 28 21:56:45 2000 Jeffrey A Law (law@cygnus.com) |
839 | ||
840 | * pa/pa-64.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not | |
841 | a list, to keep track of the sections. | |
842 | ||
4bec9f7d NC |
843 | 2000-11-28 Nick Clifton <nickc@redhat.com> |
844 | ||
845 | * config/arm/arm.md (pic_load_addr): Split into | |
846 | pic_load_addr_arm and pic_load_addr_thumb. | |
847 | ||
848 | * config/arm/arm.c (legitimize_pic_address): Generate either | |
849 | ARM or Thumb versions of pic_load_addr. | |
850 | (arm_finalize_pic): Generate either ARM or Thumb versions of | |
851 | pic_load_addr. | |
852 | ||
54fef245 RH |
853 | 2000-11-28 Richard Henderson <rth@redhat.com> |
854 | ||
855 | * calls.c (expand_call): Defer const/pure NO_DEFER_POP until | |
856 | after sibcall do_pending_stack_adjust. | |
857 | ||
f423a6a7 R |
858 | Wed Nov 29 00:08:23 2000 J"orn Rennecke <amylaar@redhat.com> |
859 | ||
860 | * jump.c (delete_insn): Check that REG_LABEL note actually contains | |
861 | a CODE_LABEL. | |
862 | ||
eaf299c6 NB |
863 | 2000-11-28 Neil Booth <neilb@earthling.net> |
864 | ||
01933a51 JM |
865 | * c-common.h: Remove flag_digraphs. |
866 | * c-decl.c: Remove flag_digraphs. | |
867 | (c_decode_option): Don't set it. | |
868 | * c-lex.c (init_c_lex): Don't do anything for digraphs. | |
eaf299c6 | 869 | |
7dfe7bd6 RH |
870 | 2000-11-28 Richard Henderson <rth@redhat.com> |
871 | ||
872 | * c-parse.in (finish_parse): Update for parse_in type change. | |
873 | (_yylex): Likewise. | |
874 | ||
8dc4676d NB |
875 | 2000-11-28 Neil Booth <neilb@earthling.net> |
876 | ||
01933a51 JM |
877 | * cppmacro.c (cpp_scan_buffer_nooutput): Take a boolean |
878 | indicating whether to scan all buffers on the stack or | |
879 | just one. | |
880 | * cppinit.c (do_includes): Update. | |
881 | * cppmain.c (main): Update. | |
882 | * cpplib.h: Update prototype. | |
8dc4676d | 883 | |
c77e04ae RH |
884 | 2000-11-28 Richard Henderson <rth@redhat.com> |
885 | ||
886 | * genoutput.c (validate_insn_operands): New. | |
887 | (gen_insn): Call it. | |
888 | ||
889 | * config/alpha/alpha.md (divmodsi_internal): Renumber operands. | |
890 | (divmoddi_internal): Likewise. | |
891 | * config/arm/arm.md (andsi3_compare0_scratch): Likewise. | |
892 | * config/i960/i960.md (branch patterns): Likewise. | |
893 | * config/ia64/ia64.md (tbit_and_0): Likewise. | |
894 | (tbit_and_1, tbit_or_0, tbit_or_1): Likewise. | |
895 | * config/m68k/m68k.md (zero_extract memory patterns): Likewise. | |
896 | * config/mips/mips.md (divmodsi4_internal): Likewise. | |
897 | (divmoddi4_internal): Likewise. | |
898 | * config/rs6000/rs6000.md (call patterns): Likewise. | |
899 | * config/sh/sh.md (movsi_y): Likewise. | |
900 | * config/sparc/sparc.md: Comment out if 0 v8p shift pattern. | |
901 | ||
79bc4669 RH |
902 | 2000-11-28 Richard Henderson <rth@redhat.com> |
903 | ||
904 | * config.gcc: Kill residual pyramid support. | |
905 | ||
cf44ea52 NB |
906 | 2000-11-28 Neil Booth <neilb@earthling.net> |
907 | ||
908 | * c-lex.h (parse_in): Change parse_in to a cpp_reader *. | |
909 | * c-decl.c (c_decode_option): Update to match. | |
910 | * c-lex.c (init_c_lex, yyparse): Update to match. | |
911 | * c-lang.c (lang_init_options): Use cpp_create_reader. | |
912 | * cppinit.c (cpp_init): Rename initialize. | |
913 | (cpp_reader_init): Rename cpp_create_reader. Create the | |
914 | reader. Initialize cpplib if appropriate. | |
915 | * cpplib.h (cpp_create_reader) New prototype. | |
916 | (cpp_init, cpp_reader_init): Delete prototypes. | |
917 | * cppmain.c (general_init, setup_callbacks): New functions. | |
918 | (main): Use them. | |
919 | * fix-header.c (scan_in): Change type to cpp_reader *. | |
920 | (read_scan_file): Update for new cpplib interface and scan_in type. | |
921 | ||
922 | * cp/decl.c (parse_in): Change to cpp_reader *. | |
923 | (lang_decode_option): Update. | |
924 | * cp/lex.c (lang_init_options): Use new cpplib interface. | |
925 | (init_cp_pragma, finish_parse, handle_pragma_implementation): Update. | |
926 | * cp/spew.c (read_token): Update. | |
927 | * objc/objc-act.c (lang_init_options): Update new cpplib interface. | |
928 | ||
48c4d691 JJ |
929 | 2000-11-28 Jakub Jelinek <jakub@redhat.com> |
930 | ||
931 | * loop.c (load_mems): Avoid using next_label to find end_label. If | |
932 | jumping outside of the loop (other than loop end), don't hoist MEMs | |
933 | out of loop. | |
934 | ||
fb158467 JH |
935 | 2000-11-28 Jan Hubicka <jh@suse.cz> |
936 | ||
937 | * calls.c (expand_call): Don't disable tail recursion based | |
938 | on the loop nest. | |
939 | ||
40bd4395 NB |
940 | 2000-11-28 Neil Booth <neilb@earthling.net> |
941 | ||
01933a51 JM |
942 | * tradcpp.c (enum node_type): New hash types T_ASSERT, T_UNASSERT. |
943 | (struct directive): Drop 4th argument from handlers. | |
944 | (do_define, do_line, do_include, do_undef, do_else, do_elif, | |
945 | do_endif): Similarly. | |
946 | (do_assert, do_unassert, do_ifdef, do_ifndef): New handlers. | |
947 | (do_ifxdef): Update as common handler of do_ifdef and do_ifndef. | |
948 | (make_definition, make_undef): Take a const char*. | |
949 | (make_assertion): New function. | |
950 | (struct directive_table): Update. | |
951 | (main): Handle -A command line argument. | |
952 | (handle_directive): Drop fourth handler argument. | |
40bd4395 | 953 | |
77ea49a4 BS |
954 | 2000-11-28 Bernd Schmidt <bernds@redhat.co.uk> |
955 | ||
956 | * simplify-rtx.c (cselib_record_sets): Ignore sets whose destination | |
957 | is anything but REG or MEM, but look inside STRICT_LOW_PART. | |
958 | ||
c5c0b3d9 RK |
959 | Tue Nov 28 09:53:50 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
960 | ||
961 | * system.h (IS_DIR_SEPARATOR): Use uppercase macro name. | |
962 | (IS_ABSOLUTE_PATHNAME): New macro. | |
963 | * gcc.c (find_a_file, process_command, do_spec_1, main): Use it. | |
964 | ||
dd80b906 JJ |
965 | 2000-11-28 Jakub Jelinek <jakub@redhat.com> |
966 | ||
967 | * config/i386/i386.md (truncxfsf2_2): Fix predicate. | |
968 | ||
102870fb JW |
969 | 2000-11-27 Jim Wilson <wilson@redhat.com> |
970 | ||
971 | * reload1.c (reload): Use HOST_WIDE_INT for old_frame_size. | |
972 | ||
9734e80c MK |
973 | 2000-11-27 Matthias Klose <doko@cs.tu-berlin.de> |
974 | ||
975 | * extend.texi (Nested Functions): Update URL of Usenix paper. | |
976 | ||
cf77f15f MM |
977 | 2000-11-27 Mark Mitchell <mark@codesourcery.com> |
978 | ||
979 | * function.c (free_after_compilation): Clear x_clobber_return_insn. | |
980 | ||
6a6b1628 NB |
981 | 2000-11-27 Neil Booth <neilb@earthling.net> |
982 | ||
01933a51 JM |
983 | * cppinit.c (cpp_reader_init): Remove handling of warn_paste |
984 | command line options. | |
985 | (cpp_handle_option): Similarly. | |
986 | * cpplib.h (struct cpp_options): Remove warn_paste. | |
987 | * cppmacro.c (paste_tokens): Apart from assembler, make | |
988 | unpasteable token warning mandatory. | |
6a6b1628 | 989 | |
fb6a7b08 NB |
990 | 2000-11-27 Neil Booth <neilb@earthling.net> |
991 | ||
01933a51 JM |
992 | * tradcpp.c (enum pending_dir_t, struct pending_dir): New. |
993 | (main): Allocate a pending directive set of these. Use it. | |
994 | Merge handling of -D and -U. Update handling of pending | |
995 | directives. Free the memory after use. | |
fb6a7b08 | 996 | |
7dfc0fbe BS |
997 | 2000-11-27 Bernd Schmidt <bernds@redhat.co.uk> |
998 | ||
999 | * flow.c (entry_exit_blocks): Add entry for cond_local_set. | |
1000 | (struct propagate_block_info): Add new member cond_local_set. | |
1001 | (propagate_block): Accept new arg cond_local_set. All callers | |
1002 | changed. | |
1003 | (init_propagate_block_info): Likewise. | |
1004 | (calculate_global_regs_live): Allocate & free cond_local_set. Always | |
1005 | rescan if there's overlap between cond_local_set and new_live_at_end. | |
1006 | (mark_set_1): Set bits either in cond_local_set or local_set, as | |
1007 | appropriate. | |
1008 | * basic-block.h (struct basic_block_def): New field cond_local_set. | |
1009 | (propagate_block, init_propagate_block_info): Update prototypes. | |
1010 | ||
5f6fa212 KK |
1011 | Mon Nov 27 17:29:44 2000 kaz Kojima <kkojima@rr.iij4u.or.jp> |
1012 | ||
1013 | * gcc/config/sh/sh.md (udivsi3_i4, udivsi3_i4_single): Clobber | |
1014 | T register. | |
1015 | ||
8bb9536a RE |
1016 | 2000-11-27 Richard Earnshaw <rearnsha@arm.com> |
1017 | ||
1018 | * arm.c (select_dominance_cc_mode): Handle new way that combine | |
1019 | canonicalizes conditional compares. | |
1020 | (arm_select_cc_mode): Likewise. | |
1021 | * arm.md: Garbage collect some dead code. | |
1022 | (cmp_and, cmp_ior): New patterns. | |
1023 | (splitter for conditional move with inverted false): Use cond_exec | |
1024 | and handle unordered comparisons. | |
1025 | ||
4211a8fb JH |
1026 | Mon Nov 27 17:22:56 MET 2000 Jan Hubicka <jh@suse.cz> |
1027 | ||
1028 | * i386.c (ix86_force_to_memory, ix86_free_from_memory): New. | |
1029 | * i386-protos.h (ix86_force_to_memory, ix86_free_from_memory): Declare | |
1030 | * i386.md (float?i?f, int/fp operations): Rewrite spliters to use | |
1031 | ix86_force_to_memory and ix86_free_from_memory. | |
1032 | ||
bb6ae783 RE |
1033 | 2000-11-27 Richard Earnshaw <rearnsha@arm.com> |
1034 | ||
1035 | * arm.md (arm_adddi3, adddi_sesidi_di, adddi_zesidi_di, arm_addsi3, | |
1036 | arm_subsi3_insn, anddi_zesidi_di, arm_andsi3_insn, anddi_notdi_di, | |
1037 | anddi_notzesidi_di, anddi_notsesidi_di, arm_iorsi3, | |
1038 | one_cmpldi2): Merge with splitters to create define_insn_and_split | |
1039 | patterns. Remove redundant splits. | |
1040 | (peephole2 for add:SI of invalid immediate): New. | |
1041 | (peephole2 for minus:SI of invalid immediate): New. | |
1042 | (peephole2 for ior:SI of invalid immediate): New. | |
1043 | (peephole for merge of move and compare): Convert ot peephole2. | |
1044 | (addsf3, adddf3): Mark as commutative. | |
1045 | ||
1046 | * arm.md (thumb peephole for merging stack adjustments): Convert to | |
1047 | peephole2. | |
1048 | ||
70bbeb8b BS |
1049 | 2000-11-27 Bernd Schmidt <bernds@redhat.co.uk> |
1050 | ||
375de5b6 BS |
1051 | * haifa-sched.c (print_pattern): Prettier output for COND_EXEC. |
1052 | ||
70bbeb8b BS |
1053 | * reload1.c (reload_cse_simplify_set): Pass down mode to cselib_lookup. |
1054 | (reload_cse_simplify_operands): Do nothing about operands where both | |
1055 | the operand and the match_operand fail to give us a mode. | |
1056 | * simplify-rtx.c (wrap_constant): New function. | |
1057 | (entry_and_rtx_equal_p): Except integer constants to come wrapped in a | |
1058 | CONST describing the proper mode. | |
1059 | (rtx_equal_for_cselib_p): Pass down modes to recursive calls of | |
1060 | cselib_lookup. | |
1061 | (cselib_lookup_mem): Call wrap_constant on the rtx that is passed to | |
1062 | htab_find_slot_with_hash. | |
1063 | (cselib_lookup): Likewise. | |
1064 | ||
7dbe6ae9 BS |
1065 | Based on a patch from Geoff Keating <geoffk@redhat.com>: |
1066 | * loop.c (basic_induction_var): If a REG is set from something | |
1067 | that is not a biv, then the REG is not a biv. Even if it is | |
1068 | earlier set from something that is a biv. | |
1069 | ||
6b2adea9 AO |
1070 | 2000-11-27 Alexandre Oliva <aoliva@redhat.com> |
1071 | ||
1072 | * configure.in (extra_objs): Enclose extra_headers in quotes. | |
1073 | * configure: Rebuilt. | |
1074 | ||
27e2564a NB |
1075 | 2000-11-27 Neil Booth <neilb@earthling.net> |
1076 | ||
01933a51 JM |
1077 | * c-lex.c (cb_enter_file, cb_leave_file, cb_rename_file): |
1078 | Combine into the new function cb_change_file. | |
1079 | (init_c_lex): Update. | |
1080 | * cppfiles.c (stack_include_file): Use _cpp_do_file_change. | |
1081 | (cpp_syshdr_flags): Delete. | |
1082 | * cpphash.h (_cpp_do_file_change): New prototype. | |
1083 | Move struct cpp_buffer here from... | |
1084 | * cpplib.h (struct cpp_buffer): ... here. | |
1085 | (enum cpp_fc_reason, struct cpp_file_loc, | |
1086 | struct_cpp_file_change, change_file): New. | |
1087 | (enter_file, leave_file, rename_file, cpp_syshdr_flags): Delete. | |
1088 | * cpplib.c (do_line): Update for new cb_change_file callback. | |
1089 | (_cpp_do_file_change): New function. | |
1090 | (_cpp_pop_buffer): Update to use it. | |
1091 | * cppmain.c (move_printer): Delete. | |
1092 | (main): Set up single callback cb_change_file. | |
1093 | (cb_enter_file, cb_leave_file, cb_rename_file): Delete. | |
1094 | (cb_change_file): New. | |
1095 | * fix-header.c (cur_file, cb_change_file): New. | |
1096 | (recognized_function, read_scan_file): Update. | |
1097 | * scan-decls.c (scan_decls): Update. | |
1098 | * scan.h (recognized_function): Update prototype. | |
27e2564a | 1099 | |
9ccb25d5 MM |
1100 | 2000-11-26 Mark Mitchell <mark@codesourcery.com> |
1101 | ||
1102 | * tree.h (mark_tree_hashtable): New function. | |
1103 | * tree.c (mark_tree_hashtable_entry): New function. | |
1104 | (mark_tree_hashtable): Likewise. | |
1105 | ||
5fcd86dd MM |
1106 | 2000-11-27 Michael Meissner <meissner@redhat.com> |
1107 | ||
1108 | * d30v-protos.h (srelational_si_operator): Correctly spell | |
1109 | function. | |
1110 | (urelational_si_operator): Ditto. | |
1111 | (relational_si_operator): Ditto. | |
1112 | (d30v_expand_prologue): Add prototype. | |
1113 | (d30v_expand_epilogue): Ditto. | |
1114 | ||
1115 | * d30v.h (OPTIMIZATION_OPTIONS): Undo November 22nd change. | |
1116 | ||
1117 | * d30v.md (movcccc_*): Delete now unused patterns. | |
1118 | (64 bit comparison splitters): Rewrite to use COND_EXEC instead of | |
1119 | IF_THEN_ELSE. | |
1120 | (define_cond_exec): Use 'b' to select branch flags. | |
1121 | ||
da9e9f08 KG |
1122 | 2000-11-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1123 | ||
1124 | * builtins.c (expand_builtin_strncmp, expand_builtin_strncpy): New | |
1125 | functions. | |
1126 | (expand_builtin): Handle BUILT_IN_STRNCPY and BUILT_IN_STRNCMP. | |
1127 | ||
1128 | * builtins.def (BUILT_IN_STRNCPY, BUILT_IN_STRNCMP): New entries. | |
1129 | ||
1130 | * c-common.c (c_common_nodes_and_builtins): Declare builtin | |
1131 | strncpy and strncmp. | |
1132 | ||
1133 | * extend.texi (strncmp, strncpy): Document new builtins. | |
1134 | ||
231db5f4 MM |
1135 | 2000-11-26 Mark Mitchell <mark@codesourcery.com> |
1136 | ||
1137 | * config/elfos.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not | |
1138 | a list, to keep track of the sections. | |
1139 | * tm.texi (ASM_OUTPUT_SECTION_NAME): Document the fact that the | |
1140 | parameter provided will always be a canonical string. | |
1141 | ||
7463ef45 NB |
1142 | 2000-11-26 Neil Booth <neilb@earthling.net> |
1143 | ||
5fcd86dd MM |
1144 | * cppmacro.c (cpp_scan_buffer_nooutput): Only scan the |
1145 | current buffer. | |
7463ef45 | 1146 | |
1ccfb3dd JM |
1147 | 2000-11-26 Joseph S. Myers <jsm28@cam.ac.uk> |
1148 | ||
1149 | * makefile.vms: Remove EGCS references. | |
1150 | ||
0b34cf1e UD |
1151 | 2000-11-26 Ulrich Drepper <drepper@redhat.com> |
1152 | ||
1153 | * dwarf2out.c (output_file_names): New function. Compute minimal | |
1154 | combination of directory and file name table and emit them. | |
1155 | (output_line_info): Remove code to emit directory and file name | |
1156 | table and call output_file_names instead. | |
1157 | (file_info_cmp): Helper function to sort directory names. | |
1158 | ||
5fcd86dd | 1159 | 2000-11-26 Neil Booth <neilb@earthling.net> |
bdb05a7b | 1160 | |
5fcd86dd MM |
1161 | * cpplib.h (struct cpp_reader): Remove lang_asm. |
1162 | (struct cpp_options): Remove c89. New members lang, | |
1163 | extended_numbers. | |
1164 | * cppexp.c (parse_number): Use them. | |
1165 | * cpphash.h (VALID_SIGN): Use them. | |
1166 | * cppinit.c (set_lang, cpp_start_read): Update. | |
1167 | * cpplex.c (parse_string, _cpp_lex_token): Update. | |
1168 | * cpplib.c (_cpp_handle_directive): Update. | |
1169 | * cppmacro.c (parse_args): Update. | |
1170 | * cppmain.c (scan_buffer): Update. | |
bdb05a7b | 1171 | |
72bd1f9e RK |
1172 | Sun Nov 26 10:02:37 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1173 | ||
1174 | * fold-const.c (fold, case CONVERT_EXPR): Always return tree of | |
1175 | proper type. | |
1176 | ||
5fcd86dd MM |
1177 | 2000-11-26 Neil Booth <neilb@earthling.net> |
1178 | ||
1179 | * Makefile.in: Remove MAYBE_CPPLIB and maybe_cpplib. | |
1180 | * c-decl.c: Remove parse_in declaration. | |
1181 | * c-lang.c: Similarly. | |
1182 | * c-lex.c: Similarly. | |
1183 | * c-parse.in: Similarly. | |
1184 | * c-pragma.c: Similarly. | |
1185 | * configure.in: Similarly. | |
1186 | * cp/Make-lang.in: Similarly. | |
1187 | * cp/spew.c: Similarly. | |
1188 | * cp/decl2.c: Remove check for lang-c++ option. | |
1189 | * cp/lang-specs.h: Remove -lang-c++ from cc1plus command line. | |
1190 | * cp/lex.c (lang_init_options): With cpp_reader_init, default to C++. | |
1191 | * c-lex.h: Add declaration of parse_in. | |
1192 | * cppinit.c: Call set_lang after allocating pfile->pending. | |
1193 | * configure: Regenerate. | |
056487e7 | 1194 | |
1786009e ZW |
1195 | 2000-11-25 Zack Weinberg <zack@wolery.stanford.edu> |
1196 | ||
1197 | * combine.c (try_combine): Remove redundant test. | |
1198 | ||
3645c4dc RH |
1199 | 2000-11-25 Richard Henderson <rth@redhat.com> |
1200 | ||
1201 | * c-common.h (DECL_C_HARD_REGISTER): New. | |
1202 | * c-decl.c (finish_decl): Set it for asm register variables. | |
1203 | * c-semantics.c (emit_local_var): Test it when instantiating one. | |
1204 | ||
a17a5850 RH |
1205 | 2000-11-25 Richard Henderson <rth@redhat.com> |
1206 | ||
1207 | * c-decl.c (c_expand_body): Use DECL_SOURCE_LINE rather than | |
1208 | lineno for the start of the function. | |
1209 | ||
2e18bbae RH |
1210 | 2000-11-25 Richard Henderson <rth@redhat.com> |
1211 | ||
1212 | * dwarf2out.c (file_table, file_table_allocated): Remove. | |
1213 | (file_table_allocated): Remove. | |
1214 | (struct file_table): New. | |
1215 | (decl_file_table, line_file_table): New. | |
1216 | (print_dwarf_line_table): Use them. | |
1217 | (size_of_line_prolog): Likewise. | |
1218 | (output_line_info): Likewise. | |
1219 | (add_src_coords_attributes): Likewise. | |
1220 | (gen_subprogram_die): Likewise. | |
1221 | (gen_variable_die): Likewise. | |
1222 | (dwarf2out_add_library_unit_info): Likewise. | |
1223 | (dwarf2out_line): Likewise. | |
1224 | (lookup_filename): Take a struct file_table argument. | |
1225 | (init_file_table): New. | |
1226 | (dwarf2out_init): Use it. | |
1227 | ||
163686bd JM |
1228 | 2000-11-25 Joseph S. Myers <jsm28@cam.ac.uk> |
1229 | ||
1230 | * invoke.texi: Update sequence points references. | |
1231 | ||
a32f2771 NB |
1232 | 2000-11-25 Neil Booth <neilb@earthling.net> |
1233 | ||
01933a51 JM |
1234 | * c-common.c: Remove USE_CPPLIB conditional inclusions. |
1235 | * c-common.h: Similarly. | |
1236 | * c-decl.c: Similarly. | |
a32f2771 NB |
1237 | * c-lang.c: Similarly. |
1238 | * c-lex.c: Similarly. | |
01933a51 JM |
1239 | * c-parse.in: Similarly. |
1240 | * c-pragma.c: Similarly. | |
1241 | * c-pragma.h: Similarly. | |
1242 | * gcc.c: Similarly. | |
1243 | * toplev.c: Similarly. | |
1244 | * cp/cp-tree.h: Similarly. | |
1245 | * cp/decl2.c: Similarly. | |
1246 | * cp/lang-specs.h: Similarly. | |
1247 | * cp/lex.c: Similarly. | |
1248 | * cp/lex.h: Similarly. | |
1249 | * cp/spew.c: Similarly. | |
1250 | * java/lang-options.h: Similarly. | |
1251 | * objc/lang-specs.h: Similarly. | |
1252 | * objc/objc-act.c: Similarly. | |
1253 | ||
1254 | * configure.in: Remove configure option. | |
1255 | * config.in: Regenerate. | |
1256 | * configure: Regenerate. | |
a32f2771 | 1257 | |
3e8aa6e3 RH |
1258 | 2000-11-25 Richard Henderson <rth@redhat.com> |
1259 | ||
1260 | * haifa-sched.c (sched_analyze_1, sched_analyze_2, sched_analyze): | |
1261 | Revert 2000-11-22 change. | |
1262 | ||
59a9e22e BS |
1263 | 2000-11-25 Bernd Schmidt <bernds@redhat.co.uk> |
1264 | ||
1265 | * config/i386/i386.h (FIXED_REGS): Make the three flags registers | |
1266 | fixed. | |
1267 | ||
2be36552 PT |
1268 | 2000-11-25 Philipp Thomas <pthomas@suse.de> |
1269 | * configure.in (ALL_LINGUAS): Remove en_GB and add sv. | |
1270 | * configure: Rebuilt. | |
1271 | ||
4df1190a JJ |
1272 | 2000-11-25 Jakub Jelinek <jakub@redhat.com> |
1273 | ||
1274 | * config/sparc/sparc.md (muldi3_v8plus): Remove H constraint. | |
1275 | Handle CONST_INT as second argument. | |
1276 | * config/sparc/sparc.c (set_extends): Remove first argument. | |
1277 | Properly handle AND, CONST_INT and CONST_DOUBLE, handle IOR, XOR and | |
1278 | MOV. | |
1279 | (sparc_check_64): Abort if first argument is not REG. | |
1280 | If it is DImode REG, look at the lower register of the register | |
1281 | pair. | |
1282 | ||
1283 | * config/sparc/sparc.c (load_pic_register, restore_regs, | |
1284 | output_return, sparc_v8plus_shift, sparc_function_profiler, | |
1285 | sparc_function_block_profiler, sparc_block_profiler): Fix output | |
1286 | formatting. | |
1287 | ||
6915629f AO |
1288 | 2000-11-25 Alexandre Oliva <aoliva@redhat.com> |
1289 | ||
ae010e43 AO |
1290 | * config/sh/sh.h (TARGET_NONE): New. |
1291 | (TARGET_SWITCHES): For all variant-selecting switch, use | |
1292 | TARGET_NONE to reset all other variant-selecting switch. Added | |
1293 | empty strings to avoid warnings. | |
1294 | (TARGET_DEFAULT): Set to SH1_BIT. | |
1295 | ||
8618466f AO |
1296 | * Makefile.in ($(INTL_TARGETS)): Added $(CONFIG_H) for |
1297 | insn-codes.h. | |
1298 | ||
5db5a888 AO |
1299 | * gcc/config/sh/sh.md (sibcalli, sibcalli_pcrel): New insns. |
1300 | (sibcall_pcrel): New insn_and_split. | |
1301 | (sibcall, sibcall_value, sibcall_epilogue): New expands. | |
1302 | ||
6915629f AO |
1303 | * config/sh/sh.md (GOTaddr2picreg, symGOT2reg, symGOTOFF2reg, |
1304 | symPLT_label2reg, call, call_value): Don't set | |
1305 | current_function_uses_pic_offset_table. | |
1306 | * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Don't mark | |
1307 | PIC_OFFSET_TABLE_REGNUM as call_used, so that calc_live_regs | |
1308 | takes it into account. | |
1309 | (FINALIZE_PIC): Delete, useless. | |
1310 | (LEGITIMATE_CONSTANT_P): Delete, unused. | |
1311 | * config/sh/sh.c (sh_expand_prologue): Don't use | |
1312 | current_function_uses_pic_offset_table. Don't special-case | |
1313 | PIC_OFFSET_TABLE_REGNUM. Initialize it if it's ever live and | |
1314 | PIC is enabled. | |
1315 | (sh_expand_epilogue, initial_elimination_offset): Don't | |
1316 | special case PIC_OFFSET_TABLE_REGNUM. | |
1317 | ||
2d01e445 AO |
1318 | 2000-11-25 Alexandre Oliva <aoliva@redhat.com>, NIIBE Yutaka <gniibe@m17n.org> |
1319 | ||
1320 | * config/sh/sh-protos.h (symbol_ref_operand): Declare. | |
1321 | * config/sh/sh.md (UNSPEC_CALLER): New constant. | |
1322 | (calli_pcrel, call_valuei_pcrel): Use PIC_REG. | |
1323 | (call_pcrel, call_value_pcrel): New insn_and_splits. | |
1324 | (call, call_value): Use them. | |
1325 | (call_site): New expand. | |
1326 | (sym_label2reg, symPLT_label2reg): Adjust to hold call_sites. | |
1327 | * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA) [UNSPEC_CALLER]: | |
1328 | Output call_site label. | |
1329 | (PREDICATE_CODES): Added symbol_ref_operand. | |
1330 | * config/sh/sh.c (symbol_ref_operand): Define. | |
1331 | * emit-rtl.c (try_split): Propagate CALL_INSN_FUNCTION_USAGE | |
1332 | to CALL_INSNs in the split sequence. | |
1333 | ||
c3edd394 NC |
1334 | 2000-11-24 Nick Clifton <nickc@redhat.com> |
1335 | ||
1336 | * config.gcc (v850-*-*): Define c_target_objs and | |
1337 | cxx_target_objs. | |
1338 | ||
1339 | * config/v850/t-v850: Define how to build v850-c.o | |
1340 | ||
1341 | * config/v850/v850.h (struct data_area_stack_element): Move | |
1342 | definition here from v850.c. | |
1343 | ||
1344 | * config/v850v850.c: Include gcc.h to avoid compile time | |
1345 | warning. | |
1346 | (push_data_area): Move to v850-c.c. | |
1347 | (pop_data_area): Move to v850-c.c. | |
1348 | (mark_current_function_as_interrupt): Move to v850-c.c. | |
1349 | (GHS_default_section_names): Allow to be exported. | |
1350 | (GHS_current_section_names): Allow to be exported. | |
1351 | (data_area_stack_elements): Allow to be exported. | |
1352 | (ghs_pragma_section): Move to v850-c.c. | |
1353 | (ghs_pragma_interrupt): Move to v850-c.c. | |
1354 | (ghs_pragma_starttda): Move to v850-c.c. | |
1355 | (ghs_pragma_startsda): Move to v850-c.c. | |
1356 | (ghs_pragma_startzda): Move to v850-c.c. | |
1357 | (ghs_pragma_endtda): Move to v850-c.c. | |
1358 | (ghs_pragma_endsda): Move to v850-c.c. | |
1359 | (ghs_pragma_endzda): Move to v850-c.c. | |
1360 | ||
1361 | * config/v850/v850-c.c: New file: Contains v850 specific | |
1362 | pragma parsing functions. | |
1363 | ||
aac69a49 NC |
1364 | 2000-11-24 Nick Clifton <nickc@redhat.com> |
1365 | ||
1366 | * config.gcc (extra_objs): Remove duplicate description. | |
1367 | (c_target_objs): New variable. Contains target specific | |
1368 | object files for the gcc C compiler only. | |
1369 | (cxx_target_objs): New variable. Contains target specific | |
1370 | object files for the gxx C++ compiler only. | |
1371 | ||
1372 | * configure.in (c_target_objs): Substitute in the makefile. | |
1373 | (cxx_target_objs): Substitute in the makefile. | |
1374 | * configure: Regenerate. | |
1375 | ||
1376 | * Makefile.in (C_TARGET_OBJS): Define and initialise from | |
1377 | c_target_objs. | |
1378 | (CXX_TARGET_OBJS): Define and initialise from | |
1379 | cxx_target_objs. | |
1380 | (C_AND_OBJC_OBJS): Include C_TARGET_OBJS. | |
1381 | ||
1382 | * cp/Make-lang.in (CXX_C_OBJS): Include CXX_TARGET_OBJS). | |
1383 | ||
1384 | * tm.texi (REGISTER_TARGET_PRAGMAS): Add paragraph explaining | |
1385 | about how the use of the 'c_lex' function requires the use of | |
1386 | the target specific, language specific object files feature of | |
1387 | the configuration mechanism. | |
1388 | ||
7257bbc6 RK |
1389 | Fri Nov 24 18:50:58 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
1390 | ||
1391 | * gcc.c (process_command): Use F_OK, not R_OK. | |
1392 | ||
c3ff75c4 AK |
1393 | 2000-11-24 Arno J. Klaassen <arno@heho.snv.jussieu.fr> |
1394 | ||
1395 | * flow.c (print_rtl_and_abort): Remove ANSIism. | |
1396 | ||
104ee20b AO |
1397 | Fri Nov 24 19:54:36 2000 Alexandre Oliva <aoliva@redhat.com> |
1398 | ||
1399 | * config/sh/sh.h (GENERAL_REGISTER_P, | |
1400 | GENERAL_OR_AP_REGISTER_P, FP_REGISTER_P, XD_REGISTER_P, | |
1401 | FP_OR_XD_REGISTER_P, FP_ANY_REGISTER_P): New macros. Use them | |
1402 | all over. | |
1403 | (SPECIAL_REG): Renamed to SPECIAL_REGISTER_P. | |
1404 | * config/sh/sh.c: Use new macros. | |
1405 | * config/sh/sh.md: Likewise. | |
1406 | ||
5d00b10a AO |
1407 | Fri Nov 24 19:46:16 2000 Alexandre Oliva <aoliva@redhat.com> |
1408 | ||
1409 | * config/sh/sh.md: Clobber MACH_REG and MACL_REG in SImode, | |
1410 | instead of just MACH_REG in DImode. Always refer to FPSCR_REG | |
1411 | in PSImode. | |
1412 | ||
33f77355 DC |
1413 | Fri Nov 24 22:37:41 2000 Denis Chertykov <denisc@overta.ru> |
1414 | ||
1415 | * config/avr/avr.c (out_tsthi,out_tstsi): Test simplification bug | |
1416 | fixed. | |
1417 | (machine_dependent_reorg): Wrong optimization based on | |
1418 | NOTICE_UPDATE_CC removed. | |
1419 | ||
692dc9c6 R |
1420 | Fri Nov 24 19:48:09 2000 J"orn Rennecke <amylaar@redhat.com> |
1421 | ||
1422 | * jump.c (delete_computation): Re-instate deletion of feeding insn. | |
1423 | (delete_insn): Look for REG_LABEL notes. | |
1424 | (redirect_tablejump): Delete feeding insns. | |
1425 | ||
c3410241 BS |
1426 | 2000-11-24 Bernd Schmidt <bernds@redhat.co.uk> |
1427 | ||
90d10fb9 BS |
1428 | * config/i386/i386.md (call_pop_0, call_pop_1, call_value_pop_0, |
1429 | call_value_pop_1): Make sure operand numbers are contiguous. | |
1430 | ||
7cf5c9e1 BS |
1431 | * fold-const.c (fold_range_test): Avoid crash if LHS or RHS is null. |
1432 | ||
ff6534ad BS |
1433 | * reload1.c (conflicts_with_override): New function. |
1434 | (emit_input_reload_insns): Use it to tighten test for validity | |
1435 | of substituting into output of previous insn. | |
1436 | ||
176f9a7b BS |
1437 | * haifa-sched.c (struct ready_list): New. |
1438 | (ready_lastpos, ready_add, ready_remove_first, ready_sort): New static | |
1439 | functions. | |
1440 | (schedule_insn): Replace args READY and N_READY with a pointer to a | |
1441 | ready_list; return void. Use the new functions to access the ready | |
1442 | list. All callers changed. | |
1443 | (queue_to_ready, debug_ready_list): Likewise. | |
1444 | (schedule_block): Initialize a ready_list structure. Use new | |
1445 | functions to access it. | |
1446 | (max_priority): Remove unused variable. | |
1447 | (schedule_insn): Don't set it. | |
1448 | ||
52a84e42 BS |
1449 | * c-common.c (verify_tree): Don't recurse into CONSTRUCTORs. |
1450 | ||
c3410241 BS |
1451 | * combine.c (cant_combine_insn_p): New function. |
1452 | (try_combine): Use it. | |
1453 | ||
235cfbc4 BS |
1454 | * Makefile.in (c-common.o): Depend on $(OBSTACK_H). |
1455 | * c-common.c (c-obstack.c): Include "obstack.h". | |
1456 | (struct reverse_tree): Delete. | |
1457 | (reverse_list, reverse_max_depth): Delete. | |
1458 | (build_reverse_tree, common_ancestor, modify_ok): Delete functions. | |
1459 | (struct tlist, struct tlist_cache): New. | |
1460 | (tlist_obstack, tlist_firstobj, warned_ids, save_expr_cache): New. | |
1461 | (add_tlist, merge_tlist, verify_tree, warning_candidate_p, | |
1462 | warn_for_collisions, warn_for_collisions_1, new_tlist): New | |
1463 | static functions. | |
1464 | (verify_sequence_points): Rewritten. | |
1465 | * fold-const.c (fold): Don't lose possibly important sequence | |
1466 | points when removing one arm of TRUTH_ORIF_EXPRs or TRUTH_ANDIF_EXPRs. | |
1467 | ||
58ecb5e2 RS |
1468 | 2000-11-24 Richard Sandiford <rsandifo@redhat.com> |
1469 | ||
1470 | * gcc/cse.c (cse_insn): Removed conversion of REG_EQUIV to REG_EQUAL | |
1471 | when reversing a register-to-register copy. Reversal now disabled | |
1472 | when the previous instruction has a REG_EQUIV. | |
1473 | ||
2f401cc8 NS |
1474 | 2000-11-24 Nathan Sidwell <nathan@codesourcery.com> |
1475 | ||
1476 | * c-parse.in (unary_expr): Move VA_ARG from here ... | |
1477 | (primary): ... to here. | |
1478 | ||
963a2a84 GS |
1479 | 2000-11-23 Graham Stott <grahams@redhat.com> |
1480 | ||
1481 | * expr.c (store_constructor): If a field is non addressable and | |
1482 | the target is a MEM use MEM_ALIAS_SET otherwise use get_alias_set. | |
1483 | ||
f9b697bf BS |
1484 | 2000-11-23 Bernd Schmidt <bernds@redhat.co.uk> |
1485 | ||
1486 | * flow.c (print_rtl_and_abort): New function. | |
1487 | (verify_wide_reg, verify_local_live_at_start): Try to dump more | |
1488 | information before aborting. | |
1489 | ||
69295d6d AO |
1490 | 2000-11-23 Alexandre Oliva <aoliva@redhat.com> |
1491 | ||
1492 | * emit-rtl.c (gen_lowpart_common): Use word 0 if register mode | |
1493 | is narrower than requested mode. | |
1494 | (gen_highpart): Abort if register mode is narrower than | |
1495 | requested mode. | |
1496 | ||
99a9c946 GS |
1497 | 2000-11-23 Graham Stott <grahams@redhat.com> |
1498 | ||
1499 | * cse.c (cse_insn): Initialise all regcost variables. | |
1500 | Fix a typo add missing '='. | |
1501 | Only compare costs if there is a replacement insn. | |
1502 | ||
422be3c3 AO |
1503 | Thu Nov 23 04:33:33 2000 Alexandre Oliva <aoliva@redhat.com> |
1504 | ||
1505 | * final.c (output_addr_const) [LABEL_REF]: Simplify. | |
1506 | [MINUS]: Enclose non-CONST_INTs in parentheses. | |
1507 | [default]: Try OUTPUT_ADDR_CONST_EXTRA. | |
1508 | * tm.texi (OUTPUT_ADDR_CONST_EXTRA): Document it. | |
1509 | * varasm.c (decode_rtx_const) [CONST]: If it's not something | |
1510 | PLUS or MINUS a CONST_INT, use the whole CONST with offset 0 | |
1511 | instead of abort()ing. | |
1512 | * sh.c (output_pic_addr_const): Removed. Fixed all callers. | |
1513 | * sh.h (OUTPUT_ADDR_CONST_EXTRA): New. Handle the UNSPECs | |
1514 | formerly handled in output_pic_addr_const. | |
1515 | * sh.md (sym_label2reg, symPLT_label2reg): Enclose UNSPEC | |
1516 | operands of MINUS in CONSTs so that decode_rtx_const() will | |
1517 | accept them. | |
1518 | ||
43c05634 AO |
1519 | Thu Nov 23 04:10:30 2000 Alexandre Oliva <aoliva@redhat.com> |
1520 | ||
1521 | * config/sh/sh.md (mova_const): New pattern. | |
1522 | (GOTaddr2picreg): Use it. | |
1523 | * config/sh/sh.c (broken_move): Match it. | |
1524 | (mova_p): Don't match it. | |
1525 | (machine_dependent_reorg): Adjust it. | |
1526 | ||
4773afa4 AO |
1527 | Thu Nov 23 02:09:09 2000 Alexandre Oliva <aoliva@redhat.com> |
1528 | ||
1529 | * config/sh/sh.h (FIRST_GENERAL_REG, LAST_GENERAL_REG): New. | |
1530 | Moved most register-number #defines... | |
1531 | * config/sh/sh.md (define_constants): ... here. Use macros to | |
1532 | refer to registers and unspecs. | |
1533 | * config/sh/sh.c: Likewise. | |
1534 | ||
9196ece5 R |
1535 | Thu Nov 23 01:01:32 2000 J"orn Rennecke <amylaar@redhat.com> |
1536 | ||
1537 | * Makefile.in (HOST_CFLAGS): Add -DGENERATOR_FILE. | |
1538 | (rtl.o, print-rtl.o, bitmap.o, obstack.o): Build with -DGENERATOR_FILE. | |
1539 | (alloca.o, vfprintf.o, ggc-none.o, errors.o): Likewise. | |
1540 | (splay-tree.o, hash.o): Likewise. | |
1541 | GCONFIG_H: New. | |
1542 | (rtl.o, print-rtl.o): Depend on $(GCONFIG_H) instead of $(CONFIG_H). | |
1543 | (bitmap.o, obstack.o, vfprintf.o, ggc-none.o, errors.o): Likewise. | |
1544 | (hashtab.o): Likewise. | |
1545 | (gcov.o): Depend on $(CONFIG_H). | |
1546 | * configure.in: #include insn-codes.h in tm.h. | |
1547 | ||
48a08b9c NC |
1548 | 2000-11-22 Nick Clifton <nickc@redhat.com> |
1549 | ||
57f56af4 NC |
1550 | * config/arm/arm.c (arm_encode_call_attribute): Make 'newstr' a |
1551 | const char * to avoid a compile time warning. | |
1552 | ||
48a08b9c NC |
1553 | * config/arm/arm.md (define_constants): Define symbolic names for |
1554 | the link register, last integer register and the fake CC register. | |
1555 | Update patterns to use these symbolic names. | |
1556 | ||
4a5b68a2 NB |
1557 | 2000-11-22 Neil Booth <neilb@earthling.net> |
1558 | ||
1559 | * cpplex.c (trigraph_ok): Ensure we don't warn twice. | |
1560 | * cpplib.h (struct cpp_buffer): New member last_Wtrigraphs. | |
1561 | ||
a165f034 RH |
1562 | 2000-11-22 Richard Henderson <rth@redhat.com> |
1563 | ||
1564 | * haifa-sched.c (sched_analyze_1): Don't special-case calls | |
1565 | for clobbering registers. | |
1566 | (sched_analyze_2): Likewise. | |
1567 | (sched_analyze): Zap reg_last_uses and reg_last_sets after calls. | |
1568 | ||
10ebf5fe | 1569 | 2000-11-22 Chris Demetriou <cgd@sibyte.com> |
a165f034 | 1570 | Neil Booth <neilb@earthling.net> |
10ebf5fe | 1571 | |
a165f034 RH |
1572 | * gcc.c (validate_switches): Validate multiple switches named |
1573 | in '|' (or) expressions in specs. | |
1574 | (handle_braces): If more than 1 alternative in a '|' spec | |
1575 | matches, call do_spec1 just once. | |
10ebf5fe | 1576 | |
fb0b2546 MM |
1577 | 2000-11-22 Michael Meissner <meissner@redhat.com> |
1578 | ||
1579 | * d30v.h (TARGET_SWITCHES): Add documentation strings. | |
1580 | (TARGET_OPTIONS): Ditto. | |
1581 | (OPTIMIZATION_OPTIONS): Temporarily turn off -frename-registers if | |
1582 | -O3. | |
1583 | ||
67d6f2fc JL |
1584 | Wed Nov 22 06:40:56 2000 Jeffrey A Law (law@cygnus.com) |
1585 | ||
1586 | * pa.c (hppa_encode_label): Account for addition of encoding | |
1587 | character when allocating persistent space for the new label | |
1588 | name. | |
1589 | ||
d1209685 ZW |
1590 | 2000-11-22 Zack Weinberg <zack@wolery.stanford.edu> |
1591 | ||
1592 | * Makefile.in, config.gcc, configure.in: Expunge remaining | |
1593 | traces of facility for running MD files through C preprocessor. | |
1594 | ||
c01a508e JM |
1595 | 2000-11-22 Joseph S. Myers <jsm28@cam.ac.uk> |
1596 | ||
1597 | * gcov.texi: Add magic comments for texi2pod.pl. | |
1598 | * Makefile.in: Add rules to generate and install gcov.1. | |
1599 | * gcov.1: New (generated) file. | |
1600 | ||
a125d855 RH |
1601 | 2000-11-21 Richard Henderson <rth@redhat.com> |
1602 | ||
1603 | * regrename.c (scan_rtx_reg): Terminate the chain rather than | |
1604 | abort on mark_read with NO_REGS. | |
1605 | ||
ed311407 MS |
1606 | 2000-11-21 Mike Stump <mrs@wrs.com> |
1607 | ||
1608 | * fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow | |
1609 | compilation with older compilers, such as /bin/cc on SunOS. | |
1610 | * fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto. | |
1611 | ||
cac16ef9 RH |
1612 | 2000-11-21 Richard Henderson <rth@redhat.com> |
1613 | ||
1614 | * varasm.c (record_constant): Pad the constructed | |
1615 | constant_descriptor appropriately. | |
1616 | ||
c25c12b8 R |
1617 | Wed Nov 22 00:52:55 2000 J"orn Rennecke <amylaar@redhat.com> |
1618 | ||
1619 | * rtl.h (traverse_md_constants): Declare. | |
1620 | (struct md_constant): Define. | |
1621 | * Makefile.in (HOST_RTL): Add hashtab.o . | |
1622 | (OBJS): Add hashtab.o . | |
1623 | (hashtab.o): New rule. | |
1624 | (rtl.o): Depends on HASHTAB_H. | |
1625 | * rtl.c (hashtab.h): #include. | |
1626 | (md_constants): New static variable. | |
1627 | (def_hash, def_name_eq_p, read_constants): New static functions. | |
1628 | (traverse_md_constants): New function. | |
1629 | (read_name): Do constant expansion. | |
1630 | (read_rtx): Recognize define_constants. | |
1631 | * gencodes.c (print_md_constant): New function. | |
1632 | (main): Emit #defines for all constant definitions encountered. | |
1633 | * md.texi (Constant Definitions): New node. | |
1634 | * gensupport.c (xcalloc): New function. | |
1635 | ||
f940c352 RH |
1636 | 2000-11-21 Richard Henderson <rth@redhat.com> |
1637 | ||
1638 | * config/alpha/alpha.c (alpha_split_tfmode_frobsign): New. | |
1639 | * config/alpha/alpha-protos.h: Declare it. | |
1640 | * config/alpha/alpha.md (abstf_internal): Use it. | |
1641 | (negtf_internal): Likewise. | |
1642 | (andnotdi3): Unstar the name. | |
1643 | (movtf_internal): Add o/G alternative. | |
1644 | ||
dfc55970 ZW |
1645 | 2000-11-21 Zack Weinberg <zack@wolery.stanford.edu> |
1646 | ||
1647 | * stringpool.c (stringpool_statistics): Also report number and | |
1648 | percentage of entries which are identifiers. | |
1649 | ||
d1cc928a DN |
1650 | 2000-11-21 Diego Novillo <dnovillo@redhat.com> |
1651 | ||
1652 | * gcse.c (hoist_expr_reaches_here_p): Do not mark expr_bb as | |
1653 | visited before visiting it. | |
1654 | ||
70f24e49 NC |
1655 | 2000-11-21 Nick Clifton <nickc@redhat.com> |
1656 | ||
1657 | * config/arm/arm.h: Accept TARGET_CPU_arm9tdmi, | |
1658 | TARGET_CPU_strongarm110 and TARGET_SPU_strongarm1100. | |
1659 | ||
1660 | * config.gcc: Accept --with-cpu=arm9 and --with-cpu=arm9tdmi. | |
1661 | ||
3fe30ff6 RH |
1662 | 2000-11-21 Richard Henderson <rth@redhat.com> |
1663 | ||
1664 | * c-common.c (c_unsafe_for_reeval): New function. | |
1665 | (add_c_tree_codes): Register it. | |
1666 | * c-common.h: Declare it. | |
1667 | * tree.c (lang_unsafe_for_reeval): New hook. | |
1668 | (unsafe_for_reeval): Call it. | |
1669 | * tree.h: Declare it. | |
1670 | ||
3adbce3d RH |
1671 | 2000-11-21 Richard Henderson <rth@redhat.com> |
1672 | ||
1673 | * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT | |
1674 | references as well. | |
1675 | ||
0736a307 NB |
1676 | 2000-11-21 Neil Booth <neilb@earthling.net> |
1677 | ||
a165f034 | 1678 | * do_includes: Revert to using cpp_read_file. |
0736a307 | 1679 | |
52e12ad0 BS |
1680 | 2000-11-21 Bernd Schmidt <bernds@redhat.co.uk> |
1681 | ||
847dde95 BS |
1682 | * loop.c (consec_sets_giv): If the reg we're examining is anything |
1683 | but UNKNOWN_INDUCT, do nothing. | |
1684 | Reset the reg's type to UNKNOWN_INDUCT before returning. | |
1685 | ||
52e12ad0 BS |
1686 | Mostly from Vladimir Makarov (vmakarov@redhat.com) |
1687 | * ia64.md (attr itanium_class): Define insn types as described in | |
1688 | Itanium docs. | |
1689 | (all insn patterns): Use itanium_class, not type attributes. | |
1690 | Occasionally split alternatives as necessary. | |
1691 | (attr type): Compute from new attr itanium_class. | |
1692 | ||
b3e2d1eb KG |
1693 | 2000-11-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1694 | ||
1695 | * tradcpp.c (output_line_command): Mark system headers as such in | |
1696 | `line' commands. | |
1697 | ||
0faf814f JJ |
1698 | 2000-11-21 Jakub Jelinek <jakub@redhat.com> |
1699 | ||
1700 | * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Sparc has .file/.loc | |
1701 | support in as as well. | |
1702 | * configure: Regenerate. | |
1703 | ||
3aac38d7 RH |
1704 | 2000-11-20 Richard Henderson <rth@redhat.com> |
1705 | ||
1706 | * c-lex.c (orig_filename): New variable. | |
1707 | (init_c_lex): Set it. Move call to cpp_start_read ... | |
1708 | (yyparse): ... here. New function. | |
1709 | * c-parse.in (yyparse_1): Rename the parser entry point. | |
1710 | * c-tree.h: Declare it. | |
1711 | ||
6b16805e JJ |
1712 | 2000-11-21 Jakub Jelinek <jakub@redhat.com> |
1713 | ||
1714 | * expr.c (do_compare_and_jump): If op0 was replaced by promoted | |
1715 | integer constant, use type of op1 for comparison. | |
1716 | ||
18922061 SS |
1717 | 2000-11-20 Stan Shebs <shebs@apple.com> |
1718 | ||
1719 | * config/rs6000/xm-darwin.h: New file, Darwin host definitions. | |
1720 | * config/rs6000/x-darwin: New file, Darwin host fragment. | |
1721 | * config.gcc (powerpc-*-darwin*): New host. | |
1722 | * system.h (HAVE_DESIGNATED_INITIALIZERS): Allow this to be | |
1723 | overridden by a config file. | |
1724 | ||
d63eefbf NB |
1725 | 2000-11-20 Neil Booth <neilb@earthling.net> |
1726 | ||
1727 | * cppmacro.c (paste_tokens): Rename from paste_payloads. | |
1728 | Change token type after pasting spellings. | |
1729 | (paste_all_tokens): Use it. | |
1730 | * gcc.dg/cpp/paste2.c: Update test. | |
1731 | * objc/execute/paste.m: New test. | |
1732 | ||
21bc13c9 RH |
1733 | 2000-11-20 Richard Henderson <rth@redhat.com> |
1734 | ||
1735 | * dwarf.h (FMT_CODE): Adjust argument order; fix mapping to | |
1736 | dwarf_subscr_data_formats bits. | |
1737 | * dwarfout.c (simple_type_size_in_bits): Handle a type with | |
1738 | no computed size as size zero. | |
1739 | (field_byte_offset): Likewise. | |
1740 | (subscript_data_attribute): Handle a range with no upper bound. | |
1741 | ||
250333d0 KG |
1742 | 2000-11-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1743 | ||
1744 | * gansidecl.h (const): Check __STDC__ before undef'ing `const'. | |
1745 | ||
1d7ff272 JM |
1746 | 2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk> |
1747 | ||
1748 | * c-typeck.c (build_conditional_expr): When merging type | |
1749 | qualifiers for conditional expressions between a pointer and a | |
1750 | pointer to a void type, merge the qualifiers on the target types | |
1751 | rather than the pointer type. Remove obsolete conditioned out | |
1752 | code. | |
1753 | ||
dd07b884 NB |
1754 | 2000-11-20 Neil Booth <neilb@earthling.net> |
1755 | ||
1756 | * c-lang.c (lang_init_options): Update call to | |
1757 | cpp_reader_init. | |
1758 | * cppmain.c (main): Similarly. | |
1759 | * fix-header.c (read_scan_file): Similarly. | |
1760 | * cp/lex.c (lang_init_options): Similarly. | |
1761 | * objc/objc-act.c (lang_init_options): Similarly. | |
1762 | * cppexp.c (parse_number): Only warn for unextended C89. | |
1763 | * cppinit.c (set_lang): New function. | |
1764 | (cpp_reader_init): Take a LANG argument and pass it to set_lang. | |
1765 | (COMMAND_LINE_OPTIONS): New option std=c++98. | |
1766 | (cpp_handle_option): Use set_lang. | |
1767 | * cpplex.c (_cpp_lex_token): Warn pedantically if not C99. | |
1768 | * cppib.h (enum_c_lang): New enumeration. Update comments. | |
1769 | ||
8d50dfb8 WC |
1770 | 2000-11-20 Will Cohen <wcohen@redhat.com> |
1771 | ||
1772 | * calls.c (expand_call): Clear target only when target is in | |
1773 | hard register and current_function_check_memory_usage is set. | |
1774 | ||
bd675859 BS |
1775 | 2000-11-20 Bernd Schmidt <bernds@redhat.co.uk> |
1776 | ||
1777 | * toplev.c (rest_of_compilation): Run optimize_mode_switching even | |
1778 | if not optimizing. | |
1779 | * sh.c (emit_sf_insn, emit_df_insn): Just call emit_insn. | |
1780 | ||
3df18884 RH |
1781 | 2000-11-19 Richard Henderson <rth@redhat.com> |
1782 | ||
52403abb RH |
1783 | * crtstuff.c (force_to_data): Use array size 1 not 0. |
1784 | ||
3df18884 RH |
1785 | * dwarf2out.c (simple_type_size_in_bits): Handle a type with |
1786 | no computed size as size zero. | |
1787 | (field_byte_offset): Likewise. | |
1788 | ||
cfd1c7ea JM |
1789 | 2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk> |
1790 | ||
1791 | * config.gcc: Fix another typo. | |
1792 | ||
a25f1211 RH |
1793 | 2000-11-19 Richard Henderson <rth@redhat.com> |
1794 | ||
1795 | * c-decl.c (grokdeclarator): Support flexible array members. | |
1796 | Use open-ended ranges for these and zero-length arrays. | |
1797 | * c-typeck.c (push_init_level): Validate the context of | |
1798 | initialization of a zero-length array. | |
1799 | * tree.c (int_fits_type_p): Be prepared for missing bounds. | |
1800 | * varasm.c (array_size_for_constructor): New. | |
1801 | (output_constructor): Use it for arrays of unspecified length. | |
1802 | * extend.texi (Zero Length): Mention C99 flexible array members. | |
1803 | Document initialization in a top-level struct as valid. | |
1804 | ||
65fa2185 JM |
1805 | 2000-11-19 Joseph S. Myers <jsm28@cam.ac.uk> |
1806 | ||
9e8fc4b8 JM |
1807 | * config.gcc, invoke.texi: Fix errors in spelling of "deprecated". |
1808 | ||
65fa2185 JM |
1809 | * alias.c (mems_in_disjoint_alias_sets_p): Do use alias sets in |
1810 | stdarg and varargs functions. | |
1811 | ||
2e59adac ZW |
1812 | 2000-11-19 Zack Weinberg <zack@wolery.stanford.edu> |
1813 | ||
1814 | * gcc.c (process_command): Define 'j' variable when | |
1815 | MODIFY_TARGET_NAME is defined. | |
1816 | ||
856442b6 RH |
1817 | 2000-11-19 Richard Henderson <rth@redhat.com> |
1818 | ||
1819 | * stor-layout.c (variable_size): Only put SAVE_EXPRs on pending_sizes. | |
1820 | ||
88c1e412 FS |
1821 | 2000-11-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
1822 | ||
1823 | * rs6000/rs6000.c (rs6000_encode_section_info): Fix string length | |
1824 | calculation and allocation. | |
1825 | ||
ce1cc601 KG |
1826 | 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1827 | ||
1828 | * builtins.c (c_getstr): Constify variable. | |
1829 | * gmon-sol2.c (_mcleanup): Comment out #endif labels. | |
1830 | * conflict.c (const_conflict_graph_arc): New typedef. | |
1831 | (arc_hash, arc_eq): Avoid needlessly casting away const-ness. | |
1832 | * cppmacro.c (builtin_macro): Likewise. | |
1833 | * dwarf2out.c (output_comp_unit): Constify variable. | |
1834 | * fix-header.c (v_fatal): Add ATTRIBUTE_PRINTF. | |
1835 | * protoize.c (IS_SAME_PATH_CHAR): Use TOUPPER, not toupper. | |
1836 | * ssa.c (ssa_rename_from_hash_function): Avoid needlessly casting | |
1837 | away const-ness. | |
1838 | * tradcpp.c (rescan, do_line, macroexpand, macarg): Use | |
1839 | ISALNUM/ISDIGIT/ISPRINT, not isalnum/isdigit/isprint. | |
1840 | * varasm.c (const_str_htab_hash, const_str_htab_eq, | |
1841 | compare_constant_1, record_constant_1): Constify. | |
1842 | ||
967e627a RH |
1843 | 2000-11-18 Richard Henderson <rth@redhat.com> |
1844 | ||
1845 | * c-decl.c (grokdeclarator): Special case the creation of an | |
1846 | index for a zero-length array. | |
1847 | * tree.c (build_index_type): Revert Oct 20 change. | |
1848 | ||
e9284adf MM |
1849 | 2000-11-18 Marek Michalkiewicz <marekm@linux.org.pl> |
1850 | ||
1851 | * config/avr/avr-protos.h (avr_output_addr_vec_elt): Prototype. | |
1852 | * config/avr/avr.c (jump_tables_size): New variable. | |
1853 | (function_prologue): Initialize it as 0. | |
1854 | (function_epilogue): Add it to function_size. | |
1855 | (avr_output_addr_vec_elt): New function. Count words in jump | |
1856 | tables in jump_tables_size. Move code ... | |
1857 | * config/avr/avr.h (ASM_OUTPUT_ADDR_VEC_ELT): ... from here. | |
1858 | Call avr_output_addr_vec_elt instead. | |
1859 | * config/avr/avr.md (tablejump): Remove disabled define_expand. | |
1860 | ||
67c72a63 MM |
1861 | 2000-11-18 Mark Mitchell <mark@codesourcery.com> |
1862 | ||
1863 | * configure.in: Make --enable-new-gxx-abi the default. | |
1864 | * configure: Likewise. | |
1865 | ||
0a8ad417 KG |
1866 | 2000-11-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1867 | ||
1868 | * Makefile.in (tradcpp.o, tradcif.o): Depend on tradcpp.h. | |
1869 | ||
1870 | * tradcif.y: Include tradcpp.h. Constify. Make functions static. | |
1871 | Move extern function declarations to tradcpp.h. | |
1872 | ||
1873 | * tradcpp.c: Likewise. | |
1874 | ||
1875 | * tradcpp.h: New file. | |
1876 | ||
77c4d6c0 JM |
1877 | 2000-11-18 Joseph S. Myers <jsm28@cam.ac.uk> |
1878 | ||
1879 | * c-decl.c (check_for_loop_decls): New function. | |
1880 | * c-parse.in (for_init_stmt): New. | |
1881 | (select_or_iter_stmt): Use for_init_stmt. | |
1882 | * c-tree.h (check_for_loop_decls): New declaration. | |
1883 | ||
4a58aab6 NB |
1884 | 2000-11-18 Neil Booth <neilb@earthling.net> |
1885 | ||
1886 | * cppinit.c: Update comments. | |
1887 | (cpp_reader_init): Make -imacro and -include use the standard | |
1888 | #include "" search path. | |
1889 | (do_includes): New function. | |
1890 | ||
c3e2d242 BE |
1891 | 2000-11-18 Ben Elliston <bje@redhat.com> |
1892 | ||
1893 | * config/sh/crt1.asm (start_l): Move PC-relative move instruction | |
1894 | out of a branch delay slot. | |
1895 | ||
48adb36e RH |
1896 | 2000-11-17 Richard Henderson <rth@redhat.com> |
1897 | ||
1898 | * config/alpha/elf.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG. | |
1899 | (ASM_SPEC): Disable and enable .mdebug based on -gstabs. | |
1900 | (ASM_FILE_START): Only write out ecoff .file directive if | |
1901 | emitting mdebug debugging. | |
1902 | ||
9d147085 RH |
1903 | 2000-11-17 Richard Henderson <rth@redhat.com> |
1904 | ||
1905 | * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): New. Detect | |
1906 | whether as accepts .file/.loc and produces dwarf2 line info. | |
1907 | * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Default on if | |
1908 | the assembler supports it. | |
1909 | * config.in, configure: Regenerate. | |
1910 | ||
5b87e928 RH |
1911 | 2000-11-17 Richard Henderson <rth@redhat.com> |
1912 | ||
1913 | * fixinc/mkfixinc.sh: Don't disable fixincludes for any linux*. | |
1914 | ||
95c8e04b JW |
1915 | 2000-11-17 Jim Wilson <wilson@redhat.com> |
1916 | ||
1917 | * config/ia64/ia64.c (emit_insn_group_barriers, case CALL_INSN): | |
1918 | Don't clear need_barrier is next_insn is a CALL_INSN, or has | |
1919 | instruction type B or UNKNOWN. | |
1920 | ||
14fbab6d NB |
1921 | 2000-11-17 Neil Booth <neilb@earthling.net> |
1922 | ||
a25f1211 | 1923 | * cpperror.c (print_file_and_line): Don't display line number if 0. |
14fbab6d | 1924 | |
a8a05998 ZW |
1925 | 2000-11-17 Zack Weinberg <zack@wolery.stanford.edu> |
1926 | ||
1927 | * ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add | |
1928 | digit_vector and digit_string. | |
1929 | * stringpool.c (digit_vector): New. | |
1930 | (ggc_alloc_string): Use digit_string. | |
1931 | ||
1932 | * stmt.c (digit_strings): Delete. | |
1933 | (init_stmt): Do not initialize digit_strings. | |
1934 | (expand_asm_operands): Use ggc.h's digit_string macro. | |
1935 | * toplev.c (mark_file_stack): Delete. | |
1936 | (compile_file): Don't call init_tree_codes. | |
1937 | (main): No need to make the file stack a GC root. | |
1938 | * tree.c (init_tree_codes): Delete. | |
1939 | * tree.h (init_tree_codes): Delete. | |
1940 | ||
1941 | * c-lex.c: Don't include ggc.h. | |
1942 | (mark_splay_tree_node, mark_splay_tree): Delete. | |
1943 | (init_c_lex): No need to ggc_strdup string constant. Don't add | |
1944 | file_info_tree to GGC roots. | |
1945 | (cb_enter_file, cb_rename_file): No need to ggc_strdup | |
1946 | ip->nominal_fname. | |
1947 | ||
1948 | * Makefile.in (c-lex.o): No longer depends on $(GGC_H). | |
1949 | ||
1950 | * dbxout.c (dbxout_init), | |
1951 | dwarf2out.c (dwarf2out_line), | |
1952 | ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees), | |
1953 | varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once), | |
1954 | xcoffout.c (xcoffout_source_file), | |
1955 | i386.c (load_pic_register): | |
1956 | Delete call(s) to ggc_add_string_root and/or ggc_mark_string. | |
1957 | ||
1958 | * except.c (create_rethrow_ref), | |
1959 | profile.c (init_edge_profiler), | |
1960 | toplev.c (compile_file), | |
1961 | varasm.c (named_section, assemble_static_space, | |
1962 | assemble_trampoline_template, output_constant_def, force_const_mem), | |
1963 | i386.c (load_pic_register), | |
1964 | ia64.c (ia64_encode_section_info), | |
1965 | rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference, | |
1966 | rs6000_emit_prologue, rs6000_emit_epilogue), | |
1967 | rs6000.md (load_toc_aix_si, load_toc_aix_di): | |
1968 | Change ggc_alloc_string (var, -1) to ggc_strdup (var). | |
1969 | ||
1970 | * profile.c (output_func_start_profiler), | |
1971 | tree.c (make_node), | |
1972 | i386.c (load_pic_register): No need to ggc_strdup string constant. | |
1973 | ||
61ed06c3 HPN |
1974 | 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
1975 | ||
1976 | * Makefile.in (config.status): Depend on config.gcc. | |
1977 | * configure.in <for machine in $build $host $target>: Move | |
1978 | contents of loop into config.gcc, removing autoconf quoting. | |
1979 | Fix changequote bug for alpha*-*-vxworks*. | |
1980 | * configure: Regenerate. | |
1981 | * config.gcc: New. | |
1982 | ||
520a57c8 ZW |
1983 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> |
1984 | ||
1985 | * c-parse.in (if_prefix): Find the filename and line number at | |
1986 | $-2 and $-1 respectively. | |
1987 | * diagnostic.c (error_recursion): Add missing newline, use | |
1988 | fputs, translate string. | |
1989 | ||
1990 | 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> | |
1991 | ||
1992 | * stringpool.c: New file. | |
1993 | * ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete. | |
1994 | (ggc_alloc_string): Now in stringpool.o. | |
1995 | * ggc-page.c, ggc-simple.c: Do not define or allocate empty_string. | |
1996 | * ggc.h: Delete prototype of ggc_add_string_root. #define | |
1997 | ggc_add_string_root and ggc_mark_string to nothing. Prototype | |
1998 | init_stringpool and stringpool_statistics. | |
1999 | (ggc_alloc_string): Returns a const char *. | |
2000 | * tree.c (hash_table, do_identifier_warnings): Delete. | |
2001 | (init_obstacks): Don't initialize the identifier hash table. | |
2002 | (get_identifier, maybe_get_identifier, start_identifier_warnings, | |
2003 | set_identifier_size): Now in stringpool.c. | |
2004 | * tree.h (struct tree_string): Constify pointer field. | |
2005 | (approx_sqrt): Prototype. | |
2006 | ||
2007 | * Makefile.in (stringpool.o): Add rule, mention in OBJS. | |
2008 | ||
2009 | * toplev.c (approx_sqrt): New function. | |
2010 | (compile_file): Call stringpool_statistics if mem_report is on. | |
2011 | (main): Call init_stringpool. | |
2012 | ||
2013 | * builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c | |
2014 | (process_directive), c-typeck.c (constructor_asmspec, struct | |
2015 | initializer_stack, start_init), except.c (create_rethrow_ref), | |
2016 | stmt.c (digit_strings), toplev.c (decode_f_option), tree.c | |
2017 | (built_in_filename), varasm,c (in_named_name, | |
2018 | assemble_static_space, struct constant_descriptor, struct | |
2019 | deferred_string, struct pool_constant, force_const_mem), | |
2020 | i386.c (pic_label_name, global_offset_table_name), rs6000.c | |
2021 | (rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *. | |
2022 | ||
2023 | * c-common.c (combine_strings): Combine strings in scratch | |
2024 | buffer, then pass to build_string. | |
2025 | * optabs.c (init_libfuncs), profile.c (init_edge_profiler, | |
2026 | output_func_start_profiler), stmt.c (init_stmt), alpha.c | |
2027 | (alpha_need_linkage), arm.c (arm_encode_call_attribute), | |
2028 | i386.c (load_pic_register), ia64.c (ia64_encode_section_info), | |
2029 | rs6000.c (rs6000_encode_section_info): Create string in | |
2030 | scratch buffer, then pass to ggc_alloc_string. | |
2031 | ||
2032 | * stmt.c (expand_asm_operands): If we must adjust the | |
2033 | constraint strings, do so by creating a new one, not by | |
2034 | modifying the old one in place. Constify some char *s. | |
2035 | * config/pa/pa.c (hppa_encode_label): Drop unnecessary second | |
2036 | argument. Create string in scratch buffer, then pass to | |
2037 | ggc_alloc_string. | |
2038 | * config/pa/pa-protos.h: Update prototype. | |
2039 | * config/pa/elf.h, config/pa/pa.h, config/pa/som.h: | |
2040 | hppa_encode_label takes only one argument. | |
2041 | ||
dd3b81b4 KG |
2042 | 2000-11-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2043 | ||
2044 | * mcore.c (mcore_expand_prolog): Call xmalloc/xrealloc, not | |
2045 | malloc/realloc. | |
2046 | ||
2047 | * cpplib.c (glue_header_name): Likewise. | |
2048 | ||
2049 | * fixincl.c (run_compiles, start_fixer): Likewise. | |
2050 | ||
2051 | * fixlib.c (load_file_data): Likewise. | |
2052 | ||
2053 | * mkdeps.c (munge): Likewise. | |
2054 | ||
5074c1fe HPN |
2055 | 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
2056 | ||
2057 | * defaults.h [EH_FRAME_SECTION_ASM_OP] (EH_FRAME_SECTION): Remove | |
2058 | trailing ';'. Fix formatting. | |
2059 | ||
74fe26b2 JW |
2060 | 2000-11-16 Jim Wilson <wilson@redhat.com> |
2061 | ||
35d9f39d JW |
2062 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT, MASK_INLINE_DIV_THR): |
2063 | Shift masks left by one to avoid conflict. | |
2064 | ||
74fe26b2 JW |
2065 | * config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with |
2066 | DECL_EXTERNAL set. | |
2067 | ||
68dfd979 NC |
2068 | 2000-11-16 Nick Clifton <nickc@redhat.com> |
2069 | ||
2070 | * config/arm/arm.c (output_arm_prologue): Note nested functions. | |
2071 | (arm_expand_prologue): For nested functions preserve the | |
2072 | static chain register during stack frame creation. | |
2073 | ||
2074 | * config/arm/arm.h (STATIC_CHAIN_REGNUM): Change to 12. | |
2075 | (ARM_INITIAL_FRAME_ELIMINATION_OFFSET): For a nested function | |
2076 | with a stack frame there is a 4 byte gap between the arg | |
2077 | pointer and the hard frame pointer (used to preserve the | |
2078 | static chain register during stack frame creation). | |
2079 | ||
3ab9a08f DD |
2080 | 2000-11-16 DJ Delorie <dj@redhat.com> |
2081 | ||
2082 | * rtl.c (read_rtx): Provide suitable names for unnamed | |
2083 | define_insn and define_insn_and_split patterns, based on file | |
2084 | and line numbers. | |
2085 | ||
fe6c2db9 NB |
2086 | 2000-11-15 Neil Booth <neilb@earthling.net> |
2087 | ||
a8a05998 ZW |
2088 | * cpplib.c (start_directive, end_directive): New functions. |
2089 | (_cpp_handle_directive, run_directive): Use them. | |
2090 | (_cpp_handle_directive): Don't -Wtraditional on indented | |
2091 | null directives. | |
2092 | (_cpp_push_buffer): Don't re-clear was_skipping. | |
2093 | * cpplib.h (struct cpp_reader): New member la_saved. | |
2094 | * cppmacro.c (cpp_get_token): Don't interpret _Pragma in | |
2095 | directives. | |
fe6c2db9 | 2096 | |
a8a05998 ZW |
2097 | gcc.dg/cpp/_Pragma1.c: Update. |
2098 | gcc.dg/cpp/_Pragma2.c: New test. | |
fe6c2db9 | 2099 | |
62136084 MM |
2100 | 2000-11-15 Mark Mitchell <mark@codesourcery.com> |
2101 | ||
2102 | * toplev.c (wrapup_global_declarations): Don't write out | |
2103 | artificial static variables that aren't needed. | |
2104 | ||
099dde21 BS |
2105 | 2000-11-15 Bernd Schmidt <bernds@redhat.co.uk> |
2106 | ||
2107 | * ia64.c (struct group): New structure. | |
2108 | (last_group): New static array. | |
2109 | (group_idx): New static variable. | |
2110 | (emit_group_barrier_after, errata_find_address_regs, errata_emit_nops): | |
2111 | New static functions. | |
2112 | (emit_insn_group_barriers): Initialize and keep track of group_idx | |
2113 | and last_group. | |
2114 | Call errata_emit_nops if TARGET_B_STEP or TARGET_A_STEP. | |
2115 | Replace all calls to emit_insn_after that emit a group barrier to use | |
2116 | emit_group_barrier_after. | |
2117 | * ia64.h (MASK_B_STEP): New. | |
2118 | (other MASK_XXX macros): Renumbered. | |
2119 | (TARGET_B_STEP): New. | |
2120 | (TARGET_SWITCHES): Add -mb-step. | |
2121 | ||
4e7b85ed FF |
2122 | 2000-11-15 Fred Fish <fnf@be.com> |
2123 | ||
2124 | * fixinc/mkfixinc.sh (fixincludes): Add *-*-beos* to list of | |
2125 | machines for which fixincludes is not needed. | |
2126 | * config/i386/x-beos (STMP_FIXPROTO): Don't run fixproto. | |
2127 | ||
ee3400e8 JM |
2128 | 2000-11-15 Jason Merrill <jason@redhat.com> |
2129 | ||
2130 | * diagnostic.c (finish_abort): New fn. | |
2131 | (fancy_abort, error_recursion): Use it. | |
2132 | * toplev.c (crash_signal): Likewise. | |
2133 | * diagnostic.h: Declare it. | |
2134 | ||
12e1243e AH |
2135 | 2000-11-13 Andrew Haley <aph@redhat.com> |
2136 | ||
2137 | * tree.c (build_type_no_quals): New function. | |
2138 | * tree.h (build_type_no_quals): Declare. | |
2139 | * c-common.c (c_get_alias_set): When considering type | |
2140 | compatibility for pointer types, ignore cv-qualifiers anywhere in | |
2141 | a pointer chain. | |
2142 | ||
695e4773 GS |
2143 | 2000-11-15 Graham Stott <grahams@redhat.com> |
2144 | ||
2145 | * regrename.c (scan_rtx_rtx): Skip to the next chain on | |
2146 | encountering a terminated chain. | |
2147 | ||
5a7c1037 MM |
2148 | 2000-11-14 Mark Mitchell <mark@codesourcery.com> |
2149 | ||
2150 | * configure.in: Move check for V3 above check for C++ header-file | |
2151 | directory. | |
2152 | * configure: Regenerated. | |
a8a05998 | 2153 | |
568c5140 DD |
2154 | 2000-11-14 DJ Delorie <dj@redhat.com> |
2155 | ||
2156 | * config/v850/v850.c: Remove obstacks. | |
2157 | ||
1268b05f MM |
2158 | Tue Nov 14 21:54:31 2000 Marek Michalkiewicz <marekm@linux.org.pl> & Denis Chertykov <denisc@overta.ru> |
2159 | ||
2160 | * config/avr/avr.c (avr_case_values_threshold): New. | |
2161 | (avr_override_options): Set it depending on options, make it large | |
2162 | when not optimizing to work around "unable to generate reloads". | |
2163 | ||
2164 | * config/avr/avr.h (TARGET_SWITCHES): Add -mno-tablejump option. | |
2165 | (EXTRA_SECTION_FUNCTIONS): Make the .progmem.gcc_sw_table section | |
2166 | executable if not AVR_MEGA. Make sure jump tables are word-aligned. | |
2167 | (JUMP_TABLES_IN_TEXT_SECTION): Define as 0, not 1. | |
2168 | (ASM_OUTPUT_ADDR_VEC_ELT): Optimize, use "rjmp" if not AVR_MEGA. | |
2169 | (avr_case_values_threshold): Declare as extern int. | |
2170 | (CASE_VALUES_THRESHOLD): Define as avr_case_values_threshold. | |
2171 | ||
2172 | * config/avr/avr.md (tablejump): Removed. | |
2173 | (*tablejump_rjmp): New for jump tables made from "rjmp" instructions. | |
2174 | (*tablejump_lib, *tablejump_enh, *tablejump): Change to expect the | |
2175 | index in the table, not multiplied by 2. | |
2176 | (casesi): Change to match the above insns. Always enable. | |
2177 | ||
2178 | * config/avr/libgcc.S (__tablejump__): Rename to __tablejump2__. | |
2179 | Change to expect the word address of the table, multiply it by 2 | |
2180 | here and not in the caller. Change "adiw" to faster "inc". | |
2181 | ||
7f2f1a66 NB |
2182 | 2000-11-14 Neil Booth <neilb@earthling.net> |
2183 | ||
2184 | * cppexp.c (parse_defined): Call cpp_get_token not | |
2185 | _cpp_get_token. | |
2186 | (lex): Similarly. | |
2187 | * cpplex.c (cpp_output_line): Similarly. | |
2188 | * cpplib.c (glue_header_name, do_line, do_ident, | |
2189 | parse_answer, parse_assertion): Similarly. | |
2190 | (_cpp_handle_diretive): Don't save to lookaheads | |
2191 | when processing directives. | |
2192 | * cppmacro.c (parse_arg, expand_arg): Call cpp_get_token not | |
2193 | _cpp_get_token. | |
2194 | (funlike_invocation_p): Don't save to lookaheads | |
2195 | when pre-expanding arguments. | |
2196 | (_cpp_get_token): Delete. | |
2197 | (cpp_get_token): Merge contents of _cpp_get_token. | |
2198 | ||
f36d6244 JJ |
2199 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
2200 | ||
2201 | * builtins.c (expand_builtin_setjmp): Set | |
2202 | current_function_calls_setjmp. | |
2203 | (expand_builtin_longjmp): Set current_function_calls_longjmp. | |
2204 | ||
2205 | * config/sparc/sparc.md (builtin_setjmp_setup): New expand. | |
2206 | (do_builtin_setjmp_setup): New insn. | |
2207 | ||
3401c26b RK |
2208 | Tue Nov 14 12:34:56 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
2209 | ||
2210 | * tree.c (get_unwidened): Use host_integerp and tree_low_cst. | |
2211 | (int_fits_type_p): For variable bounds, call force_fit_type. | |
2212 | ||
bd7cf17e JJ |
2213 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
2214 | ||
2215 | * varasm.c (struct deferred_string): New structure. | |
2216 | (const_str_htab): New variable. | |
2217 | (STRHASH): New macro. | |
2218 | (mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash, | |
2219 | constr_str_htab_eq, const_str_htab_del): New functions. | |
2220 | (output_constant_def): Add DEFER argument, defer string | |
2221 | constants until mark_constant_pool time if requested. | |
2222 | (mark_constant_pool): Walk the insn chain even if const_str_htab is | |
2223 | not empty. | |
2224 | (mark_constants): If a SYMBOL_REF for deferred string is found, | |
2225 | output it and remove from hash table. | |
2226 | (output_addressed_constants): Set DEFER to 0 in call to | |
2227 | output_constant_def. | |
2228 | * rtl.h (STRING_POOL_ADDRESS_P): Define. | |
2229 | (output_constant_def): Adjust prototype. | |
2230 | * expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def. | |
2231 | ||
10e927ef CC |
2232 | 2000-11-14 Chandrakala Chavva <cchavva@redhat.com> |
2233 | ||
2234 | * optabs.c (expand_complex_ab):: Use overflow-trapping optabs for | |
2235 | signed types if flag_trapv. | |
2236 | ||
ef90743a ZW |
2237 | 2000-11-14 Zack Weinberg <zack@wolery.stanford.edu> |
2238 | ||
2239 | * tradcpp.c, tradcif.y: Update FSF mailing address, delete | |
2240 | reference to GPLv1. | |
2241 | ||
fe8ca71f JM |
2242 | 2000-11-14 Joseph S. Myers <jsm28@cam.ac.uk> |
2243 | ||
2244 | * c-common.h (CTI_C_SIZE_TYPE): Update comment. | |
2245 | ||
94b01be3 JJ |
2246 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
2247 | ||
2248 | * varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table | |
2249 | to array of pool_constnat pointers. | |
2250 | (struct pool_constant): Add next_sym and label members. | |
2251 | (struct pool_sym): Remove. | |
2252 | (init_varasm_status): Change pool_sym into pool_constant. | |
2253 | (mark_pool_constant): Mark pc->label string as well. | |
2254 | (mark_pool_sym_hash_table): Remove. | |
2255 | (mark_varasm_status): Remove it from caller as well. | |
2256 | (free_varasm_status): Don't free pool_sym structures. | |
2257 | (force_const_mem): Don't allocate pool_sym structure, instead | |
2258 | fill pool->label and chain it into rtx_sym hash table. | |
2259 | (find_pool_constant, mark_constant_pool): Use pool_constant instead | |
2260 | of pool_sym. | |
2261 | ||
716120a7 JJ |
2262 | 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
2263 | ||
2264 | * reload1.c (emit_input_reload_insns): Honour forcing of constants | |
2265 | into memory by PREFERRED_RELOAD_CLASS NO_REGS. | |
2266 | ||
f8032688 MM |
2267 | 2000-11-14 Michael Matz <matzmich@cs.tu-berlin.de> |
2268 | ||
2269 | * dominance.c: New file. | |
2270 | * Makefile.in (OBJS): Add dominance.o. | |
2271 | ||
2272 | * flow.c (compute_flow_dominators): Remove. | |
2273 | (compute_immediate_dominators): Remove. | |
2274 | (compute_immediate_postdominators): Remove. | |
2275 | * basic-block.h: Remove their prototypes. | |
2276 | (calculate_dominance_info): Add prototype. | |
2277 | ||
2278 | * dce.c (eliminate_dead_code): Change calls to above functions. | |
2279 | Don't compute dominators but only immediate dominators. | |
2280 | * flow.c (flow_loops_find): Change callers. | |
2281 | * gcse.c (compute_code_hoist_data): Likewise. | |
2282 | * haifa-sched.c (schedule_insns): Likewise. | |
2283 | * ifcvt.c (if_convert): Likewise. | |
2284 | * ssa.c (convert_to_ssa): Likewise, and only compute immediate | |
2285 | dominators. | |
2286 | ||
0caa3c8e RH |
2287 | 2000-11-14 Richard Henderson <rth@redhat.com> |
2288 | ||
6f122550 RH |
2289 | * stmt.c (warn_if_unused_value): Don't warn if the expression |
2290 | has side effects. | |
2291 | ||
0caa3c8e RH |
2292 | * c-typeck.c (c_sizeof): Fold result to c_size_type_node. |
2293 | (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise. | |
2294 | ||
a78cc542 FS |
2295 | 2000-11-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
2296 | ||
2297 | * loop.c (basic_induction_var): Revert accidental checkin. | |
2298 | ||
d9068c61 HPN |
2299 | 2000-11-13 Hans-Peter Nilsson <hp@axis.com> |
2300 | ||
2301 | * c-lex.c (cb_leave_file): Harmonize conditions and order of | |
2302 | statements to those of process_directive for (action == act_pop). | |
2303 | ||
2304 | * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS. | |
2305 | ||
2306 | * local-alloc.c (equiv_init_movable_p): References to CC0 are not | |
2307 | movable. | |
2308 | ||
ebf02523 JM |
2309 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2310 | ||
2311 | * c-parse.in (stmts_and_decls): Deprecate use of label at end of | |
2312 | compound statement. | |
2313 | ||
29b10746 NB |
2314 | 2000-11-13 Neil Booth <neilb@earthling.net> |
2315 | ||
ee3400e8 JM |
2316 | * cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF |
2317 | cases return without MI check. | |
2318 | * cpplib.c (do_diagnostic): Take boolean of whether to | |
2319 | print the directive name. | |
2320 | (do_error, do_warning): Update. | |
2321 | (do_pragma_dependency): Use it. | |
2322 | * cpplib.h (VARARGS_FIRST): Delete. | |
2323 | (struct cpp_token): Delete integer. | |
2324 | * cppmacro.c (enter_macro_context): Move disabled check | |
2325 | to _cpp_get_token. | |
2326 | (_cpp_get_token): Simplify into a single loop. | |
29b10746 | 2327 | |
8105825d RE |
2328 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
2329 | ||
2330 | * configure.in: Use 'test -f' not '[ -e'. | |
2331 | * configure: Regenerated. | |
2332 | ||
481a6b4a DD |
2333 | 2000-11-13 DJ Delorie <dj@redhat.com> |
2334 | ||
2335 | * config/mn10300/mn10300.md (store_movm): Note which registers are | |
2336 | really used or clobbered. | |
2337 | ||
b7438415 JM |
2338 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2339 | ||
2340 | * c-parse.in (ends_in_label): Remove from %union and %type. | |
2341 | (decls, stmts, lineno_stmt_or_labels, xstmts, | |
2342 | lineno_stmt_or_label, stmt_or_label): Remove. | |
2343 | (stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt, | |
2344 | lineno_stmt_decl_or_labels_ending_decl, | |
2345 | lineno_stmt_decl_or_labels_ending_label, | |
2346 | lineno_stmt_decl_or_labels_ending_error, | |
2347 | lineno_stmt_decl_or_labels, compstmt_contents_nonempty, | |
2348 | lineno_stmt, lineno_label): New. | |
2349 | (compstmt_nostart): Use compstmt_contents_nonempty. | |
2350 | ||
19552aa5 JM |
2351 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2352 | ||
2353 | * c-common.c (boolean_increment): New function. | |
2354 | * c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE, | |
2355 | CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE. | |
2356 | (c_bool_type_node, c_bool_true_node, c_bool_false_node): Define. | |
2357 | (boolean_increment): Declare. | |
2358 | * c-convert.c (convert): Allow for BOOLEAN_TYPE. | |
2359 | * c-decl.c (init_decl_processing): Create boolean nodes. | |
2360 | (finish_struct): Allow for _Bool bitfields. | |
2361 | * c-parse.in (reswords): Add _Bool. | |
2362 | (rid_to_yy): Allow for RID_BOOL. | |
2363 | * c-typeck.c (default_conversion): Make booleans promote to int. | |
2364 | (convert_arguments, build_unary_op, build_modify_expr, | |
2365 | convert_for_assignment): Allow for booleans. | |
2366 | * ginclude/stdbool.h: Make conforming to C99. | |
2367 | ||
444ca59f JM |
2368 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2369 | ||
2370 | * c-parse.in (c99_block_start, c99_block_end, | |
2371 | c99_block_lineno_labeled_stmt): New. | |
2372 | (simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt. | |
2373 | (stmt): Split off selection and iteration statements into... | |
2374 | (select_or_iter_stmt): New. Use c99_block_lineno_labeled_stmt. | |
2375 | ||
f2ecb02d JM |
2376 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2377 | ||
2378 | * invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps, | |
2379 | -time): Update. | |
2380 | ||
b082bfdb RE |
2381 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
2382 | ||
2383 | * arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change. | |
2384 | Rewrite to avoid use of match_dup. Don't try to tie registers that | |
2385 | are not in the same mode. | |
2386 | ||
b9265ec1 JM |
2387 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2388 | ||
2389 | * invoke.texi: Update lists of languages and suffixes supported. | |
2390 | ||
cc1e60ea JM |
2391 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2392 | ||
2393 | * configure.in: Take toplevel configure arguments from the | |
2394 | environment to create configargs.h and substitute | |
2395 | gcc_config_arguments, taking account of any existing configargs.h | |
2396 | if reconfiguring. | |
2397 | * configure: Regenerate. | |
2398 | * gccbug.in: Include toplevel configure arguments in gccbug. | |
2399 | ||
37357796 RE |
2400 | 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
2401 | ||
2402 | * varasm.c (struct constant_descriptor): Put CONTENTS inside a | |
2403 | union to make it well-aligned. Update all uses. | |
2404 | ||
26d4fec7 JM |
2405 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2406 | ||
2407 | * c-parse.in (initelt): Give appropriate pedantic warnings, | |
2408 | depending on flag_isoc99, for non-ISO syntax and for C99 syntax | |
2409 | outside C99 mode. | |
2410 | (designator): If pedantic, pedwarn for a designator specifying a | |
2411 | range of elements. | |
2412 | * c-typeck.c (set_init_index, set_init_label): Don't pedwarn for | |
2413 | these cases. | |
2414 | * extend.texi: Document the C99 syntax as the preferred syntax, | |
2415 | and the pre-2.5 syntax as obsolete. Mention use of designator | |
2416 | lists for nested subobjects. | |
2417 | ||
88f3c477 JM |
2418 | 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
2419 | ||
2420 | * diagnostic.c (vbuild_message_string, output_do_printf, vnotice): | |
2421 | Add ATTRIBUTE_PRINTF. | |
2422 | * tradcpp.c (v_message, warning, error, fatal, error_with_line): | |
2423 | Add ATTRIBUTE_PRINTF*. | |
2424 | ||
db5fbfb4 MM |
2425 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
2426 | ||
2427 | * function.c (assign_parms): When calling put_var_into_stack, make | |
2428 | sure that there are no hidden pending sequences. | |
2429 | ||
c7b6c6cd KG |
2430 | 2000-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2431 | ||
2432 | * builtins.c (expand_builtin): Handle BUILT_IN_INDEX and | |
2433 | BUILT_IN_RINDEX. Add missing checks for BUILT_IN_STRCHR and | |
2434 | BUILT_IN_STRRCHR. | |
2435 | ||
2436 | * builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries. | |
2437 | ||
2438 | * c-common.c (c_common_nodes_and_builtins): Declare index and | |
2439 | rindex when nonansi builtins are allowed. | |
2440 | ||
2441 | * extend.texi (index, rindex): Document new builtins. | |
2442 | ||
2f86842d MM |
2443 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
2444 | ||
34f6fbdb MM |
2445 | * configure.in: Turn on libstdc++ V3 by default. |
2446 | * configure: Regenerated. | |
a8a05998 | 2447 | |
2f86842d MM |
2448 | * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris. |
2449 | ||
0c0ba09c JJ |
2450 | 2000-11-12 Jakub Jelinek <jakub@redhat.com> |
2451 | ||
2452 | * reload1.c (set_label_offsets): Go inside of PARALLELs. | |
2453 | ||
84a0e7b8 JM |
2454 | 2000-11-12 Joseph S. Myers <jsm28@cam.ac.uk> |
2455 | ||
2456 | * invoke.texi: Clean up option summary. | |
2457 | ||
4816b8e4 NC |
2458 | 2000-11-12 Nick Clifton <nickc@redhat.com> |
2459 | ||
2460 | * config/mcore/mcore.c: Fix comment formating, and adjust sequence | |
2461 | of #include headers. | |
2462 | ||
ee7692d2 | 2463 | 2000-11-12 Marc Espie <espie@openbsd.org> |
a8a05998 | 2464 | |
ee7692d2 ME |
2465 | * configure.in: Fix filds test. |
2466 | * configure: Regen. | |
2467 | ||
f8c4f860 MM |
2468 | 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
2469 | ||
2470 | * jump.c (delete_computation): Don't assume that just becuase an | |
2471 | instruction sets a register, that register is dead. | |
2472 | ||
b528a07e NB |
2473 | 2000-11-12 Neil Booth <neilb@earthling.net> |
2474 | ||
a8a05998 ZW |
2475 | * cppexp.c: Don't worry about pfile->skipping. |
2476 | * cpplib.c (struct if_stack): Make was_skipping unsigned char. | |
2477 | (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer | |
2478 | for handled directives. | |
2479 | (skip_rest_of_line): Use _cpp_lex_token after popping contexts | |
2480 | and releasing lookaheads. | |
2481 | (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping. | |
2482 | (do_else, do_elif, push_conditional): Update logic. | |
2483 | (do_endif): Set buffer->was_skipping rather than pfile->skipping. | |
2484 | (unwind_if_stack): Inline into cpp_pop_buffer. | |
2485 | (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive. | |
2486 | * cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle | |
2487 | multiple-include optimisation. | |
2488 | * cpplib.h (struct cpp_buffer): New member was_skipping. | |
2489 | * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This | |
2490 | works because skipping == 0 in directives. | |
2491 | (_cpp_release_lookahead): Renamed from release_lookahead. | |
2492 | (cpp_get_token): No need to check skipping as _cpp_get_token does | |
2493 | this for us. No need to handle MI optimisation. | |
b528a07e | 2494 | |
995c461c MM |
2495 | Sat Nov 11 21:14:02 2000 Mark P Mitchell <mark@codesourcery.com> |
2496 | ||
2497 | * fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr | |
2498 | declarations that use `__MATH_EXCEPTION' in their prototypes, too. | |
2499 | * fixinc/fixincl.x: Regenerated. | |
a8a05998 | 2500 | |
56a77e1e BK |
2501 | 2000-11-11 Bruce Korb <bkorb@gnu.org> |
2502 | ||
2503 | * fixinc/inclhack.def (avoid_bool_type): avoid commenting out #endif | |
2504 | (avoid_wchar_t_type): ditto | |
2505 | * fixinc/fixinc.irix: obsoleted | |
2506 | ||
72aaffbd ZW |
2507 | 2000-11-11 Zack Weinberg <zack@wolery.stanford.edu> |
2508 | ||
2509 | * configure.in: Don't add $outputs to all_lang_makefiles. Add | |
2510 | $srcdir/$s/Makefile.in if it exists. | |
2511 | * configure: Regenerate. | |
2512 | ||
bbdd639d MM |
2513 | Sat Nov 11 18:41:20 2000 Mark P Mitchell <mark@codesourcery.com> |
2514 | ||
2515 | * fixinc/mkfixinc.sh: Use the ordinary fixincludes on IRIX. | |
2516 | ||
d96a6d1a JM |
2517 | 2000-11-11 Jason Merrill <jason@redhat.com> |
2518 | ||
a8a05998 | 2519 | * function.c (assign_parms): If TREE_ADDRESSABLE is set, try to |
d96a6d1a JM |
2520 | give the parm a register and then call put_var_into_stack. |
2521 | * stmt.c (expand_decl): Likewise. | |
2522 | ||
8ee322c9 JM |
2523 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
2524 | ||
2525 | * gcc.texi: Adjust wording. | |
2526 | ||
8b4c8a86 MM |
2527 | 2000-11-11 Mark Mitchell <mark@codesourcery.com> |
2528 | ||
2529 | * fixinc/inclhack.def (avoid_wchar_t_type): New fix. | |
2530 | * fininc/fixincl.x: Regenerated. | |
2531 | ||
639726ba JM |
2532 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
2533 | ||
2534 | * invoke.texi: Correct spelling of -foptimize-register-move. | |
2535 | ||
4c2b647d NB |
2536 | 2000-11-11 Neil Booth <neilb@earthling.net> |
2537 | ||
2538 | Remove CPP_PLACEMARKERs. | |
2539 | ||
2540 | * cppexp.c (lex): Don't handle CPP_PLACEMARKER. | |
2541 | * cpplex.c (_cpp_lex_token): Rename skip_newlines to next_bol | |
2542 | * cpplib.c (skip_rest_of_line, check_eol, cpp_push_buffer): | |
a8a05998 | 2543 | Similarly. |
4c2b647d NB |
2544 | * cpplib.h: Remove CPP_PLACEMARKER. |
2545 | (struct lexer_state): Rename skip_newlines to next_bol. | |
2546 | * cppmacro.c (stringify_arg): Don't handle CPP_PLACEMARKER. | |
2547 | Simplify prev_white handling as a result. | |
2548 | (paste_all_tokens): Don't worry about CPP_PLACEMARKERs. | |
2549 | (parse_arg): Empty arguments are now empty, not CPP_PLACEMARKERs. | |
2550 | (parse_args): Similarly. Update argument count tests. | |
2551 | (enter_macro_context): Return 2 to indicate an empty macro. | |
2552 | (replace_args): Don't bother pre-expanding an empty argument. | |
2553 | Handle placemarkers and ## extension during pre-expansion. | |
2554 | (cpp_get_token): Handle empty macro expansions. Don't worry | |
2555 | about CPP_PLACEMARKERs. | |
2556 | (_cpp_create_definition): Empty macros are now empty. | |
2557 | (cpp_macro_defintion): Don't special case empty macros. | |
2558 | * scan-decls.c: Don't bother with CPP_PLACEMARKERs. | |
2559 | * c-lex.c: Similarly. | |
2560 | ||
c1030c7c JM |
2561 | 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
2562 | ||
2563 | * gcc.texi, invoke.texi: Add new section discussing language | |
2564 | standards; link to it where appropriate; refer to ISO C instead of | |
2565 | ANSI C. | |
2566 | ||
93a77848 AO |
2567 | 2000-11-11 Alexandre Oliva <aoliva@redhat.com> |
2568 | ||
3650b695 AO |
2569 | * builtins.c (std_expand_builtin_va_start): Take PARM_BOUNDARY |
2570 | into account. | |
2571 | ||
93a77848 AO |
2572 | * config/sh/sh.h (MODES_TIEABLE_P): Don't tie SFmode to other FP |
2573 | modes. | |
2574 | ||
9a5a13c9 JM |
2575 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
2576 | ||
2577 | * gcc.texi, gcov.texi: Update dates and version numbers. | |
2578 | ||
1e608388 ZW |
2579 | 2000-11-10 Zack Weinberg <zack@wolery.stanford.edu> |
2580 | ||
2581 | * configure.in: Remove AC_PROG_LEX and AC_PROG_YACC. Look for | |
2582 | flex and bison, specifically, first in a unified build and | |
2583 | then installed on the system. | |
2584 | * Makefile.in: Set BISON to @BISON@, FLEX to @FLEX@. Rename | |
2585 | LEXFLAGS to FLEXFLAGS. Adjust ORDINARY_FLAGS_TO_PASS to | |
2586 | match. | |
2587 | ||
2588 | (collect2.o, gcc.o, prefix.o, toplev.o, alloca.o, intl.o, | |
2589 | cppdefault.o): Remove pointless sed munging of source file | |
2590 | name. | |
2591 | ||
9532e31f BS |
2592 | 2000-11-10 Bernd Schmidt <bernds@redhat.co.uk> |
2593 | ||
2594 | * reload.c (find_reloads_address_1, case POST_MODIFY): Use RELOAD_OTHER | |
2595 | for address reloads. Push replacements for REG_INC notes. | |
2596 | (regno_clobbered_p): New arg SETS. Examine SETs if it's nonzero. All | |
2597 | callers changed. | |
2598 | * reload1.c (choose_reload_regs): Registers set in the insn can't be | |
2599 | used for RELOAD_OTHER reloads. | |
2600 | ||
721de836 MM |
2601 | 2000-11-10 Mark Mitchell <mark@codesourcery.com> |
2602 | ||
2603 | * c-dump.h: New file. | |
2604 | ||
4e135bdd KG |
2605 | 2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2606 | ||
2607 | * alpha.c (check_float_value): Use memcpy, not bcopy. | |
2608 | * arm.c (output_move_double): Likewise. | |
2609 | * arm.md: Likewise. | |
2610 | * m88k.c (legitimize_operand): Likewise. | |
2611 | * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise. | |
2612 | * m88k.md: Likewise. | |
2613 | * mips.c (override_options): Likewise. | |
2614 | * mips.md: Likewise. | |
2615 | * romp.c (output_fpops): Likewise. | |
2616 | * rs6000.c (rs6000_override_options): Likewise. | |
2617 | * sh.md: Likewise. | |
2618 | * vax.c (check_float_value): Likewise. | |
2619 | ||
2620 | * emit-rtl.c (copy_rtx_if_shared, init_emit_once): Likewise. | |
2621 | * expmed.c (synth_mult): Likewise. | |
2622 | * final.c (add_bb_string): Likewise. | |
2623 | * genattr.c (main): Likewise. | |
2624 | * genattrtab.c (attr_string, simplify_cond, copy_rtx_unchanging): | |
2625 | Likewise. | |
2626 | * jump.c (thread_jumps): Likewise. | |
2627 | * prefix.c (save_string): Likewise. | |
2628 | * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Likewise. | |
2629 | * regclass.c (init_reg_sets, init_reg_sets_1): Likewise. | |
2630 | * reload1.c (reload, eliminate_regs): Likewise. | |
2631 | ||
c8abeb44 JM |
2632 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
2633 | ||
2634 | * gcc.texi (Service): Update to reflect current practice and | |
2635 | location of the GNU service directory. | |
2636 | ||
6fb85418 BS |
2637 | 2000-11-09 Bernd Schmidt <bernds@redhat.co.uk> |
2638 | ||
2639 | * regrename.c (build_def_use): Mark contents of REG_INC notes as | |
2640 | needing replacement. | |
2641 | ||
0c478921 BS |
2642 | * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Emit |
2643 | a no-op move if regs are equal. | |
2644 | * toplev.c (rest_of_compilation): Do the noop moves elimination pass | |
a8a05998 | 2645 | when calling jump after post-reload splitting. |
0c478921 | 2646 | |
3b7a2e58 JM |
2647 | 2000-11-09 Jan van Male <jan.vanmale@fenk.wau.nl> |
2648 | ||
a8a05998 ZW |
2649 | * c-tree.texi: Fix typos. |
2650 | * extend.texi: Likewise | |
2651 | * gcov.texi: Likewise | |
2652 | * rtl.texi: Likewise | |
2653 | * tm.texi: Likewise | |
3b7a2e58 | 2654 | |
59257980 HPN |
2655 | 2000-11-09 Hans-Peter Nilsson <hp@axis.com> |
2656 | ||
2657 | * c-lex.c [! NO_IMPLICIT_EXTERN_C] (cb_enter_file): Check | |
2658 | in_system_header and flags[1] before dereferencing flags[2]. | |
2659 | ||
881a8969 MH |
2660 | 2000-11-09 Matthew Hiller <hiller@redhat.com> |
2661 | ||
2662 | * reload1.c (reload_combine): Fixed calculation of | |
2663 | first_index_reg, last_index_reg. | |
2664 | ||
0a7394bc MM |
2665 | 2000-11-09 Mark Mitchell <mark@codesourcery.com> |
2666 | ||
13507bd8 MM |
2667 | * c-dump.c (dequeue_and_dump): Dump function bodies. |
2668 | ||
0a7394bc MM |
2669 | * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o. |
2670 | (c-dump.o): New target. | |
2671 | * c-common.h (flag_dump_translation_unit): New variable. | |
2672 | (C_TYPE_QUALS): New macro. | |
2673 | (strip_array_types): New function. | |
2674 | (DECL_C_BIT_FIELD): New macro. | |
2675 | (SET_DECL_C_BIT_FIELD): Likewise. | |
2676 | (CLEAR_DECL_C_BIT_FIELD): Likewise. | |
2677 | (dump_info_p): New typedef. | |
2678 | (dump_tree_fn): Likewise. | |
2679 | (lang_dump_tree): New variable. | |
2680 | (dump_node_to_file): New function. | |
2681 | * c-common.c (flag_dump_translation_unit): Define it. | |
2682 | (strip_array_types): New function. | |
2683 | * c-decl.c (c_decode_option): Handle -fdump-translation-unit. | |
a8a05998 | 2684 | * c-lang.c (finish_file): Call dump_node_to_file if |
0a7394bc MM |
2685 | flag_dump_translation_unit. |
2686 | * c-semantics.c (mark_rtl_for_local_static): Fix typo in comment. | |
2687 | * c-tree.h (DECL_C_BIT_FIELD): Remove declaration. | |
2688 | * c-dump.c: New file. | |
a8a05998 | 2689 | |
abffe289 CF |
2690 | 2000-11-09 Christopher Faylor <cgf@cygnus.com> |
2691 | ||
2692 | * config/i386/cygwin.h: Add mingw startfile prefix. | |
2693 | ||
1288c070 RH |
2694 | 2000-11-09 Richard Henderson <rth@redhat.com> |
2695 | ||
2696 | * flow.c (invalidate_mems_from_set): Split out from ... | |
2697 | (mark_set_1): ... here. | |
2698 | (try_pre_increment_1): Use it. Use propagate_block_delete_insn | |
2699 | instead of turning insn into a NOTE_INSN_DELETED. | |
2700 | ||
01702459 JM |
2701 | 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
2702 | ||
2703 | * extend.texi, invoke.texi: Move documentation of builtin versions | |
2704 | of C library functions to one place and update. | |
2705 | ||
30355eaa RH |
2706 | 2000-11-09 Richard Henderson <rth@redhat.com> |
2707 | ||
2708 | * fold-const.c (fold): Compare TYPE_MAIN_VARIANT rather than | |
2709 | the types themselves to discover type equivalence. | |
2710 | ||
5fcee6f3 MS |
2711 | 2000-11-09 Mike Stump <mrs@wrs.com> |
2712 | ||
2713 | * Makefile.in (distclean): Remove a few extra leftovers. | |
2714 | ||
377b6fce RH |
2715 | 2000-11-09 Richard Henderson <rth@redhat.com> |
2716 | ||
c0e3f87d RH |
2717 | * recog.c (validate_replace_rtx_1): Consider subregs when |
2718 | replacing a register with a constant inside a sign/zero_extend. | |
2719 | ||
377b6fce RH |
2720 | * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. |
2721 | ||
b52114d2 GK |
2722 | 2000-11-09 Geoffrey Keating <geoffk@redhat.com> |
2723 | ||
2724 | * c-decl.c (finish_struct): When a structure is completed, | |
2725 | check all its variant types for completeness. | |
2726 | ||
a949941c NB |
2727 | 2000-11-09 Neil Booth <neilb@earthling.net> |
2728 | ||
2729 | * cpphash.c: Move cpp_defined here from cpplib.c. | |
2730 | * cpplib.c: Update comments, move cpp_defined to cpphash.c. | |
2731 | * cpplex.c (_cpp_lex_token): Don't leave the lexer at EOL. | |
2732 | * cppmacro.c (cpp_get_token): Update comments, no need now | |
2733 | to catch the CPP_EOF meaning EOL case. | |
2734 | ||
9a0662b4 GK |
2735 | 2000-11-08 Geoffrey Keating <geoffk@redhat.com> |
2736 | ||
2737 | * config/sparc/sparc.c (sparc_va_arg): When the required alignment | |
2738 | is more than that provided, copy to a temporary. | |
2739 | ||
6c80a645 AO |
2740 | 2000-11-09 Alexandre Oliva <aoliva@redhat.com> |
2741 | ||
2742 | * mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from | |
2743 | interpreting $out as a macro assignment. | |
2744 | * Makefile.in (T_TARGET): New auxiliary macro and target. | |
2745 | (all): Add a target right in the beginning, so that we don't build | |
2746 | T_TARGET by default. | |
2747 | ||
6a4afa6c GS |
2748 | 2000-11-09 Graham Stott <grahams@redhat.com> |
2749 | ||
a8a05998 | 2750 | * config/i386/i386.md (mmx_pinsrw): Output operands in correct |
6a4afa6c GS |
2751 | order for -mintel-syntax. Remove comment now that the operand |
2752 | order has been checked. | |
2753 | (mmx_pextrw): Likewise. | |
2754 | (mmx_pshufw): Likewise. | |
2755 | ||
2dee4af1 JJ |
2756 | 2000-11-09 Jakub Jelinek <jakub@redhat.com> |
2757 | ||
2758 | * builtins.c (c_strlen): Use TREE_STRING_LENGTH - 1 for max. | |
2759 | (c_getstr): New function. | |
2760 | (expand_builtin_strstr): Do nothing if -fcheck-memory-usage. | |
2761 | If both arguments are constant string, optimize out. | |
2762 | (expand_builtin_strchr, expand_builtin_strrchr): New functions. | |
2763 | (expand_builtin_strpbrk): Use c_getstr, do nothing if | |
2764 | -fcheck-memory-usage. | |
2765 | (expand_builtin_fputs): Likewise. | |
2766 | (expand_builtin_strcmp): Add MODE argument. | |
2767 | Use even if !HAVE_cmpstrsi. | |
2768 | Optimize the case when both arguments are constant strings. | |
2769 | (expand_builtin): Adjust expand_builtin_strcmp caller. | |
2770 | Call expand_builtin_strchr and expand_builtin_strrchr. | |
2771 | * c-common.c (c_common_nodes_and_builtins): Add strchr and strrchr | |
2772 | builtins. | |
2773 | * builtins.def (BUILT_IN_STRRCHR): Add. | |
2774 | ||
97dc9fc0 GP |
2775 | 2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
2776 | ||
2777 | * fixinc/gnu-regex.c: Rename EGCS LOCAL markers to GCC LOCAL. | |
2778 | ||
2e09e75a JM |
2779 | 2000-11-09 Joseph S. Myers <jsm28@cam.ac.uk> |
2780 | ||
2781 | * calls.c (expand_call, emit_library_call_value_1), collect2.c | |
2782 | (scan_prog_file), config/a29k/a29k.c (print_operand), | |
2783 | config/sparc/sparc.c (order_regs_for_local_alloc): Use memcpy () | |
2784 | instead of bcopy (). | |
2785 | * real.h: Use memcmp () instead of bcmp (). | |
2786 | * config/m88k/m88k.c (m88k_layout_frame), config/sh/sh.c | |
2787 | (split_branches), config/sparc/sparc.c (ultra_flush_pipeline, | |
2788 | ultrasparc_sched_init, ultrasparc_sched_reorder), | |
2789 | config/sparc/sparc.h (CONDITIONAL_REGISTER_USAGE): Use memset () | |
2790 | instead of bzero (). | |
2791 | * config/vax/xm-xms.h (FILE_NAME_NONDIRECTORY): Use strrchr () | |
2792 | instead of rindex (). | |
2793 | * configure.in: Don't check for bzero, bcmp, index or rindex. | |
2794 | * configure, config.in: Regenerate. | |
2795 | * system.h: Don't include declarations for bzero, bcmp, index or | |
2796 | rindex. | |
2797 | * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Don't define | |
2798 | bzero, bcmp, index or rindex. | |
2799 | ||
03fb4780 CF |
2800 | Wed Nov 8 21:58:20 2000 Christopher Faylor <cgf@cygnus.com> |
2801 | ||
2802 | * config/i386/cygwin.h: Add -no-win32 switch. Separate -mno-cygwin | |
2803 | include and library paths from -mcygwin case. Parameterize some | |
2804 | declarations to avoid warnings. Use standard locations for include and | |
2805 | lib dirs. | |
2806 | ||
ca68ea18 NC |
2807 | 2000-11-08 Nick Clifton <nickc@redhat.com> |
2808 | ||
2809 | * config/arm/arm.md (mulsidi3adddi): Change output operand | |
eb68ad7c | 2810 | constraint from "=&" to "+&". |
ca68ea18 | 2811 | (umulsidi3adddi): Change output operand constraint from "=&" to |
eb68ad7c | 2812 | "+&". |
ca68ea18 | 2813 | |
c32e1e6f RH |
2814 | 2000-11-08 Richard Henderson <rth@redhat.com> |
2815 | ||
2816 | * flow.c (init_propagate_block_info): Protect the rtx stored in | |
2817 | mem_set_list from modification by find_auto_inc. | |
2818 | (mark_set_1): Likewise. | |
2819 | ||
adb84b42 NB |
2820 | 2000-11-08 Neil Booth <neilb@earthling.net> |
2821 | ||
a8a05998 ZW |
2822 | Move directive handling into the lexer itself. |
2823 | ||
2824 | * cpplex.c (_cpp_lex_token): Handle directives directly. | |
2825 | In the case of a directive interrupting a function-like | |
2826 | macro invocation, use extra_char since read_ahead is | |
2827 | used to store the '#'. Return a CPP_EOF in this case. | |
2828 | * cppmacro.c (parse_arg): No need to handle CPP_DHASH any more. | |
2829 | (cpp_get_token): Don't handle directives here. | |
2830 | * cpplib.h: Remove CPP_DHASH token type. | |
adb84b42 | 2831 | |
756d6f0c JH |
2832 | Wed Nov 8 21:53:41 MET 2000 Jan Hubicka <jh@suse.cz> |
2833 | ||
2834 | * regmove.c (combine_stack_adjustments_for_blocks): Recognize pushes | |
2835 | formed using PRE_MODIFY too. | |
2836 | ||
c39c0db3 MM |
2837 | 2000-11-08 Mark Mitchell <mark@codesourcery.com> |
2838 | ||
69908851 MM |
2839 | * c-tree.texi (VAR_DECL): Describe representation of GCC's |
2840 | extension for placing variables in particular registers. | |
2841 | ||
c39c0db3 MM |
2842 | * c-tree.texi (FUNCTION_TYPE): Clarify TYPE_ARG_TYPES for |
2843 | unprototyped C functions with no parameters. | |
2844 | ||
6cada0cd JJ |
2845 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
2846 | ||
2847 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Cast DELTA to int | |
2848 | before passing to fprintf. | |
2849 | ||
768f0669 JJ |
2850 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
2851 | ||
2852 | * function.c (expand_function_start): Cast GET_MODE_SIZE to | |
2853 | HOST_WIDE_INT before negating it. | |
2854 | ||
df6018fd JJ |
2855 | 2000-11-08 Jakub Jelinek <jakub@redhat.com> |
2856 | ||
2857 | * expr.c (expand_expr) [ADDR_EXPR]: Handle when op0 is RETURN_DECL | |
2858 | passed in multiple non-contiguous locations. | |
2859 | ||
14ae1d50 | 2860 | 2000-11-08 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
a8a05998 | 2861 | |
14ae1d50 GP |
2862 | * README.gnat: Remove file. |
2863 | ||
673887d5 AO |
2864 | 2000-11-08 Alexandre Oliva <aoliva@redhat.com> |
2865 | ||
2866 | * mklibgcc.in (EXTRA_MULTILIB_PARTS): Generate multilib parts | |
2867 | in-place. | |
2868 | ||
66234570 RH |
2869 | 2000-11-07 Richard Henderson <rth@redhat.com> |
2870 | ||
2871 | * dwarfout.c (INSN_LABEL_FMT): Remove. | |
2872 | (output_label_die): Use ASM_GENERATE_INTERNAL_LABEL. | |
2873 | (dwarfout_label): Remove. | |
2874 | * dwarfout.h: Remove it's prototype. | |
2875 | * dwarf2out.c (INSN_LABEL_FMT): Remove. | |
2876 | (gen_label_die): Use ASM_GENERATE_INTERNAL_LABEL. | |
2877 | (dwarf2out_label): Remove. | |
2878 | * dwarf2out.h: Remove it's prototype. | |
2879 | * final.c (final_scan_insn): Don't call dwarf[2]out_label. | |
2880 | ||
81b75d96 RH |
2881 | 2000-11-07 Richard Henderson <rth@redhat.com> |
2882 | ||
cd5c4048 RH |
2883 | * config/ia64/fde-glibc.c (find_fde_for_dso): Do a binary |
2884 | search on the unwind region section. | |
2885 | ||
2886 | * config/ia64/ia64.md (movbi): Add r/r alternative. | |
2887 | (cmovdi_internal_astep): Describe all combinations of register | |
2888 | classes for sources & destinations; remove matching constraints. | |
2889 | (cmovdi_internal): Likewise. | |
2890 | ||
81b75d96 RH |
2891 | * gcc.c (default_compilers) [@cpp-output]: Add -fpreprocessed. |
2892 | ||
6dbaddf9 RH |
2893 | 2000-11-07 Richard Henderson <rth@redhat.com> |
2894 | ||
2895 | * c-lang.c (start_cdtor, finish_cdtor): New functions. | |
2896 | (finish_file): Use them in building constructor/destructor functions. | |
2897 | ||
a8a05998 | 2898 | * config/alpha/alpha.h (HAS_INIT_SECTION, LD_INIT_SWITCH, |
6dbaddf9 RH |
2899 | LD_FINI_SWITCH): Move ... |
2900 | * config/alpha/osf.h: ... here. | |
2901 | * config/alpha/alpha-interix.h: Don't undef them. | |
2902 | ||
99b13084 JO |
2903 | 2000-11-07 Jeffrey Oldham <oldham@oz.codesourcery.com> |
2904 | ||
2905 | * config/mips/t-iris6 (FPBIT): New. Added so that __unorddf2 is | |
2906 | included in libgcc.a. | |
2907 | (DPBIT): Likewise. | |
2908 | (dp-bit.c): Likewise. | |
2909 | (fp-bit.c): Likewise. | |
2910 | ||
d7cac874 NC |
2911 | 2000-11-07 Nick Clifton <nickc@redhat.com> |
2912 | ||
2913 | * config/m88k/m88k.h (GLOBAL_ASM_OP): Add missing tab. | |
2914 | (INTERNAL_ASM_OP): Add missing tab. | |
2915 | ||
961192e1 JM |
2916 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
2917 | ||
2918 | * alias.c (init_alias_analysis), calls.c (expand_call, | |
2919 | emit_library_call_value_1), combine.c (init_reg_last_arrays), | |
2920 | cse.c (new_basic_block), dbxout.c (dbxout_type), diagnostic.c | |
2921 | (init_output_buffer, set_diagnostic_context), dwarf2out.c | |
2922 | (equate_decl_number_to_die, build_abbrev_table), emit-rtl.c | |
2923 | (init_emit_once), fold-const.c (mul_double, div_and_round_double), | |
2924 | function.c (assign_parms), gcse.c (compute_can_copy, | |
2925 | alloc_gcse_mem, alloc_reg_set_mem, record_one_set, | |
2926 | compute_hash_table, compute_set_hash_table, | |
2927 | compute_expr_hash_table), genattrtab.c (optimize_attrs), global.c | |
2928 | (global_alloc, global_conflicts), haifa-sched.c (compute_trg_info, | |
2929 | clear_units, schedule_block), integrate.c (initialize_for_inline, | |
2930 | expand_inline_function), jump.c (thread_jumps), local-alloc.c | |
2931 | (local_alloc), loop.c (combine_movables, count_loop_regs_set, | |
2932 | load_mems_and_recount_loop_regs_set), print-tree.c (debug_tree), | |
2933 | regclass.c (init_reg_sets, init_reg_sets_1, regclass, | |
2934 | record_reg_classes, allocate_reg_info), reload.c | |
2935 | (get_secondary_mem, remove_address_replacements, find_reloads), | |
2936 | reload1.c (reload, set_initial_label_offsets, finish_spills, | |
2937 | reload_as_needed, choose_reload_regs_init, | |
2938 | reload_cse_simplify_operands), reorg.c (dbr_schedule), sbitmap.c | |
2939 | (sbitmap_zero), simplify-rtx.c (simplify_plus_minus), ssa.c | |
2940 | (rename_registers), stmt.c (expand_end_case), unroll.c | |
2941 | (unroll_loop), varray.c (varray_grow), objc/objc-act.c: Use memset | |
2942 | () instead of bzero (). | |
2943 | ||
e3cc3581 NB |
2944 | 2000-11-07 Neil Booth <neilb@earthling.net> |
2945 | ||
2946 | * cp/lang-specs.h: Fix -save-temps specs under USE_CPPLIB. | |
2947 | ||
f8136648 KG |
2948 | 2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2949 | ||
2950 | * c-common.c (combine_strings): Only warn about long strings for C. | |
2951 | ||
71fd5a51 R |
2952 | Tue Nov 7 19:44:30 2000 J"orn Rennecke <amylaar@redhat.com> |
2953 | ||
2954 | * combine.c (distribute_notes): Fix typo in last change. | |
2955 | ||
bdaa0181 GK |
2956 | 2000-11-07 Geoff Keating <geoffk@redhat.com> |
2957 | ||
2958 | * config/rs6000/rs6000.md (movdi_internal32+1): Use | |
2959 | operand_subreg_force rather than gen_rtx_SUBREG. | |
2960 | (movdi_internal32+2): Likewise. | |
2961 | ||
bc56a125 PB |
2962 | 2000-11-07 Philip Blundell <philb@gnu.org> |
2963 | ||
2964 | * configure.in (arm*-*-linuxaout*): Obsolete, deleted. | |
2965 | * config/arm/linux-aout.h: Likewise. | |
2966 | * configure: Regenerate. | |
2967 | ||
a71d3613 PT |
2968 | 2000-11-07 Philipp Thomas <pthomas@suse.de> |
2969 | ||
2970 | * ABOUT-GCC-NLS: Remove the patch for gettext as it has been | |
2971 | accepted my the gettext maintainer. | |
2972 | ||
26a87cab KG |
2973 | 2000-11-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2974 | ||
2975 | * builtins.c (expand_builtin_strpbrk): New function. | |
2976 | (expand_builtin): Handle BUILT_IN_STRPBRK. | |
2977 | ||
2978 | * builtins.def (BUILT_IN_STRPBRK): New entry. | |
2979 | ||
2980 | * c-common.c (c_common_nodes_and_builtins): Declare builtin | |
2981 | strpbrk. | |
2982 | ||
ace54f91 DB |
2983 | 2000-11-07 David O'Brien <obrien@dragon.nuxi.com> |
2984 | ||
2985 | * config/alpha/freebsd.h: New file -- FreeBSD/alpha architecture file. | |
2986 | * POTFILES.in: Add config/alpha/freebsd.h | |
2987 | * configure.in: Add alpha*-freebsd support. | |
2988 | * configure: Regenerate. | |
2989 | ||
0dec5df9 JM |
2990 | 2000-11-07 Joseph S. Myers <jsm28@cam.ac.uk> |
2991 | ||
2992 | * tree.c (build_common_tree_nodes_2): Make va_list_type_node be a | |
2993 | copy of ptr_type_node rather than ptr_type_node itself. | |
2994 | ||
bf103ec2 R |
2995 | Tue Nov 7 06:29:24 2000 J"orn Rennecke <amylaar@redhat.com> |
2996 | ||
2997 | * combine.c (recog_for_combine): Allocate uninitialized vector with | |
2998 | rtvec_alloc. | |
2999 | * recog.c (apply_change_group): Likewise. | |
3000 | ||
c762163e R |
3001 | Tue Nov 7 06:24:02 2000 J"orn Rennecke <amylaar@redhat.com> |
3002 | ||
3003 | * flow.c (verify_local_live_at_start): Back out last change. | |
3004 | * combine.c (distribute_notes): When parts of a hard reg are | |
3005 | neither set nor referenced in PLACE, search backwards for a | |
3006 | place to put a REG_UNUSED note; if none found, ask for flow | |
3007 | info refresh. | |
3008 | ||
f34c06e5 R |
3009 | Mon Nov 6 20:08:13 2000 J"orn Rennecke <amylaar@redhat.com> |
3010 | ||
3011 | * reload1.c (eliminate_regs_in_insn): Allow a set to be a PARALLEL | |
3012 | with (clobber (match_scratch...)). | |
3013 | ||
2b892489 NB |
3014 | 2000-11-06 Neil Booth <neilb@earthling.net> |
3015 | ||
3016 | * c-lex.c (init_c_lex): If cpp_start_read fails, exit with | |
3017 | error status. | |
3018 | ||
ea33bfc5 NB |
3019 | 2000-11-06 Neil Booth <neilb@earthling.net> |
3020 | ||
a8a05998 | 3021 | * tradcpp.c (special_symbol): Assign an null string rather |
ea33bfc5 NB |
3022 | than writing to an unallocated buffer. |
3023 | ||
56051c0a NB |
3024 | 2000-11-06 Neil Booth <neilb@earthling.net> |
3025 | ||
3026 | * cpplex.c (_cpp_equiv_tokens): Check arg_no in the | |
3027 | CPP_MACRO_ARG case. | |
3028 | ||
6c53ebff NB |
3029 | 2000-11-06 Neil Booth <neilb@earthling.net> |
3030 | ||
3031 | * c-lex.c (c_lex): Replace tok.val.aux with tok.val.c or | |
3032 | tok.val.arg_no as appropriate. | |
3033 | * cppexp.c (lex): Similarly. | |
3034 | * cpplex.c (_cpp_lex_token, cpp_spell_token, cpp_output_token, | |
3035 | cpp_equiv_tokens, cpp_can_paste, cpp_avoid_paste): Similarly. | |
3036 | * cppmacro.c (stringify_arg, replace_args, lex_expansion_token, | |
3037 | cpp_macro_definition): Similarly. | |
3038 | * cpplib.h (struct cpp_token): Replace aux with c and arg_no. | |
3039 | ||
8b1c5fd0 JJ |
3040 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
3041 | ||
3042 | * config/sparc/sparc.md (adddi3): If operands[2] is 4096 and | |
3043 | operands[1] is constant, calculate the sum and generate movdi. | |
3044 | (addsi3): Similarly. Use SImode in call to arith_4096_operand. | |
3045 | (subsi3): Use SImode in call to arith_4096_operand. | |
3046 | ||
a0115140 JJ |
3047 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
3048 | ||
3049 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): On sparc64 we need to | |
3050 | adjust %o1, not %o0 if the return type is large structure. | |
3051 | ||
9ea2bda9 JJ |
3052 | 2000-11-06 Jakub Jelinek <jakub@redhat.com> |
3053 | ||
3054 | * config/sparc/sparc.md (smulsi3_highpart_v8plus, ashldi3_v8plus+1, | |
3055 | update_return, flush, flushdi, ffssi2, ffsdi2): Fix output formatting. | |
3056 | ||
1cf7847f DC |
3057 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
3058 | ||
3059 | * expmed.c (expand_divmod): For signed divide by 2, prefer | |
3060 | a branch and fewer shifts if branches are very cheap. | |
3061 | ||
436a88a6 JM |
3062 | 2000-11-05 Joseph S. Myers <jsm28@cam.ac.uk> |
3063 | ||
3064 | * Makefile.in: Remove all targets related to building | |
3065 | distributions and diffs, or INSTALL. | |
3066 | * INSTALL, install1.texi: Remove. | |
3067 | * configure.in: Remove mention of distdir. | |
3068 | * configure: Regenerate. | |
3069 | * objc/Make-lang.in: Remove mention of distdir. | |
3070 | ||
9cf11a47 NB |
3071 | 2000-11-04 Neil Booth <neilb@earthling.net> |
3072 | ||
3073 | * cpp.texi: Update for _Pragma. | |
3074 | ||
f148ca88 JM |
3075 | 2000-11-04 Joseph S. Myers <jsm28@cam.ac.uk> |
3076 | ||
3077 | * gcc.texi (Contributing): Update URL for projects web page. | |
3078 | ||
16eb2788 NB |
3079 | 2000-11-04 Neil Booth <neilb@earthling.net> |
3080 | ||
a8a05998 ZW |
3081 | * cpplex.c (parse_string): Don't allow multiline strings in |
3082 | #include family directives. | |
16eb2788 | 3083 | |
9232b7d9 NB |
3084 | 2000-11-04 Neil Booth <neilb@earthling.net> |
3085 | ||
3086 | * cpplib.c (do_line): Only warn pedantically if not reading | |
a8a05998 | 3087 | preprocessed input. |
9232b7d9 | 3088 | |
f132f529 AO |
3089 | 2000-11-04 Alexandre Oliva <aoliva@redhat.com> |
3090 | ||
3091 | * calls.c (emit_call_1) [sibcall_pop]: Use n_popped instead of | |
3092 | RETURN_POPS_ARGS(). | |
3093 | ||
0e9295cf ZW |
3094 | 2000-11-03 Zack Weinberg <zack@wolery.stanford.edu> |
3095 | ||
3096 | * builtins.c (expand_builtin_strlen): Remove unused mode | |
3097 | argument. | |
3098 | * gcc.c (process_command): Remove unused variable. | |
3099 | * fold-const.c: Include expr.h. | |
3100 | * recog.c: Include reload.h. | |
3101 | * Makefile.in (recog.o, fold-const.o): Update deps. | |
3102 | ||
f2682362 GK |
3103 | 2000-11-02 Geoffrey Keating <geoffk@cygnus.com> |
3104 | ||
3105 | * fixinc/gnu-regex.c: Change 'CYGNUS LOCAL' to 'EGCS LOCAL'. | |
3106 | ||
25f80eae MM |
3107 | Fri Nov 3 13:41:04 2000 Mark P Mitchell <mark@codesourcery.com> |
3108 | ||
3109 | * config/mips/iris6.h (SUBTARGET_CC1_SPEC): Remove -static | |
3110 | handling. | |
3111 | (STARTFILE_SPEC): Likewise. | |
3112 | (LINK_SPEC): Likewise. | |
3113 | ||
426159a4 KG |
3114 | 2000-11-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3115 | ||
3116 | * Makefile.in (fold-const.o): Depend on $(GGC_H), not ggc.h. | |
3117 | (toplev.o): Likewise for $(LOOP_H)/loop.h and $(REGS_H)/regs.h. | |
3118 | (simplify-rtx.o): Likewise for $(GGC_H)/ggc.h. | |
3119 | ||
da61dec9 JM |
3120 | 2000-11-03 Joseph S. Myers <jsm28@cam.ac.uk> |
3121 | ||
3122 | * c-decl.c (duplicate_decls, copy_lang_decl), dwarfout.c | |
3123 | (dwarfout_line), gcc.c (main, save_string), tree.c (init_obstacks, | |
3124 | perm_calloc, get_identifier, maybe_get_identifier, | |
3125 | real_value_from_int_cst, simple_cst_equal), varasm.c | |
3126 | (assemble_name, assemble_real, immed_real_const_1, | |
3127 | compare_constant_1, decode_rtx_const, output_constant_pool): Use | |
3128 | strrchr () instead of rindex (). Use memcmp () instead of bcmp | |
3129 | (). Use memcpy () instead of bcopy (). Use memset () instead of | |
3130 | bzero (). | |
3131 | ||
def3263a NS |
3132 | 2000-11-03 Nathan Sidwell <nathan@codesourcery.com> |
3133 | ||
3134 | * cppfiles.c (open_file): If already read, then don't reopen. | |
3135 | Immediately close an empty file. | |
3136 | ||
94e9dc13 BS |
3137 | 2000-11-01 Bernd Schmidt <bernds@redhat.co.uk> |
3138 | ||
3139 | * expr.h (fold_builtin): Move declaration... | |
3140 | * tree.h (fold_builtin): ... here. | |
3141 | ||
6c6a14b5 R |
3142 | Fri Nov 3 05:41:07 2000 J"orn Rennecke <amylaar@redhat.com> |
3143 | ||
3144 | * flow.c (verify_local_live_at_start): Allow hard regs to die. | |
3145 | ||
5b569332 NB |
3146 | 2000-11-02 Neil Booth <neilb@earthling.net> |
3147 | ||
3148 | config: | |
3149 | * a29k/a29k.h, a29k/unix.h, a29k/vx29k.h, | |
3150 | alpha/alpha-interix.h, alpha/alpha.h, alpha/linux.h, | |
3151 | alpha/openbsd.h, alpha/osf.h, alpha/vms.h, alpha/vxworks.h, | |
3152 | alpha/win-nt.h, arc/arc.h, arm/arm.h, arm/conix-elf.h, | |
3153 | arm/linux-aout.h, arm/linux-elf.h, arm/netbsd.h, arm/riscix.h, | |
3154 | arm/riscix1-1.h, arm/semiaof.h, arm/unknown-elf-oabi.h, arm/vxarm.h, | |
3155 | c4x/rtems.h, clipper/clix.h, convex/convex.h, d30v/d30v.h, | |
3156 | elxsi/elxsi.h, fr30/fr30.h, h8300/h8300.h, i370/linux.h, i370/mvs.h, | |
3157 | i370/oe.h, i386/386bsd.h, i386/aix386ng.h, i386/beos-elf.h, | |
3158 | i386/bsd386.h, i386/crtdll.h, i386/cygwin.h, i386/dgux.h, | |
3159 | i386/djgpp-rtems.h, i386/djgpp.h, i386/freebsd-aout.h, i386/freebsd.h, | |
3160 | i386/gnu.h, i386/i386-interix.h, i386/i386.h, i386/linux-aout.h, | |
3161 | i386/linux-oldld.h, i386/linux.h, i386/lynx-ng.h, i386/lynx.h, | |
3162 | i386/mach.h, i386/mingw32.h, i386/moss.h, i386/netbsd.h, | |
3163 | i386/netware.h, i386/next.h, i386/openbsd.h, i386/osf1elf.h, | |
3164 | i386/osfelf.h, i386/osfrose.h, i386/ptx4-i.h, i386/rtems.h, | |
3165 | i386/rtemself.h, i386/sco.h, i386/sco4.h, i386/sco4dbx.h, i386/sco5.h, | |
3166 | i386/scodbx.h, i386/sequent.h, i386/sol2.h, i386/sun.h, i386/sysv3.h, | |
3167 | i386/sysv4.h, i386/uwin.h, i386/vsta.h, i386/vxi386.h, i386/win-nt.h, | |
3168 | i386/win32.h, i860/fx2800.h, i860/i860.h, i860/mach.h, i860/sysv3.h, | |
3169 | i860/sysv4.h, i960/i960.h, i960/rtems.h, i960/vx960-coff.h, | |
3170 | ia64/ia64.h, ia64/linux.h, m32r/m32r.h, m68k/3b1.h, m68k/3b1g.h, | |
3171 | m68k/a-ux.h, m68k/altos3068.h, m68k/amix.h, m68k/apollo68.h, | |
3172 | m68k/crds.h, m68k/ctix.h, m68k/dpx2.h, m68k/hp2bsd.h, m68k/hp320.h, | |
3173 | m68k/hp3bsd.h, m68k/hp3bsd44.h, m68k/isi.h, m68k/linux-aout.h, | |
3174 | m68k/linux.h, m68k/lynx-ng.h, m68k/lynx.h, m68k/m68kemb.h, | |
3175 | m68k/m68kv4.h, m68k/mot3300.h, m68k/netbsd.h, m68k/news.h, | |
3176 | m68k/next.h, m68k/openbsd.h, m68k/pbb.h, m68k/plexus.h, m68k/rtems.h, | |
3177 | m68k/rtemself.h, m68k/sun2.h, m68k/sun3.h, m68k/sun3mach.h, | |
3178 | m68k/tower-as.h, m68k/tower.h, m68k/vxm68k.h, m88k/dgux.h, | |
3179 | m88k/dolph.h, m88k/luna.h, m88k/m88k-aout.h, m88k/m88k-coff.h, | |
3180 | m88k/openbsd.h, m88k/sysv3.h, m88k/sysv4.h, mips/bsd-4.h, | |
3181 | mips/bsd-5.h, mips/dec-bsd.h, mips/dec-osf1.h, mips/gnu.h, | |
3182 | mips/iris3.h, mips/iris5.h, mips/iris6.h, mips/linux.h, mips/mips.h, | |
3183 | mips/netbsd.h, mips/news4.h, mips/news5.h, mips/nws3250v4.h, | |
3184 | mips/openbsd.h, mips/osfrose.h, mips/rtems64.h, mips/sni-svr4.h, | |
3185 | mips/svr3-4.h, mips/svr3-5.h, mips/svr4-4.h, mips/svr4-5.h, | |
3186 | mips/ultrix.h, ns32k/encore.h, ns32k/merlin.h, ns32k/netbsd.h, | |
3187 | ns32k/ns32k.h, ns32k/pc532-mach.h, ns32k/pc532.h, ns32k/sequent.h, | |
3188 | ns32k/tek6000.h, ns32k/tek6100.h, ns32k/tek6200.h, pa/pa-hiux.h, | |
3189 | pa/pa-hpux.h, pa/pa-hpux7.h, pa/pa-linux.h, pa/pa-osf.h, | |
3190 | pa/pa-pro-end.h, pa/pa.h, pa/rtems.h, pj/linux.h, pj/pj.h, | |
3191 | romp/romp.h, rs6000/aix.h, rs6000/aix31.h, rs6000/aix41.h, | |
3192 | rs6000/aix43.h, rs6000/beos.h, rs6000/eabi.h, rs6000/eabisim.h, | |
3193 | rs6000/linux.h, rs6000/lynx.h, rs6000/mach.h, rs6000/rtems.h, | |
3194 | rs6000/sysv4.h, rs6000/vxppc.h, sh/elf.h, sh/linux.h, sh/rtems.h, | |
3195 | sh/rtemself.h, sh/sh.h, sparc/aout.h, sparc/elf.h, sparc/linux-aout.h, | |
3196 | sparc/linux.h, sparc/linux64.h, sparc/lite.h, sparc/litecoff.h, | |
3197 | sparc/liteelf.h, sparc/lynx-ng.h, sparc/lynx.h, sparc/netbsd.h, | |
3198 | sparc/openbsd.h, sparc/pbd.h, sparc/rtems.h, sparc/rtemself.h, | |
3199 | sparc/sol2-sld-64.h, sparc/sol2.h, sparc/sp64-aout.h, | |
3200 | sparc/sp64-elf.h, sparc/sp86x-aout.h, sparc/sp86x-elf.h, | |
3201 | sparc/sparc.h, sparc/sysv4.h, sparc/vxsim.h, sparc/vxsparc.h, | |
3202 | v850/rtems.h, vax/netbsd.h, vax/openbsd.h, vax/ultrix.h, vax/vax.h, | |
3203 | vax/vaxv.h, vax/vms.h, we32k/we32k.h | |
a8a05998 | 3204 | |
5b569332 NB |
3205 | Replace -A() with -A=, the new assertion syntax. |
3206 | ||
03afaf36 R |
3207 | Thu Nov 2 21:52:35 2000 J"orn Rennecke <amylaar@redhat.com> |
3208 | ||
3209 | * combine.c (distribute_notes): Use rtx_equal_p to check elim_i2 / | |
3210 | elim_i1. | |
3211 | In REG_DEAD handling: When handling parts of multi-hard-reg hard | |
3212 | registers, increment the loop counter by the size of the parts; | |
3213 | use recursion to handle individual parts. | |
3214 | ||
04e3be98 NB |
3215 | 2000-11-02 Neil Booth <neilb@earthling.net> |
3216 | ||
3217 | * configure.in: Make integrated CPP the default. | |
3218 | * configure: Regenerate. | |
3219 | ||
0192d704 R |
3220 | Thu Nov 2 19:20:12 2000 J"orn Rennecke <amylaar@redhat.com> |
3221 | ||
3222 | * reload.c (find_equiv_reg): Test all hard registers for membership | |
3223 | in the requested class. | |
3224 | ||
9473c522 JM |
3225 | 2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk> |
3226 | ||
3227 | * collect2.c (main, write_c_file_stat), gcc.c (translate_options, | |
3228 | process_command, main), gcov.c (open_files, output_data), tlink.c | |
3229 | (frob_extension, scan_linker_output), toplev.c | |
3230 | (file_name_nondirectory): Use strchr () and strrchr () instead of | |
3231 | index () and rindex (). | |
3232 | ||
0304bbad JM |
3233 | 2000-11-02 Joseph S. Myers <jsm28@cam.ac.uk> |
3234 | ||
3235 | * c-common.c (get_flag_spec, check_format_info_main, | |
3236 | check_format_types): Use strchr () instead of index (). Compare | |
3237 | against error_mark_node instead of comparing the TREE_CODE against | |
3238 | ERROR_MARK. | |
3239 | ||
23356f93 ZW |
3240 | 2000-11-02 Zack Weinberg <zackw@Stanford.EDU> |
3241 | ||
a8a05998 ZW |
3242 | Integrated CPP. |
3243 | ||
3244 | * c-lex.c (init_c_lex): Update cpp_start_read call. | |
3245 | (cb_ident): Update for new callback prototype. | |
3246 | (cb_def_pragma): Update for new cpp_get_token prototype. | |
3247 | (c_lex): Similarly. Use cpp_get_line. | |
3248 | ||
3249 | * c-parse.in (finish_parse): Update for new cpp_finish | |
3250 | prototype. | |
3251 | ||
3252 | * cp/lex.c (finish_parse): Similarly. | |
23356f93 | 3253 | |
7a099817 GK |
3254 | 2000-11-01 Geoff Keating <geoffk@cygnus.com> |
3255 | ||
3256 | * machmode.def: Add V16QImode. | |
3257 | ||
a97c9600 RH |
3258 | 2000-11-01 Richard Henderson <rth@redhat.com> |
3259 | ||
3260 | * dwarf2out.c (loc_descriptor_from_tree): Check for null result | |
3261 | from rtl_for_decl_location. | |
3262 | (add_location_or_const_value_attribute): Likewise. | |
3263 | ||
a0a9606d NB |
3264 | 2000-11-01 Neil Booth <neilb@earthling.net> |
3265 | ||
a8a05998 ZW |
3266 | * cpplib.c (run_directive): Use correct line number for output |
3267 | of _Pragma. Remember any in-progress directive. | |
3268 | ||
3269 | * gcc.dg/cpp/vararg2.c, gcc.dg/cpp/_Pragm1.c: New tests. | |
a0a9606d | 3270 | |
ba89764a RH |
3271 | 2000-11-01 Richard Henderson <rth@redhat.com> |
3272 | ||
3273 | * stmt.c (expand_start_null_loop): Set continue_label. | |
3274 | ||
b0b3afb2 BS |
3275 | 2000-11-01 Bernd Schmidt <bernds@redhat.co.uk> |
3276 | ||
3277 | * builtins.c (fold_builtin_constant_p, fold_builtin): New functions. | |
3278 | (expand_builtin_constant_p): Move parts of the code into | |
3279 | fold_builtin_constant_p. | |
3280 | (expand_builtin_strlen): Move parts of the code into fold_builtin. | |
3281 | * expr.h (fold_builtin): Declare. | |
3282 | * fold-const.c (fold): Handle builtin calls. | |
3283 | ||
3284 | * c-typeck.c (build_function_call): Call fold on the CALL_EXPR. | |
3285 | ||
f0de0c5d RH |
3286 | 2000-11-01 Richard Henderson <rth@redhat.com> |
3287 | ||
3288 | * stmt.c (expand_start_null_loop): New. | |
a8a05998 | 3289 | (expand_end_null_loop): New. |
f0de0c5d RH |
3290 | * c-semantics.c (genrtl_do_stmt): Use them. |
3291 | * tree.h: Declare them. | |
3292 | ||
3a59c77c RH |
3293 | 2000-11-01 Richard Henderson <rth@redhat.com> |
3294 | ||
3295 | * cppmain.c (scan_buffer): Don't avoid paste for assembly. | |
3296 | ||
12c4f523 NB |
3297 | 2000-11-01 Neil Booth <neilb@earthling.net> |
3298 | ||
3299 | * c-parse.in (_yylex): Remove CPP_BACKSLASH case. | |
3300 | * cp/spew.c: Similarly. | |
3301 | * cpplex.c (_cpp_lex_token): Backslashes are now CPP_OTHER. | |
3302 | * cppmacro.c (stringify_arg): Similarly. | |
3303 | * cpplib.h (CPP_BACKSLASH): Delete. | |
3304 | ||
78e7629e KG |
3305 | 2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3306 | ||
3307 | * builtins.c (expand_builtin_strstr): New function. | |
3308 | (expand_builtin): Handle BUILT_IN_STRSTR and BUILT_IN_STRCHR. | |
3309 | ||
3310 | * builtins.def (BUILT_IN_STRSTR, BUILT_IN_STRCHR): New entries. | |
3311 | ||
3312 | * c-common.c (c_common_nodes_and_builtins): Declare builtin strstr | |
3313 | and builtin strchr. | |
3314 | ||
32ee391b RH |
3315 | 2000-10-31 Richard Henderson <rth@redhat.com> |
3316 | ||
3317 | * config/i386/i386.c (fcmov_comparison_operator): Check for | |
3318 | CCFPmode or CCFPUmode instead of CCmode. | |
3319 | (ix86_expand_fp_movcc): Call ix86_expand_setcc for most | |
3320 | unordered operations as well. | |
3321 | ||
5f10ef5b RH |
3322 | 2000-10-31 Richard Henderson <rth@redhat.com> |
3323 | ||
3324 | * c-semantics.c (genrtl_do_stmt): Use integer_zerop instead | |
3325 | of integer_zero_node. | |
3326 | ||
d599b81f RH |
3327 | 2000-10-31 Richard Henderson <rth@redhat.com> |
3328 | ||
3329 | * c-semantics.c (genrtl_do_stmt): Special case do/while(0). | |
3330 | ||
1426f761 NC |
3331 | 2000-10-31 Nick Clifton <nickc@redhat.com> |
3332 | ||
3333 | * config/arm/unknown-elf.h (UNIQUE_SECTION_P): Do not allow | |
3334 | -fdata-sections to override the section attribute of a DECL. | |
3335 | ||
a8c0159a CD |
3336 | 2000-10-31 Chris Demetriou <cgd@sibyte.com> |
3337 | ||
3338 | * libgcc2.c (__shtab): Remove __shtab variable. | |
3339 | * libgcc-std.ver (GCC_3.0): Remove __shtab from symbol list. | |
3340 | * Makefile.in (LIB2FUNCS): Remove _shtab from list of library | |
3341 | members. | |
3342 | ||
8215347e JW |
3343 | 2000-10-31 Jim Wilson <wilson@redhat.com> |
3344 | ||
3345 | * defaults.h (ASM_OUTPUT_DEBUG_LABEL): New. | |
3346 | * tm.texi (ASM_OUTPUT_DEBUG_LABEL): Document. | |
3347 | * dwarf2out.c (dwarf2out_begin_block): Use ASM_OUTPUT_DEBUG_LABEL | |
3348 | instead of ASM_OUTPUT_INTERNAL_LABEL. | |
3349 | (dwarf2out_end_block, dwarf2out_label): Likewise. | |
3350 | * final.c (final_scan_insn, case NOTE_INSN_DELETED_LABEL): Likewise | |
3351 | * config/ia64/ia64.h (ASM_OUTPUT_DEBUG_LABEL): Define. | |
a8a05998 | 3352 | |
d8041cc8 RH |
3353 | 2000-10-31 Richard Henderson <rth@redhat.com> |
3354 | ||
3355 | * dwarf2out.c (struct dw_loc_descr_struct): Add dw_loc_addr. | |
3356 | (size_of_locs): Set it. | |
3357 | (output_loc_operands): Use it to compute branch displacement. | |
3358 | (int_loc_descriptor): New. | |
3359 | (mem_loc_descriptor): Dereference memory in the proper size. | |
3360 | Use DW_OP_plus_uconst when possible. Use int_loc_descriptor. | |
3361 | (loc_descriptor_from_tree): New. | |
3362 | (rtl_for_decl_location): Break out from ... | |
3363 | (add_location_or_const_value_attribute): ... here. | |
3364 | (add_bound_info): Use loc_descriptor_from_tree. | |
3365 | ||
86368122 NB |
3366 | 2000-10-31 Neil Booth <neilb@earthling.net> |
3367 | ||
3368 | * cpp.texi: Update for new command line assertion syntax. | |
3369 | * cpplib.c (cpp_define): Simplify a bit. | |
3370 | (cpp_assert, cpp_unassert): Use handle_assertion. | |
3371 | (handle_assertion): New function; accept new command line | |
3372 | syntax with '='. | |
3373 | * testsuite/gcc.dg/cpp/assert3.c: New tests. | |
3374 | ||
e1998242 NB |
3375 | 2000-10-31 Neil Booth <neilb@earthling.net> |
3376 | ||
3377 | * cppmacro.c (STDC_0_IN_SYSTEM_HEADERS): Define to 0 if | |
3378 | undefined. Remove #ifdef check. | |
3379 | * config/i386/sol2.h, config/rs6000/sol2.h, config/sparc/sol2.h: | |
3380 | Define STDC_0_IN_SYSTEM_HEADERS to 1. | |
3381 | ||
7e08e190 JH |
3382 | 2000-10-31 Jan Hubicka <jh@suse.cz> |
3383 | Jakub Jelinek <jakub@redhat.com> | |
3384 | ||
3385 | * config/i386/i386.h: Clarify CCNOmode description in comment. | |
3386 | (EXTRA_CC_MODES): Remove CCRCmode. | |
3387 | * config/i386/i386.c (ix86_comparison_operator): Remove CCRCmode. | |
3388 | (put_condition_code, ix86_match_ccmode): Likewise. | |
3389 | (ix86_cc_mode): Likewise. Fix comment. | |
3390 | (ix86_expand_strlensi_unroll_1): *rc patterns are gone. | |
3391 | * config/i386/i386.md: Add unspec 12 description. | |
3392 | (adddi3 split): Use unspec 12 instead of CCRCmode. | |
3393 | (addsi3_carry_rc): Remove. | |
3394 | (addsi3_cc, addqi3_cc): New patterns. | |
3395 | (addsi_3): Swap operands, match CCZmode. | |
3396 | (addsi_4): Rewritten. | |
3397 | (addsi_5): Renamed from addsi_6. | |
3398 | (addsi_6): Removed. | |
3399 | (addhi_3): Swap operands, match CCZmode. | |
3400 | (addhi_4): Rewritten. | |
3401 | (addhi_5): Renamed from addhi_6. | |
3402 | (addhi_6): Removed. | |
3403 | (addqi_3): Swap operands, match CCZmode. | |
3404 | (addqi_4): Rewritten. | |
3405 | (addqi_5): Renamed from addqi_6. Use =q constraint for clobber. | |
3406 | (subsi3_carry_rc): Removed. | |
3407 | (iorqi_3): Use =q constraint for clobber. | |
3408 | (xorqi_cc_2): Likewise. | |
3409 | (negdi2_1 split): Don't use CCRCmode, use ltu instead of gtu. | |
3410 | (x86_movsicc_0_m1_rc): Removed. | |
3411 | (cmp?i peepholes): Remove neg. Use CCGCmode instead of CCRCmode. | |
3412 | ||
93cc1c69 JM |
3413 | 2000-10-31 Joseph S. Myers <jsm28@cam.ac.uk> |
3414 | ||
3415 | * c-typeck.c (build_unary_op): If pedantic, pedwarn for increment | |
3416 | and decrement of complex types. | |
3417 | ||
bcb38cc1 KG |
3418 | 2000-10-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
3419 | ||
3420 | * builtins.c (expand_builtin_fputs): When deleting NOP calls to | |
3421 | builtin fputs, ensure we still evaluate the stream in case it | |
3422 | has side-effects. | |
3423 | ||
681cb233 JJ |
3424 | 2000-10-31 Jakub Jelinek <jakub@redhat.com> |
3425 | ||
3426 | * expr.c (do_store_flag): Pass operand_mode instead of GET_MODE (op0) | |
3427 | to expand_shift. | |
3428 | ||
4b9580a5 R |
3429 | Tue Oct 31 15:33:27 2000 J"orn Rennecke <amylaar@redhat.com> |
3430 | ||
3431 | * sh-protos.h (reg_no_subreg_operand, emit_fpscr_use): Don't declare. | |
3432 | (fp_extended_operand, emit_fpscr_use): Likewise. | |
3433 | * sh.c (reg_no_subreg_operand, fp_extended_operand): Delete functions. | |
3434 | (fpul_operand): New function. | |
3435 | * sh.h (PREDICATE_CODES): Remove reg_no_subreg_operand and | |
3436 | fp_extended_operand. Add fpul_operand. | |
3437 | * sh.md (mulsf3, mulsf3_i4): Use fp_arith_reg_operand for "f" operands. | |
3438 | (mulsf3_ie, macsf3, cmpgtsf_t, cmpeqsf_t, ieee_ccmpeqsf_t): Likewise. | |
3439 | (cmpgtsf_t_i4, cmpeqsf_t_i4, ieee_ccmpeqsf_t_4, negsf2): Likewise. | |
3440 | (negsf2_i, sqrtsf2, sqrtsf2_i, abssf2, abssf2_i, adddf3): Likewise. | |
3441 | (adddf3_i, subdf3, subdf3_i, muldf3, muldf3_i, divdf3): Likewise. | |
3442 | (divdf3_i): Likewise. | |
3443 | (floatsisf2): Likewise. Use fpul_operand for 'y' operand. | |
3444 | (floatsisf2_i4, floatsisf2_ie, fix_truncsfsi2): Likewise. | |
3445 | (fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i): Likewise. | |
3446 | (fix_truncdfsi2, fix_truncdfsi2_i, extendsfdf2): Likewise. | |
3447 | (extendsfdf2_i4, truncdfsf2, truncdfsf2_i4): Likewise. | |
3448 | ||
332316cd BS |
3449 | 2000-10-31 Bernd Schmidt <bernds@redhat.co.uk> |
3450 | ||
a8a05998 | 3451 | * config/i386/i386.c (ix86_init_builtins): Correct return type |
332316cd BS |
3452 | building v4hi_ftype_v4hi_int_int tree node. |
3453 | (ix86_expand_builtin): Use correct operand numbers 0 and 1. | |
3454 | Copy operand 0 into a Pmode register, don't generate a MEM rtx. | |
3455 | ||
3456 | * config/i386/i386.md (sse_movntdi): Use mmx register constraint | |
3457 | for operand 1. | |
3458 | (mmx__uavgv8qi3): Correct insn mnemonic. | |
3459 | (mmx_psadbw): Correct insn mnemonic. Use V8QI mode for operands 1 and 2. | |
3460 | (mmx_punpckhwd): Correct insn mnemonic. | |
3461 | (mmx_punpckhdq): Likewise. | |
3462 | (mmx_punpcklwd): Likewise. | |
3463 | (mmx_punpckldq): Likewise. | |
3464 | (prefetch): Use immediare_operand and 'n' constraint for operand 1. | |
3465 | Renumber case labels to match the _mm_prefetch constants defined in | |
3466 | xmmintrin.h. | |
3467 | ||
1d766db0 BS |
3468 | * recog.c (split_all_insns): Don't try to call cleanup_subreg_operands |
3469 | if the splitter didn't emit new insns. | |
3470 | Make sure we call cleanup_subreg_operands even when splitting the last | |
3471 | insn in a basic block. | |
3472 | ||
8bb16620 BS |
3473 | * invoke.texi (Debugging Options): Describe -do. |
3474 | * toplev.c (enum_dump_file_index): New entry DFI_postreload. | |
3475 | (dump_file): Likewise. | |
3476 | (rest_of_compilation): Split .greg dump into .greg and .postreload. | |
3477 | ||
a5c3cccd NB |
3478 | 2000-10-30 Neil Booth <neilb@earthling.net> |
3479 | ||
3480 | * cppfiles.c (stack_include_file): Check for stacked contexts | |
3481 | here. | |
3482 | * cpphash.h (_cpp_do__Pragma): New prototype. | |
3483 | * cppinit.c (cpp_reader_init): Add _Pragma keyword to hash table. | |
3484 | ||
3485 | * cpplex.c (skip_escaped_newlines): Only process trigraphs and | |
3486 | escaped newlines if !(buffer->from_stage3). | |
3487 | (_cpp_lex_token): Warn about missing newlines iff | |
3488 | !buffer->from_stage3. | |
3489 | ||
3490 | * cpplib.c (get__Pragma_string, destringize, | |
3491 | _cpp_do__Pragma): New functions. | |
3492 | (run_directive): Set output_line for _Pragma to avoid line | |
3493 | markers in output. Set from_stage3 and prevent macro expansion | |
3494 | for _Pragma and command-line options. Check buffer exhaustion. | |
3495 | (cpp_push_buffer): Don't check for stacked macro contexts, as | |
3496 | this is perfectly legitimate for _Pragma. Move the check to | |
3497 | stack_include_file instead. Set from_stage3 iff buffer is | |
3498 | preprocessed input. | |
3499 | ||
3500 | * cpplib.h (struct cpp_buffer): Make warned_cplusplus_comments | |
3501 | unsigned. New boolean from_stage3. | |
3502 | (struct spec_nodes): Add n__Pragma. | |
3503 | ||
3504 | * cppmacro.c (enter_macro_context): Flip sense of return value. | |
3505 | (_cpp_get_token): Handle _Pragma operator. | |
3506 | ||
dbdaea41 PE |
3507 | 2000-10-30 Phil Edwards <pme@sources.redhat.com> |
3508 | ||
3509 | * gcc.texi: The C++ standard isn't "draft" anymore. | |
3510 | ||
8a47978d MM |
3511 | 2000-10-30 Mark Mitchell <mark@codesourcery.com> |
3512 | ||
3513 | * cppmacro.c (builtin_macro): Use NT_VOID, not T_VOID. | |
3514 | ||
1641a823 NB |
3515 | 2000-10-29 Neil Booth <neilb@earthling.net> |
3516 | ||
3517 | * cpplib.c (skip_rest_of_line): Use _cpp_get_token. | |
3518 | ||
8c7b74b9 JM |
3519 | 2000-10-29 Joseph S. Myers <jsm28@cam.ac.uk> |
3520 | ||
526aba28 JM |
3521 | * toplev.c, flags.h, fold-const.c, real.c, rtl.c, |
3522 | fixinc/inclhack.def: Change comments mentioning C9X to refer to | |
3523 | C99 instead. | |
3524 | ||
8c7b74b9 JM |
3525 | * invoke.texi: Document that -V will only work for very similar |
3526 | versions of driver and compiler. | |
3527 | ||
44ed91a1 NB |
3528 | 2000-10-29 Neil Booth <neilb@earthling.net> |
3529 | ||
3530 | * cppmacro.c (_cpp_create_definition): Optimize the case of | |
a8a05998 | 3531 | a macro defined to itself. |
44ed91a1 | 3532 | |
3542203b NB |
3533 | 2000-10-29 Neil Booth <neilb@earthling.net> |
3534 | ||
3535 | * cpplex.c (save_comment): Don't store new lines in C++ comments. | |
3536 | ||
6f268adf MH |
3537 | 2000-10-29 Michael Hayes <mhayes@redhat.com> |
3538 | ||
3539 | * integrate.c (copy_insn_list): Copy the unchanging flag for calls. | |
3540 | ||
926c5678 GK |
3541 | 2000-10-28 Geoffrey Keating <geoffk@cygnus.com> |
3542 | ||
3543 | * cpphash.c (cpp_forall_identifiers): Add context variable | |
3544 | for callback routine. | |
3545 | * cppmain.c (dump_macro): Update to match cpp_forall_identifiers | |
3546 | change. | |
3547 | (main): Call cpp_forall_identifiers with null context. | |
3548 | * cpplib.h (cpp_forall_identifiers): Update prototype. | |
3549 | ||
3550 | * cppmain.c: Make `parse_in' and `print' static. | |
3551 | ||
69f4cc4b AM |
3552 | 2000-10-28 Alan Modra <alan@linuxcare.com.au> |
3553 | ||
3554 | * c-decl.c (finish_function): Clear c_function_name_declared_p. | |
3555 | ||
ce73761f RH |
3556 | 2000-10-28 Richard Henderson <rth@redhat.com> |
3557 | ||
3558 | * regrename.c (scan_rtx_address): Frob action, not class, | |
3559 | when trying to disable optimization. | |
3560 | ||
2c21b247 MM |
3561 | 2000-10-28 Mark Mitchell <mark@codesourcery.com> |
3562 | ||
3563 | * c-semantics.c (make_rtl_for_local_static): Don't clobber | |
3564 | DECL_ASSEMBLER_NAME. | |
3565 | ||
8763704d JM |
3566 | 2000-10-28 Joseph S. Myers <jsm28@cam.ac.uk> |
3567 | ||
3568 | * configure.in: Determine and substitute gcc_version_full. | |
3569 | * configure: Regenerate. | |
3570 | * gccbug.in: Use it to give full version. Don't allow | |
3571 | confidential PRs. | |
3572 | ||
85941a0a RH |
3573 | 2000-10-28 Richard Henderson <rth@redhat.com> |
3574 | ||
3575 | * recog.c (split_all_insns): Run cleanup_subreg_operands | |
3576 | after reload. | |
3577 | ||
3578 | * regrename.c (regrename_optimize): Verify that all registers of | |
3579 | a multiple register mode are available. | |
3580 | (scan_rtx_address): Accept the mode of the address; all callers | |
3581 | changed. | |
3582 | ||
3583 | * cpplib.c (run_directive): Fix prototype. | |
3584 | ||
69add2a8 BS |
3585 | 2000-10-28 Bernd Schmidt <bernds@redhat.co.uk> |
3586 | ||
3587 | * reload.c (find_reloads): Distinguish "wins" so that we know whether | |
3588 | a given operand won because of a matching constraint or not; then use | |
3589 | that information to compute goal_alternative_matched properly. | |
4c3a2649 BS |
3590 | * reload1.c (choose_reload_regs): Never set reload_override_in for an |
3591 | optional reload. | |
69add2a8 | 3592 | |
005f39ce BS |
3593 | * config/ia64/ia64.h (RTX_COSTS): A few more entries, and a more |
3594 | accurate value for MULT. | |
55d8cb78 BS |
3595 | * config/ia64/ia64.c (ia64_print_operand): Require probability to be |
3596 | 2% or > 98% before using static branch prediction bits. | |
005f39ce | 3597 | |
93c80368 NB |
3598 | 2000-10-28 Neil Booth <neilb@earthling.net> |
3599 | ||
3600 | New macro expander. | |
a8a05998 | 3601 | |
93c80368 NB |
3602 | * cpplib.c (struct answer): New. |
3603 | (struct if_stack): Use cpp_lexer_pos rather than line and col. | |
3604 | Rename cmacro mi_cmacro. | |
3605 | (struct directive, KANDR, STDC89, EXTENSION, COND, IF_COND, INCL, | |
3606 | IN_I): New directive and flags. | |
3607 | (skip_rest_of_line, check_eol, run_directive, glue_header_name, | |
3608 | parse_answer, parse_assertion, find_answer): New functions. | |
3609 | (parse_ifdef, detect_if_not_defined, validate_else): Remove. | |
3610 | (lex_macro_node): New function to replace parse_ifdef and | |
3611 | get_define_node. | |
3612 | ||
3613 | (_cpp_handle_directive): New function, combines _cpp_check_directive | |
3614 | and _cpp_check_linemarker. | |
3615 | ||
3616 | (do_define, do_undef, parse_include, do_include, do_import, | |
3617 | do_include_next, read_line_number, do_line, do_ident, do_pragma, | |
3618 | do_pragma_once, do_pragma_poison, do_pragma_dependency): | |
3619 | Update for new token getting interface. | |
3620 | ||
3621 | (do_ifdef, do_ifndef, do_if, do_else, do_endif, push_conditional) | |
3622 | : Update for new multiple-include optimisation technique. | |
3623 | (do_elif): Don't forget to invalidate controlling macros. | |
3624 | ||
3625 | (unwind_if_stack, cpp_defined, cpp_push_buffer, cpp_pop_buffer): Update. | |
3626 | (parse_assertion, parse_answer, find_answer, _cpp_test_assertion): | |
3627 | Functions to handle assertions with the new token interface. | |
3628 | (do_assert, do_unassert): Use them. | |
3629 | ||
3630 | (cpp_define, _cpp_define_builtin, cpp_undef, cpp_assert, cpp_unassert): | |
3631 | Use run_directive. | |
3632 | ||
3633 | (_cpp_init_stacks): Register directive names. Don't register special | |
3634 | nodes. | |
3635 | ||
3636 | * cpperror.c (print_containing_files, _cpp_begin_message): Update to | |
3637 | new position recording regime. | |
3638 | (cpp_ice, cpp_fatal, cpp_error, cpp_error_with_line, cpp_warning, | |
3639 | cpp_warning_with_line, cpp_pedwarn, cpp_pedwarn_with_line, | |
3640 | cpp_pedwarn_with_file_and_line): Update for _cpp_begin_message changes. | |
3641 | (cpp_type2name): Move to cpplex.c. | |
3642 | ||
3643 | * cppexp.c (parse_charconst): spec_nodes is no longer a pointer. | |
3644 | (parse_defined): Update to handle new multiple include optimisation | |
3645 | method. Remove poisoned identifier warning. | |
3646 | (parse_assertion, TYPE_NAME): Delete. | |
3647 | (lex): Update for multiple include optimisation, removal of | |
3648 | CPP_DEFINED, to use _cpp_test_assertion for assertions and | |
3649 | cpp_token_as_text. | |
3650 | (_cpp_parse_expr): Update for MI optimisation, and to use op_as_text. | |
3651 | (op_as_text): New function, to wrap cpp_token_as_text. | |
3652 | ||
3653 | * cppfiles.c (stack_include_file, _cpp_pop_file_buffer): | |
3654 | Update for MI optimisation. | |
3655 | (_cpp_execute_include): Take a token rather than 3 arguments. Fix | |
3656 | segfault on diagnostic. | |
3657 | (_cpp_compare_file_date): Take a token rather than 3 args. | |
3658 | (cpp_read_file): Work correctly for zero-length files. | |
3659 | ||
3660 | * cpphash.c (_cpp_init_macros, _cpp_cleanup_macros): Rename | |
3661 | _cpp_init_hashtable and _cpp_cleanup_hashtable. | |
3662 | (cpp_lookup): Place identifiers at front of identifier pool | |
3663 | for _cpp_lookup_with_hash. | |
3664 | (_cpp_lookup_with_hash): Require identifiers to be at the front of | |
3665 | the identifier pool. Commit the memory if not already in the | |
3666 | hash table. | |
3667 | ||
3668 | * cppinit.c (cpp_reader_init): Move cpp_init_completed test to top. | |
3669 | Initialise various members of cpp_reader, memory pools, and the | |
3670 | special nodes. | |
3671 | (cpp_printer_init): Delete. | |
3672 | (cpp_cleanup): Update. | |
3673 | (struct builtin, builtin_array, initialize_builtins): Update for new | |
3674 | hashnode definition and builtin handling. | |
3675 | (cpp_start_read, cpp_finish): Don't take or initialise a | |
3676 | printer. Update. | |
3677 | ||
3678 | * cpplib.h (cpp_printer, cpp_toklist, CPP_DEFINED, BOL, | |
3679 | PASTED, VAR_ARGS, BEG_OF_FILE, IN_DIRECTIVE, KNOWN_DIRECTIVE, | |
3680 | T_VOID, T_SPECLINE, T_DATE, T_FILE, T_BASE_FILE, T_INCLUDE_LEVEL, | |
3681 | T_TIME, T_STDC, T_OPERATOR, T_POISON, T_MACRO, T_ASSERTION): Delete. | |
3682 | (struct cpp_pool, struct cpp_macro, struct cpp_lexer_pos, | |
3683 | struct cpp_lookahead, CPP_DHASH, enum mi_state, enum mi_ind, | |
3684 | NO_EXPAND, VARARGS_FIRST, struct cpp_token_with_pos, | |
3685 | struct toklist, struct cpp_context, struct specnodes, | |
3686 | TOKEN_LOOKAHEAD, TOKEN_BUFFSIZE, NODE_OPERATOR, NODE_POISONED, | |
3687 | NODE_BUILTIN, NODE_DIAGNOSTIC, NT_VOID, NT_MACRO, NT_ASSERTION, | |
3688 | enum builtin_type, cpp_can_paste): New. | |
3689 | (struct cpp_token): Delete line and col members. | |
3690 | (struct cpp_buffer): New member output_lineno. | |
3691 | (struct lexer_state): Delete indented, in_lex_line, seen_dot. | |
3692 | Add va_args_ok, poisoned_ok, prevent_expansion, parsing_args. | |
3693 | (struct cpp_reader): New members lexer_pos, macro_pos, directive_pos, | |
3694 | ident_pool, temp_string_pool, macro_pool, argument_pool, string_pool, | |
3695 | base_context, context, directive, mi_state, mi_if_not_defined, | |
3696 | mi_lexed, mi_cmacro, mi_ind_cmacro, la_read, la_write, la_unused, | |
3697 | mlstring_pos, macro_buffer, macro_buffer_len. | |
3698 | Delete members mls_line, mls_column, token_list, potential_control_macro, | |
3699 | temp_tokens, temp_cap, temp_alloced, temp_used, first_directive_token, | |
3700 | context_cap, cur_context, no_expand_level, paste_level, contexts, args, | |
3701 | save_parameter_spellings, need_newline, . | |
3702 | Change type of date, time and spec_nodes members. | |
3703 | Change prototypes for include and ident callbacks. | |
3704 | (struct cpp_hashnode): Change type of name. Remove union members | |
3705 | expansion and code. Add members macro, operator and builtin. | |
3706 | ||
3707 | (cpp_token_len, cpp_token_as_text, cpp_spell_token, cpp_start_read, | |
3708 | cpp_finish, cpp_avoid_paste, cpp_get_token, cpp_get_line, | |
3709 | cpp_get_output_line, cpp_macro_definition, cpp_start_lookahead, | |
3710 | cpp_stop_lookahead): New prototypes. | |
3711 | (cpp_printer_init, cpp_dump_definition): Delete prototypes. | |
3712 | ||
3713 | (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, ufputs): | |
3714 | Move from cpphash.h. | |
3715 | ||
3716 | * cpphash.h (U_CHAR, U, ustrcmp, ustrncmp, ustrlen, uxstrdup, ustrchr, | |
3717 | ufputs): Move to cpplib.h. | |
3718 | (enum spell_type, struct token_spelling, _cpp_token_spellings, TOKEN_SPELL, | |
3719 | TOKEN_NAME, struct answer, FREE_ANSWER, KANDR, STDC89, EXTENSION, | |
3720 | COND, EXPAND, INCL, COMMENTS, IN_I, struct directive, directive_handler, | |
3721 | struct spec_nodes, _cpp_digraph_spellings, _cpp_free_temp_tokens, | |
3722 | _cpp_init_input_buffer, _cpp_grow_token_buffer, _cpp_init_toklist, | |
3723 | _cpp_clear_toklist, _cpp_expand_token_space, _cpp_expand_name_space, | |
3724 | _cpp_equiv_tokens, _cpp_equiv_toklists, _cpp_process_directive, | |
3725 | _cpp_run_directive, _cpp_get_line, _cpp_get_raw_token, _cpp_glue_header_name, | |
3726 | _cpp_can_paste, _cpp_check_directive, _cpp_check_linemarker, | |
3727 | _cpp_parse_assertion, _cpp_find_answer): Delete. | |
3728 | (VALID_SIGN, ALIGN, POOL_FRONT, POOL_LIMIT, POOL_BASE, POOL_SIZE, | |
3729 | POOL_USED, POOL_COMMIT, struct cpp_chunk, _cpp_lex_token, _cpp_init_pool, | |
3730 | _cpp_free_pool, _cpp_pool_reserve, _cpp_pool_alloc, _cpp_next_chunk, | |
3731 | _cpp_lock_pool, _cpp_unlock_pool, _cpp_test_assertion, | |
3732 | _cpp_handle_directive, DSC): New. | |
3733 | (struct include_file): New member defined. | |
3734 | ||
3735 | (DO_NOT_REREAD, _cpp_begin_message, _cpp_execute_include, | |
3736 | _cpp_compare_file_date): Update. | |
3737 | (_cpp_pop_context, _cpp_get_token, _cpp_free_lookaheads, _cpp_push_token): New. | |
3738 | (_cpp_init_macros, _cpp_cleanup_macros): Rename to _cpp_init_hashtable, | |
3739 | _cpp_cleanup_hashtable. | |
3740 | ||
3741 | * Makefile.in: Remove cppoutput.c. | |
a8a05998 | 3742 | |
93c80368 NB |
3743 | * cppoutput.c: Delete |
3744 | ||
3745 | * fixheader.c (read_scan_file): Update for new cpp_get_token | |
3746 | prototype. | |
3747 | (recognized_function): New argument LINE. | |
3748 | ||
3749 | * scan-decls.c (skip_to_closing_brace, scan_decls): Update for | |
3750 | new cpp_get_token prototype. | |
3751 | ||
3752 | * scan.h (recognized_function): Update prototype. | |
3753 | ||
3754 | * po/POTFILES.in: Remove cppoutput.c. | |
a8a05998 | 3755 | |
229a2e65 MM |
3756 | 2000-10-27 Mark Mitchell <mark@codesourcery.com> |
3757 | ||
3758 | * c-typeck.c (check_init_type_bitfields): Remove. | |
3759 | (constructor_incremental): Likewise. | |
3760 | (struct constructor_stack): Remove incremental bit. | |
3761 | (struct initializer_stack): Likewise. | |
3762 | (start_init): Don't play with constructor_incremental. | |
3763 | (finish_init): Likewise. | |
3764 | (really_start_incremental_init): Likewise. | |
3765 | (push_init_level): Likewise. | |
3766 | (pop_init_level): Likewise. | |
3767 | (output_init_level): Likewise. | |
3768 | (output_pending_init_elements): Likewise. | |
3769 | ||
63eb1269 MC |
3770 | 2000-10-21 Mike Coleman <mcoleman2@kc.rr.com> |
3771 | ||
3772 | * c-pragma.c (handle_pragma_pack): Initialize align to -1. | |
a8a05998 | 3773 | Improve error messages. Correct parsing of |
63eb1269 MC |
3774 | #pragma pack(pop [,id]). Do not check the user-supplied |
3775 | alignment if we're popping. | |
3776 | ||
3777 | * gcc.dg/pack-test-1.c: New test case. | |
3778 | * gcc.dg/pack-test-2.c: New test case. | |
3779 | * gcc.dg/pack-test-1.h: New file. | |
3780 | ||
ae2eceaa NB |
3781 | 2000-10-27 Neil Booth <neilb@earthling.net> |
3782 | ||
3783 | * cpp.texi: Update. | |
3784 | ||
04e149ab KC |
3785 | 2000-10-27 Kelley Cook <kelley.cook@home.com> |
3786 | ||
3787 | * invoke.texi: Document -mintel-syntax | |
3788 | ||
2b2a8f1f RH |
3789 | 2000-10-27 Richard Henderson <rth@redhat.com> |
3790 | ||
3791 | * invoke.texi: Document -frename-registers. Add it to -O3. | |
3792 | * toplev.c (rest_of_compilation): Run regrename before ifcvt2. | |
3793 | (enum dump_file_index, dump_file): Update order. | |
3794 | (main): Set flag_rename_registers at -O3. | |
3795 | ||
10c9f189 RH |
3796 | 2000-10-27 Richard Henderson <rth@redhat.com> |
3797 | ||
93c89ab3 RH |
3798 | * config/alpha/alpha.h (enum reg_class): Add PV_REG. |
3799 | (REG_CLASS_NAMES, REG_CLASS_CONTENTS, REGNO_REG_CLASS): Update. | |
3800 | (REG_CLASS_FROM_LETTER): Assign it to 'c'. | |
3801 | * config/alpha/alpha.md (call_osf_1): Use it. | |
3802 | (call_value_osf_1): Likewise. | |
3803 | ||
10c9f189 RH |
3804 | * config/ia64/ia64.c: Revert 10-23 patch. |
3805 | (ia64_hard_regno_rename_ok): New. | |
3806 | * config/ia64/ia64-protos.h: Declare it. | |
3807 | * config/ia64/ia64.h (HARD_REGNO_RENAME_OK): Use it. | |
3808 | ||
541f7d56 BS |
3809 | 2000-10-27 Bernd Schmidt <bernds@redhat.co.uk> |
3810 | Richard Henderson <rth@redhat.com> | |
3811 | ||
a8a05998 ZW |
3812 | * regrename.c: Rewrite to handle multi-register modes and |
3813 | cond_exec instructions. | |
3814 | * Makefile.in (regrename.o): Update dependancies. | |
3815 | * recog.h (struct operand_alternative): Add is_address. | |
3816 | * recog.c (preprocess_constraints) [case 'p']: Set it. | |
541f7d56 | 3817 | |
b8dad04b ZW |
3818 | 2000-10-27 Zack Weinberg <zack@wolery.stanford.edu> |
3819 | ||
3820 | * configure.in: If not NO_MINUS_C_MINUS_O, substitute | |
3821 | OUTPUT_OPTION with '-o $@'. Make zlibdir, zlibinc relative to | |
3822 | top level. Kill oldstyle_subdirs. Do not include | |
3823 | $srcdir/$s/Makefile.in in all_lang_makefiles, but do include | |
3824 | $outputs. Do not run configure.lang from config.status. | |
3825 | Rearrange warning-flag logic to correspond to what the | |
3826 | makefile wants. Put special vax stage1 options in | |
3827 | @stage1_flags@ not @stage1_warn_cflags@. Don't do anything | |
3828 | with extra_c_objs, extra_cxx_objs, or extra_cpp_objs. | |
3829 | (--enable-c-cpplib): AC_SUBST(maybe_cpplib) with "libcpp.a" if | |
3830 | switch is given, nothing otherwise. | |
3831 | * configure.lang: Delete. | |
3832 | ||
a8a05998 ZW |
3833 | * Makefile.in: Expunge all traces of extra_c_objs, |
3834 | extra_cxx_objs, and extra_cpp_objs. Set MAYBE_CPPLIB from | |
3835 | @maybe_cpplib@. Add $(MAYBE_CPPLIB) to C_AND_OBJC_OBJS. Set | |
3836 | warning options via a three level scheme so that -pedantic and | |
3837 | -Wtraditional are not used for non-C front ends: LOOSE_WARN, | |
3838 | STRICT1_WARN, STRICT2_WARN -> $(@D)-warn, GCC_WARN_CFLAGS -> | |
3839 | WARN_CFLAGS. Distinguish STAGE1_CFLAGS from BOOT_CFLAGS. | |
b8dad04b ZW |
3840 | Add -I$(@D) and -I$(srcdir)/$(@D) to INCLUDES. |
3841 | Set OUTPUT_OPTION, ZLIB, ZLIBINC. Do not set P, | |
a8a05998 ZW |
3842 | LANG_FLAGS_TO_PASS. Add OUTPUT_OPTION to all object-file |
3843 | generation rules. Wrap all rules that change the current | |
3844 | directory in parentheses; pmake doesn't spawn a new shell for | |
3845 | each command. Expunge all references to $(P). When one | |
3846 | command depends on another and they're run all at once, use && | |
3847 | to separate them, not ;. Add libgcc_s$(SHLIB_EXT) to files | |
3848 | deleted on make clean. Force OUTPUT_OPTION='-o $@' in stage2 | |
3849 | and beyond. | |
b8dad04b ZW |
3850 | |
3851 | * objc/Make-lang.in: Wrap all rules that change the current | |
3852 | directory in parentheses. Expunge all references to $(P). | |
3853 | When one command depends on another and they're run all at | |
3854 | once, use && to separate them, not ;. Add OUTPUT_OPTION to | |
3855 | all object-file generation rules. Delete obsolete variables. | |
3856 | * objc/Makefile.in: Delete. | |
3857 | ||
fadb729c JJ |
3858 | 2000-10-27 Jakub Jelinek <jakub@redhat.com> |
3859 | ||
3860 | * calls.c (expand_call): If sibcall_failure is set during pass 1, | |
3861 | clear tail_call_insns as well. | |
3862 | ||
254bb256 NC |
3863 | 2000-10-27 Nick Clifton <nickc@redhat.com> |
3864 | ||
3865 | * config/arm/arm-protos.h (arm_function_ok_for_sibcall): Add | |
3866 | prototype. | |
3867 | ||
8eb99146 RH |
3868 | 2000-10-26 Richard Henderson <rth@redhat.com> |
3869 | ||
b8dad04b | 3870 | * calls.c (expand_call): Supress sibcall if we have a |
8eb99146 RH |
3871 | BLKmode return in registers. |
3872 | ||
036099eb BS |
3873 | 2000-10-26 Bernd Schmidt <bernds@redhat.co.uk> |
3874 | ||
3875 | * ia64.h (PREFERRED_RELOAD_CLASS): Force floating point constants | |
3876 | into memory. | |
3877 | ||
13c6f0d5 NS |
3878 | 2000-10-26 Nathan Sidwell <nathan@codesourcery.com> |
3879 | ||
3880 | * tree.c (make_node, case 't'): Set alignment to that of | |
3881 | char_type_node. | |
3882 | * expr.c (move_by_pieces_ninsns): Abort if some length remains. | |
3883 | ||
be5aeb60 MM |
3884 | 2000-10-25 Mark Mitchell <mark@codesourcery.com> |
3885 | ||
3886 | * Makefile.in (site.exp): Define HAVE_LIBSTDCXX_V3. | |
3887 | * configure.in (enable-libstdcxx-v3): Arrange to have | |
3888 | HAVE_LIBSTDCXX_V3 substituted into the output files. | |
3889 | ||
78192b09 RH |
3890 | 2000-10-25 Richard Henderson <rth@redhat.com> |
3891 | ||
4667f705 RH |
3892 | * recog.c (constrain_operands): Initialize which_alternative |
3893 | before no alternatives early exit. | |
3894 | ||
78192b09 RH |
3895 | * cse.c (find_comparison_args): Check that we can reverse a |
3896 | comparison if needed before accepting the substitution. | |
3897 | ||
081b49f1 RH |
3898 | * reload.c (find_reloads_address_part): Kill rtx obstack hackery. |
3899 | ||
d4f1c1fa RH |
3900 | * simplify-rtx.c (simplify_relational_operation): Sign extend |
3901 | low words before sign extending to high words. | |
3902 | ||
bc27e96c NC |
3903 | 2000-10-25 Nick Clifton <nickc@redhat.com> |
3904 | ||
3905 | * config/mcore/mcore.c: Include config.h before system.h. | |
3906 | ||
3907 | 2000-10-25 Ray Essick <essick@ddna.labs.mot.com> | |
3908 | ||
3909 | * config/mcore/mcore.md (return): Force function epilogue to | |
3910 | always be generated to work around epilogue suppression bug in | |
3911 | M*Core backend. | |
3912 | ||
e0c9fbb7 JM |
3913 | 2000-10-25 Joseph S. Myers <jsm28@cam.ac.uk> |
3914 | ||
3915 | * c-decl.c (grokdeclarator): Move warning for qualified void | |
3916 | return types with -pedantic to when the function type is | |
3917 | constructed. At -W, warn in general for qualified function return | |
3918 | types, except for volatile void. | |
3919 | * invoke.texi: Document this new warning at -W. | |
3920 | ||
138e79e7 NB |
3921 | 2000-10-25 Neil Booth <neilb@earthling.net> |
3922 | ||
b8dad04b ZW |
3923 | * cpp.texi: Update with implementation-defined behavior and |
3924 | internal limits. | |
138e79e7 | 3925 | |
dc5041ab JJ |
3926 | 2000-10-25 Jakub Jelinek <jakub@redhat.com> |
3927 | ||
3928 | * stor-layout.c (layout_type): If TYPE_ALIAS_SET was already set on the | |
3929 | incomplete type force it into alias set 0. | |
3930 | ||
e004f2f7 JW |
3931 | Wed Oct 25 01:02:44 EDT 2000 John Wehle (john@feith.com) |
3932 | ||
3933 | * alias.c: Include basic-block.h. | |
3934 | (loop_p): New function. | |
3935 | (mark_constant_function): Use it. | |
3936 | * Makefile.in (alias.o): Update dependencies. | |
3937 | ||
15c09738 AH |
3938 | 2000-10-24 Aldy Hernandez <aldyh@redhat.com> |
3939 | ||
3940 | * config/mn10300/mn10300.c (secondary_reload_class): Treat pseudos | |
3941 | like memory. | |
b8dad04b | 3942 | |
a8ca7756 JW |
3943 | 2000-10-24 Jim Wilson <wilson@cygnus.com> |
3944 | ||
3945 | * expmed.c (store_bit_field): Move integer pun code down after | |
3946 | code that calls emit_move_insn for entire register move. | |
3947 | * stor-layout.c (compute_record_mode): Revert Mar 25, Aug 18, and | |
3948 | Oct 20 changes. Only store mode in TYPE_MODE if RECORD_TYPE. | |
b8dad04b | 3949 | |
c0fc376b RH |
3950 | 2000-10-24 Richard Henderson <rth@cygnus.com> |
3951 | ||
3952 | * rtlanal.c (rtx_unstable_p, rtx_varies_p): Don't consider pic | |
3953 | register stable if PIC_OFFSET_TABLE_REG_CALL_CLOBBERED. | |
3954 | ||
d7836e38 AH |
3955 | 2000-10-24 Aldy Hernandez <aldyh@redhat.com> |
3956 | ||
b8dad04b ZW |
3957 | * gcse.c (cprop_insn): do not propagate constants into jump_insn |
3958 | for machines with CC0 more than once. | |
d7836e38 | 3959 | |
5e2c51ba RH |
3960 | 2000-10-24 Richard Henderson <rth@cygnus.com>, Aldy <aldyh@cygnus.com> |
3961 | ||
b8dad04b ZW |
3962 | * config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS): Treat |
3963 | pseudos just like memory. | |
5e2c51ba | 3964 | |
c71e1201 AO |
3965 | 2000-10-24 Alexandre Oliva <aoliva@redhat.com> |
3966 | ||
3967 | * combine.c (distribute_notes): Discard REG_LIBCALL and REG_RETVAL | |
3968 | when deleting libcall sequence collapsed to a single instruction. | |
3969 | ||
5129d2ce AH |
3970 | 2000-10-24 Andrew Haley <aph@cygnus.co.uk> |
3971 | ||
3972 | * expr.c (do_store_flag): Don't crash if either side of a | |
3973 | comparison is error_mark_node. | |
3974 | ||
f85b5d65 JJ |
3975 | 2000-10-24 Jakub Jelinek <jakub@redhat.com> |
3976 | ||
3977 | * sibcall.c (purge_mem_unchanging_flag): New function. | |
3978 | (optimize_sibling_and_tail_recursive_calls): Call it. | |
3979 | ||
4adee315 PT |
3980 | 2000-10-24 Philipp Thomas <pthomas@suse.de> |
3981 | ||
3982 | * Makefile.in (check-po): New target for doing checks in the po | |
3983 | subdir if all languages configured. | |
3984 | (CHECK_TARGETS): Add @CHECK_PO@, replaced with check-po via | |
3985 | configure if NLS is enabled. | |
3986 | * configure.in: If NLS is enabled, substitute CHECK_PO by check-po, | |
3987 | otherwise leave empty. | |
3988 | * configure: Regenerate. | |
3989 | ||
fb204271 DN |
3990 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
3991 | ||
3992 | * i386.c (print_operand): Handle new 'A' formatting code. | |
3993 | 387 opcodes need suffixes even with -mintel-syntax. | |
3994 | Check for explicit size override (codes 'b', 'w' and 'k'). | |
3995 | (print_operand_address): Check if register prefix is needed when | |
3996 | emitting `ds' segment override. | |
3997 | * i386.h: Add comment about new 'A' formatting code. | |
3998 | * i386.md (jump and call patterns): Emit absolute references using %A. | |
3999 | ||
8a959ea5 RH |
4000 | 2000-10-23 Richard Henderson <rth@cygnus.com> |
4001 | ||
b8dad04b | 4002 | * config/ia64/ia64.c (ia64_expand_prologue): Mark extra |
8a959ea5 RH |
4003 | output registers as fixed. |
4004 | (ia64_function_epilogue): Undo output fixation. | |
4005 | ||
964686de RH |
4006 | 2000-10-23 Richard Henderson <rth@cygnus.com> |
4007 | ||
4008 | * config/alpha/alpha.md: Add names for all unnamed insns; use | |
4009 | define_insn_and_split in some obvious places. | |
4010 | (lda): Remove. | |
4011 | (zero_extendqihi2): Use an expander w/ nonimmediate_operand for BWX. | |
4012 | (zero_extendqisi2, zero_extendqidi2): Likewise. | |
4013 | (zero_extendhisi2, zero_extendhidi2): Likewise. | |
4014 | (abs splitters): Fix match_scratch operand number. | |
4015 | (bcc_reverse): Swap pc & label instead of non-canonical compare. | |
4016 | ||
18a3c539 JW |
4017 | 2000-10-23 Jim Wilson <wilson@cygnus.com> |
4018 | ||
4019 | * ia64.c (ia64_print_operand, case 'r'): Correct comment. Handle | |
4020 | CONST_INT. | |
4021 | * ia64.md (cmpsi_adjusted): Use %r3. | |
4022 | (cmpdi_adjusted): Likewise. | |
4023 | ||
57dd137f DN |
4024 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
4025 | ||
4026 | * config/i386/att.h (ASM_FILE_START): Define. | |
4027 | ||
d984704d DN |
4028 | 2000-10-23 Diego Novillo <dnovillo@cygnus.com> |
4029 | ||
4030 | * config/i386/linux.h (ASM_FILE_START): Define. | |
4031 | ||
261f21e7 DL |
4032 | Wed Oct 18 11:16:40 2000 Donald Lindsay <dlindsay@cygnus.com> |
4033 | ||
4034 | * gcc/configure.in: m68k-coff tm_file should not have libgloss.h, | |
4035 | since this (only) drags in a crt0.o reference that the .ld files | |
4036 | also introduce. | |
4037 | ||
96af667a GK |
4038 | 2000-10-23 Geoff Keating <geoffk@cygnus.com> |
4039 | ||
2af88768 GK |
4040 | * reload1.c (reload_reg_reaches_end_p): A RELOAD_OTHER can |
4041 | overwrite the value in a RELOAD_FOR_INPUT and other kinds of | |
4042 | reloads just like an RELOAD_FOR_OUTPUT would. | |
4043 | ||
96af667a GK |
4044 | * local-alloc.c (update_equiv_regs): Add an abort(). When |
4045 | deleting or moving insns, update reg_equiv[regno].init_insns. | |
4046 | ||
d252a515 MM |
4047 | 2000-10-23 Mark Mitchell <mark@codesourcery.com> |
4048 | ||
4049 | * c-tree.texi: Improve documentation for IF_STMTs and related | |
4050 | conditional statements. | |
4051 | ||
f9808f81 MM |
4052 | 2000-10-22 Mark Mitchell <mark@codesourcery.com> |
4053 | ||
4054 | * expr.c (do_preexpand_calls): Remove. | |
4055 | (same_from_p): Don't use CALL_EXPR_RTL. | |
4056 | (expand_expr): Don't call preexpand_calls, or use CALL_EXPR_RTL. | |
4057 | (preexpand_calls): Remove. | |
4058 | * tree.c (first_rtl_op): Remove CALL_EXPR case. | |
4059 | (unsave_expr_1): Likewise. | |
4060 | * tree.def (CALL_EXPR): Give it only two slots. | |
4061 | * tree.h (CALL_EXPR_RTL): Remove. | |
4062 | ||
ae4bd622 CC |
4063 | 2000-10-21 Chandrakala Chavva <cchavva@redhat.com> |
4064 | ||
4065 | * libgcc-std.ver (__addvsi3, __addvdi3, __subvsi3, __subvdi3, | |
b8dad04b ZW |
4066 | __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3): |
4067 | New functions. | |
ae4bd622 | 4068 | |
3e555c7d AO |
4069 | 2000-10-22 Alexandre Oliva <aoliva@redhat.com> |
4070 | ||
4071 | * calls.c (combine_pending_stack_adjustment_and_call): Don't | |
4072 | adjust stack when unadjusted_alignment ends up as zero. | |
4073 | ||
99bdaa68 JM |
4074 | 2000-10-22 Joseph S. Myers <jsm28@cam.ac.uk> |
4075 | ||
4076 | * fixinc/genfixes: Remove EGCS reference. | |
4077 | * install.texi: Remove EGCS reference. | |
4078 | * INSTALL: Regenerate. | |
4079 | ||
e36308b0 MM |
4080 | 2000-10-22 Mark Mitchell <mark@codesourcery.com> |
4081 | ||
4082 | * tree.h (TYPE_IS_SIZETYPE): Add more documentation. | |
4083 | ||
bf6eb15f JM |
4084 | 2000-10-21 Joseph S. Myers <jsm28@cam.ac.uk> |
4085 | ||
4086 | * diagnostic.c: Remove EGCS reference in comment. | |
4087 | ||
e62ff0c3 RK |
4088 | Sat Oct 21 08:24:25 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4089 | ||
4090 | * loop.c (strength_reduce): Fix error in last change. | |
4091 | ||
0ad7574f DE |
4092 | 2000-10-20 David Edelsohn <edelsohn@gnu.org> |
4093 | ||
4094 | * Makefile.in (SHLIB_NM_FLAGS): New. | |
4095 | (libgcc.mk): Pass it. | |
4096 | * mklibgcc.in (libgcc.map): Use it. | |
4097 | ||
4098 | * rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_LIBS, | |
4099 | SHLIB_MKMAP, SHLIB_MAPFILES, SHLIB_NM_FLAGS): New. | |
4100 | ||
8f54374e KG |
4101 | 2000-10-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4102 | ||
4103 | * mips.h (REG_CLASS_FROM_LETTER): Cast array arg to unsigned char. | |
4104 | ||
4105 | * sparc.c (load_pic_register): Delete unused varaible. | |
4106 | ||
4107 | * libgcc2.c (__addvsi3): Delete unused variable. | |
4108 | ||
4109 | * libgcc2.h (__absvsi2, __absvdi2, __addvsi3, __addvdi3, | |
4110 | __subvsi3, __subvdi3, __mulvsi3, __mulvdi3, __negvsi2, | |
4111 | __negvdi2): Prototype. | |
4112 | ||
4113 | * ssa.c (apply_delayed_renames): Avoid undefined operation. | |
4114 | ||
4115 | * toplev.c (display_target_options): Make static to match | |
4116 | prototype. Delete empty declaration. | |
4117 | ||
3f568531 TT |
4118 | 2000-10-20 Tom Tromey <tromey@cygnus.com> |
4119 | ||
4120 | * cppspec.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT. | |
4121 | * gcc.c (DEFAULT_WORD_SWITCH_TAKES_ARG): Added -MF and -MT. | |
4122 | ||
235783d1 RK |
4123 | Fri Oct 20 17:05:49 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4124 | ||
4125 | * expr.c (expand_expr, case SAVE_EXPR): Set RTX_UNCHANGING_P on | |
4126 | returned MEM. | |
4127 | (expand_expr_unaligned, case ARRAY_REF): Check that index is | |
4128 | a constant before comparing it; use tree_low_cst. | |
4129 | * tree.c (save_expr): Set TREE_READONLY. | |
4130 | (substitute_expr): Return inside of NON_LVALUE_EXPR. | |
4131 | (build, build1): Set TREE_READONLY if all operands are. | |
4132 | (build_index_type): If upper bound is a negative number, lower | |
4133 | bound is zero and sizetype is unsigned, use upper bound of one and | |
4134 | lower of zero. | |
4135 | ||
2e44948d DE |
4136 | 2000-10-20 David Edelsohn <edelsohn@gnu.org> |
4137 | ||
4138 | * gcc.c (process_command, main): Use "because" instead of | |
4139 | "since" in error messages. | |
4140 | ||
44475138 RK |
4141 | Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4142 | ||
382110c0 RK |
4143 | * stor-layout.c (compute_record_mode): Use tree_low_cst. |
4144 | Don't use mode of field for record unless sizes are the same. | |
4145 | (layout_type, case ARRAY_TYPE): Remove special bounds handling | |
4146 | previously added for Ada; also change to using host_integerp | |
4147 | and tree_low_cst. | |
4148 | ||
1dcdb0df RK |
4149 | * loop.c (strength_reduce): Show when new register made for |
4150 | giv is known to be a pointer and its aligment if so and known. | |
4151 | (loop_dump_aux): Show VERBOSE parameter unused. | |
4152 | ||
ebb13e7e RK |
4153 | * gcse.c (set_hash_table_size): Now unsigned. |
4154 | * sdbout.c (template_name_p): Add "const" to avoid warnings. | |
4155 | (sdbout_record_type_name, plain_type_1, sdbout_symbol): Likewise. | |
4156 | (sdbout_one_type, sdbout_parms, sdbout_reg_parms): Likewise. | |
4157 | (sdbout_end_epilogue): Remove variable NAME. | |
4158 | * system.h (getopt): Add default definition. | |
4159 | * config/alpha/alpha.c (print_operand): Don't continue processing | |
4160 | after issuing error. | |
4161 | (summarize_insn): Avoid use of UL in constant. | |
4162 | ||
1468899d RK |
4163 | * function.c (locate_and_pad_parm): Use host_integerp and tree_low_cst. |
4164 | ||
44475138 RK |
4165 | * fold-const.c (force_fit_type): Unsigned values can overflow |
4166 | if they are sizetype. | |
4167 | (int_const_binop): Don't use cache if overflows. | |
391db8c9 | 4168 | |
23ccfa6d RH |
4169 | 2000-10-20 Richard Henderson <rth@cygnus.com> |
4170 | ||
4171 | * function.c (locate_and_pad_parm): Zero alignment_pad. | |
4172 | ||
4ca0f257 RH |
4173 | * regrename.c (rr_replace_reg): Rewrite to use recog_data to |
4174 | perform substitutions, and apply_change_group to see if it worked. | |
4175 | ||
0345195a RK |
4176 | Fri Oct 20 13:33:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
4177 | ||
d57e164f RK |
4178 | * dwarf2out.c (add_bound_info): Also ignore COND_EXPR. |
4179 | ||
0345195a RK |
4180 | * combine.c (struct undo): Change int to unsigned int. |
4181 | (do_SUBST_INT): Args are unsigned int. | |
4182 | (make_extraction, force_to_mode): Use proper type when forming mask. | |
4183 | (make_field_assignment): Likewise. | |
4184 | ||
2f74f7e9 JM |
4185 | 2000-10-20 Joseph S. Myers <jsm28@cam.ac.uk> |
4186 | ||
4187 | * c-common.c (check_format_info_recurse): Extract string constant | |
4188 | initializers from non-volatile constant arrays and check them as | |
4189 | formats. | |
4190 | * c-typeck.c (decl_constant_value): Don't check pedantic or check | |
4191 | for DECL_MODE (decl) != BLKmode. | |
4192 | (decl_constant_value_for_broken_optimization): New function which | |
4193 | includes these checks. | |
4194 | (default_conversion, convert_for_assignment, digest_init): Use | |
4195 | decl_constant_value_for_broken_optimization instead of | |
4196 | decl_constant_value. | |
4197 | ||
971774bb MM |
4198 | 2000-10-20 Mark Mitchell <mark@codesourcery.com> |
4199 | ||
4200 | * tree.h (DECL_ALIGN_UNIT): New macro. | |
4201 | ||
afee2a52 MM |
4202 | 2000-10-14 Marek Michalkiewicz <marekm@linux.org.pl> |
4203 | ||
4204 | * config/avr/avr-protos.h (avr_output_bld): New. | |
4205 | (out_shift_with_cnt): Add t_len argument. | |
4206 | * config/avr/avr.c (avr_num_arg_regs): Remove -mpack-args. | |
4207 | (output_movqi, output_movhi, output_movsisf): Optimize loading | |
4208 | any constant with exactly one bit set to NO_LD_REGS. | |
4209 | (out_shift_with_cnt): Optimize output code for size or speed, | |
4210 | depending on optimize_size. Handle small shift counts as well | |
4211 | (if not hand-optimized in ?sh??i3_out). Shifts can be done | |
4212 | with or without a scratch register, with help of __tmp_reg__ | |
4213 | or __zero_reg__ if necessary. Add T_LEN argument to pass the | |
4214 | length of TEMPLATE in words, return total insn length in *LEN. | |
4215 | (ashlqi3_out, ashrqi3_out, lshrqi3_out): Change all calls to | |
4216 | out_shift_with_cnt to work with the above change. | |
4217 | (ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, lshrhi3_out, | |
4218 | lshrsi3_out): Likewise. Optimize more known shift count cases. | |
4219 | Remove cases already well optimized in out_shift_with_cnt. | |
4220 | (avr_output_bld): New function. | |
4221 | * config/avr/avr.h (MASK_PACK_ARGS, TARGET_PACK_ARGS): Remove. | |
4222 | (TARGET_SWITCHES): Remove -mpack-args backward compatibility. | |
4223 | * config/avr/avr.md (*reload_inqi, *reload_inhi, *reload_insi): | |
4224 | Add reload_completed to insn condition - only for peepholes. | |
4225 | (ashlqi3, ashrqi3, lshrqi3): Correct insn length for shift counts | |
4226 | in a register or memory. | |
4227 | (ashlhi3, ashlsi3, ashrhi3, ashrsi3, lshrhi3, lshrsi3): Likewise. | |
4228 | Do not require a scratch register. | |
4229 | (*ashlhi3_const, *ashlsi3_const, *ashrhi3_const, *ashrsi3_const, | |
4230 | *lshrhi3_const, *lshrsi3_const): New insns and matching peepholes. | |
4231 | Optimize shifts by known count using a scratch register, but only | |
4232 | if one is still available after register allocation. | |
4233 | ||
831f9339 | 4234 | 2000-10-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
b8dad04b | 4235 | |
831f9339 DA |
4236 | * t-vax: New file. Don't build modules from libgcc1.c. |
4237 | ||
bf6d9fd7 JW |
4238 | Fri Oct 20 00:57:00 EDT 2000 John Wehle (john@feith.com) |
4239 | ||
4240 | * alias.c: (mark_constant_function): Don't check pure functions. | |
4241 | Initialize and end alias analysis. | |
4242 | (nonlocal_mentioned_p): Rename from nonlocal_reference_p. | |
4243 | Don't make a special exception for recursion. Handle | |
4244 | UNSPEC_VOLATILE. Don't assume ASM_OPERANDS is non-local | |
4245 | unless it's volatile. | |
4246 | ||
4247 | * local-alloc.c (equivalence): New structure. | |
4248 | (reg_equiv): Define. | |
4249 | (contains_replace_regs): Remove array and use | |
4250 | field in reg_equiv. | |
4251 | (memref_referenced_p): Likewise. | |
4252 | (no_equiv): Likewise. | |
4253 | (update_equiv_regs): Likewise. | |
4254 | ||
4255 | (equiv_init_varies_p, | |
4256 | equiv_init_movable_p): New functions. | |
4257 | (update_equiv_regs): Use them. Use rtx_varies_p | |
4258 | instead of function_invariant_p. Process insns | |
4259 | from end to beginning. Allow a REG_EQUIV insn | |
4260 | within the same loop as a use to be moved, also | |
4261 | allow it to be moved out of a loop. Update | |
4262 | REG_DEAD notes when substituting into an insn. | |
4263 | ||
ef375129 JW |
4264 | 2000-10-19 Jim Wilson <wilson@cygnus.com> |
4265 | ||
f4fce7ed JW |
4266 | * c-decl.c (start_decl): Check for error_mark_node type before using |
4267 | COMPLETE_TYPE_P. | |
4268 | (finish_decl): Likewise. Don't give an error if decl type is | |
4269 | already error_mark_node. | |
4270 | ||
ef375129 JW |
4271 | * haifa-sched.c (compute_trg_info): Add explanatory comments. |
4272 | New local update_blocks. Use update_blocks to remove duplicates | |
4273 | when computing update blocks. Check for bblst_table overflow. | |
4274 | (schedule_block): Add explanatory comment. Reduce bblst_size by | |
4275 | factor of 2. | |
4276 | * config/ia64/ia64.md (movdi_symbolic): Document loss of REG_LABEL | |
4277 | notes. | |
b8dad04b | 4278 | |
3cf37281 CC |
4279 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
4280 | ||
4281 | * libgcc2.c (_mulvsi3): Change variables u and v to a and b. | |
4282 | ||
e6b4d09d CC |
4283 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
4284 | ||
4285 | * expmed.c: Minor corrections in comments. | |
4286 | * invoke.texi: Added desciption for the new option -ftrapv. | |
4287 | ||
3d2adde6 CC |
4288 | 2000-10-19 Chandrakala Chavva <cchavva@redhat.com> |
4289 | ||
4290 | * libgcc2.c: Added the missing #endif. | |
4291 | ||
1aa9fd24 JH |
4292 | Thu Oct 19 14:25:11 MET DST 2000 Jan Hubicka <jh@suse.cz> |
4293 | ||
4294 | * i386.h (CONST_OK_FOR_LETTER): Re-add 'N'; document. | |
4295 | ||
91ce572a CC |
4296 | 2000-10-18 Chandrakala Chavva <cchavva@redhat.com> |
4297 | ||
b8dad04b ZW |
4298 | * expmed.c (expand_mult): Don't do synth_mult optimization for -ftrapv. |
4299 | Use smulv_optab for -ftrapv. | |
4300 | (expand_mult_highpart): Use unsigned multiply. | |
4301 | (expand_divmod): Special-case division by -1. | |
4302 | For EXACT_DIV_EXPR, do right shift first, then the multiply. | |
4303 | For complex divide, use abs with unsigned result. | |
4304 | * expr.c (force_operand): Use unsigned multiply. | |
4305 | (expand_expr): Use overflow-trapping optabs for signed types if | |
4306 | flag_trapv. | |
4307 | If flag_trapv, don't generate a recursive call with EXPAND_SUM | |
4308 | if the type is signed and the original call wasn't EXPAND_SUM or | |
4309 | EXPAND_INITIALIZER. | |
4310 | * expr.h (addv_optab, subv_optab, smulv_optab, sdivv_optab): Declare. | |
4311 | (negv_optab, absv_optab): Declare. | |
4312 | * flags.h (flag_trapv): Declare. | |
4313 | * genopinit.c (optabs): Add entries for addv_optab, subv_optab, | |
4314 | smulv_optab, sdivv_optab, negv_optab and absv_optab. | |
91ce572a | 4315 | (gen_insn): Interpret '$P' as requiring an integer mode, |
b8dad04b ZW |
4316 | including partial integer modes. |
4317 | * loop.c (emit_iv_add_mult): Use unsigned expand_mult_add. | |
4318 | (product_cheap_p): Use unsigned expand_mult. | |
4319 | * optabs.c (addv_optab, subv_optab, smulv_optab, sdivv_optab): Define. | |
4320 | (negv_optab, absv_optab): Define. | |
4321 | (expand_binop): Use overflow-trapping optabs for signed types if | |
4322 | flag_trapv. | |
4323 | Handle negv_optab libe neg_optab. | |
4324 | (expand_abs): Take result_unsignedp argument instead of unsignedp one. | |
4325 | Use overflow-trapping optabs for signed result if flag_trapv. | |
4326 | (expand_complex_abs): Use overflow-trapping optabs for signed types if | |
4327 | flag_trapv. | |
4328 | Don't open-code complex absolute-value operation for flag_trapv. | |
4329 | (init_optabs): Initialize addv_optab, subv_optab, smulv_optab, | |
4330 | sdivv_optab, negv_optab and absv_optab. | |
4331 | * toplev.c (flag_trapv): Define. | |
4332 | (lang_independent_options f_options): Include flag_trapv. | |
4333 | * tree.h (TYPE_TRAP_SIGNED): Define. | |
4334 | * libgcc2.c (__addvsi3, __addvdi3, __subvsi3,__subvsi3, __subvdi3, | |
4335 | __mulvsi3, __negvsi2, __negvdi2, __absvsi2, __absvdi2, __mulvdi3): | |
4336 | New functions. | |
4337 | * Makefile.in: add _absvsi2 _absvdi2 _addvsi3 _addvdi3 _subvsi3 | |
4338 | _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2. | |
91ce572a | 4339 | |
4c2c5712 GK |
4340 | 2000-10-18 Geoffrey Keating <geoffk@cygnus.com> |
4341 | David V. Henkel-Wallace <gumby@cygnus.com> | |
4342 | ||
4343 | * config/i386/t-netware: Bring in from the Red Hat tree. | |
4344 | * config/i386/netware.h: Likewise. | |
4345 | * config/netware.h: Likewise. | |
4346 | * config/rs6000/netware.h: Delete. | |
4347 | * configure.in: Add i[34567]86-*-netware. | |
4348 | * configure: Hand-edit to match configure.in change. | |
4349 | ||
6bcedb4e MM |
4350 | 2000-10-18 Mark Mitchell <mark@codesourcery.com> |
4351 | ||
4352 | * c-common.h (flag_no_builtin): Declare. | |
4353 | (flag_no_nonansi_builtin): Likewise. | |
4354 | (c_common_nodes_and_builtins): Change prototype. | |
4355 | * c-common.c (flag_no_builtin): New variable. | |
4356 | (flag_no_nonansi_builtin): Likewise. | |
4357 | (c_common_nodes_and_builtins): Remove parameters. Adjust | |
4358 | accordingly. | |
4359 | * c-decl.c (flag_no_builtin): Remove. | |
4360 | (flag_no_nonansi_builtin): Likewise. | |
4361 | (init_decl_processing): Adjust call to | |
4362 | c_common_nodes_and_builtins. | |
b8dad04b | 4363 | |
989b26a7 ME |
4364 | 2000-10-18 Marc Espie <espie@openbsd.org> |
4365 | ||
4366 | * tm.texi (LIBGCC_SPEC): Synch with reality. | |
4367 | ||
81cf47b2 JM |
4368 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4369 | ||
4370 | * c-common.c (check_format_types): Check for writing through a | |
4371 | NULL pointer argument. | |
4372 | ||
27c35f4b HPN |
4373 | 2000-10-18 Hans-Peter Nilsson <hp@axis.com> |
4374 | ||
4375 | * tm.texi (Exception Region Output): Document | |
4376 | DWARF_CIE_DATA_ALIGNMENT. | |
4377 | * dwarf2out.c (DWARF_CIE_DATA_ALIGNMENT): Wrap definition in | |
4378 | #ifndef. | |
4379 | [ENABLE_CHECKING] (reg_save): Abort if offset is not a multiple of | |
4380 | DWARF_CIE_DATA_ALIGNMENT. | |
4381 | ||
4a7da9b5 MH |
4382 | 2000-10-18 Michael Hayes <mhayes@cygnus.com> |
4383 | ||
4384 | * basic-block.h (struct loop): Delete fields pre_header_root | |
4385 | and pre_header_trace and replace with pre_header_edges | |
4386 | and num_pre_header_edges. | |
4387 | * flow.c (flow_loop_dump): Dump pre_header_edges. | |
4388 | (flow_loops_free): Free pre_header_edges. | |
4389 | (flow_loop_pre_header_scan): Calculate pre_header_edges. | |
4390 | ||
42c10750 GP |
4391 | 2000-10-18 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
4392 | ||
4393 | * contrib.texi: Update references to steering committee members | |
4394 | and Jeff Law's entry. | |
4395 | ||
ade7d3cc JM |
4396 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4397 | ||
4398 | * c-common.c (CPLUSPLUS_STD_VER, C_STD_VER, C_STD_NAME): Define. | |
4399 | (maybe_read_dollar_number, check_format_info_main): Use them for | |
4400 | pedantic warning messages. | |
4401 | ||
c5251260 JM |
4402 | 2000-10-18 Joseph S. Myers <jsm28@cam.ac.uk> |
4403 | ||
4404 | * c-common.c (check_format_info_main): Minor cleanup: move | |
4405 | variables into inner scopes; initialize declarations where | |
4406 | appropriate; don't hardcode "scanf" name on warning for zero | |
4407 | width. | |
4408 | ||
67673f5c MM |
4409 | 2000-10-17 Mark Mitchell <mark@codesourcery.com> |
4410 | ||
4411 | * c-common.c (back_end_hook): New variable. | |
4412 | * c-common.h (back_end_hook): Declare it. | |
4413 | * c-lang.c (finish_file): Use it. | |
4414 | ||
4415 | * emit-rtl.c (init_emit_once): Initialize the const_int_htab | |
4416 | earlier. | |
b8dad04b | 4417 | |
1aa9fd24 | 4418 | 2000-10-18 Jan Hubicka <jh@suse.cz> |
265dab10 | 4419 | |
b8dad04b ZW |
4420 | * i386.c (ix86_comparison_operator, put_condition_code, |
4421 | ix86_match_ccmode, ix86_cc_mode): Handle CCRCmode. | |
4422 | (ix86_expand_strlensi_unroll_1): Use CCRCmode. | |
4423 | * i386.h (EXTRA_CC_MODES): Add CCRCmode. | |
4424 | * i386.md (adddi and negdi splitter): Use CCRCmode. | |
4425 | (add?i_3, add?i_4, add?i_5): Use CCRCmode; swap operands | |
4426 | (subsi3_carry): add '*' | |
4427 | (addsi3_carry_rc, subsi3_carry_rc, x86_movsicc_0_m1_rc): New. | |
4428 | (cmp to add peep2): Use CCRCmode; swap operands. | |
265dab10 | 4429 | |
b054460b KH |
4430 | 2000-10-18 Kazu Hirata <kazu@hxi.com> |
4431 | ||
8682223f KH |
4432 | * h8300.c: Fix a comment typo. |
4433 | (round_frame_size): New. | |
4434 | (compute_saved_regs): Likewise. | |
4435 | (push): Likewise. | |
4436 | (pop): Likewise. | |
4437 | (push_order): Remove. | |
4438 | (pop_order): Likewise. | |
4439 | (function_prologue): Rearrange code for readability. | |
4440 | (function_epilogue): Likewise. | |
4441 | ||
b054460b KH |
4442 | * config/h8300/h8300.md: Remove an unnecessary sign_extend |
4443 | expander that is used when not optimizing. Output a tab after | |
4444 | each assembly insns. | |
4445 | ||
f27e6bb2 KH |
4446 | * reorg.c: Fix formatting. |
4447 | ||
19ca869b JR |
4448 | 2000-10-17 Joern Rennecke <amylaar@redhat.co.uk> |
4449 | ||
4450 | * reload1.c (move2add_note_store): Check for simple | |
4451 | auto-inc in destination. | |
4452 | ||
2ddb1ca1 MC |
4453 | 2000-10-17 Michael Chastain <chastain@redhat.com> |
4454 | ||
4455 | * config/i386/i386-aout.h: define INT_ASM_OP. | |
4456 | ||
11881f37 AM |
4457 | Tue Oct 17 20:11:08 2000 Alan Modra <alan@linuxcare.com.au> |
4458 | ||
4459 | * pa.c (print_operand): Handle case 'c' for .vtable_inherit | |
4460 | ||
33e39e38 MB |
4461 | Tue Oct 17 20:05:51 2000 Martin Buchholz <martin@xemacs.org> |
4462 | ||
4463 | * i370.md: Fix spelling typo. | |
4464 | ||
832ea3b3 FS |
4465 | 2000-10-17 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
4466 | ||
4467 | * function.c (locate_and_pad_parm): Don't align stack unconditionally. | |
2b7fb034 | 4468 | Fixes execute/20001017-1.c on powerpc-linux-gnu. |
832ea3b3 FS |
4469 | |
4470 | * expr.c (store_constructor): Apply MEM_ALIAS_SET to MEMs only. | |
2b7fb034 | 4471 | * rs6000/rs6000.c (rs6000_hash_constant): Use X0INT to access a |
832ea3b3 FS |
4472 | LABEL_REF. |
4473 | ||
4474 | * rs6000/rs6000.h (NO_DOLLAR_IN_LABEL, DOLLARS_IN_IDENTIFIERS, | |
4475 | ENCODE_SECTION_INFO, ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Move from | |
4476 | here... | |
4477 | * rs6000/aix.h: ...to here. | |
4478 | * rs6000/linux.h (ASM_APP_ON, ASM_APP_OFF): Define to Linux-style. | |
4479 | ||
4c646291 JJ |
4480 | 2000-10-17 Jakub Jelinek <jakub@redhat.com> |
4481 | ||
4482 | * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Reload gp if needed. | |
4483 | ||
4484 | * config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Always use call, make | |
4485 | sure linker can relax even the delay slot mov %g1,%o7, fix output | |
4486 | formating. | |
4487 | ||
07e0fe3d KH |
4488 | 2000-10-17 Kazu Hirata <kazu@hxi.com> |
4489 | ||
4490 | * config/h8300/h8300.md: Remove an unnecessary zero_extend | |
4491 | expander that is used when not optimizing. Output a tab after | |
4492 | each assembly insns. | |
4493 | ||
10501d8f CC |
4494 | 2000-10-17 Chandrakala Chavva <cchavva@redhat.com> |
4495 | ||
4496 | * gcc.c: New options --target-help. | |
4497 | (process_command): Added code to parse this new option. | |
4498 | * toplev.c (display_target_options): New function to support the | |
4499 | above new option. | |
4500 | * cppinit.c (new_pending_directive) : New option OPT_target__help. | |
4501 | (cpp_handle_option): Support this new option. | |
4502 | * invoke.texi: Added notes about --target-help option. | |
b8dad04b | 4503 | |
c330e9c1 | 4504 | 2000-10-17 Graham Stott <grahams@redhat.com> |
b8dad04b | 4505 | |
c330e9c1 GS |
4506 | * config/i386/i386.md (testqi_1): Add missing operand prefix |
4507 | for operand 0. | |
4508 | * config/i386/i386-protos.h: Add missing prototype. | |
b8dad04b | 4509 | |
69ac4831 DN |
4510 | 2000-10-17 Diego Novillo <dnovillo@cygnus.com> |
4511 | ||
4512 | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Symbol | |
4513 | _GLOBAL_OFFSET_TABLE should not have a $ prefix when | |
4514 | using -mintel-syntax. | |
4515 | ||
b691cb00 JM |
4516 | 2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk> |
4517 | ||
4518 | * c-common.c (FMT_FLAG_DOLLAR_MULTIPLE): Define. | |
4519 | (format_types): Use it for printf. | |
4520 | (maybe_read_dollar_number): Add parameter for the kind of format | |
4521 | involved. Warn for multiple use for arguments if this is | |
4522 | inappropriate for the kind of format involved. | |
4523 | (check_format_info_main): Update calls to maybe_read_dollar_number. | |
4524 | ||
948eab23 DA |
4525 | 2000-10-17 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
4526 | ||
4527 | * inclhack.def (hpux_maxint): Also apply fix to values.h. | |
4528 | * fixincl.x: Rebuilt. | |
4529 | ||
1651ab85 AO |
4530 | 2000-10-17 Alexandre Oliva <aoliva@redhat.com> |
4531 | ||
4532 | * genrecog.c (write_switch): Return the first condition that needs a | |
4533 | label. | |
4534 | ||
2683ed8d BS |
4535 | 2000-10-17 Bernd Schmidt <bernds@redhat.co.uk> |
4536 | ||
4537 | * c-tree.h (warn_sequence_point): Move declaration to... | |
4538 | * c-common.h (warn_sequence_point): ... here. | |
4539 | * c-decl.c (warn_sequence_point): Move definition to... | |
4540 | * c-common.c (warn_sequence_point): ... here. | |
4541 | (struct reverse_tree): New. | |
4542 | (reverse_list, reverse_max_depth): New static variables. | |
4543 | (build_reverse_tree, common_ancestor, modify_ok | |
4544 | verify_sequence_points): New functions. | |
4545 | (c_expand_expr_stmt): Call verify_sequence_points if -Wsequence-point. | |
4546 | * c-typeck.c (check_modify_expr): Delete. | |
4547 | (build_modify_expr): Don't call it. | |
4548 | ||
74ff4629 JM |
4549 | 2000-10-17 Joseph S. Myers <jsm28@cam.ac.uk> |
4550 | ||
4551 | * c-common.h (warn_missing_format_attribute): New variable. | |
4552 | * c-decl.c (warn_missing_format_attribute): New variable. | |
4553 | (c_decode_option): Decode -Wmissing-format-attribute and | |
4554 | -Wno-missing-format-attribute. | |
4555 | * c-common.c (check_function_format): If | |
4556 | -Wmissing-format-attribute, give a warning where a vprintf or | |
4557 | vscanf function is called by a function without its own printf or | |
4558 | scanf attribute. | |
4559 | * toplev.c (documented_lang_options): Add | |
4560 | -Wmissing-format-attribute. | |
4561 | * invoke.texi: Document -Wmissing-format-attribute. | |
4562 | ||
1d3b0e2c ME |
4563 | 2000-10-17 Marc Espie <espie@openbsd.org> |
4564 | ||
4565 | * invoke.texi (-shared): Insist on requiring code generation flags | |
4566 | to be used along with -shared, and document the subtle failure that | |
4567 | may occur otherwise. | |
4568 | ||
1c217171 DA |
4569 | 2000-10-16 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
4570 | ||
4571 | * pa.md (return_internal): Move `use' after `return'. | |
4572 | ||
11f3dc89 TP |
4573 | 2000-10-16 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> |
4574 | ||
4575 | * machmode.def: Correct comment. | |
4576 | ||
0952f89b RB |
4577 | 2000-10-16 Rodney Brown <RodneyBrown@mynd.com> |
4578 | ||
47c10e9b RB |
4579 | * print-rtl.c (print_rtx_head): Constify. |
4580 | * rtl.h (print_rtx_head): Similarly. | |
4581 | ||
0952f89b RB |
4582 | * config/pa/pa/pa-protos.h (output_64bit_and, output_64bit_ior): |
4583 | Constify char * return value. | |
4584 | * config/pa/pa/pa.c | |
4585 | (output_64bit_and, output_64bit_ior): Constify char * return value. | |
4586 | (pa_can_combine_p): Make static. | |
4587 | (function_arg): Decorate unused `named' argument. Fix comment typo. | |
4588 | (function_arg_partial_nregs): Decorate unused `named' argument. | |
4589 | ||
6d2e1454 JM |
4590 | 2000-10-16 Joseph S. Myers <jsm28@cam.ac.uk> |
4591 | ||
4592 | * c-common.c (format_check_results): New structure. | |
4593 | (finish_dollar_format_checking): Adjust to take a | |
4594 | format_check_results * parameter. | |
4595 | (check_format_info, check_format_info_recurse, | |
4596 | check_format_info_main): Split check_format_info into three | |
4597 | functions, the main checking going in check_format_info_main. | |
4598 | Recurse when any reduction of the format string argument towards a | |
4599 | string literal is done; go down both branches of a conditional | |
4600 | expression. Don't warn for extra format arguments or empty format | |
4601 | strings if they only occur in some branches of a conditional | |
4602 | expression. | |
4603 | ||
4d231df7 KH |
4604 | 2000-10-16 Kazu Hirata <kazu@hxi.com> |
4605 | ||
f2a9645f | 4606 | * config/h8300/h8300.c: Remove obstack. Include ggc.h. |
4d231df7 | 4607 | |
55143861 JJ |
4608 | 2000-10-16 Jakub Jelinek <jakub@redhat.com> |
4609 | ||
4610 | * rtlanal.c (may_trap_p): Check operand modes of COMPARE. | |
4611 | ||
406df25c DN |
4612 | 2000-10-15 Diego Novillo <dnovillo@cygnus.com> |
4613 | ||
4614 | * i386.md (*movsi_or): Switch operand order for intel syntax. | |
4615 | ||
e8beb821 JM |
4616 | 2000-10-14 Joseph S. Myers <jsm28@cam.ac.uk> |
4617 | ||
2f6256e7 JM |
4618 | * PROBLEMS: Remove. |
4619 | ||
e8beb821 JM |
4620 | * gcc.texi (Contributing): Update. |
4621 | ||
c1f9de5a DN |
4622 | 2000-10-13 Diego Novillo <dnovillo@cygnus.com> |
4623 | ||
4624 | * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Output final jump using | |
4625 | appropriate assembler dialect. | |
4626 | ||
f58e0b0c AO |
4627 | 2000-10-13 Alexandre Oliva <aoliva@redhat.com> |
4628 | ||
4629 | * c-common.c (c_expand_builtin): PARAMS-ize prototype. | |
4630 | ||
08f81276 MM |
4631 | 2000-10-12 Marek Michalkiewicz <marekm@linux.org.pl> |
4632 | ||
4633 | * config/avr/avr.c (output_movhi, output_movsisf): Fix loading | |
4634 | constants 1 and 2 to NO_LD_REGS. | |
4635 | ||
4b945402 KG |
4636 | 2000-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
4637 | ||
4638 | * Makefile.in (c-parse.c, tradcif.c): Create atomically. | |
b8dad04b | 4639 | |
4b945402 KG |
4640 | * objc/Make-lang.in (objc-parse.c): Likewise. |
4641 | ||
c7319d87 RE |
4642 | 2000-10-13 Richard Earnshaw <rearnsha@arm.com> |
4643 | ||
4644 | * arm.c: Include obstack.h | |
4645 | (minipool_obstack, minipool_startobj): Define. | |
4646 | (arm_add_gc_roots): Initialize them. | |
4647 | (create_fix_barrier): Use our new obstack. | |
4648 | (push_minipool_barrier, push_minipool_fix): Likewise. | |
4649 | (arm_reorg): Release obstack memory. | |
4650 | ||
fccf9848 JJ |
4651 | 2000-10-13 Jakub Jelinek <jakub@redhat.com> |
4652 | ||
4653 | * config/sparc/sparc.md (nonlocal_goto_receiver): Remove. | |
4654 | (prologue, exception_receiver, builtin_setjmp_receiver): New | |
4655 | patterns. | |
4656 | * config/sparc/sparc.h (FINALIZE_PIC): Remove. | |
4657 | * config/sparc/sparc-protos.h (finalize_pic): Remove. | |
4658 | (load_pic_register): New prototype. | |
4659 | * config/sparc/sparc.c (pic_setup_code): Remove. | |
4660 | (finalize_pic): Rename to... | |
4661 | (load_pic_register): ...this function. | |
4662 | Don't look for nonlocal_goto_receivers and emit pic setup code | |
4663 | directly. Don't check current_function_uses_pic_offset_table. | |
4664 | ||
7584b89f RE |
4665 | 2000-10-13 Richard Earnshaw <rearnsha@arm.com> |
4666 | ||
4667 | * tree.h (struct obstack): Declare. | |
4668 | ||
1f8f4a0b MM |
4669 | 2000-10-12 Mark Mitchell <mark@codesourcery.com> |
4670 | ||
b8dad04b | 4671 | Remove obstacks. |
1f8f4a0b | 4672 | * Makefile.in (ggc-callbacks.o): Remove target. |
b8dad04b | 4673 | (flow.o): Depend on GGC_H. |
1f8f4a0b MM |
4674 | * alias.c (init_alias_analysis): |
4675 | Remove ggc_p conditionals. | |
b8dad04b | 4676 | (end_alias_analysis): Likewise. |
1f8f4a0b | 4677 | * basic-block.h (init_flow): New function. |
b8dad04b | 4678 | (allocate_reg_life_data): Declare. |
1f8f4a0b MM |
4679 | * bb-reorder.c (function_obstack): Replace with ... |
4680 | (flow_obstack): ... new variable. | |
b8dad04b | 4681 | (fixup_reorder_chain): Use it. |
1f8f4a0b | 4682 | * c-decl.c (ggc_p): Remove. |
b8dad04b | 4683 | (caller-save.c): Don't call oballoc/obfree. |
1f8f4a0b MM |
4684 | * combine.c (struct |
4685 | undobuf): Remove storage. | |
4686 | (try_combine): Don't call oballoc. | |
b8dad04b | 4687 | (undo_all): Don't call obfree. |
1f8f4a0b MM |
4688 | * cse.c (insert): Use xmalloc, not |
4689 | oballoc. | |
b8dad04b | 4690 | (cse_main): Adjust accordingly. |
1f8f4a0b MM |
4691 | * dwarf2out.c (save_rtx): Remove |
4692 | obstack code. | |
b8dad04b | 4693 | (dwarf2out_init): Remove ggc_p conditionals. |
1f8f4a0b MM |
4694 | * emit-rtl.c (rtl_obstack): Remove. |
4695 | (gen_rtx_CONST_INT): Remove ggc_p conditionals. | |
4696 | (make_insn_raw): Likewise. | |
4697 | (emit_insn_before): Likewise. | |
4698 | (emit_insn_after): Likewise. | |
4699 | (emit_insn): Likewise. | |
4700 | (gen_sequence): Likewise. | |
4701 | (copy_insn_1): Remove handling of `b' RTL components. | |
b8dad04b | 4702 | (init_emit_once): Remove ggc_p conditionals. |
1f8f4a0b MM |
4703 | * except.c (create_rethrow_ref): Don't fool with obstacks. |
4704 | (add_partial_entry): Likewise. | |
4705 | (call_get_eh_context): Likewise. | |
4706 | (begin_protect_partials): Likewise. | |
b8dad04b | 4707 | (protect_with_terminate): Likewise. |
1f8f4a0b | 4708 | * explow.c |
b8dad04b | 4709 | (plus_constant_wide): Likewise. |
1f8f4a0b MM |
4710 | * expr.c (init_expr_once): |
4711 | Likewise. | |
4712 | (emit_block_move): Likewise. | |
4713 | (clear_storage): Likewise. | |
b8dad04b | 4714 | (expand_expr): Likewise. |
1f8f4a0b MM |
4715 | * flow.c (function_obstack): Remove. |
4716 | (flow_obstack): New variable. | |
4717 | (flow_firstobj): Likewise. | |
4718 | (create_base_block): Use the flow_obstack. | |
4719 | (split_block): Likewise. | |
4720 | (split_edge): Likewise. | |
4721 | (calculate_global_regs_live): Likewise. | |
4722 | (allocate_bb_life_data): Make it static. Likewiwse. | |
4723 | (init_flow): New function. | |
b8dad04b | 4724 | (size_int_type_wide): Remove ggc_p conditionals. |
1f8f4a0b MM |
4725 | * function.c |
4726 | (push_function_context_to): Don't call save_tree_status. | |
4727 | (pop_function_context_from): Or restore_tree_status. | |
4728 | (assign_stack_local_1): Don't call push_obstacks. | |
4729 | (find_fixup_replacement): Use xmalloc. | |
4730 | (fixup_var_refs_insns): Free the storage. | |
4731 | (insns_for_mem_walk): Don't mess with obstacks. | |
4732 | (instantiate_decls): Likewise. | |
4733 | (trampoline_address): Likewise. | |
b8dad04b | 4734 | (expand_function_end): Likewise. |
1f8f4a0b MM |
4735 | * function.h (sturct function): |
4736 | Remove obstack-related variables. | |
4737 | (save_tree_status): Don't declare. | |
b8dad04b | 4738 | (restore_tree_status): Likewise. |
1f8f4a0b | 4739 | * gcse.c (compute_can_copy): |
b8dad04b | 4740 | Don't call oballoc/obfree. |
1f8f4a0b MM |
4741 | * genattrtab.c (operate_exp): Remove |
4742 | ggc_p conditionals. | |
4743 | (simplify_cond): Likewise. | |
4744 | (simplify_test_exp): Don't mess with obstacks. | |
b8dad04b | 4745 | (optimize_attrs): Likewise. |
1f8f4a0b | 4746 | * gengenrtl.c (gendef): Don't include |
b8dad04b ZW |
4747 | ggc_p conditionals. |
4748 | * ggc-callbacks.c (ggc_p): Remove. | |
4749 | * ggc-none.c (ggc_p): Remove. | |
4750 | * ggc.h (ggc_p): Don't declare. | |
265dab10 | 4751 | * integrate.c (save_for_inline): Don't mess with obstacks. |
1f8f4a0b | 4752 | (integrate_decl_tree): Likewise. |
b8dad04b | 4753 | (output_inline_function): Likewise. |
1f8f4a0b | 4754 | * lists.c |
b8dad04b | 4755 | (init_EXPR_INSN_LIST_cache): Likewise. |
1f8f4a0b MM |
4756 | * loop.c (temp_obstack): |
4757 | Remove. | |
4758 | (rtl_obstack): Likewise. | |
4759 | (init_loop): Don't mess with obstacks. | |
4760 | (reg_address_cost): Free BIVs and GIVs. | |
4761 | (check_insns_for_bivs): Use xmalloc, not oballoc. | |
4762 | (find_mem_givs): Likewise. | |
4763 | (record_biv): Likewise. | |
4764 | (general_induction_var): Likewise. | |
b8dad04b | 4765 | (product_cheap_p): Likewse. |
1f8f4a0b | 4766 | * optabs.c (init_one_libfunc): Remove |
b8dad04b | 4767 | ggc_p conditional. |
1f8f4a0b MM |
4768 | * print-tree.c (debug_tree): Don't use |
4769 | oballoc/obfree. | |
b8dad04b | 4770 | (print_node): Likewise. |
1f8f4a0b | 4771 | * profile.c (output_func_start_profiler): |
b8dad04b | 4772 | Remove call to temporary_allocation. |
1f8f4a0b | 4773 | * reload1.c |
b8dad04b | 4774 | (eliminate_regs_in_insn): Don't mess with obstacks. |
1f8f4a0b MM |
4775 | * resource.c |
4776 | (mark_target_live_regs): Use xmalloc. | |
b8dad04b | 4777 | (free_resource_info): Free the memory. |
1f8f4a0b MM |
4778 | * rtl.c (rtl_obstack): |
4779 | Remove. | |
4780 | (rtvec_alloc): Don't mess with obstacks. | |
4781 | (rtx_alloc): Likewise. | |
4782 | (rtx_free): Remove. | |
4783 | (copy_rtx): Don't handle `b' cases. | |
b8dad04b | 4784 | (read_rtx): Use a local rtl_obstack. |
1f8f4a0b MM |
4785 | * rtl.h (oballoc): Remove. |
4786 | (obfree): Likewise. | |
4787 | (pop_obstacks): Likewise. | |
4788 | (push_obstacks): Likewise. | |
4789 | (allocate_bb_life_data): Likewise. | |
4790 | (allocate_reg_life_data): Likewise. | |
b8dad04b | 4791 | (rtx_free): Likewise. |
1f8f4a0b | 4792 | * sdbout.c (sdbout_queue_anonymous_type): |
b8dad04b | 4793 | Use tree_cons, not saveable_tree_cons. |
1f8f4a0b | 4794 | * simplify-rtx.c |
b8dad04b | 4795 | (cselib_init): Don't mess with obstacks. |
1f8f4a0b MM |
4796 | * stmt.c |
4797 | (mark_block_nesting): Mark the label_chain. | |
4798 | (epxand_label): Use ggc_alloc, not oballoc. | |
4799 | (clear_last_expr): Don't mess with obstacks. | |
4800 | (expand_decl_cleanup): Likewise. | |
4801 | (expand_dcc_cleanup): Likewise. | |
4802 | (expand_dhc_cleanup): Likewise. | |
4803 | (expand_anon_union_decl): Likewise. | |
4804 | (add_case_node): Use xmalloc, not oballoc. | |
4805 | (free_case_nodes): New function. | |
b8dad04b | 4806 | (expand_end_case): Call it. |
1f8f4a0b MM |
4807 | * stor-layout.c (layout_type): Don't |
4808 | mess with obstacks. | |
b8dad04b | 4809 | (layout_type): Likewise. |
1f8f4a0b MM |
4810 | * toplev.c (wrapup_global_declarations): |
4811 | Likewise. | |
4812 | (compile_file): Remove ggc_p conditionals. | |
4813 | (rest_of_compilation): Call init_flow. Remove ggc_p conditionals. | |
b8dad04b | 4814 | (decode_f_option): Remove ggc_p conditionals. |
1f8f4a0b MM |
4815 | * tree.c |
4816 | (function_maybepermanent_obstack): Remove. | |
4817 | (maybepermanent_obstack): Likewise. | |
4818 | (function_obstack): Likewise. | |
4819 | (tmeporary_obstack): Likewise. | |
4820 | (momentary_obstack): Likewise. | |
4821 | (temp_decl_obstack): Likewise. | |
4822 | (saveable_obstack): Likewise. | |
4823 | (rtl_obstack): Likewise. | |
4824 | (current_obstack): Likewise. | |
4825 | (expression_obstack): Likewise. | |
4826 | (struct obstack_stack): Likewise. | |
4827 | (obstack_stack): Likewise. | |
4828 | (obstack_stack_obstack): Likewise. | |
4829 | (maybepermanent_firstobj): Likewise. | |
4830 | (temporary_firstobj): Likewise. | |
4831 | (momentary_firstobj): Likewise. | |
4832 | (temp_decl_firstobj): Likewise. | |
4833 | (momentary_function_firstobj): Likewise. | |
4834 | (all_types_permanent): Likewise. | |
4835 | (struct momentary_level): Likewise. | |
4836 | (momentary_stack): Likewise. | |
4837 | (init_obstacks): Remove initialization of removed obstacks. | |
4838 | (save_tree_status): Remove. | |
4839 | (restore_tree_status): Likewise. | |
4840 | (temporary_allocation): Liekwise. | |
4841 | (end_temporary_allocation): Liekwise. | |
4842 | (resume_temporary_allocation): Likewise. | |
4843 | (saveable_allocation): Likewise. | |
4844 | (push_obstacks): Likewise. | |
4845 | (push_obstacks_nochange): Likewise. | |
4846 | (pop_obstacks): Likewise. | |
4847 | (allocation_temporary_p): Likewise. | |
4848 | (permanent_allocation): Likewise. | |
4849 | (preserve_data): Likewise. | |
4850 | (preserve_initializer): Likewise. | |
4851 | (rtl_in_current_obstack): Likewise. | |
4852 | (rtl_in_saveable_obstack): Likewise. | |
4853 | (oballoc): Likewise. | |
4854 | (obfree): Likewise. | |
4855 | (savealloc): Likewise. | |
4856 | (expralloc): Likewise. | |
4857 | (print_obstack_name): Likewise. | |
4858 | (debug_obstack): Likewise. | |
4859 | (object_permanent_p): Likewise. | |
4860 | (push_momentary): Likewise. | |
4861 | (perserve_momentary): Likewise. | |
4862 | (clear_momentary): Likewise. | |
4863 | (pop_momentary): Likewise. | |
4864 | (pop_momentary_nofree): Likewise. | |
4865 | (suspend_momentary): Likewise. | |
4866 | (resume_momentary): Likewise. | |
4867 | (make_node): Don't set TREE_PERMANENT. | |
4868 | (copy_node): Remove ggc_p conditionals. Don't set TYPE_OBSTACK. | |
4869 | Don't set TREE_PERMANENT. | |
4870 | (get_identifier): Remove ggc_p conditionals. | |
4871 | (build_string): Likewise. | |
4872 | (make_tree_vec): Likewise. | |
4873 | (build_decl_list): Remove. | |
4874 | (build_expr_list): Likewise. | |
4875 | (tree_cons): Remove ggc_p conditionals. | |
4876 | (decl_tree_cons): Remove. | |
4877 | (expr_tree_cons): Likewise. | |
4878 | (perm_tree_cons): Likewise. | |
4879 | (temp_tree_cons): Likewise. | |
4880 | (saveable_tree_cons): Likewise. | |
4881 | (build1): Remove ggc_p conditionals. | |
4882 | (build_parse_node): Likewise. | |
4883 | (build_type_attribute_variant): Don't mess with obstacks. | |
4884 | (build_type_copy): Likewise. | |
4885 | (type_hash_canon): Likewise. | |
4886 | (build_pointer_type): Likewise. | |
4887 | (build_reference_type): Likewise. | |
4888 | (build_index_type): Likewise. | |
4889 | (build_range_type): Likewise. | |
b8dad04b | 4890 | (dump_tree_statistics): Don't print obstack information. |
1f8f4a0b MM |
4891 | * tree.h |
4892 | (struct tree_common): Remove permanent_flag. | |
4893 | (TREE_PERMANENT): Remove. | |
4894 | (TREE_SET_PERMANENT): Likewise. | |
4895 | (TYPE_OBSTACK): Likewise. | |
4896 | (struct tree_type): Remove obstack. | |
4897 | (oballoc): Remove. | |
4898 | (savealloc): Likewise. | |
4899 | (build_decl_list): Likewise. | |
4900 | (build_expr_list): Likewise. | |
4901 | (perm_tree_cons): Likewise. | |
4902 | (temp_tree_cons): Likewise. | |
4903 | (saveable_tree_cons): Likewise. | |
4904 | (decl_tree_cons): Likewise. | |
4905 | (expr_tree_cons): Likewise. | |
4906 | (suspend_momentary): Likewise. | |
4907 | (allocation_temporary_p): Likewise. | |
4908 | (resume_momentary): Likewise. | |
4909 | (push_obstacks_nochange): Likewise. | |
4910 | (permanent_allocation): Likewise. | |
4911 | (push_momentary): Likewise. | |
4912 | (clear_momentary): Likewise. | |
4913 | (pop_momentary): Likewise. | |
4914 | (end_temporary_allocation): Likewise. | |
4915 | (pop_obstacks): Likewise. | |
4916 | (push_obstacks): Likewise. | |
4917 | (pop_momentary_nofree): LIkewise. | |
4918 | (preserve_momentary): Likewise. | |
4919 | (saveable_allocation): Likewise. | |
4920 | (temporary_allocation): Likewise. | |
4921 | (resume_temporary_allocation): Likewise. | |
4922 | (perserve_initializer): Likewise. | |
4923 | (debug_obstack): Likewise. | |
4924 | (rtl_in_current_obstack): Likewise. | |
4925 | (rtl_in_saveable_obstack): Likewise. | |
b8dad04b | 4926 | (obfree): Likewise. |
1f8f4a0b MM |
4927 | * varasm.c (current_obstack): Remove. |
4928 | (saveable_obstack): Remove. | |
4929 | (rtl_obstack): Remove. | |
4930 | (immed_double_const): Don't mess with obstacks. | |
4931 | (immed_real_cons): Likewise. | |
4932 | (output_constant_def): Likewise. | |
4933 | (init_varasm_status): Use xcalloc. | |
4934 | (mark_pool_constant): Mark the pool constant itself. | |
4935 | (free_varasm_status): Free memory. | |
4936 | (decode_rtx_const): Call bzero directly, rather than expanding it | |
4937 | inline. | |
4938 | (record_rtx_const): Don't mess with obstacks. | |
4939 | (force_const_mem): Likewise. | |
4940 | * config/arm/arm.c (arm_encode_call_attribute): Remove ggc_p | |
4941 | conditionals. | |
4942 | (aof_pic_entry): Likewise. | |
4943 | * config/ia64/ia64.c (ia64_encode_section_info): Likewise. | |
4944 | * config/m32r/m32r.c (m32r_encode_section_info): Likewise. | |
4945 | * config/pa/pa.c (saveable_obstack): Remove. | |
4946 | (rtl_obstack): Likewise. | |
4947 | (current_obstack): Likewise. | |
4948 | (output_call): Don't mess with obstacks. | |
4949 | (hppa_encode_label): Remove ggc_p conditionals. | |
4950 | * config/romp/romp.c (get_symref): Don't mess with obstacks. | |
4951 | * config/rs6000/rs6000.c (output_toc): Remove ggc_p conditional. | |
4952 | (rs6000_encode_section_info): Likewise. | |
4953 | * config/sh/sh.c (get_fpscr_rtx): Likewise. | |
b8dad04b | 4954 | |
9dcbdc7e JH |
4955 | Thu Oct 12 16:02:31 MET DST 2000 Jan Hubicka <jh@suse.cz> |
4956 | ||
4957 | * i386.md (adddi3, subdi3 splitters): Update for new pattern. | |
4958 | (addsi3_cc, addqi3_cc, subsi3_cc): Remove | |
4959 | (addsi3_carry): Canonicalize. | |
4960 | (addqi_5): Remove '*'. | |
4961 | (sbb pattern): Canonicalize. | |
4962 | ||
4963 | * i386.md (cmp to inc/add peep2): New. | |
4964 | ||
74490e05 RE |
4965 | 2000-10-12 Richard Earnshaw <rearnsha@arm.com> |
4966 | ||
4967 | * bb-reorder.c (reorder_basic_blocks): Allocate an aux block for | |
4968 | the exit block. | |
4969 | ||
bc87c1c8 JM |
4970 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
4971 | ||
4972 | * gcc.texi: Merge in contents of README.TRAD and TESTS.FLUNK. | |
4973 | * README.TRAD, TESTS.FLUNK: Remove. | |
4974 | ||
9fa8f75d JM |
4975 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
4976 | ||
4977 | * c-common.c (decl_attributes): Don't allow strftime formats with | |
4978 | first_arg_num nonzero. | |
4979 | (check_format_info): Set wanted_type and wanted_type_name to zero | |
4980 | before they are possibly assigned and used. | |
4981 | ||
4831bc84 JM |
4982 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
4983 | ||
4984 | * c-common.c (scanf_flag_specs): Add flags ' and I. | |
4985 | (strftime_flag_pairs): Disallow any pair of the _, - and 0 flags, | |
4986 | or the ^ and # flags together. | |
4987 | (scan_char_table): Handle the ' and I flags. | |
4988 | (format_types): Add ' and I flags for scanf. | |
4989 | ||
2f7026a0 JM |
4990 | 2000-10-12 Joseph S. Myers <jsm28@cam.ac.uk> |
4991 | ||
4992 | * c-common.c (print_char_table): Use the unpromoted type for | |
4993 | lengths "h" and "hh" with conversions dioxXu. | |
4994 | (check_format_types): Apply the default argument promotions where | |
4995 | the wanted type is not a pointer target. | |
4996 | ||
bb58bec5 | 4997 | 2000-10-11 Michael Meeks <mmeeks@gnu.org> |
b8dad04b | 4998 | Joseph S. Myers <jsm28@cam.ac.uk> |
bb58bec5 JM |
4999 | |
5000 | * c-typeck.c (check_modify_expr): New function. | |
5001 | (build_modify_expr): Call it if warn_sequence_point. | |
5002 | * c-decl.c (warn_sequence_point): New variable. | |
5003 | (c_decode_option): Handle -Wsequence-point and | |
5004 | -Wno-sequence-point. Enable -Wsequence-point as part of -Wall. | |
5005 | * c-tree.h (warn_sequence_point): Declare. | |
5006 | * invoke.texi (-Wsequence-point): Document. | |
5007 | * toplev.c (documented_lang_options): Add -Wsequence-point and | |
5008 | -Wno-sequence-point. | |
5009 | Original work by Michael Meeks, 16 Jun 1998. | |
5010 | ||
0fba7208 RK |
5011 | Wed Oct 11 06:15:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
5012 | ||
5013 | * tree.c (get_narrower): Don't look at precision of field if | |
5014 | not laid out yet. | |
5015 | ||
67e570ea DC |
5016 | Tue Oct 10 23:14:33 2000 Denis Chertykov <denisc@overta.ru> |
5017 | ||
5018 | * config/avr/avr.c (valid_machine_decl_attribute): Allow `extern' | |
5019 | declaration for data with "progmem" attribute. | |
5020 | ||
80b8585d MM |
5021 | 2000-10-09 Marek Michalkiewicz <marekm@linux.org.pl> |
5022 | ||
5023 | * config/avr/avr.c (out_shift_with_cnt): Use AS2 macro. | |
5024 | Correct insn length if shift count is a memory operand. | |
5025 | * config/avr/avr.md: New define_peephole2 to use *reload_inqi. | |
5026 | (*iorhi3_clobber): Change lo8 to hi8. | |
5027 | (zero_extendhisi2): Change %B0 to %A1. | |
5028 | (ashlhi3, ashrhi3): Correct insn length. | |
5029 | (andhi3, abssf2, extendqisi2, extendhisi2): Change "cc" | |
5030 | from "clobber" to "set_n" in some alternatives. | |
5031 | ||
462561b7 JJ |
5032 | 2000-10-10 Jakub Jelinek <jakub@redhat.com> |
5033 | ||
5034 | * reload1.c (calculate_needs_all_insns): If deleting an instruction, | |
5035 | remove its insn_chain structure as well. | |
5036 | ||
0b8833aa DA |
5037 | 2000-10-09 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
5038 | ||
5039 | * dbxout.c (dbxout_source_line): Remove extra tab. | |
5040 | ||
c690f089 HPN |
5041 | 2000-10-09 Hans-Peter Nilsson <hp@bitrange.com> |
5042 | ||
5043 | * config/elfos.h (UNIQUE_SECTION): Apply STRIP_NAME_ENCODING on name. | |
5044 | ||
1854631b RH |
5045 | 2000-10-09 Richard Henderson <rth@cygnus.com> |
5046 | ||
5047 | * Makefile.in (LANG_LIB2FUNCS): Remove. | |
5048 | (LIB2FUNCS): Remove _pure. | |
5049 | (LIB2ADD): Remove LANG_LIB2FUNCS. | |
5050 | (stage_a): Don't set LANG_LIB2FUNCS. | |
5051 | * libgcc2.c (__terminate): Mark noreturn. | |
5052 | (__pure_virtual): Remove. | |
5053 | * mklibgcc.in: Remove LIB2ADD .txt processing. | |
5054 | ||
880c4dcb RE |
5055 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
5056 | ||
5057 | * arm.md (push_multi): Revert unintended change. | |
5058 | ||
5895f793 RE |
5059 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
5060 | ||
b8dad04b | 5061 | * arm.c: Miscellaneous white space and comment clean-ups. No |
5895f793 RE |
5062 | functional change. |
5063 | * arm.md: Likewise. | |
5064 | ||
1092710d KG |
5065 | 2000-10-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5066 | ||
5067 | * c-common.c (c_expand_builtin_printf): Set the TREE_TYPE of a new | |
5068 | STRING_CST by calling combine_strings. | |
5069 | ||
ca356f3a RE |
5070 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
5071 | ||
5072 | * arm.c (thumb_expand_movstrqi): Rewrite to support SSA form. | |
5073 | (thumb_output_move_mem_multiple): Support new insn format. | |
5074 | * arm.md (movmem12b): Use SSA compatible format. | |
5075 | (movmem8b): Likewise. | |
5076 | ||
cca0a211 RE |
5077 | 2000-10-09 Richard Earnshaw <rearnsha@arm.com> |
5078 | ||
5079 | * arm.md (predicable): New attribute, default to "no". | |
5080 | (all patterns): Mark as predicable if appropriate. | |
5081 | (conditional execution splits): Split using predication format. | |
5082 | (define_cond_exec): Define. | |
5083 | * arm.c (arm_print_operand): handle insn predicate. | |
b8dad04b | 5084 | |
1146cfde GP |
5085 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
5086 | ||
5087 | * README.NS32K: Remove file. | |
5088 | ||
5089 | 2000-10-09 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> | |
5090 | ||
5091 | * README-bugs: Remove file. | |
5092 | ||
4d0230e1 PT |
5093 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
5094 | * aclocal.m4 (AM_GNU_GETTEXT): Fix non portable use of == operator | |
5095 | for test. | |
5096 | * configure: Rebuilt. | |
5097 | ||
9fdf713f PT |
5098 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
5099 | * aclocal.m4 (AM_WITH_NLS): When not using included gettext, | |
5100 | disable catalog building if no suitable program was found. | |
5101 | Move warning message from here | |
5102 | (AM_GNU_GETTEXT): To here. | |
5103 | * configure: Rebuilt. | |
5104 | ||
00036f5c PT |
5105 | 2000-10-08 Philipp Thomas <pthomas@suse.de> |
5106 | * aclocal.m4 (GCC_PATH_PROG): New. Like AC_PATH_PROG but uses | |
5107 | different cache variables. | |
5108 | (GCC_PATH_PROG_WITH_TEST): New. Like AM_PATH_PROG_WITH_TEST but | |
5109 | uses different cache variables. | |
5110 | (AM_WITH_NLS): Use GCC_PATH_PROG and GCC_PATH_PROG_WITH_TEST. | |
5111 | * configure: Regenerated. | |
b8dad04b | 5112 | |
aefa45d3 RH |
5113 | 2000-10-08 Richard Henderson <rth@cygnus.com> |
5114 | ||
5115 | * Makefile.in (libgcc.mk): Pass SHLIB_EXT, not SHLIB_LIBS. | |
5116 | * configure.in (sparc*-*-solaris*): Use t-slibgcc{,-sld}. | |
5117 | * mklibgcc.in: Consider SHLIB_LINK the entire shlib build command. | |
5118 | Use SHLIB_EXT. | |
5119 | ||
5120 | * config/t-linux (SHLIB_EXT): New. | |
5121 | (SHLIB_LINK): Use the entire build command, with substitutions. | |
5122 | (SHLIB_LIBS): Remove. | |
5123 | * config/alpha/t-osf4: Likewise. | |
5124 | * config/mips/t-iris6: Likewise. | |
5125 | * config/sparc/t-sol2: Likewise, but move shlib stuff... | |
5126 | * config/sparc/t-slibgcc-sld: ...here. | |
5127 | * config/sparc/t-slibgcc: New file. | |
5128 | ||
b15ad712 JM |
5129 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
5130 | ||
5131 | * tm.texi (INTMAX_TYPE, UINTMAX_TYPE): Define. | |
5132 | * c-common.h (enum c_tree_index): Add CTI_INTMAX_TYPE and | |
5133 | CTI_UINTMAX_TYPE. | |
5134 | (intmax_type_node, uintmax_type_node): Define. | |
5135 | * c-common.c (decl_attributes): If pedantic, warn if `mode' | |
5136 | attributes create a type wider than intmax_t. | |
5137 | (T_IM, T_UIM): Define properly. | |
5138 | * c-decl.c (INTMAX_TYPE, UINTMAX_TYPE): Define if not already | |
5139 | defined. | |
5140 | (init_decl_processing): Initialize intmax_type_node and | |
5141 | uintmax_type_node. | |
5142 | * c-lex.c (lex_number): When pedantic and warning for integer | |
5143 | constants that are too large, in C99 mode warn for those that have | |
5144 | a type wider than long long. | |
5145 | ||
2588e44e JM |
5146 | 2000-10-08 Joseph S. Myers <jsm28@cam.ac.uk> |
5147 | ||
5148 | * c-common.c (FMT_FLAG_ARG_CONVERT, FMT_FLAG_SCANF_A_KLUDGE, | |
5149 | FMT_FLAG_FANCY_PERCENT_OK): Define. | |
5150 | (format_char_info): Add flag "4" to comment. | |
5151 | (format_flag_spec, format_flag_pair): New structures. | |
5152 | (format_kind_info): Add additional fields to control format | |
5153 | checking. | |
5154 | (printf_flag_specs, printf_flag_pairs, scanf_flag_specs, | |
5155 | scanf_flag_pairs, strftime_flag_specs, strftime_flag_pairs): New | |
5156 | arrays. | |
5157 | (time_char_table): Use "4" flag to handle %Ey. | |
5158 | (format_types): Add entries for new fields. | |
5159 | (get_flag_spec): New function. | |
5160 | (check_format_info): Increase size of flag_chars[] to 256. | |
5161 | Control format checking using the new fields of a format_kind_info | |
5162 | and the new tables; remove all conditionals on printf_format_type, | |
5163 | scanf_format_type or strftime_format_type. Handle all details of | |
5164 | bad combinations of flags (including width, precision and strftime | |
5165 | modifiers) through data rather than ad hoc code. Handle all | |
5166 | details of standard versions in which flags appeared through | |
5167 | data. Use the "4" flag. | |
5168 | ||
7b7de7c0 WC |
5169 | 2000-10-07 Will Cohen <wcohen@redhat.com>, Kazu Hirata <kazu@hxi.com> |
5170 | ||
5171 | * config/h8300/h8300.md: Remove the memory alternative and correct | |
5172 | the insn lengths in the templates for sign extention and zero | |
5173 | extention. | |
5174 | ||
9a1ba437 RH |
5175 | 2000-10-07 Richard Henderson <rth@cygnus.com> |
5176 | ||
5177 | * calls.c (expand_call): Disallow sibcalls to noreturn functions. | |
5178 | * flow.c (make_edges): Revert last change. | |
5179 | ||
5180 | * config/alpha/alpha.h (FUNCTION_OK_FOR_SIBCALL): Don't test | |
5181 | TREE_THIS_VOLATILE. | |
5182 | * config/pa/pa.h (FUNCTION_OK_FOR_SIBCALL): Likewise. | |
5183 | ||
d38d55b4 DB |
5184 | 2000-10-06 David O'Brien <obrien@dragon.nuxi.com> |
5185 | ||
5186 | * config/alpha/elf.h: Standardize the formatting. | |
5187 | ||
94984e91 DB |
5188 | 2000-10-06 David O'Brien <obrien@FreeBSD.org> |
5189 | ||
5190 | * config/alpha/elf.h: Protect the ASM_OUTPUT_IDENT definition with an | |
5191 | #undef. | |
5192 | ||
3e4eac3f RH |
5193 | 2000-10-06 Richard Henderson <rth@cygnus.com> |
5194 | ||
5195 | * function.c (diddle_return_value): Examine | |
5196 | current_function_return_rtx instead of the DECL_RESULT. | |
5197 | (expand_function_end): Handle reloading DECL_RESULT from memory | |
5198 | into a hard register. Query promote_mode for sign of mismatched | |
5199 | modes. | |
5200 | ||
4071f896 VM |
5201 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
5202 | ||
5203 | * haifa-sched.c (schedule_insns): Fix typo in freeing | |
5204 | forward_dependency_cache. | |
5205 | ||
eb69f95c AO |
5206 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
5207 | ||
5208 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): Add | |
5209 | `TARGET_SH2' as a condition. | |
5210 | ||
178b88b9 VM |
5211 | 2000-10-06 Vladimir Makarov <vmakarov@touchme.toronto.redhat.com> |
5212 | ||
5213 | * haifa-sched.c (anti_dependency_cache, output_dependency_cache, | |
5214 | forward_dependency_cache): New variables. | |
5215 | (add_dependence, remove_dependence): Use anti_dependency_cache and | |
5216 | output_dependency_cache. | |
5217 | (compute_block_forward_dependences): Use forward_dependency_cache. | |
5218 | (schedule_insns): Allocate and free memory for anti/output/forward | |
5219 | dependencies caches. | |
b8dad04b | 5220 | |
827bdee4 AO |
5221 | 2000-10-06 Alexandre Oliva <aoliva@redhat.com> |
5222 | ||
5223 | * config/sh/sh.md (call, call_value): Use `TARGET_SH2' instead of | |
5224 | `! TARGET_SH1'. Reindent. | |
5225 | ||
c70eaeaf KG |
5226 | 2000-10-06 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5227 | ||
5228 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): | |
5229 | Move functions from here ... | |
5230 | ||
5231 | * c-common.c (is_valid_printf_arglist, c_expand_builtin_printf): | |
5232 | ... to here. | |
5233 | (c_expand_builtin): New function. | |
5234 | (init_function_format_info): Don't set `check_function_format_ptr'. | |
5235 | (c_common_nodes_and_builtins): Set built_in_class type for | |
5236 | printf/__builtin_printf to BUILT_IN_FRONTEND. | |
5237 | (c_expand_expr): Handle CALL_EXPRs that are front-end builtins. | |
5238 | ||
5239 | * c-common.h (build_function_call): Declare. | |
5240 | ||
5241 | * expr.c (expand_expr): Pass builtins with class BUILT_IN_FRONTEND | |
5242 | to `lang_expand_expr' rather than `expand_builtin'. | |
5243 | ||
5244 | * tree.c (check_function_format_ptr): Delete. | |
5245 | ||
5246 | * tree.h (check_function_format_ptr): Likewise. | |
5247 | ||
f299afab HPN |
5248 | 2000-10-06 Hans-Peter Nilsson <hp@bitrange.com> |
5249 | ||
5250 | * dwarf2out.c (build_cfa_loc): Correct to use DW_OP_regx or | |
5251 | DW_OP_bregx when cfa->reg > 31. | |
5252 | ||
5253 | * frame-dwarf2.c (decode_stack_op) [case DW_OP_regx]: Add missing | |
5254 | break. | |
5255 | ||
b313a0fe RH |
5256 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
5257 | ||
5258 | * c-decl.c (warn_missing_noreturn): Remove. | |
5259 | (c_expand_body): Don't set or check can_reach_end. | |
5260 | * c-tree.h (warn_missing_noreturn): Move ... | |
5261 | * flags.h: ... here. | |
5262 | (can_reach_end): Remove. | |
5263 | * flow.c (check_function_return_warnings): New. | |
5264 | (make_edges): No edge to exit for noreturn sibcalls. | |
5265 | * function.c (expand_function_end): Save the return value | |
5266 | clobber instruction. | |
5267 | (mark_function_status): Mark it. | |
5268 | * function.h (struct function): Add x_clobber_return_insn. | |
5269 | * jump.c (can_reach_end): Remove. | |
5270 | (calculate_can_reach_end): Remove. | |
5271 | (jump_optimize_1): Don't call it. | |
5272 | * output.h (check_function_return_warnings): Declare. | |
5273 | * toplev.c (warn_missing_noreturn): Move from c-decl.c | |
5274 | (rest_of_compilation): Call check_function_return_warnings. | |
5275 | ||
83dad10c RH |
5276 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
5277 | ||
5278 | * Makefile.in (NM_FOR_TARGET): New. | |
5279 | (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES. | |
5280 | (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET. | |
5281 | * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map. Depend the | |
5282 | shared library build on that and EXTRA_MULTILIB_PARTS. | |
5283 | * mkmap-flat.awk: New file. | |
5284 | * mkmap-symver.awk: New file. | |
5285 | * libgcc-std.ver: New file. | |
5286 | * config/libgcc-glibc.ver: New file. | |
5287 | * config/ia64/libgcc-ia64.ver: New file. | |
5288 | * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
5289 | (SHLIB_LINK): Add --version-script. | |
5290 | * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver. | |
5291 | * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
5292 | * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New. | |
5293 | (SHLIB_LINK): Add -M. | |
5294 | ||
d6eacd48 RH |
5295 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
5296 | ||
5297 | * Makefile.in (LIB2FUNCS): Add _clz. | |
5298 | * libgcc2.c (__ffsdi2): Use count_trailing_zeros. | |
5299 | (__clz_tab): Put in its own unit, non-static. | |
5300 | * libgcc2.h: Always include longlong.h. | |
5301 | ||
29279975 RH |
5302 | * longlong.h [alpha] (count_leading_zeros): Use cmpbge with |
5303 | a zero instead of -1. | |
5304 | (count_trailing_zeros): Likewise. | |
5305 | ||
c74fa144 RH |
5306 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
5307 | ||
5308 | * config/alpha/alpha.c (alpha_emit_setcc): Don't swap GT tests | |
5309 | when second op1 is const0_rtx. Validate op0 as a register. | |
5310 | * config/alpha/alpha.md (setcc_internal): Don't allow constants | |
5311 | in the first argument of the compare. | |
5312 | (setcc_swapped_internal): Likewise. | |
5313 | (setne_internal): Likewise. | |
5314 | ||
c5620996 GK |
5315 | 2000-10-05 Geoff Keating <geoffk@cygnus.com> |
5316 | ||
5317 | * tree.c (tree_size): New function split out of copy_node. | |
5318 | (make_node): Remove obstack handling. Use tree_size. | |
5319 | (copy_node): Use tree_size. | |
5320 | * tree.h: Prototype tree_size. | |
5321 | ||
331fe257 RH |
5322 | 2000-10-05 Richard Henderson <rth@cygnus.com> |
5323 | ||
5324 | * diagnostic.c (output_format): Add missing break. | |
5325 | ||
cc0cbae1 JW |
5326 | 2000-10-05 Jim Wilson <wilson@cygnus.com> |
5327 | ||
5328 | * function.c (fixup_var_refs_1, case SET): When gen_move_insn returns a | |
5329 | SEQUENCE, call emit_insn_before, copy PATTERN and REG_NOTES of last | |
5330 | sequence insn to INSN, and delete last sequence insn. | |
5331 | ||
f5fa9a5b PE |
5332 | 2000-10-05 Phil Edwards <pme@gcc.gnu.org> |
5333 | ||
5334 | * gcc.c (main): Include generated configargs.h header | |
5335 | and use arguments in '-v' output. | |
5336 | ||
2296d164 RK |
5337 | Thu Oct 5 16:16:57 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
5338 | ||
5339 | * gcc.c: Move data on prefixes forward in file and reorganize. | |
5340 | (md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1): | |
5341 | Always define, but make null if no value. | |
5342 | (static_specs): Add "md_exec_prefix", "md_startfile_prefix", | |
5343 | and "md_startfile_prefix_1". | |
5344 | (main): Check whether md_exec_prefix and the others are the | |
5345 | null string rather than whether the macro is defined. | |
5346 | ||
43d75418 R |
5347 | Thu Oct 5 19:04:18 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
5348 | ||
5349 | * (convert_move): Use zero_extendpsisi2 to do an unsigned extension | |
5350 | from PSImode to SImode. | |
5351 | ||
e389897b JJ |
5352 | 2000-10-05 Jakub Jelinek <jakub@redhat.com> |
5353 | ||
5354 | * emit-rtl.c (gen_lowpart_common) [REAL_ARITHMETICS]: Fix conversion | |
5355 | from float to integral mode with HOST_BITS_PER_WIDE_INT 64. | |
5356 | * dwarf2out.c (add_const_value_attribute): Divide by 4, not | |
5357 | sizeof(long). | |
5358 | ||
b8fbe62c RK |
5359 | Thu Oct 5 09:31:31 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
5360 | ||
5361 | * fold-const.c (fold, case MINUS_EXPR, case EQ_EXPR): Perform | |
5362 | negation in proper type.a | |
5363 | ||
50503ac8 RH |
5364 | 2000-10-04 Richard Henderson <rth@cygnus.com> |
5365 | ||
5366 | * configure.in (enable-shared): New. | |
5367 | * Makefile.in (LIBGCC_DEPS): Depend on EXTRA_PARTS as well. | |
5368 | (libgcc.mk): Pass SHLIB_LINK, SHLIB_LIBS, SHLIB_MULTILIB to mklibgcc. | |
5369 | * mklibgcc.in: Use them to link shared a libgcc. | |
5370 | * config/t-linux (SHLIB_LINK, SHLIB_LIBS): New. | |
5371 | * config/alpha/t-ieee (SHLIB_MULTILIB): New. | |
5372 | * config/mips/t-iris6 (SHLIB_LINK, SHLIB_LIBS): New. | |
5373 | * config/sparc/t-sol2 (SHLIB_LINK, SHLIB_LIBS): New. | |
5374 | ||
5375 | * configure.in (alpha-osf*): Use t-osf and x-osf. | |
5376 | * config/alpha/t-osf: New file. | |
5377 | * config/alpha/t-osf4: New file. | |
5378 | * config/alpha/x-osf: New file. | |
5379 | * config/alpha/x-alpha: Remove file. | |
5380 | ||
4b606faf WC |
5381 | 2000-10-04 Will Cohen <wcohen@redhat.com> |
5382 | ||
5383 | * c-typeck.c (process_init_element): Added warning for zero-length | |
5384 | array. | |
5385 | ||
5386 | * extend.texi (Zero Length): State that static initializers for | |
5387 | zero-length arrays are not allowed. | |
5388 | ||
c9b89a21 JH |
5389 | Mon Oct 2 14:50:14 MET DST 2000 Jan Hubicka <jh@suse.cz> |
5390 | ||
5391 | * rtlanal.c (single_set_1): Do not require USE and CLOBBERs | |
5392 | to come last. | |
5393 | ||
81bce466 MH |
5394 | 2000-10-03 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
5395 | ||
5396 | * config/float-c4x.h: New. | |
5397 | * configure.in (c4x-*): Set float_format to c4x. | |
b8dad04b | 5398 | * configure: Regenerate. |
81bce466 | 5399 | |
72882e08 KG |
5400 | 2000-10-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
5401 | ||
5402 | * configure.in (sparc-*-solaris2*): Disable 32-to-64 cross | |
5403 | compilation for solaris versions 2.7 and greater. | |
5404 | ||
ea205a52 ME |
5405 | 2000-10-02 Marc Espie <espie@openbsd.org> |
5406 | ||
5407 | * config/alpha.h (WORD_SWITCH_TAKES_ARG): add -rpath to default, | |
5408 | instead of redefining from scratch. | |
5409 | ||
618ec0d7 DB |
5410 | 2000-10-02 David O'Brien <obrien@dragon.nuxi.com> |
5411 | ||
5412 | * config/i386/freebsd.h (NO_PROFILE_COUNTERS): Define. | |
5413 | ||
f15b9af9 MM |
5414 | 2000-10-01 Mark Mitchell <mark@codesourcery.com> |
5415 | ||
776749c5 MM |
5416 | * config/ns32k/genix.h: Remove. |
5417 | * config/ns32k/x-genix: Likewise. | |
5418 | * config/ns32k/xm-genix.h: Likewise. | |
5419 | * config/fx80: Remove all filee in directory. | |
5420 | * config/pyr: Likewise. | |
5421 | * config/tahoe: Likewise. | |
5422 | * config/gmicro: Likewise. | |
5423 | * config/spur: Likewise. | |
5424 | * configure.in: Remove configury bits for above targets. | |
5425 | * configure: Regenerated. | |
b8dad04b | 5426 | |
a7b4171a MM |
5427 | * configure.in: Don't configure chill by default. |
5428 | * configure: Regenerated. | |
b8dad04b | 5429 | |
f15b9af9 MM |
5430 | * c-decl.c (c_expand_body): Don't generate RTL if flag_syntax_only. |
5431 | (lang_mark_false_label_stack): Remove. | |
5432 | * c-lex.c (init_c_lex): Add file_info_tree as GC root. Allocate | |
5433 | <top level> string in GC area. | |
5434 | (mark_splay_tree_node): New function. | |
5435 | (mark_splay_tree): Likewise. | |
5436 | * except.c (mark_eh_status): Only call lang_mark_false_label_stack | |
5437 | if it exists. | |
5438 | * ggc-callbacks.c (lang_mark_false_label_stack): Remove. | |
5439 | * ggc-common.c (lang_mark_false_label_stack): Change type. | |
5440 | * ggc.h (ggc_alloc_string): Add comment. | |
5441 | (ggc_strdup): New function. | |
b8dad04b | 5442 | |
51296ba0 DC |
5443 | Sat Sep 23 19:10:20 2000 Denis Chertykov <denisc@overta.ru> |
5444 | ||
5445 | * config/avr/avr.h (BRANCH_COST): Define as 0. | |
5446 | ||
5447 | * config/pdp11/pdp11.c: #include "tree.h" added. | |
5448 | ||
adcd8f77 MM |
5449 | 2000-09-30 Marek Michalkiewicz <marekm@linux.org.pl> |
5450 | ||
5451 | * config/avr/avr.c (ashlhi3_out, ashlsi3_out, ashrhi3_out, | |
5452 | ashrsi3_out, lshrhi3_out, lshrsi3_out): Optimize more cases | |
5453 | with known shift count. | |
5454 | * config/avr/avr.md (ashlsi3, ashrsi3, lshrsi3): | |
5455 | New alternative for shift count 2 with no scratch register. | |
5456 | (ashlhi3, ashlsi3): Change "cc" attribute from "clobber" to | |
5457 | "set_n" for shift counts 1 and 2. | |
5458 | ||
e35b9579 GK |
5459 | 2000-09-30 Geoff Keating <geoffk@cygnus.com> |
5460 | ||
5461 | * config/rs6000/rs6000.md (movsi_to_cr): Remove the USE. Calculate | |
5462 | the mask value from the individual SET operations. | |
5463 | (return_internal_si): Move the USE after the RETURN. | |
5464 | (return_internal_di): Likewise. | |
5465 | (return_and_restore_fpregs_si): Likewise. | |
5466 | (return_and_restore_fpregs_di): Likewise. | |
5467 | (return_eh_si): Likewise. | |
5468 | (return_eh_di): Likewise. | |
5469 | * config/rs6000/rs6000.c (mtcrf_operation): Don't look for, | |
5470 | or check, the USE. | |
5471 | (rs6000_emit_prologue): Don't emit the USE for movsi_to_cr. | |
5472 | Don't generate a PARALLEL around a single operation movsi_to_cr. | |
5473 | Generate the RETURN first in any PARALLELs. | |
5474 | ||
5475 | * rtlanal.c (single_set_1): Use fatal_insn to display the | |
5476 | invalid insn. Check for more cases when a USE or CLOBBER occurs | |
5477 | before a SET. | |
5478 | * Makefile.in: Update dependencies for rtlanal.o. | |
5479 | ||
1fba7553 JM |
5480 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
5481 | ||
5482 | * i386.c: Move include of "config.h" to before that of <setjmp.h>. | |
5483 | ||
28e6b1c2 JM |
5484 | 2000-09-30 Joseph S. Myers <jsm28@cam.ac.uk> |
5485 | ||
5486 | * c-tree.texi, contrib.texi, gcc.texi, install.texi, invoke.texi: | |
5487 | Consistently use @email for formatting email addresses. | |
5488 | ||
f2fa288f RH |
5489 | 2000-09-29 Richard Henderson <rth@cygnus.com> |
5490 | ||
5491 | * cse.c (notreg_cost): New argument outer. | |
5492 | (COST): Pass in SET to notreg_cost | |
5493 | (COST_IN): New. | |
5494 | (fold_rtx): Use COST_IN. Prefer constants when costs | |
5495 | are the same. | |
5496 | ||
a1c63101 DE |
5497 | 2000-09-29 David Edelsohn <edelsohn@gnu.org> |
5498 | ||
5499 | * fixinc/inclhack.def (broken_cabs): Generalize regex. | |
5500 | * fixinc/fixincl.x: Regenerate. | |
5501 | ||
70dd0f7f FS |
5502 | 2000-09-29 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
5503 | ||
5504 | * loop.c (check_final_value): A GIV is not replaceable if used | |
5505 | before set. | |
5506 | ||
0c6129af JL |
5507 | Fri Sep 29 10:04:12 2000 Jeffrey A Law (law@cygnus.com) |
5508 | ||
5509 | * version.c: Bump to gcc-2.97. | |
5510 | ||
5511 | Frs Sep 29 13:37:59 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
6c698a6d JH |
5512 | |
5513 | * final.c (final_scan_insn): Remove extra extract_insn call; | |
5514 | Use caching for constrain_operands. | |
5515 | (cleanup_subreg_operands): Use caching for extract_insn. | |
5516 | * recog.c (constrain_operands_cached): New. | |
5517 | * recog.h (constrain_operands_cached): Declare. | |
5518 | * i386.c (ix86_attr_length_immediate_default, | |
5519 | ix86_attr_length_address_default, ix86_agi_dependant): Cache | |
5520 | extract_insn call. | |
5521 | ||
5522 | * recog.c (asm_noperands): Tweak. | |
5523 | (extract_insn): Do not call asm_noperads for non-asm instructions. | |
5524 | ||
5525 | Fri Sep 29 13:20:42 MET DST 2000 Jan Hubicka <jh@suse.cz> | |
5526 | ||
5527 | * recog.c (recog_memoized): Rename to recog_memoized_1. | |
5528 | * recog.h (recog_memoized): Rename to recog_memoized_1. | |
5529 | (recog_memoized): New macro. | |
5530 | * rtl.h (single_set): Rename to single_set_1 | |
5531 | (single_set): New macro. | |
5532 | * rtlanal.c (single_set): Rename to single_set_1; expect clobbers | |
5533 | to be last. | |
5534 | ||
5535 | * i386.md (strmovsi_1, strmovhi_1 strmovqi_1): | |
5536 | Do not use match_dup of input operands at outputs. | |
5537 | Use register_operand for memory expression. | |
5538 | (rep_movsi): Put use last, canonicalize. | |
5539 | Use register_operand for memory expression. | |
5540 | (rep_movqi): Put use last. | |
5541 | Use register_operand for memory expression. | |
5542 | (strsetsi_1, strset_hi_1, strsetqi_1): Do not use match_dup | |
5543 | of input operands at outputs. Use register_operand for memory | |
5544 | expression. | |
5545 | (rep_stossi): Put use last; canonicalize; fix match_dup in | |
5546 | the address expression | |
5547 | (rep_stosqi): Likewise. | |
5548 | (memcmp expander): Update calls. | |
5549 | (cmpstrsi_nz_1, cmpstrsi_1, strlensi_1): Avoid match_dups in | |
5550 | the clobbers. | |
5551 | ||
5552 | * i386.md (fp_jcc_3, fp_jcc_4, jp_fcc_5): if_then_else operand is | |
5553 | VOIDmode. | |
5554 | (fp_jcc_4, fp_jcc_3): Refuse unordered comparisons. | |
5555 | ||
41e5a1f5 DB |
5556 | 2000-09-28 David O'Brien <obrien@FreeBSD.org> |
5557 | ||
5558 | * config/i386/freebsd-aout.h: New, FreeBSD a.out config file. | |
5559 | Contains the old contents of config/i386/freebsd.h | |
5560 | * config/i386/freebsd.h: Now the ELF rather than a.out config file. | |
5561 | Contains the old contents of config/i386/freebsd-elf.h | |
5562 | * config/i386/freebsd-elf.h: Retire this file -- contents moved to | |
5563 | config/i386/freebsd.h. | |
5564 | * configure.in: Adjust for above changes. | |
5565 | * po/POTFILES.in: Likewise. | |
5566 | * po/en_GB.po: Likewise. | |
5567 | * po/gcc.pot: Likewise. | |
5568 | * configure: Rebuilt. | |
5569 | ||
1db88ef9 | 5570 | 2000-09-28 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
70dd0f7f | 5571 | |
1db88ef9 FS |
5572 | * doloop.c (doloop_modify): Prevent delete_insn() from |
5573 | deleting too much. Prefer loop->top over loop->start as | |
5574 | target for the new JUMP insn. | |
5575 | (doloop_valid_p): Ignore loop with exit_count != 0. | |
5576 | ||
6a07a77f PT |
5577 | 2000-09-28 Philipp Thomas <pthomas@suse.de> |
5578 | ||
5579 | * invoke.texi (i386 Options): Add athlon to table of possible | |
5580 | choices for -mcpu=. | |
5581 | ||
b5dd2c76 GDR |
5582 | 2000-09-28 Gabriel Dos Reis <gdr@codesourcery.com> |
5583 | ||
5584 | * diagnostic.h (output_clear_message_text): New function. | |
5585 | (output_message_text): New macro. | |
5586 | ||
5587 | * diagnostic.c (clear_text_info): Rename to | |
b8dad04b | 5588 | output_clear_message_text. |
b5dd2c76 GDR |
5589 | (output_clear): Adjust. |
5590 | (output_finish): Rename to output_finalize_message. Tweek. | |
b8dad04b | 5591 | (output_to_stream): Adjust. |
b5dd2c76 | 5592 | |
d8090680 NB |
5593 | 2000-09-28 Neil Booth <neilb@earthling.net> |
5594 | ||
5595 | * cpperror.c (_cpp_begin_message): Do the test for suppression | |
b8dad04b ZW |
5596 | of warnings and pedantic warnings before the "is a warning an |
5597 | error" tests. | |
d8090680 NB |
5598 | * cppinit.c (cpp_handle_option): Remove surplus \n. |
5599 | * cpplex.c (ON_REST_ARG): Delete. | |
5600 | (skip_block_comment): Initialise prevc. | |
5601 | (parse_args): Improve error messages. | |
5602 | (maybe_paste_with_next): Use CONTEXT_VARARGS rather | |
5603 | than ON_REST_ARG. | |
5604 | * cpplib.c (cpp_push_buffer): Fix grammar in message. | |
5605 | * cppmain.c (main): Set callbacks for #ident and #pragma | |
5606 | only if no_output option is false. | |
5607 | (do_pragma_implementation): Only call the #pragma handler | |
5608 | if it is set in the cpp_reader structure. | |
5609 | ||
e93eff94 DL |
5610 | Wed Sep 27 14:00:07 2000 Donald Lindsay <dlindsay@cygnus.com> |
5611 | ||
5612 | * integrate.c (copy_insn_list): if an ignored return value | |
5613 | is being clobbered, skip cloning that into the inline copy. | |
5614 | ||
59c5d27a JM |
5615 | 2000-09-27 Joseph S. Myers <jsm28@cam.ac.uk> |
5616 | ||
5617 | * extend.texi, invoke.texi, gcc.texi, install.texi: Consistently | |
5618 | use @uref for formatting URLs. | |
5619 | ||
15ca066d ME |
5620 | 2000-09-27 Mark Elbrecht <snowball3@bigfoot.com> |
5621 | ||
5622 | * config/i386/djgpp.h (UNIQUE_SECTION): Constify the variables | |
5623 | name and prefix. | |
5624 | ||
5a8e2650 NB |
5625 | Tue 26-Sep-2000 18:25:38 BST Neil Booth <neilb@earthling.net> |
5626 | ||
5627 | * gcc.c (cpp_options): Add spec for -ftabstop=. | |
5628 | (invoke_as): New spec that handles invoking as. | |
5629 | Update specs to handle -save-temps and -traditional. | |
5630 | * ch/lang-specs.h, f/lang-specs.h, java/lang-specs.h: | |
5631 | Use invoke_as. | |
5632 | * cp/lang-specs.h, objc/lang-specs.h: Update to use | |
5633 | invoke_as, and handle -save-temps and -traditional (if | |
5634 | appropriate). | |
5635 | ||
380f6ad3 JJ |
5636 | 2000-09-26 Jakub Jelinek <jakub@redhat.com> |
5637 | ||
5638 | * config/sparc/sparc.c (sparc_emit_set_const64): Don't abort when | |
5639 | op0 is a SUBREG. | |
5640 | (function_arg_slotno): Accept TImode/CTImode. | |
5641 | * config/sparc/sparc.h (MIN_UNITS_PER_WORD): If IN_LIBGCC2 define | |
5642 | to UNITS_PER_WORD. | |
5643 | ||
ef120fc0 MH |
5644 | 2000-09-26 Michael Hayes <mhayes@cygnus.com> |
5645 | ||
5646 | * flow.c (flow_loop_pre_header_scan): Punt if loop enters | |
5647 | from entry block. | |
5648 | ||
cf606f45 JW |
5649 | 2000-09-25 Jim Wilson <wilson@cygnus.com> |
5650 | ||
5651 | * config/ia64/ia64.h (INDEX_REG_CLASS): Define to GENERAL_REGS. | |
5652 | (REGNO_OK_FOR_INDEX_P): Define to REGNO_OK_FOR_BASE_P. | |
5653 | (LEGITIMATE_ADDRESS_DISP): Use LEGITIMATE_ADDRESS_REG. | |
5654 | (REG_OK_FOR_INDEX): Define to REG_OK_FOR_BASE_P. | |
5655 | ||
a94c1199 NB |
5656 | Tue 26-Sep-2000 00:16:22 BST Neil Booth <neilb@earthling.net> |
5657 | ||
b8dad04b | 5658 | * cpplex.c (parse_args): Don't set VOID_REST flag. |
a94c1199 NB |
5659 | (CONTEXT_VARARGS): New flag. |
5660 | (maybe_paste_with_next): Set context earlier in loop. Use | |
5661 | it. Do varargs test with CONTEXT_VARARGS flag. | |
5662 | (push_arg_context): Set CONTEXT_VARARGS flag if we're | |
5663 | pushing an argument context for a varargs argument. | |
5664 | * cpplib.h (VOID_REST): Delete. | |
b8dad04b | 5665 | * gcc.dg/cpp/vararg1.c: Add test case. |
a94c1199 | 5666 | |
317639a8 BC |
5667 | 2000-09-25 Branko Cibej <branko.cibej@hermes.si> |
5668 | ||
b8dad04b ZW |
5669 | * flags.h: Declare warning flag warn_system_headers. |
5670 | * toplev.c: Define it. | |
5671 | (W_options): Add option -Wsystem-headers. | |
5672 | * diagnostic.c (count_error): Test warn_system_headers. | |
5673 | * invoke.texi: Add description for -Wsystem-headers. | |
317639a8 BC |
5674 | * cpplib.h (cpp_options): New member warn_system_headers. |
5675 | * cpphash.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Don't test | |
5676 | CPP_IN_SYSTEM_HEADER. | |
5677 | * cpplib.c (do_import, do_pragma_once): Likewise. | |
5678 | * cpperror.c (_cpp_begin_message): Test warn_system_headers | |
5679 | and CPP_IN_SYSTEM_HEADER. | |
5680 | * cppinit.c (handle_option): Recognize -Wsystem_headers. | |
5681 | (print_help): Describe -Wsystem_headers. | |
5682 | * cpplex.c (lex_line): Reorganize condition so that warnings | |
5683 | about C++ comments in system headers can be enabled. Remove | |
5684 | label do_line_comment. | |
5685 | ||
1c6d33ef NB |
5686 | Mon 25-Sep-2000 23:38:27 BST Neil Booth <neilb@earthling.net> |
5687 | ||
5688 | * cpplex.c (save_comment): Only store the initial '/' | |
5689 | now. | |
5690 | (lex_token): Combine handling of the two comment types. | |
b8dad04b | 5691 | Pass everything but the initial '/' to save_comment. |
1c6d33ef | 5692 | |
7de4d004 NB |
5693 | Mon 25-Sep-2000 23:31:45 BST Neil Booth <neilb@earthling.net> |
5694 | ||
5695 | * cpphash.h (_cpp_digraph_spellings, _cpp_process_directive, | |
5696 | _cpp_can_paste): New library-internal prototypes. | |
5697 | * cpplex.c (dump_param_spelling, output_line_command, | |
5698 | output_token, cpp_scan_buffer, cpp_scan_buffer_nooutput, | |
5699 | cpp_printf, cpp_output_list): Move to cppoutput.c. | |
5700 | (process_directive, can_paste, digraph_spellings): Add _cpp_ prefix. | |
5701 | * cppmacro.c (dump_macro_args, cpp_dump_definition) Move to | |
5702 | cppoutput.c. | |
5703 | * cppoutput.c (dump_macro_args, cpp_dump_definition, output_token, | |
5704 | dump_param_spelling, output_line_command, cpp_scan_buffer, | |
5705 | cpp_scan_buffer_nooutput, cpp_printf, cpp_output_list): Moved | |
5706 | from elsewhere. | |
5707 | * Makefile.in: Add cppoutput.c. | |
5708 | * po/POTFILES.in: Add cppoutput.c. | |
5709 | ||
66db6b45 RH |
5710 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
5711 | ||
5712 | * config/ia64/ia64.c (ia64_print_operand): Define 'e' as 64-n. | |
5713 | * config/ia64/ia64.md (rotrsi3): Allow variable rotates; don't | |
5714 | split until after reload. | |
5715 | (rotlsi3, rotldi3): New. | |
5716 | ||
4b40f758 GDR |
5717 | 2000-09-25 Gabriel Dos Reis <gdr@codesourcery.com> |
5718 | ||
5719 | * diagnostic.c (output_last_position): Define. | |
5720 | (set_real_maximum_length): Tweek. | |
5721 | * diagnostic.h (output_last_position): Declare. | |
5722 | ||
0f290768 KH |
5723 | 2000-09-25 Kazu Hirata <kazu@hxi.com> |
5724 | ||
5725 | * config/i386/i386.c: Fix formatting. | |
5726 | ||
90e9ee6c AL |
5727 | 2000-09-24 Alan Lehotsky <alehotsky@cygnus.com> |
5728 | ||
5729 | * emit-rtl-c (gen_lowpart_common): Accept non-paradoxical SUBREG when | |
5730 | UNITS_PER_WORD is small. | |
5731 | ||
0e00b68b JM |
5732 | 2000-09-25 Joseph S. Myers <jsm28@cam.ac.uk> |
5733 | ||
5734 | * c-common.c (format_char_info): Add flags2; update comments. | |
5735 | (print_char_table, scan_char_table, time_char_table): Split some | |
5736 | flags out into flags2. | |
5737 | (check_format_info): Use flags2 for those flags, for identifying | |
5738 | the initial character of a scanf scanset, and for identifying | |
5739 | printf formats where the '0' flag is ignored with precision. | |
5740 | ||
0a3e1f45 HPN |
5741 | 2000-09-25 Hans-Peter Nilsson <hp@axis.com> |
5742 | ||
5743 | Changes below marked "here" add TABs on either or both sides, | |
5744 | covering start of line, up to any operand for all noted .*ASM.*_OP | |
e8638df0 | 5745 | definitions. All callers changed. |
047c1c92 HPN |
5746 | * tm.texi: Make documented *_ASM.*_OP:s include spacing |
5747 | (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, SHARED_SECTION_ASM_OP, | |
5748 | BSS_SECTION_ASM_OP, SHARED_BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
5749 | ASM_BYTE_OP, FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
5750 | ASM_STABS_OP, ASM_STABD_OP, ASM_STABN_OP). | |
5751 | Fix typos in description for LONG_LONG_TYPE_SIZE and | |
5752 | FINI_SECTION_ASM_OP. | |
0a3e1f45 HPN |
5753 | * crtstuff.c (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Explain |
5754 | why these defaults don't have leading spacing. | |
5755 | * dbxout.c (ASM_STABS_OP, ASM_STABN_OP): Here. | |
5756 | * dwarf2out.c (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
5757 | UNALIGNED_DOUBLE_INT_ASM_OP, SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
5758 | * dwarfout.c (FILE_ASM_OP, VERSION_ASM_OP, | |
5759 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, ASM_BYTE_OP, | |
5760 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP): Here. | |
5761 | * defaults.h (ASM_STABD_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
5762 | * varasm.c (ASM_STABS_OP): Here. | |
5763 | * xcoffout.h (ASM_STABS_OP): Here. | |
e662a129 HPN |
5764 | * config/elfos.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, |
5765 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
5766 | INT_ASM_OP, ASCII_DATA_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, | |
5767 | STRING_ASM_OP): Here. | |
5768 | * config/freebsd.h (IDENT_ASM_OP): Here. | |
5769 | * config/linux-aout.h (SET_ASM_OP): Here. | |
5770 | * config/linux.h (SET_ASM_OP): Here. | |
5771 | * config/lynx.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
5772 | INT_ASM_OP): Here. | |
5773 | * config/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
5774 | * config/nextstep.h (EH_FRAME_SECTION_ASM_OP, ALIGN_ASM_OP): Here. | |
5775 | * config/openbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP): Here. | |
5776 | * config/psos.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
5777 | INT_ASM_OP): Here. | |
5778 | * config/ptx4.h (IDENT_ASM_OP, ASM_BYTE_OP, SET_ASM_OP, | |
5779 | SKIP_ASM_OP, ALIGN_ASM_OP, COMMON_ASM_OP, LOCAL_ASM_OP, | |
5780 | INT_ASM_OP, ASCII_DATA_ASM_OP, CONST_SECTION_ASM_OP, | |
5781 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
5782 | FINI_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP STRING_ASM_OP): Here. | |
5783 | * config/svr3.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5784 | CONST_SECTION_ASM_OP, ASM_BYTE_OP): Here. | |
8c13c7b3 HPN |
5785 | * config/a29k/udi.h (INT_ASM_OP): Here. |
5786 | * config/alpha/alpha-interix.h (CONST_SECTION_ASM_OP, | |
5787 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
5788 | SET_ASM_OP): Here. | |
5789 | * config/alpha/alpha.h (TEXT_SECTION_ASM_OP, | |
5790 | READONLY_DATA_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5791 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
5792 | UNALIGNED_DOUBLE_INT_ASM_OP, ASM_STABS_OP, ASM_STABN_OP, | |
5793 | ASM_STABD_OP): Here. | |
5794 | * config/alpha/elf.h (IDENT_ASM_OP, SKIP_ASM_OP, ALIGN_ASM_OP, | |
5795 | COMMON_ASM_OP, INT_ASM_OP, ASCII_DATA_ASM_OP, | |
5796 | CONST_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
5797 | BSS_SECTION_ASM_OP, SBSS_SECTION_ASM_OP, SDATA_SECTION_ASM_OP, | |
5798 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, TYPE_ASM_OP, | |
5799 | SIZE_ASM_OP, STRING_ASM_OP): Here. | |
5800 | * config/alpha/vms.h (LINK_SECTION_ASM_OP, | |
5801 | READONLY_SECTION_ASM_OP, LITERALS_SECTION_ASM_OP, | |
5802 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, COMMON_ASM_OP): Here. | |
5803 | * config/arc/arc.h (ASM_BYTE_OP, SET_ASM_OP): Here. | |
8202cda0 | 5804 | (PUSHSECTION_ASM_OP): Define this, not PUSHSECTION_FORMAT. |
8c13c7b3 HPN |
5805 | * config/arm/aof.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): |
5806 | Here. | |
5807 | * config/arm/aout.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5808 | BSS_SECTION_ASM_OP, SET_ASM_OP): Here. | |
5809 | * config/arm/coff.h (INT_ASM_OP): Here. | |
5810 | * config/arm/conix-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
5811 | * config/arm/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): Here. | |
5812 | * config/arm/linux-elf.h (IDENT_ASM_OP, CONST_SECTION_ASM_OP, | |
5813 | INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Here. | |
5814 | * config/arm/unknown-elf.h (UNALIGNED_WORD_ASM_OP): Here. | |
5815 | * config/avr/avr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5816 | ASM_BYTE_OP, TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP, | |
5817 | STRING_ASM_OP): Here. Update documentation copy in comments. | |
4e8aa65c HPN |
5818 | * config/c4x/c4x.h (ASM_STABS_OP, BSS_SECTION_ASM_OP): Here. |
5819 | * config/clipper/clipper.h (TEXT_SECTION_ASM_OP, | |
5820 | DATA_SECTION_ASM_OP): Here. | |
5821 | * config/clipper/clix.h (BSS_SECTION_ASM_OP, INIT_SECTION_ASM_OP): | |
5822 | Here. | |
5823 | * config/convex/convex.h (TEXT_SECTION_ASM_OP, | |
5824 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
5825 | * config/d30v/d30v.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5826 | BSS_SECTION_ASM_OP): Here. | |
5827 | * config/fr30/fr30.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5828 | BSS_SECTION_ASM_OP): Here. | |
5829 | * config/fx80/fx80.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
5830 | Here. | |
5831 | * config/gmicro/gmicro.h (TEXT_SECTION_ASM_OP, | |
5832 | DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
5833 | * config/h8300/h8300.h (ASM_WORD_OP): Here. | |
71d48a01 HPN |
5834 | * config/i370/i370.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, |
5835 | BSS_SECTION_ASM_OP): Here. | |
5836 | * config/i386/aix386.h (INIT_SECTION_ASM_OP): Here. | |
5837 | * config/i386/bsd.h (ASM_BYTE_OP): Here. | |
5838 | * config/i386/cygwin.h (SET_ASM_OP, INT_ASM_OP): Here. | |
5839 | * config/i386/dgux.h (CONST_SECTION_ASM_OP): Here. | |
5840 | * config/i386/djgpp.h (IDENT_ASM_OP, INT_ASM_OP, SET_ASM_OP): | |
5841 | Here. | |
5842 | * config/i386/freebsd-elf.h (SET_ASM_OP): Here. | |
5843 | * config/i386/freebsd.h (TYPE_ASM_OP, SIZE_ASM_OP, INT_ASM_OP): | |
5844 | Here. | |
5845 | * config/i386/i386-coff.h (CTORS_SECTION_ASM_OP, | |
5846 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
5847 | * config/i386/i386-interix.h (STRING_ASM_OP, CONST_SECTION_ASM_OP, | |
5848 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP, | |
5849 | SET_ASM_OP): Here. | |
5850 | * config/i386/i386elf.h (BSS_SECTION_ASM_OP): Here. | |
5851 | * config/i386/netbsd.h (INT_ASM_OP): Here. | |
5852 | * config/i386/openbsd.h (INT_ASM_OP): Here. | |
5853 | * config/i386/osfrose.h (TYPE_ASM_OP, SIZE_ASM_OP, SET_ASM_OP, | |
5854 | IDENT_ASM_OP): Here. | |
5855 | * config/i386/sco5.h (ALIGN_ASM_OP, ASCII_DATA_ASM_OP, | |
5856 | ASM_BYTE_OP, IDENT_ASM_OP, COMMON_ASM_OP, SET_ASM_OP, | |
5857 | LOCAL_ASM_OP, INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, STRING_ASM_OP, | |
5858 | SKIP_ASM_OP, GLOBAL_ASM_OP): Here. | |
5859 | * config/i386/seq-sysv3.h (SHARED_SECTION_ASM_OP, | |
5860 | SHARED_BSS_SECTION_ASM_OP): Here. | |
5861 | * config/i386/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
5862 | * config/i386/sun386.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
5863 | DATA_SECTION_ASM_OP): Here. | |
5864 | * config/i386/svr3gas.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5865 | CONST_SECTION_ASM_OP): Here. | |
5866 | * config/i386/sysv3.h (INIT_SECTION_ASM_OP): Here. | |
5867 | * config/i386/unix.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5868 | BSS_SECTION_ASM_OP): Here. | |
de323aa1 HPN |
5869 | * config/i860/bsd-gas.h (ASCII_DATA_ASM_OP): Here. |
5870 | * config/i860/bsd.h (ASCII_DATA_ASM_OP): Here. | |
5871 | * config/i860/fx2800.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP, | |
5872 | BSS_ASM_OP): Here, but use trailing spaces. | |
5873 | * config/i860/i860.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
5874 | DATA_SECTION_ASM_OP): Here. | |
5875 | * config/i860/paragon.h (ASCII_DATA_ASM_OP, BSS_SECTION_ASM_OP): | |
5876 | Here. | |
5877 | * config/i860/sysv3.h (ASCII_DATA_ASM_OP, CTORS_SECTION_ASM_OP, | |
5878 | DTORS_SECTION_ASM_OP, TDESC_SECTION_ASM_OP): Here. | |
5879 | * config/i860/sysv4.h (CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
5880 | TDESC_SECTION_ASM_OP): Here. | |
5881 | * config/i960/i960-coff.h (CTORS_SECTION_ASM_OP, | |
5882 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
5883 | * config/i960/i960.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
5884 | Here. | |
5885 | * config/ia64/ia64.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5886 | BSS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP, | |
5887 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
5888 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
5889 | * config/ia64/sysv4.h (ASM_BYTE_OP, STRING_ASM_OP, SKIP_ASM_OP, | |
5890 | COMMON_ASM_OP, ASCII_DATA_ASM_OP, INIT_SECTION_ASM_OP, | |
5891 | FINI_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
5892 | SDATA_SECTION_ASM_OP, SBSS_SECTION_ASM_OP): Here. | |
6e7b07a7 HPN |
5893 | * config/m32r/m32r.h (SCOMMON_ASM_OP): Here. |
5894 | * config/m68hc11/m68hc11.h (GLOBAL_ASM_OP): Here. | |
5895 | * config/m68k/auxas.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
5896 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
5897 | SET_ASM_OP): Here. | |
5898 | * config/m68k/coff.h (BSS_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
5899 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
5900 | * config/m68k/crds.h (BSS_SECTION_ASM_OP): Here. | |
5901 | * config/m68k/dpx2.h (ASM_BYTE_OP, GLOBAL_ASM_OP): Here. | |
5902 | * config/m68k/hp320.h (ASCII_DATA_ASM_OP, GLOBAL_ASM_OP): Here. | |
5903 | * config/m68k/linux.h (BSS_SECTION_ASM_OP): Here. | |
5904 | * config/m68k/lynx.h (BSS_SECTION_ASM_OP): Here. | |
5905 | * config/m68k/m68k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5906 | GLOBAL_ASM_OP): Here. | |
5907 | * config/m68k/m68kelf.h (SWBEG_ASM_OP, BSS_ASM_OP, | |
5908 | BSS_SECTION_ASM_OP): Here. | |
5909 | * config/m68k/m68kv4.h (BSS_ASM_OP): Here. | |
5910 | * config/m68k/mot3300.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5911 | ASCII_DATA_ASM_OP, SET_ASM_OP, CTORS_SECTION_ASM_OP, | |
5912 | DTORS_SECTION_ASM_OP, GLOBAL_ASM_OP, ASM_BYTE_OP, ALIGN_ASM_OP, | |
5913 | SKIP_ASM_OP): Here. | |
5914 | * config/m68k/newsgas.h (SET_ASM_OP): Here. | |
5915 | * config/m68k/rtemself.h (INIT_SECTION_ASM_OP, | |
5916 | FINI_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
5917 | * config/m68k/sgs.h (BYTE_ASM_OP, WORD_ASM_OP, LONG_ASM_OP, | |
5918 | SPACE_ASM_OP, ALIGN_ASM_OP, GLOBAL_ASM_OP, SWBEG_ASM_OP, | |
5919 | SET_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here, | |
5920 | but use trailing spaces. | |
5921 | * config/m68k/tower-as.h (TEXT_SECTION_ASM_OP, | |
5922 | DATA_SECTION_ASM_OP, GLOBAL_ASM_OP, INIT_SECTION_ASM_OP, | |
5923 | FINI_SECTION_ASM_OP, CONST_SECTION_ASM_OP, BSS_SECTION_ASM_OP): | |
5924 | Here. | |
5925 | * config/m88k/dgux.h (FINI_SECTION_ASM_OP, INIT_SECTION_ASM_OP, | |
5926 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
5927 | * config/m88k/m88k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
5928 | CONST_SECTION_ASM_OP, TDESC_SECTION_ASM_OP, CTORS_SECTION_ASM_OP, | |
5929 | DTORS_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5930 | IDENT_ASM_OP, FILE_ASM_OP, SECTION_ASM_OP, SET_ASM_OP, | |
5931 | GLOBAL_ASM_OP, ALIGN_ASM_OP, SKIP_ASM_OP, COMMON_ASM_OP, | |
5932 | BSS_ASM_OP, FLOAT_ASM_OP, DOUBLE_ASM_OP, INT_ASM_OP, SHORT_ASM_OP, | |
5933 | CHAR_ASM_OP, ASCII_DATA_ASM_OP, SBSS_ASM_OP, SCOMM_ASM_OP, | |
5934 | SDATA_SECTION_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP, INTERNAL_ASM_OP, | |
5935 | VERSION_ASM_OP, UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
5936 | PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, REQUIRES_88110_ASM_OP, | |
5937 | ASM_BYTE_OP): Here. | |
5938 | * config/m88k/openbsd.h (SET_ASM_OP): Here. | |
5939 | * config/m88k/sysv4.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5940 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP): Here. | |
78d057d8 HPN |
5941 | * config/mcore/mcore-elf.h (UNALIGNED_INT_ASM_OP, |
5942 | UNALIGNED_SHORT_ASM_OP, CTORS_SECTION_ASM_OP, | |
5943 | DTORS_SECTION_ASM_OP): Here. | |
5944 | * config/mcore/mcore-pe.h (CTORS_SECTION_ASM_OP, | |
5945 | DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
5946 | * config/mips/elf.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
5947 | BSS_SECTION_ASM_OP): Here. | |
5948 | * config/mips/elf64.h (TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
5949 | * config/mips/iris5.h (ABICALLS_ASM_OP): Here. | |
5950 | * config/mips/iris6.h (TYPE_ASM_OP, SIZE_ASM_OP, | |
5951 | POPSECTION_ASM_OP, BSS_SECTION_ASM_OP, CONST_SECTION_ASM_OP_32, | |
5952 | CONST_SECTION_ASM_OP_64, CTORS_SECTION_ASM_OP, | |
5953 | DTORS_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP): Here. | |
5954 | * config/mips/mips.c (ABICALLS_ASM_OP): Here. | |
5955 | * config/mips/mips.h (ASM_STABS_OP, ASM_STABN_OP, ASM_STABD_OP): | |
5956 | Here. | |
5957 | * config/mips/netbsd.h (TYPE_ASM_OP, SIZE_ASM_OP, WEAK_ASM_OP): | |
5958 | Here. | |
5959 | * config/mips/osfrose.h (SET_ASM_OP): Here. | |
5960 | * config/mips/sni-svr4.h (ABICALLS_ASM_OP): Here. | |
76bbee81 HPN |
5961 | * config/ns32k/encore.h (SHARED_SECTION_ASM_OP): Here. |
5962 | * config/ns32k/merlin.h (SHARED_SECTION_ASM_OP): Here. | |
5963 | * config/ns32k/ns32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
5964 | Here. | |
5965 | * config/ns32k/sequent.h (SHARED_SECTION_ASM_OP): Here. | |
5966 | * config/ns32k/tek6000.h (SHARED_SECTION_ASM_OP): Here. | |
5967 | * config/pa/pa-64.h (INT_ASM_OP, TYPE_ASM_OP, SIZE_ASM_OP): Here. | |
5968 | * config/pa/pa.h (ASM_STABS_OP, ASM_STABN_OP): Here. | |
5969 | * config/pj/pj.h (SET_ASM_OP, BSS_SECTION_ASM_OP): Here. | |
5970 | * config/pyr/pyr.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
5971 | Here. | |
5972 | * config/romp/romp.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
5973 | Here. | |
5974 | * config/rs6000/rs6000.h (SET_ASM_OP): Here. | |
5975 | * config/rs6000/sol2.h (ASM_STABN_OP): Here. | |
5976 | * config/rs6000/sysv4.h (SKIP_ASM_OP, LOCAL_ASM_OP, LCOMM_ASM_OP): | |
5977 | Here. | |
471b6f1b HPN |
5978 | * config/sh/sh.h (SET_ASM_OP, BSS_SECTION_ASM_OP, |
5979 | UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP): Here. | |
5980 | * config/sparc/linux.h (COMMON_ASM_OP): Here. | |
5981 | * config/sparc/linux64.h (COMMON_ASM_OP, | |
5982 | UNALIGNED_DOUBLE_INT_ASM_OP): Here. | |
5983 | * config/sparc/litecoff.h (BSS_SECTION_ASM_OP, | |
5984 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, INT_ASM_OP): Here. | |
5985 | * config/sparc/lynx.h (BSS_SECTION_ASM_OP): Here. | |
5986 | * config/sparc/pbd.h (ASM_INT_OP): Here. | |
5987 | * config/sparc/sp64-elf.h (UNALIGNED_LONGLONG_ASM_OP): Here. | |
5988 | * config/sparc/sparc.h (ASM_BYTE_OP, TEXT_SECTION_ASM_OP, | |
5989 | DATA_SECTION_ASM_OP, IDENT_ASM_OP): Here. | |
5990 | * config/sparc/sun4gas.h (UNALIGNED_DOUBLE_INT_ASM_OP, | |
5991 | UNALIGNED_INT_ASM_OP, UNALIGNED_SHORT_ASM_OP): Here. | |
5992 | * config/sparc/sysv4.h (STRING_ASM_OP, COMMON_ASM_OP, SKIP_ASM_OP, | |
5993 | UNALIGNED_DOUBLE_INT_ASM_OP, UNALIGNED_INT_ASM_OP, | |
5994 | UNALIGNED_SHORT_ASM_OP, PUSHSECTION_ASM_OP, POPSECTION_ASM_OP, | |
5995 | TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, BSS_SECTION_ASM_OP, | |
5996 | CONST_SECTION_ASM_OP, INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
5997 | CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, | |
5998 | EH_FRAME_SECTION_ASM_OP): Here. | |
5999 | * config/sparc/vxsim.h (COMMON_ASM_OP): Here. | |
6000 | * config/spur/spur.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
6001 | Here. | |
6002 | * config/tahoe/tahoe.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
6003 | Here. | |
6004 | * config/v850/v850.h (SCOMMON_ASM_OP, ZCOMMON_ASM_OP, | |
6005 | TCOMMON_ASM_OP): Here. | |
6006 | * config/vax/vax.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP): | |
6007 | Here. | |
6008 | * config/we32k/we32k.h (TEXT_SECTION_ASM_OP, DATA_SECTION_ASM_OP, | |
6009 | ASM_BYTE_OP): Here. | |
0a3e1f45 | 6010 | |
ea9ea008 RH |
6011 | 2000-09-25 Richard Henderson <rth@cygnus.com> |
6012 | ||
6013 | * expmed.c (store_bit_field): Adjust last change to not consider | |
6014 | any word-sized field naturally aligned. | |
6015 | ||
9e495700 RH |
6016 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
6017 | ||
6018 | * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle | |
6019 | TFmode unordered compares properly. Revalidate integer compare | |
6020 | operands. | |
6021 | (alpha_emit_setcc): New. | |
6022 | (alpha_emit_conditional_move): Revalidate integer compare operands. | |
6023 | * config/alpha/alpha-protos.h: Update. | |
6024 | * config/alpha/alpha.md (cmpdi): Allow general operands. | |
6025 | (sne): Use alpha_emit_setcc. | |
6026 | (seq, slt, sle, sgt, sge, sltu, sleu, sgtu, sgeu): Likewise. | |
6027 | (sunordered, sordered): New. | |
6028 | ||
2ed4af6f RH |
6029 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
6030 | ||
6031 | * config/ia64/ia64-protos.h: Update. | |
6032 | * config/ia64/ia64.c (call_multiple_values_operation): Remove. | |
6033 | (ia64_expand_call): New. | |
6034 | (ia64_expand_prologue): Emit an alloc if we need extra input | |
6035 | registers. | |
6036 | (ia64_expand_epilogue): New arg sibcall_p; don't emit the return | |
6037 | instruction if true. | |
6038 | (struct reg_flags): Add is_sibcall. | |
6039 | (rtx_needs_barrier): A sibcall does not use CFM et al. Ignore USEs. | |
6040 | (emit_insn_group_barriers): Set flags.is_sibcall. Remove hacks | |
6041 | for CODE_FOR_gr_spill_internal/CODE_FOR_gr_restore_internal. | |
6042 | * config/ia64/ia64.h (PREDICATE_CODES): Update. | |
6043 | * config/ia64/ia64.md (call): Use ia64_expand_call. | |
6044 | (call_value): Likewise. | |
6045 | (sibcall, sibcall_value): New. | |
6046 | (call patterns): Remove extra expanders; tidy. | |
6047 | (sibcall_epilogue): New. | |
6048 | (set_bsp): Remove the extra USE. Put the operand inside the UNSPEC. | |
6049 | ||
e1389cac RH |
6050 | 2000-09-24 Richard Henderson <rth@cygnus.com> |
6051 | ||
6052 | * emit-rtl.c (gen_lowpart_common): Use trunc_int_for_mode. | |
6053 | ||
fd442cef RH |
6054 | * sibcall.c (skip_pic_restore): New. |
6055 | (identify_call_return_value): Use it. | |
6056 | ||
c06aa51e MM |
6057 | 2000-09-24 Mark Mitchell <mark@codesourcery.com> |
6058 | ||
6059 | * c-tree.texi: Moved here from cp/ir.texi. Documented nested | |
6060 | functions. Generalize to handle both C and C++. | |
6061 | * Makefile.in (c-tree.info): New target. | |
6062 | (info): Add c-tree.info. | |
b8dad04b | 6063 | |
bd5dab53 RK |
6064 | Sun Sep 24 09:15:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6065 | ||
6066 | * expr.c (store_field): If BITSIZE is negative, use size of type. | |
6067 | (expand_expr, case COMPONENT_EXPR): Likewise. | |
6068 | ||
838f313b NB |
6069 | Sun 24-Sep-2000 11:40:23 BST Neil Booth <NeilB@earthling.net> |
6070 | ||
6071 | * cpplex.c: Update TODO comment. | |
6072 | * cpplib.c (do_error, do_warning): Merge common code of | |
6073 | do_error and do_warning into do_diagnostic. Use it. | |
6074 | (do_diagnostic): New function. | |
6075 | * cpplib.h: Fix comment typo. | |
6076 | ||
c5412f06 JM |
6077 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
6078 | ||
6079 | * c-common.c (check_format_info): Warn for a wide character string | |
6080 | used as a non-wide format argument. | |
6081 | ||
1c44c45d JM |
6082 | 2000-09-24 Joseph S. Myers <jsm28@cam.ac.uk> |
6083 | ||
6084 | * builtins.def (BUILT_IN_LLABS): Add. | |
6085 | * builtins.c (expand_builtin): Also abort on BUILT_IN_LLABS. | |
6086 | * c-common.c (c_common_nodes_builtins): Create builtin functions | |
6087 | __builtin_llabs, and plain llabs unless no_nonansi_builtins | |
6088 | outside of C99 mode. | |
6089 | (expand_tree_builtin): Handle BUILT_IN_LLABS. | |
6090 | ||
cbcff6df NB |
6091 | Sat 23-Sep-2000 22:39:18 BST Neil Booth <NeilB@earthling.net> |
6092 | ||
6093 | * cpphash.h (CPP_RESERVE, CPP_PUTS_Q, CPP_PUTS, CPP_PUTC_Q, | |
6094 | CPP_PUTC, DUMMY_TOKEN, NO_DUMMY_TOKEN): Delete. | |
6095 | * cpplex.c (_cpp_expand_token_space, _cpp_init_toklist, | |
6096 | _cpp_free_toklist): No need to worry about extra dummy token | |
6097 | at the start of token lists any more. | |
6098 | (trigraph_ok): Only warn outside comments. | |
6099 | (skip_block_comment): Set and clear lexing_comment. | |
6100 | (skip_line_comment): Take a cpp_reader not cpp_buffer. | |
6101 | Set and clear lexing_comment. | |
6102 | (parse_number): Handle leading '.' indicated by pfile->seen_dot. | |
6103 | (check_long_token): Delete. | |
6104 | (lex_percent, lex_dot): New subroutines of lex_token to | |
6105 | handle lexing of '.' and '%' without lookback. | |
6106 | (lex_token): Use lex_dot and lex_percent. | |
6107 | (lex_line): Don't check for LIST_OFFSET. | |
6108 | (_cpp_init_input_buffer): Update for new _cpp_init_toklist. | |
6109 | * cpplib.c (_cpp_parse_assertion): Similarly. | |
6110 | (cpp_push_buffer): Initialize extra_char. | |
6111 | * cpplib.h (LIST_OFFSET): Delete. | |
6112 | (struct cpp_buffer): New member extra_char. | |
6113 | (struct lexer_state): New members lexing_comment and seen_dot. | |
6114 | ||
2abdcaee JM |
6115 | 2000-09-23 Jason Merrill <jason@redhat.com> |
6116 | ||
6117 | * config/rs6000/x-aix41 (CLIB): Define here. | |
6118 | * config/rs6000/t-aix43: Not here. | |
6119 | * config/rs6000/t-aix41: Or here. Remove. | |
6120 | * configure.in: Don't use it. | |
6121 | ||
981d4858 JM |
6122 | 2000-09-22 Jason Merrill <jason@redhat.com> |
6123 | ||
2abdcaee JM |
6124 | * configure.in: Add test for HAVE_LD_DWARF_LINKONCE. |
6125 | * toplev.c: Use it to initialize flag_eliminate_dwarf2dups. | |
6126 | * config.in: Regenerate. | |
6127 | ||
981d4858 JM |
6128 | * configure.in: Fix checks for assembler features when using a |
6129 | one-tree assembler that has not yet been built. | |
6130 | Fix --disable-threads. | |
6131 | ||
afa223c6 GK |
6132 | 2000-09-19 Geoff Keating <geoffk@cygnus.com> |
6133 | ||
6134 | * stmt.c (expand_asm_operands): Allow # in constraints. | |
6135 | ||
a3a834aa JM |
6136 | 2000-09-22 Jason Merrill <jason@redhat.com> |
6137 | ||
6138 | * c-lex.c (skip_white_space): Just treat CRs as horizontal whitespace. | |
6139 | ||
6140 | * dbxout.c (dbxout_symbol_name): Just use DECL_NAME for | |
6141 | function-local names. | |
6142 | ||
18424ae1 BL |
6143 | 2000-09-22 Brad Lucier <lucier@math.purdue.edu> |
6144 | Mark Mitchell <mark@codesourcery.com> | |
6145 | ||
b8dad04b ZW |
6146 | * toplev.c (warn_disabled_optimization): Declare new warning flag. |
6147 | * flags.h (warn_disabled_optimization): Add it here. | |
6148 | * gcse.c (gcse_main): Add warning when disabled. | |
6149 | * invoke.texi: Document -Wdisabled-optimization. | |
18424ae1 | 6150 | |
1bfb5f8f JM |
6151 | 2000-09-21 Jason Merrill <jason@redhat.com> |
6152 | ||
6153 | * dwarf2out.c (add_const_value_attribute): Multiply by length, not 4. | |
6154 | ||
6155 | * dwarf2out.c (tree_add_const_value_attribute): New fn. | |
6156 | (gen_variable_die): Call it for non-definitions. | |
6157 | ||
6158 | * dwarf2out.c (die_struct): Add die_mark field. | |
6159 | (mark_dies, unmark_dies): New fns. | |
6160 | (clear_die_sizes): Remove. | |
6161 | (print_die): Check die_symbol rather than die_offset. | |
6162 | (build_abbrev_table, output_pubnames, output_aranges): Check | |
6163 | die_mark rather than die_offset. | |
6164 | (output_comp_unit): Move calc_die_sizes after build_abbrev_table. | |
6165 | Call mark_dies. | |
6166 | ||
2047e26f NB |
6167 | Thu 21-Sep-2000 18:19:05 BST Neil Booth <NeilB@earthling.net> |
6168 | ||
6169 | * cppfiles.c (lookup_include_file): Rename to open_file. | |
6170 | Always create a splay tree value, even on syscall failures. | |
6171 | Negative entries indicated by fd == -2. | |
6172 | Re-open files closed in the meantime. | |
6173 | (_cpp_fake_include): Create a negative splay tree entry. | |
6174 | (find_include_file, cpp_read_file): Update for function name | |
6175 | change. | |
6176 | * gcc.gd/cpp/mi4.c: Testcase. | |
6177 | ||
f27cd94d NC |
6178 | 2000-09-21 Nick Clifton <nickc@redhat.com> |
6179 | ||
2359a5e1 NC |
6180 | * config/arm/t-arm-elf (MULTILIB_DIRNAMES): Enable multilibs for |
6181 | ARM and THUMB modes. | |
6182 | ||
f27cd94d | 6183 | * config/mcore/mcore.c: Fix compile time warnings. |
b8dad04b | 6184 | * config/mcore/mcore-protos.h: Fix compile time warnings. |
f27cd94d | 6185 | |
7373064a DA |
6186 | 2000-09-20 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6187 | ||
6188 | * configure.in: Correct test of gcc_cv_glibc. | |
6189 | * configure: Rebuilt. | |
6190 | * config.in: Rebuilt. | |
6191 | ||
07328167 KG |
6192 | 2000-09-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6193 | ||
6194 | * builtins.c (expand_builtin_fputs): Also expand when length!=1. | |
6195 | (expand_builtin): Handle BUILT_IN_FWRITE. | |
6196 | ||
6197 | * builtins.def (BUILT_IN_FWRITE): New entry. | |
6198 | ||
6199 | * c-common.c (c_common_nodes_and_builtins): Declare __builtin_fwrite. | |
6200 | ||
5fa7c8ce RK |
6201 | Wed Sep 20 15:39:14 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6202 | ||
dc36ec2c RK |
6203 | * gcc.c (modify_target): New variable and struct. |
6204 | (process_command): Handle MODIFY_TARGET_NAME. | |
6205 | * tm.texi (MODIFY_TARGET_NAME): Add documentation for new macro. | |
6206 | * config/pa/pa.h (MODIFY_TARGET_NAME): New macro. | |
6207 | ||
5fa7c8ce RK |
6208 | * c-decl.c (finish_decl): Add else's to avoid referencing |
6209 | TYPE_DOMAIN of an ERROR_MARK. | |
6210 | ||
155b14a8 DC |
6211 | Wed Sep 20 21:44:31 2000 Denis Chertykov <denisc@overta.ru> |
6212 | ||
6213 | * config/avr/avr.c (adjust_insn_length): Adjust lengths of | |
6214 | `reload_in*' insns. | |
6215 | ||
6216 | 2000-09-19 Marek Michalkiewicz <marekm@linux.org.pl> | |
6217 | ||
6218 | * config/avr/avr.md (neghi2): Add alternative for input and output | |
6219 | operands in different registers, as in negsi2. | |
6220 | (*negsi2): Remove '*' from the name. Use "movw" if available. | |
6221 | ||
fd09c61f JW |
6222 | 2000-09-19 Jim Wilson <wilson@cygnus.com> |
6223 | ||
6224 | * config/ia64/crtbegin.asm (__dso_handle): Delete use of | |
6225 | HAVE_GAS_HIDDEN macro. | |
6226 | ||
7eea5554 NB |
6227 | Tue 19-Sep-2000 22:38:57 BST Neil Booth <NeilB@earthling.net> |
6228 | ||
6229 | * cpplex.c (lex_line): Drop the EOF token for unknown | |
6230 | directives in assembler. | |
6231 | ||
a473fe45 DE |
6232 | 2000-09-19 David Edelsohn <edelsohn@gnu.org> |
6233 | ||
6234 | * configure.in: Allow enable_threads_flag value of "aix". Define | |
fd60bf96 | 6235 | thread_file as "aix" for AIX 4.3 and above. |
a473fe45 | 6236 | * configure: Regenerated. |
fd60bf96 DE |
6237 | |
6238 | * gthr-aix.h: New file. | |
6239 | ||
a473fe45 DE |
6240 | * rs6000/t-aix43: Replace soft-float multilib with pthread. |
6241 | Remove 403 processor multilib match. Fix rios2 processor multilib | |
6242 | match. | |
6243 | ||
fd60bf96 DE |
6244 | * rs6000/aix.h (ASM_DECLARE_FUNCTION_NAME): Use function_section |
6245 | to return to appropriate csect. | |
6246 | ||
ad3fd36f KG |
6247 | 2000-09-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6248 | ||
6249 | * builtins.c (is_valid_printf_arglist, expand_builtin_printf): New | |
6250 | functions. | |
6251 | (expand_builtin_fputs): Set `target' parameter for `expand_expr'. | |
6252 | (expand_builtin): Handle BUILT_IN_PUTCHAR, BUILT_IN_PUTS and | |
6253 | BUILT_IN_PRINTF. | |
6254 | ||
6255 | * builtins.def (BUILT_IN_PUTCHAR, BUILT_IN_PUTS, BUILT_IN_PRINTF): | |
6256 | New entries. | |
6257 | ||
6258 | * c-common.c (init_function_format_info): Handle __builtin_printf. | |
6259 | Set `check_function_format_ptr'. | |
6260 | (c_common_nodes_and_builtins): Set `puts_ftype' and | |
6261 | `printf_ftype'. Declare __builtin_putchar, __builtin_puts, | |
6262 | __builtin_printf and printf. | |
6263 | ||
6264 | * tree.c, tree.h (check_function_format_ptr): Declare. | |
6265 | ||
6f3d20a0 NB |
6266 | Tue 19-Sep-2000 18:26:57 BST Neil Booth <NeilB@earthling.net> |
6267 | ||
b8dad04b | 6268 | * cppfiles.c (read_include_file): Take no special action for |
6f3d20a0 NB |
6269 | zero-length files. |
6270 | ||
b4f75276 BS |
6271 | 2000-09-19 Bernd Schmidt <bernds@redhat.co.uk> |
6272 | ||
afc6898e BS |
6273 | * final.c (insn_current_reference_address): Use INSN_SHUID of seq |
6274 | rather than that of branch. | |
6275 | (shorten_branches): Don't increment insn_current_address twice. | |
6276 | ||
b4f75276 BS |
6277 | Undo most of the Wed Jan 27 23:39:53 1999 patch: |
6278 | * loop.h (struct induction): Delete members derived, ix and last_use. | |
6279 | (struct loop_ivs): Delete members first_increment_giv and | |
6280 | last_increment_giv. | |
6281 | * loop.c (verify_dominator, find_life_end, cmp_recombine_givs_stats, | |
6282 | recombine_givs): Delete functions. | |
6283 | (find_and_verify_loops): Don't initialize cont_dominator. | |
6284 | (strength_reduce): Lose code to try to find bivs that can be | |
6285 | expressed as givs of another biv, and to convert biv increments | |
6286 | into givs. | |
6287 | Lose loop_scan_start variable, always use loop->scan_start. | |
6288 | Don't call recombine_givs. Don't handle derived givs. | |
6289 | (record_giv): Don't initialize derived and last_use fields. | |
6290 | (biv_eliminiation_giv_has_0_offset): Lose code to handle derived | |
6291 | givs. | |
6292 | * unroll.c (derived_regs): Delete static variable. | |
6293 | (unroll_loop): Don't initialize it. | |
6294 | (copy_loop_body): Lose code to handle derived givs. | |
6295 | (find_splittable_givs): Don't check for givs made from biv | |
6296 | increments. | |
6297 | Don't set derived_regs. | |
6298 | ||
0f805606 BS |
6299 | Fix misapplied earlier patch: |
6300 | * config/sh/sh.md (floatsisf_ie): Reenable. Remove explicit reference | |
6301 | to fpul. | |
6302 | (floatsisf2): Generate floatsisf_ie by default. | |
6303 | (floatsisf_i4): Conditional on TARGET_SH4. | |
6304 | ||
6305 | (floatsisf2, floatsidf2, extendsfdf2): Also use reg_no_subreg_operand | |
6306 | predicate for the expanders. | |
6307 | ||
8aa0e194 RH |
6308 | 2000-09-19 Richard Henderson <rth@cygnus.com> |
6309 | ||
0d97fd9e RH |
6310 | * config/i386/i386.h (CPP_CPU_SPEC): Define i586 and i686 symbols |
6311 | in addition to pentium and pentiumpro symbols. | |
6312 | (CPP_CPU_DEFAULT_SPEC): Likewise. | |
6313 | ||
39b726dd RH |
6314 | * c-typeck.c (c_expand_asm_operands): Restore the output tree |
6315 | after expanding. | |
6316 | ||
9790cefd RH |
6317 | * stmt.c (expand_expr_stmt): Only call warn_if_unused_value |
6318 | if the tree has side effects. | |
6319 | (warn_if_unused_value): Do not warn about void constructs. | |
6320 | ||
8e5a0fcb RH |
6321 | * c-decl.c (poplevel): Invoke warn_about_unused_variables. |
6322 | ||
8aa0e194 RH |
6323 | * unroll.c (copy_loop_body): Update LABEL_NUSES before |
6324 | calling invert_jump. | |
6325 | ||
62f7f1f5 GK |
6326 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
6327 | ||
6328 | * combine.c (can_combine_p): Don't substitute an ASM_OPERANDS | |
6329 | into anything. | |
6330 | ||
3f80e6ac KG |
6331 | 2000-09-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
6332 | ||
6333 | * Makefile.in (c-common.o): Depend on diagnostic.h. | |
6334 | ||
6335 | * c-common.c: Include diagnostic.h. | |
6336 | (tfaff): Delete. | |
6337 | (status_warning): New function. | |
6338 | (check_format_info, maybe_read_dollar_number, check_format_types, | |
6339 | finish_dollar_format_checking, check_function_format): Accept a | |
6340 | `status' parameter. All callers changed. | |
6341 | ||
6342 | * c-common.h (check_function_format): Accept a `status' parameter. | |
6343 | ||
6344 | * c-typeck.c: Update call to `check_function_format'. | |
6345 | ||
cfbd829c RH |
6346 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
6347 | ||
6348 | * c-decl.c (c_expand_body): Call mark_varargs before | |
6349 | expand_function_start. | |
6350 | ||
c21d86e1 GK |
6351 | 2000-09-18 Geoff Keating <geoffk@cygnus.com> |
6352 | ||
6353 | * config/rs6000/eabi-cn.asm: Use /**/ to delimit comments, not #. | |
6354 | * config/rs6000/eabi-ci.asm: Likewise. | |
6355 | ||
f0417c82 RH |
6356 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
6357 | ||
6358 | * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx | |
6359 | for BImode. | |
6360 | ||
226ed43f JW |
6361 | 2000-09-18 Jim Wilson <wilson@cygnus.com> |
6362 | ||
5c3c320e JW |
6363 | * unroll.c (loop_iterations): Pass increment to extend_for_giv_value |
6364 | before passing it to fold_rtx_mult_add. | |
6365 | ||
ec919c98 JW |
6366 | * unroll.c (final_giv_value): Pass increment through |
6367 | extend_value_for_giv before passing it to emit_iv_add_mult. | |
6368 | ||
226ed43f JW |
6369 | * function.c (fixup_var_refs_1, case ZERO_EXTRACT): If we have a |
6370 | paradoxical subreg, then directly substitute the replacement and | |
6371 | return. | |
6372 | ||
b542c0fb NB |
6373 | Mon 18-Sep-2000 22:12:44 BST Neil Booth <NeilB@earthling.net> |
6374 | ||
b4f75276 | 6375 | * cpp.texi: Update documentation, including some clarifications, |
b542c0fb NB |
6376 | the treatment of various newline combinations, and space between |
6377 | backslash and newline. | |
6378 | ||
800a6a0c R |
6379 | Mon Sep 18 21:00:47 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
6380 | ||
6381 | * sdbout.c (PUT_SDB_DEF, PUT_SDB_TAG, PUT_SDB_EPILOGUE_END): | |
6382 | Replace ASM_OUTPUT_LABELREF with assemble_name. | |
6383 | ||
50ceefc2 R |
6384 | Mon Sep 18 20:26:50 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
6385 | ||
6386 | * sh.c (addsubcosts): CONST is not cheap. | |
6387 | (find_barrier): For Sh1, take alignment after jumps into account. | |
6388 | ||
659e47fb AH |
6389 | 2000-09-15 Andrew Haley <aph@redhat.com> |
6390 | ||
6391 | * toplev.c (rest_of_compilation): Call purge_hard_subreg_sets to | |
6392 | remove all SETs of SUBREGs of hard registers. | |
7373064a | 6393 | * function.c (purge_hard_subreg_sets): New function. |
659e47fb AH |
6394 | (purge_single_hard_subreg_set): New function. |
6395 | * rtl.h: (purge_hard_subreg_sets): New function. | |
6396 | ||
f2f90c63 RH |
6397 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
6398 | ||
6399 | * config/ia64/ia64-protos.h: Update. | |
6400 | * config/ia64/ia64.c (signed_inequality_operator): New. | |
6401 | (ia64_expand_compare): New. | |
6402 | (ia64_register_move_cost): Handle PR_REGS moves. | |
6403 | (ia64_secondary_reload_class): Require a GR when moving to a PR. | |
6404 | (struct reg_write_state): Add written_by_and/or. | |
6405 | (struct reg_flags): Add is_and/or. | |
6406 | (rws_update): Set them. | |
6407 | (rws_access_regno): Test them to allow parallel comparisons. | |
6408 | (rtx_needs_barrier): Recognize parallel comparisons. | |
6409 | (emit_insn_group_barriers): Set prev_insn after a call stop bit. | |
6410 | Call recog_memoized; ignore pred_rel_mutex. | |
6411 | (emit_predicate_relation_info): Don't call find_basic_blocks here. | |
6412 | (ia64_reorg): Do it here instead. | |
6413 | * config/ia64/ia64.h: s/CCmode/BImode/g | |
6414 | (MODES_TIEABLE_P): Don't tie BImode. | |
6415 | (PREFERRED_RELOAD_CLASS): Do not reload operations into AR regs. | |
6416 | (CONST_COSTS): Pick sensible values for CONST_INT based on context. | |
6417 | (RTX_COSTS): Make multiply 4 insns. | |
6418 | (MEMORY_MOVE_COST): New. | |
6419 | (PREDICATE_CODES): Update. | |
6420 | * config/ia64/ia64.md: s/CCmode/BImode/g | |
6421 | (movcci, movbi): New. | |
6422 | (andbi3, andcmbi3, iorbi3, iorcmbi3, one_cmplbi2): New. | |
6423 | (cmpsi_and_0, cmpsi_and_1, cmpsi_andnot_0, cmpsi_andnot_1): New. | |
6424 | (cmpdi_and_0, cmpdi_and_1, cmpdi_andnot_0, cmpdi_andnot_1): New. | |
6425 | (tbit_and_0, tbit_and_1, tbit_and_2, tbit_and_3): New. | |
6426 | (cmpsi_or_0, cmpsi_or_1, cmpsi_orcm_0, cmpsi_orcm_1): New. | |
6427 | (cmpdi_or_0, cmpdi_or_1, cmpdi_orcm_0, cmpdi_orcm_1): New. | |
6428 | (tbit_or_0, tbit_or_1, tbit_or_2, tbit_or_3): New. | |
6429 | (mulsi, muldi): Use xmpy not xma. | |
6430 | (cmpbi): New. | |
6431 | (movcc, movcc_internal): Remove. | |
6432 | (branch expanders): Use ia64_expand_compare. | |
6433 | (setcc expanders): Likewise. | |
6434 | (cmov insns): Use move_operand and ia64_move_ok. | |
6435 | (pred_rel_mutex): Use unspec not unspec_volatile. Prevent the | |
6436 | scheduler from moving it past a use. | |
6437 | * config/ia64/build.hacks: Remove. | |
6438 | ||
0d9f234d NB |
6439 | Mon 18-Sep-2000 19:21:35 BST Neil Booth <NeilB@earthling.net> |
6440 | ||
6441 | * cpphash.h (HASHSTEP): Take character rather than pointer | |
6442 | to character. | |
6443 | (_cpp_check_directive, _cpp_check_linemarker): Update prototypes. | |
6444 | ||
6445 | * cpphash.c (cpp_loookup): Update for new HASHSTEP. | |
6446 | ||
6447 | * cpplex.c (auto_expand_name_space, trigraph_replace, | |
6448 | backslash_start, handle_newline, parse_name, INIT_TOKEN_STR, | |
6449 | IMMED_TOKEN, PREV_TOKEN_TYPE, PUSH_TOKEN, REVISE_TOKEN, | |
6450 | BACKUP_TOKEN, BACKUP_TRIGRAPH, MIGHT_BE_DIRECTIVE, | |
6451 | KNOWN_DIRECTIVE): Delete. | |
6452 | ||
6453 | (handle_newline, check_long_token, skip_escaped_newlines, | |
6454 | unterminated): New functions. | |
6455 | (ACCEPT_CHAR, SAVE_STATE, RESTORE_STATE): New macros. | |
6456 | ||
6457 | (parse_identifier): Was parse_name, new implementation. | |
6458 | (skip_line_comment, skip_block_comment, skip_whitespace, | |
6459 | parse_number, parse_string, trigraph_ok, save_comment, | |
6460 | adjust_column, _cpp_get_line): New implementations. | |
6461 | ||
6462 | (lex_token): New function. Lexes a token at a time, looking | |
6463 | forwards. Contains most of the guts of the old lex_line. | |
6464 | (lex_line): New implementation, using lex_token to obtain | |
6465 | individual tokens. | |
6466 | (cpp_scan_buffer): Use the token's line, not the list's line. | |
6467 | ||
6468 | * cpplib.c (_cpp_check_directive, _cpp_check_linemarker): | |
6469 | New implementations. | |
6470 | (do_assert): Don't bother setting the answer's list's line. | |
6471 | (cpp_push_buffer): Initialise new pfile and read_ahead members | |
6472 | of struct cpp_buffer. | |
6473 | ||
6474 | * cpplib.h (cppchar_t): New typedef. | |
6475 | (struct cpp_buffer): read_ahead, pfile and col_adjust are | |
6476 | new members. | |
6477 | (struct lexer_state): New structure that determines the state | |
6478 | and behaviour of the lexer. | |
6479 | (IN_DIRECTIVE, KNOWN_DIRECTIVE): New macros. | |
6480 | (struct cpp_reader): New member "state". Rename | |
6481 | multiline_string_line and multiline_string_column. Delete | |
6482 | col_adjust, in_lex_line members. | |
6483 | (CPP_BUF_COLUMN): Update. | |
6484 | ||
a191f0ee RH |
6485 | 2000-09-18 Richard Henderson <rth@cygnus.com> |
6486 | ||
9f8e169e RH |
6487 | * combine.c (simplify_comparison): Shift a NOT out of a single |
6488 | bit test. | |
6489 | ||
1f3f36d1 RH |
6490 | * combine.c (if_then_else_cond): Canonicalize BImode true to |
6491 | STORE_FLAG_VALUE. | |
6492 | * explow.c (trunc_int_for_mode): Likewise. | |
6493 | ||
5bd60ce6 RH |
6494 | * combine.c (combine_simplify_rtx): Use gen_unary to distribute |
6495 | the NOT for De Morgan's rule. | |
6496 | * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT | |
6497 | of a comparison to the reverse comparison. | |
6498 | ||
d340408c RH |
6499 | * combine.c (try_combine): Allow split to create a single insn. |
6500 | ||
a191f0ee RH |
6501 | * machmode.def: Add BImode. Add a column for bitsize. |
6502 | * machmode.h (DEF_MACHMODE): Adjust for extra column. | |
6503 | (GET_MODE_BITSIZE): Use it. | |
6504 | * rtl.c (DEF_MACHMODE): Adjust for extra column. | |
6505 | (mode_bitsize): New. | |
6506 | (mode_mask_array): Use bitsize. | |
6507 | * combine.c (combine_simplify_rtx): Require inner and outer | |
6508 | modes to match on nonzero_bits optimizations. | |
6509 | ||
5d77a50c BS |
6510 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
6511 | ||
6512 | * reload1.c (forget_old_reloads_1): If a hard reg is stored, clear | |
6513 | its entry in spill_reg_store. | |
0fb8cb90 | 6514 | * config/sh/lib1funcs.ams (movstr_i4 functions): Always compile in. |
2e361e59 BS |
6515 | * sh.c (reg_no_subreg_operand): New function. |
6516 | * sh-protos.h (reg_no_subreg_operand): Declare it. | |
6517 | * sh.h (PREDICATE_CODES): Add it. | |
6518 | * sh.md (floatsisf2_i4, floatsidf2_i, extendsfdf2_i4): Use it for | |
6519 | input operand that needs to be in fpul. | |
6520 | (fix_truncsfsi2, fix_truncsfsi2_i4): Use register_operand for output. | |
42d5d0f1 BS |
6521 | * sh.c (find_barrier): Take into account that machine_dependent_reorg |
6522 | might add new insns. | |
5d77a50c | 6523 | |
55eec660 AO |
6524 | 2000-09-18 Alexandre Oliva <aoliva@redhat.com> |
6525 | ||
40fc375d AO |
6526 | * config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as |
6527 | MAYBE_DEAD. | |
6528 | (sh_expand_epilogue): Take the PIC register into account when | |
6529 | computing the frame size. | |
6530 | ||
55eec660 AO |
6531 | * config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs. |
6532 | * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect | |
6533 | LABEL_REFs with a PIC-safe unspec. | |
6534 | ||
fc6df7e1 JM |
6535 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
6536 | ||
6537 | * c-common.c (check_format_info): Properly save the argument | |
6538 | number and parameter for $ operand number formats in case width | |
6539 | and precision arguments are also used. Allow printf width and | |
6540 | precision arguments to have operand numbers even if none was | |
6541 | specified for the main format, since this is OK for %*.*m. Only | |
6542 | object to missing $ operand number if the format used requires an | |
6543 | argument. | |
6544 | ||
effa5541 JM |
6545 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
6546 | ||
6547 | * c-common.c (format_char_info): Add 'W' flag to comment. | |
6548 | (print_char_table, scan_char_table): Use it. | |
6549 | (check_format_info): Use the 'W' flag to determine whether a | |
6550 | format argument is written into. | |
6551 | ||
99303ae4 JM |
6552 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
6553 | ||
6554 | * c-common.c (check_format_types): Reorganise and clean up, | |
6555 | checking earlier for ERROR_MARKs and making cur_type into its | |
6556 | TYPE_MAIN_VARIANT where convenient. | |
6557 | ||
9231abf2 JM |
6558 | 2000-09-18 Joseph S. Myers <jsm28@cam.ac.uk> |
6559 | ||
6560 | * gcc.c (cpp_options): Add specs for __STDC_HOSTED__. | |
6561 | ||
cf67d231 BS |
6562 | 2000-09-18 Bernd Schmidt <bernds@redhat.co.uk> |
6563 | ||
6564 | * optabs.c (emit_libcall_block): Set CONST_CALL_P for the call. | |
6565 | ||
bd793c65 BS |
6566 | * i386-protos.h (ix86_init_builtins, ix86_expand_builtin): Declare. |
6567 | * i386.c (struct builtin_description): New. | |
6568 | (bdesc_comi, bdesc_2arg, bdesc_1arg): New arrays. | |
6569 | (mmx_reg_operand): Declare MODE arg as unused. | |
6570 | (ix86_expand_sse_comi, ix86_expand_sse_compare, safe_vector_operand, | |
6571 | ix86_expand_unop1_builtin, ix86_expand_unop_builtin, | |
6572 | ix86_expand_binop_builtin, ix86_expand_store_builtin, | |
6573 | ix86_init_builtins, ix86_expand_builtin): New functions. | |
6574 | * i386.h (ix86_builtins): New enumeration. | |
6575 | (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): New macros. | |
6576 | * i386.md (attr length_immediate): 0 for mmx/sse types. | |
6577 | (attr prefix_0f): 1 for mmx/sse types. | |
6578 | (setcc_2): Remove "*" so we get gen_setcc_2. | |
6579 | (emms): Account for changed register numbering. Set "memory" attr | |
6580 | to unknown. | |
6581 | (sfence): Set "memory" attr to unknown. | |
6582 | ||
4070d885 AJ |
6583 | 2000-09-18 Andreas Jaeger <aj@suse.de> |
6584 | ||
6585 | * configure.in: Define _GNU_SOURCE only when using the GNU C | |
6586 | Library. | |
a191f0ee RH |
6587 | * configure: Regenerated. |
6588 | * config.in: Regenerated. | |
4070d885 | 6589 | |
2ac86f90 MM |
6590 | 2000-09-17 Mark Mitchell <mark@codesourcery.com> |
6591 | ||
31a1fdad MM |
6592 | * cppinit.c (cpp_init): Don't use ANSI prototypes. |
6593 | * flow.c (flow_dump_loop): Likewise. | |
6594 | (flow_loops_dump): Likewise. | |
6595 | ||
2ac86f90 MM |
6596 | * c-typeck.c (c_start_case): Fix typo. |
6597 | ||
60e9d01c JM |
6598 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
6599 | ||
6600 | * c-decl.c (grokdeclarator): Don't give a warning about defaulting | |
6601 | to int for plain complex which defaults to complex double. Do | |
6602 | warn about defaulting to complex double if pedantic. Warn about | |
6603 | complex integer types if pedantic. Warn about complex types if | |
6604 | pedantic and not in C99 mode. | |
6605 | * c-typeck.c (build_unary_op): If pedantic, warn about use of ~ | |
6606 | for complex conjugation. | |
6607 | ||
bc5006c7 JM |
6608 | 2000-09-17 Joseph S. Myers <jsm28@cam.ac.uk> |
6609 | ||
6610 | * contrib.texi: Update my entry. | |
6611 | ||
7e3bd81e DC |
6612 | Sun Sep 17 18:48:32 2000 Denis Chertykov <denisc@overta.ru> |
6613 | ||
23cb1766 RK |
6614 | * config/avr/avr.md (mcu_enhanced): New attribute. |
6615 | (mcu_mega): Likewise. | |
6616 | (extendhisi2): Use mcu_enhanced. | |
6617 | (zero_extendhisi2): Likewise. | |
6618 | (call_insn): Use mcu_enhanced and mcu_mega. | |
6619 | (call_value_insn): Likewise. | |
6620 | (*sbrx_branch): Use mcu_mega. | |
6621 | (*sbrx_and_branchsi): Likewise. | |
6622 | (*sbrx_and_branchhi): Likewise. | |
6623 | (*tablejump_lib): Likewise. | |
7e3bd81e | 6624 | |
6a51f4a0 RK |
6625 | Sun Sep 17 10:46:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
6626 | ||
ec569656 RK |
6627 | * alias.c (true_dependence): Allow non-unchanging read to conflict |
6628 | with unchanging write. | |
6629 | ||
23cb1766 RK |
6630 | * expr.c (store_constructor_field): Accept ALIAS_SET arg. |
6631 | (store_constructor): Pass alias_set to it. | |
6632 | ||
a52fb89b RK |
6633 | * c-decl.c (grokdeclarator): Reorder tests to avoid looking at |
6634 | TYPE_MAIN_VARIANT of ERROR_MARK. | |
6635 | * c-lex.c (readescape): Avoid using printf syntax we don't recognize. | |
6636 | ||
6a51f4a0 RK |
6637 | * simplify-rtx.c (simplify_unary_operation): Add cases |
6638 | FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0. | |
6639 | ||
ebb1b59a BS |
6640 | 2000-09-17 Bernd Schmidt <bernds@redhat.co.uk> |
6641 | ||
a191f0ee | 6642 | * expr.h (emit_library_call, emit_library_call_value): Delete |
ebb1b59a BS |
6643 | declarations. |
6644 | * rtl.h (enum libcall_type): New. | |
6645 | (emit_library_call, emit_library_call_value): Change fn_type arg to | |
a191f0ee | 6646 | be of type enum libcall_type. |
ebb1b59a BS |
6647 | * calls.c: Likewise for the function definitions. Several callers |
6648 | throughout changed to use the new enumeration appropriately. | |
6649 | (emit_library_call_value_1): Likewise. Put back code to make libcall | |
a191f0ee | 6650 | blocks of equal form, but only use it for the two new higher |
ebb1b59a BS |
6651 | enumeration values. |
6652 | ||
8f17b5c5 MM |
6653 | 2000-09-16 Mark Mitchell <mark@codesourcery.com> |
6654 | ||
6655 | Convert the C front-end to use function-at-a-time mode. | |
6656 | * c-common.h: Include splay-tree.h. | |
6657 | (C_DECLARED_LABEL_FLAG): New macro. | |
6658 | (struct language_function): Add x_scope_stmt_stack and | |
6659 | x_function_name_declared_p. | |
6660 | (RECHAIN_STMTS): Move definition. | |
6661 | (lang_statment_code_p): Likewise. | |
6662 | (lang_expand_stmt): Likewise. | |
6663 | (lang_expand_decl_stmt): New variable. | |
6664 | (lang_expand_function_end): Likewise. | |
6665 | (current_scope_stmt_stack): New function. | |
6666 | (add_decl_stmt): Likewise. | |
6667 | (add_scope_stmt): Likewise. | |
6668 | (mark_stmt_tree): Likewise. | |
6669 | (struct c_lang_decl): New structure. | |
6670 | (DECL_SAVED_TREE): Define. | |
6671 | (c_mark_lang_decl): New function. | |
6672 | (c_expand_start_cond): Change prototype. | |
6673 | (c_finish_then): New function. | |
6674 | (c_finish_else): Likewise. | |
6675 | (current_function_name_declared): Remove. | |
6676 | (set_current_function_name_declared): Likewise. | |
6677 | (mark_c_language_function): Declare. | |
6678 | (case_compare): Likewise. | |
6679 | (c_add_case_label): Likewise. | |
6680 | (c_expand_expr): Likewise. | |
6681 | (c_safe_from_p): Likewise. | |
6682 | * c-common.c (lang_expand_function_end): New variable. | |
6683 | (struct if_elt): Add if_stmt. | |
6684 | (c_expand_start_cond): Add the if-statement to the statement-tree, | |
6685 | rather than generating RTL. | |
6686 | (c_finish_then): New function. | |
6687 | (c_expand_start_else): Don't generate RTL. | |
6688 | (c_finish_else): New function. | |
6689 | (c_expand_expr_stmt): Don't generate RTL. | |
6690 | (statement_code_p): Add SCOPE_STMT. | |
6691 | (case_compare): New function. | |
6692 | (c_add_case_label): Likewise. | |
6693 | (mark_stmt_tree): Likewise. | |
6694 | (c_mark_lang_decl): Likewise. | |
6695 | (mark_c_language_function): Likewise. | |
6696 | (c_expand_expr): Likewise. | |
6697 | (c_safe_from_p): Likewise. | |
6698 | * c-decl.c (c_stmt_tree): New variable | |
6699 | (c_scope_stmt_stack): Likewise. | |
6700 | (c_function_name_declared_p): Likewise. | |
6701 | (lang_expand_expr_stmt): Remove. | |
6702 | (poplevel): Don't call output_inline_function for nested | |
6703 | functions. | |
6704 | (pushdecl): Don't set DECL_CONTEXT for a local declaration of an | |
6705 | `extern' function. | |
6706 | (redeclaration_error_message): Change means of computing whether | |
6707 | or not a function is nested. | |
6708 | (lookup_label): Don't call label_rtx. | |
6709 | (init_decl_processing): Add more GC roots. | |
6710 | (start_decl): Add DECL_STMTs to the statement-tree, rather than | |
6711 | calling rest_of_decl_compilation. | |
6712 | (finish_decl): Don't call expand_decl. | |
6713 | (store_parm_decls): Begin the statement-tree, but don't generate | |
6714 | RTL. | |
6715 | (finish_function): Tie off the statement-tree. Call c_expand_body | |
6716 | if appropriate. | |
6717 | (c_expand_body): New function. | |
6718 | (push_c_function_context): Save more information. | |
6719 | (pop_c_function_contxt): Likewise. | |
6720 | (copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it. | |
6721 | (lang_mark_tree): Mark it. | |
6722 | (current_stmt_tree): Adjust. | |
6723 | (current_scope_stmt_stack): New function. | |
6724 | (do_case): Remove. | |
6725 | (set_current_name_declared): Likewise. | |
6726 | (c_begin_compound_stmt): Define. | |
6727 | (c_expand_decl_stmt): Likewise. | |
6728 | * c-lang.c: Include rtl.h and expr.h. | |
6729 | (lang_init): Set more language-specific hooks. | |
6730 | * c-lex.c: Include expr.h. | |
6731 | * c-parse.in: Changes throughout to add statements to the | |
6732 | statement-tree, rather than generating RTL after every statement. | |
6733 | * c-semantics.c (lang_expand_decl_stmt): Define. | |
6734 | (add_decl_stmt): New function. | |
6735 | (add_scope_stmt): Likewise. | |
6736 | (finish_stmt_tree): Tweak. | |
6737 | (genrtl_expr_stmt): Likewise. | |
6738 | (genrtl_decl_stmt): Handle local labels, and call | |
6739 | lang_expand_decl_stmt if required. | |
6740 | (genrtl_for_stmt): Fix line-number handling. | |
6741 | (genrtl_case_label): Handle cleanups. | |
6742 | (genrtl_asm_stmt): Don't call combine_strings. | |
6743 | (genrtl_compound_stmt): Simplify. | |
6744 | (expand_stmt): Handle SCOPE_STMTs. | |
6745 | * c-tree.h (struct lang_decl): New structure. | |
6746 | (C_DECLARED_LABEL_FLAG): Remove. | |
6747 | (c_begin_compound_stmt): Declare. | |
6748 | (c_expand_decl_stmt): Likewise. | |
6749 | (c_expand_start_case): Rename to c_start_case. | |
6750 | (c_finish_case): New function. | |
6751 | * c-typeck.c (start_init): Tweak setting of | |
6752 | constructor_incremental. | |
6753 | (c_expand_asm_operands): Tweak error-handling. Add to the | |
6754 | statement-tree. | |
6755 | (c_expand_return): Add to the statement-tree. | |
6756 | (c_expand_start_case): Rename to ... | |
6757 | (c_start_case): ... this. | |
6758 | (struct c_switch): New type. | |
6759 | (switch_stack): New variable. | |
6760 | (do_case): Simplify. | |
6761 | (c_finish_case): New function. | |
6762 | * dependence.c: Include expr.h. | |
6763 | (enum dependence_type): Change spelling of enumerals. | |
6764 | (check_node_dependence): Adjust. | |
6765 | * expr.h (lang_safe_from_p): Declare. | |
6766 | (safe_from_p): Likewise. | |
6767 | * expr.c (lang_safe_from_p): New variable. | |
6768 | (safe_from_p): Give it external linkage. Use lang_safe_from_p. | |
6769 | * stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type. | |
6770 | * toplev.c (rest_of_decl_compilation): Robustify. | |
6771 | * tree.c (contains_placeholder_p): Likewise. | |
6772 | * Makefile.in: Update dependencies. | |
6773 | * objc/objc-act.h: Adjust calculation of value for dummy_tree_code. | |
6774 | * objc/objc-act.c: Include rtl.h, expr.h, and c-common.h. | |
6775 | (objc_expand_function_end): New function. | |
6776 | (finish_method_def): Use it. | |
6777 | (init_objc): Initialize more language-specific hooks. | |
6778 | * objc/Make-lang.in: Update dependencies. | |
7373064a | 6779 | |
4797e955 GK |
6780 | 2000-09-16 Geoffrey Keating <geoffk@cygnus.com> |
6781 | ||
6782 | * configure.in: Define macros that affect features before | |
6783 | testing for features. Don't define _XOPEN_SOURCE. | |
6784 | * configure: Regenerated. | |
6785 | * config.in: Regenerated. | |
6786 | ||
ae0fb1b9 JW |
6787 | Sat Sep 16 19:42:50 EDT 2000 John Wehle (john@feith.com) |
6788 | ||
6789 | * rtlanal.c (rtx_varies_p): Volatile asms vary. | |
6790 | (rtx_unstable_p): Restructure code. Volatile asms | |
6791 | are unstable. | |
6792 | ||
5748b2cb | 6793 | Sat Sep 16 14:35:55 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
ae0f4dee | 6794 | |
87c31d6b RK |
6795 | * function.h (no_debugging_symbols): New field. |
6796 | * integrate.c (save_for_inline): Renamed from save_for_inline_nocopy. | |
6797 | Initialize no_debugging_symbols. | |
6798 | (output_inline_function): Save and restore write_symbols and set from | |
6799 | no_debugging_symbols. | |
6800 | * toplev.c (rest_of_compilation): Call save_for_inline. | |
6801 | * tree.h: Update comment. | |
7373064a | 6802 | |
5748b2cb RK |
6803 | * stor-layout.c (place_field): Don't do anything if field or |
6804 | its type are ERROR_MARK. | |
6805 | ||
6806 | Sat Sep 16 19:14:00 2000 Laurynas Biveinis <lauras@softhome.net> | |
6807 | ||
6808 | * cppfiles.c (purge_cache): Use munmap only if MMAP_THRESHOLD defined. | |
6809 | (read_include_file): Ensure inc->mmaped is initialized. | |
ae0f4dee | 6810 | |
6f84c9bd RH |
6811 | 2000-09-16 Richard Henderson <rth@cygnus.com> |
6812 | ||
6813 | * cppiles.c (purge_cache): Use PTR not caddr_t. | |
6814 | ||
50c57e7b HPN |
6815 | 2000-09-16 Hans-Peter Nilsson <hp@axis.com> |
6816 | ||
6817 | * gcc.c: In description for %{<S}, say the option removed is -S. | |
6818 | * invoke.texi (Spec Files): Ditto. | |
6819 | ||
dd745546 AJ |
6820 | 2000-09-16 Andreas Jaeger <aj@suse.de> |
6821 | ||
6822 | * configure.in: Always define _GNU_SOURCE to make interfaces | |
6823 | visible that were hidden by only defining _GNU_SOURCE. | |
6824 | * configure: Regenerated. | |
6825 | ||
08ebc1c5 NB |
6826 | Sat 16-Sep-2000 08:13:45 BST Neil Booth <NeilB@earthling.net> |
6827 | ||
6828 | * cpplex.c (push_macro_context): Set an argument's level after | |
6829 | calling parse_args. We could loop infinitely otherwise. | |
6830 | ||
16abe34a TT |
6831 | 2000-09-15 Tom Tromey <tromey@cygnus.com> |
6832 | ||
6833 | * configure, config.in: Rebuilt. | |
6834 | * configure.in: Check for iconv.h. Define _XOPEN_SOURCE. | |
6835 | ||
61c16b10 GM |
6836 | 2000-09-15 Greg McGary <greg@mcgary.org> |
6837 | ||
6838 | * cppmacro.c (check_trad_stringification): Check token | |
6839 | text pointers against limit before dereferencing. | |
6840 | ||
6a357625 JM |
6841 | 2000-09-15 Joseph S. Myers <jsm28@cam.ac.uk> |
6842 | ||
6843 | * c-common.c (format_wanted_type): New structure. | |
6844 | (check_format_types): New function. | |
6845 | (check_format_info): Pass all checking of types of format | |
6846 | arguments, including width and precision arguments, to this new | |
6847 | function. | |
6848 | ||
6a1d1088 GP |
6849 | 2000-09-15 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
6850 | ||
6851 | * BUGS: Remove file. | |
6852 | ||
a3b815cb JJ |
6853 | 2000-09-15 Jakub Jelinek <jakub@redhat.com> |
6854 | ||
54f5c4b0 JJ |
6855 | * config/alpha/alpha.c (override_options): ev6 cache latencies |
6856 | from Richard Henderson. Don't allow -mmemory-latency=L0. | |
6857 | ||
a3b815cb JJ |
6858 | * config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define. |
6859 | (TARGET_OPTIONS): Add tune=. | |
6860 | (alpha_tune_string): Declare. | |
6861 | * config/alpha/alpha.c (override_options): Add cpu_table. | |
6862 | Use alpha_cpu_string first to set both alpha_cpu and target_flags | |
6863 | and then alpha_tune_string to set alpha_cpu only. | |
6864 | Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests. | |
6865 | * config/alpha/elf.h (ASM_FILE_START): Likewise. | |
6866 | * config/alpha/osf.h (ASM_FILE_START): Likewise. | |
6867 | * config/alpha/openbsd.h (ASM_FILE_START): Likewise. | |
6868 | ||
9076b9c1 JH |
6869 | Fri Sep 15 19:45:55 MET DST 2000 Jan Hubicka <jh@suse.cz> |
6870 | ||
6871 | * i386-protos.h (no_comparison_operator, uno_comparison_operator): | |
6872 | Remove. | |
6873 | (ix86_comparison_operator, ix86_cc_mode): Declare | |
6874 | * i386.h (CCGC, CCGCO): New modes. | |
6875 | (SELECT_CC_MODE): Move offline to .... | |
6876 | * i386.c (ix86_cc_mode): .... here; use new modes. | |
6877 | (ix86_comparison_operator): New. | |
6878 | (fcmov_comparison_operator): Ensure proper mode. | |
6879 | (put_condition_mode): More sanity checking. | |
6880 | (ix86_match_ccmode): Handle new modes. | |
6881 | (ix86_expand_fp_compare): GEU requires CCmode. | |
6882 | (ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of | |
6883 | doing it by hand. | |
6884 | * i386.md (cmp?i_ccz_1): Remove | |
6885 | (cmp?i_ccno_1): Use ix86_match_ccmode. | |
6886 | (cmp?i_minus_1): New. | |
6887 | (cmpsi_1): New expander. | |
6888 | (cmpqi_ext_1): Use match_ccmode | |
6889 | (cmpqi_ext_3): New expander. | |
6890 | (cmpqi_ext_3_insn): Rename from cmpqi_ext_3. | |
6891 | (cmpqi_ext_4): Use match_ccmode. | |
6892 | (add?i_?): Use match_ccmode. | |
6893 | (add?i_6): New. | |
6894 | (test?i_ccz_1): Remove | |
6895 | (test?i_1): New. | |
6896 | (testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander. | |
6897 | (testqi_ext_0): Use ix86_match_ccmode. | |
6898 | (*xorqi_cc_ext_1): Use ix86_match_ccmode. | |
6899 | (xorqi_cc_ext_1): New expander. | |
6900 | (shift patterns): Use CCGOCmode for all shifts except for sar. | |
6901 | (setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator. | |
6902 | (setcc_3, jcc_3, miv?icc_c): Remove. | |
6903 | ||
3724ec07 WC |
6904 | 2000-09-15 Will Cohen <wcohen@redhat.com> |
6905 | ||
6906 | * dwarf2out.c (add_const_value_attribute): Changed array into a | |
6907 | xmalloced object, so it exists after function exit. | |
6908 | (free_AT): Added case for dw_val_class_float to free allocated | |
6909 | memory. | |
6910 | ||
182a4620 KH |
6911 | 2000-09-15 Kazu Hirata <kazu@hxi.com> |
6912 | ||
6913 | * config/i386/i386.md: Fix a comment typo. | |
d25a45d4 | 6914 | * gcc.c: Fix formatting. |
182a4620 | 6915 | |
aff2c2d3 BS |
6916 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
6917 | ||
6918 | * optabs.c (emit_libcall_block): If target is a user variable, | |
6919 | copy to a temporary first. | |
642dfa8b BS |
6920 | * expr.c (convert_move): When generating a libcall, make a libcall |
6921 | block. | |
188c5e6c BS |
6922 | * calls.c (emit_library_call_value_1): Don't create a libcall |
6923 | sequence here; our caller will in most cases do it. | |
aff2c2d3 | 6924 | |
0c4c9b16 BS |
6925 | * sh.h (SECONDARY_INPUT_RELOAD_CLASS): Handle moving T, MACL or |
6926 | MACH into FPUL. | |
6927 | (SECONDARY_OUTPUT_RELOAD_CLASS): Similar case. | |
6928 | * sh.md (reload_outsf): Generate recognizable patterns for | |
6929 | TARGET_SH3E. | |
6930 | (floatsisf2, floatsisf2_ie, floatsisf2_i4, fix_truncsfsi2, | |
6931 | fix_truncsfsi2_i4, fixsfsi, floatsidf2, floatsidf2_i, fix_truncdfsi2, | |
6932 | fix_truncdfsi2_i, extendsfdf2, extendsfdf2_i4, truncdfsf2, | |
6933 | truncdfsf2_i4): Change not to use explicit references to fpul. | |
6934 | (floatsisf2_ie): Remove USE of fpscr. | |
6935 | (floatsisf2): Change default expansion to match this. | |
6936 | (fix_truncsfsi2_i4_2, fix_truncdfsi2_i4 & splitters): Comment out | |
6937 | unused patterns. | |
6938 | ||
308ecea0 RH |
6939 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
6940 | ||
6941 | * expmed.c (store_bit_field): Consider naturally aligned | |
6942 | memory for direct reference. | |
6943 | ||
e01acbb1 RH |
6944 | 2000-09-15 Richard Henderson <rth@cygnus.com> |
6945 | ||
6946 | * config/alpha/alpha.c (alpha_expand_unaligned_load): Force all | |
6947 | AND addresses into alias set 0. | |
6948 | (alpha_expand_unaligned_store): Likewise. | |
6949 | (alpha_expand_unaligned_load_words): Likewise. | |
6950 | (alpha_expand_unaligned_store_words): Likewise. | |
6951 | ||
c363a0c0 BS |
6952 | 2000-09-15 Bernd Schmidt <bernds@redhat.co.uk> |
6953 | ||
6954 | * config/sh/sh.h (CPP_SPEC): For -m4-nofpu, define __SH4_NOFPU__. | |
6955 | * config/sh/lib1funcs.asm (movstr_i4): Also compile if __SH4_NOFPU__ | |
6956 | is defined. | |
dd193c79 BS |
6957 | * config/mips/mips.c (mips_va_arg): Args passed by reference have a |
6958 | rsize of UNITS_PER_WORD. | |
c363a0c0 | 6959 | |
ff94c747 NB |
6960 | Fri 15-Sep-2000 06:49:07 BST Neil Booth <NeilB@earthling.net> |
6961 | ||
6962 | * cpplex.c (ON_REST_ARG): Correct the test. | |
6963 | (maybe_paste_with_next): Duplicate a token that fail pasting, | |
6964 | and clear its PASTE_LEFT flag, so that nested pasting attempts | |
6965 | do not occur. | |
6966 | ||
b437f1a7 RH |
6967 | 2000-09-14 Richard Henderson <rth@cygnus.com> |
6968 | ||
6969 | * calls.c (precompute_register_parameters): Use COSTS_N_INSNS, not 2. | |
6970 | * cse.c (rtx_cost): Likewise. | |
6971 | * optabls.c (expand_binop): Likewise. | |
6972 | (expand_twoval_binop, prepare_cmp_insn): Likewise. | |
6973 | * regclass.c (copy_cost): Likewise. | |
6974 | * reload1.c (reload_cse_move2add): Likewise. | |
6975 | ||
d9dbd9b1 JM |
6976 | 2000-09-14 Joseph S. Myers <jsm28@cam.ac.uk> |
6977 | ||
6978 | * c-parse.in (reswords): Add _Complex. | |
6979 | ||
9207d3b1 DA |
6980 | 2000-09-14 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
6981 | ||
6982 | * gcc.1: Delete documentation for -undef preprocessor option. | |
6983 | ||
395a451c AO |
6984 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com> |
6985 | ||
6986 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
6987 | STARTFILE_SPEC, ENDFILE_SPEC): Remove define. | |
6988 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
6989 | Remove undefine before config/elfos.h. | |
6990 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Comment out. | |
6991 | ||
17f0f8fa KH |
6992 | 2000-09-14 Kazu Hirata <kazu@hxi.com> |
6993 | ||
6994 | * invoke.texi (H8/300 Options): Add -ms2600. | |
6995 | * config/h8300.c (h8300_init_once): Output an error when -ms2600 | |
6996 | is used without -ms. | |
6997 | * config/h8300.h (TARGET_MAC): New. | |
6998 | (TARGET_SWITCHES): Add -ms2600 and -mno-s2600. | |
6999 | (CONDITIONA_REGISTER_USAGE): Disable the mac register on any | |
7000 | machine other than H8/S2600. | |
7001 | * config/h8300.md: Accept mac instructions on the H8/S2600 instead | |
7002 | of the H8/S2000. | |
7003 | ||
9e8f528c AO |
7004 | 2000-09-14 Alexandre Oliva <aoliva@redhat.com>, Bernd Schmidt <bernds@redhat.co.uk> |
7005 | ||
7006 | * reload.c (find_reloads_address_1): Generate reloads for auto_inc | |
7007 | pseudos that refer to the original pseudos, not only to their | |
7008 | equivalent memory locations. | |
7009 | ||
9985f210 RK |
7010 | Thu Sep 14 12:10:16 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
7011 | ||
fe7a8445 RK |
7012 | * expr.c (expand_expr, case COMPONENT_EXPR): Copy memory attributes |
7013 | when making new MEM. | |
7014 | ||
9985f210 RK |
7015 | * Makefile.in (LN): Remove duplicate definition. |
7016 | ||
2f93c5c3 BS |
7017 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
7018 | ||
7019 | From Joern Rennecke: | |
7020 | * local-alloc.c (update_equiv_regs): If there is no REG_EQUAL note | |
7021 | on an insn and function_invariant_p returns nonzero for the source, | |
7022 | add a REG_EQUAL note. | |
7023 | ||
b24ea077 JW |
7024 | Thu Sep 14 00:51:57 EDT 2000 John Wehle (john@feith.com) |
7025 | ||
7026 | * alias.c (memrefs_conflict_p): An ADDRESSOF doesn't | |
7027 | conflict with frame_pointer_rtx. | |
7028 | ||
fd5d5b07 KH |
7029 | 2000-09-13 Kazu Hirata <kazu@hxi.com> |
7030 | ||
7031 | * loop.c: Fix formatting. | |
7032 | * loop.h: Likewise. | |
7033 | ||
26102535 RH |
7034 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
7035 | ||
7036 | * config/ia64/ia64.md (divsf3): New. | |
7037 | (divsf3_internal_lat, divsf3_internal_thr): New. | |
7038 | (divdf3, divdf3_internal_lat, divdf3_internal_thr): New. | |
7039 | (divtf3, divtf3_internal_lat, divtf3_internal_thr): New. | |
7040 | (adddf3_trunc, subdf3_trunc, muldf3_trunc): New. | |
7041 | (madddf4_trunc, msubdf4_trunc, nmuldf3_trunc): New. | |
7042 | (nmadddf4_alts, nmadddf4_trunc): New. | |
7043 | (addtf3_truncsf, addtf3_truncdf, subtf3_truncsf): New. | |
7044 | (subtf3_truncdf, multf3_truncsf, multf3_truncdf): New. | |
7045 | (multf3_truncsf_alts, multf3_truncdf_alts): New. | |
7046 | (maddtf4_truncsf, maddtf4_truncdf, maddtf4_alts_truncdf): New. | |
7047 | (msubtf4_truncsf, msubtf4_truncdf, nmultf3_truncsf): New. | |
7048 | (nmultf3_truncdf, nmaddtf4_truncsf, nmaddtf4_truncdf): New. | |
7049 | (nmaddtf4_truncdf_alts): New. | |
7050 | (recip_approx): Don't predicate. | |
7051 | ||
938566fb RH |
7052 | 2000-09-13 Richard Henderson <rth@cygnus.com> |
7053 | ||
7054 | * config/ia64/lib1funcs.asm (__divsf3): Protect fnorm.s with p6. | |
7055 | ||
c349e40b SC |
7056 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7057 | ||
7058 | * flags.h (flag_dump_rtl_in_asm): Declare. | |
7059 | * toplev.c (flag_dump_rtl_in_asm): Define. | |
7060 | (decode_d_option): Set flag_dump_rtl_in_asm and flag_print_asm_name | |
7061 | if -dP is specified. | |
7062 | * rtl.h (print_rtx_head): Declare. | |
7063 | * print-rtl.c (print_rtx_head): Define. | |
7064 | (print_rtx): Print the string pointed to by print_rtx_head | |
7065 | at beginning of each dump line. | |
7066 | (print_rtl): Likewise. | |
7067 | (print_rtl_single): Likewise. | |
7068 | * final.c (final_scan_insn): Dump the insn in the assembly | |
7069 | file for debugging. | |
7070 | * gcc.1: Document -dP option. | |
7071 | * invoke.texi (Debugging Options): Likewise. | |
7072 | ||
2856c3e3 SC |
7073 | 2000-09-13 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7074 | ||
7075 | * md.texi (Machine Constraints): Document the 68HC11 constraints. | |
7076 | * install.texi (Configurations): Document the 68HC11&68HC12 port. | |
7077 | * invoke.texi (Option Summary, M68hc1x Options): Document the options. | |
7078 | ||
1ca04dc8 DC |
7079 | Tue Sep 12 13:51:13 2000 Denis Chertykov <denisc@overta.ru> |
7080 | ||
7081 | * config/avr/avr.h (ASSEMBLER_DIALECT): New macro declared. | |
7082 | * config/avr/avr.md (*movstrqi_insn): Cleanup output template. | |
7083 | (*clrstrqi): Likewise. | |
7084 | (xorhi3,xorsi3,absqi2): Likewise. | |
7085 | (one_cmplhi2,one_cmplsi2): Likewise. | |
7086 | (addsi3): Two stupid constraint alternatives removed. | |
7087 | (extendhisi2): Use `movw' for enhanced avr cores. | |
7088 | (zero_extendhisi2): Likewise. | |
7089 | ||
bb07060a JW |
7090 | Wed Sep 13 02:31:23 EDT 2000 John Wehle (john@feith.com) |
7091 | ||
7092 | * alias.c (find_base_term): Use frame_pointer_rtx | |
7093 | when handling an ADDRESSOF. | |
7094 | ||
7095 | * cse.c (canon_hash): Handle USE of BLKmode memory. | |
7096 | (cse_insn): Outgoing arguments for a libcall don't | |
7097 | affect any recorded expressions. | |
7098 | ||
d21445e7 TT |
7099 | 2000-09-12 Tom Tromey <tromey@cygnus.com> |
7100 | ||
7101 | * configure, config.in: Rebuilt. | |
7102 | * configure.in: Check for iconv, nl_langinfo, langinfo.h. | |
7103 | ||
5c80f6e6 JJ |
7104 | 2000-09-12 Jakub Jelinek <jakub@redhat.com> |
7105 | ||
7106 | * c-lex.c (lex_string): Use charwidth to compute bytemask. | |
7107 | * expr.c (expand_expr): Don't optimize constant array references | |
7108 | initialized with wide string constants. | |
7109 | ||
635a2a90 MH |
7110 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
7111 | ||
a191f0ee | 7112 | * loop.c (note_set_pseudo_multiple_uses): Correct. |
635a2a90 | 7113 | |
cc2999aa JW |
7114 | 2000-09-12 Jim Wilson <wilson@cygnus.com> |
7115 | ||
7116 | * ifcvt.c (noce_process_if_block): If A and B are the same, and no | |
7117 | else block, and X has side-effects, then fail. | |
7118 | ||
a0b6cdee GM |
7119 | 2000-09-12 Greg McGary <greg@mcgary.org> |
7120 | ||
7121 | * config/mips/mips-protos.h | |
7122 | (trap_cmp_op, mips_gen_conditional_trap): New func decls. | |
7123 | * config/mips/mips.h (ISA_HAS_COND_TRAP): New macro. | |
7124 | (PREDICATE_CODES): Add "trap_cmp_op". | |
7125 | * config/mips/mips.c | |
7126 | (trap_cmp_op, mips_gen_conditional_trap): New functions. | |
7127 | * config/mips/mips.md (trap, conditional_trap): New patterns. | |
7128 | ||
24948ccc BS |
7129 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
7130 | ||
7131 | * flow.c (try_pre_increment_1): Don't do anything to sets of the stack | |
7132 | pointer. | |
7133 | ||
3ff5f682 KG |
7134 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7135 | ||
7136 | * builtins.c (built_in_decls): New array. | |
7137 | (expand_builtin_fputs): New function. | |
7138 | (expand_builtin): Handle BUILT_IN_FPUTC and BUILT_IN_FPUTS. | |
7139 | ||
7140 | * builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTS): New members. | |
7141 | ||
7142 | * c-common.c (c_common_nodes_and_builtins): Handle fputc/fputs. | |
7143 | ||
7144 | * tree.h (built_in_decls): New array. | |
7145 | ||
208b0ab1 JL |
7146 | Tue Sep 12 08:53:57 2000 Jeffrey A Law (law@cygnus.com) |
7147 | ||
7148 | * convex.md: Use "+" instead of "=" for outputs wrapped in a | |
7149 | STRICT_LOW_PART. | |
7150 | * i370.md, i386.md, ns32k.md, sh.md, vax.md: Likewise. | |
7151 | ||
a86dc4a3 KH |
7152 | 2000-09-12 Kazu Hirata <kazu@hxi.com> |
7153 | ||
7a403706 KH |
7154 | * haifa-sched.c: Fix formatting. |
7155 | ||
c9541287 KH |
7156 | * genattrtab.c: Fix formatting. |
7157 | ||
a86dc4a3 KH |
7158 | * unroll.c: Fix formatting. |
7159 | ||
3af556f7 BK |
7160 | 2000-09-12 Bruce Korb <bkorb@gnu.org> |
7161 | ||
7162 | * fixinc/fixfixes.c: make a type for the fix procedure & use it, | |
7163 | remove obsolete code | |
7164 | * fixinc/fixincl.c: Use PARAMS, not _P_. Add no-op default to switch. | |
7165 | * fixinc/fixincl.tpl: make non-exported arrays static scope | |
7166 | * fixinc/fixincl.x: regenerate | |
7167 | * fixinc/fixlib.h: Use PARAMS, not _P_ | |
7168 | * fixinc/fixtests.c: make a type for the test proc & use it | |
7169 | * fixinc/server.h: Use PARAMS, not _P_ | |
7170 | ||
32892c52 KG |
7171 | 2000-09-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7172 | ||
7173 | * c-typeck.c (process_init_element): Avoid union init warnings on | |
7174 | floating point zero. Don't crash on unions containing structs. | |
7175 | ||
ae0a1c23 AO |
7176 | 2000-09-12 Alexandre Oliva <aoliva@redhat.com> |
7177 | ||
7178 | * config/sh/sh.h (PREDICATE_CODES): Add CONST_DOUBLE to | |
7179 | general_movsrc_operand, and remove CONST_INT from | |
7180 | general_movdst_operand. | |
7181 | ||
f1c1dfc3 BS |
7182 | 2000-09-12 Bernd Schmidt <bernds@redhat.co.uk> |
7183 | ||
7184 | * cse.c (approx_reg_cost): If SMALL_REGISTER_CLASSES, return INT_MAX | |
7185 | if a reference to non-fixed hardreg is seen. Otherwise, count hard | |
7186 | regs with a higher cost. | |
7187 | (preferrable): Deal with cases where either cost or regcost is | |
7188 | MAX_COST. | |
7189 | (cse_insn): Use MAX_COST rather than 10000. Always initialize | |
7190 | regcost values. | |
7191 | (COSTS_N_INSNS): Move definition... | |
7192 | * rtl.h: ...here. | |
7193 | (MAX_COST): New macro. | |
7194 | * loop.c (init_loop): Use COSTS_N_INSNS macro instead of hardcoded | |
7195 | constant. | |
7196 | ||
f444e36b MM |
7197 | 2000-09-11 Mark Mitchell <mark@codesourcery.com> |
7198 | ||
7199 | * c-common.h (genrtl_clear_out_block): Remove. | |
7200 | * c-semantics.c (genrtl_clear_out_block): Remove. | |
7201 | (genrtl_while_stmt): Don't call it. | |
7202 | (genrtl_for_stmt): Likewise. | |
7203 | ||
a58d32c2 ZW |
7204 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> |
7205 | ||
7206 | * cppfiles.c: Move all default-#defines to top of file. | |
7207 | (open_include_file): Replace by lookup_include_file. | |
7208 | (read_with_read, read_file): Merged into read_include_file. | |
7209 | (stack_include_file, purge_cache): New functions. | |
7210 | (close_cached_fd): Delete. | |
dd745546 | 7211 | (lookup_include_file, read_include_file, _cpp_pop_file_buffer): |
a58d32c2 ZW |
7212 | Cache the in-memory buffer, not the file descriptor. |
7213 | ||
7214 | * cpphash.h (struct include_file): Add buffer, st, refcnt, | |
7215 | mapped fields. | |
7216 | (xcnew): New utility macro. | |
7217 | (DO_NOT_REREAD, NEVER_REREAD): Move up by struct include_file. | |
7218 | * cpplib.h (struct cpp_buffer): Remove mapped field. | |
7219 | ||
7220 | 2000-09-11 Zack Weinberg <zack@wolery.cumb.org> | |
7221 | ||
7222 | * cpplex.c (parse_string): Accept backslash space newline as a | |
7223 | line continuation. | |
7224 | (lex_line): Likewise. | |
7225 | (_cpp_get_token): Remove hard limit on macro nesting. | |
7226 | ||
bfa29b63 PT |
7227 | 2000-09-12 Philipp Thomas <pthomas@suse.de> |
7228 | ||
7229 | * aclocal.m4 (AM_WITH_NLS): Don't force use of included gettext. | |
7230 | * configure: Rebuilt. | |
7231 | ||
97ca9316 MH |
7232 | 2000-09-13 Michael Hayes <mhayes@cygnus.com> |
7233 | ||
7234 | * flow.c (split_block): Fix update of registers live at | |
7235 | end of split block. | |
7236 | ||
d90ffc8d JH |
7237 | Tue Sep 12 01:51:38 MET DST 2000 Jan Hubicka <jh@suse.cz> |
7238 | ||
7239 | * i386.md (add?i_3, add?i_5): New. | |
7240 | (add?i_4): Rename from add?i_3; Fix compare pattern. | |
7241 | (sub?i_3, xor?i_3, ior?i_3): New. | |
7242 | ||
7243 | * genrecog.c (write_tree): Output code to clear insn_extract cache. | |
7244 | * genattrtab.c (write_attr_case): Gen call to extract_insn_cache | |
7245 | instead of extract_insn and extract_constrain_insn_cache instead of | |
7246 | extract_insn and constrain_operands. | |
7247 | * recog.c (extract_insn_cached, extract_constrain_insn_cached): | |
7248 | New functions. | |
7249 | (extract_insn): Clear which_alternative. | |
7250 | (constrain_operands): Set which_alternative to -1 when failed. | |
7251 | * recog.h (extract_constrain_insn_cached, extract_insn_cached): | |
7252 | Declare. | |
7253 | ||
4843bda9 MH |
7254 | 2000-09-11 Matthew Hiller <hiller@redhat.com> |
7255 | ||
7256 | * config/h8300/h8300.md (movstrictqi): Changed constraint modifier | |
7257 | on operand 0 to '+'. | |
7258 | (movstricthi): Likewise. | |
7259 | ||
ed5bb68d MH |
7260 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
7261 | ||
7262 | * loop.h (LOOP_IVS): New macro. | |
7263 | (REG_IV_TYPE, REG_IV_INFO): Add ivs argument. | |
7264 | (struct loop_ivs): New. | |
7265 | (struct loop_info): Add ivs field. | |
7266 | (reg_iv_type, reg_iv_info): Delete prototype. | |
7267 | (reg_biv_class, loop_iv_list): Likewise. | |
7268 | * loop.c (record_biv, find_life_end): Pass loop argument. | |
7269 | (reg_iv_type): Remove global array and use | |
7270 | field in loop_regs structure within loop_ivs structure. | |
7271 | (reg_iv_info, reg_biv_class, loop_iv_list): Likewise. | |
7272 | (first_increment_giv, last_increment_giv): Use entry in | |
7273 | loop_ivs structure. | |
7274 | (record_initial): Pass ivs pointer. | |
7275 | * unroll.c (copy_loop_body, remap_split_bivs): Add loop argument. | |
7276 | ||
1ecd860b MH |
7277 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
7278 | ||
7279 | * loop.h (LOOP_REGS): New macro. | |
7280 | (struct loop_regs): New. | |
7281 | (struct loop_info): Add regs field. | |
dd745546 | 7282 | * loop.c (set_in_loop): Remove global array and store |
1ecd860b MH |
7283 | in loop_regs structure as part of loop_info structure. |
7284 | (n_times_set, may_not_optimize): Likewise. | |
7285 | (reg_single_usage, moved_once): Likewise. | |
7286 | (count_one_set): Add regs argument. | |
7287 | (combine_movables, rtx_equal_for_loop_p, combine_givs): Likewise. | |
7288 | (set_pseudo_multiple_uses): Pass regs pointer. | |
7289 | ||
0a5b41f2 MH |
7290 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
7291 | ||
7292 | * unroll.c (iteration_info): Subsume into loop_iterations. | |
7293 | * loop.h (loop_info): New field iv. | |
7294 | ||
5d6a16e2 MH |
7295 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
7296 | ||
7297 | * basic-block.h (LOOP_TREE, LOOP_PRE_HEADER, LOOP_EDGES): New. | |
7298 | (LOOP_EXITS_DOMS, LOOP_ALL): Likewise. | |
7299 | (flow_loops_update): New prototype. | |
7300 | (flow_loops_find): Add flags to prototype. | |
7301 | (struct loop): Add `pre_header_root' and `pre_header_trace' fields. | |
7302 | * flow.c (flow_loop_pre_header_scan): New. | |
7303 | (flow_loop_dump): Dump pre-header root and trace and exit dominators. | |
7304 | (flow_loop_free): Free pre-header root and trace and exit dominators. | |
7305 | (flow_loops_find): New argument flags. | |
7306 | (flow_loops_update): New function. | |
7307 | * toplev.c (rest_of_compilation): Add flag argument to flow_loops_find. | |
7308 | ||
c586192c MH |
7309 | 2000-09-12 Michael Hayes <mhayes@cygnus.com> |
7310 | ||
7311 | * basic-block.h (split_block, update_bb_for_insn): New prototypes. | |
7312 | * flow.c (split_block, update_bb_for_insn): New functions. | |
7313 | ||
a5e5cf67 RH |
7314 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
7315 | ||
7316 | * cse.c (fold_rtx): Honor NO_FUNCTION_CSE. | |
7317 | ||
655f2eb9 RH |
7318 | 2000-09-11 Richard Henderson <rth@cygnus.com> |
7319 | ||
7320 | * config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare. | |
7321 | * config/ia64/ia64.c (fr_nonimmediate_operand): New. | |
7322 | (ia64_override_options): Prevent optimizing division for both | |
7323 | latency and throughput. | |
7324 | (rtx_needs_barrier): Handle frcpa. | |
7325 | * config/ia64/ia64.h (MASK_INLINE_DIV_LAT): New. | |
7326 | (MASK_INLINE_DIV_THR, TARGET_INLINE_DIV_LAT): New. | |
7327 | (TARGET_INLINE_DIV_THR, TARGET_INLINE_DIV): New. | |
7328 | (TARGET_SWITCHES): Add -minline-divide-min-latency and | |
7329 | -minline-divide-max-throughput. | |
7330 | (PREDICATE_CODES): Update. | |
7331 | * config/ia64/ia64.md (extendsidi2): Remove * from f case. | |
7332 | (zero_extendsidi2): Likewise. Fix typo in f case insn. | |
7333 | (extendsfdf2): Add cases for gr<->fr and fr<->mem. | |
7334 | (extendsftf2): Likewise. | |
7335 | (extenddftf2): Likewise. | |
7336 | (fix_trunctfdi2_alts): New. | |
7337 | (fixuns_trunctfdi2_alts): New. | |
7338 | (madd*4): Rename from madd*3. | |
7339 | (divsi3, modsi3, udivsi3, umodsi3): New. | |
7340 | (divsi3_internal): New. | |
7341 | (divdi3, moddi3, udivdi3, umoddi3): New. | |
7342 | (divdi3_internal_lat, divdi3_internal_thr): New. | |
7343 | (multf3_alts, maddtf4_alts, nmaddtf4_alts): New. | |
7344 | (recip_approx): New. | |
7345 | ||
b5d7770c AO |
7346 | 2000-09-11 Alexandre Oliva <aoliva@redhat.com> |
7347 | ||
7348 | * print-rtl.c (debug_call_placeholder_verbose): New variable. | |
7349 | (print_rtx) [CALL_PLACEHOLDER]: Dump all call sequences if it is | |
7350 | set. | |
7351 | * integrate.c (copy_rtx_and_substitute): Don't share | |
7352 | LEAF_REG_REMAPpable registers with the inlined function. Don't | |
7353 | share the function value with calling sequences. | |
7354 | ||
6ff85fd8 JJ |
7355 | 2000-09-11 Jakub Jelinek <jakub@redhat.com> |
7356 | ||
2a1da89b JJ |
7357 | * c-decl.c (do_case): Fix a typo. |
7358 | ||
6ff85fd8 JJ |
7359 | * combine.c (simplify_if_then_else): Don't convert a == b ? b : a |
7360 | to a if the comparison is floating mode and not -ffast-math. | |
7361 | * simplify-rtx.c (simplify_ternary_operation): Likewise. | |
7362 | ||
4102c782 R |
7363 | Mon Sep 11 20:07:48 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
7364 | ||
7365 | * sh.h (INITIALIZE_TRAMPOLINE): Remove stray call to | |
7366 | gen_ic_invalidate_line. | |
7367 | ||
52a21fc6 PB |
7368 | 2000-09-11 Philip Blundell <pb@futuretv.com> |
7369 | ||
7370 | * config/arm/elf.h (SUBTARGET_CPP_SPEC): Don't define `arm_elf'. | |
7371 | ||
669ed2b1 UD |
7372 | Mon Sep 11 10:48:41 2000 Ulrich Drepper <drepper@redhat.com> |
7373 | ||
7374 | * install.texi (LANGUAGES): Update to include new languages. | |
7375 | * INSTALL: Rebuilt. | |
7376 | ||
50936d27 DD |
7377 | 2000-09-11 DJ Delorie <dj@redhat.com> |
7378 | ||
7379 | * gcc.c (main): Don't warn about unused -B prefixes | |
7380 | (unused_prefix_warnings): remove | |
7381 | ||
00174bdf KH |
7382 | 2000-09-11 Kazu Hirata <kazu@hxi.com> |
7383 | ||
f5d927c0 KH |
7384 | * final.c: Fix formatting. |
7385 | ||
00174bdf KH |
7386 | * integrate.c: Fix formatting. |
7387 | ||
b14066a9 GK |
7388 | 2000-09-11 Geoff Keating <geoffk@cygnus.com> |
7389 | ||
7390 | * alias.c (memrefs_conflict_p): An ADDRESSOF does conflict, sorry. | |
7391 | ||
e695931e BS |
7392 | 2000-09-11 Bernd Schmidt <bernds@redhat.co.uk> |
7393 | ||
7394 | * reload.c (regno_clobbered_p): Fix thinko in previous change. | |
7395 | ||
456aadaa SC |
7396 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7397 | ||
7398 | * gcc.1: Document 68hc11 specific options. | |
7399 | ||
9cb8fcaf GK |
7400 | 2000-09-10 Geoff Keating <geoffk@cygnus.com> |
7401 | ||
e0f7170a GK |
7402 | * config/rs6000/sysv4.h (MASK_LONG_DOUBLE_128): Define. |
7403 | (TARGET_LONG_DOUBLE_128): Define. | |
7404 | (SUBTARGET_SWITCHES): Add -mlong-double-64 and -mlong-double-128. | |
7405 | (LONG_DOUBLE_TYPE_SIZE): Redefine. | |
7406 | (MAX_LONG_DOUBLE_TYPE_SIZE): Define. | |
7407 | (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define depending on definition | |
7408 | of __LONG_DOUBLE_128__. | |
7409 | (CPP_SYSV_SPEC): Define __LONG_DOUBLE_128__ if -mlong-double-128 | |
7410 | passed. | |
7411 | (CPP_LONGDOUBLE_DEFAULT_SPEC): Define. | |
7412 | (CPP_SYSV_DEFAULT_SPEC): Define. | |
7413 | (SUBTARGET_EXTRA_SPECS): Add cpp_longdouble_default. | |
7414 | (INIT_TARGET_OPTABS): Define. | |
7415 | ||
9cb8fcaf GK |
7416 | * config/rs6000/aix.h (RS6000_ITRUNC): Moved from rs6000.h. |
7417 | (RS6000_UITRUNC): Likewise. | |
7418 | (INIT_TARGET_OPTABS): New macro. | |
7419 | * config/rs6000/rs6000.c (rs6000_trunc_used): Delete. | |
7420 | (trunc_defined): Delete. | |
7421 | (output_prolog): Don't output .extern definitions for fp->int | |
7422 | conversion routines, ASM_OUTPUT_EXTERNAL_LIBCALL will do it. | |
7423 | * config/rs6000/rs6000.h (rs6000_trunc_used): Delete. | |
7424 | (trunc_defined): Delete. | |
7425 | (RS6000_ITRUNC): Moved to aix.h. | |
7426 | (RS6000_UITRUNC): Likewise. | |
7427 | * config/rs6000/rs6000.md (fix_truncdfsi2): Fail if it would | |
7428 | only emit a libcall. | |
7429 | (fixuns_truncdfsi2): Delete. | |
7430 | (trunc_call): Delete. | |
7431 | (trunc_call_rtl): Delete. | |
7432 | ||
8f820299 ZW |
7433 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
7434 | ||
7435 | * varasm.c (make_decl_rtl): Restore leading star on | |
dd745546 | 7436 | DECL_ASSEMBLER_NAME set for decls with an asmspec. |
8f820299 | 7437 | |
4337bc93 ZW |
7438 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
7439 | ||
7440 | * c-pragma.c (handle_pragma_pack): Correct parsing logic so it | |
7441 | won't give a spurious error for '#pragma pack()'. Simplify | |
7442 | control flow for readability. 'reset' action is not necessary. | |
7443 | ||
d8ea8f28 ZW |
7444 | 2000-09-10 Zack Weinberg <zack@wolery.cumb.org> |
7445 | ||
7446 | * defaults.h: Provide default definitions for: CHAR_TYPE_SIZE, | |
7447 | SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE, | |
7448 | LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE, | |
7449 | DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED. | |
7450 | ||
7451 | * cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c, | |
7452 | profile.c, sdbout.c, tradcif.y, tree.c: | |
7453 | Include defaults.h if not already included. | |
7454 | Don't define the above macros. | |
7455 | ||
7456 | * Makefile.in: Update dependencies. | |
7457 | ||
56cb9733 MM |
7458 | 2000-09-10 Mark Mitchell <mark@codesourcery.com> |
7459 | ||
7460 | * c-common.h (add_stmt): Change prototype. | |
7461 | (RECHAIN_STMTS): New macro. | |
7462 | (CASE_LABEL_DECL): Likewise. | |
7463 | (genrtl_case_label): Change prototype. | |
7464 | (c_expand_start_case): Remove prototype. | |
7465 | (build_case_label): Change prototype. | |
7466 | (decl_constant_value): Declare. | |
7467 | * c-common.c (check_case_value): Handle C++'s extensions to C | |
7468 | semantics. | |
7469 | * c-commnon.def (CASE_LABEL): Add room for the CASE_LABEL_DECL | |
d8ea8f28 | 7470 | field. |
56cb9733 MM |
7471 | * c-parse.in (stmt): Adjust handling of return statements and case |
7472 | laels. | |
7473 | * c-semantics.c (add_stmt): Return the new statement. | |
7474 | (genrtl_return_stmt): Take the RETURN_STMT as input, not the | |
7475 | returned expression. Directly generate RTL, rather than calling | |
7476 | c_expand_return. | |
7477 | (genrtl_switch_stmt): Don't call c_expand_start_case. | |
7478 | (build_case_label): Take the LABEL_DECL as input, too. | |
7479 | (genrtl_case_label): Just call add_case_node. | |
7480 | (expand_stmt): Adjust calls to genrtl_return_stmt and | |
7481 | genrtl_case_label. | |
7482 | * c-tree.h (c_expand_start_case): Declare. | |
7483 | * c-typeck.c (decl_constant_value): Give it external linkage. | |
7484 | (c_expand_return): Don't call expand_return or expand_null_return; | |
7485 | use genrtl_return_stmt instead. | |
7486 | * stmt.c (struct nesting): Remove num_ranges field. | |
7487 | (add_case_node): Give it external linkage. | |
7488 | (expand_start_case): Don't set num_ranges. | |
7489 | (expand_start_case_dummy): Don't clear it. | |
7490 | (pushcase): Rely on add_case_node to handle `default' labels. | |
7491 | (add_case_node): Handle `default' labels. | |
7492 | * tree.c (tree_int_cst_compare): New function. | |
7493 | * tree.h (tree_int_cst_compare): Declare. | |
7494 | (add_case_node): Likewise. | |
7495 | ||
aac02f4e RH |
7496 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
7497 | ||
7498 | * c-parse.in: Revert last change. | |
7499 | (init_reswords): Do not enter disabled keywords into the ridpointers | |
7500 | table, modulo objc weirdness. | |
7501 | (_yylex): Return the canonical spelling for a keyword. | |
7502 | ||
75d8aea7 PB |
7503 | 2000-09-10 Philip Blundell <philb@gnu.org> |
7504 | ||
7505 | * config/arm/arm.h (CPP_ISA_SPEC): Don't define `arm' or `thumb'. | |
7506 | * config/arm/linux-elf.h (CPP_PREDEFINES): Don't define `__arm__'. | |
7507 | ||
d982e46e JW |
7508 | Sun Sep 10 14:30:28 EDT 2000 John Wehle (john@feith.com) |
7509 | ||
7510 | * alias.c (find_base_term): Handle ADDRESSOF. | |
7511 | (memrefs_conflict_p): An ADDRESSOF doesn't conflict. | |
7512 | ||
212d447c DC |
7513 | 2000-09-10 Denis Chertykov <denisc@overta.ru> |
7514 | ||
7515 | * genoutput.c (output_insn_data): Translate <NEWLINE> to \n\ while | |
7516 | outputting templates with many lines. | |
7517 | ||
a746dbf5 SC |
7518 | 2000-09-10 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7519 | ||
7520 | * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD | |
7521 | to decide whether 64-bit support must be generated. | |
7522 | ||
1d0f6d89 RH |
7523 | 2000-09-10 Richard Henderson <rth@cygnus.com> |
7524 | ||
7525 | * c-parse.in (asm patterns): Fix volatile check. | |
7526 | ||
e1aa5140 KG |
7527 | 2000-09-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
7528 | ||
7529 | * cppmacro.c (check_trad_stringification): New function. | |
7530 | (save_expansion): If -Wtraditional, warn about stringification of | |
7531 | macro arguments. | |
7532 | ||
afa1738b MH |
7533 | 2000-09-11 Michael Hayes <mhayes@cygnus.com> |
7534 | ||
7535 | * loop.h (struct loop_mem_info): Move from loop.c | |
7536 | (struct loop_info): Add fields store_mems, mems, mems_idx, | |
7537 | mems_allocated, unknown_address_altered, | |
7538 | unknown_constant_address_altered, num_mem_sets, and | |
7539 | first_loop_store_insn. | |
7540 | ||
7541 | * loop.c (loop_store_mems): Replace with field in loop_info struct. | |
7542 | (loop_mems, loop_mems_idx, loop_mems_allocated): Likewise. | |
7543 | (unknown_address_altered, unknown_constant_address_altered): Likewise. | |
7544 | (num_mem_sets): Likewise. | |
dd745546 | 7545 | (replace_loop_mems, replace_loop_regs): New. |
afa1738b MH |
7546 | (struct loop_replace_args): New. |
7547 | (load_mems): Use replace_loop_mems. | |
7548 | (try_copy_prop): Use replace_loop_regs. | |
7549 | (replace_loop_reg, replace_loop_mem): Use loop_replace_args structure. | |
7550 | ||
63883fc3 SC |
7551 | 2000-09-09 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7552 | ||
7553 | * configure.in: Recognize m6811-elf and m6812-elf. | |
7554 | * configure: Regenerate. | |
7555 | ||
808788fe GK |
7556 | 2000-09-09 Geoff Keating <geoffk@cygnus.com> |
7557 | ||
7558 | * recog.c (validate_replace_rtx_1): Correct MODE parameter in call | |
7559 | to operand_subword. | |
7560 | ||
02055ad6 MH |
7561 | 2000-09-10 Michael Hayes <mhayes@cygnus.com> |
7562 | ||
7563 | * loop.c (struct movables): New. | |
7564 | (num_movables): Move into struct movables. | |
7565 | (the_movables): Change type to struct movables. | |
7566 | (ignore_some_movables): Change struct movable arg to struct movables. | |
dd745546 | 7567 | (force_movables, combine_movables, regs_match_p): Likewise. |
02055ad6 MH |
7568 | (rtx_equal_for_loop_p, move_movables): Likewise. |
7569 | (scan_loop): Change movables to be of type struct movables. | |
7570 | Replace last_movable with field in movables structure. | |
7571 | ||
ae54392b ZW |
7572 | 2000-09-08 Zack Weinberg <zack@wolery.cumb.org> |
7573 | ||
7574 | * c-pragma.c: Don't elide entire file if !HANDLE_GENERIC_PRAGMAS. | |
7575 | (init_pragma): Avoid warning if pfile happens to be unused. | |
7576 | * c-pragma.h: Never define HANDLE_GENERIC_PRAGMAS. Never | |
7577 | define init_pragma to nothing. Always prototype | |
7578 | init_pragma. Prototype dispatch_pragma if !USE_CPPLIB. | |
7579 | ||
7580 | * c-lex.c (process_directive): Always call dispatch_pragma. | |
7581 | Initialize entering_c_header to 0. | |
7582 | ||
385c9217 SC |
7583 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7584 | ||
7585 | * config/m68hc11/m68hc11.md: New file, machine description for | |
7586 | 68HC11 & 68HC12. | |
7587 | * config/m68hc11/m68hc11.h: New file, definitions for 68HC11 & 68HC12. | |
7588 | * config/m68hc11/m68hc11.c: New file, functions for 68HC11 & 68HC12. | |
7589 | * config/m68hc11/m68hc12.h: New file, definitions for 68HC12. | |
7590 | * config/m68hc11/m68hc11-protos.h: New file. | |
7591 | * config/m68hc11/m68hc11-crt0.S: New file, startup code. | |
7592 | * config/m68hc11/t-m68hc11-gas: New file, makefile fragment. | |
7593 | * config/m68hc11/xm-m68hc11.h: New file, target defs. | |
7594 | * config/m68hc11/larith.asm: New file, libgcc routines. | |
7595 | ||
dfaf3cdb SC |
7596 | 2000-09-08 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
7597 | ||
7598 | * Makefile.in (DPBIT_FUNCS): Add _usi_to_df. | |
7599 | (FPBIT_FUNCS): Add _usi_to_sf. | |
7600 | * config/fp-bit.c (usi_to_float): New function. | |
7601 | * config/fp-bit.h (L_usi_to_sf, L_usi_to_df): Define. | |
7602 | (usi_to_float): Add appropriate #define. | |
7603 | ||
915119a5 BS |
7604 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
7605 | ||
7606 | * i386-protos.h (sse_comparison_operator, mmx_reg_operand): Declare | |
7607 | new functions. | |
7608 | * i386.c (sse_comparison_operator, mmx_reg_operand): New functions. | |
7609 | * i386.md (attr "type"): Add sse and mmx types. | |
7610 | (attr "memory"): Handle them without a crash. | |
7611 | (movsi_1, movdi_2): Allow MMX regs. | |
7612 | (movdi splits): Don't split moves involving MMX regs. | |
7613 | (setcc_4): Remove '*' from pattern name so we get a gen_setcc4. | |
7614 | (movv4sf_internal, movv4si_internal, movv8qi_internal, | |
7615 | movv4hi_internal, movv2si_internal, movv8qi, movv4hi, movv2si, | |
7616 | movv4sf, movv4si, pushv4sf, pushv4si, pushv8qi, pushv4hi, pushv2si, | |
7617 | sse_movaps, sse_movups, sse_movmskps, mmx_pmovmskb, mmx_maskmovq, | |
7618 | sse_movntv4sf, sse_movntdi, sse_movhlps, sse_movlhps, sse_movhps, | |
7619 | sse_movlps, sse_loadss, sse_movss, sse_storess, sse_shufps, | |
7620 | addv4sf3, vmaddv4sf3, subv4sf3, vmsubv4sf3, mulv4sf3, vmmulv4sf3, | |
7621 | divv4sf3, vmdivv4sf3, rcpv4sf2, vmrcpv4sf2, rsqrtv4sf2, vmrsqrtv4sf2, | |
7622 | sqrtv4sf2, vmsqrtv4sf2, sse_andti3, sse_nandti3, sse_iorti3, | |
dd745546 AJ |
7623 | sse_xorti3, maskcmpv4sf3, maskncmpv4sf3, vmmaskcmpv4sf3, |
7624 | vmmaskncmpv4sf3, sse_comi, sse_ucomi, sse_unpckhps, sse_unpcklps, | |
915119a5 BS |
7625 | smaxv4sf3, vmsmaxv4sf3, sminv4sf3, vmsminv4sf3, cvtpi2ps, cvtps2pi, |
7626 | cvttps2pi, cvtsi2ss, cvtss2si, cvttss2si, addv8qi3, addv4hi3, | |
7627 | addv2si3, ssaddv8qi3, ssaddv4hi3, usaddv8qi3, usaddv4hi3, subv8qi3, | |
7628 | subv4hi3, subv2si3, sssubv8qi3, sssubv4hi3, ussubv8qi3, ussubv4hi3, | |
7629 | mulv4hi3, smulv4hi3_highpart, umulv4hi3_highpart, mmx_pmaddwd, | |
7630 | mmx_iordi3, mmx_xordi3, mmx_anddi3, mmx_nanddi3, mmx_uavgv8qi3, | |
7631 | mmx_uavgv4hi3, mmx_psadbw, mmx_pinsrw, mmx_pextrw, mmx_pshufw, | |
7632 | eqv8qi3, eqv4hi3, eqv2si3, gtv8qi3, gtv4hi3, gtv2si3, umaxv8qi3, | |
7633 | smaxv4hi3, uminv8qi3, sminv4hi3, ashrv4hi3, ashrv2si3, lshrv4hi3, | |
7634 | lshrv2si3, mmx_lshrdi3, ashlv4hi3, ashlv2si3, mmx_ashldi3, | |
7635 | mmx_packsswb, mmx_packssdw, mmx_packuswb, mmx_punpckhbw, | |
7636 | mmx_punpckhwd, mmx_punpckhdq, mmx_punpcklbw, mmx_punpcklwd, | |
7637 | mmx_punpckldq, emms, sfence, ldmxcsr, prefetch, stmxcsr, sse_clrti, | |
7638 | mmx_clrdi): New patterns. | |
7639 | ||
8e49e00a RE |
7640 | 2000-09-08 Richard Earnshaw <rearnsha@arm.com> |
7641 | ||
7642 | * arm.c: Don't include tm.h directly. | |
7643 | ||
bd5621a3 JH |
7644 | Fri Sep 8 14:34:56 MET DST 2000 Jan Hubicka <jh@suse.cz> |
7645 | ||
7646 | * recog.c (validate_replace_rtx_1): Fix confusion about equality | |
7647 | testing; simplify subregs of constants and nested subregs. | |
e65d02cf | 7648 | |
6b3783de AO |
7649 | 2000-09-08 Alexandre Oliva <aoliva@redhat.com> |
7650 | ||
7651 | * config/sh/sh.md (symPLT_label2reg): Use operand3 for PIC reg. | |
7652 | ||
82be40f7 BS |
7653 | 2000-09-08 Bernd Schmidt <bernds@redhat.co.uk> |
7654 | ||
7655 | * combine.c (combine_simplify_rtx): Try to simplify VEC_SELECT of a | |
7656 | VEC_CONCAT. | |
9af354b7 BS |
7657 | * rtl.texi (description of USE): Add note about possible pitfalls |
7658 | with this rtx. | |
ce701d1b BS |
7659 | From Richard Henderson: |
7660 | * reload1.c (choose_reload_regs): Compute need_mode properly. | |
82be40f7 | 7661 | |
4287b5f1 RH |
7662 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
7663 | ||
7664 | * config/ia64/lib1funcs.asm (__divsi3): Use .s1 for frcpa. | |
7665 | (__modsi3, __umodsi3): Likewise. | |
7666 | (__udivsi3): Likewise. Normalize the TFmode values. | |
7667 | ||
c5d71f39 GK |
7668 | 2000-09-07 Geoff Keating <geoffk@cygnus.com> |
7669 | ||
7670 | * config/rs6000/sol-c0.c (_start): Declare `termfunc' parameter | |
7671 | with a prototype. | |
7672 | * config/rs6000/rs6000.h (RS6000_ARG_SIZE): Use cast to suppress | |
7673 | warning. | |
7674 | ||
712646d0 R |
7675 | Fri Sep 8 03:26:38 2000 J"orn Rennecke <amylaar@redhat.co.uk> |
7676 | ||
7677 | * sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): Remove. | |
7678 | (cmpeqdi_t): Add output pattern. | |
7679 | (cmpeqdi_t+1): Don't split when not optimizing. | |
7680 | Restore proper splitting operation. | |
7681 | ||
30acbc3e RH |
7682 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
7683 | ||
7684 | * c-lex.c (process_directive): If not HANDLE_GENERIC_PRAGMAS, | |
7685 | do not call dispatch_pragma. | |
7686 | ||
46146529 JW |
7687 | 2000-09-07 Jim Wilson <wilson@cygnus.com> |
7688 | ||
7689 | * reload.c (push_reload): Use CLASS_CANNOT_CHANGE_MODE_P in addition | |
7690 | to CLASS_CANNOT_CHANGE_MODE. | |
7691 | * config/ia64/ia64.h (CLASS_CANNOT_CHANGE_MODE_P): True only if the | |
7692 | mode classes are different. | |
7693 | ||
6db83155 ZW |
7694 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
7695 | ||
7696 | * cpplib.h (struct cpp_options): Add user_label_prefix member, | |
7697 | left out of commit which removed cppulp.c. | |
7698 | ||
0d45144b RH |
7699 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
7700 | ||
7701 | * bb-reorder.c (fixup_reorder_chain): Add jump in new block | |
7702 | after switch for CASE_DROPS_THROUGH. | |
7703 | ||
e8cb4873 RH |
7704 | 2000-09-07 Richard Henderson <rth@cygnus.com> |
7705 | ||
7706 | * loop.c (strength_reduce): Call check_ext_dependant_givs. | |
7707 | Properly extend the biv initial value for the giv. | |
7708 | (record_biv): Zero ext_dependant. | |
7709 | (record_giv): New argument ext_val. Update all callers. | |
7710 | (general_induction_var): Likewise. | |
7711 | (consec_sets_giv): Likewise. | |
7712 | (simplify_giv_expr): Likewise. Fill in ext_val if we find | |
7713 | a sign-extend, zero-extend, or truncate. | |
7714 | (combine_givs_p): Make sure modes are compatible. | |
7715 | (check_ext_dependant_givs): New. | |
7716 | (extend_value_for_giv): New. | |
7717 | * loop.h (struct induction): Add ext_dependant. | |
7718 | * unroll.c (iteration_info): Extend the biv initial value for the giv. | |
7719 | (find_splittable_givs): Likewise. | |
7720 | (final_giv_value): Likewise. | |
7721 | ||
8b97c5f8 ZW |
7722 | 2000-09-07 Zack Weinberg <zack@wolery.cumb.org> |
7723 | ||
7724 | * c-pragma.h: Define HANDLE_GENERIC_PRAGMAS if | |
7725 | REGISTER_TARGET_PRAGMAS is defined. Duplicate some | |
7726 | definitions from cpplib.h. | |
7727 | * cpplib.h: Don't typedef struct cpp_reader if c-pragma.h has | |
7728 | already done it. | |
7729 | * tm.texi: Document HANDLE_PRAGMA as no longer supported. Add | |
7730 | documentation for REGISTER_TARGET_PRAGMAS. | |
7731 | ||
7732 | * c-lex.c: Include cpplib.h before c-pragma.h. Define a | |
7733 | default-pragma callback to implement -Wunknown-pragmas if | |
7734 | USE_CPPLIB. | |
7735 | * c-parse.in: Move all includes to top of file. | |
7736 | * c-pragma.c: Include cpplib.h before c-pragma.h. Include | |
7737 | tm_p.h. | |
7738 | (dispatch_pragma): Put the namespace in the -Wunknown-pragmas | |
7739 | warning. | |
7740 | (init_pragma): If REGISTER_TARGET_PRAGMAS is defined, call it. | |
7741 | ||
7742 | * arm.h, arm-protos.h, arm.c, | |
7743 | c4x.h, c4x-protos.h, c4x.c, | |
7744 | h8300.h, h8300-protos.h, h8300.c, | |
7745 | i370.h, i370-protos.h, i370.c, | |
7746 | i960.h, i960-protos.h, i960.c, | |
d8ea8f28 | 7747 | sh.h, sh-protos.h, sh.c, |
8b97c5f8 ZW |
7748 | v850.h, v850-protos.h, v850.c: Convert HANDLE_PRAGMA-based |
7749 | pragmata scheme to use REGISTER_TARGET_PRAGMAS instead. | |
7750 | ||
7751 | * d30v.h: Don't mention HANDLE_PRAGMA in comment. Add | |
7752 | multiple include guard. | |
7753 | * i370.md (untyped_call): Use GEN_CALL. | |
7754 | (umodsi3): Remove unused variable. | |
7755 | * sh/elf.h: Don't undef HANDLE_SYSV_PRAGMA. | |
7756 | * v850.c (output_move_single, output_move_double): Constify | |
7757 | return value. | |
7758 | (print_operand): Constify a char *. | |
7759 | * v850.h (struct small_memory_info): Constify name member. | |
7760 | ||
1898584f KH |
7761 | 2000-09-07 Kazu Hirata <kazu@hxi.com> |
7762 | ||
7763 | * config/h8300.h: Fix comment typos. | |
7764 | * config/h8300/h8300.md: Likewise. | |
7765 | * config/h8300/lib1funcs.asm: Likewise. | |
7766 | ||
771c4df3 NB |
7767 | Thu 07-Sep-2000 21:29:00 BST Neil Booth <NeilB@earthling.net> |
7768 | ||
7769 | * Makefile.in: Remove references to cppulp.{c,o}. | |
7770 | * cppinit.c (initialize_builtins, cpp_start_read, | |
7771 | cpp_handle_option): Update to use cpp_options structure. | |
7772 | * cppulp.c: Remove. | |
7773 | ||
2496f0b5 JM |
7774 | 2000-09-07 Joseph S. Myers <jsm28@cam.ac.uk> |
7775 | ||
7776 | * c-common.c (time_char_table): Allow %#b and %#h. | |
7777 | ||
bf6302f0 HB |
7778 | 2000-09-07 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
7779 | ||
7780 | * reorg.c (find_end_label): If the basic block reorder pass moves the | |
7781 | return insn to some other place try to locate it again and put our | |
7782 | end_of_function_label there. | |
7783 | * reorg.c (relax_delay_slots): Check if find_end_label created a | |
7784 | new label that invalidates the current optimazation. | |
7785 | ||
4598ffe9 CM |
7786 | 2000-09-07 Catherine Moore <clm@redhat.com> |
7787 | ||
e8cb4873 RH |
7788 | * unroll.c (unroll_loop): Check for unconditional jumps |
7789 | to loop continuation. Delete if n_iterations is 1. | |
7790 | (ujump_to_loop_cont): New routine. | |
4598ffe9 | 7791 | |
ff427764 BS |
7792 | 2000-09-07 Bernd Schmidt <bernds@redhat.co.uk> |
7793 | ||
7794 | * rtl.c (class_narrowest_mode): Add entries for MODE_VECTOR_INT and | |
7795 | MODE_VECTOR_FLOAT. | |
8441bc30 BS |
7796 | * reload.c (regno_clobbered_p): Accept new arg, MODE, and use it |
7797 | to handle multiword modes correctly. All callers and the declaration | |
7798 | changed. | |
d8ea8f28 | 7799 | |
54f7877c MM |
7800 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
7801 | ||
7802 | * c-common.h (prep_stmt): Declare. | |
7803 | (lang_expand_stmt): Likewise. | |
7804 | * c-decl.c (lang_expand_stmt): Remove. | |
7805 | * c-semantics.c (lang_expand_stmt): Define. | |
7806 | (prep_stmt): New function. | |
7807 | (expand_stmt): Handle common statement types here. | |
d8ea8f28 | 7808 | |
93ca1662 NY |
7809 | 2000-09-07 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp>, Alexandre Oliva <aoliva@redhat.com> |
7810 | ||
7811 | * configure.in (sh-*-linux*): Added. | |
7812 | * configure: Rebuilt. | |
7813 | * config/sh/t-linux: New file. | |
7814 | * config/sh/sh.h (USERMODE_BIT): Define. | |
7815 | (TARGET_USERMODE): Likewise. | |
7816 | (TARGET_SWITCHES): New switches for the bits above. | |
7817 | (INITIALIZE_TRAMPOLINE): Call __ic_invalidate in USERMODE. | |
7818 | * config/sh/linux.h: New file. | |
7819 | * config/sh/lib1funcs.asm (GLOBAL): Don't prefix symbols with | |
7820 | underscore on linux. | |
7821 | (L_sdivsi3, L_udivsi3): Define for linux. | |
7822 | (L_ic_invalidate): Define. | |
7823 | * invoke.texi (SH Options): Document -musermode. | |
7824 | ||
71105114 AO |
7825 | 2000-09-07 Alexandre Oliva <aoliva@redhat.com> |
7826 | ||
4979c2a9 AO |
7827 | * config/sh/sh.h (OVERRIDE_OPTIONS): Don't disable function |
7828 | CSE unless generating PIC. | |
7829 | ||
71105114 AO |
7830 | * config/sh/sh.md (symPLT_label2reg): Force the initialization of |
7831 | the PIC register. | |
7832 | ||
d5cfb451 L |
7833 | 2000-09-06 H.J. Lu (hjl@gnu.org) |
7834 | ||
7835 | * Makefile.in (clean_s1): Depend on stage_b. | |
7836 | (clean_s2): Depend on stage_d. Don't remove $(VOL_FILES) in | |
7837 | stage2. They are used for "make compare". | |
7838 | ||
ae499cce MM |
7839 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
7840 | ||
7841 | Move statement-tree facilities from C++ to C front-end. | |
7842 | * c-common.h (c_tree_index): Add CTI_VOID_ZERO. | |
7843 | (void_zero_node): New macro. | |
7844 | (struct stmt_tree_s): New type. | |
7845 | (stmt_tree): New typedef. | |
7846 | (struct language_function): New type. | |
7847 | (last_tree): New macro. | |
7848 | (last_expr_type): Likewise. | |
7849 | (walk_tree_fn): New typedef. | |
7850 | (current_stmt_tree): New function. | |
7851 | (begin_stmt_tree): Likewise. | |
7852 | (add_stmt): Likewise. | |
7853 | (finish_stmt_tree): Likewise. | |
7854 | (statement_code_p): Likewise. | |
7855 | (lang_statement_code_p): New variable. | |
7856 | (walk_stmt_tree): New function. | |
7857 | (STMT_IS_FULL_EXPR_P): New macro. | |
7858 | * c-common.c (lang_statement_code_p): New variable. | |
7859 | (c_common_nodes_and_builtins): Initialize void_zero_node. | |
7860 | (statement_code_p): New function. | |
7861 | (walk_stmt_tree): Likewise. | |
7862 | * c-decl.c (language_function): Rename to ... | |
7863 | (c_language_function): ... this. Include language_function. | |
7864 | (push_c_function_context): Adjust accordingly. | |
7865 | (pop_c_function_context): Likewise. | |
7866 | (mark_c_function_context): Likewise. | |
7867 | (current_stmt_tree): Define. | |
7868 | * c-semantics.c (begin_stmt_tree): New function. | |
7869 | (add_stmt): Likewise. | |
7870 | (prune_unused_decls): Likewise. | |
7871 | (finish_stmt_tree): Likewise. | |
7872 | ||
4f4b88d0 HB |
7873 | 2000-09-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
7874 | ||
e8cb4873 | 7875 | * flow.c (insn_dead_p): Detect dead memory stores with auto increments. |
4f4b88d0 | 7876 | |
f725a3ec KH |
7877 | 2000-09-06 Kazu Hirata <kazu@hxi.com> |
7878 | ||
7879 | * calls.c: Fix formatting. | |
7880 | ||
0806f95f GS |
7881 | 2000-09-06 Graham Stott <grahams@cygnus.co.uk> |
7882 | ||
e8cb4873 | 7883 | * config/i386/i386.h (ADDRESS_COST): Fix typo. |
0806f95f | 7884 | |
0e5921e8 ZW |
7885 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
7886 | ||
7887 | Integrated preprocessor. | |
7888 | ||
7889 | * Makefile.in: Remove all references to c-parse.gperf, | |
7890 | c-gperf.h, and c-parse.h. Remove -d from yacc command line | |
7891 | generating c-parse.c. Update dependencies. | |
7892 | * c-parse.gperf, c-gperf.h: Delete. | |
7893 | ||
7894 | * c-common.c: Don't define parse_options, cpp_token, yy_cur, | |
7895 | yy_lim, or yy_get_token. Don't define get_directive_line if | |
7896 | USE_CPPLIB. | |
7897 | * c-common.h: Add multiple include guard. Define RID values | |
7898 | for every keyword in C, C++, and Objective C. Put all the | |
7899 | modifiers first. | |
7900 | (struct c_fileinfo, get_fileinfo, dump_time_statistics): New. | |
7901 | * c-decl.c (c_decode_option): Handle -lang-objc here. | |
7902 | (print_lang_identifier): Handle C_IS_RESERVED_WORD case. | |
7903 | (grokdeclarator): Adjust for new RID scheme. | |
7904 | (extract_interface_info): New stub. | |
7905 | * c-lang.c: Don't declare yy_cur or parse_options. | |
7906 | (lang_init_options): Call cpp_init. Don't call | |
7907 | cpp_options_init. | |
7908 | (lang_init): Don't call check_newline if USE_CPPLIB. | |
7909 | ||
7910 | * c-lex.c: Don't include c-parse.h. Do include timevar.h. | |
7911 | Elide lots of unnecessary code if USE_CPPLIB. Delete code | |
7912 | rendered unnecessary by new architecture. Move routines not | |
7913 | shared with C++ to c-parse.in. Maintain a local idea of the | |
7914 | line number. Handle C++ as well as C. | |
7915 | [USE_CPPLIB]: Declare and register callbacks for #ident and | |
7916 | for entering/leaving files. | |
7917 | (init_c_lex, c_lex): Are now the entry points to this file. | |
7918 | (check_newline): Break out directive handling to | |
7919 | process_directive. | |
7920 | (read_ucs, is_extended_char, utf8_extend_token): Moved here | |
7921 | from C++ front end. | |
7922 | (readescape, parse_float): Overhaul. | |
7923 | (lex_number, lex_string, lex_charconst): Break out of c_lex | |
7924 | (n'ee yylex). | |
7925 | (get_fileinfo, update_header_times, dump_one_header, | |
7926 | dump_time_statistics): New and/or moved here from C++. | |
7927 | Support per-file data needed by C++ and per-header timing | |
7928 | statistics (C++ only, at the moment). | |
7929 | * c-lex.h: Update prototypes. Add multiple include guard. | |
7930 | * c-tree.h (struct lang_identifier): Add rid_code field. | |
7931 | (C_IS_RESERVED_WORD, C_RID_CODE): New. | |
7932 | ||
7933 | * c-parse.in: Include c-pragma.h. Remove unnecesary calls to | |
7934 | reinit_parse_for_function and/or position_after_white_space. | |
7935 | (save_filename, save_lineno): Look ahead before saving. | |
7936 | (label -> identifier ':'): Save file and line before shifting ':'. | |
7937 | (reservedwords): No need to call get_identifier. | |
7938 | (init_parse, finish_parse, yyerror, yylex, yyprint, | |
7939 | make_pointer_declarator): Are now here for C/ObjC. | |
7940 | (rid_to_yy): Conversion table from RID constants to Yacc codes. | |
7941 | ||
7942 | * c-pragma.c: Rewrite parsing logic to fit with cpplib's | |
7943 | #pragma registry. Provide dummy implementation of that | |
7944 | interface if !USE_CPPLIB. | |
7945 | * c-pragma.h: Update to match. | |
7946 | ||
7947 | * flags.h: Add multiple include guard. | |
7948 | (flag_detailed_statistics): Moved here from C++. | |
7949 | * toplev.c: Define flag_detailed_statistics. | |
7950 | ||
7951 | * gcc.c (C specs): Use %(trad_capable_cpp) for -E|-M|-MM case | |
7952 | #if USE_CPPLIB. | |
7953 | * timevar.def (TV_CPP, TV_LEX): New. | |
7954 | * timevar.h: Add multiple include guard. | |
7955 | ||
7956 | * objc/lang-specs.h: Use %(trad_capable_cpp) for -E|-M|-MM case | |
7957 | #if USE_CPPLIB. | |
7958 | * objc/objc-act.c: Don't mention yy_cur or parse_options. | |
7959 | Initialize cpplib properly. Force lineno to 0 after first | |
7960 | call to check_newline. Don't handle -lang-objc here. | |
7961 | Move forget_protocol_qualifiers and remember_protocol_qualifiers here. | |
7962 | ||
5638268e DE |
7963 | 2000-09-06 David Edelsohn <edelsohn@gnu.org> |
7964 | ||
7965 | * rs6000.md: Correct function unit definitions for cr_logical and | |
7966 | mtjmpr. | |
7967 | (sCOND): Additionally fail for sgt, slt, sge, sle if !TARGET_POWER | |
7968 | and use portable method for >=0 and floating point >=. Remove | |
7969 | associated matchers. | |
7970 | ||
44835fdd MM |
7971 | 2000-09-06 Mark Mitchell <mark@codesourcery.com> |
7972 | ||
7973 | * extend.texi: Mark named return value extension as deprecated. | |
7974 | ||
bab6226b GK |
7975 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
7976 | ||
7977 | * config/rs6000/rs6000.c (rs6000_reverse_condition): Return | |
7978 | the result. | |
7979 | ||
e6513023 GDR |
7980 | 2000-09-06 Gabriel Dos Reis <gdr@codesourcery.com> |
7981 | ||
7982 | * toplev.c (display_help): Fix thinko in documentation. | |
7983 | ||
7984 | * diagnostic.h (output_buffer::indent_skip): New fields. | |
7985 | (output_indentation): New macro. | |
7986 | ||
7987 | * diagnostic.c (output_indent): New function. | |
7988 | (output_set_prefix, clear_diagnostic_info): Use. | |
7989 | (output_emit_prefix): Predict future indentation. | |
7990 | ||
112c7aea DD |
7991 | 2000-09-06 DJ Delorie <dj@redhat.com> |
7992 | ||
7993 | * Makefile.in (stage_*): add more dependencies to ensure parallel | |
7994 | builds build correctly | |
7995 | ||
1bac0fb4 MH |
7996 | 2000-09-06 Manfred Hollstein <manfredh@redhat.com> |
7997 | ||
7998 | * Makefile.in (bootstrap-lean): Depend on bootstrap-lean_g, | |
7999 | not bootstrap-lean_f. | |
8000 | ||
f472a17c AS |
8001 | 2000-09-06 Andreas Schwab <schwab@suse.de> |
8002 | ||
8003 | * mklibgcc.in: Emit rule for libgcc-stage-start. | |
8004 | * Makefile.in (stage1-start, stage2-start, stage3-start, | |
8005 | stage4-start): Don't handle libgcc here, use libgcc.mk instead. | |
8006 | ||
630c79be | 8007 | 2000-09-06 Bernd Schmidt <bernds@redhat.co.uk> |
611bbf2a BS |
8008 | |
8009 | * local-alloc.c (local_alloc): Ignore CLASS_LIKELY_SPILLED. | |
8010 | (update_equiv_regs): Likewise, except for the mn10200 kludge. | |
8011 | (combine_regs): Likewise. | |
8012 | ||
630c79be BS |
8013 | * Makefile.in (cse.o): Depend on $(BASIC_BLOCK_H). |
8014 | * cse.c: Include "basic-block.h". | |
8015 | (struct table_elt): New field REGCOST. | |
8016 | (CHEAP_REG): Delete macro. | |
8017 | (COST): Return 0 for REGs. | |
8018 | (approx_reg_cost_1, approx_reg_cost, preferrable): New functions. | |
8019 | (notreg_cost): Return 0 for appropriate SUBREGs. | |
8020 | (COSTS_N_INSNS): Return N * 2. | |
8021 | (rtx_cost): Return 0 for REGs, and use cost of nested rtx for cheap | |
8022 | SUBREGs. | |
8023 | (CHEAPER): Use new function preferrable. | |
8024 | (insert): Initialize REGCOST member. | |
8025 | (find_best_addr): Use approx_reg_cost for estimation of register | |
8026 | usage. | |
8027 | (cse_insn): Likewise. | |
8028 | * loop.c (iv_add_mult_cost): New function. | |
8029 | (add_cost, shift_cost, mult_cost): Delete variables. | |
8030 | (init_loop): Don't initialize add_cost; reduce copy_cost by half. | |
8031 | (strength_reduce): Use iv_add_mult_cost instead of fixed add_cost. | |
8032 | Make code that detects autoinc opportunities slightly less optimistic. | |
8033 | (simplify_giv_expr): If expression contains other reg that is also a | |
8034 | giv, only increment benefit if this is the only use of that reg. | |
8035 | (consec_sets_giv): Take that change into account. | |
8036 | (combine_givs): Slightly more verbose output. | |
8037 | ||
8038 | * i386.h (RTX_COSTS): For MULT, return true cost of multiplication, | |
8039 | not the cost of an equivalent shift. | |
8040 | * sh-protos.h (addsubcosts): Declare. | |
8041 | * sh.c (addsubcosts): New function. | |
8042 | * sh.h (CONST_COSTS): If CONST_OK_FOR_I, then return 0. | |
8043 | (RTX_COSTS): Tweak. Use addsubcosts. | |
8044 | (ADDRESS_COST): Return higher cost for reg+reg addressing. | |
8045 | ||
39a10a29 GK |
8046 | 2000-09-06 Geoff Keating <geoffk@cygnus.com> |
8047 | ||
8048 | * config/rs6000/rs6000.c (validate_condition_mode): New function. | |
8049 | (branch_comparison_operator): Call validate_condition_mode to | |
8050 | abort rather than returning 0. | |
8051 | (branch_positive_comparison_operator): New function. | |
8052 | (scc_comparison_operator): Call validate_condition_mode to abort | |
8053 | rather than returning 0. | |
8054 | (ccr_bit): Call validate_condition_mode. Update for | |
8055 | new branch scheme. | |
8056 | (print_operand): Delete %C modifier. Update %E case | |
8057 | to use EQ bit not SO bit. | |
8058 | (rs6000_reverse_condition): New function. | |
8059 | (rs6000_generate_compare): New function. | |
8060 | (rs6000_emit_sCOND): New function. | |
8061 | (rs6000_emit_cbranch): New function. | |
8062 | (output_cbranch): The length of a long branch insn is | |
8063 | now only 8 bytes. Add validate_condition_mode. Use | |
8064 | rs6000_reverse_condition. Remove cror generation. | |
bab6226b | 8065 | |
39a10a29 GK |
8066 | * config/rs6000/rs6000.h: Update comments. |
8067 | (PREDICATE_CODES): Add new predicate. Update codes used | |
8068 | by branch_comparison_operator and scc_comparison_operator. | |
8069 | * config/rs6000/rs6000-protos.h: Add prototypes for | |
8070 | new external functions. | |
8071 | * config/rs6000/rs6000.md: Add new scheduling parameters | |
8072 | for cr_logical instructions. Change length of branch | |
8073 | instructions. | |
8074 | (bCOND patterns): Call rs6000_emit_cbranch. | |
8075 | (sCOND patterns): Call rs6000_emit_sCOND. | |
8076 | (branch patterns): Change lengths to 4. | |
8077 | (cr logical patterns): New. | |
8078 | ||
2a4bbffa RH |
8079 | 2000-09-06 Richard Henderson <rth@cygnus.com> |
8080 | ||
8081 | * config/i386/i386.md (call_pop): Fix test for setting | |
8082 | current_function_uses_pic_offset_table. | |
8083 | (call, call_value_pop, call_value): Likewise. | |
8084 | ||
eab828ba ZW |
8085 | 2000-09-06 Zack Weinberg <zack@wolery.cumb.org> |
8086 | ||
8087 | * timevar.c (timevar_add): Delete. | |
8088 | (timevar_get): Also count time since the selected timer was | |
8089 | last updated. Do not examine the timevar stack if the | |
8090 | selected timer is standalone. | |
8091 | ||
f1d6a533 DA |
8092 | 2000-09-05 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
8093 | ||
8094 | * gthr-dce.h (__gthread_objc_mutex_deallocate): Free mutex->backend. | |
8095 | ||
53c5b5d7 JM |
8096 | 2000-09-05 Jason Merrill <jason@redhat.com> |
8097 | ||
8098 | * c-decl.c (finish_incomplete_decl): Don't call complete_array_type | |
8099 | for 'extern' arrays. | |
8100 | ||
3392dafc RH |
8101 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
8102 | ||
8103 | * config/ia64/lib1func.asm (__divtf3): Rebundle for Itanium. | |
8104 | Eliminate final copy from non-trapping case. | |
8105 | (__divdf3, __divsf3): Likewise. | |
8106 | ||
2a7ffc85 RH |
8107 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
8108 | ||
8109 | * config/ia64/ia64.md (mulhi3): Fix typo last change. | |
8110 | * config/ia64/lib1func.asm (__divdi3, __udivdi3, __umodsi3): Likewise. | |
8111 | ||
204093e6 DT |
8112 | 2000-09-03 Donn Terry <donn@interix.com>, Laurynas Biveinis <lauras@softhome.net> |
8113 | ||
8114 | * Makefile.in: Restructure bootstrap stages to allow clean | |
8115 | restart after failure. | |
8116 | ||
514f96e6 RH |
8117 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
8118 | ||
8119 | * config/ia64.md (movsi and movdi patterns): Allow moves from | |
8120 | 8-bit constants to AR registers. | |
8121 | ||
cf1f6ae3 RH |
8122 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
8123 | ||
8124 | * config/ia64/ia64.md (mulhi3): New. | |
8125 | ||
d8d7a286 RH |
8126 | 2000-09-05 Richard Henderson <rth@cygnus.com> |
8127 | ||
8128 | * config/ia64/ia64.h (INIT_TARGET_OPTABS): Remove. | |
8129 | * config/ia64/lib1funcs.asm (__divdi3): Update from Intel IA-64 | |
8130 | Optimization Guide, minimum latency alternative. | |
8131 | (__moddi3, __udivdi3, __umoddi3): Likewise. | |
8132 | (__divsi3, __modsi3, __udivsi3, __umodsi3): Likewise. | |
8133 | ||
a6efbece BK |
8134 | 2000-09-05 Bruce Korb <bkorb@gnu.org> |
8135 | ||
0e5921e8 ZW |
8136 | * fixinc/fixincl.c (load_file): always read header files |
8137 | with sizes that are a multiple of the page size. | |
dc46505a | 8138 | & use libiberty's getpagesize for determining that. |
a6efbece | 8139 | |
c0712acb AO |
8140 | 2000-09-05 Alexandre Oliva <aoliva@redhat.com> |
8141 | ||
8142 | * gcse.c (hash_string_1): Add prototype. | |
8143 | * cse.c (canon_hash_string): Likewise. | |
8144 | ||
af7f0fde CN |
8145 | 2000-09-04 Craig Newell <CraigN@ieee.org> |
8146 | ||
8147 | * gcc.c: Undefine "__WCHAR_TYPE__" before redefining it. | |
8148 | ||
4993ddc1 AS |
8149 | 2000-09-04 Andreas Schwab <schwab@suse.de> |
8150 | ||
8151 | * Makefile.in (STAGESTUFF): Remove libgcc. | |
8152 | (stage1-start, stage2-start, stage3-start): Copy the contents of | |
8153 | the libgcc directory explicitly. | |
8154 | (mostlyclean): Clean libgcc. | |
8155 | ||
5e640c56 AH |
8156 | 2000-09-04 Andrew Haley <aph@redhat.com> |
8157 | ||
8158 | * dwarf2out.c: (stack_adjust_offset): New prototype. | |
8159 | ||
25ffb1f6 JH |
8160 | Wed Jan 1 00:23:59 MET 1997 Jan Hubicka <jh@suse.cz> |
8161 | ||
8162 | * combine.c (make_extraction): Fix rtx_cost comparison to | |
8163 | match the comment. | |
8164 | ||
8165 | Wed Jan 1 00:17:32 MET 1997 Jan Hubicka <jh@suse.cz> | |
8166 | ||
0e5921e8 | 8167 | * i386.md (pushsi2, pushhi2, pophi2, swapsf, swapdf, |
25ffb1f6 JH |
8168 | umulsi3_highpart, smulsi3_highpart, testqi_ccno_1, xorqi_ext_1): |
8169 | Add '*' to insn pattern name. | |
8170 | ||
29844fa7 JJ |
8171 | 2000-09-04 Jakub Jelinek <jakub@redhat.com> |
8172 | ||
8173 | * cpplex.c (ON_REST_ARG): Check VAR_ARGS flag of current context, | |
8174 | use posn - 1 to index into tokens array. | |
8175 | (maybe_paste_with_next): Adjust caller. | |
8176 | ||
0d86f538 GK |
8177 | 2000-09-03 Geoff Keating <geoffk@cygnus.com> |
8178 | ||
bff46771 GK |
8179 | * invoke.texi: Document the -mvxworks option for rs6000 ELF. |
8180 | ||
0d86f538 GK |
8181 | * config/rs6000/rs6000.h: Update various comments about XER_REGNO. |
8182 | (REGNO_REG_CLASS): Use symbolic register | |
8183 | names. | |
8184 | ||
4e67550b RE |
8185 | 2000-09-03 Richard Earnshaw <rearnsha@arm.com> |
8186 | ||
0e5921e8 | 8187 | * arm.c (final_prescan_insn): If the form of a jump insn isn't |
4e67550b RE |
8188 | recognized, don't try to conditionally execute it. |
8189 | ||
150f4100 DC |
8190 | Sun Sep 3 13:10:56 2000 Denis Chertykov <denisc@overta.ru> |
8191 | ||
8192 | * config/avr/avr.md ("*tablejump_lib"): New pattern. | |
8193 | (call_value_insn): Right length claculation. | |
8194 | (call_insn): Likewise. | |
8195 | ||
5fecfd8d MM |
8196 | 2000-09-02 Marek Michalkiewicz <marekm@linux.org.pl> |
8197 | ||
8198 | * config/avr/avr-protos.h, config/avr/avr.c (unique_section, | |
8199 | gas_output_limited_string, gas_output_ascii, output_movqi, | |
8200 | output_movhi, out_movqi_r_mr, out_movqi_mr_r, out_movhi_r_mr, | |
8201 | out_movhi_mr_r, out_movsi_r_mr, out_movsi_mr_r, output_movsisf, | |
8202 | out_tstsi, out_tsthi, ret_cond_branch, ashlqi3_out, ashlhi3_out, | |
8203 | ashlsi3_out, ashrqi3_out, ashrhi3_out, ashrsi3_out, lshrqi3_out, | |
8204 | lshrhi3_out, lshrsi3_out, output_reload_inhi, output_reload_insisf, | |
8205 | out_shift_with_cnt, ptrreg_to_str, cond_string, encode_section_info): | |
8206 | Add "const" as needed to remove warnings. | |
8207 | ||
8208 | * config/avr/avr.c (avr_override_options, avr_init_once, | |
8209 | function_prologue, function_epilogue, frame_pointer_required_p, | |
8210 | class_likely_spilled_p, order_regs_for_local_alloc, | |
8211 | avr_address_cost, avr_ret_register): Use K&R style arguments. | |
8212 | (initial_elimination_offset, gas_output_limited_string): | |
8213 | Remove ATTRIBUTE_UNUSED from the used arguments. | |
8214 | (output_mov*, out_mov*_r_mr, out_mov*_mr_r, output_reload_insisf): | |
8215 | Use local variables src, dest, base to access operands[]. | |
8216 | Rename reg_dest to reg_src if that's what it is. | |
8217 | (output_movhi, output_movsisf): Optimize loading 8-bit immediate | |
8218 | constants to LD_REGS if reg_was_0. | |
8219 | (output_reload_insisf): Change arg 3 to insn length and set it. | |
8220 | (out_movhi_r_mr, out_movhi_mr_r): Use in/out for more efficient | |
8221 | access to 16-bit I/O register pairs. | |
8222 | (avr_address_cost): Lower cost for the above case. | |
8223 | (out_tsthi): Use "or" (faster) instead of "sbiw" if the operand | |
8224 | may be clobbered, also for LD_REGS. | |
8225 | (adjust_insn_length): Correct insn length for iorhi3 and iorsi3 | |
8226 | with a CONST_INT. | |
8227 | ||
8228 | * config/avr/avr.h (PTRDIFF_TYPE): Make signed. | |
8229 | ||
8230 | * config/avr/avr.md: Change all uses of the TEST_HARD_REG_CLASS | |
8231 | macro to test_hard_reg_class function. | |
8232 | (*movsi, *movsf): Change "cc" attribute from "clobber" to "none" | |
8233 | for loading immediate constants to LD_REGS. | |
8234 | (andsi3, cmphi, cmpsi): Add return statements to avoid warnings. | |
8235 | ||
8236 | ||
bad3869a MM |
8237 | Sat Sep 2 13:58:23 2000 Marek Michalkiewicz <marekm@linux.org.pl> |
8238 | ||
8239 | * config/avr/avr.md ("*negsi2"): substitute %@ to __zero_reg__ | |
8240 | * config/avr/libgcc.S: Lost part of the previous patch. | |
8241 | ||
802a8181 DA |
8242 | 2000-08-31 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
8243 | ||
8244 | * gthr-dce.h (__gthread_objc_mutex_allocate): Create a pthread_mutex_t | |
8245 | object before calling pthread_mutex_init. | |
8246 | ||
1a66cd67 AO |
8247 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com> |
8248 | ||
8249 | * config/sh/t-elf, config/sh/crt1.asm, config/sh/crti.asm, | |
8250 | config/sh/crtn.asm: New files. | |
8251 | * config/sh/t-sh (EXTRA_MULTILIB_PARTS): Set. | |
8252 | (crt1.o, crti.o, crtn.o): New targets. | |
8253 | * configure.in [sh-*-elf*, sh-*-rtemself*] (tmake_file): Added | |
8254 | sh/t-elf. | |
8255 | * configure: Rebuilt. | |
8256 | * config/sh/sh.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP, | |
8257 | STARTFILE_SPEC, ENDFILE_SPEC, CRT_CALL_STATIC_FUNCTION): Define. | |
8258 | * config/sh/elf.h (INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): | |
8259 | Undefine for config/elfos.h to redefine. | |
8260 | (STARTFILE_SPEC, ENDFILE_SPEC): Redefine after config/elfos.h. | |
8261 | ||
8262 | 2000-09-02 Alexandre Oliva <aoliva@redhat.com>, Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> | |
8263 | ||
8264 | * config/sh/sh-protos.h (nonpic_symbol_mentioned_p, | |
8265 | legitimize_pic_address, output_pic_addr_const): Declare. | |
8266 | * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Fix PIC register. | |
8267 | (PREFERGOT_BIT, TARGET_PREFERGOT): Likewise. | |
8268 | (TARGET_SWITCHES): New switch -mprefergot. | |
8269 | (OVERRIDE_OPTIONS): Set flag_no_function_cse unless -mprefergot. | |
8270 | (PIC_OFFSET_TABLE_REGNUM): Define. | |
8271 | (GOT_SYMBOL_TABLE): Likewise. | |
8272 | (LEGITIMIZE_ADDRESS): Use legitimize_pic_address. | |
8273 | (ENCODE_SECTION_INFO): Define. | |
8274 | (FINALIZE_PIC): New macros. | |
8275 | (LEGITIMATE_PIC_OPERAND_P, SYMBOLIC_CONST_P): New macro. | |
8276 | (ASM_OUTPUT_INT, ASM_OUTPUT_SHORT): Use output_pic_addr_const. | |
8277 | * config/sh/sh.c (print_operand_address): Use output_pic_addr_const. | |
8278 | (prepare_move_operands): Call emit_pic_move or | |
8279 | emit_pic_const_move if appropriate. | |
8280 | (output_far_jump): For PIC, use braf and output long offset. | |
0e5921e8 | 8281 | (machine_dependent_reorg): |
1a66cd67 AO |
8282 | (sh_expand_prologue): Save and initialize the PIC register. |
8283 | (sh_expand_epilogue): Restore it. | |
8284 | (initial_elimination_offset): Account for it. | |
8285 | (nonpic_symbol_mentioned_p): New function. | |
8286 | (legitimize_pic_address): Likewise. | |
8287 | (output_pic_addr_const): Likewise. | |
8288 | * config/sh/sh.md (calli_pcrel, call_valuei_pcrel): New insns. | |
8289 | (call, call_value): Use them. | |
8290 | (GOTaddr2picreg, sym_label2reg, symGOT2reg, symGOTOFF2reg, | |
8291 | symPLT_label2reg): New expands. | |
8292 | * invoke.texi (SH Options): Document -mprefergot. | |
8293 | ||
6462bb43 AO |
8294 | 2000-09-01 Alexandre Oliva <aoliva@redhat.com> |
8295 | ||
8296 | * rtl.h (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): New macro. | |
8297 | * gcse.c (hash_string_1): New function. | |
8298 | (hash_expr_1) <ASM_OPERANDS>: Disregard filename and line number. | |
8299 | (expr_equiv_p) <ASM_OPERANDS>: Likewise. | |
8300 | * cse.c (rtx_cost): Don't increase the cost of ASM_OPERANDS. | |
8301 | (canon_hash_string): New function. | |
8302 | (canon_hash) <ASM_OPERANDS>: Disregard filename and line number. | |
8303 | (exp_equiv_p) <ASM_OPERANDS>: Likewise. | |
8304 | (fold_rtx): Use ASM_OPERANDS accessor macros. | |
8305 | * emit-rtl.c (copy_insn_1): Likewise. | |
8306 | * integrate.c (copy_rtx_and_substitute): Likewise. | |
8307 | * stmt.c (expand_asm_operands): Likewise. Give an | |
8308 | ASM_OPERANDS rtx the mode of the output reg being set from it. | |
8309 | ||
1b4f90cd FF |
8310 | 2000-09-01 Fred Fish <fnf@be.com> |
8311 | ||
8312 | * fix-header.c (write_rbrac): Add putc and getc to list of | |
8313 | functions to protect against prior definition as a macro. | |
0e5921e8 | 8314 | |
3c786c69 JM |
8315 | 2000-09-01 Joseph S. Myers <jsm28@cam.ac.uk> |
8316 | ||
8317 | * c-common.h (enum c_tree_index): Add CTI_C_SIZE_TYPE. | |
8318 | (c_size_type_node): Define. | |
8319 | * c-decl.c (init_decl_processing): Initialize c_size_type_node. | |
8320 | * c-common.c (enum format_lengths, enum format_std_version, | |
8321 | format_length_info, format_type_detail, BADLEN, NOLENGTHS, | |
8322 | format_kind_info, printf_length_specs, scanf_length_specs, T89_I, | |
8323 | T99_I, T89_L, T99_LL, TEX_LL, T89_S, T89_UI, T99_UI, T89_UL, | |
8324 | T99_ULL, TEX_ULL, T89_US, T89_F, T99_F, T89_D, T99_D, T89_LD, | |
8325 | T99_LD, T89_C, T99_SC, T99_UC, T89_V, T94_W, TEX_W, T94_WI, | |
8326 | TEX_WI, T99_ST, T99_SST, T99_PD, T99_UPD, T99_IM, T99_UIM, | |
8327 | format_types): Define. | |
8328 | (format_char_info, print_char_table, scan_char_table, | |
8329 | time_char_table): Rearrange for new organization of information | |
8330 | about format length modifiers and standard versions. | |
8331 | (T_ST): Redefine to use c_size_type_node. | |
8332 | (check_format_info): Obtain information about length modifiers and | |
8333 | standard versions from tables. Adjust warning message wordings. | |
8334 | Use the name from the user's program for `ll' and `hh' length | |
8335 | modifiers in warning messages. Use more informative names for | |
8336 | wanted types where available (for wchar_t, wint_t, size_t, signed | |
8337 | size_t, ptrdiff_t, unsigned ptrdiff_t, intmax_t and uintmax_t). | |
8338 | ||
8a09bb27 JW |
8339 | 2000-09-01 Jim Wilson <wilson@cygnus.com> |
8340 | ||
ca3920ad JW |
8341 | * calls.c (emit_call_1): Add REG_NORETURN note to call if ECF_NORETURN. |
8342 | * combine.c (distribute_notes): Handle REG_NORETURN. | |
8343 | * rtl.c (reg_note_name): Add REG_NORETURN. | |
8344 | * rtl.h (enum reg_note): Likewise. | |
8345 | ||
8346 | * config/ia64/ia64-protos.h (emit_safe_across_calls): Renamed from | |
8347 | ia64_file_start. | |
8348 | * config/ia64/ia64.c (emit_safe_across_calls): Likewise. | |
8349 | (rtx_needs_barrier): Handle unspec_volatile 8 and 9. | |
8350 | (emit_predicate_relation_info): Handle conditional calls with | |
8351 | REG_NORETURN. | |
8352 | * config/ia64/ia64.h (ASM_FILE_START): Call emit_safe_across_calls | |
8353 | instead of ia64_file_start. | |
8354 | * config/ia64/sysv4.h (ASM_FILE_START): Likewise. | |
8355 | * config/ia64/ia64.md (safe_across_calls_all, | |
8356 | save_across_calls_normal): New patterns. | |
8357 | ||
8a09bb27 JW |
8358 | * loop.c (check_final_value): Check for biv use before checking for |
8359 | giv use. Check for both biv and giv uses. Always set last_giv_use | |
8360 | if there is a giv use. | |
8361 | ||
11a13704 RH |
8362 | 2000-09-01 Richard Henderson <rth@cygnus.com> |
8363 | ||
8364 | * config/ia64/ia64.md (mulsi3): Use grfr_register_operand. | |
8365 | (madddi3): Likewise. | |
8366 | (maddsi3): New. | |
8367 | ||
6324d2bb RK |
8368 | Fri Sep 1 10:59:47 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8369 | ||
fcf1b822 RK |
8370 | * expr.c (clear_storage): Don't use emit_move_insn unless |
8371 | either BLKmode or proper size. | |
8372 | (store_constructor): Don't call clear_storage if REG of wrong size. | |
8373 | ||
6324d2bb RK |
8374 | * flow.c (init_propagate_block_info): Don't mark frame dead at end |
8375 | of function if returns wiht stack pointer depressed. | |
8376 | ||
1ba5ae8f AH |
8377 | 2000-09-01 Andrew Haley <aph@redhat.com> |
8378 | ||
0e5921e8 ZW |
8379 | * dwarf2out.c (stack_adjust_offset): New function. |
8380 | (dwarf2out_stack_adjust): Break out stack adjust logic into | |
8381 | new stack_adjust_offset function. Look inside parallels and | |
8382 | sequences for stack adjustments. | |
1ba5ae8f | 8383 | |
893f3d5b JL |
8384 | 2000-08-31 Jeff Law <law@cygnus.com> |
8385 | ||
94c51f7a JL |
8386 | * arm.md: Use no_new_pseudos to determine when it is safe |
8387 | to create new pseudo registers. | |
8388 | ||
0e5921e8 ZW |
8389 | * arm.c (legitimize_pic_address): Use no_new_pseudos to determine |
8390 | when we can safely allocate new registers. | |
893f3d5b | 8391 | |
1b3d8f8a GK |
8392 | 2000-08-31 Geoffrey Keating <geoffk@cygnus.com> |
8393 | ||
8394 | * stmt.c (expand_asm_operands): Twiddle generating_concat_p | |
8395 | so that CONCATs are not generated for ASMs. | |
8396 | * emit-rtl.c (gen_reg_rtx): Don't generate CONCATs when | |
8397 | not generating_concat_p. | |
8398 | * function.c (pop_function_context_from): Reset | |
8399 | generating_concat_p. | |
8400 | (prepare_function_start): Likewise. | |
8401 | * rtl.c (generating_concat_p): Define. | |
8402 | * rtl.h (generating_concat_p): Declare. | |
8403 | * toplev.c (rest_of_compilation): No CONCATs after RTL generation. | |
8404 | ||
4e8bd75f | 8405 | 2000-08-22 Philipp Thomas <pthomas@suse.de> |
0e5921e8 | 8406 | Masanobu Yuhara <yuhara@flab.fujitsu.co.jp> |
4e8bd75f PT |
8407 | |
8408 | * gmicro.h (TARGET_SWITCHES): Add descriptions and mark them | |
8409 | for translation. | |
8410 | ||
b145ee27 GM |
8411 | 2000-08-30 Greg McGary <greg@mcgary.org> |
8412 | ||
8413 | * Makefile.in (fixinc.sh): Pass CC, CFLAGS and LDFLAGS to mkfixinc.sh | |
8414 | * fixinc/Makefile.in (fixincl): Pass $(LDFLAGS) to $(CC). | |
8415 | * fixinc/mkfixinc.sh: Pass $CC, $CFLAGS and $LDFLAGS to $MAKE. | |
8416 | ||
2afaa41c GM |
8417 | 2000-08-30 Greg McGary <greg@mcgary.org> |
8418 | ||
8419 | * tree.h (struct tree_int_cst): Wrap low and high in a sub-struct. | |
8420 | (TREE_INT_CST_LOW, TREE_INT_CST_HIGH): Access through sub-struct. | |
8421 | (TREE_INT_CST): New macro. | |
8422 | * varasm.c (const_hash, compare_constant_1, record_constant_1): | |
8423 | Use new macro TREE_INT_CST. | |
8424 | ||
1d92b3e1 NB |
8425 | Wed 30-Aug-2000 23:18:59 BST Neil Booth <NeilB@earthling.net> |
8426 | ||
8427 | * contrib.texi: Add self. | |
8428 | ||
b23ca156 AO |
8429 | 2000-08-30 Alexandre Oliva <aoliva@redhat.com> |
8430 | ||
8431 | * config/sh/sh.md (cmpeqsi_ior_t, cmpeqsi_and_t): New insns. | |
8432 | (cmpeqdi_t splitter): Use cmpeqsi_and_t instead of emitting jumps | |
8433 | and labels. | |
8434 | ||
aef9fbbf DA |
8435 | 2000-08-30 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
8436 | ||
8437 | * fixinc/gnu-regex.c: Don't define `const'. | |
8438 | ||
85f3d674 RK |
8439 | Tue Aug 29 22:09:59 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8440 | ||
8441 | * expr.c (store_constructor): Allow variable bounds of array type. | |
8442 | (expand_expr): Don't blow up if type is ERROR_MARK. | |
8443 | * varasm.c (output_constructor): Don't access lower bound of array | |
8444 | type unless need it if index is supplied (so it can be a variable | |
8445 | if no index is supplied). | |
8446 | Use tree_low_cst; use HOST_WIDE_INT for sizes; change BITPOS to POS. | |
8447 | Other minor cleanups. | |
8448 | ||
5b67ad6f DA |
8449 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
8450 | ||
8451 | * Makefile.in: Revamp handling of cflags to allow different WARN_CFLAGS | |
8452 | for compilations in stage 1 and subsequent stages, respectively. | |
8453 | * configure.in (vax): Add compiler-dependent CFLAGS for stage 1. | |
8454 | * configure: Rebuilt. | |
8455 | * x-vax, x-vax-gcc: Deleted. | |
8456 | ||
63ad61ed ZW |
8457 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
8458 | ||
8459 | * c-common.c (declare_function_name): Use func_id_node, | |
8460 | function_id_node, and pretty_function_id_node. Do not make | |
0e5921e8 | 8461 | __func__ visible at file scope. |
63ad61ed ZW |
8462 | * c-common.h (c_tree_index): Add CTI_FUNCTION_ID, |
8463 | CTI_PRETTY_FUNCTION_ID, and CTI_FUNC_ID. | |
8464 | (function_id_node, pretty_function_id_node, func_id_node): New | |
8465 | macros. | |
8466 | * c-decl.c (init_decl_processing): Initialize function_id_node, | |
8467 | pretty_function_id_node, and func_id_node. | |
8468 | (c_make_fname_decl): Correct comment. | |
8469 | ||
8470 | * tree.h (struct tree_identifier): Constify pointer member. | |
8471 | ||
8472 | * c-decl.c (pushdecl, implicit_decl_warning): Constify a char *. | |
8473 | * c-pragma.h (struct weak_syms): Constify name and value members. | |
0e5921e8 | 8474 | (add_weak): Constify arguments. |
63ad61ed ZW |
8475 | |
8476 | * calls.c (special_function_p): Constify a char *. | |
8477 | (expand_call): Remove variable which is initialized and then | |
8478 | never used. | |
8479 | * dependence.c (struct def_use, struct induction, struct subscript): | |
8480 | Constify 'variable' member. | |
8481 | (get_low_bound, have_induction_variable): Constify char * argument. | |
8482 | (find_induction_variable): Add braces to avoid dangling else. | |
8483 | (classify_dependence): Constify char * arrays. | |
8484 | * profile.c (output_func_start_profiler): Constify a char *. | |
8485 | * stor-layout.c (finalize_record_size): Constify a char *. | |
8486 | * tree.c (is_attribute_p): Constify a char *. | |
8487 | * varasm.c (add_weak, remove_from_pending_weak_list): Constify argument. | |
8488 | ||
8489 | * varasm.c (make_function_rtl, make_decl_rtl): Rearrange code | |
8490 | for comprehensibility. Do not call get_identifier if we did | |
8491 | not change the DECL_ASSEMBLER_NAME of the decl. Use alloca to | |
8492 | create temporary string constants, not ggc_alloc_string. No | |
8493 | need to copy result of ASM_FORMAT_PRIVATE_NAME. Use const | |
8494 | char * to hold IDENTIFIER_POINTERs. | |
8495 | ||
cee58bc0 RH |
8496 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
8497 | ||
8498 | * config/ia64/ia64.md (muldi3): Use grfr_register_operand | |
8499 | for the inputs. | |
8500 | ||
94aaab7a RH |
8501 | 2000-08-29 Richard Henderson <rth@cygnus.com> |
8502 | ||
8503 | * reload.c (push_secondary_reload): Allow class == reload_class | |
8504 | if we're using a reload_in/out pattern. | |
8505 | ||
60a3c181 RH |
8506 | * config/ia64/ia64.md (reload_inti): Use a TImode scratch. Use |
8507 | the half that does not conflict with the reload register. | |
8508 | (reload_outti): Likewise. | |
8509 | ||
9218435e KH |
8510 | 2000-08-29 Kazu Hirata <kazu@hxi.com> |
8511 | ||
4381f7c2 KH |
8512 | * reload.c: Fix formatting. |
8513 | ||
8514 | * stmt.c: Fix formatting. | |
8515 | ||
9218435e KH |
8516 | * gcc.c: Fix formatting. |
8517 | ||
fba0bfd4 ZW |
8518 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
8519 | ||
8520 | * flags.h (time_report, mem_report): New global flags. | |
8521 | * toplev.c: Define time_report and mem_report. | |
8522 | (f_options): Add -ftime-report and -fmem-report. | |
8523 | (compile_file): Turn on time_report if quiet_flag is off. | |
8524 | Call ggc_print_statistics at very end if mem_report is on. | |
8525 | * timevar.c (TIMEVAR_ENABLE): Examine time_report, not quiet_flag. | |
8526 | ||
8527 | * ggc-common.c (ggc_print_statistics): Rename to | |
8528 | ggc_print_common_statistics; all callers changed. Scale | |
8529 | quantities above 10K to kilobytes and above 10M to megabytes. | |
8530 | * ggc-page.c (ggc_page_print_statistics): Rename to | |
8531 | ggc_print_statistics. Report memory consumed by internal data | |
8532 | structures for each allocation bucket. Scale quantities above | |
8533 | 10K to kilobytes and above 10M to megabytes. | |
8534 | * ggc-simple.c: Prototype debug_ggc_tree to avoid warning. | |
8535 | Cast PTR_KEY(p) to unsigned long in fprintf call to avoid warning. | |
8536 | Define tally_leaves always. | |
8537 | (ggc_print_statistics): New function. | |
8538 | * ggc.h: Adjust for renamed functions. | |
8539 | ||
612105a6 DC |
8540 | Wed Aug 30 00:11:42 2000 Denis Chertykov <denisc@overta.ru> |
8541 | ||
8542 | * config/avr/avr.md ("*movsf","*movsi"): Pass NULL to | |
8543 | output_movsisf instead of which_alternative. | |
8544 | ||
8545 | * config/avr/avr.c (output_reload_inhi): Check for NULL ponter. | |
8546 | ||
6bec29c9 DC |
8547 | Tue Aug 29 22:29:58 2000 Denis Chertykov <denisc@overta.ru> & Marek Michalkiewicz <marekm@linux.org.pl> |
8548 | ||
8549 | * config/avr/avr-protos.h: (avr_output_ascii) Removed. | |
8550 | (avr_progmem_p): New prototype. | |
8551 | (output_movsisf): Prototype declaration changed. | |
8552 | (output_movqi): New prototype. | |
8553 | (output_movhi): New prototype. | |
8554 | (call_insn_operand): Likewise. | |
0e5921e8 | 8555 | (final_prescan_insn): Likewise. |
6bec29c9 DC |
8556 | (avr_simplify_comparision_p): Likewise. |
8557 | (avr_normalize_condition): Likewise. | |
8558 | (compare_eq_p): Likewise. | |
8559 | (out_shift_with_cnt): Likewise. | |
8560 | (const_int_pow2_p): Likewise. | |
8561 | (output_reload_inhi): Prototype declaration changed. | |
8562 | ||
8563 | * config/avr/avr.c: (debug_hard_reg_set): Prototype declared. | |
8564 | (ldi_reg_rtx): New. rtx for r31. | |
8565 | (avr_init_stack): Initialize as "__stack". | |
8566 | (function_prologue): Use it. | |
8567 | Replace all TARGET_ENHANCED with AVR_ENHANCED. | |
8568 | (avr_mcu_name): Initialize as "avr2". | |
8569 | (avr_enhanced_p, avr_mega_p): New variables. | |
8570 | (mcu_types, avr_override_options): Handle all known MCU types. | |
8571 | Also handle avr1 (only preprocess, assemble and link). | |
8572 | (print_operand): Using of `%K' in output template removed. | |
8573 | (out_movqi_r_mr): Optimized. | |
8574 | (out_movhi_r_mr): Likewise. | |
8575 | (output_movqi): New function. | |
8576 | (output_movhi): Likewise. | |
8577 | (out_movsi_r_mr): Optimized. | |
8578 | (output_movsisf): Compute insn length for `adjust_insn_length' | |
8579 | (out_movqi_mr_r): Optimized. | |
8580 | (out_movhi_mr_r): Optimized. | |
8581 | (adjust_insn_length): Use output_movsisf, output_movqi, | |
8582 | output_movhi for insn length adjusting. | |
8583 | (reg_unused_after): Use dead_or_set_p. | |
8584 | (preferred_reload_class): Now havn't any restriction. | |
8585 | (reg_was_0): New function. | |
8586 | (io_address_p): Likewise. | |
8587 | (const_int_pow2_p): Likewise. | |
8588 | (output_reload_inhi): Likewise. | |
8589 | (output_reload_insisf): Likewise. | |
8590 | ||
8591 | * config/avr/avr.h (MULTILIB_DEFAULTS): Define. | |
8592 | (LIB_SPEC): Use -lc for all supported devices. | |
8593 | (LIBGCC_SPEC): Use -lgcc for all supported devices. | |
8594 | (AVR_MEGA): Define as avr_mega_p. | |
8595 | (AVR_ENHANCED): New, define as avr_enhanced_p. | |
8596 | (TARGET_SWITCHES): Remove -menhanced, now handled by -mmcu=... | |
8597 | (CPP_SPEC, LINK_SPEC): Handle all known MCU types. | |
8598 | (CRT_BINUTILS_SPECS): Handle all known MCU types. | |
8599 | Rename gcrt1-*.o to make file names unique on 8.3 filesystems. | |
8600 | (EXTRA_SPECS): Add CPP_AVR[1-5]_SPEC. | |
8601 | (ASM_SPEC): Pass -mmcu=... to the assembler. | |
8602 | Change all -DAVR_* to -D__AVR_*__. | |
8603 | (INIT_TARGET_OPTABS), config/avr/libgcc.S: | |
8604 | Rename library functions to start with two underscores. | |
8605 | (ASM_OUTPUT_COMMON): Outputs `.comm VAR,VAR-SIZE,1' to avoid | |
8606 | alignment. | |
8607 | (ASM_WEAKEN_LABEL): Declared for __attribute__((weak)). | |
8608 | (SUPPORTS_WEAK): Likewise. | |
8609 | (LDI_REG_REGNO): New. Register r31 will be used as temporary | |
8610 | register for loading constants to r0-r14. | |
8611 | ||
8612 | * config/avr/avr.md: Replace all TARGET_ENHANCED with | |
8613 | AVR_ENHANCED. | |
8614 | (*mov_r_sp): Removed. Handled by output_movhi. | |
8615 | (*mov_sp_r): Likewise. | |
8616 | (*mov_sp_r_no_interrupts): Likewise | |
8617 | (*mov_sp_r_tiny): Likewise. | |
8618 | (*movqi): Use output_movqi. | |
8619 | (*reload_inqi): New. | |
8620 | (*movhi): Use output_movhi. | |
8621 | (*reload_inhi): New. | |
8622 | (*negsi2): Optimized. | |
8623 | (*negsf2): Likewise. | |
8624 | Added peepholes (define_peephole2) for loading constants to r0-r14 | |
8625 | and for using `cpse' command. | |
8626 | ||
8627 | * config/avr/libgcc.S: Rename library functions to start with two | |
8628 | underscores. | |
8629 | Add support for enhanced core. | |
8630 | (_moqhi3): Fix typo, now _modqi3. | |
8631 | (__divsi_raw): Use __zero_reg__ as loop counter, smaller by 1 word. | |
8632 | (__prologue_saves__): Remove test for stack adjust by 0. | |
8633 | (__tablejump__): New. | |
8634 | ||
8635 | * config/avr/t-avr: Build libgcc2 with -mcall-prologues. | |
8636 | Add multilib support. | |
8637 | ||
20bd7bfa JW |
8638 | Tue Aug 29 15:17:54 EDT 2000 John Wehle (john@feith.com) |
8639 | ||
8640 | * loop.c (prescan_loop): Don't check unknown_address_altered | |
8641 | when deciding if insert_loop_mem is safe. Add BLKmode MEMs | |
8642 | to loop_store_mems as necessary. | |
8643 | (loop_invariant_p): Don't check unknown_address_altered | |
8644 | or unknown_constant_address_altered. | |
8645 | ||
76f941a8 DA |
8646 | 2000-08-29 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
8647 | ||
8648 | * vax.md (sltu, sgeu): Delete sltu and sgeu insn patterns. | |
8649 | ||
2c8f0515 ZW |
8650 | 2000-08-29 Zack Weinberg <zack@wolery.cumb.org> |
8651 | ||
8652 | * cpperror.c (print_file_and_line): If line is (unsigned int)-1, | |
8653 | print just the filename. | |
8654 | * cpplex.c (_cpp_run_directive): Add additional argument, the | |
8655 | name to give the synthetic buffer. This defaults to | |
8656 | translated "<command line>". | |
8657 | * cpplib.c (cpp_define, cpp_undef, cpp_assert, cpp_unassert): | |
8658 | Adjust to match. | |
8659 | (_cpp_define_builtin): New function. | |
8660 | * cppinit.c (initialize_builtins): Use _cpp_define_builtin. | |
8661 | * cpphash.h: Update prototypes. | |
8662 | ||
8663 | * tradcpp.c (main): Process -D and -U simultaneously, in the | |
8664 | order they appeared on the command line. | |
8665 | ||
6ad79f1b KG |
8666 | 2000-08-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
8667 | ||
8668 | * c-decl.c (define_label): Call warning_with_file_and_line and | |
8669 | error_with_file_and_line instead of plain warning or error. | |
8670 | ||
8671 | * c-parse.in (label): Use save_filename/save_lineno to ensure | |
8672 | correct values for calls to define_label. | |
8673 | ||
4361b41d MM |
8674 | 2000-08-29 Mark Mitchell <mark@codesourcery.com> |
8675 | ||
8676 | * calls.c (expand_call): Don't create a VAR_DECL just to throw it | |
8677 | away. | |
8678 | * expr.c (expand_expr, case TARGET_EXPR): Don't call | |
8679 | mark_addressable. | |
8680 | * tree.h (get_file_function_name): Remove two duplicate | |
8681 | declarations. | |
8682 | ||
abf9af02 KH |
8683 | 2000-08-28 Kazu Hirata <kazu@hxi.com> |
8684 | ||
dc478a5d KH |
8685 | * tree.c: Fix formatting. |
8686 | ||
abf9af02 KH |
8687 | * xcoffout.c: Fix formatting. |
8688 | ||
5f632b5e JM |
8689 | 2000-08-28 Jason Merrill <jason@redhat.com> |
8690 | ||
8691 | * dwarf2out.c (attr_checksum): Also ignore DW_AT_producer. | |
8692 | ||
8693 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> | |
8694 | ||
8695 | * dwarf2out.c (dwarf2out_finish): Don't bother calling | |
8696 | break_out_includes if it won't do anything. | |
8697 | ||
38323cc3 RH |
8698 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
8699 | ||
8700 | * reload.c (push_secondary_reload): Revert 2000-08-16 change. | |
8701 | (find_reloads): Likewise. | |
8702 | * config/alpha/alpha.md (reload_inqi): Revert 2000-08-11 change. | |
8703 | (reload_inhi): Likewise. | |
8704 | ||
e1ff012c RH |
8705 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
8706 | ||
8707 | * config/i386/i386.c: Don't error on EXTRA_CONSTRAINT defined. | |
8708 | (call_insn_operand): Don't expect a surrounding mem. | |
8709 | (constant_call_address_operand): Likewise. | |
8710 | * config/i386/i386.h (PREDICATE_CODES): Update. | |
8711 | * config/i386/i386.md (call patterns): Move the match_operand | |
8712 | for the call destination inside the mem. | |
8713 | ||
c2cba7a9 RH |
8714 | 2000-08-28 Richard Henderson <rth@cygnus.com> |
8715 | ||
8716 | * local-alloc.c (requires_inout): Don't use reserved range for | |
8717 | EXTRA_CONSTRAINTS; use anything not matched by REG_CLASS_FROM_LETTER. | |
8718 | * recog.c (asm_operand_ok): Likewise. | |
8719 | (preprocess_constraints, constrain_operands): Likewise. | |
8720 | * regclass.c (record_reg_classes): Likewise. | |
8721 | * reload.c (find_reloads): Likewise. | |
8722 | * reload1.c (maybe_fix_stack_asms): Likewise. | |
8723 | (reload_cse_simplify_operands): Likewise. | |
8724 | * stmt.c (expand_asm_operands): Likewise. | |
8725 | ||
8726 | * md.texi: Update constraints documentation. | |
8727 | * tm.texi (EXTRA_CONSTRAINT): Update. | |
8728 | ||
5f632b5e JM |
8729 | 2000-08-28 Daniel Berlin <dberlin@redhat.com> |
8730 | ||
8731 | * dwarf2out.c (DIE_LABEL_PREFIX): Remove leading "__". | |
8732 | (print_die): If we don't know the offset of the | |
8733 | target die, try the symbol. Add a trailing newline. | |
8734 | (reverse_all_dies): New fn. | |
8735 | (dwarf2out_finish): Call it. | |
8736 | (break_out_includes): Reorganize for clarity. | |
8737 | (add_sibling_attributes): Don't call reverse_die_lists. | |
8738 | (output_comp_unit): Rename from output_comdat_comp_unit. Use for | |
8739 | primary CU, too. | |
8740 | * flags.h: Add flag_eliminate_dwarf2_dups. | |
8741 | * toplev.c (f_options): Support -feliminate-dwarf2-dups. | |
8742 | ||
5de0e8d4 JM |
8743 | 2000-08-28 Jason Merrill <jason@redhat.com> |
8744 | ||
5f632b5e JM |
8745 | * dwarf2.h (DW_TAG_GNU_BINCL, DW_TAG_GNU_EINCL): New tags. |
8746 | * dwarf2out.c: #include "md5.h". | |
8747 | (DIE_LABEL_PREFIX): New macro. | |
8748 | (dw_val_struct): Add 'external' flag to val_die_ref. | |
8749 | (add_AT_die_ref, AT_ref): Adjust. | |
8750 | (AT_ref_external, set_AT_ref_external): New fns. | |
8751 | (build_abbrev_table): Call set_AT_ref_external. | |
8752 | (value_format): Call AT_ref_external. | |
8753 | (die_struct): Add die_symbol field. | |
8754 | (new_die): Clear it. | |
8755 | (dwarf_tag_name): Handle BINCL/EINCL. | |
8756 | (dwarf2out_start_source_file): Add BINCL DIE. | |
8757 | (dwarf2out_end_source_file): Add EINCL DIE. | |
8758 | (push_new_compile_unit, pop_compile_unit, clear_die_sizes): New fns. | |
8759 | (loc_checksum, attr_checksum, die_checksum): New fns. | |
8760 | (is_type_die, is_comdat_die, is_symbol_die): New fns. | |
8761 | (compute_section_prefix, assign_symbol_names): New fns. | |
8762 | (gen_internal_sym, output_die_symbol, output_symbolic_ref): New fns. | |
8763 | (output_die): Call output_die_symbol and AT_ref_external. | |
8764 | (output_comdat_comp_unit): New fn, split out from... | |
0e5921e8 | 8765 | (dwarf2out_finish): ...here. Also call add_sibling_attributes for |
5f632b5e JM |
8766 | secondary CUs. |
8767 | (output_pubnames, output_aranges): Abort if we see entries from | |
8768 | secondary CUs. | |
8769 | * toplev.h: Declare file_name_nondirectory. | |
8770 | * toplev.c (file_name_nondirectory): New fn, moved from C++ frontend. | |
8771 | (rest_of_type_compilation): Call dwarf2out_decl if at toplevel. | |
8772 | (debug_start_source_file): Call dwarf2out_start_source_file | |
8773 | regardless of debug verbosity. | |
8774 | (debug_end_source_file): Similarly. | |
8775 | * tree.h: Declare clean_symbol_name. | |
8776 | * tree.c (clean_symbol_name): Split out from... | |
8777 | (get_file_function_name_long): ...here. | |
8778 | ||
5de0e8d4 JM |
8779 | * dwarf2out.c (new_loc_descr): Use calloc. |
8780 | (splice_child_die): Remove the die from the right parent. | |
8781 | (gen_struct_or_union_die): Don't add AT_name to a specification DIE. | |
8782 | ||
04324727 RK |
8783 | Mon Aug 28 19:02:13 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
8784 | ||
8785 | * toplev.c (decode_g_option): Don't give warning for unknown -g | |
8786 | option; return 0 instead. | |
8787 | (main): If -g option is not recognized by front end or | |
8788 | language-independent code, give warning. | |
8789 | ||
9e3e266c GM |
8790 | 2000-08-28 Greg McGary <greg@mcgary.org> |
8791 | ||
8792 | * config/i386/i386-protos.h (ix86_expand_compare): Add extern decl. | |
8793 | * config/i386/i386.c (ix86_expand_compare): Remove `static'. | |
8794 | * config/i386/i386.md (trap, conditional_trap): New insn & expand. | |
8795 | ||
a0bff95f GM |
8796 | 2000-08-27 Greg McGary <greg@mcgary.org> |
8797 | ||
8798 | * cpplex.c (parse_string): Don't look for backslash | |
8799 | before first char in `namebuf'. | |
8800 | * loop.c (strength_reduce): Skip NOTEs. | |
8801 | ||
edb4c415 JM |
8802 | 2000-08-27 Jason Merrill <jason@redhat.com> |
8803 | ||
8804 | * c-decl.c (duplicate_decls): Don't set TREE_STATIC or clear | |
8805 | DECL_EXTERNAL on a local extern. Don't set DECL_IGNORED_P or | |
8806 | TREE_ASM_WRITTEN, either. | |
8807 | (finish_decl): Adjust. | |
8808 | ||
6e88e75c PT |
8809 | 2000-08-28 Philipp Thomas <pthomas@suse.de> |
8810 | ||
8811 | * ABOUT-GCC-NLS: Remove gettext patches from Paul Eggert as | |
8812 | they have been incorporated into the gettext CVS. Change the text to | |
8813 | reflect the current status of NLS. Add instructions for accessing | |
8814 | the gettext CVS and add the patch from Martin v. Loewis. | |
8815 | ||
e53ca51f GK |
8816 | 2000-08-27 Geoff Keating <geoffk@cygnus.com> |
8817 | ||
8818 | * config/rs6000/rs6000.md (movdi_internal64+5): Make SUBREG-safe | |
8819 | by using gen_lowpart_common. | |
8820 | (movdi_internal64+6): Likewise. | |
8821 | ||
a0a6fdc8 AO |
8822 | 2000-08-26 Alexandre Oliva <aoliva@redhat.com> |
8823 | ||
1b2dd04a AO |
8824 | * tm.texi (FINI_SECTION_ASM_OP, CRT_CALL_STATIC_FUNCTION): |
8825 | Document. | |
8826 | ||
a0a6fdc8 AO |
8827 | * config/mn10300/mn10300.h (DBX_REGISTER_NUMBER): Remap register |
8828 | numbers to the ranges used by GDB. | |
8829 | ||
26a110f5 RH |
8830 | 2000-08-25 Richard Henderson <rth@cygnus.com> |
8831 | ||
8832 | * config/ia64/ia64.h (struct machine_function): Add n_varargs. | |
8833 | * config/ia64/ia64.c (ia64_compute_frame_size): Use it. | |
8834 | (ia64_expand_prologue): Likewise. | |
8835 | (ia64_setup_incoming_varargs): Set it. Properly skip the current | |
8836 | argument for stdargs. | |
8837 | ||
ecff20d4 JM |
8838 | 2000-08-25 Jason Merrill <jason@redhat.com> |
8839 | ||
8840 | * integrate.c (expand_inline_function): Pull out the original decl. | |
8841 | ||
caa511fd JW |
8842 | 2000-08-25 Jim Wilson <wilson@cygnus.com> |
8843 | ||
d51ff7cb JW |
8844 | * cse.c (cse_insn): Don't pass label subtraction to force_const_mem. |
8845 | ||
caa511fd JW |
8846 | * function.c (gen_mem_addressof): Clear MEM_ALIAS_SET if no decl. |
8847 | ||
9a56f4f6 GM |
8848 | 2000-08-25 Greg McGary <greg@mcgary.org> |
8849 | ||
8850 | * flow.c (dump_edge_info): Use ARRAY_SIZE. | |
8851 | * config/alpha/alpha.c (alpha_expand_block_move): Likewise. | |
8852 | ||
31448271 RE |
8853 | 2000-08-25 Richard Earnshaw <rearnsha@arm.com> |
8854 | ||
8855 | * arm.h (STRUCT_VALUE): Define to 0, not NULL. | |
8856 | ||
b949ea8b JW |
8857 | Fri Aug 25 12:52:49 EDT 2000 John Wehle (john@feith.com) |
8858 | ||
8859 | * i386.c (ix86_find_base_term): New. | |
8860 | * i386-protos.h (ix86_find_base_term): Prototype. | |
8861 | * i386.h (FIND_BASE_TERM): Define. | |
8862 | * alias.c (find_base_term): Use it. | |
8863 | * tm.texi (FIND_BASE_TERM): Document it. | |
8864 | ||
8865 | * alias.c (true_dependence, write_dependence_p): Unchanging | |
8866 | memory can't conflict with non-unchanging memory. | |
8867 | ||
8868 | * alias.c (memrefs_conflict_p): A BLKmode reference | |
8869 | to a symbol (or CONST_INT address) always conflicts | |
8870 | with a reference to another symbol. | |
8871 | ||
343b7260 JM |
8872 | 2000-08-25 Joseph S. Myers <jsm28@cam.ac.uk> |
8873 | ||
8874 | * c-common.c (time_char_table): Don't allow width and flags with | |
8875 | "z" format. | |
8876 | ||
1f9124e4 JJ |
8877 | 2000-08-25 Jakub Jelinek <jakub@redhat.com> |
8878 | ||
8879 | * config/i386/i386.c (ix86_expand_branch): Treat GE and GEU the same | |
8880 | way as LT and LTU when the second operand has 0 in low word. | |
8881 | ||
6057c0e6 MH |
8882 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
8883 | ||
135ebc36 MH |
8884 | * basic-block.h (struct loop): Rename `exits' field to |
8885 | `exit_edges'. Add `entry_edges' and `num_entries' fields. | |
8886 | ||
8887 | * flow.c (flow_loop_exit_edges_find): Rename from flow_loop_exits_find. | |
8888 | (flow_loop_entry_edges_find): Add. | |
8889 | (flow_edge_list_print): Rename from flow_exits_print. | |
8890 | (flow_loops_find): Call flow_loop_entry_edges_find. | |
8891 | (flow_loop_dump): Dump entry_edges list. | |
8892 | (flow_loops_free): Free entry_edges. | |
0e5921e8 | 8893 | |
135ebc36 | 8894 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 8895 | |
6057c0e6 MH |
8896 | * loop.c (loop_dump_aux, debug_loop): New functions. |
8897 | (LOOP_BLOCK_NUM_1, LOOP_BLOCK_NUM, LOOP_INSN_UID): New macros. | |
8898 | ||
8899 | * flow.c (flow_loops_dump): Add callback parameter. | |
8900 | (flow_loop_dump): Add callback parameter and call it. Move | |
8901 | loop note debugging code to loop_dump_aux. | |
8902 | ||
8903 | * basic-block.h (flow_loop_dump): Add callback parameter | |
8904 | (flow_loops_dump): Likewise. | |
8905 | ||
8906 | * toplev.c (rest_of_compilation): Add NULL callback function pointer | |
8907 | to call to flow_loops_dump. | |
0e5921e8 | 8908 | |
028fc6e7 MH |
8909 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
8910 | ||
8911 | * loop.c (count_loop_regs_set): Replace start and end arguments | |
8912 | with loop argument. All callers udated. | |
0e5921e8 | 8913 | |
371502a8 | 8914 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
0e5921e8 | 8915 | |
371502a8 MH |
8916 | * loop.c (constant_high_bytes): Delete. |
8917 | ||
e375c819 MH |
8918 | 2000-08-26 Michael Hayes <mhayes@cygnus.com> |
8919 | ||
8920 | * loop.c (prescan_loop): Move checks for NOTE_INSN_LOOP_CONT | |
8921 | and NOTE_INSN_LOOP_VTOP to... | |
8922 | (find_and_verify_loops) ...here. | |
8923 | ||
036cfb36 AO |
8924 | Fri Aug 25 04:21:13 2000 Alexandre Oliva <aoliva@redhat.com> |
8925 | ||
8926 | * crtstuff.c (CRT_CALL_STATIC_FUNCTION): Define default. | |
8927 | (fini_dummy, init_dummy): Use it. | |
8928 | ||
c2e20542 NB |
8929 | Fri 25-Aug-2000 08:03:27 BST Neil Booth <NeilB@earthling.net> |
8930 | ||
8931 | * cpplex.c (is_macro_disabled): Caller has already checked | |
8932 | that we're not a preprocessed file. | |
8933 | ||
83bab8db MM |
8934 | 2000-08-24 Mark Mitchell <mark@codesourcery.com> |
8935 | ||
8936 | * Makefile.in (C_AND_OBJC_OBJS): Remove c-iterate.o. | |
8937 | (c-iterate.o): Remove target. | |
8938 | * gcc/c-common.h (enum rid): Remove RID_ITERATOR. | |
8939 | * gcc/c-decl.c (init_decl_processing): Remove call to init_iterators. | |
8940 | (finish_decl): Don't handle iterators. | |
8941 | (grokdeclarator): Likewise. | |
8942 | * gcc/c-parse.gperf: Remove __iterator and __iterator__ keywords. | |
8943 | * gcc/c-gperf.h: Regenerated. | |
8944 | * gcc/c-iterate.c: Removed. | |
8945 | * gcc/c-lex.c (init_lex): Don't handle iterators. | |
8946 | * gcc/c-parse.in (primary): Remove pop_iterator_stack call. | |
8947 | (compstmt_primary_start): Remove push_iterator_stack call. | |
8948 | (stmt): Don't allow iterator statements. Replace iterator_expand | |
8949 | with expand_expr_stmt. | |
8950 | (all_iter_stmt): Remove. | |
8951 | (all_iter_stmt_simple): Likewise. | |
8952 | (all_iter_stmt_with_decl): Likewise. | |
8953 | * gcc/c-tree.h (ITERATOR_P): Remove. | |
8954 | (ITERATOR_BOUND_P): Likewise. | |
8955 | (init_iterators): Remove declaration. | |
8956 | (iterator_expand): Likewise. | |
8957 | (iterator_for_loop_start): Likewise. | |
8958 | (iterator_for_loop_end): Likewise. | |
8959 | (iterator_for_loop_record): Likewise. | |
8960 | (push_iterator_stack): Likewise. | |
8961 | (pop_iterator_stack): Likewise. | |
8962 | * gcc/c-typeck.c (decl_constant_value): Don't check ITERATOR_P. | |
8963 | (readonly_warning): Likewise. | |
8964 | * gcc/tree.h (ITERATOR_BOUND_P): Don't mention it. | |
0e5921e8 | 8965 | |
aee3c6b0 JW |
8966 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
8967 | ||
8968 | * c-common.c (decl_attributes, case A_ALIGN): Revert last change. | |
8969 | Copy type in a TYPE_DECL, just like pushdecl does. | |
8970 | ||
58d8c980 RH |
8971 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
8972 | ||
8973 | * toplev.c (main): Enable flag_reorder_blocks at -O2. | |
8974 | ||
054f5e69 ZW |
8975 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> |
8976 | ||
0e5921e8 | 8977 | * ggc-page.c (alloc_page): If HAVE_MMAP_ANYWHERE and we're |
054f5e69 ZW |
8978 | asked for one page, allocate GGC_QUIRE_SIZE of them and put |
8979 | the extras on the free list. | |
8980 | (release_pages): Clean up. | |
8981 | (ggc_set_mark): Don't adjust G.allocated here... | |
8982 | (sweep_pages): ... do it here. | |
8983 | ||
8984 | 2000-08-24 Zack Weinberg <zack@wolery.cumb.org> | |
8985 | ||
8986 | * cppfiles.c (read_include_file): Rearrange initializations. | |
8987 | ||
0551c32d RH |
8988 | 2000-08-24 Richard Henderson <rth@cygnus.com> |
8989 | ||
8990 | * stmt.c (expand_asm_operands): Treat EXTRA_CONSTRAINT like g or X. | |
8991 | ||
8992 | * config/ia64/ia64-protos.h: Update. | |
8993 | * config/ia64/ia64.c (gr_register_operand): New. | |
8994 | (fr_register_operand, grfr_register_operand): New. | |
8995 | (gr_nonimmediate_operand, grfr_nonimmediate_operand): New. | |
8996 | (grfr_reg_or_8bit_operand): New. | |
0e5921e8 | 8997 | (gr_reg_or_0_operand): Rename from reg_or_0_operand and |
0551c32d RH |
8998 | use gr_register_operand. |
8999 | (gr_reg_or_5bit_operand, gr_reg_or_6bit_operand): Likewise. | |
9000 | (gr_reg_or_8bit_operand, gr_reg_or_8bit_adjusted_operand): Likewise. | |
9001 | (gr_reg_or_8bit_and_adjusted_operand): Likewise. | |
9002 | (gr_reg_or_14bit_operand, gr_reg_or_22bit_operand): Likewise. | |
9003 | (fr_reg_or_fp01_operand): Likewise. | |
9004 | (not_postinc_memory_operand): New. | |
9005 | (ia64_split_timode): Remove unused variables. | |
9006 | (rtx_needs_barrier): Check arguments to cmpxchg. | |
9007 | (builtin_description): Remove. | |
9008 | (bdesc_2argsi, bdesc_2argdi): Remove. | |
9009 | (ia64_init_builtins): Declare all builtins directly. | |
9010 | (ia64_expand_fetch_and_op): Rewrite to be called from | |
9011 | ia64_expand_builtin directly. Use expand_binop and co. | |
9012 | (ia64_expand_op_and_fetch): Likewise. | |
9013 | (ia64_expand_compare_and_swap): Likewise. | |
9014 | (ia64_expand_binop_builtin): Remove. | |
9015 | (ia64_expand_lock_test_and_set): New. | |
9016 | (ia64_expand_lock_release): New. | |
9017 | (ia64_expand_builtin): Use them. | |
9018 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_S): New. | |
9019 | (EXTRA_CONSTRAINT): Use it. | |
9020 | (PREDICATE_CODES): Update. | |
9021 | * config/ia64/ia64.md (*): Use gr_register_operand and co. | |
9022 | (mf): Indicate that we set memory as well as use it. | |
9023 | (fetchadd_acq_si): Show memory being modified as well. | |
0e5921e8 | 9024 | (fetchadd_acq_di, cmpxchg_acq_si, cmpxchg_acq_di): Likewise. |
0551c32d RH |
9025 | (val_compare_and_swap_si, val_compare_and_swap_di): Remove. |
9026 | (lock_test_and_set_si, lock_test_and_set_di): Remove. | |
9027 | (fetch_and_add_si, fetch_and_sub_si, fetch_and_or_si): Remove. | |
9028 | (fetch_and_and_si, fetch_and_xor_si, fetch_and_nand_si): Remove. | |
9029 | (fetch_and_add_di, fetch_and_sub_di, fetch_and_or_di): Remove. | |
9030 | (fetch_and_and_di, fetch_and_xor_di, fetch_and_nand_di): Remove. | |
9031 | (add_and_fetch_di, sub_and_fetch_di, or_and_fetch_di): Remove. | |
9032 | (and_and_fetch_di, xor_and_fetch_di, nand_and_fetch_di): Remove. | |
9033 | (add_and_fetch_si, sub_and_fetch_si, or_and_fetch_si): Remove. | |
9034 | (and_and_fetch_si, xor_and_fetch_si, nand_and_fetch_si): Remove. | |
9035 | * config/ia64/ia64intrin.h (*): Cast result to the appropriate | |
9036 | return type. Pretty print definitions. | |
9037 | ||
7c866fb5 JW |
9038 | 2000-08-24 Jim Wilson <wilson@cygnus.com> |
9039 | ||
9040 | * config/ia64/ia64.md (movdi): Don't call gen_movdi_symbolic if | |
9041 | we have a SYMBOL_REF with SYMBOL_REF_FLAG set. | |
9042 | ||
40e8cc95 JM |
9043 | 2000-08-24 Jason Merrill <jason@redhat.com> |
9044 | ||
9045 | * dwarf2out.c (AT_flag, AT_int, AT_unsigned, AT_string, AT_ref, | |
9046 | AT_loc, AT_addr, AT_lbl): Abort on unsuitable input. | |
0e5921e8 | 9047 | (get_AT_low_pc, get_AT_hi_pc, get_AT_string, get_AT_flag, |
40e8cc95 JM |
9048 | get_AT_unsigned, get_AT_ref): Don't call them if get_AT fails. |
9049 | ||
b6a1cbae GM |
9050 | 2000-08-24 Greg McGary <greg@mcgary.org> |
9051 | ||
9052 | * optabs.c (init_optabs): Initialize fixtab, fixtrunctab, floattab, | |
9053 | and extendtab within their proper array boundaries. | |
9054 | * emit-rtl.c (init_emit_once): Pass `const_tiny_rtx' with bounds | |
9055 | for the entire array. | |
9056 | ||
9057 | * config/arm/arm.c (arm_override_options): Use ARRAY_SIZE. | |
9058 | * config/alpha/alpha.c (alpha_lookup_xfloating_lib_func): Likewise. | |
9059 | * config/avr/avr.c (order_regs_for_local_alloc): Likewise. | |
9060 | * config/fr30/fr30.c (fr30_print_operand): Likewise. | |
9061 | * config/i386/dgux.c (output_options): Likewise. | |
9062 | * config/i386/dgux.h (ASM_FILE_START): Likewise. | |
9063 | * config/m88k/m88k.c (output_options): Likewise. | |
9064 | * config/m88k/m88k.h (ASM_FILE_START): Likewise. | |
9065 | * config/mcore/mcore.c (mcore_output_inline_const_forced, | |
9066 | layout_mcore_frame, handle_structs_in_regs): Likewise. | |
9067 | * config/mips/mips.c (output_block_move): Likewise. | |
9068 | * config/rs6000/rs6000.c (rs6000_override_options, | |
9069 | rs6000_file_start): Likewise. | |
9070 | * config/sparc/sparc.c (sparc_add_gc_roots): Likewise. | |
9071 | * fixinc/fixfixes.c (FIX_TABLE_CT): Likewise. | |
9072 | * fixinc/fixtests.c (TEST_TABLE_CT): Likewise. | |
9073 | * builtins.c (expand_builtin_setjmp): Likewise. | |
9074 | * expr.c (safe_from_p): Likewise. | |
9075 | * flow.c (life_analysis): Likewise. | |
9076 | * fold-const.c (size_int_type_wide): Likewise. | |
9077 | * gcc.c (translate_options, init_spec, set_spec, main): Likewise. | |
9078 | * genattrtab.c (make_length_attrs): Likewise. | |
9079 | * genopinit.c (gen_insn): Likewise. | |
9080 | * genrecog.c (NUM_KNOWN_PREDS, NUM_SPECIAL_MODE_PREDS): Likewise. | |
9081 | * global.c (global_alloc): Likewise. | |
9082 | * local-alloc.c (find_free_reg): Likewise. | |
9083 | * mips-tdump.c (print_symbol): Likewise. | |
9084 | * mips-tfile.c (parse_def, parse_input): Likewise. | |
9085 | * reload1.c (NUM_ELIMINABLE_REGS): Likewise. | |
9086 | * stmt.c (expand_nl_goto_receiver): Likewise. | |
9087 | * stor-layout.c (set_sizetype): Likewise. | |
9088 | * varasm.c (decode_reg_name): Likewise. | |
9089 | * toplev.c (decode_f_option, decode_W_option, | |
9090 | set_target_switch, print_switch_values): Likewise. | |
9091 | (NUM_ELEM): Remove macro. | |
9092 | (display_help, main): s/NUM_ELEM/ARRAY_SIZE/ | |
9093 | ||
5b47282c GM |
9094 | 2000-08-24 Greg McGary <greg@mcgary.org> |
9095 | ||
9096 | * tree.h (enum tree_index): New member `TI_MAIN_IDENTIFIER'. | |
9097 | (MAIN_NAME_P, main_identifier_node): New macros. | |
9098 | * c-common.c (c_common_nodes_and_builtins): Init main_identifier_node. | |
9099 | * c-decl.c (start_decl, grokdeclarator, start_function, | |
9100 | store_parm_decls, finish_function): Use MAIN_NAME_P. | |
9101 | * config/avr/avr.c (function_prologue, function_epilogue): Likewise. | |
9102 | * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise. | |
9103 | * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise. | |
9104 | * config/pdp11/pdp11.c (output_function_prologue): Likewise. | |
9105 | ||
87ae0c74 GM |
9106 | 2000-08-24 Greg McGary <greg@mcgary.org> |
9107 | ||
9108 | * cppfiles.c (actual_directory): Don't write beyond `dir' | |
9109 | when it contains "". | |
9110 | * real.c (asctoeg): Stay within bounds of etens[][]. | |
9111 | ||
b148aeaa KG |
9112 | 2000-08-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
9113 | ||
9114 | * dependence.c (dependence_string, direction_string, | |
9115 | dump_one_node, dump_node_dependence): Hide unused identifiers. | |
9116 | (get_low_bound, normalize_coefficients): Match definition to | |
9117 | static prototype. | |
9118 | (get_one_coefficient): Initialize variables `value0_is_idx' and | |
9119 | `value1_is_idx'. | |
9120 | (ziv_test, gcd_test): Mark parameters with ATTRIBUTE_UNUSED. | |
9121 | (ziv_test): Delete variable `idx', use parameter `sub' instead. | |
9122 | (direction_merge): Avoid automatic aggregate initialization. | |
9123 | (have_dependence_p): Use `src' not `dest' to set `src_idx'. | |
9124 | Initialize variables `dest_idx' and `src_idx'. | |
9125 | (end_dependence_analysis): Avoid C89 style function definition. | |
9126 | ||
4894ecce JM |
9127 | 2000-08-24 Joseph S. Myers <jsm28@cam.ac.uk> |
9128 | ||
9129 | * c-common.c (time_char_table): Don't allow width with %F. | |
9130 | (check_format_info): Don't allow "Z" length with scanf. | |
9131 | ||
2ab99c46 GDR |
9132 | 2000-08-24 Gabriel Dos Reis <gdr@codesourcery.com> |
9133 | ||
9134 | * diagnostic.c (finish_diagnostic): Define. | |
9135 | (output_do_printf): Use wrap_text instead of output_add_string. | |
9136 | (default_print_error_function): Avoid embedded '\n'. | |
9137 | ||
9138 | * diagnostic.h (flush_diagnostic_buffer): Declare. | |
9139 | ||
335e59bd AO |
9140 | 2000-08-23 Alexandre Oliva <aoliva@redhat.com> |
9141 | ||
9142 | * dependence.c: Replace `[][]' with `[][MAX_SUBSCRIPTS]'. | |
9143 | ||
d9fe00bb HPN |
9144 | 2000-08-23 Hans-Peter Nilsson <hp@axis.com> |
9145 | ||
9146 | * Makefile.in (GCC_PASSES): Add specs. | |
9147 | ||
b97644fc JW |
9148 | 2000-08-23 Jim Wilson <wilson@cygnus.com> |
9149 | ||
9150 | * frame.h (IA64_UNW_EHANDLER, IA64_UNW_UHANDLER): New. | |
9151 | * config/ia64/frame-ia64.c (__get_personality): Return zero if neither | |
9152 | EHANDLER nor UHANDLER bit is set. | |
9153 | (__get_except_table): Likewise. | |
9154 | ||
64a7723d NC |
9155 | 2000-08-23 Nick Clifton <nickc@redhat.com> |
9156 | ||
02689e18 NC |
9157 | * config/arm/lib1funcs.asm: Replace upper case condition codes |
9158 | with lower case versions. | |
9159 | ||
64a7723d NC |
9160 | * config/arm/arm.h (STRUCT_VALUE): Define. |
9161 | (STRUCT_VALUE_REGNUM): Delete. | |
9162 | ||
bbdac7d0 ZW |
9163 | 2000-08-23 Zack Weinberg <zack@wolery.cumb.org> |
9164 | ||
9165 | * cpphash.h (IN_I): New flag for directive table. | |
9166 | * cpplib.c (DIRECTIVE_TABLE): Mark #define, #undef, #ident, and | |
9167 | #pragma with IN_I. | |
9168 | (_cpp_check_directive): If -fpreprocessed, execute directives | |
9169 | marked with IN_I. Issue no warnings in this case. | |
9170 | * cpplex.c (_cpp_get_token): Expand no macros if -fpreprocessed. | |
9171 | ||
d8eceea4 JM |
9172 | 2000-08-23 Joseph S. Myers <jsm28@cam.ac.uk> |
9173 | ||
9174 | * c-common.c (print_char_table): Allow 'I' flag with %d, %i and | |
9175 | %u. | |
9176 | (check_format_info): Support printf 'I' flag; warn about it with | |
9177 | -pedantic. | |
9178 | ||
e04c2d6c RE |
9179 | 2000-08-23 Richard Earnshaw (rearnsha@arm.com) |
9180 | ||
9181 | * arm.c (arm_expand_prologue): Ensure that the stack-adjustment | |
9182 | barrier can't be ignored by the alias analysis code. | |
9183 | ||
f4306baa EZ |
9184 | 2000-08-12 Eli Zaretskii <eliz@is.elta.co.il> |
9185 | ||
9186 | * fixinc/inclhack.def (sysv68_string): Fix the Sed script so it | |
9187 | works inside fixincl. | |
9188 | ||
95d0e5f1 AO |
9189 | Wed Aug 23 04:55:48 2000 Alexandre Oliva <aoliva@redhat.com> |
9190 | ||
9191 | * simplify-rtx.c (simplify_rtx): Don't pass VOIDmode to | |
9192 | simplify_relational_operation() unless both operands are of | |
9193 | VOIDmode. | |
9194 | * cse.c (fold_rtx): Likewise. | |
9195 | ||
55efb413 JW |
9196 | Tue Aug 22 23:53:27 EDT 2000 John Wehle (john@feith.com) |
9197 | ||
9198 | * rtlanal.c (rtx_unstable_p): The pic register is stable | |
9199 | (within one function) and the actual rtx should be used | |
9200 | when checking the registers. | |
9201 | (rtx_addr_can_trap_p): Pic memory addresses can't trap. | |
9202 | ||
9203 | * alias.c (true_dependence, write_dependence_p): Fix | |
9204 | bug in previous patch. | |
9205 | ||
9206 | * i386.c (ix86_GOT_alias_set): New. | |
9207 | (legitimize_pic_address): Use it. | |
9208 | ||
9209 | * rtlanal.c (rtx_unstable_p): An unchanging MEM is | |
9210 | only stable if its address is stable. | |
9211 | (rtx_varies_p): An unchanging MEM can't vary if | |
9212 | its address doesn't vary. | |
9213 | ||
aac625ac KG |
9214 | 2000-08-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
9215 | ||
9216 | * c-parse.in (unop +): Restrict -Wtraditional warnings to user code. | |
9217 | ||
62432849 DA |
9218 | 2000-08-22 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
9219 | ||
9220 | * vax.h (ASM_SPEC): Pass `-J' to assembler. | |
9221 | * x-vax-gcc: New file for bootstrapping with gcc. | |
dd745546 | 9222 | * x-vax: Use X_CFLAGS rather than X_CPPFLAGS to pass `-J'. |
62432849 DA |
9223 | * configure.in: Use x-vax-gcc with gcc. |
9224 | * configure: Rebuilt. | |
9225 | ||
1eb994b7 R |
9226 | Tue Aug 22 21:21:05 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
9227 | ||
9228 | * toplev.c (rest_of_compilation): Rebuild label notes after | |
9229 | post-reload splitting pass if new labels have been created. | |
9230 | ||
f6a542de GDR |
9231 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
9232 | ||
9233 | * diagnostic.h (output_buffer_state): New macro. | |
9234 | * diagnostic.c (diagnostic_for_decl, sorry, | |
9235 | default_print_error_function, output_do_verbatim, | |
9236 | report_diagnostic, report_problematic_module): Use it. | |
9237 | (wrap_text): Tweak. | |
9238 | (output_format): Use wrap_text instead of maybe_wrap_text. | |
9239 | ||
888e552f NC |
9240 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
9241 | ||
9242 | * config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro. | |
9243 | Common code for ARM divide and modulus functions. | |
9244 | (THUMB_DIV_MOD_BODY): New macro. Thumb equivalent of | |
9245 | ARM_DIV_MOD_BODY. | |
9246 | (FUNC_END): New macro: Common code at the end of the division and | |
9247 | modulo functions. | |
9248 | (THUMB_FUNCTION_START): New macro: Common code at the start of | |
9249 | Thumb functions. | |
9250 | (__divsi3, __udivsi3, __modsi3, __umodsi3): Use new macros. | |
0e5921e8 | 9251 | |
89e43e33 KK |
9252 | Tue Aug 22 20:34:52 2000 Kaz Kojima <kkojima@rr.iij4u.or.jp> |
9253 | ||
9254 | * config/sh/sh.md (cmpeqdi_t splitter): Fix a reverse testing. | |
9255 | ||
9256 | * config/sh/sh.c (prepare_scc_operands): Apply force_reg to | |
9257 | sh_compare_op1 when the mode is DImode and sh_compare_op1 isn't | |
9258 | const0_rtx. | |
9259 | ||
7405dc37 NC |
9260 | 2000-08-22 Nick Clifton <nickc@redhat.com> |
9261 | ||
9262 | * config/arm/lib1funcs.asm (__umodsi3): Before performing any | |
9263 | restorative additions, test for bottom bits of IP being set, | |
9264 | rather than relying upon the RORs not matching. | |
9265 | (__modsi3): Ditto. | |
9266 | ||
9861b0c9 DE |
9267 | 2000-08-22 David Edelsohn <edelsohn@gnu.org> |
9268 | ||
9269 | * aix.h (ASM_DECLARE_FUNCTION_NAME): Call named_section() or | |
60a3c181 | 9270 | text_section() as appropriate instead of emitting text csect |
9861b0c9 DE |
9271 | pseudo-op directly. |
9272 | (TEXT_SECTION_ASM_OP): Only require default 32-bit alignment. | |
9273 | (UNIQUE_SECTION): Define macro. | |
9274 | (ASM_OUTPUT_SECTION_NAME): Define macro. | |
9275 | * rs6000.c (rs6000_override_options): Disable -ffunction-sections | |
60a3c181 | 9276 | on AIX if debugging and -fdata-sections always. |
9861b0c9 DE |
9277 | |
9278 | 2000-08-22 Steven King <sxking@uswest.net> | |
df3a88f0 SK |
9279 | |
9280 | * config/float-i386.h (LDBL_EPSILON): Remove __convert_long_double | |
9281 | machinery. | |
9282 | (LDBL_MAX): Same here. | |
9283 | ||
b578dbd7 RH |
9284 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
9285 | ||
9286 | * flow.c (tidy_fallthru_edge): Update b->end properly. | |
9287 | ||
d061bc1e SC |
9288 | 2000-08-22 Stan Cox <scox@redhat.com> |
9289 | ||
60a3c181 RH |
9290 | * Makefile.in (OBJS): Add dependence.o. |
9291 | * dependence.c: New file. | |
0e5921e8 | 9292 | |
23d16877 | 9293 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com>, John David Anglin <dave.anglin@nrc.ca> |
3cadd778 | 9294 | |
d60eab50 AO |
9295 | * calls.c (check_sibcall_argument_overlap_1): Adjust for |
9296 | ARGS_GROW_DOWNWARD. | |
9297 | (check_sibcall_argument_overlap): Likewise. | |
9298 | ||
23d16877 AO |
9299 | 2000-08-22 Alexandre Oliva <aoliva@redhat.com> |
9300 | ||
3cadd778 AO |
9301 | * invoke.texi (SH Options): Document -m4-nofpu, |
9302 | -m4-single-only, -m4-single, -m4, -mbigtable, -mfmovd, | |
9303 | -mhitachi, -mnomacsave, -misize, -mpadstruct, -mspace. | |
9304 | ||
23e4d028 JM |
9305 | 2000-08-22 Joseph S. Myers <jsm28@cam.ac.uk> |
9306 | ||
9307 | * c-common.c (check_format_info): Give the 'some locales' warning | |
9308 | for strftime %Ey rather than the unconditional 'only last 2 digits | |
9309 | of year' one. | |
9310 | ||
bc82c87c RH |
9311 | 2000-08-22 Richard Henderson <rth@cygnus.com> |
9312 | ||
9313 | * alias.c (init_alias_analysis): Do not register | |
9314 | struct_value_incoming_rtx or static_chain_rtx as pointing | |
9315 | to stack memory. | |
9316 | ||
7db9125f JL |
9317 | Tue Aug 22 01:44:43 2000 Jeffrey A Law (law@cygnus.com) |
9318 | ||
9319 | * protoize.c (munge_compile_params): Fix typo and formatting buglets. | |
9320 | ||
b413d64d GDR |
9321 | 2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com> |
9322 | ||
9323 | * diagnostic.h (report_problematic_module): Declare. | |
9324 | * diagnostic.c (report_problematic_module): New function. | |
9325 | (report_error_function): Tweak. | |
9326 | ||
c4a6c0f3 RK |
9327 | Tue Aug 22 02:31:26 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
9328 | ||
9329 | * stmt.c (expand_goto_internal, fixup_gotos): Only check | |
9330 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
9331 | ||
770a7feb RH |
9332 | 2000-08-21 Richard Henderson <rth@cygnus.com> |
9333 | ||
9334 | * flow.c (calculate_global_regs_live): Mark frame pointer live | |
9335 | everywhere before reload. | |
9336 | ||
280db205 JW |
9337 | 2000-08-21 Jim Wilson <wilson@cygnus.com> |
9338 | ||
9339 | * real.c (ereal_from_int, ereal_from_uint, significand_size): Handle | |
9340 | INTEL_EXTENDED_IEEE_FORMAT. | |
9341 | (toe64): Delete INTEL_EXTENDED_IEEE_FORMAT support. Unconditionally | |
9342 | clear last two bytes of output FP value. | |
9343 | ||
94c21c17 GS |
9344 | 2000-08-21 Graham Stott <grahams@cygnus.co.uk> |
9345 | ||
9346 | * config/ia64/ia64.h (REDO_SECTION_INFO_P): Change decl to DECL. | |
9347 | ||
6315f068 JJ |
9348 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
9349 | ||
9350 | * unroll.c (loop_find_equiv_value): If ret is modified between | |
9351 | insn and loop_start, ret might not be equivalent to reg. | |
9352 | ||
5804a754 JM |
9353 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
9354 | ||
9355 | * c-common.c (init_dollar_format_checking, | |
9356 | maybe_read_dollar_number, finish_dollar_format_checking): New | |
9357 | functions. | |
9358 | (dollar_arguments_used, dollar_arguments_count, | |
9359 | dollar_first_arg_num, dollar_max_arg_used, dollar_format_warned): | |
9360 | New variables. | |
9361 | (check_format_info): Support $ formats for scanf and printf width | |
9362 | and precision. Always increment format_chars to advance past the | |
9363 | '*' of precision, not just when the format parameters are | |
9364 | available to check. | |
9365 | ||
95adab8e KG |
9366 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
9367 | ||
9368 | * mips.c (block_move_loop, expand_block_move, | |
9369 | function_arg_partial_nregs, save_restore_insns, function_prologue, | |
9370 | mips_expand_prologue, RA_MASK): Avoid using the `U' integer | |
9371 | constant suffix. | |
9372 | (function_arg_advance, function_arg): Match argument to format | |
9373 | specifier `%p'. | |
9374 | ||
49009afd JL |
9375 | 2000-08-21 Nix <nix@esperi.demon.co.uk> |
9376 | ||
9377 | * gcc.c (do_spec_1): Implement %j spec flag. | |
9378 | Remove dead comment. | |
9379 | ||
9380 | * gcc.texi (The Configuration File): Document HOST_BIT_BUCKET. | |
60a3c181 RH |
9381 | * system.h (HOST_BIT_BUCKET): Default to "/dev/null". |
9382 | * config/i386/xm-dos.h (HOST_BIT_BUCKET): Define as "NUL". | |
9383 | * config/i386/xm-os2.h, config/winnt/winnt.h: Likewise. | |
49009afd | 9384 | |
60a3c181 | 9385 | * protoize.c (munge_compile_params): Use HOST_BIT_BUCKET (if |
49009afd JL |
9386 | writable) instead of hardcoded value. |
9387 | ||
9388 | * toplev.c (compile_file): Output to a file even if -fsyntax-only. | |
9389 | ||
60a3c181 RH |
9390 | * gcc.c, config/i386/xm-dos.h, config/i386/xm-os2.h: Kill |
9391 | MKTEMP_EACH_FILE. | |
49009afd | 9392 | |
60a3c181 | 9393 | * gcc.c (cc1_options): Do not process -o or run the assembler if |
49009afd | 9394 | -fsyntax-only. |
05a3d06e | 9395 | * objc/lang-spec.h: Likewise. |
49009afd JL |
9396 | |
9397 | 2000-08-21 Eli Zaretskii <eliz@is.elta.co.il> | |
dc13bad7 EZ |
9398 | |
9399 | * fixinc/fixincl.c (fix_with_system): Pipe the output of | |
9400 | "external" fixes through `cat', to avoid truncating the input | |
9401 | file by redirection. | |
9402 | ||
cb694d2c JJ |
9403 | 2000-08-21 Jakub Jelinek <jakub@redhat.com> |
9404 | ||
9405 | * config/i386/i386.md (lea_general_1): Copy insn condition to split | |
9406 | condition. | |
9407 | (lea_general_2, lea_general_3): Likewise. | |
9408 | ||
cde6e684 KG |
9409 | 2000-08-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
9410 | ||
9411 | * c-decl.c (duplicate_decls, define_label): Restrict -Wtraditional | |
9412 | warnings to user code. | |
9413 | ||
9414 | * c-lex.c (readescape, yylex): Likewise. | |
9415 | ||
9416 | * c-typeck.c (store_init_value, process_init_element): Likewise | |
9417 | (c_expand_start_case): Format. | |
9418 | ||
120dc6cd MR |
9419 | 2000-08-18 Maciej W. Rozycki <macro@ds2.pg.gda.pl> |
9420 | ||
9421 | * mips/linux.h (LINK_SPEC): Use %(endian_spec). | |
9422 | ||
9423 | * mips/mips.h: Change LINKER_ENDIAN_SPEC to ENDIAN_SPEC | |
0e5921e8 | 9424 | and linker_endian_spec to endian_spec. |
120dc6cd MR |
9425 | (ENDIAN_SPEC): Add %{EB} and %{EL}. |
9426 | (LINK_SPEC): Remove %{EB} and %{EL}. | |
0e5921e8 | 9427 | (ASM_SPEC): Likewise. Use %(endian_spec). |
120dc6cd | 9428 | |
93e2382f JM |
9429 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
9430 | ||
9431 | * c-tree.h (flag_hosted): Move declaration from here... | |
9432 | * c-common.h (flag_hosted): ... to here. | |
9433 | (flag_noniso_default_format_attributes): New declaration. | |
9434 | * c-decl.c (flag_noniso_default_format_attributes): New variable. | |
9435 | (c_decode_option): Set it appropriately for options choosing | |
9436 | language standard variant. | |
9437 | * c-common.c (init_function_format_info): Only provide default | |
9438 | format attributes if flag_hosted. Only provide the gettext | |
9439 | formats if flag_noniso_default_format_attributes. Update | |
9440 | comments. | |
9441 | (check_format_info): Disable treatment of %a as a scanf flag in | |
9442 | C99 mode. | |
9443 | ||
f3d360aa JM |
9444 | 2000-08-21 Joseph S. Myers <jsm28@cam.ac.uk> |
9445 | ||
9446 | * c-common.c (scan_char_table): Add 'w' to flags for all formats | |
9447 | except 'n'. | |
9448 | (check_format_info): Set 'wide' for scanf format widths. Warn for | |
9449 | a zero scanf width. Make the check for writing into a constant | |
9450 | object at the first level of indirection; at later levels, warn if | |
9451 | any type qualifiers are encountered. | |
9452 | ||
e04ca094 JL |
9453 | Mon Aug 21 07:41:12 2000 Jeffrey A Law (law@cygnus.com) |
9454 | ||
e6ea3b5f JL |
9455 | * reload.c (reload_inner_reg_of_subreg): New function broken out of |
9456 | push_reload. | |
9457 | (push_reload): Use reload_inner_reg_of_subreg. | |
9458 | (combine_reloads): Do not combine reloads if the input reload | |
9459 | is a SUBREG in which the inner part will need reloading. | |
9460 | ||
e04ca094 JL |
9461 | * global.c (global_alloc): Avoid passing dumpfile argument to |
9462 | reload routines. | |
9463 | * toplev.c (rest_of_compilation): Likewise. | |
9464 | * reload.h (reload): Remove dumpfile argument. Callers changed. | |
9465 | (debug_reload, debug_reload_to_stream): Move prototypes here. | |
9466 | * rtl.h (reload): Remove dumpfile argument. | |
9467 | * reload.c (debug_reload): Remove prototype. | |
9468 | (debug_reload_to_stream): Likewise. | |
9469 | * reload1.c: Avoid passing dumpfile around, rely on rtl_dump_file | |
9470 | instead. | |
9471 | ||
24805e80 GDR |
9472 | 2000-08-21 Gabriel Dos Reis <gdr@merlin.codesourcery.com> |
9473 | ||
9474 | * diagnostic.c (context_as_prefix): Export. | |
9475 | (need_error_newline): Remove. | |
9476 | (lang_diagnostic_starter, lang_diagnostic_finalizer): New objects. | |
9477 | (error_module_changed, record_last_error_module, | |
9478 | error_function_changed, record_last_error_function): New functions. | |
9479 | (initialize_diagnostics): Default intialize | |
9480 | lang_diagnostic_starter, lang_diagnostic_finalizer. | |
9481 | (init_output_buffer): Tweak. | |
9482 | (file_name_as_prefix): New function. | |
9483 | (announce_function, default_print_error_function, | |
9484 | report_error_function, set_diagnostic_context): Tweak. | |
9485 | ||
056b6841 RE |
9486 | 2000-08-21 Richard Earnshaw <rearnsha@arm.com> |
9487 | ||
9488 | * flow.c (init_propagate_block_info): Handle SUBREG in a jump | |
9489 | condition expression. | |
9490 | ||
7171b491 RH |
9491 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
9492 | ||
9493 | * flow.c (merge_blocks_nomove): Don't seek back past the bb note. | |
9494 | ||
3cb553b4 ZW |
9495 | 2000-08-20 Zack Weinberg <zack@wolery.cumb.org> |
9496 | ||
9497 | * cppinit.c (cpp_init): Set global flag when called. | |
9498 | (cpp_reader_init): Bomb out if cpp_init hasn't been called. | |
9499 | ||
9861b0c9 | 9500 | Sun Aug 20 01:41:35 2000 Dennis Chernoivanov <cdi@sparc.spb.su> |
3cb553b4 | 9501 | |
60a3c181 RH |
9502 | * cpplex.c (cpp_scan_buffer): Move `output_line_command' just |
9503 | before `process_directive' so that newlines won't be missed | |
9504 | for directives. | |
9505 | (cpp_printf): Increment `print->lineno' when newline is emitted. | |
3cb553b4 | 9506 | |
60a3c181 RH |
9507 | * cppmain.c (cb_ident): Likewise. |
9508 | (cb_define): Likewise. | |
9509 | (cb_undef): Likewise. | |
9510 | (cb_include): Likewise. | |
9511 | (cb_def_pragma): Likewise. | |
9512 | (dump_macros_helper): Likewise. | |
3cb553b4 | 9513 | |
9c668921 RH |
9514 | 2000-08-20 Richard Henderson <rth@cygnus.com> |
9515 | ||
9516 | * config/ia64/ia64.c (emit_insn_group_barriers): Stop if ar.lc | |
9517 | assigned before a loop. | |
9518 | ||
9519 | * config/ia64/ia64.md (ashlsi3): Zero extend the shift count. | |
9520 | (ashrsi3, lshrsi3): Likewise. | |
9521 | ||
4e1e6a01 GDR |
9522 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
9523 | ||
9524 | * c-lang.c: #include diagnostic.h | |
9525 | (c_tree_printer): New function. | |
9526 | (lang_init): Initialize lang_printer. | |
9527 | ||
9528 | * Makefile.in (c-lang.o): Depends on diagnostic.h | |
9529 | ||
e2840263 GDR |
9530 | 2000-08-20 Gabriel Dos Reis <gdr@codesourcery.com> |
9531 | ||
9532 | * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. | |
9533 | ||
9534 | * diagnostic.c (default_diagnostic_starter, | |
9535 | default_diagnostic_finalizer): New functions. | |
9536 | (diagnostic_for_asm, diagnostic_for_decl): Tweak. | |
9537 | (pedwarn, pedwarn_with_file_and_line, error, | |
9538 | error_with_file_and_line, fatal, warning, | |
9539 | warning_with_file_and_line): Adjust call to report_diagnostic. | |
9540 | (report_diagnostic): Rework. | |
9541 | (set_diagnostic_context): New function. | |
9542 | ||
9543 | * diagnostic.h (struct diagnostic_context): New data structure. | |
9544 | (diagnostic_message, diagnostic_argument_list, | |
9545 | diagnostic_file_location, diagnostic_line_location, | |
9546 | diagnostic_is_warning, diagnostic_starter, diagnostic_finalizer, | |
9547 | diagnostic_finalizer, diagnostic_auxiliary_data): New macros. | |
9548 | (set_diagnostic_context): Declare. | |
9549 | (report_diagnostic): Change prototype. | |
9550 | ||
574f7425 NB |
9551 | Sun 20-Aug-2000 09:25:45 BST Neil Booth <NeilB@earthling.net> |
9552 | ||
9553 | * fix-header.c (main): Initialize cpplib. | |
9554 | ||
f1e42c81 MM |
9555 | 2000-08-19 Michael Meissner <meissner@redhat.com> |
9556 | ||
34c9e848 MM |
9557 | * ifcvt.c (find_if_block): Do not assume that a THEN block has any |
9558 | instructions in it before checking for indirect jumps. | |
9559 | ||
f1e42c81 MM |
9560 | * ifcvt.c (find_if_block): Do not consider a THEN block that ends |
9561 | in a indirect jump as a potential for conditional execution. | |
9562 | ||
9563 | * d30v.h (d30v_init_expanders): Don't declare here. | |
9564 | * d30v-protos.h (d30v_init_expanders): Declare here with a valid | |
9565 | prototype. | |
9566 | ||
9d6c2770 NB |
9567 | Sat 19-Aug-2000 21:11:45 BST Neil Booth <NeilB@earthling.net> |
9568 | ||
9569 | * cpp.texi: Add @section for assertions. | |
9570 | ||
e76d9acb JW |
9571 | Sat Aug 19 12:37:08 EDT 2000 John Wehle (john@feith.com) |
9572 | ||
9573 | * loop.c (scan_loop): Use CONST_CALL_P instead of | |
9574 | checking for REG_LIBCALL / REG_RETVAL. | |
9575 | ||
f49957d6 JL |
9576 | Sat Aug 19 09:18:47 2000 Jeffrey A Law (law@cygnus.com) |
9577 | ||
850aac53 JL |
9578 | * reload1.c (reload_as_needed): Accept dumpfile argument, |
9579 | pass it to emit_reload_insns. | |
9580 | (emit_reload_insns): Add new dumpfile argument. If non-null | |
9581 | then dump the reloads for each insn into the dumpfile. | |
9582 | (reload): Pass dumpfile to reload_as_needed. | |
9583 | ||
f49957d6 JL |
9584 | * invoke.texi: Clean up linux-gnu vs linux comments. |
9585 | ||
041f25e6 RH |
9586 | 2000-08-19 Richard Henderson <rth@cygnus.com> |
9587 | ||
9588 | * config/ia64/ia64.c (reg_or_5bit_operand): New. | |
9589 | (ia64_depz_field_mask): New. | |
9590 | * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New. | |
9591 | (PREDICATE_CODES): Update. | |
9592 | * config/ia64/ia64.md: Update commentary. | |
9593 | (depz_internal): New. | |
9594 | (ashlsi3): Implement directly. | |
9595 | (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants. | |
9596 | (ashldi3): Use shladd. | |
9597 | * config/ia64/ia64-protos.h: Update. | |
9598 | ||
319ea138 ZW |
9599 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
9600 | ||
9601 | * toplev.c (independent_decode_option): Always process -g. | |
9602 | Remove third argument, now unused. Adjust caller to match. | |
9603 | ||
8231ad94 RH |
9604 | 2000-08-18 Richard Henderson <rth@cygnus.com> |
9605 | ||
9606 | * combine.c (make_compound_operation): Break after creating | |
9607 | the extraction. | |
9608 | ||
6e19bb38 ZW |
9609 | 2000-08-18 Zack Weinberg <zack@wolery.cumb.org> |
9610 | ||
9611 | * cpplib.c (cpp_register_pragma_space): Just return if the | |
9612 | namespace is already registered. | |
9613 | ||
477d303f RE |
9614 | 2000-08-18 Ray Essick <essick@ddna.labs.mot.com> & Nick Clifton <nickc@redhat.com> |
9615 | ||
9616 | * config/mcore/mcore.md (rotlsi3): Allow allow rotations by a | |
9617 | constant amount. Do not generate ROTL instruction. | |
9618 | ||
ffe51c8a AO |
9619 | Fri Aug 18 16:22:20 2000 Alexandre Oliva <aoliva@redhat.com> |
9620 | ||
9621 | * config/sh/elf.h: Do not include sh/sh.h. | |
9622 | * config/sh/rtems.h: Likewise. | |
9623 | * config/sh/rtemself.h: Do not include sh/elf.h. | |
9624 | * configure.in: Get them included with `tm_file's. | |
9625 | * configure: Rebuilt. | |
9626 | ||
8845e874 AO |
9627 | * config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify. |
9628 | * config/sh/sh.c (fpscr_set_from_mem): Use them. | |
9629 | ||
3f546a53 RK |
9630 | Fri Aug 18 14:23:18 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
9631 | ||
7d2950e5 RK |
9632 | * stor-layout.c (compute_record_type): Don't use mode of single |
9633 | field as mode of record if not integer mode of same type. | |
9634 | ||
a1c1fdd0 RK |
9635 | * regmove.c (perhaps_ends_bb_p): New function. |
9636 | (optimize_reg_copy_1, optimize_reg_copy_2): Call it. | |
9637 | (optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise. | |
9638 | (fixup_match_1): Likewise. | |
9639 | (fixup_match_1, combine_stack_adjustments_for_block): Add casts to | |
9640 | avoid signed/unsigned warnings. | |
0e5921e8 | 9641 | |
3f546a53 RK |
9642 | * function.c (fixup_var_refs_1, case MEM): Update CODE after |
9643 | updating X. | |
9644 | ||
61d0346d NB |
9645 | Fri 18-Aug-2000 18:33:45 BST Neil Booth <NeilB@earthling.net> |
9646 | ||
9647 | * cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS. | |
9648 | (_cpp_trigraph_map): Declaration moved from cpplex.c | |
9649 | ||
9650 | * cppinit.c: Define _cpp_trigraph_map. Use UCHAR_MAX + 1 | |
9651 | instead of 256. Use consistent test for designated initializers. | |
9652 | (cpp_init): Initialize trigraph_map. | |
9653 | (initialize_standard_includes, parse_option): Use memcmp | |
9654 | instead of strncmp. | |
9655 | ||
9656 | * cpplex.c (init_trigraph_map): Remove. | |
9657 | (trigraph_ok, trigraph_replace, lex_line): Refer to | |
9658 | _cpp_trigraph_map. | |
9659 | ||
9660 | * cpplib.c (str_match, WARNING, ERROR, ICE): Delete. | |
9661 | (do_unassert): Remove unused "next" local. | |
9662 | ||
9663 | * system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype. | |
9664 | ||
ef42b1dd EM |
9665 | 2000-08-18 Emmanuel Marty <emarty@suntech.fr> |
9666 | ||
9667 | * arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return | |
9668 | insn. | |
9669 | ||
bc08aefe RH |
9670 | 2000-08-17 Richard Henderson <rth@cygnus.com> |
9671 | ||
9672 | * config/ia64/ia64.c (spill_restore_mem): Handle emitting | |
9673 | the first insn in a sequence. | |
9674 | ||
49982682 JW |
9675 | Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com) |
9676 | ||
9677 | * alias.c (true_dependence, write_dependence_p): A read | |
9678 | involving a label_ref or the constant pool doesn't create | |
9679 | a dependency. | |
9680 | ||
9681 | * rtl.h (unchanging): Improve documentation. | |
9682 | ||
889e5964 RB |
9683 | 2000-08-17 Rodney Brown <RodneyBrown@mynd.com> |
9684 | ||
9685 | * cse.c (insert_regs): Remove unused `regno'. | |
9686 | ||
dd69c71b NB |
9687 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
9688 | ||
9689 | * (cppinit.c) merge_include_chains: Use remove_dup_dir, | |
9690 | remove_dup_dirs. If qtail == brack, remove brack not | |
9691 | qtail. | |
9692 | (remove_dup_dir, remove_dup_dirs): New functions. | |
9693 | ||
709e9e50 NB |
9694 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
9695 | ||
9696 | * cppinit.c (cpp_cleanup): Free include dir chains. | |
9697 | * cpplib.c (do_undef): Let _cpp_free_definition make the node void. | |
9698 | (do_unassert): Free the assert with _cpp_free_definition. | |
9699 | * cppmacro.c (_cpp_free_definition): Free memory allocated for | |
9700 | assertions. Make the node a T_VOID node. | |
9701 | ||
e33f6253 NB |
9702 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
9703 | ||
9704 | * cppinit.c (path_include, append_include_chain): | |
9705 | Remove 2nd parameter (struct cpp_pending *). | |
9706 | (path_include, initialize_standard_includes, cpp_handle_option): | |
9707 | Update callers appropriately. | |
9708 | (cpp_handle_option): Use pend. | |
9709 | ||
c154ba66 NB |
9710 | 2000-08-17 Neil Booth <NeilB@earthling.net> |
9711 | ||
9712 | * cppinit.c (sort_options): Remove, put functionality in | |
9713 | cpp_init. | |
9714 | (cpp_init): New. | |
9715 | (initialize_builtins): Free memory. | |
9716 | (cpp_start_read): Move init_IStable to cpp_init. | |
9717 | ||
9718 | * cpplib.h (cpp_init): New prototype. | |
9719 | * cppmain.c (main): Call cpp_init. | |
9720 | ||
9c82ac6b JW |
9721 | Thu Aug 17 13:20:32 EDT 2000 John Wehle (john@feith.com) |
9722 | ||
9723 | * rtlanal.c (rtx_unstable_p): Use CONSTANT_P. | |
9724 | (rtx_unstable_p, rtx_varies_p): Process vectors. | |
9725 | ||
acd50a92 NY |
9726 | 2000-08-16 Niibe Yutaka <gniibe@m17n.org>, Kaz Kojima <kkojima@rr.iij4u.or.jp> |
9727 | ||
9728 | * config/sh/lib1funcs.asm (GLOBAL): Define. Use for all | |
9729 | references to GLOBAL symbols. Use LOCAL where appropriate. | |
9730 | ||
cfedbb1f KG |
9731 | 2000-08-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
9732 | ||
9733 | * configure.in (*-ibm-aix4.[12]*): Delete test for gnu ld. Always | |
9734 | use t-aix41 when host == target. | |
9735 | ||
31989264 RH |
9736 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
9737 | ||
9738 | * reload.c (push_secondary_reload): Revert last change. | |
9739 | If we use a reload_in/out pattern, make the when the same | |
9740 | as the primary reload. | |
9741 | (find_reloads): Likewise. | |
9742 | ||
d84c5634 MH |
9743 | 2000-08-16 Manfred Hollstein <manfredh@redhat.com> |
9744 | ||
9745 | * configure.in (libstdcxx-v3): Fix test. | |
9746 | * configure: Regenerate. | |
9747 | ||
43db0363 RK |
9748 | Wed Aug 16 08:10:32 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
9749 | ||
9750 | * calls.c (calls_function_1, expand_call): Only test | |
9751 | TYPE_RETURNS_STACK_DEPRESSED for FUNCTION_TYPE. | |
9752 | * function.c (thread_prologue_and_epilogue_insns): Likewise. | |
9753 | ||
853d8828 RH |
9754 | 2000-08-16 Richard Henderson <rth@cygnus.com> |
9755 | ||
9756 | * combine.c (simplify_shift_const): Revert previous two | |
9757 | changes. If SHIFT_COUNT_TRUNCATED, crop the shift count | |
9758 | before the main loop. | |
9759 | ||
3e626beb RH |
9760 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
9761 | ||
9762 | * combine.c (simplify_shift_const): Bound shift count when | |
9763 | combining shifts. | |
9764 | ||
f507188a RK |
9765 | Tue Aug 15 17:33:05 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
9766 | ||
7393c642 RK |
9767 | * calls.c (ECF_SP_DEPRESSED): New macro. |
9768 | (calls_function_1): Treat calling sp-depressed function as alloca. | |
9769 | (emit_call_1): Don't adjust SP if calling sp-depressed function. | |
9770 | (expand_call): Set ECF_SP_DEPRESSED if TYPE_RETURNS_STACK_DEPRESSED. | |
9771 | If sp-depressed, ensure block saves and restores SP. | |
9772 | * fold-const.c (extract_muldiv): Only check TYPE_IS_SIZETYPE | |
9773 | for INTEGER_TYPE. | |
9774 | * function.c (keep_stack_depressed): New function. | |
9775 | (thread_prologue_and_epilogue_insns): Call it. | |
9776 | * print-tree.c (print_node): Use HOST_WIDE_INT_PRINT_UNSIGNED | |
9777 | to print DECL_OFFSET_ALIGN. | |
9778 | Print no-force-blk and transparent-union flags properly. | |
9779 | * stmt.c (expand_goto_internal): Don't restore stack if last block | |
9780 | and function returns with sp depressed. | |
9781 | (fixup_gotos): Likewise. | |
9782 | (save_stack_pointer): New function, from code in expand_decl. | |
9783 | (expand_decl): Call new function. | |
9784 | * tree.h (TYPE_IS_SIZETYPE): Call INTEGER_TYPE_CHECK. | |
9785 | (TYPE_RETURNS_STACK_DEPRESSED): New macro. | |
9786 | (save_stack_pointer): New declaration. | |
9787 | ||
f507188a RK |
9788 | * diagnostic.c (fatal_function): New variable. |
9789 | (set_fatal_function): New function. | |
9790 | (fatal): Call it. | |
9791 | * diagnostic.h (set_fatal_function): New declaration. | |
9792 | ||
56847207 WC |
9793 | 2000-08-15 William Cohen <wcohen@redhat.com> |
9794 | ||
9795 | * config/sh/elf.h (DWARF2_DEBUGGING_INFO): Defined. | |
9796 | (PREFERRED_DEBUGGING_TYPE): Set to dwarf2 info. | |
9797 | (DWARF2_ASM_LINE_DEBUG_INFO): Defined. | |
9798 | ||
7791b7f9 RH |
9799 | 2000-08-15 Richard Henderson <rth@cygnus.com> |
9800 | ||
9801 | * flow.c (mark_used_reg): Set reg_cond_reg appropriately. | |
9802 | ||
f99fce0c RE |
9803 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
9804 | ||
9805 | * arm.c (arm_function_ok_for_sibcall): New function. | |
9806 | * arm.h (FUNCTION_OK_FOR_SIBCALL): Define. | |
9807 | * arm.md (call expanders): Don't check here for calls that can't | |
9808 | be sibling calls. | |
9809 | ||
74da3101 RE |
9810 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
9811 | ||
9812 | * arm.md (splits generating cond_exec): Disable. | |
9813 | ||
2c210617 RE |
9814 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
9815 | ||
9816 | * arm/linux-elf.h (text_section): Delete declaration. | |
9817 | ||
05ed98a1 RE |
9818 | 2000-08-15 Richard Earnshaw <rearnsha@arm.com> |
9819 | ||
9820 | ARM support for unordered FP operations. | |
9821 | * arm-protos.h (arm_comparison_operator): Declare. | |
9822 | * arm.c (arm_comparison_operator): New function. | |
9823 | (arm_select_cc_mode): Add unordered comparison codes. | |
9824 | (get_arm_condition_code): Likewise. | |
9825 | (arm_final_prescan_insn): Can't handle unordered jumps that can't | |
9826 | be done in one insn. | |
9827 | * arm.h (PREDICATE_CODES): Add arm_comparison_operator. | |
9828 | * arm.md (all uses of comparison_operator): Replace with | |
9829 | arm_comparison_operator. | |
9830 | (bunordered, bordered, bugt, bunlt, bunge, bunle, buneq, bltgt): New | |
9831 | expands. | |
9832 | (arm_buneq, arm_bltgt, arm_buneq_reversed, arm_bltgt_reveresed): New | |
9833 | patterns. | |
0e5921e8 | 9834 | |
ed78c862 OP |
9835 | Tue Aug 15 00:36:36 2000 Ovidiu Predescu <ovidiu@cup.hp.com> |
9836 | ||
9837 | * gthr-posix.h: Conditionally include <sched.h>; include | |
9838 | <config.h> from libobjc/. | |
9839 | ||
4859dd36 RH |
9840 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
9841 | ||
9842 | * config/i386/i386.c (legitimize_pic_address): Use Pmode | |
9843 | for all CONSTs. | |
9844 | ||
3f622353 RH |
9845 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
9846 | ||
9847 | * configure.in (ia64-*): Set float_format for i386 long double. | |
9848 | ||
9849 | * real.c (GET_REAL): Treat 128-bit INTEL_EXTENDED_IEEE_FORMAT | |
9850 | as we would for i386 XFmode. | |
9851 | (PUT_REAL): Likewise. | |
9852 | (endian, ereal_atof, real_value_truncate): Likewise. | |
9853 | (ereal_isneg, toe64, etens, make_nan): Likewise. | |
9854 | * real.h (REAL_VALUE_TO_TARGET_LONG_DOUBLE): Likewise. | |
9855 | ||
9856 | * config/ia64/ia64-protos.h: Update. | |
9857 | * config/ia64/ia64.c (general_tfmode_operand): New. | |
9858 | (destination_tfmode_operand): New. | |
9859 | (tfreg_or_fp01_operand): New. | |
9860 | (ia64_split_timode): New. | |
9861 | (spill_tfmode_operand): New. | |
9862 | (ia64_expand_prologue): Use TFmode not XFmode. | |
9863 | (ia64_expand_epilogue): Likewise. | |
9864 | (ia64_function_arg): Likewise. | |
9865 | (ia64_function_arg_advance): Likewise. | |
9866 | (ia64_return_in_memory): Likewise. | |
9867 | (ia64_function_value): Likewise. | |
9868 | (ia64_print_operand): Likewise. | |
9869 | (ia64_register_move_cost): Set GR<->FR to 5. | |
9870 | (ia64_secondary_reload_class): Get GR for TImode memory op. | |
9871 | * config/ia64/ia64.h (ROUND_TYPE_SIZE): Remove. | |
9872 | (ROUND_TYPE_ALIGN): Remove. | |
9873 | (LONG_DOUBLE_TYPE_SIZE): Set to 128. | |
9874 | (INTEL_EXTENDED_IEEE_FORMAT): Define. | |
9875 | (HARD_REGNO_NREGS): Use TFmode, not XFmode. | |
9876 | (HARD_REGNO_MODE_OK): Likewise. Disallow TImode in FRs. | |
9877 | (MODES_TIEABLE_P): Use TFmode, not XFmode. | |
9878 | (CLASS_MAX_NREGS): Likewise. | |
9879 | (ASM_OUTPUT_LONG_DOUBLE): Output by 4 byte hunks. | |
9880 | (PREDICATE_CODES): Update. | |
9881 | * config/ia64/ia64.md (movti): New. | |
9882 | (movti_internal): Use a clobber for memory alternatives. | |
9883 | (reload_inti, reload_outti): New. | |
9884 | (movsfcc_astep): Predicate properly. | |
9885 | (movdfcc_astep): Likewise. | |
9886 | (movxf): Remove. | |
9887 | (movtf): New. | |
9888 | (extendsftf2, extenddftf2): New. | |
9889 | (trunctfsf2, trunctfdf2): New. | |
9890 | (floatditf2, fix_trunctfdi2): New. | |
9891 | (floatunsditf2, fixuns_trunctfdi2): New. | |
9892 | (addtf3, subtf3, multf3, abstf2): New. | |
9893 | (negtf2, nabstf2, mintf3, maxtf3): New. | |
9894 | (maddtf3, msubtf3, nmultf3, nmaddtf3): New. | |
9895 | (cmptf): New. | |
9896 | (fr_spill): Use TFmode, not XFmode. | |
9897 | (fr_restore): Likewise. | |
9898 | * config/ia64/lib1funcs.asm (__divtf3): New. | |
9899 | * config/ia64/t-ia64 (LIB1ASMFUNCS): Add it. | |
9900 | ||
e49a1d2e KG |
9901 | 2000-08-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
9902 | ||
9903 | * cse.c (fold_rtx): Avoid empty body in an if-statement. | |
0e5921e8 | 9904 | |
e49a1d2e KG |
9905 | * doloop.c (doloop_iterations_max, doloop_modify): Avoid using the |
9906 | `U' integer constant suffix. | |
9907 | ||
9908 | * dwarf2out.c (add_subscript_info): Avoid empty body in an | |
9909 | else-statement. | |
9910 | ||
9911 | * sparc/sol2.h (__enable_execute_stack): Prototype. | |
9912 | ||
78fbdbf7 DE |
9913 | 2000-08-14 David Edelsohn <edelsohn@gnu.org> |
9914 | ||
9915 | * collect2.c: Remove use of AIX import file. | |
9916 | ||
9917 | * longlong.h: Test ARCH_PWR not ARCH_POWER. | |
9918 | ||
9919 | * rs6000.c (print_operand, case 'E'): Add else. | |
9920 | ||
9a89adb8 RH |
9921 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
9922 | ||
9923 | * config/ia64/ia64.md (movdi): Delay calling ia64_expand_load_address. | |
9924 | (movdi_symbolic): New. | |
9925 | ||
00e149c7 JW |
9926 | 2000-08-14 Jim Wilson <wilson@cygnus.com> |
9927 | ||
9928 | * config/ia64/ia64.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
9929 | to GNU as. For Intel as, pass -M const_gp and -M no_plabel. | |
9930 | * config/ia64/linux.h (ASM_SPEC): Pass -mconstant-gp and -mauto-pic | |
9931 | to GNU as. | |
9932 | ||
2ee5437b RH |
9933 | 2000-08-14 Richard Henderson <rth@cygnus.com> |
9934 | ||
9935 | * expr.c (emit_group_load): Don't force constants into registers. | |
9936 | Special case source already in the correct mode. | |
9937 | ||
57119aa9 ZW |
9938 | 2000-08-14 Zack Weinberg <zack@wolery.cumb.org> |
9939 | ||
9940 | * configure.in: Accept *-*-linux* not just *-*-linux-gnu*. | |
9941 | * fixinc/inclhack.def: Likewise. | |
0e5921e8 | 9942 | * fixinc/mkfixinc.sh: Likewise. |
57119aa9 ZW |
9943 | * configure: Regenerate. |
9944 | * fixinc/fixincl.x: Regenerate. | |
9945 | * install.texi: Document equivalence of linux and linux-gnu. | |
9946 | ||
d9f20424 R |
9947 | Mon Aug 14 18:51:44 2000 J"orn Rennecke <amylaar@cygnus.co.uk> |
9948 | ||
9949 | * cse.c (insert_regs): Also in REG case: When finding an invalid | |
9950 | value, and we make a new quantity, make sure that it won't be | |
9951 | mistaken by for a valid one by mention_regs. | |
9952 | ||
c8fa6556 RG |
9953 |