]>
Commit | Line | Data |
---|---|---|
329b3cc3 KK |
1 | 2006-11-12 Kaz Kojima <kkojima@gcc.gnu.org> |
2 | ||
3 | * genemit.c (gen_insn): Call gen_exp with a non-null used | |
4 | when handling multiple insns. | |
5 | (gen_expand): Likewise. | |
6 | * reorg.c (emit_delay_sequence): Copy the delay slot insn. | |
7 | * config/sh/sh.md (ashrsi2_31+1): Copy operands[0]. | |
8 | (movsi_const_16bit+1): Copy operands[1]. | |
9 | (call_pcrel): Copy the call_site pattern. | |
10 | (call_value_pcrel, sibcall_pcrel, GOTaddr2picreg): Likewise. | |
11 | ||
1b43b967 RS |
12 | 2006-11-12 Roger Sayle <roger@eyesopen.com> |
13 | ||
14 | * fold-const.c (negate_expr_p) <PLUS_EXPR, MINUS_EXPR>: Correct/refine | |
15 | condition for transformations. Use !HONOR_SIGN_DEPENDENT_ROUNDING | |
16 | && !HONOR_SIGNED_ZEROS instead of flag_unsafe_math_optimizations. | |
17 | (fold_negate_expr) <PLUS_EXPR, MINUS_EXPR>: Likewise. | |
18 | ||
163b8581 DB |
19 | 2006-11-12 Daniel Berlin <dberlin@dberlin.org> |
20 | ||
21 | Fix PR tree-optimization/29587 | |
22 | * tree-ssa-structalias.c (process_constraint): Don't | |
23 | mark address taken due only to escaped vars constraint. | |
24 | ||
3b279c7a RS |
25 | 2006-11-12 Michael Matz <matz@suse.de> |
26 | Roger Sayle <roger@eyesopen.com> | |
27 | ||
28 | PR rtl-optimization/29797 | |
29 | * ifcvt.c (noce_try_bitop): Correct calculation of bitnum on | |
30 | BITS_BIG_ENDIAN targets. | |
31 | ||
5c5b2155 KG |
32 | 2006-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
33 | ||
34 | * builtins.c (fold_builtin_cosh): New. | |
35 | (fold_builtin_1): Use it. | |
36 | * fold-const.c (negate_mathfn_p): Add llround, lround, round, | |
37 | trunc to the list of "odd" functions. Also add llrint, lrint, | |
38 | rint and nearbyint when flag_rounding_math is false. | |
39 | ||
8f8bb1d2 ZD |
40 | 2006-11-12 Zdenek Dvorak <dvorakz@suse.cz> |
41 | ||
42 | * tree-flow.h (name_mappings_registered_p): Declare. | |
43 | * tree-into-ssa.c (name_mappings_registered_p): New function. | |
44 | * tree-cfg.c (tree_can_merge_blocks_p): Check | |
45 | name_mappings_registered_p instead of need_ssa_update_p. | |
46 | ||
4d2280f6 ZD |
47 | 2006-11-12 Zdenek Dvorak <dvorakz@suse.cz> |
48 | ||
49 | * tree-ssa-loop.c (tree_vectorize): Return the result of | |
50 | vectorize_loops. | |
51 | * tree-vectorizer.c (vectorize_loops): Return TODO_cleanup_cfg | |
52 | if anything changed. | |
53 | * tree-vectorizer.h (vectorize_loops): Declaration removed. | |
54 | * tree-flow.h (vectorize_loops): Declaration changed. | |
55 | ||
911b3fdb ZD |
56 | 2006-11-12 Zdenek Dvorak <dvorakz@suse.cz> |
57 | ||
58 | * tree-ssa-loop-prefetch.c (schedule_prefetches): Cleanup and improve | |
59 | comments. | |
60 | (issue_prefetch_ref): Move assignment to write_p out of loop. | |
61 | (determine_unroll_factor): Do not take PARAM_MAX_UNROLL_TIMES and | |
62 | SIMULTANEOUS_PREFETCHES into account. | |
63 | (loop_prefetch_arrays): Do not pass ahead to determine_unroll_factor. | |
64 | * lambda-code.c (lcm): Renamed to ... | |
65 | (least_common_multiple): ... and exported. | |
66 | * tree-flow.h (least_common_multiple): Declare. | |
67 | ||
946e1bc7 ZD |
68 | 2006-11-12 Zdenek Dvorak <dvorakz@suse.cz> |
69 | ||
70 | * Makefile.in (tree-data-ref.o): Add langhooks.h dependency. | |
71 | * tree-ssa-loop-niter.c (derive_constant_upper_bound): Follow | |
72 | ud-chains. Handle AND_EXPR. | |
73 | (record_estimate): Record whether the estimate is realistic | |
74 | and whether it is derived from a loop exit. | |
75 | (record_nonwrapping_iv, idx_infer_loop_bounds, infer_loop_bounds_from_ref, | |
76 | infer_loop_bounds_from_array, infer_loop_bounds_from_signedness): New | |
77 | functions. | |
78 | (compute_estimated_nb_iterations): Take only realistic bounds into | |
79 | account. Set estimate_state. Use double_ints. | |
80 | (infer_loop_bounds_from_undefined): Call infer_loop_bounds_from_array | |
81 | and infer_loop_bounds_from_signedness. Do not consider basic blocks | |
82 | that do not have to be always executed. | |
83 | (estimate_numbers_of_iterations_loop): Set estimate_state, and use it | |
84 | to determine whether to call infer_loop_bounds_from_undefined | |
85 | and compute_estimated_nb_iterations. | |
86 | (n_of_executions_at_most): Use double_ints. | |
87 | (free_numbers_of_iterations_estimates_loop): Set estimate_state. | |
88 | (substitute_in_loop_info): Do not replace in estimated_nb_iterations. | |
89 | * double-int.c (double_int_to_tree): Improve comment. | |
90 | (double_int_fits_to_tree_p): New function. | |
91 | * double-int.h (double_int_fits_to_tree_p): Declare. | |
92 | * tree-data-ref.c: Include langhooks.h. | |
93 | (estimate_niter_from_size_of_data, estimate_iters_using_array): Removed. | |
94 | (analyze_array_indexes): Do not call estimate_niter_from_size_of_data. | |
95 | (analyze_array): Do not pass estimate_only argument to | |
96 | analyze_array_indexes. | |
97 | (get_number_of_iters_for_loop): Build tree from the stored double_int | |
98 | value. | |
99 | (get_references_in_stmt, find_data_references_in_stmt): New functions. | |
100 | (find_data_references_in_loop): Use find_data_references_in_stmt. | |
101 | * tree-data-ref.h (struct data_ref_loc_d): New. | |
102 | (get_references_in_stmt): Declare. | |
103 | (estimate_iters_using_array): Declaration removed. | |
104 | * cfgloop.h (struct nb_iter_bound): Change type of bound to | |
105 | double_int. Improve comments. Add is_exit and realistic | |
106 | fields. | |
107 | (struct loop): Changed type of estimated_nb_iterations to double_int. | |
108 | Added estimate_state field. | |
109 | (record_estimate): Declaration removed. | |
110 | ||
47eb5b32 ZD |
111 | 2006-11-12 Zdenek Dvorak <dvorakz@suse.cz> |
112 | ||
113 | * params.c (set_param_value): Initialize the "set" field. | |
114 | * params.h (struct param_info): Add "set" field. | |
115 | (PARAM_SET_P): New macro. | |
116 | (PREFETCH_LATENCY, SIMULTANEOUS_PREFETCHES, L1_CACHE_SIZE, | |
117 | L1_CACHE_LINE_SIZE): New macros. | |
118 | * toplev.c (DEFPARAM): Initialize the "set" field. | |
119 | * tree-ssa-loop-prefetch.c (PREFETCH_LATENCY, | |
120 | SIMULTANEOUS_PREFETCHES): Removed. | |
121 | (PREFETCH_BLOCK): Use L1_CACHE_LINE_SIZE. | |
122 | (tree_ssa_prefetch_arrays): Dump the values of the parameters. | |
123 | * config/sparc/sparc.c: Include params.h. | |
124 | (sparc_override_options): Set SIMULTANEOUS_PREFETCHES and | |
125 | L1_CACHE_LINE_SIZE parameters. | |
126 | * config/sparc/sparc.h (PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): | |
127 | Removed. | |
128 | * config/i386/i386.h (PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): | |
129 | Removed. | |
130 | * config/i386/i386.c: Include params.h. | |
131 | (k8_cost): Change default value for SIMULTANEOUS_PREFETCHES. | |
132 | (override_options): Set SIMULTANEOUS_PREFETCHES and | |
133 | L1_CACHE_LINE_SIZE parameters. | |
134 | * config/sh/sh.h (SIMULTANEOUS_PREFETCHES): Removed. | |
135 | (OPTIMIZATION_OPTIONS): Set SIMULTANEOUS_PREFETCHES and | |
136 | L1_CACHE_LINE_SIZE parameters. | |
137 | * config/ia64/ia64.c (ia64_optimization_options): Set | |
138 | SIMULTANEOUS_PREFETCHES and L1_CACHE_LINE_SIZE parameters. | |
139 | * config/ia64/ia64.h (SIMULTANEOUS_PREFETCHES, PREFETCH_BLOCK): | |
140 | Removed. | |
141 | * params.def (PARAM_PREFETCH_LATENCY, PARAM_SIMULTANEOUS_PREFETCHES, | |
142 | PARAM_L1_CACHE_SIZE, PARAM_L1_CACHE_LINE_SIZE): New params. | |
143 | * doc/invoke.texi: Document new params. | |
144 | ||
015e23f4 RS |
145 | 2006-11-12 Roger Sayle <roger@eyesopen.com> |
146 | ||
147 | PR tree-optimization/13827 | |
148 | * fold-const.c (fold_binary) <EQ_EXPR, NE_EXPR>: Fold (X&C) op (Y&C) | |
149 | as ((X^Y)&C) op 0. | |
150 | ||
c0493b13 ZD |
151 | 2006-11-12 Zdenek Dvorak <dvorakz@suse.cz> |
152 | ||
153 | * cfgloopmanip.c (update_single_exit_for_duplicated_loop, | |
154 | update_single_exit_for_duplicated_loops): New functions. | |
155 | (duplicate_loop_to_header_edge): Use | |
156 | update_single_exit_for_duplicated_loops. | |
157 | * tree-ssa-loop-manip.c (tree_unroll_loop): Call verification | |
158 | functions only with ENABLE_CHECKING. | |
159 | ||
c57d4028 AS |
160 | 2006-11-12 Andreas Schwab <schwab@suse.de> |
161 | ||
162 | * except.c (sjlj_emit_function_enter): Remove unused variable. | |
163 | ||
000d8d44 RS |
164 | 2006-11-11 Roger Sayle <roger@eyesopen.com> |
165 | ||
166 | * fold-const.c (int_binop_types_match_p): New function. | |
167 | (size_binop): Relax constraint that both arguments must both have | |
168 | exactly the same sizetype type. Instead use int_binop_types_match_p. | |
169 | (size_diffop): Likewise. | |
170 | ||
171 | (make_range): Use build_int_cst instead of fold_convert. | |
172 | (fold_cond_expr_with_comparison): Use build_int_cst to construct | |
173 | integer constants of the correct type. | |
174 | (fold_div_compare): Likewise. | |
175 | (fold_single_bit_test): Likewise. | |
176 | (fold_binary): Likewise. | |
177 | * stor-layout.c (layout_type) <VECTOR_TYPE>: Ensure that TYPE_SIZE | |
178 | has type bitsizetype and TYPE_SIZE_UNIT has type sizetype. | |
179 | ||
afa8f0fb AP |
180 | 2006-11-11 Andrew Pinski <andrew_pinski@playstation.sony.com> |
181 | ||
182 | PR rtl-opt/28812 | |
183 | * alias.c (fixed_scalar_and_varying_struct_p): Don't return a | |
184 | non null value if the struct memory access is in the 0th | |
185 | aliasing set. | |
186 | ||
a607b34f JZ |
187 | 2006-11-12 Jie Zhang <jie.zhang@analog.com> |
188 | ||
189 | Revert | |
190 | 2006-11-11 Jie Zhang <jie.zhang@analog.com> | |
191 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__ | |
192 | and __BFIN__. | |
193 | ||
194 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Use builtin_define_std | |
195 | instead of builtin_define for bfin and BFIN. | |
196 | ||
a167b3e8 JZ |
197 | 2006-11-11 Jie Zhang <jie.zhang@analog.com> |
198 | ||
199 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __bfin__ | |
200 | and __BFIN__. | |
201 | ||
ef950eba JH |
202 | 2006-11-11 Jan Hubicka <jh@suse.cz> |
203 | ||
204 | * extended.texi (__builtin_expect): We no longer require second argument | |
205 | to be constant. | |
206 | * gengtype.c (adjust_field_rtx_def): Drop NOTE_INSN_EXPECTED_VALUE. | |
207 | * builtins.c (expand_builtin_expect): Simplify. | |
208 | (expand_builtin_expect_jump): Kill. | |
209 | * final.c (final_scan_insn): Do not skip the removed notes. | |
210 | * insn-notes.def (LOOP_BEG, LOOP_END, REPEATED_LINE_NUMBER, | |
211 | EXPECTED_VALUE): Remove. | |
212 | * dojump.c (do_jump): Do not care about __builtin_expect. | |
213 | * predict.c (expected_value_to_br_prob): Kill. | |
214 | * function.c (expand_function_end): Do not expand | |
215 | NOTE_INSN_REPEATED_LINE_NUMBER. | |
216 | * print-rtl.c (print_rtx): Do not pretty print the removed notes. | |
217 | * expect.c (sjlj_emit_function_enter): Emit directly branch probability. | |
218 | * cfgexpand.c (add_reg_br_prob_note): Export. | |
219 | * cfgcleanup.c (rest_of_handle_jump2): Do not call | |
220 | expected_value_to_br_prob. | |
221 | * cfglayout.c (duplicate_insn_chain): Do not deal with removed notes. | |
222 | * rtl.h (add_reg_br_prob_note): Declare. | |
223 | ||
89fa98d6 KG |
224 | 2006-11-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
225 | ||
226 | * tree-pretty-print.c (dump_generic_node): Print sign of Inf. | |
227 | ||
992c31e6 JH |
228 | 2006-11-11 Jan Hubicka <jh@suse.cz> |
229 | ||
230 | * predict.c (predict_loops): Kill RTL variant. | |
231 | ||
6039a0c7 JH |
232 | 2006-11-11 Jan Hubicka <jh@suse.cz> |
233 | ||
234 | * tree-pass.h (pass_purge_lineno_notes): Remove declaration. | |
235 | * modulo-sched.c (find_line_note): Remove. | |
236 | (loop_canon_p): Do not worry about line number notes. | |
237 | (sms_schedule): Likewise. | |
238 | * cse.c (cse_main): Likewise. | |
239 | * regmove.c (fixup_match_1): Likewise | |
240 | * function.c (emit_return_info_block): Likewise. | |
241 | (expand_function_end): Likewise. | |
242 | (thread_prologue_an_epilogue_insns): Likewise. | |
243 | * cfgrtl.c (try_redirect_by_replacing_jump, rtl_tidy_fallthru_edge): | |
244 | Likewise. | |
245 | * emit-rtl.c (find_line_note, emit_insn_after_with_line_notes, | |
246 | emit_note_copy_after): Kill. | |
247 | (emit_note_copy): Do not worry about line numbers. | |
248 | * jump.c (purge_line_number_notes): Kill. | |
249 | (pass_purge_lineno_notes): Kill. | |
250 | * cfgcleanup.c (rest_of_handle_jump2): Kill purge_line_number_notes | |
251 | call. | |
252 | * rtl.h (emit_note_copy_after, emit_insn_after_with_line_notes): Kill. | |
253 | * passes.c (init_optimization_passes): Don't purge_lineno_notes. | |
254 | * sched-ebb.c (schedule_ebbs): Don't do rm_redundant_line_notes. | |
255 | * tree-pass.h (pass_purge_lineno_notes): Kill. | |
256 | * sched-ebb.c (schedule_ebb): Don't rm_line_notes, | |
257 | rm_redundant_line_notes. | |
258 | * sched-rgb.c (schedule_region): Don't rm_line_notes, | |
259 | rm_redundant_line_notes. | |
260 | * sched-int.h (rm_line_notes, rm_redundant_line_notes): Kill. | |
261 | * haifa-sched.c: Update comment about handling notes. | |
262 | (unlink_line_notes): Kill. | |
263 | (rm_line_notes): Kill. | |
264 | (save_line_notes): Simplify. | |
265 | (rm_redundant_line_notes): Kill. | |
266 | ||
f9f770a8 RG |
267 | 2006-11-11 Richard Guenther <rguenther@suse.de> |
268 | ||
269 | * tree.def (FIX_CEIL_EXPR, FIX_FLOOR_EXPR, FIX_ROUND_EXPR): | |
270 | Remove unused tree codes. | |
271 | * tree-vrp.c (extract_range_from_unary_expr): Remove handling | |
272 | of FIX_CEIL_EXPR, FIX_FLOOR_EXPR and FIX_ROUND_EXPR. | |
273 | * tree-pretty-print.c (dump_generic_node, op_prio): Likewise. | |
274 | * tree.c (stabilize_reference): Likewise. | |
275 | * fold-const.c (fold_convert_const_int_from_real, operand_equal_p, | |
276 | fold_unary): Likewise. | |
277 | * tree-gimple.c (is_gimple_cast): Likewise. | |
278 | * dwarf2out.c (loc_descriptor_from_tree_1): Likewise. | |
279 | * expr.c (expand_expr_real_1): Likewise. | |
280 | * tree-eh.c (tree_could_trap_p): Likewise. | |
281 | * gimplify.c (gimplify_expr): Likewise. | |
282 | * tree-inline.c (estimate_num_insns_1): Likewise. | |
283 | * tree-cfg.c (verify_expr): Likewise. | |
284 | ||
e324a72f ZD |
285 | 2006-11-11 Zdenek Dvorak <dvorakz@suse.cz> |
286 | ||
287 | * tree-ssa-loop.c (pass_loop_prefetch): Change name to aprefetch. | |
288 | * tree-ssa-loop-prefetch.c (dump_mem_ref): Fix target file. | |
289 | (tree_ssa_prefetch_arrays): Do not dump for removed loops. | |
290 | ||
6d40c489 RS |
291 | 2006-11-11 Richard Sandiford <richard@codesourcery.com> |
292 | ||
293 | PR middle-end/27528 | |
294 | * stmt.c (expand_asm_operands): Use EXPAND_INITIALIZER if the | |
295 | constraints accept neither registers or memories. | |
296 | ||
56014148 JZ |
297 | 2006-11-11 Jie Zhang <jie.zhang@analog.com> |
298 | ||
299 | * config/bfin/bfin.h (FUNCTION_PROFILER): Don't use LABELNO. | |
300 | (NO_PROFILE_COUNTERS): Define as 1. | |
301 | ||
85914552 RS |
302 | 2006-11-10 Roger Sayle <roger@eyesopen.com> |
303 | ||
304 | * fold-const.c (operand_equal_p) <INTEGER_CST, REAL_CST, VECTOR_CST>: | |
305 | Don't check for TREE_CONSTANT_OVERFLOW when comparing constants. | |
306 | ||
adb43ed4 PB |
307 | 2006-11-10 Peter Bergner <bergner@vnet.ibm.com> |
308 | ||
309 | * rtl.h (MEM_COPY_ATTRIBUTES): Copy MEM_POINTER. | |
310 | ||
345768ef KG |
311 | 2006-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
312 | ||
b81e7144 KG |
313 | * builtins.c (fold_builtin_cos): Use fold_strip_sign_ops(). |
314 | (fold_builtin_hypot): Likewise. | |
315 | * fold-const.c (fold_strip_sign_ops): Handle "odd" builtins. | |
316 | ||
345768ef KG |
317 | * fold-const.c (negate_mathfn_p): Add BUILT_IN_ERF. |
318 | ||
b8b7f162 RS |
319 | 2006-11-10 Roger Sayle <roger@eyesopen.com> |
320 | ||
321 | * tree.c (build_int_cst_wide): Add an assertion (gcc_unreachable) | |
322 | when attempting to build INTEGER_CSTs of non-integral types. | |
323 | * expmed.c (make_tree): Use the correct type, i.e. the inner | |
324 | type, when constructing the individual elements of a CONST_VECTOR. | |
325 | ||
3e916873 JH |
326 | 2006-11-10 Jan Hubicka <jh@suse.cz> |
327 | ||
328 | * cse.c (cse_process_notes): Copy the propagated value. | |
329 | * local-alloc.c (update_equiv_regs): Copy the memory RTX to be used | |
330 | in REG_EQUIV notes. | |
331 | * gcse.c (try_replace_reg): Copy the replacement. | |
992c31e6 | 332 | * i386.c (emit_i387_cw_initialization): Copy stored_mode. |
3e916873 JH |
333 | (assign_386_stack_local): Always return copied memory expression |
334 | * function.c (instantiate_virtual_regs_in_insn): Copy the operand | |
335 | duplicates. | |
336 | ||
9ff57809 JH |
337 | 2006-11-10 Jan Hubicka <jh@suse.cz> |
338 | ||
339 | * final.c (final): Walk from first instruction. | |
340 | * cfglayout.c (insn_locators_initialize): Remove line number notes. | |
341 | ||
0e9dac9e UB |
342 | 2006-11-10 Uros Bizjak <ubizjak@gmail.com> |
343 | ||
344 | PR target/29777 | |
345 | * config/i386/sse.md (smulv8hi3_highpart): Change from define_insn | |
346 | to define_expand. | |
347 | (umulv8hi3_highpart): Ditto. | |
348 | (vec_widen_smult_hi_v8hi): New expander. | |
349 | (vec_widen_smult_lo_v8hi): Ditto. | |
350 | ||
e61e5ddc KG |
351 | 2006-11-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
352 | ||
6d55dfe3 | 353 | PR middle-end/29335 |
e61e5ddc KG |
354 | * builtins.c (do_mpfr_arg3): New. |
355 | (fold_builtin_1): Handle builtins fma, fmin and fmax. | |
356 | ||
b8ec3cc8 EC |
357 | 2006-11-09 Eric Christopher <echristo@apple.com> |
358 | ||
359 | PR bootstrap/26892 | |
360 | PR bootstrap/27814 | |
361 | PR other/28994 | |
362 | * configure.ac: Match powerpc*-*-darwin* for powerpc darwin checks. | |
363 | * config.gcc (powerpc64-*-darwin*): New target. | |
364 | * config.host: Ditto. | |
365 | * config/rs6000/darwin64.h: New file. | |
366 | * config/rs6000/x-darwin64: Ditto. | |
367 | * config/rs6000/host-ppc64-darwin.c: Ditto. | |
368 | ||
bdbba3c2 SE |
369 | 2006-11-09 Steve Ellcey <sje@cup.hp.com> |
370 | ||
371 | * config/ia64/ia64.c (ia64_hpux_init_libfuncs): Use HP-UX millicode | |
372 | routines for integer division. | |
373 | ||
217b5889 DJ |
374 | 2006-11-09 Daniel Jacobowitz <dan@codesourcery.com> |
375 | ||
376 | * config/arm/t-linux (LIBGCC2_DEBUG_CFLAGS): Delete. | |
377 | ||
0ad12cd3 SB |
378 | 2006-11-09 Serge Belyshev <belyshev@depni.sinp.msu.ru> |
379 | ||
380 | PR middle-end/29726 | |
381 | * fold-const.c (fold_binary) <EQ_EXPR>: Fix typo in variable name. | |
382 | ||
d82a02fa AK |
383 | 2006-11-09 Andreas Krebbel <krebbel1@de.ibm.com> |
384 | ||
b8ec3cc8 | 385 | * simplify-rtx.c (avoid_constant_pool_reference): Avoid calling |
d82a02fa AK |
386 | simplify_subreg with BLKmode outer mode. |
387 | ||
dd508457 BM |
388 | 2006-11-08 Brooks Moses <brooks.moses@codesourcery.com> |
389 | ||
390 | * doc/invoke.texi: Minor formatting fixes in option lists. | |
391 | ||
106dec71 ZD |
392 | 2006-11-08 Zdenek Dvorak <dvorakz@suse.cz> |
393 | ||
394 | PR tree-optimization/29738 | |
395 | * tree-ssa-ccp.c: Remove UNKNOWN_VAL from comments. | |
396 | (ccp_lattice_t): Remove UNKNOWN_VAL. | |
397 | (dump_lattice_value, ccp_lattice_meet, ccp_visit_phi_node): | |
398 | Do not handle UNKNOWN_VAL. | |
399 | (get_default_value): Set initial value of virtual operands to | |
400 | VARYING. | |
401 | (get_value): Always use get_default_value on uninitialized | |
402 | operands. | |
403 | (set_value_varying, surely_varying_stmt_p): New functions. | |
404 | (set_lattice_value): Do not pass argument to get_value. | |
405 | Do not handle UNKNOWN_VAL. | |
406 | (likely_value): Follow the semantics described in the comment. | |
407 | (ccp_initialize): Use surely_varying_stmt_p. Do not mark | |
408 | phi nodes DONT_SIMULATE_AGAIN. | |
409 | (ccp_fold): Do not pass argument to get_value. | |
410 | (fold_const_aggregate_ref, visit_assignment): Ditto. Do not | |
411 | handle UNKNOWN_VAL. | |
412 | ||
54b12dbe AP |
413 | 2006-11-08 Andrew Pinski <Andrew_Pinski@playstation.sony.com> |
414 | ||
b8ec3cc8 | 415 | * tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use |
54b12dbe AP |
416 | HOST_WIDE_INT_PRINT_DOUBLE_HEX instead of format buffer. |
417 | ||
5cdc4a26 RS |
418 | 2006-11-08 Roger Sayle <roger@eyesopen.com> |
419 | ||
420 | * tree-ssa-propagate.c (set_rhs): Restructure validity tests as a | |
421 | test for inclusion rather than as a test for exclusion. | |
422 | * tree-ssa-ccp.c (fold_stmt_r) <COND_EXPR>: Use set_rhs to modify | |
423 | the condition after calling fold_binary. | |
424 | * fold-const.c (fold_inf_compare): Remove in_gimple_form check. | |
425 | (fold_binary) <LT_EXPR, GT_EXPR, LE_EXPR, GE_EXPR>: Likewise. | |
426 | * builtins.c (fold_builtin_isascii): Likewise. | |
427 | (fold_builtin_isdigit): Likewise. | |
428 | ||
c794c06f CD |
429 | 2006-11-08 Carlos O'Donell <carlos@codesourcery.com> |
430 | ||
431 | * configure.ac: Do not set PREFIX_INCLUDE_DIR if $prefix is NONE. | |
432 | * configure: Regenerate. | |
433 | ||
89d67cca DN |
434 | 2006-11-08 Dorit Nuzman <dorit@il.ibm.com> |
435 | ||
b8ec3cc8 | 436 | * tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p): Take |
89d67cca DN |
437 | enum argument instead of bool. |
438 | (vect_analyze_operations): Call vectorizable_type_promotion. | |
439 | * tree-vectorizer.h (type_promotion_vec_info_type): New enum | |
440 | stmt_vec_info_type value. | |
441 | (supportable_widening_operation, vectorizable_type_promotion): New | |
442 | function declarations. | |
443 | * tree-vect-transform.c (vect_gen_widened_results_half): New function. | |
444 | (vectorizable_type_promotion): New function. | |
445 | (vect_transform_stmt): Call vectorizable_type_promotion. | |
446 | * tree-vect-analyze.c (supportable_widening_operation): New function. | |
b8ec3cc8 | 447 | * tree-vect-patterns.c (vect_recog_dot_prod_pattern): |
89d67cca DN |
448 | Add implementation. |
449 | * tree-vect-generic.c (expand_vector_operations_1): Consider correct | |
450 | mode. | |
b8ec3cc8 | 451 | |
89d67cca DN |
452 | * tree.def (VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR): |
453 | (VEC_UNPACK_HI_EXPR, VEC_UNPACK_LO_EXPR): New tree-codes. | |
b8ec3cc8 | 454 | * tree-inline.c (estimate_num_insns_1): Add cases for above new |
89d67cca DN |
455 | tree-codes. |
456 | * tree-pretty-print.c (dump_generic_node, op_prio): Likewise. | |
457 | * expr.c (expand_expr_real_1): Likewise. | |
458 | * optabs.c (optab_for_tree_code): Likewise. | |
459 | (init_optabs): Initialize new optabs. | |
460 | * genopinit.c (vec_widen_umult_hi_optab, vec_widen_smult_hi_optab, | |
461 | vec_widen_smult_hi_optab, vec_widen_smult_lo_optab, | |
462 | vec_unpacks_hi_optab, vec_unpacks_lo_optab, vec_unpacku_hi_optab, | |
463 | vec_unpacku_lo_optab): Initialize new optabs. | |
464 | * optabs.h (OTI_vec_widen_umult_hi, OTI_vec_widen_umult_lo): | |
465 | (OTI_vec_widen_smult_h, OTI_vec_widen_smult_lo, OTI_vec_unpacks_hi, | |
b8ec3cc8 | 466 | OTI_vec_unpacks_lo, OTI_vec_unpacku_hi, OTI_vec_unpacku_lo): New |
89d67cca DN |
467 | optab indices. |
468 | (vec_widen_umult_hi_optab, vec_widen_umult_lo_optab): | |
469 | (vec_widen_smult_hi_optab, vec_widen_smult_lo_optab): | |
470 | (vec_unpacks_hi_optab, vec_unpacku_hi_optab, vec_unpacks_lo_optab): | |
471 | (vec_unpacku_lo_optab): New optabs. | |
b8ec3cc8 EC |
472 | * doc/md.texi (vec_unpacks_hi, vec_unpacks_lo, vec_unpacku_hi): |
473 | (vec_unpacku_lo, vec_widen_umult_hi, vec_widen_umult_lo): | |
89d67cca DN |
474 | (vec_widen_smult_hi, vec_widen_smult_lo): New. |
475 | * doc/c-tree.texi (VEC_LSHIFT_EXPR, VEC_RSHIFT_EXPR): | |
476 | (VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR, VEC_UNPACK_HI_EXPR): | |
477 | (VEC_UNPACK_LO_EXPR, VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New. | |
b8ec3cc8 | 478 | |
89d67cca DN |
479 | * config/rs6000/altivec.md (UNSPEC_VMULWHUB, UNSPEC_VMULWLUB): |
480 | (UNSPEC_VMULWHSB, UNSPEC_VMULWLSB, UNSPEC_VMULWHUH, UNSPEC_VMULWLUH): | |
481 | (UNSPEC_VMULWHSH, UNSPEC_VMULWLSH): New. | |
482 | (UNSPEC_VPERMSI, UNSPEC_VPERMHI): New. | |
483 | (vec_vperm_v8hiv4si, vec_vperm_v16qiv8hi): New patterns used to | |
484 | implement the unsigned unpacking patterns. | |
485 | (vec_unpacks_hi_v16qi, vec_unpacks_hi_v8hi, vec_unpacks_lo_v16qi): | |
486 | (vec_unpacks_lo_v8hi): New signed unpacking patterns. | |
487 | (vec_unpacku_hi_v16qi, vec_unpacku_hi_v8hi, vec_unpacku_lo_v16qi): | |
488 | (vec_unpacku_lo_v8hi): New unsigned unpacking patterns. | |
489 | (vec_widen_umult_hi_v16qi, vec_widen_umult_lo_v16qi): | |
b8ec3cc8 | 490 | (vec_widen_smult_hi_v16qi, vec_widen_smult_lo_v16qi): |
89d67cca DN |
491 | (vec_widen_umult_hi_v8hi, vec_widen_umult_lo_v8hi): |
492 | (vec_widen_smult_hi_v8hi, vec_widen_smult_lo_v8hi): New widening | |
493 | multiplication patterns. | |
494 | ||
495 | * target.h (builtin_mul_widen_even, builtin_mul_widen_odd): New. | |
496 | * target-def.h (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): | |
497 | (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New. | |
498 | * config/rs6000/rs6000.c (rs6000_builtin_mul_widen_even): New. | |
499 | (rs6000_builtin_mul_widen_odd): New. | |
500 | (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): Defined. | |
501 | (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): Defined. | |
502 | * tree-vectorizer.h (enum vect_relevant): New enum type. | |
503 | (_stmt_vec_info): Field relevant chaned from bool to enum | |
504 | vect_relevant. | |
505 | (STMT_VINFO_RELEVANT_P): Updated. | |
506 | (STMT_VINFO_RELEVANT): New. | |
507 | * tree-vectorizer.c (new_stmt_vec_info): Use STMT_VINFO_RELEVANT | |
508 | instead of STMT_VINFO_RELEVANT_P. | |
509 | * tree-vect-analyze.c (vect_mark_relevant, vect_stmt_relevant_p): | |
510 | Replace calls to STMT_VINFO_RELEVANT_P with STMT_VINFO_RELEVANT, | |
511 | and boolean variable with enum vect_relevant. | |
512 | (vect_mark_stmts_to_be_vectorized): Likewise + update documentation. | |
513 | * doc/tm.texi (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_EVEN): New. | |
514 | (TARGET_VECTORIZE_BUILTIN_MUL_WIDEN_ODD): New. | |
515 | ||
516 | 2006-11-08 Richard Henderson <rth@redhat.com> | |
517 | ||
518 | * config/i386/sse.md (vec_widen_umult_hi_v8hi, | |
519 | vec_widen_umult_lo_v8hi): New. | |
520 | (vec_widen_smult_hi_v4si, vec_widen_smult_lo_v4si, | |
521 | vec_widen_umult_hi_v4si, vec_widen_umult_lo_v4si): New. | |
522 | ||
b8ec3cc8 EC |
523 | * config/i386/i386.c (ix86_expand_sse_unpack): New. |
524 | * config/i386/i386-protos.h (ix86_expand_sse_unpack): New. | |
89d67cca DN |
525 | * config/i386/sse.md (vec_unpacku_hi_v16qi, vec_unpacks_hi_v16qi, |
526 | vec_unpacku_lo_v16qi, vec_unpacks_lo_v16qi, vec_unpacku_hi_v8hi, | |
527 | vec_unpacks_hi_v8hi, vec_unpacku_lo_v8hi, vec_unpacks_lo_v8hi, | |
528 | vec_unpacku_hi_v4si, vec_unpacks_hi_v4si, vec_unpacku_lo_v4si, | |
529 | vec_unpacks_lo_v4si): New. | |
530 | ||
531 | 2006-11-08 Dorit Nuzman <dorit@il.ibm.com> | |
532 | ||
533 | * tree-vect-transform.c (vectorizable_type_demotion): New function. | |
534 | (vect_transform_stmt): Add case for type_demotion_vec_info_type. | |
535 | (vect_analyze_operations): Call vectorizable_type_demotion. | |
b8ec3cc8 | 536 | * tree-vectorizer.h (type_demotion_vec_info_type): New enum |
89d67cca DN |
537 | stmt_vec_info_type value. |
538 | (vectorizable_type_demotion): New function declaration. | |
539 | * tree-vect-generic.c (expand_vector_operations_1): Consider correct | |
540 | mode. | |
541 | ||
542 | * tree.def (VEC_PACK_MOD_EXPR, VEC_PACK_SAT_EXPR): New tree-codes. | |
543 | * expr.c (expand_expr_real_1): Add case for VEC_PACK_MOD_EXPR and | |
544 | VEC_PACK_SAT_EXPR. | |
545 | * tree-iniline.c (estimate_num_insns_1): Likewise. | |
546 | * tree-pretty-print.c (dump_generic_node, op_prio): Likewise. | |
547 | * optabs.c (optab_for_tree_code): Likewise. | |
548 | ||
b8ec3cc8 EC |
549 | * optabs.c (expand_binop): In case of vec_pack_*_optabs the mode |
550 | compared against the predicate of the result is not 'mode' (the input | |
89d67cca DN |
551 | to the function) but a mode with half the size of 'mode'. |
552 | (init_optab): Initialize new optabs. | |
553 | * optabs.h (OTI_vec_pack_mod, OTI_vec_pack_ssat, OTI_vec_pack_usat): | |
554 | New optab indices. | |
555 | (vec_pack_mod_optab, vec_pack_ssat_optab, vec_pack_usat_optab): New | |
556 | optabs. | |
557 | * genopinit.c (vec_pack_mod_optab, vec_pack_ssat_optab): | |
558 | (vec_pack_usat_optab): Initialize new optabs. | |
559 | * doc/md.texi (vec_pack_mod, vec_pack_ssat, vec_pack_usat): New. | |
560 | * config/rs6000/altivec.md (vec_pack_mod_v8hi, vec_pack_mod_v4si): New. | |
561 | ||
562 | 2006-11-08 Richard Henderson <rth@redehat.com> | |
563 | ||
564 | * config/i386/sse.md (vec_pack_mod_v8hi, vec_pack_mod_v4si): | |
565 | (vec_pack_mod_v2di, vec_interleave_highv16qi, vec_interleave_lowv16qi): | |
566 | (vec_interleave_highv8hi, vec_interleave_lowv8hi): | |
567 | (vec_interleave_highv4si, vec_interleave_lowv4si): | |
568 | (vec_interleave_highv2di, vec_interleave_lowv2di): New. | |
569 | ||
570 | 2006-11-08 Dorit Nuzman <dorit@il.ibm.com> | |
571 | ||
b8ec3cc8 | 572 | * tree-vect-transform.c (vectorizable_reduction): Support multiple |
89d67cca DN |
573 | datatypes. |
574 | (vect_transform_stmt): Removed redundant code. | |
575 | ||
576 | 2006-11-08 Dorit Nuzman <dorit@il.ibm.com> | |
577 | ||
b8ec3cc8 | 578 | * tree-vect-transform.c (vectorizable_operation): Support multiple |
89d67cca DN |
579 | datatypes. |
580 | ||
581 | 2006-11-08 Dorit Nuzman <dorit@il.ibm.com> | |
582 | ||
583 | * tree-vect-transform.c (vect_align_data_ref): Removed. | |
b8ec3cc8 | 584 | (vect_create_data_ref_ptr): Added additional argument - ptr_incr. |
89d67cca DN |
585 | Updated function documentation. Return the increment stmt in ptr_incr. |
586 | (bump_vector_ptr): New function. | |
587 | (vect_get_vec_def_for_stmt_copy): New function. | |
588 | (vect_finish_stmt_generation): Create a stmt_info to newly created | |
589 | vector stmts. | |
590 | (vect_setup_realignment): Call vect_create_data_ref_ptr with additional | |
591 | argument. | |
592 | (vectorizable_reduction, vectorizable_assignment): Not supported yet if | |
593 | VF is greater than the number of elements that can fit in one vector | |
594 | word. | |
595 | (vectorizable_operation, vectorizable_condition): Likewise. | |
596 | (vectorizable_store, vectorizable_load): Support the case that the VF | |
597 | is greater than the number of elements that can fit in one vector word. | |
598 | (vect_transform_loop): Don't fail in case of multiple data-types. | |
b8ec3cc8 | 599 | * tree-vect-analyze.c (vect_determine_vectorization_factor): Don't fail |
89d67cca DN |
600 | in case of multiple data-types; the smallest type determines the VF. |
601 | (vect_analyze_data_ref_dependence): Don't record datarefs as same_align | |
602 | if they are of different sizes. | |
603 | (vect_update_misalignment_for_peel): Compare misalignments in terms of | |
604 | number of elements rather than number of bytes. | |
605 | (vect_enhance_data_refs_alignment): Fix/Add dump printouts. | |
606 | (vect_can_advance_ivs_p): Fix a dump printout | |
607 | ||
6300f037 EC |
608 | 2006-11-07 Eric Christopher <echristo@apple.com> |
609 | ||
610 | * libgcc2.c (__bswapdi2): Rename from bswapDI2. | |
611 | (__bswapsi2): Ditto. | |
612 | * libgcc2.h: Remove transformation of bswap routines. | |
613 | * config/i386/i386.md (bswapsi2): New. | |
614 | (bswapdi2): Ditto. | |
615 | ||
4eb7fd83 JJ |
616 | 2006-11-07 Jakub Jelinek <jakub@redhat.com> |
617 | ||
618 | * c-common.c (c_common_attributes): Add gnu_inline attribyte. | |
619 | (handle_gnu_inline_attribute): New function. | |
620 | * c-decl.c (diagnose_mismatched_decls): Handle gnu_inline attribute. | |
621 | (merge_decls, start_decl, start_function): Likewise. | |
622 | * doc/extend.texi: Document gnu_inline attribute. | |
623 | ||
a7f02c2d SE |
624 | 2006-11-07 Steve Ellcey <sje@cup.hp.com> |
625 | ||
626 | PR other/25028 | |
627 | * config/ia64/t-hpux (LIB1ASMFUNCS): Filter out _fixtfdi, | |
628 | _fixunstfdi, and _floatditf | |
629 | ||
120b24f7 AS |
630 | 2006-11-06 Anatoly Sokolov <aesok@post.ru> |
631 | ||
6300f037 | 632 | * config/avr/avr-protos.h (mask_one_bit_p, const_int_pow2_p): Remove |
120b24f7 AS |
633 | prototype. |
634 | * config/avr/avr.c (mask_one_bit_p, const_int_pow2_p): Remove. | |
635 | (output_movhi, ashlhi3_out, ashlsi3_out, ashrhi3_out, ashrsi3_out, | |
636 | lshrhi3_out, lshrsi3_out): Remove unnecessary code for handling value | |
637 | which start in an odd register. | |
638 | ||
daca5b05 RS |
639 | 2006-11-07 Richard Sandiford <richard@codesourcery.com> |
640 | ||
641 | * config/mips/mips.h (ISA_HAS_PREFETCHX): Fix typo. | |
642 | ||
d2927bd5 JC |
643 | 2006-11-07 Josh Conner <jconner@apple.com> |
644 | ||
645 | * doc/invoke.texi (fstrict-aliasing): Move implementation | |
646 | details... | |
647 | * doc/tree-ssa.texi (Alias analysis): ...here. | |
648 | ||
285e4952 RG |
649 | 2006-11-07 Richard Guenther <rguenther@suse.de> |
650 | ||
651 | PR tree-optimization/29610 | |
652 | * tree-cfgcleanup.c (cleanup_control_flow): Honor return value | |
653 | of tree_purge_dead_eh_edges as it may free dominators. | |
654 | ||
655 | * g++.dg/other/pr29610.C: New testcase. | |
656 | ||
d81ecf52 DU |
657 | 2006-11-07 David Ung <davidu@mips.com> |
658 | ||
659 | * config/mips/mips.c (mips_rtx_cost_optimize_size): New table of | |
660 | costs when optimizing for size. | |
661 | (override_options): Use mips_rtx_cost_optimize_size table for cost | |
662 | calculations. | |
663 | ||
010b2043 JZ |
664 | 2006-11-07 Jie Zhang <jie.zhang@analog.com> |
665 | ||
666 | * gcc.c (process_command): Treat -b as normal switch if its argument | |
667 | has no dash. | |
6300f037 | 668 | |
5ab72741 | 669 | 2006-11-07 David Ung <davidu@mips.com> |
6300f037 | 670 | |
5ab72741 DU |
671 | * config/mips/mips.h (ISA_HAS_PREFETCHX): Add ISA_MIPS32R2 to the |
672 | list. | |
673 | ||
9519e677 EC |
674 | 2006-11-06 Eric Christopher <echristo@apple.com> |
675 | ||
676 | * config.gcc: Add x86_64-darwin host support. | |
677 | * config.host: Ditto. | |
678 | * config/i386/darwin64.h: New file. | |
679 | * config/i386/t-darwin64: Ditto. | |
680 | ||
d6682e21 JJ |
681 | 2006-11-06 Janis Johnson <janis187@us.ibm.com> |
682 | ||
683 | * gcc/doc/sourcebuild.texi (Test Directives): Add output-exists | |
684 | and output-exists-not. | |
685 | ||
3ea0e1e4 AP |
686 | 2006-11-06 Andrew Pinski <andrew_pinski@playstation.sony.com> |
687 | ||
688 | PR tree-opt/29439 | |
689 | * tree-vrp.c (vrp_int_const_binop): Use the correct tree when | |
690 | checking for overflow. | |
691 | ||
5f60e48f JD |
692 | 2006-11-06 Jan van Dijk <jan@etpmod.phys.tue.nl> |
693 | ||
694 | * configure.ac: Fixed typo in case statement: :: changed to ;; | |
695 | ||
09fa8841 BW |
696 | 2006-11-06 Bob Wilson <bob.wilson@acm.org> |
697 | ||
698 | * longlong.h (__xtensa__): Add definitions for umul_ppmm, __umulsidi3, | |
699 | count_leading_zeros, and count_trailing_zeros. | |
700 | * config/xtensa/xtensa.c (TARGET_INIT_BUILTINS): Define. | |
701 | (TARGET_FOLD_BUILTIN): Define. | |
702 | (TARGET_EXPAND_BUILTIN): Define. | |
703 | (xtensa_init_builtins): New. | |
704 | (xtensa_fold_builtin): New. | |
705 | (xtensa_expand_builtin): New. | |
706 | (xtensa_rtx_costs): Add CTZ and CLZ. Adjust costs for MULT. | |
707 | * config/xtensa/xtensa.h (TARGET_MUL32_HIGH): Define. | |
708 | (CLZ_DEFINED_VALUE_AT_ZERO): Define. | |
709 | (CTZ_DEFINED_VALUE_AT_ZERO): Define. | |
710 | * config/xtensa/xtensa.md (UNSPEC_NSAU): Remove. | |
711 | (any_extend): New code macro. | |
712 | (u, su): New code attributes. | |
713 | (<u>mulsidi3, <u>mulsi3_highpart, clzsi2, ctzsi2): New. | |
714 | (nsau): Remove; replaced by clzsi2. | |
715 | (ffssi2): Use clzsi2. | |
716 | * config/xtensa/t-xtensa (LIB1ASMFUNCS): Add _umulsidi3, | |
717 | _clzsi2, _ctzsi2, and _ffssi2. Rename _nsau to _clz. | |
718 | * config/xtensa/lib1funcs.asm (__mulsi3): Support Mul32 option. | |
719 | (__umulsidi3, __clzsi2, __ctzsi2, __ffssi2): New. | |
720 | (__nsau_data): Guard with ifdef L_clz instead of L_nsau. | |
721 | ||
8f75f389 VP |
722 | 2006-11-06 Vladimir Prus <vladimir@codesourcery.com> |
723 | ||
724 | * config/arm/t-strongarm-pe: (TARGET_LIBGCC2_CFLAGS): Do no | |
725 | set inhibit_libc. | |
726 | * config/arm/t-strongarm-elf: Likewise. | |
727 | * config/arm/t-pe: Likewise. | |
728 | * config/arm/t-arm-elf: Likewise. | |
729 | * config/arm/t-xscale-elf: Likewise. | |
730 | * config/arm/t-arm-coff: Likewise. | |
731 | * config/arm/t-xscale-coff: Likewise. | |
732 | * config/arm/t-wince-pe: Likewise. | |
9519e677 | 733 | |
7945be3f KK |
734 | 2006-11-05 Kaz Kojima <kkojima@gcc.gnu.org> |
735 | ||
736 | * config/sh/lib1funcs-4-300.asm: Guard entire file with | |
737 | #if !__SHMEDIA__ . | |
738 | ||
789e604d JJ |
739 | 2006-11-05 Jakub Jelinek <jakub@redhat.com> |
740 | ||
741 | PR middle-end/29695 | |
742 | * fold-const.c (fold_ternary): Fix A < 0 ? <sign bit of A> : 0 | |
743 | simplification. | |
744 | ||
2e1f15bd UB |
745 | 2006-11-04 Uros Bizjak <ubizjak@gmail.com> |
746 | ||
747 | PR target/26915 | |
748 | * config/i386/i386.c (standard_80387_constant_p): Treat -0.0 and -1.0 | |
749 | as a valid 80387 constant. | |
750 | (standard_80387_constant_opcode): Return "#" for -0.0 and -1.0. | |
751 | * config/i386/i386.md (unnamed splitter): Split the load of | |
752 | constant -0.0 or -1.0 into the load of 0.0 or 1.0, followed | |
753 | by negation. | |
754 | ||
c5289e45 RE |
755 | 2006-11-04 Richard Earnshaw <rearnsha@arm.com> |
756 | ||
757 | * arm.c (thumb_legitimate_addres_p): Allow any constant offset | |
758 | from the soft-frame, argument and virtual registers. | |
759 | ||
50d0a899 UB |
760 | 2006-11-04 Uros Bizjak <ubizjak@gmail.com> |
761 | ||
762 | * config/i386/i386.md (*movxf_nointeger, *movxf_integer): Enable | |
763 | patterns for standard 80387 constants. | |
764 | ||
a52b023a | 765 | 2006-11-03 Paolo Bonzini <bonzini@gnu.org> |
50d0a899 UB |
766 | Steven Bosscher <steven@gcc.gnu.org> |
767 | ||
768 | * fwprop.c: New file. | |
769 | * Makefile.in: Add fwprop.o. | |
770 | * tree-pass.h (pass_rtl_fwprop, pass_rtl_fwprop_with_addr): New. | |
771 | * passes.c (init_optimization_passes): Schedule forward propagation. | |
772 | * rtlanal.c (loc_mentioned_in_p): Support NULL value of the second | |
773 | parameter. | |
774 | * timevar.def (TV_FWPROP): New. | |
775 | * common.opt (-fforward-propagate): New. | |
776 | * opts.c (decode_options): Enable forward propagation at -O2. | |
777 | * gcse.c (one_cprop_pass): Do not run local cprop unless touching jumps. | |
778 | * cse.c (fold_rtx_subreg, fold_rtx_mem, fold_rtx_mem_1, find_best_addr, | |
779 | canon_for_address, table_size): Remove. | |
780 | (new_basic_block, insert, remove_from_table): Remove references to | |
781 | table_size. | |
782 | (fold_rtx): Process SUBREGs and MEMs with equiv_constant, make | |
783 | simplification loop more straightforward by not calling fold_rtx | |
784 | recursively. | |
785 | (equiv_constant): Move here a small part of fold_rtx_subreg, | |
786 | do not call fold_rtx. Call avoid_constant_pool_reference | |
787 | to process MEMs. | |
788 | * recog.h (canonicalize_change_group): New. | |
789 | ||
790 | * doc/invoke.texi (Optimization Options): Document fwprop. | |
791 | * doc/passes.texi (RTL passes): Document fwprop. | |
a52b023a | 792 | |
c7cc12b0 GK |
793 | 2006-11-03 Geoffrey Keating <geoffk@apple.com> |
794 | ||
795 | * c-decl.c (WANT_C99_INLINE_SEMANTICS): New, set to 1. | |
796 | (merge_decls): Implement WANT_C99_INLINE_SEMANTICS. | |
797 | (grokdeclarator): Likewise. | |
798 | ||
52bca999 SB |
799 | 2006-11-03 Steven Bosscher <steven@gcc.gnu.org> |
800 | ||
801 | * tree-dump.c (dump_enable_all): Rename local variable | |
802 | ir_type to avoid name conflicts. | |
803 | * cfgloopmanip.c (lv_adjust_loop_entry_edge): Check for IR_GIMPLE | |
804 | instead of using ir_type(). | |
805 | * profile.c (tree_register_profile_hooks): Likewise. | |
806 | * value-prof.c (tree_register_value_prof_hooks): Likewise. | |
807 | * basic-block.h (struct edge_def): Likewise. | |
808 | * config/arm/arm.c (legitimize_pic_address): Likewise. | |
809 | * coretypes.h (ir_type): New enum of all intermediate languages | |
810 | used in GCC. | |
811 | * cfghooks.c (ir_type): Rename to... | |
812 | (current_ir_type): ...this. Distinguish between cfgrtl and | |
813 | cfglayout mode when the current IR is RTL. Return enum ir_type. | |
814 | * cfghooks.h (ir_type): Replace with current_ir_type prototype. | |
815 | ||
6c6aa1af PB |
816 | 2006-11-03 Paul Brook <paul@codesourcery.com> |
817 | ||
6c6aa1af PB |
818 | * config/arm/arm.c (arm_file_start): New function. |
819 | (TARGET_ASM_FILE_START): Define. | |
820 | (arm_default_cpu): New variable. | |
821 | (arm_override_options): Set arm_default_cpu. | |
822 | ||
88c22d09 | 823 | 2006-11-03 David Ung <davidu@mips.com> |
9519e677 | 824 | |
a55808a7 DU |
825 | * config/mips/mips.h (processor_type): Removed PROCESSOR_24K, add |
826 | PROCESSOR_24KC and PROCESSOR_24KF. | |
827 | * config/mips/mips.c (mips_cpu_info_table): Add processor names | |
828 | and aliases for 4kec/4kem/4kep/24kec/24kef/24kex/34kc/34kf/34kx. | |
829 | (mips_rtx_cost_data): Add costs for the 24kc. | |
830 | * config/mips/mips.md ("cpu"): Remove 24k, add 24kc and 24kf. | |
831 | * config/mips/24k.md: Remove references to 24k and replace with | |
832 | uses of 24kc/24kf in the appropriate reservations. | |
9519e677 EC |
833 | * doc/invoke.texi (MIPS Options): Updated. |
834 | ||
78d310c2 R |
835 | 2006-11-03 J"orn Rennecke <joern.rennecke@st.com> |
836 | ||
837 | * config/sh/crt1.asm: Fix #ifdef indent. | |
838 | ||
839 | 2006-11-03 J"orn Rennecke <joern.rennecke@st.com> | |
840 | Merged from STMicroelectronics sources: | |
841 | 2006-10-06 Andrew Stubbs <andrew.stubbs@st.com> | |
842 | * config/sh/crt1.asm (vbr_600): Add missing #if. | |
843 | 2006-08-03 J"orn Rennecke <joern.rennecke@st.com> | |
844 | * sh.opt (mfused-madd): New option. | |
845 | * sh.md (mac_media, macsf3): Make conditional on TARGET_FMAC. | |
846 | 2006-07-04 Andrew Stubbs <andrew.stubbs@st.com> | |
847 | * config/sh/crt1.asm (vbr_start): Move to new section .test.vbr. | |
848 | Remove pointless handler at VBR+0. | |
849 | (vbr_200, vbr_300, vbr_500): Remove pointless handler. | |
850 | (vbr_600): Save and restore mach and macl, fpul and fpscr and fr0 to | |
851 | fr7. Make sure the timer handler is called with the correct FPU | |
852 | precision setting, according to the ABI. | |
853 | 2006-06-14 J"orn Rennecke <joern.rennecke@st.com> | |
854 | * config/sh/sh.opt (m2a-single, m2a-single-only): Fix Condition. | |
855 | * config/sh/sh.h (SUPPORT_SH2A_NOFPU): Fix condition. | |
856 | (SUPPORT_SH2A_SINGLE_ONLY, SUPPORT_SH2A_SINGLE_ONLY): Likewise. | |
857 | 2006-06-09 J"orn Rennecke <joern.rennecke@st.com> | |
858 | * sh.md (cmpgeusi_t): Change into define_insn_and_split. Accept | |
859 | zero as second operand. | |
860 | 2006-04-28 J"orn Rennecke <joern.rennecke@st.com> | |
861 | * config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm: | |
862 | Fixed some bugs related to negative values, in particular -0 | |
863 | and overflow at -0x80000000. | |
864 | * config/sh/divcost-analysis: Added sh4-300 figures. | |
865 | 2006-04-27 J"orn Rennecke <joern.rennecke@st.com> | |
866 | * config/sh/t-sh (MULTILIB_MATCHES): Add -m4-300* / -m4-340 options. | |
867 | 2006-04-26 J"orn Rennecke <joern.rennecke@st.com> | |
868 | * config/sh/t-sh (OPT_EXTRA_PARTS): Add libgcc-4-300.a. | |
869 | ($(T)div_table-4-300.o, $(T)libgcc-4-300.a): New rules. | |
870 | * config/sh/divtab-sh4-300.c, config/sh/lib1funcs-4-300.asm: | |
871 | New files. | |
872 | * config/sh/embed-elf.h (LIBGCC_SPEC): Use -lgcc-4-300 for -m4-300* / | |
873 | -m4-340. | |
874 | 2006-04-24 J"orn Rennecke <joern.rennecke@st.com> | |
875 | SH4-300 scheduling description & fixes to SH4-[12]00 description: | |
876 | * sh.md: New instruction types: fstore, movi8, fpscr_toggle, gp_mac, | |
877 | mac_mem, mem_mac, dfp_mul, fp_cmp. | |
878 | (insn_class, dfp_comp, any_fp_comp): Update. | |
879 | (push_fpul, movsf_ie, fpu_switch, toggle_sz, toggle_pr): Update type. | |
880 | (cmpgtsf_t, "cmpeqsf_t, cmpgtsf_t_i4, cmpeqsf_t_i4): Likewise. | |
881 | (muldf3_i): Likewise. | |
882 | (movsi_i): Split rI08 alternative into two separate alternatives. | |
883 | Update type. | |
884 | (movsi_ie, movsi_i_lowpart): Likewise. | |
885 | (movqi_i): Split ri alternative into two separate alternatives. | |
886 | Update type. | |
887 | * sh1.md (sh1_load_store, sh1_fp): Update. | |
888 | * sh4.md (sh4_store, sh4_mac_gp, fp_arith, fp_double_arith): Update. | |
889 | (mac_mem, sh4_fpscr_toggle): New insn_reservations. | |
890 | * sh4a.md (sh4a_mov, sh4a_load, sh4a_store, sh4a_fp_arith): Update. | |
891 | (sh4a_fp_double_arith): Likewise. | |
892 | * sh4-300.md: New file. | |
893 | * sh.c (sh_handle_option): Handle m4-300* options. | |
894 | (sh_adjust_cost): Fix latency of auto-increments. | |
895 | Handle SH4-300 differently than other SH4s. Check for new insn types. | |
896 | * sh.h (OVERRIDE_OPTIONS): Initilize sh_branch_cost if it has not | |
897 | been set by an option. | |
898 | * sh.opt (m4-300, m4-100-nofpu, m4-200-nofpu): New options. | |
899 | (m4-300-nofpu, -m4-340, m4-300-single, m4-300-single-only): Likewise. | |
900 | (mbranch-cost=): Likewise. | |
901 | * superh.h (STARTFILE_SPEC): Take -m4-340 into account. | |
902 | ||
903 | * sh.md (mulsf3): Remove special expansion code. | |
904 | (mulsf3_ie): Now a define_insn_and_split. | |
905 | (macsf3): Allow for TARGET_SH4. | |
906 | ||
907 | * sh.md (cbranchsi4, cbranchdi4, cbranchdi4_i): New patterns. | |
908 | * sh.c (prepare_cbranch_operands, expand_cbranchsi4): New functions. | |
909 | (expand_cbranchdi4): Likewise. | |
910 | (sh_rtx_costs): Give lower cost for certain CONST_INT values and for | |
911 | CONST_DOUBLE if the outer code is COMPARE. | |
912 | * sh.h (OPTIMIZATION_OPTIONS): If not optimizing for size, set | |
913 | TARGET_CBRANCHDI4 and TARGET_EXPAND_CBRANCHDI4. | |
914 | (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, clear TARGET_CBRANCHDI4. | |
915 | (LEGITIMATE_CONSTANT_P): Also allow DImode and VOIDmode CONST_DOUBLEs. | |
916 | Remove redundant fp_{zero,one}_operand checks. | |
917 | * sh.opt (mcbranchdi, mexpand-cbranchdi, mcmpeqdi): New options. | |
918 | * sh-protos.h (prepare_cbranch_operands, expand_cbranchsi4): Declare. | |
919 | (expand_cbranchdi4): Likewise. | |
920 | 2006-04-20 J"orn Rennecke <joern.rennecke@st.com> | |
921 | * sh.h (LOCAL_ALIGNMENT): Use DATA_ALIGNMENT. | |
922 | ||
a8a51a97 AP |
923 | 2006-11-02 Andrew Pinski <andrew_pinski@playstation.sony.com> |
924 | ||
925 | * doc/md.texi (RS6000 constraints): Document H, Z, a, t, and W | |
926 | constraints. | |
927 | ||
90150441 BM |
928 | 2006-11-02 Brooks Moses <brooks.moses@codesourcery.com> |
929 | ||
930 | * doc/invoke.texi: Fix mfp-trap-mode typo. | |
931 | ||
978e411f CD |
932 | 2006-11-02 Carlos O'Donell <carlos@codesourcery.com> |
933 | ||
934 | * config/arm/linux-elf.h (NEED_INDICATE_EXEC_STACK): Define as 1. | |
9519e677 EC |
935 | * arm.c (arm_file_end): If NEED_INDICATE_EXEC_STACK call |
936 | file_end_indicate_exec_stack. | |
937 | * arm.h [!NEED_INDICATE_EXEC_STACK] (NEED_INIDCATE_EXEC_STACK): | |
978e411f CD |
938 | Define as 0. |
939 | * lib1funcs.asm [__ELF__ && __linux__]: Emit .note.GNU-stack section | |
940 | for a non-executable stack. | |
941 | * crti.asm: Likewise. | |
942 | * crtn.asm: Likewise. | |
9519e677 | 943 | * libunwind.S: Likewise. |
978e411f | 944 | |
50f606a6 BE |
945 | 2006-11-02 Ben Elliston <bje@au.ibm.com> |
946 | ||
947 | * tree-ssa.c (warn_uninit): Use expand_location variables for | |
948 | locus and declaration locus. | |
949 | ||
537426e7 KK |
950 | 2006-11-02 Kaz Kojima <kkojima@gcc.gnu.org> |
951 | ||
952 | PR target/27405 | |
953 | * config/sh/sh.md (cmp{eq,gt,gtu}{si,di}_media): Remove. | |
954 | (cmpsi{eq,gt,gtu}{si,di}_media): Rename to | |
955 | cmp{eq,gt,gtu}{si,di}_media. | |
956 | (*cmpne0si_media): Remove. | |
957 | (*movsicc_umin): Adjust gen_cmp*_media call. | |
958 | (unordered): Change the mode of unordered and operands[1] to | |
959 | SImode. | |
960 | (seq): Adjust gen_cmp*_media calls. Make the mode of | |
961 | a temporary result of compare SImode if needed. If the mode | |
962 | of operands[0] is DImode, extend the temporary result to DImode. | |
963 | (slt, sle, sgt, sge, sgtu, sltu, sleu, sgue, sne): Likewise. | |
964 | (sunorderd): Change the mode of match_operand and unorderd to | |
965 | SImode. | |
966 | (cmpeq{sf,df}_media): Remove. | |
967 | (cmpsieq{sf,df}_media): Rename to cmpeq{sf,df}_media. | |
968 | (cmp{gt,ge,un}{sf,df}_media): Change the mode of match_operand | |
969 | and compare operation to SImode. | |
970 | ||
b3c9881c EB |
971 | 2006-11-02 Eric Botcazou <ebotcazou@libertysurf.fr> |
972 | ||
973 | * doc/install.texi (sparc-sun-solaris2*): Update GMP/MPFR build | |
974 | instructions. | |
975 | (sparc64-sun-solaris2*): Likewise. | |
976 | ||
50603eed PB |
977 | 2006-11-02 Paul Brook <paul@codesourcery.com> |
978 | ||
50603eed PB |
979 | * config/arm/arm.c (arm_elf_asm_constructor): Remove ATTRIBUTE_UNUSED |
980 | from priority argument. Use different section for non-default | |
981 | priority. | |
982 | * config/arm/elf.h: Remove definition of SUPPORTS_INIT_PRIORITY. | |
983 | ||
55fc9e87 EB |
984 | 2006-11-02 Eric Botcazou <ebotcazou@adacore.com> |
985 | ||
986 | PR other/29639 | |
987 | * except.c (switch_to_exception_section): Do not cache the section | |
988 | if named sections are supported and HAVE_LD_EH_GC_SECTIONS is defined | |
989 | and flag_function_sections is set. | |
990 | ||
b68bcfff KG |
991 | 2006-11-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
992 | ||
993 | PR middle-end/29335 | |
994 | * builtins.c (do_mpfr_sincos): New. | |
995 | (fold_builtin_1): Use it to fold builtin sincos. | |
996 | ||
1d07712d RS |
997 | 2006-11-01 Roger Sayle <roger@eyesopen.com> |
998 | ||
999 | * config/darwin.h (CPP_SPEC): Handle -pthread, transforming | |
1000 | it into -D_REENTRANT. | |
1001 | ||
68b92f78 RS |
1002 | 2006-11-01 Roger Sayle <roger@eyesopen.com> |
1003 | ||
1004 | * configure.ac (HAVE_AS_IX86_DIFF_SECT_DELTA): New test to determine | |
1005 | whether the assembler supports taking the difference of symbols in | |
1006 | different sections. On x86/Solaris, GAS does but Solaris as doesn't. | |
1007 | * configure: Regenerate. | |
1008 | * config.in: Regenerate. | |
1009 | * config/i386/sol2-10.h (JUMP_TABLES_IN_TEXT_SECTION): Define if | |
1010 | the assembler doesn't support taking the difference of symbols in | |
1011 | different sections, i.e. we're using the native solaris assembler. | |
1012 | ||
44cd321e PS |
1013 | 2006-11-01 Pete Steinmetz <steinmtz@us.ibm.com> |
1014 | Peter Bergner <bergner@vnet.ibm.com> | |
1015 | ||
1016 | * doc/invoke.texi: Add cpu_type power6x | |
1017 | (RS/6000 and PowerPC Options): Add -mmfpgpr. | |
1018 | * config.gcc: Add cpu_type power6x. | |
1019 | * configure.ac: Add test for mf{t,f}gpr instructions. | |
1020 | (HAVE_AS_MFPGPR): New. | |
1021 | * config.in: Regenerate. | |
1022 | * configure: Regenerate. | |
1023 | * config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6x. | |
1024 | * config/rs6000/rs6000.md (define_attr "type"): Add insert_dword, | |
1025 | shift,trap,var_shift_rotate,cntlz,exts, var_delayed_compare, mffgpr | |
1026 | and mftgpr attributes. | |
1027 | (define_attr "cpu"): Add power6. | |
1028 | Change instruction sequences to use new attributes. | |
1029 | (floatsidf2,fix_truncdfsi2): use TARGET_MFPGPR. | |
1030 | (fix_truncdfsi2_mfpgpr): New. | |
1031 | (floatsidf_ppc64_mfpgpr): New. | |
1032 | (floatsidf_ppc64): Added !TARGET_MFPGPR condition. | |
1033 | (movdf_hardfloat64_mfpgpr,movdi_mfpgpr): New. | |
1034 | (movdf_hardfloat64): Added !TARGET_MFPGPR condition. | |
1035 | (movdi_internal64): Added !TARGET_MFPGPR and related conditions. | |
1036 | (fix_truncdfsi2): Use gpc_reg_operand constraint. | |
1037 | * config/rs6000/{6xx.md,power4.md,8540.md,603.md,mpc.md, | |
1038 | 7xx.md,rios2.md,7450.md,440.md,rios1.md,rs64.md,power5.md,40x.md}: | |
1039 | Add descriptions for insert_dword, shift,trap,var_shift_rotate, | |
1040 | cntlz,exts and var_delayed_compare. | |
1041 | * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define | |
1042 | _ARCH_PWR6X, if features enabled. | |
1043 | * config/rs6000/rs6000.opt (mmfpgpr): New. | |
1044 | * config/rs6000/rs6000.c (rs6000_align_branch_targets): New variable. | |
1045 | (cached_can_issue_more): New variable. | |
1046 | (processor_costs): Add power6_cost. | |
1047 | (rs6000_sched_init): New function. | |
1048 | (is_dispatch_slot_restricted): Deleted. | |
1049 | (set_to_load_agen): New function. | |
1050 | (is_load_insn,is_store_insn): New functions. | |
1051 | (adjacent_mem_locations): New function. | |
1052 | (insn_must_be_first_in_group): New function. | |
1053 | (insn_must_be_last_in_group): New function. | |
1054 | (rs6000_sched_reorder): New function. | |
1055 | (rs6000_sched_reorder2): New function. | |
1056 | (TARGET_SCHED_INIT,TARGET_SCHED_REORDER, | |
1057 | TARGET_SCHED_REORDER2): Define. | |
1058 | (processor_target_table): Use PROCESSOR_POWER6 for power6. | |
1059 | Add power6x. Add MASK_MFPGPR for power6x. | |
1060 | (POWERPC_MASKS): Add MASK_MFPGPR. | |
1061 | (rs6000_override_options): Set rs6000_always_hint to false | |
1062 | for power6. Set rs6000_align_branch_targets. Replace | |
1063 | rs6000_sched_groups check with rs6000_align_branch_targets. | |
1064 | Use PROCESSOR_POWER6. | |
1065 | (last_scheduled_insn): New variable. | |
1066 | (load_store_pendulum): New variable. | |
1067 | (rs6000_variable_issue): Set last_scheduled_insn and | |
1068 | cached_can_issue_more. | |
1069 | (rs6000_adjust_cost): Add power6 cost adjustments. | |
1070 | (rs6000_adjust_priority): Replace is_dispatch_slot_restricted | |
1071 | with insn_must_be_first_in_group. Add power6 priority adjustments. | |
1072 | (rs6000_issue_rate): Add CPU_POWER6. | |
1073 | (insn_terminates_group_p): Use insn_must_be_{first,last}_in_group. | |
1074 | * config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER6. | |
1075 | (TARGET_MFPGPR): New. | |
1076 | (SECONDARY_MEMORY_NEEDED): Use TARGET_MFPGPR. | |
1077 | (ASM_CPU_SPEC): Add power6x. | |
1078 | (SECONDARY_MEMORY_NEEDED): Added mode!=DFmode and mode!=DImode | |
1079 | conditions. | |
1080 | * config/rs6000/power6.md: New file. | |
1081 | ||
38b97f4d AN |
1082 | 2006-11-01 Adam Nemet <anemet@caviumnetworks.com> |
1083 | ||
1084 | * tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use | |
1085 | HOST_WIDE_INT_PRINT to print high and low parts. Use | |
1086 | HOST_BITS_PER_WIDE_INT for the width of HOST_WIDE_INT. When | |
1087 | printing a hexadecimal number prefix it with 0x. | |
1088 | ||
f03668f6 CJ |
1089 | 2006-11-01 Chris Johns <chris@contemporary.net.au> |
1090 | ||
1091 | PR bootstrap/28400 | |
1092 | * Makefile.in (install-driver): Use exeext when installing | |
1093 | $target-gcc-$version. | |
1094 | ||
5812d1e4 DG |
1095 | 2006-11-01 Douglas Gregor <doug.gregor@gmail.com> |
1096 | ||
1097 | * c-common.c (flag_cpp0x): New. | |
1098 | * c-common.h (flag_cpp0x): New. | |
1099 | * c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are | |
1100 | supported, define __GXX_EXPERIMENTAL_CPP0X__. | |
1101 | * c-opts.c (set_std_cxx0x): New. | |
1102 | (c_common_handle_option): Handle -std=c++0x, -std=gnu++0x. | |
1103 | * c.opt (std=c++0x): Document. | |
1104 | (std=gnu++0x): Ditto. | |
1105 | * doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__. | |
1106 | * doc/invoke.texi: Document -std=c++0x, -std=gnu++0x. | |
1107 | ||
7e35fcb3 RG |
1108 | 2006-11-01 Richard Guenther <rguenther@suse.de> |
1109 | ||
1110 | * config/i386/i386.c (ix86_expand_rint): Fix issues with | |
1111 | signed zeros. | |
1112 | (ix86_expand_floorceildf_32): Likewise. | |
1113 | (ix86_expand_floorceil): Likewise. | |
1114 | (ix86_expand_trunc): Likewise. | |
1115 | ||
4a574196 AP |
1116 | 2006-10-31 Andrew Pinski <pinskia@gmail.com> |
1117 | ||
1118 | * doc/invoke.texi (-fkeep-inline-functions): Change "GNU C" | |
1119 | to "GNU C89". | |
1120 | ||
97388150 DS |
1121 | 2006-11-01 Danny Smith <dannysmith@users.sourceforge.net> |
1122 | ||
1123 | * target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target | |
1124 | hook. | |
1125 | * target-def.h: (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Define | |
1126 | default. | |
1127 | * config/i386/mingw32.h (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): | |
1128 | Override default. | |
1129 | * doc/tm.texi (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Document. | |
1130 | * configure.ac (use_cxa_atexit): As a special case, don't test | |
1131 | for libc definition of __cxa_atexit on mingw32 | |
1132 | * configure: Regenerate. | |
1133 | * config.gcc (i[34567]86-pc-mingw32): Default to | |
1134 | enable__cxa_atexit=yes. | |
1135 | ||
e35ae5fe KG |
1136 | 2006-11-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1137 | ||
1138 | * builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE. | |
1139 | ||
58182de3 GK |
1140 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
1141 | ||
1142 | PR 23067 | |
1143 | * c-decl.c (start_struct): Don't create self-containing | |
1144 | structures. | |
1145 | * config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align): | |
1146 | New. | |
1147 | * config/rs6000/rs6000-protos.h | |
1148 | (darwin_rs6000_special_round_type_align): New. | |
1149 | * config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Rewrite. | |
1150 | (ROUND_TYPE_ALIGN): Use darwin_rs6000_special_round_type_align. | |
1151 | ||
e4305460 GK |
1152 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
1153 | ||
1154 | * toplev.c (compile_file): Call final_write_globals | |
1155 | even if there have been errors. | |
9519e677 | 1156 | |
e4305460 | 1157 | 2006-10-31 Eric Christopher <echristo@apple.com> |
167fa32c EC |
1158 | Falk Hueffner <falk@debian.org> |
1159 | ||
1160 | * doc/extend.texi (__builtin_bswap32): Document. | |
1161 | (__builtin_bswap64): Ditto. | |
1162 | * doc/libgcc.texi (bswapsi2): Document. | |
1163 | (bswapdi2): Ditto. | |
1164 | * doc/rtl.texi (bswap): Document. | |
1165 | * optabs.c (expand_unop): Don't widen a bswap. | |
1166 | (init_optabs): Init bswap. Set libfuncs explicitly | |
1167 | for bswapsi2 and bswapdi2. | |
1168 | * optabs.h (OTI_bswap): New. | |
1169 | (bswap_optab): Ditto. | |
1170 | * genopinit.c (optabs): Handle bswap_optab. | |
1171 | * tree.h (tree_index): Add TI_UINT32_TYPE and | |
1172 | TI_UINT64_TYPE. | |
1173 | (uint32_type_node): New. | |
1174 | (uint64_type_node): Ditto. | |
1175 | * tree.c (build_common_tree_nodes_2): Initialize | |
1176 | uint32_type_node and uint64_type_node. | |
1177 | * builtins.c (expand_builtin_bswap): New. | |
1178 | (expand_builtin): Call. | |
1179 | (fold_builtin_bswap): New. | |
1180 | (fold_builtin_1): Call. | |
1181 | * fold-const.c (tree_expr_nonnegative_p): Return true | |
1182 | for bswap. | |
1183 | * builtin-types.def (BT_UINT32): New. | |
1184 | (BT_UINT64): Ditto. | |
1185 | (BT_FN_UINT32_UINT32): Ditto. | |
1186 | (BT_FN_UINT64_UINT64): Ditto. | |
1187 | * builtins.def (BUILT_IN_BSWAP32): New. | |
1188 | (BUILT_IN_BSWAP64): Ditto. | |
1189 | * rtl.def (BSWAP): New. | |
1190 | * genattrtab.c (check_attr_value): New. | |
1191 | * libgcc2.c (__bswapSI2): New. | |
1192 | (__bswapDI2): Ditto. | |
1193 | * libgcc2.h (__bswapSI2): Declare. | |
1194 | (__bswapDI2): Ditto. | |
1195 | * mklibgcc.in (lib2funcs): Add _bswapsi2 and _bswapdi2. | |
1196 | * simplify-rtx.c (simplify_const_unary_operation): Return | |
1197 | 0 for BSWAP. | |
1198 | * libgcc-std.ver (__bwapsi2): Add. | |
1199 | (__bswapdi2): Ditto. | |
1200 | * reload1.c (eliminate_regs_1): Add bswap. | |
1201 | (elimination_effects): Ditto. | |
1202 | * config/i386/i386.h (x86_bswap): New. | |
1203 | (TARGET_BSWAP): Use. | |
1204 | * config/i386/i386.c (x86_bswap): Set. | |
1205 | ||
5880f14f GK |
1206 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
1207 | ||
1208 | * coverage.c (coverage_checksum_string): Update comment. | |
1209 | * dwarf2out.c (switch_to_eh_frame_section): Update for removal | |
1210 | of get_file_function_name. | |
1211 | * cgraphunit.c (cgraph_build_static_cdtor): Update for rename | |
1212 | of get_file_function_name_long. | |
1213 | * tree.c (get_file_function_name): Rename from | |
1214 | get_file_function_name_long; improve comment; handle 'I' and 'D' | |
1215 | specially when the target has ctor/dtor support; remove special | |
1216 | handling for 'F'. | |
1217 | (get_file_function_name): Remove. | |
1218 | * tree.h (get_file_function_name): Rename from | |
50d0a899 | 1219 | get_file_function_name_long. |
5880f14f GK |
1220 | (get_file_function_name): Remove prototype. |
1221 | ||
4d04fa05 GK |
1222 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
1223 | ||
1224 | * config/i386/darwin.h (PREFERRED_DEBUGGING_TYPE): Remove. | |
1225 | * config/darwin.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG. | |
1226 | ||
1227 | * config/darwin.h (LINK_COMMAND_SPEC): Don't do weird things with -@. | |
1228 | Call dsymutil when compiling and linking one or more source files | |
1229 | in one step. | |
1230 | ||
7eb0a43c GK |
1231 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
1232 | ||
1233 | PR 15834 | |
1234 | * config/darwin.h (NO_IMPLICIT_EXTERN_C): Define. | |
1235 | ||
71113fcd GK |
1236 | 2006-10-31 Geoffrey Keating <geoffk@apple.com> |
1237 | ||
1238 | * c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on | |
1239 | inline static functions in c99 mode. | |
1240 | ||
1241 | PR 16622 | |
1242 | * doc/extend.texi (Inline): Update. | |
1243 | * c-tree.h (struct language_function): Remove field 'extern_inline'. | |
1244 | * c-decl.c (current_extern_inline): Delete. | |
1245 | (pop_scope): Adjust test for an undefined nested function. | |
1246 | Add warning about undeclared inline function. | |
1247 | (diagnose_mismatched_decls): Update comments. Disallow overriding | |
1248 | of inline functions in a translation unit in C99. Allow inline | |
1249 | declarations in C99 at any time. | |
1250 | (merge_decls): Boolize variables. Handle C99 'extern inline' | |
1251 | semantics. | |
1252 | (grokdeclarator): Set DECL_EXTERNAL here for functions. Handle | |
1253 | C99 inline semantics. | |
1254 | (start_function): Don't clear current_extern_inline. Don't set | |
1255 | DECL_EXTERNAL. | |
1256 | (c_push_function_context): Don't push current_extern_inline. | |
1257 | (c_pop_function_context): Don't restore current_extern_inline. | |
1258 | ||
1259 | PR 11377 | |
1260 | * c-typeck.c (build_external_ref): Warn about static variables | |
1261 | used in extern inline functions. | |
1262 | * c-decl.c (start_decl): Warn about static variables declared | |
1263 | in extern inline functions. | |
1264 | ||
682d0395 RS |
1265 | 2006-10-31 Roger Sayle <roger@eyesopen.com> |
1266 | ||
1267 | PR middle-end/23470 | |
1268 | * tree.h (tree_expr_nonnegative_p): Return "bool" instead of "int". | |
1269 | * fold-const.c (tree_expr_nonnegative_p): Likewise. Consider | |
1270 | pow(x,y) and powi(x,y) to be nonnegative if either x is nonnegative | |
1271 | or y is an even integer. | |
1272 | ||
efd6ef80 EB |
1273 | 2006-10-31 Eric Botcazou <ebotcazou@libertysurf.fr> |
1274 | ||
1275 | PR target/24071 | |
1276 | * gthr-posix.h (__gthread_active_p): New implementation on Solaris. | |
1277 | * gthr-posix95.h (__gthread_active_p): Likewise. | |
1278 | ||
1d08f955 RG |
1279 | 2006-10-31 Richard Guenther <rguenther@suse.de> |
1280 | ||
1281 | * config/i386/i386.md (asindf2, asinsf2, asinxf2, acosdf2, | |
1282 | acossf2, acosxf2, log1psf2, log1pdf2, log1pxf2, ilogbsi2, | |
1283 | expsf2, expdf2, expxf2, exp10sf2, exp10df2, exp10xf2, | |
1284 | exp2sf2, exp2df2, exp2xf2, expm1df2, expm1sf2, expm1xf2, | |
1285 | ldexpdf3, ldexpsf3, ldexpxf3, rintxf2, rintdf2, rintsf2, | |
1286 | lround<mode>di2, lround<mode>si2, floorxf2, floordf2, floorsf2, | |
1287 | lfloor<mode>di2, lfloor<mode>si2, ceilxf2, ceildf2, ceilsf2, | |
1288 | btruncxf2, btruncdf2, btruncsf2): Conditionalize expansion on | |
1289 | !optimize_size. | |
1290 | ||
e5c18c3c SB |
1291 | 2006-10-31 Steven Bosscher <steven@gcc.gnu.org> |
1292 | ||
1293 | * opts.c (decode_options): Disable CSE skip blocks. | |
1294 | ||
a1e45ff0 DM |
1295 | 2006-10-30 Dirk Mueller <dmueller@suse.de> |
1296 | ||
1297 | * c-common.h (strict_aliasing_warning): Fix whitespace. | |
1298 | * c-decl (start_function): Move code for main decl warning .. | |
1299 | * c-common.c (check_main_parameter_types): .. here. | |
1300 | * c-common.h (check_main_parameter_types): Declare. | |
50d0a899 | 1301 | |
61fb309f KG |
1302 | 2006-10-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1303 | ||
1304 | PR middle-end/29335 | |
1305 | * builtins.c (fold_builtin_1): Evaluate tgamma using MPFR. | |
1306 | ||
ff81aa23 PS |
1307 | 2006-10-30 Pete Steinmetz <steinmtz@us.ibm.com> |
1308 | ||
1309 | * recog.c (store_data_bypass_p): Add support to allow IN_INSN to | |
1310 | be a PARALLEL containing sets. Return false when out_pat is not | |
1311 | a PARALLEL insn. | |
1312 | ||
e1efef1e RS |
1313 | 2006-10-30 Richard Sandiford <richard@codesourcery.com> |
1314 | ||
1315 | * config/mips/mips.md (mul<mode>3): Split into... | |
1316 | (mulsi3, muldi3): ...these separate patterns. | |
1317 | ||
8ec2ac7b RS |
1318 | 2006-10-30 Richard Sandiford <richard@codesourcery.com> |
1319 | ||
1320 | * config/mips/linux64.h (DRIVER_SELF_SPECS): Use a single spec, | |
1321 | but with each set of options separated by spaces. | |
1322 | ||
7bec3e84 R |
1323 | 2006-10-30 J"orn Rennecke <joern.rennecke@st.com> |
1324 | ||
1325 | * unwind-dw2.c (uw_init_context_1): Fix test that checks if | |
1326 | dwarf_reg_size_table has been initialized. | |
1327 | ||
428aba16 RS |
1328 | 2006-10-30 Roger Sayle <roger@eyesopen.com> |
1329 | ||
1330 | * builtins.c (expand_builtin_mathfn_3): Correct coding style. | |
1331 | * ddg.c (print_ddg_edge): Likewise. | |
1332 | * dwarf2out.c (prune_unused_types_walk): Likewise. | |
1333 | * ifcvt.c (noce_try_cmove_arith): Likewise. | |
1334 | * langhooks.c (add_builtin_function): Likewise. | |
1335 | * reg-stack.c (subst_stack_regs_pat): Likewise. | |
1336 | * tree.c (expanded_location): Likewise. | |
1337 | * tree-dump.c (dequeue_and_dump): Likewise. | |
1338 | ||
aaf0c39c DD |
1339 | 2006-10-30 David Daney <ddaney@avtrex.com> |
1340 | ||
1341 | * config/mips/linux.h (NO_SHARED_SPECS): Correct syntax error. | |
1342 | ||
cc59abbf JJ |
1343 | 2006-10-30 Jakub Jelinek <jakub@redhat.com> |
1344 | ||
1345 | PR tree-optimization/29637 | |
1346 | * tree.c (make_vector_type): Don't recurse if TYPE_MAIN_VARIANT | |
1347 | of the innertype is the innertype itself. | |
1348 | ||
2310f1f8 DS |
1349 | 2006-10-30 Danny Smith <dannysmith@users.sourceforge.net> |
1350 | ||
1351 | * dwarf2out.c (file_name_acquire): Correct typo. | |
1352 | ||
83737db2 DB |
1353 | 2006-10-29 Daniel Berlin <dberlin@dberlin.org> |
1354 | ||
9519e677 | 1355 | * tree.h (tree_value_handle): Remove struct value_set declaration. |
83737db2 DB |
1356 | Change value_set to bitmap_set. |
1357 | * tree-pretty-print.c (dump_generic_node): Use has_stmt_ann. | |
1358 | * tree-vn.c (get_value_handle): Made inline and moved to | |
1359 | tree-flow-inline.h. | |
1360 | * tree-flow-inline.h: (has_stmt_ann): New function. | |
1361 | * tree-ssa-pre.c (expressions): New variable. | |
1362 | (next_expression_id): Ditto. | |
1363 | (alloc_expression_id): New function. | |
1364 | (struct value_set): Remove. | |
1365 | (get_expression_id): New function. | |
1366 | (get_or_alloc_expression_id): Ditto. | |
1367 | (expression_for_id): Ditto. | |
1368 | (clear_expression_ids): Ditto. | |
1369 | (FOR_EACH_EXPR_ID_IN_SET): New macro. | |
1370 | (bb_value_sets): Renamed to bb_bitmap_sets. | |
1371 | All value sets replaced with bitmap_sets. | |
1372 | Add visited member. | |
1373 | (BB_VISITED): New macro. | |
1374 | (postorder): New variable. | |
1375 | (add_to_value): Removed. | |
1376 | (value_exists_in_set_bitmap): Ditto. | |
1377 | (value_insert_into_set_bitmap): Ditto. | |
1378 | (set_new): Ditto. | |
1379 | (set_copy): Ditto. | |
1380 | (set_remove): Ditto. | |
1381 | (set_contains_value): Ditto. | |
1382 | (insert_into_set): Ditto. | |
1383 | (set_equal): Ditto. | |
1384 | (find_leader): Ditto. | |
1385 | (bitmap_set_subtract_from_value_set): Ditto. | |
1386 | (value_insert_into_set): Ditto. | |
1387 | (print_value_set): Ditto. | |
1388 | (debug_value_set): Ditto. | |
1389 | (constant_expr_p): New function. | |
1390 | (bitmap_remove_from_set): Ditto. | |
1391 | (bitmap_insert_into_set): Ditto. | |
1392 | (bitmap_set_free): Ditto. | |
1393 | (vh_compare): Ditto. | |
1394 | (sorted_array_from_bitmap_set): Ditto. | |
1395 | (bitmap_set_subtract): Ditto. | |
1396 | (bitmap_set_equal): Ditto. | |
1397 | (debug_bitmap_set): Ditto. | |
1398 | (find_leader_in_sets): Ditto. | |
1399 | (bitmap_set_replace_value): Modify for bitmapped sets. | |
1400 | (phi_translate): Ditto. | |
1401 | (phi_translate_set): Ditto. | |
1402 | (bitmap_find_leader): Ditto. | |
1403 | (valid_in_sets): Ditto. | |
1404 | (union_contains_value): Ditto. | |
1405 | (clean): Ditto. | |
1406 | (compute_antic_aux): Ditto. Mark changed blocks. | |
1407 | (compute_antic): Ditto. Iterate in postorder and only over | |
1408 | changing blocks. | |
1409 | (compute_rvuse_and_antic_safe): Reuse postorder. | |
1410 | (create_component_ref_by_pieces): Modify for bitmapped sets. | |
1411 | (find_or_generate_expression): Ditto. | |
1412 | (create_expression_by_pieces): Ditto. | |
1413 | (insert_into_preds_of_block): Ditto. | |
1414 | (changed_blocks): New variable. | |
1415 | (do_regular_insertion): Broken out from insert_aux. | |
1416 | (insert_aux): Modified for bitmapped sets. | |
1417 | (find_existing_value_expr): New function. | |
1418 | (create_value_expr_from): Use it. | |
1419 | (insert_extra_phis): Removed. | |
1420 | (print_bitmap_set): Renamed from bitmap_print_value_set. | |
1421 | (compute_avail): Handle RETURN_EXPR. | |
1422 | (init_pre): Modify for bitmapped sets. | |
1423 | * tree-flow.h (has_stmt_ann): New function. | |
9519e677 | 1424 | |
7c73bdc1 RS |
1425 | 2006-10-29 Roger Sayle <roger@eyesopen.com> |
1426 | ||
1427 | * builtins.c (fold_builtin_floor): Check for the availability of | |
1428 | the C99 trunc function before transforming floor into trunc. | |
1429 | ||
012c5368 KG |
1430 | 2006-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1431 | ||
1432 | * builtins.c (fold_builtin_hypot): Rearrange recursive | |
1433 | transformation before others, and also do ABS_EXPR. When | |
1434 | necessary, check flag_unsafe_math_optimizations. When necessary, | |
1435 | add fabs. | |
1436 | ||
c159ffe7 RS |
1437 | 2006-10-29 Roger Sayle <roger@eyesopen.com> |
1438 | ||
1439 | * fold-const.c (fold_comparison): Fold ~X op ~Y as Y op X. | |
1440 | Fold ~X op C as X op' ~C, where op' is the swapped comparison. | |
1441 | (fold_binary): ~X eq/ne C is now handled in fold_comparison. | |
1442 | Fold -X eq/ne -Y as X eq/ne Y. | |
1443 | ||
3f07249e RS |
1444 | 2006-10-29 Richard Sandiford <richard@codesourcery.com> |
1445 | ||
1446 | * config/mips/mips.md (mul<mode>3): Check ISA_HAS_MUL3 rather than | |
1447 | GENERATE_MULT3_<MODE>. Restrict the test to SImode. Use ISA_HAS_MUL3 | |
1448 | rather than GENERATE_MULT3_SI in the various define_peephole2s. | |
1449 | (mulsi3_mult3): Depend on ISA_HAS_MUL3 rather than GENERATE_MULT3_SI. | |
1450 | Use an inclusive test for "mult" rather than "mul". | |
1451 | (rotr<mode>3): Depend on ISA_HAS_ROR. | |
1452 | * config/mips/mips.h (GENERATE_MULT3_SI): Delete in favor of | |
1453 | ISA_HAS_MUL3. | |
1454 | (GENERATE_MULT3_DI): Delete. | |
1455 | (ISA_HAS_64BIT_REGS): Use consistent formatting. | |
1456 | (ISA_HAS_MUL3): New macro. | |
1457 | (ISA_HAS_CONDMOVE, ISA_HAS_8CC): Use consistent formatting. | |
1458 | (ISA_HAS_FP4, ISA_HAS_MADD_MSUB, ISA_HAS_NMADD_NMSUB): Likewise. | |
1459 | (ISA_HAS_CLZ_CLO): Likewise. | |
1460 | (ISA_HAS_DCLZ_DCLO): Delete. | |
1461 | (ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC): Require !TARGET_MIPS16. | |
1462 | (ISA_HAS_MACC): Require !TARGET_MIPS16 for all ISAs, not just | |
1463 | the VR4120 and VR4130. | |
1464 | (ISA_HAS_MACCHI): Use consistent formatting. | |
1465 | (ISA_HAS_ROTR_SI, ISA_HAS_ROTR_DI): Delete in favor of... | |
1466 | (ISA_HAS_ROR): ...this new macro. | |
1467 | (ISA_HAS_PREFETCH, ISA_HAS_PREFETCHX): Use consistent formatting. | |
1468 | (ISA_HAS_SEB_SEH, ISA_HAS_EXT_INS): Likewise. | |
1469 | (ISA_HAS_LOAD_DELAY): Use ISA_MIPS1. | |
1470 | ||
f8ed9a1c RS |
1471 | 2006-10-29 Roger Sayle <roger@eyesopen.com> |
1472 | ||
1473 | PR tree-optimization/15458 | |
1474 | * fold-const.c (fold_binary): Optimize ~X ^ C as X ^ ~C, where C | |
1475 | is a constant. | |
1476 | ||
044928d6 RG |
1477 | 2006-10-29 Richard Guenther <rguenther@suse.de> |
1478 | ||
1479 | * config/i386/i386-protos.h (ix86_expand_trunc): Declare. | |
1480 | (ix86_expand_truncdf_32): Likewise. | |
1481 | * config/i386/i386.c (ix86_expand_trunc): New function expanding | |
1482 | trunc inline for SSE math and -fno-trapping-math and if not | |
1483 | optimizing for size. | |
1484 | (ix86_expand_truncdf_32): Same for DFmode on 32bit archs. | |
1485 | * config/i386/i386.md (btruncsf2, btruncdf2): Adjust expanders | |
1486 | for expanding btrunc inline for SSE math. | |
1487 | ||
0f45f0f5 JM |
1488 | 2006-10-29 Joseph Myers <joseph@codesourcery.com> |
1489 | ||
1490 | * config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all. | |
1491 | Handle tuning for bi-arch i[34567]86-*-linux* like that for | |
1492 | i[34567]86-*-solaris2.1[0-9]*. | |
1493 | * config/i386/linux64.h (TARGET_VERSION, MULTILIB_DEFAULTS): | |
1494 | Define conditionally depending on TARGET_64BIT_DEFAULT. | |
1495 | (SPEC_32, SPEC_64): Define. | |
1496 | (LINK_SPEC): Use them. | |
1497 | * doc/install.texi (--enable-targets=all): Document for x86-linux. | |
1498 | ||
097f2964 RG |
1499 | 2006-10-29 Richard Guenther <rguenther@suse.de> |
1500 | ||
1501 | * config/i386/i386-protos.h (ix86_expand_round): Declare. | |
1502 | (ix86_expand_rounddf_32): Likewise. | |
1503 | * config/i386/i386.c (ix86_expand_round): New function expanding | |
1504 | round inline for SSE math and -fno-trapping-math and if not | |
1505 | optimizing for size. | |
1506 | (ix86_expand_rounddf_32): Same for DFmode on 32bit archs. | |
1507 | * config/i386/i386.md (rounddf2, roundsf2): New pattern expanding | |
1508 | round via ix86_expand_round. | |
1509 | ||
d096ecdd RG |
1510 | 2006-10-29 Richard Guenther <rguenther@suse.de> |
1511 | ||
1512 | * config/i386/i386-protos.h (ix86_expand_floorceil): Declare. | |
1513 | (ix86_expand_floorceildf_32): Likewise. | |
1514 | * config/i386/i386.c (ix86_expand_sse_compare_mask): New | |
1515 | static helper function. | |
1516 | (ix86_expand_floorceil): Expander for floor and ceil to SSE | |
1517 | math. | |
1518 | (ix86_expand_floorceildf_32): Same for DFmode on 32bit archs. | |
1519 | * config/i386/i386.md (floordf2): Adjust to enable floor | |
1520 | expansion via ix86_expand_floorceil if TARGET_SSE_MATH and | |
1521 | -fno-trapping-math is enabled and if not optimizing for size. | |
1522 | (floorsf2, ceildf2, ceilsf2): Likewise. | |
1523 | * config/i386/sse.md (sse_maskcmpsf3): New insn. | |
1524 | (sse2_maskcmpdf3): Likewise. | |
1525 | ||
c7d32ff6 RG |
1526 | 2006-10-29 Richard Guenther <rguenther@suse.de> |
1527 | ||
1528 | * builtins.c (expand_builtin_mathfn): Expand nearbyint as | |
1529 | rint in case -fno-trapping-math is enabled. | |
1530 | * config/i386/i386-protos.h (ix86_expand_rint): Declare. | |
1531 | * config/i386/i386.c (ix86_gen_TWO52): New static helper function. | |
1532 | (ix86_expand_sse_fabs): Likewise. | |
1533 | (ix86_expand_rint): New function expanding rint to x87 or SSE math. | |
1534 | * config/i386/i386.md (rintdf2): Enable for SSE math if | |
1535 | -fno-trapping-math is enabled, use ix86_expand_rint for expansion. | |
1536 | (rintsf2): Likewise. | |
1537 | ||
c3a4177f RG |
1538 | 2006-10-29 Richard Guenther <rguenther@suse.de> |
1539 | ||
1540 | * genopinit.c (optabs): Change lfloor_optab and lceil_optab | |
1541 | to conversion optabs. | |
1542 | * optabs.c (init_optabs): Initialize lfloor_optab and lceil_optab | |
1543 | as conversion optab. | |
1544 | * optabs.h (enum optab_index): Remove OTI_lfloor and OTI_lceil. | |
1545 | (enum convert_optab_index): Add COI_lfloor and COI_lceil. | |
1546 | (lfloor_optab, lceil_optab): Adjust defines. | |
1547 | * builtins.c (expand_builtin_int_roundingfn): Adjust for | |
1548 | lfloor and lceil optabs now being conversion optabs. | |
1549 | * config/i386/i386-protos.h (ix86_expand_lfloorceil): Declare. | |
1550 | * config/i386/i386.c (ix86_expand_sse_compare_and_jump): | |
1551 | New static helper function. | |
1552 | (ix86_expand_lfloorceil): New function to expand lfloor and | |
1553 | lceil inline. | |
1554 | * config/i386/i386.md (lfloor<mode>2): Split into ... | |
1555 | (lfloorxf<mode>2): ... x87 variant | |
1556 | (lfloor<mode>di2, lfloor<mode>si2): ... and SSE variants | |
1557 | using ix86_expand_lfloorceil. | |
1558 | (lceil<mode>2, lceilxf<mode>2, lceil<mode>di2, lceil<mode>si2): | |
1559 | Likewise. | |
1560 | * doc/md.texi (lfloorMN, lceilMN): Document. | |
1561 | ||
4551169f RS |
1562 | 2006-10-29 Richard Sandiford <richard@codesourcery.com> |
1563 | ||
1564 | * configure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE. Test for the | |
1565 | -mno-shared assembler option on mips targets. | |
1566 | * configure, config.in: Regenerate. | |
1567 | * config/mips/linux.h (NO_SHARED_SPECS): New macro. | |
1568 | (DRIVER_SELF_SPECS): Define to NO_SHARED_SPECS if non-empty. | |
1569 | * config/mips/linux64.h (DRIVER_SELF_SPECS): Include NO_SHARED_SPECS. | |
1570 | ||
5f687d19 RS |
1571 | 2006-10-29 Richard Sandiford <richard@codesourcery.com> |
1572 | ||
1573 | * config/mips/mips.c (mips_classify_symbol): Test DECL_WEAK as well | |
1574 | as TREE_PUBLIC when deciding whether to return SYMBOL_GOT_GLOBAL. | |
1575 | ||
3a057207 KH |
1576 | 2006-10-29 Kazu Hirata <kazu@codesourcery.com> |
1577 | ||
1578 | * config/darwin.c, config/darwin.opt, config/ia64/itanium1.md, | |
1579 | config/ia64/itanium2.md, real.c, tree-ssa-structalias.c: Fix | |
1580 | comment typos. | |
1581 | ||
4413d881 KG |
1582 | 2006-10-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1583 | ||
1584 | PR middle-end/29335 | |
1585 | * builtins.c (do_mpfr_arg2, fold_builtin_hypot): New. | |
1586 | (fold_builtin_pow): Evaluate constant arguments at compile-time | |
1587 | using MPFR. | |
1588 | (fold_builtin_1): Handle BUILT_IN_ATAN2 and BUILT_IN_HYPOT. | |
1589 | (do_mpfr_ckconv): New helper function. | |
1590 | (do_mpfr_arg1): Use do_mpfr_ckconv. | |
1591 | (do_mpfr_arg2): New. | |
1592 | ||
5c9ab0a6 AP |
1593 | 2006-10-28 Andrew Pinski <andrew_pinski@playstation.sony.com> |
1594 | ||
1595 | PR tree-opt/29271 | |
1596 | * doc/invoke.texi (-fdump-rtl-sched2) Fix file extension number. | |
1597 | (-fdump-rtl-sched): Rename to .. | |
1598 | (-fdump-rtl-sched1): here. Also fix file extension number. | |
1599 | ||
4e910063 RG |
1600 | 2006-10-28 Richard Guenther <rguenther@suse.de> |
1601 | ||
1602 | * fold-const.c (maybe_canonicalize_comparison): Fix code | |
1603 | to match comment. | |
1604 | ||
fb84c7a0 UB |
1605 | 2006-10-28 Uros Bizjak <uros@kss-loka.si> |
1606 | ||
1607 | * config/i386/i386.h (GENERAL_REGNO_P): Use STACK_POINTER_REGNUM. | |
1608 | (NON_QI_REG_P): Use IN_RANGE. | |
1609 | (REX_INT_REGNO_P): Use IN_RANGE. | |
1610 | (FP_REGNO_P): Use IN_RANGE. | |
1611 | (SSE_REGNO_P): Use IN_RANGE. | |
1612 | (REX_SSE_REGNO_P): Use IN_RANGE. | |
1613 | (MMX_REGNO_P): Use IN_RANGE. | |
1614 | (STACK_REGNO_P): New macro. | |
1615 | (STACK_REG_P): Use STACK_REGNO_P. | |
1616 | (NON_STACK_REG_P): Use STACK_REGNO_P. | |
1617 | (REGNO_OK_FOR_INDEX_P): Use REX_INT_REGNO_P. | |
1618 | (REGNO_OK_FOR_BASE_P): Use GENERAL_REGNO_P. | |
1619 | (REG_OK_FOR_INDEX_NONSTRICT_P): Use REX_INT_REGNO_P. | |
1620 | (REG_OK_FOR_BASE_NONSTRICT_P): Use GENERAL_REGNO_P. | |
1621 | (HARD_REGNO_RENAME_OK): Use !IN_RANGE. | |
1622 | ||
22ba88ef EB |
1623 | 2006-10-28 Eric Botcazou <ebotcazou@adacore.com> |
1624 | ||
1625 | * except.h (output_function_exception_table): Add 'const char*' param. | |
1626 | * except.c (switch_to_exception_section): Add 'const char*' param. | |
1627 | If named sections are supported and HAVE_LD_EH_GC_SECTIONS is defined | |
1628 | and flag_function_sections is set, use a function-specific section. | |
1629 | (output_function_exception_table): Add 'const char*' param. | |
1630 | Adjust call to switch_to_exception_section. | |
1631 | * final.c (rest_of_handle_final): Adjust calls to | |
1632 | output_function_exception_table. | |
1633 | * configure.ac (HAVE_LD_EH_GC_SECTIONS): New check. | |
1634 | * config.in: Regenerate. | |
1635 | * configure: Likewise. | |
1636 | ||
e73dbcae RG |
1637 | 2006-10-28 Richard Guenther <rguenther@suse.de> |
1638 | ||
1639 | PR middle-end/26899 | |
1640 | * fold-const.c (maybe_canonicalize_comparison_1): Helper | |
1641 | for maybe_canonicalize_comparison. | |
1642 | (maybe_canonicalize_comparison): New function for canonicalizing | |
1643 | comparison trees. | |
1644 | (fold_comparison): Call it to canonicalize comparisons with | |
1645 | constants involved. | |
1646 | ||
4d81bf84 RG |
1647 | 2006-10-28 Richard Guenther <rguenther@suse.de> |
1648 | ||
1649 | PR target/28806 | |
1650 | * builtins.c (expand_builtin_int_roundingfn_2): Expand | |
1651 | BUILT_IN_LROUND and BUILT_IN_LLROUND from here. | |
1652 | (expand_builtin): Adjust likewise. | |
1653 | * genopinit.c (optabs[]): Add lround optab. | |
1654 | * optabs.c (init_optabs): Initialize lround_optab. | |
1655 | * optabs.h (enum convert_optab_index): Add COI_lround. | |
1656 | (lround_optab): Define. | |
1657 | * config/i386/i386-protos.h (ix86_expand_lround): Declare. | |
1658 | * config/i386/i386.c (ix86_sse_copysign_to_positive): New | |
1659 | static function. | |
1660 | (ix86_expand_lround): New function. | |
1661 | * config/i386/i386.md (lround<mode>di2, lround<mode>si2): | |
1662 | New expanders. | |
1663 | * doc/md.texi (lroundMN2): Document. | |
1664 | ||
e68d4dd1 UB |
1665 | 2006-10-28 Uros Bizjak <uros@kss-loka.si> |
1666 | ||
1667 | PR target/29377 | |
1668 | * config/h8300/h8300.c (h8300_emit_stack_adjustment): Change "size" | |
1669 | argument to HOST_WIDE_INT. Update function prototype. | |
1670 | (round_frame_size): Change return type to HOST_WIDE_INT. Change | |
1671 | "size" argument to HOST_WIDE_INT. Update function prototype. | |
1672 | ||
87ccbc5c UB |
1673 | 2006-10-28 Uros Bizjak <uros@kss-loka.si> |
1674 | ||
1675 | * config/i386/i386.c (output_387_ffreep): Create output from a | |
1676 | template string for !HAVE_AS_IX86_FFREEP. | |
9519e677 | 1677 | |
62baeb4f EC |
1678 | 2006-10-27 Eric Christopher <echristo@apple.com> |
1679 | ||
1680 | * config/darwin.c: Fix formatting and grammar. | |
1681 | ||
2e929cf3 JH |
1682 | 2006-10-27 Jan Hubicka <jh@suse.cz> |
1683 | ||
1684 | * builtins.c (fold_builtin): Don't generate NOP_EXPR that is going | |
1685 | to be thrown away soon when IGNORE is set. | |
1686 | * tree-ssa-ccp.c (convert_to_gimple_builtin): Add IGNORE argument | |
1687 | indicating when return value shall not be computed. | |
1688 | * gimplify.c (internal_get_tmp_var): Avoid random tree sharing. | |
1689 | ||
cfe1b18f VM |
1690 | 2006-10-27 Vladimir Makarov <vmakarov@redhat.com> |
1691 | ||
1692 | * config/i386/i386.h (TARGET_GEODE): | |
1693 | (TARGET_CPU_CPP_BUILTINS): Add code for geode. | |
1694 | (TARGET_CPU_DEFAULT_geode): New macro. | |
1695 | (TARGET_CPU_DEFAULT_k6, TARGET_CPU_DEFAULT_k6_2, | |
1696 | TARGET_CPU_DEFAULT_k6_3, TARGET_CPU_DEFAULT_athlon, | |
1697 | TARGET_CPU_DEFAULT_athlon_sse, TARGET_CPU_DEFAULT_k8, | |
1698 | TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_prescott, | |
1699 | TARGET_CPU_DEFAULT_nocona, TARGET_CPU_DEFAULT_generic): Increase | |
1700 | the macro values. | |
1701 | (TARGET_CPU_DEFAULT_NAMES): Add geode. | |
1702 | (processor_type): Add PROCESSOR_GEODE. | |
1703 | ||
1704 | * config/i386/i386.md: Include geode.md. | |
1705 | (cpu): Add geode. | |
1706 | ||
1707 | * config/i386/i386.c (geode_cost): New initialized global | |
1708 | variable. | |
1709 | (m_GEODE, m_K6_GEODE): New macros. | |
1710 | (x86_use_leave, x86_push_memory, x86_deep_branch, x86_use_sahf, | |
1711 | x86_use_himode_fiop, x86_promote_QImode, x86_add_esp_4, | |
1712 | x86_add_esp_8, x86_rep_movl_optimal, x86_ext_80387_constants, | |
1713 | x86_schedule): Use m_K6_GEODE instead of m_K6. | |
1714 | (x86_movx, x86_cmove): Set up m_GEODE. | |
1715 | (x86_integer_DFmode_moves): Clear m_GEODE. | |
1716 | (processor_target_table): Add entry for geode. | |
1717 | (processor_alias_table): Ditto. | |
1718 | ||
1719 | * config/i386/geode.md: New file. | |
1720 | ||
1721 | * doc/invoke.texi: Add entry about geode processor. | |
62baeb4f | 1722 | |
95c0fb7a MS |
1723 | 2006-10-27 Mike Stump <mrs@apple.com> |
1724 | ||
1725 | * config/darwin-c.c (darwin_cpp_builtins): Move __STATIC__ and | |
1726 | __DYNAMIC__ from here back to ... | |
1727 | * config/darwin.h (CPP_SPEC): ... here. | |
1728 | ||
ded5f8f4 | 1729 | 2006-10-26 Nathan Froyd <froydnj@codesourcery.com> |
50d0a899 | 1730 | Nathan Sidwell <nathan@codesourcery.com> |
ded5f8f4 NF |
1731 | |
1732 | * ggc-common.c (ggc_min_heapsize_heuristic): Be more conservative | |
1733 | when choosing the minimum heapsize. | |
1734 | ||
6673f90b NF |
1735 | 2006-10-26 Nathan Froyd <froydnj@codesourcery.com> |
1736 | ||
1737 | * gcc/unwind-dw2.h: Move cfa-related variables into | |
1738 | struct frame_state_reg_info to ensure that the CFA is properly | |
1739 | handled when executing DW_CFA_{remember,restore}_state. | |
1740 | * gcc/unwind-dw2.c, gcc/config/alpha/linux-unwind.h, | |
1741 | gcc/config/alpha/vms-unwind.h, gcc/config/s390/tpf-unwind.h | |
1742 | gcc/config/s390/linux-unwind.h, gcc/config/sparc/linux-unwind.h | |
1743 | gcc/config/i386/linux-unwind.h, gcc/config/sh/linux-unwind.h | |
1744 | gcc/config/rs6000/linux-unwind.h, | |
1745 | gcc/config/rs6000/darwin-fallback.c, gcc/config/pa/linux-unwind.h, | |
1746 | gcc/config/pa/hpux-unwind.h, gcc/config/mips/linux-unwind.h: | |
1747 | Modify to use new cfa_* fields. | |
1748 | ||
20f04e65 AK |
1749 | 2006-10-26 Andreas Krebbel <krebbel1@de.ibm.com> |
1750 | ||
1751 | * config/s390/s390.c (s390_init_frame_layout): Check positive | |
1752 | frame_size. | |
1753 | ||
0da67a32 BE |
1754 | 2006-10-26 Ben Elliston <bje@au.ibm.com> |
1755 | ||
1756 | * gimplify.c (get_name): Remove extraneous break. | |
1757 | (gimplify_omp_for): Initialise ret with GS_OK. | |
1758 | ||
6db63df9 SE |
1759 | 2006-10-25 Steve Ellcey <sje@cup.hp.com> |
1760 | ||
1761 | * config/ia64/hpux.h: Define _INCLUDE__STDC_A1_SOURCE in C++. | |
1762 | Add unix98.o to link line. | |
1763 | ||
cf1491f0 KG |
1764 | 2006-10-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1765 | ||
1766 | PR middle-end/29335 | |
1767 | * builtins.c (fold_builtin_cbrt, fold_builtin_logarithm): | |
1768 | Calculate compile-time constants using MPFR. | |
1769 | (fold_builtin_1): Likewise handle BUILT_IN_ERF, BUILT_IN_ERFC, | |
1770 | BUILT_IN_EXPM1 and BUILT_IN_LOG1P. | |
1771 | ||
76f6e118 BW |
1772 | 2006-10-25 Bob Wilson <bob.wilson@acm.org> |
1773 | ||
1774 | * config/xtensa/lib2funcs.S: Use C-style comments. | |
1775 | ||
1d2c2b96 NF |
1776 | 2006-10-24 Nathan Froyd <froydnj@codesourcery.com> |
1777 | ||
50d0a899 UB |
1778 | * dwarf2out.c (gen_compile_unit_die): Use IS_ABSOLUTE_PATH. |
1779 | (file_table_relative_p): Likewise. | |
1780 | (dwarf2out_finish): Likewise. | |
1781 | (file_name_acquire): Use DIR_SEPARATOR and DIR_SEPARATOR_2. | |
1d2c2b96 | 1782 | |
80ba9432 DB |
1783 | 2006-10-25 Daniel Berlin <dberlin@dberlin.org> |
1784 | ||
1785 | * tree-ssa-structalias.c (intra_create_variable_infos): | |
1786 | Don't recreate nonlocal_all if it already exists. | |
1787 | ||
bb7f0423 RG |
1788 | 2006-10-25 Richard Guenther <rguenther@suse.de> |
1789 | ||
1790 | PR target/28803 | |
1791 | * optabs.h (enum optab_index): Remove OTI_lrint. | |
1792 | (enum convert_optab_index): Add COI_lrint. | |
1793 | (lrint_optab): Adjust. | |
1794 | (expand_sfix_optab): Declare. | |
1795 | * optabs.c (expand_sfix_optab): New function. | |
1796 | (init_optabs): Init lrint_optab as conversion optab. | |
1797 | * genopinit.c (lrint_optab): Change to a conversion optab. | |
1798 | * builtins.c (expand_builtin_int_roundingfn_2): Adjust to | |
1799 | expansion via conversion optab. | |
1800 | * config/i386/i386.md (*fistdi2_1): Remove | |
1801 | flag_unsafe_math_optimizations guard. | |
1802 | (fistdi2, fistdi2_with_temp, *fist<mode>2_1, fist<mode>2, | |
1803 | fist<mode>2_with_temp): Likewise. | |
1804 | (lrint<mode>2): Split into... | |
1805 | (lrintxf<mode>2): ... x87 part | |
1806 | (lrint<mode>di2, lrint<mode>si2): ... and SSE parts. | |
1807 | * config/i386/sse.md (sse_cvtss2si_2, sse_cvtss2_siq_2, | |
1808 | sse2_cvtsd2si_2, sse2_cvtsd2siq_2): New insns for | |
1809 | UNSPEC_FIX_NOTRUNC matching non-vector float modes. | |
1810 | * doc/md.texi (lrintMN2): Document. | |
1811 | ||
ef984648 UB |
1812 | 2006-10-25 Uros Bizjak <uros@kss-loka.si> |
1813 | ||
1814 | PR target/28909 | |
1815 | * config/i386/sync.md ("sync_add<mode>", "sync_sub<mode>"): | |
1816 | Use inc and dec instructions for TARGET_USE_INCDEC. | |
1817 | ("*sync_compare_and_swap<mode>"): Fix -masm=intel template. | |
1818 | ("sync_double_compare_and_swap<mode>"): Likewise. | |
1819 | ("*sync_double_compare_and_swapdi_pic"): Likewise. | |
1820 | ("*sync_compare_and_swap_cc<mode>"): Likewise. | |
1821 | ("sync_double_compare_and_swap_cc<mode>"): Likewise. | |
1822 | ("*sync_double_compare_and_swap_ccdi_pic"): Likewise. | |
1823 | ("sync_old_add<mode>"): Likewise. | |
1824 | ("sync_lock_test_and_set<mode>"): Likewise. | |
1825 | ("sync_lock_test_and_set<mode>"): Likewise. | |
1826 | ("sync_add<mode>"): Likewise. | |
1827 | ("sync_sub<mode>"): Likewise. | |
1828 | ("sync_ior<mode>"): Likewise. | |
1829 | ("sync_and<mode>"): Likewise. | |
1830 | ("sync_xor<mode>"): Likewise. | |
1831 | ||
17b98269 UB |
1832 | 2006-10-25 Uros Bizjak <uros@kss-loka.si> |
1833 | ||
1834 | * optabs.h (enum optab_index): Rename OTI_drem to OTI_remainder. | |
1835 | (remainder_optab): Define corresponding macro. | |
1836 | (drem_optab): Remove. | |
1837 | * optabs.c (init_optabs): Initialize remainder_optab. Remove | |
1838 | drem_optab initialization. | |
1839 | * genopinit.c (optabs): Implement remainder_optab using | |
1840 | remainder?f3 patterns. Remove drem_optab. | |
1841 | * builtins.c (expand_builtin_mathfn_2): Handle | |
1842 | BUILT_IN_REMAINDER{,F,L} using remainder_optab. | |
1843 | (expand_builtin): Expand BUILT_IN_REMAINDER{,F,L} using | |
1844 | expand_builtin_mathfn_2. | |
1845 | ||
1846 | (expand_builtin) [BUILT_IN_FMOD, BUILT_IN_DREM]: Do not | |
1847 | depend on flag_unsafe_math_optimizations. | |
1848 | ||
1849 | * config/i386/i386.md ("remaindersf3", "remainderdf3") | |
1850 | ("remainderxf3"): Renamed from "drem{s,d,x}f3" expanders. | |
1851 | Do not depend on flag_unsafe_math_optimizations. Use | |
1852 | truncxf?f expander instead of truncxf?f_i387_noop. | |
1853 | ||
1854 | ("fpremxf4", "fprem1xf4"): Do not depend on | |
1855 | flag_unsafe_math_optimizations. | |
1856 | ("fmodsf3", "fmoddf3", "fmodxf3"): Do not depend on | |
1857 | flag_unsafe_math_optimizations. Use truncxf?f expander | |
1858 | instead of truncxf?f_i387_noop. | |
1859 | ||
1860 | * doc/md.texi (fmod, remainder): Document standard named pattern. | |
1861 | ||
942d7821 RS |
1862 | 2006-10-24 Richard Sandiford <richard@codesourcery.com> |
1863 | David Daney <ddaney@avtrex.com> | |
1864 | ||
1865 | PR middle-end/29519 | |
1866 | * rtlanal.c (nonzero_address_p): Remove check for values wrapping. | |
1867 | ||
9baf8aea BE |
1868 | 2006-10-25 Ben Elliston <bje@au.ibm.com> |
1869 | ||
1870 | * doc/extend.texi (Variable Attributes): Typo fix. | |
1871 | ||
03c259ad UB |
1872 | 2006-10-24 Uros Bizjak <uros@kss-loka.si> |
1873 | ||
1874 | * config/i386/i386.h (FIRST_PSEUDO_REGISTER): Define to 54. | |
1875 | (FIXED_REGISTERS, CALL_USED_REGISTERS): Add fpcr register. | |
1876 | (REG_ALLOC_ORDER): Add one element to allocate fpcr register. | |
1877 | (FRAME_POINTER_REGNUM): Update register number to 21. | |
1878 | (REG_CLASS_CONTENTS): Update contents for added fpcr register. | |
1879 | (HI_REGISTER_NAMES): Add "fpcr" for fpcr register. | |
1880 | ||
1881 | * config/i386/i386.c (regclass_map): Add fpcr entry. | |
1882 | (dbx_register_map, dbx64_register_map, svr4_dbx_register_map): | |
1883 | Add fpcr entry. | |
1884 | (print_reg): Assert REGNO (x) != FPCR_REG. | |
1885 | ||
1886 | * config/i386/i386.md (FPCR_REG, R11_REG): New constants. | |
1887 | (DIRFLAG_REG): Renumber. | |
1888 | (x86_fnstcw_1, x86_fldcw_1): Use FPCR_REG instead of FPSR_REG. | |
1889 | (*sibcall_1_rex64_v, *sibcall_value_1_rex64_v): Use R11_REG. | |
1890 | (sse_prologue_save, *sse_prologue_save_insn): Renumber | |
1891 | hardcoded SSE register numbers. | |
1892 | ||
1893 | * config/i386/mmx.md (mmx_emms, mmx_femms): Renumber | |
1894 | hardcoded MMX register numbers. | |
1895 | ||
b53fed56 KG |
1896 | 2006-10-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1897 | ||
1898 | PR middle-end/29335 | |
1899 | * builtins.c (fold_builtin_sin, fold_builtin_atan): Remove. | |
1900 | (do_mpfr_arg1): Add `min', `max' and `inclusive' arguments. | |
1901 | Update all callers. | |
1902 | (BUILT_IN_SIN, BUILT_IN_ATAN): Handle in main switch. | |
1903 | (BUILT_IN_ASIN, BUILT_IN_ACOS, BUILT_IN_ATAN, BUILT_IN_ASINH, | |
1904 | BUILT_IN_ACOSH, BUILT_IN_ATANH, BUILT_IN_SINH, BUILT_IN_COSH, | |
1905 | BUILT_IN_TANH): Calculate compile-time arguments using MPFR. | |
1906 | ||
27d7d042 RG |
1907 | 2006-10-24 Richard Guenther <rguenther@suse.de> |
1908 | ||
1909 | PR middle-end/28796 | |
1910 | * builtins.c (fold_builtin_classify): Use HONOR_INFINITIES | |
1911 | and HONOR_NANS instead of MODE_HAS_INFINITIES and MODE_HAS_NANS | |
1912 | for deciding optimizations in consistency with fold-const.c | |
1913 | (fold_builtin_unordered_cmp): Likewise. | |
1914 | ||
e1502f6e RG |
1915 | 2006-10-24 Richard Guenther <rguenther@suse.de> |
1916 | ||
1917 | * builtins.c (fold_builtin_floor): Fold floor (x) where | |
1918 | x is nonnegative to trunc (x). | |
1919 | (fold_builtin_int_roundingfn): Fold lfloor (x) where x is | |
1920 | nonnegative to FIX_TRUNC_EXPR. | |
1921 | ||
34fc5065 RG |
1922 | 2006-10-24 Richard Guenther <rguenther@suse.de> |
1923 | ||
1924 | PR tree-optimization/29567 | |
1925 | * tree-vrp.c (register_edge_assert_for_1): Fix wrong logic | |
1926 | for TRUTH_NOT_EXPR. Clarify comments. | |
1927 | ||
b52dd66c KG |
1928 | 2006-10-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1929 | ||
b53fed56 | 1930 | PR middle-end/29335 |
b52dd66c KG |
1931 | * builtins.c (fold_builtin_exponent): Evaluate constant arguments |
1932 | at compile-time using MPFR. Change parameter VALUE to FUNC, | |
1933 | update all callers. | |
1934 | (do_mpfr_arg1): Rename `exact' to `inexact'. Carefully check | |
1935 | for overflow and underflow at all times and avoid folding in | |
1936 | those cases. | |
1937 | ||
247140ea BE |
1938 | 2006-10-24 Ben Elliston <bje@au.ibm.com> |
1939 | ||
1940 | * reload1.c: Formatting fixes. | |
1941 | ||
ae536040 ZD |
1942 | 2006-10-23 Zdenek Dvorak <dvorakz@suse.cz> |
1943 | ||
1944 | PR tree-optimization/14784 | |
1945 | * tree-flow.h (struct var_ann_d): Add is_heapvar bit. | |
1946 | * tree-ssa-structalias.c (get_constraint_for, | |
1947 | intra_create_variable_infos): Set is_heapvar. | |
1948 | * tree-ssa-operands.c (access_can_touch_variable): Do not handle | |
1949 | non-heapvar pointer variables specially. | |
1950 | ||
1f3f1f68 KG |
1951 | 2006-10-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1952 | ||
1953 | PR middle-end/29335 | |
1954 | * builtins.c (fold_builtin_sin, fold_builtin_cos, | |
1955 | fold_builtin_tan): Fold all constant arguments. Take a "type" | |
1956 | argument as necessary. | |
1957 | (do_mpfr_arg1): New. | |
1958 | * real.c, real.h (real_from_mpfr, mpfr_from_real): New. | |
1959 | ||
b544aa7b BW |
1960 | 2006-10-23 Bob Wilson <bob.wilson@acm.org> |
1961 | ||
1962 | * config/xtensa/lib1funcs.asm: Use C-style comments. | |
1963 | ||
c79efc4d RÁE |
1964 | 2006-10-23 Rafael Avila de Espindola <rafael.espindola@gmail.com> |
1965 | ||
1966 | * tree.c (local_define_builtin): Replace calls to | |
1967 | lang_hooks.builtin_function with add_builtin_function. | |
1968 | * c-objc-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as | |
1969 | c_builtin_function. | |
1970 | * c-tree.h (builtin_function): Rename to c_builtin_function. Change | |
1971 | the signature. | |
1972 | * c-decl.c (builtin_function): Rename to c_builtin_function. Move | |
1973 | common code to add_builtin_function. | |
1974 | * langhooks.c (add_builtin_function): New function. | |
1975 | (lhd_builtin_function): New function. | |
1976 | * langhooks.h (struct lang_hooks): Change the signature of | |
1977 | builtin_function. | |
1978 | (add_builtin_function): New function. | |
1979 | * tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Replace | |
1980 | calls to lang_hooks.builtin_function with add_builtin_function. | |
1981 | * c-common.c (decl_builtin_1): Replace calls to | |
1982 | lang_hooks.builtin_function with add_builtin_function. | |
1983 | * config/alpha/alpha.c (alpha_init_builtins): Replace calls to | |
1984 | lang_hooks.builtin_function with add_builtin_function. | |
1985 | * config/frv/frv.c (def_builtin): Replace calls to | |
1986 | lang_hooks.builtin_function with add_builtin_function. | |
1987 | * config/s390/s390.c (s390_init_builtins): Replace calls to | |
1988 | lang_hooks.builtin_function with add_builtin_function. | |
1989 | * config/sparc/sparc.c (def_builtin): Replace calls to | |
1990 | lang_hooks.builtin_function with add_builtin_function. | |
1991 | * config/i386/i386.c (def_builtin): Replace calls to | |
1992 | lang_hooks.builtin_function with add_builtin_function. | |
1993 | * config/sh/sh.c (sh_media_init_builtins): Replace calls to | |
1994 | lang_hooks.builtin_function with add_builtin_function. | |
1995 | * config/c4x/c4x.c (c4x_init_builtins): Replace calls to | |
1996 | lang_hooks.builtin_function with add_builtin_function. | |
1997 | * config/stormy16/stormy16.c (xstormy16_init_builtins): | |
1998 | Replace calls to lang_hooks.builtin_function with | |
1999 | add_builtin_function. | |
2000 | * config/iq2000/iq2000.c (def_builtin): | |
2001 | Replace calls to lang_hooks.builtin_function with | |
2002 | add_builtin_function. | |
2003 | * config/ia64/ia64.c (def_builtin): Replace calls to | |
2004 | lang_hooks.builtin_function with add_builtin_function. | |
2005 | * config/rs6000/rs6000.c (def_builtin): Replace calls to | |
2006 | lang_hooks.builtin_function with add_builtin_function. | |
2007 | (altivec_init_builtins): Replace calls to | |
2008 | lang_hooks.builtin_function with add_builtin_function. | |
2009 | * config/arm/arm.c (def_mbuiltin): Replace calls to | |
2010 | lang_hooks.builtin_function with add_builtin_function. | |
2011 | (arm_init_tls_builtins): Replace calls to | |
2012 | lang_hooks.builtin_function with add_builtin_function. | |
2013 | * config/mips/mips.c (mips_init_builtins): Replace calls to | |
2014 | lang_hooks.builtin_function with add_builtin_function. | |
2015 | * config/bfin/bfin.c (def_builtin): Replace calls to | |
2016 | lang_hooks.builtin_function with add_builtin_function. | |
2017 | * langhooks-def.h (lhd_builtin_function): New function. | |
2018 | (LANG_HOOKS_BUILTIN_FUNCTION): Define as lhd_builtin_function. | |
2019 | ||
1c2fc017 JJ |
2020 | 2006-10-23 Jakub Jelinek <jakub@redhat.com> |
2021 | ||
2022 | * builtins.c (expand_builtin, maybe_emit_chk_warning): Handle | |
2023 | BUILT_IN_STRNCAT_CHK. | |
2024 | ||
eaf19122 JH |
2025 | 2006-10-23 Jan Hubicka <jh@suse.cz> |
2026 | ||
2027 | * builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument; | |
2028 | don't do conversion from memmove to memcpy here. | |
2029 | (expand_builtin_bcopy, expand_builtin): Update call of | |
2030 | expand_builtin_memmove. | |
2031 | (fold_builtin_memory_op): Do folding of memmove to memcpy here. | |
2032 | ||
353293e7 PB |
2033 | 2006-10-23 Paul Brook <paul@codesourcery.com> |
2034 | ||
2035 | * stor-layout.c (start_record_layout): maximum_field_alignment | |
2036 | overrides STRUCTURE_SIZE_BOUNDARY. | |
2037 | ||
6915c1ce UW |
2038 | 2006-10-23 Ulrich Weigand <uweigand@de.ibm.com> |
2039 | ||
2040 | * config/s390/predicates.md ("bras_sym_operand"): Do not accept | |
2041 | nonlocal function symbols if flag_pic. | |
2042 | ||
b0cd88d2 RG |
2043 | 2006-10-23 Richard Guenther <rguenther@suse.de> |
2044 | ||
2045 | PR middle-end/27132 | |
2046 | PR middle-end/23295 | |
2047 | * builtins.c (fold_binary): Remove checks for flag_wrapv | |
2048 | and flag_trapv where negate_expr_p covers these cases. | |
2049 | ||
2050 | 2006-10-23 Richard Guenther <rguenther@suse.de> | |
2051 | ||
2052 | PR middle-end/29548 | |
2053 | * fold-const.c (fold_plusminus_mult_expr): Check exact power | |
2054 | of two on the absolute value. | |
2055 | (fold_binary): Fold x * -C to -x * C if x is easily negatable | |
2056 | and negating -C does not overflow. | |
2057 | ||
4f76e46b RG |
2058 | 2006-10-23 Richard Guenther <rguenther@suse.de> |
2059 | ||
2060 | PR middle-end/21032 | |
2061 | * convert.c (convert_to_real): Fold (float)-x to -(float)x | |
2062 | only if not flag_rounding_math. | |
2063 | ||
85144c5c RS |
2064 | 2006-10-22 Richard Sandiford <richard@codesourcery.com> |
2065 | Kaz Kojima <kkojima@gcc.gnu.org> | |
2066 | ||
2067 | PR target/28232 | |
2068 | * config/sh/sh.c (expand_block_move): Use a BLKmode rather than | |
2069 | SImode memory reference for the source of a movua. | |
2070 | * config/sh/sh.md (UNSPEC_MOVUA): New macro. | |
2071 | (movua): Use an unspec instead of sign_extract. Expect the source | |
2072 | to have mode BLKmode. | |
2073 | (extv, insv): Use a BLKmode rather than SImode memory reference | |
2074 | for the source of a movua. | |
2075 | ||
279f3eb5 JL |
2076 | 2006-10-22 Jeff Law <law@redhat.com> |
2077 | Richard Guenther <rguenther@suse.de> | |
2078 | ||
2079 | PR tree-optimization/15911 | |
2080 | * tree-vrp.c (extract_code_and_val_from_cond): New function. | |
2081 | (register_edge_assert_for_1): Likewise. | |
2082 | (register_edge_assert_for): Handle &&/&/||/| in conditionals. | |
2083 | (find_conditional_asserts): Adjust for new function signature. | |
2084 | (find_assert_locations): Likewise. | |
2085 | ||
c0546edb L |
2086 | 2006-10-22 H.J. Lu <hongjiu.lu@intel.com> |
2087 | ||
2088 | * config/i386/tmmintrin.h: Remove the duplicated content. | |
2089 | ||
b1875f52 L |
2090 | 2006-10-22 H.J. Lu <hongjiu.lu@intel.com> |
2091 | ||
2092 | * config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers. | |
2093 | (x86_64-*-*): Likewise. | |
2094 | ||
2095 | * config/i386/i386.c (pta_flags): Add PTA_SSSE3. | |
2096 | (override_options): Check SSSE3. | |
2097 | (ix86_builtins): Add IX86_BUILTIN_PHADDW, IX86_BUILTIN_PHADDD, | |
2098 | IX86_BUILTIN_PHADDSW, IX86_BUILTIN_PHSUBW, IX86_BUILTIN_PHSUBD, | |
2099 | IX86_BUILTIN_PHSUBSW, IX86_BUILTIN_PMADDUBSW, | |
2100 | IX86_BUILTIN_PMULHRSW, IX86_BUILTIN_PSHUFB, | |
2101 | IX86_BUILTIN_PSIGNB, IX86_BUILTIN_PSIGNW, IX86_BUILTIN_PSIGND, | |
2102 | IX86_BUILTIN_PALIGNR, IX86_BUILTIN_PABSB, IX86_BUILTIN_PABSW, | |
2103 | IX86_BUILTIN_PABSD, IX86_BUILTIN_PHADDW128, | |
2104 | IX86_BUILTIN_PHADDD128, IX86_BUILTIN_PHADDSW128, | |
2105 | IX86_BUILTIN_PHSUBW128, IX86_BUILTIN_PHSUBD128, | |
2106 | IX86_BUILTIN_PHSUBSW128, IX86_BUILTIN_PMADDUBSW128, | |
2107 | IX86_BUILTIN_PMULHRSW128, IX86_BUILTIN_PSHUFB128, | |
2108 | IX86_BUILTIN_PSIGNB128, IX86_BUILTIN_PSIGNW128, | |
2109 | IX86_BUILTIN_PSIGND128, IX86_BUILTIN_PALIGNR128, | |
2110 | IX86_BUILTIN_PABSB128, IX86_BUILTIN_PABSW128 and | |
2111 | IX86_BUILTIN_PABSD128. | |
2112 | (bdesc_2arg): Add SSSE3. | |
2113 | (bdesc_1arg): Likewise. | |
2114 | (ix86_init_mmx_sse_builtins): Support SSSE3. | |
2115 | (ix86_expand_builtin): Likewise. | |
2116 | * config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Likewise. | |
2117 | ||
2118 | * config/i386/i386.md (UNSPEC_PSHUFB): New. | |
2119 | (UNSPEC_PSIGN): Likewise. | |
2120 | (UNSPEC_PALIGNR): Likewise. | |
2121 | Include mmx.md before sse.md. | |
2122 | ||
2123 | * config/i386/i386.opt: Add -mssse3. | |
2124 | ||
2125 | * config/i386/sse.md (ssse3_phaddwv8hi3): New pattern for SSSE3. | |
2126 | (ssse3_phaddwv4hi3): Likewise. | |
2127 | (ssse3_phadddv4si3): Likewise. | |
2128 | (ssse3_phadddv2si3): Likewise. | |
2129 | (ssse3_phaddswv8hi3): Likewise. | |
2130 | (ssse3_phaddswv4hi3): Likewise. | |
2131 | (ssse3_phsubwv8hi3): Likewise. | |
2132 | (ssse3_phsubwv4hi3): Likewise. | |
2133 | (ssse3_phsubdv4si3): Likewise. | |
2134 | (ssse3_phsubdv2si3): Likewise. | |
2135 | (ssse3_phsubswv8hi3): Likewise. | |
2136 | (ssse3_phsubswv4hi3): Likewise. | |
2137 | (ssse3_pmaddubswv8hi3): Likewise. | |
2138 | (ssse3_pmaddubswv4hi3): Likewise. | |
2139 | (ssse3_pmulhrswv8hi3): Likewise. | |
2140 | (ssse3_pmulhrswv4hi3): Likewise. | |
2141 | (ssse3_pshufbv16qi3): Likewise. | |
2142 | (ssse3_pshufbv8qi3): Likewise. | |
2143 | (ssse3_psign<mode>3): Likewise. | |
2144 | (ssse3_psign<mode>3): Likewise. | |
2145 | (ssse3_palignrti): Likewise. | |
2146 | (ssse3_palignrdi): Likewise. | |
2147 | (abs<mode>2): Likewise. | |
2148 | (abs<mode>2): Likewise. | |
2149 | ||
2150 | * config/i386/tmmintrin.h: New file. | |
2151 | ||
2152 | * doc/extend.texi: Document SSSE3 built-in functions. | |
2153 | ||
2154 | * doc/invoke.texi: Document -mssse3/-mno-ssse3 switches. | |
2155 | ||
52fb9856 IR |
2156 | 2006-10-22 Ira Rosen <irar@il.ibm.com> |
2157 | ||
50d0a899 UB |
2158 | * tree-vect-transform.c (vectorizable_load): Use the type of the |
2159 | return value of the mask_for_load builtin to create realign_load | |
2160 | stmt. | |
52fb9856 | 2161 | |
7dc7d8a2 RS |
2162 | 2006-10-22 Richard Sandiford <richard@codesourcery.com> |
2163 | ||
2164 | * config/mips/mips.c (mips_split_const): Don't accept bare PLUS | |
2165 | expressions. | |
2166 | ||
96208aed L |
2167 | 2006-10-21 H.J. Lu <hongjiu.lu@intel.com> |
2168 | ||
2169 | * config/i386/i386.md (UNSPEC_LDQQU): Renamed to ... | |
2170 | (UNSPEC_LDDQU): This. | |
2171 | * config/i386/sse.md (sse3_lddqu): Updated. | |
2172 | ||
0bfa1541 RG |
2173 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2174 | ||
2175 | * builtins.c (expand_builtin_int_roundingfn_2): New function. | |
2176 | (expand_builtin): Use it to expand lrint instead of | |
2177 | expand_builtin_mathfn. | |
2178 | ||
495ed96c UB |
2179 | 2006-10-21 Uros Bizjak <uros@kss-loka.si> |
2180 | ||
2181 | PR middle-end/28252 | |
2182 | * builtins.c (fold_builtin): Fold pow(x,1.0/3.0) as cbrt(x) if | |
2183 | flag_unsafe_math_optimizations is set. | |
2184 | ||
962ef7fe UB |
2185 | 2006-10-21 Uros Bizjak <uros@kss-loka.si> |
2186 | ||
2187 | PR target/19398 | |
2188 | * config/i386/i386.md (fix_trunc?f?i_sse): Add peephole2 | |
2189 | patterns to use memory input operand in x87->mem->XMM | |
2190 | reload sequences. Skip transformation for TARGET_K8. | |
2191 | ||
509a77dc UB |
2192 | 2006-10-21 Uros Bizjak <uros@kss-loka.si> |
2193 | ||
2194 | * config/i386/i386.md (extendsfdf2, extendsfxf2, extenddfxf2): Do not | |
2195 | force operand1 to register if both operands are memory operands. | |
2196 | (*extendsfdf2_mixed, *extendsfdf2_sse, *extendsfdf2_i387) | |
2197 | (*extendsfxf2_i387, *extenddfxf2_i387): Do not disable pattern | |
2198 | if both operands are memory operands. | |
2199 | (truncdfsf2): Do not force operand1 to register if both operands | |
2200 | are memory operands. | |
2201 | ||
70ec446f KG |
2202 | 2006-10-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2203 | ||
2204 | * Makefile.in (LIBS): Add $(GMPLIBS). | |
2205 | * doc/install.texi: Update GMP and MPFR requirements. | |
2206 | * doc/sourcebuild.texi (need_gmp): Delete. | |
2207 | ||
0778d4e8 RG |
2208 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2209 | ||
2210 | PR tree-optimization/3511 | |
2211 | * tree-ssa-pre.c (phi_translate): Fold CALL_EXPRs that | |
2212 | got new invariant arguments during PHI translation. | |
2213 | ||
8a1eca08 RG |
2214 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2215 | ||
2216 | PR middle-end/26898 | |
2217 | * fold-const.c (fold_comparison): Fold signed comparisons | |
2218 | of the form X +- C1 CMP Y +- C2. | |
2219 | ||
5a4171a0 RG |
2220 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2221 | ||
2222 | PR target/19116 | |
2223 | * config/i386/i386.c (override_options): Do not set MASK_IEEE_FP | |
2224 | if flag_unsafe_math_optimizations is specified. We have | |
2225 | flag_finite_math_only for that. | |
2226 | * config/i386/i386.md (sqrtxf2): Do not require TARGET_IEEE_FP | |
2227 | or flag_unsafe_math_optimizations. | |
2228 | ||
120a56cb RG |
2229 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2230 | ||
2231 | * builtins.c (fold_builtin_classify): Fix typo. | |
2232 | ||
bdbb0460 RG |
2233 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2234 | ||
2235 | PR middle-end/28796 | |
2236 | * simplify-rtx.c (simplify_const_relational_operation): | |
2237 | Do not constant-fold ORDERED and UNORDERED for | |
2238 | flag_unsafe_math_optimizations but only we do not need to | |
2239 | honor NaNs for the given mode. | |
2240 | ||
1faf92ae RG |
2241 | 2006-10-21 Richard Guenther <rguenther@suse.de> |
2242 | ||
2243 | PR target/29512 | |
2244 | * config/i386/i386.c (classify_argument): Remove redundant | |
2245 | walking of the BINFOs. | |
2246 | (contains_128bit_aligned_vector_p): Likewise. | |
2247 | ||
20a0da35 MM |
2248 | 2006-10-20 Mark Mitchell <mark@codesourcery.com> |
2249 | ||
2250 | * BASE-VER: Set to 4.3.0. | |
2251 | ||
b23987ec DB |
2252 | 2006-10-20 Daniel Berlin <dberlin@dberlin.org> |
2253 | ||
2254 | * tree.h (DECL_PTA_ARTIFICIAL): Remove. | |
2255 | (tree_decl_with_vis): Remove artificial_pta_var flag. | |
2256 | * tree-flow.h (referenced_var_check_and_insert): Expose. | |
2257 | (nonlocal_all): New prototype. | |
2258 | * tree-ssa-structalias.c (nonlocal_for_type): Remove. | |
2259 | (nonlocal_all): Make global. | |
2260 | (nonlocal_lookup): Remove. | |
2261 | (nonlocal_insert): Ditto. | |
2262 | (create_nonlocal_var): Do not call nonlocal_insert. | |
2263 | (get_nonlocal_id_for_type): Remove. | |
2264 | (find_global_initializers): Mark new vars we find for renaming. | |
2265 | (intra_create_variable_infos): Only create one nonlocal. | |
2266 | (expand_nonlocal_solutions): Remove. | |
2267 | (compute_points_to_sets): Don't call it. | |
2268 | (ipa_pta_execute): Ditto. | |
2269 | (init_alias_heapvars): Don't create nonlocal_for_type. | |
2270 | (delete_alias_heapvars): Don't remove it. | |
2271 | * tree-ssa-operands.c (access_can_touch_variable): Don't prune | |
2272 | nonlocal_all. | |
2273 | ||
374716e7 BM |
2274 | 2006-10-19 Brooks Moses <bmoses@stanford.edu> |
2275 | ||
2276 | * doc/install.texi (Downloading GCC): Clarify mention of | |
2277 | Fortran in the "full distribution" description. | |
2278 | ||
21392f19 DB |
2279 | 2006-10-19 Daniel Berlin <dberlin@dberlin.org> |
2280 | ||
2281 | Fix PR tree-optimization/28778 | |
2282 | Fix PR tree-optimization/29156 | |
2283 | Fix PR tree-optimization/29415 | |
2284 | * tree.h (DECL_PTA_ARTIFICIAL): New macro. | |
2285 | (tree_decl_with_vis): Add artificial_pta_var flag. | |
2286 | * tree-ssa-alias.c (is_escape_site): Remove alias info argument, | |
2287 | pushed into callers. | |
2288 | * tree-ssa-structalias.c (nonlocal_for_type): New variable. | |
2289 | (nonlocal_all): Ditto. | |
2290 | (struct variable_info): Add directly_dereferenced member. | |
2291 | (var_escaped_vars): New variable. | |
2292 | (escaped_vars_tree): Ditto. | |
2293 | (escaped_vars_id): Ditto. | |
2294 | (nonlocal_vars_id): Ditto. | |
2295 | (new_var_info): Set directly_dereferenced. | |
2296 | (graph_size): New variable | |
2297 | (build_constraint_graph): Use graph_size. | |
2298 | (solve_graph): Don't process constraints that cannot change the | |
2299 | solution, don't try to propagate an empty solution to our | |
2300 | successors. | |
2301 | (process_constraint): Set directly_dereferenced. | |
2302 | (could_have_pointers): New function. | |
2303 | (get_constraint_for_component_ref): Don't process STRING_CST. | |
2304 | (nonlocal_lookup): New function. | |
2305 | (nonlocal_insert): Ditto. | |
2306 | (create_nonlocal_var): Ditto. | |
2307 | (get_nonlocal_id_for_type): Ditto. | |
2308 | (get_constraint_for): Allow results vector to be empty in the case | |
2309 | of string constants. | |
2310 | Handle results of calls properly. | |
2311 | (update_alias_info): Update alias info stats on number and type of | |
2312 | calls. | |
2313 | (find_func_aliases): Use could_have_pointers. | |
2314 | (make_constraint_from_escaped): Renamed from | |
2315 | make_constraint_to_anything, and changed to make constraints from | |
2316 | escape variable. | |
2317 | (make_constraint_to_escaped): New function. | |
2318 | (find_global_initializers): Ditto. | |
2319 | (create_variable_info_for): Make constraint from escaped to any | |
2320 | global variable, and from any global variable to the set of | |
2321 | escaped vars. | |
2322 | (intra_create_variable_infos): Deal with escaped instead of | |
2323 | pointing to anything. | |
2324 | (set_uids_in_ptset): Do type pruning on directly dereferenced | |
2325 | variables. | |
2326 | (find_what_p_points_to): Adjust call to set_uids_with_ptset. | |
2327 | (init_base_vars): Fix comment, and initialize escaped_vars. | |
2328 | (need_to_solve): Removed. | |
2329 | (find_escape_constraints): New function. | |
2330 | (expand_nonlocal_solutions): Ditto. | |
2331 | (compute_points_to_sets): Call find_escape_constraints and | |
2332 | expand_nonlocal_solutions. | |
2333 | (delete_points_to_sets): Don't fall off the end of the graph. | |
2334 | (init_alias_heapvars): Initialize nonlocal_for_type and | |
2335 | nonlocal_all. | |
2336 | (delete_alias_heapvars): Free nonlocal_for_type and null out | |
62baeb4f | 2337 | nonlocal_all. |
21392f19 | 2338 | |
6b7283ac EB |
2339 | 2006-10-19 Eric Botcazou <ebotcazou@adacore.com> |
2340 | ||
2341 | * fold-const.c (add_double): Rename to add_double_with_sign. | |
2342 | Add 'unsigned_p' parameter and take it into account for the overflow. | |
62baeb4f | 2343 | (mul_double): Rename to mul_double_with_sign. |
6b7283ac EB |
2344 | Add 'unsigned_p' parameter and take it into account for the overflow. |
2345 | (fold_div_compare): Call add_double_with_sign instead of add_double | |
2346 | and mul_double_with_sign instead of mul_double, passing them the | |
2347 | unsignedness of the type. | |
2348 | * tree.h (add_double): Macroize. | |
2349 | (add_double_with_sign): New prototype. | |
2350 | (mul_double): Macroize. | |
2351 | (mul_double_with_sign): New prototype. | |
2352 | ||
93ef7c1f CL |
2353 | 2006-10-19 Chen Liqin <liqin@sunnorth.com.cn> |
2354 | ||
50d0a899 UB |
2355 | * config/score/crti.asm: New file. |
2356 | * config/score/crtn.asm: New file. | |
2357 | * config/score/elf.h: New file. | |
2358 | * config/score/mac.md: New file. | |
2359 | * config/score/misc.md: New file. | |
2360 | * config/score/mul-div.S: New file. | |
2361 | * config/score/predicates.md: New file. | |
2362 | * config/score/score7.md: New file. | |
2363 | * config/score/score.c: New file. | |
2364 | * config/score/score-conv.h: New file. | |
2365 | * config/score/score.h: New file. | |
2366 | * config/score/score.md: New file. | |
2367 | * config/score/score-mdaux.c: New file. | |
2368 | * config/score/score-mdaux.h: New file. | |
2369 | * config/score/score-modes.def: New file. | |
2370 | * config/score/score.opt: New file. | |
2371 | * config/score/score-protos.h: New file. | |
2372 | * config/score/score-version.h: New file. | |
2373 | * config/score/t-score-elf: New file. | |
2374 | * config.gcc: Add score*-*-* configurations(Update before). | |
2375 | * doc/invoke.texi (Score Options): New section. | |
2376 | * doc/md.texi (Score family): New section to document constraints. | |
93ef7c1f | 2377 | |
afc0a4ba NC |
2378 | 2006-10-19 Nick Clifton <nickc@redhat.com> |
2379 | ||
2380 | * config/arm/arm.c: Fix spelling typo. | |
2381 | ||
2d142abd TT |
2382 | 2006-10-18 Tom Tromey <tromey@redhat.com> |
2383 | ||
2384 | * doc/install.texi (Prerequisites): Mention automake 1.9.6. | |
2385 | ||
1368453c JH |
2386 | 2006-10-18 Jan Hubicka <jh@suse.cz> |
2387 | ||
2388 | PR middle-end/29299 | |
2389 | * cfgexpand.c (expand_used_vars_for_block): Vars marked used by user | |
2390 | are used. | |
2391 | ||
2174b867 MD |
2392 | 2006-10-18 Marcin Dalecki <martin@dalecki.de> |
2393 | ||
2394 | * omp-low.c (expand_parallel_call): Use BSI_SAME_STMT instead of | |
2395 | TSI_SAME_STMT, since that's the desired entity. | |
2396 | ||
cd8dc1f9 WG |
2397 | 2006-10-17 Wolfgang Gellerich <gellerich@de.ibm.com> |
2398 | ||
2399 | * config/s390/contraints.md: New file. | |
50d0a899 | 2400 | * config/s390/s390-protos.h (s390_mem_constraint, |
62baeb4f | 2401 | s390_O_constraint_str, s390_N_constraint_str, |
cd8dc1f9 | 2402 | s390_float_const_zero_p): Function prototypes added. |
62baeb4f EC |
2403 | * config/s390/s390.c (s390_extra_constraint_str, |
2404 | s390_const_double_ok_for_constraint_p, | |
cd8dc1f9 | 2405 | s390_const_ok_for_constraint_p): Functions removed. |
50d0a899 | 2406 | (s390_mem_constraint, s390_O_constraint_str, s390_N_constraint_str, |
cd8dc1f9 WG |
2407 | s390_float_const_zero_p): New functions. |
2408 | * config/s390/s390.h (REG_CLASS_FROM_LETTER, CONST_OK_FOR_CONSTRAINT_P, | |
62baeb4f EC |
2409 | CONST_DOUBLE_OK_FOR_CONSTRAINT_P, EXTRA_CONSTRAINT_STR, |
2410 | EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT, CONSTRAINT_LEN): | |
cd8dc1f9 WG |
2411 | Macro definitions removed. |
2412 | (s390_const_ok_for_constraint_p, s390_const_double_ok_for_constraint_p, | |
2413 | s390_extra_constraint_str): Functions removed. | |
2414 | ||
120311ec AP |
2415 | 2006-10-17 Andrew Pinsiki <pinskia@gmail.com> |
2416 | Richard Sandiford <richard@codesourcery.com> | |
2417 | ||
e4fd3c84 | 2418 | PR target/29413 |
120311ec AP |
2419 | * config/mips/linux.h (SUBTARGET_CC1_SPEC): Override. |
2420 | * config/mips/mips.h (CC1_SPEC): Override any earlier definition. | |
2421 | ||
ed1cf8ff GK |
2422 | 2006-10-16 Geoffrey Keating <geoffk@apple.com> |
2423 | ||
2424 | * config/rs6000/sysv4.h (DBX_REGISTER_NUMBER): Move to rs6000.h. | |
2425 | (DWARF2_FRAME_REG_OUT): Likewise. | |
2426 | * config/rs6000/rs6000.h (DBX_REGISTER_NUMBER): Move from sysv4.h. | |
2427 | (DWARF2_FRAME_REG_OUT): Likewise. | |
2428 | ||
26da58dd PB |
2429 | 2006-10-17 Paul Brook <paul@codesourcery.com> |
2430 | ||
2431 | * config/arm/arm.c (arm_rtx_costs_1): Handle multiply-accumulate. | |
2432 | ||
92922512 BM |
2433 | 2006-10-16 Brooks Moses <bmoses@stanford.edu> |
2434 | ||
2435 | * doc/contrib.texi, doc/install.texi, doc/standards.texi: | |
2436 | Standardize on "GNU Fortran" as the official name of the Fortran | |
2437 | compiler. | |
2438 | ||
f475fd3c MS |
2439 | 2006-10-16 Mike Stump <mrs@apple.com> |
2440 | ||
57164024 | 2441 | * doc/invoke.texi (Darwin Options): Document -mkernel. |
f475fd3c MS |
2442 | * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Add |
2443 | -mkernel support. | |
2444 | (C_COMMON_OVERRIDE_OPTIONS): Add -mkernel support. Add | |
2445 | SUBTARGET_C_COMMON_OVERRIDE_OPTIONS callout. | |
2446 | (CC1_SPEC): Don't turn on -fPIC when -mkernel is given. | |
2447 | (OS_MISSING_ALTIVEC): Add. | |
2448 | * config/i386/i386.c (override_options): Add | |
2449 | SUBSUBTARGET_OVERRIDE_OPTIONS callout. | |
2450 | * config/i386/darwin.h (CC1_SPEC): Don't turn on -fPIC when | |
2451 | -mkernel, -static or -mdynamic-no-pic is given. | |
2452 | (C_COMMON_OVERRIDE_OPTIONS): Add. | |
2453 | * config/darwin.opt (fapple-kext): Add. | |
2454 | (mkernel): Add. | |
2455 | * config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add | |
2456 | -fapple-kext, -findirect-virtual-calls, -fterminated-vtables and | |
2457 | -mkernel support. | |
2458 | (SUBSUBTARGET_OVERRIDE_OPTIONS): Add. | |
2459 | (SUBTARGET_C_COMMON_OVERRIDE_OPTIONS): Add. | |
2460 | (CPP_SPEC): Move defines for __DYNAMIC__ and __STATIC__ from here... | |
2461 | (SUBTARGET_ATTRIBUTE_TABLE): Add apple_kext_compatibility. | |
2462 | (TARGET_CXX_CDTOR_RETURNS_THIS): Add. | |
2463 | (flag_mkernel): Add. | |
2464 | (flag_apple_kext): Add. | |
2465 | (TARGET_KEXTABI): Add. | |
2466 | * config/darwin.c (darwin_handle_kext_attribute): Add. | |
2467 | (DARWIN_VTABLE_P): Add. | |
2468 | (darwin_binds_local_p): Add partial support for rebinding vtables | |
2469 | in kexts. | |
2470 | (darwin_kextabi_p): Add. | |
2471 | (darwin_override_options): Add. | |
2472 | * config/darwin-protos.h (darwin_handle_kext_attribute): Add. | |
2473 | (darwin_kextabi_p): Add. | |
2474 | (darwin_override_options): Add. | |
2475 | * config/darwin-c.c (darwin_cpp_builtins): ... move defines for | |
2476 | __DYNAMIC__ and __STATIC__ here. | |
2477 | ||
cc5c2741 BM |
2478 | 2006-10-16 Brooks Moses <bmoses@stanford.edu> |
2479 | ||
2480 | * doc/sourcebuild.texi, doc/makefile.texi, doc/install.texi: | |
2481 | Added mention of "make pdf" target, and Texinfo requirements for | |
2482 | same. | |
2483 | ||
0c6385dc DD |
2484 | 2006-10-16 DJ Delorie <dj@redhat.com> |
2485 | ||
2486 | * config/s390/s390.c (s390_decompose_address): Allow symbol+offset | |
2487 | into the GOT in case we need a subreg of the address. | |
2488 | ||
d7aa4788 RG |
2489 | 2006-10-16 Richard Guenther <rguenther@suse.de> |
2490 | ||
2491 | PR target/25519 | |
2492 | * doc/extend.texi (X86 Built-in Functions): Fix typos in | |
2493 | SSE builtin documentation. Document SSE2 builtins. | |
2494 | ||
27ca3a61 JDA |
2495 | 2006-10-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2496 | ||
c05b4438 JDA |
2497 | * pa64-hpux.h (LINK_SPEC): Force __cxa_finalize to be an undefined |
2498 | symbol in the output file for non-shared links when -nostdlib or | |
2499 | -nodefaultlibs isn't specified. | |
2500 | ||
27ca3a61 JDA |
2501 | * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*): Default to |
2502 | posix thread support. | |
2503 | ||
ba19ceae JH |
2504 | 2006-10-15 Jan Hubicka <jh@suse.cz> |
2505 | ||
2506 | PR middle-end/29241 | |
2507 | * cgraphunit.c (cgraph_preserve_function_body_p): Preserve functions | |
2508 | declared always_inline even when not inlining. | |
2509 | ||
af4a46a9 | 2510 | 2006-10-15 Eric Botcazou <ebotcazou@libertysurf.fr> |
50d0a899 UB |
2511 | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2512 | Andrew Pinski <pinskia@gmail.com> | |
af4a46a9 EB |
2513 | |
2514 | PR middle-end/29111 | |
2515 | * builtins.c (get_pointer_alignment): Return 0 if TER is not run. | |
2516 | ||
61e00a5e | 2517 | 2006-10-15 Jan Hubicka <jh@suse.cz> |
50d0a899 | 2518 | Richard Guenther <rguenther@suse.de> |
61e00a5e JH |
2519 | |
2520 | PR middle-end/29299 | |
2521 | * cgraphunit.c (cgraph_finalize_compilation_unit): Call | |
2522 | process_function_and_variable_attributes on all variables, including | |
2523 | those discovered during cgraph construction phase. | |
2524 | ||
b0efb46b BF |
2525 | 2006-10-15 Bernhard Fischer <aldot@gcc.gnu.org> |
2526 | ||
2527 | * final.c: Update Copyright year. Commentary typo fix. Fix whitespace | |
2528 | ||
f6096891 UB |
2529 | 2006-10-14 Uros Bizjak <uros@kss-loka.si> |
2530 | ||
2531 | * config/i386/athlon.md (athlon_fist): Add fisttp. | |
2532 | ||
dc10a47e DE |
2533 | 2006-10-13 David Edelsohn <edelsohn@gnu.org> |
2534 | Ian Lance Taylor <ian@airs.com> | |
2535 | ||
2536 | PR middle-end/29250 | |
2537 | * expr.c (expand_expr_real_1) <NON_LVALUE_EXPR, NOP_EXPR, | |
2538 | CONVERT_EXPR>: Change EXPAND_SUM modifier to EXPAND_NORMAL when | |
2539 | recursing. | |
2540 | ||
875e256a KH |
2541 | 2006-10-14 Kazu Hirata <kazu@codesourcery.com> |
2542 | ||
2543 | * config/score/score.c, config/score/score.h: Fix comment | |
2544 | typos. | |
2545 | ||
0c472e4e KG |
2546 | 2006-10-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
2547 | ||
2548 | PR bootstrap/29402 | |
2549 | * Makefile.in (ALL_GTFILES_H): Use $(sort ...) instead of | |
2550 | shell pipeline. | |
2551 | ||
ee4ae285 EC |
2552 | 2006-10-13 Eric Christopher <echristo@apple.com> |
2553 | ||
2554 | * config/darwin.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. | |
2555 | ||
5793c070 CD |
2556 | 2006-10-13 Carlos O'Donell <carlos@codesourcery.com> |
2557 | ||
2558 | Revert this change: | |
2559 | 2006-10-13 Carlos O'Donell <carlos@codesourcery.com> | |
2560 | * config/elfos.h (MAX_OFILE_ALIGNMENT): Default to largest | |
2561 | alignment supported by 32-bit ELF. | |
2562 | ||
44ef77c1 EC |
2563 | 2006-10-13 Eric Christopher <echristo@apple.com> |
2564 | ||
2565 | * config/darwin.c (darwin_emit_unwind_label): Strip | |
2566 | name encoding. Use DECL_ASSEMBLER_NAME_SET_P. | |
2567 | ||
96644aba RG |
2568 | 2006-10-13 Richard Guenther <rguenther@suse.de> |
2569 | ||
2570 | PR tree-optimization/29446 | |
2571 | * tree-vrp.c (fix_equivalence_set): Remove. | |
2572 | (extract_range_from_assert): Do not call fix_equivalence_set. | |
2573 | (debug_value_range): Print a newline. | |
2574 | (compare_name_with_value): For equivalence sets with | |
2575 | inconsistent value ranges conservatively bail out. | |
2576 | (compare_names): Likewise. | |
2577 | ||
d3a95f27 DE |
2578 | 2006-10-13 David Edelsohn <edelsohn@gnu.org> |
2579 | ||
2580 | * doc/install.texi (*-ibm-aix*): Add comment about 32-bit GMP | |
2581 | and MPFR for gfortran. | |
2582 | ||
d407b27d CD |
2583 | 2006-10-13 Carlos O'Donell <carlos@codesourcery.com> |
2584 | ||
2585 | * config/elfos.h (MAX_OFILE_ALIGNMENT): Default to largest | |
2586 | alignment supported by 32-bit ELF. | |
2587 | ||
ca58211b PB |
2588 | 2006-10-13 Paolo Bonzini <bonzini@gnu.org> |
2589 | ||
2590 | PR c/29092 | |
2591 | ||
670a1b1f | 2592 | * c-typeck.c (digest_init): Always allow initializing vectors |
ca58211b PB |
2593 | that have static storage duration with compound literals. |
2594 | * tree.c (build_type_attribute_qual_variant): New, based on | |
2595 | build_type_attribute_variant. | |
2596 | (build_type_attribute_variant): Rewrite using the former. | |
2597 | (make_vector_type): Use build_type_attribute_qual_variant to build | |
2598 | type variants. Use type_hash_canon on the others. | |
2599 | ||
e1bb14ca DB |
2600 | 2006-10-13 Daniel Berlin <dberlin@dberlin.org> |
2601 | Ramana Radhakrishnan <ramana.radhakrishnan@celunite.com> | |
2602 | ||
2603 | * tree-flow-inline.h (zero_ssa_operands): Fix comment. | |
2604 | ||
1a4259dc JH |
2605 | 2006-10-12 Jan Hubicka <jh@suse.cz> |
2606 | ||
2607 | PR c/28419 | |
2608 | * c-decl.c (c_make_fname_decl): Do not segfault in case where | |
2609 | current_function_decl is set but current_function_scope is not. | |
2610 | ||
1e96b1c3 JZ |
2611 | 2006-10-12 Jie Zhang <jie.zhang@analog.com> |
2612 | ||
2613 | * config/bfin/bfin.md (eh_return): Call emit_jump_insn instead of | |
2614 | emit_insn to emit eh_return_internal instruction. | |
2615 | (eh_return_internal): Explicitly set pc. | |
2616 | ||
377d569b RG |
2617 | 2006-10-11 Richard Guenther <rguenther@suse.de> |
2618 | ||
2619 | PR tree-optimization/28230 | |
2620 | * tree-vrp.c (vrp_int_const_binop): Move flag_wrapv handling | |
2621 | to the correct place. | |
2622 | ||
ba38541a RG |
2623 | 2006-10-11 Richard Guenther <rguenther@suse.de> |
2624 | ||
2625 | PR inline-asm/29119 | |
2626 | * gimplify.c (gimplify_asm_expr): Mark the gimplified lvalue | |
2627 | addressable. | |
2628 | ||
b5422ad7 BM |
2629 | 2006-10-10 Brooks Moses <bmoses@stanford.edu> |
2630 | ||
2631 | * configure.ac: Added pdf to "Make-hooks" | |
2632 | * Makefile.in: Added TEXI2PDF definition, and various pdf-file | |
2633 | targets and *.pdf file patterns in cleanup targets. | |
2634 | * configure: Regenerated. | |
2635 | ||
413fc59a AS |
2636 | 2006-10-10 Anatoly Sokolov <aesok@post.ru> |
2637 | ||
2638 | * config/avr/predicates.md: New file. | |
2639 | * config/avr/avr.md: Include it. | |
2640 | (REG_SP): New constant. | |
2641 | (peepholes): Use predicates. | |
2642 | (sbrx_branch, sbrx_and_branchhi, sbrx_and_branchsi, branch, rvbranch, | |
2643 | difficult_branch, difficult_rvbranch, cbi, sbi, sbix_branch, | |
2644 | sbix_branch_bit7, sbix_branch_tmp, sbix_branch_tmp_bit7): Ditto. | |
2645 | ||
48a0c3d4 AN |
2646 | 2006-10-10 Adam Nemet <anemet@caviumnetworks.com> |
2647 | ||
2648 | * config/mips/mips.c (mips_save_restore_reg): Use gen_frame_mem to | |
2649 | avoid alias set 0. | |
2650 | ||
599a964a JJ |
2651 | 2006-10-10 Jakub Jelinek <jakub@redhat.com> |
2652 | ||
2653 | PR middle-end/29272 | |
2654 | * builtins.c (var_decl_component_p): New function. | |
2655 | (fold_builtin_memset, fold_builtin_memory_op): Restrict | |
2656 | single entry optimization to variables and components thereof. | |
2657 | ||
be0436d7 RG |
2658 | 2006-10-10 Richard Guenther <rguenther@suse.de> |
2659 | ||
2660 | PR rtl-optimization/29323 | |
2661 | * except.c (set_nothrow_function_flags): For functions | |
2662 | that do not bind local bail out early. | |
2663 | ||
07d83dad BE |
2664 | 2006-10-10 Ben Elliston <bje@au.ibm.com> |
2665 | ||
2666 | * doc/invoke.texi (RS/6000 and PowerPC Options): Add -m to the | |
2667 | -mdlmzb option. | |
2668 | ||
a98d4769 RH |
2669 | 2006-10-09 Richard Henderson <rth@redhat.com> |
2670 | ||
2671 | Revert emutls patch. | |
2672 | ||
5771bd91 RG |
2673 | 2006-10-09 Richard Guenther <rguenther@suse.de> |
2674 | ||
2675 | PR middle-end/29254 | |
2676 | * cgraphunit.c (verify_cgraph_node): Bail out on earlier | |
2677 | errors. | |
2678 | ||
e64f5acf SE |
2679 | 2006-10-09 Steve Ellcey <sje@cup.hp.com> |
2680 | ||
2681 | PR target/27880 | |
2682 | * unwind-c.c (PERSONALITY_FUNCTION): Ifdef use of _Unwind_GetIPInfo. | |
2683 | * configure.ac (HAVE_GETIPINFO): Check for _Unwind_GetIPInfo. | |
2684 | * configure: Regenerate. | |
2685 | * config.in: Regenerate. | |
2686 | ||
f4935db5 AH |
2687 | 2006-10-09 Aldy Hernandez <aldyh@redhat.com> |
2688 | ||
670a1b1f | 2689 | * tree-mudflap.c (mf_xform_derefs_1): Add parentheses around TREE_TYPE. |
f4935db5 | 2690 | |
4afa41f1 RS |
2691 | 2006-10-08 Richard Sandiford <richard@codesourcery.com> |
2692 | ||
2693 | * config/mips/mips.c (mips_legitimize_tls_address): Implement | |
2694 | all TLS models in the same way as local exec if !TARGET_ABICALLS. | |
2695 | Remove stray newline. | |
2696 | ||
3ac25120 RS |
2697 | 2006-10-08 Richard Sandiford <richard@codesourcery.com> |
2698 | ||
2699 | * config/mips/mips.c (mips_classify_symbol): Do not return | |
2700 | SYMBOL_SMALL_DATA if SYMBOL_REF_WEAK. | |
2701 | (mips_in_small_data_p): Tweak comments. | |
2702 | ||
b994ed9b RS |
2703 | 2006-10-08 Richard Sandiford <richard@codesourcery.com> |
2704 | ||
2705 | * config/mips/elf.h (HANDLE_PRAGMA_PUSH_POP): Define. | |
2706 | ||
f63645be KH |
2707 | 2006-10-07 Kazu Hirata <kazu@codesourcery.com> |
2708 | ||
2709 | * gimplify.c, sched-int.h: Fix comment typos. | |
2710 | ||
73d1943a KH |
2711 | * sched-int.h: Fix comment typos. |
2712 | ||
d7bfd907 MK |
2713 | 2006-10-06 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
2714 | ||
2715 | * sched-int.h (IS_SPECULATION_CHECK_P, IS_SPECULATION_SIMPLE_CHECK_P): | |
2716 | New macros. | |
2717 | * sched-ebb.c (begin_schedule_ready): Use them. | |
2718 | * haifa-sched.c (schedule_insn, move_insn, try_ready, | |
2719 | add_to_speculative_block, create_check_block_twin, speculate_insn, | |
2720 | fix_jump_move, move_block_after_check): Ditto. | |
2721 | * sched-rgn.c (new_ready): Ditto. | |
2722 | ||
7ea84dc4 MK |
2723 | 2006-10-06 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
2724 | ||
2725 | PR rtl-optimization/29128 | |
2726 | * sched-int.h (IS_SPECULATION_BRANCHY_CHECK_P): New macro. | |
2727 | * sched-ebb.c (advance_target_bb): Use it to fix condition to | |
2728 | allow interblock movement of speculation checks. | |
2729 | ||
975626a7 ZD |
2730 | 2006-10-06 Zdenek Dvorak <dvorakz@suse.cz> |
2731 | ||
2732 | PR middle-end/29256 | |
2733 | * tree-ssa-loop-ivopts.c (determine_base_object): Handle pointers | |
2734 | casted to integer type. | |
2735 | (get_address_cost): Decrease cost of [symbol + index] addressing modes | |
2736 | if they are significantly more expensive than [reg + index] ones. | |
2737 | ||
c6647507 JJ |
2738 | 2006-10-06 Jakub Jelinek <jakub@redhat.com> |
2739 | ||
3ac57120 JJ |
2740 | PR tree-optimization/29330 |
2741 | * tree-data-ref.c (free_data_ref): Use DR_FREE_ACCESS_FNS macro. | |
2742 | (initialize_data_dependence_relation): Clear DDR_LOOP_NEST pointer | |
2743 | on newly allocated ddrs. | |
2744 | (find_loop_nest_1, find_loop_nest): Change LOOP_NEST to a pointer | |
2745 | to VEC (loop_p, heap) pointer. | |
2746 | (compute_data_dependences_for_loop): Adjust caller. | |
2747 | (free_dependence_relations): Free DDR_LOOP_NEST. | |
2748 | ||
2749 | * tree-loop-linear.c (linear_transform_loops): Don't forget to | |
2750 | free DEPENDENCE_RELATIONS and DATAREFS. | |
2751 | ||
c6647507 JJ |
2752 | PR target/28924 |
2753 | * builtins.c (expand_builtin_sync_operation, | |
2754 | expand_builtin_compare_and_swap, expand_builtin_lock_test_and_set): | |
2755 | Use convert_to_mode to handle promoted arguments. | |
2756 | ||
a192f4ae R |
2757 | 2006-10-06 J"orn Rennecke <joern.rennecke@st.com> |
2758 | ||
2759 | * print-tree.c (print_node_brief, print_node): Print sign of Inf. | |
2760 | ||
0a087518 R |
2761 | 2006-10-06 J"orn Rennecke <joern.rennecke@st.com> |
2762 | ||
2763 | * config/sh/sh.h (LIBGCC2_DOUBLE_TYPE_SIZE): Define. | |
2764 | ||
662e96c5 UB |
2765 | 2006-10-05 Uros Bizjak <uros@kss-loka.si> |
2766 | ||
2767 | * config/i386/sync.md ("sync_add<mode>", "sync_sub<mode>", | |
2768 | "sync_ior<mode>", "sync_and<mode>", "sync_xor<mode>"): | |
2769 | Use <modeconstraint> instead of "r" as operand 1 constraint. | |
2770 | ||
706c4bb7 | 2771 | 2006-10-06 Olivier Hainque <hainque@adacore.com> |
44ef77c1 | 2772 | |
706c4bb7 OH |
2773 | * gimplify.c (gimplify_type_sizes) [POINTER_TYPE, REFERENCE_TYPE]: |
2774 | Don't recurse on the pointed-to type. | |
2775 | * c-decl.c (grokdeclarator) [cdk_pointer]: If we are in a NORMAL or | |
2776 | DECL context, attach an artificial TYPE_DECL to anonymous pointed-to | |
2777 | types with components of variable size. | |
2778 | ||
4d51dc9e DS |
2779 | 2006-10-06 Danny Smith <dannysmith@users.sourceforge.net> |
2780 | ||
2310f1f8 | 2781 | * config/i386/mingw32.h (GOMP_SELF_SPECS): Add -mthreads for openmp. |
4d51dc9e | 2782 | |
86a0f642 JJ |
2783 | 2006-10-06 Jakub Jelinek <jakub@redhat.com> |
2784 | ||
9731a71c JJ |
2785 | PR tree-optimization/29290 |
2786 | * tree-loop-linear.c (linear_transform_loops): Bail if loop_nest has | |
2787 | multiple exits. | |
2788 | ||
c1a46941 JJ |
2789 | PR target/29198 |
2790 | * config/i386/i386.c (legitimize_pic_address): Reject TLS symbols. | |
2791 | * config/i386/predicates.md (local_symbolic_operand): Likewise. | |
2792 | ||
86a0f642 JJ |
2793 | PR c/29091 |
2794 | * varasm.c (output_constant): If TREE_VECTOR_CST_ELTS chain is shorter than | |
2795 | the number of vector elements fill the rest with zeros. | |
2796 | ||
c671c146 RS |
2797 | 2006-10-05 Richard Sandiford <richard@codesourcery.com> |
2798 | ||
2799 | * config/mips/mips.c (mips_pass_by_reference): Do not return false | |
2800 | for EABI if type is NULL. Use a size check based on GET_MODE_SIZE | |
2801 | instead. | |
2802 | ||
d4e85050 BS |
2803 | 2006-10-05 Bernd Schmidt <bernd.schmidt@analog.com> |
2804 | ||
2805 | * config/bfin/bfin.md (subsi3): Lose expander, change previously | |
2806 | unnamed pattern into subsi3. Use correct constraints/predicates. | |
2807 | * config/bfin/bfin.h (CONST_OK_FOR_K): Handle "KN7". | |
2808 | * config/bfin/predicates.md (reg_or_neg7bit_operand_p): New. | |
2809 | ||
7251a8d1 IR |
2810 | 2006-10-05 Ira Rosen <irar@il.ibm.com> |
2811 | ||
2812 | * doc/loop.texi: Add data references analysis description. | |
2813 | ||
4afc7adf BM |
2814 | 2006-10-04 Brooks Moses <bmoses@stanford.edu> |
2815 | ||
2816 | * doc/gcov.texi: Add formatting to "Invoking gcov" section head. | |
2817 | ||
e701a32a RH |
2818 | 2006-10-04 Richard Henderson <rth@redhat.com> |
2819 | Jakub Jelinek <jakub@redhat.com> | |
2820 | ||
2821 | * Makefile.in (libgcc.mk, LIBGCC_DEPS): Add emutls.c. | |
670a1b1f AP |
2822 | * builtin-types.def (BT_WORD): Make unsigned. |
2823 | (BT_FN_VOID_PTR_WORD_WORD_PTR): New. | |
2824 | * builtins.def (BUILT_IN_EMUTLS_GET_ADDRESS): New. | |
2825 | (BUILT_IN_EMUTLS_REGISTER_COMMON): New. | |
2826 | * c-decl.c (grokdeclarator): Don't error if !have_tls. | |
2827 | * c-parser.c (c_parser_omp_threadprivate): Likewise. | |
e701a32a RH |
2828 | * cgraph.c (decide_is_variable_needed): Look at force_output. |
2829 | Recurse for emulated tls. | |
2830 | * cgraphunit.c (cgraph_varpool_remove_unreferenced_decls): Remove | |
2831 | checks redundant with decide_is_variable_needed. | |
2832 | (cgraph_build_static_cdtor): Do cgraph_varpool_assemble_pending_decls. | |
670a1b1f AP |
2833 | * dwarf2out.c (loc_descriptor_from_tree_1): Don't do anything for |
2834 | emulated tls. | |
2835 | * expr.c (emutls_var_address): New. | |
e701a32a RH |
2836 | (expand_expr_real_1): Expand emulated tls. |
2837 | (expand_expr_addr_expr_1): Likewise. | |
670a1b1f AP |
2838 | * libgcc-std.ver: Add __emutls_get_address, __emutls_register_common. |
2839 | * output.h (emutls_finish): Declare. | |
2840 | * toplev.c (compile_file): Call it. | |
e701a32a RH |
2841 | * tree-ssa-address.c (gen_addr_rtx): Check for const-ness of the |
2842 | address before wrapping in CONST. | |
670a1b1f AP |
2843 | * varasm.c (emutls_htab, emutls_object_type): New. |
2844 | (EMUTLS_VAR_PREFIX, EMUTLS_TMPL_PREFIX): New. | |
e701a32a RH |
2845 | (get_emutls_object_name, get_emutls_object_type): New. |
2846 | (get_emutls_init_templ_addr, emutls_decl): New. | |
2847 | (emutls_common_1, emutls_finish): New. | |
670a1b1f | 2848 | (assemble_variable): When emulating tls, swap decls; generate |
e701a32a RH |
2849 | constructor for the emutls objects. |
2850 | (do_assemble_alias): When emulating tls, swap decl and target name. | |
670a1b1f AP |
2851 | (default_encode_section_info): Don't add SYMBOL_FLAG_TLS_SHIFT |
2852 | for emulated tls. | |
e701a32a | 2853 | * emutls.c: New file. |
670a1b1f AP |
2854 | * config/sparc/sol2.h (ASM_DECLARE_OBJECT_NAME): Only emit |
2855 | tls_object for real tls. | |
e701a32a | 2856 | |
9e826585 ZW |
2857 | 2006-10-04 Zack Weinberg <zackw@panix.com> |
2858 | ||
2859 | Fix bug in constraint-check generator, reported by Rask Ingemann | |
2860 | Lambertsen: | |
2861 | * genpreds.c (add_constraint): Don't remove anything from the | |
2862 | expression here. | |
2863 | (write_tm_constrs_h): Detect whether "op" argument is used, and | |
2864 | mark it ARG_UNUSED if it isn't. | |
2865 | (write_insn_const_int_ok_for_constraint): Skip the part of the | |
2866 | expression that would test whether "op" (which is not available | |
2867 | here) is a CONST_INT. | |
2868 | ||
1576e2be RM |
2869 | 2006-10-04 Ryan Mansfield <rmansfield@qnx.com> |
2870 | ||
2871 | PR c++/28448 | |
2872 | * doc/invoke.texi (fdiagnostics-show-option): Fix typos. | |
2873 | ||
ee1d3dc0 GK |
2874 | 2006-10-03 Geoffrey Keating <geoffk@apple.com> |
2875 | ||
2876 | * config/i386/darwin-libgcc.10.5.ver: Update to symbol list for | |
2877 | current Leopard versions. | |
2878 | * config/rs6000/darwin-libgcc.10.5.ver: Likewise. | |
2879 | ||
baf2c258 KH |
2880 | 2006-10-03 Kazu Hirata <kazu@codesourcery.com> |
2881 | ||
2882 | * doc/install.texi: Fix typos. | |
2883 | ||
224869d9 EB |
2884 | 2006-10-03 Eric Botcazou <ebotcazou@libertysurf.fr> |
2885 | ||
2886 | * builtins.c (expand_builtin_return_addr): Deal with FRAME_ADDR_RTX. | |
2887 | * doc/tm.texi (Basic Stack Layout): Document FRAME_ADDR_RTX. | |
2888 | * config/sparc/sparc.h (FRAME_ADDR_RTX): Define. | |
2889 | ||
2834a5fe JH |
2890 | 2006-10-02 Jack Howarth <howarth@bromo.med.uc.edu> |
2891 | ||
2892 | * unwind-dw2-fde-darwin.c (getsectdatafromheader_64): Fix first | |
2893 | arg to be struct mach_header_64* instead. | |
2894 | ||
82181741 JJ |
2895 | 2006-10-02 Jakub Jelinek <jakub@redhat.com> |
2896 | ||
2897 | PR c/29154 | |
2898 | * gimplify.c (gimplify_self_mod_expr): Run inner expression's post | |
2899 | side effects after the outer expression's post side effects. | |
2900 | ||
a40776a2 SL |
2901 | 2006-10-01 Sandra Loosemore <sandra@codesourcery.com> |
2902 | ||
2903 | * tree.h (DECL_FIELD_OFFSET, DECL_FIELD_BIT_OFFSET): Fix | |
2904 | comments to reflect actual behavior and relationship between | |
2905 | DECL_FIELD_OFFSET, DECL_FIELD_BIT_OFFSET, and DECL_OFFSET_ALIGN. | |
2906 | ||
2907 | * doc/c-tree.texi (Working with declarations): Fix documentation | |
2908 | of FIELD_DECL likewise. | |
2909 | ||
5f79d643 RM |
2910 | 2006-10-01 Ryan Mansfield <rmansfield@qnx.com> |
2911 | ||
2912 | PR c/20533 | |
9e826585 | 2913 | * doc/extend.texi: Add used variable attribute description. |
5f79d643 | 2914 | |
7ed322d7 JM |
2915 | 2006-09-30 Joseph S. Myers <joseph@codesourcery.com> |
2916 | ||
2917 | PR c/24010 | |
2918 | * c.opt (Woverride-init): New. | |
2919 | * c-opts.c (c_common_post_options): Default warn_override_init to | |
2920 | extra_warnings. | |
2921 | * c-typeck.c (add_pending_init, output_init_element): Warn for | |
2922 | overriding initializers without side effects. | |
2923 | * doc/invoke.texi (-Woverride-init): Document. | |
2924 | (-Wextra): Update. | |
2925 | ||
2d722423 EB |
2926 | 2006-09-30 Eric Botcazou <ebotcazou@libertysurf.fr> |
2927 | ||
2928 | PR rtl-optimization/28096 | |
2929 | * ifcvt.c (check_cond_move_block): Return FALSE if the source of an | |
2930 | assignment has already been used as a destination earlier in the block. | |
2931 | ||
2932 | 2006-09-29 Eric Botcazou <ebotcazou@adacore.com> | |
4f6c2131 EB |
2933 | |
2934 | * builtins.c (expand_builtin_setjmp): Delete. | |
2935 | (expand_builtin) <BUILT_IN_SETJMP>: Mark as unreachable. | |
2936 | <BUILT_IN_SETJMP_SETUP>: New case. | |
2937 | <BUILT_IN_SETJMP_DISPATCHER>: Likewise. | |
2938 | <BUILT_IN_SETJMP_RECEIVER>: Likewise. | |
2939 | * builtins.def (BUILT_IN_SETJMP_SETUP): New built-in stub. | |
2940 | (BUILT_IN_SETJMP_DISPATCHER): Likewise. | |
2941 | (BUILT_IN_SETJMP_RECEIVER): Likewise. | |
2942 | * gimple-low.c (struct lower_data): New field calls_builtin_setjmp. | |
2943 | (lower_function_body): Initialize it to false. If it is set to true | |
2944 | at the end of the processing, emit the setjmp dispatcher. | |
2945 | (lower_stmt) <CALL_EXPR>: Invoke lower_builtin_setjmp if the callee | |
2946 | is __builtin_setjmp and set calls_builtin_setjmp to true as well. | |
2947 | <MODIFY_EXPR>: Fall through to above case if there is a CALL_EXPR | |
2948 | on the rhs of the assignment. | |
2949 | (lower_builtin_setjmp): New function. | |
2950 | * tree.c (build_common_builtin_nodes): Build BUILT_IN_SETJMP_SETUP, | |
2951 | BUILT_IN_SETJMP_DISPATCHER and BUILT_IN_SETJMP_RECEIVER nodes. | |
2952 | * tree-cfg.c (make_exit_edges) <CALL_EXPR>: Use specific predicate | |
2953 | to detect calls that can go to non-local labels. Use specific | |
2954 | helper to create the abnormal edges associated with them. | |
2955 | <MODIFY_EXPR>: Likewise. | |
2956 | (make_abnormal_goto_edges): New function extracted from... | |
2957 | (make_goto_expr_edges): ...here. Call it for computed gotos. | |
2958 | (simple_goto_p): Minor tweak. | |
2959 | (tree_can_make_abnormal_goto): New predicate. | |
2960 | (tree_redirect_edge_and_branch): Return zero on all abnormal edges. | |
2961 | (tree_purge_dead_abnormal_call_edges): New function. | |
2962 | * tree-flow.h (tree_can_make_abnormal_goto): Declare. | |
2963 | (tree_purge_dead_abnormal_call_edges): Likewise. | |
2964 | (make_abnormal_goto_edges): Likewise. | |
2965 | * tree-inline.c (expand_call_inline): Simplify statement frobbing. | |
2966 | Purge all dead abnormal edges if the call was in the last statement. | |
2967 | * tree-optimize.c (has_abnormal_outgoing_edge_p): New predicate. | |
2968 | (execute_fixup_cfg): If there are non-local labels in the function, | |
2969 | scan the basic blocks and split them at calls that can go to non-local | |
2970 | labels or add missing abnormal call edges. Write down the CFG in the | |
2971 | dump file. | |
2972 | (pass_fixup_cfg): Remove TODO_dump_func flag. | |
2973 | * unwind-sjlj.c: Poison setjmp. | |
2974 | * doc/install.texi (enable-sjlj-exceptions): Use more general wording. | |
2975 | * doc/tm.texi (DWARF2_UNWIND_INFO): Likewise. | |
2976 | (TARGET_UNWIND_TABLES_DEFAULT): Fix typo. | |
2977 | (DONT_USE_BUILTIN_SETJMP): Document it. | |
2978 | ||
67796c1f GK |
2979 | 2006-09-28 Geoffrey Keating <geoffk@apple.com> |
2980 | ||
2981 | PR target/28617 | |
2982 | * config/rs6000/rs6000.h [IN_LIBGCC2] (TARGET_POWERPC64): Define | |
2983 | to 1 when __ppc64__ is defined. | |
2984 | * config/rs6000/t-darwin (LIB2FUNCS_EXTRA): Add ppc64-fp.c and | |
2985 | darwin-64.c. | |
2986 | * config/rs6000/ppc64-fp.c: Also compile when __ppc64__ is defined. | |
2987 | ||
811b6bea SE |
2988 | 2006-09-28 Steve Ellcey <sje@cup.hp.com> |
2989 | ||
2990 | * config/ia64/t-hpux (LIB2FUNCS_EXTRA): Remove unwind-hpux.c. | |
2991 | * config/ia64/unwind-hpux.c: Delete. | |
2992 | ||
0461b801 EB |
2993 | 2006-09-28 Eric Botcazou <ebotcazou@adacore.com> |
2994 | ||
2995 | * gimplify.c (gimplify_init_ctor_preeval): Call maybe_with_size_expr | |
2996 | on the element before gimplifying it, instead of punting if it is of | |
2997 | variable size. | |
2998 | ||
01e0ef5a ZD |
2999 | 2006-09-28 Zdenek Dvorak <dvorakz@suse.cz> |
3000 | ||
3001 | * doc/loop.texi: New file. | |
3002 | * doc/gccint.texi: Reference loop.texi. | |
3003 | * Makefile.in (loop.texi): Add. | |
3004 | ||
c6c621d4 GK |
3005 | 2006-09-27 Geoffrey Keating <geoffk@apple.com> |
3006 | ||
3007 | * config/darwin.h (ENABLE_EXECUTE_STACK): New, use getpagesize not | |
3008 | __sysctl. | |
3009 | * config/rs6000/darwin.h (ENABLE_EXECUTE_STACK): Remove. | |
3010 | * config/i386/darwin.h (ENABLE_EXECUTE_STACK): Remove. | |
3011 | ||
d2dfcc07 KK |
3012 | 2006-09-28 Kaz Kojima <kkojima@gcc.gnu.org> |
3013 | ||
3014 | * config/sh/sh.md (divsi_inv_m0): Remove unused variable. | |
3015 | ||
e48d66a9 SK |
3016 | 2006-09-27 Steven G. Kargl <kargl@gcc.gnu.org> |
3017 | ||
3018 | * doc/install.texi: Document required versions of GMP and MPFR. | |
3019 | ||
bcf640f7 PB |
3020 | 2006-09-27 Paul Brook <paul@codesourcery.com> |
3021 | ||
3022 | PR target/29230 | |
3023 | * config/arm/arm.md (arith_adjacentmem): Handle large offsets. | |
3024 | ||
63a7a62b RS |
3025 | 2006-09-27 Richard Sandiford <richard@codesourcery.com> |
3026 | ||
3027 | * reload1.c (alter_reg): Require the alignment of the stack slot to | |
3028 | be at least reg_max_ref_width bytes. | |
3029 | (scan_paradoxical_subregs): Record the largest width in | |
3030 | reg_max_ref_width. | |
3031 | ||
a70ad3bb JJ |
3032 | 2006-09-26 Jakub Jelinek <jakub@redhat.com> |
3033 | ||
3034 | PR middle-end/25261 | |
3035 | PR middle-end/28790 | |
3036 | * tree-nested.c (struct nesting_info): Added static_chain_added. | |
3037 | (convert_call_expr): Set static_chain_added when adding static | |
3038 | chain. Handle OMP_PARALLEL and OMP_SECTION. | |
3039 | ||
bc49e371 MK |
3040 | 2006-09-25 Matthias Klose <doko@debian.org> |
3041 | ||
3042 | * doc/invoke.texi: Add missing full stop. | |
3043 | ||
6aa5c6ba RH |
3044 | 2006-09-25 Richard Henderson <rth@redhat.com> |
3045 | ||
3046 | * cgraph.c (dump_cgraph_varpool_node): Don't crash if called | |
3047 | before cgraph_function_flags_ready. | |
3048 | ||
b67102ae ZD |
3049 | 2006-09-24 Zdenek Dvorak <dvorakz@suse.cz> |
3050 | Adam Nemet <anemet@caviumnetworks.com> | |
3051 | ||
3052 | * tree-ssa-loop-ivopts.c (aff_combination_convert, | |
3053 | determine_common_wider_type): New functions. | |
3054 | (get_computation_aff): Use them to simplify arithmetic between | |
3055 | UBASE and CBASE if they are shortened from the same type. | |
3056 | ||
ab1e659c KH |
3057 | 2006-09-24 Kazu Hirata <kazu@codesourcery.com> |
3058 | ||
3059 | PR target/28911 | |
3060 | * config/m68k/m68k.md (negsf2, negdf2, negxf2): Use | |
3061 | -2147483647 - 1 instead of 0x80000000. | |
3062 | ||
88a65e64 RE |
3063 | 2006-09-23 Revital1 Eres <ERES@il.ibm.com> |
3064 | ||
3065 | * flags.h (HONOR_NANS): Fix typo in comment. | |
3066 | ||
895016f6 UB |
3067 | 2006-09-23 Uros Bizjak <uros@kss-loka.si> |
3068 | ||
3069 | * config/i386/driver-i386.c (host_detect_local_cpu): Add prototype. | |
3070 | ||
fcb99e7b JJ |
3071 | 2006-09-23 Jakub Jelinek <jakub@redhat.com> |
3072 | ||
3073 | PR c/28706 | |
3074 | PR c/28712 | |
3075 | * tree.c (merge_attributes, attribute_list_contained): If both | |
3076 | TREE_VALUEs are TREE_LISTs, use simple_cst_list_equal instead of | |
3077 | simple_cst_equal. | |
3078 | * c-typeck.c (comptypes_internal): Don't consider aggregates | |
3079 | in different TUs as compatible if there one set of attributes is | |
3080 | not a subset of the other type's attributes. | |
3081 | (composite_type): Try harder not to create a new aggregate type. | |
3082 | ||
9281e73d GK |
3083 | 2006-09-22 Geoffrey Keating <geoffk@apple.com> |
3084 | ||
682cd442 GK |
3085 | * config/i386/driver-i386.c: Always define host_detect_local_cpu. |
3086 | * config/i386/i386.h: Define EXTRA_SPEC_FUNCTIONS on any i386 | |
3087 | or x86_64 host. Define HAVE_LOCAL_CPU_DETECT. | |
3088 | (CC1_CPU_SPEC): Make conditional on HAVE_LOCAL_CPU_DETECT rather | |
3089 | than replicating condition above. | |
3090 | * config.host (i[34567]86-*-*): Always use driver-i386.o. | |
3091 | ||
9281e73d GK |
3092 | * config/darwin.h (LINK_SYSROOT_SPEC): New. |
3093 | (LINK_SPEC): If TARGET_SYSTEM_ROOT is defined, pass it to | |
3094 | the linker by default. | |
3095 | ||
d1ea7616 MS |
3096 | 2006-09-22 Mike Stump <mrs@apple.com> |
3097 | ||
3098 | * config/rs6000/darwin.h (PROFILE_HOOK): Reassociate comment with | |
3099 | code. | |
3100 | ||
79f802f5 RG |
3101 | 2006-09-22 Richard Guenther <rguenther@suse.de> |
3102 | ||
3103 | PR middle-end/28964 | |
3104 | * cfgexpand.c (stack_var_size_cmp): Use DECL_UID to make | |
3105 | sort of stack variables stable. | |
3106 | ||
2319ffbb PB |
3107 | 2006-09-22 Peter Bergner <bergner@vnet.ibm.com> |
3108 | ||
3109 | PR middle-end/28690 | |
3110 | * explow.c (force_reg): Set REG_POINTER flag according to | |
3111 | MEM_POINTER flag. | |
3112 | ||
36b24193 ZD |
3113 | 2006-09-22 Zdenek Dvorak <dvorakz@suse.cz> |
3114 | ||
3115 | PR tree-optimization/28888 | |
3116 | * tree-if-conv.c (combine_blocks): Rewritten. | |
3117 | * tree-cfg.c (tree_verify_flow_info): Check that edges with | |
3118 | EDGE_TRUE/FALSE_VALUE follow COND_EXPR. | |
3119 | ||
37358746 JJ |
3120 | 2006-09-22 Jakub Jelinek <jakub@redhat.com> |
3121 | ||
3122 | * tree-ssa-propagate.c (set_rhs): Copy EXPR_LOCATION if | |
3123 | needed. | |
3124 | ||
2801ed8e RS |
3125 | 2006-09-21 Richard Sandiford <richard@codesourcery.com> |
3126 | ||
3127 | * varasm.c (copy_constant): Fix reversed gcc_assert check. | |
3128 | ||
6750b31e JJ |
3129 | 2006-09-21 Janis Johnson <janis187@us.ibm.com> |
3130 | ||
3131 | * ginclude/decfloat.h (DEC*_DEN): Define using the correct builtins. | |
3132 | ||
72478f32 RS |
3133 | 2006-09-21 Roger Sayle <roger@eyesopen.com> |
3134 | ||
3135 | PR debug/29132 | |
3136 | * dwarf2out.c (dwarf2out_begin_prologue): Initialise the current label, | |
3137 | dw_fde_current_label, to be the start of the function, i.e. the same | |
3138 | value as dw_fde_begin. | |
3139 | ||
1bded8e1 RS |
3140 | 2006-09-20 Richard Sandiford <richard@codesourcery.com> |
3141 | ||
3142 | * config/mips/mips.c (CODE_FOR_mips_abs_ps): Delete. | |
3143 | * config/mips/mips.md (UNSPEC_ABS_PS): New constant. | |
3144 | (UNSPEC_RSQRT1, UNSPEC_RSQRT2, UNSPEC_RECIP1, UNSPEC_RECIP2) | |
3145 | (UNSPEC_SINGLE_CC, UNSPEC_SCC): Bump values by 1. | |
3146 | (*nmadd<mode>, *nmadd<mode>_fastmath): Require !HONOR_NANS. | |
3147 | (*nmsub<mode>, *nmsub<mode>_fastmath): Likewise. | |
3148 | (abs<mode>2, neg<mode>2): Likewise. | |
3149 | * config/mips/mips-ps-3d.md (mips_abs_ps): New define_expand. | |
3150 | (*mips_abs_ps): New define_insn. | |
3151 | ||
1186ec8c JC |
3152 | 2006-09-20 Josh Conner <jconner@apple.com> |
3153 | ||
3154 | PR middle-end/25505 | |
3155 | * calls.c (expand_call): Allow reuse of structure return stack | |
3156 | temp. | |
3157 | ||
d0cd71a0 PB |
3158 | 2006-09-20 Paul Brook <paul@codesourcery.com> |
3159 | ||
d0cd71a0 PB |
3160 | * config/arm/unwind-arm.c (selfrel_offset31): Clear top bit for |
3161 | positive offsets. | |
3162 | ||
85a92f7e JJ |
3163 | 2006-09-20 Janis Johnson <janis187@us.ibm.com> |
3164 | ||
3165 | * doc/extend.texi (Decimal Float): Update for latest draft TR, | |
3166 | clean up terminology. | |
3167 | ||
4e60515f SE |
3168 | 2006-09-20 Steve Ellcey <sje@cup.hp.com> |
3169 | ||
3170 | PR target/28574 | |
3171 | * ifcvt.c (dead_or_predicable): Don't predicate then blocks | |
3172 | with tablejumps in them. | |
3173 | ||
66bb4f32 JJ |
3174 | 2006-09-20 Jakub Jelinek <jakub@redhat.com> |
3175 | ||
3176 | PR middle-end/28046 | |
3177 | * c-omp.c (c_finish_omp_atomic): If ADDR is not simple enough, | |
3178 | wrap it into TARGET_EXPR. | |
3179 | ||
1e993cb8 EC |
3180 | 2006-09-20 Eric Christopher <echristo@apple.com> |
3181 | ||
3182 | * config/i386/i386.c (x86_fisttp): Remove. | |
3183 | * config/i386/i386.h (x86_fisttp): Ditto. | |
3184 | (TARGET_FISTTP): Ditto. | |
3185 | ||
64ee9490 EC |
3186 | 2006-09-19 Eric Christopher <echristo@apple.com> |
3187 | ||
3188 | * doc/tm.texi (OBJC_JBLEN): Describe. | |
3189 | * config/i386/darwin.h (OBJC_JBLEN): Define. | |
3190 | * config/rs6000/darwin.h: Ditto. | |
3191 | ||
d63e1389 SB |
3192 | 2006-09-19 Steven Bosscher <steven@gcc.gnu.org> |
3193 | ||
3194 | PR rtl-optimization/21299 | |
3195 | * reload1.c (reload): Purge invalid ASMs in the final pass. | |
3196 | ||
7ab62966 SE |
3197 | 2006-09-19 Steve Ellcey <sje@cup.hp.com> |
3198 | ||
3199 | PR 28490 | |
3200 | * config/ia64/ia64.c (ia64_legitimate_constant_p): Allow function | |
3201 | pointers as legitimate constants. | |
3202 | ||
758ed9b2 PB |
3203 | 2006-09-19 Paul Brook <paul@codesourcery.com> |
3204 | ||
3205 | PR target/28516 | |
3206 | * config/arm/arm.c (arm_unwind_emit_set): Handle reg = sp + const. | |
3207 | ||
aac8b8ed RS |
3208 | 2006-09-17 Zdenek Dvorak <dvorakz@suse.cz> |
3209 | ||
3210 | PR tree-optimization/28887 | |
3211 | * tree-ssa-loop-prefetch.c (analyze_ref): Strip nonaddressable | |
3212 | component parts from the reference. | |
3213 | (gather_memory_references_ref): Record the reference without the | |
3214 | nonaddressable component parts. | |
3215 | ||
69723be2 SB |
3216 | 2006-09-17 Steven Bosscher <steven@gcc.gnu.org> |
3217 | ||
3218 | PR c/25993 | |
3219 | * c-opts.c (c_common_handle_option): Ignore the -std options | |
3220 | if the input language is assembly. | |
3221 | ||
7a7d3804 IR |
3222 | 2006-09-17 Ira Rosen <irar@il.ibm.com> |
3223 | ||
b5387733 | 3224 | PR tree-opt/21591 |
7a7d3804 | 3225 | * tree-data-ref.c (ptr_decl_may_alias_p): Look for the name memory |
b5387733 AP |
3226 | tag first. |
3227 | (ptr_ptr_may_alias_p): Likewise. | |
3228 | (record_record_differ_p): New function. | |
3229 | (base_object_differ_p): Call record_record_differ_p. | |
7a7d3804 | 3230 | |
a9fdb86b AP |
3231 | 2006-09-16 Andrew Pinski <pinskia@physics.uc.edu> |
3232 | ||
3233 | PR tree-opt/29059 | |
3234 | * tree-ssa-propagate.c (set_rhs): Reject MODIFY_EXPR right | |
3235 | away for the expr argument. | |
3236 | ||
0c5e4273 SB |
3237 | 2006-09-16 Steven Bosscher <steven@gcc.gnu.org> |
3238 | ||
a9fdb86b | 3239 | PR tree-opt/27742 |
0c5e4273 SB |
3240 | * tree-vectorizer.c (vectorize_loops): Clear vect_loop_location |
3241 | before using it for dumping after vectorizing loops. | |
3242 | ||
a9fdb86b AP |
3243 | 2006-09-16 Andrew Pinski <pinskia@physics.uc.edu> |
3244 | Jack Howarth <howarth@bromo.med.uc.edu> | |
70fb00df AP |
3245 | |
3246 | PR target/29030 | |
3247 | * config/rs6000/rs6000.c (rs6000_darwin64_record_arg_advance_recurse) | |
3248 | skip on error_mark_node. | |
3249 | (rs6000_darwin64_record_arg_recurse): Likewise. | |
3250 | ||
1049f475 SB |
3251 | 2006-09-16 Steven Bosscher <steven@gcc.gnu.org> |
3252 | ||
3253 | * rtl.h (LABEL_OUTSIDE_LOOP_P): Remove. | |
3254 | * doc/rtl.texi: Remove related documentation. | |
3255 | ||
405f0587 BS |
3256 | 2006-09-16 Bernd Schmidt <bernd.schmidt@analog.com> |
3257 | ||
3258 | * loop-doloop.c (doloop_optimize): Remove bogus arg from debugging | |
3259 | printf. | |
3260 | ||
d0970db2 JW |
3261 | 2006-09-15 Jim Wilson <wilson@specifix.com> |
3262 | ||
3263 | * config/ia64/ia64.c (ia64_legitimate_constant_p, cast CONST): | |
3264 | Handle symbol offsets same as they are handled in ia64_expand_move | |
3265 | and move_operand. | |
3266 | ||
7607bdda AT |
3267 | 2006-09-16 Andreas Tobler <a.tobler@schweiz.org> |
3268 | ||
3269 | * loop-doloop.c (doloop_optimize): Change type of max_cost to int. | |
3270 | Add forgotten parameter to the fprintf call. | |
3271 | ||
7ee51a34 SE |
3272 | 2006-09-15 Steve Ellcey <sje@cup.hp.com> |
3273 | ||
3274 | * config/ia64/hpux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Add define. | |
3275 | ||
615d37d2 UB |
3276 | 2006-09-15 Uros Bizjak <uros@kss-loka.si> |
3277 | ||
3278 | * doc/contrib.texi: Add my entry. | |
3279 | ||
a71b1c58 NC |
3280 | 2006-09-15 Nick Clifton <nickc@redhat.com> |
3281 | ||
3282 | * doc/md.texi (Processor pipeline description): Fix typo in | |
3283 | example of how to use the absence_set directive and reword the | |
3284 | description to make it slightly easier to read. | |
3285 | ||
405f0587 | 3286 | 2006-09-15 Bernd Schmidt <bernd.schmidt@analog.com> |
45b9a14b BS |
3287 | |
3288 | * params.def (PARAM_MAX_ITERATIONS_COMPUTATION_COST): New. | |
3289 | * loop-doloop.c (doloop_optimize): Use it to limit costs of | |
3290 | expanding the number of iterations. | |
61066abf | 3291 | * config/bfin/bfin.c (bfin_rtx_costs): Handle UDIV, UMOD. |
45b9a14b | 3292 | |
11b904a1 BS |
3293 | * cfgrtl.c (emit_insn_at_entry): New function. |
3294 | * rtl.h (emit_insn_at_entry): Declare it. | |
3295 | * integrate.c (emit_initial_value_sets): Use it. | |
3296 | ||
5419bc7f BS |
3297 | * cfgrtl.c (emit_insn_at_entry): Use gcc_assert, not abort. |
3298 | ||
e54273eb BS |
3299 | * config/bfin/bfin.c (struct loop_info): New members block_bitmap and |
3300 | bad. | |
3301 | (struct loop_work and related VEC declarations): Delete. | |
3302 | (bfin_dump_loops): Print out new member bad. | |
3303 | (bfin_bb_in_loop): Use plain bitmap test. Don't recurse. | |
3304 | (bfin_scan_loop): Don't recurse. | |
3305 | (bfin_optimize_loop): Don't use a loop depth of -1 to indicate bad | |
3306 | loops. No longer need to update outer loops if the current one is | |
3307 | found bad. Move some validitiy checks to bfin_discover_loop. | |
3308 | (bfin_discover_loop): New function, mostly split from bfin_reorg_loops, | |
3309 | but changed not to check for nesting. Also changed to use the new bad | |
3310 | flag. | |
3311 | (bfin_reorg_loops): Use bfin_discover_loop to find single loops one at a | |
3312 | time. Use bitmap based test to discover loop nesting. | |
3313 | ||
0b35aac2 KH |
3314 | 2006-09-15 Kazu Hirata <kazu@codesourcery.com> |
3315 | ||
3316 | * doc/tm.texi (TARGET_FUNCTION_VALUE): Put @deftypefn all in | |
3317 | one line. | |
3318 | ||
1b03c58a RG |
3319 | 2006-09-14 Richard Guenther <rguenther@suse.de> |
3320 | Kazu Hirata <kazu@codesourcery.com> | |
3321 | ||
3322 | PR middle-end/28884. | |
3323 | * doc/tm.texi (TARGET_FUNCTION_VALUE): Document. | |
3324 | (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE): Deprecate. | |
3325 | Replace mentions of FUNCTION_VALUE and FUNCTION_OUTGOING_VALUE | |
3326 | with TARGET_FUNCTION_VALUE. | |
3327 | ||
e8d0d6d2 AS |
3328 | 2006-09-14 Anatoly Sokolov <aesok@post.ru> |
3329 | ||
3330 | PR target/26504 | |
3331 | * config/avr/avr.h (FRAME_POINTER_CFA_OFFSET): Define. | |
3332 | ||
f5efb27f AH |
3333 | 2006-09-13 Aldy Hernandez <aldyh@redhat.com> |
3334 | ||
b5387733 AP |
3335 | * doc/tree-ssa.texi (Jumps): RESULT_DECL can also be an operand |
3336 | of a RETURN_EXPR | |
f5efb27f | 3337 | |
3c3f1a6f AP |
3338 | 2006-09-13 Andrew Pinski <pinskia@physics.uc.edu> |
3339 | ||
3340 | PR debug/28980 | |
3341 | * dwarf2out.c (loc_descriptor_from_tree_1): Handle | |
3342 | FUNCTION_DECL. | |
3343 | ||
f66fd328 AK |
3344 | 2006-09-13 Andreas Krebbel <krebbel1@de.ibm.com> |
3345 | ||
3346 | * basic_block.h (bb_has_eh_pred): Fix comment. | |
3347 | ||
fcc42bca AK |
3348 | 2006-09-13 Andreas Krebbel <krebbel1@de.ibm.com> |
3349 | ||
3350 | * flow.c (calculate_global_regs_live): Invalidate eh registers | |
3351 | on eh edges. Renamed invalidated_by_call to invalidated_by_eh_edge. | |
3352 | (propagate_block): Handle eh registers as if they were set at basic | |
3353 | block start. | |
3354 | * except.c (dw2_build_landing_pads): Don't emit clobbers for eh | |
3355 | registers. | |
3356 | * global.c (global_conflicts): Make eh registers to conflict with | |
3357 | pseudos live at basic block begin. | |
3358 | * basic_block.h (bb_has_eh_pred): New function. | |
3359 | ||
4b7b277a RS |
3360 | 2006-09-13 Richard Sandiford <richard@codesourcery.com> |
3361 | ||
3362 | PR rtl-optimization/28982 | |
3363 | * reload.c (find_reloads_address_1): Use RELOAD_OTHER for the | |
3364 | index of a PRE_MODIFY or POST_MODIFY address. | |
3365 | * reload1.c (inc_for_reload): Use find_replacement on the original | |
3366 | base and index registers. | |
3367 | ||
04df96dd L |
3368 | 2006-09-12 H.J. Lu <hongjiu.lu@intel.com> |
3369 | ||
3370 | * doc/invoke.texi (mpreferred-stack-boundary): Remove exception | |
3371 | for -Os. Update __m128 alignment requirement. | |
3372 | ||
26eeea94 JH |
3373 | 2006-09-13 Jan Hubicka <jh@suse.cz> |
3374 | ||
3375 | * cfganal.c (compute_dominance_frontiers_1): Don't be quadratic. | |
3376 | ||
7e721950 EB |
3377 | 2006-09-12 Eric Botcazou <ebotcazou@libertysurf.fr> |
3378 | ||
3379 | PR rtl-optimization/28243 | |
3380 | * combine.c (distribute_notes) <REG_DEAD>: Do not consider SETs past | |
3381 | the insn to which the note was originally attached. | |
3382 | ||
66cccea6 AP |
3383 | 2006-09-12 Andrew Pinski <pinskia@physics.uc.edu> |
3384 | Roger Sayle <roger@eyesopen.com> | |
3385 | ||
3386 | * dwarf2out.c (file_table_last_lookup): Move this GC'd declaration | |
3387 | outside of #ifdef DWARF2_DEBUGGING_INFO to fix bootstrap failure | |
3388 | on platforms that don't use dwarf for debug info. | |
3389 | ||
f0119413 JM |
3390 | 2006-09-12 Jason Merrill <jason@redhat.com> |
3391 | ||
3392 | PR middle-end/28493 | |
3393 | * builtins.c (expand_builtin_setjmp_receiver): Clobber | |
3394 | hard_frame_pointer_rtx after using it to update the frame pointer. | |
3395 | ||
fb8cbd3c RS |
3396 | 2006-09-12 Roger Sayle <roger@eyesopen.com> |
3397 | ||
3398 | * target-def.h (TARGET_ASM_OPEN_PAREN): Guard with an #ifndef. | |
3399 | (TARGET_ASM_CLOSE_PAREN): Likewise. | |
3400 | * config/alpha/osf5.h (TARGET_ASM_OPEN_PAREN): Define. | |
3401 | (TARGET_ASM_CLOSE_PAREN): Likewise. | |
3402 | ||
b598cb38 RS |
3403 | 2006-09-12 Roger Sayle <roger@eyesopen.com> |
3404 | ||
3405 | PR target/22223 | |
3406 | * config/alpha/alpha.c (alpha_start_function): Don't emit stack | |
3407 | frame information for frames larger than 512 Kbytes on Tru64 when | |
3408 | using the native assembler. | |
3409 | ||
4c6669c2 RS |
3410 | 2006-09-12 Roger Sayle <roger@eyesopen.com> |
3411 | ||
3412 | PR middle-end/4520 | |
3413 | PR bootstrap/28784 | |
3414 | * cselib.c (cselib_hash_rtx): Avoid hashing on the address of labels | |
3415 | and symbols. Instead use the implementation from cse.c's hash_rtx. | |
3416 | ||
93c094b5 JH |
3417 | 2006-09-12 Jan Hubicka <jh@suse.cz> |
3418 | ||
3419 | PR rtl-optimization/28071 | |
3420 | * tree-vect-transform.c (vect_create_data_ref_ptr): Kill cast. | |
3421 | (vect_transform_loop): Likewise. | |
3422 | * tree-vectorizer.c (new_loop_vec_info): Likewise. | |
3423 | (new_loop_vec_info): Likewise. | |
3424 | (destroy_loop_vec_info): Likewise. | |
3425 | * tree-dfa.c (create_var_ann): Use GCC_CNEW. | |
3426 | (create_stmt_ann): Likewise. | |
3427 | (create_tree_ann): Rename to ... | |
3428 | (create_tree_common_ann): ... this one; allocate only the common part | |
3429 | of annotations. | |
3430 | * tree-vn.c (set_value_handle): Use get_tree_common_ann. | |
3431 | (get_value_handle): Likewise. | |
3432 | * tree-ssa-pre.c (phi_translate): Delay annotation allocation for | |
3433 | get_tree_common_ann. | |
3434 | * tree-vectorizer.h (set_stmt_info): Take stmt annotation. | |
3435 | (vinfo_for_stmt): Use stmt annotations. | |
3436 | * tree-flow.h (tree_ann_common_t): New type. | |
3437 | (tree_common_ann, get_tree_common_ann, create_tree_common_ann): New. | |
3438 | (tree_ann, get_tree_ann, create_tree_ann): New. | |
3439 | * tree-flow-inline.h (get_function_ann): Do more type checking. | |
3440 | (stmt_ann): Likewise. | |
3441 | (tree_ann): Rename to ... | |
3442 | (tree_common_ann): ... this one; return ony common_ann | |
3443 | (get_tree_ann): Rename to ... | |
3444 | (tree_common_ann): This one; return only common_ann. | |
3445 | * tree-vect-patterns.c (vect_pattern_recog_1): Update call | |
3446 | of set_stmt_info. | |
3447 | ||
d5688810 GK |
3448 | 2006-09-11 Geoffrey Keating <geoffk@apple.com> |
3449 | ||
703706d7 GK |
3450 | * config.gcc (i[34567]86-*-darwin*): Set with_arch and |
3451 | with_cpu by default. | |
3452 | ||
d5688810 GK |
3453 | * dwarf2out.c (dwarf_file_data): New. |
3454 | (enum dw_val_class): Add dw_val_class_file. | |
3455 | (struct dw_val_struct): Add val_file. | |
3456 | (file_table): Change to a hash table. | |
3457 | (file_table_emitted): Delete. | |
3458 | (file_table_last_lookup_index): Delete. | |
3459 | (emitcount): Delete. | |
3460 | (last_emitted_file): New. | |
3461 | (lookup_filename): Change prototype to return a struct dwarf_file_data. | |
3462 | (init_file_table): Delete. | |
3463 | (maybe_emit_file): Change prototype to take a struct dwarf_file_data. | |
3464 | (AT_addr): Add comment. | |
3465 | (add_AT_file): New. | |
3466 | (AT_file): New. | |
3467 | (get_AT_file): New. | |
3468 | (print_die): Handle dw_val_class_file. | |
3469 | (print_dwarf_line_table): Update for new file table structure. | |
3470 | (attr_checksum): Do checksum a filename. | |
3471 | (same_dw_val_p, same_attr_p): Do compare a filename. | |
3472 | (size_of_die): Handle dw_val_class_file. | |
3473 | (value_format): Likewise. | |
3474 | (output_die): Likewise. Also, call maybe_emit_file here. | |
3475 | (struct file_info): Constify filenames. Make file_idx a pointer | |
3476 | to a struct dwarf_file_data. | |
3477 | (struct dir_info): Constify directory names. Remove 'used' field. | |
3478 | (struct file_name_acquire_data): New. | |
3479 | (file_name_acquire): New. | |
3480 | (output_file_names): Modify to handle new file data structures. | |
3481 | (add_src_coords_attributes): Use add_AT_file. | |
3482 | (add_call_src_coords_attributes): Likewise. | |
3483 | (dwarf2out_imported_module_or_decl): Likewise. | |
3484 | (gen_subprogram_die): Modify for new file data structures. | |
3485 | (gen_variable_die): Likewise. | |
3486 | (file_table_eq): New. | |
3487 | (file_table_hash): New. | |
3488 | (file_table_last_lookup): New. | |
3489 | (lookup_filename): Rewrite to handle new file data structures. | |
3490 | (maybe_emit_file): Rewrite to handle new file data structures. | |
3491 | (dwarf2out_source_line): Always call lookup_filename and | |
3492 | maybe_emit_file. | |
3493 | (dwarf2out_init): Create file_table here. | |
3494 | (prune_unused_types_walk_attribs): Don't call maybe_emit_file here. | |
3495 | (file_table_relative_p): New. | |
3496 | (dwarf2out_finish): Change detection of relative filenames | |
3497 | to work with new file data structures. Move output_line_info call | |
3498 | after debug_info output. | |
3499 | ||
1395ea39 L |
3500 | 2006-09-11 H.J. Lu <hongjiu.lu@intel.com> |
3501 | ||
3502 | PR target/13685 | |
3503 | PR target/27537 | |
3504 | PR target/28621 | |
3505 | * config/i386/i386.c (override_options): Always default to 16 | |
3506 | byte stack boundary. | |
3507 | ||
d3067303 AO |
3508 | 2006-09-11 Alexandre Oliva <aoliva@redhat.com> |
3509 | ||
3510 | PR target/28672 | |
3511 | * var-tracking.c (dump_dataflow_set): Start dumping at | |
3512 | register zero. | |
3513 | (clobber_variable_part): Kill only the variable part in | |
3514 | registers holding it, leaving other variables alone. | |
3515 | ||
b7886f14 JT |
3516 | 2006-09-11 Josh Triplett <josh@freedesktop.org> |
3517 | ||
3518 | * doc/extend.texi (Other Builtins): Actually use the macro | |
3519 | argument in the documentation example for | |
3520 | __builtin_types_compatible_p. | |
3521 | ||
2e9182fd EB |
3522 | 2006-09-11 Eric Botcazou <ebotcazou@libertysurf.fr> |
3523 | ||
3524 | PR rtl-optimization/28726 | |
3525 | * sched-deps.c (sched_analyze_reg): New function extracted from... | |
3526 | (sched_analyze_1): ...here. Call it to analyze references to | |
3527 | registers. Treat again writes to a stack register as writing to the | |
3528 | register. | |
3529 | (sched_analyze_2): ...and here. Call it to analyze references to | |
3530 | registers. Treat again reads of a stack register as reading the | |
3531 | register. | |
3532 | ||
d2952008 GR |
3533 | 2006-09-11 Guenter Roeck <guenter@roeck-us.net> |
3534 | David Edelsohn <edelsohn@gnu.org> | |
3535 | ||
3536 | PR target/27287 | |
3537 | * config/rs6000/spe.md (frob_df_di): Remove %H. | |
3538 | (frob_di_df): Remove %H. Change evmergelo to mr. | |
3539 | (frob_di_df_2): Remove %H. Change evldd to two loads. | |
3540 | ||
0c387be3 HI |
3541 | 2006-09-11 Hideki Iwamoto <h-iwamoto@kit.hi-ho.ne.jp> |
3542 | ||
3543 | * doc/cpp.texi: Fix names of charset options. | |
3544 | ||
748dc0c9 AP |
3545 | 2006-09-10 Andrew Pinski <pinskia@physics.uc.edu> |
3546 | ||
3547 | PR target/29009 | |
3548 | * config/i386/i386.c (override_options): Use 128-bit | |
3549 | stack boundary always for 64bits. | |
3550 | ||
de097a3b EB |
3551 | 2006-09-10 Eric Botcazou <ebotcazou@libertysurf.fr> |
3552 | ||
3553 | PR rtl-optimization/28636 | |
3554 | * combine.c (force_to_mode): Test for side-effects before | |
3555 | substituting by zero. | |
3556 | (simplify_shift_const): Likewise for zero or other constants. | |
3557 | ||
4fe337f6 SB |
3558 | 2006-09-10 Steven Bosscher <steven@gcc.gnu.org> |
3559 | ||
3560 | PR middle-end/26983 | |
3561 | * builtins.c (expand_builtin_setjmp): Force next_lab to be | |
3562 | preserved. | |
3563 | ||
9226543b RS |
3564 | 2006-09-10 Richard Sandiford <richard@codesourcery.com> |
3565 | ||
3566 | PR target/29006 | |
3567 | * config/mips/mips-protos.h (mips_mem_fits_mode_p): Declare. | |
3568 | * config/mips/mips.c (mips_expand_unaligned_store): Use the mode | |
3569 | returned by mode_for_size, rather than the mode of src itself, | |
3570 | to choose between 32-bit and 64-bit patterns. | |
3571 | (mips_mem_fits_mode_p): New function. | |
3572 | * config/mips/mips.md (mov_<load>l, mov_<load>r): Use it to check | |
3573 | that the size of the source matches the size of the destination. | |
3574 | (mov_<store>l, mov_<store>r): Likewise. | |
3575 | ||
ca6f2eef EC |
3576 | 2006-09-10 Eric Christopher <echristo@apple.com> |
3577 | ||
3578 | * config/darwin.c (machopic_select_rtx_section): Add CONST_VECTOR | |
3579 | for literal16. | |
3580 | ||
1be1e2dd EC |
3581 | 2006-09-09 Eric Christopher <echristo@apple.com> |
3582 | ||
3583 | PR target/28995 | |
3584 | * config/darwin.c (machopic_select_rtx_section): Add TARGET_64BIT | |
3585 | for literal16. | |
3586 | ||
66cc7362 RS |
3587 | 2006-09-09 Roger Sayle <roger@eyesopen.com> |
3588 | Nicolas Setton <setton@adacore.com> | |
3589 | ||
3590 | * dwarf2out.c (convert_cfa_to_fb_loc_list): Handle DW_CFA_set_loc. | |
3591 | ||
7a34bba9 AS |
3592 | 2006-09-10 Andreas Schwab <schwab@suse.de> |
3593 | ||
3594 | * config/m68k/m68k.md (bungt_rev): New pattern. | |
3595 | ||
8b649f3f PB |
3596 | 2006-09-09 Paolo Bonzini <bonzini@gnu.org> |
3597 | Dale Johannesen <dalej@apple.com> | |
3598 | ||
3599 | PR target/26778 | |
3600 | * regclass.c (struct reg_pref): Update documentation. | |
3601 | (regclass): Set prefclass to NO_REGS if memory is the best option. | |
3602 | (record_reg_classes): Cope with a prefclass set to NO_REGS. | |
3603 | ||
f7288899 EC |
3604 | 2006-09-08 Eric Christopher <echristo@apple.com> |
3605 | ||
3606 | * config.gcc (i?86-*-darwin): Add 64-bit HWI support. | |
3607 | * config/t-slibgcc-darwin: Support x86_64 multilib. | |
3608 | * config/i386/i386.h (JUMP_TABLES_IN_TEXT_SECTION): | |
3609 | Return 1 for x86_64-darwin. | |
3610 | * config/i386/t-darwin: Add m64 multilib. | |
3611 | (LIB2_SIDITI_CONV_FUNCS): Use. | |
3612 | (LIB2FUNCS_EXTRA): Ditto. | |
3613 | * config/i386/darwin.h: Support x86_64. | |
3614 | * config/i386/i386.c (override_options): Turn on flag_pic | |
3615 | for x86_64-darwin. Disable flag_omit_pointer. | |
3616 | (get_pc_thunk_name): Assert !TARGET_64BIT. | |
3617 | (legitimate_address_p): Disable machopic addressing for | |
3618 | x86_64. | |
3619 | (legitimize_pic_address): Ditto. | |
3620 | (ix86_expand_move): Ditto. | |
3621 | (ix86_expand_call): Ditto. | |
3622 | (machopic_output_stub): Ditto. | |
3623 | * config/darwin.c (machopic_select_section): Support literal16. | |
3624 | (machopic_select_rtx_section): Ditto. | |
3625 | * config/darwin-sections.def: Ditto. | |
3626 | * config/darwin-64.c: New. | |
3627 | ||
3542a5c0 JM |
3628 | 2006-09-08 Joseph S. Myers <joseph@codesourcery.com> |
3629 | ||
3630 | PR c/28504 | |
3631 | * c-tree.h (struct c_arg_info): Add pending_sizes. | |
3632 | * c-parser.c (c_parser_parms_declarator, | |
3633 | c_parser_parms_list_declarator): Initialize pending_sizes. | |
3634 | * c-decl.c (get_parm_info): Initialize pending_sizes. | |
3635 | (get_parm_info): Set pending_sizes. | |
3636 | (grokdeclarator): Call put_pending_sizes for parameters for | |
3637 | function definition only. | |
3638 | ||
d0655f33 JM |
3639 | 2006-09-07 Jason Merrill <jason@redhat.com> |
3640 | ||
df20ea24 JM |
3641 | PR middle-end/27724 |
3642 | * varasm.c (output_constant): Only strip actual no-op conversions. | |
3643 | ||
d0655f33 JM |
3644 | PR target/13685 |
3645 | * config/i386/i386.c (override_options): Use 128-bit | |
3646 | stack boundary if -msse. | |
3647 | ||
2e71a7a3 EC |
3648 | 2006-09-07 Eric Christopher <echristo@apple.com> |
3649 | ||
3650 | * config/darwin.h (MACHO_SYMBOL_FLAG_VARIABLE): Update | |
3651 | comment. | |
3652 | * config/i386/darwin.h (MACHO_SYMBOL_FLAG_VARIABLE): | |
3653 | Redefine. | |
3654 | ||
10b01bca GK |
3655 | 2006-09-07 Geoffrey Keating <geoffk@apple.com> |
3656 | ||
3657 | * dwarf2out.c: Remove strange characters from comment above | |
3658 | dwarf2out_frame_debug_expr. | |
3659 | ||
05d36da1 EC |
3660 | 2006-09-07 Eric Christopher <echristo@apple.com> |
3661 | ||
3662 | * config/rs6000/darwin.h (HANDLE_SYSV_PRAGMA): Move from here... | |
3663 | * config/darwin.h: ... to here. | |
3664 | ||
995cc369 L |
3665 | 2006-09-07 H.J. Lu <hongjiu.lu@intel.com> |
3666 | ||
3667 | * config/i386/i386.c (x86_partial_flag_reg_stall): New. | |
3668 | ||
3669 | * config/i386/i386.h (x86_partial_flag_reg_stall): New. | |
3670 | (TARGET_PARTIAL_FLAG_REG_STALL): New. | |
3671 | ||
3672 | * config/i386/i386.md (*ashldi3_cmp_rex64): Disabled for | |
3673 | TARGET_PARTIAL_FLAG_REG_STALL. | |
3674 | (*ashldi3_cconly_rex64): Likewise. | |
3675 | (*ashlsi3_cmp): Likewise. | |
3676 | (*ashlsi3_cconly): Likewise. | |
3677 | (*ashlsi3_cmp_zext): Likewise. | |
3678 | (*ashlhi3_cmp): Likewise. | |
3679 | (*ashlhi3_cconly): Likewise. | |
3680 | (*ashlqi3_cmp): Likewise. | |
3681 | (*ashlqi3_cconly): Likewise. | |
3682 | (*ashrdi3_cmp_rex64): Likewise. | |
3683 | (*ashrdi3_cconly_rex64): Likewise. | |
3684 | (*ashrsi3_cmp): Likewise. | |
3685 | (*ashrsi3_cconly): Likewise. | |
3686 | (*ashrsi3_cmp_zext): Likewise. | |
3687 | (*ashrhi3_cmp): Likewise. | |
3688 | (*ashrhi3_cconly): Likewise. | |
3689 | (*ashrqi3_cmp): Likewise. | |
3690 | (*ashrqi3_cconly): Likewise. | |
3691 | (*lshrdi3_cmp_rex64): Likewise. | |
3692 | (*lshrdi3_cconly_rex64): Likewise. | |
3693 | (*lshrsi3_cmp): Likewise. | |
3694 | (*lshrsi3_cconly): Likewise. | |
3695 | (*lshrsi3_cmp_zext): Likewise. | |
3696 | (*lshrhi3_cmp): Likewise. | |
3697 | (*lshrhi3_cconly): Likewise. | |
3698 | (*lshrqi2_cmp): Likewise. | |
3699 | (*lshrqi2_cconly): Likewise. | |
3700 | ||
f42684d5 UB |
3701 | 2006-09-07 Uros Bizjak <uros@kss-loka.si> |
3702 | ||
3703 | PR target/28946 | |
3704 | * config/i386/i386.md ("*ashldi3_cconly_rex64", "*ashlsi3_cconly", | |
3705 | "*ashlhi3_cconly", "*ashlqi3_cconly", "*ashrdi3_one_bit_cconly_rex64", | |
3706 | "*ashrdi3_cconly_rex64", "*ashrsi3_one_bit_cconly", "*ashrsi3_cconly", | |
3707 | "*ashrhi3_one_bit_cconly", "*ashrhi3_cconly", | |
3708 | "*ashrqi3_one_bit_cconly", "*ashrqi3_cconly", | |
3709 | "*lshrdi3_cconly_one_bit_rex64", "*lshrdi3_cconly_rex64", | |
3710 | "*lshrsi3_one_bit_cconly", "*lshrsi3_cconly", | |
3711 | "*lshrhi3_one_bit_cconly", "*lshrhi3_cconly", | |
3712 | "*lshrqi2_one_bit_cconly", "*lshrqi2_cconly": New patterns to | |
3713 | implement only CC setting effects of shift instructions. | |
3714 | ||
c3876226 MM |
3715 | 2006-09-07 Martin Michlmayr <tbm@cyrius.com> |
3716 | ||
3717 | * doc/contrib.texi: Add myself. | |
3718 | ||
c9eee440 AP |
3719 | 2006-09-07 Andrew Pinski <pinskia@physics.uc.edu> |
3720 | ||
3721 | PR middle-end/28862 | |
3722 | * stor-layout.c (relayout_decl): Don't zero the alignment if it | |
3723 | was set by the user. | |
3724 | ||
62bf45a5 PB |
3725 | 2006-09-07 Paolo Bonzini <bonzini@gnu.org> |
3726 | ||
3727 | PR target/27117 | |
3728 | * config/sh/sh.md (divsi_inv_qitable, divsi_inv_hitable): New patterns. | |
3729 | (divsi_inv_m1): Use them. | |
3730 | (UNSPEC_DIV_INV_TABLE): New constant. | |
3731 | ||
b5b84a7f AP |
3732 | 2006-09-06 James E Wilson <wilson@specifix.com> |
3733 | ||
3734 | PR rtl-opt/27883 | |
3735 | * flow.c (update_life_info): If UPDATE_LIFE_LOCAL and PROP_DEATH_NOTES | |
3736 | then call count_or_remove_death_notes. | |
3737 | ||
c08cd4c1 JM |
3738 | 2006-09-06 Jason Merrill <jason@redhat.com> |
3739 | ||
3740 | PR c++/27371 | |
3741 | * tree-inline.c (copy_result_decl_to_var): New fn. | |
3742 | (declare_return_variable): Use it. Call declare_inline_vars here. | |
3743 | (expand_call_inline): Not here. | |
3744 | ||
1b65e501 DN |
3745 | 2006-09-06 Diego Novillo <dnovillo@redhat.com> |
3746 | ||
3747 | * doc/contrib.texi: Update my entry. | |
3748 | ||
7034d31b NC |
3749 | 2006-09-06 Nick Clifton <nickc@redhat.com> |
3750 | ||
3751 | * config/frv/frv.h (EXTRA_MEMORY_CONSTRAINT): Define. | |
3752 | ||
c7f965b6 AP |
3753 | 2006-09-05 Andrew Pinski <pinskia@physics.uc.edu> |
3754 | ||
3755 | PR tree-opt/28937 | |
3756 | * tree-flow.h (tree_ssa_unswitch_loops): Return unsigned int. | |
3757 | (canonicalize_induction_variables): Likewise. | |
3758 | (tree_unroll_loops_completely): Likewise. | |
3759 | (tree_ssa_prefetch_arrays): Likewise. | |
3760 | (remove_empty_loops): Likewise. | |
3761 | * tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Return | |
3762 | TODO_cleanup_cfg instead of directly calling | |
3763 | cleanup_tree_cfg_loop. | |
3764 | * tree-ssa-loop-ivcanon.c (canonicalize_induction_variables): | |
3765 | Likewise. | |
3766 | (tree_unroll_loops_completely): Likewise. | |
3767 | (remove_empty_loops): Likewise. | |
3768 | * tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Likewise. | |
3769 | * tree-ssa-loop.c (tree_ssa_loop_unswitch): Use the return value | |
3770 | of tree_ssa_unswitch_loops. | |
3771 | (tree_ssa_loop_ivcanon): Use the return value of | |
3772 | canonicalize_induction_variables. | |
3773 | (tree_ssa_empty_loop): Use the return value of | |
3774 | remove_empty_loops. | |
3775 | (tree_complete_unroll): Use the return value of | |
3776 | tree_unroll_loops_completely. | |
3777 | (tree_ssa_loop_prefetch): Use the return value of | |
3778 | tree_ssa_prefetch_arrays. | |
3779 | * passes.c (execute_todo): Before Cleanup CFG, set | |
3780 | updating_used_alone and after cleanup CFG, call | |
3781 | recalculate_used_alone. | |
3782 | ||
10b96810 AP |
3783 | 2006-09-05 Andrew Pinski <pinskia@physics.uc.edu> |
3784 | ||
3785 | PR tree-opt/28952 | |
3786 | * tree-vect-transform.c (vectorizable_condition): Move the check | |
3787 | for the type after the check for simple condition. | |
3788 | ||
650a59ef R |
3789 | 2006-09-05 J"orn Rennecke <joern.rennecke@st.com> |
3790 | Kaz Kojima <kkojima@gcc.gnu.org> | |
3791 | ||
3792 | PR target/28764 | |
3793 | * mode-switching.c (optimize_mode_switching): Make the destination | |
3794 | block of an abnormal edge have no anticipatable mode. Don't | |
3795 | insert mode switching code at the end of the source block of | |
3796 | an abnormal edge. | |
3797 | ||
d26cef13 PB |
3798 | 2006-09-05 Paolo Bonzini <bonzini@gnu.org> |
3799 | ||
3800 | PR rtl-optimization/26847 | |
3801 | * simplify-rtx.c (struct simplify_plus_minus_op_data): Remove ix. | |
3802 | (simplify_plus_minus_op_data_cmp): For REGs, break ties on the regno. | |
3803 | (simplify_plus_minus): Count n_constants while filling ops. Replace | |
3804 | qsort with insertion sort. Before going through the array to simplify | |
3805 | pairs, sort it. Delay early exit until after the first sort, exiting | |
3806 | only if no swaps occurred. Simplify pairs in reversed order, without | |
3807 | special-casing the first iteration. Pack ops after simplifying pairs. | |
3808 | ||
3809 | 2006-09-05 Anatoly Sokolov <aesok@post.ru> | |
9a7fd67a | 3810 | |
10b96810 AP |
3811 | * config/avr/avr.c (avr_mcu_types): Add support for at90pwm1 device. |
3812 | * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.). | |
3813 | * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.). | |
3814 | (avr_rtx_costs): Mark 'outer_code' argument with ATTRIBUTE_UNUSED. | |
9a7fd67a | 3815 | |
575643d5 RG |
3816 | 2006-09-05 Richard Guenther <rguenther@suse.de> |
3817 | ||
3818 | PR tree-optimization/28900 | |
3819 | * tree-if-conv.c (find_phi_replacement_condition): Gimplify | |
3820 | compound conditional before creating COND_EXPR condition. | |
3821 | ||
b2db9220 RG |
3822 | 2006-09-05 Richard Guenther <rguenther@suse.de> |
3823 | ||
3824 | PR tree-optimization/28905 | |
3825 | * tree-vrp.c (fix_equivalence_set): Manually implement | |
3826 | !value_ranges_intersect_p to also handle symbolic ranges. | |
3827 | ||
f393e7f5 RG |
3828 | 2006-09-05 Richard Guenther <rguenther@suse.de> |
3829 | ||
3830 | PR middle-end/28935 | |
3831 | * tree-ssa-ccp.c (fold_stmt_r): Make sure to fold the condition | |
3832 | of a COND_EXPR. | |
3833 | ||
5bb51e1d EB |
3834 | 2006-09-04 Eric Botcazou <ebotcazou@libertysurf.fr> |
3835 | ||
3836 | PR rtl-optimization/27616 | |
3837 | * cse.c (table_size): New static variable. | |
3838 | (new_basic_block): Initialize it to 0. | |
3839 | (remove_from_table): Decrement it. | |
3840 | (insert): Increment it. | |
3841 | (fold_rtx_mem_1): New function, renamed from fold_rtx_mem. | |
3842 | (fold_rtx_mem): Enforce a cap on the recursion depth. Call | |
3843 | fold_rtx_mem_1 if under the cap. | |
3844 | (fold_rtx) <RTX_COMM_ARITH>: In the associative case, delay a little | |
3845 | the lookup of the equivalent expression and test for equality of the | |
3846 | first operand of the equivalent expression before in turn looking up | |
3847 | an equivalent constant for the second operand. | |
3848 | ||
b73aec4f GK |
3849 | 2006-09-02 Geoffrey Keating <geoffk@apple.com> |
3850 | ||
3851 | Revert this change: | |
3852 | 2006-03-17 Alexandre Oliva <aoliva@redhat.com> | |
3853 | * dwarf2out.c (dwarf2out_stack_adjust): Always track the stack | |
3854 | pointer, instead of assuming it is possible to derive the | |
3855 | correct args size from a call insn. | |
3856 | ||
bc038ad5 JJ |
3857 | 2006-09-02 Jakub Jelinek <jakub@redhat.com> |
3858 | ||
3859 | PR middle-end/27567 | |
3860 | * builtins.c (fold_builtin_memcpy, fold_builtin_memmove): Remove. | |
3861 | (fold_builtin_mempcpy): Rename to... | |
3862 | (fold_builtin_memory_op): ... this. Optimize one element copy | |
3863 | into an assignment. | |
3864 | (fold_builtin_memset, fold_builtin_bzero, fold_builtin_bcopy): New | |
3865 | functions. | |
3866 | (expand_builtin_strcpy, expand_builtin_strncpy): Handle COMPOUND_EXPR. | |
3867 | (expand_builtin_memcpy, expand_builtin_mempcpy, | |
3868 | expand_builtin_memmove): Likewise. Use fold_builtin_memory_op. | |
3869 | (fold_builtin_1): Handle BUILT_IN_MEMSET, BUILT_IN_BZERO and | |
3870 | BUILT_IN_BCOPY. Use fold_builtin_memory_op for | |
3871 | BUILT_IN_MEM{CPY,PCPY,MOVE}. | |
3872 | ||
0166ff05 DD |
3873 | 2006-09-01 DJ Delorie <dj@redhat.com> |
3874 | ||
3875 | * config/m32c/cond.md (cbranch<mode>4): Defer splitting until after reload. | |
3876 | (stzx_16): Likewise. | |
3877 | ("stzx_24_<mode>"): Likewise. | |
3878 | ("stzx_reversed_<mode>"): Likewise, and make mode-specific. | |
3879 | ("cmp<mode>_op"): New. | |
3880 | (cmp<mode>): Change to expander; just save operands. | |
3881 | (b<code>_op): New. | |
3882 | (b<code>): Change to expander, emit compare here. | |
3883 | (s<code>_op): Change to use split and expander. | |
3884 | (s<code>_24_op): Likewise. | |
3885 | (s<code>_<mode>): New. | |
3886 | (s<code>_<mode>_24): New. | |
3887 | (movqicc_<code>_<mode): New. | |
3888 | (movhicc_<code>_<mode>): New. | |
3889 | (s<code>): New. | |
3890 | (s<code>_24): New. | |
3891 | * config/m32c/m32c.c (compare_op0, compare_op1): New. | |
3892 | (m32c_pend_compare): New. | |
3893 | (m32c_unpend_compare): New. | |
3894 | (m32c_expand_scc): New. | |
3895 | (m32c_expand_movcc): Emit the compare also. | |
3896 | * config/m32c/predicates.md (mra_nopp_operand): New. | |
3897 | ||
537b8a35 R |
3898 | 2006-09-01 J"orn Rennecke <joern.rennecke@st.com> |
3899 | Richard Guenther <rguenther@suse.de> | |
3900 | Adam Nemet <anemet@caviumnetworks.com> | |
3901 | ||
3902 | PR middle-end/27226 | |
3903 | * builtins.c (get_pointer_alignment): Handle more forms | |
3904 | of base addresses that can be used to derive more precise | |
3905 | information about alignment. | |
3906 | ||
4832214a JM |
3907 | 2006-09-01 Jason Merrill <jason@redhat.com> |
3908 | ||
3909 | PR c++/28899 | |
3910 | * gimplify.c (gimplify_modify_expr_rhs) [BIND_EXPR]: Handle | |
3911 | want_value. | |
3912 | ||
3913 | * gimplify.c (voidify_wrapper_expr): Handle null type. | |
3914 | ||
f0ce7858 JC |
3915 | 2006-09-01 Josh Conner <jconner@apple.com> |
3916 | ||
3917 | PR c++/25505 | |
3918 | * tree-nrv.c (dest_safe_for_nrv_p): New function. | |
3919 | (execute_return_slot_opt): Use it. | |
3920 | ||
ebdd079a JC |
3921 | 2006-08-31 Josh Conner <jconner@apple.com> |
3922 | ||
3923 | PR c++/25505 | |
3924 | * tree-gimple.c (is_gimple_mem_rhs): Recognize functions | |
3925 | returning aggregates. | |
3926 | ||
1e5787ef ZD |
3927 | 2006-08-31 Zdenek Dvorak <dvorakz@suse.cz> |
3928 | ||
3929 | PR tree-optimization/28839 | |
3930 | * tree-into-ssa.c (prune_unused_phi_nodes): Take into account kills in | |
3931 | blocks in that phi arguments appear. | |
3932 | ||
6a10f7b3 RS |
3933 | 2006-08-31 Roger Sayle <roger@eyesopen.com> |
3934 | ||
3935 | PR other/22313 | |
3936 | * dwarf2out.c (add_fde_cfi): Use a set_loc if the current label is | |
05d36da1 | 3937 | NULL, otherwise use an advance_loc4 to adjust relative to the |
6a10f7b3 RS |
3938 | current label. |
3939 | (output_cfi) <DW_CFA_set_loc>: Update the current label. | |
3940 | (dwarf2out_switch_text_section): Reset the current label to avoid | |
3941 | using advance_loc4 over section boundaries. | |
3942 | ||
e4f2cd43 AK |
3943 | 2006-08-31 Andreas Krebbel <krebbel1@de.ibm.com> |
3944 | ||
3945 | PR target/24367 | |
3946 | * config/s390/s390.md ("movsi", "movdi" expander): Accept rtxes like | |
3947 | r12 + SYMBOLIC_CONST. | |
3948 | ||
c87555d6 RG |
3949 | 2006-08-30 Richard Guenther <rguenther@suse.de> |
3950 | ||
3951 | * Makefile.in (see.o): Add $(EXPR_H) dependency. | |
3952 | ||
dc14f191 ZD |
3953 | 2006-08-30 Zdenek Dvorak <dvorakz@suse.cz> |
3954 | ||
3955 | PR rtl-optimization/27735 | |
3956 | * cfgloopmanip.c (fix_loop_placements, fix_bb_placements, unloop): | |
3957 | Add new argument to keep track of whether an irreducible region | |
3958 | was affected. All callers changed. | |
3959 | (fix_irreducible_loops): Removed. | |
3960 | (remove_path): Call mark_irreducible_loops if EDGE_IRREDUCIBLE_LOOP | |
3961 | flags were invalidated. | |
3962 | ||
e370818b L |
3963 | 2006-08-29 H.J. Lu <hongjiu.lu@intel.com> |
3964 | ||
3965 | * config/i386/i386.md (*fop_df_comm_mixed): Match DF operands | |
3966 | instead of SF operands. | |
3967 | (*fop_df_comm_sse): Likewise. | |
3968 | (*fop_df_comm_i387): Likewise. | |
3969 | (*fop_df_1_mixed): Likewise. | |
3970 | (*fop_df_1_sse): Likewise. | |
3971 | ||
b666f3cf | 3972 | 2006-08-29 Andrew Pinski <pinskia@physics.uc.edu> |
227e9f62 JR |
3973 | J"orn Rennecke <joern.rennecke@st.com> |
3974 | ||
3975 | PR tree-optimization/17506 | |
3976 | * tree-ssa.c (warn_uninit): If warning about a location outside of | |
3977 | the current function, note where the variable was declared. | |
3978 | ||
f414f2f3 ZD |
3979 | 2006-08-28 Zdenek Dvorak <dvorakz@suse.cz> |
3980 | ||
3981 | PR tree-optimization/28411 | |
3982 | * double-int.c (double_int_div): Use double_int_divmod. | |
3983 | (double_int_divmod, double_int_sdivmod, double_int_udivmod, | |
3984 | double_int_mod, double_int_smod, double_int_umod): New functions. | |
3985 | * double-int.h (double_int_divmod, double_int_sdivmod, | |
3986 | double_int_udivmod, double_int_mod, double_int_smod, double_int_umod): | |
3987 | Declare. | |
3988 | * tree-ssa-loop-ivopts.c (constant_multiple_of): Returns the result | |
3989 | in double_int. | |
3990 | (get_computation_aff, get_computation_cost_at): Handle double_int | |
3991 | return type of constant_multiple_of. | |
3992 | ||
03a569a3 KH |
3993 | 2006-08-28 Kazu Hirata <kazu@codesourcery.com> |
3994 | ||
3995 | PR middle-end/26632 | |
3996 | * convert.c (convert_to_integer): Set TREE_NO_WARNING to 1 on | |
3997 | an implicit conversion. | |
3998 | ||
1aeceea4 PT |
3999 | 2006-08-28 Prafulla Thakare <prafullat@kpitcummins.com> |
4000 | ||
4001 | * config/h8300/h8300.c (TARGET_DEFAULT_TARGET_FLAGS): New. | |
4002 | ||
7f22b9fc RS |
4003 | 2006-08-27 Roger Sayle <roger@eyesopen.com> |
4004 | ||
4005 | * ifcvt.c (cheap_bb_rtx_cost_p): Don't speculatively execute | |
4006 | x87 instructions. | |
4007 | ||
69b3f75b KH |
4008 | 2006-08-27 Kazu Hirata <kazu@codesourcery.com> |
4009 | ||
4010 | * config/i386/crtfastmath.c: Fix a comment typo. | |
4011 | ||
c782c2fe RS |
4012 | 2006-08-26 Roger Sayle <roger@eyesopen.com> |
4013 | ||
4014 | * tree.h (CASE_LOW_SEEN, CASE_HIGH_SEEN): New macros for manipulating | |
4015 | temporary visit flags on CASE_LABEL_EXPRs. | |
4016 | * c-common.c (match_case_to_enum): Add function comment. Avoid | |
4017 | O(N) loop, by looking up both CASE_LOW_SEEN and CASE_HIGH_SEEN. | |
4018 | (c_do_switch_warnings): Reorganize to record CASE_LOW_SEEN and | |
4019 | CASE_HIGH_SEEN for enumerated types. If the switch expression is | |
4020 | a constant, only warn if that constant value isn't handled. | |
4021 | ||
02ec74b9 JM |
4022 | 2006-08-26 Joseph S. Myers <joseph@codesourcery.com> |
4023 | ||
4024 | PR c++/24009 | |
4025 | * input.h (restore_input_file_stack): Declare. | |
4026 | (INPUT_FILE_STACK_BITS): Define. | |
4027 | * toplev.c (fs_p, input_file_stack_history, | |
4028 | input_file_stack_restored, restore_input_file_stack): New. | |
4029 | (push_srcloc, pop_srcloc): Check for input_file_stack_tick | |
4030 | overflowing INPUT_FILE_STACK_BITS bits. Save new state of stack. | |
4031 | (pop_srcloc): Don't free old state of stack. | |
4032 | ||
63d0dca4 DE |
4033 | 2006-08-26 David Edelsohn <edelsohn@gnu.org> |
4034 | ||
4035 | PR target/27544 | |
4036 | * doc/extend.texi (PowerPC Variable Attributes): Mention altivec. | |
4037 | (PowerPC Type Attributes): New. | |
4038 | ||
d2348985 BW |
4039 | 2006-08-26 Bob Wilson <bob.wilson@acm.org> |
4040 | ||
4041 | * config/xtensa/xtensa.c (function_arg_boundary): New. | |
4042 | (function_arg, xtensa_gimplify_va_arg_expr): Limit alignment to | |
4043 | STACK_BOUNDARY. | |
4044 | * config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Move code to new | |
4045 | function_arg_boundary function that limits alignment to STACK_BOUNDARY. | |
4046 | ||
fa1ff4eb JJ |
4047 | 2006-08-26 Jakub Jelinek <jakub@redhat.com> |
4048 | ||
4049 | PR middle-end/28683 | |
4050 | * cfgexpand.c (add_reg_br_prob_note): Check if last has exactly | |
4051 | 3 following insns. | |
4052 | ||
75a83c65 VR |
4053 | 2006-08-25 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4054 | ||
4055 | * flow.c (verify_wide_reg): Use internal_error for consistency failure. | |
4056 | (verify_local_live_at_start): Likewise. | |
4057 | ||
4c923c28 JM |
4058 | 2006-08-25 Joseph S. Myers <joseph@codesourcery.com> |
4059 | ||
4060 | PR c/27893 | |
4061 | * gimplify.c (gimplify_decl_expr, gimplify_init_ctor_preeval, | |
4062 | omp_add_variable): Treat sizes as variable whenever not | |
4063 | INTEGER_CST. | |
4064 | ||
45988118 RG |
4065 | 2006-08-26 Richard Guenther <rguenther@suse.de> |
4066 | ||
4067 | PR middle-end/28814 | |
4068 | * fold-const.c (fold_binary): Fold temporary to correct | |
4069 | type before constructing new comparison. | |
4070 | ||
a942cc86 JM |
4071 | 2006-08-25 Fariborz Jahanian <fjahanian@apple.com> |
4072 | ||
4073 | PR c/28418 | |
4074 | * c-gimplify.c (gimplify_compound_literal_expr): Don't add | |
4075 | variable again if DECL_SEEN_IN_BIND_EXPR_P. | |
4076 | ||
d8890adf JM |
4077 | 2006-08-25 Joseph S. Myers <joseph@codesourcery.com> |
4078 | ||
4079 | PR c/28299 | |
4080 | * c-decl.c (start_function): Don't try to process prototype | |
4081 | information from old declaration that isn't a function. | |
4082 | ||
02709c7f JH |
4083 | 2006-08-25 Jan Hubicka <jh@suse.cz> |
4084 | ||
4085 | PR target/28621 | |
4086 | * config/i386/crtfastmath.c (set_fast_math): Force stack alignment. | |
4087 | ||
90d3ff1c AM |
4088 | 2006-08-25 Alan Modra <amodra@bigpond.net.au> |
4089 | ||
4090 | PR target/27075 | |
4091 | * config/rs6000/rs6000.c (print_operand): Only use e500 %y syntax | |
4092 | for 8 byte objects. | |
4093 | ||
e88e0907 R |
4094 | 2006-08-25 J"orn Rennecke <joern.rennecke@st.com> |
4095 | ||
4096 | PR tree-optimization/16876 | |
4097 | * c-typeck.c (c_convert_parm_for_inlining): Don't take early | |
4098 | exit if PARM doesn't match VALUE. | |
4099 | ||
9eb8a531 BW |
4100 | 2006-08-25 Bob Wilson <bob.wilson@acm.org> |
4101 | ||
4102 | * config/xtensa/xtensa.h (ASM_OUTPUT_POOL_PROLOGUE): Do not emit a | |
4103 | literal_prefix directive. | |
4104 | (XTENSA_DECLARE_FUNCTION_SIZE): Delete. | |
4105 | * config/xtensa/linux.h (ASM_DECLARE_FUNCTION_SIZE): Delete. | |
4106 | * config/xtensa/elf.h (ASM_DECLARE_FUNCTION_SIZE): Delete. | |
4107 | ||
4eb585a4 DE |
4108 | 2006-08-25 David Edelsohn <edelsohn@gnu.org> |
4109 | ||
4110 | PR target/28753 | |
4111 | * config/rs6000/rs6000.md (movcc_internal1): Change operand 1 | |
4112 | predicate to general_operand. Add 0->y and I->r alternatives. | |
4113 | ||
86c33cd0 KH |
4114 | 2006-08-25 Kazu Hirata <kazu@codesourcery.com> |
4115 | ||
4116 | * doc/tm.texi: Fix a typo. | |
4117 | * predict.c: Fix comment typos. | |
4118 | ||
816e93eb NC |
4119 | 2006-08-25 Nick Clifton <nickc@redhat.com> |
4120 | ||
4121 | * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Add | |
4122 | assertions of "cpu" and "machine". | |
4123 | ||
aa666e00 AP |
4124 | 2006-08-24 Andrew Pinski <pinskia@physics.uc.edu> |
4125 | ||
4126 | PR tree-opt/28807 | |
4127 | * tree-ssa-operands.c (access_can_touch_variable): Don't say | |
4128 | the access through a base which has an alias set of 0 cannot | |
4129 | touch the variable. | |
4130 | ||
4131 | 2006-08-24 Bill Wendling <wendling@apple.com> | |
8b7d4300 BW |
4132 | |
4133 | * doc/tm.texi (TARGET_DEFAULT_PACK_STRUCT): Fixed English. | |
05d36da1 | 4134 | |
7ef701a8 JH |
4135 | 2006-08-24 Jan Hubicka <jh@suse.cz> |
4136 | ||
4137 | * reload1.c (emit_reload_insns): Fix yet another typo in my patch. | |
4138 | ||
a418679d JH |
4139 | 2006-08-24 Jan Hubicka <jh@suse.cz> |
4140 | ||
4141 | PR debug/26881 | |
4142 | * cgraph.c: Fix comments. | |
4143 | (cgraph_varpool_mark_needed_node): Mark only variables not already | |
4144 | output to file. | |
4145 | * cgraphunit.c: Update comments; include gt-cgraphunit.h | |
4146 | (cgraph_varpool_assembled_nodes_queue): New static variable. | |
4147 | (cgraph_varpool_assemble_decl): Record output decls for debug out code. | |
4148 | (cgraph_varpool_output_debug_info): New function. | |
4149 | (cgraph_finalize_compilation_unit, cgraph_optimize): Call it. | |
4150 | * Makefile.in: Add gt-cgraphunit.h | |
4151 | ||
2c9e13f3 JH |
4152 | 2006-08-24 Jan Hubicka <jh@suse.cz> |
4153 | ||
4154 | * predict.c (probability_reliable_p): New predicate. | |
4155 | (edge_probability_reliable_p, br_prob_note_reliable_p): Likewise. | |
4156 | (predict_loops): Do not predict loop exit with less than 2% | |
4157 | probability. | |
4158 | * basic-block.h (edge_probability_reliable_p, | |
4159 | br_prob_note_reliable_p): Declare. | |
4160 | * ia64.h (ia64_print_operand): Do not disable on-chip branch | |
4161 | prediction when static predictor is not reliable. | |
4162 | * rs6000.c (output_cbranch): Likewise. | |
4163 | ||
12b3553f SH |
4164 | 2006-08-23 Stuart Hastings <stuart@apple.com> |
4165 | ||
4166 | PR 28825 | |
4167 | * gcc/config/i386/i386.c (ix86_expand_vector_init_duplicate, | |
4168 | ix86_expand_vector_init_one_nonzero): Remove TARGET_SSE test. | |
4169 | ||
9a23b833 GK |
4170 | 2006-08-21 Geoffrey Keating <geoffk@apple.com> |
4171 | ||
4172 | PR debug/28692 | |
4173 | * dwarf2out.c (rtl_for_decl_init): Don't try to create RTL for | |
4174 | complex values, nor for generic vector values. | |
4175 | ||
8a613cae RG |
4176 | 2006-08-22 Richard Guenther <rguenther@suse.de> |
4177 | ||
4178 | PR middle-end/28776 | |
4179 | * tree-scalar-evolution.c (fold_used_pointer): Add at_stmt | |
4180 | parameter. Convert arguments to arithmetic expression to the | |
4181 | chrecs type. | |
4182 | (analyze_scalar_evolution_1): Adjust caller. | |
4183 | ||
1f6c68ed JH |
4184 | 2006-08-22 Jan Hubicka <jh@suse.cz> |
4185 | ||
4186 | Patch by Paolo Bonzini | |
4187 | * reload1.c (emit_reload_insns): Fix incorrect bracketing introduced by | |
4188 | my previous patch. | |
4189 | ||
ca858709 DB |
4190 | 2006-08-22 Daniel Berlin <dberlin@dberlin.org> |
4191 | ||
4192 | PR tree-optimization/28003 | |
4193 | * tree-ssa-alias.c (compute_may_aliases): Compute call clobbered | |
4194 | before grouping aliases. | |
4195 | ||
883259c6 RS |
4196 | 2006-08-22 Roger Sayle <roger@eyesopen.com> |
4197 | ||
4198 | * config/i386/i386.c (ix86_value_regno): Don't return FIRST_MMX_REG | |
4199 | if !TARGET_MMX, and don't return FIRST_SSE_REG if !TARGET_SSE. | |
4200 | ||
c6c7698d JM |
4201 | 2006-08-21 Jason Merrill <jason@redhat.com> |
4202 | ||
4203 | PR c++/27115 | |
4204 | * gimplify.c (voidify_wrapper_expr): Handle STATEMENT_LIST as a | |
4205 | wrapper. Loop to handle nested wrappers. | |
4206 | (gimplify_bind_expr): Remove temp parameter. | |
4207 | (gimplify_modify_expr_rhs): Handle CLEANUP_POINT_EXPR, BIND_EXPR | |
4208 | and STATEMENT_LIST on the rhs. | |
4209 | (gimplify_statement_list): Voidify the STATEMENT_LIST. | |
4210 | (gimplify_expr): Pass pre_p to gimplify_statement_list. | |
4211 | (gimplify_target_expr): Remove special BIND_EXPR handling. | |
4212 | ||
34302d13 R |
4213 | 2006-08-21 J"orn Rennecke <joern.rennecke@st.com> |
4214 | ||
4215 | * config/sh/lib1funcs-Os-4-200.asm: Guard entire file with | |
4216 | #if !__SHMEDIA__ . | |
4217 | ||
85d89e76 OH |
4218 | 2006-08-21 Olivier Hainque <hainque@adacore.com> |
4219 | ||
4220 | * gimplify.c (gimplify_init_constructor) <RECORD,UNION,ARRAY types>: | |
4221 | Arrange for the temporary captures of components overlapping the lhs | |
4222 | to happen before the lhs is possibly cleared. | |
05d36da1 | 4223 | |
08a557f6 | 4224 | 2006-08-21 Mark Shinwell <shinwell@codesourcery.com> |
e753d130 | 4225 | |
08a557f6 MS |
4226 | * config/arm/pr-support.c (__gnu_unwind_execute): Insert " + 1" in |
4227 | necessary places to pass the correct "number of registers" values | |
4228 | to _Unwind_VRS_Pop. | |
4229 | ||
1af4bba8 JH |
4230 | 2006-08-20 Jan Hubicka <jh@suse.cz> |
4231 | ||
4232 | * tree-ssa-alias.c (eq_ptr_info, ptr_info_hash): New function. | |
4233 | (create_name_tags): Instead of quadratic checking use hashtable. | |
4234 | * bitmap.h: Include hashtab.h. | |
4235 | (bitmap_hash): Declare. | |
4236 | * bitmap.c (bitmap_hash): New function. | |
4237 | ||
70d539ce JH |
4238 | 2006-08-20 Jan Hubicka <jh@suse.cz> |
4239 | ||
4240 | PR rtl-optimization/28071 | |
4241 | * tree-optimize.c (tree_rest_of_compilation): Do not remove edges | |
4242 | twice. | |
4243 | * tree-inline.c (copy_bb): Use cgraph_set_call_stmt. | |
4244 | * ipa-inline.c (cgraph_check_inline_limits): Add one_only argument. | |
4245 | (cgraph_decide_inlining, cgraph_decide_inlining_of_small_function, | |
4246 | cgraph_decide_inlining_incrementally): Update use of | |
4247 | cgraph_check_inline_limits. | |
4248 | * cgraph.c (edge_hash, edge_eq): New function. | |
4249 | (cgraph_edge, cgraph_set_call_stmt, cgraph_create_edge, | |
4250 | cgraph_edge_remove_caller, cgraph_node_remove_callees, | |
4251 | cgraph_remove_node): Maintain call site hash. | |
4252 | * cgraph.h (struct cgraph_node): Add call_site_hash. | |
4253 | (cgraph_set_call_stmt): New function. | |
4254 | ||
2c61f5f1 JH |
4255 | 2006-08-20 Jan Hubicka <jh@suse.cz> |
4256 | ||
4257 | PR rtl-optimization/28071 | |
4258 | * reload1.c (reg_has_output_reload): Turn into regset. | |
4259 | (reload_as_needed, forget_old_reloads_1, forget_marked_reloads, | |
4260 | choose_reload_regs, emit_reload_insns): Update to new | |
4261 | reg_has_output_reload. | |
4262 | ||
1057fc81 JH |
4263 | 2006-08-20 Jan Hubicka <jh@suse.cz> |
4264 | ||
4265 | PR middle-end/28779 | |
4266 | * ipa-inline.c (cgraph_decide_inlining, cgraph_early_inlining): Compute | |
4267 | function body sizes. | |
4268 | * cgraphunit.c (cgraph_analyze_function): Don't do so. | |
4269 | ||
4270 | 2006-08-20 Danny Smith <dannysmith@users.sourceforge.net> | |
09416794 DS |
4271 | |
4272 | PR target/28648 c: | |
4273 | * tree.c (handle_dll_attribute): Return early if not a | |
e753d130 | 4274 | var or function decl. |
09416794 | 4275 | |
16e7a51f JM |
4276 | 2006-08-18 Joseph Myers <joseph@codesourcery.com> |
4277 | ||
4278 | PR target/27565 | |
4279 | * config/rs6000/rs6000.h (LOCAL_ALIGNMENT): For SPE, only adjust | |
4280 | alignment of SPE vector types. | |
4281 | ||
0a565147 CJ |
4282 | 2006-08-18 Christophe Jaillet <christophe.jaillet@wanadoo.fr> |
4283 | ||
4284 | * tree.c (is_attribute_with_length_p): Remove a duplicated assert. | |
4285 | ||
343d4b27 JJ |
4286 | 2006-08-17 Jakub Jelinek <jakub@redhat.com> |
4287 | ||
4288 | PR c/28744 | |
4289 | * cgraph.h (struct cgraph_node): Remove externally_visible | |
4290 | bitfield. | |
4291 | * cgraphunit.c (process_function_and_variable_attributes): Set | |
4292 | local.externally_visible rather than externally_visible. | |
4293 | ||
4294 | PR c/28744 | |
4295 | * c-common.c (handle_externally_visible_attribute): First look | |
4296 | at TREE_CODE and only if it is function or var decl, check for | |
4297 | non-public objects. Don't warn for DECL_EXTERNAL. | |
4298 | * cgraphunit.c (process_function_and_variable_attributes): Warn | |
4299 | if externally_visible attribute is used on non-public object. | |
4300 | ||
db4c7386 JH |
4301 | 2006-08-17 Jan Hubicka <jh@suse.cz> |
4302 | ||
4303 | PR tree-optimization/27865 | |
4304 | * reload1.c (forget_marked_reloads): New function. | |
4305 | (forget_old_reloads_1): When data are passed, just mark the registers | |
4306 | for later removal. | |
4307 | (reload_as_needed): Use the new mechanizm. | |
4308 | ||
3f1e3e70 AO |
4309 | 2006-08-17 Alexandre Oliva <aoliva@redhat.com> |
4310 | ||
4311 | PR target/28146 | |
4312 | * reload.h (reg_equiv_alt_mem_list): New declaration. | |
4313 | * reload1.c (reg_equiv_alt_mem_list): New definition. | |
4314 | (reload): Initialize it and release it. | |
4315 | (delete_output_reload): Use it. | |
4316 | * reload.c (push_reg_equiv_alt_mem): New function. | |
4317 | (find_reloads_toplev): Call it. | |
4318 | (find_reloads_address, find_reloads_address_1): Likewise. | |
4319 | (find_reloads_subreg_address): Likewise. | |
4320 | ||
d3b30e42 MK |
4321 | 2006-08-17 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
4322 | ||
4323 | PR rtl-optimization/28489 | |
4324 | * sched-ebb.c (begin_schedule_ready): Create basic block | |
4325 | at the right place. | |
4326 | (advance_target_bb): Skip empty blocks. | |
4327 | * haifa-sched.c (bb_note): Make global. | |
4328 | * sched-int.h (bb_note): Add prototype. | |
4329 | ||
20527215 ZD |
4330 | 2006-08-16 Zdenek Dvorak <dvorakz@suse.cz> |
4331 | ||
4332 | PR tree-optimization/27865 | |
4333 | * tree-vrp.c (adjust_range_with_scev): Do not use TYPE_{MIN,MAX}_VALUE | |
4334 | for pointer types. | |
4335 | * tree-scalar-evolution.c (fold_used_pointer_cast, pointer_offset_p, | |
4336 | fold_used_pointer, pointer_used_p): New functions. | |
4337 | (analyze_scalar_evolution_1): Use fold_used_pointer. | |
4338 | * tree-chrec.c (convert_affine_scev): Convert no-op casts correctly. | |
4339 | * tree-ssa-loop-ivopts.c (generic_type_for): Return integral type | |
4340 | for pointers. | |
4341 | ||
6d4d7b0e PB |
4342 | 2006-08-17 Paolo Bonzini <bonzini@gnu.org> |
4343 | ||
4344 | PR c++/28573 | |
4345 | * c-common.c (fold_offsetof_1): Add an argument and recurse down to it | |
05d36da1 | 4346 | or the INTEGER_CST. Fail on a CALL_EXPR. |
6d4d7b0e PB |
4347 | (fold_offsetof): Pass new argument to fold_offsetof_1. |
4348 | * c-parser.c (c_parser_postfix_expression): Don't include a NULL | |
05d36da1 | 4349 | operand into an INDIRECT_REF. |
6d4d7b0e PB |
4350 | * c-typeck.c (build_unary_op): Adjust call to fold_offsetof. |
4351 | ||
7e2f40af ZD |
4352 | 2006-08-16 Zdenek Dvorak <dvorakz@suse.cz> |
4353 | ||
4354 | PR gcov/profile/26570 | |
4355 | * value-prof.c (static_values): Removed. | |
4356 | (tree_find_values_to_profile): Do not set static_values. | |
4357 | (find_values_to_profile): Do not free static_values. | |
4358 | * profile.c (instrument_values): Do not free the values. | |
4359 | (branch_prob): Free the values. | |
4360 | ||
d8db3756 N |
4361 | 2006-08-16 Naveen.H.S <naveenh@kpitcummins.com> |
4362 | ||
4363 | * config/m32c/m32c_lib1.S (__mulsi3): Use only registers for dest. | |
4364 | ||
efed193e JM |
4365 | 2006-08-16 Joseph S. Myers <joseph@codesourcery.com> |
4366 | ||
4367 | PR c/27697 | |
4368 | * c-typeck.c (build_component_ref): Combine qualifiers of | |
4369 | structure or union and field. | |
4370 | ||
f074ff6c ZD |
4371 | 2006-08-16 Zdenek Dvorak <dvorakz@suse.cz> |
4372 | ||
4373 | PR rtl-optimization/28071 | |
4374 | * basic-block.h (bb_dom_dfs_in, bb_dom_dfs_out): Declare. | |
4375 | * dominance.c (bb_dom_dfs_in, bb_dom_dfs_out): New functions. | |
4376 | * tree-into-ssa.c (struct dom_dfsnum): New. | |
4377 | (cmp_dfsnum, find_dfsnum_interval, prune_unused_phi_nodes): New | |
4378 | functions. | |
4379 | (insert_phi_nodes_for): Use prune_unused_phi_nodes instead of | |
4380 | compute_global_livein. | |
4381 | (prepare_block_for_update, prepare_use_sites_for): Mark the uses | |
4382 | in phi nodes in the correct blocks. | |
4383 | ||
b43a2366 ZD |
4384 | 2006-08-16 Zdenek Dvorak <dvorakz@suse.cz> |
4385 | ||
4386 | PR tree-optimization/28364 | |
4387 | * tree-ssa-loop-ivopts.c (aff_combination_to_tree): Handle zero | |
4388 | correctly. | |
4389 | (fold_affine_expr): New function. | |
4390 | (may_eliminate_iv): Use fold_affine_expr. | |
4391 | ||
c58e8676 VR |
4392 | 2006-08-16 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4393 | ||
4394 | PR c/27489 | |
4395 | * c-typeck.c (c_start_case): Handle invalid orig_type correctly. | |
4396 | Clean up. | |
4397 | ||
e8c96d09 MS |
4398 | 2006-08-16 Mike Stump <mrs@apple.com> |
4399 | ||
4400 | * doc/invoke.texi (-Wno-deprecated-declarations): Fixup use of pxref. | |
4401 | * doc/cppopts.texi (-MD): Likewise. | |
4402 | ||
55af93a8 DS |
4403 | 2006-08-15 Danny Smith <dannysmith@users.sourceforge.net> |
4404 | ||
4405 | PR c/28287 | |
4406 | * c-common.c (handle_weak_attribute): Ignore and warn if | |
4407 | not a FUNCTION_ or VAR_DECL. | |
4408 | ||
4adb785d MS |
4409 | 2006-07-15 Mike Stump <mrs@apple.com> |
4410 | ||
4411 | PR c/28280 | |
4412 | * c-parser.c (c_parser_typeof_specifier): Don't use | |
4413 | c_finish_expr_stmt, open code desired semantics instead. | |
4414 | ||
b0faa35c NC |
4415 | 2006-08-15 Nick Clifton <nickc@redhat.com> |
4416 | ||
4417 | * config.gcc (x86-mingw32): Add a gthr-win32.h including makefile | |
4418 | fragment to tmake_file only if threads are enabled. | |
4419 | * config/i386/t-mingw32 (LIB2FUNCS_EXTRA): Move to... | |
4420 | * config/i386/t-gthr-win32: New file. ... here. | |
4421 | ||
2c14ae9a VR |
4422 | 2006-08-15 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4423 | ||
4424 | PR c/28649 | |
4425 | * c-parser.c (c_parser_compound_statement_nostart): Reset | |
4426 | parser->error after each statement. | |
4427 | ||
d0f53cbc JJ |
4428 | 2006-08-15 Jakub Jelinek <jakub@redhat.com> |
4429 | ||
018b899b JJ |
4430 | PR middle-end/28713 |
4431 | * omp-low.c (lower_omp_parallel): Convert t to | |
4432 | receiver_decl's type. | |
4433 | (expand_omp_parallel): STRIP_NOPS from the MODIFY_EXPR | |
4434 | source before comparison. | |
4435 | ||
d0f53cbc JJ |
4436 | PR middle-end/28724 |
4437 | * gimplify.c (gimplify_omp_atomic_pipeline): Convert oldival | |
4438 | to itype in assignment to oldival2. | |
4439 | ||
e63d6886 AP |
4440 | 2006-07-14 Andrew Pinski <pinksia@physics.uc.edu> |
4441 | ||
4442 | PR c/27490 | |
4443 | PR c/27489 | |
4444 | * c-typeck.c (build_compound_expr): If the second expression | |
4445 | is an error mark, then just return an error mark instead of | |
4446 | creating a COMPOUND_EXPR. | |
4447 | ||
df511f32 MS |
4448 | 2006-07-14 Mike Stump <mrs@apple.com> |
4449 | ||
4450 | * Makefile.in (LIBGCC_DEPS): Don't depend on LANGUAGES. | |
4451 | ||
96ff6c8c KH |
4452 | 2006-08-14 Kazu Hirata <kazu@codesourcery.com> |
4453 | ||
4454 | * c-decl.c, var-tracking.c: Fix comment typos. | |
4455 | ||
2b3969fa RS |
4456 | 2006-08-14 Richard Sandiford <richard@codesourcery.com> |
4457 | ||
4458 | PR rtl-optimization/28634 | |
4459 | * reorg.c (fill_slots_from_thread): Do not assume A + X - X == A | |
4460 | for floating-point modes unless flag_unsafe_math_optimizations. | |
4461 | ||
8d9f82d5 AO |
4462 | 2006-08-13 Alexandre Oliva <aoliva@redhat.com> |
4463 | Andrew Pinski <pinskia@physics.uc.edu> | |
4464 | ||
4465 | PR c/27184 | |
4466 | * tree.c (build_array_type): Unify array types with | |
4467 | unspecified index_type. | |
4468 | * c-decl.c (grokdeclarator): Make sure we do not modify a | |
4469 | unified incomplete array type. | |
4470 | * c-typeck.c (store_init_value): Create distinct type before | |
4471 | filling in the index type in an initializer from a compound | |
4472 | literal. | |
4473 | ||
4474 | * c-decl.c (grokdeclarator): Remove code where we copy the | |
4475 | array type over. | |
4476 | ||
0bff60e5 AP |
4477 | 2006-08-13 Andrew Pinski <pinskia@physics.uc.edu> |
4478 | ||
4479 | * tree-pass.h (TODO_update_ssa): Fix which bit is used to take | |
4480 | into account for TODO_dump_cgraph. | |
4481 | (TODO_update_ssa_no_phi): Likewise. | |
4482 | (TODO_update_ssa_full_phi): Likewise. | |
4483 | (TODO_update_ssa_only_virtuals): Likewise. | |
4484 | (TODO_remove_unused_locals): Likewise. | |
4485 | (TODO_set_props): Likewise. | |
4486 | (TODO_update_stmt_usage): Likewise. | |
4487 | ||
3f0a2a47 DM |
4488 | 2006-08-13 Dirk Mueller <dmueller@suse.de> |
4489 | ||
4490 | * c-common.c (strict_aliasing_warning): Fix formatting. | |
4491 | ||
37470119 MK |
4492 | 2006-08-13 Matthias Klose <doko@debian.org> |
4493 | ||
4494 | * doc/invoke.texi: Fix spelling errors. | |
4495 | ||
105ebae8 EB |
4496 | 2006-08-11 Eric Botcazou <ebotcazou@libertysurf.fr> |
4497 | ||
4498 | PR rtl-optimization/23454 | |
4499 | * reorg.c (relax_delay_slots): Update comment. | |
4500 | ||
e0d0c193 RG |
4501 | 2006-08-11 Richard Guenther <rguenther@suse.de> |
4502 | ||
4503 | PR middle-end/28651 | |
4504 | * simplify-rtx.c (simplify_const_relational_operation): | |
4505 | Simplify A CMP B to A - B CMP 0 only for EQ and NE comparison | |
4506 | codes. | |
4507 | ||
7175769a | 4508 | 2006-08-10 Eric Botcazou <ebotcazou@adacore.com> |
5d5995f1 EB |
4509 | |
4510 | * tree.c (build1_stat): Also propagate the TREE_CONSTANT and | |
4511 | TREE_INVARIANT flags for a VIEW_CONVERT_EXPR. | |
4512 | ||
9a1a4737 PB |
4513 | 2006-08-10 Paul Brook <paul@codesourcery.com> |
4514 | ||
4515 | * final.c (final_scan_insn): Clear current_insn_predicate before | |
4516 | outputting inline asm. | |
4517 | ||
cc0968b0 DN |
4518 | 2006-08-10 Dorit Nuzman <dorit@il.ibm.com> |
4519 | ||
4520 | PR tree-optimization/26197 | |
4521 | * tree-ssa-alias.c (new_type_alias): Takes additional argument. Calls | |
4522 | get_ref_base_and_extent and overlap_subvar to add only relevant | |
4523 | subvars as may-aliases. | |
4524 | (add_may_alias_for_new_tag): New function, factored out of | |
4525 | new_type_alias. | |
4526 | * tree-vect-transform.c (vect_create_data_ref_ptr): Call new_type_alias | |
4527 | with additional argument. | |
4528 | * tree-flow.h (new_type_alias): Takes additional argument. | |
4529 | ||
80b3502b NS |
4530 | 2006-08-09 Nathan Sidwell <nathan@codesourcery.com> |
4531 | ||
4532 | * gcov.c (no_data_file): New flag. | |
4533 | (read_count_file): Set it if data file not present. Assume counts | |
4534 | zero if not found. | |
4535 | (output_lines): Don't name the data file, if there wasn't one. | |
4536 | ||
cef6b86c EB |
4537 | 2006-08-09 Eric Botcazou <ebotcazou@adacore.com> |
4538 | ||
4539 | * config/rs6000/rs6000.c (print_operand) <D>: Fix comment and adjust. | |
4540 | (rs6000_generate_compare): Tweak comments. | |
4541 | * config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): Fix comment. | |
4542 | ||
ca787200 AO |
4543 | 2006-08-09 Alexandre Oliva <aoliva@redhat.com> |
4544 | ||
4545 | * var-tracking.c (enum micro_operation_type): Add MO_COPY. | |
4546 | (var_debug_decl): New function. | |
4547 | (var_reg_set): Follow debug decl link. Add location even if | |
4548 | reg is already known to hold some other variable. | |
4549 | (var_mem_set): Follow debug decl link. | |
4550 | (var_reg_delete_and_set, var_mem_delete_and_set): Follow debug | |
4551 | decl link. Delete other known locations of the variable part | |
4552 | if requested. | |
4553 | (var_reg_delete, var_mem_delete): Delete other known locations | |
4554 | of the variable part if requested. | |
4555 | (same_variable_part_p): New function. | |
4556 | (add_stores): Select MO_COPY when appropriate. | |
4557 | (vt_initialize): Handle it. | |
4558 | (compute_bb_dataflow, emit_notes_in_bb): Likewise. Delete | |
4559 | known locations for MO_SET and MO_CLOBBER. | |
4560 | (find_variable_location_part): New function. | |
4561 | (set_variable_part, delete_variable_part): Use it. | |
4562 | (clobber_variable_part): New function. | |
4563 | * dwarf2out.c (dwarf2out_var_location): Do not follow debug | |
4564 | decl link. | |
4565 | ||
4192d75b | 4566 | 2006-08-07 Victor Kaplansky <victork@il.ibm.com> |
2f6fc0b6 | 4567 | |
e753d130 AP |
4568 | PR tree-optimization/26969 |
4569 | * tree-vect-analyze.c (vect_analyze_loop_form): Add check of latch | |
4570 | with an empty list of PHIs. | |
2f6fc0b6 | 4571 | |
bab1de0a PB |
4572 | 2006-08-06 Paolo Bonzini <bonzini@gnu.org> |
4573 | ||
4574 | PR target/27827 | |
4575 | ||
4576 | * conffig/i386/i386.md: Add peephole2 to avoid "fld %st" | |
4577 | instructions. | |
4578 | ||
884b74f0 AS |
4579 | 2006-08-06 Andreas Schwab <schwab@suse.de> |
4580 | ||
4581 | * config/m68k/m68k.c (m68k_output_function_epilogue): Fix format | |
4582 | string. Whitespace and comment fixup. | |
4583 | ||
85cad37c VR |
4584 | 2006-08-05 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4585 | ||
ffc44ab6 VR |
4586 | PR c/28502 |
4587 | * c-decl.c (validate_proto_after_old_defn): Return false on invalid | |
4588 | argument. | |
4589 | ||
c0bcacec VR |
4590 | PR c/27721 |
4591 | * c-typeck.c (build_modify_expr): Test earlier for non-lvalues. | |
4592 | ||
85cad37c VR |
4593 | PR c/28136 |
4594 | * c-parser.c (c_parser_postfix_expression_after_paren_type): Robustify. | |
4595 | ||
71156bcc JH |
4596 | 2006-08-04 Jan Hubicka <jh@suse.cz> |
4597 | ||
4598 | PR target/26655 | |
4599 | PR target/28270 | |
85cad37c VR |
4600 | * reload.c (push_reload): Patch out the mismatching instruction; |
4601 | return early. | |
71156bcc JH |
4602 | (find_reload): Bail out if the instruction was patched out. |
4603 | ||
9659ce8b JH |
4604 | 2006-08-04 Jan Hubicka <jh@suse.cz> |
4605 | ||
4606 | PR tree-optimization/24888 | |
4607 | * tree-inline.c (expand_call_inline): Do not re-record variables. | |
4608 | (declare_inline_vars): Add variable to unexpanded_var_list. | |
4609 | ||
824a4527 JDA |
4610 | 2006-08-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
4611 | Roger Sayle <roger@eyesopen.com> | |
4612 | ||
4613 | PR rtl-optimization/26244 | |
4614 | * cse.c (fold_rtx): Correctly associate shifts when const_arg1 and/or | |
4615 | inner_const are negative or greater than or equal to the bitsize of | |
4616 | MODE. If SHIFT_COUNT_TRUNCATED is false, the values aren't associated. | |
4617 | Otherwise, the values are masked using GET_MODE_BITSIZE (mode) - 1. | |
4618 | Simplify complicated if statement. For ASHIFT and LSHIFTRT, return | |
4619 | CONST0_RTX (mode) when the new shift count is greater than or equal to | |
4620 | to the bitsize of the object being shifted and XEXP (y, 0) has no side | |
4621 | effects. | |
4622 | ||
de1e45c3 KH |
4623 | 2006-08-04 Kazu Hirata <kazu@codesourcery.com> |
4624 | ||
4625 | * tree-cfg.c: Fix a comment typo. | |
4626 | ||
f092a866 MM |
4627 | 2006-08-03 Mark Mitchell <mark@codesourcery.com> |
4628 | ||
4629 | PR c++/28148 | |
4630 | * varasm.c (output_constant): Give the front end another chance to | |
4631 | expand constants, after stripping NOPs. | |
4632 | ||
df648b94 JH |
4633 | 2006-08-03 Jan Hubicka <jh@suse.cz> |
4634 | ||
4635 | * domwalk.c (walk_dominator_tree): Reorganize to non-recursive | |
4636 | implementation. | |
4637 | ||
0be79f24 DN |
4638 | 2006-08-03 Dorit Nuzman <dorit@il.ibm.com> |
4639 | ||
e753d130 AP |
4640 | PR tree-optimization/27770 |
4641 | * tree-vectorizer.h (get_vectype_for_scalar_type): Function | |
4642 | declaration removed (moved to tree-flow.h). | |
4643 | (vect_can_force_dr_alignment_p): Likewise. | |
4644 | * tree-flow.h (get_vectype_for_scalar_type): New function declaration | |
4645 | (moved from tree-vectorizer.h). | |
4646 | (vect_can_force_dr_alignment_p): Likewise. | |
4647 | * tree-vectorizer.c (vect_print_dump_info): Allow calling this function | |
4648 | from outside the vectorizer - in particular from cgraph stage. | |
4649 | * tree-vect-analyze.c (vect_compute_data_ref_alignment): Don't increase | |
4650 | the alignment of global arrays when -fsection-anchors is enabled. | |
4651 | * cgraphunit.c (cgraph_increase_alignment): New function. | |
4652 | (cgraph_optimize): Call cgraph_increase_alignment. | |
0be79f24 | 4653 | |
1650e3f5 DE |
4654 | 2006-08-03 David Edelsohn <edelsohn@gnu.org> |
4655 | ||
4656 | PR target/27566 | |
4657 | * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do | |
4658 | not reload a SPE symbol_ref into a lo_sum address. | |
4659 | ||
19450f2b DJ |
4660 | 2006-08-02 Daniel Jacobowitz <dan@codesourcery.com> |
4661 | ||
4662 | PR debug/28063 | |
4663 | * dwarf2out.c (prune_unused_types_prune): Move call to | |
4664 | prune_unused_types_update_strings to cover the parent DIE also. | |
4665 | ||
0a4fe58f JH |
4666 | 2006-08-02 Jan Hubicka <jh@suse.cz> |
4667 | ||
4668 | PR gcov/profile/28480 | |
4669 | * tree-cfg.c (change_bb_for_stmt): New function. | |
4670 | (tree_merge_blocks, tree_split_blocks): Use it. | |
4671 | ||
413803d3 VR |
4672 | 2006-08-01 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4673 | ||
4674 | PR c++/28250 | |
4675 | PR c++/28257 | |
4676 | PR c++/28259 | |
4677 | PR c++/28267 | |
4678 | * toplev.c (compile_file): Return early on errorcount or sorrycount. | |
4679 | * cgraphunit.c (cgraph_finalize_compilation_unit): Likewise. | |
4680 | (cgraph_optimize): Likewise. | |
4681 | ||
4fbbe694 SH |
4682 | 2006-08-01 Stuart Hastings <stuart@apple.com> |
4683 | ||
4684 | * rtl.h (UINTVAL) New. | |
4685 | * config/rs6000/rs6000.c (SMALL_INT) Use it. | |
4686 | * testsuite/gcc.dg/20060801-1.c: New. | |
05d36da1 | 4687 | |
6193b8b7 DJ |
4688 | 2006-08-01 Daniel Jacobowitz <dan@codesourcery.com> |
4689 | ||
4690 | PR debug/23336 | |
4691 | * c-typeck.c (build_external_type): Mark used enum types. | |
4692 | * dwarf2out.c (dwarf2out_abstract_function): Save and restore | |
4693 | cfun also. | |
4694 | (gen_subprogram_die): Whitespace fix. | |
4695 | ||
9824b886 JH |
4696 | 2006-08-01 Jan Hubicka <jh@suse.cz> |
4697 | ||
4698 | * tree-outof-ssa.c (check_replaceable): Do not allocate def_vars | |
4699 | bitmap when not needed. | |
4700 | * tree-ssa-pre.c (bitmap_set_and, bitmap_set_and_compl): Free temporary | |
4701 | bitmaps. | |
4702 | ||
53743367 DM |
4703 | 2006-08-01 Dirk Mueller <dmueller@suse.de> |
4704 | ||
4705 | * tree-vrp.c (fix_equivalence_set): Avoid bitmap memory leak. | |
4706 | ||
73e9d512 VR |
4707 | 2006-07-31 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4708 | ||
4709 | * Makefile.in: Revert part of previous patch: | |
4710 | Replace $(VARRAY_H) by varray.h in definition of BASIC_BLOCK_H | |
4711 | and REGS_H. | |
4712 | ||
1ccbef77 EC |
4713 | 2006-07-30 Eric Christopher <echristo@apple.com> |
4714 | ||
4715 | PR target/27543 | |
4716 | * doc/extend.texi (i386 Variable Attributes): Add anchor. | |
4717 | (PowerPC Variable Attributes): New section. | |
4718 | ||
56ee081b AN |
4719 | 2006-07-30 Atsushi Nemoto <anemo@mba.ocn.ne.jp> |
4720 | ||
4721 | PR target/28126 (partial fix) | |
4722 | * config/mips/mips.md (tls_get_tp_<mode>): Set can_delay to no. | |
4723 | ||
370adb7b JH |
4724 | 2006-07-28 Jan Hubicka <jh@suse.cz> |
4725 | ||
4726 | PR rtl-optimization/28071 | |
4727 | * cfgrtl.c (rtl_delete_block): Free regsets. | |
4728 | * flow.c (allocate_bb_life_data): Re-use regsets if available. | |
4729 | ||
48779194 VR |
4730 | 2006-07-28 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
4731 | ||
4732 | * Makefile.in: Use $(HEADER_H) instead of header.h in dependencies | |
4733 | and variables used in dependencies. | |
4734 | ||
fa6adcab AV |
4735 | 2006-07-27 Arjan van de Ven <arjan@linux.intel.com> |
4736 | ||
4737 | * config/i386/i386.md (stack_tls_protect_set_di) Use %gs rather than | |
4738 | %fs for -mcmodel=kernel. | |
4739 | (stack_tls_protect_test_di): Likewise. | |
4740 | ||
ab7efd91 CD |
4741 | 2006-07-27 Carlos O'Donell <carlos@codesourcery.com> |
4742 | ||
4743 | * Makefile.in: Use mkinstalldirs. | |
4744 | ||
faa88843 L |
4745 | 2006-07-27 H.J. Lu <hongjiu.lu@intel.com> |
4746 | ||
4747 | PR driver/28437 | |
4748 | * opts-common.c (prune_options): Skip joined switches. | |
4749 | ||
96d0cc81 JH |
4750 | 2006-07-27 Jan Hubicka <jh@suse.cz> |
4751 | ||
4752 | PR rtl-optimization/28071 | |
4753 | * cselib.c (cselib_process_insn): Don't remove useless values too | |
4754 | often for very large hashtables. | |
4755 | ||
69bfd3c9 JH |
4756 | 2006-07-27 Jan Hubicka <jh@suse.cz> |
4757 | ||
4758 | PR rtl-optimization/28071 | |
4759 | * global.c (greg_obstack): New obstack. | |
4760 | (allocate_bb_info): Use it. | |
4761 | (free_bb_info): Likewise. | |
4762 | (modify_reg_pav): Likewise. | |
4763 | ||
482c6ce8 RS |
4764 | 2006-07-27 Roger Sayle <roger@eyesopen.com> |
4765 | ||
4766 | * builtins.c (fold_fixed_mathfn): When long and long long are the | |
4767 | same size, canonicalize llceil*, llfloor*, llround* and llrint* | |
4768 | functions to their lceil*, lfloor*, lround* and lrint* forms. | |
4769 | ||
721cedf2 KI |
4770 | 2006-07-27 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> |
4771 | ||
4772 | PR gcc/28508 | |
4773 | * config/m32r/m32r.md (branch_insn): Reduce pc range for short | |
4774 | branch. | |
4775 | (rev_branch_insn): Likewise. | |
4776 | ||
65d169d9 JH |
4777 | 2006-07-27 Jan Hubicka <jh@suse.cz> |
4778 | ||
4779 | PR rtl-optimization/28071 | |
4780 | * regmove.c (reg_is_remote_constant_p): Avoid quadratic behaviour. | |
4781 | (reg_set_in_bb, max_reg_computed): New static variables. | |
4782 | (regmove_optimize): Free the new array. | |
4783 | (fixup_match_1): Update call of reg_is_remote_constant_p. | |
4784 | ||
96fc428c JH |
4785 | 2006-07-26 Jan Hubicka <jh@suse.cz> |
4786 | ||
4787 | PR tree-optimization/27882 | |
4788 | * cgraph.c (cgraph_remove_node): Clear needed, reachable, next, previous | |
4789 | and decl fields. | |
4790 | * cgraphunit.c (cgraph_reset_node): Expect cgraph_remove_node to kill | |
4791 | next pointer | |
4792 | (cgraph_analyze_compilation_unit): Likewise. | |
4793 | * ipa.c (cgraph_remove_unreachable_nodes): Likewise. | |
4794 | * ipa-inline.c (cgraph_decide_recursive_inlining): Likewise. | |
4795 | (cgraph_early_inlinine): Make order garbage collected. | |
4796 | * Makefile.in (gt-ipa-inline): New garbagecollected file. | |
4797 | ||
88c4be5e DJ |
4798 | 2006-07-26 Daniel Jacobowitz <dan@codesourcery.com> |
4799 | ||
4800 | * dbxout.c (output_types_sort): Add a comment. | |
4801 | (output_used_types): Free the VEC. | |
4802 | ||
51b7d006 DJ |
4803 | 2006-07-26 Daniel Jacobowitz <dan@codesourcery.com> |
4804 | ||
4805 | * function.c (reorder_fix_fragments): Delete. | |
4806 | (reorder_blocks): Don't call it. | |
4807 | (reorder_blocks_1): Put all subblocks under the origin block. | |
4808 | ||
e69e3d0e ZD |
4809 | 2006-07-26 Zdenek Dvorak <dvorakz@suse.cz> |
4810 | ||
4811 | PR rtl-optimization/27907 | |
4812 | * expr.c (force_operand): Use convert_move to handle FLOAT_EXTEND and | |
4813 | FLOAT_TRUNCATE. | |
4814 | ||
738764ef RS |
4815 | 2006-07-25 Roger Sayle <roger@eyesopen.com> |
4816 | ||
4817 | PR middle-end/28473 | |
4818 | * convert.c (convert_to_integer): When transforming (T)foo(x) into | |
4819 | bar(x) check that bar's result type can represent all the values of T. | |
4820 | ||
cdc30c45 ZD |
4821 | 2006-07-25 Zdenek Dvorak <dvorakz@suse.cz> |
4822 | ||
4823 | * tree-chrec.c (chrec_convert_aggressive): Return NULL on failure. | |
4824 | ||
6583cf15 NC |
4825 | 2006-07-25 Nick Clifton <nickc@redhat.com> |
4826 | ||
4827 | * ggc-page.c (NUM_SIZE_LOOKUP): New constant - the length of the | |
4828 | size_lookup[] array. | |
4829 | (ggc_alloc_stat): Use NUM_SIZE_LOOKUP. | |
4830 | (ggc_pch_count_object): Likewise. | |
4831 | (ggc_pch_alloc_object): Likewise. | |
4832 | (ggc_pch_write_object): Likewise. | |
4833 | (init_ggc): Do not attempt to initialize entries in the | |
4834 | size_lookup[] array for objects whose size is greater than than | |
4835 | the length of the array. | |
4836 | ||
2daec0f0 DJ |
4837 | 2006-07-25 Daniel Jacobowitz <dan@codesourcery.com> |
4838 | ||
4839 | * dbxout.c (output_used_types_helper): Push queued types | |
4840 | on a VEC. | |
4841 | (output_types_sort): New. | |
4842 | (output_used_types): Collect used types on a VEC and sort them | |
4843 | before emission. | |
4844 | ||
63c2d00c RG |
4845 | 2006-07-24 Richard Guenther <rguenther@suse.de> |
4846 | ||
4847 | PR middle-end/28463 | |
4848 | * cgraph.c (cgraph_remove_node): Do not check if dumps | |
4849 | are enabled. | |
4850 | * cgraphunit.c (cgraph_optimize): Likewise. | |
4851 | ||
597ae074 JH |
4852 | 2006-07-24 Jan Hubicka <jh@suse.cz> |
4853 | ||
4854 | PR rtl-optimization/28071 | |
4855 | * tree-cfg.c (tree_split_block): Do not allocate new stmt_list nodes. | |
4856 | * tree-iterator.c (tsi_split_statement_list_before): Do not crash when | |
4857 | splitting before first stmt. | |
4858 | ||
f10d1a74 JH |
4859 | 2006-07-24 Jan Hubicka <jh@suse.cz> |
4860 | ||
4861 | PR rtl-optimization/28071 | |
4862 | * ipa-inline.c (update_caller_keys): Remove edges that | |
4863 | are no longer inline candidates. | |
4864 | ||
f629051e DJ |
4865 | 2006-07-23 Daniel Jacobowitz <dan@codesourcery.com> |
4866 | ||
4867 | PR debug/27473 | |
4868 | * dbxout.c (output_used_types_helper, output_used_types): New. | |
4869 | (dbxout_symbol): Call output_used_types. | |
4870 | ||
386b46cf JH |
4871 | 2006-07-23 Jan Hubicka <jh@suse.cz> |
4872 | ||
4873 | PR c/25795 | |
4874 | PR c++/27369 | |
4875 | * cgraph.c (cgraph_varpool_nodes): Export. | |
4876 | (decide_is_variable_needed): Ignored "used" attribute in | |
4877 | unit-at-a-time mode. | |
4878 | * cgraph.h (cgraph_varpool_nodes): Declare. | |
4879 | * cgraphunit.c (decide_is_function_needed): Ignored "used" attribute in | |
4880 | unit-at-a-time mode. | |
4881 | ||
74e55d0f RS |
4882 | 2006-07-23 Roger Sayle <roger@eyesopen.com> |
4883 | ||
4884 | PR target/28247 | |
4885 | * gthr-solaris.h: Prototype __gthrw forms of thr_self, mutex_init and | |
4886 | mutex_destroy even when !_LIBOOBJC. Remove duplicate prototype of | |
4887 | the __gthrw form of thr_keycreate. | |
4888 | (__gthread_key_delete): Silence the unused argument warning. | |
4889 | ||
d88259d1 SB |
4890 | 2006-07-23 Steven Bosscher <steven@gcc.gnu.org> |
4891 | ||
4892 | PR debug/25468 | |
4893 | * config/elfos.h (ASM_OUTPUT_ASCII): Remove 'register' marks. | |
4894 | Cache the last found '\0' marker to avoid quadratic behavior. | |
4895 | ||
3dcdd4e4 JH |
4896 | 2006-07-23 Jan Hubicka <jh@suse.cz> |
4897 | ||
4898 | * i386.md (subsi_3_zext): Fix output template. | |
4899 | ||
dfb84d62 MS |
4900 | 2006-07-21 Mike Stump <mrs@apple.com> |
4901 | ||
4902 | * doc/invoke.texi (C++ Dialect Options): Note that | |
4903 | -fvisibility-inlines-hidden doesn't affect explicitly | |
4904 | instantiationed inline methods. | |
4905 | ||
79387e57 RS |
4906 | 2006-07-20 Roger Sayle <roger@eyesopen.com> |
4907 | ||
4908 | * config.gcc (i[34567]86-*-solaris2*): Add usegas.h to $tm_file | |
4909 | if the target assembler is GNU binutils' gas. | |
4910 | * config/i386/sol2-10.h (ASM_SPEC): Check USE_GAS to determine | |
4911 | whether to pass GNU gas or native as command line options. | |
4912 | ||
b70f0f48 JM |
4913 | 2006-07-20 Jason Merrill <jason@redhat.com> |
4914 | ||
4915 | * tree.c (remove_attribute): New fn. | |
bd741f34 | 4916 | * tree.h: Declare it. |
b70f0f48 | 4917 | |
05c433f3 PB |
4918 | 2006-07-20 Paul Brook <paul@codesourcery.com> |
4919 | ||
4920 | PR 27363 | |
4921 | * cse.c (cse_insn): Add destination addresses to hash table. Check if | |
4922 | they are invalidated by this instruction. | |
4923 | ||
b0e46dff DS |
4924 | 2006-07-21 Danny Smith <dannysmith@users.sourceforge.net> |
4925 | ||
4926 | PR target/28427 | |
e753d130 | 4927 | * config/i386/cygming.h (MAX_OFILE_ALIGNMENT): Define. |
b0e46dff | 4928 | |
1cba2b96 EC |
4929 | 2006-07-20 Eric Christopher <echristo@apple.com> |
4930 | ||
4931 | PR target/26877 | |
4932 | * config/i386/i386.h (OPTION_DEFAULT_SPECS): Reorder. | |
4933 | ||
96f342c1 EC |
4934 | 2006-07-19 Eric Christopher <echristo@apple.com> |
4935 | ||
4936 | * config/t-slibgcc-darwin (stmp-lipo): Remove. | |
4937 | Rewrite dependencies for libgcc_s.1.dylib. | |
4938 | ||
4841d432 JJ |
4939 | 2006-07-19 Jakub Jelinek <jakub@redhat.com> |
4940 | ||
4941 | * except.c (duplicate_eh_regions_1): Clear next_peer. | |
4942 | ||
87c365a4 NS |
4943 | 2006-07-17 Nathan Sidwell <nathan@codesourcery.com> |
4944 | ||
4945 | * doc/invoke.texi (RS/6000 and PowerPC Options): Document that | |
4946 | -mlongcall does not guarantee all calls will be long. | |
4947 | * doc/extend.texi (long_call/short_call): Document that longcall | |
4948 | does not guarantee a long call will be used. | |
4949 | (longcall/shortcall): Likewise. | |
4950 | ||
cb2eb96f RS |
4951 | 2006-07-18 Roger Sayle <roger@eyesopen.com> |
4952 | ||
4953 | PR middle-end/28283 | |
4954 | * expmed.c (expand_shift): Additionally check that the shift_cost | |
4955 | is not MAX_COST and that INTVAL(op1) is less than MAX_BITS_PER_WORD | |
4956 | before implementing a LSHIFT_EXPR as a sequence of additions. | |
4957 | * config/sh/sh.c (shift_costs): Return MAX_COST to inform the | |
4958 | middle-end that DImode shifts need to be synthesized by expand. | |
4959 | ||
548a6c6d DN |
4960 | 2006-07-18 Diego Novillo <dnovillo@redhat.com> |
4961 | ||
4962 | PR 28410 | |
4963 | * tree-ssa-operands.c (access_can_touch_variable): Update | |
4964 | comment. | |
4965 | Return true if ALIAS is .GLOBAL_VAR. | |
4966 | ||
b3cccd58 DD |
4967 | 2006-07-18 David Daney <ddaney@avtrex.com> |
4968 | ||
4969 | * gcc.c (display_help): Fix typo in help text. | |
4970 | ||
fe24d485 OH |
4971 | 2006-07-18 Olivier Hainque <hainque@adacore.com> |
4972 | ||
4973 | * tree.h (categorize_ctor_elements): Adjust prototype and add | |
4974 | descriptive comment, both in accordance with the interface change | |
4975 | described below. | |
4976 | * varasm.c (constructor_static_from_elts_p): New function. | |
4977 | Whether a constructor node is a valid static constant initializer | |
4978 | if all its elements are. | |
4979 | (initializer_constant_valid_p) <CONSTRUCTOR value>: Use it. | |
96f342c1 | 4980 | * output.h: Declare it. |
fe24d485 OH |
4981 | * expr.c (categorize_ctor_elements_1): Return whether the constructor |
4982 | is a valid constant initializer instead of computing the number of | |
4983 | non-constant elements. Use constructor_static_from_elts_p for this | |
4984 | purpose. Replace the head comment with an indication that this is a | |
4985 | helper for categorize_ctor_elements. | |
4986 | (categorize_ctor_elements): Same interface change as for the _1 | |
4987 | helper. Former head comment from this helper moved here, adjusted to | |
4988 | account for the interface changes. | |
4989 | (mostly_zeros_p): Adjust call to categorize_ctor_elements. | |
96f342c1 | 4990 | (all_zeros_p): Likewise. |
fe24d485 OH |
4991 | * gimplify.c (gimplify_init_constructor): Decide whether we can make |
4992 | static versions of the constructor from the categorize_ctor_elements | |
4993 | return value instead of the formerly computed number of non-constant | |
4994 | elements. | |
4995 | ||
57255173 PB |
4996 | 2006-07-18 Paolo Bonzini <bonzini@gnu.org> |
4997 | ||
e753d130 AP |
4998 | * configure: Regenerate. |
4999 | * Makefile.in (build_libsubdir): New configure substitution | |
5000 | (build_libobjdir): New variable. | |
5001 | (BUILD_LIBIBERTY): Use it. | |
57255173 | 5002 | |
12050e44 VR |
5003 | 2006-07-18 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
5004 | ||
5005 | PR c/28286 | |
5006 | * c-pragma.c (handle_pragma_pack): Handle invalid constants. | |
5007 | ||
e1cf56b1 AO |
5008 | 2006-07-18 Alexandre Oliva <aoliva@redhat.com> |
5009 | ||
5010 | PR c/26993 | |
5011 | * c-common.c (handle_weakref_attribute): Ignore attribute in | |
5012 | the same conditions the alias attribute is ignored. | |
5013 | ||
e098f3a5 CD |
5014 | 2006-07-17 Carlos O'Donell <carlos@codesourcery.com> |
5015 | ||
5016 | * dbxout.c (dbxout_function_end): Do not increment scope_labelno. | |
5017 | (dbxout_begin_prologue): Increment scope_labelno. | |
5018 | ||
8bcbc000 RH |
5019 | 2006-07-17 Richard Henderson <rth@redhat.com> |
5020 | ||
5021 | PR 27889 | |
5022 | * tree-nested.c (create_tmp_var_for): Set DECL_COMPLEX_GIMPLE_REG_P | |
5023 | if needed. | |
5024 | ||
4f5afe7d RS |
5025 | 2006-07-17 Roger Sayle <roger@eyesopen.com> |
5026 | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
5027 | ||
5028 | * config/i386/gmon-sol2.c: Silence compilation warnings by partially | |
5029 | synchronizing code with config/sparc/gmon-sol2.c. Remove #if 0 | |
5030 | blocks. #include "tconfig.h" and "tsystem.h" to prototype system | |
5031 | functions such as sbrk, write, etc.. Add function prototypes. | |
5032 | Convert function declarations from K&R to ISO C. Cast pointers | |
5033 | to "long" and "unsigned long" instead of "int" and "unsigned int". | |
5034 | Convert tokens following #endif into comments. | |
5035 | ||
dc5abe77 TM |
5036 | 2006-07-17 Toon Moene <toon@moene.indiv.nluug.nl> |
5037 | ||
5038 | * invoke.texi: Remove mention of f77; Reformat table for | |
5039 | inline parameter options correctly; mention that -malign-double | |
5040 | is default on x86-64 targets. | |
5041 | ||
64a7ab5f ZD |
5042 | 2006-07-17 Zdenek Dvorak <dvorakz@suse.cz> |
5043 | ||
5044 | * tree-chrec.c (avoid_arithmetics_in_type_p): New. | |
5045 | (convert_affine_scev, chrec_convert_aggressive): Use | |
5046 | avoid_arithmetics_in_type_p. Do not check for the subtypes | |
5047 | separately. | |
5048 | ||
2763a67e RS |
5049 | 2006-07-17 Richard Sandiford <richard@codesourcery.com> |
5050 | ||
5051 | PR middle-end/28403 | |
5052 | * optabs.c (expand_doubleword_shift): Wrap the call to | |
5053 | do_compare_rtx_and_jump with NO_DEFER_POP and OK_DEFER_POP. | |
5054 | ||
f8bdb931 RS |
5055 | 2006-07-17 Richard Sandiford <richard@codesourcery.com> |
5056 | ||
5057 | PR middle-end/28402 | |
5058 | * optabs.c (expand_binop): Pass next_methods rather than methods | |
5059 | to expand_doubleword_shift. | |
5060 | ||
24a7799e R |
5061 | 2006-07-17 J"orn Rennecke <joern.rennecke@st.com> |
5062 | ||
5063 | PR other/28251 | |
5064 | * tree.h (dump_addr): Declare. | |
5065 | * print-tree.c (dump_addr): New function. | |
5066 | (print_node_brief, print_node): Use it. | |
5067 | * print-rtl.c (print_rtx): Likewise. | |
5068 | * common.opt (-fdump-noaddr): New option. | |
5069 | * doc/invoke.texi (-fdump-noaddr): Document. | |
5070 | * loop-unroll.c (si_info_hash): Make hash independent of addresses. | |
5071 | (ve_info_hash): Likewise. | |
5072 | ||
9d335249 AH |
5073 | 2006-07-13 Andrew Haley <aph@redhat.com> |
5074 | ||
5075 | PR tree-optimization/19505 | |
5076 | * tree-cfgcleanup.c (tree_forwarder_block_p): If we have an EH | |
5077 | edge leaving this block, make sure that the destination of this | |
5078 | block has only one predecessor. | |
5079 | ||
2b65dae5 RG |
5080 | 2006-07-17 Richard Guenther <rguenther@suse.de> |
5081 | ||
5082 | PR tree-optimization/28238 | |
5083 | * tree-inline.c (copy_bb): Check if we produced valid | |
5084 | gimple copying and substituting a stmt. If not, gimplify | |
5085 | it. | |
5086 | ||
3e27aa84 EB |
5087 | 2006-07-16 Eric Botcazou <ebotcazou@adacore.com> |
5088 | ||
5089 | * optabs.c (maybe_encapsulate_block): New function extracted from... | |
5090 | (emit_libcall_block): ...here. Invoke it on the block of insns to | |
5091 | maybe emit REG_LIBCALL/REG_RETVAL notes around the block. | |
5092 | (emit_no_conflict_block): Likewise. | |
5093 | ||
bb2ffd7f EB |
5094 | 2006-07-16 Eric Botcazou <ebotcazou@libertysurf.fr> |
5095 | ||
c5ee132b | 5096 | * doc/install.texi (sparc-sun-solaris2*): Add GMP version number. |
bb2ffd7f | 5097 | |
b0d5d5de RS |
5098 | 2006-07-15 Roger Sayle <roger@eyesopen.com> |
5099 | ||
5100 | * tree-gimple.c (is_gimple_stmt): Sink test of IS_EMPTY_STMT into | |
5101 | a new NOP_EXPR case of the switch statement. | |
5102 | ||
72aeff7c KK |
5103 | 2006-07-15 Kaz Kojima <kkojima@gcc.gnu.org> |
5104 | ||
5105 | PR middle-end/28160 | |
5106 | * stor-layout.c (place_field): Take the bit field with | |
5107 | an excessive size into account in the ms-bitfiled case. | |
5108 | ||
5109 | PR middle-end/28161 | |
5110 | * stor-layout.c (place_field): Use DECL_BIT_FIELD_TYPE of | |
5111 | the previous bit field. | |
5112 | ||
27714d43 ED |
5113 | 2006-07-14 Eliot Dresselhaus <eliot@sonic.net> |
5114 | ||
5115 | PR target/27287 | |
5116 | * config/rs6000/spe.md (frob_di_df_2): Add m->r alternative. | |
5117 | ||
47a4949a UW |
5118 | 2006-07-14 Ulrich Weigand <uweigand@de.ibm.com> |
5119 | ||
5120 | * config/s390/linux-unwind.h (s390_fallback_frame_state): Detect | |
5121 | signal frames correctly even when the signal was installed with | |
5122 | sa_restorer set. | |
5123 | ||
1c1534e9 | 5124 | 2006-07-14 Carlos O'Donell <carlos@codesourcery.com> |
03471b3f CD |
5125 | |
5126 | * dbxout.c (dbxout_begin_prologue): Emit LFBB label at function start. | |
96f342c1 | 5127 | (dbxout_function_end): Use local label LFBB. Remove hook |
1c1534e9 | 5128 | DBX_OUTPUT_NFUN. |
03471b3f CD |
5129 | (dbxout_source_line): Use local label LFBB. |
5130 | (dbxout_block): Likewise. | |
5131 | (dbx_output_lbrac): Remove hook DBX_OUTPUT_LBRAC. | |
5132 | (dbx_output_rbrac): Remove hook DBX_OUTPUT_RBRAC. | |
5133 | * config/rs6000/linux64.h: Remove DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC, | |
5134 | and DBX_OUTPUT_NFUN. | |
5135 | ||
263108e1 JJ |
5136 | 2006-07-13 Janis Johnson <janis187@us.ibm.com> |
5137 | ||
5138 | * doc/sourcebuild.texi (Test Directives): Document dg-shouldfail. | |
5139 | ||
88d03811 JH |
5140 | 2006-07-13 Jan Hubicka <jh@suse.cz> |
5141 | ||
5142 | * cgraphunit.c (cgraph_varpool_analyze_pending_decls): Call | |
5143 | align_variable. | |
5144 | * output.h (align_variable): Declare. | |
5145 | * varasm.c (align_variable): Export. | |
5146 | * value-prof.c (tree_value_profile_transformations): Recompute iterator | |
5147 | when basic block changed. | |
5148 | ||
6915d7f0 NC |
5149 | 2006-07-13 Nick Clifton <nickc@redhat.com> |
5150 | ||
5151 | * config/sh/sh.c (sh_reorg): Ignore deleted insns whilst | |
5152 | walking the LOG_LINKS chain. | |
96f342c1 | 5153 | |
7c0de6a5 GK |
5154 | 2006-07-12 Geoffrey Keating <geoffk@apple.com> |
5155 | ||
5156 | * doc/invoke.texi (C++ Dialect Options): Explain difference | |
5157 | between -fvisibility-inlines-hidden and setting hidden | |
5158 | visibility explicitly. | |
5159 | ||
3fb8727b EC |
5160 | 2006-07-12 Eric Christopher <echristo@apple.com> |
5161 | ||
5162 | * config/t-slibgcc-darwin (SHLIB_LINK): Don't munge stmp-lipo. | |
5163 | (stmp-lipo): Depend on libgcc.a. | |
5164 | ||
5f89204e KH |
5165 | 2006-07-12 Kazu Hirata <kazu@codesourcery.com> |
5166 | ||
5167 | * tree.c: Fix a comment typo. | |
5168 | ||
8a01e7d9 N |
5169 | 2006-07-12 Naveen.H.S <naveenh@kpitcummins.com> |
5170 | ||
3fb8727b | 5171 | * config/m32c/muldiv.md (umulhisi3_c): Use only registers for |
8a01e7d9 N |
5172 | dest. |
5173 | (umulhisi3_r): Likewise. | |
5174 | ||
93e89068 PC |
5175 | 2006-07-12 Paolo Carlini <pcarlini@suse.de> |
5176 | ||
5177 | PR libstdc++/27878 | |
5178 | * doc/install.texi (mips-sgi-irix6): Add note about IRIX 6.5.x, | |
5179 | x < 19, vs wchar_t support. | |
5180 | ||
45e49d96 NC |
5181 | 2006-07-12 Nick Clifton <nickc@redhat.com> |
5182 | ||
5183 | * config/sh/sh.h (SUBTARGET_ASM_RELAX_SPEC): Use -isa=sh4-up | |
5184 | instead of -isa=sh4. | |
5185 | ||
f2702694 MS |
5186 | 2006-07-12 Mike Stump <mrs@apple.com> |
5187 | ||
5188 | * protoize.c (edit_fn_definition): Add volatile to clean_text_p. | |
5189 | ||
fb49f596 EC |
5190 | 2006-07-10 Eric Christopher <echristo@apple.com> |
5191 | ||
5192 | * config/t-slibgcc-darwin: Rewrite. | |
5193 | ||
b24f7f6b LB |
5194 | 2006-07-10 Laurynas Biveinis <laurynas.biveinis@gmail.com> |
5195 | ||
5196 | PR bootstrap/20437 | |
5197 | * Makefile.in (configure): add missing aclocal.m4 and acinclude.m4 | |
5198 | dependencies. | |
5199 | ||
0ee5ccdf MK |
5200 | 2006-07-08 Matthias Klose <doko@debian.org> |
5201 | ||
5202 | * doc/sourcebuild.texi: Fix typo. | |
5203 | ||
72d41343 MS |
5204 | 2006-07-07 Mike Stump <mrs@apple.com> |
5205 | ||
5206 | * toplev.c (process_options): Don't give -ffunction-sections may | |
5207 | affect debugging warning for Mach-O. | |
5208 | ||
c81d6e2a JW |
5209 | 2006-07-07 James E Wilson <wilson@specifix.com> |
5210 | ||
5211 | * config/mips/mips.md (cpu): Add sb1a. | |
5212 | * config/mips/sb1.md: Modify almost all patterns to accept sb1a in | |
5213 | addition to sb1. Adjust comments to clarify SB-1A differences from | |
5214 | SB-1. | |
5215 | (ir_sb1a_load): New. Modify bypasses to use it. | |
5216 | (ir_sb1a_simple_alu): Likewise. | |
5217 | * config/mips/mips.c (mips_cpu_info_table): Add sb1a. | |
5218 | (mips_rtx_cost_data): Add PROCESSOR_SB1A support. | |
5219 | (mips_issue_rate): Add PROCESSOR_SB1A. | |
5220 | (mips_multipass_dfa_lookahead): Use TUNE_SB1 instead of PROCESSOR_SB1. | |
5221 | * config/mips/mips.h (processor_type): Add PROCESSOR_SB1A. | |
5222 | (TARGET_SB1): Add PROCESSOR_SB1A check. | |
5223 | (TUNE_SB1): Likewise. | |
5224 | ||
5225 | * config/mips/mips-protos.h (mips_store_data_bypass_p): New. | |
5226 | * config/mips/mips.c (mips_store_data_bypass_p): New. | |
5227 | * config/mips/sb1.md: Use mips_store_data_bypass_p instead of | |
5228 | store_data_bypass_p. | |
5229 | ||
1b13a490 PB |
5230 | 2006-07-08 Paul Brook <paul@codesourcery.com> |
5231 | ||
5232 | PR target/27991 | |
5233 | * config/m68k/m68k.md: Add r-m patterns for 68881 movxf. | |
5234 | ||
bfabddb6 RG |
5235 | 2006-07-07 Richard Guenther <rguenther@suse.de> |
5236 | ||
5237 | PR middle-end/28268 | |
5238 | * tree.h (build_one_cst): Declare. | |
5239 | * tree.c (build_one_cst): New function. | |
5240 | * tree-ssa-math-opts.c (get_constant_one): Remove. | |
5241 | (insert_reciprocals): Use build_one_cst. | |
5242 | * fold-const.c (fold_plusminus_mult): Likewise. | |
5243 | ||
83f676b3 RS |
5244 | 2006-07-07 Roger Sayle <roger@eyesopen.com> |
5245 | ||
5246 | * pointer-set.c (pointer_set_destroy): Correct whitespace. | |
5247 | * cfgloopanal.c (dump_graph): Likewise. | |
5248 | * dojump.c (discard_pending_stack_adjust): Likewise. | |
5249 | * fix-header.c (TARGET_EXTRA_INCLUDE, TARGET_EXTRA_PRE_INCLUDES): | |
5250 | Likewise. | |
5251 | * alloc-pool.c (dump_alloc_pool_statistics): Likewise. | |
5252 | * function.c (finalize_block_changes): Likewise. | |
5253 | * gcc-common.c (ggc_free_overhead, dump_gcc_loc_statistics): Likewise. | |
5254 | * tree-ssa-dce.c (clear_control_dependence_bitmap): Likewise. | |
5255 | * rtl.c (dump_rtx_statistics): Likewise. | |
fb49f596 | 5256 | * tree-ssa-structalias.c (sort_fieldstack, init_alias_heapvars): |
83f676b3 RS |
5257 | Likewise. |
5258 | * varray.c (dump_varray_statistics): Likewise. | |
5259 | * dfp.c (encode_decimal32, decode_decimal32, encode_decimal64, | |
5260 | decode_decimal64, encode_decimal128, decode_decimal128, | |
5261 | decimal_real_to_decimal): Likewise. | |
5262 | ||
1ce35d26 RG |
5263 | 2006-07-07 Richard Guenther <rguenther@suse.de> |
5264 | ||
5265 | PR tree-optimization/28187 | |
5266 | * tree-vrp.c (vrp_operand_equal_p): New function. | |
5267 | (vrp_bitmap_equal_p): Likewise. | |
5268 | (update_value_range): Use them to compare old and new | |
5269 | max and min values. | |
5270 | ||
9e33de05 RS |
5271 | 2006-07-06 Roger Sayle <roger@eyesopen.com> |
5272 | ||
5273 | * c-parser.c (c_parser_skip_to_end_of_block_or_statement): Add | |
5274 | a default case to switch statement to silence compiler warnings. | |
5275 | ||
b6c03bcd RS |
5276 | 2006-07-06 Roger Sayle <roger@eyesopen.com> |
5277 | ||
5278 | PR target/27968 | |
fb49f596 | 5279 | * configure.ac (HAVE_AS_IX86_FFREEP): On x86 targets check whether |
b6c03bcd RS |
5280 | the configured assembler supports the x87's ffreep mnemonic. |
5281 | * configure: Regenerate. | |
5282 | * config.in: Regenerate. | |
5283 | ||
5284 | * config/i386/i386.c (output_387_ffreep): New function. | |
5285 | (output_fp_compare): Use output_387_ffreep to emit ffreep insns. | |
5286 | (output_387_reg_move): Likewise. | |
5287 | ||
27b56ba6 PE |
5288 | 2006-07-06 Paul Eggert <eggert@cs.ucla.edu> |
5289 | ||
5290 | Port to hosts whose 'sort' and 'tail' implementations | |
5291 | treat operands with leading '+' as file names, as POSIX | |
5292 | has required since 2001. However, make sure the code still | |
5293 | works on pre-POSIX hosts. | |
5294 | * Makefile.in (slowcompare): Port to POSIX 1003.1-2001, | |
5295 | which says you should use "tail -c +N" rather than "tail +Nc". | |
5296 | Fix a bug: the old code incorrectly skipped 15 bytes, not 16. | |
5297 | ||
525dc87d ZD |
5298 | 2006-07-06 Zdenek Dvorak <dvorakz@suse.cz> |
5299 | ||
b6c03bcd RS |
5300 | * tree-ssa-loop-niter.c (scev_probably_wraps_p): Fix typo in |
5301 | argument name. | |
525dc87d | 5302 | |
429ec7dc DE |
5303 | 2006-07-06 David Edelsohn <edelsohn@gnu.org> |
5304 | ||
5305 | PR target/28150 | |
5306 | * config/rs6000/rs6000.c (rs6000_legitimate_address): Do not allow | |
5307 | PRE_{INC,DEC} of TFmode. | |
5308 | ||
5309 | 2006-07-06 David Edelsohn <edelsohn@gnu.org> | |
5310 | Alan Modra <amodra@bigpond.net.au> | |
5311 | ||
5312 | PR target/28170 | |
5313 | * config/rs6000/rs6000.c (insvdi_rshift_rlwimi_p): Correct shiftop | |
5314 | bounds. Simplify. | |
5315 | ||
cec12c7a RO |
5316 | 2006-07-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
5317 | ||
5318 | PR target/28285 | |
5319 | * config/alpha/predicates.md (alpha_swapped_comparison_operator): | |
5320 | Remove duplicate gtu. | |
5321 | ||
1937f939 JM |
5322 | 2006-07-05 Jason Merrill <jason@redhat.com> |
5323 | ||
5324 | PR c++/13983 | |
5325 | PR c++/17519 | |
5326 | * stor-layout.c (finish_record_layout): Copy TYPE_PACKED to variants. | |
5327 | * c-common.c (handle_packed_attribute): So don't copy it here. | |
5328 | * c-decl.c (finish_struct): Don't copy TYPE_ALIGN. | |
5329 | ||
63b08b60 MS |
5330 | 2006-07-05 Mike Stump <mrs@apple.com> |
5331 | ||
5332 | * doc/invoke.texi (Invoking G++): Clarify prose for g++. | |
5333 | ||
28a026d9 L |
5334 | 2006-07-05 H.J. Lu <hongjiu.lu@intel.com> |
5335 | ||
5336 | PR target/26146 | |
5337 | * config.gcc: Check with_cpu for i[34567]86--*-solaris2.1[0-9]*. | |
5338 | ||
dc8f5205 RG |
5339 | 2006-07-05 Richard Guenther <rguenther@suse.de> |
5340 | ||
5341 | PR target/28158 | |
5342 | * config/i386/i386.md (*negdf2_1): Restrict pattern to | |
5343 | TARGET_SSE2 targets if using SSE math. | |
5344 | (*absdf2_1): Likewise. | |
5345 | ||
30a843c3 RG |
5346 | 2006-07-05 Richard Guenther <rguenther@suse.de> |
5347 | ||
5348 | PR tree-optimization/28162 | |
5349 | * fold-const.c (fold_binary): For (-A) * (-B) -> A * B | |
5350 | make sure to convert the operands to the correct type. | |
5351 | ||
d898f3ce PB |
5352 | 2006-07-04 Paolo Bonzini <bonzini@gnu.org> |
5353 | ||
5354 | PR tree-optimization/28218 | |
5355 | ||
5356 | * tree-ssa-math-opts.c (execute_cse_reciprocals): Fix calls | |
5357 | to calculate and free the dominator information. | |
fb49f596 | 5358 | |
706601d9 PG |
5359 | 2006-07-04 Peter O'Gorman <peter@pogma.com> |
5360 | ||
5361 | * mklibgcc.in: chmod 644 before ranlib during install. | |
5362 | ||
dbc02e7f AS |
5363 | 2006-07-04 Andrew Stubbs <andrew.stubbs@st.com> |
5364 | J"orn Rennecke <joern.rennecke@st.com> | |
5365 | ||
5366 | * configure.ac (.eh_frame data check): Use diff -b. | |
5367 | ||
0b50988a EB |
5368 | 2006-07-04 Eric Botcazou <ebotcazou@libertysurf.fr> |
5369 | ||
5370 | PR bootstrap/18058 | |
5371 | * Makefile.in (BUILD_RTL): Add build/vec.o. | |
5372 | (build/gencondmd.o): Filter out -fkeep-inline-functions. | |
5373 | (build/genextract): Delete. | |
5374 | (build/genautomata): Likewise. | |
5375 | ||
84e9ad15 AM |
5376 | 2006-07-04 Alan Modra <amodra@bigpond.net.au> |
5377 | ||
5378 | PR target/28207 | |
5379 | * config/rs6000/rs6000.c (function_arg_boundary): Double-word align | |
5380 | 128-bit IBM long doubles for ABI_V4. | |
5381 | ||
11fc4275 EB |
5382 | 2006-07-03 Eric Botcazou <ebotcazou@adacore.com> |
5383 | ||
5384 | * tree.c (range_in_array_bounds_p): New predicate. | |
5385 | * tree.h (range_in_array_bounds_p): Declare it. | |
5386 | * tree-eh.c (tree_could_trap_p) <ARRAY_RANGE_REF>: Use it to | |
5387 | return a less conservative answer. | |
5388 | * tree-sra.c (struct sra_elt): Add new pointer field 'groups' | |
5389 | and flag 'is_group'. | |
5390 | (IS_ELEMENT_FOR_GROUP): New macro. | |
5391 | (FOR_EACH_ACTUAL_CHILD): Likewise. | |
5392 | (next_child_for_group): New helper function. | |
5393 | (can_completely_scalarize_p): Take into account groups. | |
5394 | (sra_hash_tree): Handle RANGE_EXPR. | |
5395 | (sra_elt_eq): Likewise. | |
5396 | (lookup_element): Be prepared for handling groups. | |
5397 | (is_valid_const_index): Delete. | |
5398 | (maybe_lookup_element_for_expr) <ARRAY_REF>: Use in_array_bounds_p | |
5399 | instead of is_valid_const_index. | |
5400 | <ARRAY_RANGE_REF>: New case. | |
5401 | (sra_walk_expr) <ARRAY_REF>: Use in_array_bounds_p instead of | |
5402 | is_valid_const_index. | |
5403 | <ARRAY_RANGE_REF>: Do not unconditionally punt. | |
5404 | (scan_dump): Dump info for groups too. | |
5405 | (decide_instantiation_1): Likewise. | |
5406 | (decide_block_copy): Assert that the element is not a group. | |
5407 | Propagate decision to groups. | |
5408 | (generate_one_element_ref): Handle RANGE_EXPR. | |
5409 | (mark_no_warning): Iterate over actual childs. | |
5410 | (generate_copy_inout): Likewise. | |
5411 | (generate_element_copy): Likewise. | |
5412 | (generate_element_zero): Likewise. | |
5413 | (generate_element_init_1): Likewise. | |
5414 | (dump_sra_elt_name): Handle RANGE_EXPR. | |
5415 | ||
31a9760a RS |
5416 | 2006-07-03 Roger Sayle <roger@eyesopen.com> |
5417 | ||
5418 | PR tree-optimization/26251 | |
5419 | * tree-ssa-threadupdate.c (redirection_block_p): New function. | |
5420 | (thread_block): When optimizing for size refuse to thread jumps | |
5421 | that would require duplication of blocks other than redirection | |
5422 | blocks. | |
5423 | ||
b6348cb3 PB |
5424 | 2006-07-03 Paolo Bonzini <bonzini@gnu.org> |
5425 | ||
5426 | * configure.ac: Fix thinko in previous check-in. | |
5427 | * configure: Regenerate. | |
5428 | ||
1546bb64 PB |
5429 | 2006-07-03 Paolo Bonzini <bonzini@gnu.org> |
5430 | ||
5431 | PR other/27063 | |
5432 | * configure.ac (for lang...): Simplify nesting of conditionals. | |
5433 | Test subdir_requires for non-enabled languages. Move processing | |
5434 | of lang_opt_files and lang_tree_fiels below that test. | |
5435 | * configure: Regenerate. | |
5436 | * doc/sourcebuild.texi (Front End Config): Document subdir_requires. | |
5437 | ||
3e72a66f MM |
5438 | 2006-07-01 Martin Michlmayr <tbm@cyrius.com> |
5439 | ||
5440 | * doc/gcov.texi (Invoking Gcov): Add a missing word. | |
5441 | ||
2a8a8292 KH |
5442 | 2006-06-30 Kazu Hirata <kazu@codesourcery.com> |
5443 | ||
5444 | * cfgexpand.c, config/i386/i386.c, genpreds.c, tree-cfg.c: Fix | |
5445 | comment typos. | |
5446 | ||
b9e75696 JM |
5447 | 2006-06-29 Jason Merrill <jason@redhat.com> |
5448 | ||
5449 | PR c++/26905 | |
5450 | PR c++/26612 | |
5451 | PR c++/27000 | |
5452 | PR c++/26984 | |
5453 | PR c++/19134 | |
5454 | * tree.c (build_decl_stat): Don't hande #pragma visibility here. | |
5455 | * c-common.c (c_determine_visibility): Handle it here. | |
fb49f596 | 5456 | * c-decl.c (finish_decl): Call c_determine_visibility for |
b9e75696 JM |
5457 | functions, too. |
5458 | * flags.h (enum symbol_visibility): Sort from most to least visibility. | |
5459 | * tree.h: Likewise. | |
5460 | * varasm.c (default_assemble_visibility): Likewise. | |
5461 | * c-common.c (handle_visibility_attribute): Complain about trying | |
5462 | to give visibility to an already defined class, or trying to change | |
5463 | declared visibility. Always attach the attribute. | |
5464 | ||
5465 | PR c++/26905 | |
5466 | PR c++/21675 | |
5467 | PR c++/17470 | |
5468 | * attribs.c (decl_attributes): Ignore type-in-place attributes | |
5469 | once the type has been defined. | |
5470 | ||
8646f3df RS |
5471 | 2006-06-29 Roger Sayle <roger@eyesopen.com> |
5472 | ||
5473 | PR middle-end/27428 | |
5474 | * c-lex.c (c_lex_with_flags) <CPP_N_INVALID>: Increment errorcount | |
5475 | to indicate the cpplib has issued an error message for us. | |
5476 | ||
f8c2645c AL |
5477 | 2006-06-29 Asher Langton <langton2@llnl.gov> |
5478 | ||
5479 | PR target/25765 | |
5480 | * config/i386/i386.c (ix86_output_function_epilogue): Don't | |
5481 | insert a label at the end of an function under Mach-O. | |
fb49f596 | 5482 | |
5656a184 EC |
5483 | 2006-06-29 Eric Christopher <echristo@apple.com> |
5484 | Evan Cheng <evan.cheng@apple.com> | |
5485 | ||
5486 | * predicates.md (vector_all_ones_operand): New. | |
5487 | (nonimmediate_or_sse_const_operand): Ditto. | |
5488 | * config/i386/i386-protos.h (standard_sse_constant_opcode): Declare. | |
5489 | * config/i386/i386.c (standard_sse_constant_opcode): Define. | |
5490 | (standard_sse_mode_p): Ditto. | |
5491 | (standard_sse_constant_p): Add case for -1 vector. | |
5492 | (ix86_expand_vector_move): Try to use. | |
5493 | * sse.md (*mov<mode>_internal): Use nonimmediate_or_sse_const_operand. | |
5494 | Call standard_sse_constant_opcode. | |
5495 | (*movv4sf_internal): Ditto. | |
5496 | (*movv2df_internal): Ditto. | |
5497 | ||
c8d560fa RS |
5498 | 2006-06-29 Roger Sayle <roger@eyesopen.com> |
5499 | ||
5500 | * genpreds.c (write_match_code_switch): Correctly use XSTR instead | |
5501 | of XEXP to extract the operands of a MATCH_CODE rtx. | |
5502 | ||
43b50eb2 AP |
5503 | 2006-06-28 Andrew Pinski <pinskia@gmail.com> |
5504 | ||
5505 | * tree.c (tree_size): Do not waste tail padding in | |
5506 | struct tree_string and make the size be the same as | |
5507 | build_string will generate. | |
5508 | ||
99495729 JM |
5509 | 2006-06-28 Jason Merrill <jason@redhat.com> |
5510 | ||
5511 | PR c++/27768 | |
5512 | * tree-ssa-alias.c (compute_flow_insensitive_aliasing): Add | |
5513 | may_aliases already in the tag's annotations to the bitmap. | |
5514 | ||
8547c7f8 RS |
5515 | 2006-06-28 Roger Sayle <roger@eyesopen.com> |
5516 | ||
5517 | * genpreds.c (write_predicate_stmts) <IOR>: Add missing break. | |
5518 | ||
7caf6734 RS |
5519 | 2006-06-28 Roger Sayle <roger@eyesopen.com> |
5520 | ||
5521 | * genpreds.c (generate_switch_p): New function. | |
5522 | (add_mode_tests): Push the new mode test down inside an AND expr | |
5523 | if this allows the switch-suitable MATCH_CODE to be near the root. | |
5524 | (write_match_code_switch): New function to write a MATCH_CODE as | |
5525 | a switch statement. | |
5526 | (write_predicate_stmts): New function to write a predicate RTX | |
5527 | expression as a sequence of statements. | |
5528 | (write_one_predicate_function): Use write_predicate_stmts. | |
5529 | (write_tm_constrs_h): Likewise. | |
5530 | ||
f340b6fc FF |
5531 | 2006-06-26 Fred Fish <fnf@specifix.com> |
5532 | ||
5533 | * config/mips/t-sb1: New file. | |
5534 | * config.gcc (mipsisa64sb1-*-elf*): Add mips/t-sb1 to | |
5535 | tmake_file list. | |
5536 | ||
ff485e71 DD |
5537 | 2006-06-26 DJ Delorie <dj@redhat.com> |
5538 | ||
5539 | * config/m32c/m32c.c (m32c_print_operand): Fix sign-merging logic. | |
5540 | ||
5541 | 2006-06-26 Naveen H.S <naveenh@kpitcummins.com> | |
5542 | Jayant Sonar <jayants@kpitcummins.com> | |
5543 | Jaydeep Vipradas <jaydeepv@kpitcummins.com> | |
5544 | ||
5545 | * config/m32c/addsub.md (addsi3, addsi3_1, addsi3_2): New. | |
5546 | (subsi3, subsi3_1, subsi3_2): New. | |
5547 | * config/m32c/bitops.md (andsi3, iorsi3, xorsi3): New. | |
5548 | * config/m32c/mov.md (SI mov peephole): New. | |
5549 | * config/m32c/m32.c (m32c_immd_dbl_mov): New. | |
5550 | * config/m32c/m32c-protos.h (m32c_immd_dbl_mov): New. | |
5656a184 | 5551 | |
500c353d OH |
5552 | 2006-06-26 Olivier Hainque <hainque@adacore.com> |
5553 | ||
5554 | * function.c (aggregate_value_p): Honor DECL_BY_REFERENCE on | |
5555 | a CALL_EXPR target function declaration. | |
5556 | ||
28df01ac RG |
5557 | 2006-06-26 Richard Guenther <rguenther@suse.de> |
5558 | ||
5559 | * tree.c (build_string): Do not waste tail padding in | |
5560 | struct tree_string. | |
5561 | ||
a469a4f2 RG |
5562 | 2006-06-26 Richard Guenther <rguenther@suse.de> |
5563 | ||
5564 | * ggc-page.c (init_ggc): Add missing element to size_lookup | |
5565 | table. | |
5566 | ||
5567 | Revert | |
5568 | 2006-06-23 Richard Guenther <rguenther@suse.de> | |
5569 | ||
5570 | * ggc-page.c (init_ggc): Do not round up the extra_order_size_table | |
5571 | sizes to MAX_ALIGNMENT. Fix the size_lookup table to honour | |
5572 | alignment requests instead. Add verification code. | |
5573 | Add struct tree_function_decl and struct tree_binfo size to | |
5574 | extra_order_size_table. Add missing element to size_lookup | |
5575 | table. | |
5576 | ||
858214db EB |
5577 | 2006-06-25 Eric Botcazou <ebotcazou@adacore.com> |
5578 | ||
5579 | PR middle-end/28151 | |
5580 | * fold-const.c (const_binop): Be prepared for self returning zero. | |
5581 | Simplify code handling complex values. | |
5582 | ||
61c25908 OH |
5583 | 2006-06-24 Olivier Hainque <hainque@adacore.com> |
5584 | ||
5585 | * gimplify.c (gimplify_scalar_mode_aggregate_compare): New function. | |
5586 | (gimplify_expr): Use it for tcc_comparison of operands of non BLKmode | |
5587 | aggregate types. | |
5588 | ||
5589 | 2006-06-24 Olivier Hainque <hainque@adacore.com> | |
5590 | ||
5591 | * tree-ssa-loop-im.c (for_each_index): Handle ARRAY_RANGE_REF as | |
5592 | ARRAY_REF, so have the callback called for the low bound expression. | |
5593 | ||
5fc89bfd JJ |
5594 | 2006-06-23 Janis Johnson <janis187@us.ibm.com> |
5595 | ||
5596 | * tree.h (DECIMAL_FLOAT_TYPE_P): New. | |
5597 | * c-typeck.c (c_common_type): Disallow operations on decimal float | |
5598 | types and other float types. | |
5599 | * convert.c (convert_to_real): Don't ignore conversions involving | |
5600 | decimal float types. | |
5601 | ||
a441447f OH |
5602 | 2006-06-23 Olivier Hainque <hainque@adacore.com> |
5603 | ||
5604 | * tree.c (max_int_size_in_bytes): New function, inspired from | |
5605 | code in function.c:assign_temp. | |
5606 | * tree.h (max_int_size_in_bytes): Declare. | |
5607 | * function.c (assign_temp): Use it. | |
5608 | * gimplify.c (create_tmp_var): Relax the assertions on the type | |
5609 | properties, not mandating constant size any more. | |
5610 | (force_constant_size): New static function. | |
5611 | (gimple_add_tmp_var): Use it, forcing variable size to a | |
5612 | constant upper bound if it is not constant on entry. | |
5613 | ||
4e2bb0a4 DS |
5614 | 2006-06-23 Danny Smith <dannysmith@users.sourceforge.net> |
5615 | ||
5616 | PR target/27789 | |
5617 | * config/i386/winnt.c (ix86_handle_selectany_attribute): Move check | |
5618 | for initialization and setting of one_only flag to ... | |
5619 | (i386_pe_encode_section_info): ...here. | |
5620 | (i386_pe_dllimport_p): Check for DECL_DLLIMPORT_P also. | |
5621 | Recheck that the symbol has not been defined. | |
5622 | ||
ecf7b86f RG |
5623 | 2006-06-23 Richard Guenther <rguenther@suse.de> |
5624 | ||
5625 | * ggc-page.c (init_ggc): Do not round up the extra_order_size_table | |
5626 | sizes to MAX_ALIGNMENT. Fix the size_lookup table to honour | |
5627 | alignment requests instead. Add verification code. | |
5628 | Add struct tree_function_decl and struct tree_binfo size to | |
5629 | extra_order_size_table. Add missing element to size_lookup | |
5630 | table. | |
5631 | ||
e577c8c0 RS |
5632 | 2006-06-22 Roger Sayle <roger@eyesopen.com> |
5633 | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | |
5634 | ||
5635 | PR middle-end/28131 | |
5636 | * expr.c (expand_expr_real_1) <VECTOR_CST>: Check whether the | |
5637 | call to lang_hooks.types.type_for_mode returned NULL_TREE. | |
5638 | ||
f64ad1d3 BE |
5639 | 2006-06-23 Ben Elliston <bje@au.ibm.com> |
5640 | ||
5641 | * dfp.c (decimal_to_decnumber): Do not use decNumberNegate to | |
5642 | negate dn -- manipulate it directly. | |
5643 | ||
8c339083 RS |
5644 | 2006-06-22 Roger Sayle <roger@eyesopen.com> |
5645 | Steven Bosscher <stevenb.gcc@gmail.com> | |
5646 | ||
5647 | PR target/27531 | |
5648 | * reload1.c (gen_reload): Call mark_jump_label on the new insns | |
5649 | generated by gen_move_insn to add REG_LABEL notes if necessary. | |
5650 | ||
03c8b1be BW |
5651 | 2006-06-22 Bob Wilson <bob.wilson@acm.org> |
5652 | ||
5653 | * config/xtensa/lib1funcs.asm (MIN_ESA): Delete. | |
5654 | (leaf_entry): Remove use of MIN_ESA. | |
5655 | ||
0ef90296 ZD |
5656 | 2006-06-22 Zdenek Dvorak <dvorakz@suse.cz> |
5657 | ||
5658 | PR rtl-optimization/28121 | |
5659 | * cfgexpand.c (tree_expand_cfg): Clean EDGE_EXECUTABLE flag from | |
5660 | the entry edge. | |
5661 | ||
a1ec220c DD |
5662 | 2006-06-21 DJ Delorie <dj@redhat.com> |
5663 | ||
5664 | * config/m32c/muldiv.md (mulhisi3_i): Only use registers for dest | |
5665 | (TN-16C-A156A/E). | |
5666 | (mulhisi3_r): Likewise. | |
5667 | ||
35fa8915 RS |
5668 | 2006-06-21 Richard Sandiford <richard@codesourcery.com> |
5669 | ||
5670 | PR middle-end/28034 | |
5671 | * coverage.c (coverage_counter_alloc): Leave the index type | |
5672 | unspecified. | |
5673 | (coverage_counter_alloc): Use null arguments for operands 2 and 3 | |
5674 | of the ARRAY_REF. | |
5675 | ||
17d6caa1 AP |
5676 | 2006-06-21 Andrew Pinski <pinskia@physics.uc.edu> |
5677 | ||
5678 | * doc/invoke.texi (-fopenmp) Move to "Options Controlling C Dialect" | |
5679 | section from the "Options for Code Generation Conventions". | |
5680 | ||
b0100a44 RH |
5681 | 2006-06-21 Richard Henderson <rth@redhat.com> |
5682 | ||
5683 | PR target/26347 | |
5684 | PR target/27082 | |
5685 | * config/alpha/predicates.md (small_symbolic_operand): Deny weak | |
5686 | symbols. | |
5687 | (global_symbolic_operand): Allow weak symbols, even if local_p. | |
5688 | ||
75715cf6 EB |
5689 | 2006-06-21 Eric Botcazou <ebotcazou@adacore.com> |
5690 | ||
5691 | * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): New function. | |
5692 | (find_interesting_uses_address): Punt if above function returns true. | |
5693 | ||
18fc9bd4 RG |
5694 | 2006-06-21 Richard Guenther <rguenther@suse.de> |
5695 | ||
5696 | * configure: Regenerated. | |
5697 | ||
0882b52e JM |
5698 | 2006-06-21 Joseph Myers <joseph@codesourcery.com> |
5699 | ||
5700 | * config/mips/mips.c (function_arg): Where one part of a | |
5701 | complex argument is in registers and the other part in the stack, | |
5702 | return a REG not a PARALLEL. | |
5703 | ||
0f57bf40 MM |
5704 | 2006-06-21 Mark Mitchell <mark@codesourcery.com> |
5705 | ||
5706 | * configure.ac: Set gcc_gxx_include_dir to $target/include/c++ | |
5707 | when cross-compiling. Do not substitute libstdcxx_incdir. | |
5708 | * configure: Regenerated. | |
5709 | ||
0841534a JJ |
5710 | 2006-06-21 Jakub Jelinek <jakub@redhat.com> |
5711 | ||
5712 | * varasm.c (mergeable_string_section): Check for embedded NULs and | |
5713 | NUL termination in the first int_size_in_bytes (TREE_TYPE (decl)) | |
5714 | rather than TREE_STRING_LENGTH bytes. | |
5715 | ||
470f18fc RG |
5716 | 2006-06-21 Richard Guenther <rguenther@suse.de> |
5717 | ||
5718 | * ggc-page.c (extra_order_size_table): Add var_ann_d, | |
5719 | tree_ssa_name, bitmap_element and phi_node with 4 arguments | |
5720 | sizes. | |
5721 | ||
b16fb82d RG |
5722 | 2006-06-21 Richrad Guenther <rguenther@suse.de> |
5723 | ||
5724 | * tree-ssa-loop-niter.c (simplify_using_initial_conditions): | |
5725 | Limit iteration over the dominators. | |
5726 | ||
8043a72a RS |
5727 | 2006-06-20 Roger Sayle <roger@eyesopen.com> |
5728 | ||
5729 | * config/mips/iris6.h (LIB_SPEC): Add support for -pthread. | |
5730 | (SUBTARGET_CPP_SPEC): Define _REENTERANT if -pthread specified. | |
5731 | ||
5a6ccafd RG |
5732 | 2006-06-20 Richard Guenther <rguenther@suse.de> |
5733 | Michael Matz <matz@suse.de> | |
5734 | ||
5735 | * alloc-pool.h (free_alloc_pool_if_empty): Prototype new | |
5736 | function. | |
5737 | * alloc-pool.c (free_alloc_pool_if_empty): New function. | |
5738 | * et-forest.h (et_free_pools): Prototype new function. | |
5656a184 | 5739 | * et-forest.c (et_free_tree_force): Free parent occurrence. |
5a6ccafd RG |
5740 | (et_free_pools): New function. |
5741 | * dominance.c (free_dominance_info): Free et-forest alloc | |
5742 | pools. | |
5743 | ||
1000b34d RS |
5744 | 2006-06-20 Roger Sayle <roger@eyesopen.com> |
5745 | ||
5746 | * expr.c (expand_expr_real_1) <VECTOR_CST>: For vector constants with | |
5747 | integer modes, attempt to directly construct an integer constant. | |
5748 | ||
5749 | * fold-const.c (native_encode_vector): Determine the size of each | |
5750 | element from the vector type instead of the first vector element. | |
5751 | ||
5752 | * tree.c (build_constructor_single): Mark a CONSTRUCTOR as constant, | |
5753 | if all of its elements/components are constant. | |
5754 | (build_constructor_from_list): Likewise. | |
5755 | ||
8fdbc9c6 ZD |
5756 | 2006-06-20 Zdenek Dvorak <dvorakz@suse.cz> |
5757 | ||
5758 | PR tree-optimization/27331 | |
5759 | * tree-data-ref.c (free_data_ref): New function. | |
5760 | (create_data_ref): Fail if the data reference has unknown access | |
5761 | function. | |
5762 | (free_data_refs): Use free_data_ref. | |
5763 | ||
73dab33b AP |
5764 | 2006-06-19 Andrew Pinski <pinskia@gmail.com> |
5765 | ||
5766 | PR middle-end/28075 | |
5767 | * tree-inline.c (setup_one_parameter): Strip useless | |
5768 | type conversion before adding it to the IR. | |
5769 | (declare_return_variable): Likewise. | |
5770 | ||
48e2909e MM |
5771 | 2006-06-19 Martin Michlmayr <tbm@cyrius.com> |
5772 | ||
5773 | PR c/27149 | |
5774 | * c-common.c (c_common_truthvalue_conversion): Fix grammar in warning. | |
5775 | ||
ca84a9a2 MS |
5776 | 2006-06-19 Mike Stump <mrs@apple.com> |
5777 | ||
5778 | * tree.c (variably_modified_type_p): VM arguments don't make the | |
5779 | type a VM type. | |
5780 | ||
81126126 RG |
5781 | 2006-06-19 Richard Guenther <rguenther@suse.de> |
5782 | ||
5783 | * tree-ssa-pre.c (try_combine_conversion): Strip useless | |
5784 | type conversions after folding. | |
5785 | ||
f5938dcd RG |
5786 | 2006-06-19 Richard Guenther <rguenther@suse.de> |
5787 | ||
5788 | * ggc-page.c (extra_order_size_tab): Add entries with | |
5789 | size of struct function and basic_block. | |
5790 | (size_lookup): Extend to cover sizes up to 511. | |
5791 | (ggc_alloc_stat): Adjust user. | |
5792 | (ggc_pch_count_object): Likewise. | |
5793 | (ggc_pch_alloc_object): Likewise. | |
5794 | (ggc_pch_write_object): Likewise. | |
5795 | ||
20fb52af ZD |
5796 | 2006-06-19 Zdenek Dvorak <dvorakz@suse.cz> |
5797 | ||
5798 | * tree-ssa-loop-niter.c (implies_ge_p): New function. | |
5799 | (derive_constant_upper_bound): Handle OP0 - CST in unsigned types | |
5800 | correctly. | |
5801 | ||
7ed9c001 DC |
5802 | 2006-06-19 Denis Chertykov <denisc@overta.ru> |
5803 | ||
5804 | * config/avr/libgcc.S : Correct my wrong previous commit. | |
5805 | ||
fa00f91b RS |
5806 | 2006-06-19 Roger Sayle <roger@eyesopen.com> |
5807 | ||
5808 | PR target/27861 | |
5809 | * expmed.c (expand_shift): On SHIFT_COUNT_TRUNCATED targets, we may | |
5810 | have stripped a SUBREG from the shift count, so we may need to | |
5811 | convert_to_mode back to the type's mode before calling make_tree. | |
5812 | Use new_amount instead of amount to avoid expanding a tree twice. | |
5813 | ||
096dce1b RG |
5814 | 2006-06-19 Richard Guenther <rguenther@suse.de> |
5815 | ||
5816 | PR middle-end/28045 | |
5817 | * fold-const.c (operand_equal_p): Check if the argument types | |
5818 | have the same precision before stripping NOPs. | |
5819 | ||
46b86adc DB |
5820 | 2006-06-19 Daniel Berlin <dberlin@dberlin.org> |
5821 | ||
5822 | Fix PR tree-optimization/27341 | |
5823 | * tree-cfg.c (gimplify_val): Call mark_new_vars_to_rename on the | |
5824 | statement we get. | |
5656a184 | 5825 | * tree-complex.c (pass_lower_complex): Update SMT usage. |
46b86adc | 5826 | |
7e665d18 AK |
5827 | 2006-06-19 Andreas Krebbel <krebbel1@de.ibm.com> |
5828 | ||
5656a184 | 5829 | * config/s390/s390.md ("doloop_si64", "doloop_si31", "doloop_di"): |
7e665d18 AK |
5830 | Add a new alternative to the constraint strings. Add move of |
5831 | operand 1 to 3 to the splitter definition. | |
5832 | ("doloop_si_long"): Second contraint alternative removed. | |
5833 | ||
4301ec4f AS |
5834 | 2006-06-08 Anatoly Sokolov <aesok@post.ru> |
5835 | ||
5836 | * config/avr/avr.h (avr_have_movw_lpmx_p): Declare. | |
5656a184 | 5837 | (TARGET_CPU_CPP_BUILTINS): Add __AVR_HAVE_MOVW__ and |
4301ec4f AS |
5838 | __AVR_HAVE_LPMX__. |
5839 | (AVR_HAVE_MOVW) Define. | |
5840 | (ASSEMBLER_DIALECT): Use AVR_HAVE_MOVW. | |
5841 | (ASM_SPEC): Add avr25. | |
5842 | (LINK_SPEC): Add avr25. | |
5843 | * config/avr/avr.c (avr_have_movw_lpmx_p): Add. | |
5844 | (base_arch_s): Add new member 'have_movw_lpmx'. | |
5845 | (avr_arch_types): Init 'have_movw_lpmx'. | |
5846 | (avr_mcu_types): Add 'avr25'. Move attiny13, attiny2313, attiny24, | |
5847 | attiny44, attiny84, attiny25, attiny45, attiny85, attiny261, | |
5848 | attiny461, attiny861 and at86rf401 in 'avr25' arhitecture. | |
5849 | (avr_override_options): Init 'avr_have_movw_lpmx_p'. | |
5656a184 | 5850 | (output_movhi, output_movsisf, ashlsi3_out, avr_rtx_costs): Use |
4301ec4f AS |
5851 | AVR_HAVE_MOVW. |
5852 | (avr_file_start): Do not output '.arh' derective. | |
5853 | * config/avr/libgcc.S (mov_l): Use __AVR_HAVE_MOVW__. | |
5854 | (__do_copy_data): Use __AVR_HAVE_LPMX__. | |
5855 | * config/avr/avr.md (mcu_enhanced): Delete. | |
5856 | (mcu_have_movw): Define. | |
5857 | (negsi2, extendhisi2, zero_extendhisi2): Use 'mcu_have_movw'. | |
5858 | (call_insn, call_value_insn): Use 'call_insn' and __AVR_HAVE_MOVW__. | |
5859 | * config/avr/t-avr(MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add avr25. | |
5860 | (MULTILIB_MATCHES): Add attiny13, attiny2313, attiny24, attiny44, | |
5656a184 | 5861 | attiny84, attiny25, attiny45, attiny85, attiny261, attiny461, |
4301ec4f AS |
5862 | attiny861 and at86rf401 devices. |
5863 | ||
40327e03 JZ |
5864 | 2006-06-18 Jie Zhang <jie.zhang@analog.com> |
5865 | ||
5866 | * config/bfin/bfin.c (MAX_LOOP_LENGTH): Define to be 2042 instead | |
5867 | of 4096. | |
5868 | ||
c3cb54c6 KB |
5869 | 2006-06-17 Karl Berry <karl@gnu.org> |
5870 | ||
5871 | * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi, | |
5872 | doc/gccint.texi, doc/install.texi (@dircategory): Use | |
5873 | "Software development" instead of "Programming", following | |
5874 | the Free Software Directory. | |
5875 | ||
31ebc801 AO |
5876 | 2006-06-17 Alexandre Oliva <aoliva@redhat.com> |
5877 | ||
5878 | * config/i386/i386.c (legitimate_tls_address) | |
5879 | <TARGET_GNU2_TLS>: Add tp after DTPOFF. | |
5880 | * config/i386/i386.md (*tls_dynamic_gnu2_combine_32): Adjust. | |
5881 | (*tls_dynamic_gnu2_combine_64): Likewise. | |
5882 | ||
1af8dcbf RG |
5883 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
5884 | ||
5885 | PR middle-end/27116 | |
5886 | * fold-const.c (negate_expr_p): Do not introduce undefined | |
5887 | overflow in negating INTEGER_CSTs. | |
5888 | (fold_negate_expr): Rename from negate_expr. Revert last | |
5889 | change for folding BIT_NOT_EXPR. Change semantics to | |
5890 | return NULL_TREE for non-simplified negations. Do not | |
5891 | strip type conversions and unify type handling. | |
5892 | (negate_expr): New function, wrap around fold_negate_expr | |
5893 | but ensure building a tree always. Strip type conversions | |
5894 | here, fold to result type. | |
5895 | (fold_unary): Use fold_negate_expr for folding NEGATE_EXPR. | |
5896 | ||
2d0df1f9 RS |
5897 | 2006-06-16 Roger Sayle <roger@eyesopen.com> |
5898 | ||
5899 | PR middle-end/27802 | |
5900 | * reg-stack.c (subst_stack_regs): Handle noreturn function calls | |
5901 | that (would) return their results in stack registers. | |
5902 | ||
47392a21 MM |
5903 | 2006-06-16 Michael Matz <matz@suse.de> |
5904 | Richard Guenther <rguenther@suse.de> | |
5905 | ||
5906 | * fold-const.c (fold_truthop): Only return new tree node if | |
5907 | we canonicalized something. | |
5908 | ||
55dea919 RG |
5909 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
5910 | ||
5911 | * function.h (enum function_frequency): Move declaration | |
5912 | out of struct function. | |
5913 | (struct function): Move bool fields and the enum to the bitfield | |
5914 | section. Reorder elements to avoid padding. Remove unused | |
5915 | fields left over from the RTL inliner removal. | |
5916 | * function.c (free_after_compilation): Do not zero removed fields. | |
5917 | * Makefile.in (ipa-reference.o): Add $(FUNCTION_H) dependency. | |
5918 | (ipa-type-escape.o): Likewise. | |
5919 | ||
b4e19405 RG |
5920 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
5921 | ||
5922 | * cgraph.h (struct cgraph_local_info): Turn bool elements | |
5923 | into a bitfield. | |
5924 | (struct cgraph_node): Likewise. | |
5925 | (struct cgraph_varpool_node): Likewise. | |
5926 | ||
d817ed3b RG |
5927 | 2006-06-15 Richard Guenther <rguenther@suse.de> |
5928 | ||
5929 | * fold-const.c (fold_truth_not_expr): Rename from | |
5930 | invert_truthvalue. Give it fold_* semantics to avoid | |
5931 | generating garbage. | |
5932 | (invert_truthvalue): New function. Wrapper around | |
5933 | fold_truth_not_expr. | |
5934 | (optimize_minmax_comparison): Avoid creating garbage. | |
5935 | (fold_unary): Use fold_truth_not_expr for folding | |
5936 | TRUTH_NOT_EXPR. | |
5937 | (fold_ternary): Replace uses of invert_truthvalue with | |
5938 | fold_truth_not_expr where applicable. | |
5939 | * tree.h (fold_truth_not_expr): Prototype. | |
5940 | ||
5d35c171 RG |
5941 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
5942 | ||
5943 | PR tree-optimization/27781 | |
5944 | * Makefile.in (ipa-pure-const.o): Add $(TARGET_H) dependency. | |
5945 | * ipa-pure-const.c (target.h): Include. | |
5946 | (analyze_function): Do not analyze functions that do not | |
5947 | bind locally. | |
5948 | ||
82460c75 | 5949 | 2006-06-15 Andrew MacLeod <amacleod@redhat.com> |
5656a184 | 5950 | |
82460c75 AM |
5951 | PR middle-end/27793 |
5952 | * tree-dfa.c (referenced_vars_dup_list): Remove. | |
5953 | (find_referenced_vars): Remove assert. | |
5954 | (referenced_var_check_and_insert): Replace dup list with assert. | |
5955 | * tree-ssa.c (delete_tree_ssa): Remove dup list processing. | |
5956 | * tree-flow.h (referenced_vars_dup_list): Remove extern decl. | |
5957 | ||
4f6c9110 RG |
5958 | 2006-06-15 Richard Guenther <rguenther@suse.de> |
5959 | ||
5960 | * tree-ssa-structalias.c (alias_get_name): Avoid creating | |
5961 | extra unused identifiers if not dumping. | |
5962 | (create_variable_info_for): Likewise. | |
5963 | ||
0ad1d5a1 ZD |
5964 | 2006-06-15 Zdenek Dvorak <dvorakz@suse.cz> |
5965 | ||
5966 | * tree-ssa-loop-niter.c (implies_nonnegative_p): New function. | |
5967 | (derive_constant_upper_bound): Derive more precise upper bound in | |
5968 | common cases. Return type changed to double_int. | |
5969 | (record_estimate): Reflect the changed return type of | |
5970 | derive_constant_upper_bound. | |
5971 | * double-int.c (double_int_zext, double_int_sext): Fix. | |
5972 | ||
ec6c7392 PB |
5973 | 2006-06-15 Paolo Bonzini <bonzini@gnu.org> |
5974 | ||
5975 | * configure.ac (CFLAGS): Get them from the toplevel or from the | |
5976 | configure invocation. | |
5977 | * configure: Regenerate. | |
5978 | * Makefile.in (CFLAGS): Substitute value provided by configure. | |
5979 | ||
fe89d797 MM |
5980 | 2006-06-14 Mark Mitchell <mark@codesourcery.com> |
5981 | ||
5982 | PR c++/26559 | |
5983 | * c-common.h (c_finish_omp_atomic): Adjust declaration. | |
5984 | * c-omp.c (c_finish_omp_atomic): Return the expression to perform, | |
5985 | rather than calling add_stmt on it. | |
5986 | * c-parser.c (c_parser_omp_atomic): Adjust accordingly. | |
5987 | ||
184f4c56 AK |
5988 | 2006-06-14 Andreas Krebbel <krebbel1@de.ibm.com> |
5989 | ||
5990 | PR middle-end/27959 | |
5991 | * reload1.c (reload): Remove registers returned by update_eliminables | |
5992 | from used_spill_regs. | |
5993 | ||
e3d437c0 DD |
5994 | 2006-06-13 DJ Delorie <dj@redhat.com> |
5995 | ||
5996 | * config/m32c/muldiv.md (mulpsi3): Expect arbitrary constants. | |
5997 | ||
9288b845 CD |
5998 | 2006-06-13 Carlos O'Donell <carlos@codesourcery.com> |
5999 | ||
6000 | * Makefile.in: Define HTMLS_BUILD, HTMLS_INSTALL, | |
6001 | html__strip_dir, html__mkdir_p. Enhance install-html target. | |
5656a184 | 6002 | * configure.ac: AC_SUBST datarootdir, docdir and htmldir. |
9288b845 CD |
6003 | * configure: Regenerate. |
6004 | ||
6b4e9576 FJ |
6005 | 2006-06-13 Fariborz Jahanian <fjahanian@apple.com> |
6006 | ||
5656a184 | 6007 | * fold-const.c (fold_cond_expr_with_comparison): Check for |
6b4e9576 FJ |
6008 | Objective-C++ as language in deciding COND_EXPR transformation. |
6009 | ||
31b6f0ae R |
6010 | 2006-06-06 J"orn Rennecke <joern.rennecke@st.com> |
6011 | ||
6012 | PR target/28014: | |
6013 | * config/sh/t-sh (LIB1ASMFUNCS): Add _udiv_qrnnd16 | |
6014 | * config/sh/sh.c (print_operand): Add !SHMEDIA functionality to 'M'. | |
6015 | * config/sh/lib1funcs.h (SL, SL1): Define. | |
6016 | * config/sh/lib1funcs.asm (__udiv_qrnnd16): New hidden function. | |
6017 | * longlong.h (__sh__): Define umul_ppmm, udiv_qrnnd and sub_ddmmss. | |
6018 | * config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): New rule. | |
6019 | (OBJS_Os_4_200): New variable. | |
6020 | ($(T)libgcc-Os-4-200.a): Use it. | |
6021 | * sh.md (udivsi3): For TARGET_DIVIDE_CALL_TABLE, avoid function call | |
6022 | when dividing 1 and/or by 0. | |
6023 | ||
de4fb767 RS |
6024 | 2006-06-13 Roger Sayle <roger@eyesopen.com> |
6025 | ||
6026 | * configure.ac (HAS_MCONTEXT_T_UNDERSCORES): Include <sys/signal.h> | |
6027 | before <ucontext.h> to define sigset_t required by <sys/ucontext.h>. | |
6028 | * configure: Regenerate. | |
6029 | ||
f0f1c408 JZ |
6030 | 2006-06-13 Jie Zhang <jie.zhang@analog.com> |
6031 | ||
6032 | * config/bfin/bfin.c (bfin_reorg_loops): Only call recog_memoized () | |
6033 | for real instruction. | |
6034 | ||
cd8d4e24 MK |
6035 | 2006-06-13 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6036 | ||
6037 | PR middle-end/26807 | |
6038 | * haifa-sched.c (check_cfg): Handle special case. | |
6039 | ||
5123ad09 EB |
6040 | 2006-06-13 Eric Botcazou <ebotcazou@adacore.com> |
6041 | ||
6042 | PR debug/26754 | |
6043 | * gimplify.c (declare_tmp_vars): Rename into declare_vars. | |
6044 | Add debug_info parameter. Chain the vars to the BLOCK instead | |
6045 | of the BIND_EXPR if debug info are requested for them. | |
6046 | (pop_gimplify_context): Adjust for above change. | |
6047 | (gimple_add_tmp_var): Likewise. | |
6048 | * tree-gimple.h (declare_tmp_vars): Rename into declare_vars. | |
6049 | Add bool parameter. | |
6050 | * tree-nested.c (convert_nonlocal_reference): Adjust for above change. | |
6051 | (convert_local_reference): Likewise. | |
6052 | (get_local_debug_decl): Set DECL_IGNORED_P on the original variable. | |
6053 | (finalize_nesting_tree_1): Request that debug info be emitted | |
6054 | for debug_var_chain. | |
6055 | ||
6f2ba390 MK |
6056 | 2006-06-13 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6057 | ||
6058 | * haifa-sched.c (unlink_other_notes, unlink_line_notes): Fix the patch | |
6059 | for PR target/27863. | |
6060 | ||
cda5bf39 RG |
6061 | 2006-06-13 Richard Guenther <rguenther@suse.de> |
6062 | ||
6063 | PR middle-end/27536 | |
6064 | * except.c (output_ttype): Expand type with EXPAND_INITIALIZER. | |
6065 | ||
8e85fd14 RG |
6066 | 2006-06-13 Richard Guenther <rguenther@suse.de> |
6067 | ||
6068 | PR tree-optimization/27830 | |
6069 | * tree-inline.c (copy_body_r): For copying the operand | |
6070 | of an ADDR_EXPR make sure to fold &* afterwards. | |
6071 | ||
02a5eac4 EB |
6072 | 2006-06-12 Eric Botcazou <ebotcazou@adacore.com> |
6073 | ||
6074 | * gimplify.c (gimplify_expr): Treat VIEW_CONVERT_EXPR like other | |
6075 | lvalues in the fb_none case with side-effects. | |
6076 | ||
c90b053b KH |
6077 | 2006-06-12 Kazu Hirata <kazu@codesourcery.com> |
6078 | ||
6079 | * tree-flow.h: Remove the prototype for | |
6080 | compute_phi_arg_on_exit. | |
6081 | * tree-ssa-loop-ivopts.c (protect_loop_closed_ssa_form_use, | |
6082 | protect_loop_closed_ssa_form, compute_phi_arg_on_exit): | |
6083 | Remove. | |
6084 | ||
dda69cbf MS |
6085 | 2006-06-12 Mark Shinwell <shinwell@codesourcery.com> |
6086 | ||
6087 | * builtins.c (expand_builtin_return_addr): Only use | |
6088 | frame_pointer_rtx when count == 0 and we are expanding | |
6089 | __builtin_return_address. | |
6090 | ||
0901c5a3 FF |
6091 | 2006-06-12 Fred Fish <fnf@specifix.com> |
6092 | ||
6093 | * config/mips/mips.c (mips_file_start): Create special section | |
6094 | ".gcc_compiled_longXX" for o64 ABI as well as EABI. | |
6095 | ||
f7eb0dcd EC |
6096 | 2006-06-11 Eric Christopher <echristo@apple.com> |
6097 | ||
6098 | PR middle-end/27948 | |
6099 | * stor-layout.c (place_field): Remove check for | |
6100 | remaining_in_alignment when aligning at the end of a run. | |
6101 | ||
6bb7beac EC |
6102 | 2006-06-11 Eric Christopher <echristo@apple.com> |
6103 | ||
6104 | PR 27542 | |
6105 | * doc/extend.texi (Structure-Packing Pragmas): Document ms_struct | |
6106 | pragma. | |
6107 | ||
4119019b RS |
6108 | 2006-06-11 Roger Sayle <roger@eyesopen.com> |
6109 | ||
6110 | PR target/27858 | |
6111 | Revert incorrect fix for PR target/27158 | |
6112 | 2006-05-08 Roger Sayle <roger@eyesopen.com> | |
6113 | * reload.c (find_reloads_toplev): Only return the simplified SUBREG | |
6114 | of a reg_equiv_constant if the result is a legitimate constant. | |
6115 | ||
0972012c RS |
6116 | 2006-06-11 Roger Sayle <roger@eyesopen.com> |
6117 | ||
6118 | PR target/27158 | |
6119 | * config/rs6000/rs6000.c (const_vector_elt_as_int): New function to | |
6120 | extract a CONST_VECTOR element and interpret it as an integer. | |
6121 | (vspltis_constant): Use const_vector_elt_as_int instead of the | |
6122 | macro CONST_VECTOR_ELT in order to handle FP vector modes. | |
6123 | * config/rs6000/predicates.md (easy_vector_const): Consider | |
6124 | floating point ALTIVEC_VECTOR_MODEs via easy_altivec_constant. | |
6125 | ||
cb312376 KK |
6126 | 2006-06-11 Kaz Kojima <kkojima@gcc.gnu.org> |
6127 | ||
6128 | PR middle-end/27942 | |
6129 | * stor-layout.c (update_alignment_for_field): Don't add extra | |
6130 | alignment for packed non-bitfield fields in ms_bitfield_layout_p | |
6131 | code. | |
6132 | ||
53e95921 RC |
6133 | 2006-06-09 Ralf Corsepius <ralf.corsepius@rtems.org> |
6134 | ||
6135 | * config/mips/t-rtems: Add EL/EB multilib variants. | |
6136 | ||
71d0c100 MS |
6137 | 2006-06-09 Mike Stump <mrs@apple.com> |
6138 | ||
6139 | * c-typeck.c (c_begin_vm_scope): Fix file_scope processing. | |
6140 | ||
549fb079 DD |
6141 | 2006-06-09 David Daney <ddaney@avtrex.com> |
6142 | ||
6143 | * doc/install.texi: Add binutils version recommendation for mips-*-*. | |
6144 | ||
6c65d757 AK |
6145 | 2006-06-09 Andreas Krebbel <krebbel1@de.ibm.com> |
6146 | ||
6147 | * reload.c (find_reloads): Unset force_reload for 'X' constraint. | |
6148 | ||
96b2034b RG |
6149 | 2006-06-09 Richard Guenther <rguenther@suse.de> |
6150 | ||
6151 | PR tree-optimization/26998 | |
6152 | * tree-vrp.c (extract_range_from_unary_expr): For NEGATE_EXPR | |
6153 | of signed types, only TYPE_MIN_VALUE is special, but for both, | |
6154 | minimum and maximum value. Likewise VR_ANTI_RANGE is special | |
6155 | in this case, as is -fwrapv. | |
6156 | ||
23f99493 MS |
6157 | 2006-06-08 Mike Stump <mrs@apple.com> |
6158 | ||
6159 | PR target/26427 | |
6160 | * config/darwin.c (darwin_asm_output_anchor): Disable | |
6161 | -fsection-anchors on darwin for now. | |
6162 | * config/darwin.h (TARGET_ASM_OUTPUT_ANCHOR): Likewise. | |
6163 | * rs6000/rs6000.c (optimization_options): Likewise. | |
6164 | ||
118ed72a VR |
6165 | 2006-06-08 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
6166 | ||
6167 | PR target/27421 | |
6168 | * config/i386/i386.c (classify_argument): Skip fields with invalid | |
6169 | types in unions. | |
6170 | ||
524e3576 SB |
6171 | 2006-06-08 Steven Bosscher <steven@gcc.gnu.org> |
6172 | ||
6173 | * cse.c (flush_hash_table): Use VOIDmode to invalidate a REG. | |
6174 | (cse_insn): Likewise for the stack_pointer_rtx. | |
6175 | ||
14b41b5f RS |
6176 | 2006-06-08 Roger Sayle <roger@eyesopen.com> |
6177 | ||
6178 | * tree-ssa-dom.c (record_conditions): Only record "unordered" | |
6179 | conditions from floating point comparisons. | |
6180 | ||
33b881ca PB |
6181 | 2006-06-08 Paolo Bonzini <bonzini@gnu.org> |
6182 | ||
6183 | PR middle-end/27733 | |
6184 | * expmed.c (struct alg_hash_entry): Fix type of field T | |
6185 | to match synth_mult argument. | |
6186 | (NUM_ALG_HASH_ENTRIES): Make it bigger for 64-bit HOST_WIDE_INT. | |
6187 | ||
f70b22c9 MK |
6188 | 2006-06-08 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6189 | ||
6190 | PR target/27863 | |
6191 | * haifa-sched.c (unlink_other_notes, unlink_line_notes): Update basic | |
6192 | block boundaries. | |
6193 | ||
960f80d1 RG |
6194 | 2006-06-08 Richard Guenther <rguenther@suse.de> |
6195 | ||
6196 | PR middle-end/27116 | |
6197 | * fold-const.c (negate_expr_p): We can negate BIT_NOT_EXPR | |
6198 | only, if overflow is defined and not trapping. | |
6199 | (negate_expr): Likewise. | |
6200 | ||
8e08deeb ZD |
6201 | 2006-06-07 Zdenek Dvorak <dvorakz@suse.cz> |
6202 | ||
6203 | PR tree-optimization/27872 | |
6204 | * tree-ssa-loop-manip.c (tree_unroll_loop): Set EDGE_IRREDUCIBLE_LOOP | |
6205 | flag on the new exit edge of the unrolled loop. | |
6206 | ||
136778e9 ZD |
6207 | 2006-06-07 Zdenek Dvorak <dvorakz@suse.cz> |
6208 | ||
6209 | PR rtl-optimization/26449 | |
6210 | * loop-invariant.c (move_invariant_reg): Fail if force_operand fails. | |
6211 | ||
4b5e2dbc AM |
6212 | 2006-06-07 Andrew MacLeod <amacleod@redhat.com> |
6213 | ||
6214 | PR middle-end/27793 | |
6bb7beac | 6215 | * tree-dfa.c (referenced_vars_dup_list): New. List of duplicate |
4b5e2dbc AM |
6216 | referenced_variables with matching DECL_UID's. |
6217 | (find_referenced_vars): Make sure duplicate list is empty to start. | |
6218 | (referenced_var_p): Remove. | |
6bb7beac | 6219 | (referenced_var_check_and_insert): Renamed from referenced_var_insert. |
4b5e2dbc AM |
6220 | Check if var is in the list, and add if needed. Update the duplicate |
6221 | list if a different var is in the list with the same DECL_UID. | |
6222 | (add_referenced_var): Call routine to check and insert. | |
6223 | * tree-ssa.c (delete_tree_ssa): Clear var_ann's on duplicates. | |
6224 | * tree-flow.h (referenced_vars_dup_list): External declaration. | |
6225 | ||
dd286892 FF |
6226 | 2006-06-07 Fred Fish <fnf@specifix.com> |
6227 | ||
6228 | * config/mips/t-elf (MULTILIB_MATCHES): Combine two entries | |
6229 | into single entry. | |
6230 | ||
190e9534 PB |
6231 | 2006-06-07 Paolo Bonzini <bonzini@gnu.org> |
6232 | ||
6233 | PR target/27390 | |
6234 | * reg-stack.c (subst_stack_regs_pat): Reorder resetting of | |
6235 | the imaginary and real parts of a clobbered register. | |
6236 | Emit insn to set the imaginary part. | |
6237 | ||
7c78582a PL |
6238 | 2006-06-06 Peter Lemieszewski <lemie@us.ibm.com> |
6239 | ||
6240 | * config/s390/t-tpf (LIB2ADDEH): Include unwind-dw2-fde-glibc.c | |
6241 | in lieu of unwind-dw2-fde.c. | |
6242 | ||
33815e0c FXC |
6243 | 2006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
6244 | ||
6245 | * config/i386/mingw32.h (GOMP_SELF_SPECS): Define. | |
6246 | ||
8cf0db2b UW |
6247 | 2006-06-06 Ulrich Weigand <uweigand@de.ibm.com> |
6248 | ||
6249 | PR target/27842 | |
6250 | * config/rs6000/altivec.md (UNSPEC_VSLW): Remove. | |
6251 | ("altivec_vspltisw_v4sf", "altivec_vslw_v4sf"): Remove. | |
6252 | ("mulv4sf3", "absv4sf3", "negv4sf3"): Adapt users to use | |
6253 | V4SImode temporaries and operations instead. | |
6254 | ||
406af897 JM |
6255 | 2006-06-06 Joseph S. Myers <joseph@codesourcery.com> |
6256 | ||
6257 | * config/mips/t-linux64 (tp-bit.c): Append to tp-bit.c, not | |
6258 | dp-bit.c. | |
6259 | ||
22482f74 MS |
6260 | 2006-06-06 Mike Stump <mrs@apple.com> |
6261 | ||
6262 | * Makefile.in: Rename to htmldir to build_htmldir to avoid | |
6263 | installing during build. | |
6264 | ||
bb83aa4b MK |
6265 | 2006-06-06 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6266 | ||
6267 | * params.def (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS): Change default | |
6268 | value to 0. | |
6269 | * doc/invoke.texi (max-sched-extend-regions-iters): Document. | |
6270 | * config/ia64/ia64.c (params.h): New header. | |
6271 | (ia64_optimization_options): New function to adjust parameters. | |
6272 | * config/ia64/ia64-protos.h (ia64_optimization_options): New prototype. | |
6273 | * config/ia64/ia64.h (OPTIMIZATION_OPTIONS): New macro. | |
6274 | * config/ia64/t-ia64 (ia64.o): Add dependence from params.h . | |
6275 | ||
0c397f9c KH |
6276 | 2006-06-05 Kazu Hirata <kazu@codesourcery.com> |
6277 | ||
6278 | * stor-layout.c (debug_rli): Fix a typo in a debug message. | |
6279 | ||
1f4a2e84 SE |
6280 | 2006-06-05 Steve Ellcey <sje@cup.hp.com> |
6281 | ||
6282 | PR target/27051 | |
6283 | * config/ia64/ia64.c (ia64_select_rtx_section): Check TARGET_NO_SDATA. | |
6284 | ||
a8b28492 DN |
6285 | 2006-06-05 Dorit Nuzman <dorit@il.ibm.com> |
6286 | Victor Kaplansky <victork@il.ibm.com> | |
6287 | ||
e753d130 AP |
6288 | PR tree-optimization/26360 |
6289 | * tree-vectorizer.c (destroy_loop_vec_info): Remove (dead) pattern | |
6290 | stmts. | |
a8b28492 | 6291 | |
ffbf5f7f RS |
6292 | 2006-06-04 Roger Sayle <roger@eyesopen.com> |
6293 | Andrew Pinski <pinskia@physics.uc.edu> | |
6294 | ||
6295 | PR middle-end/27382 | |
6296 | * c-common.c (c_common_truthvalue_conversion): Explicitly check | |
6297 | for LABEL_DECL before calling DECL_WEAK. | |
6298 | ||
6299 | PR c/27150 | |
6300 | * c-typeck.c (build_binary_op): Likewise, explicitly check for | |
6301 | LABEL_DECL and PARM_DECL. | |
6302 | ||
5c076987 JM |
6303 | 2006-06-05 Joseph S. Myers <joseph@codesourcery.com> |
6304 | ||
6305 | PR c/25161 | |
6306 | PR c/27020 | |
6307 | * c-decl.c (grokdeclarator): Disallow variably modified types at | |
6308 | file scope. Avoid marking shared array type of constant size as | |
6309 | VLA. | |
6310 | ||
545b7d8c VR |
6311 | 2006-06-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
6312 | ||
6313 | PR c++/27601 | |
6314 | * c-common.c (fold_offsetof_1): Handle static members. | |
6315 | ||
0ac11108 EC |
6316 | 2006-06-04 Eric Christopher <echristo@apple.com> |
6317 | ||
6318 | * stor-layout.c (start_record_layout): Initialize remaining_in_alignment. | |
6319 | (debug_rli): Output value for remaining_in_alignment. | |
6320 | (update_alignment_for_field): Unconditionalize | |
6321 | ms_bitfield_layout_p code. Handle non-bitfield fields. Remove | |
6322 | extra alignment code. | |
6323 | (place_field): Don't realign if ms_bitfield_layout_p. Unconditionalize | |
6324 | ms_bitfield_layout_p code. Rewrite handling of structure fields. | |
6325 | * tree.h (record_layout_info_s): Remove prev_packed. | |
6326 | * doc/extend.texi (ms_struct): Add documentation of format. | |
6327 | ||
63b48197 MS |
6328 | 2006-06-04 Mark Shinwell <shinwell@codesourcery.com> |
6329 | ||
6330 | * tree.h: Declare folding_initializer. | |
6331 | * builtins.c (fold_builtin_constant_p): Give definite answer | |
6332 | if folding inside an initializer. | |
6333 | * fold-const.c: Define folding_initializer. | |
6334 | (START_FOLD_INIT): Save and then set folding_initializer. | |
6335 | (END_FOLD_INIT): Restore folding_initializer. | |
6336 | ||
7ec434b8 RG |
6337 | 2006-06-04 Richard Guenther <rguenther@suse.de> |
6338 | ||
6339 | PR tree-optimization/27039 | |
6340 | * fold-const.c (fold_comparison): Handle pointer comparison | |
6341 | again for all comparison codes. Compare offsets in signed | |
6342 | size type. | |
6343 | (fold_binary): Move code from here. | |
6344 | ||
94e76332 RS |
6345 | 2006-06-03 Roger Sayle <roger@eyesopen.com> |
6346 | ||
6347 | PR target/26223 | |
6348 | * config/i386/i386.c (construct_container): Split static issued_error | |
6349 | flag into issued_sse_arg_error, issued_sse_ret_error and | |
6350 | issued_x87_ret_error. Issue a daignostic if the x86-64 ABI | |
6351 | requires the use of x87 registers and the user explicitly | |
6352 | specified the -mno-80387 command line option. | |
6353 | ||
4f6d8cc8 GK |
6354 | 2006-06-02 Geoffrey Keating <geoffk@apple.com> |
6355 | ||
6356 | * config/rs6000/host-darwin.c (sigaltstack): Protect prototype with | |
6357 | HAVE_DECL_SIGALTSTACK. | |
6358 | (MC_FLD): New. | |
6359 | (segv_handler): Use MC_FLD. | |
6360 | * configure.ac: Check for a sigaltstack declaration. | |
6361 | Compute HAS_MCONTEXT_T_UNDERSCORES on Darwin. | |
6362 | * configure: Regenerate. | |
6363 | * config.in: Regenerate. | |
6364 | ||
af33a0c0 R |
6365 | 2006-06-03 J"orn Rennecke <joern.rennecke@st.com> |
6366 | ||
6367 | PR other/27850 | |
6368 | * Makefile.in (stmp-fixinc): Fix typo. | |
6369 | ||
9734ebaf RS |
6370 | 2006-06-02 Roger Sayle <roger@eyesopen.com> |
6371 | ||
6372 | * fold-const.c (fold_unary) <CONJ_EXPR>: Ensure folded expressions | |
6373 | are type correct. Clean-up. | |
6374 | <REALPART_EXPR>: Likewise. Optimize creal(~z) as creal(z). | |
6375 | <IMAGPART_EXPR>: Likewise. Optimize cimag(~z) as -cimag(z). | |
6376 | ||
df5c71ac DD |
6377 | 2006-06-01 DJ Delorie <dj@redhat.com> |
6378 | ||
6379 | * config/v850/v850.h (ASM_OUTPUT_ADDR_DIFF_ELT): Disabled the | |
6380 | shift, as we've disabled the "switch" insn that needs it. | |
6381 | ||
112598f4 PB |
6382 | 2006-06-01 Per Bothner <bothner@bothner.com> |
6383 | ||
6384 | Suppress extra '#1 <built-in> or '#1 <command line>' on -dD output. | |
6385 | * c-opts.c (finish_options): Use internal line 0 for <command-line>. | |
6386 | * c-ppoutput.c (cb_define): Don't increment line 0. | |
6387 | ||
e118597e PS |
6388 | 2006-06-01 Pete Steinmetz <steinmtz@us.ibm.com> |
6389 | ||
6390 | * doc/invoke.texi: Add cpu_type power6. | |
6391 | * config.gcc: Add cpu_type power6. | |
6392 | * config/rs6000/rs6000.c (rs6000_override_options): Alias power6 | |
6393 | to power5+ with Altivec. | |
6394 | * config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6. | |
6395 | * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add power6. | |
6396 | ||
d3f27077 AS |
6397 | 2006-05-30 Anatoly Sokolov <aesok@post.ru> |
6398 | ||
6399 | * config/avr/avr.h (SET_ASM_OP): Define. | |
6400 | ||
aab26080 KH |
6401 | 2006-06-01 Kazu Hirata <kazu@codesourcery.com> |
6402 | ||
6403 | * config/bfin/bfin.c: Fix comment typos. | |
6404 | ||
f5c3bb4b PB |
6405 | 2006-06-01 Paolo Bonzini <bonzini@gnu.org> |
6406 | ||
6407 | PR 25453 | |
6408 | * doc/install.texi: Document --enable-bootstrap and | |
6409 | --disable-bootstrap. | |
6410 | ||
02809848 PB |
6411 | 2006-06-01 Paolo Bonzini <bonzini@gnu.org> |
6412 | ||
6413 | * doc/install.texi: Document that InfoZIP can replace jar. | |
6414 | ||
86ce1825 RS |
6415 | 2006-05-31 Roger Sayle <roger@eyesopen.com> |
6416 | ||
6417 | * config/i386/i386.c (ix86_expand_fp_absneg_operator): When SSE | |
6418 | isn't available, directly generate the simpler x87 patterns without | |
6419 | the (use (const_int 0)). | |
6420 | * config/i386/i386.md (*negsf2_1): Enable pre-reload if the SSE | |
6421 | implementation isn't available. | |
6422 | (*negdf2_1): Likewise. | |
6423 | (*negxf2_1): XF mode negation is always done using the x87. | |
6424 | (*abssf2_1, *absdf2_1, *absxf2_1): Likewise^3 for fabs. | |
6425 | ||
4f31c7ec RS |
6426 | 2006-05-31 Roger Sayle <roger@eyesopen.com> |
6427 | ||
6428 | * builtins.c (fold_builtin_cabs): Delete prototype. Require an | |
6429 | additional FNDECL argument. Optimize cabs(-z) and cabs(~z) as | |
6430 | cabs(z). | |
6431 | (fold_builtin_decl) <BUILT_IN_CABS>: Update fold_builtin_cabs call. | |
6432 | ||
b03149e1 JZ |
6433 | 2006-05-31 Jie Zhang <jie.zhang@analog.com> |
6434 | ||
6435 | * config/bfin/bfin-protos.h (bfin_hardware_loop): Declare. | |
6436 | * config/bfin/bfin.c (basic-block.h): Include. | |
6437 | (struct machine_function): New. | |
6438 | (bfin_init_machine_status): New. | |
6439 | (override_options): Initialize init_machine_status. | |
6440 | (bfin_hardware_loop): New. | |
6441 | (MAX_LOOP_DEPTH, MAX_LOOP_LENGTH): Define. | |
6442 | (DEF_VEC_P (loop_info)): New. | |
6443 | (DEF_VEC_ALLOC_P (loop_info,heap)): New. | |
6444 | (struct loop_info): New. | |
6445 | (loop_info): New typedef. | |
6446 | (struct loop_work): New. | |
6447 | (loop_work): New typedef. | |
6448 | (DEF_VEC_O (loop_work)): New. | |
6449 | (DEF_VEC_ALLOC_O (loop_work,heap)): New. | |
6450 | (bfin_dump_loops): New. | |
6451 | (bfin_bb_in_loop): New. | |
6452 | (bfin_scan_loop): New. | |
6453 | (bfin_optimize_loop): New. | |
6454 | (bfin_reorg_loops): New. | |
6455 | (bfin_reorg): Use bfin_reorg_loops. | |
6456 | * config/bfin/bfin.h (FIRST_PSEUDO_REGISTER): Adjust for adding | |
6457 | loop registers. | |
6458 | (I_REGNO_P): Simplify. | |
6459 | (DP_REGNO_P, DPREG_P): New macros. | |
6460 | (REGISTER_NAMES, FIXED_REGISTERS, CALL_USED_REGISTERS, | |
6461 | REG_ALLOC_ORDER): Add LT0, LT1, LC0, LC1, LB0, LB1. | |
6462 | (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): | |
6463 | Add LT_REGS, LC_REGS, LB_REGS. | |
6464 | (REG_CLASS_FROM_LETTER): Add 't' for LT_REGS, 'k' for LC_REGS, | |
6465 | 'l' for LB_REGS. | |
6466 | (REGNO_REG_CLASS): Deal with loop registers. | |
6467 | * config/bfin/bfin.md: Add comment for 't', 'k', 'l' constraint | |
6468 | letters. | |
6469 | (REG_LT0, REG_LT1, REG_LC0, REG_LC1, REG_LB0, REG_LB1): | |
6470 | New constants for loop registers. | |
6471 | (UNSPEC_LSETUP_END): New. | |
6472 | (seq_insns): New define_attr. Set it for appropriate insns. | |
6473 | (movsi_insn): Add alternatives for move from/to | |
6474 | loop count registers. | |
6475 | (doloop_end): New define_expand. | |
6476 | (loop_end): New define_insn. | |
6477 | (define_split for bad doloop_end): New. | |
6478 | (lsetup_with_autoinit): New define_insn. | |
6479 | (lsetup_without_autoinit): New define_insn. | |
6480 | (rep_movsi, rep_movhi): Clobber LT1, LC1, LB1. | |
6481 | * config/bfin/predicates.md (lc_register_operand): New. | |
6482 | (lt_register_operand): New. | |
6483 | (lb_register_operand): New. | |
6484 | (nondp_register_operand): New. | |
6485 | (nondp_reg_or_memory_operand): New. | |
6486 | * doc/md.texi: Document Blackfin new 't', 'k', 'l' constraint letters. | |
6487 | ||
54aefc36 JZ |
6488 | 2006-05-31 Jie Zhang <jie.zhang@analog.com> |
6489 | ||
6490 | * config/bfin/bfin.c (bfin_delegitimize_address): New. | |
6491 | (TARGET_DELEGITIMIZE_ADDRESS): Define. | |
6492 | ||
5c3c3683 DJ |
6493 | 2006-05-31 Daniel Jacobowitz <dan@codesourcery.com> |
6494 | ||
6495 | * Makefile.in (CATALOGS): Add po/ prefix. | |
6496 | * configure: Regenerated. | |
6497 | ||
beed32b8 RE |
6498 | 2006-05-31 Richard Earnshaw <richard.earnshaw@arm.com> |
6499 | ||
4fe56d83 | 6500 | PR target/27829 |
beed32b8 RE |
6501 | * arm.c (arm_print_operand case 'S'): Validate that the operand is |
6502 | a shift operand before calling shift_op. Avoid redundant call of | |
6503 | shift_op. | |
6504 | ||
9cb96754 N |
6505 | 2006-05-30 Naveen.H.S <naveenh@kpitcummins.com> |
6506 | DJ Delorie <dj@redhat.com> | |
6507 | ||
6508 | * config/m32c/m32c.c (m32c_expand_insv): Check that the value | |
6509 | we're inserting is a singlt-bit constant. | |
6510 | ||
e40122f0 RS |
6511 | 2006-05-30 Roger Sayle <roger@eyesopen.com> |
6512 | ||
6513 | * simplify-rtx.c (simplify_binary_operation_1) <LSHIFTRT>: Cast | |
6514 | width to HOST_WIDE_INT to avoid comparison warnings on some targets. | |
6515 | ||
99b25753 RS |
6516 | 2006-05-30 Roger Sayle <roger@eyesopen.com> |
6517 | ||
6518 | PR tree-optimization/23452 | |
6519 | * fold-const.c (fold_mult_zconjz): New subroutine of fold_binary, | |
6520 | to optimize z * conj(z) as realpart(z)^2 + imagpart(z)^2. | |
6521 | (fold_binary) <MULT_EXPR>: Call fold_mult_zconjz for integral | |
6522 | complex values and with -ffast-math for FP complex values. | |
6523 | ||
c98662e0 KH |
6524 | 2006-05-30 Kazu Hirata <kazu@codesourcery.com> |
6525 | ||
6526 | * c-common.h: Remove the prototype for yyparse. | |
6527 | * rtl.h: Remove the prototype for init_loop. | |
6528 | ||
67e0a632 AK |
6529 | 2006-05-30 Andreas Krebbel <krebbel1@de.ibm.com> |
6530 | ||
6531 | * cse.c (validate_canon_reg, cse_insn): Don't change insns without | |
6532 | calling recog. | |
6533 | ||
70233f37 RS |
6534 | 2006-05-30 Roger Sayle <roger@eyesopen.com> |
6535 | ||
6536 | * simplify-rtx.c (simplify_binary_operation): Unfactor the shift | |
6537 | and rotate cases. | |
6538 | <LSHIFTRT>: Optimize (lshiftrt (clz X) C) as (eq X 0) where C is | |
6539 | log2(GET_MODE_BITSIZE(X)) on targets with the appropriate semantics. | |
6540 | ||
d117b270 DM |
6541 | 2006-05-30 Dirk Mueller <dmueller@suse.de> |
6542 | ||
6543 | PR c/27273 | |
6544 | * c-common.c (convert_and_check): Only track TREE_CONSTANT_OVERFLOW | |
6545 | for CONSTANT_CLASS_P expresisons. | |
6546 | ||
16464cc1 VR |
6547 | 2006-05-30 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
6548 | ||
6549 | PR c/27718 | |
6550 | * c-typeck.c (c_expr_sizeof_type): Handle invalid types. | |
6551 | ||
d91d2db7 ZD |
6552 | 2006-05-30 Zdenek Dvorak <dvorakz@suse.cz> |
6553 | ||
6554 | PR tree-optimization/27779 | |
6555 | * tree-data-ref.c (analyze_siv_subscript_cst_affine): Use | |
6556 | initial_condition instead of CHREC_LEFT. | |
6557 | ||
6a728a2d SB |
6558 | 2006-05-30 Steven Bosscher <stevenb.gcc@gmail.com> |
6559 | ||
6560 | * config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Fix type of begin_label. | |
6561 | * config/m32r/initfini.c (__do_global_dtors, __do_global_ctors): | |
6562 | Make prototypes ISO C90. | |
6563 | ||
375bc622 | 6564 | 2006-05-30 Mircea Namolaru <namolaru@il.ibm.com> |
d91d2db7 | 6565 | Leehod Baruch <leehod.baruch@weizmann.ac.il> |
375bc622 | 6566 | |
d91d2db7 ZD |
6567 | * see.c (see_analyze_one_def): Correct check. |
6568 | (see_get_extension_data): Check if extension is parallel. | |
6569 | (see_get_extension_reg): Likewise. | |
375bc622 | 6570 | |
55b2de75 UB |
6571 | 2006-05-30 Uros Bizjak <uros@kss-loka.si> |
6572 | ||
6573 | PR target/27790 | |
6574 | * config/i386/i386.c (ix86_expand_int_vcond): Force cop0 | |
6575 | into register for (code == GTU). | |
6576 | ||
1753331b RS |
6577 | 2006-05-29 Roger Sayle <roger@eyesopen.com> |
6578 | ||
6579 | PR tree-optimization/24964 | |
6580 | * simplify-rtx.c (simplify_binary_operation_1): Add function comment. | |
6581 | <MULT>: Minor clean-up. Don't convert x*-1.0 into -x if we honor | |
6582 | signaling NaNs. Optimize -x*-x as x*x for all float modes, and | |
6583 | abs(x)*abs(x) as x*x for scalar floating point modes. | |
6584 | ||
06ac89d1 SP |
6585 | 2006-05-29 Sebastian Pop <pop@cri.ensmp.fr> |
6586 | ||
6587 | PR middle-end/27745 | |
6588 | * lambda-code.c (perfect_nestify): Don't copy statements | |
6589 | in the inner loop: move them to the inner loop header. | |
6590 | ||
96e36096 DN |
6591 | 2006-05-29 Diego Novillo <dnovillo@redhat.com> |
6592 | ||
6593 | PR 26237 | |
6594 | * c-tree.texi: Document OpenMP directives and clauses. | |
6595 | ||
eb5fa773 KH |
6596 | 2006-05-29 Kazu Hirata <kazu@codesourcery.com> |
6597 | ||
6598 | * varasm.c (globalize_decl): Fix indentation. | |
6599 | ||
a6719dc6 DN |
6600 | 2006-05-29 Diego Novillo <dnovillo@redhat.com> |
6601 | ||
6602 | PR 26242 | |
6603 | * doc/passes.texi: Add documentation for pass_vrp, pass_ipa_pta, | |
6604 | pass_fre, pass_store_ccp, pass_copy_prop, | |
6605 | pass_store_copy_prop, pass_merge_phi, pass_nrv, | |
6606 | pass_return_slot, pass_object_size, pass_lim, | |
6607 | pass_linear_transform, pass_empty_loop, pass_complete_unroll, | |
6608 | pass_loop_prefetch and pass_stdarg. | |
6609 | ||
6614f9f5 BS |
6610 | 2005-05-29 Bernd Schmidt <bernd.schmidt@analog.com> |
6611 | ||
6612 | * config/bfin/bfin.opt (mfdpic): New option. | |
6613 | * config/bfin/t-bfin-elf (EXTRA_PARTS): Add crtbeginS.o and crtendS.o. | |
6614 | (EXTRA_MULTILIB_PARTS): Likewise. | |
6615 | (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Use -fpic. | |
6616 | (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS): Build one extra -mfdpic | |
6617 | multilib. | |
6618 | * config/bfin/elf.h (STARTFILE_SPEC): Don't link in crt0.o if -shared. | |
6619 | (CRT_CALL_STATIC_FUNCTION): New. | |
6620 | * config/bfin/uclinux.h (STARTFILE_SPEC): Don't link in crt0.o if | |
6621 | -shared. | |
6622 | (CRT_CALL_STATIC_FUNCTION): New. | |
6623 | * config/bfin/bfin.c (legitimize_pic_address): Now static. Handle | |
6624 | FD-PIC moves. | |
6625 | (n_pregs_to_save): PIC register doesn't need to be saved with FD-PIC. | |
6626 | (print_operand): Handle UNSPEC_MOVE_FDPIC and UNSPEC_FUNCDESC_GOT17M4. | |
6627 | (initialize_trampoline): Changed to handle FD-PIC code generation. | |
6628 | (expand_move): If TARGET_FDPIC, use emit_pic_move as needed. | |
6629 | (bfin_expand_call): Generate FD-PIC calls if TARGET_FDPIC. | |
6630 | (override_options): Disallow -mid-shared-library -mfdpic combination. | |
6631 | Can't do unaligned ops if FD-PIC. | |
6632 | Turn off flag_pic if trying to generate non-id-shared-library | |
6633 | non-fdpic code, since it's not supported. | |
6634 | (bfin_assemble_integer): New function. | |
6635 | (TARGET_ASM_INTEGER): Define. | |
6636 | * config/bfin/crti.s (__init, __fini): Save P3 on the stack if | |
6637 | __BFIN_FDPIC__. | |
6638 | * config/bfin/crtn.s: Restore them. | |
6639 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __BFIN_FDPIC__ | |
6640 | if TARGET_FDPIC. | |
6641 | (DRIVER_SELF_SPECS, SUBTARGET_DRIVER_SELF_SPECS, | |
6642 | LINK_GCC_C_SEQUENCE_SPEC, ASM_SPEC, LINK_SPEC): New macros. | |
6643 | (FDPIC_FPTR_REGNO, FDPIC_REGNO, OUR_FDPIC_REG): New macros. | |
6644 | (TRAMPOLINE_SIZE, TRAMPOLINE_TEMPLATE): Adjust for FD-PIC. | |
6645 | (CONDITIONAL_REGISTER_USAGE): If TARGET_FDPIC, FDPIC_REGNO is | |
6646 | call-used. | |
6647 | (enum reg_class, REG_CLASS_CONTENTS, REG_CLASS_NAMES): Add | |
6648 | FDPIC_REGS and FDPIC_FPTR_REGS. | |
6649 | (REG_CLASS_FROM_LETTER): Use 'Z' and 'Y' for them. | |
6650 | * config/bfin/bfin.md (UNSPEC_MOVE_FDPIC, UNSPEC_FUNCDESC_GOT17M4, | |
6651 | UNSPEC_VOLATILE_LOAD_FUNCDESC): New constants. | |
6652 | (load_funcdescsi): New pattern. | |
6653 | (call_symbol_fdpic, sibcall_symbol_fdpic, call_value_symbol_fdpic, | |
6654 | sibcall_value_symbol_fdpic, call_insn_fdpic, sibcall_insn_fdpic, | |
6655 | call_value_insn_fdpic, sibcall_value_insn_fdpic): New patterns. | |
6656 | ||
db3edc20 KH |
6657 | 2006-05-29 Kazu Hirata <kazu@codesourcery.com> |
6658 | ||
6659 | * gcse.c, rtlanal.c: Remove obsolete comments associated with | |
6660 | loop.c. | |
6661 | ||
a9488625 KH |
6662 | * config/bfin/bfin.h (PARM_BOUNDRY, STACK_BOUNDRY): Remove. |
6663 | ||
152279c4 KH |
6664 | * tree-flow.h: Remove the prototype for add_type_alias. |
6665 | * tree-ssa-alias.c (add_type_alias): Remove. | |
6666 | ||
6fc0bb99 KH |
6667 | 2006-05-28 Kazu Hirata <kazu@codesourcery.com> |
6668 | ||
6669 | * cfgcleanup.c, cfgexpand.c, cgraphunit.c, config/arm/arm.c, | |
6670 | config/fr30/fr30.md, config/i386/i386-interix.h, | |
6671 | config/i386/i386.c, config/i386/i386.md, config/sh/superh.h, | |
6672 | config/sh/superh64.h, config/v850/v850.c, df-core.c, | |
6673 | df-problems.c, df.h, except.c, final.c, haifa-sched.c, | |
6674 | lambda-code.c, libgcc2.h, omp-low.c, optabs.c, predict.c, | |
6675 | reload.c, tree-flow.h, tree-outof-ssa.c, tree-ssa-dce.c, | |
6676 | tree-ssa-pre.c, tree-vect-transform.c: Fix comment typos. | |
6677 | Follow spelling conventions. | |
6678 | * doc/invoke.texi, doc/rtl.texi, doc/tm.texi: Fix typos. | |
6679 | Follow spelling conventions. | |
6680 | ||
9e030af9 RG |
6681 | 2006-05-27 Richard Guenther <rguenther@suse.de> |
6682 | ||
6683 | PR middle-end/27773 | |
6684 | * fold-const.c (fold_plusminus_mult_expr): Use fold_convert | |
6685 | to produce a constant of value 1 of generic type. | |
6686 | ||
46f5f7f2 DM |
6687 | 2006-05-27 Dirk Mueller <dmueller@suse.de> |
6688 | ||
6689 | * cgraphunit.c (decide_is_function_needed): Fix wrong | |
6690 | PR reference. | |
6691 | ||
7c7ce73a UW |
6692 | 2006-05-26 Ulrich Weigand <uweigand@de.ibm.com> |
6693 | ||
6694 | PR rtl-optimization/27661 | |
6695 | * reload.c (find_reloads): When reloading a VOIDmode constant | |
6696 | as address due to an EXTRA_MEMORY_CONSTRAINT or 'o' constraint, | |
6697 | use Pmode as mode of the reload register. | |
6698 | ||
c539d463 EB |
6699 | 2006-05-26 Eric Botcazou <ebotcazou@adacore.com> |
6700 | ||
6701 | * doc/invoke.texi (Optimize Options): Document that -funit-at-a-time | |
6702 | is enabled at -O and above. | |
6703 | ||
6704 | 2006-05-26 Steven Bosscher <steven@gcc.gnu.org> | |
807bdfb6 FH |
6705 | |
6706 | PR target/27571 | |
6707 | * config/alpha/alpha.c (alpha_does_function_need_gp): Skip jump | |
6708 | table data. | |
6709 | ||
e92fb501 MM |
6710 | 2006-05-25 Mark Mitchell <mark@codesourcery.com> |
6711 | ||
6712 | PR c++/20103 | |
6713 | * gimplify.c (gimplify_decl_expr): Do not call gimple_add_tmp_var | |
0ac11108 | 6714 | for anonymous variables explicitly declared by front ends. |
e92fb501 | 6715 | |
05a58ad4 EB |
6716 | 2006-05-25 Eric Botcazou <ebotcazou@adacore.com> |
6717 | ||
6718 | * tree-ssa-structalias.h (PTR_IS_REF_ALL): New macro. | |
6719 | (struct alias_info): Add new field ref_all_symbol_mem_tag. | |
6720 | * tree-ssa-alias.c (compute_may_aliases): If the program contains | |
6721 | ref-all pointers, run a finalization pass for them. | |
6722 | (compute_flow_insensitive_aliasing): Skip ref-all pointers. | |
6723 | (finalize_ref_all_pointers): New function. | |
6724 | (is_escape_site): Return ESCAPE_BAD_CAST for conversion from a | |
6725 | regular pointer type to a ref-all pointer type. | |
6726 | (get_tmt_for): Return the special memory tag for ref-all pointers. | |
6727 | ||
2d60e929 RG |
6728 | 2006-05-25 Richard Guenther <rguenther@suse.de> |
6729 | ||
6730 | PR middle-end/27743 | |
6731 | * fold-const.c (fold_binary): Do not look at the stripped | |
6732 | op0 for (a OP c1) OP c2 to a OP (c1+c2) shift optimization. | |
6733 | ||
9d6eefd5 EB |
6734 | 2006-05-25 Eric Botcazou <ebotcazou@adacore.com> |
6735 | ||
6736 | * tree-vrp.c (extract_range_from_assert): Set the range to VARYING | |
6737 | for LT and GT if the computed range is effectively empty. | |
6738 | ||
6739 | 2006-05-24 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | |
5877ca2e JDA |
6740 | |
6741 | PR target/27627 | |
6742 | * pa/pa-modes.def: Use mips_single_format, mips_double_format and | |
6743 | mips_quad_format formats instead of ieee_single_format, | |
6744 | ieee_double_format and ieee_quad_format formats, respectively. | |
6745 | ||
d7f5de76 ZD |
6746 | 2006-05-24 Zdenek Dvorak <dvorakz@suse.cz> |
6747 | ||
6748 | PR tree-optimization/27639 | |
6749 | PR tree-optimization/26719 | |
6750 | * tree-vrp.c (adjust_range_with_scev): Use scev_direction and adjust | |
6751 | call to scev_probably_wraps_p. | |
6752 | * tree-ssa-loop-niter.c (compare_trees, convert_step_widening, | |
6753 | used_in_pointer_arithmetic_p, convert_step): Removed. | |
6754 | (nowrap_type_p): New function. | |
6755 | (scev_probably_wraps_p): Rewritten. | |
6756 | * tree-scalar-evolution.c (instantiate_parameters_1): Do not call | |
6757 | chrec_convert if chrec_convert_aggressive might have been used. | |
6758 | * tree-chrec.c (convert_affine_scev, chrec_convert_1, | |
6759 | scev_direction): New functions. | |
6760 | (chrec_convert): Changed to a wrapper over chrec_convert_1. | |
6761 | * tree-ssa-loop-ivopts.c (idx_find_step): Use convert_affine_scev | |
6762 | instead of convert_step. | |
6763 | * tree-flow.h (scev_probably_wraps_p): Declaration changed. | |
6764 | (convert_step): Declaration removed. | |
6765 | (convert_affine_scev, nowrap_type_p, scev_direction): Declare. | |
6766 | ||
b11550aa KZ |
6767 | 2006-05-23 Kenneth Zadeck <zadeck@naturalbridge.com> |
6768 | ||
d7f5de76 | 6769 | * df-core.c: Added to header comments. |
b11550aa KZ |
6770 | * df.h (df_ru_bb_info, df_rd_bb_info, df_lr_bb_info, |
6771 | df_ur_bb_info, df_urec_bb_info): Added comments. | |
0ac11108 | 6772 | * df-problems (df_ref_bitmap, ru, rd, lr, ur, |
b11550aa | 6773 | urec, ri problems): Fixed header comments. |
0ac11108 | 6774 | (df_ru_transfer_function): Fixed in-out set dyslexia when copying |
b11550aa | 6775 | code from df_rd_transfer_function. |
0ac11108 | 6776 | |
b2a203c8 RS |
6777 | 2006-05-23 Richard Sandiford <richard@codesourcery.com> |
6778 | ||
6779 | * libgcc2.c (LIBGCC2_MAX_UNITS_PER_WORD): New macro. | |
6780 | (LIBGCC2_UNITS_PER_WORD): Use LIBGCC2_MAX_UNITS_PER_WORD rather than | |
6781 | MIN_UNITS_PER_WORD to set the default. Also use it in the guard. | |
6782 | ||
550ab0c6 JM |
6783 | 2006-05-23 Joseph Myers <joseph@codesourcery.com> |
6784 | ||
6785 | * expr.c (undefined_operand_subword_p): New. | |
6786 | (emit_move_multi_word): Do not generate move from undefined bits | |
6787 | of a paradoxical subreg. | |
6788 | ||
e5d7a520 RS |
6789 | 2006-05-23 Richard Sandiford <richard@codesourcery.com> |
6790 | ||
6791 | PR rtl-optimization/27736 | |
6792 | * combine.c (replaced_rhs_value): New variable. | |
6793 | (combine_instructions): Set it. | |
6794 | (distribute_notes): When distributing a note in replaced_rhs_insn, | |
6795 | check whether the value was used in replaced_rhs_value. | |
6796 | ||
f004ab02 AM |
6797 | 2006-05-23 Andrew MacLeod <amacleod@redhat.com> |
6798 | ||
6799 | PR c++/26757 | |
0ac11108 | 6800 | * tree-ssa-loop-im.c (determine_invariantness_stmt): Use |
f004ab02 AM |
6801 | add_referenced_var instead of add_referenced_tmp_var. |
6802 | * tree-complex.c (create_one_component_var): Use add_referenced_var. | |
6803 | * tree-ssa-loop-manip.c (create_iv, tree_unroll_loop): Use | |
6804 | add_referenced_var. | |
6805 | * tree-tailcall.c (adjust_accumulator_values, adjust_return_value, | |
6806 | tree_optimize_tail_calls_1): Use add_referenced_var. | |
6807 | * tree-ssa-loop-ivopts.c (create_new_iv): Use add_referenced_var. | |
6808 | * tree-ssa-alias.c (create_memory_tag, create_global_var, create_sft): | |
6809 | Use add_referenced_var. | |
6810 | * tree-if-conv.c (ifc_temp_var): Use add_referenced_var. | |
6811 | * gimplify.c (force_gimple_operand): Use add_referenced_var. | |
6812 | * tree-ssa-phiopt.c (conditional_replacement, abs_replacement): | |
6813 | Use add_referenced_var. | |
6814 | * tree-dfa.c (struct walk_state): Remove. | |
6815 | (find_referenced_vars): Remove walk state and vars_found hash table. | |
6816 | (make_rename_temp): Use add_referenced_var. | |
6817 | (find_vars_r): Pass less parameters to add_referenced_var. | |
6818 | (referenced_var_p): New. Is var in referenced_var hash table. | |
6819 | (referenced_var_insert): Assert var isn't already in hash table. | |
6820 | (add_referenced_var): Don't need walk_state parameter. Add var if it | |
6821 | isn't already in the hash table. | |
6822 | (add_referenced_tmp_var): Remove. | |
6823 | (find_new_referenced_vars_1): Use add_referenced_var. | |
0ac11108 | 6824 | * tree-ssa-pre.c (create_expression_by_pieces, |
f004ab02 AM |
6825 | insert_into_preds_of_block, insert_extra_phis, realify_fake_stores): |
6826 | Use add_referenced_var. | |
6827 | * tree-vect-patterns.c (vect_pattern_recog_1): Use add_referenced_var. | |
6828 | * lambda-code.c (lbv_to_gcc_expression, lle_to_gcc_expression, | |
0ac11108 | 6829 | lambda_loopnest_to_gcc_loopnest, perfect_nestify): Use |
f004ab02 AM |
6830 | add_referenced_var. |
6831 | * tree-vect-transform.c (vect_create_addr_base_for_vector_ref, | |
6832 | vect_create_data_ref_ptr, vect_create_destination_var, | |
0ac11108 | 6833 | vect_init_vector, vect_build_loop_niters, |
f004ab02 AM |
6834 | vect_generate_tmps_on_preheader, vect_update_ivs_after_vectorizer, |
6835 | vect_gen_niters_for_prolog_loop, vect_create_cond_for_align_checks): | |
6836 | Use add_referenced_var. | |
6837 | * tree-outof-ssa.c (create_temp): Use add_referenced_var. | |
6838 | * tree-flow.h (add_referenced_tmp_var): Remove prototype | |
6839 | (add_referenced_var): Add prototype. | |
0ac11108 | 6840 | * tree-ssa-structalias.c (get_constraint_for, |
f004ab02 AM |
6841 | intra_create_variable_infos): Use add_referenced_var. |
6842 | ||
dedc1e6d AO |
6843 | 2006-05-23 Alexandre Oliva <aoliva@redhat.com> |
6844 | ||
6845 | * simplify-rtx.c (simplify_subreg): Adjust REG_OFFSET for | |
6846 | big-endian paradoxical subregs. | |
6847 | * var-tracking.c (struct micro_operation_def): Document that, | |
6848 | for modify micro operations, insn is the subsequent instruction. | |
6849 | (var_reg_delete_and_set, var_mem_delete_and_set): Split into... | |
6850 | (var_reg_set, var_mem_set): ... new functions. | |
6851 | (add_stores): Record subsequent insn. | |
6852 | (compute_bb_dataflow): Use new functions for MO_USE. | |
6853 | (emit_notes_in_bb): Use new functions for MO_USE. Emit use | |
6854 | notes after the insn, and modify notes before the insn known | |
6855 | to be the subsequent one. | |
6856 | (vt_initialize): Invert sorting of MO_CLOBBERs and MO_SETs. | |
6857 | ||
546be535 KH |
6858 | 2006-05-23 Kazu Hirata <kazu@codesourcery.com> |
6859 | ||
6860 | PR target/27696 | |
6861 | * config/i386/i386.c (ix86_expand_builtin): Use | |
6862 | gen_sse3_monitor64 for TARGET_64BIT. | |
6863 | ||
1a1a5f4b KZ |
6864 | 2006-05-22 Kenneth Zadeck <zadeck@naturalbridge.com> |
6865 | ||
6866 | PR rtl-optimization/26375 | |
6867 | PR rtl-optimization/26855 | |
6868 | * df-problems (df_ru_bb_local_compute_process_def): Removed update | |
6869 | to gen set. | |
6870 | (df_ru_bb_local_compute): Reversed statements and removed bogus | |
6871 | comment explaining why they should be in wrong order. | |
0ac11108 | 6872 | (df_ru_dump, df_rd_dump): Enhanced debug info. |
1a1a5f4b | 6873 | * modulo-sched.c (sms_schedule, tree_opt_pass pass_sms): Enhanced |
0ac11108 | 6874 | debug info. |
1a1a5f4b | 6875 | * ddg.c (add_deps_for_def): Converted use of reaching defs to |
d7f5de76 | 6876 | reaching uses and fixed space problem. |
1a1a5f4b | 6877 | |
b633db7b JH |
6878 | 2006-05-23 Jan Hubicka <jh@suse.cz> |
6879 | ||
6880 | * cgraphunit.c (decide_is_function_needed): Also nested functions | |
6881 | and functions declared inline can be optimized out at -O0. | |
6882 | ||
3f2c089f GP |
6883 | 2006-05-22 Gerald Pfeifer <gerald@pfeifer.com> |
6884 | ||
6885 | * doc/install.texi (Configuration): Remove reference to CrossGCC | |
14d92b15 | 6886 | FAQ which was gone. |
3f2c089f GP |
6887 | (Building): Ditto. |
6888 | ||
3d763bcf KH |
6889 | 2006-05-22 Kazu Hirata <kazu@codesourcery.com> |
6890 | ||
6891 | PR target/27266 | |
6892 | * config/i386/i386.c (ix86_expand_branch): Jump to simple if | |
6893 | ix86_compare_emitted is non-NULL. | |
6894 | ||
123b24e7 VR |
6895 | 2006-05-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
6896 | ||
6897 | PR c++/27451 | |
6898 | * stmt.c (expand_asm_operands): Skip asm statement with erroneous | |
6899 | clobbers. | |
6900 | ||
1ff3ac02 RS |
6901 | 2006-05-22 Richard Sandiford <richard@codesourcery.com> |
6902 | ||
6903 | PR rtl-optimization/25514 | |
6904 | * combine.c (replaced_rhs_insn): New variable. | |
6905 | (combine_instructions): Set replaced_rhs_insn when trying to replace | |
6906 | a SET_SRC with a REG_EQUAL note. | |
6907 | (distribute_notes): Use replaced_rhs_insn when determining the live | |
6908 | range of a REG_DEAD register. | |
6909 | ||
8c21550d | 6910 | 2006-18-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de> |
9e826585 | 6911 | Anatoly Sokolov <aesok@post.ru> |
8c21550d JW |
6912 | |
6913 | * config/avr/avr.c (avr_mcu_types): Add support for attiny261, | |
6914 | attiny461, attiny861, attiny25, attiny45, attiny85, attiny24, | |
0ac11108 EC |
6915 | attiny44, attiny84, at90pwm2, at90pwm3, atmega165p, atmega169p, |
6916 | atmega164p, atmega324p, atmega644p, atmega644, atmega329, | |
6917 | atmega3290, atmega649, atmega6490, atmega406, atmega640, | |
6918 | atmega1280, atmega1281, at90can32, at90can64, at90usb646, | |
6919 | at90usb647, at90usb1286 and at90usb1287 devices. | |
8c21550d JW |
6920 | * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.). |
6921 | * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.). | |
6922 | ||
350f18df RS |
6923 | 2006-05-22 Richard Sandiford <richard@codesourcery.com> |
6924 | ||
6925 | * mklibgcc.in (lib2funcs): Remove _floatdidf from initial assignment. | |
6926 | ||
c31202cd RG |
6927 | 2006-05-22 Richard Guenther <rguenther@suse.de> |
6928 | ||
6929 | Revert | |
6930 | 2006-01-31 Richard Guenther <rguenther@suse.de> | |
6931 | Paolo Bonzini <bonzini@gnu.org> | |
6932 | ||
6933 | * doc/install.texi (--disable-libgcc-math): Document. | |
6934 | ||
9714c911 RG |
6935 | 2006-05-22 Richard Guenther <rguenther@suse.de> |
6936 | ||
6937 | Revert | |
6938 | 2006-01-31 Richard Guenther <rguenther@suse.de> | |
6939 | ||
6940 | * doc/invoke.texi (-msselibm): Document. | |
6941 | * target.h (expand_library_builtin): New target hook. | |
6942 | * builtins.c (expand_builtin): Use expand_library_builtin. | |
6943 | (default_expand_library_builtin): New function. | |
6944 | * gcc.c (LINK_GCC_MATH_SPEC): Define. | |
6945 | (LINK_COMMAND_SPEC): Handle %(link_gcc_math). | |
6946 | (link_gcc_math_spec): Declare. | |
6947 | (static_specs): Add link_gcc_math_spec. | |
6948 | * expr.h (default_expand_library_builtin): Declare. | |
6949 | * target-def.h (TARGET_EXPAND_LIBRARY_BUILTIN): Define. | |
6950 | (TARGET_INITIALIZER): Add TARGET_EXPAND_LIBRARY_BUILTIN. | |
6951 | * config/i386/i386.h: Provide LINK_GCC_MATH_SPEC. | |
6952 | * config/i386/i386.opt (msselibm): New target option. | |
6953 | * config/i386/i386.c (ix86_builtin_function_variants): New array. | |
6954 | (ix86_init_sse_abi_builtins): New function. | |
6955 | (ix86_expand_library_builtin): Likewise. | |
6956 | (TARGET_EXPAND_LIBRARY_BUILTIN): Define. | |
6957 | (override_options): Handle error conditions wrt -msselibm. | |
6958 | (ix86_builtins): Add function codes for SSE2 ABI builtins. | |
6959 | (ix86_init_builtins): Call ix86_init_sse_abi_builtins. | |
6960 | * doc/extend.texi (__builtin_sse2_*): Document new target specific | |
6961 | builtins. | |
6962 | ||
4271a6f3 VR |
6963 | 2006-05-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
6964 | ||
694fea20 VR |
6965 | PR c/27420 |
6966 | * c-common.c (self_promoting_args_p): Skip erroneous args. | |
6967 | ||
4271a6f3 VR |
6968 | PR c/26818 |
6969 | * c-decl.c (finish_struct): Skip erroneous fields. | |
6970 | ||
c3e242e7 NC |
6971 | 2006-05-22 Nick Clifton <nickc@redhat.com> |
6972 | ||
6973 | * config/cris/cris.opt (march): Remove VarExists attribute. | |
6974 | (max-stackframe=): Likewise. | |
6975 | ||
41c6dd59 KH |
6976 | 2006-05-22 Kazu Hirata <kazu@codesourcery.com> |
6977 | ||
6978 | * doc/rtl.texi: Fix a typo. | |
6979 | * see.c: Fix comment typos. | |
6980 | ||
eec077bd KH |
6981 | * tree-ssa-structalias.h (alias_info): Remove num_references. |
6982 | ||
76ad5c10 MS |
6983 | 2006-05-21 Mike Stump <mrs@apple.com> |
6984 | ||
6985 | * config/darwin-c.c (BAD): Conditionalize on OPT_Wpragmas. | |
6986 | (BAD2): Add. | |
213af8c8 MS |
6987 | (darwin_pragma_options): Use BAD instead. |
6988 | (darwin_pragma_unused): Likewise. | |
6989 | (darwin_pragma_ms_struct): Likewise. | |
6990 | ||
d29b7f64 DE |
6991 | 2006-05-21 David Edelsohn <edelsohn@gnu.org> |
6992 | ||
6993 | * config/rs6000/rs6000.md (floatsitf2): Remove constraints. | |
6994 | ||
4d49d44d KH |
6995 | 2006-05-21 Kazu Hirata <kazu@codesourcery.com> |
6996 | ||
6997 | PR rtl-optimization/27671 | |
6998 | * simplify-rtx.c (simplify_relational_operation_1): Fix | |
6999 | simplifications of (eq/ne (xor x y) y) and | |
7000 | (eq/ne (xor x y) x). | |
7001 | ||
5104d648 KH |
7002 | PR tree-optimization/26622. |
7003 | * fold-const.c (fold_ternary) <COND_EXPR>: Call fold_convert | |
7004 | on arg1. | |
7005 | ||
6531d1be BF |
7006 | 2006-05-21 Bernhard Fischer <aldot@gcc.gnu.org> |
7007 | ||
7008 | * tree-cfg.c: Prune whitespace. | |
7009 | (debug_tree_cfg): Point to correct header containing the | |
7010 | TDF_* defines. | |
7011 | ||
95a52ebb BF |
7012 | 2006-05-21 Bernhard Fischer <aldot@gcc.gnu.org> |
7013 | ||
7014 | PR middle-end/25776 | |
7015 | * cgraphunit.c (verify_cgraph_node): Typo in error message. | |
7016 | ||
7e2fe9d8 AP |
7017 | 2006-05-20 Andrew Pinski <pinskia@physics.uc.edu> |
7018 | ||
7019 | PR middle-end/25776 | |
7020 | * cgraphunit.c (cgraph_optimize): Don't run ipa passes if error | |
7021 | or sorry count is non zero. | |
7022 | ||
e29c9705 | 7023 | 2006-05-20 Andreas Schwab <schwab@suse.de> |
9be3bc1f AS |
7024 | |
7025 | * config/pa/pa-linux.h (STRING_ASM_OP): Prepend and append a tab. | |
7026 | ||
5d384034 | 7027 | 2006-05-19 Daniel Berlin <dberlin@dberlin.org> |
9e826585 | 7028 | Kenneth Zadeck <zadeck@naturalbridge.com> |
5d384034 DB |
7029 | |
7030 | PR rtl-optimization/26855 | |
7031 | ||
7032 | * df-scan.c (mw_reg_pool, mw_link_pool): New allocation pools for | |
7033 | multiword refs. | |
7034 | (df_scan_alloc): Added code to properly handle multiword hard | |
7035 | registers and add all_blocks parameter. | |
7036 | (df_scan_free_internal, df_insn_refs_delete, df_ref_record): Added | |
7037 | code to properly handle multiword hard registers. | |
7038 | (df_rescan_blocks): Added code to remove deleted blocks from | |
7039 | bitmap. | |
7040 | (df_ref_create_structure, df_ref_record): Added code to properly | |
7041 | handle subregs. | |
7042 | (df_ref_record_1): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER | |
7043 | and set DF_REF_PARTIAL. | |
7044 | (df_defs_record): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER. | |
0ac11108 | 7045 | (df_uses_record): Added DF_REF_PARTIAL for subreg. |
5d384034 DB |
7046 | (df_scan_add_problem): Added flags parameter. |
7047 | (df_ref_create_structure): Changed switching structure. | |
7048 | (df_bb_refs_record): Fixed case where duplicate artificial refs | |
7049 | were created. Changed location of flags. | |
7050 | (df_record_entry_block_defs): Added code to make stack pointer | |
7051 | live in entry block. Refined cases where frame pointer is needed. | |
7052 | Changed location of flags. | |
7053 | (df_record_exit_block_uses, df_insn_refs_record): Changed location of flags. | |
7054 | (df_set_state): Removed function. | |
7055 | (df_grow_reg_info, df_reg_chain_unlink, df_ref_remove, | |
0ac11108 EC |
7056 | df_insn_create_insn_record, df_insn_refs_delete, |
7057 | df_ref_create_structure): Formatting changes. | |
5d384034 DB |
7058 | * df-core.c (df_mvs_dump, df_set_flags, df_clear_flags, |
7059 | df_delete_basic_block): New function. | |
7060 | (df_init): Changed location of flags. | |
7061 | (df_add_problem): Added flags parameter and the way flags are | |
7062 | processed. | |
7063 | (df_insn_uid_debug, df_ref_debug, debug_df_defno, debug_df_ref, | |
7064 | debug_df_chain): Improved debugging output. | |
7065 | (df_insn_debug, df_insn_uid_debug): Added multiword reg support. | |
7066 | (df_refs_chain_dump): Removed df parameter. | |
7067 | (df_iterative_dataflow): Added consistency check. | |
7068 | (df_prune_to_subcfg): Made public. | |
7069 | (df_analyze_problem): Added blocks_to_init parameter and made | |
7070 | public. | |
0ac11108 | 7071 | (df_ref_record, df_bb_refs_record, df_mark_reg, |
5d384034 DB |
7072 | df_record_exit_block_uses): Whitespace changes. |
7073 | (df_dump): Whitespace changes. | |
7074 | * df.h: Some reordering to remove forward references. | |
7075 | (df_ref_flags.DF_REF_MW_HARDREG, DF_REF_PARTIAL, | |
7076 | DF_REF_MUST_CLOBBER, DF_REF_MAY_CLOBBER): New fields. | |
7077 | (df_ref_flags.DF_REF_CLOBBER): Deleted field. | |
7078 | (dataflow.flags): New field. | |
7079 | (df.flag): Deleted field. | |
7080 | (df_alloc_function): Added additional bitmap parameter. | |
7081 | (df_dependent_problem_function): New type. | |
7082 | (df_problem.changeable_flags): New field. | |
7083 | (df_ref_flags.DF_REF_DIES_AFTER_THIS_USE, DF_SCAN_INITIAL, | |
7084 | DF_SCAN_GLOBAL, DF_SCAN_POST_ALLOC, df_state): Removed. | |
7085 | (df_mw_hardreg): New struct. | |
7086 | (DF_INSN_UID_MWS): New macro. | |
7087 | (df_refs_chain_dump, df_ref_debug, df_chain_dump): Removed df | |
7088 | parameter. | |
7089 | (df_add_problem, df_ru_add_problem, df_rd_add_problem, | |
7090 | df_lr_add_problem, df_ur_add_problem, df_urec_add_problem, | |
7091 | df_ri_add_problem, df_scan_add_problem): Added flags parameter. | |
7092 | (df_set_state): Removed function. | |
7093 | (df_set_flags, df_clear_flags, df_delete_basic_block) New functions. | |
7094 | * df-problems.c (df_chain_dump): Removed df parameter. | |
7095 | (df_ru_alloc, df_rd_alloc, df_lr_alloc, df_ur_alloc, | |
7096 | df_urec_alloc, df_chain_alloc, df_ri_alloc): Added all blocks | |
7097 | parameter. | |
7098 | (df_ru_alloc, df_rd_alloc): Now resets all blocks. | |
7099 | (df_rd_bb_local_compute_process_def, df_ur_bb_local_compute, | |
7100 | df_chain_create_bb, df_create_unused_note, df_ri_bb_compute): | |
7101 | Split DF_REF_CLOBBER into DF_REF_MAY_CLOBBER and | |
7102 | DF_REF_MUST_CLOBBER cases. | |
7103 | (df_ru_bb_local_compute_process_def, | |
7104 | df_rd_bb_local_compute_process_def, df_lr_bb_local_compute, | |
7105 | df_lr_bb_local_compute, df_ur_bb_local_compute, | |
7106 | df_chain_create_bb): Made subreg aware. | |
7107 | (df_ru_bb_local_compute, df_rd_bb_local_compute, | |
7108 | df_lr_bb_local_compute, df_lr_bb_local_compute, | |
7109 | df_chain_create_bb): Cleanup to use proper macros. | |
7110 | (df_ur_local_finalize, df_urec_local_finalize): Removed unnecessary | |
7111 | code to fixup bitvectors. | |
7112 | (df_ri_alloc): Cleared lifetime. | |
7113 | (df_ignore_stack_reg, df_kill_notes, df_set_notes_for_mw, | |
7114 | df_create_unused_note): New function. | |
7115 | (df_ri_bb_compute, df_ri_compute): Added code to create/update | |
7116 | REG_DEAD and REG_UNUSED notes as well as register information. | |
7117 | (df_ru_dump, df_rd_dump, df_lr_dump, df_ur_dump, df_urec_dump, | |
7118 | df_chains_dump): Fixed crash if problem was never run. | |
7119 | (df_ru_add_problem, df_rd_add_problem, df_lr_add_problem, | |
7120 | df_ur_add_problem, df_urec_add_problem, df_chain_add_problem, | |
7121 | df_ri_add_problem): Processes flags in uniform manner. | |
7122 | (df_ru_alloc, df_ru_local_compute, df_ru_confluence_n, df_ru_free, | |
7123 | df_ru_dump, df_rd_local_compute, df_rd_confluence_n, df_rd_free, | |
7124 | df_rd_dump, df_urec_free_bb_info): Formatting changes. | |
7125 | (df_ru_free_bb_info, df_ru_bb_local_compute, df_ru_dump, | |
7126 | df_rd_free_bb_info, df_rd_bb_local_compute_process_def, | |
7127 | df_rd_bb_local_compute, df_rd_dump, df_lr_free_bb_info, | |
7128 | df_lr_bb_local_compute, df_lr_local_compute, df_ur_free_bb_info, | |
7129 | df_ur_dump, df_urec_free_bb_info, df_urec_dump, | |
7130 | df_chain_create_bb, df_ri_bb_compute): Whitespace changes. | |
7131 | * modulo-sched.c (sms_schedule): Added flag parameter to calls. | |
7132 | * see.c (see_initialize_data): Ditto. | |
7133 | * final.c (rest_of_clean_state) Added regstack_completed. | |
7134 | * rtl.h (regstack_completed): Ditto. | |
7135 | * reg-stack.c (regstack_completed): Ditto. | |
7136 | ||
d593cb3d MS |
7137 | 2006-05-19 Mike Stump <mrs@apple.com> |
7138 | ||
7139 | * c-tree.h (default_conversion): Remove. | |
7140 | * c-common.h (default_conversion): Add. | |
7141 | ||
04dce5a4 ZD |
7142 | 2006-05-19 Zdenek Dvorak <dvorakz@suse.cz> |
7143 | ||
7144 | * tree-vrp.c (valid_value_p): New function. | |
7145 | (adjust_range_with_scev): Fail if the value of bound is not | |
7146 | simple. | |
7147 | ||
fa807ff6 RS |
7148 | 2006-05-19 Richard Sandiford <richard@codesourcery.com> |
7149 | ||
7150 | * config/mips/linux-unwind.h: Include <asm/unistd.h> | |
7151 | (mips_fallback_frame_state): Use syscall numbers to determine | |
7152 | the appropriate li instruction for the current ABI. Only use | |
7153 | __NR_sigreturn for o32. | |
7154 | ||
721a8ac5 NS |
7155 | 2006-05-19 Nicolas Setton <setton@adacore.com> |
7156 | ||
7157 | * langhooks.h (struct lang_hooks): Add dwarf_name language hook. | |
7158 | * langhooks.c (lhd_dwarf_name): New function. | |
7159 | * langhooks-def.h (lhd_dwarf_name): Declare. | |
7160 | (LANG_HOOKS_DWARF_NAME): New macro, defaults to lhd_dwarf_name. | |
7161 | * dwarf2out.c (dwarf2_name): Use the dwarf_name language hook. | |
7162 | * ada/misc.c (gnat_dwarf_name): New function. | |
7163 | (LANG_HOOKS_DWARF_NAME): Define to gnat_dwarf_name. | |
0ac11108 | 7164 | |
baffad1f RS |
7165 | 2006-05-19 Richard Sandiford <richard@codesourcery.com> |
7166 | ||
7167 | * libgcc2.c (MIN_UNITS_PER_WORD): Move default definition from | |
7168 | libgcc2.h. | |
7169 | (LIBGCC2_UNITS_PER_WORD): Provide default definition, using old | |
7170 | MIN_UNITS_PER_WORD logic from libgcc2.h. Do nothing if | |
7171 | LIBGCC2_UNITS_PER_WORD > MIN_UNITS_PER_WORD. | |
7172 | * libgcc2.h (MIN_UNITS_PER_WORD): Remove definition from here. | |
7173 | Use LIBGCC2_UNITS_PER_WORD rather than MIN_UNITS_PER_WORD to | |
7174 | determine the size of Wtype, etc. | |
7175 | * mklibgcc.in (LIB2_SIDITI_CONV_FUNCS): New argument. | |
7176 | (swfloatfuncs): New variable. | |
7177 | (dwfloatfuncs): Likewise. | |
7178 | (lib2funcs): Remove floating-point conversion functions from | |
7179 | initial assignment. Use LIB2_SIDITI_CONV_FUNCS to determine | |
7180 | the set of conversion routines needed. Allow entries to specify | |
7181 | an object name, filename and word size. Update users accordingly. | |
7182 | * Makefile.in (libgcc.mk): Pass LIB2_SIDITI_CONV_FUNCS. | |
7183 | * config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Define. | |
7184 | ||
7185 | Revert: | |
7186 | ||
7187 | 2006-02-08 Roger Sayle <roger@eyesopen.com> | |
7188 | ||
7189 | PR target/22209 | |
7190 | * config/fixtfdi.c: New libgcc source file. | |
7191 | * config/fixunstfdi.c: New source file. | |
7192 | * config/floatditf.c: New source file. | |
7193 | * config/floatunditf.c: New souce file. | |
7194 | * config/mips/t-iris6 (LIB2FUNCS_EXTRA): Include the new source | |
7195 | files above instead of config/mips/_tilib.c. | |
7196 | * config/mips/t-linux64 (LIB2FUNCS_EXTRA): Likewise. | |
7197 | ||
03be9d6b JDA |
7198 | 2006-05-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
7199 | ||
7200 | * pa/t-hpux-shlib (SHLIB_LINK): Remove `-lc'. | |
7201 | * pa/pa-hpux11.h (LIB_SPEC): Update comment. | |
7202 | ||
52ffd86e MS |
7203 | 2006-05-18 Mike Stump <mrs@apple.com> |
7204 | ||
7205 | Fix up vla, vm and [*] sematics. | |
7206 | ||
7207 | PR c/18740 | |
7208 | PR c/7948 | |
7209 | PR c/25802 | |
6a1f8611 | 7210 | PR c/27673 |
52ffd86e MS |
7211 | * c-tree.h (struct c_arg_info): Add had_vla_unspec. |
7212 | (c_vla_unspec_p): Add. | |
7213 | (c_vla_type_p): Add. | |
7214 | * c-decl.c (struct c_scope): Add had_vla_unspec. | |
7215 | (build_array_declarator): Add support for [*]. | |
7216 | (grokdeclarator): Likewise. | |
7217 | (grokparms): Likewise. | |
7218 | (get_parm_info): Likewise. | |
7219 | * c-objc-common.c (c_vla_unspec_p): Likewise. | |
7220 | * c-objc-common.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Likewise. | |
7221 | * c-parser.c (c_parser_typeof_specifier): Evaluate arguments to | |
7222 | typeof when argument is a variably modified type not inside sizeof or alignof. | |
7223 | (c_parser_direct_declarator_inner): Propagate errors. | |
7224 | (c_parser_sizeof_expression): Add support for [*]. | |
6a1f8611 MS |
7225 | (c_parser_parms_declarator): Initialize had_vla_unspec. |
7226 | (c_parser_parms_list_declarator): Likewise. | |
52ffd86e MS |
7227 | * c-typeck.c (c_vla_type_p): Add. |
7228 | (composite_type): Add support for vla compositing. | |
7229 | (comptypes_internal): Add support for vla compatibility. | |
7230 | (c_expr_sizeof_expr): Evaluate vla arguments. | |
7231 | * tree.c (variably_modified_type_p): Update comment for [*]. | |
7232 | ||
eaec4980 MM |
7233 | 2006-05-18 Michael Matz <matz@suse.de> |
7234 | ||
7235 | PR target/27599 | |
7236 | * config.host: Make assignments to host_xmake_file cumulative. | |
7237 | * config.host (*-darwin*): Test $host, not $target. | |
7238 | ||
33932946 SH |
7239 | 2006-05-12 Stuart Hastings <stuart@apple.com> |
7240 | ||
a1d1988f MS |
7241 | * config/i386/i386.opt (-mstackrealign): New flag. |
7242 | * config/i386/i386.c (force_align_arg_pointer): New attribute. | |
33932946 SH |
7243 | (ix86_handle_cconv_attribute): Emit error when |
7244 | force_align_arg_pointer attribute collides with too many regparms. | |
7245 | (ix86_function_regparm): Limit regparms when used with | |
7246 | force_align_arg_pointer attribute. (ix86_internal_arg_pointer): | |
7247 | Support stack-realigning prologue in non-main functions. Emit | |
7248 | warning for nested functions under -mstackrealign, emit error for | |
7249 | nested functions with force_align_arg_pointer attribute. | |
a1d1988f MS |
7250 | * doc/extend.texi (force_align_arg_pointer): Document it. |
7251 | * doc/invoke.texi (-mstackrealign): Document it. | |
e8366202 | 7252 | |
c8983342 KH |
7253 | 2006-05-17 Kazu Hirata <kazu@codesourcery.com> |
7254 | ||
7255 | PR rtl-optimization/27477 | |
7256 | * combine.c (try_combine): Don't split a parallel consisting | |
7257 | of two sets into two individual sets if both sets reference | |
7258 | cc0. | |
7259 | ||
344185f1 L |
7260 | 2006-05-17 H.J. Lu <hongjiu.lu@intel.com> |
7261 | ||
7262 | * config/arm/arm.opt (target_fpe_name): Remove VarExists. | |
7263 | * config/rs6000/rs6000.opt (TARGET_NO_FP_IN_TOC): Likewise. | |
7264 | ||
7265 | * doc/options.texi (VarExists): Updated. | |
7266 | ||
edbaf6a2 JDA |
7267 | 2006-05-17 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
7268 | ||
7269 | * unwind-dw2.c: Add declarations for uw_update_context and | |
7270 | uw_frame_state_for. | |
7271 | * pa/hpux-unwind.h (pa_fallback_frame_state): When an export stub is | |
7272 | detected, advance frame state and context once to skip over stub. | |
7273 | ||
c93c5025 SP |
7274 | 2006-05-17 Sebastian Pop <pop@cri.ensmp.fr> |
7275 | ||
7276 | PR middle-end/20256 | |
7277 | PR middle-end/26435 | |
7278 | * tree-loop-linear.c (linear_transform_loops): Don't test perfect_nest_p. | |
7279 | Call rewrite_into_loop_closed_ssa only when something changed. | |
7280 | * lambda.h (gcc_loopnest_to_lambda_loopnest): Update declaration. | |
7281 | * lambda-code.c (can_convert_to_perfect_nest): Declared. | |
7282 | (gcc_loopnest_to_lambda_loopnest): Removed need_perfect_nest parameter. | |
7283 | Test for perfect_nest_p here. Fix formating. | |
7284 | (replace_uses_equiv_to_x_with_y): Fix formating. | |
7285 | (stmt_uses_op): Removed. | |
7286 | (can_convert_to_perfect_nest): Removed loopivs parameter. | |
7287 | Complete the test by checking the scalar dependences. | |
7288 | (perfect_nestify): Remove the test for can_convert_to_perfect_nest. | |
7289 | Fix formating. | |
7290 | ||
be448346 BS |
7291 | 2005-05-17 Bernd Schmidt <bernd.schmidt@analog.com> |
7292 | ||
7293 | PR bootstrap/22541 | |
7294 | From Dan Kegel <dank@kegel.com>: | |
7295 | * Makefile.in: Strip "dir/../" combinations from SYSTEM_INCLUDE_DIR. | |
7296 | ||
2e3b8fe7 EB |
7297 | 2006-05-17 Eric Botcazou <ebotcazou@adacore.com> |
7298 | ||
7299 | * tree.c (variably_modified_type_p) <ARRAY_TYPE>: Return true | |
7300 | if the element type is variably modified without recursing. | |
7301 | ||
9cb8f1ba SP |
7302 | 2006-05-17 Sebastian Pop <pop@cri.ensmp.fr> |
7303 | ||
7304 | PR middle-end/27332 | |
e8366202 | 7305 | * tree-loop-linear.c (try_interchange_loops): Test for |
9cb8f1ba SP |
7306 | no data dependences. |
7307 | ||
e5db3515 ZD |
7308 | 2006-05-17 Zdenek Dvorak <dvorakz@suse.cz> |
7309 | ||
7310 | PR tree-optimization/27548 | |
7311 | * tree-scalar-evolution.c (scev_const_prop): Do not prolong life | |
7312 | range of ssa names that appear on abnormal edges. | |
7313 | * tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Export. | |
7314 | * tree-flow.h (contains_abnormal_ssa_name_p): Declare. | |
7315 | ||
33598a1b BS |
7316 | 2005-05-17 Bernd Schmidt <bernd.schmidt@analog.com> |
7317 | ||
7318 | PR middle-end/27620 | |
7319 | * expr.c (safe_from_p): Handle CONSTRUCTOR again. | |
7320 | ||
761041be JJ |
7321 | 2006-05-17 Jakub Jelinek <jakub@redhat.com> |
7322 | ||
7323 | PR middle-end/27415 | |
7324 | * tree.h (OMP_PARALLEL_COMBINED): Define. | |
7325 | * gimplify.c (struct gimplify_omp_ctx): Add is_combined_parallel field. | |
7326 | (new_omp_context): Add is_combined_parallel argument. | |
7327 | (gimplify_scan_omp_clauses): Add in_combined_parallel argument, adjust | |
7328 | new_omp_context caller. | |
7329 | (gimplify_omp_parallel, gimplify_omp_for, gimplify_omp_workshare): | |
7330 | Adjust gimplify_scan_omp_clauses callers. | |
7331 | (omp_is_private): Issue errors if iteration variable is firstprivate | |
7332 | or reduction in the current context. | |
7333 | * c-parser.c (c_parser_omp_parallel): Set OMP_PARALLEL_COMBINED | |
7334 | on combined parallel workshare constructs. | |
7335 | ||
8dc3f290 L |
7336 | 2006-05-16 H.J. Lu <hongjiu.lu@intel.com> |
7337 | ||
7338 | * Makefile.in (GCC_OBJS): Replace options.o with gcc-options.o. | |
7339 | (gcc-options.o): New rule. | |
7340 | ||
7341 | * optc-gen.awk: Protect variables for gcc-options.o with | |
7342 | #ifdef GCC_DRIVER/#endif. | |
7343 | ||
2ed4b0ce | 7344 | 2006-05-16 Daniel Berlin <dberlin@dberlin.org> |
e8366202 | 7345 | |
2ed4b0ce DB |
7346 | Fix PR tree-optimization/27373 |
7347 | * tree-ssa-forwprop.c: (forward_propagate_addr_expr_1): Add argument. | |
7348 | (forward_propagate_addr_expr): Update call. | |
7349 | ||
48b06e94 L |
7350 | 2006-05-16 H.J. Lu <hongjiu.lu@intel.com> |
7351 | ||
7352 | * doc/options.texi: Move the Negative option. | |
7353 | ||
faaf1436 RG |
7354 | 2006-05-16 Richard Guenther <rguenther@suse.de> |
7355 | ||
7356 | PR tree-optimization/22303 | |
7357 | * tree-ssa-ccp.c (fold_const_aggregate_ref): Handle reads | |
7358 | from STRING_CSTs. | |
7359 | (evaluate_stmt): Fall back to fold_const_aggregate_ref, if | |
7360 | ccp_fold did not simplify the statement. | |
7361 | ||
14c7833c L |
7362 | 2006-05-16 H.J. Lu <hongjiu.lu@intel.com> |
7363 | ||
7364 | PR driver/26885 | |
7365 | * Makefile.in (GCC_OBJS): New. | |
7366 | (OBJS-common): Add opts-common.o. | |
7367 | (xgcc$(exeext)): Replace gcc.o with $(GCC_OBJS). | |
7368 | (cpp$(exeext)): Likewise. | |
7369 | (gcc.o): Also depend on opts.h. | |
7370 | (opts-common.o): New. | |
7371 | ||
7372 | * common.opt (gcoff): Add Negative(gdwarf-2). | |
7373 | (gdwarf-2): Add Negative(gstabs). | |
7374 | (gstabs): Add Negative(gstabs+). | |
7375 | (gstabs+): Add Negative(gvms). | |
7376 | (gvms): Add Negative(gxcoff). | |
7377 | (gxcoff): Add Negative(gxcoff+). | |
7378 | (gxcoff+): Add Negative(gcoff). | |
7379 | * config/i386/i386.opt (m32): Add Negative(m64). | |
7380 | (m64): Add Negative(m32). | |
7381 | ||
7382 | * doc/options.texi: Document the Negative option. | |
7383 | ||
7384 | * gcc.c: Include "opts.h". | |
7385 | (main): Call prune_options after expandargv. | |
7386 | ||
7387 | * optc-gen.awk: Generate common declarations for all flag | |
7388 | variables in options.c. Output the neg_index field. | |
7389 | ||
7390 | * opts.c (find_opt): Moved to ... | |
7391 | * opts-common.c: Here. New file. | |
7392 | ||
7393 | * opts.h (cl_option): Add a neg_index field. | |
7394 | (find_opt): New. | |
7395 | (prune_options): Likewise. | |
7396 | ||
4156f84b JJ |
7397 | 2006-05-16 Jakub Jelinek <jakub@redhat.com> |
7398 | ||
b570947c JJ |
7399 | PR middle-end/27573 |
7400 | * omp-low.c (expand_omp_parallel): Don't assert | |
7401 | .OMP_DATA_I = &.OMP_DATA_O is the first statement in the block, | |
7402 | instead search for it. | |
7403 | ||
4156f84b JJ |
7404 | PR c/27499 |
7405 | * gimplify.c (gimplify_omp_for): Remove assertion that iteration var | |
7406 | is signed. | |
7407 | ||
726e9992 AS |
7408 | 2006-05-16 Andreas Schwab <schwab@suse.de> |
7409 | ||
7410 | * doc/tm.texi (TARGET_LIBGCC_SDATA_SECTION): Add missing @end | |
7411 | defmac. | |
7412 | ||
d0b89852 RS |
7413 | 2006-05-15 Roger Sayle <roger@eyesopen.com> |
7414 | ||
7415 | PR target/26600 | |
7416 | * config/i386/i386.c (legitimate_constant_p) <CONST_DOUBLE>: TImode | |
7417 | integer constants other than zero are only legitimate on TARGET_64BIT. | |
7418 | <CONST_VECTOR> Only zero vectors are legitimate. | |
7419 | (ix86_cannot_force_const_mem): Integral and vector constants can | |
7420 | always be put in the constant pool. | |
7421 | ||
a0cfeb0f DD |
7422 | 2006-05-16 DJ Delorie <dj@redhat.com> |
7423 | ||
7424 | * crtstuff.c (__dso_handle): Set section from | |
7425 | TARGET_LBIGCC_SDATA_SECTION if defined. | |
726e9992 | 7426 | * doc/tm.texi (TARGET_LIBGCC_SDATA_SECTION): Document. |
a0cfeb0f DD |
7427 | * config/mips/mips.h (TARGET_LIBGCC_SDATA_SECTION): Define. |
7428 | ||
21028020 DS |
7429 | 2006-05-16 Danny Smith <dannysmith@users.sourceforge.net> |
7430 | ||
eaec4980 | 7431 | PR target/27599 |
21028020 DS |
7432 | * config.host (i[34567]86-*-mingw*): Append i386/x-mingw32 to |
7433 | host_xmake_file. | |
7434 | ||
4741d956 BE |
7435 | 2006-05-16 Ben Elliston <bje@au.ibm.com> |
7436 | ||
7437 | * tree-cfg.c (split_edge_bb_loc): Remove unused variable `src'. | |
7438 | ||
44422aa3 PB |
7439 | 2006-05-15 Per Bothner <per@bothner.com> |
7440 | ||
0977c9ab | 7441 | * tree.c: (last_annotated_node): Use source_locus typedef. |
44422aa3 PB |
7442 | This permits bootstrapping with --enable-mapped-location. |
7443 | ||
95dd3097 ZD |
7444 | 2006-05-15 Zdenek Dvorak <dvorakz@suse.cz> |
7445 | ||
7446 | PR tree-optimization/26830 | |
7447 | * tree-into-ssa.c (struct ssa_name_info): Add age field. | |
7448 | (info_for_ssa_name, current_info_for_ssa_name_age, | |
7449 | blocks_to_update): New variables. | |
7450 | (get_ssa_name_ann): Use info_for_ssa_name instead of SSA_NAME_AUX. | |
7451 | (clear_ssa_name_info, initialize_flags_in_bb, | |
7452 | mark_block_for_update): New functions. | |
7453 | (mark_def_sites, rewrite_stmt): Assert that blocks_to_update is NULL. | |
7454 | (insert_phi_nodes_for, mark_use_interesting, prepare_block_for_update, | |
7455 | prepare_def_site_for): Use mark_block_for_update. | |
7456 | (mark_def_interesting): Assert that the processed block is marked in | |
7457 | blocks_to_update. Do not take blocks argument. | |
7458 | (prepare_use_sites_for, prepare_names_to_update): Do not take blocks | |
7459 | argument. | |
7460 | (rewrite_update_init_block, rewrite_update_stmt): Only process | |
7461 | blocks with statements to rewrite. | |
7462 | (delete_update_ssa): Do not clear SSA_NAME_AUX. | |
7463 | (update_ssa): Initialize and free blocks_to_update. Do not | |
7464 | clear flags on statements. Do not use blocks bitmap. | |
7465 | * tree.h (SSA_NAME_AUX): Removed. | |
7466 | (struct tree_ssa_name): Removed aux field. | |
7467 | * print-tree.c (print_node): Do not print SSA_NAME_AUX. | |
7468 | ||
7136db7a RG |
7469 | 2006-05-15 Richard Guenther <rguenther@suse.de> |
7470 | ||
7471 | PR tree-optimization/27603 | |
7472 | * tree-ssa-loop-niter.c (infer_loop_bounds_from_undefined): | |
7473 | Do computations in original type. | |
7474 | ||
a0145633 MN |
7475 | 2006-05-15 Mircea Namolaru <namolaru@il.ibm.com> |
7476 | ||
f8f80cbb ZD |
7477 | * see.c: Code style changes such as redundant paranthesis, |
7478 | redundant intialization of local variables etc. | |
7479 | (see_main): Declared now as static. | |
7480 | * doc/invoke.texi: Update that -fsee is not enabled by | |
7481 | default at -O3. | |
a0145633 | 7482 | |
eeb1d9e0 JJ |
7483 | 2006-05-15 Jakub Jelinek <jakub@redhat.com> |
7484 | ||
a6fc8e21 JJ |
7485 | * omp-low.c (check_omp_nesting_restrictions): New function. |
7486 | (scan_omp_1): Call it. | |
7487 | ||
eeb1d9e0 JJ |
7488 | PR middle-end/27416 |
7489 | * omp-low.c (build_outer_var_ref): If VAR is reference in orphaned | |
7490 | construct, return *VAR. | |
7491 | ||
a1709769 KK |
7492 | 2006-05-14 Kaz Kojima <kkojima@gcc.gnu.org> |
7493 | ||
7494 | PR rtl-optimization/27406 | |
7495 | * bt-load.c (migrate_btr_def): Skip the block having abnormal | |
7496 | edges. | |
7497 | ||
56106c2e RS |
7498 | 2006-05-14 Roger Sayle <roger@eyesopen.com> |
7499 | ||
7500 | PR rtl-optimization/27538 | |
7501 | * combine.c (expand_compound_operation): Call gen_lowpart | |
7502 | before calling simplify_shift_const. | |
7503 | ||
c505fc06 RS |
7504 | 2006-05-14 Roger Sayle <roger@eyesopen.com> |
7505 | ||
7506 | PR rtl-optimization/22563 | |
7507 | * expmed.c (store_fixed_bit_field): When using AND and IOR to store | |
7508 | a fixed width bitfield, always force the intermediates into psuedos. | |
7509 | ||
f9a4b91e BF |
7510 | 2006-05-14 Bernhard Fischer <aldot@gcc.gnu.org> |
7511 | ||
7512 | PR 27501 | |
7513 | * mkconfig.sh: Use operator = instead of == for test. | |
7514 | ||
83409463 NC |
7515 | 2006-05-13 Nick Clifton <nickc@redhat.com> |
7516 | ||
7517 | * dwarf2out.c (dbx_reg_number): Check return value from | |
7518 | LEAF_REG_REMAP and only use it if it is valid. | |
7519 | (multiple_reg_loc_descriptor): Likewise. | |
7520 | ||
75c3fb73 RG |
7521 | 2006-05-13 Richard Guenther <rguenther@suse.de> |
7522 | ||
7523 | * config.host <i[34567]86-*-cygwin*>: Append i386/x-cygwin to | |
7524 | host_xmake_file. | |
7525 | ||
a1b53177 SB |
7526 | 2006-05-13 Steven Bosscher <stevenb.gcc@gmail.com> |
7527 | ||
7528 | * df-core.c (df_bb_regno_last_use_find): Do not look for dataflow | |
7529 | information attached to non-INSNs such as NOTEs. | |
7530 | (df_bb_regno_first_def_find, df_bb_regno_last_def_find): Likewise. | |
7531 | ||
651a36e3 AK |
7532 | 2006-05-12 Andreas Krebbel <krebbel1@de.ibm.com> |
7533 | ||
7534 | * config/s390/s390.c (s390_const_ok_for_constraint_p): Disallow -4G for | |
7535 | On contraint. | |
7536 | * config/s390/s390.md: Adjust comment describing On constraint. | |
7537 | ||
5d342ef9 JH |
7538 | 2006-05-11 Jan Hubicka <jh@suse.cz> |
7539 | ||
7540 | * cgraphunit.c (decide_is_function_needed): Don't force always_inline | |
7541 | to be output at -O0. | |
7542 | ||
81e61fb4 VR |
7543 | 2006-05-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
7544 | ||
7ebcc52c VR |
7545 | PR middle-end/27384 |
7546 | * fold-const.c (size_binop): Move sanity check for arguments to | |
7547 | the beginning of the function. | |
7548 | ||
81e61fb4 VR |
7549 | PR middle-end/27488 |
7550 | * fold-const.c (tree_expr_nonnegative_p): Return early on invalid | |
7551 | expression. | |
7552 | ||
497cfe24 RG |
7553 | 2006-05-11 Richard Guenther <rguenther@suse.de> |
7554 | ||
7555 | PR middle-end/27529 | |
7556 | * fold-const.c (fold_unary): Handle intermediate conversion | |
7557 | to a pointer type like intermediate conversion to an integer | |
7558 | type in folding of (T1)(T2)var to var. | |
7559 | Match the code to the comment in the final conversion for | |
7560 | (T1)(T2)var to (T1)var regarding to type precision. Rather | |
7561 | than disallow T1 being of pointer type, assert that both T1 | |
7562 | and var are of pointer type or not. Make sure not to fall | |
7563 | over the frontends lazyness wrt array to pointer decay though. | |
7564 | ||
29e339b9 RE |
7565 | 2006-05-10 Richard Earnshaw <rearnsha@arm.com> |
7566 | ||
7567 | * arm.c (arm_struct_value_rtx): Delete. | |
7568 | (TARGET_STRUCT_VALUE_RTX): Use the default definition. | |
7569 | (arm_init_cumulative_args): Always initialize nregs to zero. | |
7570 | ||
5ac4f3bb RG |
7571 | 2006-05-10 Richard Guenther <rguenther@suse.de> |
7572 | ||
7573 | PR tree-optimization/27532 | |
7574 | * tree-object-size.c (plus_expr_object_size): Fix typo. | |
7575 | ||
e43d8b8a KH |
7576 | 2006-05-10 Kazu Hirata <kazu@codesourcery.com> |
7577 | ||
7578 | PR target/24949 | |
7579 | * config/m68k/m68k.md (ashrdi_const32, ashrdi_const32_mem, | |
7580 | ashrdi_const, ashrdi3): Use a scratch register. | |
7581 | ||
a04d8591 RG |
7582 | 2006-05-10 Richard Guenther <rguenther@suse.de> |
7583 | ||
7584 | PR tree-optimization/27302 | |
7585 | * fold-const.c (operand_equal_p): For two comparisons, | |
7586 | try comparison of one comparison code swapped if that yields | |
7587 | the same code. | |
7588 | ||
9c5835d5 BE |
7589 | 2006-05-10 Ben Elliston <bje@au.ibm.com> |
7590 | ||
4db60bd0 BE |
7591 | * tree-pretty-print.c (pretty_print_string): No need to handle |
7592 | '\0' as a special character. | |
7593 | ||
9c5835d5 BE |
7594 | * tree.h: Include "hashtab.h". |
7595 | (iterative_hash_expr): Use hashval_t in its prototype. | |
7596 | * Makefile.in (TREE_H): Add $(HASHTAB_H). | |
7597 | ||
543b6009 SE |
7598 | 2006-05-09 Steve Ellcey <sje@cup.hp.com> |
7599 | ||
7600 | PR bootstrap/26872 | |
7601 | * config.gcc (hppa[12]*-*-hpux10*): Set gas to yes. | |
7602 | (hppa*64*-*-hpux11*): Ditto. | |
7603 | (hppa[12]*-*-hpux11*): Ditto. | |
7604 | ||
7ac159a5 DE |
7605 | 2006-05-09 David Edelsohn <edelsohn@gnu.org> |
7606 | ||
7607 | PR target/26545 | |
7608 | * config/rs6000/aix41.h (TARGET_64BIT): Define. | |
7609 | ||
fa959ce4 MM |
7610 | 2006-05-09 Michael Matz <matz@suse.de> |
7611 | ||
7612 | * config.host (<i[34567]86-*-*, x86_64-*-*>): Set | |
7613 | host_extra_gcc_objs and host_xmake_file. | |
7614 | (<*-*-linux*>): Don't overwrite host_xmake_file. | |
7615 | * gcc.c (static_spec_functions): Add EXTRA_SPEC_FUNCTIONS. | |
7616 | * config/i386/i386.h (EXTRA_SPEC_FUNCTIONS): Define. | |
7617 | (host_detect_local_cpu): Declare. | |
7618 | (CC1_CPU_SPEC): Add -march=native and -mtune=native cases. | |
7619 | * config/i386/i386.c (override_options): Handle -mtune=native | |
7620 | as -mtune=generic. | |
7621 | * config/i386/x-i386: New file. | |
7622 | * config/i386/driver-i386.c: New file. | |
7623 | * doc/invoke.texi (<i386 and x86-64 Options>): Describe | |
7624 | cpu-type "native". | |
7625 | ||
f9c3744b DM |
7626 | 2006-05-09 Dirk Mueller <dmueller@suse.de> |
7627 | Richard Guenther <rguenther@suse.de> | |
7628 | ||
7629 | PR middle-end/27498 | |
7630 | * fold-const.c (fold_read_from_constant_string): Relax check | |
7631 | for matching types to matching modes. | |
7632 | ||
2c790a28 ZD |
7633 | 2006-05-09 Zdenek Dvorak <dvorakz@suse.cz> |
7634 | ||
7635 | PR rtl-optimization/27335 | |
7636 | * loop-unroll.c (peel_loops_completely): Use loops->parray to walk the | |
7637 | loops. | |
7638 | ||
ec4fc7ed RS |
7639 | 2006-05-08 Chao-ying Fu <fu@mips.com> |
7640 | Richard Sandiford <richard@codesourcery.com> | |
7641 | ||
7642 | * config/mips/mips-ps-3d.md (scc_ps, s<code>_ps): New patterns. | |
7643 | (vcondv2sf, sminv2sf3, smaxv2sf3): Likewise. | |
7644 | * config/mips/mips.md (UNSPEC_SCC): New constant. | |
7645 | * config/mips/mips-protos.h (mips_expand_vcondv2sf): Declare. | |
7646 | * config/mips/mips.c (mips_reverse_fp_cond_p): New function. | |
7647 | (mips_emit_compare): Use it. | |
7648 | (mips_expand_vcondv2sf): New function. | |
7649 | ||
74be08f8 DB |
7650 | 2006-05-08 Daniel Berlin <dberlin@dberlin.org> |
7651 | ||
7652 | Fix PR tree-optimization/27093 | |
e8366202 | 7653 | * tree-ssa-alias.c (recalculate_used_alone): Mark variables for |
74be08f8 DB |
7654 | renaming when they become not-used_alone. |
7655 | ||
fdaaf002 JDA |
7656 | 2006-05-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
7657 | ||
7658 | * hpux-unwind.h (pa_fallback_frame_state): Handle return parameter | |
7659 | relocation and relocation stubs. | |
7660 | ||
90c92323 EC |
7661 | 2006-05-08 Eric Christopher <echristo@apple.com> |
7662 | ||
7663 | * unwind-dw2-fde-darwin.c (examine_objects): Only check data | |
7664 | section for ppc. | |
7665 | ||
04f77d0f JH |
7666 | 2006-05-08 Jan Hubicka <jh@suse.cz> |
7667 | ||
46f5f7f2 | 7668 | PR middle-end/24561 |
04f77d0f JH |
7669 | * cgraphunit.c (decide_is_function_needed): When not optimizing even |
7670 | unused static functions are needed. | |
7671 | ||
857e5753 RS |
7672 | 2006-05-08 Roger Sayle <roger@eyesopen.com> |
7673 | ||
7674 | PR target/27158 | |
7675 | * reload.c (find_reloads_toplev): Only return the simplified SUBREG | |
7676 | of a reg_equiv_constant if the result is a legitimate constant. | |
7677 | ||
b81bd6c9 UB |
7678 | 2006-05-08 Uros Bizjak <uros@kss-loka.si> |
7679 | ||
7680 | PR target/27277 | |
7681 | * config/i386/i386.c (ix86_rtx_costs) [FLOAT_EXTEND]: For | |
7682 | standard 80387 constants, raise the cost to prevent | |
7683 | compress_float_constant() to generate load from memory. | |
7684 | ||
923d16d4 KH |
7685 | 2006-05-08 Kazu Hirata <kazu@codesourcery.com> |
7686 | ||
7687 | * config/arm/constraints.md (c): Fix a typo. | |
7688 | ||
bca50406 KH |
7689 | * see.c, tree-flow-inline.h, tree-phinodes.c: Fix comment |
7690 | typos. | |
7691 | ||
67a4b391 L |
7692 | 2006-05-07 H.J. Lu <hongjiu.lu@intel.com> |
7693 | ||
7694 | PR target/24879 | |
7695 | * config/i386/pmmintrin.h (_mm_monitor): Remove macro. Use | |
7696 | inline function. | |
7697 | (_mm_mwait): Likewise. | |
7698 | ||
7699 | * config/i386/sse.md (sse3_mwait): Replace "mwait\t%0, %1" with | |
7700 | "mwait". | |
7701 | (sse3_monitor): Make it 32bit only. | |
7702 | (sse3_monitor64): New. 64bit monitor. | |
7703 | ||
f7360901 VR |
7704 | 2006-05-07 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
7705 | ||
7706 | PR target/27421 | |
7707 | * config/i386/i386.c (classify_argument): Skip fields with invalid | |
7708 | types. | |
7709 | ||
18455d17 RG |
7710 | 2006-05-07 Richard Guenther <rguenther@suse.de> |
7711 | ||
7712 | PR tree-optimization/27409 | |
7713 | * tree-ssa-structalias.c (get_constraint_for_component_ref): | |
7714 | Do not try to find zero-sized subvars. | |
7715 | ||
ed52affe RG |
7716 | 2006-05-07 Richard Guenther <rguenther@suse.de> |
7717 | ||
7718 | PR tree-optimization/27136 | |
7719 | * tree-ssa-loop-niter.c (get_val_for): Correct function | |
7720 | comment, assert requirements. | |
7721 | (loop_niter_by_eval): Stop processing if the iterated | |
7722 | value did not simplify. | |
7723 | ||
ef5d0a89 MN |
7724 | 2006-05-07 Mircea Namolaru <namolaru@il.ibm.com> |
7725 | ||
e8366202 | 7726 | * opts.c (flag_see): remove its setting at -O3. |
90c92323 | 7727 | |
ce92b223 RE |
7728 | 2006-05-07 Richard Earnshaw <rearnsha@arm.com> |
7729 | ||
7730 | * genpeep.c (main): Make insn-peep.c depend on flags.h. | |
7731 | * arm/constraints.md: New file. | |
7732 | * arm.h (REG_CLASS_FROM_LETTER_P): Delete. | |
7733 | (CONST_OK_FOR_ARM_LETTER, CONST_OK_FOR_THUMB_LETTER) | |
7734 | (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_ARM_LETTER) | |
7735 | (CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT_STR_ARM) | |
7736 | (CONSTRAINT_LEN, EXTRA_CONSTRAINT_THUMB, EXTRA_CONSTRAINT_STR) | |
7737 | (EXTRA_MEMORY_CONSTRAINT): Likewise. | |
7738 | * arm.md: Include constraints.md. | |
7739 | (thumb_movsi_insn): Use satisfies_constraint_J. | |
7740 | (movhi, movqi): Use satisfies_constraint_I. | |
7741 | ||
ed1a08a7 AS |
7742 | 2006-04-29 Anatoly Sokolov <aesok@post.ru> |
7743 | ||
e8366202 | 7744 | * config/avr/avr.h (CRT_BINUTILS_SPECS): Fixed crt* file name |
ed1a08a7 AS |
7745 | for atmeg a645 device. |
7746 | ||
75bfa678 RG |
7747 | 2006-05-06 Richard Guenther <rguenther@suse.de> |
7748 | ||
7749 | PR tree-optimization/27151 | |
7750 | * tree-vect-transform.c (vectorizable_condition): Punt on | |
7751 | values that have a different type than the condition. | |
7752 | ||
8d8d1a28 AH |
7753 | 2006-05-03 Aldy Hernandez <aldyh@redhat.com> |
7754 | ||
7755 | PR/21391 | |
7756 | * c-parser.c (c_parser_cast_expression): Only insert casts into | |
7757 | hash table if pointer. | |
7758 | * function.c (used_types_insert_helper): Rename from | |
7759 | used_types_insert. | |
7760 | (used_types_insert): Call used_types_insert_helper. | |
7761 | * function.h (used_types_insert): Accept only one argument. | |
7762 | ||
edd54d25 DE |
7763 | 2006-05-05 David Edelsohn <edesohn@gnu.org> |
7764 | ||
7765 | * config/rs6000/rs6000.md: Mark all "X" constraints for clobbered | |
7766 | scratch with output modifier. | |
7767 | ||
1958f718 DE |
7768 | 2006-05-04 David Edelsohn <edelsohn@gnu.org> |
7769 | ||
7770 | PR target/26481 | |
7771 | * config/rs6000/rs6000.md (stmsi_power): Mark clobber constraint | |
7772 | with output modifier. | |
7773 | ||
05431b85 KH |
7774 | 2006-05-04 Richard Sandiford <richard@codesourcery.com> |
7775 | ||
7776 | PR target/26765 | |
7777 | * config/mips/mips.c (mips_symbolic_address_p): Return true | |
7778 | for SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL, SYMBOL_TPREL, | |
7779 | SYMBOL_GOTTPREL, and SYMBOL_TLS. | |
7780 | ||
d818832c RG |
7781 | 2006-05-04 Richard Guenther <rguenther@suse.de> |
7782 | ||
7783 | PR tree-optimization/14287 | |
7784 | PR tree-optimization/14844 | |
7785 | PR tree-optimization/19792 | |
7786 | PR tree-optimization/21608 | |
7787 | PR tree-optimization/27090 | |
7788 | * tree-ssa-pre.c (try_combine_conversion): New function. | |
7789 | (compute_avail): After constructing the value-handle | |
7790 | expression, use try_combine_conversion to combine NOP_EXPRs | |
7791 | with previous value-handle expressions and use the result if it | |
7792 | is available. | |
7793 | ||
6c4b5a19 JM |
7794 | 2006-05-04 Joseph S. Myers <joseph@codesourcery.com> |
7795 | ||
7796 | * config/mips/linux64.h (DWARF_OFFSET_SIZE): Remove. | |
7797 | ||
69fb1284 JH |
7798 | 2006-05-04 Jan Hubicka <jh@suse.cz> |
7799 | ||
7800 | PR middle-end/25962 | |
7801 | * cgraphunit.c (verify_cgraph_node): Fix cgraph_hash testing. | |
7802 | ||
554006bd BS |
7803 | 2006-05-04 Bernd Schmidt <bernd.schmidt@analog.com> |
7804 | ||
7805 | * config/bfin/predicates.md (const01_rtx): Tell generator programs | |
7806 | that this only matches CONST_INTs. All users changed to VOIDmode | |
7807 | operands. | |
7808 | ||
42da70b7 BS |
7809 | * config/bfin/bfin.c: Include "optabs.h". |
7810 | (bfin_rtx_costs): Some costs for vector operations, to allow combine | |
7811 | to do more work. | |
7812 | (enum bfin_builtins): Add a number of fractional and vector builtins. | |
7813 | (bfin_init_builtins): Likewise. | |
7814 | (struct builtin_description, bdesc_2arg, bdesc_1arg): New. | |
7815 | (safe_vector_operand, bfin_expand_binop_builtin, | |
7816 | bfin_expand_unop_builtin): New functions. | |
7817 | (bfin_expand_builtin): Handle the new builtins. | |
7818 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define | |
7819 | __ADSPBLACKFIN__. | |
7820 | ||
8cd37d0b RL |
7821 | 2006-05-04 Leehod Baruch <leehod@il.ibm.com> |
7822 | ||
e8366202 MS |
7823 | * see.c: New file. |
7824 | * Makefile.in (OBJS-common): Add see.o. | |
7825 | (see.o): Add dependencies. | |
7826 | * common.opt (fsee): New flag for the see optimization was added. | |
7827 | * opts.c (flag_see): Initialized. | |
7828 | * passes.c (init_optimization_passes, pass_see): New pass. | |
7829 | * rtl.h (see_main): Declaration as extern. | |
7830 | * timevar.def (TV_SEE): New. | |
7831 | * tree-pass.h (pass_see): Declaration as extern. | |
7832 | * invoke.texi (-fsee): Document. | |
7833 | * recog.c (validate_simplify_insn): New function. | |
7834 | * recog.h (validate_simplify_insn): Declaration as extern. | |
7835 | * df-problems.c (df_chain_dump): Check for NULL. | |
8cd37d0b RL |
7836 | |
7837 | 2006-05-04 Kenneth Zadeck <zadeck@naturalbridge.com> | |
e8366202 | 7838 | Daniel Berlin <dberlin@dberlin.org> |
8cd37d0b | 7839 | |
e8366202 MS |
7840 | * cfgrtl.c (insert_insn_bb_end_new): New function. |
7841 | * basic-block.h (insert_insn_bb_end_new): Declaration as extern. | |
8cd37d0b RL |
7842 | |
7843 | 2006-05-04 Leehod Baruch <leehod.baruch@weizmann.ac.il> | |
7844 | ||
e8366202 MS |
7845 | * df.h (struct web_entry): Moved from web.c. |
7846 | (union_defs): Declaration as extern. | |
7847 | (unionfind_root): Likewise. | |
7848 | (unionfind_union): Likewise. | |
7849 | * web.c (struct web_entry): Moved to df.h. | |
7850 | (unionfind_root): Remove static declaration. | |
7851 | (unionfind_union): Likewise. | |
7852 | (union_defs): Likewise and generalize to use callback function. | |
7853 | (web_main): Update arguments for union_defs function call. | |
8cd37d0b | 7854 | |
23ba9627 RG |
7855 | 2006-05-04 Richard Guenther <rguenther@suse.de> |
7856 | ||
7857 | PR tree-optimization/26447 | |
7858 | * tree-ssa-pre.c (realify_fake_stores): For necessary loads | |
7859 | produce SSA_NAME copies before the store stmt to avoid | |
7860 | breaking exception handling. | |
7861 | ||
f6a5ffbf JJ |
7862 | 2006-05-04 Jakub Jelinek <jakub@redhat.com> |
7863 | ||
7864 | PR middle-end/27388 | |
7865 | * gimplify.c (omp_is_private): If var is shared in some outer context, | |
7866 | return false instead of true. Stop searching on parallel context | |
7867 | boundary. | |
7868 | ||
0ef1a537 AO |
7869 | 2006-05-03 Alexandre Oliva <aoliva@redhat.com> |
7870 | ||
7871 | PR java/8260 | |
7872 | * coverage.c: Use get_gcov_unsigned_t() instead of | |
7873 | unsigned_type_node all over. | |
7874 | ||
afd83fe4 AM |
7875 | 2006-05-02 Andrew MacLeod <amacleod@redhat.com> |
7876 | ||
7877 | PR tree-optimization/27381 | |
90c92323 | 7878 | * tree-phinodes.c (remove_phi_arg_num): When moving a phi argument, |
afd83fe4 | 7879 | maintain the same immediate_use links. |
90c92323 | 7880 | * tree-ssa-operands.c (dump_immediate_uses_for): Show iteration marker |
afd83fe4 AM |
7881 | node rather than segfaulting. |
7882 | ||
693d710f JJ |
7883 | 2006-05-03 Jakub Jelinek <jakub@redhat.com> |
7884 | ||
7885 | PR fortran/27395 | |
7886 | * gimplify.c (gimplify_scan_omp_clauses): Compare OMP_CLAUSE_CODE | |
7887 | rather than TREE_CODE to OMP_CLAUSE_REDUCTION. Set also GOVD_SEEN | |
7888 | bit for OMP_CLAUSE_REDUCTION_PLACEHOLDER. | |
7889 | ||
832a0c1d DB |
7890 | 2006-05-02 Daniel Berlin <dberlin@dberlin.org> |
7891 | ||
7892 | Fix PR tree-optimization/26626 | |
7893 | * tree-ssa-structalias.c (compute_points_to_sets): For now, solve | |
7894 | always. | |
7895 | * tree-ssa-operands.c (access_can_touch_variable): Allow | |
7896 | typecasting through union pointers. | |
7897 | ||
8ca5b2a2 JJ |
7898 | 2006-05-02 Jakub Jelinek <jakub@redhat.com> |
7899 | ||
7900 | PR c++/26943 | |
7901 | * omp-low.c (maybe_lookup_decl_in_outer_ctx): New function. | |
7902 | (build_outer_var_ref): Use maybe_lookup_decl_in_outer_ctx | |
7903 | to find if var will be a global variable even in the nested context. | |
7904 | (omp_copy_decl): Only check for global variable at the end, it might | |
7905 | be overridden in outer contexts. | |
7906 | (scan_sharing_clauses): For global variables don't create a field. | |
7907 | (lower_rec_input_clauses): Do nothing for global shared variables. | |
7908 | Emit a barrier at the end of ILIST if there were any decls in both | |
7909 | firstprivate and lastprivate clauses. | |
7910 | (lower_send_clauses): Do nothing for global variables except for | |
7911 | COPYIN. | |
7912 | ||
a3428e07 ZD |
7913 | 2006-05-02 Zdenek Dvorak <dvorakz@suse.cz> |
7914 | ||
7915 | * tree.c (unsigned_type_for, signed_type_for): Make sure a type | |
7916 | of the correct signedness is returned. | |
7917 | ||
26ef4301 JL |
7918 | 2006-05-02 Jeff Law <law@redhat.com> |
7919 | ||
7920 | PR tree-optimization/27364 | |
7921 | * tree-vrp.c (vrp_int_const_binop): Fix detection of overflow from | |
7922 | multiply expressions. | |
7923 | ||
263bb8fb TT |
7924 | 2006-05-02 Tom Tromey <tromey@redhat.com> |
7925 | ||
7926 | * tree-flow-inline.h (op_iter_init_phiuse): Fixed typo. | |
7927 | ||
54b9e939 KH |
7928 | 2006-05-02 Kazu Hirata <kazu@codesourcery.com> |
7929 | ||
7930 | PR target/27387 | |
7931 | * arm.c (arm_output_mi_thunk): Use pc-relative addressing when | |
7932 | -mthumb -fPIC are used. | |
7933 | ||
2297e173 SS |
7934 | 2006-05-02 Stanislaw Skowronek <skylark@linux-mips.org> |
7935 | Joshua Kinard <kumba@gentoo.org> | |
d541888b SS |
7936 | |
7937 | PR target/25871 | |
a1d1988f | 7938 | * config/mips/mips.h (TRAMPOLINE_TEMPLATE): Avoid 32-bit moves |
d541888b SS |
7939 | with 64-bit pointers. |
7940 | ||
7a7017bc PB |
7941 | 2006-05-02 Paul Brook <paul@codesourcery.com> |
7942 | ||
7943 | * config/arm/arm.c (add_minipool_forward_ref): Check if insn | |
7944 | and pool overlap. | |
7945 | (create_fix_barrier): Check that a suitable barrier location is | |
7946 | found. | |
7947 | (arm_reorg): Include ftmp->address in allowable range of addresses. | |
7948 | ||
3beef5cb DB |
7949 | 2006-05-02 David Billinghurst <David.Billinghurst@riotinto.com> |
7950 | ||
7951 | PR ada/27366 | |
90c92323 | 7952 | * ada/env.c (__gnat_clearenv): Use unsetenv() to clear environment |
7a7017bc | 7953 | on Cygwin. |
3beef5cb | 7954 | |
d5d86fde JJ |
7955 | 2006-05-02 Jakub Jelinek <jakub@redhat.com> |
7956 | ||
077b0dfb JJ |
7957 | PR middle-end/27337 |
7958 | * gimplify.c (gimplify_scan_omp_clauses): Handle INDIRECT_REF | |
7959 | around RESULT_DECL for result passed by reference. | |
7960 | (gimplify_expr): Call omp_notice_variable when RESULT_DECL is seen. | |
7961 | * omp-low.c (use_pointer_for_field): Don't look at | |
7962 | DECL_HAS_VALUE_EXPR_P for RESULT_DECLs. | |
7963 | (scan_omp_1): Call remap_decl on RESULT_DECLs. | |
7964 | (lower_rec_input_clauses): Don't allocate VLA memory for the second | |
7965 | time or var for passing by reference for | |
7966 | OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE clauses. Allow creation of | |
7967 | TREE_ADDRESSABLE variables when passing by reference. | |
7968 | ||
7969 | * omp-low.c (dump_omp_region): Fix output formatting. | |
7970 | ||
2aee3e57 JJ |
7971 | PR middle-end/27328 |
7972 | * omp-low.c (remove_exit_barrier): Handle NULL exit_bb. | |
7973 | (expand_omp_parallel): Likewise. | |
7974 | * tree-cfg.c (move_sese_region_to_fn): Likewise. | |
7975 | ||
4a31b7ee JJ |
7976 | PR middle-end/27325 |
7977 | * omp-low.c (lower_omp_sections): Call maybe_catch_exception | |
7978 | on statement list containing also constructors and destructors. | |
7979 | (lower_omp_single, lower_omp_for, lower_omp_parallel): Likewise. | |
7980 | ||
d5d86fde JJ |
7981 | PR middle-end/27310 |
7982 | * except.c (duplicate_eh_regions): Fix clearing of | |
7983 | cfun->eh->region_array entries. | |
7984 | ||
c15b113b DD |
7985 | 2006-05-01 DJ Delorie <dj@redhat.com> |
7986 | ||
7987 | * configure.ac (gcc_cv_nm): Don't use an in-tree nm if | |
7988 | build!=host. | |
7989 | (gcc_cv_objdump): Likewise. | |
7990 | * configure: Regenerated. | |
7991 | ||
94634f14 KH |
7992 | 2006-05-01 Kazu Hirata <kazu@codesourcery.com> |
7993 | ||
7994 | PR target/27374 | |
7995 | * config/arm/vfp.md (*arm_movdi_vfp): Correct the output | |
7996 | templates for case 3 and 4. | |
7997 | ||
2d5bc016 DD |
7998 | 2006-05-01 DJ Delorie <dj@redhat.com> |
7999 | ||
8000 | * vec.c: Include bconfig.h when appropriate. | |
8001 | * Makefile.in (build/vec.o): Adjust dependencies. | |
8002 | * mkconfig.sh: Make sure config.h isn't used for build machine | |
8003 | compiles. | |
8004 | ||
2ce79879 ZD |
8005 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
8006 | ||
8007 | * tree-into-ssa.c (phis_to_rewrite, blocks_with_phis_to_rewrite): New | |
8008 | variables. | |
8009 | (mark_phi_for_rewrite): New function. | |
8010 | (insert_phi_nodes_for, mark_use_interesting): Call | |
8011 | mark_phi_for_rewrite. | |
8012 | (rewrite_update_phi_arguments): Traverse only phis in phis_to_rewrite. | |
8013 | (update_ssa): Initialize and free phis_to_rewrite. | |
8014 | ||
ed541ddb ZD |
8015 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
8016 | ||
8017 | PR rtl-optimization/27291 | |
8018 | * loop-doloop.c (add_test, doloop_modify): Handle the case condition is | |
8019 | folded to a constant. | |
8020 | ||
dcccd88d ZD |
8021 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
8022 | ||
8023 | PR tree-optimization/27283 | |
8024 | * tree-ssa-loop-ivopts.c (struct nfe_cache_elt): Store just trees, | |
8025 | not whole # of iteration descriptions. | |
8026 | (niter_for_exit): Return just # of iterations. Fail if # of iterations | |
8027 | uses abnormal ssa name. | |
8028 | (niter_for_single_dom_exit): Ditto. | |
8029 | (find_induction_variables, may_eliminate_iv): Expect niter_for_exit to | |
8030 | return just the number of iterations. | |
8031 | ||
763f4527 ZD |
8032 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
8033 | ||
8034 | PR tree-optimization/27144 | |
8035 | * tree-ssa-loop-niter.c (derive_constant_upper_bound): New function. | |
8036 | (record_estimate): Only record constant upper bound. | |
8037 | (infer_loop_bounds_from_undefined): Call | |
8038 | compute_estimated_nb_iterations just once. | |
8039 | (proved_non_wrapping_p): Renamed to ... | |
8040 | (n_of_executions_at_most): ... this. Expect bound to be a constant. | |
8041 | (convert_step_widening, scev_probably_wraps_p): Call | |
8042 | n_of_executions_at_most instead of proved_non_wrapping_p. | |
8043 | (substitute_in_loop_info): Do not replace values in bounds. | |
8044 | * cfgloop.h (struct nb_iter_bound): Remove "additional" field. Update | |
8045 | comments. | |
8046 | ||
2a83cc52 RH |
8047 | 2006-05-01 Richard Henderson <rth@redhat.com> |
8048 | ||
8049 | PR c/27358 | |
8050 | * c-parser.c (c_parser_skip_to_end_of_block_or_statement): Move after | |
8051 | c_parser_skip_to_pragma_eol. Convert to switch statement. Handle | |
8052 | CPP_PRAGMA. | |
8053 | ||
0f57299d RS |
8054 | 2006-05-01 Roger Sayle <roger@eyesopen.com> |
8055 | ||
8056 | * c-typeck.c (parser_build_binary_op): Don't call the function | |
8057 | unsigned_conversion_warning to spot operand/result type overflow. | |
8058 | (build_binary_op): Instead, call convert_and_check instead of | |
8059 | convert to report the problem when the operands are promoted. | |
8060 | * c-common.c (unsigned_conversion_warning): Make static. | |
8061 | * c-common.h (unsigned_conversion_warning): Delete prototype. | |
8062 | ||
ea643120 RG |
8063 | 2006-05-01 Richard Guenther <rguenther@suse.de> |
8064 | ||
8065 | PR tree-optimization/26726 | |
8066 | * tree-ssa-loop-ivopts.c (idx_find_step): Mark source of the | |
8067 | problem ... | |
8068 | (find_interesting_uses_address): ... we work around here | |
8069 | by folding INDIRECT_REFs in the substituted base. | |
8070 | ||
444e96af DN |
8071 | 2006-05-01 Diego Novillo <dnovillo@redhat.com> |
8072 | ||
8073 | * omp-low.c (dump_omp_region): Add newlines. | |
8074 | ||
71834ad3 RS |
8075 | 2006-04-30 Roger Sayle <roger@eyesopen.com> |
8076 | ||
8077 | * common.opt (Woverflow): New command line option. | |
8078 | * c-common.c (constant_expression_warning): Check warn_overflow. | |
8079 | (overflow_waring): Pass OPT_Woverflow to warning. | |
8080 | (unsigned_conversion_warning): Likewise. | |
8081 | (convert_and_check): Likewise. | |
8082 | * doc/invoke.texi: Document new command line option. | |
8083 | ||
194c524a DE |
8084 | 2006-04-30 David Edelsohn <edelsohn@gnu.org> |
8085 | ||
8086 | * config/rs6000/rs6000.c (rs6000_override_options): Enable | |
8087 | TARGET_NO_FP_IN_TOC for section anchors. | |
8088 | (optimization_options): Enable section anchors for all | |
8089 | non-"Objective" languages. | |
8090 | ||
4f8bdef9 EC |
8091 | 2006-04-28 Eric Christopher <echristo@apple.com> |
8092 | ||
8093 | * config/darwin-c.c (darwin_ms_struct): Move this | |
8094 | (darwin_set_default_type_attributes): and this... | |
8095 | * config/darwin.c: ... here. | |
8096 | * config/darwin.h (darwin_ms_struct): Declare. | |
8097 | ||
a5f84464 AM |
8098 | 2006-04-28 Andrew MacLeod <amacleod@redhat.com> |
8099 | ||
8100 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Fix assert clause. | |
8101 | ||
a0f0ab9f RS |
8102 | 2006-04-28 Roger Sayle <roger@eyesopen.com> |
8103 | ||
8104 | PR c/25309 | |
8105 | * c-typeck.c (struct spelling): Make I an unsigned HOST_WIDE_INT. | |
8106 | (push_array_bounds): Delete prototype. Change BOUNDS argument to | |
8107 | an unsigned HOST_WIDE_INT. | |
8108 | (print_spelling): Use HOST_WIDE_INT_PRINT_UNSIGNED to output the | |
8109 | array index. | |
8110 | (really_start_incremental_init): No need to call convert because | |
8111 | bitsize_zero_node is already of type bitsizetype. | |
8112 | (push_init_level): Extract the value of constructor_index as an | |
8113 | unsigned HOST_WIDE_INT quantity, using tree_low_cst. | |
8114 | (process_init_element): Likewise. | |
8115 | ||
c7370b83 JM |
8116 | 2006-04-28 Joseph S. Myers <joseph@codesourcery.com> |
8117 | ||
8118 | * gcc.c (process_command): Add program name to GCC_EXEC_PREFIX | |
8119 | value before passing to make_relative_prefix. | |
8120 | ||
bb6a0ee1 AM |
8121 | 2006-04-28 Alan Modra <amodra@bigpond.net.au> |
8122 | ||
8123 | PR middle-end/27260 | |
8124 | * builtins.c (expand_builtin_memset): Expand val in original mode. | |
8125 | ||
16d6f994 EC |
8126 | 2006-04-27 Eric Christopher <echristo@apple.com> |
8127 | ||
8128 | * target-def.h (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Bracket | |
8129 | with #ifndef/#endif. | |
8130 | * config/darwin-c.c (darwin_ms_struct): New. | |
8131 | (darwin_pragma_ms_struct): Ditto. | |
8132 | (darwin_set_default_type_attributes): Ditto. | |
8133 | * config/darwin-protos.h (darwin_pragma_ms_struct): Declare. | |
8134 | * config/darwin.h (DARWIN_REGISTER_TARGET_PRAGMAS): | |
8135 | Register ms_struct pragma. | |
8136 | * config/i386/darwin.h (REGISTER_TARGET_PRAGMAS): Declare. | |
8137 | (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Ditto. | |
8138 | * config/rs6000/rs6000.c (rs6000_set_default_type_attributes): Call | |
8139 | darwin_set_default_type_attributes if TARGET_MACHO. | |
8140 | ||
6c00f606 AM |
8141 | 2006-04-27 Andrew MacLeod <amacleod@redhat.com> |
8142 | ||
8143 | PR tree-optimization/26854 | |
8144 | * tree-vrp.c (remove_range_assertions): Use new Immuse iterator. | |
8145 | * doc/tree-ssa.texi: Update immuse iterator documentation. | |
8146 | * tree-ssa-math-opts.c (execute_cse_reciprocals_1): Use new iterator. | |
8147 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Use new iterator. | |
8148 | * tree-flow-inline.h (end_safe_imm_use_traverse, end_safe_imm_use_p, | |
8149 | first_safe_imm_use, next_safe_imm_use): Remove. | |
8150 | (end_imm_use_stmt_p): New. Check for end of immuse stmt traversal. | |
8151 | (end_imm_use_stmt_traverse): New. Terminate immuse stmt traversal. | |
8152 | (move_use_after_head): New. Helper function to sort immuses in a stmt. | |
8153 | (link_use_stmts_after): New. Link all immuses in a stmt consescutively. | |
8154 | (first_imm_use_stmt): New. Get first stmt in an immuse list. | |
8155 | (next_imm_use_stmt): New. Get next stmt in an immuse list. | |
8156 | (first_imm_use_on_stmt): New. Get first immuse on a stmt. | |
8157 | (end_imm_use_on_stmt_p): New. Check for end of immuses on a stmt. | |
8158 | (next_imm_use_on_stmt): New. Move to next immuse on a stmt. | |
8159 | * tree-ssa-forwprop.c (forward_propagate_addr_expr): Use new iterator. | |
8160 | * lambda-code.c (lambda_loopnest_to_gcc_loopnest): Use new iterator. | |
8161 | (perfect_nestify): Use new iterator. | |
16d6f994 | 8162 | * tree-vect-transform.c (vect_create_epilog_for_reduction): Use new |
6c00f606 AM |
8163 | iterator. |
8164 | * tree-flow.h (struct immediate_use_iterator_d): Add comments. | |
8165 | (next_imm_name): New field in struct immediate_use_iterator_d. | |
8166 | (FOR_EACH_IMM_USE_SAFE, BREAK_FROM_SAFE_IMM_USE): Remove. | |
16d6f994 | 8167 | (FOR_EACH_IMM_USE_STMT, BREAK_FROM_IMM_USE_STMT, |
6c00f606 AM |
8168 | FOR_EACH_IMM_USE_ON_STMT): New immediate use iterator macros. |
8169 | * tree-cfg.c (replace_uses_by): Use new iterator. | |
8170 | * tree-ssa-threadedge.c (lhs_of_dominating_assert): Use new iterator. | |
8171 | * tree-ssa-operands.c (correct_use_link): Remove. | |
8172 | (finalize_ssa_use_ops): No longer call correct_use_link. | |
8173 | ||
9613eaff SH |
8174 | 2006-04-27 Stuart Hastings <stuart@apple.com> |
8175 | ||
8176 | * config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New. | |
8177 | * config/t-darwin (crt3.o): Use it. | |
8178 | * config/rs6000/rs6000.c (rs6000_initialize_trampoline): Remove | |
8179 | 'pmode', use Pmode instead of SImode for SYMBOL_REF. | |
8180 | * config/rs6000/rs6000.md (call_indirect_nonlocal_sysv, | |
8181 | call_nonlocal_sysv, call_value_indirect_nonlocal_sysv, | |
8182 | call_value_nonlocal_sysv): Suffix with the "P" macro for 32/64 | |
8183 | support. | |
16d6f994 | 8184 | |
135c2bd4 RS |
8185 | 2006-04-27 Roger Sayle <roger@eyesopen.com> |
8186 | ||
8187 | * expmed.c (store_fixed_bit_field): If we're not optimizing for | |
8188 | size, force the intermediate into a new pseudo rather instead of | |
8189 | performing both a bitwise AND and a bitwise IOR in memory. | |
8190 | ||
921b02cd RG |
8191 | 2006-04-27 Richard Guenther <rguenther@suse.de> |
8192 | ||
8193 | PR rtl-optimization/26685 | |
8194 | * params.def (PARAM_MAX_CSE_INSNS): Correct typo that named | |
8195 | this one "max-flow-memory-locations". | |
8196 | ||
67ac6e63 RG |
8197 | 2006-04-27 Richard Guenther <rguenther@suse.de> |
8198 | ||
8199 | PR tree-optimization/25148 | |
8200 | * tree-vrp.c (compare_values): Remove code dealing with | |
8201 | comparisons against type min/max value. Honour overflow | |
8202 | and negative constants in code dealing with comparisons | |
8203 | of plus and minus expressions. | |
8204 | (value_inside_range): Use fold_binary with LE_EXPR and | |
8205 | GE_EXPR rather than compare_values. | |
8206 | ||
869170df DM |
8207 | 2006-04-27 Dirk Mueller <dmueller@suse.de> |
8208 | ||
8209 | * config/i386/xmmintrin.h (_mm_shuffle_pi16): Declare | |
8210 | prototype for SSE. | |
8211 | ||
3bf7d5e7 KZ |
8212 | 2006-04-26 Kenneth Zadeck <zadeck@naturalbridge.com> |
8213 | ||
8214 | * basic-block.h (safe_insert_insn_on_edge): Removed. | |
8215 | * cfgrtl.c (mark_killed_regs, safe_insert_insn_on_edge): Removed. | |
8216 | ||
7b282ff9 DE |
8217 | 2006-04-26 David Edelsohn <edelsohn@gnu.org> |
8218 | Paolo Bonzini <bonzini@gnu.org> | |
8219 | ||
8220 | PR middle-end/27282 | |
8221 | * combine.c (simplify_and_const_int_1): Use gen_int_mode. | |
8222 | (simplify_and_const_int): Same. | |
8223 | ||
44470433 AH |
8224 | 2006-04-26 Aldy Hernandez <aldyh@redhat.com> |
8225 | ||
e8366202 | 8226 | * tree-ssa-dse.c (dse_optimize_stmt): Remove unused variable USE. |
44470433 | 8227 | |
21a66e91 JJ |
8228 | 2006-04-26 Jakub Jelinek <jakub@redhat.com> |
8229 | ||
91b6c26d JJ |
8230 | PR c/26171 |
8231 | * cgraph.c (cgraph_varpool_finalize_decl): Don't call | |
8232 | cgraph_varpool_assemble_pending_decls if -fopenmp, unless | |
8233 | cgraph_global_info_ready. | |
8234 | ||
07ed51c9 JJ |
8235 | PR middle-end/26913 |
8236 | * tree-cfg.c (find_outermost_region_in_block): Handle RESX_EXPR. | |
8237 | ||
1562e1fe JJ |
8238 | PR c/25996 |
8239 | * c-parser.c (c_parser_omp_for_loop): Don't call c_finish_omp_for if | |
8240 | either decl or init is error_mark_node. | |
8241 | ||
21a66e91 JJ |
8242 | PR middle-end/25989 |
8243 | * tree-flow.h (struct omp_region): Add sched_kind. | |
8244 | * omp-low.c (expand_parallel_call): Use region->inner->sched_kind | |
8245 | instead of extracting omp for data. | |
8246 | (expand_omp_for): Save extracted sched_kind. | |
8247 | ||
f7acbf4c RS |
8248 | 2006-04-25 Roger Sayle <roger@eyesopen.com> |
8249 | ||
8250 | * expmed.c (store_bit_field): Also check whether the bitsize is | |
8251 | valid for the machine's "insv" instruction before moving the | |
8252 | target into a pseudo for use with the insv. | |
8253 | * config/i386/predicates.md (const8_operand): New predicate. | |
8254 | * config/i386/i386.md (extv, extzv, insv): Use the new | |
8255 | const8_operand predicate where appropriate. | |
8256 | ||
c9936427 DD |
8257 | 2006-04-25 DJ Delorie <dj@redhat.com> |
8258 | ||
8259 | * doc/install.texi (Specific): Clarify that this is not a list of | |
8260 | supported hosts or targets. | |
8261 | ||
c0c5d392 RS |
8262 | 2006-04-25 Richard Sandiford <richard@codesourcery.com> |
8263 | ||
8264 | PR rtl-optimization/26725 | |
8265 | * cfgrtl.c (rtl_redirect_edge_and_branch_force): Set the source | |
8266 | block's BB_DIRTY flag. | |
8267 | ||
d61772b2 GK |
8268 | 2006-04-25 Geoffrey Keating <geoffk@apple.com> |
8269 | ||
887dc802 GK |
8270 | * dwarf2out.c (size_of_locs): Don't fill dw_loc_addr if there |
8271 | are no branches. | |
8272 | ||
d61772b2 GK |
8273 | * dwarf2asm.c (dw2_asm_output_data): Don't generate RTL just |
8274 | to print an integer. | |
8275 | ||
d5fa3ec8 DE |
8276 | 2006-04-25 David Edelsohn <edelsohn@gnu.org> |
8277 | ||
8278 | * varasm.c (align_variable): New function. | |
8279 | (get_block_for_decl): Apply align_variable to DECL before | |
8280 | calculating section information. | |
8281 | (assemble_variable): Split out alignment computation. | |
8282 | ||
495db1a1 AK |
8283 | 2006-04-25 Andreas Krebbel <krebbel1@de.ibm.com> |
8284 | ||
8285 | * expmed.c (store_bit_field): Handle paradoxical subregs on big endian | |
8286 | machines. | |
8287 | ||
75d8b2d0 BS |
8288 | 2006-04-25 Bernd Schmidt <bernd.schmidt@analog.com> |
8289 | ||
8290 | * genmodes.c (make_vector_mode): Allow making VECTOR_MODE_INT of a | |
8291 | MODE_PARTIAL_INT mode. | |
8292 | * config/bfin/bfin-modes.def: Add V2PDI and V2SI. | |
8293 | * config/bfin/bfin.c (print_operand): Add macflag and mac/msu modifiers | |
8294 | for CONST_INTs. | |
8295 | (hard_regno_mode_ok): V2PDImode is ok for accumulators. | |
8296 | * config/bfin/bfin.h (CLASS_MAX_NREGS, HARD_REGNO_NREGS): Handle | |
8297 | V2PDImode. | |
8298 | * config/bfin/predicates.md (const01_operand, vec_shift_operand): | |
8299 | New predicates. | |
8300 | * config/bfin/bfin.md (UNSPEC_MUL_WITH_FLAG, UNSPEC_MAC_WITH_FLAG): | |
8301 | New constants. | |
8302 | (MACFLAG_NONE, MACFLAG_T, MACFLAG_FU, MACFLAG_TFU, MACFLAG_IS, | |
8303 | MACFLAG_IU, MACFLAG_W32, MACFLAG_M, MACFLAG_S2RND, MACFLAG_ISS2, | |
8304 | MACFLAG_IH): Likewise. | |
8305 | (movstricthi_1): Renamed from "*movstricthi". | |
8306 | (load_accumulator, load_accumulator_pair, movsi_insv, insv, | |
8307 | ssaddsi3, sssubsi3, ssnegsi2, signbitssi2, smaxhi3, sminhi3, | |
8308 | abshi2, neghi2, ssneghi2, signbitshi2, movhi_low2high, | |
8309 | movhi_high2high, movhi_low2low, movhi_high2low, movhiv2hi_low, | |
8310 | movhiv2hi_high, composev2hi, movv2hi_hi, movv2hi_hi_low, | |
8311 | movv2hi_hi_high, ssaddhi3, sssubhi3, ssaddv2hi3, sssubv2hi3, | |
8312 | addsubv2hi3, subaddv2hi3, ssaddsubv2hi3, sssubaddv2hi3, | |
8313 | sublohiv2hi3, subhilov2hi3, sssublohiv2hi3, sssubhilov2hi3, | |
8314 | addlohiv2hi3, addhilov2hi3, ssaddlohiv2hi3, ssaddhilov2hi3, | |
8315 | mulhisi_ll, mulhisi_lh, mulhisi_hl, mulhisi_hh, ssnegv2hi2, | |
8316 | ssashiftv2hi3, ssashifthi3, lshiftv2hi3, lshifthi3, packv2hi, | |
8317 | flag_mulhi, flag_mulhisi_parts, flag_machi, flag_machi_acconly, | |
8318 | flag_macinithi, flag_macinit1hi, flag_mulv2hi, flag_mulv2hi_parts, | |
8319 | flag_macv2hi_parts, flag_macv2hi_parts_acconly, | |
8320 | flag_macinitv2hi_parts, flag_macinit1v2hi_parts): New patterns. | |
8321 | ||
6d75cd5f BS |
8322 | * doc/rtl.texi (ss_ashift): Improve wording. |
8323 | ||
6f8d8ef0 GK |
8324 | 2006-04-24 Geoffrey Keating <geoffk@apple.com> |
8325 | ||
8326 | * dwarf2out.c (verify_marks_clear): New. | |
8327 | (prune_unused_types): Call verify_marks_clear initially, not | |
8328 | prune_unmark_dies. | |
8329 | ||
e551ad26 BS |
8330 | 2006-04-24 Bernd Schmidt <bernd.schmidt@analog.com> |
8331 | ||
8332 | * rtl.def (SS_ASHIFT, SS_NEG): New codes. | |
8333 | * doc/rtl.texi: Document them. | |
8334 | * simplify-rtx.c (simplify_unary_operation, | |
8335 | simplify_binary_operation_1): Don't abort when we see them. | |
8336 | ||
bfa11223 MM |
8337 | 2006-04-24 Mark Mitchell <mark@codesourcery.com> |
8338 | ||
8339 | Revert: | |
8340 | 2006-04-23 Mark Mitchell <mark@codesourcery.com> | |
8341 | * configure.ac: Completely disregard languages that are not | |
8342 | enabled. | |
8343 | * configure: Regenerated. | |
8344 | ||
d84b37b0 AP |
8345 | 2006-04-24 Andrew Pinski <pinskia@gcc.gnu.org> |
8346 | Richard Guenther <rguenther@suse.de> | |
8347 | ||
8348 | PR tree-optimization/27236 | |
8349 | * tree-inline.c (copy_body_r): Make sure to copy | |
8350 | TREE_THIS_VOLATILE flag. | |
8351 | ||
c0a3f887 RG |
8352 | 2006-04-24 Richard Guenther <rguenther@suse.de> |
8353 | ||
8354 | PR middle-end/26869 | |
8355 | * tree-complex.c (update_parameter_components): Don't handle | |
8356 | unused parameters which have no default def. | |
8357 | ||
72fa5e06 AP |
8358 | 2006-04-24 Andrew Pinski <pinskia@gcc.gnu.org> |
8359 | Richard Guenther <rguenther@suse.de> | |
8360 | ||
8361 | PR tree-optimization/27218 | |
8362 | * tree-inline.c (expand_call_inline): Strip useless type | |
8363 | conversions for the return slot address. | |
8364 | ||
0162f155 RG |
8365 | 2006-04-24 Richard Guenther <rguenther@suse.de> |
8366 | ||
8367 | * cfgloop.h (struct loops): Remove unused field array. Reorder | |
8368 | state after num. | |
8369 | (LOOP_PREFETCH): Remove. | |
8370 | ||
7e1584f8 RG |
8371 | 2006-04-24 Richard Guenther <rguenther@suse.de> |
8372 | ||
8373 | PR tree-optimization/22525 | |
8374 | * value-prof.c (tree_mod_pow2): Remove unnecessary temporary | |
8375 | variable, adjust types of generated expressions. | |
8376 | ||
d24b23bb L |
8377 | 2006-04-23 H.J. Lu <hongjiu.lu@intel.com> |
8378 | ||
8379 | * Makefile.in (c-convert.o): Add dependency on $(TARGET_H) | |
8380 | (tree-vect-patterns.o): Likewise. | |
8381 | (jump.o): Likewise. | |
8382 | (cselib.o): Likewise. | |
8383 | (loop-doloop.o): Likewise. | |
8384 | (regclass.o): Likewise. | |
8385 | (reload1.o): Likewise. | |
8386 | (explow.o): Replace target.h with $(TARGET_H). | |
8387 | (ipa-prop.o): Likewise. | |
8388 | (ipa-cp.o): Likewise. | |
8389 | (ipa-inline.o): Likewise. | |
8390 | (reorg.o): Likewise. | |
8391 | (reg-stack.o): Likewise. | |
8392 | ||
e8c3ff97 EB |
8393 | 2006-04-23 Eric Botcazou <ebotcazou@adacore.com> |
8394 | ||
8395 | * tree-tailcall.c (pass_tail_recursion): Use gate_tail_calls too. | |
8396 | ||
38a4afee MM |
8397 | 2006-04-23 Mark Mitchell <mark@codesourcery.com> |
8398 | ||
bfa11223 MM |
8399 | * print-tree.c (print_node): Print DECL_BIT_FIELD_TYPE. |
8400 | ||
8401 | * configure.ac: Completely disregard languages that are not | |
8402 | enabled. | |
8403 | * configure: Regenerated. | |
8404 | ||
38a4afee MM |
8405 | PR c++/26534 |
8406 | * c-common.h (c_build_bitfield_integer_type): Declare. | |
8407 | * c-decl.c (c_build_bitfield_integer_type): Move to ... | |
8408 | * c-common.c (c_build_bitfield_integer_type): ... here. | |
8409 | ||
acb188c1 RS |
8410 | 2006-04-23 Roger Sayle <roger@eyesopen.com> |
8411 | ||
8412 | PR target/21283 | |
8413 | * config/fr30/fr30.md (define_split): Avoid calling gen_lowpart on | |
8414 | a SImode SUBREG of a floating point register after no_new_pseudos. | |
8415 | ||
a02ee5b2 RS |
8416 | 2006-04-23 Roger Sayle <roger@eyesopen.com> |
8417 | ||
8418 | * config/fr30/fr30.md (addsi_small_int): Use REGNO_PTR_FRAME_P to | |
8419 | identify potentially eliminable registers to additionally catch | |
8420 | VIRTUAL_INCOMING_ARGS_REGNUM. | |
8421 | (addsi3): Update the conditions on when to use addsi_small_int. | |
8422 | ||
c21242e8 RS |
8423 | 2006-04-23 Roger Sayle <roger@eyesopen.com> |
8424 | ||
8425 | PR target/16641 | |
8426 | * config/fr30/fr30.h (GO_IF_LEGITIMATE_ADDRESS): Check REGNO for | |
8427 | STACK_POINTER_RTX and FRAME_POINTER_RTX instead of comparing the | |
8428 | rtx to stack_pointer_rtx or frame_pointer_rtx directly. | |
8429 | ||
1464eeb8 EB |
8430 | 2006-04-23 Eric Botcazou <ebotcazou@adacore.com> |
8431 | ||
8432 | * fold-const.c (range_predecessor): Use operand_equal_p | |
8433 | as the predicate for equality. | |
8434 | (range_successor): Likewise. | |
8435 | ||
9542abd3 KH |
8436 | 2006-04-22 Kazu Hirata <kazu@codesourcery.com> |
8437 | ||
8438 | Revert: | |
8439 | * config/soft-fp/op-common.h: Fix a typo. | |
8440 | ||
110c4563 FCE |
8441 | 2006-04-22 Frank Ch. Eigler <fche@redhat.com> |
8442 | ||
8443 | PR libmudflap/26864 | |
8444 | * common.opt (flag_mudflap_threads): Overload flag_mudflap. | |
8445 | * tree-mudflap.c (flag_mudflap_threads): Derive from flag_mudflap. | |
8446 | ||
66a4ad37 KH |
8447 | 2006-04-22 Kazu Hirata <kazu@codesourcery.com> |
8448 | ||
8449 | * config/soft-fp/op-common.h, double-int.h, tree-ssa-dom.c: | |
8450 | Fix comment typos. | |
8451 | * doc/tm.texi: Fix a typo. | |
8452 | ||
d6eeb3ba GK |
8453 | 2006-04-21 Geoffrey Keating <geoffk@apple.com> |
8454 | ||
8455 | * dwarf2out.c (struct die_struct): Document that die_sib makes | |
8456 | a circular linked list. | |
8457 | (FOR_EACH_CHILD): New. | |
8458 | (reverse_die_lists): Delete. | |
8459 | (reverse_all_dies): Delete. | |
8460 | (add_dwarf_attr): Correct documentation. | |
8461 | (remove_child_with_prev): New. | |
8462 | (remove_child_TAG): Update for change to die_struct, use | |
8463 | remove_child_with_prev. | |
8464 | (add_child_die): Update for change to die_struct. | |
8465 | (splice_child_die): Use remove_child_with_prev and add_child_die. | |
8466 | (print_die): Use FOR_EACH_CHILD. | |
8467 | (die_checksum): Likewise. | |
8468 | (assign_symbol_names): Likewise. | |
8469 | (output_location_lists): Likewise. | |
8470 | (build_abbrev_table): Likewise. | |
8471 | (calc_die_sizes): Likewise. | |
8472 | (mark_dies): Likewise. | |
8473 | (unmark_dies): Likewise. | |
8474 | (unmark_all_dies): Likewise. | |
8475 | (output_die): Likewise. | |
8476 | (prune_unused_types_mark): Likewise. | |
8477 | (prune_unused_types_walk): Likewise. | |
8478 | (same_die_p): Update for change to die_struct. | |
8479 | (break_out_includes): Likewise. | |
8480 | (prune_unused_types_prune): Likewise. | |
8481 | (add_sibling_attributes): Use FOR_EACH_CHILD, simplify logic. | |
8482 | (prune_unmark_dies): Use FOR_EACH_CHILD, don't clear die_mark if | |
8483 | it's already clear. | |
8484 | (dwarf2out_finish): Don't call reverse_all_dies. | |
8485 | ||
7a0b46c9 EC |
8486 | 2006-04-21 Eric Christopher <echristo@apple.com> |
8487 | ||
8488 | * df-core.c, tree-outof-ssa.c, config/i386/i386.c: Fix typos | |
8489 | in comments and function names. | |
8490 | ||
5d5e98dc VR |
8491 | 2006-04-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
8492 | ||
f01da1a5 VR |
8493 | PR c/25875 |
8494 | * c-typeck.c (digest_init): Robustify. | |
8495 | ||
5d5e98dc VR |
8496 | * c-typeck.c (pop_init_level): Simplify. |
8497 | ||
3144998a SE |
8498 | 2006-04-21 Steve Ellcey <sje@cup.hp.com> |
8499 | ||
8500 | * config/pa/t-pa64: Add dependencies on $(GCC_PASSES). | |
8501 | ||
87b24aaf PB |
8502 | 2006-04-21 Paul Brook <paul@codesourcery.com> |
8503 | ||
8504 | * config/arm/arm.c (arm_override_options): Error on iWMMXt and | |
8505 | hardware floating point. | |
8506 | ||
e3604432 DE |
8507 | 2006-04-21 David Edelsohn <edelsohn@gnu.org> |
8508 | ||
8509 | * config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Add sfp to | |
8510 | NON_FLOAT_REGS. | |
8511 | ||
15eaa78f NC |
8512 | 2006-04-21 Nick Clifton <nickc@redhat.com> |
8513 | ||
8514 | * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Include | |
8515 | OPT_EXTRA_PARTS. | |
8516 | ||
56438901 AM |
8517 | 2006-04-21 Alan Modra <amodra@bigpond.net.au> |
8518 | ||
8519 | PR target/27230 | |
8520 | * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use | |
8521 | C++ lang type in traceback table for Objective-C++. | |
8522 | ||
8523 | * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Update comment. | |
8524 | ||
a46cec70 L |
8525 | 2006-04-20 H.J. Lu <hongjiu.lu@intel.com> |
8526 | ||
8527 | * config/i386/i386.c (asm_preferred_eh_data_format): Reformat. | |
8528 | ||
06866a73 VR |
8529 | 2006-04-20 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
8530 | ||
8531 | PR mudflap/26789 | |
8532 | * tree-mudflap.c (mudflap_finish_file): Skip function when there | |
8533 | were errors. Remove check for erroneous objects. | |
8534 | ||
bfc646bf JL |
8535 | 2006-04-20 Jeff Law <law@redhat.com> |
8536 | ||
8537 | PR tree-optimization/26854 | |
8538 | * tree-ssa-dse.c (dse_optimize_stmt): Avoid num_imm_uses when | |
8539 | checking for zero or one use. | |
8540 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Similarly. | |
8541 | * tree-cfgcleanup.c (merge_phi_nodes): Similarly. | |
8542 | * tree-ssa-reassoc.c (negate_value): Similarly. | |
8543 | (reassociate_bb): Similarly. | |
8544 | ||
455f78d9 JJ |
8545 | 2006-04-20 Jakub Jelinek <jakub@redhat.com> |
8546 | ||
8547 | * c-pretty-print.c (pp_c_direct_abstract_declarator): Print | |
8548 | TYPE_MAX_VALUE (TYPE_DOMAIN (t)) + 1 for ARRAY_TYPE rather | |
8549 | than plain TYPE_MAX_VALUE (TYPE_DOMAIN (t)). | |
8550 | ||
9a74f8ee AM |
8551 | 2006-04-20 Alan Modra <amodra@bigpond.net.au> |
8552 | ||
8553 | * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Consume all | |
8554 | fp regs if the last fp arg doesn't fit in regs. | |
8555 | ||
904b6a0e KK |
8556 | 2006-04-20 Kaz Kojima <kkojima@gcc.gnu.org> |
8557 | ||
8558 | PR target/27182 | |
8559 | * config/sh/sh.md (movsicc_true+3): Tweak condition for the case | |
8560 | that the last insn has the REG_INC note. | |
8561 | ||
9dfb66b9 CD |
8562 | 2006-04-19 Carlos O'Donell <carlos@codesourcery.com> |
8563 | Nathan Sidwell <nathan@codesourcery.com> | |
8564 | ||
8565 | PR c/26774 | |
7a0b46c9 | 8566 | * stor-layout.c (update_alignment_for_field): Do not align |
9dfb66b9 CD |
8567 | ERROR_MARK nodes. |
8568 | (place_union_field): Place union field at the start of the union. | |
8569 | (place_field): Move ERROR_MARK check later, and use the current | |
8570 | allocation position to maintain monotonicity. | |
8571 | ||
74c96e0c ZD |
8572 | 2006-04-19 Zdenek Dvorak <dvorakz@suse.cz> |
8573 | ||
8574 | * dominance.c: Include timevar.h. | |
8575 | (calculate_dominance_info): Use TV_DOMINANCE. | |
8576 | * timevar.def (TV_DOMINANCE): New timevar. | |
8577 | * Makefile.in (dominance.o): Add TIMEVAR_H dependency. | |
8578 | ||
e90cd854 AK |
8579 | 2006-04-19 Andreas Krebbel <krebbel1@de.ibm.com> |
8580 | ||
4414de4a | 8581 | PR rtl-optimization/14261 |
e90cd854 AK |
8582 | * ifcvt.c (noce_emit_move_insn): Call store_bit_field if the resulting |
8583 | move would be an INSV insn. | |
7a0b46c9 | 8584 | (noce_process_if_block): Don't optimize if the destination is a |
e90cd854 AK |
8585 | ZERO_EXTRACT which can't be handled by noce_emit_move_insn. |
8586 | ||
43a09b63 AK |
8587 | 2006-04-19 Andreas Krebbel <krebbel1@de.ibm.com> |
8588 | ||
8589 | * config/s390/s390.md: Add comments with the instructions emitted | |
8590 | by an insn pattern if macros are used. | |
8591 | ||
0f35201e AM |
8592 | 2006-04-19 Alan Modra <amodra@bigpond.net.au> |
8593 | ||
8594 | PR rtl-optimization/26026 | |
8595 | * fold-const.c (fold_binary): Optimize div and mod where the divisor | |
8596 | is a known power of two shifted left a variable amount. | |
8597 | ||
76f7a74f GK |
8598 | 2006-04-18 Geoffrey Keating <geoffk@apple.com> |
8599 | ||
8600 | * dwarf2out.c (prune_unused_types_update_strings): Don't add strings | |
8601 | to hash table twice when the debug_str section has SECTION_MERGE. | |
8602 | ||
49721058 JM |
8603 | 2006-04-18 Joseph S. Myers <joseph@codesourcery.com> |
8604 | ||
8605 | * config/soft-fp: New directory. From glibc. | |
8606 | * config/soft-fp/t-softfp: New. | |
8607 | * config/soft-fp/README: New. | |
8608 | * mklibgcc.in: Handle LIB2FUNCS_EXCLUDE. | |
8609 | * Makefile.in (LIB2FUNCS_EXCLUDE, SFP_MACHINE): New. | |
8610 | (libgcc.mk): Pass LIB2FUNCS_EXCLUDE. | |
8611 | (LIBGCC_DEPS): Add $(SFP_MACHINE). | |
8612 | * config.gcc: Use rs6000/t-fprules-fpbit or | |
8613 | rs6000/t-fprules-softfp and soft-fp/t-softfp together with | |
8614 | rs6000/t-fprules. | |
8615 | * config/rs6000/sfp-machine.h: New. Based on glibc. | |
8616 | * config/rs6000/t-fprules-fpbit, config/rs6000/t-fprules-softfp: | |
8617 | New. | |
8618 | * config/rs6000/t-fprules: Remove fp-bit rules. | |
8619 | * config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Use +=. | |
8620 | * config/rs6000/t-linux64: Likewise. Remove duplicates from | |
8621 | LIB2FUNCS_EXTRA. Remove fp-bit rules. | |
8622 | (softfp_wrap_start, softfp_wrap_end): New. | |
8623 | ||
7e96ee36 DD |
8624 | 2006-04-18 DJ Delorie <dj@redhat.com> |
8625 | ||
8626 | * config/m32c/m32c.h (PTRDIFF_TYPE): Define. | |
8627 | ||
d955420e DP |
8628 | 2006-04-18 Devang Patel <dpatel@apple.com> |
8629 | ||
8630 | * doc/invoke.texi (-Wuninitialized): Clarify -O connection. | |
7a0b46c9 | 8631 | |
503b5c9f NC |
8632 | 2006-04-18 Nick Clifton <nickc@redhat.com> |
8633 | ||
8634 | * config/sh/t-symbian: Add rule to build sh-c.o | |
8635 | * config/sh/symbian.c (sh_symbian_mark_dllexport): Replace use | |
8636 | of DECL_NON_ADDR_CONST_P with DECL_DLLIMPORT_P. | |
8637 | (sh_symbian_encode_section_info): Likewise. | |
8638 | ||
c2f07c00 AK |
8639 | 2006-04-18 Andreas Krebbel <krebbel1@de.ibm.com> |
8640 | ||
7a0b46c9 | 8641 | * builtins.c (expand_builtin_strcmp): Cover label definition of |
c2f07c00 AK |
8642 | do_libcall with HAVE_cmpstrnsi. |
8643 | ||
6370682a KH |
8644 | 2006-04-18 Kazu Hirata <kazu@codesourcery.com> |
8645 | ||
8646 | * function.c (temp_slots_at_level, max_slot_level): Use VEC | |
8647 | instead of VARRAY. | |
8648 | * function.h (temp_slot_p): New. | |
8649 | (function): Change the type of x_used_temp_slots to | |
8650 | VEC(temp_slot_p,gc) *. | |
8651 | ||
224504d2 NC |
8652 | 2006-04-18 Nick Clifton <nickc@redhat.com> |
8653 | ||
13a41b42 NC |
8654 | * config/mmix/mmix.h (OPTIMIZATION_OPTIONS): Remove reference to |
8655 | flag_strength_reduce. | |
8656 | ||
224504d2 NC |
8657 | * doc/tm.texi (TARGET_SECTION_TYPE_FLAGS): Fix typo. |
8658 | ||
6ee2e158 PB |
8659 | 2006-04-18 Paolo Bonzini <bonzini@gnu.org> |
8660 | ||
e8366202 | 8661 | PR target/27117 |
6ee2e158 PB |
8662 | |
8663 | Partial revert of revision 112637 | |
8664 | 2006-04-03 Paolo Bonzini <bonzini@gnu.org> | |
8665 | Dale Johannesen <dalej@apple.com> | |
8666 | ||
8667 | PR target/19653 | |
8668 | * regclass.c (struct reg_pref): Update documentation. | |
8669 | (regclass): Set prefclass to NO_REGS if memory is the best option. | |
8670 | (record_reg_classes): Cope with a prefclass set to NO_REGS. | |
8671 | ||
e3949961 PB |
8672 | 2006-04-18 Paolo Bonzini <bonzini@gnu.org> |
8673 | ||
e8366202 MS |
8674 | PR tree-optimization/26821 |
8675 | * tree-ssa-math-opts.c (get_constant_one): New. | |
8676 | (insert_reciprocals): Use it. | |
e3949961 | 8677 | |
e26303c2 GK |
8678 | 2006-04-17 Geoffrey Keating <geoffk@apple.com> |
8679 | ||
8680 | * dwarf2out.c (free_AT): Delete. | |
8681 | (remove_AT): Update string ref counts. | |
8682 | (remove_child_TAG): Don't call free_die. | |
8683 | (free_die): Delete. | |
8684 | (break_out_includes): Don't call free_die on DW_TAG_GNU_BINCL | |
8685 | or DW_TAG_GNU_EINCL. | |
8686 | (prune_unused_types_walk_attribs): Reset string refcounts. | |
8687 | (prune_unused_types_update_strings): New. | |
8688 | (prune_unused_types_prune): Don't make unnecessary stores. Don't | |
8689 | call free_die. Do call prune_unused_types_update_strings. | |
8690 | (prune_unused_types): Empty debug_str_hash. | |
8691 | ||
6cc1d694 RS |
8692 | 2006-04-17 Roger Sayle <roger@eyesopen.com> |
8693 | ||
8694 | * expr.c (expand_assignment): Optimize away no-op moves where the | |
8695 | source and destination are equal and have no side-effects. | |
8696 | ||
71a9b19a RG |
8697 | 2006-04-17 Richard Guenther <rguenther@suse.de> |
8698 | ||
8699 | PR target/26826 | |
8700 | * reload.c (push_reload): Guard calls to get_secondary_mem | |
8701 | for memory subregs. | |
8702 | ||
08c79682 KH |
8703 | 2006-04-16 Kazu Hirata <kazu@codesourcery.com> |
8704 | ||
8705 | * alias.c (reg_base_value, old_reg_base_value): Change the | |
8706 | type to VEC(rtx,gc) *. | |
8707 | (REG_BASE_VALUE, find_base_value, record_set, | |
8708 | init_alias_analysis): Use VEC instead of VARRAY. | |
8709 | ||
1a5640b4 KH |
8710 | * alias.c (alias_sets): Change the type to |
8711 | VEC(alias_set_entry,gc) *. | |
8712 | (get_alias_set_entry, new_alias_set, record_alias_subset): Use | |
8713 | VEC instead of VARRAY. | |
8714 | (last_alias_set): Remove. | |
8715 | ||
b2c0ad40 KH |
8716 | * cgraph.h (cgraph_edge_p): New. |
8717 | Update the prototype of cgraph_function_versioning. | |
8718 | * cgraphunit.c (cgraph_copy_node_for_versioning, | |
8719 | cgraph_function_versioning): Use VEC instead of VARRAY. | |
8720 | * ipa-cp.c (ipcp_insert_stage): Likewise. | |
8721 | ||
726ac11e RS |
8722 | 2006-04-16 Roger Sayle <roger@eyesopen.com> |
8723 | ||
8724 | PR target/26961 | |
8725 | * fold-const.c (fold_ternary): When converting "A ? B : C" into either | |
8726 | "A op B" or "A op C", we may need to convert A to the type of B and C. | |
8727 | ||
b12cbf2c AN |
8728 | 2006-04-16 Adam Nemet <anemet@caviumnetworks.com> |
8729 | ||
8730 | * target.h (struct gcc_target): Add mode_rep_extended. | |
8731 | * rtlanal.c (num_sign_bit_copies_in_rep): New global. | |
8732 | (init_num_sign_bit_copies_in_rep): Initialize it using | |
8733 | mode_rep_extended. | |
8734 | (truncate_to_mode): Use it. | |
8735 | (init_rtlanal): Call init_num_sign_bit_copies_in_rep. | |
8736 | * targhooks.h (default_mode_rep_extended): Declare it. | |
8737 | * targhooks.c (default_mode_rep_extended): Define it. | |
8738 | * target-def.h (TARGET_MODE_REP_EXTENDED): New macro. Default to | |
8739 | default_mode_rep_extended. | |
8740 | (TARGET_INITIALIZER): Include it. | |
8741 | * doc/tm.texi (Misc): Document it. | |
8742 | * config/mips/mips.c (TARGET_TRUNCATED_TO_MODE): Override it. | |
8743 | (mips_truncated_to_mode): New function. | |
8744 | ||
d763e130 RS |
8745 | 2006-04-16 Roger Sayle <roger@eyesopen.com> |
8746 | ||
8747 | PR middle-end/25474 | |
8748 | * expr.c (compress_float_constant): Copy the narrow constant into | |
8749 | a new pseudo before extending it to its final width. | |
8750 | ||
2ff61948 RS |
8751 | 2006-04-16 Roger Sayle <roger@eyesopen.com> |
8752 | Andrew Pinski <pinskia@gcc.gnu.org> | |
8753 | Dale Johannesen <dalej@apple.com> | |
8754 | ||
8755 | PR target/24076 | |
8756 | * config/i386/i386.c (ix86_expand_vector_init_duplicate): Add | |
8757 | special case code to implement V8HImode and V16QImode with SSE2. | |
8758 | ||
3db8a113 RS |
8759 | 2006-04-15 Roger Sayle <roger@eyesopen.com> |
8760 | ||
8761 | * config/i386/i386.c (ix86_va_start): Ensure all integer constant | |
8762 | trees are constructed with a suitable tree type. | |
8763 | ||
7fe25d1a RS |
8764 | 2006-04-15 Roger Sayle <roger@eyesopen.com> |
8765 | ||
8766 | * tree.c (integer_zerop): Ignore TREE_CONSTANT_OVERFLOW. | |
8767 | (integer_onep): Likewise. | |
8768 | (integer_all_onesp): Likewise. | |
8769 | (integer_pow2p): Likewise. | |
8770 | (integer_nonzerop): Likewise. | |
8771 | (real_zerop): Likewise. | |
8772 | (real_onep): Likewise. | |
8773 | (real_twop): Likewise. | |
8774 | (real_minus_onep): Likewise. | |
8775 | (int_size_in_bytes): Likewise. | |
8776 | (host_integerp): Likewise. | |
8777 | ||
75c40d56 KH |
8778 | 2006-04-15 Kazu Hirata <kazu@codesourcery.com> |
8779 | ||
8780 | * cfgcleanup.c, config/dfp-bit.c, expr.c, fold-const.c, | |
8781 | jump.c, mips-tfile.c, omp-low.c, sched-int.h, | |
8782 | tree-ssa-loop-prefetch.c, tree-vrp.c: Fix comment typos. | |
8783 | ||
aacac31f KH |
8784 | * tree-ssa-structalias.h (alias_info): Remove num_references. |
8785 | ||
8370f6fa JDA |
8786 | 2006-04-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
8787 | ||
8788 | * pa.md (output_bb patterns): Shorten long branch alternatives by 4. | |
8789 | (output_bvb patterns): Likewise. | |
8790 | * pa.c (output_bb): Use 'bb' insn for long branch case. | |
8791 | (output_bvb): Likewise use '{bvb|bb}' for long branch case. | |
8792 | (output_dbra): Use '{comb|cmpb}' for long branch case for alternative | |
8793 | 1. Correct length operand for alternatives 1 and 2. | |
8794 | (output_movb): Use '{comb|cmpb}' for long branch case for alternatives | |
8795 | 1, 2 and 3. Correct length operand for alternatives 1, 2 and 3. | |
8796 | ||
bed575d5 RS |
8797 | 2006-04-14 Roger Sayle <roger@eyesopen.com> |
8798 | ||
8799 | * tree-cfg.c (make_edges, make_omp_sections_edges, move_stmt_r, | |
8800 | is_ctrl_altering_stmt): Reinstate RTH's changes from r112935 that | |
8801 | were accidentally reverted by r112959. | |
8802 | ||
7e2df4a1 JJ |
8803 | 2006-04-15 Jakub Jelinek <jakub@redhat.com> |
8804 | ||
8805 | PR middle-end/26823 | |
8806 | * except.h (eh_region_outermost): New prototype. | |
8807 | * except.c (eh_region_outermost): New function. | |
8808 | * tree-cfg.c (find_outermost_region_in_block): Use it. | |
8809 | ||
43b373a2 KH |
8810 | 2006-04-14 Kazu Hirata <kazu@codesourcery.com> |
8811 | ||
8812 | * local-alloc.c (rest_of_handle_local_alloc): Use VEC instead | |
8813 | of VARRAY. | |
8814 | * reload1.c (reg_equiv_memory_loc_varray): Rename to | |
8815 | reg_equiv_memory_loc_vec. Change the type to VEC(rtx,gc) *. | |
8816 | (init_reload, reload): Use VEC instead of VARRAY. | |
8817 | * reload.h: Update the prototype for | |
8818 | reg_equiv_memory_loc_varray. | |
8819 | ||
68ba34f3 | 8820 | 2006-04-14 Alexey Starovoytov <alexey.starovoytov@sun.com> |
e8366202 | 8821 | Eric Botcazou <ebotcazou@libertysurf.fr> |
68ba34f3 AS |
8822 | |
8823 | * config/sparc/sparc.c (emit_and_preserve): Allocate space for the | |
8824 | register save area. | |
8825 | ||
39b1ec97 UB |
8826 | 2005-04-13 Uros Bizjak <uros@kss-loka.si> |
8827 | ||
8828 | PR middle-end/27134 | |
8829 | * builtins.c (expand_builtin_int_roundingfn): Use expand_normal() | |
8830 | to expand fallback builtin function call. | |
8831 | ||
880864cf AM |
8832 | 2006-04-14 Alan Modra <amodra@bigpond.net.au> |
8833 | ||
8834 | PR middle-end/27095 | |
8835 | * builtins.c: (expand_builtin_memset): Stabilize args before expansion | |
8836 | and emit libcall here in case the builtin fails. | |
8837 | (expand_builtin_strcmp): Always emit the libcall here on failure. | |
8838 | ||
1935e8a8 KH |
8839 | 2006-04-14 Kazu Hirata <kazu@codesourcery.com> |
8840 | ||
8841 | * basic-block.h (REG_BASIC_BLOCK): Use VEC instead of VARRAY. | |
8842 | * flow.c (reg_n_info): Change the type to | |
8843 | VEC(reg_info_p,heap) *. | |
8844 | * regclass.c (allocate_reg_info, free_reg_info): Use VEC | |
8845 | instead of VARRAY. | |
8846 | * regs.h (reg_info_p): New. | |
8847 | (REG_N_REFS, REG_FREQ, REG_N_SETS, REG_N_DEATHS, | |
8848 | REG_N_CALLS_CROSSED, REG_N_THROWING_CALLS_CROSSED, | |
8849 | REG_LIVE_LENGTH, REGNO_FIRST_UID, REGNO_LAST_UID): Use VEC | |
8850 | instead of VARRAY. | |
8851 | ||
6f8dd94b EB |
8852 | 2006-04-13 Eric Botcazou <ebotcazou@adacore.com> |
8853 | ||
8854 | * params.def (PARAM_MAX_SCHED_READY_INSNS): New parameter, | |
8855 | defaulting to 100. | |
8856 | * params.h (MAX_SCHED_READY_INSNS): New macro. | |
8857 | * haifa-sched.c: (queue_to_ready): Re-queue insns for the next cycle | |
8858 | past MAX_SCHED_READY_INSNS during the first scheduling pass. | |
8859 | (schedule_block): Delay insns past MAX_SCHED_READY_INSNS in | |
8860 | the ready list for 1 cycle during the first scheduling pass. | |
8861 | * doc/invoke.texi (--param): New parameter max-sched-ready-insns. | |
8862 | ||
777f7f9a RH |
8863 | 2006-04-13 Richard Henderson <rth@redhat.com> |
8864 | ||
bed575d5 | 8865 | PR libgomp/26651 |
777f7f9a RH |
8866 | * gimple-low.c (lower_omp_directive): Remove dead code. |
8867 | (lower_stmt): Do nothing except for openmp, except for OMP_PARALLEL. | |
8868 | * gimplify.c (gimplify_expr): Update for OMP_RETURN, OMP_CONTINUE. | |
8869 | * omp-low.c (struct omp_region): Move to tree-flow.h. | |
8870 | (root_omp_region): Export. | |
8871 | (omp_regions, lookup_omp_region): Remove. | |
8872 | (determine_parallel_type): Update for struct omp_region changes. | |
8873 | (dump_omp_region): Dump regions with block numbers. | |
8874 | (new_omp_region): Take type and block instead of stmt; malloc | |
8875 | instead of ggc. | |
8876 | (free_omp_region_1, free_omp_regions): New. | |
8877 | (expand_parallel_call): Take entry_stmt as argument; update for | |
8878 | changes to omp_region. | |
8879 | (remove_exit_barrier): Rewrite to update OMP_RETURN_NOWAIT. | |
8880 | (remove_exit_barriers): New. | |
8881 | (expand_omp_parallel): Update for struct omp_region changes. | |
8882 | (expand_omp_synch): Likewise. | |
8883 | (expand_omp): Likewise. | |
8884 | (expand_omp_for_static_nochunk): Likewise; update for OMP_CONTINUE. | |
8885 | (expand_omp_for_static_chunk): Likewise. | |
8886 | (expand_omp_for): Likewise. | |
8887 | (expand_omp_for_generic): Likewise; emit the proper GOMP_loop_end call. | |
8888 | (expand_omp_sections): Similarly, with GOMP_sections_end. | |
8889 | (expand_omp_single): New. | |
8890 | (build_omp_regions_1): Update for OMP_CONTINUE. | |
8891 | (execute_expand_omp): Call remove_exit_barriers, free_omp_regions. | |
8892 | (lower_omp_sections): Expand with OMP_CONTINUE, do not collect | |
8893 | OMP_SECTIONS_SECTIONS. | |
8894 | (lower_omp_single_simple): Don't emit barrier here. | |
8895 | (lower_omp_single_copy): Likewise. | |
8896 | (lower_omp_single): Fix bindings, and lower to straightline now. | |
8897 | (lower_omp_master, lower_omp_ordered): Likewise. | |
8898 | (lower_omp_critical): Likewise. | |
8899 | (lower_omp_for): Likewise. Emit OMP_CONTINUE. | |
8900 | * tree-cfg.c (make_edges): Collect an omp_region tree, use it for | |
8901 | omp edges, free it afterward. | |
8902 | (make_omp_sections_edges): Remove. | |
8903 | (is_ctrl_altering_stmt): Don't bother checking flag_openmp. | |
8904 | (move_stmt_r): Handle OMP_CONTINUE. | |
7a0b46c9 | 8905 | * tree-flow.h (struct omp_region): Move from omp-low.c. Switch |
777f7f9a RH |
8906 | statement pointers to basic blocks. Add type member. |
8907 | (root_omp_region, new_omp_region, free_omp_regions): Declare. | |
8908 | * tree-gimple.c (is_gimple_stmt): Handle OMP_RETURN, OMP_CONTINUE. | |
8909 | * tree-inline.c (estimate_num_insns_1): Likewise. | |
8910 | * tree-pretty-print.c (dump_generic_node): Likewise. | |
8911 | * tree-ssa-operands.c (get_expr_operands): Likewise. | |
8912 | * tree.def (OMP_SECTIONS): Remove OMP_SECTIONS_SECTIONS operand. | |
8913 | (OMP_RETURN): Rename from OMP_RETURN_EXPR. | |
8914 | (OMP_CONTINUE): New. | |
8915 | * tree.h (OMP_DIRECTIVE_P): Add OMP_CONTINUE. | |
8916 | (OMP_SECTIONS_SECTIONS): Remove. | |
8917 | (OMP_SECTION_LAST): New. | |
8918 | (OMP_RETURN_NOWAIT): New. | |
8919 | ||
15b1c12a RS |
8920 | 2006-04-13 Roger Sayle <roger@eyesopen.com> |
8921 | ||
8922 | * fold-const.c (native_encode_vector, native_interpret_real): | |
8923 | Correct obvious mistakes in the previous check-in. | |
8924 | ||
78bf6e2f RS |
8925 | 2006-04-13 Roger Sayle <roger@eyesopen.com> |
8926 | ||
8927 | * fold-const.c (native_encode_expr): New function to encode | |
8928 | the target representation of an INTEGER_CST, REAL_CST, COMPLEX_CST | |
8929 | or VECTOR_CST into a specified buffer. | |
8930 | (native_encode_int): New function. | |
8931 | (native_encode_real): New function. | |
8932 | (native_encode_complex): New function. | |
8933 | (native_encode_vector): New function. | |
8934 | (native_interpret_expr): Inverse of native_encode_expr to convert | |
8935 | a target representation into an INTEGER_CST, REAL_CST etc... | |
8936 | (native_interpret_int): New function. | |
8937 | (native_interpret_real): New function. | |
8938 | (native_interpret_complex): New function. | |
8939 | (native_interpret_vector): New function. | |
8940 | (fold_view_convert_expr): New function to constant fold/evaluate | |
8941 | a VIEW_CONVERT_EXPR of a suitable constant expression. | |
8942 | (fold_unary) <VIEW_CONVERT_EXPR>: Call fold_view_convert_expr. | |
8943 | Change call of build1 to fold_build1 when constructing a | |
8944 | VIEW_CONVERT_EXPR. | |
8945 | ||
76492753 PB |
8946 | 2006-04-13 Paolo Bonzini <bonzini@gnu.org> |
8947 | Ulrich Weigand <uweigand@de.ibm.com> | |
8948 | ||
8949 | PR target/27006 | |
8950 | * config/rs6000/rs6000.h (EASY_VECTOR_15_ADD_SELF): Require n | |
8951 | to be even. | |
8952 | ||
7b5d92b2 AM |
8953 | 2006-04-13 Alan Modra <amodra@bigpond.net.au> |
8954 | ||
8955 | PR target/26459 | |
8956 | * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't | |
8957 | optimize to lo_sum for DFmode if !TARGET_FPRS. | |
8958 | ||
d96f49bf KH |
8959 | 2006-04-12 Kazu Hirata <kazu@codesourcery.com> |
8960 | ||
8961 | * tree-ssa-alias.c (set_initial_properties, init_alias_info, | |
8962 | delete_alias_info, compute_flow_sensitive_aliasing, | |
8963 | group_aliases): Use VEC instead of VARRAY. | |
8964 | * tree-ssa-structalias.c (update_alias_info): Likewise. | |
8965 | * tree-ssa-structalias.h (alias_info): Change the type of | |
8966 | processed_ptrs to VEC(tree,heap) *. | |
8967 | ||
3f1d3526 R |
8968 | 2006-04-12 J"orn Rennecke <joern.rennecke@st.com> |
8969 | ||
8970 | PR target/27060 | |
e8366202 MS |
8971 | * config/sh/lib1funcs.h: New file, broken out of: |
8972 | * config/sh/lib1funcs.asm. | |
8973 | * config/sh/lib1funcs.h (DR00, DR01, DR20, DR21, DR40, DR41): | |
3f1d3526 R |
8974 | New macros. |
8975 | * config/sh/lib1funcs.asm (udivsi3_i4): Use them. | |
e8366202 | 8976 | * config/sh/lib1funcs-Os-4-200.asm: New file. |
3f1d3526 R |
8977 | * config/sh/embed-elf.h (LIBGCC_SPEC): Use -lgcc-Os-4-200. |
8978 | * config/sh/t-sh (OPT_EXTRA_PARTS): New variable. | |
8979 | (EXTRA_MULTILIB_PARTS): Include it. | |
8980 | ($(T)sdivsi3_i4i-Os-4-200.o): New rule. | |
8981 | ($(T)udivsi3_i4i-Os-4-200.o, $(T)libgcc-Os-4-200.a): Likewise. | |
8982 | * config/sh/t-superh (EXTRA_MULTILIB_PARTS): Include OPT_EXTRA_PARTS. | |
8983 | * config/sh/sh.h (OVERRIDE_OPTIONS): Recognize -mdiv=call-table for | |
8984 | TARGET_SH2. | |
8985 | ||
dacb336e KH |
8986 | 2006-04-12 Kazu Hirata <kazu@codesourcery.com> |
8987 | ||
8988 | * Makefile.in (TREE_SSA_LIVE_H): Add vecprim.h. | |
8989 | * tree-ssa-live.c (tpa_init, tpa_remove_partition, tpa_delete, | |
8990 | tpa_compact, root_var_init, type_var_init): Use VEC instead of | |
8991 | VARRAY. | |
8992 | * tree-ssa-live.h: Include vecprim.h. | |
8993 | (tree_partition_associator_d): Change the type of | |
8994 | first_partition to VEC(int,heap) *. | |
8995 | (tpa_first_partition): Use VEC instead of VARRAY. | |
8996 | ||
597d6703 KH |
8997 | * Makefile.in (GTFILES): Move functions.h after tree.h. |
8998 | * function.c (reset_block_changes, record_block_change, | |
8999 | check_block_change, free_block_changes): Use VEC instead of | |
9000 | VARRAY. | |
9001 | * function.h (function): Change the type of | |
9002 | ib_boundaries_block to VEC(tree,gc) *. | |
9003 | * tree-inline.c (copy_cfg_body): Initialize | |
9004 | ib_boundaries_block to NULL instead of (varray_type) 0. | |
9005 | ||
7488662d RS |
9006 | 2006-04-12 Roger Sayle <roger@eyesopen.com> |
9007 | ||
9008 | * expr.c (emit_group_store): Correct operand order in call to | |
9009 | subreg_lowpart_offset. Always create paradoxical SUBREGs with | |
9010 | a SUBREG_BYTE of zero. | |
9011 | ||
76783bc2 RG |
9012 | 2006-04-12 Richard Guenther <rguenther@suse.de> |
9013 | ||
9014 | * profile.c (compute_branch_probabilities): Remove code | |
9015 | encapsulated in !ir_type (), which are remanents of the | |
9016 | removed RTL profiling code. | |
9017 | * rtl-profile.c: Remove. | |
9018 | ||
79773478 AM |
9019 | 2006-04-12 Alan Modra <amodra@bigpond.net.au> |
9020 | ||
9021 | * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Update | |
9022 | magic NULL_RTX comment. | |
9023 | (function_arg): Store entire fp arg to mem if any part should go | |
9024 | on stack. | |
9025 | (rs6000_arg_partial_bytes): Adjust for above change. | |
9026 | ||
10934c3b RS |
9027 | 2006-04-11 Roger Sayle <roger@eyesopen.com> |
9028 | ||
9029 | * dwarf2out.c (output_call_frame_info): Create debug_frame_section | |
9030 | if it hasn't been initialized by dwarf2out_init. | |
9031 | ||
58be56ea JDA |
9032 | 2006-04-11 John David Anglin <dava.anglin@nrc-cnrc.gc.ca> |
9033 | ||
9034 | * pa.md (MAX_12BIT_OFFSET, MAX_17BIT_OFFSET): Define and use new | |
9035 | symbolic constants in branch patterns. | |
9036 | ||
f6c4ed08 RS |
9037 | 2006-04-11 Roger Sayle <roger@eyesopen.com> |
9038 | ||
9039 | * caller-save.c: #include "addresses.h" after #include "tm_p.h". | |
9040 | ||
205eb6e7 RS |
9041 | 2006-04-11 Richard Sandiford <richard@codesourcery.com> |
9042 | ||
9043 | PR rtl-optimization/27073 | |
9044 | * gcse.c (try_replace_reg): Revert last change. Continue to search | |
9045 | for both REG_EQUAL and REG_EQUIV notes, but only perform replacements | |
9046 | on the former. | |
9047 | ||
ef6843ed EB |
9048 | 2006-04-11 Eric Botcazou <ebotcazou@libertysurf.fr> |
9049 | ||
9050 | * config/sparc/sparc.c (function_arg_slotno) <BLKmode>: Handle | |
9051 | aggregate types other than record and union types. | |
9052 | (function_arg): Likewise. | |
9053 | (function_arg_pass_by_reference): In 64-bit mode, return 0 for | |
9054 | small arrays. | |
9055 | (function_value): In 64-bit mode, return objects that require it | |
9056 | in FP registers. | |
9057 | ||
b4426e0a RS |
9058 | 2006-04-11 Roger Sayle <roger@eyesopen.com> |
9059 | ||
9060 | * dwarf2out.c (premark_used_types): Remove problematic prototype. | |
9061 | ||
8beb0d9e JJ |
9062 | 2006-04-11 Jakub Jelinek <jakub@redhat.com> |
9063 | ||
9064 | * gcc.c (LINK_COMMAND_SPEC): Move link_gomp after %o. | |
9065 | ||
cf282d0a JL |
9066 | 2006-04-03 Jeff Law <law@redhat.com> |
9067 | ||
9068 | PR/27087 | |
9069 | * tree-ssa-copy.c (may_propagate_copy): Test flow sensitive | |
9070 | alias information too. | |
9071 | ||
b3b2cbc4 MF |
9072 | 2006-04-10 Mike Frysinger <vapier@gentoo.org> |
9073 | ||
a1d1988f | 9074 | * Makefile.in (gcc-cross): Add $(exeext) to target name. |
b3b2cbc4 | 9075 | |
33c9159e AH |
9076 | 2006-04-10 Aldy Hernandez <aldyh@redhat.com> |
9077 | ||
9078 | PR/21391 | |
9079 | * dwarf2out.c (struct die_struct): Add die_perennial_p field. | |
9080 | (premark_used_types_helper): New. | |
9081 | (premark_used_types): New. | |
9082 | (gen_subprogram_die): Call premark_used_types. | |
9083 | (prune_unused_types_walk): Do not prune perennial dies. | |
9084 | * function.c (used_types_insert): New. | |
9085 | * function.h (struct function): Add used_types_hash field. | |
9086 | (used_types_insert): Add prototype. | |
9087 | * Makefile.in (FUNCTION_H): Depend on HASHTAB_H. | |
9088 | * c-parser.c (c_parser_cast_expression): Save casted types in used | |
9089 | types hash table. | |
9090 | ||
ab9260ac MM |
9091 | 2006-04-11 Mark Mitchell <mark@codesourcery.com> |
9092 | ||
9093 | PR target/26459 | |
9094 | * config/rs6000/e500-double.h (SUB3TARGET_OVERRIDE_OPTIONS): Test | |
9095 | rs6000_explicit_options.float_gprs. | |
9096 | ||
acef130f RS |
9097 | 2006-04-10 Roger Sayle <roger@eyesopen.com> |
9098 | ||
9099 | * config/i386/i386.c (ix86_expand_vector_init_one_nonzero): Renamed | |
9100 | from ix86_expand_vector_init_low_nonzero. Take an additional | |
9101 | one_var argument indicating which element is non-zero. Support | |
9102 | one_var != 0 for V4SFmode and V4SImode by permuting the result. | |
9103 | (ix86_expand_vector_init): Call ix86_expand_vector_init_one_nonzero | |
9104 | with one_var instead of ix86_expand_vector_init_low_nonzero. | |
9105 | ||
e3df376d KH |
9106 | 2006-04-10 Kazu Hirata <kazu@codesourcery.com> |
9107 | ||
9108 | * Makefile.in (tree-into-ssa.o, tree-outof-ssa.o, | |
9109 | tree-ssa-live.o, tree-ssa-alias.o, function.o, df-problems.o, | |
9110 | global.o, cfglayout.o, lambda-code.o, reg-stack.o, | |
9111 | build/genextract.o): Depend on vecprim.h. | |
9112 | * cfglayout.c, df-problems.c, function.c, genextract.c, | |
9113 | global.c, lambda-code.c, reg-stack.c, tree-into-ssa.c, | |
9114 | tree-outof-ssa.c, tree-ssa-alias.c, tree-ssa-live.c: Include | |
9115 | vecprim.h. | |
9116 | * vecprim.h: New. | |
9117 | ||
1a27722f GK |
9118 | 2006-04-10 Geoffrey Keating <geoffk@apple.com> |
9119 | ||
9120 | * dwarf2out.c (struct dw_attr_struct): Remove dw_attr_next. | |
9121 | Declare VECs of this type. | |
9122 | (struct die_struct): Make field die_attr a VEC of dw_attr_struct. | |
9123 | (remove_children): Delete. | |
9124 | (add_dwarf_attr): Use VEC routines. | |
9125 | (add_AT_flag): Update for changes to add_dwarf_attr. | |
9126 | (add_AT_int): Likewise. | |
9127 | (add_AT_unsigned): Likewise. | |
9128 | (add_AT_long_long): Likewise. | |
9129 | (add_AT_vec): Likewise. | |
9130 | (add_AT_string): Likewise. | |
9131 | (add_AT_die_ref): Likewise. | |
9132 | (add_AT_fde_ref): Likewise. | |
9133 | (add_AT_loc): Likewise. | |
9134 | (add_AT_loc_list): Likewise. | |
9135 | (add_AT_addr): Likewise. | |
9136 | (add_AT_lbl_id): Likewise. | |
9137 | (add_AT_lineptr): Likewise. | |
9138 | (add_AT_macptr): Likewise. | |
9139 | (add_AT_offset): Likewise. | |
9140 | (add_AT_range_list): Likewise. | |
9141 | (get_AT): Use VEC_iterate. | |
9142 | (remove_AT): Use VEC_ordered_remove. | |
9143 | (free_die): Fold remove_children into here; have it use VEC_iterate. | |
9144 | (print_die): Use VEC_iterate on attrs. | |
9145 | (reverse_die_lists): Don't reverse attr lists. | |
9146 | (die_checksum): Use VEC_iterate on attrs. | |
9147 | (same_die_p): Likewise. | |
9148 | (output_location_lists): Likewise. | |
9149 | (build_abbrev_table): Likewise. | |
9150 | (size_of_die): Likewise. | |
9151 | (unmark_all_dies): Likewise. | |
9152 | (output_abbrev_section): Likewise. | |
9153 | (output_die): Likewise. | |
9154 | (prune_unused_types_walk_attribs): Likewise. | |
9155 | ||
1da1ce3f EB |
9156 | 2006-04-10 Eric Botcazou <ebotcazou@libertysurf.fr> |
9157 | ||
1f3d30ed | 9158 | * doc/install.texi (*-*-solaris2*): Point to the configure page. |
1da1ce3f | 9159 | |
ef85ac9a JJ |
9160 | 2006-04-10 Jakub Jelinek <jakub@redhat.com> |
9161 | ||
9162 | PR debug/27057 | |
9163 | * dwarf2out.c (is_symbol_die): Return true also for namespaces. | |
9164 | ||
cf26aa89 RS |
9165 | 2006-04-09 Roger Sayle <roger@eyesopen.com> |
9166 | ||
9167 | * expr.c (store_constructor): Don't bother clearing target if | |
9168 | we're about to assign a vector to it using vec_init_optab. | |
9169 | ||
ef2bb311 | 9170 | 2006-04-10 Daniel Berlin <dberlin@dberlin.org> |
7a0b46c9 | 9171 | |
ef2bb311 DB |
9172 | * tree-ssa-alias.c (lhs_may_store_to): New function. |
9173 | (recalculate_used_alone): Handle LHS of calls. | |
9174 | ||
8b89a26a JDA |
9175 | 2006-04-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
9176 | ||
9177 | PR target/27034 | |
9178 | PR target/26508 | |
9179 | * config.gcc (hppa*64*-*-hpux11*): Add 'libgcc_stub.a' to extra_parts. | |
9180 | * pa64-hpux.h (LIB_SPEC): Correct typo. Don't append milli.a. | |
9181 | (LINK_GCC_C_SEQUENCE_SPEC): Define. Append milli.a here. | |
9182 | (PA_CXA_FINALIZE_STUB, PA_JV_REGISTERCLASSES_STUB): Delete defines. | |
9183 | (PA_INIT_FINI_HACK): Rename to PA_CRTBEGIN_HACK. | |
9184 | (PA_CRTBEGIN_HACK): Ensure __do_global_ctors_aux is placed in text | |
9185 | section. Delete PA_CXA_FINALIZE_STUB and PA_JV_REGISTERCLASSES_STUB | |
9186 | stubs. Add ".align 8" directives before all ".dword" directives. | |
9187 | (GTHREAD_USE_WEAK): Revise comment. | |
9188 | (TARGET_ATTRIBUTE_WEAK): Define. | |
9189 | * pa/t-pa64 (LIBGCCSTUB_OBJS): Add new rules for stublib.c, rfi-stub.o, | |
9190 | dfi-stub.o, cxaf-stub.o and jvrc-stub.o. | |
9191 | * stublib.c: New file. | |
16d74a3c JDA |
9192 | |
9193 | PR target/26743 | |
9194 | PR target/11254 | |
9195 | PR target/10274 | |
9196 | * pa.md (cbranch patterns): Revise arguments used in calls to | |
9197 | output_cbranch, output_bb and output_bvd. Add long branch length | |
9198 | attributes. | |
9199 | (fbranch patterns): Handle long branches. | |
9200 | (jump): Revise length check. Revise arguments for output_lbranch call. | |
9201 | Add long branch length attributes. | |
9202 | (decrement_and_branch_until_zero): Add long branch length attributes. | |
9203 | (output_movb, output_parallel_addb and output_parallel_movb patterns): | |
9204 | Likewise. Revise arguments for output_parallel_addb and | |
9205 | output_parallel_movb calls. | |
9206 | * pa-protos.h (output_cbranch, output_lbranch, output_bb, output_bvb, | |
9207 | output_parallel_movb and output_parallel_addb): Update prototypes. | |
9208 | * pa.c (output_cbranch): Revise arguments. Correct handling of | |
9209 | nullification in long branches. | |
9210 | (output_lbranch): Add new argument to control extraction of delay | |
9211 | instruction. | |
9212 | (output_bb): Handle long branches. | |
9213 | (output_bvb, output_dbra, output_movb, output_parallel_movb, | |
9214 | output_parallel_addb): Likewise. | |
9215 | ||
c3a50ca3 RS |
9216 | 2006-04-09 Richard Sandiford <richard@codesourcery.com> |
9217 | ||
9218 | PR rtl-optimization/27073 | |
9219 | * gcse.c (try_replace_reg): Just propagate into REG_EQUAL notes, | |
9220 | not REG_EQUIVs. | |
9221 | ||
9ccfe0cd DB |
9222 | 2006-04-08 Daniel Berlin <dberlin@dberlin.org> |
9223 | ||
9224 | * tree.h (tree_memory_tag): Add old_used_alone. | |
9225 | (SMT_OLD_USED_ALONE): New macro. | |
9226 | * tree-ssa-alias.c (recalculate_used_alone): Stop | |
9227 | marking things for renaming unnecessarily. | |
9228 | ||
917f1b7e KH |
9229 | 2006-04-08 Kazu Hirata <kazu@codesourcery.com> |
9230 | ||
9231 | * builtins.c, config/arm/arm.c, config/i386/cygwin.h, | |
9232 | config/i386/i386.c, config/ia64/ia64.c, config/s390/fixdfdi.h, | |
9233 | config/sh/sh.c, config/sh/sh.h, df-scan.c, except.c, | |
9234 | haifa-sched.c, optabs.c, rtl.h, sched-deps.c, sched-int.h, | |
9235 | sched-rgn.c, tree-inline.h, tree-ssa-dom.c, | |
9236 | tree-ssa-loop-prefetch.c, tree-ssa-operands.c, | |
9237 | tree-vect-patterns.c, tree-vrp.c: Fix comment typos. Follow | |
9238 | spelling convensions. | |
9239 | * config/ia64/ia64.opt, doc/contrib.texi, doc/invoke.texi, | |
9240 | doc/passes.texi, doc/tm.texi, doc/tree-ssa.texi: Fix comment | |
9241 | typos. Follow spelling conventions. | |
9242 | ||
9d746d5e DD |
9243 | 2006-04-07 DJ Delorie <dj@redhat.com> |
9244 | ||
9245 | * config/m32c/m32c.c (m32c_function_arg): Structures are always | |
9246 | passed on the stack. | |
9247 | (m32c_init_cumulative_args): When a function returns a structure, | |
9248 | always pass the pointer to that return area on the stack. | |
9249 | (m32c_function_arg_advance): Don't increment the parameter number | |
9250 | if we're processing the returned structure pointer. | |
9251 | (pushm_info): Reverse order of registers. | |
9252 | ||
ff5e9a94 SP |
9253 | 2006-04-07 Sebastian Pop <pop@cri.ensmp.fr> |
9254 | ||
9255 | * tree-ssa-loop-niter.c (inverse, number_of_iterations_ne, | |
9256 | assert_no_overflow_lt, assert_loop_rolls_lt, number_of_iterations_lt, | |
9257 | number_of_iterations_le, number_of_iterations_cond, find_loop_niter, | |
7a0b46c9 | 9258 | estimate_numbers_of_iterations_loop): Use build_int_cst instead of |
ff5e9a94 SP |
9259 | build_int_cst_type. |
9260 | * tree-chrec.c (chrec_fold_multiply_poly_poly, | |
9261 | chrec_fold_multiply): Same. | |
9262 | * tree-ssa-loop-ivopts.c (strip_offset_1, force_expr_to_var_cost, | |
9263 | force_expr_to_var_cost): Same. | |
9264 | * tree-mudflap.c (mf_xform_derefs_1): Same. | |
9265 | * tree-ssa-loop-prefetch.c (idx_analyze_ref): Same. | |
9266 | ||
f6fe3a22 DE |
9267 | 2006-04-07 David Edelsohn <edelsohn@gnu.org> |
9268 | ||
9269 | * config/rs6000/rs6000.c (rs6000_rtx_costs) <CONST_DOUBLE>: Do not | |
9270 | treat CONST_DOUBLE as INTVAL. and64_2_operands require an extra | |
9271 | insn. | |
28e6f134 JH |
9272 | |
9273 | 2006-04-07 Jan Hubicka <jh@suse.cz> | |
9274 | ||
9275 | * ipa-inline.c (cgraph_early_inlining): Collect garbage. | |
9276 | ||
fcfa143a RB |
9277 | 2006-04-07 Richard Guenther <rguenther@suse.de> |
9278 | ||
9279 | PR tree-optimization/26135 | |
9280 | * tree-ssa-copy.c (stmt_may_generate_copy): Handle memory | |
9281 | loads for store copy-prop. | |
9282 | (copy_prop_visit_stmt): Likewise. | |
9283 | ||
9284 | 2006-04-05 Robert Millan <robertmh@gnu.org> | |
8224ee20 | 9285 | |
e8366202 | 9286 | * config/i386/linux.h: Add a comment to mark macros that are |
8224ee20 | 9287 | being overriden in config/k*bsd-gnu.h. |
e8366202 | 9288 | * config/kfreebsd-gnu.h: Redefine GLIBC_DYNAMIC_LINKER instead of |
8224ee20 | 9289 | DYNAMIC_LINKER. |
e8366202 | 9290 | * config/knetbsd-gnu.h: Ditto. |
8224ee20 | 9291 | |
1f651229 JH |
9292 | 2006-04-06 Jan Hubicka <jh@suse.cz> |
9293 | ||
9294 | PR profile/20815 | |
9295 | PR profile/26399 | |
9296 | * coverage.c (coverage_checksum_string): Reorganize loop to not read | |
9297 | after buffer. | |
9298 | ||
3425c35f MS |
9299 | 2006-04-06 Mike Stump <mrs@apple.com> |
9300 | ||
9301 | * builtins.c (expand_builtin_longjmp):Use #ifdef instead of #if | |
9302 | for HAVE_nonlocal_goto to be consistent. | |
9303 | (expand_builtin_nonlocal_goto): Likewise. | |
9304 | (expand_builtin_strcmp): Use #ifdef instead of #if | |
9305 | for HAVE_cmpstrnsi to be consistent. | |
9306 | ||
0f681872 DD |
9307 | 2006-04-05 DJ Delorie <dj@redhat.com> |
9308 | ||
9309 | * config/m32c/m32c.h (INCOMING_FRAME_SP_OFFSET): Adjust for m16c | |
9310 | vs m32c. | |
9311 | ||
300adfc2 BS |
9312 | 2006-04-05 Bernd Schmidt <bernd.schmidt@analog.com> |
9313 | ||
9314 | * config/bfin/bfin.c (bfin_legitimate_address_p): Disallow | |
9315 | got-relative addressing for anything but SImode. | |
9316 | ||
dcef6aba BS |
9317 | * config/bfin/lib1funcs.asm (modsi): P1/P2 can be call-clobbered |
9318 | even if the calling function doesn't modify them. | |
9319 | ||
cf51dca2 RG |
9320 | 2006-04-05 Richard Guenther <rguenther@suse.de> |
9321 | ||
9322 | PR tree-optimization/26919 | |
9323 | * ipa-inline.c (cgraph_decide_inlining_incrementally): Fix argument | |
9324 | to cgraph_estimate_size_after_inlining. | |
9325 | ||
e17e34d8 AM |
9326 | 2006-04-05 Alan Modra <amodra@bigpond.net.au> |
9327 | ||
9328 | * reload.c (find_dummy_reload): Fix typo in 2006-04-03 change. | |
9329 | ||
42d375ed SP |
9330 | 2006-04-05 Sebastian Pop <pop@cri.ensmp.fr> |
9331 | ||
9332 | PR tree-optimization/26996 | |
9333 | * tree-scalar-evolution.c (analyze_scalar_evolution_1): Don't analyze | |
9334 | VECTOR_TYPE variables. | |
9335 | ||
6eee9893 RG |
9336 | 2006-04-05 Richard Guenther <rguenther@suse.de> |
9337 | ||
9338 | PR tree-optimization/26763 | |
9339 | * fold-const.c (fold_comparison): Move folding of | |
9340 | PTR + CST CMP PTR + CST ... | |
9341 | (fold_binary): ... here. Fold only for EQ_EXPR and NE_EXPR. | |
9342 | ||
80521187 GP |
9343 | 2006-04-05 Gerald Pfeifer <gerald@pfeifer.com> |
9344 | ||
9345 | * doc/install.texi (Prerequisites): Refine some wording on | |
9346 | bootstrapping and ksh. | |
9347 | Move the version numbers of DejaGnu here from the testing section | |
9348 | and fix casing of names. | |
9349 | Fix markup and clarify wording for autogen requirements. | |
9350 | Refer to GCJ instead of just java. | |
9351 | Refer to SVN instead of CVS. | |
9352 | Describe diffutils as useful instead of necessary. | |
9353 | (Downloading the source): Refer to SVN instead of CVS. | |
9354 | Adjust a link to our web site accordingly. | |
9355 | (Configuration): Fix casing of Bison. | |
7a0b46c9 | 9356 | (Building): Refer to SVN instead of CVS. |
80521187 GP |
9357 | Fix a sentence on the use of Bison and remove duplicate (and |
9358 | incorrect) version number of Bison requirement. | |
9359 | Remove one redundant list of packages needed for building. | |
9360 | (Specific): Avoid reference to CVS. | |
9361 | ||
77ccdfed EC |
9362 | 2006-04-04 Eric Christopher <echristo@apple.com> |
9363 | ||
9364 | * config/rs6000/rs6000.c (TARGET_MS_BITFIELD_LAYOUT_P): Define. | |
9365 | (TARGET_USE_MS_BITFIELD_LAYOUT): Ditto. | |
9366 | (rs6000_handle_struct_attribute): New. | |
9367 | (rs6000_ms_bitfield_layout_p): Ditto. | |
9368 | ||
b3c2c547 GK |
9369 | 2006-04-04 Geoffrey Keating <geoffk@apple.com> |
9370 | ||
9371 | * config/darwin-crt3.c (atexit): Pass &__dso_handle rather than | |
9372 | NULL for dso parameter to atexit_common. | |
9373 | ||
4b1c1f6f EC |
9374 | 2006-04-04 Eric Christopher <echristo@apple.com> |
9375 | ||
9376 | * config/i386/i386.c (machopic_output_stub): Output \t | |
9377 | between instructions and operands. | |
9378 | ||
547b216d DE |
9379 | 2006-04-04 David Edelsohn <edelsohn@gnu.org> |
9380 | ||
9381 | * config/rs6000/rs6000.c (num_insns_constant_wide): Change | |
9382 | satisfies_constraint_[IL] to explicit tests on value. | |
9383 | ||
dc61cc6b SP |
9384 | 2006-04-04 Sebastian Pop <pop@cri.ensmp.fr> |
9385 | ||
9386 | * tree-scalar-evolution.c (compute_overall_effect_of_inner_loop, | |
9387 | set_nb_iterations_in_loop): Use build_int_cst instead of | |
9388 | build_int_cst_type. | |
9389 | * tree-data-ref.c (can_use_analyze_subscript_affine_affine): Use | |
9390 | build_int_cst instead of convert. | |
9391 | ||
2225b57c CD |
9392 | 2006-04-04 Carlos O'Donell <carlos@codesourcery.com> |
9393 | ||
9394 | * doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document | |
9395 | new value 2 for incoming. | |
9396 | * function.c (expand_function_start): Call struct_value_rtx | |
9397 | with incoming as 2. | |
9398 | * config/sparc/sparc.md: Comment updated_return. | |
9399 | * config/sparc/sparc.opt: Add -mstd-struct-return option. | |
9400 | * config/sparc/sparc.c (sparc_struct_value_rtx): Use standard | |
9401 | struct return if sparc_std_struct_return and incoming is 2. | |
9402 | (print_operand): Do not adjust return if | |
9403 | sparc_std_struct_return. | |
9404 | ||
3967bc2d RS |
9405 | 2006-04-04 Roger Sayle <roger@eyesopen.com> |
9406 | ||
9407 | * builtins.c (fold_builtin_sprintf): Use fold_convert instead of | |
9408 | convert in the middle-end. | |
9409 | * expr.c (store_expr, store_constructor, get_inner_reference, | |
9410 | expand_expr_real_1, string_constant, try_casesi, try_tablejump): | |
9411 | Likewise. | |
9412 | * tree.c (build_range_type): Likewise. | |
9413 | ||
b52be2c8 TT |
9414 | 2006-04-04 Tom Tromey <tromey@redhat.com> |
9415 | ||
9416 | * doc/install.texi (Prerequisites): Mention jar. | |
9417 | ||
d9d93d96 DB |
9418 | 2006-04-04 Daniel Berlin <dberlin@dberlin.org> |
9419 | ||
9420 | * doc/tree-ssa.texi (Preserving the virtual ssa form): New | |
9421 | subsection. | |
9422 | ||
8160ab35 MK |
9423 | 2006-04-04 Matthias Klose <doko@debian.org> |
9424 | ||
9425 | * Makefile.in (unprotoize.o): Same dependencies as for protoize.o. | |
9e826585 | 9426 | |
f0d1d971 KG |
9427 | PR bootstrap/26764 |
9428 | PR bootstrap/27334 | |
9edaf51e MK |
9429 | * Makefile.in (s-macro_list): Conform to POSIX rules in single quoted |
9430 | strings. | |
8160ab35 | 9431 | |
a7d37464 GK |
9432 | 2006-04-03 Geoffrey Keating <geoffk@apple.com> |
9433 | ||
4b1c1f6f | 9434 | * doc/extend.texi (Function Attributes): Rewrite visibility |
46bdbc00 GK |
9435 | attribute documentation. |
9436 | * doc/invoke.texi (C++ Dialect Options): Rewrite | |
9437 | -fvisibility-inlines-hidden documentation to describe something | |
9438 | entirely different, although in practise compatible. | |
4cb19a9f | 9439 | (Code Gen Options): Warn about system headers in -fvisibility= |
46bdbc00 GK |
9440 | documentation. |
9441 | ||
a7d37464 GK |
9442 | * doc/extend.texi (Other Builtins): Document that |
9443 | __builtin_nan is a compile-time constant only when its argument | |
9444 | is valid. | |
9445 | ||
2332d585 AN |
9446 | 2006-04-03 Adam Nemet <anemet@caviumnetworks.com> |
9447 | ||
9448 | * simplify-rtx.c (simplify_unary_operation_1) <TRUNCATE>: When | |
9449 | trying to remove TRUNCATE check if all bits outside the new mode | |
9450 | are identical to the sign bit. | |
9451 | ||
cbc75e62 JL |
9452 | 2006-04-03 Jeff Law <law@redhat.com> |
9453 | ||
9454 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Avoid useless folding | |
9455 | and operand scanning in some common cases. | |
9456 | ||
4735cca6 | 9457 | 2006-04-03 Paolo Bonzini <bonzini@gnu.org> |
b5c82fa1 PB |
9458 | Dale Johannesen <dalej@apple.com> |
9459 | ||
9460 | PR target/19653 | |
9461 | * regclass.c (struct reg_pref): Update documentation. | |
9462 | (regclass): Set prefclass to NO_REGS if memory is the best option. | |
9463 | (record_reg_classes): Cope with a prefclass set to NO_REGS. | |
9464 | * reload.c (find_reloads): Take PREFERRED_OUTPUT_RELOAD_CLASS | |
9465 | into account. For non-registers, equate an empty preferred | |
9466 | reload class to a `!' in the constraint; move the if clause to | |
9467 | do so after those that reject the insn. | |
9468 | (push_reload): Allow PREFERRED_*_RELOAD_CLASS to liberally | |
9469 | return NO_REGS. | |
9470 | (find_dummy_reload): Likewise. | |
9471 | * doc/tm.texi (Register Classes): Document what it means | |
9472 | if PREFERRED_*_RELOAD_CLASS return NO_REGS. | |
9473 | * config/i386/i386.c (ix86_preferred_reload_class): Force | |
9474 | using SSE registers (and return NO_REGS for floating-point | |
9475 | constants) if math is done with SSE. | |
9476 | (ix86_preferred_output_reload_class): New. | |
9477 | * config/i386/i386-protos.h (ix86_preferred_output_reload_class): New. | |
9478 | * config/i386/i386.h (PREFERRED_OUTPUT_RELOAD_CLASS): New. | |
9479 | * config/i386/i386.md: Remove # register preferences. | |
9480 | ||
16a2acea SP |
9481 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
9482 | ||
9483 | PR bootstrap/26992 | |
9484 | * tree-scalar-evolution.c (compute_overall_effect_of_inner_loop, | |
9485 | chrec_is_positive, set_nb_iterations_in_loop): Use a variable for | |
9486 | the type of nb_iter. | |
9487 | (instantiate_parameters_1): Convert the operands before calling | |
9488 | chrec_fold_minus, chrec_fold_plus, or chrec_fold_multiply. | |
9489 | * tree-data-ref.c (can_use_analyze_subscript_affine_affine): Same. | |
9490 | ||
b6f65e3c RS |
9491 | 2006-04-02 Roger Sayle <roger@eyesopen.com> |
9492 | ||
9493 | * builtins.c (dummy_object): Use build_int_cst instead of convert. | |
9494 | * tree-ssa-ccp.c (maybe_fold_stmt_addition): Use fold_convert | |
9495 | instead of convert. | |
9496 | * dojump.c (do_jump): Likewise. | |
9497 | * expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE): Likewise. | |
9498 | * gimplify.c (gimple_boolify, gimplify_init_constructor, | |
9499 | gimplify_boolean_expr): Likewise. | |
9500 | * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise. | |
9501 | * varasm.c (array_size_for_constructor): Likewise. | |
9502 | * tree-object-size.c (compute_object_offset): Likewise. | |
9503 | ||
9fd20553 RS |
9504 | 2006-04-02 Roger Sayle <roger@eyesopen.com> |
9505 | ||
9506 | PR middle-end/26977 | |
9507 | * expr.c (emit_group_store): Check whether simplify_gen_subreg returns | |
9508 | NULL_RTX, indicating it couldn't create a valid paradoxical subreg. | |
9509 | ||
ace23abf SP |
9510 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
9511 | ||
9512 | PR tree-optimization/26939 | |
9513 | * tree-chrec.c (chrec_merge): Use eq_evolutions_p. | |
9514 | ||
e2157b49 SP |
9515 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
9516 | ||
9517 | * tree-scalar-evolution.c (add_to_evolution_1): Pass an extra argument | |
4b1c1f6f | 9518 | at_stmt. Convert the type of operands before calling |
e2157b49 SP |
9519 | build_polynomial_chrec. |
9520 | (add_to_evolution): Pass an extra argument at_stmt. Adjust the call to | |
9521 | add_to_evolution_1. | |
9522 | (follow_ssa_edge_in_rhs): Adjust call to add_to_evolution. | |
4b1c1f6f | 9523 | (instantiate_parameters_1): Convert the type of operands before calling |
e2157b49 SP |
9524 | build_polynomial_chrec. |
9525 | * tree-chrec.c (chrec_fold_poly_cst, chrec_fold_plus_poly_poly, | |
9526 | chrec_fold_multiply_poly_poly, chrec_replace_initial_condition, | |
9527 | reset_evolution_in_loop): Insert asserts to check the types of the | |
9528 | operands. | |
9529 | (chrec_type): Moved... | |
9530 | (eq_evolutions_p): Use operand_equal_p. | |
9531 | * tree-chrec.h (build_polynomial_chrec): Insert an assert to check | |
9532 | the types of the operands. | |
9533 | (chrec_type): ...here. | |
9534 | * tree-data-ref.c (create_data_ref): Convert the operands before | |
9535 | calling chrec_replace_initial_condition. | |
9536 | (same_access_functions, analyze_subscript_affine_affine, | |
9537 | analyze_miv_subscript, all_chrecs_equal_p): Use eq_evolutions_p. | |
9538 | (compute_subscript_distance, analyze_ziv_subscript, | |
9539 | analyze_siv_subscript_cst_affine, compute_overlap_steps_for_affine_1_2, | |
9540 | analyze_miv_subscript): Convert the operands before calling | |
9541 | chrec_fold_minus or chrec_fold_plus. | |
9542 | ||
a84481aa SP |
9543 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
9544 | ||
9545 | * tree-data-ref.c (compute_all_dependences): Use a pointer to | |
9546 | the dependence_relations vector. | |
9547 | (compute_data_dependences_for_loop): Adjust call to | |
9548 | compute_all_dependences. | |
9549 | ||
d568d1a8 RS |
9550 | 2006-04-01 Roger Sayle <roger@eyesopen.com> |
9551 | Richard Henderson <rth@redhat.com> | |
9552 | ||
9553 | * gimplify.c (gimplify_scan_omp_clauses) <OMP_CLAUSE_IF>: Call | |
9554 | gimple_boolify on the condition before calling gimplify_expr. | |
9555 | ||
b7974b3a BW |
9556 | 2006-03-31 Bob Wilson <bob.wilson@acm.org> |
9557 | ||
9558 | * config/xtensa/lib1funcs.asm: Rename abi_entry/abi_return macros | |
9559 | to leaf_entry/leaf_return. Change leaf_entry to add 16 bytes to | |
9560 | the frame size. Update to use the new macros. | |
9561 | * config/xtensa/ieee754-sf.S: Use new leaf_entry/leaf_return macros. | |
9562 | * config/xtensa/ieee754-df.S: Likewise. | |
9563 | ||
9564 | 2006-03-31 Richard Henderson <rth@redhat.com> | |
56e84019 RH |
9565 | |
9566 | * tree-cfg.c (make_ctrl_stmt_edges, make_exit_edges): Merge into... | |
9567 | (make_edges): ... here. Control fallthru creation with a local | |
9568 | variable. Do not play with fake edges. | |
9569 | (make_omp_sections_edges): Don't set EDGE_ABNORMAL. | |
9570 | (make_goto_expr_edges): Don't play with fake edges. Make for_call | |
9571 | a boolean. | |
9572 | ||
0c33762a JM |
9573 | 2006-04-01 Joseph S. Myers <joseph@codesourcery.com> |
9574 | ||
9575 | * dwarf2.h (DW64_CIE_ID): Define. | |
9576 | * dwarf2out.c (DWARF_CIE_ID): Define. | |
9577 | (output_call_frame_info): Output 0xffffffff before standard 8-byte | |
9578 | length header. Use DWARF_CIE_ID. | |
9579 | (value_format): Use DW_FORM_data4 or DW_FORM_data8 for | |
9580 | dw_val_class_loc_list depending on DWARF_OFFSET_SIZE. | |
9581 | ||
b890ea50 KK |
9582 | 2006-03-31 Kaz Kojima <kkojima@gcc.gnu.org> |
9583 | ||
9584 | * config/sh/linux-atomic.asm: New file. | |
9585 | * config/sh/t-linux (LIB2FUNCS_EXTRA): Add linux-atomic.asm. | |
9586 | ||
16659fcf DD |
9587 | 2006-03-31 DJ Delorie <dj@redhat.com> |
9588 | ||
9589 | * config/m32c/cond.md: Set condition flags properly throughout. | |
9590 | * config/m32c/minmax.md: Likewise. | |
9591 | * config/m32c/prologue.md: Likewise. | |
9592 | * config/m32c/bitops.md: Likewise. | |
9593 | * config/m32c/muldiv.md: Likewise. | |
9594 | * config/m32c/mov.md: Likewise. | |
9595 | * config/m32c/addsub.md: Likewise. | |
9596 | * config/m32c/m32c.md: Likewise. | |
9597 | * config/m32c/jump.md: Likewise. | |
9598 | * config/m32c/shift.md: Likewise. | |
9599 | ||
9600 | * config/m32c/cond.md (cmp<mode>): Call m32c_output_compare to | |
9601 | conditionally output the pattern for this. | |
9602 | * config/m32c/m32c.c (flags_needed_for_conditional): New. | |
9603 | (m32c_compare_redundant): New. | |
9604 | (m32c_output_compare): New. | |
9605 | * config/m32c/m32c-protos.h (m32c_output_compare): New. | |
9606 | ||
9607 | * config/m32c/m32c.c (m32c_prepare_shift): Fix logic to clobber | |
9608 | dest, not src. Allow other 4-byte modes. | |
9609 | ||
fc262682 DC |
9610 | 2006-03-30 Denis Chertykov <denisc@overta.ru> |
9611 | ||
9612 | * doc/md.texi: Refer to avr/constraints.md instead of | |
9613 | avr/avr.h. | |
9614 | ||
5650dfbd RS |
9615 | 2006-03-30 Roger Sayle <roger@eyesopen.com> |
9616 | ||
9617 | * expr.c (emit_group_store): Make BYTEPOS a HOST_WIDE_INT to | |
9618 | signed vs. unsigned comparison failures on some hosts. | |
9619 | ||
d3603e8c AM |
9620 | 2006-03-31 Alan Modra <amodra@bigpond.net.au> |
9621 | ||
ca0e79d9 AM |
9622 | PR target/26459 |
9623 | * config/rs6000/rs6000.h (CANNOT_CHANGE_MODE_CLASS): Limit 2003-12-08 | |
9624 | change to FLOAT_REGS. | |
9625 | ||
d3603e8c AM |
9626 | * config/rs6000/rs6000.c (rs6000_explicit_options): Add ieee. |
9627 | (rs6000_override_options): Use it. | |
9628 | (rs6000_handle_option): Set it. Set rs6000_explicit_options.abi | |
9629 | only for -mabi=spe/no-spe and -mabi=altivec. | |
9630 | ||
24cec83c GK |
9631 | 2006-03-30 Geoffrey Keating <geoffk@apple.com> |
9632 | ||
9633 | * config/darwin.h (LINK_COMMAND_SPEC): Don't try to protect %S with | |
9634 | !Zdynamiclib. | |
9635 | ||
ad3a7ce3 CD |
9636 | 2006-03-30 Carlos O'Donell <carlos@codesourcery.com> |
9637 | ||
9638 | * Makefile.in: Rename docdir to gcc_docdir. | |
9639 | ||
79edfde8 RS |
9640 | 2006-03-30 Roger Sayle <roger@eyesopen.com> |
9641 | ||
9642 | PR target/17959 | |
e8366202 | 9643 | * expr.c (emit_group_store): Optimize group stores into a pseudo |
79edfde8 RS |
9644 | register by using a paradoxical subreg to initialize the destination |
9645 | if the first or last member of the group specifies a "low part". | |
9646 | ||
c7ec5472 MK |
9647 | 2006-03-30 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
9648 | ||
9649 | PR target/26734 | |
9650 | * rtl.def (DEPS_LIST): Change type of the second operand to 'int'. | |
9651 | * target.h (struct gcc_target.speculate_insn): Change type of the | |
9652 | second parameter to 'int'. | |
9653 | * lists.c (alloc_DEPS_LIST): Change signature. Update reference to | |
9654 | the second operand of the DEPS_LIST. | |
9655 | (copy_DEPS_LIST_list): Update reference to the second operand of the | |
9656 | DEPS_LIST. | |
9657 | * rtl.h (alloc_DEPS_LIST): Update signature. | |
9658 | * sched-int.h (ds_t): Change typedef to 'int'. | |
9659 | (DEP_STATUS, BITS_PER_DEP_STATUS): Update. | |
9660 | ||
682b6a9e MK |
9661 | 2006-03-30 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
9662 | ||
9663 | * haifa-sched.c (try_ready): Change condition to restore | |
9664 | non-speculative pattern of the instruction. | |
9665 | (process_insn_depend_be_in_spec): Code to keep probability of the | |
9666 | speculative dependence non-decreasing. | |
9667 | ||
144f8315 JZ |
9668 | 2006-03-30 Jie Zhang <jie.zhang@analog.com> |
9669 | ||
9670 | * config/bfin/bfin.c (single_move_for_strmov): Renamed to... | |
9671 | (single_move_for_movmem): ... this. Also change all uses. | |
9672 | (bfin_expand_strmov): Renamed to... | |
9673 | (bfin_expand_movmem): ... this. Also change all uses. | |
9674 | * config/bfin/bfin.md (movstrsi): Renamed to... | |
9675 | (movstrsi): ...this. | |
9676 | ||
ae25dbda PB |
9677 | 2006-03-30 Paolo Bonzini <bonzini@gnu.org> |
9678 | ||
9679 | PR tree-optimization/26830 | |
9680 | ||
9681 | * tree-ssa-copy.c (copy_prop_visit_assignment): Do not check loop depth. | |
9682 | (copy_prop_visit_stmt): Remove write-only variable ann. | |
9683 | (init_copy_prop): Check variable loop depth here. Do not simulate | |
9684 | memory-tag and virtual operand PHIs except for store copy prop. | |
9685 | ||
7d3a3b01 RG |
9686 | 2006-03-30 Richard Guenther <rguenther@suse.de> |
9687 | ||
9688 | * config/i386/i386.c: Remove builtins for SSE2 ABI intrinsic | |
9689 | variants with double arguments. | |
9690 | ||
10a27391 DE |
9691 | 2006-03-29 David Edelsohn <edelsohn@gnu.org> |
9692 | ||
9693 | * genpreds.c (write_tm_constrs_h): Delete variable p. | |
f8569394 DE |
9694 | * genconditions.c (write_header): Add tm-constrs.h to included |
9695 | headers. | |
f160357f | 9696 | * genpeep.c (main): Add toplev.h to included headers. |
92cf85e9 | 9697 | * Makefile.in (build/gencondmd.o): Add tm-constrs.h dependency. |
c13a761d | 9698 | (build/genpeep.o): Add toplev.h dependency. |
40377a6d | 9699 | * config/rs6000/constraints.md: Add "W" constraint. |
10a27391 | 9700 | |
a6a12bb9 RS |
9701 | 2006-03-29 Roger Sayle <roger@eyesopen.com> |
9702 | ||
9703 | * stor-layout.c (mode_for_size_tree): Remove restiction on type | |
9704 | sizes by correctly testing whether the size fits a host integer. | |
9705 | (initialize_sizetypes): Use set_min_and_max_values_for_integral_type | |
9706 | to correctly set TYPE_MIN_VALUE and TYPE_MAX_VALUE to the full | |
9707 | SImode range for the default sizetype and bitsizetype. | |
9708 | ||
0a931ce5 RS |
9709 | 2006-03-29 Roger Sayle <roger@eyesopen.com> |
9710 | ||
9711 | * convert.c (convert_to_pointer): Preserve the TREE_OVERFLOW | |
9712 | and TREE_CONSTANT_OVERFLOW bits of the argument. Return | |
9713 | quickly if the argument is already of the correct type. | |
9714 | Call fold_build1 instead of build1. Tidy up blank lines. | |
9715 | ||
279bb624 DE |
9716 | 2006-03-29 David Edelsohn <edelsohn@gnu.org> |
9717 | ||
9718 | * genemit.c (main): Add tm-constrs.h to included headers. | |
9719 | * genoutput.c (output_prologue): Add tm-constrs.h to included headers. | |
9720 | * genpeep.c (main): Add tm-constrs.h to included headers. | |
9721 | * genpreds.c (write_satisfies_constraint_fns): Rename to ... | |
9722 | (write_tm_constrs_h): this and write complete file. | |
9723 | (write_tm_preds_h): Do not emit satisfies_constraint fns. | |
9724 | (write_insn_preds_c): Add tm-constrs.h to included headers. | |
9725 | (gen_constrs): New variable. | |
9726 | (parse_option): Parse "-c". | |
9727 | (main): Invoke write_tm_constrs_h. | |
9728 | * genrecog.c (write_header): Add tm-constrs.h to included headers. | |
9729 | * Makefile.in (STAGECOPYSTUFF): Add tm-constrs.h. | |
9730 | (object_out_file): Add tm-constrs.h dependency. | |
9731 | (insn-emit.o): Same. | |
9732 | (insn-output.o): Same. | |
9733 | (insn-peep.o): Same. | |
9734 | (insn-preds.o): Same. | |
9735 | (insn-recog.o): Same. | |
9736 | (tm-constsr.h): New target. | |
9737 | (s-constrs-h): New target. | |
9738 | ||
9739 | * config/rs6000/constraints.md: New file. | |
9740 | * config/rs6000/rs6000.c: Include tm-constrs.h. | |
9741 | (num_insn_constant_wide): Convert to satisfies_constraint. | |
9742 | (rs6000_rtx_costs): Convert to satisfies_constraint. | |
9743 | * config/rs6000/rs6000.h (REG_CLASS_FROM_LETTER): Delete. | |
9744 | (CONST_OK_FOR_LETTER_P): Delete. | |
9745 | (CONST_DOUBLE_OK_FOR_LETTER_P): Delete. | |
9746 | (EXTRA_CONSTRAINT): Delete. | |
9747 | (EXTRA_MEMORY_CONSTRAINT): Delete. | |
9748 | (EXTRA_ADDRESS_CONSTRAINT): Delete. | |
9749 | * config/rs6000/predicates.md: Convert to satisfies_constraint. | |
9750 | * config/rs6000/rs6000.md: Include constraints.md. Convert to | |
9751 | satisfies_constraint. | |
9752 | ||
9753 | * config/i386/i386.c: Include tm-constrs.h. | |
9754 | ||
e14b10df SP |
9755 | 2006-03-29 Sebastian Pop <pop@cri.ensmp.fr> |
9756 | ||
9757 | * tree-loop-linear.c (compute_data_dependences_for_loop): Adjust calls. | |
9758 | * tree-data-ref.c (find_data_references_in_loop, | |
9759 | compute_data_dependences_for_loop): Use pointers to VEC. | |
9760 | (analyze_all_data_dependences): Adjust calls. | |
9761 | * tree-data-ref.h (find_data_references_in_loop, | |
9762 | compute_data_dependences_for_loop): Adjust declarations. | |
9763 | * tree-vect-analyze.c (vect_analyze_data_refs): Adjust call to | |
9764 | compute_data_dependences_for_loop. | |
9765 | ||
221b2a64 PB |
9766 | 2006-03-29 Paul Brook <paul@codesourcery.com> |
9767 | ||
9768 | * config/arm/vfp.md (movsf_vfp): Disparage w<->r alternatives. | |
9769 | (movdf_vfp): Ditto. | |
9770 | ||
d31db22f SP |
9771 | 2006-03-29 Sebastian Pop <pop@cri.ensmp.fr> |
9772 | ||
9773 | PR tree-optimization/26859 | |
9774 | * tree-ssa-loop-niter.c (infer_loop_bounds_from_undefined): Avoid | |
9775 | division by zero. | |
9776 | (convert_step): Remove TREE_OVERFLOW and TREE_CONSTANT_OVERFLOW flags | |
9777 | for the step after fold_convert. | |
9778 | ||
67f07489 PB |
9779 | 2006-03-29 Paul Brook <paul@codesourcery.com> |
9780 | ||
9781 | * reload1.c (choose_reload_regs): Check for all RTX_AUTOINC operators. | |
9782 | (inc_for_reload): Handle PRE_MODIFY and POST_MODIFY addresses. | |
9783 | ||
c2a64439 PB |
9784 | 2006-03-29 Paul Brook <paul@codesourcery.com> |
9785 | ||
9786 | PR middle-end/23623 | |
9787 | * targhooks.c (default_narrow_bitfield): New fuction. | |
9788 | * targhooks.h (default_narrow_bitfield): add prototype. | |
9789 | * target.h (gcc_target): Add narrow_volatile_bitfield. | |
9790 | * target-def.h (TARGET_NARROW_VOLATILE_BITFIELD): Define. | |
9791 | * stor-layout.c (get_best_mode): Use targetm.narrow_volatile_bitfield. | |
9792 | * doc/tm.texi: Document TARGET_NARROW_VOLATILE_BITFIELDS. | |
9793 | * config/arm/arm.c (TARGET_NARROW_VOLATILE_BITFIELD): Define. | |
9794 | ||
4dc19cc0 AK |
9795 | 2006-03-29 Andreas Krebbel <krebbel1@de.ibm.com> |
9796 | ||
4b1c1f6f | 9797 | * config.gcc (s390-*-linux-*, s390x-*-linux*): Add t-dfprules to |
4dc19cc0 AK |
9798 | tmake_file. |
9799 | * config/s390/s390.c (S390_scalar_mode_supported_p): New function. | |
9800 | (NR_C_MODES): Add TDmode, DDmode and SDmode. | |
9801 | (s390_output_pool_entry, ): Accept MODE_DECIMAL_FLOAT. | |
9802 | (s390_hard_regno_mode_ok): Disallow TDmode in integer regs. | |
9803 | (s390_function_arg_float): Allow SDmode and DDmode values to be | |
9804 | passed in floating point registers. | |
4b1c1f6f | 9805 | (s390_function_arg_integer, s390_function_value): Replace MODE_FLOAT |
4dc19cc0 AK |
9806 | check with SCALAR_FLOAT_MODE_P. |
9807 | (TARGET_SCALAR_MODE_SUPPORTED_P): Define target macro. | |
9808 | ||
f08ac361 ZD |
9809 | 2006-03-28 Zdenek Dvorak <dvorakz@suse.cz> |
9810 | ||
9811 | PR tree-optimization/25985 | |
9812 | * tree-ssa-loop-niter.c (number_of_iterations_le, | |
9813 | number_of_iterations_ne): Make comments more precise. | |
9814 | (number_of_iterations_cond): Add only_exit argument. Use the | |
9815 | fact that signed variables do not overflow only when only_exit | |
9816 | is true. | |
9817 | (loop_only_exit_p): New. | |
9818 | (number_of_iterations_exit): Pass result of loop_only_exit_p to | |
9819 | number_of_iterations_cond. | |
9820 | ||
dd79d394 ZD |
9821 | 2006-03-28 Zdenek Dvorak <dvorakz@suse.cz> |
9822 | ||
9823 | PR tree-optimization/26643 | |
9824 | * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Do not handle | |
9825 | bit_field_refs. | |
9826 | ||
95ec2af0 KK |
9827 | 2006-03-28 Kaz Kojima <kkojima@gcc.gnu.org> |
9828 | ||
9829 | * config/sh/sh.md (udivsi3_i4_int): Clobber MACH_REG and MACL_REG. | |
9830 | (divsi3_i4_int): Likewise. | |
9831 | ||
e8366202 | 9832 | 2006-03-28 Roger Sayle <roger@eyesopen.com> |
5ac60669 RS |
9833 | |
9834 | * expr.c (emit_group_store): Only create a new pseudo reg if the | |
9835 | quantity it needs to hold isn't already a suitable pseudo. | |
9836 | ||
b6313dcf JL |
9837 | 2006-03-28 Jeff Law <law@redhat.com> |
9838 | ||
9839 | * timevar.def (TV_TREE_PHI_CPROP): New timevar. | |
9840 | * tree-ssa-dom.c (pass_phi_only_cprop): Use it. | |
9841 | ||
dd2c62dc RS |
9842 | 2006-03-28 Roger Sayle <roger@eyesopen.com> |
9843 | ||
9844 | * fold-const.c (fold_binary) <BIT_XOR_EXPR>: Fold (X & Y) ^ Y as | |
9845 | the equivalent ~X & Y, and the symmetry related transformations. | |
4b1c1f6f | 9846 | (fold_binary) <BIT_AND_EXPR>: Similarly, fold (X ^ Y) & Y as |
dd2c62dc RS |
9847 | ~X & Y, and symmetry related transforms. |
9848 | ||
3cc82eea MK |
9849 | 2006-03-28 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
9850 | ||
9851 | Revert my 2006-03-27 patches. | |
9852 | ||
e8206491 RS |
9853 | 2006-03-28 Roger Sayle <roger@eyesopen.com> |
9854 | ||
9855 | * fold-const.c (fold_unary) <NOP_EXPR>: Fold (T1)(~(T2)X) as | |
9856 | ~(T1)X, when T1 and T2 are integer types of the same precision | |
9857 | and (T2)X isn't an extension. | |
9858 | ||
72922229 JL |
9859 | 2006-03-28 Jeff Law <law@redhat.com> |
9860 | ||
9861 | PR tree-optimization/26796 | |
9862 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Queue blocks which | |
9863 | need EH edge cleanups rather than purging them immediately. | |
9864 | (eliminate_degenerate_phis): Handle queued EH cleanups. | |
9865 | ||
c245c134 DB |
9866 | 2006-03-28 Daniel Berlin <dberlin@dberlin.org> |
9867 | ||
9868 | * tree-ssa-alias.c (create_sft): Initially inherit TREE_ADDRESSABLE | |
9869 | from parent_var. | |
9870 | ||
7f166b0a RS |
9871 | 2006-03-27 Roger Sayle <roger@eyesopen.com> |
9872 | ||
9873 | PR middle-end/22524 | |
9874 | * fold-const.c (fold_binary) <MINUS_EXPR>: Call fold_convert to | |
9875 | cast BIT_NOT_EXPR operand to the correct type. | |
9876 | ||
ebf78a47 SP |
9877 | 2006-03-27 Sebastian Pop <pop@cri.ensmp.fr> |
9878 | ||
9879 | * tree-loop-linear.c: Don't include varray.h. | |
9880 | (gather_interchange_stats, try_interchange_loops, | |
9881 | linear_transform_loops): Use VEC instead of VARRAY. | |
9882 | * lambda-mat.c: Don't include varray.h. | |
9883 | * tree-chrec.c: Same. | |
9884 | * lambda-trans.c: Same. | |
9885 | * tree-vectorizer.c (new_loop_vec_info, destroy_loop_vec_info): Use | |
9886 | VEC instead of VARRAY. | |
9887 | * tree-vectorizer.h: Idem. | |
9888 | * tree-data-ref.c (dump_data_references, | |
9889 | dump_data_dependence_relations, dump_dist_dir_vectors, dump_ddrs, | |
9890 | initialize_data_dependence_relation, finalize_ddr_dependent, | |
9891 | compute_all_dependences, find_data_references_in_loop, | |
9892 | compute_data_dependences_for_loop, analyze_all_data_dependences, | |
9893 | free_dependence_relation, free_dependence_relations, | |
9894 | free_data_refs): Idem. | |
9895 | * tree-data-ref.h (data_reference_p, subscript_p): New. | |
9896 | (data_dependence_relation, DDR_SUBSCRIPT, DDR_NUM_SUBSCRIPTS): Use | |
9897 | VEC instead of VARRAY. | |
9898 | (DDR_SUBSCRIPTS_VECTOR_INIT): Removed. | |
9899 | (find_data_references_in_loop, compute_data_dependences_for_loop, | |
9900 | dump_ddrs, dump_dist_dir_vectors, dump_data_references, | |
9901 | dump_data_dependence_relations, free_dependence_relations, | |
9902 | free_data_refs): Adjust declaration. | |
9903 | (lambda_transform_legal_p): Move declaration here... | |
9904 | * tree-vect-analyze.c (vect_analyze_data_ref_dependences, | |
9905 | vect_compute_data_refs_alignment, vect_verify_datarefs_alignment, | |
9906 | vect_enhance_data_refs_alignment, vect_analyze_data_ref_accesses, | |
9907 | vect_analyze_data_refs): Use VEC instead of VARRAY. | |
9908 | * lambda.h (lambda_transform_legal_p): ...from here. | |
9909 | * lambda-code.c (lambda_transform_legal_p): Use VEC instead of VARRAY. | |
9910 | * tree-vect-transform.c (vect_update_inits_of_drs): Idem. | |
9911 | * Makefile.in (tree-loop-linear.o, lambda-mat.o, lambda-trans.o, | |
9912 | tree-chrec.o): Don't depend on VARRAY_H. | |
9913 | ||
5edb2b13 MK |
9914 | 2006-03-27 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
9915 | ||
9916 | * rtl.def (Copyright): Update date. | |
9917 | (DEPS_LIST): Change type of the second operand to 'int'. | |
9918 | * target.h (Copyright): Update date. | |
9919 | (struct gcc_target.speculate_insn): Change type of the second parameter | |
9920 | to 'int'. | |
9921 | * lists.c (Copyright): Update date. | |
9922 | (alloc_DEPS_LIST): Change signature. Update reference to the second | |
9923 | operand of the DEPS_LIST. | |
9924 | (copy_DEPS_LIST_list): Update reference to the second operand of the | |
9925 | DEPS_LIST. | |
9926 | * rtl.h (Copyright): Update date. | |
9927 | (alloc_DEPS_LIST): Update signature. | |
9928 | * sched-int.h (Copyright): Update date. | |
9929 | (ds_t): Change typedef to 'int'. | |
9930 | (DEP_STATUS, BITS_PER_DEP_STATUS): Update. | |
9931 | ||
c96a7cc5 MK |
9932 | 2006-03-27 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
9933 | ||
9934 | * haifa-sched.c (Copyright): Update date. | |
9935 | (try_ready): Change condition to restore non-speculative pattern | |
9936 | of the instruction. | |
9937 | (process_insn_depend_be_in_spec): Code to keep probability of the | |
9938 | speculative dependence non-decreasing. | |
9939 | ||
b256fbaf BS |
9940 | 2006-03-27 Bernd Schmidt <bernd.schmidt@analog.com> |
9941 | ||
9942 | * regrename.c (replace_oldest_value_addr): Initialize a variable to | |
9943 | shut up the compiler. | |
9944 | ||
575066d2 R |
9945 | 2006-03-27 J"orn Rennecke <joern.rennecke@st.com> |
9946 | ||
9947 | * config/sh/t-sh ($(T)libic_invalidate_array_4-100.a): Fix rule | |
9948 | to use lib prefix for target. | |
9949 | ($(T)libic_invalidate_array_4-200.a): Likewise. | |
9950 | ($(T)libic_invalidate_array_4a.a): Likewise. | |
9951 | ||
25e651ca AS |
9952 | 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com> |
9953 | J"orn Rennecke <joern.rennecke@st.com> | |
9954 | ||
9955 | * superh.opt: New file. | |
9956 | * sh.c (boardtype, osruntime): Remove. | |
9957 | * superh.h (SUBTARGET_OPTIONS): Remove. | |
9958 | * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. | |
9959 | ||
9960 | * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed | |
9961 | arguments with ^ and/or []. | |
9962 | ||
9963 | * config.gcc (sh-*-*): Add quoting to account for quirk of | |
9964 | Solaris /bin/sh. | |
9965 | Replace == with = in enable_incomplete_targets test. | |
9966 | ||
9967 | * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT | |
9968 | with MASK_LITTLE_ENDIAN. | |
9969 | ||
9970 | * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. | |
9971 | * config/sh/sh.opt: Added to some comments. | |
9972 | * config/sh/superh.h: Removed some chaff. | |
9973 | ||
9974 | * config/sh/sh.opt: Add m4-[1234]00* options. | |
9975 | * config/sh/sh.c (sh_handle_option): Likewise. | |
9976 | * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. | |
9977 | (ic_invalidate_array_4-100.o): New rule. | |
9978 | ($(T)libic_invalidate_array_4-100.a): Likewise. | |
9979 | (ic_invalidate_array_4-200.o): Likewise. | |
9980 | ($(T)libic_invalidate_array_4-200.a): Likewise. | |
9981 | (ic_invalidate_array_4a.o): Likewise. | |
9982 | ($(T)libic_invalidate_array_4a.a): Likewise. | |
9983 | * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. | |
9984 | * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, | |
9985 | m4-200*, and m4a*. | |
9986 | * config/sh/crt1.asm: Merged in profiling code. | |
9987 | * config/sh/superh.h (STARTFILE_SPEC): Override. | |
9988 | * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. | |
9989 | Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. | |
9990 | * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. | |
9991 | ||
9992 | * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. | |
9993 | * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / | |
9994 | MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. | |
9995 | ||
9996 | * sh.opt (mpretend-cmove): New option. | |
9997 | * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. | |
9998 | * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. | |
9999 | (movsicc): Add TARGET_PRETEND_CMOVE code. | |
10000 | ||
74aa8b4b AK |
10001 | 2006-03-27 Andreas Krebbel <krebbel1@de.ibm.com> |
10002 | ||
4b1c1f6f | 10003 | * config/s390/s390-protos.h (s390_hard_regno_mode_ok, |
74aa8b4b AK |
10004 | s390_class_max_nregs): New function prototypes. |
10005 | * config/s390/s390.c (REGNO_PAIR_OK): New macro. | |
10006 | (s390_hard_regno_mode_ok, s390_class_max_nregs): New functions. | |
10007 | * config/s390/s390.h (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, | |
10008 | CLASS_MAX_NREGS): Macro bodies replaced by function calls. | |
10009 | ||
0d06ead5 GK |
10010 | 2006-03-26 Geoffrey Keating <geoffk@apple.com> |
10011 | ||
10012 | * dwarf2out.c (add_location_or_const_value_attribute): Call | |
10013 | tree_add_const_value_attribute if nothing else works. | |
10014 | (reference_to_unused): New. | |
10015 | (rtl_for_decl_init): Use reference_to_unused to decide whether | |
10016 | to output an initializer. | |
10017 | ||
036aadfc AM |
10018 | 2006-03-27 Alan Modra <amodra@bigpond.net.au> |
10019 | ||
10020 | PR target/26459 | |
10021 | * config/rs6000/rs6000.md (DF reg move peephole): Prevent | |
10022 | peephole removing spe frob_di_df_2. | |
10023 | ||
ba42e045 SP |
10024 | 2006-03-26 Sebastian Pop <pop@cri.ensmp.fr> |
10025 | ||
10026 | * tree-data-ref.c: Rename DDR_SIZE_VECT to DDR_NB_LOOPS. | |
10027 | (subscript_dependence_tester_1): Declared. | |
10028 | (print_dir_vectors, print_dist_vectors): New. | |
10029 | (debug_data_dependence_relation): New. | |
10030 | (dump_data_dependence_relation): Print more details. | |
10031 | (initialize_data_dependence_relation): Initialize DDR_LOOP_NEST. | |
10032 | (analyze_subscript_affine_affine): Don't ICE when gcd_alpha_beta is 0. | |
10033 | (save_dist_v, save_dir_v, add_outer_distances, | |
10034 | build_classic_dist_vector_1): New. | |
10035 | (build_classic_dist_vector): Rewrite to work on DDR_LOOP_NEST. | |
10036 | Don't test for lambda_vector_lexico_pos. | |
10037 | (same_access_functions, add_multivariate_self_dist, | |
10038 | add_other_self_distances, dir_from_dist): New. | |
4b1c1f6f | 10039 | (build_classic_dir_vector): Replace implementation almost identical to |
ba42e045 SP |
10040 | build_classic_dist_vector with a walk of DDR_DIST_VECTS with a call to |
10041 | dir_from_dist. | |
10042 | (subscript_dependence_tester_1): New. | |
10043 | (subscript_dependence_tester): Handle the lexicographically negative | |
10044 | distance vectors by recomputing the dependence relation. | |
10045 | (compute_affine_dependence): Remove parameter loop_nest_depth. | |
10046 | (compute_self_dependence): Don't call compute_subscript_distance. | |
10047 | (compute_all_dependences): Remove parameters nb_loops, loop_nest_depth. | |
10048 | Add a parameter for the loop_nest. | |
10049 | (find_loop_nest_1, find_loop_nest): New. | |
10050 | (compute_data_dependences_for_loop): Compute the loop nest, and give | |
10051 | up if the nest is not well formed. | |
10052 | * tree-data-ref.h (loop_p): New. | |
4b1c1f6f | 10053 | (struct data_dependence_relation): Replace size_vect field with |
ba42e045 SP |
10054 | loop_nest, a vec of loops. |
10055 | (DDR_SIZE_VECT): Renamed DDR_NB_LOOPS. | |
10056 | (DDR_LOOP_NEST): New. | |
10057 | (print_dir_vectors, print_dist_vectors, | |
10058 | debug_data_dependence_relation): Declared. | |
10059 | (index_in_loop_nest): New. | |
10060 | * tree-vect-analyze.c (vect_analyze_data_ref_dependence): Use | |
10061 | DDR_LOOP_NEST and index_in_loop_nest to determine the dependence | |
10062 | distance. | |
10063 | ||
30a440a7 AN |
10064 | 2006-03-25 Adam Nemet <anemet@caviumnetworks.com> |
10065 | ||
10066 | * simplify-rtx.c (simplify_relational_operation): Call | |
10067 | simplify_relational_operation_1 even if mode is VOIDmode. | |
10068 | ||
fe1f8f44 DB |
10069 | 2006-03-25 Daniel Berlin <dberlin@dberlin.org> |
10070 | ||
10071 | PR tree-optimization/26804 | |
10072 | * tree.h (DECL_CALL_CLOBBERED): New macro. | |
10073 | (tree_decl_common): Add call_clobbered_flag. | |
10074 | * tree-flow-inline.h (is_call_clobbered): Use DECL_CALL_CLOBBERED. | |
10075 | (mark_call_clobbered): Set DECL_CALL_CLOBBERED. | |
10076 | (clear_call_clobbered): Clear DECL_CALL_CLOBBERED. | |
10077 | (mark_non_addressable): Ditto. | |
10078 | * tree-ssa.c (verify_call_clobbered): New function. | |
10079 | (verify_alias_info): Use it. | |
10080 | * tree-pass.h (pass_reset_cc_flags): New prototype. | |
10081 | * tree-ssa-alias.c (pass_reset_cc_flags): New structure. | |
10082 | (reset_cc_flags): New function. | |
10083 | * passes.c (init_optimization_passes): Call reset_cc_flags after | |
10084 | initializing referenced_vars. | |
10085 | ||
1d8b38a0 UB |
10086 | 2006-03-25 Uros Bizjak <uros@kss-loka.si> |
10087 | Roger Sayle <roger@eyesopen.com> | |
10088 | ||
10089 | PR middle-end/26717 | |
10090 | * fold-const.c (fold_binary) [RDIV_EXPR]: Do not optimize A / A | |
10091 | to 1.0 for non-real operands. Implement A / A optimization for | |
10092 | complex operands. | |
10093 | ||
75bcbcdb L |
10094 | 2006-03-25 H.J. Lu <hongjiu.lu@intel.com> |
10095 | ||
10096 | * config/i386/i386.c (size_cost): Correct the comment for | |
10097 | cost of storing fp registers. | |
10098 | (i386_cost): Likewise. | |
10099 | (i486_cost): Likewise. | |
10100 | (pentium_cost): Likewise. | |
10101 | (pentiumpro_cost): Likewise. | |
10102 | (k6_cost): Likewise. | |
10103 | (athlon_cost): Likewise. | |
10104 | (k8_cost): Likewise. | |
10105 | (pentium4_cost): Likewise. | |
10106 | (nocona_cost): Likewise. | |
10107 | (generic64_cost): Likewise. | |
10108 | (generic32_cost): Likewise. | |
10109 | ||
625a46d9 DC |
10110 | 2006-03-24 Denis Chertykov <denisc@overta.ru> |
10111 | ||
10112 | * config/avr/avr-protos.h (extra_constraint): Delete. | |
10113 | (extra_constraint_Q): New declaration. | |
10114 | * config/avr/constraints.md: New file. | |
10115 | * config/avr/avr.md: Include it. | |
10116 | (REG_X, REG_Y, REG_Z, REG_W): New constants. | |
10117 | (TMP_REGNO, ZERO_REGNO): Likewise. | |
10118 | (UNSPEC_STRLEN, UNSPEC_INDEX_JMP): Likewise. | |
10119 | * config/avr/avr.c (avr_reg_class_from_letter): Delete. | |
10120 | (extra_constraint): Delete. | |
10121 | (extra_constraint_Q): Test for memory constraint 'Q'. | |
10122 | * config/avr/avr.h (REG_X,REG_Y,REG_Z,REG_W): Delete. | |
10123 | (REG_CLASS_FROM_LETTER): Delete. | |
10124 | (CONST_OK_FOR_LETTER_P): Delete. | |
10125 | (CONST_DOUBLE_OK_FOR_LETTER_P): Delete. | |
10126 | (EXTRA_CONSTRAINT): Delete. | |
10127 | (TMP_REGNO): Delete. | |
10128 | (ZERO_REGNO): Delete. | |
10129 | ||
3ae194cd JL |
10130 | 2006-03-24 Jeff Law <law@redhat.com> |
10131 | ||
10132 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt | |
10133 | directly. Call mark_new_vars_to_rename slightly earlier. | |
10134 | ||
895de5a8 GK |
10135 | 2006-03-24 Geoffrey Keating <geoffk@apple.com> |
10136 | ||
9e51ddaa GK |
10137 | * dwarf2out.c (is_c_family): Understand new DWARF3 language types. |
10138 | (is_cxx): Likewise. | |
10139 | (gen_compile_unit_die): Use new language types for Objective-C and | |
10140 | Objective-C++. | |
10141 | (dwarf2out_decl): Use is_cxx rather than testing explicitly against | |
10142 | DW_LANG_C_plus_plus. | |
10143 | ||
895de5a8 GK |
10144 | PR 26793 |
10145 | * config/t-darwin (crt3.o): Work around bug 26840. | |
10146 | * config/darwin-crt3.c: Rewrite. | |
10147 | * config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o. | |
10148 | ||
e713adf6 CD |
10149 | 2006-03-24 Carlos O'Donell <carlos@codesourcery.com> |
10150 | ||
10151 | * doc/invoke.texi: Document -femit-class-debug-always | |
10152 | * common.opt: Add -femit-class-debug-always. | |
10153 | ||
93fa8428 AK |
10154 | 2006-03-24 Andreas Krebbel <krebbel1@de.ibm.com> |
10155 | ||
10156 | * config/s390/s390.c (s390_decompose_address): Allow SImode for | |
10157 | index and base register. | |
10158 | (s390_expand_plug_operand, legitimate_address_p, preferred_la_operand_p, | |
10159 | print_operand_address, print_operand): Replaced REG_OK_FOR_BASE_STRICT_P | |
10160 | with REGNO_OK_FOR_BASE_P and REG_OK_FOR_INDEX_STRICT_P with | |
10161 | REGNO_OK_FOR_INDEX_P. | |
10162 | * config/s390/s390.h (REGNO_OK_FOR_INDEX_P): Replaced check with | |
10163 | ADDR_REGNO_P. | |
10164 | (REG_OK_FOR_INDEX_NONSTRICT_P, REG_OK_FOR_BASE_NONSTRICT_P, | |
10165 | REG_OK_FOR_INDEX_STRICT_P, REG_OK_FOR_BASE_STRICT_P, REG_OK_FOR_INDEX_P, | |
10166 | REG_OK_FOR_BASE_P): Definitions removed. | |
10167 | ||
8cb86b65 JJ |
10168 | 2006-03-24 Jakub Jelinek <jakub@redhat.com> |
10169 | ||
10170 | PR middle-end/26611 | |
10171 | * gimplify.c (gimplify_bind_expr): Only call omp_add_variable on | |
10172 | non-global variables that don't have DECL_SEEN_IN_BIND_EXPR_P bit | |
10173 | set yet or weren't marked as local yet. | |
10174 | ||
84c9cb12 BS |
10175 | 2006-03-24 Bernd Schmidt <bernd.schmidt@analog.com> |
10176 | ||
10177 | * regrename.c (scan_rtx_address): Initialize a variable to shut up | |
10178 | the compiler. | |
10179 | ||
d04b6e6e EB |
10180 | 2006-03-24 Eric Botcazou <ebotcazou@adacore.com> |
10181 | ||
10182 | * config/rs6000/rs6000-protos.h (rs6000_offsettable_memref_p): Declare. | |
10183 | (rs6000_legitimate_small_data_p): Delete. | |
10184 | * config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New predicate. | |
10185 | (rs6000_legitimate_small_data_p): Rename to legitimate_small_data_p | |
10186 | and make static. Add forward declaration. Update uses. | |
10187 | (rs6000_split_multireg_move): Use rs6000_offsettable_memref_p instead | |
10188 | of offsettable_memref_p. | |
10189 | * config/rs6000/rs6000.md (movdf_hardfloat32): Revert 2005-08-23 fix. | |
10190 | Use rs6000_offsettable_memref_p instead of a less accurate predicate. | |
10191 | ||
243cc836 JL |
10192 | 2006-03-24 Jeff Law <law@redhat.com> |
10193 | ||
10194 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work | |
10195 | around bug in immediate-use iterator. | |
10196 | ||
5b314bb3 AM |
10197 | 2006-03-24 Alan Modra <amodra@bigpond.net.au> |
10198 | ||
10199 | PR target/26607 | |
10200 | * config/rs6000/darwin-ldouble.c: Don't compile when __NO_FPRS__ | |
10201 | or __LITTLE_ENDIAN__. | |
10202 | ||
b368d6b8 R |
10203 | 2006-03-23 J"orn Rennecke <joern.rennecke@st.com> |
10204 | ||
10205 | * config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files. | |
10206 | * config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant. | |
10207 | * config/sh/t-sh (LIB1ASMFUNCS): Add _div_table. | |
10208 | * config/sh/sh.opt (mdiv=): Amend description. | |
10209 | * config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro. | |
10210 | (TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise. | |
10211 | (sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1, | |
10212 | SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC. | |
10213 | (OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1. | |
10214 | Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros. | |
10215 | * config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns. | |
10216 | (udivsi3, divsi3): Use them. Check TARGET_DIVIDE_CALL_TABLE / | |
10217 | TARGET_DIVIDE_CALL_FP. | |
10218 | ||
a57aee2a MK |
10219 | 2006-03-23 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
10220 | ||
10221 | * haifa-sched.c (choose_ready): Fix type of the local variable. | |
10222 | Move local variables. Add comment. | |
10223 | (check_reg_live): Change signature. Make callable from debugger. | |
10224 | * sched-int.h (check_reg_live): Update signature. | |
10225 | * sched-ebb.c (check_reg_live): Update parameters. | |
10226 | * sched-rgn.c (check_reg_live): Ditto. | |
10227 | (region_head_or_leaf_p): Check pointer before dereferencing. | |
10228 | * config/ia64/ia64.c (ia64_set_sched_flags): Disable data speculation | |
10229 | before reload on optimization levels below 1. | |
10230 | ||
dec6909b RH |
10231 | 2006-03-23 Richard Henderson <rth@redhat.com> |
10232 | ||
e584065d RH |
10233 | * config/alpha/alpha.c (alpha_legitimate_constant_p): Reject |
10234 | tls symbols. | |
10235 | ||
dec6909b RH |
10236 | PR target/26347 |
10237 | * config/alpha/predicates.md (local_symbolic_operand): Reject | |
10238 | weak symbols. | |
10239 | ||
60fee157 AP |
10240 | 2006-03-23 Andrew Pinski <pinskia@physics.uc.edu> |
10241 | ||
10242 | PR tree-opt/26795 | |
10243 | * tree-ssa-pre.c (create_value_expr_from): Don't reject | |
10244 | expressions which have overflowed constants. | |
10245 | ||
79b9dd8c ZD |
10246 | 2006-03-23 Zdenek Dvorak <dvorakz@suse.cz> |
10247 | ||
10248 | * cse.c (cse_end_of_basic_block): Do not check for LOOP_END note. | |
10249 | ||
054a09fb ZD |
10250 | 2006-03-23 Zdenek Dvorak <dvorakz@suse.cz> |
10251 | ||
10252 | * cfgloopmanip.c (create_loop_notes): Removed. | |
10253 | * final.c (final_scan_insn): Do not handle loop notes. | |
10254 | * jump.c (squeeze_notes): Ditto. | |
10255 | * cfglayout.c (skip_insns_after_block, | |
10256 | duplicate_insn_chain): Ditto. | |
10257 | * cfgcleanup.c (rest_of_handle_jump2): Do not call | |
10258 | create_loop_notes. | |
10259 | * cfgloop.h (create_loop_notes): Declaration removed. | |
10260 | ||
c16ba1d5 RS |
10261 | 2006-03-23 Richard Sandiford <richard@codesourcery.com> |
10262 | ||
10263 | * varasm.c (output_constant_pool): Restore fnname and fndecl | |
10264 | arguments. | |
10265 | (assemble_start_function): Adjust call accordingly. | |
10266 | (assemble_end_function): Likewise. | |
10267 | ||
698cf1c8 VR |
10268 | 2006-03-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
10269 | ||
91d876d9 | 10270 | PR mudflap/26789 |
7a752640 VR |
10271 | * tree-mudflap.c (mudflap_finish_file): Skip erroneous objects. |
10272 | ||
91d876d9 | 10273 | PR mudflap/26790 |
698cf1c8 VR |
10274 | * tree-mudflap.c (mf_xform_derefs_1): Return early on error_mark_node. |
10275 | ||
ddaf3b86 VR |
10276 | 2006-03-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
10277 | ||
10278 | PR driver/22600 | |
10279 | * system.h (ICE_EXIT_CODE): New macro. | |
10280 | * diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE. | |
10281 | (diagnostic_action_after_output): Likewise. | |
10282 | * gcc.c (fatal_ice): New function. | |
10283 | (execute): Use it instead of fatal. | |
10284 | (fancy_abort): Likewise. | |
10285 | * doc/invoke.texi (-pass-exit-codes): Document return code for ICEs. | |
10286 | ||
4dc7782d JL |
10287 | 2006-03-22 Jeff Law <law@redhat.com> |
10288 | ||
10289 | * loop-unroll.c (analyze_iv_to_split_insn): Handle | |
10290 | iv_analyze_result returning false. | |
10291 | ||
f328a23a JZ |
10292 | 2006-03-22 Jie Zhang <jie.zhang@analog.com> |
10293 | ||
10294 | * config/bfin/bfin.h (ASM_FORMAT_PRIVATE_NAME): Remove. | |
10295 | ||
fad41cd7 RH |
10296 | 2006-03-22 Richard Henderson <rth@redhat.com> |
10297 | ||
10298 | PR middle-end/26084 | |
10299 | * except.c (duplicate_eh_regions_0): New. | |
10300 | (duplicate_eh_region_1): Duplicate the children of the node as | |
10301 | well as the node itself. Link them up properly. | |
10302 | (duplicate_eh_region_2): Merge into ... | |
10303 | (duplicate_eh_regions): ... here. Take copy_region argument, and | |
10304 | copy only a sub-tree if asked. Simplify copying and fixup. | |
10305 | (eh_region_outer_p): New. | |
10306 | * except.h (duplicate_eh_regions): Update decl. | |
10307 | (eh_region_outer_p): Declare. | |
10308 | * omp-low.c (lower_omp_single): Fix eh region placement wrt OMP_RETURN. | |
10309 | (lower_omp_master): Likewise. | |
10310 | (lower_omp_ordered): Likewise. | |
10311 | * tree-cfg.c (struct move_stmt_d): Add new_label_map. | |
10312 | (move_stmt_r): Use it to remap labels. Handle recursion vs | |
10313 | remap_decls_p properly. | |
10314 | (move_block_to_fn): Pass in new_label_map. Remap RESX_EXPR. | |
10315 | (find_outermost_region_in_block): New. | |
10316 | (new_label_mapper): New. | |
10317 | (move_sese_region_to_fn): Copy eh information to the new function | |
10318 | properly. | |
10319 | * tree-inline.c (copy_cfg_body): Update for new duplicate_eh_regions | |
10320 | argument. | |
10321 | * tree-pretty-print.c (dump_generic_node): Dump RESX_EXPR region | |
10322 | number. | |
10323 | ||
bc4a3483 RS |
10324 | 2006-03-22 Richard Sandiford <richard@codesourcery.com> |
10325 | ||
10326 | * doc/md.texi (-mshared): Mention that -mshared code can be linked | |
10327 | into shared libraries. | |
10328 | ||
08b1e29a RS |
10329 | 2006-03-22 Richard Sandiford <richard@codesourcery.com> |
10330 | ||
10331 | * doc/md.texi: Refer to i386/constraints.md instead of | |
10332 | i386/predicates.md. | |
10333 | * config/i386/constraints.md: New file, extracted from... | |
10334 | * config/i386/predicates.md: ...here. | |
10335 | * config/i386/i386.md: Include constraints.md. | |
10336 | ||
5b5cba1f JM |
10337 | 2006-03-21 Jason Merrill <jason@redhat.com> |
10338 | ||
ac382b62 JM |
10339 | * builtins.c (expand_builtin_fork_or_exec): Fix pasto. |
10340 | ||
5b5cba1f JM |
10341 | PR middle-end/20297 |
10342 | * expr.c (init_block_move_fn): Force default visibility. | |
10343 | (init_block_clear_fn): Likewise. | |
10344 | * builtins.c (expand_builtin_fork_or_exec): Likewise. | |
10345 | * targhooks.c (default_external_stack_protect_fail): Likewise. | |
10346 | ||
d9870b7e RS |
10347 | 2006-03-21 Richard Sandiford <richard@codesourcery.com> |
10348 | ||
10349 | * config/mips/predicates.md (const_call_insn_operand): Allow direct | |
10350 | calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS. | |
10351 | * config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS. | |
10352 | Use TARGET_OLDABI instead of !TARGET_NEWABI. | |
10353 | (loadgp): Use mips_current_loadgp_style. | |
10354 | (loadgp_noshared): New pattern. | |
10355 | (sibcall_internal): Use MIPS_CALL. | |
10356 | (sibcall_value_internal): Likewise. | |
10357 | (sibcall_value_multiple_internal): Likewise. | |
10358 | (call_internal): Likewise. | |
10359 | (call_value_internal): Likewise. | |
10360 | (call_value_multiple_internal): Likewise. | |
10361 | (call_split): Use MIPS_CALL and add an 'S' constraint. | |
10362 | (call_value_split): Likewise. | |
10363 | (call_value_multiple_split): Likewise. | |
10364 | * config/mips/mips.opt (-mabicalls): Tweak docstring. | |
10365 | (-mshared): New option. | |
10366 | * config/mips/mips-protos.h (mips_loadgp_style): New enum. | |
10367 | (mips_current_loadgp_style): Declare. | |
10368 | * config/mips/mips.c (mips_classify_symbol): Avoid using | |
10369 | SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS. Use SYMBOL_GENERAL | |
10370 | rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if | |
10371 | TARGET_ABSOLUTE_ABICALLS. | |
10372 | (override_options): Adjust comments. Improve the warning that is | |
10373 | issued when -mabicalls and -G are used together. | |
10374 | (mips_file_start): Remove comment. | |
10375 | (mips_current_loadgp_style): New function. | |
10376 | (mips_gnu_local_gp): New variable. | |
10377 | (mips_emit_loadgp): Use mips_current_loadgp_style. Handle | |
10378 | LOADGP_ABSOLUTE. | |
10379 | (mips_output_function_prologue): Use mips_current_laodgp_style. | |
10380 | (mips_expand_prologue): Call mips_emit_loadgp before emitting | |
10381 | the cprestore instruction. | |
10382 | (mips_extra_live_on_entry): Fix reversed test. Don't make $25 | |
10383 | live for TARGET_ABSOLUTE_ABICALLS. | |
10384 | * config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro. | |
10385 | (ASM_SPEC): Pass down -mshared and -mno-shared. | |
10386 | (MIPS_CALL): New macro. | |
10387 | * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__ | |
10388 | definition. | |
10389 | * doc/invoke.texi (-mabicalls): Update documentation. | |
10390 | (-mshared): Document. | |
10391 | ||
487d9a61 SE |
10392 | 2006-03-21 Steve Ellcey <sje@cup.hp.com> |
10393 | ||
10394 | * config/ia64/unwind-hpux.c: New file. | |
10395 | * config/ia64/t-hpux: Add unwind-hpux.c to libgcc. | |
10396 | ||
f7da48ef SE |
10397 | 2006-03-21 Steve Ellcey <sje@cup.hp.com> |
10398 | ||
10399 | PR libgomp/26384 | |
10400 | * config/pa/pa64-hpux.h (LIB_SPEC): Fix for -mt and -pthread options. | |
10401 | ||
a3b196e3 JL |
10402 | 2006-03-21 Jeff Law <law@redhat.com> |
10403 | ||
10404 | * tree-vrp.c (extract_range_from_unary_expr): Derive ranges for | |
10405 | type conversions of a VR_VARYING source to a wider type. | |
10406 | ||
ec23ed60 EB |
10407 | 2006-03-21 Eric Botcazou <ebotcazou@libertysurf.fr> |
10408 | ||
10409 | * config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to | |
10410 | tm_file on Solaris 10 and later. | |
10411 | (sparc64-*-solaris2*): Likewise. | |
10412 | (sparc-*-solaris2*): Likewise. | |
10413 | * config/sol26.h: Rename to config/sol2-6.h. | |
10414 | * config/sol2-10.h: New file. | |
10415 | ||
5ded46eb AP |
10416 | 2006-03-21 Andrew Pinski <pinskia@physics.uc.edu> |
10417 | ||
10418 | PR tree-opt/26781 | |
10419 | * tree-ssa-pre.c (create_component_ref_by_pieces): | |
10420 | Handle STRING_CST. | |
10421 | ||
3c9bb46e JJ |
10422 | 2006-03-21 Jakub Jelinek <jakub@redhat.com> |
10423 | ||
10424 | PR c++/26690 | |
10425 | * tree.c (get_callee_fndecl): If CALL is error_mark_node, | |
10426 | return it immediately. | |
10427 | ||
b6bbd675 MM |
10428 | 2006-03-21 Michael Matz <matz@suse.de> |
10429 | ||
10430 | * genautomata.c (<struct state>, num_out_arcs, presence_signature): | |
10431 | New members. | |
10432 | (remove_arc, add_arc): Update num_out_arcs member. | |
10433 | (set_out_arc_insns_equiv_num): Returns nothing instead of number | |
10434 | of out arcs. | |
10435 | (cache_presence): New function. | |
10436 | (compare_states_for_equiv): New function. | |
10437 | (state_is_differed): Don't take number of outargs, adjust callers. | |
10438 | Use new invariant for speeding up. | |
10439 | (init_equiv_class): Create initial classes based on sorted | |
10440 | input. | |
10441 | (partition_equiv_class): Don't track out_arcs_num. | |
10442 | (evaluate_equiv_classes): Call cache_presence on all states and | |
10443 | sort them. | |
10444 | ||
c4963a0a BS |
10445 | 2006-03-21 Bernd Schmidt <bernd.schmidt@analog.com> |
10446 | ||
10447 | * config/bfin/bfin-protos.h (bfin_dsp_memref_p): Declare. | |
10448 | * config/bfin/bfin.c (bfin_dsp_memref_p): New function. | |
10449 | (bfin_valid_reg_p): Test for pseudos explicitly and use only | |
10450 | REGNO_MODE_CODE_OK_FOR_BASE_P. New args MODE and OUTER_CODE; all | |
10451 | callers changed. | |
10452 | * config/bfin/bfin.h (PREG_P): Use P_REGNO_P. | |
10453 | (IREG_P, P_REGNO_P, I_REGNO_P): New macros. | |
10454 | (enum reg_class, REG_CLASS_CONTENTS): Add IPREGS. | |
10455 | (BASE_REG_CLASS, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, | |
10456 | REGNO_OK_FOR_BASE_STRICT_P, REGNO_OK_FOR_BASE_NONSTRICT_P): Delete | |
10457 | macros. | |
10458 | (IREG_POSSIBLE_P, MODE_CODE_BASE_REG_CLASS, | |
10459 | REGNO_MODE_CODE_OK_FOR_BASE_P): New macros. | |
10460 | (REGNO_REG_CLASS): ARGP is in PREGS. | |
10461 | * config/bfin/bfin.md (movhi_insn): Allow for addresses containing | |
10462 | IREGS. | |
10463 | (zero_extendhisi2, extendhisi2): Likewise; changed to define_and_split | |
10464 | to deal with those addresses. | |
10465 | * addresses.h: New file. | |
10466 | * caller-save.c: Include "addresses.h". | |
10467 | (init_caller_save): Use new base_reg_class function. | |
10468 | * rtl-factoring.c: Include "addresses.h". | |
10469 | (recompute_gain_for_pattern_seq): Use new function ok_for_base_p_1. | |
10470 | * recog.c: Include "addresses.h". | |
10471 | (preprocess_constraints): Use new base_reg_class function. | |
10472 | * regrename.c: Include "addresses.h". | |
10473 | (scan_rtx_address): Use new regno_ok_for_base_p and base_reg_class | |
10474 | functions. Keep track of a new var INDEX_CODE to compute valid | |
10475 | classes. | |
10476 | (replace_oldest_value_addr): Likewise. | |
10477 | (replace_oldest_value_mem): Use base_reg_class. | |
10478 | * reload.c: Include "addresses.h". | |
10479 | (REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P): Delete macros. | |
10480 | (find_reloads): Use new base_reg_class function. | |
10481 | (find_reloads_address): Likewise; also use regno_ok_for_base_p. | |
10482 | (find_reloads_address_1): Likewise. New args OUTER_CODE and INDEX_CODE; | |
10483 | all callers and prototype changed. | |
10484 | * reload1.c: Include "addresses.h". | |
10485 | (maybe_fix_stack_asms): Use base_reg_class. | |
10486 | * regclass.c: Include "addresses.h". | |
10487 | (ok_for_index_p_nonstrict, ok_for_base_p_nonstrict): New functions. | |
10488 | (init_reg_autoinc): Use new base_reg_class function. | |
10489 | (record_reg_classes): Likewise. | |
10490 | (record_address_regs): Delete arg CLASS; add args CONTEXT, MODE, | |
10491 | OUTER_CODE and INDEX_CODE. All callers and prototype changed. | |
10492 | Use new args to compute necessary class. | |
10493 | ||
10494 | * Makefile.in (regclass.o, reload.o, reload1.o, caller-save.o, recog.o, | |
10495 | regrename.o, rtl-factoring.o): Update dependencies. | |
10496 | * doc/tm.texi (MODE_CODE_BASE_REG_CLASS): Document. | |
10497 | (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. | |
10498 | (REG_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_REG_BASE_P, | |
10499 | REG_OK_FOR_INDEX_P): Delete documentation. | |
10500 | ||
69bdb292 AS |
10501 | 2006-03-21 Alexey Starovoytov <alexey.starovoytov@sun.com> |
10502 | ||
10503 | * config.gcc (sparc-*-solaris2*): Change the default CPU setting | |
10504 | from V7 to V9 for Solaris 7 and above. | |
10505 | ||
0698a1d2 TM |
10506 | 2006-03-21 Toon Moene <toon@moene.indiv.nluug.nl> |
10507 | ||
10508 | * doc/invoke.texi: Document new flag -fargument-noalias-anything. | |
10509 | * tree-ssa-alias.c (may_alias_p): If flag_argument_noalias > 2, | |
10510 | argument pointers may not alias any other storage. | |
10511 | * common.opt: Define option -fargument-noalias-anything. | |
10512 | * tree-ssa-structalias.c (intra_create_variable_infos): Fortran | |
10513 | alias semantics is specified by flag_argument_noalias > 2. | |
10514 | ||
ee51e035 | 10515 | 2006-03-20 Jeff Law <law@redhat.com> |
e67c25c7 JL |
10516 | |
10517 | * tree-pass.h (pass_phi_only_copy_prop): Delete. | |
10518 | (pass_phi_only_cprop): Declare. | |
10519 | * passes.c (init_optimization_passes): Replace pass_phi_only_copy_prop | |
10520 | with phi_only_cprop | |
10521 | * tree-ssa-dom.c (degenerate_phi_result): New function. | |
10522 | (remove_stmt_or_phi, get_lhs_or_phi_result): Likewise. | |
10523 | (get_rhs_or_phi_arg, propagate_rhs_into_lhs): Likewise. | |
10524 | (eliminate_const_or_copy, eliminate_degenerate_phis_1): Likewise. | |
10525 | (eliminate_degenerate_phis): Likewise. | |
10526 | (pass_phi_only_cprop): New pass descriptor. | |
10527 | * tree-ssa-copy.c (init_copy_prop): Lose PHIS_ONLY argument and | |
10528 | support code. Callers updated. | |
10529 | (execute_copy_prop, do_copy_prop): Likewise and corresponding changes. | |
10530 | (store_copy_prop): Likewise. | |
10531 | (do_phi_only_copy_prop, pass_phi_only_copy_prop): Remove. | |
10532 | ||
0ed5edac JM |
10533 | 2006-03-20 Jason Merrill <jason@redhat.com> |
10534 | ||
10535 | PR c++/21764 | |
10536 | * c-pragma.c (visstack): Move out of handle_pragma_visibility. | |
10537 | (push_visibility, pop_visibility): Likewise. | |
10538 | * c-pragma.h: Declare them. | |
10539 | ||
c6d56443 KK |
10540 | 2006-03-20 Kaz Kojima <kkojima@gcc.gnu.org> |
10541 | ||
10542 | * config/sh/sh.c (untangle_mova): Initialize n_addr and n_target. | |
10543 | ||
10544 | * config/sh/sh.c (find_regmode_weight): Change the type of the first | |
10545 | parameter and use get_ebb_head_tail. | |
10546 | (sh_md_init_global): Adjust uses of find_regmode_weight. | |
10547 | ||
ede497cf SB |
10548 | 2006-03-20 Steven Bosscher <stevenb.gcc@gmail.com> |
10549 | ||
10550 | * function.h (struct function) <x_tail_recursion_reentry>: | |
10551 | Rename to x_stack_check_probe_note. | |
10552 | (tail_recursion_reentry): Rename to stack_check_probe_note. | |
10553 | * function.c: Replace tail_recursion_reentry with | |
10554 | stack_check_probe_note everywhere. | |
10555 | (expand_function_start): Only emit a note for | |
10556 | stack_check_probe_note with -fstack-protect. | |
10557 | * stmt.c (expand_case): Don't emit NOTE_INSN_DELETED notes. | |
10558 | ||
10559 | * emit-rtl.c (remove_unnecessary_notes): Remove. | |
10560 | (pass_remove_unnecessary_notes): Remove. | |
10561 | * rtl.h (remove_unnecessary_notes): Remove prototype. | |
10562 | * final.c (final_start_function): Don't call remove_unnecessary_notes. | |
10563 | * tree-pass.h (pass_remove_unnecessary_notes): Remove. | |
10564 | * passes.c (pass_remove_unnecessary_notes): Don't run it. | |
10565 | ||
e13f1c14 AP |
10566 | 2006-03-20 Andrew Pinski <pinskia@physics.uc.edu> |
10567 | ||
10568 | PR tree-opt/26629 | |
10569 | * tree-ssa-pre (phi_translate): Handle ARRAY_REF's operands. | |
10570 | (valid_in_set): Handle ARRAY_REF. | |
10571 | Change "if min_variant or VH" to asserts. | |
10572 | (create_component_ref_by_pieces): Handle ARRAY_REF. | |
10573 | (create_expression_by_pieces): Likewise. | |
10574 | (can_PRE_operation): ARRAY_REFs can now be PRE'd. | |
10575 | ||
7a22dbec DE |
10576 | 2006-03-20 David Edelsohn <edelsohn@gnu.org> |
10577 | ||
10578 | * genpreds.c (write_insn_extra_address_constraint): Argument `c' | |
10579 | is operand of switch, not str[0]. | |
10580 | ||
e0bf274f AM |
10581 | 2006-03-20 Alan Modra <amodra@bigpond.net.au> |
10582 | ||
10583 | * config/rs6000/rs6000.c (rs6000_handle_option): Use | |
10584 | TARGET_NO_FP_IN_TOC inside #ifdef TARGET_USES_SYSV4_OPT too. | |
10585 | ||
e800e79b DE |
10586 | 2006-03-19 David Edelsohn <edelsohn@gnu.org> |
10587 | ||
10588 | * genpreds.c (write_tm_preds_h): Add semicolon and newline at | |
10589 | end of insn_extra_address_constraint declaration. | |
10590 | ||
d2894ab5 DE |
10591 | 2006-03-19 David Edelsohn <edelsohn@gnu.org> |
10592 | ||
10593 | * config/rs6000/rs6000.opt (no-fp-in-toc): Use Var not Mask. | |
10594 | (no-sum-in-toc): Same. | |
10595 | * config/rs6000/rs6000.c (rs6000_handle_option): Use new | |
10596 | variables. | |
10597 | * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set | |
10598 | NO_FP_IN_TOC for -fPIC instead of mask. | |
10599 | ||
10600 | * config/rs6000/t-aix43 (T_ADAFLAGS): Delete. | |
10601 | (BOOT_LDFLAGS): Delete. | |
10602 | (LDFLAGS): Delete. | |
10603 | * config/rs6000/t-aix52: Same. | |
10604 | ||
10605 | * config/rs6000/rs6000.md (store_multiple_power): Delete. | |
10606 | (stmsi[345678]_power): New. | |
10607 | ||
30b82356 SE |
10608 | 2006-03-17 Steve Ellcey <sje@cup.hp.com> |
10609 | ||
10610 | * config/ia64/ia64.opt: Add empty line to end of file. | |
10611 | ||
445a6ba4 RG |
10612 | 2006-03-17 Richard Guenther <rguenther@suse.de> |
10613 | ||
10614 | PR middle-end/26721 | |
10615 | * builtins.c (get_pointer_alignment): For component style references | |
10616 | adjust alignment to the component type alignment. Make sure | |
10617 | to adjust alignment for component access of constants. | |
10618 | ||
ea5bd0d8 DE |
10619 | 2006-03-17 David Edelsohn <edelsohn@gnu.org> |
10620 | ||
10621 | * config/rs6000/rs6000.md (strlensi): Emit barrier after | |
10622 | unconditional jump. | |
10623 | ||
3cf94279 PB |
10624 | 2006-03-17 Paul Brook <paul@codesourcery.com> |
10625 | ||
10626 | * doc/install.texi: Docuemnt --with-mode. | |
10627 | * config.gcc: Add --with-mode for arm*-*-*. | |
10628 | * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "mode". | |
10629 | ||
4241ecb0 R |
10630 | 2006-03-17 J"orn Rennecke <joern.rennecke@st.com> |
10631 | ||
10632 | * sh.c (max_labelno_before_reorg): New variable. | |
10633 | (sh_reorg): Initialize it. | |
10634 | (find_barrier): Check max_labelno_before_reorg before using | |
10635 | label_to_alignment. Take length of explicit alignment insns | |
10636 | into account. When seeing a UNSPECV_CONST_END, return it. | |
10637 | ||
10638 | * sh.c (fixup_mova): Set mode of affected label to QImode. | |
10639 | (untangle_mova): New function. | |
10640 | (find_barrier): Use it. Check mode of label before decrementing | |
10641 | num_mova. | |
10642 | (sh_reorg): Likewise. | |
10643 | Set mode of all insns back to VOIDmode. | |
10644 | ||
10645 | * sh.c (MOVA_LABELREF): New macro. | |
10646 | (mova_p, fixup_mova, sh_reorg): Use it. | |
10647 | (find_barrier, sh_reorg): Don't count num_mova back to 0 unless | |
10648 | ADDR_DIFF_VEC matches mova. | |
10649 | ||
79252435 SB |
10650 | 2006-03-17 Steven Bosscher <stevenb.gcc@gmail.com> |
10651 | ||
10652 | * dwarf2asm.c (dw2_asm_output_offset): Mark 'base' argument | |
10653 | with ATTRIBUTE_UNUSED. | |
10654 | ||
6a037308 AO |
10655 | 2006-03-17 Alexandre Oliva <aoliva@redhat.com> |
10656 | ||
10657 | * dwarf2out.c (dwarf2out_stack_adjust): Always track the stack | |
10658 | pointer, instead of assuming it is possible to derive the | |
10659 | correct args size from a call insn. | |
10660 | ||
d97c1295 JBG |
10661 | 2006-03-16 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
10662 | ||
10663 | * rtl.h (CONST_INT_P): Define. | |
10664 | * config/vax/vax.c (print_operand_address): Use CONST_INT_P() | |
10665 | instead of GET_CODE(x) == CONST_INT. | |
10666 | (vax_rtx_costs): Likewise. | |
10667 | (vax_output_int_move): Likewise. | |
10668 | (vax_output_int_add): Likewise. | |
10669 | (legitimate_constant_address_p): Likewise. | |
10670 | (index_term_p): Likewise. | |
10671 | * config/vax/vax.h (PRINT_OPERAND): Likewise. | |
10672 | * config/vax/vax.md (and<mode>3): Likewise. | |
10673 | (ashrsi3): Likewise. | |
10674 | (extv): Likewise. | |
10675 | (movstricthi): Likewise. | |
10676 | (movstrictqi): Likewise. | |
10677 | (rotrsi3): Likewise. | |
10678 | (five unnamed insns): Likewise. | |
10679 | ||
192d0f89 GK |
10680 | 2006-03-16 Geoffrey Keating <geoffk@apple.com> |
10681 | ||
10682 | * doc/tm.texi (SDB and DWARF): Add extra parameter to | |
10683 | ASM_OUTPUT_DWARF_OFFSET. Use @var to indicate metavariables. | |
10684 | * dwarf2asm.h (dw2_asm_output_offset): Add section parameter. | |
10685 | * dwarf2asm.c (dw2_asm_output_offset): Add base section parameter. | |
10686 | Pass to ASM_OUTPUT_DWARF_OFFSET. | |
10687 | * dwarf2out.c (debug_frame_section): New. | |
10688 | (output_call_frame_info): Use debug_frame_section. Pass it to | |
10689 | dw2_asm_output_offset. | |
10690 | (output_die): Pass appropriate section to dw2_asm_output_offset. | |
10691 | (output_compilation_unit_header): Likewise. | |
10692 | (output_pubnames): Likewise. | |
10693 | (output_aranges): Likewise. | |
10694 | (enum dw_val_class): Break dw_val_class_lbl_offset into | |
10695 | dw_val_class_lineptr and dw_val_class_macptr. | |
10696 | (add_AT_lbl_offset): Delete. | |
10697 | (add_AT_lineptr): New. | |
10698 | (add_AT_macptr): New. | |
10699 | (AT_lbl): Expect a lineptr or macptr. | |
10700 | (print_die): Handle dw_val_class_lineptr and dw_val_class_macptr. | |
10701 | (attr_checksum): Likewise. | |
10702 | (same_dw_val_p): Likewise. | |
10703 | (size_of_die): Likewise. | |
10704 | (value_format): Likewise. | |
10705 | (output_die): Likewise. | |
10706 | (dwarf2out_finish): Call add_AT_lineptr and add_AT_macptr instead of | |
10707 | add_AT_lbl_offset. | |
10708 | * config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add extra parameter. | |
10709 | * config/i386/i386.c (x86_file_start): Call darwin_file_start. | |
10710 | * config/darwin-protos.h (darwin_file_start): New. | |
10711 | (darwin_asm_output_dwarf_offset): New. | |
10712 | * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): Add extra parameter. | |
10713 | * config/rs6000/rs6000.c (rs6000_darwin_file_start): Call | |
10714 | darwin_file_start. | |
10715 | * config/darwin.c (darwin_emit_unwind_label): Don't output label | |
10716 | if not EH section; simplify. | |
10717 | (darwin_file_start): New. | |
10718 | (darwin_asm_output_dwarf_offset): New. | |
10719 | * config/darwin.h (DEBUG_FRAME_SECTION): In __DWARF segment, | |
10720 | mark as 'debug'. | |
10721 | (DEBUG_INFO_SECTION): Likewise. | |
10722 | (DEBUG_ABBREV_SECTION): Likewise. | |
10723 | (DEBUG_ARANGES_SECTION): Likewise. | |
10724 | (DEBUG_MACINFO_SECTION): Likewise. | |
10725 | (DEBUG_LINE_SECTION): Likewise. | |
10726 | (DEBUG_LOC_SECTION): Likewise. | |
10727 | (DEBUG_PUBNAMES_SECTION): Likewise. | |
10728 | (DEBUG_STR_SECTION): Likewise. | |
10729 | (DEBUG_RANGES_SECTION): Likewise. | |
10730 | (FRAME_BEGIN_LABEL): Must start with 'L' in debug section. | |
10731 | (ASM_OUTPUT_DWARF_OFFSET): New. | |
10732 | ||
620b87b3 JM |
10733 | 2006-03-16 Joseph S. Myers <joseph@codesourcery.com> |
10734 | ||
10735 | * config.gcc (tm_defines): Always add to previous value rather | |
10736 | than replacing it. | |
10737 | ||
ea462dd0 RS |
10738 | 2006-03-16 Richard Sandiford <richard@codesourcery.com> |
10739 | ||
10740 | * config/mips/predicates.md (splittable_const_int_operand): New, | |
10741 | split from move_operand. | |
10742 | (splittable_symbolic_operand): New. | |
10743 | (move_operand): Add commentary. Use splittable_const_int_operand. | |
10744 | Inline mips_atomic_symbolic_constant_p. | |
10745 | * config/mips/mips.md: Add combine splitters for handling moves | |
10746 | of splittable_const_int_operands and splittable_symbolic_operands. | |
10747 | * config/mips/mips-protos.h (mips_atomic_symbolic_constant_p): Delete. | |
10748 | (mips_split_symbol): Declare. | |
10749 | (mips_move_integer): Declare. | |
10750 | * config/mips/mips.c (mips_split_p): Make global. | |
10751 | (TARGET_MIN_ANCHOR_OFFSET): Override default. | |
10752 | (TARGET_MAX_ANCHOR_OFFSET): Likewise. | |
10753 | (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Likewise. | |
10754 | (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Likewise. | |
10755 | (mips_offset_within_object_p): Handle block symbols. | |
10756 | (mips_atomic_symbolic_constant_p): Delete. | |
10757 | (mips_cannot_force_const_mem): Return false for constants that | |
10758 | mips_legitimize_move can handle. | |
10759 | (mips_use_blocks_for_constant_p): New function. | |
10760 | (mips_split_symbol): Make global. | |
10761 | (mips_move_integer): Likewise. Add a temporary register argument. | |
10762 | (mips_legitimize_const_move): Use splittable_const_int_operand and | |
10763 | splittable_symbolic_operand. | |
10764 | (mips_use_anchors_for_symbol_p): New function. | |
10765 | * config/mips/mips.h: Protect externs with !USED_FOR_TARGET. | |
4b1c1f6f | 10766 | (mips_split_p): Declare. |
ea462dd0 | 10767 | |
5d2a73d5 RS |
10768 | 2006-03-16 Richard Sandiford <richard@codesourcery.com> |
10769 | ||
10770 | * config.gcc (mips64*-*-linux*): Keep existing tm_defines. | |
10771 | (mips*-*-linux*): Likewise. | |
10772 | ||
da54e73b RS |
10773 | 2006-03-16 Roger Sayle <roger@eyesopen.com> |
10774 | Daniel Speyer <dspeyer@wam.umd.edu> | |
10775 | ||
10776 | PR middle-end/18259 | |
10777 | * tree-dump.c (dump_real): New function. | |
10778 | (dequeue_and_dump) <REAL_CST>: Use it to dump FP constants. | |
10779 | * Makefile.in (REAL_H): New macro for dependencies on real.h. | |
10780 | (tree-dump.o): Add $(REAL_H) to the dependencies. | |
10781 | ||
a47564c8 RS |
10782 | 2006-03-16 Roger Sayle <roger@eyesopen.com> |
10783 | ||
10784 | PR middle-end/21781 | |
10785 | * real.c (real_from_string): If the mantissa is zero, don't bother | |
10786 | parsing the exponent as the result should always be zero. | |
10787 | ||
349f4ea1 AK |
10788 | 2006-03-16 Andreas Krebbel <krebbel1@de.ibm.com> |
10789 | ||
10790 | * simplify-rtx.c (simplify_plus_minus): Simplify within CONST terms. | |
10791 | ||
048d0d36 MK |
10792 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
10793 | ||
dec6909b RH |
10794 | * config/ia64/ia64.c (stops_p): Added explicit initialization. |
10795 | (ia64_first_cycle_multipass_dfa_lookahead_guard_spec, | |
10796 | ia64_h_i_d_extended, ia64_set_sched_flags, ia64_speculate_insn, | |
10797 | ia64_needs_block_p, ia64_gen_check, ia64_sched_init_global, | |
048d0d36 MK |
10798 | ia64_sched_finish_global): New static functions to implement |
10799 | hooks from gcc_target.sched. | |
10800 | (spec_check_no, max_uid, pending_data_specs): New static variables. | |
dec6909b | 10801 | (ia64_mode_to_int, ia64_gen_spec_insn, ia64_spec_check_p, |
048d0d36 | 10802 | ia64_spec_check_src_p): New static functions. |
dec6909b RH |
10803 | (ia64_adjust_cost): Renamed to ia64_adjust_cost_2. |
10804 | (TARGET_SCHED_ADJUST_COST): Removed. | |
10805 | (TARGET_SCHED_ADJUST_COST_2, TARGET_SCHED_INIT_GLOBAL, | |
048d0d36 MK |
10806 | TARGET_SCHED_FINISH_GLOBAL, TARGET_SCHED_H_I_D_EXTENDED, |
10807 | TARGET_SCHED_SPECULATE_INSN, TARGET_SCHED_NEEDS_BLOCK_P, | |
10808 | TARGET_SCHED_GEN_CHECK, | |
10809 | TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC, | |
dec6909b RH |
10810 | TARGET_SCHED_SET_SCHED_FLAGS): New macros. |
10811 | (update_set_flags, group_barrier_needed, set_src_needs_barrier): | |
048d0d36 | 10812 | Fixed to handle speculation checks. |
dec6909b RH |
10813 | (rtx_needs_barrier): Fixed to handle speculative loads and |
10814 | their checks. | |
10815 | (ia64_variable_issue): Added code to count speculative loads and their | |
10816 | checks. | |
10817 | (ia64_first_cycle_multipass_dfa_lookahead_guard): Fixed to handle | |
10818 | speculative loads. | |
10819 | (enum SPEC_MODES, enum SPEC_GEN_LD_MAP, SPEC_GEN_CHECK_OFFSET): | |
10820 | New enumerations. | |
10821 | (SPEC_GEN_EXTEND_OFFSET, SPEC_N, SPEC_GEN_CHECK_MUTATION_OFFSET): | |
10822 | New constants. | |
10823 | (ia64_ld_address_bypass_p): Fixed to handle speculative loads. | |
048d0d36 | 10824 | (ia64_reorg): Reset stops_p to NULL after it is freed. |
dec6909b | 10825 | * config/ia64/ia64.md (UNSPEC_LDA, UNSPEC_LDS, UNSPEC_LDSA, |
048d0d36 | 10826 | UNSPEC_LDCCLR, UNSPEC_CHKACLR, UNSPEC_CHKS): New constants. |
dec6909b RH |
10827 | (itanium_class): chk_s renamed to chk_s_i. New constants: chk_s_f, |
10828 | chk_a. | |
10829 | (data_speculative, control_speculative, check_load): New attributes. | |
10830 | (mov<mode>_advanced, mov<mode>_speculative, | |
10831 | mov<mode>_speculative_advanced, zero_extend<mode>di2_advanced, | |
10832 | zero_extend<mode>di2_speculative, | |
10833 | zero_extend<mode>di2_speculative_advanced): New patterns for | |
10834 | data and control speculative loads. | |
10835 | (mov<mode>_clr, zero_extend<mode>di2_clr): New patterns for | |
10836 | check loads. | |
10837 | (advanced_load_check_clr_<mode>, speculation_check_<mode>): | |
10838 | New pattern for data and control speculation checks. | |
048d0d36 MK |
10839 | (MODE, MODE_FOR_EXTEND, output_a, output_s, output_sa, output_c_clr, |
10840 | ld_reg_constr, ldc_reg_constr, chk_reg_constr, mem_constr, | |
10841 | reg_pred_prefix, ld_class, chka_class, chks_class, attr_yes): | |
10842 | Auxiliary definitions for the patterns. | |
dec6909b RH |
10843 | * config/ia64/itanium1.md (1_fldc, 1_fldpc, 1_ldc, 1_chk_s_f, 1_chk_a, |
10844 | 1b_fldc, 1b_fldpc, 1b_ldc, 1b_chk_s_f, 1b_chk_a): New resource | |
10845 | constraints. | |
048d0d36 | 10846 | (1_fld, 1_fldp, 1_ld, 1b_fld, 1b_fldp, 1b_ld): Add a condition |
dec6909b RH |
10847 | for speculation. |
10848 | (1_chk_s, 1b_chk_s): Renamed to 1_chk_s_i, 1b_chk_s_i. | |
10849 | * config/ia64/itanium2.md (2_flda, 2_fldc, 2_fldpc, 2_ldc, 2_chk_s_f, | |
048d0d36 MK |
10850 | 2_chk_a, 2b_flda, 2b_fldc, 2b_fldpc, 2b_ldc, 2b_chk_s_f, 2b_chk_a): |
10851 | New resource constraints. | |
10852 | (2_fld, 2_fldp, 2_ld, 2b_fld, 2b_fldp, 2b_ld): Add a condition | |
dec6909b RH |
10853 | for speculation. |
10854 | (2_chk_s, 2b_chk_s): Renamed to 2_chk_s_i, 2b_chk_s_i. | |
10855 | * config/ia64/ia64.opt (msched-br-data-spec, msched-ar-data-spec, | |
10856 | msched-control-spec, msched-br-in-data-spec, msched-ar-in-data-spec, | |
10857 | msched-in-control-spec, msched-ldc, msched-control-ldc, | |
10858 | msched-spec-verbose, msched-prefer-non-data-spec-insns, | |
10859 | msched-prefer-non-control-spec-insns, | |
048d0d36 MK |
10860 | msched-count-spec-in-critical-path): New flags to tune speculative |
10861 | scheduling. | |
10862 | * doc/invoke.texi (msched-br-data-spec, msched-ar-data-spec, | |
dec6909b RH |
10863 | msched-control-spec, msched-br-in-data-spec, msched-ar-in-data-spec, |
10864 | msched-in-control-spec, msched-ldc, msched-control-ldc, | |
10865 | msched-spec-verbose, msched-prefer-non-data-spec-insns, | |
10866 | msched-prefer-non-control-spec-insns, | |
048d0d36 MK |
10867 | msched-count-spec-in-critical-path): Document new flags. |
10868 | ||
496d7bb0 MK |
10869 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
10870 | ||
dec6909b RH |
10871 | * target.h (struct spec_info_def): New opaque declaration. |
10872 | (struct gcc_target.sched): New fields: adjust_cost_2, h_i_d_extended, | |
10873 | speculate_insn, needs_block_p, gen_check, | |
10874 | first_cycle_multipass_dfa_lookahead_guard_spec, set_sched_flags. | |
10875 | * target-def.h (TARGET_SCHED_ADJUST_COST_2, | |
10876 | TARGET_SCHED_H_I_D_EXTENDED, TARGET_SCHED_SPECULATE_INSN, | |
10877 | TARGET_SCHED_NEEDS_BLOCK_P, TARGET_SCHED_GEN_CHECK, | |
10878 | TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC, | |
10879 | TARGET_SCHED_SET_SCHED_FLAGS): New macros to initialize fields in | |
10880 | gcc_target.sched. | |
10881 | (TARGET_SCHED): Use new macros. | |
10882 | * rtl.h (copy_DEPS_LIST_list): New prototype. | |
10883 | * sched-int.h (struct sched_info): Change signature of new_ready field, | |
496d7bb0 | 10884 | adjust all initializations. New fields: add_remove_insn, |
dec6909b | 10885 | begin_schedule_ready, add_block, advance_target_bb, fix_recovery_cfg, |
496d7bb0 | 10886 | region_head_or_leaf_p. |
dec6909b RH |
10887 | (struct spec_info_def): New structure declaration. |
10888 | (spec_info_t): New typedef. | |
10889 | (struct haifa_insn_data): New fields: todo_spec, done_spec, check_spec, | |
10890 | recovery_block, orig_pat. | |
10891 | (glat_start, glat_end): New variables declaraions. | |
10892 | (TODO_SPEC, DONE_SPEC, CHECK_SPEC, RECOVERY_BLOCK, ORIG_PAT): | |
496d7bb0 | 10893 | New access macros. |
dec6909b RH |
10894 | (enum SCHED_FLAGS): New constants: SCHED_RGN, SCHED_EBB, |
10895 | DETACH_LIFE_INFO, USE_GLAT. | |
10896 | (enum SPEC_SCHED_FLAGS): New enumeration. | |
10897 | (NOTE_NOTE_BB_P): New macro. | |
10898 | (extend_dependency_caches, xrecalloc, unlink_bb_notes, add_block, | |
10899 | attach_life_info, debug_spec_status, check_reg_live): New functions. | |
10900 | (get_block_head_tail): Change signature to get_ebb_head_tail, adjust | |
10901 | all uses in ddg.c, modulo-sched.c, haifa-sched.c, sched-rgn.c, | |
10902 | sched-ebb.c | |
496d7bb0 | 10903 | (get_dep_weak, ds_merge): Prototype functions from sched-deps.c . |
dec6909b RH |
10904 | * ddg.c (get_block_head_tail): Adjust all uses. |
10905 | * modulo-sched.c (get_block_head_tail): Adjust all uses. | |
496d7bb0 MK |
10906 | (sms_sched_info): Initialize new fields. |
10907 | (contributes_to_priority): Removed. | |
dec6909b | 10908 | * haifa-sched.c (params.h): New include. |
496d7bb0 | 10909 | (get_block_head_tail): Adjust all uses. |
dec6909b RH |
10910 | (ISSUE_POINTS): New macro. |
10911 | (glat_start, glat_end): New global variables. | |
10912 | (spec_info_var, spec_info, added_recovery_block_p, nr_begin_data, | |
496d7bb0 MK |
10913 | nr_be_in_data, nr_begin_control, nr_be_in_control, bb_header, |
10914 | old_last_basic_block, before_recovery, current_sched_info_var, | |
10915 | rgn_n_insns, luid): New static variables. | |
dec6909b RH |
10916 | (insn_cost1): New function. Move logic from insn_cost to here. |
10917 | (find_insn_reg_weight1): New function. Move logic from | |
10918 | find_insn_reg_weight to here. | |
10919 | (reemit_notes, move_insn, max_issue): Change signature. | |
10920 | (move_insn1): Removed. | |
10921 | (extend_h_i_d, extend_ready, extend_global, extend_all, init_h_i_d, | |
10922 | extend_bb): New static functions to support extension of scheduler's | |
10923 | data structures. | |
10924 | (generate_recovery_code, process_insn_depend_be_in_spec, | |
10925 | begin_speculative_block, add_to_speculative_block, | |
10926 | init_before_recovery, create_recovery_block, create_check_block_twin, | |
10927 | fix_recovery_deps): New static functions to support | |
10928 | generation of recovery code. | |
10929 | (fix_jump_move, find_fallthru_edge, dump_new_block_header, | |
10930 | restore_bb_notes, move_block_after_check, move_succs): New static | |
10931 | functions to support ebb scheduling. | |
10932 | (init_glat, init_glat1, attach_life_info1, free_glat): New static | |
10933 | functions to support handling of register live information. | |
10934 | (associate_line_notes_with_blocks, change_pattern, speculate_insn, | |
496d7bb0 MK |
10935 | sched_remove_insn, clear_priorities, calc_priorities, bb_note, |
10936 | add_jump_dependencies): New static functions. | |
dec6909b | 10937 | (check_cfg, has_edge_p, check_sched_flags): New static functions for |
496d7bb0 MK |
10938 | consistancy checking. |
10939 | (debug_spec_status): New function to call from debugger. | |
10940 | (priority): Added code to handle speculation checks. | |
10941 | (rank_for_schedule): Added code to distinguish speculative instructions. | |
10942 | (schedule_insn): Added code to handle speculation checks. | |
10943 | (unlink_other_notes, rm_line_notes, restore_line_notes, rm_other_notes): | |
10944 | Fixed to handle ebbs. | |
dec6909b | 10945 | (move_insn): Added code to handle ebb scheduling. |
496d7bb0 | 10946 | (max_issue): Added code to use ISSUE_POINTS of instructions. |
dec6909b RH |
10947 | (choose_ready): Added code to choose between speculative and |
10948 | non-speculative instructions. | |
10949 | (schedule_block): Added code to handle ebb scheduling and scheduling of | |
10950 | speculative instructions. | |
10951 | (sched_init): Initialize new variables. | |
10952 | (sched_finish): Free new variables. Print statistics. | |
10953 | (try_ready): Added code to handle speculative instructions. | |
10954 | * lists.c (copy_DEPS_LIST_list): New function. | |
10955 | * sched-deps.c (extend_dependency_caches): New function. Move logic | |
10956 | from create_dependency_caches to here. | |
496d7bb0 | 10957 | (get_dep_weak, ds_merge): Make global. |
dec6909b RH |
10958 | * genattr.c (main): Code to output prototype for |
10959 | dfa_clear_single_insn_cache. | |
10960 | * genautomata.c (DFA_CLEAR_SINGLE_INSN_CACHE_FUNC_NAME): New macros. | |
10961 | (output_dfa_clean_insn_cache_func): Code to output | |
10962 | dfa_clear_single_insn_cache function. | |
10963 | * sched-ebb.c (target_n_insns): Remove. Adjust all users to use | |
496d7bb0 | 10964 | n_insns. |
dec6909b RH |
10965 | (can_schedule_ready_p, fix_basic_block_boundaries, add_missing_bbs): |
10966 | Removed. | |
10967 | (n_insns, dont_calc_deps, ebb_head, ebb_tail, last_bb): | |
10968 | New static variables. | |
10969 | (begin_schedule_ready, add_remove_insn, add_block1, advance_target_bb, | |
496d7bb0 MK |
10970 | fix_recovery_cfg, ebb_head_or_leaf_p): Implement hooks from |
10971 | struct sched_info. | |
dec6909b | 10972 | (ebb_sched_info): Initialize new fields. |
496d7bb0 MK |
10973 | (get_block_head_tail): Adjust all uses. |
10974 | (compute_jump_reg_dependencies): Fixed to use glat_start. | |
10975 | (schedule_ebb): Code to remove unreachable last block. | |
dec6909b RH |
10976 | (schedule_ebbs): Added code to update register live information. |
10977 | * sched-rgn.c (region_sched_info): Initialize new fields. | |
496d7bb0 MK |
10978 | (get_block_head_tail): Adjust all uses. |
10979 | (last_was_jump): Removed. Adjust users. | |
dec6909b | 10980 | (begin_schedule_ready, add_remove_insn, insn_points, extend_regions, |
496d7bb0 MK |
10981 | add_block1, fix_recovery_cfg, advance_target_bb, region_head_or_leaf_p): |
10982 | Implement new hooks. | |
dec6909b RH |
10983 | (check_dead_notes1): New static function. |
10984 | (struct region): New fields: dont_calc_deps, has_real_ebb. | |
10985 | (RGN_DONT_CALC_DEPS, RGN_HAS_REAL_EBB): New access macros. | |
10986 | (BB_TO_BLOCK): Fixed to handle EBBs. | |
10987 | (EBB_FIRST_BB, EBB_LAST_BB): New macros. | |
10988 | (ebb_head): New static variable. | |
10989 | (debug_regions, contributes_to_priority): Fixed to handle EBBs. | |
10990 | (find_single_block_regions, find_rgns, find_more_rgns): Initialize | |
496d7bb0 MK |
10991 | new fields. |
10992 | (compute_dom_prob_ps): New assertion. | |
dec6909b RH |
10993 | (check_live_1, update_live_1): Fixed to work with glat_start instead of |
10994 | global_live_at_start. | |
496d7bb0 MK |
10995 | (init_ready_list): New assertions. |
10996 | (can_schedule_ready_p): Split update code to begin_schedule_ready. | |
10997 | (new_ready): Add support for BEGIN_CONTROL speculation. | |
dec6909b RH |
10998 | (schedule_insns): Fixed code that updates register live information |
10999 | to handle EBBs. | |
11000 | (schedule_region): Fixed to handle EBBs. | |
496d7bb0 | 11001 | (init_regions): Use extend_regions and check_dead_notes1. |
dec6909b RH |
11002 | * params.def (PARAM_MAX_SCHED_INSN_CONFLICT_DELAY, |
11003 | PARAM_SCHED_SPEC_PROB_CUTOFF): New parameters. | |
496d7bb0 MK |
11004 | * doc/tm.texi (TARGET_SCHED_ADJUST_COST_2, TARGET_SCHED_H_I_D_EXTENDED, |
11005 | TARGET_SCHED_SPECULATE_INSN, TARGET_SCHED_NEEDS_BLOCK_P, | |
11006 | TARGET_SCHED_GEN_CHECK, | |
11007 | TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC, | |
11008 | TARGET_SCHED_SET_SCHED_FLAGS): Document. | |
dec6909b | 11009 | * doc/invoke.texi (max-sched-insn-conflict-delay, |
496d7bb0 MK |
11010 | sched-spec-prob-cutoff): Document. |
11011 | ||
63f54b1a MK |
11012 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
11013 | ||
dec6909b | 11014 | * sched-int.h (struct haifa_insn_data): New fields: resolved_deps, |
63f54b1a MK |
11015 | inter_tick, queue_index. |
11016 | (struct sched_info): Change signature of init_ready_list field. | |
11017 | Adjust all initializations. | |
11018 | (RESOLVED_DEPS): New access macro. | |
11019 | (ready_add): Remove prototype. | |
11020 | (try_ready): Add prototype. | |
11021 | * sched-rgn.c (init_ready_list): Use try_ready. | |
11022 | (schedule_region): Initialize | |
11023 | current_sched_info->{sched_max_insns_priority, queue_must_finish_empty}. | |
11024 | * sched-ebb.c (new_ready): Remove. Adjust ebb_sched_info. | |
11025 | (init_ready_list): Use try_ready. | |
11026 | (schedule_ebb): Initialize current_sched_info->sched_max_insns_priority. | |
11027 | * lists.c (remove_list_elem): Remove `static'. | |
11028 | (remove_free_INSN_LIST_elem): New function. | |
11029 | * rtl.h (remove_list_elem, remove_free_INSN_LIST_elem): Add prototypes. | |
11030 | * haifa-sched.c (INTER_TICK, QUEUE_INDEX): New macros. | |
11031 | (INVALID_TICK, MIN_TICK, QUEUE_SCHEDULED, QUEUE_NOWHERE, QUEUE_READY): | |
11032 | New constants. | |
11033 | (readyp): New variable. | |
11034 | (queue_remove, ready_remove_insn, fix_inter_tick, fix_tick_ready, | |
11035 | change_queue_index, resolve_dep): New static functions. | |
11036 | (try_ready): New function. Adjust callers in sched-rgn.c and | |
11037 | sched-ebb.c to use it instead of ready_add. | |
11038 | (clock_var): Move at the begining of file. | |
11039 | (rank_for_schedule): Fix typo. | |
11040 | (queue_insn): Add assertion. Handle QUEUE_INDEX. | |
11041 | (ready_lastpos): Enforce assertion. | |
11042 | (ready_add): Make it static. Handle QUEUE_INDEX. Add new argument, | |
11043 | update all callers. | |
11044 | (ready_remove_first, ready_remove): Handle QUEUE_INDEX. | |
11045 | (schedule_insn): Rewrite to use try_ready and resolve_dep. | |
11046 | (queue_to_ready): Use free_INSN_LIST_list. | |
11047 | (early_queue_to_ready): Fix typo. | |
11048 | (schedule_block): Init readyp. Move init_ready_list call after the | |
11049 | initialization of clock_var. Fix error in rejecting insn by | |
11050 | targetm.sched.dfa_new_cycle. Add call to fix_inter_tick. Remove code | |
11051 | that previously corrected INSN_TICKs. Add code for handling | |
11052 | QUEUE_INDEX. | |
11053 | (set_priorities): Fix typo. | |
11054 | (sched_init): Initialize INSN_TICK, INTER_TICK and QUEUE_INDEX. | |
11055 | Clarify comment and code that keeps current_sched_info->next_tail | |
11056 | non-null. | |
11057 | ||
d08eefb9 MK |
11058 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
11059 | ||
11060 | * sched-rgn.c (extend_rgns): New static function. | |
11061 | (find_rgns): Use it. | |
11062 | (gather_region_statistics, print_region_statistics): New static | |
11063 | functions. | |
11064 | * params.def (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS): New parameter. | |
dec6909b | 11065 | * doc/invoke.texi (max-sched-extend-regions-iters): Document. |
d08eefb9 | 11066 | |
ddbd5439 | 11067 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
dec6909b | 11068 | Andrey Belevantsev <abel@ispras.ru> |
ddbd5439 MK |
11069 | |
11070 | * ddg.c (build_intra_loop_deps): Adjust add_forward_dependence call. | |
dec6909b | 11071 | * lists.c (unused_deps_list): New variable. |
4b1c1f6f | 11072 | (free_list): Add assertions to verify the proper distinguishing |
dec6909b RH |
11073 | between INSN_LISTs and DEPS_LISTs. |
11074 | (find_list_elem, remove_list_elem, remove_list_node): New static | |
ddbd5439 | 11075 | functions. |
dec6909b RH |
11076 | (alloc_DEPS_LIST, free_DEPS_LIST, free_DEPS_LIST_node, |
11077 | remove_free_INSN_LIST_elem, remove_free_DEPS_LIST_elem, | |
11078 | remove_free_INSN_LIST_node, remove_free_DEPS_LIST_node): New functions. | |
11079 | (alloc_INSN_LIST): Assert that the list we're working on is indeed | |
ddbd5439 | 11080 | an INSN_LIST. |
dec6909b | 11081 | (free_INSN_LIST_node): Likewise. |
ddbd5439 MK |
11082 | * modulo-sched.c (current_sched_info): Initialize flags field. |
11083 | * reg-notes.def: Exchange DEP_ANTI and DEP_OUTPUT. | |
11084 | * rtl.def (DEPS_LIST): Define. | |
dec6909b RH |
11085 | * rtl.h: Declare new functions from lists.c. |
11086 | * sched-deps.c (spec_dependency_cache): New static variable. | |
11087 | (maybe_add_or_update_back_dep_1, add_back_dep): New static functions. | |
11088 | (add_dependence): Change return type to void. Move the logic to ... | |
11089 | (add_or_update_back_dep_1): ... here. Handle speculative dependencies. | |
11090 | (delete_all_dependences): Add comment about forward_dependency_cache. | |
ddbd5439 | 11091 | Handle spec_dependency_cache. Handle DEPS_LISTs. |
dec6909b RH |
11092 | (fixup_sched_groups): Clarify the change of priority of output |
11093 | and anti dependencies. | |
11094 | (sched_analyze_2): Adjust add_dependence calls to create data | |
ddbd5439 | 11095 | speculative dependence. |
dec6909b | 11096 | (add_forward_dependence): Renamed to add_forw_dep, change prototype. |
ddbd5439 | 11097 | Adjust all callers. Handle DEPS_LISTS. |
dec6909b | 11098 | (compute_forward_dependences): Use add_forw_dep. Sort LOG_LINKs in |
ddbd5439 | 11099 | presence of speculation. |
dec6909b | 11100 | (init_dependency_caches, free_dependency_caches): |
ddbd5439 | 11101 | Handle spec_dependency_cache. |
dec6909b | 11102 | (adjust_add_sorted_back_dep, adjust_back_add_forw_dep, delete_forw_dep, |
ddbd5439 MK |
11103 | estimate_dep_weak, get_dep_weak, ds_merge, check_dep_status): |
11104 | New static functions. | |
dec6909b | 11105 | (add_or_update_back_dep, add_or_update_back_forw_dep, |
ddbd5439 MK |
11106 | add_back_forw_dep, delete_back_forw_dep): New functions. |
11107 | * sched-int.h (ds_t, dw_t): New typedefs. | |
11108 | (struct sched_info): Add new field flags. | |
11109 | (struct haifa_insn_data): Add new bitfield has_internal_dep. | |
11110 | Prototype new sched-deps.c functions. | |
dec6909b | 11111 | (HAS_INTERNAL_DEP, DEP_STATUS): New access macros. |
ddbd5439 MK |
11112 | (BITS_PER_DEP_STATUS, BITS_PER_DEP_WEAK, DEP_WEAK_MASK, MAX_DEP_WEAK, |
11113 | MIN_DEP_WEAK, NO_DEP_WEAK, UNCERTAIN_DEP_WEAK, BEGIN_DATA, BE_IN_DATA, | |
11114 | BEGIN_CONTROL, BE_IN_CONTROL, BEGIN_SPEC, DATA_SPEC, CONTROL_SPEC, | |
11115 | SPECULATIVE, BE_IN_SPEC, FIRST_SPEC_TYPE, LAST_SPEC_TYPE, | |
11116 | SPEC_TYPE_SHIFT, DEP_TRUE, DEP_OUTPUT, DEP_ANTI, DEP_TYPES, HARD_DEP): | |
11117 | New constants. | |
dec6909b | 11118 | (enum SPEC_TYPES_OFFSETS, enum DEPS_ADJUST_RESULT, enum SCHED_FLAGS): |
ddbd5439 MK |
11119 | New enums. |
11120 | * sched-rgn.c (current_sched_info): Initialize flags field. | |
11121 | (schedule_insns): Initialize current_sched_info before the sched_init | |
11122 | call. | |
11123 | * sched-ebb.c (current_sched_info): Initialize flags field. | |
11124 | (add_deps_for_risky_insns): Use control_flow_insn_p instead of JUMP_P. | |
11125 | Call add_or_update_back_dep instead of add_dependence. | |
11126 | Create control speculative dependencies. | |
11127 | (schedule_insns): Initialize current_sched_info before the sched_init | |
11128 | call. | |
11129 | ||
3062335c KK |
11130 | 2006-03-16 Kaz Kojima <kkojima@gcc.gnu.org> |
11131 | ||
11132 | * config/sh/linux-unwind.h (shmedia_fallback_frame_state): Set | |
11133 | fs->signal_frame. | |
11134 | (sh_fallback_frame_state): Likewise. | |
11135 | ||
747b9f55 GK |
11136 | 2006-03-15 Geoffrey Keating <geoffk@apple.com> |
11137 | ||
11138 | * config.gcc (*-*-darwin*): Don't build crt2.o for all Darwin ports. | |
11139 | Do switch on default_use_cxa_atexit. | |
11140 | (powerpc*-*-darwin*): Build crt2.o on powerpc. | |
11141 | * config/darwin-crt3.o: New. | |
11142 | * config/darwin.h (LINK_SPEC): If -shared-libgcc, make linker default | |
11143 | to 10.3. Pass '-multiply_defined suppress' if crt3.o is in use. | |
11144 | (STARTFILE_SPEC): Add crt3.o when -shared-libgcc and appropriate | |
11145 | OS version. | |
11146 | * config/rs6000/t-darwin: Move crt2.o building to here. | |
11147 | * config/rs6000/darwin.h (C_COMMON_OVERRIDE_OPTIONS): Update | |
11148 | Mac OS version for using __cxa_get_exception_ptr. Don't test versions | |
11149 | of __cxa_atexit. | |
11150 | ||
79166a87 JBG |
11151 | 2006-03-15 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
11152 | ||
11153 | * config/vax/vax.c (nonindexed_address_p): Change logical negation | |
11154 | from '! xxx' to '!xxx' for coding-style conformance. | |
11155 | * config/vax/vax.h (PCC_BITFIELD_TYPE_MATTERS): Likewise. | |
11156 | (EXTRA_CONSTRAINT): Likewise. | |
11157 | * config/vax/vax.md (four unnamed insns): Likewise. | |
4b1c1f6f | 11158 | |
34a9f549 PB |
11159 | 2006-03-15 Paul Brook <paul@codesourcery.com> |
11160 | ||
11161 | * config/arm/arm.c (minipool_pad): New. | |
5a281edb | 11162 | (add_minipool_forward_ref): Include pool alignment padding in address |
34a9f549 PB |
11163 | calculation. |
11164 | (push_minipool_fix): Set minipool_pad. | |
11165 | (minipool_pad): Ditto. | |
11166 | ||
ff9d4590 JBG |
11167 | 2006-03-15 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
11168 | ||
11169 | * config/vax/vax.c (split_quadword_operands): Use MEM_P() | |
11170 | instead of GET_CODE() == MEM and REG_P() instead of | |
11171 | GET_CODE() == REG. | |
11172 | (print_operand_address): Likewise. | |
11173 | (vax_address_cost): Likewise. | |
11174 | (vax_rtx_costs): Likewise. | |
11175 | (vax_notice_update_cc): Likewise. | |
11176 | (vax_output_int_add): Likewise. | |
11177 | (INDEX_REGISTER_P): Likewise. | |
11178 | (BASE_REGISTER_P): Likewise. | |
11179 | (nonindexed_address_p): Likewise. | |
11180 | (vax_mode_dependent_address_p): Likewise. | |
11181 | * config/vax/vax.h (EXTRA_CONSTRAINT): Likewise. | |
11182 | (PRINT_OPERAND): Likewise. | |
11183 | * config/vax/vax.md (ashlsi3): Likewise. | |
11184 | (ashlsi3): Likewise. | |
11185 | (some more unnamed insns): Likewise. | |
11186 | ||
db490c39 KH |
11187 | 2006-03-15 Kazu Hirata <kazu@codesourcery.com> |
11188 | ||
11189 | * tree-ssa-dce.c (EXECUTE_IF_CONTROL_DEPENDENT): Make it an | |
11190 | iterator-style macro. | |
11191 | (mark_control_dependent_edges_necessary): Update the use of | |
11192 | EXECUTE_IF_CONTROL_DEPENDENT. | |
11193 | ||
f705a9a0 R |
11194 | 2006-03-15 J"orn Rennecke <joern.rennecke@st.com> |
11195 | ||
11196 | * config/sh/predicates.md (cache_address_operand): Special. | |
11197 | (ua_address_operand): Likewise. | |
11198 | ||
8b96512f ZD |
11199 | 2006-03-15 Zdenek Dvorak <dvorakz@suse.cz> |
11200 | ||
11201 | * haifa-sched.c (unlink_other_notes, reemit_notes): Do not handle | |
11202 | loop notes. | |
11203 | * sched-deps.c (sched_analyze_insn, sched_analyze): Ditto. | |
11204 | ||
c0fa4721 AS |
11205 | 2006-03-15 Andreas Schwab <schwab@suse.de> |
11206 | ||
11207 | * gensupport.c (identify_predicable_attribute): Don't free p_false | |
11208 | when it is still in use. | |
11209 | ||
cc0f8895 EB |
11210 | 2006-03-15 Eric Botcazou <ebotcazou@libertysurf.fr> |
11211 | ||
11212 | * config.gcc (default with_cpu setting) <sparc*-*-*>: Do not modify | |
11213 | the default setting here. | |
11214 | ||
1cba0d4e SB |
11215 | 2006-03-14 Steven Bosscher <stevenb.gcc@gmail.com> |
11216 | ||
11217 | * tree-pass.h (pass_cfg): Remove. | |
11218 | * alias.c (rest_of_handle_cfg, pass_cfg): Remove. | |
11219 | * passes.c (pass_cfg): Don't run it. | |
11220 | ||
e4881f23 KH |
11221 | 2006-03-14 Kazu Hirata <kazu@codesourcery.com> |
11222 | ||
11223 | * Makefile.in (reg-stack.o): Don't depend on gt-reg-stack.h. | |
11224 | * reg-stack.c (stack_regs_mentioned_data): Change the type to | |
11225 | VEC(char,heap) *. | |
11226 | (stack_regs_mentioned): Update the uses of | |
11227 | stack_regs_mentioned_data. Don't access the array beyond its | |
11228 | end. | |
11229 | (reg_to_stack): Update the uses of stack_regs_mentioned_data. | |
11230 | Don't include gt-reg-stack.h. | |
11231 | ||
02433683 KH |
11232 | * config/bfin/bfin.h (UNALIGNED_WORD_ASM_OP): Remove. |
11233 | * system.h (UNALIGNED_WORD_ASM_OP): Poison. | |
11234 | ||
df6872b7 KH |
11235 | * combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): Remove. |
11236 | ||
5b94780f KH |
11237 | PR middle-end/26684 |
11238 | * reg-stack.c (stack_regs_mentioned_data): Put it undef #ifdef | |
11239 | STACK_REGS. | |
11240 | ||
e1835ff1 JDA |
11241 | 2006-03-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
11242 | ||
11243 | * pa/pa32-linux.h (CRT_CALL_STATIC_FUNCTION): Fix typo. | |
11244 | ||
b5564e87 RG |
11245 | 2006-03-14 Richard Guenther <rguenther@suse.de> |
11246 | ||
11247 | PR tree-optimization/26672 | |
11248 | * tree-ssa-propagate.c (set_rhs): Don't walk DEFs if not in | |
11249 | SSA form. | |
11250 | ||
6971d714 RG |
11251 | 2006-03-14 Richard Guenther <rguenther@suse.de> |
11252 | ||
11253 | PR tree-optimization/26667 | |
11254 | * ipa-inline.c (cgraph_check_inline_limits): Walk the correct | |
11255 | node for the callees. Always allow inlining if it will shrink | |
11256 | the function size. | |
11257 | ||
7de80559 RG |
11258 | 2006-03-14 Richard Guenther <rguenther@suse.de> |
11259 | ||
11260 | PR middle-end/26659 | |
11261 | * builtins.c (get_pointer_alignment): Prefer alignment | |
11262 | information from decls over that from types. | |
11263 | ||
0e512a4f AP |
11264 | 2006-03-14 Andrew Pinski <pinskia@physics.uc.edu> |
11265 | ||
11266 | PR target/26657 | |
11267 | * config/darwin.h (LINK_COMMAND_SPEC): Handle -fopenmp. | |
11268 | ||
716019c0 JM |
11269 | 2006-03-14 Joseph S. Myers <joseph@codesourcery.com> |
11270 | ||
11271 | * config/rs6000/rs6000.opt (mdlmzb): New option. | |
11272 | (msched-prolog, msched-epilog): Use Var not Mask. | |
11273 | * doc/invoke.texi (-mdlmzb): Document. | |
11274 | * config/rs6000/rs6000.c (TARGET_DEFAULT_TARGET_FLAGS): Remove | |
11275 | MASK_SCHED_PROLOG. | |
11276 | (rs6000_override_options): Enable -mdlmzb for 405 and 440. | |
11277 | * config/rs6000/rs6000.md: Add dlmzb support for 405 and 440. | |
11278 | ||
a14df7da UP |
11279 | 2006-03-13 Uttam Pawar <uttamp@us.ibm.com> |
11280 | ||
11281 | PR rtl-optimization/25739 | |
11282 | * bt-load.c (augment_live_range): Free tos pointer. | |
11283 | ||
11284 | * gensupport.c (identify_predicable_attribute): Free | |
11285 | p_false pointer. | |
11286 | * gcov.c (create_file_names): Free name pointer. | |
11287 | ||
f8318079 RS |
11288 | 2006-03-13 Roger Sayle <roger@eyesopen.com> |
11289 | ||
11290 | PR middle-end/26557 | |
11291 | * stmt.c (emit_case_nodes): Handle the case where the index is a | |
11292 | CONST_INT, where the comparison mode is specified by the index type. | |
11293 | ||
26a851b9 JDA |
11294 | 2006-03-13 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
11295 | ||
11296 | * pa/pa32-linux.h (CRT_CALL_STATIC_FUNCTION): Define when CRTSTUFFS_O | |
11297 | is defined. | |
11298 | ||
94c5a841 RS |
11299 | 2006-03-13 Richard Sandiford <richard@codesourcery.com> |
11300 | ||
11301 | * config/mips/mips.md (*branch_fp): Use %Z2 for the condition. | |
11302 | (*branch_fp_inverted): Likewise. | |
11303 | ||
5b4fc8fb JJ |
11304 | 2006-03-13 Jakub Jelinek <jakub@redhat.com> |
11305 | ||
11306 | PR middle-end/25989 | |
11307 | * omp-low.c (expand_omp_for_generic): Mark istart0 | |
11308 | and iend0 as addressable. | |
11309 | ||
792e526b JZ |
11310 | 2006-03-13 Jie Zhang <jie.zhang@analog.com> |
11311 | ||
11312 | * config/bfin/uclinux.h: Define _GNU_SOURCE in CPLUSPLUS_CPP_SPEC. | |
11313 | ||
2bbec6d9 JL |
11314 | 2006-03-13 Jeff Law <law@redhat.com> |
11315 | ||
11316 | * tree-vrp.c (stmt_interesting_for_vrp): Some statements with | |
11317 | virtual operands are interesting. | |
11318 | (vrp_visit_stmt): Corresponding changes. | |
11319 | ||
a94aa272 BS |
11320 | 2006-03-13 Bernd Schmidt <bernd.schmidt@analog.com> |
11321 | ||
11322 | * config/bfin/lib1funcs.asm (___umodsi3): Use stack to save contents | |
11323 | of RETS. | |
4af990cd BS |
11324 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): If |
11325 | TARGET_ID_SHARED_LIBRARY, define __ID_SHARED_LIB__. | |
11326 | * config/bfin/crti.S: Use it instead of __PIC__. | |
11327 | * config/bfin/crtn.S: Likewise. | |
a94aa272 | 11328 | |
96c30d2a BS |
11329 | * config/bfin/bfin.md (call_value_symbol, sibcall_value_symbol, |
11330 | call_symbol, sibcall_symbol): Disallow if TARGET_ID_SHARED_LIBRARY, | |
11331 | not if flag_pic. | |
11332 | Lose 'G' modifier for call operand. | |
11333 | * config/bfin/bfin.c (print_operand) <case SYMBOL_REF>: Don't | |
11334 | recognize 'G' modifier. | |
11335 | ||
3feaea00 EB |
11336 | 2006-03-13 Eric Botcazou <ebotcazou@adacore.com> |
11337 | ||
11338 | PR middle-end/18859 | |
11339 | * gimplify.c (gimplify_switch_expr): Discard empty ranges. | |
11340 | * stmt.c (expand_case): Likewise. | |
11341 | ||
ba946209 ZD |
11342 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
11343 | ||
11344 | PR rtl-optimization/26254 | |
11345 | * loop-invariant.c (seq_insns_valid_p): New function. | |
11346 | (move_invariant_reg): Only emit new code if it is valid. | |
11347 | ||
96e82e0a ZD |
11348 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
11349 | ||
11350 | * cfgrtl.c (last_loop_beg_note, back_edge_of_syntactic_loop_p): | |
11351 | Removed. | |
11352 | (force_nonfallthru_and_redirect): Do not use last_loop_beg_note. | |
11353 | (rtl_split_edge): Do not use back_edge_of_syntactic_loop_p. | |
11354 | (commit_one_edge_insertion): Do not look for loop notes. | |
11355 | ||
50af6384 ZD |
11356 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
11357 | ||
11358 | * jump.c (follow_jumps): Do not check for loop notes. Move check for | |
11359 | flag_test_coverage out of loop. | |
11360 | ||
80838531 ZD |
11361 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
11362 | ||
11363 | * final.c (shorten_branches): Remove outdated comment, and turn | |
11364 | the if branch that guards it to continue. | |
11365 | ||
7490e6c4 ZD |
11366 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
11367 | ||
11368 | * cfgloop.c (flow_loop_dump): Do not dump loop->invalid field. | |
11369 | * cfgloop.h (struct loop): Remove unused fields. | |
11370 | ||
5abcfa7e KH |
11371 | 2006-03-13 Kazu Hirata <kazu@codesourcery.com> |
11372 | ||
11373 | * doc/invoke.texi (-fdump-rtl-loop): Remove. | |
4b1c1f6f | 11374 | (-dL, -fdump-rtl-loop2): Update the dump file names |
5abcfa7e | 11375 | |
c6075909 KH |
11376 | * doc/invoke.texi: Update dump file names. |
11377 | ||
3d47ea88 SB |
11378 | 2006-03-12 Steven Bosscher <stevenb.gcc@gmail.com> |
11379 | ||
11380 | * predict.c (estimate_probability): Remove. | |
11381 | * profile.c (rest_of_handle_branch_prob, pass_branch_prob): Remove. | |
11382 | * basic-block.h (estimate_probability): Remove prototype. | |
11383 | * passes.c (finish_optimization_passes): Dump branch prediction or | |
11384 | profiling heuristics to the .profile tree dump. | |
11385 | (init_optimization_passes): Unqueue pass_branch_prob. | |
11386 | ||
11387 | * doc/invoke.texi (-fdump-rtl-bp): Remove. | |
11388 | ||
fc6c490e SB |
11389 | 2006-03-11 Steven Bosscher <stevenb.gcc@gmail.com> |
11390 | ||
11391 | * rtl.def (LABEL_REF): Remove the field for LABEL_NEXTREF. | |
11392 | * rtl.h (LABEL_NEXTREF): Remove field accessor. | |
11393 | ||
9fb798d7 EB |
11394 | 2006-03-11 Eric Botcazou <ebotcazou@adacore.com> |
11395 | ||
11396 | * function.h (frame_offset_overflow): Declare. | |
11397 | * function.c (frame_offset_overflow): New function. | |
11398 | (assign_stack_local_1): Call it to detect that the offset overflows. | |
11399 | * cfgexpand.c (alloc_stack_frame_space): Likewise. | |
11400 | ||
6dd3c0a5 SB |
11401 | 2006-03-11 Steven Bosscher <stevenb.gcc@gmail.com> |
11402 | ||
11403 | * config/sh/sh.c: Include alloc-pool.h. | |
11404 | (label_ref_list_pool): New alloc pool. | |
11405 | (label_ref_list_t): New type for lists of labels. | |
11406 | (struct pool_node): Make wend a label_ref_list_t. | |
11407 | (add_constant): Use the new type, eradicate LABEL_NEXTREF | |
11408 | references. | |
11409 | (dump_table): Likewise. | |
11410 | (sh_reorg): Set up the alloc pool before using add_constant and | |
11411 | dump_table, and destroy it when finishing. | |
11412 | ||
a70ec386 RS |
11413 | 2006-03-11 Richard Sandiford <richard@codesourcery.com> |
11414 | ||
11415 | * config/mips/mips.c: Remove redundant comment. | |
11416 | ||
21f9ec0c JM |
11417 | 2006-03-10 Jason Merrill <jason@redhat.com> |
11418 | ||
11419 | PR c/26004 | |
4b1c1f6f | 11420 | * gimplify.c (gimplify_modify_expr_rhs): Don't do return slot opt if |
21f9ec0c JM |
11421 | the target was declared 'register'. |
11422 | ||
a8597866 AN |
11423 | 2006-03-10 Adam Nemet <anemet@caviumnetworks.com> |
11424 | ||
11425 | * genpreds.c (write_insn_constraint_len): Change definition of | |
11426 | insn_constraint_len to return size_t to match the declaration. | |
11427 | ||
8e4edce7 DD |
11428 | 2006-03-10 DJ Delorie <dj@redhat.com> |
11429 | ||
11430 | * config/m32c/m32c.c (m32c_const_ok_for_constraint_p): Bit numbers | |
11431 | start at zero. | |
11432 | (m32c_expand_insv): Fix test for an AND mask. | |
11433 | ||
891c0eee RG |
11434 | 2006-03-10 Richard Guenther <rguenther@suse.de> |
11435 | ||
11436 | PR middle-end/26565 | |
11437 | * builtins.c (get_pointer_alignment): Handle component | |
11438 | references for field alignment. | |
11439 | ||
8c1aaf26 R |
11440 | 2006-03-10 J"orn Rennecke <joern.rennecke@st.com> |
11441 | ||
11442 | * config.gcc (sh*-superh-elf, sh*elf (newlib)): Use newlib.h | |
11443 | when building with libgloss. | |
11444 | (sh*elf): Implement --without-fp option. | |
4b1c1f6f | 11445 | (sh64-superh-linux*): Don't multilib. |
8c1aaf26 | 11446 | |
7a6164d4 R |
11447 | 2006-03-10 J"orn Rennecke <joern.rennecke@st.com> |
11448 | ||
11449 | * struct-equiv.c (rtx_equiv_p): Fix POST_MODIFY case. | |
11450 | ||
3e0a08d7 AP |
11451 | 2006-03-09 Andrew Pinski <pinskia@physics.uc.edu> |
11452 | ||
11453 | * tree-ssa-phiopt.c (tree_ssa_phiopt): Add cfgchanged variable. | |
11454 | Set it when one of the replacement functions returned true. | |
11455 | Return TODO_cleanup_cfg if cfgchanged is true. | |
11456 | (pass_phiopt) <todo_flags_finish>: Remove TODO_cleanup_cfg. | |
11457 | ||
f243cee6 AN |
11458 | 2006-03-09 Adam Nemet <anemet@caviumnetworks.com> |
11459 | ||
11460 | * combine.c (simplify_shift_const_1): Use gen_lowpart_or_truncate | |
11461 | instead of gen_lowpart. | |
11462 | ||
a8c1d5f8 RS |
11463 | 2006-03-09 Richard Sandiford <richard@codesourcery.com> |
11464 | ||
11465 | * config/mips/mips-protos.h (mips_output_conditional_branch): Change | |
11466 | interface. | |
11467 | (mips_output_order_conditional_branch): Declare. | |
11468 | * config/mips/mips.h (MIPS_BRANCH): New macro. | |
11469 | * config/mips/mips.c (gen_conditional_branch): Use VOIDmode | |
11470 | for the comparison. Use gen_condjump. | |
11471 | (mips_output_conditional_branch): Rework interface to take the | |
11472 | asm templates for a direct branch and the inverse of a direct branch. | |
11473 | (mips_output_order_conditional_branch): New function. | |
11474 | (mips_builtin_branch_and_move): New function. | |
11475 | (mips_expand_builtin_compare): Use it. Use VOIDmode for the | |
11476 | branch condition. Use gen_single_cc as the condition for | |
11477 | __builtin_mips_upper_* or __builtin_mips_lower_*. | |
11478 | (mips_expand_builtin_bposge): Use mips_builtin_branch_and_move. | |
11479 | Use VOIDmode for the branch condition. | |
11480 | * config/mips/predicates.md (order_operator): New predicate. | |
11481 | * config/mips/mips.md (UNSPEC_SINGLE_CC): New constant. | |
11482 | (branch_fp): Rename to... | |
11483 | (*branch_fp): ...this. Remove mode from comparison operator. | |
11484 | Use new mips_output_conditional_branch interface. | |
11485 | (branch_fp_inverted): Rename to... | |
11486 | (*branch_fp_inverted): ...this and update as for *branch_fp. | |
11487 | (*branch_zero<mode>): Rename to... | |
11488 | (*branch_order<mode>): ...this. Remove mode from comparison operator. | |
11489 | Use mips_output_order_conditional_branch. Only accept ordered | |
4b1c1f6f | 11490 | comparisons. |
a8c1d5f8 RS |
11491 | (*branch_zero<mode>_inverted): Rename to... |
11492 | (*branch_order<mode>_inverted): ...this and update as for | |
11493 | *branch_order<mode>. | |
11494 | (*branch_equality<mode>): Accept zero as the second operand to | |
11495 | the equality operator. Use the new mips_output_conditional_branch | |
11496 | interface. | |
11497 | (*branch_equality<mode>_inverted): Likewise. | |
11498 | (condjump): New expander. | |
11499 | * config/mips/mips-dsp.md (mips_bposge): Remove mode from comparison | |
11500 | operator. | |
11501 | * config/mips/mips-ps-3d.md (bc1any4t, bc1any4f): Likewise. | |
11502 | (bc1any2t, bc1any2f): Likewise. | |
11503 | (single_cc): New expander. | |
11504 | (*branch_upper_lower, *branch_upper_lower_inverted): New patterns. | |
11505 | ||
cbbb5b6d RS |
11506 | 2006-03-09 Richard Sandiford <richard@codesourcery.com> |
11507 | ||
11508 | * doc/md.texi: Update documentation of MIPS constraints. | |
11509 | * config/mips/constraints.md: New file. | |
11510 | * config/mips/mips.md: Include it. | |
11511 | * config/mips/mips.c (mips_char_to_class): Delete. | |
11512 | (override_options): Don't initialize mips_char_to_class. | |
11513 | * config/mips/mips.h (mips_char_to_class): Delete. | |
11514 | (REG_CLASS_FROM_LETTER): Delete. | |
11515 | (CONST_OK_FOR_LETTER_P): Delete. | |
11516 | (CONST_DOUBLE_OK_FOR_LETTER_P): Delete. | |
11517 | (EXTRA_CONSTRAINT_Y): Delete. | |
11518 | (EXTRA_CONSTRAINT_STR): Delete. | |
11519 | (CONSTRAINT_LEN): Delete. | |
11520 | (EXTRA_MEMORY_CONSTRAINT): Delete. | |
11521 | ||
1799e5d5 RH |
11522 | 2006-03-09 Diego Novillo <dnovillo@redhat.com> |
11523 | ||
11524 | * tree-cfg.c (move_block_to_fn): Remove the statements from the | |
11525 | original fn's eh regions. | |
11526 | ||
f8fe0545 EB |
11527 | 2006-03-09 Eric Botcazou <ebotcazou@adacore.com> |
11528 | ||
11529 | * fold-const.c (build_range_check): Make sure to use a valid type to | |
11530 | apply the "(c>=low) && (c<=high) into (c-low>=0) && (c-low<=high-low)" | |
11531 | transformation. | |
11532 | ||
11533 | (range_predecessor): New static function. | |
11534 | (range_successor): Likewise. | |
11535 | (merge_ranges): Use them to compute predecessors and successors of | |
11536 | range bounds. | |
11537 | ||
d56ee62b RS |
11538 | 2006-03-09 Roger Sayle <roger@eyesopen.com> |
11539 | ||
11540 | PR middle-end/26561 | |
11541 | * fold-const.c (fold_div_compare): When optimizing X/C1 op C2 as | |
11542 | X op C3, consider whether C3 overflows towards +Inf or -Inf. | |
11543 | ||
07127a0a DD |
11544 | 2006-03-08 DJ Delorie <dj@redhat.com> |
11545 | ||
11546 | * config/m32c/addsub.md (addqi3): Disparage a0/a1. | |
11547 | (addpsi3): Expand to include memory operands. Remove | |
11548 | reload-specific splits. | |
11549 | * config/m32c/bitops.md (bset_qi, bset_hi, bclr_qi): New. | |
11550 | (andqi3_16, andhi3_16, iorqi3_16, iorhi3_16): New. | |
11551 | (andqi3_24, andhi3_24, iorqi3_24, iorhi3_24): New. | |
11552 | (andqi3, andhi3, iorqi3, iorhi3): Convert to expanders. | |
11553 | (shift1_qi, shift1_hi, insv): New. | |
11554 | * config/m32c/cond.md (cbranchqi4, cbranchhi4): Remove. | |
11555 | (cbranch<mode>4, stzx_16, stzx_24_<mode>, stzx_reversed, | |
11556 | cmp<mode>, b<code>, s<code>, s<code>_24, movqicc, movhicc, | |
11557 | cond_to_int): New. | |
11558 | * config/m32c/m32c-protos.h: Update as needed. | |
11559 | * config/m32c/m32c.c (m32c_reg_class_from_constraint): Don't | |
11560 | default the Rcr, Rcl, Raw, and Ral constraints. Add Ra0 and Ra1. | |
11561 | Fail for unrecognized R* constraints. | |
11562 | (m32c_cannot_change_mode_class): Be more picky about pseudos. | |
11563 | (m32c_const_ok_for_constraint_p): Add Imb, Imw, and I00. | |
11564 | (m32c_extra_constraint_p2): Allow (mem (plus (plus fb int) int)). | |
11565 | Add Sp constraint. | |
11566 | (m32c_init_libfuncs): New. | |
11567 | (m32c_legitimate_address_p): Add debug wrapper. | |
11568 | (m32c_rtx_costs): New. | |
11569 | (m32c_address_cost): New. | |
11570 | (conversions): Add 'B' prefix. | |
11571 | (m32c_print_operand): 'h' and 'H' pick lower and upper halves of | |
11572 | operands, or word regnames for QI operands. 'B' prints bit | |
11573 | position. | |
11574 | (m32c_expand_setmemhi): New. | |
11575 | (m32c_expand_movmemhi): New. | |
11576 | (m32c_expand_movstr): New. | |
11577 | (m32c_expand_cmpstr): New. | |
11578 | (m32c_prepare_shift): Shift counts are limited to 16 bits at a time. | |
11579 | (m32c_expand_neg_mulpsi3): Handle non-ints. | |
11580 | (m32c_cmp_flg_0): New. | |
11581 | (m32c_expand_movcc): New. | |
11582 | (m32c_expand_insv): New. | |
11583 | (m32c_scc_pattern): New. | |
11584 | * config/m32c/m32c.h (reg classes): Add AO_REGS and A1_REGS. Take | |
11585 | a0/a1 out of SIregs. | |
11586 | (STORE_FLAG_VALUE): New. | |
11587 | * config/m32c/m32c.md: Add unspecs for string moves. Define various mode and | |
11588 | code macros. | |
11589 | (no_insn): New. | |
11590 | * config/m32c/mov.md: Make constraints more liberal. | |
11591 | (zero_extendqihi2): Optimize r0/r1 case. | |
11592 | * config/m32c/muldiv.md (mulpsi3): Check for intvals. | |
11593 | * config/m32c/predicates.md (m32c_any_operand): New. | |
11594 | (m32c_nonimmediate_operand): New. | |
11595 | (m32c_hl_operand): New. | |
11596 | (m32c_r3_operand): New. | |
11597 | (ap_operand): New. | |
11598 | (ma_operand): New. | |
11599 | (memsym_operand): New. | |
11600 | (memimmed_operand): New. | |
11601 | (a_qi_operand): New. | |
11602 | (m32c_eqne_operator): New. | |
11603 | (m32c_1bit8_operand): New. | |
11604 | (m32c_1bit16_operand): New. | |
11605 | (m32c_1mask8_operand): New. | |
11606 | (m32c_1mask16_operand): New. | |
11607 | * config/m32c/blkmov.md: New file. | |
11608 | * config/m32c/t-m32c (MD_FILES): Add blkmov. | |
11609 | ||
6677e189 AT |
11610 | 2006-03-08 Andreas Tobler <a.tobler@schweiz.ch> |
11611 | ||
8f4fc766 AT |
11612 | * dwarf2out.c (expand_builtin_dwarf_sp_column): Make dwarf_regnum |
11613 | unsigned to fix signed/unsigned comparison issue in | |
11614 | DWARF2_FRAME_REG_OUT. | |
11615 | (expand_builtin_init_dwarf_reg_sizes): Make i unsigned to fix signed/ | |
11616 | unsigned comparison issue in DWARF2_FRAME_REG_OUT. | |
11617 | ||
6677e189 AT |
11618 | * tree-ssa-operands.c (finalize_ssa_def_ops): Move the declaration |
11619 | of ptr into the ENABLE_CHECKING section. | |
11620 | ||
60c9ad46 JL |
11621 | 2006-03-08 Jeff Law <law@redhat.com> |
11622 | ||
11623 | * tree-vrp.c (infer_value_range): Only count pointer uses | |
11624 | and dereferences if -fdelete-null-pointer-checks is enabled. | |
11625 | ||
11626 | * tree-vrp.c (find_assert_locations): Infer value ranges for | |
11627 | single use pointers, but do not create ASSERT_EXPRs for them. | |
11628 | When a non-null range is inferred for a pointer, backwards | |
11629 | propagate that range to other equivalent pointers through the | |
11630 | use-def chain. | |
11631 | ||
dedfa466 PB |
11632 | 2006-03-08 Paolo Bonzini <bonzini@gnu.org> |
11633 | ||
11634 | PR bootstrap/26500 | |
11635 | * Makefile.in (dvi, html, install-info): Invoke the corresponding | |
11636 | language hook targets. | |
11637 | * ada/Make-lang.in, cp/Make-lang.in, objc/Make-lang.in, | |
11638 | objcp/Make-lang.in: Create stub rules for dvi, html, install-info | |
11639 | if language hook targets were missing. | |
11640 | ||
ac574e1b ZD |
11641 | 2006-03-07 Zdenek Dvorak <dvorakz@suse.cz> |
11642 | ||
11643 | * tree-ssa-opfinalize.h: Removed. | |
11644 | * Makefile.in (tree-ssa-operands.o): Remove tree-ssa-opfinalize.h | |
11645 | dependency. | |
11646 | * tree-ssa-operands.c: Do not include tree-ssa-opfinalize.h. | |
11647 | (ALLOC_OPTYPE, APPEND_OP_AFTER, MOVE_HEAD_AFTER, MOVE_HEAD_TO_FREELIST, | |
11648 | INITIALIZE_USE, add_def_op, add_use_op, add_vuse_op, add_maydef_op, | |
11649 | add_mustdef_op, finalize_ssa_def_ops, finalize_ssa_use_ops, | |
11650 | finalize_ssa_v_may_def_ops, finalize_ssa_vuse_ops, | |
11651 | finalize_ssa_v_must_def_ops): New. | |
11652 | ||
50d5ff7d KZ |
11653 | 2006-03-07 Kenneth Zadeck <zadeck@naturalbridge.com> |
11654 | ||
11655 | * df-scan.c: (df_bb_refs_record): Fix obvious typo with wrong | |
11656 | block as parameter. | |
11657 | ||
fb638355 GK |
11658 | 2006-03-07 Geoffrey Keating <geoffk@apple.com> |
11659 | ||
cd554454 GK |
11660 | * varasm.c (assemble_end_function): Say that 'fnname' is unused. |
11661 | ||
dbde310d GK |
11662 | * config/i386/i386.c (ix86_delegitimize_address): Handle Darwin |
11663 | addresses with offsets; reorganize. | |
11664 | ||
fb638355 GK |
11665 | * dwarf2out.c (DWARF2_FRAME_REG_OUT): Move up in file. |
11666 | (expand_builtin_dwarf_sp_column): Call DWARF2_FRAME_REG_OUT. | |
11667 | (expand_builtin_init_dwarf_reg_sizes): Likewise. | |
11668 | ||
0f047685 DB |
11669 | 2006-03-08 David Billinghurst <David.Billinghurst@riotinto.com> |
11670 | ||
11671 | PR target/26588 | |
11672 | * config/i386/cygwin.h (GOMP_SELF_SPECS): Define. | |
11673 | ||
c18f0c26 BE |
11674 | 2006-03-08 Ben Elliston <bje@au.ibm.com> |
11675 | ||
11676 | * config/fp-bit.h (CMPtype): Typedef to a word mode integer. | |
11677 | ||
48fa3029 AH |
11678 | 2006-03-07 Aldy Hernandez <aldyh@redhat.com> |
11679 | ||
11680 | PR gomp/26238 | |
11681 | * doc/passes.texi (Tree-SSA passes): Document omp lowering and | |
11682 | expansion. | |
11683 | ||
6f1be8e1 RG |
11684 | 2006-03-07 Richard Guenther <rguenther@suse.de> |
11685 | ||
11686 | PR tree-optimization/26587 | |
11687 | * tree-ssa-structalias.c (handle_ptr_arith): Handle MINUS_EXPR. | |
11688 | ||
6410fb81 RS |
11689 | 2006-03-07 Richard Sandiford <richard@codesourcery.com> |
11690 | ||
11691 | * varasm.c (assemble_variable): Fix setting of DECL_IN_TEXT_SECTION. | |
11692 | ||
1d3dbd99 RS |
11693 | 2006-03-07 Richard Sandiford <richard@codesourcery.com> |
11694 | ||
11695 | * hooks.c (hook_bool_mode_rtx_true): New function. | |
11696 | * hooks.h (hook_bool_mode_rtx_true): Declare. | |
11697 | * toplev.c (compile_file): Call output_shared_constant_pool. | |
11698 | * varasm.c (shared_constant_pool): New variable. | |
11699 | (assemble_start_function, assemble_end_function): Remove arguments | |
11700 | from call to output_constant_pool. | |
11701 | (create_constant_pool): New function, split out from... | |
11702 | (init_varasm_status): ...here. | |
11703 | (force_const_mem): Choose between the shared and per-function constant | |
11704 | pools. Set current_function_uses_const_pool when reusing old entries | |
11705 | as well as when creating new ones. | |
11706 | (mark_constant): Ignore data argument. | |
11707 | (mark_constants): Remove pool argument. | |
11708 | (mark_constant_pool): Likewise. Use current_function_uses_const_pool | |
11709 | to decide whether the function uses a constant pool. | |
11710 | (output_constant_pool_contents): New function, split out from... | |
11711 | (output_constant_pool): ...here. | |
11712 | (output_shared_constant_pool): New function. | |
11713 | (init_varasm_once): Initialize shared_constant_pool. | |
11714 | * output.h (output_constant_pool): Delete. | |
11715 | (output_shared_constant_pool): Declare. | |
11716 | * config/s390/s390-protos.h (s390_output_constant_pool): Delete. | |
11717 | * config/i386/i386.c (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Override. | |
11718 | ||
7d14f0fc NC |
11719 | 2006-03-06 Nick Clifton <nickc@redhat.com> |
11720 | ||
11721 | * config/m32r/m32r.h (OPTIMIZATION_OPTIONS): Remove reference to | |
11722 | flag_strength_reduce. | |
11723 | ||
d9b9633d BE |
11724 | 2006-03-06 Ben Elliston <bje@au.ibm.com> |
11725 | ||
45b9a4e8 BE |
11726 | * config.gcc: Add t-dfprules to $tmake_file for i*86-*-linux* and |
11727 | x86_64-*-linux* configurations. | |
11728 | ||
d9b9633d | 11729 | * config/dfp-bit.h (CMPtype): Typedef to a word mode integer. |
c92f986f | 11730 | (LIBGCC2_WORDS_BIG_ENDIAN): Define. |
d9b9633d | 11731 | |
acfc4f0a KH |
11732 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
11733 | ||
11734 | * tree-ssa-threadupdate.c (rediscover_loops_after_threading): | |
11735 | Remove. | |
11736 | * basic-block.h: Remove the extern for | |
11737 | rediscover_loops_after_threading. | |
11738 | ||
b00bf166 KH |
11739 | * cfgloop.c (cancel_loop): Make it static. |
11740 | * cfgloop.h: Remove the prototype for cancel_loop. | |
11741 | ||
a678e384 KH |
11742 | * flow.c (recompute_reg_usage): Make it static. |
11743 | * rtl.h: Remove the prototype for recompute_reg_usage. | |
11744 | ||
0bf8477d KH |
11745 | * function.c (use_return_register): Make it static. |
11746 | * function.h: Remove the prototype. | |
11747 | ||
d42ee77a KH |
11748 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
11749 | ||
11750 | * recog.c (volatile_mem_p, validate_change_maybe_volatile): | |
11751 | Remove. | |
11752 | * recog.h: Remove the prototype for | |
11753 | validate_change_maybe_volatile. | |
11754 | ||
dc782dcd KH |
11755 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
11756 | ||
11757 | * rtlanal.c (replace_reg): Remove. | |
11758 | * rtl.h: Remove the prototype for replace_reg. | |
11759 | ||
3c491cab KH |
11760 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
11761 | ||
11762 | * regclass.c (reg_scan_update): Remove. | |
11763 | (reg_scan_mark_refs): Remove the last argument. | |
11764 | * rtl.h: Remove the prototype for reg_scan_update. | |
11765 | ||
c0220ea4 KH |
11766 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
11767 | ||
11768 | * builtins.c, c-pragma.h, c-typeck.c, cgraph.c, cgraphunit.c, | |
11769 | combine.c, common.opt, config/dfp-bit.c, config/i386/i386.c, | |
11770 | config/m68k/m68k.c, config/m68k/m68k.md, config/mt/mt.c, | |
11771 | config/mt/mt.h, config/s390/s390.md, df-core.c, df-problems.c, | |
11772 | df-scan.c, df.h, diagnostic.c, expr.c, function.h, gimplify.c, | |
11773 | loop-invariant.c, omp-low.c, opts.c, passes.c, | |
11774 | rtl-factoring.c, rtlanal.c, struct-equiv.c, tree-cfgcleanup.c, | |
11775 | tree-ssa-loop-niter.c, tree-ssa-loop-prefetch.c, | |
11776 | tree-ssa-structalias.c, tree-ssa-threadedge.c, | |
11777 | tree-ssa-threadupdate.c, tree-vect-patterns.c, | |
11778 | tree-vect-transform.c, tree-vectorizer.h, tree-vrp.c, | |
11779 | unwind-dw2.c: Fix comment typos. Follow spelling conventions. | |
11780 | ||
ae3b9f19 KH |
11781 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
11782 | ||
11783 | * dwarf2out.c (dwarf2out_add_library_unit_info): Remove. | |
11784 | * dwarf2out.h: Remove the prototype for | |
11785 | dwarf2out_add_library_unit_info. | |
11786 | ||
a82db052 KH |
11787 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
11788 | ||
11789 | * tree.c (add_var_to_bind_expr): Remove. | |
11790 | * tree.h: Remove the prototype for add_var_to_bind_expr. | |
11791 | ||
3c6c67f8 KH |
11792 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
11793 | ||
11794 | * regclass.c (n_non_fixed_regs): Remove. | |
11795 | (init_reg_sets_1, globalize_reg): Remove all uses of | |
11796 | n_non_fixed_regs. | |
11797 | * hard-reg-set.h: Remove the extern for n_non_fixed_regs. | |
11798 | ||
22ec0cc8 KH |
11799 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
11800 | ||
11801 | * rtlanal.c (insns_safe_to_move_p): Remove. | |
11802 | * rtl.h: Remove the prototype for insns_safe_to_move_p. | |
11803 | ||
2f8dc5bb KH |
11804 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
11805 | ||
11806 | * expmed.c (expand_mult_add): Remove. | |
11807 | * expr.h: Remove the prototype for expand_mult_add. | |
11808 | ||
4469af7a JJ |
11809 | 2006-03-04 Jakub Jelinek <jakub@redhat.com> |
11810 | ||
11811 | * unwind-dw2.h (_Unwind_FrameState): Add REG_SAVED_VAL_OFFSET | |
11812 | and REG_SAVED_VAL_EXP constants. | |
11813 | * unwind-dw2.c (struct _Unwind_Context): Add by_value array. | |
11814 | (_Unwind_GetGR, _Unwind_SetGR, _Unwind_GetGRPtr, _Unwind_SetGRPtr): | |
11815 | Handle regs stored by value. | |
11816 | (_Unwind_SetGRValue, _Unwind_GRByValue): New functions. | |
11817 | (execute_cfa_program): Handle DW_CFA_val_offset, | |
11818 | DW_CFA_val_offset_sf and DW_CFA_val_expression. | |
11819 | (uw_update_context_1): Handle REG_SAVED_REG with regs stored by | |
11820 | value specially. Handle REG_SAVED_VAL_OFFSET and REG_SAVED_VAL_EXP. | |
11821 | (uw_install_context_1): Handle target regs stored by value. | |
11822 | ||
efdb3de9 DB |
11823 | 2006-03-03 Daniel Berlin <dberlin@dberlin.org> |
11824 | ||
11825 | * tree-sra.c (tree_sra): Return todoflags; | |
11826 | (generate_one_element): Set TODO_update_smt_usage if needed. | |
11827 | (pass_sra): Remove TODO_update_smt_usage. | |
11828 | * tree-ssa-forwprop.c (forward_propagate_addr_expr): Add some | |
11829 | parameter. | |
11830 | (tree_ssa_forward_propagate_single_use_vars): Return | |
11831 | TODO_update_smt_usage if we need to update SMT usage. | |
11832 | (pass_forwprop): Remove TODO_update_smt_usage. | |
4b1c1f6f | 11833 | |
65ad7c63 DN |
11834 | 2006-03-03 Diego Novillo <dnovillo@redhat.com> |
11835 | ||
11836 | * tree-ssa-operands.c: Tidy whitespace. Fix spelling. | |
11837 | (correct_use_link): Remove reference to get_stmt_operands. | |
11838 | (update_stmt_operands): Likewise. | |
11839 | (get_modify_expr_operands): New function factored out of | |
11840 | parse_ssa_operands and get_expr_operands. | |
11841 | Try to create V_MUST_DEFs for LHS by default. | |
11842 | (get_expr_operands) <case MODIFY_EXPR>: Call | |
11843 | get_modify_expr_operands. | |
11844 | <case ARRAY_RANGE_REF>: Handle together with ARRAY_REF. | |
11845 | <case BIT_FIELD_REF>: Clear opf_kill_def from FLAGS. | |
11846 | (parse_ssa_operands) <case MODIFY_EXPR>: Call | |
11847 | get_modify_expr_operands. | |
11848 | ||
417e90ca KH |
11849 | 2006-03-03 Kazu Hirata <kazu@codesourcery.com> |
11850 | ||
11851 | * tree-dfa.c (referenced_var_lookup_if_exists): Remove. | |
11852 | * tree-flow.h: Remove the prototype for | |
11853 | referenced_var_lookup_if_exists. | |
11854 | ||
f6d65153 SE |
11855 | 2006-03-03 Steve Ellcey <sje@cup.hp.com> |
11856 | ||
11857 | PR rtl-optimization/26345 | |
11858 | PR target/19061 | |
11859 | * config/ia64/predicates.md (basereg_operand): Don't look in subregs. | |
11860 | ||
9a75ede0 RS |
11861 | 2006-03-03 Roger Sayle <roger@eyesopen.com> |
11862 | ||
11863 | PR tree-optimization/26524 | |
11864 | * tree-scalar-evolution.c (interpret_rhs_modify_expr): Use | |
11865 | fold_convert to create a constant of the appropriate type. | |
11866 | ||
3fa9c136 RS |
11867 | 2006-03-03 Richard Sandiford <richard@codesourcery.com> |
11868 | ||
11869 | * doc/tm.texi: Refer to SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
11870 | SYMBOL_REF_IN_BLOCK_P. | |
11871 | * doc/rtl.texi: Likewise. Refer to SYMBOL_FLAG_HAS_BLOCK_INFO instead | |
11872 | of SYMBOL_FLAG_IN_BLOCK. | |
11873 | * gengtype.c (adjust_field_rtx_def): Use SYMBOL_REF_HAS_BLOCK_INFO_P | |
11874 | instead of SYMBOL_REF_IN_BLOCK_P. | |
11875 | * explow.c (use_anchored_address): Likewise. | |
11876 | * rtl.c (rtx_size): Likewise. | |
11877 | * varasm.c (create_block_symbol): Set SYMBOL_FLAG_HAS_BLOCK_INFO | |
11878 | instead of SYMBOL_FLAG_IN_BLOCK. | |
11879 | (make_decl_rtl): Use SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
11880 | SYMBOL_REF_IN_BLOCK_P. | |
11881 | (assemble_variable): Likewise. | |
11882 | (output_constant_def_contents): Likewise. | |
11883 | (output_constant_pool): Likewise. | |
11884 | (default_encode_section_info): Preserve SYMBOL_FLAG_HAS_BLOCK_INFO | |
11885 | instead of SYMBOL_FLAG_IN_BLOCK. | |
11886 | * rtl.h (block_symbol): Refer to SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
11887 | SYMBOL_REF_IN_BLOCK_P. | |
11888 | (SYMBOL_REF_BLOCK): Likewise. | |
11889 | (SYMBOL_REF_OFFSET): Likewise. | |
11890 | (BLOCK_SYMBOL_CHECK): Use SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
11891 | SYMBOL_REF_IN_BLOCK_P. | |
11892 | (SYMBOL_FLAG_IN_BLOCK): Replace with... | |
11893 | (SYMBOL_FLAG_HAS_BLOCK_INFO): ...this. | |
11894 | (SYMBOL_REF_IN_BLOCK_P): Replace with... | |
11895 | (SYMBOL_REF_HAS_BLOCK_INFO_P): ...this. | |
11896 | ||
f677599e JJ |
11897 | 2006-03-03 Jakub Jelinek <jakub@redhat.com> |
11898 | ||
11899 | * config/arm/unwind-arm.h (_Unwind_GetIPInfo): Fix pasto. | |
11900 | ||
0f2f71b5 RS |
11901 | 2006-03-02 Roger Sayle <roger@eyesopen.com> |
11902 | ||
11903 | * simplify-rtx.c (simplify_unary_operation): When simplifying | |
11904 | (neg (lt X 0)) into (ashiftrt X C) or (lshiftrt X C), make sure | |
11905 | that we perform the right shift in the appropriate mode, and | |
11906 | then extend or truncate the result to requested mode. | |
11907 | ||
f82783bd ZD |
11908 | 2006-03-03 Zdenek Dvorak <dvorakz@suse.cz> |
11909 | ||
11910 | * gengtype.c (main): Handle double_int type. | |
11911 | * tree.h (struct tree_int_cst): Make type of int_cst double_int. | |
11912 | * double-int.c: New file. | |
11913 | * double-int.h: New file. | |
11914 | * system.h: Include doubleint.h. | |
11915 | * Makefile.in (SYSTEM_H): Include double-int.h. | |
11916 | (double-int.o): Add. | |
11917 | ||
778f0e89 JM |
11918 | 2006-03-03 Joseph S. Myers <joseph@codesourcery.com> |
11919 | ||
11920 | PR bootstrap/26478 | |
11921 | * Makefile.in (stmp-int-hdrs): Remove include/unwind.h before | |
11922 | copying over it. | |
11923 | ||
701b8964 ZD |
11924 | 2006-03-02 Zdenek Dvorak <dvorakz@suse.cz> |
11925 | ||
0f2f71b5 RS |
11926 | * tree-vrp.c (remove_range_assertions): Do not update statements |
11927 | unnecessarily. | |
701b8964 | 11928 | |
59994160 ZD |
11929 | 2006-03-02 Zdenek Dvorak <dvorakz@suse.cz> |
11930 | ||
11931 | * cse.c (rest_of_handle_cse): Do not pass CLEANUP_PRE_LOOP to cfg | |
11932 | cleanup. | |
11933 | * gcse.c (rest_of_handle_gcse): Ditto. | |
11934 | * except.c (gate_handle_eh): Ditto. | |
11935 | * cfgcleanup.c (rest_of_handle_jump2): Ditto. | |
11936 | * basic-block.h (CLEANUP_PRE_LOOP): Remove. | |
11937 | ||
5143b5fc EC |
11938 | 2006-03-02 Eric Christopher <echristo@apple.com> |
11939 | ||
11940 | * config/i386/i386.c (machopic_output_stub): Add indirection to | |
11941 | jump. | |
11942 | ||
c6ba18c6 ZD |
11943 | 2006-03-02 Zdenek Dvorak <dvorakz@suse.cz> |
11944 | ||
11945 | * loop.c: Removed. | |
11946 | ||
4c837a1e DM |
11947 | 2006-03-02 David S. Miller <davem@sunset.davemloft.net> |
11948 | ||
11949 | Sun Niagara specific optimizations. | |
11950 | * config.gcc: Recognize niagara as target. | |
11951 | * config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Mention Niagara. | |
11952 | (TARGET_CPU_niagara): Define. | |
11953 | (CPP_CPU64_DEFAULT_SPEC): Define __sparc_v9__ for Niagara. | |
11954 | (ASM_CPU64_DEFAULT_SPEC): Pass -Av9b for Niagara. | |
11955 | (CPP_CPU_SPEC): Handle -mcpu=niagara. | |
11956 | (ASM_CPU_SPEC): Likewise. | |
11957 | (PROCESSOR_NIAGARA): New enum entry. | |
11958 | (REGISTER_MOVE_COST): Handle Niagara. | |
11959 | (BRANCH_COST, PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): Likewise. | |
11960 | * config/sparc/sparc.c (niagara_costs): New processor_costs entry. | |
11961 | (sparc_override_options): Recognize "niagara", set appropriate | |
11962 | default MASK_* values for it, and align functions to 32-bytes | |
11963 | by default just like ULTRASPARC/ULTRASPARC3. | |
11964 | (sparc_initialize_trampoline): Handle niagara like ultrasparc. | |
11965 | (sparc64_initialize_trampoline): Likewise. | |
11966 | (sparc_use_sched_lookahead): Use zero for niagara. | |
11967 | (sparc_issue_rate): Use one for niagara. | |
11968 | * config/sparc/niagara.md: New file. | |
11969 | * config/sparc/sparc.md: Include it. | |
11970 | * config/sparc/sol2-bi.h (CPP_CPU64_DEFAULT_SPEC, | |
11971 | ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Set appropriately | |
11972 | when default cpu is niagara. | |
11973 | (CPP_CPU_SPEC): Handle -mcpu=niagara. | |
11974 | (ASM_CPU_SPEC): Likewise. | |
11975 | * config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Set appropriately | |
11976 | when default cpu is niagara. | |
11977 | (ASM_CPU_SPEC): Handle -mcpu=niagara. | |
11978 | * config/sparc/linux64.h: Handle a default of TARGET_CPU_niagara | |
11979 | just like v9/ultrasparc/ultrasparc3. | |
11980 | * doc/invoke.texi: Add documentation for "niagara" and improve | |
11981 | existing documentation for ultrasparc variants. | |
5143b5fc | 11982 | |
2434ab1d DN |
11983 | 2006-03-02 Diego Novillo <dnovillo@redhat.com> |
11984 | ||
11985 | * tree-ssa-operands.c (update_stmt_operands): Update documentation. | |
11986 | ||
434aeebb RS |
11987 | 2006-03-02 Richard Sandiford <richard@codesourcery.com> |
11988 | ||
11989 | * doc/tm.texi (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Document. | |
11990 | (ASM_OUTPUT_BSS): Describe the two ways of handling global BSS, | |
11991 | and say that only one is needed. | |
11992 | * doc/rtl.texi (SYMBOL_REF_BLOCK): Say that the block can be null. | |
11993 | * target.h (have_switchable_bss_sections): New hook. | |
11994 | * explow.c (use_anchored_address): Check that the symbol is in a block. | |
11995 | * varasm.c (tls_comm_section, comm_section, lcomm_section) | |
11996 | (bss_noswitch_section): New variables. | |
11997 | (get_unnamed_section): Add SECTION_UNNAMED to the flags. | |
11998 | (get_noswitch_section): New function. | |
11999 | (get_block_for_section): Allow SECT to be null. | |
12000 | (unlikely_text_section_p): Use SECTION_STYLE. | |
12001 | (bss_initializer_p): New function. | |
12002 | (get_variable_section): Move earlier in file. Take a new argument, | |
12003 | prefer_noswitch_p. Move bss checks from assemble_variable to here. | |
12004 | Return one of the new *_sections in such cases. | |
12005 | (get_block_for_decl): New function, extracting some logic from | |
12006 | use_blocks_for_decl_p. | |
12007 | (change_symbol_section): Remove in favor of... | |
12008 | (change_symbol_block): ...this new function. | |
12009 | (use_blocks_for_decl_p): Remove checks now performed by | |
12010 | get_block_for_decl. | |
12011 | (make_decl_rtl): Use change_symbol_block and get_block_for_decl. | |
12012 | (ASM_EMIT_LOCAL, ASM_EMIT_BSS, ASM_EMIT_COMMON): Delete in favor of... | |
12013 | (emit_local, emit_bss, emit_common): ...these new functions. | |
12014 | Return true if the alignment was honored. | |
12015 | (emit_tls_common): New function. | |
12016 | (asm_emit_uninitialised): Delete. | |
12017 | (assemble_variable_noswitch): New function, split out from... | |
12018 | (assemble_variable): ...here. Don't make decisions about common | |
12019 | variables here. Globalize all public decls that go into non-common | |
12020 | sections. Check whether SYMBOL_REF_BLOCK is null. | |
12021 | (output_constant_def_contents): Check whether SYMBOL_REF_BLOCK is null. | |
12022 | (output_constant_pool): Likewise. | |
12023 | (init_varasm_once): Initialize the new section variables. | |
12024 | (have_global_bss_p): New function. | |
12025 | (categorize_decl_for_section): Use bss_initializer_p. | |
12026 | (switch_to_section): Use SECTION_STYLE. Abort for SECTION_NOSWITCH. | |
12027 | (place_block_symbol): Assert that the symbol must be in a block. | |
12028 | * target-def.h (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): New macro. | |
12029 | (TARGET_INITIALIZER): Include it. | |
12030 | * rtl.h (SYMBOL_REF_BLOCK): Document the null alternative. | |
12031 | * output.h (SECTION_STYLE_MASK, SECTION_COMMON): New macros. | |
12032 | (SECTION_MACH_DEP): Bump by two. | |
12033 | (SECTION_UNNAMED, SECTION_NOSWITCH): New macros. | |
12034 | (unnamed_section): Mention SECTION_UNNAMED in comment. | |
12035 | (named_section): Likewise SECTION_NAMED. | |
12036 | (noswitch_section_callback): New type. | |
12037 | (noswitch_section): New structure. | |
12038 | (section): Add a noswitch_section alternative. | |
12039 | (SECTION_STYLE): New macro. | |
12040 | (tls_comm_section, comm_section, lcomm_section): Declare. | |
12041 | (bss_noswitch_section, have_global_bss_p): Declare. | |
12042 | * config/elfos.h (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Override. | |
12043 | * config/iq2000/iq2000.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): | |
12044 | Override. | |
12045 | * config/v850/v850.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Override. | |
12046 | * config/stormy16/stormy16.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): | |
12047 | Override. | |
12048 | ||
c2924966 DB |
12049 | 2006-03-02 Daniel Berlin <dberlin@dberlin.org> |
12050 | ||
a1d1988f MS |
12051 | * tree-vrp.c (execute_vrp): Return value. |
12052 | * regrename.c (rest_of_handle_regrename): Ditto. | |
12053 | * tree-into-ssa.c (rewrite_into_ssa): Ditto. | |
12054 | * tree-complex.c (tree_lower_complex): Ditto. | |
c2924966 | 12055 | (tree_lower_complex_O0): Ditto. |
a1d1988f MS |
12056 | * tracer.c (rest_of_handle_tracer): Ditto. |
12057 | * postreload-gcse.c (rest_of_handle_gcse2): Ditto. | |
12058 | * postreload.c (rest_of_handle_postreload): Ditto. | |
12059 | * tree-tailcall.c (execute_tail_recursion): Ditto. | |
c2924966 | 12060 | (execute_tail_calls): Ditto. |
a1d1988f MS |
12061 | * tree-ssa-loop-ch.c (copy_loop_headers): Ditto. |
12062 | * tree.h (init_function_for_compilation): Ditto. | |
12063 | * ipa-cp.c (ipcp_driver): Ditto. | |
12064 | * tree-scalar-evolution.c (scev_const_prop): Ditto. | |
12065 | * tree-scalar-evolution.h (scev_const_prop): Ditto. | |
12066 | * final.c (compute_alignments): Ditto. | |
c2924966 DB |
12067 | (rest_of_handle_final): Ditto. |
12068 | (rest_of_handle_shorten_branches): Ditto. | |
12069 | (rest_of_clean_state): Ditto. | |
a1d1988f | 12070 | * omp-low.c (execute_expand_omp): Ditto. |
c2924966 | 12071 | (execute_lower_omp): Ditto. |
a1d1988f MS |
12072 | * tree-ssa-dse.c (tree_ssa_dse): Ditto. |
12073 | * ipa-reference.c (static_execute): Ditto. | |
12074 | * tree-ssa-uncprop.c (tree_ssa_uncprop): Ditto. | |
12075 | * reorg.c (rest_of_handle_delay_slots): Ditto. | |
c2924966 | 12076 | (rest_of_handle_machine_reorg): Ditto. |
a1d1988f MS |
12077 | * cgraphunit.c (rebuild_cgraph_edges): Ditto. |
12078 | * flow.c (recompute_reg_usage): Ditto. | |
c2924966 DB |
12079 | (rest_of_handle_remove_death_notes): Ditto. |
12080 | (rest_of_handle_life): Ditto. | |
12081 | (rest_of_handle_flow2): Ditto. | |
a1d1988f MS |
12082 | * tree-ssa-copyrename.c (rename_ssa_copies): Ditto. |
12083 | * tree-ssa-ccp.c (do_ssa_ccp): Ditto. | |
c2924966 DB |
12084 | (do_ssa_store_ccp): Ditto. |
12085 | (execute_fold_all_builtins): Ditto. | |
a1d1988f MS |
12086 | * mode-switching.c (rest_of_handle_mode_switching): Ditto. |
12087 | * modulo-sched.c (rest_of_handle_sms): Ditto. | |
12088 | * ipa-pure-const.c (static_execute): Ditto. | |
12089 | * cse.c (rest_of_handle_cse): Ditto. | |
c2924966 | 12090 | (rest_of_handle_cse2): Ditto. |
a1d1988f MS |
12091 | * web.c (rest_of_handle_web): Ditto. |
12092 | * tree-stdarg.c (execute_optimize_stdarg): Ditto. | |
12093 | * tree-ssa-math-opts.c (execute_cse_reciprocals): Ditto. | |
12094 | * tree-ssa-dom.c (tree_ssa_dominator_optimize): Ditto. | |
12095 | * tree-nrv.c (tree_nrv): Ditto. | |
c2924966 | 12096 | (execute_return_slot_opt): Ditto. |
a1d1988f | 12097 | * tree-ssa-alias.c (compute_may_aliases): Ditto. |
c2924966 | 12098 | (create_structure_vars): Ditto. |
a1d1988f | 12099 | * loop-init.c (rtl_loop_init): Ditto. |
c2924966 DB |
12100 | (rtl_loop_done): Ditto. |
12101 | (rtl_move_loop_invariants): Ditto. | |
12102 | (rtl_unswitch): Ditto. | |
12103 | (rtl_unroll_and_peel_loops): Ditto. | |
12104 | (rtl_doloop): Ditto. | |
a1d1988f | 12105 | * gimple-low.c (lower_function_body): Ditto. |
c2924966 | 12106 | (mark_used_blocks): Ditto. |
a1d1988f MS |
12107 | * tree-ssa-sink.c (execute_sink_code): Ditto. |
12108 | * ipa-inline.c (cgraph_decide_inlining): Ditto. | |
c2924966 | 12109 | (cgraph_early_inlining): Ditto. |
a1d1988f MS |
12110 | * global.c (rest_of_handle_global_alloc): Ditto. |
12111 | * jump.c (cleanup_barriers): Ditto. | |
c2924966 | 12112 | (purge_line_number_notes): Ditto. |
a1d1988f | 12113 | * ifcvt.c (rest_of_handle_if_conversion): Ditto. |
c2924966 | 12114 | (rest_of_handle_if_after_reload): Ditto. |
a1d1988f | 12115 | * tree-ssa-loop.c (tree_ssa_loop_init): Ditto. |
c2924966 DB |
12116 | (tree_ssa_loop_im): Ditto. |
12117 | (tree_ssa_loop_unswitch): Ditto. | |
12118 | (tree_vectorize): Ditto. | |
12119 | (tree_linear_transform): Ditto. | |
12120 | (tree_ssa_loop_ivcanon): Ditto. | |
12121 | (tree_ssa_empty_loop): Ditto. | |
12122 | (tree_ssa_loop_bounds): Ditto. | |
12123 | (tree_complete_unroll): Ditto. | |
12124 | (tree_ssa_loop_prefetch): Ditto. | |
12125 | (tree_ssa_loop_ivopts): Ditto. | |
12126 | (tree_ssa_loop_done): Ditto. | |
a1d1988f MS |
12127 | * predict.c (tree_estimate_probability): Ditto. |
12128 | * recog.c (split_all_insns_noflow): Ditto. | |
c2924966 DB |
12129 | (rest_of_handle_peephole2): Ditto. |
12130 | (rest_of_handle_split_all_insns): Ditto. | |
a1d1988f MS |
12131 | * tree-eh.c (lower_eh_constructs): Ditto. |
12132 | * regmove.c (rest_of_handle_regmove): Ditto. | |
c2924966 | 12133 | (rest_of_handle_stack_adjustments): Ditto. |
a1d1988f MS |
12134 | * local-alloc.c (rest_of_handle_local_alloc): Ditto. |
12135 | * function.c (instantiate_virtual_regs): Ditto. | |
c2924966 DB |
12136 | (init_function_for_compilation): Ditto. |
12137 | (rest_of_handle_check_leaf_regs): Ditto. | |
a1d1988f | 12138 | * gcse.c (rest_of_handle_jump_bypass): Ditto. |
c2924966 | 12139 | (rest_of_handle_gcse): Ditto. |
a1d1988f MS |
12140 | * ipa-type-escape.c (type_escape_execute): Ditto. |
12141 | * alias.c (rest_of_handle_cfg): Ditto. | |
12142 | * tree-if-conv.c (main_tree_if_conversion): Ditto. | |
12143 | * profile.c (rest_of_handle_branch_prob): Ditto. | |
12144 | * tree-ssa-phiopt.c (tree_ssa_phiopt): Ditto. | |
12145 | * rtl-factoring.c (rest_of_rtl_seqabstr): Ditto. | |
12146 | * bt-load.c (rest_of_handle_branch_target_load_optimize): Ditto | |
12147 | * tree-dfa.c (find_referenced_vars): Ditto. | |
12148 | * except.c (set_nothrow_function_flags): Ditto. | |
c2924966 DB |
12149 | (convert_to_eh_region_ranges): Ditto. |
12150 | (rest_of_handle_eh): Ditto. | |
a1d1988f | 12151 | * emit-rtl.c (unshare_all_rtl): Ditto. |
c2924966 | 12152 | (remove_unnecessary_notes): Ditto. |
a1d1988f | 12153 | * except.h (set_nothrow_function_flags): Ditto. |
c2924966 | 12154 | (convert_to_eh_region_ranges): Ditto. |
a1d1988f MS |
12155 | * cfgexpand.c (tree_expand_cfg): Ditto. |
12156 | * tree-cfgcleanup.c (merge_phi_nodes): Ditto. | |
12157 | * tree-ssa-pre.c (do_pre): Ditto. | |
c2924966 | 12158 | (execute_fre): Ditto. |
a1d1988f | 12159 | * cfgcleanup.c (rest_of_handle_jump): Ditto. |
c2924966 | 12160 | (rest_of_handle_jump2): Ditto. |
a1d1988f MS |
12161 | * tree-sra.c (tree_sra): Ditto. |
12162 | * tree-mudflap.c (execute_mudflap_function_ops): Ditto. | |
c2924966 | 12163 | (execute_mudflap_function_decls): Ditto. |
a1d1988f | 12164 | * tree-ssa-copy.c (do_copy_prop): Ditto. |
c2924966 | 12165 | (do_store_copy_prop): Ditto. |
a1d1988f MS |
12166 | * ipa-prop.h (ipcp_driver): Ditto. |
12167 | * cfglayout.c (insn_locators_initialize): Ditto. | |
12168 | * tree-ssa-forwprop.c | |
c2924966 | 12169 | (tree_ssa_forward_propagate_single_use_vars): Ditto. |
a1d1988f MS |
12170 | * cfglayout.h (insn_locators_initialize): Ditto. |
12171 | * tree-ssa-dce.c (tree_ssa_dce): Ditto. | |
12172 | * tree-ssa.c (execute_early_warn_uninitialized): Ditto. | |
c2924966 | 12173 | (execute_late_warn_uninitialized): Ditto. |
a1d1988f | 12174 | * rtl.h (cleanup_barriers): Ditto. |
c2924966 DB |
12175 | (split_all_insns_noflow): Ditto. |
12176 | (purge_line_number_notes): Ditto. | |
12177 | (unshare_all_rtl): Ditto. | |
12178 | (remove_unnecessary_notes): Ditto. | |
12179 | (recompute_reg_usage): Ditto. | |
12180 | (variable_tracking_main): Ditto. | |
a1d1988f MS |
12181 | * integrate.c (emit_initial_value_sets): Ditto. |
12182 | * integrate.h (emit_initial_value_sets): Ditto. | |
12183 | * tree-optimize.c (execute_free_datastructures): Ditto | |
c2924966 DB |
12184 | (execute_free_cfg_annotations): Ditto. |
12185 | (execute_fixup_cfg): Ditto. | |
12186 | (execute_cleanup_cfg_pre_ipa): Ditto. | |
12187 | (execute_cleanup_cfg_post_optimizing): Ditto. | |
12188 | (execute_init_datastructures): Ditto. | |
a1d1988f MS |
12189 | * tree-object-size.c (compute_object_sizes): Ditto. |
12190 | * combine.c (rest_of_handle_combine): Ditto. | |
12191 | * tree-outof-ssa.c (rewrite_out_of_ssa): Ditto. | |
12192 | * bb-reorder.c (duplicate_computed_gotos): Ditto. | |
c2924966 DB |
12193 | (rest_of_handle_reorder_blocks): Ditto. |
12194 | (rest_of_handle_partition_blocks): Ditto. | |
a1d1988f MS |
12195 | * var-tracking.c (variable_tracking_main): Ditto. |
12196 | * tree-profile.c (tree_profiling): Ditto. | |
12197 | * tree-vect-generic.c (expand_vector_operations): Ditto. | |
12198 | * reg-stack.c (rest_of_handle_stack_regs): Ditto. | |
12199 | * sched-rgn.c (rest_of_handle_sched): Ditto. | |
c2924966 | 12200 | (rest_of_handle_sched2): Ditto. |
a1d1988f MS |
12201 | * basic-block.h (free_bb_insn): Ditto. |
12202 | * tree-ssa-structalias.c (ipa_pta_execute): Ditto. | |
12203 | * tree-cfg.c (execute_build_cfg): Ditto. | |
c2924966 DB |
12204 | (remove_useless_stmts): Ditto. |
12205 | (split_critical_edges): Ditto. | |
12206 | (execute_warn_function_return): Ditto. | |
12207 | (execute_warn_function_noreturn): Ditto. | |
a1d1988f MS |
12208 | * tree-ssa-reassoc.c (execute_reassoc): Ditto. |
12209 | * cfgrtl.c (free_bb_for_insn): Ditto. | |
12210 | * passes.c (execute_one_pass): Run additional | |
c2924966 | 12211 | todos returned by execute function. |
a1d1988f | 12212 | * tree-pass.h (struct tree_opt_pass): Make execute |
c2924966 DB |
12213 | return a value. |
12214 | ||
62c577fd RG |
12215 | 2006-03-02 Richard Guenther <rguenther@suse.de> |
12216 | ||
12217 | * tree-ssa-alias.c (find_used_portions): Consider taking | |
12218 | the address as making the variable not write-only. | |
12219 | ||
c5dde55b NC |
12220 | 2006-03-02 Nick Clifton <nickc@redhat.com> |
12221 | ||
12222 | * config.gcc (default_use_cxa_atexit): Extend the description of | |
12223 | this configure variable. Set its default value to "yes" for | |
12224 | Linux, NetBSD and ELF targets on the assumption that they will | |
12225 | use C libraries with the __cxa_atexit function. | |
12226 | ||
75334508 BE |
12227 | 2006-03-02 Ben Elliston <bje@au.ibm.com> |
12228 | ||
12229 | * config/rs6000/linux-unwind.h (frob_update_context): Mark `fs' | |
12230 | parameter as unused to suppress a build warning. | |
12231 | ||
16c44183 BE |
12232 | 2006-03-02 Ben Elliston <bje@au.ibm.com> |
12233 | ||
12234 | * mklibgcc.in: Depend on config/dfp-bit.h in rules that compile | |
12235 | config/dfp-bit.c. | |
12236 | ||
a11dd268 RS |
12237 | 2006-03-01 Roger Sayle <roger@eyesopen.com> |
12238 | ||
12239 | PR other/26489 | |
12240 | * gthr-posix.h (__gthrw2): Define to take three parameters, the | |
12241 | declared name, the weak reference name, and the typeof name. | |
12242 | (__gthrw): Avoid expanding the declared name suffix. | |
12243 | (__gthrw3): New Tru64 specific macro to simplify the OSF/1 decls. | |
12244 | ||
d213accd JJ |
12245 | 2006-03-01 Jakub Jelinek <jakub@redhat.com> |
12246 | ||
12247 | * dwarf2.h (DW_TAG_condition, DW_TAG_shared_type): New constants | |
12248 | from DWARF 3. | |
12249 | (DW_AT_description, DW_AT_binary_scale, DW_AT_decimal_scale, | |
12250 | DW_AT_small, DW_AT_decimal_sign, DW_AT_digit_count, | |
12251 | DW_AT_picture_string, DW_AT_mutable, DW_AT_threads_scaled, | |
12252 | DW_AT_explicit, DW_AT_object_pointer, DW_AT_endianity, | |
12253 | DW_AT_elemental, DW_AT_pure, DW_AT_recursive): New. | |
12254 | (DW_OP_form_tls_address, DW_OP_call_frame_cfa, DW_OP_bit_piece): New. | |
12255 | (DW_ATE_packed_decimal, DW_ATE_numeric_string, DW_ATE_edited, | |
12256 | DW_ATE_signed_fixed, DW_ATE_unsigned_fixed): New. | |
12257 | (DW_DS_unsigned, DW_DS_leading_overpunch, DW_DS_trailing_overpunch, | |
12258 | DW_DS_leading_separate, DW_DS_trailing_separate): New. | |
12259 | (DW_END_default, DW_END_big, DW_END_little): New. | |
12260 | (DW_END_lo_user, DW_END_hi_user): Define. | |
12261 | (DW_LNE_lo_user, DW_LNE_hi_user): Define. | |
12262 | (DW_CFA_val_offset, DW_CFA_val_offset_sf, DW_CFA_val_expression): New. | |
12263 | (DW_LANG_PLI, DW_LANG_ObjC, DW_LANG_ObjC_plus_plus, DW_LANG_UPC, | |
12264 | DW_LANG_D): New. | |
12265 | ||
18cd8a03 DN |
12266 | 2006-03-01 Diego Novillo <dnovillo@redhat.com> |
12267 | ||
12268 | * tree.def (SYMBOL_MEMORY_TAG): Rename from TYPE_MEMORY_TAG. | |
12269 | Update all users. | |
12270 | * tree-pass.h (PROP_smt_usage): Rename from PROP_tmt_usage. | |
12271 | Update all users. | |
12272 | (TODO_update_smt_usage): Rename from TODO_update_tmt_usage. | |
12273 | Update all users. | |
12274 | * tree.h (SMT_USED_ALONE): Rename from TMT_USED_ALONE. | |
12275 | Update all users. | |
12276 | * tree-flow.h (struct var_ann_d): Rename field 'type_mem_tag' | |
12277 | to 'symbol_mem_tag'. | |
12278 | Update all users. | |
12279 | * doc/tree-ssa.texi: Update documentation to reflect TMT->SMT | |
12280 | rename. | |
12281 | ||
8acb1b3d RS |
12282 | 2006-03-01 Roger Sayle <roger@eyesopen.com> |
12283 | ||
12284 | * builtins.c (fold_builtin_copysign): Delete unreachable code. | |
12285 | ||
c446d1a7 AP |
12286 | 2006-03-01 Andrew Pinski <pinskia@physics.uc.edu> |
12287 | ||
12288 | PR target/25761 | |
12289 | * config/darwin.h (MACHOPIC_JUST_INDIRECT): Check just | |
12290 | MACHO_DYNAMIC_NO_PIC_P. | |
12291 | (MACHOPIC_PURE): Check flag_pic and not MACHO_DYNAMIC_NO_PIC_P. | |
12292 | ||
ab0ff804 AP |
12293 | 2006-03-01 Andrew Pinski <pinskia@physics.uc.edu> |
12294 | ||
12295 | PR target/26389 | |
12296 | * config/darwin-protos.h (darwin_asm_output_anchor): | |
12297 | Declare. | |
12298 | * config/darwin-sections.def (cstring_section): | |
12299 | Add SECTION_MERGE to the flags. | |
12300 | (literal4_section): Likewise. | |
12301 | (literal8_section): Likewise. | |
12302 | (objc_selector_refs_section): Likewise. | |
12303 | (objc_cls_refs_section): Likewise. | |
12304 | * config/darwin.c (darwin_asm_output_anchor): New | |
12305 | function. | |
12306 | * config/darwin.h (TARGET_ASM_OUTPUT_ANCHOR): Define. | |
12307 | ||
607f460c | 12308 | 2006-03-01 Daniel Berlin <dberlin@dberlin.org> |
18cd8a03 | 12309 | |
607f460c DB |
12310 | Fix PR tree-optimization/26443 |
12311 | * tree-vrp.c (pass_vrp): Add TODO_update_tmt_usage | |
12312 | to todo and PROP_tmt_usage to properties_destroyed. | |
12313 | * tree-ssa-ccp.c (pass_ccp): Ditto. | |
12314 | (pass_store_ccp): Ditto. | |
12315 | * tree-ssa-dom.c (pass_dominator): Ditto. | |
12316 | ||
02075bb2 DN |
12317 | 2006-03-01 Diego Novillo <dnovillo@redhat.com> |
12318 | ||
12319 | * tree-ssa-operands.c: Cleanup whitespace. | |
12320 | (get_asm_expr_operands): Move before first invocation. | |
12321 | (get_indirect_ref_operands): Likewise. | |
12322 | (get_tmr_operands): Likewise. | |
12323 | (get_call_expr_operands): Likewise. | |
12324 | (append_def): Likewise. | |
12325 | (append_use): Likewise. | |
12326 | (append_v_may_def): Likewise. | |
12327 | (append_v_must_def): Likewise. | |
12328 | (add_call_clobber_ops): Likewise. | |
12329 | (add_call_read_ops): Likewise. | |
12330 | (add_stmt_operand): Likewise. | |
12331 | (add_virtual_operand): Likewise. | |
12332 | (build_ssa_operands): Likewise. | |
12333 | ||
12334 | 2006-03-01 Andrew Pinski <pinskia@physics.uc.edu> | |
1809ff6b AP |
12335 | |
12336 | PR middle-end/26022 | |
12337 | Revert: | |
12338 | PR middle-end/24437 | |
12339 | * tree-ssa-ccp.c (fold_stmt): Move folding of OBJ_TYPE_REF | |
12340 | with a call expr to ... | |
12341 | * fold-const.c (fold_ternary) <case CALL_EXPR>: Here. | |
12342 | ||
6578c101 DN |
12343 | 2006-03-01 Diego Novillo <dnovillo@redhat.com> |
12344 | ||
12345 | * tree-vrp.c (extract_range_from_assert): Remove special | |
12346 | handling for types with super-types. | |
12347 | ||
0eafb3ec BE |
12348 | 2006-03-01 Ben Elliston <bje@au.ibm.com> |
12349 | ||
ec09c26e BE |
12350 | * config.gcc: Add t-dfprules to $tmake_file for powerpc-*-linux* |
12351 | and powerpc64-*-linux* configurations. | |
12352 | * config/t-dfprules: New file. | |
12353 | ||
0eafb3ec BE |
12354 | * mklibgcc.in: Add logic to handle $DFP_ENABLE and $DFP_CFLAGS. |
12355 | Compile dfp-bit.c from the source directory using -DWIDTH and | |
12356 | $DFP_CFLAGS to control the compilation of that file, rather than | |
12357 | generating width-specific versions in the build directory. | |
12358 | * Makefile.in (libgcc.mk): Pass down DFP_ENABLE and DFP_CFLAGS. | |
12359 | (LIBGCC_DEPS): Replace $(D32PBIT) et al with config/dfp-bit.[hc]. | |
12360 | ||
cccb0908 ZW |
12361 | 2006-02-28 Zack Weinberg <zackw@panix.com> |
12362 | ||
12363 | * doc/md.texi: Avoid use of @headitem so that makeinfo <4.7 | |
12364 | continues to work. | |
12365 | ||
31abac07 EC |
12366 | 2006-02-28 Eric Christopher <echristo@apple.com> |
12367 | ||
12368 | * config/rs6000/darwin.h (ENABLE_STACK_EXECUTE): Define. | |
12369 | Set up IN_LIBGCC definition of TARGET_64BIT. | |
12370 | * config/i386/darwin.h (ENABLE_STACK_EXECUTE): Define. | |
12371 | ||
c457fcec RS |
12372 | 2006-02-28 Roger Sayle <roger@eyesopen.com> |
12373 | ||
12374 | PR middle-end/14752 | |
12375 | * c-common.c (c_common_truthvalue_conversion) <MINUS_EXPR, | |
12376 | BIT_XOR_EXPR, BIT_AND_EXPR>: Delete. Let fold optimize these | |
12377 | cases via the construction of "expr != 0". | |
12378 | ||
63292ebf SB |
12379 | 2006-02-28 Steven Bosscher <stevenb.gcc@gmail.com> |
12380 | ||
12381 | * alias.c (alias_invariant, alias_invariant_size): Remove. | |
12382 | (record_base_value): Remove. | |
12383 | (memrefs_conflict_p): Don't look at alias_invariant. | |
12384 | (end_alias_analysis): Don't free it. | |
12385 | * alias.h (record_base_value): Remove prototype. | |
12386 | ||
d3b72690 PB |
12387 | 2006-02-28 Paolo Bonzini <bonzini@gnu.org> |
12388 | Adam Nemet <anemet@caviumnetworks.com> | |
12389 | ||
12390 | * rtl.h (truncated_to_mode): Declare it. | |
12391 | (struct rtl_hooks): Add reg_truncated_to_mode hook. | |
12392 | * rtlhooks-def.h (RTL_HOOKS_REG_TRUNCATED_TO_MODE): New macro. | |
12393 | (RTL_HOOKS_INITIALIZER): Include it. | |
12394 | * rtlhooks.c (reg_truncated_to_mode_general): New function. | |
12395 | * combine.c (RTL_HOOKS_REG_TRUNCATED_TO_MODE): Override to | |
12396 | reg_truncated_to_mode. | |
12397 | * rtlanal.c (truncated_to_mode): Define it. | |
12398 | * simplify-rtx.c (simplify_unary_operation_1): Use it. | |
12399 | ||
ea45681a JL |
12400 | 2006-02-28 Jeff Law <law@redhat.com> |
12401 | ||
e5c7f9f5 JL |
12402 | * tree-chrec.c (chrec_convert_aggressive): Do not eliminate |
12403 | conversions where TYPE_MIN_VALUE/TYPE_MAX_VALUE do not cover | |
12404 | the range allowed by TYPE_PRECISION. | |
12405 | ||
ea45681a JL |
12406 | * tree.h (strct phi_arg_d): Remove unused NONZERO field. |
12407 | ||
7ffe0f0d DN |
12408 | 2006-02-28 Dorit Nuzman <dorit@il.ibm.com> |
12409 | ||
12410 | PR tree-optimization/26419 | |
12411 | * doc/invoke.texi (ftree-vectorizer-verbose): Add information on | |
12412 | values of n. | |
12413 | ||
3fa1b0e5 ZW |
12414 | 2006-02-27 Zack Weinberg <zackw@panix.com> |
12415 | ||
12416 | * doc/md.texi: Fix typo in previous change. | |
12417 | ||
75743f02 KZ |
12418 | 2006-02-27 Kenneth Zadeck <zadeck@naturalbridge.com> |
12419 | ||
12420 | * df.c: Remove. | |
12421 | ||
f38840db ZW |
12422 | 2006-02-27 Zack Weinberg <zackw@panix.com> |
12423 | ||
12424 | * rtl.def (define_constraint, define_register_constraint) | |
12425 | (define_memory_constraint, define_address_constraint): New MD forms. | |
12426 | * gensupport.c (process_rtx): Put define_constraint etc on the | |
12427 | predicate queue. | |
12428 | * genpreds.c (process_define_predicate): Adjust comment. Validate | |
12429 | the name, and call validate_exp to validate the expression. | |
12430 | (mark_mode_tests, write_extract_subexp): Can assume correct input. | |
12431 | (write_predicate_expr): Likewise. NAME argument no longer necessary; | |
12432 | all callers changed. | |
12433 | (validate_exp, needs_variable, struct constraint_data) | |
12434 | (constraints_by_letter_table, first_constraint, last_constraint_ptr) | |
12435 | (FOR_ALL_CONSTRAINTS, generic_constraint_letters, const_int_constraints) | |
12436 | (const_dbl_constraints, constraint_max_namelen) | |
12437 | (have_register_constraints, have_memory_constraints) | |
12438 | (have_address_constraints, have_address_constraints) | |
12439 | (have_extra_constraints, have_const_int_constraints) | |
12440 | (have_const_dbl_constraints, mangle, add_constraint) | |
12441 | (process_define_constraint, process_define_register_constraint) | |
12442 | (write_enum_constraint_num, write_lookup_constraint) | |
12443 | (write_insn_constraint_len, write_regclass_for_constraint) | |
12444 | (write_constraint_satisfied_p, write_insn_const_int_ok_for_constraint) | |
12445 | (write_insn_extra_memory_constraint) | |
12446 | (write_insn_extra_address_constraint) | |
12447 | (write_satisfies_constraint_fns): New. | |
12448 | (write_tm_preds_h): If we have new-style constraint definitions, | |
12449 | prototype the functions generated from them, and define the | |
12450 | old constraint interface (still used by generic code) in terms of | |
12451 | those functions. | |
12452 | (write_insn_preds_c): If we have new-style constraint definitions, | |
12453 | generate all relevant functions from those definitions. | |
12454 | (main): Handle define_constraint etc. | |
12455 | * genoutput.c (struct constraint_data, indep_constraints) | |
12456 | (mdep_constraint_letters, constraints_by_letter_table, note_constraint) | |
12457 | (mdep_constraint_len): New data structures and functions, defined | |
12458 | #ifdef USE_MD_CONSTRAINTS. | |
12459 | (check_constraint_len): Don't define #ifdef USE_MD_CONSTRAINTS. | |
12460 | (validate_insn_alternatives): If USE_MD_CONSTRAINTS is defined, | |
12461 | use new logic to validate operand constraints against constraint | |
12462 | definitions. | |
12463 | (main): Process define_constraint etc. if USE_MD_CONSTRAINTS is | |
12464 | defined. | |
12465 | * defaults.h: If none of the old-style constraint macros are | |
12466 | defined, define USE_MD_CONSTRAINTS; do not provide defaults for any | |
12467 | old-style macros; and poison REG_CLASS_FROM_LETTER, | |
12468 | CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P, and | |
12469 | EXTRA_CONSTRAINT. | |
12470 | * recog.c (reg_fits_class_p): If cl is NO_REGS, return 0 immediately. | |
12471 | * doc/md.texi: Document new constraint-definition mechanism and the | |
12472 | C interface it provides. Remove references to old mechanism | |
e753d130 | 12473 | elsewhere in the document. |
f38840db ZW |
12474 | (Machine Constraints): Use pathnames relative to gcc directory, |
12475 | i.e. config/ARCH/FILE. Change i386 section to refer to | |
12476 | config/i386/predicates.md; update that section to match docstrings. | |
12477 | * doc/tm.texi: Move all documentation of the old constraint- | |
12478 | definition macros to their own section, clearly mark as obsolete. | |
12479 | ||
12480 | * config/i386/predicates.md (R, q, Q, l, a, b, c, d, S, D, A, f, t) | |
12481 | (u, y, x, Y, I, J, K, L, M, N, O, G, C, e, Z): New constraint | |
12482 | definitions. | |
12483 | * config/i386/i386.h (REG_CLASS_FROM_LETTER, CONST_OK_FOR_LETTER_P) | |
12484 | (CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Delete. | |
12485 | * config/i386/i386.md (*movdf_nointeger): Remove stray 'H' from | |
12486 | constraint strings. | |
12487 | (splits and peepholes): Use satisfies_constraint_*. | |
12488 | * config/i386/i386.c (memory_address_length) | |
12489 | (ix86_attr_length_immediate_default): Use satisfies_constraint_*. | |
12490 | ||
e3e868f6 DB |
12491 | 2006-02-27 Daniel Berlin <dberlin@dberlin.org> |
12492 | ||
12493 | * lambda-code.c (can_convert_to_perfect_nest): Allow any type of | |
12494 | scalar operation to be put back into the loop. | |
12495 | ||
754e45a8 JJ |
12496 | 2006-02-27 Jakub Jelinek <jakub@redhat.com> |
12497 | ||
12498 | PR other/26208 | |
12499 | * unwind-dw2.c (struct _Unwind_Context): Add signal_frame field. | |
12500 | (extract_cie_info): Handle S flag in augmentation string. | |
12501 | (execute_cfa_program): If context->signal_frame, execute also | |
12502 | fs->pc == context->ra instructions. | |
12503 | (uw_frame_state_for): If context->signal_frame, don't subtract one | |
12504 | from context->ra to find FDE. | |
12505 | (uw_update_context_1): Set context->signal_frame to | |
12506 | fs->signal_frame. | |
12507 | (_Unwind_GetIPInfo): New function. | |
12508 | * unwind-dw2.h (_Unwind_FrameState): Add signal_frame field. | |
12509 | * unwind-c.c (PERSONALITY_FUNCTION): Use _Unwind_GetIPInfo instead | |
12510 | of _Unwind_GetIP. | |
12511 | * unwind-sjlj.c (_Unwind_GetIPInfo): New function. | |
12512 | * unwind-generic.h (_Unwind_GetIPInfo): New prototype. | |
12513 | * unwind-compat.c (_Unwind_GetIPInfo): New function. | |
12514 | * libgcc-std.ver (_Unwind_GetIPInfo): Export @@GCC_4.2.0. | |
12515 | * config/ia64/unwind-ia64.c (_Unwind_GetIPInfo): New function. | |
12516 | * config/arm/unwind-arm.h (_Unwind_GetIPInfo): Define. | |
12517 | * config/i386/linux-unwind.h (x86_fallback_frame_state, | |
12518 | x86_64_fallback_frame_state): Set fs->signal_frame. | |
12519 | * config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Likewise. | |
12520 | (MD_FROB_UPDATE_CONTEXT): Define unconditionally. | |
12521 | (frob_update_context): Likewise. Workaround missing S flag in | |
12522 | Linux 2.6.12 - 2.6.16 kernel vDSOs. | |
12523 | * config/s390/linux-unwind.h (s390_fallback_frame_state): Likewise. | |
12524 | Remove the psw_addr + 1 hack. | |
12525 | ||
6df11ca1 DB |
12526 | 2006-02-27 Daniel Berlin <dberlin@dberlin.org> |
12527 | ||
12528 | * tree-ssa-structalias.c (get_constraint_for): Move code to deal | |
12529 | with aggregates here. | |
12530 | (find_func_aliases): Remove code for &<aggregate> from here. | |
12531 | ||
5881ad5d RS |
12532 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
12533 | ||
e8366202 | 12534 | * fold-const.c (fold_binary) <EQ_EXPR>: Fold (~X & C) eq/ne 0 as |
5881ad5d RS |
12535 | (X & C) ne/eq 0, where C is a single bit, i.e. a power of two. |
12536 | Fold both "((X & C) ^ C) eq/ne 0" and "((X ^ C) & C) eq/ne 0" | |
12537 | as (X & C) ne/eq 0. | |
12538 | ||
53f1b560 RS |
12539 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
12540 | ||
12541 | PR middle-end/19983 | |
12542 | * real.c (real_nan): Allow both 0x and 0X as hexadecimal prefixes. | |
12543 | ||
efa1cdf0 ZD |
12544 | 2006-02-26 Zdenek Dvorak <dvorakz@suse.cz> |
12545 | ||
12546 | * opts.c (decode_options): Do not handle flag_strength_reduce. | |
12547 | (common_handle_option): Handle OPT_floop_optimize, OPT_frerun_loop_opt | |
12548 | and OPT_fstrength_reduce. | |
12549 | * tree-ssa-loop.c (tree_ssa_loop_prefetch): Only test | |
12550 | flag_prefetch_loop_arrays for being nonzero. | |
12551 | * common.opt (floop-optimize, frerun-loop-opt): Resurrected as | |
12552 | no-ops. | |
12553 | (fprefetch-loop-arrays-rtl): Removed. | |
12554 | (flag_prefetch_loop_arrays): Do not specify the value. | |
12555 | ||
12556 | * doc/passes.texi: Update documentation of loop optimizer | |
12557 | passes. | |
12558 | * doc/invoke.texi (-fstrength-reduce, -fprefetch-loop-arrays-rtl, | |
12559 | -frerun-loop-opt): Remove. | |
12560 | ||
651402f1 RG |
12561 | 2006-02-26 Richard Guenther <rguenther@suse.de> |
12562 | ||
12563 | PR tree-optimization/26421 | |
12564 | * tree-ssa-alias.c (find_used_portions): Don't treat parameters | |
12565 | in function calls that are ADDR_EXPRs as using the whole structure. | |
12566 | ||
37818e7c SB |
12567 | 2006-02-26 Steven Bosscher <stevenb.gcc@gmail.com> |
12568 | ||
12569 | * common.opt (-floop-optimize, -frerun-loop-opt): Remove. | |
12570 | * tree-pass.h (pass_loop_optimize): Remove. | |
12571 | * passes.c (pass_loop_optimize): Never run it. | |
12572 | * toplev.c (backend_init): Don't call init_loop. | |
12573 | * opts.c (flag_loop_optimize_set): Remove. | |
12574 | (decode_options): Never set flag_loop_optimize or flag_rerun_loop_opt. | |
12575 | (common_handle_option) <OPT_floop_optimize>: Remove. Don't disable | |
12576 | the old RTL loop optimizer when profiling enabled. | |
12577 | * predict.c (tree_estimate_probability): Always strip builtin_expect. | |
12578 | * cfgcleanup.c (try_forward_edges): Don't avoid killing loop | |
12579 | pre-headers for the sake of the old RTL loop optimizer. | |
12580 | * Makefile.in: Remove all references to loop.o. | |
12581 | ||
12582 | * doc/invoke.texi: Remove all references to -floop-optimize | |
12583 | and -frerun-loop-opt. | |
12584 | ||
74fe790b ZW |
12585 | 2006-02-26 Zack Weinberg <zackw@panix.com> |
12586 | ||
12587 | * doc/md.texi (Machine Constraints): Refer to all files with paths | |
12588 | relative to gcc directory (i.e. config/CPU/file). Add missing | |
12589 | @table @code ... @end table to M32C subsection. | |
12590 | ||
cef65eaa RS |
12591 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
12592 | ||
12593 | * fold-const.c (fold_binary) <BIT_XOR_EXPR>: Fold (X & 1) ^ 1 as | |
12594 | (X & 1) == 0. | |
12595 | <BIT_AND_EXPR>: Fold (X ^ 1) & 1 and ~X & 1 as (X & 1) == 0. | |
12596 | ||
a861485c RS |
12597 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
12598 | James A. Morrison <phython@gcc.gnu.org> | |
12599 | ||
12600 | PR middle-end/21137 | |
e8366202 | 12601 | * fold-const.c (fold_binary) <EQ_EXPR>: Fold ((X>>C1)&C2) eq/ne 0, |
a861485c RS |
12602 | when C2 is a power of two, as either (X&(C2<<C1)) eq/ne 0 if the |
12603 | new constant C2<<C1, or as (X<0) or (X,false) depending upon the | |
12604 | signedness of the shift operation. | |
12605 | ||
afa38a95 DN |
12606 | 2006-02-26 Dorit Nuzman <dorit@il.ibm.com> |
12607 | ||
12608 | PR tree-optimization/26359 | |
12609 | * tree-ssa-alias.c (new_type_alias): Set fields for new tag. | |
12610 | ||
5484a3c3 RS |
12611 | 2006-02-25 Roger Sayle <roger@eyesopen.com> |
12612 | ||
e8366202 | 12613 | * simplify-rtx.c (simplify_relational_operation_1): Simplify |
5484a3c3 RS |
12614 | (X^Y) == 0 as X == Y and (X^Y) != 0 as X != Y. Simplify (X^Y) == Y |
12615 | as X == 0, and some symmetry related transformations. | |
12616 | Simplify (X^C1) == C2 as X == (C1^C2). Split long comment line. | |
12617 | ||
eb8dffe0 RS |
12618 | 2006-02-25 Roger Sayle <roger@eyesopen.com> |
12619 | ||
12620 | PR middle-end/23673 | |
e8366202 | 12621 | * fold-const.c (fold_binary) <EQ_EXPR>: Fold (X^Y) == 0 as X == Y |
eb8dffe0 RS |
12622 | and (X^Y) != 0 as X != Y. Fold (X^Y) == Y as X == 0, and some |
12623 | symmetry related transformations. Fold (X^C1) == C2 as | |
12624 | X == (C1^C2). | |
12625 | ||
332cf1b3 JW |
12626 | 2006-02-25 Juergen Weigert <jw@suse.de> |
12627 | Richard Guenther <rguenther@suse.de> | |
12628 | ||
12629 | * scan-decls.c (scan_decls): Don't fetch new statement after CPP_EOF. | |
12630 | ||
a4876725 AN |
12631 | 2006-02-24 Adam Nemet <anemet@caviumnetworks.com> |
12632 | ||
12633 | * combine.c (gen_lowpart_or_truncate): Call | |
12634 | simplify_gen_unary(TRUNCATE, ...) instead of gen_rtx_TRUNCATE. | |
12635 | ||
8d669cbd DN |
12636 | 2006-02-24 Diego Novillo <dnovillo@redhat.com> |
12637 | ||
12638 | * doc/invoke.texi: Move -fopenmp description to "Options for | |
12639 | Code Generation". | |
12640 | Remove reference to -lgomp. | |
12641 | ||
f44a5ab6 DE |
12642 | 2006-02-24 David Edelsohn <edelsohn@gnu.org> |
12643 | ||
12644 | * doc/install.texi: Require GNU tar version 1.14. | |
12645 | ||
c7b5e395 GK |
12646 | 2006-02-24 Geoffrey Keating <geoffk@apple.com> |
12647 | ||
12648 | * doc/tm.texi (Run-time Target): Document C_COMMON_OVERRIDE_OPTIONS. | |
74fe790b | 12649 | * doc/invoke.texi (C++ Dialect Options): Document |
c7b5e395 GK |
12650 | -fno-use-cxa-get-exception-ptr. |
12651 | * configure.ac: Define DEFAULT_USE_CXA_ATEXIT to 2 not 1. | |
12652 | * configure: Regenerate. | |
12653 | * c.opt (fuse-cxa-get-exception-ptr): New. | |
12654 | * c-opts.c (c_common_handle_option): Handle | |
12655 | OPT_fuse_cxa_get_exception_ptr. | |
12656 | * c-common.c (flag_use_cxa_atexit): Update documentation. | |
12657 | (flag_use_cxa_get_exception_ptr): New. | |
12658 | * c-common.h (flag_use_cxa_get_exception_ptr): New. | |
12659 | * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Improve | |
12660 | documentation. | |
12661 | (C_COMMON_OVERRIDE_OPTIONS): New. | |
12662 | ||
676cb929 RS |
12663 | 2006-02-24 Roger Sayle <roger@eyesopen.com> |
12664 | ||
12665 | PR middle-end/24952 | |
12666 | * combine.c (try_combine): Explicitly check whether GET_CODE is | |
12667 | a SET or a CLOBBER, instead on checking that it isn't a USE. | |
12668 | ||
e26ec0bb RS |
12669 | 2006-02-24 Roger Sayle <roger@eyesopen.com> |
12670 | ||
12671 | * fold-const.c (fold_comparison): New subroutine of fold_binary | |
12672 | containing transformations common to both the equality and | |
12673 | ordering relational operators, factored out of fold_binary. | |
12674 | (fold_binary): Separate out the equality operators (EQ_EXPR | |
12675 | and NE_EXPR) from the ordering operators (LT_EXPR, GT_EXPR, | |
12676 | LE_EXPR and GE_EXPR), calling fold_comparison to perform the | |
12677 | transformations common to both. | |
74fe790b | 12678 | (fold_div_compare): Fix latent bugs in the previously unreachable |
e26ec0bb RS |
12679 | LT_EXPR and GE_EXPR cases. |
12680 | ||
69ca3549 DE |
12681 | 2006-02-24 David Edelsohn <edelsohn@gnu.org> |
12682 | ||
12683 | * config/rs6000/rs6000.c (rs6000_init_builtins): Change | |
12684 | decl libname for clog to __clog on AIX. | |
12685 | ||
12686 | * config/rs6000/xcoff.h (MAX_OFILE_ALIGNMENT): Define. | |
12687 | ||
8097c268 AM |
12688 | 2006-02-24 Alan Modra <amodra@bigpond.net.au> |
12689 | ||
12690 | PR target/26453 | |
12691 | * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't | |
12692 | output traceback table for thunks. Localise rs6000_stack_info call. | |
12693 | ||
efbbbb61 RS |
12694 | 2006-02-23 Roger Sayle <roger@eyesopen.com> |
12695 | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
12696 | ||
12697 | * gthr-posix.h (__gthrw): Fix typo in comment. | |
12698 | ||
12699 | 2006-02-23 Geoffrey Keating <geoffk@apple.com> | |
c1e12409 GK |
12700 | |
12701 | * doc/cpp.texi (Character sets): Document that we do support | |
12702 | input files to be in any character set. | |
12703 | ||
e260a614 JL |
12704 | 2006-02-23 Jeff Law <law@redhat.com> |
12705 | ||
357e7a82 JL |
12706 | * tree.h (PHI_ARG_NONZERO): Remove. |
12707 | * tree-phinodes.c (add_phi_arg): No longer initialize PHI_ARG_NONZERO. | |
12708 | (remove_phi_arg_num): No longer copy PHI_ARG_NONZERO from the old | |
12709 | node to the new node. | |
12710 | ||
e260a614 JL |
12711 | PR tree-optimization/26425 |
12712 | * tree-vrp.c (vrp_visit_assignment): If the LHS's type has a NULL | |
12713 | min/max, then assume its varying. | |
12714 | ||
e755fcf5 ZD |
12715 | 2006-02-23 Zdenek Dvorak <dvorakz@suse.cz> |
12716 | ||
12717 | PR rtl-optimization/26316 | |
12718 | * rtlanal.c (enum may_trap_p_flags): New. | |
12719 | (may_trap_p_1): Take flags instead of unaligned_mems argument. Ignore | |
12720 | MEM_NOTRAP_P if flags & MTP_AFTER_MOVE. | |
12721 | (may_trap_p, may_trap_or_fault_p): Pass flags to may_trap_p_1. | |
12722 | (may_trap_after_code_motion_p): New function. | |
12723 | * loop-invariant.c (find_identical_invariants): Fix dump formating. | |
12724 | (find_invariant_insn): Use may_trap_after_code_motion_p. | |
12725 | * rtl.h (may_trap_after_code_motion_p): Declare. | |
12726 | ||
65acccdd ZD |
12727 | 2006-02-23 Zdenek Dvorak <dvorakz@suse.cz> |
12728 | ||
12729 | * emit-rtl.c (immed_double_const): Cleanup. | |
12730 | ||
4b0e7346 | 12731 | 2006-02-23 Daniel Berlin <dberlin@dberlin.org> |
74fe790b | 12732 | |
4b0e7346 | 12733 | Fix PR tree-optimization/26376 |
e8366202 | 12734 | * tree-ssa-structalias.c (find_func_aliases): Use get_id_for_tree, |
4b0e7346 DB |
12735 | remove assert. |
12736 | ||
a5c8d67f JJ |
12737 | 2006-02-23 Jakub Jelinek <jakub@redhat.com> |
12738 | ||
12739 | PR middle-end/26412 | |
12740 | * gimplify.c (omp_add_variable): Guard variable size decl test with | |
12741 | DECL_SIZE (decl) check. | |
12742 | ||
98b2060a RG |
12743 | 2006-02-23 Richard Guenther <rguenther@suse.de> |
12744 | ||
12745 | PR middle-end/26439 | |
12746 | * tree-ssa-structalias.c (find_func_aliases): Handle complex types | |
12747 | like aggregate types. | |
12748 | ||
ed965309 JJ |
12749 | 2006-02-23 Jakub Jelinek <jakub@redhat.com> |
12750 | ||
12751 | * configure.ac: Add --with{,out}-long-double-128 configure option. | |
12752 | (TARGET_DEFAULT_LONG_DOUBLE_128): New test. | |
12753 | * configure: Rebuilt. | |
12754 | * config.in: Rebuilt. | |
12755 | * doc/install.texi (Options specification): Document | |
12756 | --with-long-double-128. | |
12757 | ||
12758 | * config/rs6000/linux.h [TARGET_DEFAULT_LONG_DOUBLE_128] | |
12759 | (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128. | |
12760 | * config/rs6000/linux64.h [TARGET_DEFAULT_LONG_DOUBLE_128] | |
12761 | (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128. | |
12762 | ||
12763 | 2006-02-23 Aldy Hernandez <aldyh@redhat.com> | |
12764 | ||
12765 | * config/s390/s390.c (override_options): Handle | |
12766 | TARGET_DEFAULT_LONG_DOUBLE_128. | |
12767 | ||
12768 | * config/alpha/alpha.c (override_options): Handle | |
12769 | TARGET_DEFAULT_LONG_DOUBLE_128. | |
12770 | ||
12771 | * config/sparc/sparc.c (sparc_override_options): Handle | |
12772 | TARGET_DEFAULT_LONG_DOUBLE_128. | |
12773 | ||
9fb03bd8 DJ |
12774 | 2006-02-22 Daniel Jacobowitz <dan@codesourcery.com> |
12775 | ||
12776 | * Makefile.in (stmp-fixinc): Use real-$(INSTALL_HEADERS_DIR). | |
12777 | (real-install-headers-tar, real-install-headers-cpio) | |
12778 | (real-install-headers-cp): New targets. | |
12779 | ||
e8dad6f0 RS |
12780 | 2006-02-22 Richard Sandiford <richard@codesourcery.com> |
12781 | ||
12782 | * tree.h (variable_section): Delete. | |
12783 | * varasm.c (variable_section): Delete. | |
12784 | ||
d7f755c3 PB |
12785 | 2006-02-22 Paolo Bonzini <bonzini@gnu.org> |
12786 | ||
12787 | * install.texi: Add notes on install.texi2html. | |
12788 | (Building in parallel): Do not use footnotes. | |
12789 | ||
4fe7a8bc AH |
12790 | 2006-02-21 Aldy Hernandez <aldyh@redhat.com> |
12791 | ||
12792 | PR libgomp/26234 | |
12793 | * doc/install.texi (Configuration): Document --disable-libgomp. | |
12794 | ||
6070e8e5 GK |
12795 | 2006-02-21 Geoffrey Keating <geoffk@apple.com> |
12796 | ||
12797 | * config/i386/darwin.h (DWARF2_FRAME_REG_OUT): New. | |
12798 | ||
f8770111 AO |
12799 | 2006-02-21 Alexandre Oliva <aoliva@redhat.com> |
12800 | ||
12801 | * config/i386/sse.md (vec_extractv2df_1_sse): New. | |
12802 | (vec_extractv2df_0_sse): New. | |
12803 | ||
35d177a2 AO |
12804 | 2006-02-21 Alexandre Oliva <aoliva@redhat.com> |
12805 | ||
12806 | * defaults.h (CFA_FRAME_BASE_OFFSET): Define. | |
12807 | * config/ia64/ia64.h (CFA_FRAME_BASE_OFFSET): Override. | |
12808 | * doc/tm.texi (CFA_FRAME_BASE_OFFSET): Document. | |
12809 | * dwarf2out.c (build_cfa_loc): New offset parameter. Add it | |
12810 | to the result of the expression. | |
12811 | (def_cfa_1): Adjust. | |
12812 | (frame_pointer_cfa_offset): Rename to... | |
12813 | (frame_pointer_fb_offset): ... this. Adjust all uses. | |
12814 | (convert_cfa_to_loc_list): Rename to... | |
12815 | (convert_cfa_to_fb_loc_list): ... this. New offset parameter. | |
12816 | Pass it on to build_cfa_loc. | |
12817 | (compute_frame_pointer_to_cfa_displacement): Rename to... | |
12818 | (compute_frame_pointer_to_fb_displacement): ... this. New | |
12819 | offset parameter. Use it in computation. | |
12820 | (gen_subprogram_die): Compute cfa_fb_offset with the new | |
12821 | macro, and use it to compute the fb loc list and the | |
12822 | displacement. | |
12823 | ||
4729dc92 BS |
12824 | 2006-02-21 Bernd Schmidt <bernd.schmidt@analog.com> |
12825 | ||
12826 | * config/bfin/predicates.md (cc_operand): Delete predicate. All uses | |
12827 | replaced with register_operand. | |
12828 | * config/bfin/bfin.c (bfin_register_move_cost): Moving CC to any | |
12829 | non-DREG is expensive. | |
12830 | * config/bfin/bfin.h (FIXED_REGISTERS): CC isn't fixed. | |
12831 | * config/bfin/bfin.md (movbi): Fix constraints and template for moves | |
12832 | involving memory. | |
12833 | ||
520bc8a2 JM |
12834 | 2006-02-21 Joseph S. Myers <joseph@codesourcery.com> |
12835 | ||
12836 | * doc/install.texi2html: Use set -e. | |
12837 | ||
f5e605e5 RS |
12838 | 2006-02-21 Richard Sandiford <richard@codesourcery.com> |
12839 | ||
12840 | * doc/tm.texi (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS) | |
12841 | (ASM_OUTPUT_SHARED_LOCAL): Delete. | |
12842 | * doc/invoke.texi (-fshared-data): Delete. | |
12843 | * common.opt (fshared-data): Delete. | |
12844 | * varasm.c (asm_emit_uninitialised): Remove flag_shared_data handling. | |
12845 | (assemble_static_space): Remove #if 0 code. | |
12846 | * system.h (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS) | |
12847 | (ASM_OUTPUT_SHARED_LOCAL): Poison. | |
12848 | * config/cris/cris.h: Remove FIXME. | |
12849 | ||
880b9e7b PB |
12850 | 2006-02-21 Paolo Bonzini <bonzini@gnu.org> |
12851 | ||
12852 | * doc/sourcebuild.texi (Front End Directory): No more double-colon | |
12853 | hooks. | |
12854 | ||
5a9e432d JJ |
12855 | 2006-02-21 Jakub Jelinek <jakub@redhat.com> |
12856 | ||
12857 | PR middle-end/26379 | |
12858 | * combine.c (simplify_shift_const_1): Disable nested shifts | |
12859 | optimization for vector shifts. | |
12860 | ||
c1a70a3c RS |
12861 | 2006-02-20 Roger Sayle <roger@eyesopen.com> |
12862 | ||
12863 | PR tree-optimization/26361 | |
12864 | * tree-vrp.c (extract_range_from_unary_expr): Handle NEGATE_EXPR | |
12865 | of unsigned integer types. | |
12866 | ||
0ff4040e SP |
12867 | 2006-02-20 Sebastian Pop <pop@cri.ensmp.fr> |
12868 | ||
12869 | * tree-chrec.c (eq_evolutions_p): New. | |
12870 | * tree-chrec.h (eq_evolutions_p): Declared. | |
12871 | * tree-data-ref.c: Fix formatting. | |
12872 | (datadep_stats, dependence_stats): New. | |
12873 | (gcd): Moved... | |
12874 | (print_direction_vector): New. | |
12875 | (dump_data_dependence_relation): Use print_direction_vector. | |
12876 | (object_analysis, create_data_ref): Handle COMPONENT_REF. | |
12877 | (compute_subscript_distance): Static. | |
12878 | (initialize_data_dependence_relation): Static. Get the number | |
12879 | of loops surrounding the references from the callers, and initialize | |
12880 | DDR_SIZE_VECT to nb_loops. Use both base_addr_differ_p and | |
12881 | base_object_differ_p analyzers. | |
74fe790b | 12882 | (analyze_ziv_subscript, analyze_siv_subscript_cst_affine, |
0ff4040e SP |
12883 | compute_overlap_steps_for_affine_1_2, |
12884 | analyze_subscript_affine_affine): Count the classified dependences. | |
12885 | Print a message when a test failed. | |
74fe790b | 12886 | (can_use_analyze_subscript_affine_affine): New. |
0ff4040e SP |
12887 | (analyze_siv_subscript): Compute the data dependences on symbolic |
12888 | scevs that verify can_use_analyze_subscript_affine_affine. | |
12889 | (chrec_steps_divide_constant_p): Returns true, false, or unknown. | |
12890 | (analyze_miv_subscript): Update use of chrec_steps_divide_constant_p. | |
12891 | Handle symbolic scevs. | |
12892 | (analyze_overlapping_iterations): Let symbolic affine scevs to be | |
12893 | analyzed. | |
12894 | (subscript_dependence_tester): Moved... | |
74fe790b | 12895 | (build_classic_dist_vector, build_classic_dir_vector): Don't use |
0ff4040e SP |
12896 | lambda_vector_clear on newly allocated vectors. Get nb_loops from |
12897 | DDR_SIZE_VECT instead of getting it in parameter. | |
74fe790b | 12898 | (subscript_dependence_tester): ... here. Take as a parameter |
0ff4040e SP |
12899 | loop_nest_depth. Call build_classic_dist_vector and |
12900 | build_classic_dir_vector. | |
74fe790b ZW |
12901 | (compute_affine_dependence): Update subscript_dependence_tester |
12902 | parameters. Update datadep_stats counters. Call | |
0ff4040e | 12903 | compute_subscript_distance. |
74fe790b | 12904 | (compute_self_dependence): Save the dist and dir vectors. Call |
0ff4040e SP |
12905 | compute_subscript_distance. |
12906 | (ddr_p, DEF_VEC_P(ddr_p), DEF_VEC_ALLOC_P(ddr_p,heap)): Moved... | |
12907 | (compute_all_dependences): Reorder parameters as they were before | |
12908 | conversion to VEC. Pass nb_loops and loop_nest_depth. Don't call | |
74fe790b | 12909 | compute_subscript_distance. Update the use of |
0ff4040e SP |
12910 | compute_affine_dependence and initialize_data_dependence_relation. |
12911 | (find_data_references_in_loop): Handle COMPONENT_REF. | |
12912 | (compute_data_dependences_for_loop): Initialize dependence_stats. | |
12913 | Don't call build_classic_dist_vector and build_classic_dir_vector. | |
74fe790b | 12914 | Update the parameters of initialize_data_dependence_relation and |
0ff4040e SP |
12915 | compute_all_dependences. Print the statistics from datadep_stats. |
12916 | (analyze_all_data_dependences): Static. Not used until the pass for | |
12917 | checking the data dependences is contributed. | |
12918 | * tree-data-ref.h (ddr_p, DEF_VEC_P(ddr_p), | |
12919 | DEF_VEC_ALLOC_P(ddr_p,heap)): ... here. | |
74fe790b | 12920 | (initialize_data_dependence_relation, compute_affine_dependence, |
0ff4040e SP |
12921 | analyze_all_data_dependences, compute_subscript_distance): Removed. |
12922 | (print_direction_vector): New. | |
12923 | * lambda.h (gcd): ... here. | |
12924 | (lambda_vector_gcd): Moved here from gcd_vector. | |
12925 | * lambda-code.c (gcd, gcd_vector): Removed. | |
12926 | (lambda_compute_target_space): Use lambda_vector_gcd. Fix formatting. | |
12927 | * Makefile.in (tree-vect-patterns.o): Depends on TREE_DATA_REF_H. | |
12928 | ||
643519b7 DN |
12929 | 2006-02-20 Diego Novillo <dnovillo@redhat.com> |
12930 | ||
12931 | * ipa-type-escape.c: Tidy some comments and white space. | |
12932 | * tree-ssa-operands.c: Likewise. | |
12933 | ||
406f9d5e AP |
12934 | 2006-02-20 Andrew Pinski <pinskia@physics.uc.edu> |
12935 | ||
12936 | PR tree-opt/25879 | |
12937 | * tree-pretty-print.c (debug_tree_chain): Walk the chains. | |
12938 | (dump_decl_name): Do not walk the decl tree chains. | |
12939 | * tree-pass.h (TDF_CHAIN): Remove. | |
12940 | ||
12941 |