]>
Commit | Line | Data |
---|---|---|
413803d3 VR |
1 | 2006-08-01 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
2 | ||
3 | PR c++/28250 | |
4 | PR c++/28257 | |
5 | PR c++/28259 | |
6 | PR c++/28267 | |
7 | * toplev.c (compile_file): Return early on errorcount or sorrycount. | |
8 | * cgraphunit.c (cgraph_finalize_compilation_unit): Likewise. | |
9 | (cgraph_optimize): Likewise. | |
10 | ||
4fbbe694 SH |
11 | 2006-08-01 Stuart Hastings <stuart@apple.com> |
12 | ||
13 | * rtl.h (UINTVAL) New. | |
14 | * config/rs6000/rs6000.c (SMALL_INT) Use it. | |
15 | * testsuite/gcc.dg/20060801-1.c: New. | |
16 | ||
6193b8b7 DJ |
17 | 2006-08-01 Daniel Jacobowitz <dan@codesourcery.com> |
18 | ||
19 | PR debug/23336 | |
20 | * c-typeck.c (build_external_type): Mark used enum types. | |
21 | * dwarf2out.c (dwarf2out_abstract_function): Save and restore | |
22 | cfun also. | |
23 | (gen_subprogram_die): Whitespace fix. | |
24 | ||
9824b886 JH |
25 | 2006-08-01 Jan Hubicka <jh@suse.cz> |
26 | ||
27 | * tree-outof-ssa.c (check_replaceable): Do not allocate def_vars | |
28 | bitmap when not needed. | |
29 | * tree-ssa-pre.c (bitmap_set_and, bitmap_set_and_compl): Free temporary | |
30 | bitmaps. | |
31 | ||
53743367 DM |
32 | 2006-08-01 Dirk Mueller <dmueller@suse.de> |
33 | ||
34 | * tree-vrp.c (fix_equivalence_set): Avoid bitmap memory leak. | |
35 | ||
73e9d512 VR |
36 | 2006-07-31 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
37 | ||
38 | * Makefile.in: Revert part of previous patch: | |
39 | Replace $(VARRAY_H) by varray.h in definition of BASIC_BLOCK_H | |
40 | and REGS_H. | |
41 | ||
1ccbef77 EC |
42 | 2006-07-30 Eric Christopher <echristo@apple.com> |
43 | ||
44 | PR target/27543 | |
45 | * doc/extend.texi (i386 Variable Attributes): Add anchor. | |
46 | (PowerPC Variable Attributes): New section. | |
47 | ||
56ee081b AN |
48 | 2006-07-30 Atsushi Nemoto <anemo@mba.ocn.ne.jp> |
49 | ||
50 | PR target/28126 (partial fix) | |
51 | * config/mips/mips.md (tls_get_tp_<mode>): Set can_delay to no. | |
52 | ||
370adb7b JH |
53 | 2006-07-28 Jan Hubicka <jh@suse.cz> |
54 | ||
55 | PR rtl-optimization/28071 | |
56 | * cfgrtl.c (rtl_delete_block): Free regsets. | |
57 | * flow.c (allocate_bb_life_data): Re-use regsets if available. | |
58 | ||
48779194 VR |
59 | 2006-07-28 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
60 | ||
61 | * Makefile.in: Use $(HEADER_H) instead of header.h in dependencies | |
62 | and variables used in dependencies. | |
63 | ||
fa6adcab AV |
64 | 2006-07-27 Arjan van de Ven <arjan@linux.intel.com> |
65 | ||
66 | * config/i386/i386.md (stack_tls_protect_set_di) Use %gs rather than | |
67 | %fs for -mcmodel=kernel. | |
68 | (stack_tls_protect_test_di): Likewise. | |
69 | ||
ab7efd91 CD |
70 | 2006-07-27 Carlos O'Donell <carlos@codesourcery.com> |
71 | ||
72 | * Makefile.in: Use mkinstalldirs. | |
73 | ||
faa88843 L |
74 | 2006-07-27 H.J. Lu <hongjiu.lu@intel.com> |
75 | ||
76 | PR driver/28437 | |
77 | * opts-common.c (prune_options): Skip joined switches. | |
78 | ||
96d0cc81 JH |
79 | 2006-07-27 Jan Hubicka <jh@suse.cz> |
80 | ||
81 | PR rtl-optimization/28071 | |
82 | * cselib.c (cselib_process_insn): Don't remove useless values too | |
83 | often for very large hashtables. | |
84 | ||
69bfd3c9 JH |
85 | 2006-07-27 Jan Hubicka <jh@suse.cz> |
86 | ||
87 | PR rtl-optimization/28071 | |
88 | * global.c (greg_obstack): New obstack. | |
89 | (allocate_bb_info): Use it. | |
90 | (free_bb_info): Likewise. | |
91 | (modify_reg_pav): Likewise. | |
92 | ||
482c6ce8 RS |
93 | 2006-07-27 Roger Sayle <roger@eyesopen.com> |
94 | ||
95 | * builtins.c (fold_fixed_mathfn): When long and long long are the | |
96 | same size, canonicalize llceil*, llfloor*, llround* and llrint* | |
97 | functions to their lceil*, lfloor*, lround* and lrint* forms. | |
98 | ||
721cedf2 KI |
99 | 2006-07-27 Kazuhiro Inaoka <inaoka.kazuhiro@renesas.com> |
100 | ||
101 | PR gcc/28508 | |
102 | * config/m32r/m32r.md (branch_insn): Reduce pc range for short | |
103 | branch. | |
104 | (rev_branch_insn): Likewise. | |
105 | ||
65d169d9 JH |
106 | 2006-07-27 Jan Hubicka <jh@suse.cz> |
107 | ||
108 | PR rtl-optimization/28071 | |
109 | * regmove.c (reg_is_remote_constant_p): Avoid quadratic behaviour. | |
110 | (reg_set_in_bb, max_reg_computed): New static variables. | |
111 | (regmove_optimize): Free the new array. | |
112 | (fixup_match_1): Update call of reg_is_remote_constant_p. | |
113 | ||
96fc428c JH |
114 | 2006-07-26 Jan Hubicka <jh@suse.cz> |
115 | ||
116 | PR tree-optimization/27882 | |
117 | * cgraph.c (cgraph_remove_node): Clear needed, reachable, next, previous | |
118 | and decl fields. | |
119 | * cgraphunit.c (cgraph_reset_node): Expect cgraph_remove_node to kill | |
120 | next pointer | |
121 | (cgraph_analyze_compilation_unit): Likewise. | |
122 | * ipa.c (cgraph_remove_unreachable_nodes): Likewise. | |
123 | * ipa-inline.c (cgraph_decide_recursive_inlining): Likewise. | |
124 | (cgraph_early_inlinine): Make order garbage collected. | |
125 | * Makefile.in (gt-ipa-inline): New garbagecollected file. | |
126 | ||
88c4be5e DJ |
127 | 2006-07-26 Daniel Jacobowitz <dan@codesourcery.com> |
128 | ||
129 | * dbxout.c (output_types_sort): Add a comment. | |
130 | (output_used_types): Free the VEC. | |
131 | ||
51b7d006 DJ |
132 | 2006-07-26 Daniel Jacobowitz <dan@codesourcery.com> |
133 | ||
134 | * function.c (reorder_fix_fragments): Delete. | |
135 | (reorder_blocks): Don't call it. | |
136 | (reorder_blocks_1): Put all subblocks under the origin block. | |
137 | ||
e69e3d0e ZD |
138 | 2006-07-26 Zdenek Dvorak <dvorakz@suse.cz> |
139 | ||
140 | PR rtl-optimization/27907 | |
141 | * expr.c (force_operand): Use convert_move to handle FLOAT_EXTEND and | |
142 | FLOAT_TRUNCATE. | |
143 | ||
738764ef RS |
144 | 2006-07-25 Roger Sayle <roger@eyesopen.com> |
145 | ||
146 | PR middle-end/28473 | |
147 | * convert.c (convert_to_integer): When transforming (T)foo(x) into | |
148 | bar(x) check that bar's result type can represent all the values of T. | |
149 | ||
cdc30c45 ZD |
150 | 2006-07-25 Zdenek Dvorak <dvorakz@suse.cz> |
151 | ||
152 | * tree-chrec.c (chrec_convert_aggressive): Return NULL on failure. | |
153 | ||
6583cf15 NC |
154 | 2006-07-25 Nick Clifton <nickc@redhat.com> |
155 | ||
156 | * ggc-page.c (NUM_SIZE_LOOKUP): New constant - the length of the | |
157 | size_lookup[] array. | |
158 | (ggc_alloc_stat): Use NUM_SIZE_LOOKUP. | |
159 | (ggc_pch_count_object): Likewise. | |
160 | (ggc_pch_alloc_object): Likewise. | |
161 | (ggc_pch_write_object): Likewise. | |
162 | (init_ggc): Do not attempt to initialize entries in the | |
163 | size_lookup[] array for objects whose size is greater than than | |
164 | the length of the array. | |
165 | ||
2daec0f0 DJ |
166 | 2006-07-25 Daniel Jacobowitz <dan@codesourcery.com> |
167 | ||
168 | * dbxout.c (output_used_types_helper): Push queued types | |
169 | on a VEC. | |
170 | (output_types_sort): New. | |
171 | (output_used_types): Collect used types on a VEC and sort them | |
172 | before emission. | |
173 | ||
63c2d00c RG |
174 | 2006-07-24 Richard Guenther <rguenther@suse.de> |
175 | ||
176 | PR middle-end/28463 | |
177 | * cgraph.c (cgraph_remove_node): Do not check if dumps | |
178 | are enabled. | |
179 | * cgraphunit.c (cgraph_optimize): Likewise. | |
180 | ||
597ae074 JH |
181 | 2006-07-24 Jan Hubicka <jh@suse.cz> |
182 | ||
183 | PR rtl-optimization/28071 | |
184 | * tree-cfg.c (tree_split_block): Do not allocate new stmt_list nodes. | |
185 | * tree-iterator.c (tsi_split_statement_list_before): Do not crash when | |
186 | splitting before first stmt. | |
187 | ||
f10d1a74 JH |
188 | 2006-07-24 Jan Hubicka <jh@suse.cz> |
189 | ||
190 | PR rtl-optimization/28071 | |
191 | * ipa-inline.c (update_caller_keys): Remove edges that | |
192 | are no longer inline candidates. | |
193 | ||
f629051e DJ |
194 | 2006-07-23 Daniel Jacobowitz <dan@codesourcery.com> |
195 | ||
196 | PR debug/27473 | |
197 | * dbxout.c (output_used_types_helper, output_used_types): New. | |
198 | (dbxout_symbol): Call output_used_types. | |
199 | ||
386b46cf JH |
200 | 2006-07-23 Jan Hubicka <jh@suse.cz> |
201 | ||
202 | PR c/25795 | |
203 | PR c++/27369 | |
204 | * cgraph.c (cgraph_varpool_nodes): Export. | |
205 | (decide_is_variable_needed): Ignored "used" attribute in | |
206 | unit-at-a-time mode. | |
207 | * cgraph.h (cgraph_varpool_nodes): Declare. | |
208 | * cgraphunit.c (decide_is_function_needed): Ignored "used" attribute in | |
209 | unit-at-a-time mode. | |
210 | ||
74e55d0f RS |
211 | 2006-07-23 Roger Sayle <roger@eyesopen.com> |
212 | ||
213 | PR target/28247 | |
214 | * gthr-solaris.h: Prototype __gthrw forms of thr_self, mutex_init and | |
215 | mutex_destroy even when !_LIBOOBJC. Remove duplicate prototype of | |
216 | the __gthrw form of thr_keycreate. | |
217 | (__gthread_key_delete): Silence the unused argument warning. | |
218 | ||
d88259d1 SB |
219 | 2006-07-23 Steven Bosscher <steven@gcc.gnu.org> |
220 | ||
221 | PR debug/25468 | |
222 | * config/elfos.h (ASM_OUTPUT_ASCII): Remove 'register' marks. | |
223 | Cache the last found '\0' marker to avoid quadratic behavior. | |
224 | ||
3dcdd4e4 JH |
225 | 2006-07-23 Jan Hubicka <jh@suse.cz> |
226 | ||
227 | * i386.md (subsi_3_zext): Fix output template. | |
228 | ||
dfb84d62 MS |
229 | 2006-07-21 Mike Stump <mrs@apple.com> |
230 | ||
231 | * doc/invoke.texi (C++ Dialect Options): Note that | |
232 | -fvisibility-inlines-hidden doesn't affect explicitly | |
233 | instantiationed inline methods. | |
234 | ||
79387e57 RS |
235 | 2006-07-20 Roger Sayle <roger@eyesopen.com> |
236 | ||
237 | * config.gcc (i[34567]86-*-solaris2*): Add usegas.h to $tm_file | |
238 | if the target assembler is GNU binutils' gas. | |
239 | * config/i386/sol2-10.h (ASM_SPEC): Check USE_GAS to determine | |
240 | whether to pass GNU gas or native as command line options. | |
241 | ||
b70f0f48 JM |
242 | 2006-07-20 Jason Merrill <jason@redhat.com> |
243 | ||
244 | * tree.c (remove_attribute): New fn. | |
bd741f34 | 245 | * tree.h: Declare it. |
b70f0f48 | 246 | |
05c433f3 PB |
247 | 2006-07-20 Paul Brook <paul@codesourcery.com> |
248 | ||
249 | PR 27363 | |
250 | * cse.c (cse_insn): Add destination addresses to hash table. Check if | |
251 | they are invalidated by this instruction. | |
252 | ||
b0e46dff DS |
253 | 2006-07-21 Danny Smith <dannysmith@users.sourceforge.net> |
254 | ||
255 | PR target/28427 | |
256 | * config/i386/cygming.h (MAX_OFILE_ALIGNMENT): Define. | |
257 | ||
1cba2b96 EC |
258 | 2006-07-20 Eric Christopher <echristo@apple.com> |
259 | ||
260 | PR target/26877 | |
261 | * config/i386/i386.h (OPTION_DEFAULT_SPECS): Reorder. | |
262 | ||
96f342c1 EC |
263 | 2006-07-19 Eric Christopher <echristo@apple.com> |
264 | ||
265 | * config/t-slibgcc-darwin (stmp-lipo): Remove. | |
266 | Rewrite dependencies for libgcc_s.1.dylib. | |
267 | ||
4841d432 JJ |
268 | 2006-07-19 Jakub Jelinek <jakub@redhat.com> |
269 | ||
270 | * except.c (duplicate_eh_regions_1): Clear next_peer. | |
271 | ||
87c365a4 NS |
272 | 2006-07-17 Nathan Sidwell <nathan@codesourcery.com> |
273 | ||
274 | * doc/invoke.texi (RS/6000 and PowerPC Options): Document that | |
275 | -mlongcall does not guarantee all calls will be long. | |
276 | * doc/extend.texi (long_call/short_call): Document that longcall | |
277 | does not guarantee a long call will be used. | |
278 | (longcall/shortcall): Likewise. | |
279 | ||
cb2eb96f RS |
280 | 2006-07-18 Roger Sayle <roger@eyesopen.com> |
281 | ||
282 | PR middle-end/28283 | |
283 | * expmed.c (expand_shift): Additionally check that the shift_cost | |
284 | is not MAX_COST and that INTVAL(op1) is less than MAX_BITS_PER_WORD | |
285 | before implementing a LSHIFT_EXPR as a sequence of additions. | |
286 | * config/sh/sh.c (shift_costs): Return MAX_COST to inform the | |
287 | middle-end that DImode shifts need to be synthesized by expand. | |
288 | ||
548a6c6d DN |
289 | 2006-07-18 Diego Novillo <dnovillo@redhat.com> |
290 | ||
291 | PR 28410 | |
292 | * tree-ssa-operands.c (access_can_touch_variable): Update | |
293 | comment. | |
294 | Return true if ALIAS is .GLOBAL_VAR. | |
295 | ||
b3cccd58 DD |
296 | 2006-07-18 David Daney <ddaney@avtrex.com> |
297 | ||
298 | * gcc.c (display_help): Fix typo in help text. | |
299 | ||
fe24d485 OH |
300 | 2006-07-18 Olivier Hainque <hainque@adacore.com> |
301 | ||
302 | * tree.h (categorize_ctor_elements): Adjust prototype and add | |
303 | descriptive comment, both in accordance with the interface change | |
304 | described below. | |
305 | * varasm.c (constructor_static_from_elts_p): New function. | |
306 | Whether a constructor node is a valid static constant initializer | |
307 | if all its elements are. | |
308 | (initializer_constant_valid_p) <CONSTRUCTOR value>: Use it. | |
96f342c1 | 309 | * output.h: Declare it. |
fe24d485 OH |
310 | * expr.c (categorize_ctor_elements_1): Return whether the constructor |
311 | is a valid constant initializer instead of computing the number of | |
312 | non-constant elements. Use constructor_static_from_elts_p for this | |
313 | purpose. Replace the head comment with an indication that this is a | |
314 | helper for categorize_ctor_elements. | |
315 | (categorize_ctor_elements): Same interface change as for the _1 | |
316 | helper. Former head comment from this helper moved here, adjusted to | |
317 | account for the interface changes. | |
318 | (mostly_zeros_p): Adjust call to categorize_ctor_elements. | |
96f342c1 | 319 | (all_zeros_p): Likewise. |
fe24d485 OH |
320 | * gimplify.c (gimplify_init_constructor): Decide whether we can make |
321 | static versions of the constructor from the categorize_ctor_elements | |
322 | return value instead of the formerly computed number of non-constant | |
323 | elements. | |
324 | ||
57255173 PB |
325 | 2006-07-18 Paolo Bonzini <bonzini@gnu.org> |
326 | ||
327 | * configure: Regenerate. | |
328 | * Makefile.in (build_libsubdir): New configure substitution | |
329 | (build_libobjdir): New variable. | |
330 | (BUILD_LIBIBERTY): Use it. | |
331 | ||
12050e44 VR |
332 | 2006-07-18 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
333 | ||
334 | PR c/28286 | |
335 | * c-pragma.c (handle_pragma_pack): Handle invalid constants. | |
336 | ||
e1cf56b1 AO |
337 | 2006-07-18 Alexandre Oliva <aoliva@redhat.com> |
338 | ||
339 | PR c/26993 | |
340 | * c-common.c (handle_weakref_attribute): Ignore attribute in | |
341 | the same conditions the alias attribute is ignored. | |
342 | ||
e098f3a5 CD |
343 | 2006-07-17 Carlos O'Donell <carlos@codesourcery.com> |
344 | ||
345 | * dbxout.c (dbxout_function_end): Do not increment scope_labelno. | |
346 | (dbxout_begin_prologue): Increment scope_labelno. | |
347 | ||
8bcbc000 RH |
348 | 2006-07-17 Richard Henderson <rth@redhat.com> |
349 | ||
350 | PR 27889 | |
351 | * tree-nested.c (create_tmp_var_for): Set DECL_COMPLEX_GIMPLE_REG_P | |
352 | if needed. | |
353 | ||
4f5afe7d RS |
354 | 2006-07-17 Roger Sayle <roger@eyesopen.com> |
355 | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
356 | ||
357 | * config/i386/gmon-sol2.c: Silence compilation warnings by partially | |
358 | synchronizing code with config/sparc/gmon-sol2.c. Remove #if 0 | |
359 | blocks. #include "tconfig.h" and "tsystem.h" to prototype system | |
360 | functions such as sbrk, write, etc.. Add function prototypes. | |
361 | Convert function declarations from K&R to ISO C. Cast pointers | |
362 | to "long" and "unsigned long" instead of "int" and "unsigned int". | |
363 | Convert tokens following #endif into comments. | |
364 | ||
dc5abe77 TM |
365 | 2006-07-17 Toon Moene <toon@moene.indiv.nluug.nl> |
366 | ||
367 | * invoke.texi: Remove mention of f77; Reformat table for | |
368 | inline parameter options correctly; mention that -malign-double | |
369 | is default on x86-64 targets. | |
370 | ||
64a7ab5f ZD |
371 | 2006-07-17 Zdenek Dvorak <dvorakz@suse.cz> |
372 | ||
373 | * tree-chrec.c (avoid_arithmetics_in_type_p): New. | |
374 | (convert_affine_scev, chrec_convert_aggressive): Use | |
375 | avoid_arithmetics_in_type_p. Do not check for the subtypes | |
376 | separately. | |
377 | ||
2763a67e RS |
378 | 2006-07-17 Richard Sandiford <richard@codesourcery.com> |
379 | ||
380 | PR middle-end/28403 | |
381 | * optabs.c (expand_doubleword_shift): Wrap the call to | |
382 | do_compare_rtx_and_jump with NO_DEFER_POP and OK_DEFER_POP. | |
383 | ||
f8bdb931 RS |
384 | 2006-07-17 Richard Sandiford <richard@codesourcery.com> |
385 | ||
386 | PR middle-end/28402 | |
387 | * optabs.c (expand_binop): Pass next_methods rather than methods | |
388 | to expand_doubleword_shift. | |
389 | ||
24a7799e R |
390 | 2006-07-17 J"orn Rennecke <joern.rennecke@st.com> |
391 | ||
392 | PR other/28251 | |
393 | * tree.h (dump_addr): Declare. | |
394 | * print-tree.c (dump_addr): New function. | |
395 | (print_node_brief, print_node): Use it. | |
396 | * print-rtl.c (print_rtx): Likewise. | |
397 | * common.opt (-fdump-noaddr): New option. | |
398 | * doc/invoke.texi (-fdump-noaddr): Document. | |
399 | * loop-unroll.c (si_info_hash): Make hash independent of addresses. | |
400 | (ve_info_hash): Likewise. | |
401 | ||
9d335249 AH |
402 | 2006-07-13 Andrew Haley <aph@redhat.com> |
403 | ||
404 | PR tree-optimization/19505 | |
405 | * tree-cfgcleanup.c (tree_forwarder_block_p): If we have an EH | |
406 | edge leaving this block, make sure that the destination of this | |
407 | block has only one predecessor. | |
408 | ||
2b65dae5 RG |
409 | 2006-07-17 Richard Guenther <rguenther@suse.de> |
410 | ||
411 | PR tree-optimization/28238 | |
412 | * tree-inline.c (copy_bb): Check if we produced valid | |
413 | gimple copying and substituting a stmt. If not, gimplify | |
414 | it. | |
415 | ||
3e27aa84 EB |
416 | 2006-07-16 Eric Botcazou <ebotcazou@adacore.com> |
417 | ||
418 | * optabs.c (maybe_encapsulate_block): New function extracted from... | |
419 | (emit_libcall_block): ...here. Invoke it on the block of insns to | |
420 | maybe emit REG_LIBCALL/REG_RETVAL notes around the block. | |
421 | (emit_no_conflict_block): Likewise. | |
422 | ||
bb2ffd7f EB |
423 | 2006-07-16 Eric Botcazou <ebotcazou@libertysurf.fr> |
424 | ||
c5ee132b | 425 | * doc/install.texi (sparc-sun-solaris2*): Add GMP version number. |
bb2ffd7f | 426 | |
b0d5d5de RS |
427 | 2006-07-15 Roger Sayle <roger@eyesopen.com> |
428 | ||
429 | * tree-gimple.c (is_gimple_stmt): Sink test of IS_EMPTY_STMT into | |
430 | a new NOP_EXPR case of the switch statement. | |
431 | ||
72aeff7c KK |
432 | 2006-07-15 Kaz Kojima <kkojima@gcc.gnu.org> |
433 | ||
434 | PR middle-end/28160 | |
435 | * stor-layout.c (place_field): Take the bit field with | |
436 | an excessive size into account in the ms-bitfiled case. | |
437 | ||
438 | PR middle-end/28161 | |
439 | * stor-layout.c (place_field): Use DECL_BIT_FIELD_TYPE of | |
440 | the previous bit field. | |
441 | ||
27714d43 ED |
442 | 2006-07-14 Eliot Dresselhaus <eliot@sonic.net> |
443 | ||
444 | PR target/27287 | |
445 | * config/rs6000/spe.md (frob_di_df_2): Add m->r alternative. | |
446 | ||
47a4949a UW |
447 | 2006-07-14 Ulrich Weigand <uweigand@de.ibm.com> |
448 | ||
449 | * config/s390/linux-unwind.h (s390_fallback_frame_state): Detect | |
450 | signal frames correctly even when the signal was installed with | |
451 | sa_restorer set. | |
452 | ||
1c1534e9 | 453 | 2006-07-14 Carlos O'Donell <carlos@codesourcery.com> |
03471b3f CD |
454 | |
455 | * dbxout.c (dbxout_begin_prologue): Emit LFBB label at function start. | |
96f342c1 | 456 | (dbxout_function_end): Use local label LFBB. Remove hook |
1c1534e9 | 457 | DBX_OUTPUT_NFUN. |
03471b3f CD |
458 | (dbxout_source_line): Use local label LFBB. |
459 | (dbxout_block): Likewise. | |
460 | (dbx_output_lbrac): Remove hook DBX_OUTPUT_LBRAC. | |
461 | (dbx_output_rbrac): Remove hook DBX_OUTPUT_RBRAC. | |
462 | * config/rs6000/linux64.h: Remove DBX_OUTPUT_LBRAC, DBX_OUTPUT_RBRAC, | |
463 | and DBX_OUTPUT_NFUN. | |
464 | ||
263108e1 JJ |
465 | 2006-07-13 Janis Johnson <janis187@us.ibm.com> |
466 | ||
467 | * doc/sourcebuild.texi (Test Directives): Document dg-shouldfail. | |
468 | ||
88d03811 JH |
469 | 2006-07-13 Jan Hubicka <jh@suse.cz> |
470 | ||
471 | * cgraphunit.c (cgraph_varpool_analyze_pending_decls): Call | |
472 | align_variable. | |
473 | * output.h (align_variable): Declare. | |
474 | * varasm.c (align_variable): Export. | |
475 | * value-prof.c (tree_value_profile_transformations): Recompute iterator | |
476 | when basic block changed. | |
477 | ||
6915d7f0 NC |
478 | 2006-07-13 Nick Clifton <nickc@redhat.com> |
479 | ||
480 | * config/sh/sh.c (sh_reorg): Ignore deleted insns whilst | |
481 | walking the LOG_LINKS chain. | |
96f342c1 | 482 | |
7c0de6a5 GK |
483 | 2006-07-12 Geoffrey Keating <geoffk@apple.com> |
484 | ||
485 | * doc/invoke.texi (C++ Dialect Options): Explain difference | |
486 | between -fvisibility-inlines-hidden and setting hidden | |
487 | visibility explicitly. | |
488 | ||
3fb8727b EC |
489 | 2006-07-12 Eric Christopher <echristo@apple.com> |
490 | ||
491 | * config/t-slibgcc-darwin (SHLIB_LINK): Don't munge stmp-lipo. | |
492 | (stmp-lipo): Depend on libgcc.a. | |
493 | ||
5f89204e KH |
494 | 2006-07-12 Kazu Hirata <kazu@codesourcery.com> |
495 | ||
496 | * tree.c: Fix a comment typo. | |
497 | ||
8a01e7d9 N |
498 | 2006-07-12 Naveen.H.S <naveenh@kpitcummins.com> |
499 | ||
3fb8727b | 500 | * config/m32c/muldiv.md (umulhisi3_c): Use only registers for |
8a01e7d9 N |
501 | dest. |
502 | (umulhisi3_r): Likewise. | |
503 | ||
93e89068 PC |
504 | 2006-07-12 Paolo Carlini <pcarlini@suse.de> |
505 | ||
506 | PR libstdc++/27878 | |
507 | * doc/install.texi (mips-sgi-irix6): Add note about IRIX 6.5.x, | |
508 | x < 19, vs wchar_t support. | |
509 | ||
45e49d96 NC |
510 | 2006-07-12 Nick Clifton <nickc@redhat.com> |
511 | ||
512 | * config/sh/sh.h (SUBTARGET_ASM_RELAX_SPEC): Use -isa=sh4-up | |
513 | instead of -isa=sh4. | |
514 | ||
f2702694 MS |
515 | 2006-07-12 Mike Stump <mrs@apple.com> |
516 | ||
517 | * protoize.c (edit_fn_definition): Add volatile to clean_text_p. | |
518 | ||
fb49f596 EC |
519 | 2006-07-10 Eric Christopher <echristo@apple.com> |
520 | ||
521 | * config/t-slibgcc-darwin: Rewrite. | |
522 | ||
b24f7f6b LB |
523 | 2006-07-10 Laurynas Biveinis <laurynas.biveinis@gmail.com> |
524 | ||
525 | PR bootstrap/20437 | |
526 | * Makefile.in (configure): add missing aclocal.m4 and acinclude.m4 | |
527 | dependencies. | |
528 | ||
0ee5ccdf MK |
529 | 2006-07-08 Matthias Klose <doko@debian.org> |
530 | ||
531 | * doc/sourcebuild.texi: Fix typo. | |
532 | ||
72d41343 MS |
533 | 2006-07-07 Mike Stump <mrs@apple.com> |
534 | ||
535 | * toplev.c (process_options): Don't give -ffunction-sections may | |
536 | affect debugging warning for Mach-O. | |
537 | ||
c81d6e2a JW |
538 | 2006-07-07 James E Wilson <wilson@specifix.com> |
539 | ||
540 | * config/mips/mips.md (cpu): Add sb1a. | |
541 | * config/mips/sb1.md: Modify almost all patterns to accept sb1a in | |
542 | addition to sb1. Adjust comments to clarify SB-1A differences from | |
543 | SB-1. | |
544 | (ir_sb1a_load): New. Modify bypasses to use it. | |
545 | (ir_sb1a_simple_alu): Likewise. | |
546 | * config/mips/mips.c (mips_cpu_info_table): Add sb1a. | |
547 | (mips_rtx_cost_data): Add PROCESSOR_SB1A support. | |
548 | (mips_issue_rate): Add PROCESSOR_SB1A. | |
549 | (mips_multipass_dfa_lookahead): Use TUNE_SB1 instead of PROCESSOR_SB1. | |
550 | * config/mips/mips.h (processor_type): Add PROCESSOR_SB1A. | |
551 | (TARGET_SB1): Add PROCESSOR_SB1A check. | |
552 | (TUNE_SB1): Likewise. | |
553 | ||
554 | * config/mips/mips-protos.h (mips_store_data_bypass_p): New. | |
555 | * config/mips/mips.c (mips_store_data_bypass_p): New. | |
556 | * config/mips/sb1.md: Use mips_store_data_bypass_p instead of | |
557 | store_data_bypass_p. | |
558 | ||
1b13a490 PB |
559 | 2006-07-08 Paul Brook <paul@codesourcery.com> |
560 | ||
561 | PR target/27991 | |
562 | * config/m68k/m68k.md: Add r-m patterns for 68881 movxf. | |
563 | ||
bfabddb6 RG |
564 | 2006-07-07 Richard Guenther <rguenther@suse.de> |
565 | ||
566 | PR middle-end/28268 | |
567 | * tree.h (build_one_cst): Declare. | |
568 | * tree.c (build_one_cst): New function. | |
569 | * tree-ssa-math-opts.c (get_constant_one): Remove. | |
570 | (insert_reciprocals): Use build_one_cst. | |
571 | * fold-const.c (fold_plusminus_mult): Likewise. | |
572 | ||
83f676b3 RS |
573 | 2006-07-07 Roger Sayle <roger@eyesopen.com> |
574 | ||
575 | * pointer-set.c (pointer_set_destroy): Correct whitespace. | |
576 | * cfgloopanal.c (dump_graph): Likewise. | |
577 | * dojump.c (discard_pending_stack_adjust): Likewise. | |
578 | * fix-header.c (TARGET_EXTRA_INCLUDE, TARGET_EXTRA_PRE_INCLUDES): | |
579 | Likewise. | |
580 | * alloc-pool.c (dump_alloc_pool_statistics): Likewise. | |
581 | * function.c (finalize_block_changes): Likewise. | |
582 | * gcc-common.c (ggc_free_overhead, dump_gcc_loc_statistics): Likewise. | |
583 | * tree-ssa-dce.c (clear_control_dependence_bitmap): Likewise. | |
584 | * rtl.c (dump_rtx_statistics): Likewise. | |
fb49f596 | 585 | * tree-ssa-structalias.c (sort_fieldstack, init_alias_heapvars): |
83f676b3 RS |
586 | Likewise. |
587 | * varray.c (dump_varray_statistics): Likewise. | |
588 | * dfp.c (encode_decimal32, decode_decimal32, encode_decimal64, | |
589 | decode_decimal64, encode_decimal128, decode_decimal128, | |
590 | decimal_real_to_decimal): Likewise. | |
591 | ||
1ce35d26 RG |
592 | 2006-07-07 Richard Guenther <rguenther@suse.de> |
593 | ||
594 | PR tree-optimization/28187 | |
595 | * tree-vrp.c (vrp_operand_equal_p): New function. | |
596 | (vrp_bitmap_equal_p): Likewise. | |
597 | (update_value_range): Use them to compare old and new | |
598 | max and min values. | |
599 | ||
9e33de05 RS |
600 | 2006-07-06 Roger Sayle <roger@eyesopen.com> |
601 | ||
602 | * c-parser.c (c_parser_skip_to_end_of_block_or_statement): Add | |
603 | a default case to switch statement to silence compiler warnings. | |
604 | ||
b6c03bcd RS |
605 | 2006-07-06 Roger Sayle <roger@eyesopen.com> |
606 | ||
607 | PR target/27968 | |
fb49f596 | 608 | * configure.ac (HAVE_AS_IX86_FFREEP): On x86 targets check whether |
b6c03bcd RS |
609 | the configured assembler supports the x87's ffreep mnemonic. |
610 | * configure: Regenerate. | |
611 | * config.in: Regenerate. | |
612 | ||
613 | * config/i386/i386.c (output_387_ffreep): New function. | |
614 | (output_fp_compare): Use output_387_ffreep to emit ffreep insns. | |
615 | (output_387_reg_move): Likewise. | |
616 | ||
27b56ba6 PE |
617 | 2006-07-06 Paul Eggert <eggert@cs.ucla.edu> |
618 | ||
619 | Port to hosts whose 'sort' and 'tail' implementations | |
620 | treat operands with leading '+' as file names, as POSIX | |
621 | has required since 2001. However, make sure the code still | |
622 | works on pre-POSIX hosts. | |
623 | * Makefile.in (slowcompare): Port to POSIX 1003.1-2001, | |
624 | which says you should use "tail -c +N" rather than "tail +Nc". | |
625 | Fix a bug: the old code incorrectly skipped 15 bytes, not 16. | |
626 | ||
525dc87d ZD |
627 | 2006-07-06 Zdenek Dvorak <dvorakz@suse.cz> |
628 | ||
b6c03bcd RS |
629 | * tree-ssa-loop-niter.c (scev_probably_wraps_p): Fix typo in |
630 | argument name. | |
525dc87d | 631 | |
429ec7dc DE |
632 | 2006-07-06 David Edelsohn <edelsohn@gnu.org> |
633 | ||
634 | PR target/28150 | |
635 | * config/rs6000/rs6000.c (rs6000_legitimate_address): Do not allow | |
636 | PRE_{INC,DEC} of TFmode. | |
637 | ||
638 | 2006-07-06 David Edelsohn <edelsohn@gnu.org> | |
639 | Alan Modra <amodra@bigpond.net.au> | |
640 | ||
641 | PR target/28170 | |
642 | * config/rs6000/rs6000.c (insvdi_rshift_rlwimi_p): Correct shiftop | |
643 | bounds. Simplify. | |
644 | ||
cec12c7a RO |
645 | 2006-07-06 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> |
646 | ||
647 | PR target/28285 | |
648 | * config/alpha/predicates.md (alpha_swapped_comparison_operator): | |
649 | Remove duplicate gtu. | |
650 | ||
1937f939 JM |
651 | 2006-07-05 Jason Merrill <jason@redhat.com> |
652 | ||
653 | PR c++/13983 | |
654 | PR c++/17519 | |
655 | * stor-layout.c (finish_record_layout): Copy TYPE_PACKED to variants. | |
656 | * c-common.c (handle_packed_attribute): So don't copy it here. | |
657 | * c-decl.c (finish_struct): Don't copy TYPE_ALIGN. | |
658 | ||
63b08b60 MS |
659 | 2006-07-05 Mike Stump <mrs@apple.com> |
660 | ||
661 | * doc/invoke.texi (Invoking G++): Clarify prose for g++. | |
662 | ||
28a026d9 L |
663 | 2006-07-05 H.J. Lu <hongjiu.lu@intel.com> |
664 | ||
665 | PR target/26146 | |
666 | * config.gcc: Check with_cpu for i[34567]86--*-solaris2.1[0-9]*. | |
667 | ||
dc8f5205 RG |
668 | 2006-07-05 Richard Guenther <rguenther@suse.de> |
669 | ||
670 | PR target/28158 | |
671 | * config/i386/i386.md (*negdf2_1): Restrict pattern to | |
672 | TARGET_SSE2 targets if using SSE math. | |
673 | (*absdf2_1): Likewise. | |
674 | ||
30a843c3 RG |
675 | 2006-07-05 Richard Guenther <rguenther@suse.de> |
676 | ||
677 | PR tree-optimization/28162 | |
678 | * fold-const.c (fold_binary): For (-A) * (-B) -> A * B | |
679 | make sure to convert the operands to the correct type. | |
680 | ||
d898f3ce PB |
681 | 2006-07-04 Paolo Bonzini <bonzini@gnu.org> |
682 | ||
683 | PR tree-optimization/28218 | |
684 | ||
685 | * tree-ssa-math-opts.c (execute_cse_reciprocals): Fix calls | |
686 | to calculate and free the dominator information. | |
fb49f596 | 687 | |
706601d9 PG |
688 | 2006-07-04 Peter O'Gorman <peter@pogma.com> |
689 | ||
690 | * mklibgcc.in: chmod 644 before ranlib during install. | |
691 | ||
dbc02e7f AS |
692 | 2006-07-04 Andrew Stubbs <andrew.stubbs@st.com> |
693 | J"orn Rennecke <joern.rennecke@st.com> | |
694 | ||
695 | * configure.ac (.eh_frame data check): Use diff -b. | |
696 | ||
0b50988a EB |
697 | 2006-07-04 Eric Botcazou <ebotcazou@libertysurf.fr> |
698 | ||
699 | PR bootstrap/18058 | |
700 | * Makefile.in (BUILD_RTL): Add build/vec.o. | |
701 | (build/gencondmd.o): Filter out -fkeep-inline-functions. | |
702 | (build/genextract): Delete. | |
703 | (build/genautomata): Likewise. | |
704 | ||
84e9ad15 AM |
705 | 2006-07-04 Alan Modra <amodra@bigpond.net.au> |
706 | ||
707 | PR target/28207 | |
708 | * config/rs6000/rs6000.c (function_arg_boundary): Double-word align | |
709 | 128-bit IBM long doubles for ABI_V4. | |
710 | ||
11fc4275 EB |
711 | 2006-07-03 Eric Botcazou <ebotcazou@adacore.com> |
712 | ||
713 | * tree.c (range_in_array_bounds_p): New predicate. | |
714 | * tree.h (range_in_array_bounds_p): Declare it. | |
715 | * tree-eh.c (tree_could_trap_p) <ARRAY_RANGE_REF>: Use it to | |
716 | return a less conservative answer. | |
717 | * tree-sra.c (struct sra_elt): Add new pointer field 'groups' | |
718 | and flag 'is_group'. | |
719 | (IS_ELEMENT_FOR_GROUP): New macro. | |
720 | (FOR_EACH_ACTUAL_CHILD): Likewise. | |
721 | (next_child_for_group): New helper function. | |
722 | (can_completely_scalarize_p): Take into account groups. | |
723 | (sra_hash_tree): Handle RANGE_EXPR. | |
724 | (sra_elt_eq): Likewise. | |
725 | (lookup_element): Be prepared for handling groups. | |
726 | (is_valid_const_index): Delete. | |
727 | (maybe_lookup_element_for_expr) <ARRAY_REF>: Use in_array_bounds_p | |
728 | instead of is_valid_const_index. | |
729 | <ARRAY_RANGE_REF>: New case. | |
730 | (sra_walk_expr) <ARRAY_REF>: Use in_array_bounds_p instead of | |
731 | is_valid_const_index. | |
732 | <ARRAY_RANGE_REF>: Do not unconditionally punt. | |
733 | (scan_dump): Dump info for groups too. | |
734 | (decide_instantiation_1): Likewise. | |
735 | (decide_block_copy): Assert that the element is not a group. | |
736 | Propagate decision to groups. | |
737 | (generate_one_element_ref): Handle RANGE_EXPR. | |
738 | (mark_no_warning): Iterate over actual childs. | |
739 | (generate_copy_inout): Likewise. | |
740 | (generate_element_copy): Likewise. | |
741 | (generate_element_zero): Likewise. | |
742 | (generate_element_init_1): Likewise. | |
743 | (dump_sra_elt_name): Handle RANGE_EXPR. | |
744 | ||
31a9760a RS |
745 | 2006-07-03 Roger Sayle <roger@eyesopen.com> |
746 | ||
747 | PR tree-optimization/26251 | |
748 | * tree-ssa-threadupdate.c (redirection_block_p): New function. | |
749 | (thread_block): When optimizing for size refuse to thread jumps | |
750 | that would require duplication of blocks other than redirection | |
751 | blocks. | |
752 | ||
b6348cb3 PB |
753 | 2006-07-03 Paolo Bonzini <bonzini@gnu.org> |
754 | ||
755 | * configure.ac: Fix thinko in previous check-in. | |
756 | * configure: Regenerate. | |
757 | ||
1546bb64 PB |
758 | 2006-07-03 Paolo Bonzini <bonzini@gnu.org> |
759 | ||
760 | PR other/27063 | |
761 | * configure.ac (for lang...): Simplify nesting of conditionals. | |
762 | Test subdir_requires for non-enabled languages. Move processing | |
763 | of lang_opt_files and lang_tree_fiels below that test. | |
764 | * configure: Regenerate. | |
765 | * doc/sourcebuild.texi (Front End Config): Document subdir_requires. | |
766 | ||
3e72a66f MM |
767 | 2006-07-01 Martin Michlmayr <tbm@cyrius.com> |
768 | ||
769 | * doc/gcov.texi (Invoking Gcov): Add a missing word. | |
770 | ||
2a8a8292 KH |
771 | 2006-06-30 Kazu Hirata <kazu@codesourcery.com> |
772 | ||
773 | * cfgexpand.c, config/i386/i386.c, genpreds.c, tree-cfg.c: Fix | |
774 | comment typos. | |
775 | ||
b9e75696 JM |
776 | 2006-06-29 Jason Merrill <jason@redhat.com> |
777 | ||
778 | PR c++/26905 | |
779 | PR c++/26612 | |
780 | PR c++/27000 | |
781 | PR c++/26984 | |
782 | PR c++/19134 | |
783 | * tree.c (build_decl_stat): Don't hande #pragma visibility here. | |
784 | * c-common.c (c_determine_visibility): Handle it here. | |
fb49f596 | 785 | * c-decl.c (finish_decl): Call c_determine_visibility for |
b9e75696 JM |
786 | functions, too. |
787 | * flags.h (enum symbol_visibility): Sort from most to least visibility. | |
788 | * tree.h: Likewise. | |
789 | * varasm.c (default_assemble_visibility): Likewise. | |
790 | * c-common.c (handle_visibility_attribute): Complain about trying | |
791 | to give visibility to an already defined class, or trying to change | |
792 | declared visibility. Always attach the attribute. | |
793 | ||
794 | PR c++/26905 | |
795 | PR c++/21675 | |
796 | PR c++/17470 | |
797 | * attribs.c (decl_attributes): Ignore type-in-place attributes | |
798 | once the type has been defined. | |
799 | ||
8646f3df RS |
800 | 2006-06-29 Roger Sayle <roger@eyesopen.com> |
801 | ||
802 | PR middle-end/27428 | |
803 | * c-lex.c (c_lex_with_flags) <CPP_N_INVALID>: Increment errorcount | |
804 | to indicate the cpplib has issued an error message for us. | |
805 | ||
f8c2645c AL |
806 | 2006-06-29 Asher Langton <langton2@llnl.gov> |
807 | ||
808 | PR target/25765 | |
809 | * config/i386/i386.c (ix86_output_function_epilogue): Don't | |
810 | insert a label at the end of an function under Mach-O. | |
fb49f596 | 811 | |
5656a184 EC |
812 | 2006-06-29 Eric Christopher <echristo@apple.com> |
813 | Evan Cheng <evan.cheng@apple.com> | |
814 | ||
815 | * predicates.md (vector_all_ones_operand): New. | |
816 | (nonimmediate_or_sse_const_operand): Ditto. | |
817 | * config/i386/i386-protos.h (standard_sse_constant_opcode): Declare. | |
818 | * config/i386/i386.c (standard_sse_constant_opcode): Define. | |
819 | (standard_sse_mode_p): Ditto. | |
820 | (standard_sse_constant_p): Add case for -1 vector. | |
821 | (ix86_expand_vector_move): Try to use. | |
822 | * sse.md (*mov<mode>_internal): Use nonimmediate_or_sse_const_operand. | |
823 | Call standard_sse_constant_opcode. | |
824 | (*movv4sf_internal): Ditto. | |
825 | (*movv2df_internal): Ditto. | |
826 | ||
c8d560fa RS |
827 | 2006-06-29 Roger Sayle <roger@eyesopen.com> |
828 | ||
829 | * genpreds.c (write_match_code_switch): Correctly use XSTR instead | |
830 | of XEXP to extract the operands of a MATCH_CODE rtx. | |
831 | ||
43b50eb2 AP |
832 | 2006-06-28 Andrew Pinski <pinskia@gmail.com> |
833 | ||
834 | * tree.c (tree_size): Do not waste tail padding in | |
835 | struct tree_string and make the size be the same as | |
836 | build_string will generate. | |
837 | ||
99495729 JM |
838 | 2006-06-28 Jason Merrill <jason@redhat.com> |
839 | ||
840 | PR c++/27768 | |
841 | * tree-ssa-alias.c (compute_flow_insensitive_aliasing): Add | |
842 | may_aliases already in the tag's annotations to the bitmap. | |
843 | ||
8547c7f8 RS |
844 | 2006-06-28 Roger Sayle <roger@eyesopen.com> |
845 | ||
846 | * genpreds.c (write_predicate_stmts) <IOR>: Add missing break. | |
847 | ||
7caf6734 RS |
848 | 2006-06-28 Roger Sayle <roger@eyesopen.com> |
849 | ||
850 | * genpreds.c (generate_switch_p): New function. | |
851 | (add_mode_tests): Push the new mode test down inside an AND expr | |
852 | if this allows the switch-suitable MATCH_CODE to be near the root. | |
853 | (write_match_code_switch): New function to write a MATCH_CODE as | |
854 | a switch statement. | |
855 | (write_predicate_stmts): New function to write a predicate RTX | |
856 | expression as a sequence of statements. | |
857 | (write_one_predicate_function): Use write_predicate_stmts. | |
858 | (write_tm_constrs_h): Likewise. | |
859 | ||
f340b6fc FF |
860 | 2006-06-26 Fred Fish <fnf@specifix.com> |
861 | ||
862 | * config/mips/t-sb1: New file. | |
863 | * config.gcc (mipsisa64sb1-*-elf*): Add mips/t-sb1 to | |
864 | tmake_file list. | |
865 | ||
ff485e71 DD |
866 | 2006-06-26 DJ Delorie <dj@redhat.com> |
867 | ||
868 | * config/m32c/m32c.c (m32c_print_operand): Fix sign-merging logic. | |
869 | ||
870 | 2006-06-26 Naveen H.S <naveenh@kpitcummins.com> | |
871 | Jayant Sonar <jayants@kpitcummins.com> | |
872 | Jaydeep Vipradas <jaydeepv@kpitcummins.com> | |
873 | ||
874 | * config/m32c/addsub.md (addsi3, addsi3_1, addsi3_2): New. | |
875 | (subsi3, subsi3_1, subsi3_2): New. | |
876 | * config/m32c/bitops.md (andsi3, iorsi3, xorsi3): New. | |
877 | * config/m32c/mov.md (SI mov peephole): New. | |
878 | * config/m32c/m32.c (m32c_immd_dbl_mov): New. | |
879 | * config/m32c/m32c-protos.h (m32c_immd_dbl_mov): New. | |
5656a184 | 880 | |
500c353d OH |
881 | 2006-06-26 Olivier Hainque <hainque@adacore.com> |
882 | ||
883 | * function.c (aggregate_value_p): Honor DECL_BY_REFERENCE on | |
884 | a CALL_EXPR target function declaration. | |
885 | ||
28df01ac RG |
886 | 2006-06-26 Richard Guenther <rguenther@suse.de> |
887 | ||
888 | * tree.c (build_string): Do not waste tail padding in | |
889 | struct tree_string. | |
890 | ||
a469a4f2 RG |
891 | 2006-06-26 Richard Guenther <rguenther@suse.de> |
892 | ||
893 | * ggc-page.c (init_ggc): Add missing element to size_lookup | |
894 | table. | |
895 | ||
896 | Revert | |
897 | 2006-06-23 Richard Guenther <rguenther@suse.de> | |
898 | ||
899 | * ggc-page.c (init_ggc): Do not round up the extra_order_size_table | |
900 | sizes to MAX_ALIGNMENT. Fix the size_lookup table to honour | |
901 | alignment requests instead. Add verification code. | |
902 | Add struct tree_function_decl and struct tree_binfo size to | |
903 | extra_order_size_table. Add missing element to size_lookup | |
904 | table. | |
905 | ||
858214db EB |
906 | 2006-06-25 Eric Botcazou <ebotcazou@adacore.com> |
907 | ||
908 | PR middle-end/28151 | |
909 | * fold-const.c (const_binop): Be prepared for self returning zero. | |
910 | Simplify code handling complex values. | |
911 | ||
61c25908 OH |
912 | 2006-06-24 Olivier Hainque <hainque@adacore.com> |
913 | ||
914 | * gimplify.c (gimplify_scalar_mode_aggregate_compare): New function. | |
915 | (gimplify_expr): Use it for tcc_comparison of operands of non BLKmode | |
916 | aggregate types. | |
917 | ||
918 | 2006-06-24 Olivier Hainque <hainque@adacore.com> | |
919 | ||
920 | * tree-ssa-loop-im.c (for_each_index): Handle ARRAY_RANGE_REF as | |
921 | ARRAY_REF, so have the callback called for the low bound expression. | |
922 | ||
5fc89bfd JJ |
923 | 2006-06-23 Janis Johnson <janis187@us.ibm.com> |
924 | ||
925 | * tree.h (DECIMAL_FLOAT_TYPE_P): New. | |
926 | * c-typeck.c (c_common_type): Disallow operations on decimal float | |
927 | types and other float types. | |
928 | * convert.c (convert_to_real): Don't ignore conversions involving | |
929 | decimal float types. | |
930 | ||
a441447f OH |
931 | 2006-06-23 Olivier Hainque <hainque@adacore.com> |
932 | ||
933 | * tree.c (max_int_size_in_bytes): New function, inspired from | |
934 | code in function.c:assign_temp. | |
935 | * tree.h (max_int_size_in_bytes): Declare. | |
936 | * function.c (assign_temp): Use it. | |
937 | * gimplify.c (create_tmp_var): Relax the assertions on the type | |
938 | properties, not mandating constant size any more. | |
939 | (force_constant_size): New static function. | |
940 | (gimple_add_tmp_var): Use it, forcing variable size to a | |
941 | constant upper bound if it is not constant on entry. | |
942 | ||
4e2bb0a4 DS |
943 | 2006-06-23 Danny Smith <dannysmith@users.sourceforge.net> |
944 | ||
945 | PR target/27789 | |
946 | * config/i386/winnt.c (ix86_handle_selectany_attribute): Move check | |
947 | for initialization and setting of one_only flag to ... | |
948 | (i386_pe_encode_section_info): ...here. | |
949 | (i386_pe_dllimport_p): Check for DECL_DLLIMPORT_P also. | |
950 | Recheck that the symbol has not been defined. | |
951 | ||
ecf7b86f RG |
952 | 2006-06-23 Richard Guenther <rguenther@suse.de> |
953 | ||
954 | * ggc-page.c (init_ggc): Do not round up the extra_order_size_table | |
955 | sizes to MAX_ALIGNMENT. Fix the size_lookup table to honour | |
956 | alignment requests instead. Add verification code. | |
957 | Add struct tree_function_decl and struct tree_binfo size to | |
958 | extra_order_size_table. Add missing element to size_lookup | |
959 | table. | |
960 | ||
e577c8c0 RS |
961 | 2006-06-22 Roger Sayle <roger@eyesopen.com> |
962 | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | |
963 | ||
964 | PR middle-end/28131 | |
965 | * expr.c (expand_expr_real_1) <VECTOR_CST>: Check whether the | |
966 | call to lang_hooks.types.type_for_mode returned NULL_TREE. | |
967 | ||
f64ad1d3 BE |
968 | 2006-06-23 Ben Elliston <bje@au.ibm.com> |
969 | ||
970 | * dfp.c (decimal_to_decnumber): Do not use decNumberNegate to | |
971 | negate dn -- manipulate it directly. | |
972 | ||
8c339083 RS |
973 | 2006-06-22 Roger Sayle <roger@eyesopen.com> |
974 | Steven Bosscher <stevenb.gcc@gmail.com> | |
975 | ||
976 | PR target/27531 | |
977 | * reload1.c (gen_reload): Call mark_jump_label on the new insns | |
978 | generated by gen_move_insn to add REG_LABEL notes if necessary. | |
979 | ||
03c8b1be BW |
980 | 2006-06-22 Bob Wilson <bob.wilson@acm.org> |
981 | ||
982 | * config/xtensa/lib1funcs.asm (MIN_ESA): Delete. | |
983 | (leaf_entry): Remove use of MIN_ESA. | |
984 | ||
0ef90296 ZD |
985 | 2006-06-22 Zdenek Dvorak <dvorakz@suse.cz> |
986 | ||
987 | PR rtl-optimization/28121 | |
988 | * cfgexpand.c (tree_expand_cfg): Clean EDGE_EXECUTABLE flag from | |
989 | the entry edge. | |
990 | ||
a1ec220c DD |
991 | 2006-06-21 DJ Delorie <dj@redhat.com> |
992 | ||
993 | * config/m32c/muldiv.md (mulhisi3_i): Only use registers for dest | |
994 | (TN-16C-A156A/E). | |
995 | (mulhisi3_r): Likewise. | |
996 | ||
35fa8915 RS |
997 | 2006-06-21 Richard Sandiford <richard@codesourcery.com> |
998 | ||
999 | PR middle-end/28034 | |
1000 | * coverage.c (coverage_counter_alloc): Leave the index type | |
1001 | unspecified. | |
1002 | (coverage_counter_alloc): Use null arguments for operands 2 and 3 | |
1003 | of the ARRAY_REF. | |
1004 | ||
17d6caa1 AP |
1005 | 2006-06-21 Andrew Pinski <pinskia@physics.uc.edu> |
1006 | ||
1007 | * doc/invoke.texi (-fopenmp) Move to "Options Controlling C Dialect" | |
1008 | section from the "Options for Code Generation Conventions". | |
1009 | ||
b0100a44 RH |
1010 | 2006-06-21 Richard Henderson <rth@redhat.com> |
1011 | ||
1012 | PR target/26347 | |
1013 | PR target/27082 | |
1014 | * config/alpha/predicates.md (small_symbolic_operand): Deny weak | |
1015 | symbols. | |
1016 | (global_symbolic_operand): Allow weak symbols, even if local_p. | |
1017 | ||
75715cf6 EB |
1018 | 2006-06-21 Eric Botcazou <ebotcazou@adacore.com> |
1019 | ||
1020 | * tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): New function. | |
1021 | (find_interesting_uses_address): Punt if above function returns true. | |
1022 | ||
18fc9bd4 RG |
1023 | 2006-06-21 Richard Guenther <rguenther@suse.de> |
1024 | ||
1025 | * configure: Regenerated. | |
1026 | ||
0882b52e JM |
1027 | 2006-06-21 Joseph Myers <joseph@codesourcery.com> |
1028 | ||
1029 | * config/mips/mips.c (function_arg): Where one part of a | |
1030 | complex argument is in registers and the other part in the stack, | |
1031 | return a REG not a PARALLEL. | |
1032 | ||
0f57bf40 MM |
1033 | 2006-06-21 Mark Mitchell <mark@codesourcery.com> |
1034 | ||
1035 | * configure.ac: Set gcc_gxx_include_dir to $target/include/c++ | |
1036 | when cross-compiling. Do not substitute libstdcxx_incdir. | |
1037 | * configure: Regenerated. | |
1038 | ||
0841534a JJ |
1039 | 2006-06-21 Jakub Jelinek <jakub@redhat.com> |
1040 | ||
1041 | * varasm.c (mergeable_string_section): Check for embedded NULs and | |
1042 | NUL termination in the first int_size_in_bytes (TREE_TYPE (decl)) | |
1043 | rather than TREE_STRING_LENGTH bytes. | |
1044 | ||
470f18fc RG |
1045 | 2006-06-21 Richard Guenther <rguenther@suse.de> |
1046 | ||
1047 | * ggc-page.c (extra_order_size_table): Add var_ann_d, | |
1048 | tree_ssa_name, bitmap_element and phi_node with 4 arguments | |
1049 | sizes. | |
1050 | ||
b16fb82d RG |
1051 | 2006-06-21 Richrad Guenther <rguenther@suse.de> |
1052 | ||
1053 | * tree-ssa-loop-niter.c (simplify_using_initial_conditions): | |
1054 | Limit iteration over the dominators. | |
1055 | ||
8043a72a RS |
1056 | 2006-06-20 Roger Sayle <roger@eyesopen.com> |
1057 | ||
1058 | * config/mips/iris6.h (LIB_SPEC): Add support for -pthread. | |
1059 | (SUBTARGET_CPP_SPEC): Define _REENTERANT if -pthread specified. | |
1060 | ||
5a6ccafd RG |
1061 | 2006-06-20 Richard Guenther <rguenther@suse.de> |
1062 | Michael Matz <matz@suse.de> | |
1063 | ||
1064 | * alloc-pool.h (free_alloc_pool_if_empty): Prototype new | |
1065 | function. | |
1066 | * alloc-pool.c (free_alloc_pool_if_empty): New function. | |
1067 | * et-forest.h (et_free_pools): Prototype new function. | |
5656a184 | 1068 | * et-forest.c (et_free_tree_force): Free parent occurrence. |
5a6ccafd RG |
1069 | (et_free_pools): New function. |
1070 | * dominance.c (free_dominance_info): Free et-forest alloc | |
1071 | pools. | |
1072 | ||
1000b34d RS |
1073 | 2006-06-20 Roger Sayle <roger@eyesopen.com> |
1074 | ||
1075 | * expr.c (expand_expr_real_1) <VECTOR_CST>: For vector constants with | |
1076 | integer modes, attempt to directly construct an integer constant. | |
1077 | ||
1078 | * fold-const.c (native_encode_vector): Determine the size of each | |
1079 | element from the vector type instead of the first vector element. | |
1080 | ||
1081 | * tree.c (build_constructor_single): Mark a CONSTRUCTOR as constant, | |
1082 | if all of its elements/components are constant. | |
1083 | (build_constructor_from_list): Likewise. | |
1084 | ||
8fdbc9c6 ZD |
1085 | 2006-06-20 Zdenek Dvorak <dvorakz@suse.cz> |
1086 | ||
1087 | PR tree-optimization/27331 | |
1088 | * tree-data-ref.c (free_data_ref): New function. | |
1089 | (create_data_ref): Fail if the data reference has unknown access | |
1090 | function. | |
1091 | (free_data_refs): Use free_data_ref. | |
1092 | ||
73dab33b AP |
1093 | 2006-06-19 Andrew Pinski <pinskia@gmail.com> |
1094 | ||
1095 | PR middle-end/28075 | |
1096 | * tree-inline.c (setup_one_parameter): Strip useless | |
1097 | type conversion before adding it to the IR. | |
1098 | (declare_return_variable): Likewise. | |
1099 | ||
48e2909e MM |
1100 | 2006-06-19 Martin Michlmayr <tbm@cyrius.com> |
1101 | ||
1102 | PR c/27149 | |
1103 | * c-common.c (c_common_truthvalue_conversion): Fix grammar in warning. | |
1104 | ||
ca84a9a2 MS |
1105 | 2006-06-19 Mike Stump <mrs@apple.com> |
1106 | ||
1107 | * tree.c (variably_modified_type_p): VM arguments don't make the | |
1108 | type a VM type. | |
1109 | ||
81126126 RG |
1110 | 2006-06-19 Richard Guenther <rguenther@suse.de> |
1111 | ||
1112 | * tree-ssa-pre.c (try_combine_conversion): Strip useless | |
1113 | type conversions after folding. | |
1114 | ||
f5938dcd RG |
1115 | 2006-06-19 Richard Guenther <rguenther@suse.de> |
1116 | ||
1117 | * ggc-page.c (extra_order_size_tab): Add entries with | |
1118 | size of struct function and basic_block. | |
1119 | (size_lookup): Extend to cover sizes up to 511. | |
1120 | (ggc_alloc_stat): Adjust user. | |
1121 | (ggc_pch_count_object): Likewise. | |
1122 | (ggc_pch_alloc_object): Likewise. | |
1123 | (ggc_pch_write_object): Likewise. | |
1124 | ||
20fb52af ZD |
1125 | 2006-06-19 Zdenek Dvorak <dvorakz@suse.cz> |
1126 | ||
1127 | * tree-ssa-loop-niter.c (implies_ge_p): New function. | |
1128 | (derive_constant_upper_bound): Handle OP0 - CST in unsigned types | |
1129 | correctly. | |
1130 | ||
7ed9c001 DC |
1131 | 2006-06-19 Denis Chertykov <denisc@overta.ru> |
1132 | ||
1133 | * config/avr/libgcc.S : Correct my wrong previous commit. | |
1134 | ||
fa00f91b RS |
1135 | 2006-06-19 Roger Sayle <roger@eyesopen.com> |
1136 | ||
1137 | PR target/27861 | |
1138 | * expmed.c (expand_shift): On SHIFT_COUNT_TRUNCATED targets, we may | |
1139 | have stripped a SUBREG from the shift count, so we may need to | |
1140 | convert_to_mode back to the type's mode before calling make_tree. | |
1141 | Use new_amount instead of amount to avoid expanding a tree twice. | |
1142 | ||
096dce1b RG |
1143 | 2006-06-19 Richard Guenther <rguenther@suse.de> |
1144 | ||
1145 | PR middle-end/28045 | |
1146 | * fold-const.c (operand_equal_p): Check if the argument types | |
1147 | have the same precision before stripping NOPs. | |
1148 | ||
46b86adc DB |
1149 | 2006-06-19 Daniel Berlin <dberlin@dberlin.org> |
1150 | ||
1151 | Fix PR tree-optimization/27341 | |
1152 | * tree-cfg.c (gimplify_val): Call mark_new_vars_to_rename on the | |
1153 | statement we get. | |
5656a184 | 1154 | * tree-complex.c (pass_lower_complex): Update SMT usage. |
46b86adc | 1155 | |
7e665d18 AK |
1156 | 2006-06-19 Andreas Krebbel <krebbel1@de.ibm.com> |
1157 | ||
5656a184 | 1158 | * config/s390/s390.md ("doloop_si64", "doloop_si31", "doloop_di"): |
7e665d18 AK |
1159 | Add a new alternative to the constraint strings. Add move of |
1160 | operand 1 to 3 to the splitter definition. | |
1161 | ("doloop_si_long"): Second contraint alternative removed. | |
1162 | ||
4301ec4f AS |
1163 | 2006-06-08 Anatoly Sokolov <aesok@post.ru> |
1164 | ||
1165 | * config/avr/avr.h (avr_have_movw_lpmx_p): Declare. | |
5656a184 | 1166 | (TARGET_CPU_CPP_BUILTINS): Add __AVR_HAVE_MOVW__ and |
4301ec4f AS |
1167 | __AVR_HAVE_LPMX__. |
1168 | (AVR_HAVE_MOVW) Define. | |
1169 | (ASSEMBLER_DIALECT): Use AVR_HAVE_MOVW. | |
1170 | (ASM_SPEC): Add avr25. | |
1171 | (LINK_SPEC): Add avr25. | |
1172 | * config/avr/avr.c (avr_have_movw_lpmx_p): Add. | |
1173 | (base_arch_s): Add new member 'have_movw_lpmx'. | |
1174 | (avr_arch_types): Init 'have_movw_lpmx'. | |
1175 | (avr_mcu_types): Add 'avr25'. Move attiny13, attiny2313, attiny24, | |
1176 | attiny44, attiny84, attiny25, attiny45, attiny85, attiny261, | |
1177 | attiny461, attiny861 and at86rf401 in 'avr25' arhitecture. | |
1178 | (avr_override_options): Init 'avr_have_movw_lpmx_p'. | |
5656a184 | 1179 | (output_movhi, output_movsisf, ashlsi3_out, avr_rtx_costs): Use |
4301ec4f AS |
1180 | AVR_HAVE_MOVW. |
1181 | (avr_file_start): Do not output '.arh' derective. | |
1182 | * config/avr/libgcc.S (mov_l): Use __AVR_HAVE_MOVW__. | |
1183 | (__do_copy_data): Use __AVR_HAVE_LPMX__. | |
1184 | * config/avr/avr.md (mcu_enhanced): Delete. | |
1185 | (mcu_have_movw): Define. | |
1186 | (negsi2, extendhisi2, zero_extendhisi2): Use 'mcu_have_movw'. | |
1187 | (call_insn, call_value_insn): Use 'call_insn' and __AVR_HAVE_MOVW__. | |
1188 | * config/avr/t-avr(MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Add avr25. | |
1189 | (MULTILIB_MATCHES): Add attiny13, attiny2313, attiny24, attiny44, | |
5656a184 | 1190 | attiny84, attiny25, attiny45, attiny85, attiny261, attiny461, |
4301ec4f AS |
1191 | attiny861 and at86rf401 devices. |
1192 | ||
40327e03 JZ |
1193 | 2006-06-18 Jie Zhang <jie.zhang@analog.com> |
1194 | ||
1195 | * config/bfin/bfin.c (MAX_LOOP_LENGTH): Define to be 2042 instead | |
1196 | of 4096. | |
1197 | ||
c3cb54c6 KB |
1198 | 2006-06-17 Karl Berry <karl@gnu.org> |
1199 | ||
1200 | * doc/cpp.texi, doc/cppinternals.texi, doc/gcc.texi, | |
1201 | doc/gccint.texi, doc/install.texi (@dircategory): Use | |
1202 | "Software development" instead of "Programming", following | |
1203 | the Free Software Directory. | |
1204 | ||
31ebc801 AO |
1205 | 2006-06-17 Alexandre Oliva <aoliva@redhat.com> |
1206 | ||
1207 | * config/i386/i386.c (legitimate_tls_address) | |
1208 | <TARGET_GNU2_TLS>: Add tp after DTPOFF. | |
1209 | * config/i386/i386.md (*tls_dynamic_gnu2_combine_32): Adjust. | |
1210 | (*tls_dynamic_gnu2_combine_64): Likewise. | |
1211 | ||
1af8dcbf RG |
1212 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
1213 | ||
1214 | PR middle-end/27116 | |
1215 | * fold-const.c (negate_expr_p): Do not introduce undefined | |
1216 | overflow in negating INTEGER_CSTs. | |
1217 | (fold_negate_expr): Rename from negate_expr. Revert last | |
1218 | change for folding BIT_NOT_EXPR. Change semantics to | |
1219 | return NULL_TREE for non-simplified negations. Do not | |
1220 | strip type conversions and unify type handling. | |
1221 | (negate_expr): New function, wrap around fold_negate_expr | |
1222 | but ensure building a tree always. Strip type conversions | |
1223 | here, fold to result type. | |
1224 | (fold_unary): Use fold_negate_expr for folding NEGATE_EXPR. | |
1225 | ||
2d0df1f9 RS |
1226 | 2006-06-16 Roger Sayle <roger@eyesopen.com> |
1227 | ||
1228 | PR middle-end/27802 | |
1229 | * reg-stack.c (subst_stack_regs): Handle noreturn function calls | |
1230 | that (would) return their results in stack registers. | |
1231 | ||
47392a21 MM |
1232 | 2006-06-16 Michael Matz <matz@suse.de> |
1233 | Richard Guenther <rguenther@suse.de> | |
1234 | ||
1235 | * fold-const.c (fold_truthop): Only return new tree node if | |
1236 | we canonicalized something. | |
1237 | ||
55dea919 RG |
1238 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
1239 | ||
1240 | * function.h (enum function_frequency): Move declaration | |
1241 | out of struct function. | |
1242 | (struct function): Move bool fields and the enum to the bitfield | |
1243 | section. Reorder elements to avoid padding. Remove unused | |
1244 | fields left over from the RTL inliner removal. | |
1245 | * function.c (free_after_compilation): Do not zero removed fields. | |
1246 | * Makefile.in (ipa-reference.o): Add $(FUNCTION_H) dependency. | |
1247 | (ipa-type-escape.o): Likewise. | |
1248 | ||
b4e19405 RG |
1249 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
1250 | ||
1251 | * cgraph.h (struct cgraph_local_info): Turn bool elements | |
1252 | into a bitfield. | |
1253 | (struct cgraph_node): Likewise. | |
1254 | (struct cgraph_varpool_node): Likewise. | |
1255 | ||
d817ed3b RG |
1256 | 2006-06-15 Richard Guenther <rguenther@suse.de> |
1257 | ||
1258 | * fold-const.c (fold_truth_not_expr): Rename from | |
1259 | invert_truthvalue. Give it fold_* semantics to avoid | |
1260 | generating garbage. | |
1261 | (invert_truthvalue): New function. Wrapper around | |
1262 | fold_truth_not_expr. | |
1263 | (optimize_minmax_comparison): Avoid creating garbage. | |
1264 | (fold_unary): Use fold_truth_not_expr for folding | |
1265 | TRUTH_NOT_EXPR. | |
1266 | (fold_ternary): Replace uses of invert_truthvalue with | |
1267 | fold_truth_not_expr where applicable. | |
1268 | * tree.h (fold_truth_not_expr): Prototype. | |
1269 | ||
5d35c171 RG |
1270 | 2006-06-16 Richard Guenther <rguenther@suse.de> |
1271 | ||
1272 | PR tree-optimization/27781 | |
1273 | * Makefile.in (ipa-pure-const.o): Add $(TARGET_H) dependency. | |
1274 | * ipa-pure-const.c (target.h): Include. | |
1275 | (analyze_function): Do not analyze functions that do not | |
1276 | bind locally. | |
1277 | ||
82460c75 | 1278 | 2006-06-15 Andrew MacLeod <amacleod@redhat.com> |
5656a184 | 1279 | |
82460c75 AM |
1280 | PR middle-end/27793 |
1281 | * tree-dfa.c (referenced_vars_dup_list): Remove. | |
1282 | (find_referenced_vars): Remove assert. | |
1283 | (referenced_var_check_and_insert): Replace dup list with assert. | |
1284 | * tree-ssa.c (delete_tree_ssa): Remove dup list processing. | |
1285 | * tree-flow.h (referenced_vars_dup_list): Remove extern decl. | |
1286 | ||
4f6c9110 RG |
1287 | 2006-06-15 Richard Guenther <rguenther@suse.de> |
1288 | ||
1289 | * tree-ssa-structalias.c (alias_get_name): Avoid creating | |
1290 | extra unused identifiers if not dumping. | |
1291 | (create_variable_info_for): Likewise. | |
1292 | ||
0ad1d5a1 ZD |
1293 | 2006-06-15 Zdenek Dvorak <dvorakz@suse.cz> |
1294 | ||
1295 | * tree-ssa-loop-niter.c (implies_nonnegative_p): New function. | |
1296 | (derive_constant_upper_bound): Derive more precise upper bound in | |
1297 | common cases. Return type changed to double_int. | |
1298 | (record_estimate): Reflect the changed return type of | |
1299 | derive_constant_upper_bound. | |
1300 | * double-int.c (double_int_zext, double_int_sext): Fix. | |
1301 | ||
ec6c7392 PB |
1302 | 2006-06-15 Paolo Bonzini <bonzini@gnu.org> |
1303 | ||
1304 | * configure.ac (CFLAGS): Get them from the toplevel or from the | |
1305 | configure invocation. | |
1306 | * configure: Regenerate. | |
1307 | * Makefile.in (CFLAGS): Substitute value provided by configure. | |
1308 | ||
fe89d797 MM |
1309 | 2006-06-14 Mark Mitchell <mark@codesourcery.com> |
1310 | ||
1311 | PR c++/26559 | |
1312 | * c-common.h (c_finish_omp_atomic): Adjust declaration. | |
1313 | * c-omp.c (c_finish_omp_atomic): Return the expression to perform, | |
1314 | rather than calling add_stmt on it. | |
1315 | * c-parser.c (c_parser_omp_atomic): Adjust accordingly. | |
1316 | ||
184f4c56 AK |
1317 | 2006-06-14 Andreas Krebbel <krebbel1@de.ibm.com> |
1318 | ||
1319 | PR middle-end/27959 | |
1320 | * reload1.c (reload): Remove registers returned by update_eliminables | |
1321 | from used_spill_regs. | |
1322 | ||
e3d437c0 DD |
1323 | 2006-06-13 DJ Delorie <dj@redhat.com> |
1324 | ||
1325 | * config/m32c/muldiv.md (mulpsi3): Expect arbitrary constants. | |
1326 | ||
9288b845 CD |
1327 | 2006-06-13 Carlos O'Donell <carlos@codesourcery.com> |
1328 | ||
1329 | * Makefile.in: Define HTMLS_BUILD, HTMLS_INSTALL, | |
1330 | html__strip_dir, html__mkdir_p. Enhance install-html target. | |
5656a184 | 1331 | * configure.ac: AC_SUBST datarootdir, docdir and htmldir. |
9288b845 CD |
1332 | * configure: Regenerate. |
1333 | ||
6b4e9576 FJ |
1334 | 2006-06-13 Fariborz Jahanian <fjahanian@apple.com> |
1335 | ||
5656a184 | 1336 | * fold-const.c (fold_cond_expr_with_comparison): Check for |
6b4e9576 FJ |
1337 | Objective-C++ as language in deciding COND_EXPR transformation. |
1338 | ||
31b6f0ae R |
1339 | 2006-06-06 J"orn Rennecke <joern.rennecke@st.com> |
1340 | ||
1341 | PR target/28014: | |
1342 | * config/sh/t-sh (LIB1ASMFUNCS): Add _udiv_qrnnd16 | |
1343 | * config/sh/sh.c (print_operand): Add !SHMEDIA functionality to 'M'. | |
1344 | * config/sh/lib1funcs.h (SL, SL1): Define. | |
1345 | * config/sh/lib1funcs.asm (__udiv_qrnnd16): New hidden function. | |
1346 | * longlong.h (__sh__): Define umul_ppmm, udiv_qrnnd and sub_ddmmss. | |
1347 | * config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): New rule. | |
1348 | (OBJS_Os_4_200): New variable. | |
1349 | ($(T)libgcc-Os-4-200.a): Use it. | |
1350 | * sh.md (udivsi3): For TARGET_DIVIDE_CALL_TABLE, avoid function call | |
1351 | when dividing 1 and/or by 0. | |
1352 | ||
de4fb767 RS |
1353 | 2006-06-13 Roger Sayle <roger@eyesopen.com> |
1354 | ||
1355 | * configure.ac (HAS_MCONTEXT_T_UNDERSCORES): Include <sys/signal.h> | |
1356 | before <ucontext.h> to define sigset_t required by <sys/ucontext.h>. | |
1357 | * configure: Regenerate. | |
1358 | ||
f0f1c408 JZ |
1359 | 2006-06-13 Jie Zhang <jie.zhang@analog.com> |
1360 | ||
1361 | * config/bfin/bfin.c (bfin_reorg_loops): Only call recog_memoized () | |
1362 | for real instruction. | |
1363 | ||
cd8d4e24 MK |
1364 | 2006-06-13 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
1365 | ||
1366 | PR middle-end/26807 | |
1367 | * haifa-sched.c (check_cfg): Handle special case. | |
1368 | ||
5123ad09 EB |
1369 | 2006-06-13 Eric Botcazou <ebotcazou@adacore.com> |
1370 | ||
1371 | PR debug/26754 | |
1372 | * gimplify.c (declare_tmp_vars): Rename into declare_vars. | |
1373 | Add debug_info parameter. Chain the vars to the BLOCK instead | |
1374 | of the BIND_EXPR if debug info are requested for them. | |
1375 | (pop_gimplify_context): Adjust for above change. | |
1376 | (gimple_add_tmp_var): Likewise. | |
1377 | * tree-gimple.h (declare_tmp_vars): Rename into declare_vars. | |
1378 | Add bool parameter. | |
1379 | * tree-nested.c (convert_nonlocal_reference): Adjust for above change. | |
1380 | (convert_local_reference): Likewise. | |
1381 | (get_local_debug_decl): Set DECL_IGNORED_P on the original variable. | |
1382 | (finalize_nesting_tree_1): Request that debug info be emitted | |
1383 | for debug_var_chain. | |
1384 | ||
6f2ba390 MK |
1385 | 2006-06-13 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
1386 | ||
1387 | * haifa-sched.c (unlink_other_notes, unlink_line_notes): Fix the patch | |
1388 | for PR target/27863. | |
1389 | ||
cda5bf39 RG |
1390 | 2006-06-13 Richard Guenther <rguenther@suse.de> |
1391 | ||
1392 | PR middle-end/27536 | |
1393 | * except.c (output_ttype): Expand type with EXPAND_INITIALIZER. | |
1394 | ||
8e85fd14 RG |
1395 | 2006-06-13 Richard Guenther <rguenther@suse.de> |
1396 | ||
1397 | PR tree-optimization/27830 | |
1398 | * tree-inline.c (copy_body_r): For copying the operand | |
1399 | of an ADDR_EXPR make sure to fold &* afterwards. | |
1400 | ||
02a5eac4 EB |
1401 | 2006-06-12 Eric Botcazou <ebotcazou@adacore.com> |
1402 | ||
1403 | * gimplify.c (gimplify_expr): Treat VIEW_CONVERT_EXPR like other | |
1404 | lvalues in the fb_none case with side-effects. | |
1405 | ||
c90b053b KH |
1406 | 2006-06-12 Kazu Hirata <kazu@codesourcery.com> |
1407 | ||
1408 | * tree-flow.h: Remove the prototype for | |
1409 | compute_phi_arg_on_exit. | |
1410 | * tree-ssa-loop-ivopts.c (protect_loop_closed_ssa_form_use, | |
1411 | protect_loop_closed_ssa_form, compute_phi_arg_on_exit): | |
1412 | Remove. | |
1413 | ||
dda69cbf MS |
1414 | 2006-06-12 Mark Shinwell <shinwell@codesourcery.com> |
1415 | ||
1416 | * builtins.c (expand_builtin_return_addr): Only use | |
1417 | frame_pointer_rtx when count == 0 and we are expanding | |
1418 | __builtin_return_address. | |
1419 | ||
0901c5a3 FF |
1420 | 2006-06-12 Fred Fish <fnf@specifix.com> |
1421 | ||
1422 | * config/mips/mips.c (mips_file_start): Create special section | |
1423 | ".gcc_compiled_longXX" for o64 ABI as well as EABI. | |
1424 | ||
f7eb0dcd EC |
1425 | 2006-06-11 Eric Christopher <echristo@apple.com> |
1426 | ||
1427 | PR middle-end/27948 | |
1428 | * stor-layout.c (place_field): Remove check for | |
1429 | remaining_in_alignment when aligning at the end of a run. | |
1430 | ||
6bb7beac EC |
1431 | 2006-06-11 Eric Christopher <echristo@apple.com> |
1432 | ||
1433 | PR 27542 | |
1434 | * doc/extend.texi (Structure-Packing Pragmas): Document ms_struct | |
1435 | pragma. | |
1436 | ||
4119019b RS |
1437 | 2006-06-11 Roger Sayle <roger@eyesopen.com> |
1438 | ||
1439 | PR target/27858 | |
1440 | Revert incorrect fix for PR target/27158 | |
1441 | 2006-05-08 Roger Sayle <roger@eyesopen.com> | |
1442 | * reload.c (find_reloads_toplev): Only return the simplified SUBREG | |
1443 | of a reg_equiv_constant if the result is a legitimate constant. | |
1444 | ||
0972012c RS |
1445 | 2006-06-11 Roger Sayle <roger@eyesopen.com> |
1446 | ||
1447 | PR target/27158 | |
1448 | * config/rs6000/rs6000.c (const_vector_elt_as_int): New function to | |
1449 | extract a CONST_VECTOR element and interpret it as an integer. | |
1450 | (vspltis_constant): Use const_vector_elt_as_int instead of the | |
1451 | macro CONST_VECTOR_ELT in order to handle FP vector modes. | |
1452 | * config/rs6000/predicates.md (easy_vector_const): Consider | |
1453 | floating point ALTIVEC_VECTOR_MODEs via easy_altivec_constant. | |
1454 | ||
cb312376 KK |
1455 | 2006-06-11 Kaz Kojima <kkojima@gcc.gnu.org> |
1456 | ||
1457 | PR middle-end/27942 | |
1458 | * stor-layout.c (update_alignment_for_field): Don't add extra | |
1459 | alignment for packed non-bitfield fields in ms_bitfield_layout_p | |
1460 | code. | |
1461 | ||
53e95921 RC |
1462 | 2006-06-09 Ralf Corsepius <ralf.corsepius@rtems.org> |
1463 | ||
1464 | * config/mips/t-rtems: Add EL/EB multilib variants. | |
1465 | ||
71d0c100 MS |
1466 | 2006-06-09 Mike Stump <mrs@apple.com> |
1467 | ||
1468 | * c-typeck.c (c_begin_vm_scope): Fix file_scope processing. | |
1469 | ||
549fb079 DD |
1470 | 2006-06-09 David Daney <ddaney@avtrex.com> |
1471 | ||
1472 | * doc/install.texi: Add binutils version recommendation for mips-*-*. | |
1473 | ||
6c65d757 AK |
1474 | 2006-06-09 Andreas Krebbel <krebbel1@de.ibm.com> |
1475 | ||
1476 | * reload.c (find_reloads): Unset force_reload for 'X' constraint. | |
1477 | ||
96b2034b RG |
1478 | 2006-06-09 Richard Guenther <rguenther@suse.de> |
1479 | ||
1480 | PR tree-optimization/26998 | |
1481 | * tree-vrp.c (extract_range_from_unary_expr): For NEGATE_EXPR | |
1482 | of signed types, only TYPE_MIN_VALUE is special, but for both, | |
1483 | minimum and maximum value. Likewise VR_ANTI_RANGE is special | |
1484 | in this case, as is -fwrapv. | |
1485 | ||
23f99493 MS |
1486 | 2006-06-08 Mike Stump <mrs@apple.com> |
1487 | ||
1488 | PR target/26427 | |
1489 | * config/darwin.c (darwin_asm_output_anchor): Disable | |
1490 | -fsection-anchors on darwin for now. | |
1491 | * config/darwin.h (TARGET_ASM_OUTPUT_ANCHOR): Likewise. | |
1492 | * rs6000/rs6000.c (optimization_options): Likewise. | |
1493 | ||
118ed72a VR |
1494 | 2006-06-08 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
1495 | ||
1496 | PR target/27421 | |
1497 | * config/i386/i386.c (classify_argument): Skip fields with invalid | |
1498 | types in unions. | |
1499 | ||
524e3576 SB |
1500 | 2006-06-08 Steven Bosscher <steven@gcc.gnu.org> |
1501 | ||
1502 | * cse.c (flush_hash_table): Use VOIDmode to invalidate a REG. | |
1503 | (cse_insn): Likewise for the stack_pointer_rtx. | |
1504 | ||
14b41b5f RS |
1505 | 2006-06-08 Roger Sayle <roger@eyesopen.com> |
1506 | ||
1507 | * tree-ssa-dom.c (record_conditions): Only record "unordered" | |
1508 | conditions from floating point comparisons. | |
1509 | ||
33b881ca PB |
1510 | 2006-06-08 Paolo Bonzini <bonzini@gnu.org> |
1511 | ||
1512 | PR middle-end/27733 | |
1513 | * expmed.c (struct alg_hash_entry): Fix type of field T | |
1514 | to match synth_mult argument. | |
1515 | (NUM_ALG_HASH_ENTRIES): Make it bigger for 64-bit HOST_WIDE_INT. | |
1516 | ||
f70b22c9 MK |
1517 | 2006-06-08 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
1518 | ||
1519 | PR target/27863 | |
1520 | * haifa-sched.c (unlink_other_notes, unlink_line_notes): Update basic | |
1521 | block boundaries. | |
1522 | ||
960f80d1 RG |
1523 | 2006-06-08 Richard Guenther <rguenther@suse.de> |
1524 | ||
1525 | PR middle-end/27116 | |
1526 | * fold-const.c (negate_expr_p): We can negate BIT_NOT_EXPR | |
1527 | only, if overflow is defined and not trapping. | |
1528 | (negate_expr): Likewise. | |
1529 | ||
8e08deeb ZD |
1530 | 2006-06-07 Zdenek Dvorak <dvorakz@suse.cz> |
1531 | ||
1532 | PR tree-optimization/27872 | |
1533 | * tree-ssa-loop-manip.c (tree_unroll_loop): Set EDGE_IRREDUCIBLE_LOOP | |
1534 | flag on the new exit edge of the unrolled loop. | |
1535 | ||
136778e9 ZD |
1536 | 2006-06-07 Zdenek Dvorak <dvorakz@suse.cz> |
1537 | ||
1538 | PR rtl-optimization/26449 | |
1539 | * loop-invariant.c (move_invariant_reg): Fail if force_operand fails. | |
1540 | ||
4b5e2dbc AM |
1541 | 2006-06-07 Andrew MacLeod <amacleod@redhat.com> |
1542 | ||
1543 | PR middle-end/27793 | |
6bb7beac | 1544 | * tree-dfa.c (referenced_vars_dup_list): New. List of duplicate |
4b5e2dbc AM |
1545 | referenced_variables with matching DECL_UID's. |
1546 | (find_referenced_vars): Make sure duplicate list is empty to start. | |
1547 | (referenced_var_p): Remove. | |
6bb7beac | 1548 | (referenced_var_check_and_insert): Renamed from referenced_var_insert. |
4b5e2dbc AM |
1549 | Check if var is in the list, and add if needed. Update the duplicate |
1550 | list if a different var is in the list with the same DECL_UID. | |
1551 | (add_referenced_var): Call routine to check and insert. | |
1552 | * tree-ssa.c (delete_tree_ssa): Clear var_ann's on duplicates. | |
1553 | * tree-flow.h (referenced_vars_dup_list): External declaration. | |
1554 | ||
dd286892 FF |
1555 | 2006-06-07 Fred Fish <fnf@specifix.com> |
1556 | ||
1557 | * config/mips/t-elf (MULTILIB_MATCHES): Combine two entries | |
1558 | into single entry. | |
1559 | ||
190e9534 PB |
1560 | 2006-06-07 Paolo Bonzini <bonzini@gnu.org> |
1561 | ||
1562 | PR target/27390 | |
1563 | * reg-stack.c (subst_stack_regs_pat): Reorder resetting of | |
1564 | the imaginary and real parts of a clobbered register. | |
1565 | Emit insn to set the imaginary part. | |
1566 | ||
7c78582a PL |
1567 | 2006-06-06 Peter Lemieszewski <lemie@us.ibm.com> |
1568 | ||
1569 | * config/s390/t-tpf (LIB2ADDEH): Include unwind-dw2-fde-glibc.c | |
1570 | in lieu of unwind-dw2-fde.c. | |
1571 | ||
33815e0c FXC |
1572 | 2006-06-06 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
1573 | ||
1574 | * config/i386/mingw32.h (GOMP_SELF_SPECS): Define. | |
1575 | ||
8cf0db2b UW |
1576 | 2006-06-06 Ulrich Weigand <uweigand@de.ibm.com> |
1577 | ||
1578 | PR target/27842 | |
1579 | * config/rs6000/altivec.md (UNSPEC_VSLW): Remove. | |
1580 | ("altivec_vspltisw_v4sf", "altivec_vslw_v4sf"): Remove. | |
1581 | ("mulv4sf3", "absv4sf3", "negv4sf3"): Adapt users to use | |
1582 | V4SImode temporaries and operations instead. | |
1583 | ||
406af897 JM |
1584 | 2006-06-06 Joseph S. Myers <joseph@codesourcery.com> |
1585 | ||
1586 | * config/mips/t-linux64 (tp-bit.c): Append to tp-bit.c, not | |
1587 | dp-bit.c. | |
1588 | ||
22482f74 MS |
1589 | 2006-06-06 Mike Stump <mrs@apple.com> |
1590 | ||
1591 | * Makefile.in: Rename to htmldir to build_htmldir to avoid | |
1592 | installing during build. | |
1593 | ||
bb83aa4b MK |
1594 | 2006-06-06 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
1595 | ||
1596 | * params.def (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS): Change default | |
1597 | value to 0. | |
1598 | * doc/invoke.texi (max-sched-extend-regions-iters): Document. | |
1599 | * config/ia64/ia64.c (params.h): New header. | |
1600 | (ia64_optimization_options): New function to adjust parameters. | |
1601 | * config/ia64/ia64-protos.h (ia64_optimization_options): New prototype. | |
1602 | * config/ia64/ia64.h (OPTIMIZATION_OPTIONS): New macro. | |
1603 | * config/ia64/t-ia64 (ia64.o): Add dependence from params.h . | |
1604 | ||
0c397f9c KH |
1605 | 2006-06-05 Kazu Hirata <kazu@codesourcery.com> |
1606 | ||
1607 | * stor-layout.c (debug_rli): Fix a typo in a debug message. | |
1608 | ||
1f4a2e84 SE |
1609 | 2006-06-05 Steve Ellcey <sje@cup.hp.com> |
1610 | ||
1611 | PR target/27051 | |
1612 | * config/ia64/ia64.c (ia64_select_rtx_section): Check TARGET_NO_SDATA. | |
1613 | ||
a8b28492 DN |
1614 | 2006-06-05 Dorit Nuzman <dorit@il.ibm.com> |
1615 | Victor Kaplansky <victork@il.ibm.com> | |
1616 | ||
1617 | PR tree-optimization/26360 | |
1618 | * tree-vectorizer.c (destroy_loop_vec_info): Remove (dead) pattern | |
1619 | stmts. | |
1620 | ||
ffbf5f7f RS |
1621 | 2006-06-04 Roger Sayle <roger@eyesopen.com> |
1622 | Andrew Pinski <pinskia@physics.uc.edu> | |
1623 | ||
1624 | PR middle-end/27382 | |
1625 | * c-common.c (c_common_truthvalue_conversion): Explicitly check | |
1626 | for LABEL_DECL before calling DECL_WEAK. | |
1627 | ||
1628 | PR c/27150 | |
1629 | * c-typeck.c (build_binary_op): Likewise, explicitly check for | |
1630 | LABEL_DECL and PARM_DECL. | |
1631 | ||
5c076987 JM |
1632 | 2006-06-05 Joseph S. Myers <joseph@codesourcery.com> |
1633 | ||
1634 | PR c/25161 | |
1635 | PR c/27020 | |
1636 | * c-decl.c (grokdeclarator): Disallow variably modified types at | |
1637 | file scope. Avoid marking shared array type of constant size as | |
1638 | VLA. | |
1639 | ||
545b7d8c VR |
1640 | 2006-06-04 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
1641 | ||
1642 | PR c++/27601 | |
1643 | * c-common.c (fold_offsetof_1): Handle static members. | |
1644 | ||
0ac11108 EC |
1645 | 2006-06-04 Eric Christopher <echristo@apple.com> |
1646 | ||
1647 | * stor-layout.c (start_record_layout): Initialize remaining_in_alignment. | |
1648 | (debug_rli): Output value for remaining_in_alignment. | |
1649 | (update_alignment_for_field): Unconditionalize | |
1650 | ms_bitfield_layout_p code. Handle non-bitfield fields. Remove | |
1651 | extra alignment code. | |
1652 | (place_field): Don't realign if ms_bitfield_layout_p. Unconditionalize | |
1653 | ms_bitfield_layout_p code. Rewrite handling of structure fields. | |
1654 | * tree.h (record_layout_info_s): Remove prev_packed. | |
1655 | * doc/extend.texi (ms_struct): Add documentation of format. | |
1656 | ||
63b48197 MS |
1657 | 2006-06-04 Mark Shinwell <shinwell@codesourcery.com> |
1658 | ||
1659 | * tree.h: Declare folding_initializer. | |
1660 | * builtins.c (fold_builtin_constant_p): Give definite answer | |
1661 | if folding inside an initializer. | |
1662 | * fold-const.c: Define folding_initializer. | |
1663 | (START_FOLD_INIT): Save and then set folding_initializer. | |
1664 | (END_FOLD_INIT): Restore folding_initializer. | |
1665 | ||
7ec434b8 RG |
1666 | 2006-06-04 Richard Guenther <rguenther@suse.de> |
1667 | ||
1668 | PR tree-optimization/27039 | |
1669 | * fold-const.c (fold_comparison): Handle pointer comparison | |
1670 | again for all comparison codes. Compare offsets in signed | |
1671 | size type. | |
1672 | (fold_binary): Move code from here. | |
1673 | ||
94e76332 RS |
1674 | 2006-06-03 Roger Sayle <roger@eyesopen.com> |
1675 | ||
1676 | PR target/26223 | |
1677 | * config/i386/i386.c (construct_container): Split static issued_error | |
1678 | flag into issued_sse_arg_error, issued_sse_ret_error and | |
1679 | issued_x87_ret_error. Issue a daignostic if the x86-64 ABI | |
1680 | requires the use of x87 registers and the user explicitly | |
1681 | specified the -mno-80387 command line option. | |
1682 | ||
4f6d8cc8 GK |
1683 | 2006-06-02 Geoffrey Keating <geoffk@apple.com> |
1684 | ||
1685 | * config/rs6000/host-darwin.c (sigaltstack): Protect prototype with | |
1686 | HAVE_DECL_SIGALTSTACK. | |
1687 | (MC_FLD): New. | |
1688 | (segv_handler): Use MC_FLD. | |
1689 | * configure.ac: Check for a sigaltstack declaration. | |
1690 | Compute HAS_MCONTEXT_T_UNDERSCORES on Darwin. | |
1691 | * configure: Regenerate. | |
1692 | * config.in: Regenerate. | |
1693 | ||
af33a0c0 R |
1694 | 2006-06-03 J"orn Rennecke <joern.rennecke@st.com> |
1695 | ||
1696 | PR other/27850 | |
1697 | * Makefile.in (stmp-fixinc): Fix typo. | |
1698 | ||
9734ebaf RS |
1699 | 2006-06-02 Roger Sayle <roger@eyesopen.com> |
1700 | ||
1701 | * fold-const.c (fold_unary) <CONJ_EXPR>: Ensure folded expressions | |
1702 | are type correct. Clean-up. | |
1703 | <REALPART_EXPR>: Likewise. Optimize creal(~z) as creal(z). | |
1704 | <IMAGPART_EXPR>: Likewise. Optimize cimag(~z) as -cimag(z). | |
1705 | ||
df5c71ac DD |
1706 | 2006-06-01 DJ Delorie <dj@redhat.com> |
1707 | ||
1708 | * config/v850/v850.h (ASM_OUTPUT_ADDR_DIFF_ELT): Disabled the | |
1709 | shift, as we've disabled the "switch" insn that needs it. | |
1710 | ||
112598f4 PB |
1711 | 2006-06-01 Per Bothner <bothner@bothner.com> |
1712 | ||
1713 | Suppress extra '#1 <built-in> or '#1 <command line>' on -dD output. | |
1714 | * c-opts.c (finish_options): Use internal line 0 for <command-line>. | |
1715 | * c-ppoutput.c (cb_define): Don't increment line 0. | |
1716 | ||
e118597e PS |
1717 | 2006-06-01 Pete Steinmetz <steinmtz@us.ibm.com> |
1718 | ||
1719 | * doc/invoke.texi: Add cpu_type power6. | |
1720 | * config.gcc: Add cpu_type power6. | |
1721 | * config/rs6000/rs6000.c (rs6000_override_options): Alias power6 | |
1722 | to power5+ with Altivec. | |
1723 | * config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6. | |
1724 | * config/rs6000/rs6000.h (ASM_CPU_SPEC): Add power6. | |
1725 | ||
d3f27077 AS |
1726 | 2006-05-30 Anatoly Sokolov <aesok@post.ru> |
1727 | ||
1728 | * config/avr/avr.h (SET_ASM_OP): Define. | |
1729 | ||
aab26080 KH |
1730 | 2006-06-01 Kazu Hirata <kazu@codesourcery.com> |
1731 | ||
1732 | * config/bfin/bfin.c: Fix comment typos. | |
1733 | ||
f5c3bb4b PB |
1734 | 2006-06-01 Paolo Bonzini <bonzini@gnu.org> |
1735 | ||
1736 | PR 25453 | |
1737 | * doc/install.texi: Document --enable-bootstrap and | |
1738 | --disable-bootstrap. | |
1739 | ||
02809848 PB |
1740 | 2006-06-01 Paolo Bonzini <bonzini@gnu.org> |
1741 | ||
1742 | * doc/install.texi: Document that InfoZIP can replace jar. | |
1743 | ||
86ce1825 RS |
1744 | 2006-05-31 Roger Sayle <roger@eyesopen.com> |
1745 | ||
1746 | * config/i386/i386.c (ix86_expand_fp_absneg_operator): When SSE | |
1747 | isn't available, directly generate the simpler x87 patterns without | |
1748 | the (use (const_int 0)). | |
1749 | * config/i386/i386.md (*negsf2_1): Enable pre-reload if the SSE | |
1750 | implementation isn't available. | |
1751 | (*negdf2_1): Likewise. | |
1752 | (*negxf2_1): XF mode negation is always done using the x87. | |
1753 | (*abssf2_1, *absdf2_1, *absxf2_1): Likewise^3 for fabs. | |
1754 | ||
4f31c7ec RS |
1755 | 2006-05-31 Roger Sayle <roger@eyesopen.com> |
1756 | ||
1757 | * builtins.c (fold_builtin_cabs): Delete prototype. Require an | |
1758 | additional FNDECL argument. Optimize cabs(-z) and cabs(~z) as | |
1759 | cabs(z). | |
1760 | (fold_builtin_decl) <BUILT_IN_CABS>: Update fold_builtin_cabs call. | |
1761 | ||
b03149e1 JZ |
1762 | 2006-05-31 Jie Zhang <jie.zhang@analog.com> |
1763 | ||
1764 | * config/bfin/bfin-protos.h (bfin_hardware_loop): Declare. | |
1765 | * config/bfin/bfin.c (basic-block.h): Include. | |
1766 | (struct machine_function): New. | |
1767 | (bfin_init_machine_status): New. | |
1768 | (override_options): Initialize init_machine_status. | |
1769 | (bfin_hardware_loop): New. | |
1770 | (MAX_LOOP_DEPTH, MAX_LOOP_LENGTH): Define. | |
1771 | (DEF_VEC_P (loop_info)): New. | |
1772 | (DEF_VEC_ALLOC_P (loop_info,heap)): New. | |
1773 | (struct loop_info): New. | |
1774 | (loop_info): New typedef. | |
1775 | (struct loop_work): New. | |
1776 | (loop_work): New typedef. | |
1777 | (DEF_VEC_O (loop_work)): New. | |
1778 | (DEF_VEC_ALLOC_O (loop_work,heap)): New. | |
1779 | (bfin_dump_loops): New. | |
1780 | (bfin_bb_in_loop): New. | |
1781 | (bfin_scan_loop): New. | |
1782 | (bfin_optimize_loop): New. | |
1783 | (bfin_reorg_loops): New. | |
1784 | (bfin_reorg): Use bfin_reorg_loops. | |
1785 | * config/bfin/bfin.h (FIRST_PSEUDO_REGISTER): Adjust for adding | |
1786 | loop registers. | |
1787 | (I_REGNO_P): Simplify. | |
1788 | (DP_REGNO_P, DPREG_P): New macros. | |
1789 | (REGISTER_NAMES, FIXED_REGISTERS, CALL_USED_REGISTERS, | |
1790 | REG_ALLOC_ORDER): Add LT0, LT1, LC0, LC1, LB0, LB1. | |
1791 | (enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): | |
1792 | Add LT_REGS, LC_REGS, LB_REGS. | |
1793 | (REG_CLASS_FROM_LETTER): Add 't' for LT_REGS, 'k' for LC_REGS, | |
1794 | 'l' for LB_REGS. | |
1795 | (REGNO_REG_CLASS): Deal with loop registers. | |
1796 | * config/bfin/bfin.md: Add comment for 't', 'k', 'l' constraint | |
1797 | letters. | |
1798 | (REG_LT0, REG_LT1, REG_LC0, REG_LC1, REG_LB0, REG_LB1): | |
1799 | New constants for loop registers. | |
1800 | (UNSPEC_LSETUP_END): New. | |
1801 | (seq_insns): New define_attr. Set it for appropriate insns. | |
1802 | (movsi_insn): Add alternatives for move from/to | |
1803 | loop count registers. | |
1804 | (doloop_end): New define_expand. | |
1805 | (loop_end): New define_insn. | |
1806 | (define_split for bad doloop_end): New. | |
1807 | (lsetup_with_autoinit): New define_insn. | |
1808 | (lsetup_without_autoinit): New define_insn. | |
1809 | (rep_movsi, rep_movhi): Clobber LT1, LC1, LB1. | |
1810 | * config/bfin/predicates.md (lc_register_operand): New. | |
1811 | (lt_register_operand): New. | |
1812 | (lb_register_operand): New. | |
1813 | (nondp_register_operand): New. | |
1814 | (nondp_reg_or_memory_operand): New. | |
1815 | * doc/md.texi: Document Blackfin new 't', 'k', 'l' constraint letters. | |
1816 | ||
54aefc36 JZ |
1817 | 2006-05-31 Jie Zhang <jie.zhang@analog.com> |
1818 | ||
1819 | * config/bfin/bfin.c (bfin_delegitimize_address): New. | |
1820 | (TARGET_DELEGITIMIZE_ADDRESS): Define. | |
1821 | ||
5c3c3683 DJ |
1822 | 2006-05-31 Daniel Jacobowitz <dan@codesourcery.com> |
1823 | ||
1824 | * Makefile.in (CATALOGS): Add po/ prefix. | |
1825 | * configure: Regenerated. | |
1826 | ||
beed32b8 RE |
1827 | 2006-05-31 Richard Earnshaw <richard.earnshaw@arm.com> |
1828 | ||
4fe56d83 | 1829 | PR target/27829 |
beed32b8 RE |
1830 | * arm.c (arm_print_operand case 'S'): Validate that the operand is |
1831 | a shift operand before calling shift_op. Avoid redundant call of | |
1832 | shift_op. | |
1833 | ||
9cb96754 N |
1834 | 2006-05-30 Naveen.H.S <naveenh@kpitcummins.com> |
1835 | DJ Delorie <dj@redhat.com> | |
1836 | ||
1837 | * config/m32c/m32c.c (m32c_expand_insv): Check that the value | |
1838 | we're inserting is a singlt-bit constant. | |
1839 | ||
e40122f0 RS |
1840 | 2006-05-30 Roger Sayle <roger@eyesopen.com> |
1841 | ||
1842 | * simplify-rtx.c (simplify_binary_operation_1) <LSHIFTRT>: Cast | |
1843 | width to HOST_WIDE_INT to avoid comparison warnings on some targets. | |
1844 | ||
99b25753 RS |
1845 | 2006-05-30 Roger Sayle <roger@eyesopen.com> |
1846 | ||
1847 | PR tree-optimization/23452 | |
1848 | * fold-const.c (fold_mult_zconjz): New subroutine of fold_binary, | |
1849 | to optimize z * conj(z) as realpart(z)^2 + imagpart(z)^2. | |
1850 | (fold_binary) <MULT_EXPR>: Call fold_mult_zconjz for integral | |
1851 | complex values and with -ffast-math for FP complex values. | |
1852 | ||
c98662e0 KH |
1853 | 2006-05-30 Kazu Hirata <kazu@codesourcery.com> |
1854 | ||
1855 | * c-common.h: Remove the prototype for yyparse. | |
1856 | * rtl.h: Remove the prototype for init_loop. | |
1857 | ||
67e0a632 AK |
1858 | 2006-05-30 Andreas Krebbel <krebbel1@de.ibm.com> |
1859 | ||
1860 | * cse.c (validate_canon_reg, cse_insn): Don't change insns without | |
1861 | calling recog. | |
1862 | ||
70233f37 RS |
1863 | 2006-05-30 Roger Sayle <roger@eyesopen.com> |
1864 | ||
1865 | * simplify-rtx.c (simplify_binary_operation): Unfactor the shift | |
1866 | and rotate cases. | |
1867 | <LSHIFTRT>: Optimize (lshiftrt (clz X) C) as (eq X 0) where C is | |
1868 | log2(GET_MODE_BITSIZE(X)) on targets with the appropriate semantics. | |
1869 | ||
d117b270 DM |
1870 | 2006-05-30 Dirk Mueller <dmueller@suse.de> |
1871 | ||
1872 | PR c/27273 | |
1873 | * c-common.c (convert_and_check): Only track TREE_CONSTANT_OVERFLOW | |
1874 | for CONSTANT_CLASS_P expresisons. | |
1875 | ||
16464cc1 VR |
1876 | 2006-05-30 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
1877 | ||
1878 | PR c/27718 | |
1879 | * c-typeck.c (c_expr_sizeof_type): Handle invalid types. | |
1880 | ||
d91d2db7 ZD |
1881 | 2006-05-30 Zdenek Dvorak <dvorakz@suse.cz> |
1882 | ||
1883 | PR tree-optimization/27779 | |
1884 | * tree-data-ref.c (analyze_siv_subscript_cst_affine): Use | |
1885 | initial_condition instead of CHREC_LEFT. | |
1886 | ||
6a728a2d SB |
1887 | 2006-05-30 Steven Bosscher <stevenb.gcc@gmail.com> |
1888 | ||
1889 | * config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Fix type of begin_label. | |
1890 | * config/m32r/initfini.c (__do_global_dtors, __do_global_ctors): | |
1891 | Make prototypes ISO C90. | |
1892 | ||
375bc622 | 1893 | 2006-05-30 Mircea Namolaru <namolaru@il.ibm.com> |
d91d2db7 | 1894 | Leehod Baruch <leehod.baruch@weizmann.ac.il> |
375bc622 | 1895 | |
d91d2db7 ZD |
1896 | * see.c (see_analyze_one_def): Correct check. |
1897 | (see_get_extension_data): Check if extension is parallel. | |
1898 | (see_get_extension_reg): Likewise. | |
375bc622 | 1899 | |
55b2de75 UB |
1900 | 2006-05-30 Uros Bizjak <uros@kss-loka.si> |
1901 | ||
1902 | PR target/27790 | |
1903 | * config/i386/i386.c (ix86_expand_int_vcond): Force cop0 | |
1904 | into register for (code == GTU). | |
1905 | ||
1753331b RS |
1906 | 2006-05-29 Roger Sayle <roger@eyesopen.com> |
1907 | ||
1908 | PR tree-optimization/24964 | |
1909 | * simplify-rtx.c (simplify_binary_operation_1): Add function comment. | |
1910 | <MULT>: Minor clean-up. Don't convert x*-1.0 into -x if we honor | |
1911 | signaling NaNs. Optimize -x*-x as x*x for all float modes, and | |
1912 | abs(x)*abs(x) as x*x for scalar floating point modes. | |
1913 | ||
06ac89d1 SP |
1914 | 2006-05-29 Sebastian Pop <pop@cri.ensmp.fr> |
1915 | ||
1916 | PR middle-end/27745 | |
1917 | * lambda-code.c (perfect_nestify): Don't copy statements | |
1918 | in the inner loop: move them to the inner loop header. | |
1919 | ||
96e36096 DN |
1920 | 2006-05-29 Diego Novillo <dnovillo@redhat.com> |
1921 | ||
1922 | PR 26237 | |
1923 | * c-tree.texi: Document OpenMP directives and clauses. | |
1924 | ||
eb5fa773 KH |
1925 | 2006-05-29 Kazu Hirata <kazu@codesourcery.com> |
1926 | ||
1927 | * varasm.c (globalize_decl): Fix indentation. | |
1928 | ||
a6719dc6 DN |
1929 | 2006-05-29 Diego Novillo <dnovillo@redhat.com> |
1930 | ||
1931 | PR 26242 | |
1932 | * doc/passes.texi: Add documentation for pass_vrp, pass_ipa_pta, | |
1933 | pass_fre, pass_store_ccp, pass_copy_prop, | |
1934 | pass_store_copy_prop, pass_merge_phi, pass_nrv, | |
1935 | pass_return_slot, pass_object_size, pass_lim, | |
1936 | pass_linear_transform, pass_empty_loop, pass_complete_unroll, | |
1937 | pass_loop_prefetch and pass_stdarg. | |
1938 | ||
6614f9f5 BS |
1939 | 2005-05-29 Bernd Schmidt <bernd.schmidt@analog.com> |
1940 | ||
1941 | * config/bfin/bfin.opt (mfdpic): New option. | |
1942 | * config/bfin/t-bfin-elf (EXTRA_PARTS): Add crtbeginS.o and crtendS.o. | |
1943 | (EXTRA_MULTILIB_PARTS): Likewise. | |
1944 | (CRTSTUFF_T_CFLAGS, TARGET_LIBGCC2_CFLAGS): Use -fpic. | |
1945 | (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS): Build one extra -mfdpic | |
1946 | multilib. | |
1947 | * config/bfin/elf.h (STARTFILE_SPEC): Don't link in crt0.o if -shared. | |
1948 | (CRT_CALL_STATIC_FUNCTION): New. | |
1949 | * config/bfin/uclinux.h (STARTFILE_SPEC): Don't link in crt0.o if | |
1950 | -shared. | |
1951 | (CRT_CALL_STATIC_FUNCTION): New. | |
1952 | * config/bfin/bfin.c (legitimize_pic_address): Now static. Handle | |
1953 | FD-PIC moves. | |
1954 | (n_pregs_to_save): PIC register doesn't need to be saved with FD-PIC. | |
1955 | (print_operand): Handle UNSPEC_MOVE_FDPIC and UNSPEC_FUNCDESC_GOT17M4. | |
1956 | (initialize_trampoline): Changed to handle FD-PIC code generation. | |
1957 | (expand_move): If TARGET_FDPIC, use emit_pic_move as needed. | |
1958 | (bfin_expand_call): Generate FD-PIC calls if TARGET_FDPIC. | |
1959 | (override_options): Disallow -mid-shared-library -mfdpic combination. | |
1960 | Can't do unaligned ops if FD-PIC. | |
1961 | Turn off flag_pic if trying to generate non-id-shared-library | |
1962 | non-fdpic code, since it's not supported. | |
1963 | (bfin_assemble_integer): New function. | |
1964 | (TARGET_ASM_INTEGER): Define. | |
1965 | * config/bfin/crti.s (__init, __fini): Save P3 on the stack if | |
1966 | __BFIN_FDPIC__. | |
1967 | * config/bfin/crtn.s: Restore them. | |
1968 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define __BFIN_FDPIC__ | |
1969 | if TARGET_FDPIC. | |
1970 | (DRIVER_SELF_SPECS, SUBTARGET_DRIVER_SELF_SPECS, | |
1971 | LINK_GCC_C_SEQUENCE_SPEC, ASM_SPEC, LINK_SPEC): New macros. | |
1972 | (FDPIC_FPTR_REGNO, FDPIC_REGNO, OUR_FDPIC_REG): New macros. | |
1973 | (TRAMPOLINE_SIZE, TRAMPOLINE_TEMPLATE): Adjust for FD-PIC. | |
1974 | (CONDITIONAL_REGISTER_USAGE): If TARGET_FDPIC, FDPIC_REGNO is | |
1975 | call-used. | |
1976 | (enum reg_class, REG_CLASS_CONTENTS, REG_CLASS_NAMES): Add | |
1977 | FDPIC_REGS and FDPIC_FPTR_REGS. | |
1978 | (REG_CLASS_FROM_LETTER): Use 'Z' and 'Y' for them. | |
1979 | * config/bfin/bfin.md (UNSPEC_MOVE_FDPIC, UNSPEC_FUNCDESC_GOT17M4, | |
1980 | UNSPEC_VOLATILE_LOAD_FUNCDESC): New constants. | |
1981 | (load_funcdescsi): New pattern. | |
1982 | (call_symbol_fdpic, sibcall_symbol_fdpic, call_value_symbol_fdpic, | |
1983 | sibcall_value_symbol_fdpic, call_insn_fdpic, sibcall_insn_fdpic, | |
1984 | call_value_insn_fdpic, sibcall_value_insn_fdpic): New patterns. | |
1985 | ||
db3edc20 KH |
1986 | 2006-05-29 Kazu Hirata <kazu@codesourcery.com> |
1987 | ||
1988 | * gcse.c, rtlanal.c: Remove obsolete comments associated with | |
1989 | loop.c. | |
1990 | ||
a9488625 KH |
1991 | * config/bfin/bfin.h (PARM_BOUNDRY, STACK_BOUNDRY): Remove. |
1992 | ||
152279c4 KH |
1993 | * tree-flow.h: Remove the prototype for add_type_alias. |
1994 | * tree-ssa-alias.c (add_type_alias): Remove. | |
1995 | ||
6fc0bb99 KH |
1996 | 2006-05-28 Kazu Hirata <kazu@codesourcery.com> |
1997 | ||
1998 | * cfgcleanup.c, cfgexpand.c, cgraphunit.c, config/arm/arm.c, | |
1999 | config/fr30/fr30.md, config/i386/i386-interix.h, | |
2000 | config/i386/i386.c, config/i386/i386.md, config/sh/superh.h, | |
2001 | config/sh/superh64.h, config/v850/v850.c, df-core.c, | |
2002 | df-problems.c, df.h, except.c, final.c, haifa-sched.c, | |
2003 | lambda-code.c, libgcc2.h, omp-low.c, optabs.c, predict.c, | |
2004 | reload.c, tree-flow.h, tree-outof-ssa.c, tree-ssa-dce.c, | |
2005 | tree-ssa-pre.c, tree-vect-transform.c: Fix comment typos. | |
2006 | Follow spelling conventions. | |
2007 | * doc/invoke.texi, doc/rtl.texi, doc/tm.texi: Fix typos. | |
2008 | Follow spelling conventions. | |
2009 | ||
9e030af9 RG |
2010 | 2006-05-27 Richard Guenther <rguenther@suse.de> |
2011 | ||
2012 | PR middle-end/27773 | |
2013 | * fold-const.c (fold_plusminus_mult_expr): Use fold_convert | |
2014 | to produce a constant of value 1 of generic type. | |
2015 | ||
46f5f7f2 DM |
2016 | 2006-05-27 Dirk Mueller <dmueller@suse.de> |
2017 | ||
2018 | * cgraphunit.c (decide_is_function_needed): Fix wrong | |
2019 | PR reference. | |
2020 | ||
7c7ce73a UW |
2021 | 2006-05-26 Ulrich Weigand <uweigand@de.ibm.com> |
2022 | ||
2023 | PR rtl-optimization/27661 | |
2024 | * reload.c (find_reloads): When reloading a VOIDmode constant | |
2025 | as address due to an EXTRA_MEMORY_CONSTRAINT or 'o' constraint, | |
2026 | use Pmode as mode of the reload register. | |
2027 | ||
c539d463 EB |
2028 | 2006-05-26 Eric Botcazou <ebotcazou@adacore.com> |
2029 | ||
2030 | * doc/invoke.texi (Optimize Options): Document that -funit-at-a-time | |
2031 | is enabled at -O and above. | |
2032 | ||
2033 | 2006-05-26 Steven Bosscher <steven@gcc.gnu.org> | |
807bdfb6 FH |
2034 | |
2035 | PR target/27571 | |
2036 | * config/alpha/alpha.c (alpha_does_function_need_gp): Skip jump | |
2037 | table data. | |
2038 | ||
e92fb501 MM |
2039 | 2006-05-25 Mark Mitchell <mark@codesourcery.com> |
2040 | ||
2041 | PR c++/20103 | |
2042 | * gimplify.c (gimplify_decl_expr): Do not call gimple_add_tmp_var | |
0ac11108 | 2043 | for anonymous variables explicitly declared by front ends. |
e92fb501 | 2044 | |
05a58ad4 EB |
2045 | 2006-05-25 Eric Botcazou <ebotcazou@adacore.com> |
2046 | ||
2047 | * tree-ssa-structalias.h (PTR_IS_REF_ALL): New macro. | |
2048 | (struct alias_info): Add new field ref_all_symbol_mem_tag. | |
2049 | * tree-ssa-alias.c (compute_may_aliases): If the program contains | |
2050 | ref-all pointers, run a finalization pass for them. | |
2051 | (compute_flow_insensitive_aliasing): Skip ref-all pointers. | |
2052 | (finalize_ref_all_pointers): New function. | |
2053 | (is_escape_site): Return ESCAPE_BAD_CAST for conversion from a | |
2054 | regular pointer type to a ref-all pointer type. | |
2055 | (get_tmt_for): Return the special memory tag for ref-all pointers. | |
2056 | ||
2d60e929 RG |
2057 | 2006-05-25 Richard Guenther <rguenther@suse.de> |
2058 | ||
2059 | PR middle-end/27743 | |
2060 | * fold-const.c (fold_binary): Do not look at the stripped | |
2061 | op0 for (a OP c1) OP c2 to a OP (c1+c2) shift optimization. | |
2062 | ||
9d6eefd5 EB |
2063 | 2006-05-25 Eric Botcazou <ebotcazou@adacore.com> |
2064 | ||
2065 | * tree-vrp.c (extract_range_from_assert): Set the range to VARYING | |
2066 | for LT and GT if the computed range is effectively empty. | |
2067 | ||
2068 | 2006-05-24 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | |
5877ca2e JDA |
2069 | |
2070 | PR target/27627 | |
2071 | * pa/pa-modes.def: Use mips_single_format, mips_double_format and | |
2072 | mips_quad_format formats instead of ieee_single_format, | |
2073 | ieee_double_format and ieee_quad_format formats, respectively. | |
2074 | ||
d7f5de76 ZD |
2075 | 2006-05-24 Zdenek Dvorak <dvorakz@suse.cz> |
2076 | ||
2077 | PR tree-optimization/27639 | |
2078 | PR tree-optimization/26719 | |
2079 | * tree-vrp.c (adjust_range_with_scev): Use scev_direction and adjust | |
2080 | call to scev_probably_wraps_p. | |
2081 | * tree-ssa-loop-niter.c (compare_trees, convert_step_widening, | |
2082 | used_in_pointer_arithmetic_p, convert_step): Removed. | |
2083 | (nowrap_type_p): New function. | |
2084 | (scev_probably_wraps_p): Rewritten. | |
2085 | * tree-scalar-evolution.c (instantiate_parameters_1): Do not call | |
2086 | chrec_convert if chrec_convert_aggressive might have been used. | |
2087 | * tree-chrec.c (convert_affine_scev, chrec_convert_1, | |
2088 | scev_direction): New functions. | |
2089 | (chrec_convert): Changed to a wrapper over chrec_convert_1. | |
2090 | * tree-ssa-loop-ivopts.c (idx_find_step): Use convert_affine_scev | |
2091 | instead of convert_step. | |
2092 | * tree-flow.h (scev_probably_wraps_p): Declaration changed. | |
2093 | (convert_step): Declaration removed. | |
2094 | (convert_affine_scev, nowrap_type_p, scev_direction): Declare. | |
2095 | ||
b11550aa KZ |
2096 | 2006-05-23 Kenneth Zadeck <zadeck@naturalbridge.com> |
2097 | ||
d7f5de76 | 2098 | * df-core.c: Added to header comments. |
b11550aa KZ |
2099 | * df.h (df_ru_bb_info, df_rd_bb_info, df_lr_bb_info, |
2100 | df_ur_bb_info, df_urec_bb_info): Added comments. | |
0ac11108 | 2101 | * df-problems (df_ref_bitmap, ru, rd, lr, ur, |
b11550aa | 2102 | urec, ri problems): Fixed header comments. |
0ac11108 | 2103 | (df_ru_transfer_function): Fixed in-out set dyslexia when copying |
b11550aa | 2104 | code from df_rd_transfer_function. |
0ac11108 | 2105 | |
b2a203c8 RS |
2106 | 2006-05-23 Richard Sandiford <richard@codesourcery.com> |
2107 | ||
2108 | * libgcc2.c (LIBGCC2_MAX_UNITS_PER_WORD): New macro. | |
2109 | (LIBGCC2_UNITS_PER_WORD): Use LIBGCC2_MAX_UNITS_PER_WORD rather than | |
2110 | MIN_UNITS_PER_WORD to set the default. Also use it in the guard. | |
2111 | ||
550ab0c6 JM |
2112 | 2006-05-23 Joseph Myers <joseph@codesourcery.com> |
2113 | ||
2114 | * expr.c (undefined_operand_subword_p): New. | |
2115 | (emit_move_multi_word): Do not generate move from undefined bits | |
2116 | of a paradoxical subreg. | |
2117 | ||
e5d7a520 RS |
2118 | 2006-05-23 Richard Sandiford <richard@codesourcery.com> |
2119 | ||
2120 | PR rtl-optimization/27736 | |
2121 | * combine.c (replaced_rhs_value): New variable. | |
2122 | (combine_instructions): Set it. | |
2123 | (distribute_notes): When distributing a note in replaced_rhs_insn, | |
2124 | check whether the value was used in replaced_rhs_value. | |
2125 | ||
f004ab02 AM |
2126 | 2006-05-23 Andrew MacLeod <amacleod@redhat.com> |
2127 | ||
2128 | PR c++/26757 | |
0ac11108 | 2129 | * tree-ssa-loop-im.c (determine_invariantness_stmt): Use |
f004ab02 AM |
2130 | add_referenced_var instead of add_referenced_tmp_var. |
2131 | * tree-complex.c (create_one_component_var): Use add_referenced_var. | |
2132 | * tree-ssa-loop-manip.c (create_iv, tree_unroll_loop): Use | |
2133 | add_referenced_var. | |
2134 | * tree-tailcall.c (adjust_accumulator_values, adjust_return_value, | |
2135 | tree_optimize_tail_calls_1): Use add_referenced_var. | |
2136 | * tree-ssa-loop-ivopts.c (create_new_iv): Use add_referenced_var. | |
2137 | * tree-ssa-alias.c (create_memory_tag, create_global_var, create_sft): | |
2138 | Use add_referenced_var. | |
2139 | * tree-if-conv.c (ifc_temp_var): Use add_referenced_var. | |
2140 | * gimplify.c (force_gimple_operand): Use add_referenced_var. | |
2141 | * tree-ssa-phiopt.c (conditional_replacement, abs_replacement): | |
2142 | Use add_referenced_var. | |
2143 | * tree-dfa.c (struct walk_state): Remove. | |
2144 | (find_referenced_vars): Remove walk state and vars_found hash table. | |
2145 | (make_rename_temp): Use add_referenced_var. | |
2146 | (find_vars_r): Pass less parameters to add_referenced_var. | |
2147 | (referenced_var_p): New. Is var in referenced_var hash table. | |
2148 | (referenced_var_insert): Assert var isn't already in hash table. | |
2149 | (add_referenced_var): Don't need walk_state parameter. Add var if it | |
2150 | isn't already in the hash table. | |
2151 | (add_referenced_tmp_var): Remove. | |
2152 | (find_new_referenced_vars_1): Use add_referenced_var. | |
0ac11108 | 2153 | * tree-ssa-pre.c (create_expression_by_pieces, |
f004ab02 AM |
2154 | insert_into_preds_of_block, insert_extra_phis, realify_fake_stores): |
2155 | Use add_referenced_var. | |
2156 | * tree-vect-patterns.c (vect_pattern_recog_1): Use add_referenced_var. | |
2157 | * lambda-code.c (lbv_to_gcc_expression, lle_to_gcc_expression, | |
0ac11108 | 2158 | lambda_loopnest_to_gcc_loopnest, perfect_nestify): Use |
f004ab02 AM |
2159 | add_referenced_var. |
2160 | * tree-vect-transform.c (vect_create_addr_base_for_vector_ref, | |
2161 | vect_create_data_ref_ptr, vect_create_destination_var, | |
0ac11108 | 2162 | vect_init_vector, vect_build_loop_niters, |
f004ab02 AM |
2163 | vect_generate_tmps_on_preheader, vect_update_ivs_after_vectorizer, |
2164 | vect_gen_niters_for_prolog_loop, vect_create_cond_for_align_checks): | |
2165 | Use add_referenced_var. | |
2166 | * tree-outof-ssa.c (create_temp): Use add_referenced_var. | |
2167 | * tree-flow.h (add_referenced_tmp_var): Remove prototype | |
2168 | (add_referenced_var): Add prototype. | |
0ac11108 | 2169 | * tree-ssa-structalias.c (get_constraint_for, |
f004ab02 AM |
2170 | intra_create_variable_infos): Use add_referenced_var. |
2171 | ||
dedc1e6d AO |
2172 | 2006-05-23 Alexandre Oliva <aoliva@redhat.com> |
2173 | ||
2174 | * simplify-rtx.c (simplify_subreg): Adjust REG_OFFSET for | |
2175 | big-endian paradoxical subregs. | |
2176 | * var-tracking.c (struct micro_operation_def): Document that, | |
2177 | for modify micro operations, insn is the subsequent instruction. | |
2178 | (var_reg_delete_and_set, var_mem_delete_and_set): Split into... | |
2179 | (var_reg_set, var_mem_set): ... new functions. | |
2180 | (add_stores): Record subsequent insn. | |
2181 | (compute_bb_dataflow): Use new functions for MO_USE. | |
2182 | (emit_notes_in_bb): Use new functions for MO_USE. Emit use | |
2183 | notes after the insn, and modify notes before the insn known | |
2184 | to be the subsequent one. | |
2185 | (vt_initialize): Invert sorting of MO_CLOBBERs and MO_SETs. | |
2186 | ||
546be535 KH |
2187 | 2006-05-23 Kazu Hirata <kazu@codesourcery.com> |
2188 | ||
2189 | PR target/27696 | |
2190 | * config/i386/i386.c (ix86_expand_builtin): Use | |
2191 | gen_sse3_monitor64 for TARGET_64BIT. | |
2192 | ||
1a1a5f4b KZ |
2193 | 2006-05-22 Kenneth Zadeck <zadeck@naturalbridge.com> |
2194 | ||
2195 | PR rtl-optimization/26375 | |
2196 | PR rtl-optimization/26855 | |
2197 | * df-problems (df_ru_bb_local_compute_process_def): Removed update | |
2198 | to gen set. | |
2199 | (df_ru_bb_local_compute): Reversed statements and removed bogus | |
2200 | comment explaining why they should be in wrong order. | |
0ac11108 | 2201 | (df_ru_dump, df_rd_dump): Enhanced debug info. |
1a1a5f4b | 2202 | * modulo-sched.c (sms_schedule, tree_opt_pass pass_sms): Enhanced |
0ac11108 | 2203 | debug info. |
1a1a5f4b | 2204 | * ddg.c (add_deps_for_def): Converted use of reaching defs to |
d7f5de76 | 2205 | reaching uses and fixed space problem. |
1a1a5f4b | 2206 | |
b633db7b JH |
2207 | 2006-05-23 Jan Hubicka <jh@suse.cz> |
2208 | ||
2209 | * cgraphunit.c (decide_is_function_needed): Also nested functions | |
2210 | and functions declared inline can be optimized out at -O0. | |
2211 | ||
3f2c089f GP |
2212 | 2006-05-22 Gerald Pfeifer <gerald@pfeifer.com> |
2213 | ||
2214 | * doc/install.texi (Configuration): Remove reference to CrossGCC | |
14d92b15 | 2215 | FAQ which was gone. |
3f2c089f GP |
2216 | (Building): Ditto. |
2217 | ||
3d763bcf KH |
2218 | 2006-05-22 Kazu Hirata <kazu@codesourcery.com> |
2219 | ||
2220 | PR target/27266 | |
2221 | * config/i386/i386.c (ix86_expand_branch): Jump to simple if | |
2222 | ix86_compare_emitted is non-NULL. | |
2223 | ||
123b24e7 VR |
2224 | 2006-05-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
2225 | ||
2226 | PR c++/27451 | |
2227 | * stmt.c (expand_asm_operands): Skip asm statement with erroneous | |
2228 | clobbers. | |
2229 | ||
1ff3ac02 RS |
2230 | 2006-05-22 Richard Sandiford <richard@codesourcery.com> |
2231 | ||
2232 | PR rtl-optimization/25514 | |
2233 | * combine.c (replaced_rhs_insn): New variable. | |
2234 | (combine_instructions): Set replaced_rhs_insn when trying to replace | |
2235 | a SET_SRC with a REG_EQUAL note. | |
2236 | (distribute_notes): Use replaced_rhs_insn when determining the live | |
2237 | range of a REG_DEAD register. | |
2238 | ||
8c21550d JW |
2239 | 2006-18-05 Joerg Wunsch <j.gnu@uriah.heep.sax.de> |
2240 | Anatoly Sokolov <aesok@post.ru> | |
2241 | ||
2242 | * config/avr/avr.c (avr_mcu_types): Add support for attiny261, | |
2243 | attiny461, attiny861, attiny25, attiny45, attiny85, attiny24, | |
0ac11108 EC |
2244 | attiny44, attiny84, at90pwm2, at90pwm3, atmega165p, atmega169p, |
2245 | atmega164p, atmega324p, atmega644p, atmega644, atmega329, | |
2246 | atmega3290, atmega649, atmega6490, atmega406, atmega640, | |
2247 | atmega1280, atmega1281, at90can32, at90can64, at90usb646, | |
2248 | at90usb647, at90usb1286 and at90usb1287 devices. | |
8c21550d JW |
2249 | * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.). |
2250 | * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.). | |
2251 | ||
350f18df RS |
2252 | 2006-05-22 Richard Sandiford <richard@codesourcery.com> |
2253 | ||
2254 | * mklibgcc.in (lib2funcs): Remove _floatdidf from initial assignment. | |
2255 | ||
c31202cd RG |
2256 | 2006-05-22 Richard Guenther <rguenther@suse.de> |
2257 | ||
2258 | Revert | |
2259 | 2006-01-31 Richard Guenther <rguenther@suse.de> | |
2260 | Paolo Bonzini <bonzini@gnu.org> | |
2261 | ||
2262 | * doc/install.texi (--disable-libgcc-math): Document. | |
2263 | ||
9714c911 RG |
2264 | 2006-05-22 Richard Guenther <rguenther@suse.de> |
2265 | ||
2266 | Revert | |
2267 | 2006-01-31 Richard Guenther <rguenther@suse.de> | |
2268 | ||
2269 | * doc/invoke.texi (-msselibm): Document. | |
2270 | * target.h (expand_library_builtin): New target hook. | |
2271 | * builtins.c (expand_builtin): Use expand_library_builtin. | |
2272 | (default_expand_library_builtin): New function. | |
2273 | * gcc.c (LINK_GCC_MATH_SPEC): Define. | |
2274 | (LINK_COMMAND_SPEC): Handle %(link_gcc_math). | |
2275 | (link_gcc_math_spec): Declare. | |
2276 | (static_specs): Add link_gcc_math_spec. | |
2277 | * expr.h (default_expand_library_builtin): Declare. | |
2278 | * target-def.h (TARGET_EXPAND_LIBRARY_BUILTIN): Define. | |
2279 | (TARGET_INITIALIZER): Add TARGET_EXPAND_LIBRARY_BUILTIN. | |
2280 | * config/i386/i386.h: Provide LINK_GCC_MATH_SPEC. | |
2281 | * config/i386/i386.opt (msselibm): New target option. | |
2282 | * config/i386/i386.c (ix86_builtin_function_variants): New array. | |
2283 | (ix86_init_sse_abi_builtins): New function. | |
2284 | (ix86_expand_library_builtin): Likewise. | |
2285 | (TARGET_EXPAND_LIBRARY_BUILTIN): Define. | |
2286 | (override_options): Handle error conditions wrt -msselibm. | |
2287 | (ix86_builtins): Add function codes for SSE2 ABI builtins. | |
2288 | (ix86_init_builtins): Call ix86_init_sse_abi_builtins. | |
2289 | * doc/extend.texi (__builtin_sse2_*): Document new target specific | |
2290 | builtins. | |
2291 | ||
4271a6f3 VR |
2292 | 2006-05-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
2293 | ||
694fea20 VR |
2294 | PR c/27420 |
2295 | * c-common.c (self_promoting_args_p): Skip erroneous args. | |
2296 | ||
4271a6f3 VR |
2297 | PR c/26818 |
2298 | * c-decl.c (finish_struct): Skip erroneous fields. | |
2299 | ||
c3e242e7 NC |
2300 | 2006-05-22 Nick Clifton <nickc@redhat.com> |
2301 | ||
2302 | * config/cris/cris.opt (march): Remove VarExists attribute. | |
2303 | (max-stackframe=): Likewise. | |
2304 | ||
41c6dd59 KH |
2305 | 2006-05-22 Kazu Hirata <kazu@codesourcery.com> |
2306 | ||
2307 | * doc/rtl.texi: Fix a typo. | |
2308 | * see.c: Fix comment typos. | |
2309 | ||
eec077bd KH |
2310 | * tree-ssa-structalias.h (alias_info): Remove num_references. |
2311 | ||
76ad5c10 MS |
2312 | 2006-05-21 Mike Stump <mrs@apple.com> |
2313 | ||
2314 | * config/darwin-c.c (BAD): Conditionalize on OPT_Wpragmas. | |
2315 | (BAD2): Add. | |
213af8c8 MS |
2316 | (darwin_pragma_options): Use BAD instead. |
2317 | (darwin_pragma_unused): Likewise. | |
2318 | (darwin_pragma_ms_struct): Likewise. | |
2319 | ||
d29b7f64 DE |
2320 | 2006-05-21 David Edelsohn <edelsohn@gnu.org> |
2321 | ||
2322 | * config/rs6000/rs6000.md (floatsitf2): Remove constraints. | |
2323 | ||
4d49d44d KH |
2324 | 2006-05-21 Kazu Hirata <kazu@codesourcery.com> |
2325 | ||
2326 | PR rtl-optimization/27671 | |
2327 | * simplify-rtx.c (simplify_relational_operation_1): Fix | |
2328 | simplifications of (eq/ne (xor x y) y) and | |
2329 | (eq/ne (xor x y) x). | |
2330 | ||
5104d648 KH |
2331 | PR tree-optimization/26622. |
2332 | * fold-const.c (fold_ternary) <COND_EXPR>: Call fold_convert | |
2333 | on arg1. | |
2334 | ||
6531d1be BF |
2335 | 2006-05-21 Bernhard Fischer <aldot@gcc.gnu.org> |
2336 | ||
2337 | * tree-cfg.c: Prune whitespace. | |
2338 | (debug_tree_cfg): Point to correct header containing the | |
2339 | TDF_* defines. | |
2340 | ||
95a52ebb BF |
2341 | 2006-05-21 Bernhard Fischer <aldot@gcc.gnu.org> |
2342 | ||
2343 | PR middle-end/25776 | |
2344 | * cgraphunit.c (verify_cgraph_node): Typo in error message. | |
2345 | ||
7e2fe9d8 AP |
2346 | 2006-05-20 Andrew Pinski <pinskia@physics.uc.edu> |
2347 | ||
2348 | PR middle-end/25776 | |
2349 | * cgraphunit.c (cgraph_optimize): Don't run ipa passes if error | |
2350 | or sorry count is non zero. | |
2351 | ||
e29c9705 | 2352 | 2006-05-20 Andreas Schwab <schwab@suse.de> |
9be3bc1f AS |
2353 | |
2354 | * config/pa/pa-linux.h (STRING_ASM_OP): Prepend and append a tab. | |
2355 | ||
5d384034 DB |
2356 | 2006-05-19 Daniel Berlin <dberlin@dberlin.org> |
2357 | Kenneth Zadeck <zadeck@naturalbridge.com> | |
2358 | ||
2359 | PR rtl-optimization/26855 | |
2360 | ||
2361 | * df-scan.c (mw_reg_pool, mw_link_pool): New allocation pools for | |
2362 | multiword refs. | |
2363 | (df_scan_alloc): Added code to properly handle multiword hard | |
2364 | registers and add all_blocks parameter. | |
2365 | (df_scan_free_internal, df_insn_refs_delete, df_ref_record): Added | |
2366 | code to properly handle multiword hard registers. | |
2367 | (df_rescan_blocks): Added code to remove deleted blocks from | |
2368 | bitmap. | |
2369 | (df_ref_create_structure, df_ref_record): Added code to properly | |
2370 | handle subregs. | |
2371 | (df_ref_record_1): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER | |
2372 | and set DF_REF_PARTIAL. | |
2373 | (df_defs_record): Changed DF_REF_CLOBBER into DF_REF_MUST_CLOBBER. | |
0ac11108 | 2374 | (df_uses_record): Added DF_REF_PARTIAL for subreg. |
5d384034 DB |
2375 | (df_scan_add_problem): Added flags parameter. |
2376 | (df_ref_create_structure): Changed switching structure. | |
2377 | (df_bb_refs_record): Fixed case where duplicate artificial refs | |
2378 | were created. Changed location of flags. | |
2379 | (df_record_entry_block_defs): Added code to make stack pointer | |
2380 | live in entry block. Refined cases where frame pointer is needed. | |
2381 | Changed location of flags. | |
2382 | (df_record_exit_block_uses, df_insn_refs_record): Changed location of flags. | |
2383 | (df_set_state): Removed function. | |
2384 | (df_grow_reg_info, df_reg_chain_unlink, df_ref_remove, | |
0ac11108 EC |
2385 | df_insn_create_insn_record, df_insn_refs_delete, |
2386 | df_ref_create_structure): Formatting changes. | |
5d384034 DB |
2387 | * df-core.c (df_mvs_dump, df_set_flags, df_clear_flags, |
2388 | df_delete_basic_block): New function. | |
2389 | (df_init): Changed location of flags. | |
2390 | (df_add_problem): Added flags parameter and the way flags are | |
2391 | processed. | |
2392 | (df_insn_uid_debug, df_ref_debug, debug_df_defno, debug_df_ref, | |
2393 | debug_df_chain): Improved debugging output. | |
2394 | (df_insn_debug, df_insn_uid_debug): Added multiword reg support. | |
2395 | (df_refs_chain_dump): Removed df parameter. | |
2396 | (df_iterative_dataflow): Added consistency check. | |
2397 | (df_prune_to_subcfg): Made public. | |
2398 | (df_analyze_problem): Added blocks_to_init parameter and made | |
2399 | public. | |
0ac11108 | 2400 | (df_ref_record, df_bb_refs_record, df_mark_reg, |
5d384034 DB |
2401 | df_record_exit_block_uses): Whitespace changes. |
2402 | (df_dump): Whitespace changes. | |
2403 | * df.h: Some reordering to remove forward references. | |
2404 | (df_ref_flags.DF_REF_MW_HARDREG, DF_REF_PARTIAL, | |
2405 | DF_REF_MUST_CLOBBER, DF_REF_MAY_CLOBBER): New fields. | |
2406 | (df_ref_flags.DF_REF_CLOBBER): Deleted field. | |
2407 | (dataflow.flags): New field. | |
2408 | (df.flag): Deleted field. | |
2409 | (df_alloc_function): Added additional bitmap parameter. | |
2410 | (df_dependent_problem_function): New type. | |
2411 | (df_problem.changeable_flags): New field. | |
2412 | (df_ref_flags.DF_REF_DIES_AFTER_THIS_USE, DF_SCAN_INITIAL, | |
2413 | DF_SCAN_GLOBAL, DF_SCAN_POST_ALLOC, df_state): Removed. | |
2414 | (df_mw_hardreg): New struct. | |
2415 | (DF_INSN_UID_MWS): New macro. | |
2416 | (df_refs_chain_dump, df_ref_debug, df_chain_dump): Removed df | |
2417 | parameter. | |
2418 | (df_add_problem, df_ru_add_problem, df_rd_add_problem, | |
2419 | df_lr_add_problem, df_ur_add_problem, df_urec_add_problem, | |
2420 | df_ri_add_problem, df_scan_add_problem): Added flags parameter. | |
2421 | (df_set_state): Removed function. | |
2422 | (df_set_flags, df_clear_flags, df_delete_basic_block) New functions. | |
2423 | * df-problems.c (df_chain_dump): Removed df parameter. | |
2424 | (df_ru_alloc, df_rd_alloc, df_lr_alloc, df_ur_alloc, | |
2425 | df_urec_alloc, df_chain_alloc, df_ri_alloc): Added all blocks | |
2426 | parameter. | |
2427 | (df_ru_alloc, df_rd_alloc): Now resets all blocks. | |
2428 | (df_rd_bb_local_compute_process_def, df_ur_bb_local_compute, | |
2429 | df_chain_create_bb, df_create_unused_note, df_ri_bb_compute): | |
2430 | Split DF_REF_CLOBBER into DF_REF_MAY_CLOBBER and | |
2431 | DF_REF_MUST_CLOBBER cases. | |
2432 | (df_ru_bb_local_compute_process_def, | |
2433 | df_rd_bb_local_compute_process_def, df_lr_bb_local_compute, | |
2434 | df_lr_bb_local_compute, df_ur_bb_local_compute, | |
2435 | df_chain_create_bb): Made subreg aware. | |
2436 | (df_ru_bb_local_compute, df_rd_bb_local_compute, | |
2437 | df_lr_bb_local_compute, df_lr_bb_local_compute, | |
2438 | df_chain_create_bb): Cleanup to use proper macros. | |
2439 | (df_ur_local_finalize, df_urec_local_finalize): Removed unnecessary | |
2440 | code to fixup bitvectors. | |
2441 | (df_ri_alloc): Cleared lifetime. | |
2442 | (df_ignore_stack_reg, df_kill_notes, df_set_notes_for_mw, | |
2443 | df_create_unused_note): New function. | |
2444 | (df_ri_bb_compute, df_ri_compute): Added code to create/update | |
2445 | REG_DEAD and REG_UNUSED notes as well as register information. | |
2446 | (df_ru_dump, df_rd_dump, df_lr_dump, df_ur_dump, df_urec_dump, | |
2447 | df_chains_dump): Fixed crash if problem was never run. | |
2448 | (df_ru_add_problem, df_rd_add_problem, df_lr_add_problem, | |
2449 | df_ur_add_problem, df_urec_add_problem, df_chain_add_problem, | |
2450 | df_ri_add_problem): Processes flags in uniform manner. | |
2451 | (df_ru_alloc, df_ru_local_compute, df_ru_confluence_n, df_ru_free, | |
2452 | df_ru_dump, df_rd_local_compute, df_rd_confluence_n, df_rd_free, | |
2453 | df_rd_dump, df_urec_free_bb_info): Formatting changes. | |
2454 | (df_ru_free_bb_info, df_ru_bb_local_compute, df_ru_dump, | |
2455 | df_rd_free_bb_info, df_rd_bb_local_compute_process_def, | |
2456 | df_rd_bb_local_compute, df_rd_dump, df_lr_free_bb_info, | |
2457 | df_lr_bb_local_compute, df_lr_local_compute, df_ur_free_bb_info, | |
2458 | df_ur_dump, df_urec_free_bb_info, df_urec_dump, | |
2459 | df_chain_create_bb, df_ri_bb_compute): Whitespace changes. | |
2460 | * modulo-sched.c (sms_schedule): Added flag parameter to calls. | |
2461 | * see.c (see_initialize_data): Ditto. | |
2462 | * final.c (rest_of_clean_state) Added regstack_completed. | |
2463 | * rtl.h (regstack_completed): Ditto. | |
2464 | * reg-stack.c (regstack_completed): Ditto. | |
2465 | ||
d593cb3d MS |
2466 | 2006-05-19 Mike Stump <mrs@apple.com> |
2467 | ||
2468 | * c-tree.h (default_conversion): Remove. | |
2469 | * c-common.h (default_conversion): Add. | |
2470 | ||
04dce5a4 ZD |
2471 | 2006-05-19 Zdenek Dvorak <dvorakz@suse.cz> |
2472 | ||
2473 | * tree-vrp.c (valid_value_p): New function. | |
2474 | (adjust_range_with_scev): Fail if the value of bound is not | |
2475 | simple. | |
2476 | ||
fa807ff6 RS |
2477 | 2006-05-19 Richard Sandiford <richard@codesourcery.com> |
2478 | ||
2479 | * config/mips/linux-unwind.h: Include <asm/unistd.h> | |
2480 | (mips_fallback_frame_state): Use syscall numbers to determine | |
2481 | the appropriate li instruction for the current ABI. Only use | |
2482 | __NR_sigreturn for o32. | |
2483 | ||
721a8ac5 NS |
2484 | 2006-05-19 Nicolas Setton <setton@adacore.com> |
2485 | ||
2486 | * langhooks.h (struct lang_hooks): Add dwarf_name language hook. | |
2487 | * langhooks.c (lhd_dwarf_name): New function. | |
2488 | * langhooks-def.h (lhd_dwarf_name): Declare. | |
2489 | (LANG_HOOKS_DWARF_NAME): New macro, defaults to lhd_dwarf_name. | |
2490 | * dwarf2out.c (dwarf2_name): Use the dwarf_name language hook. | |
2491 | * ada/misc.c (gnat_dwarf_name): New function. | |
2492 | (LANG_HOOKS_DWARF_NAME): Define to gnat_dwarf_name. | |
0ac11108 | 2493 | |
baffad1f RS |
2494 | 2006-05-19 Richard Sandiford <richard@codesourcery.com> |
2495 | ||
2496 | * libgcc2.c (MIN_UNITS_PER_WORD): Move default definition from | |
2497 | libgcc2.h. | |
2498 | (LIBGCC2_UNITS_PER_WORD): Provide default definition, using old | |
2499 | MIN_UNITS_PER_WORD logic from libgcc2.h. Do nothing if | |
2500 | LIBGCC2_UNITS_PER_WORD > MIN_UNITS_PER_WORD. | |
2501 | * libgcc2.h (MIN_UNITS_PER_WORD): Remove definition from here. | |
2502 | Use LIBGCC2_UNITS_PER_WORD rather than MIN_UNITS_PER_WORD to | |
2503 | determine the size of Wtype, etc. | |
2504 | * mklibgcc.in (LIB2_SIDITI_CONV_FUNCS): New argument. | |
2505 | (swfloatfuncs): New variable. | |
2506 | (dwfloatfuncs): Likewise. | |
2507 | (lib2funcs): Remove floating-point conversion functions from | |
2508 | initial assignment. Use LIB2_SIDITI_CONV_FUNCS to determine | |
2509 | the set of conversion routines needed. Allow entries to specify | |
2510 | an object name, filename and word size. Update users accordingly. | |
2511 | * Makefile.in (libgcc.mk): Pass LIB2_SIDITI_CONV_FUNCS. | |
2512 | * config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Define. | |
2513 | ||
2514 | Revert: | |
2515 | ||
2516 | 2006-02-08 Roger Sayle <roger@eyesopen.com> | |
2517 | ||
2518 | PR target/22209 | |
2519 | * config/fixtfdi.c: New libgcc source file. | |
2520 | * config/fixunstfdi.c: New source file. | |
2521 | * config/floatditf.c: New source file. | |
2522 | * config/floatunditf.c: New souce file. | |
2523 | * config/mips/t-iris6 (LIB2FUNCS_EXTRA): Include the new source | |
2524 | files above instead of config/mips/_tilib.c. | |
2525 | * config/mips/t-linux64 (LIB2FUNCS_EXTRA): Likewise. | |
2526 | ||
03be9d6b JDA |
2527 | 2006-05-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2528 | ||
2529 | * pa/t-hpux-shlib (SHLIB_LINK): Remove `-lc'. | |
2530 | * pa/pa-hpux11.h (LIB_SPEC): Update comment. | |
2531 | ||
52ffd86e MS |
2532 | 2006-05-18 Mike Stump <mrs@apple.com> |
2533 | ||
2534 | Fix up vla, vm and [*] sematics. | |
2535 | ||
2536 | PR c/18740 | |
2537 | PR c/7948 | |
2538 | PR c/25802 | |
6a1f8611 | 2539 | PR c/27673 |
52ffd86e MS |
2540 | * c-tree.h (struct c_arg_info): Add had_vla_unspec. |
2541 | (c_vla_unspec_p): Add. | |
2542 | (c_vla_type_p): Add. | |
2543 | * c-decl.c (struct c_scope): Add had_vla_unspec. | |
2544 | (build_array_declarator): Add support for [*]. | |
2545 | (grokdeclarator): Likewise. | |
2546 | (grokparms): Likewise. | |
2547 | (get_parm_info): Likewise. | |
2548 | * c-objc-common.c (c_vla_unspec_p): Likewise. | |
2549 | * c-objc-common.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Likewise. | |
2550 | * c-parser.c (c_parser_typeof_specifier): Evaluate arguments to | |
2551 | typeof when argument is a variably modified type not inside sizeof or alignof. | |
2552 | (c_parser_direct_declarator_inner): Propagate errors. | |
2553 | (c_parser_sizeof_expression): Add support for [*]. | |
6a1f8611 MS |
2554 | (c_parser_parms_declarator): Initialize had_vla_unspec. |
2555 | (c_parser_parms_list_declarator): Likewise. | |
52ffd86e MS |
2556 | * c-typeck.c (c_vla_type_p): Add. |
2557 | (composite_type): Add support for vla compositing. | |
2558 | (comptypes_internal): Add support for vla compatibility. | |
2559 | (c_expr_sizeof_expr): Evaluate vla arguments. | |
2560 | * tree.c (variably_modified_type_p): Update comment for [*]. | |
2561 | ||
eaec4980 MM |
2562 | 2006-05-18 Michael Matz <matz@suse.de> |
2563 | ||
2564 | PR target/27599 | |
2565 | * config.host: Make assignments to host_xmake_file cumulative. | |
2566 | * config.host (*-darwin*): Test $host, not $target. | |
2567 | ||
33932946 SH |
2568 | 2006-05-12 Stuart Hastings <stuart@apple.com> |
2569 | ||
a1d1988f MS |
2570 | * config/i386/i386.opt (-mstackrealign): New flag. |
2571 | * config/i386/i386.c (force_align_arg_pointer): New attribute. | |
33932946 SH |
2572 | (ix86_handle_cconv_attribute): Emit error when |
2573 | force_align_arg_pointer attribute collides with too many regparms. | |
2574 | (ix86_function_regparm): Limit regparms when used with | |
2575 | force_align_arg_pointer attribute. (ix86_internal_arg_pointer): | |
2576 | Support stack-realigning prologue in non-main functions. Emit | |
2577 | warning for nested functions under -mstackrealign, emit error for | |
2578 | nested functions with force_align_arg_pointer attribute. | |
a1d1988f MS |
2579 | * doc/extend.texi (force_align_arg_pointer): Document it. |
2580 | * doc/invoke.texi (-mstackrealign): Document it. | |
e8366202 | 2581 | |
c8983342 KH |
2582 | 2006-05-17 Kazu Hirata <kazu@codesourcery.com> |
2583 | ||
2584 | PR rtl-optimization/27477 | |
2585 | * combine.c (try_combine): Don't split a parallel consisting | |
2586 | of two sets into two individual sets if both sets reference | |
2587 | cc0. | |
2588 | ||
344185f1 L |
2589 | 2006-05-17 H.J. Lu <hongjiu.lu@intel.com> |
2590 | ||
2591 | * config/arm/arm.opt (target_fpe_name): Remove VarExists. | |
2592 | * config/rs6000/rs6000.opt (TARGET_NO_FP_IN_TOC): Likewise. | |
2593 | ||
2594 | * doc/options.texi (VarExists): Updated. | |
2595 | ||
edbaf6a2 JDA |
2596 | 2006-05-17 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2597 | ||
2598 | * unwind-dw2.c: Add declarations for uw_update_context and | |
2599 | uw_frame_state_for. | |
2600 | * pa/hpux-unwind.h (pa_fallback_frame_state): When an export stub is | |
2601 | detected, advance frame state and context once to skip over stub. | |
2602 | ||
c93c5025 SP |
2603 | 2006-05-17 Sebastian Pop <pop@cri.ensmp.fr> |
2604 | ||
2605 | PR middle-end/20256 | |
2606 | PR middle-end/26435 | |
2607 | * tree-loop-linear.c (linear_transform_loops): Don't test perfect_nest_p. | |
2608 | Call rewrite_into_loop_closed_ssa only when something changed. | |
2609 | * lambda.h (gcc_loopnest_to_lambda_loopnest): Update declaration. | |
2610 | * lambda-code.c (can_convert_to_perfect_nest): Declared. | |
2611 | (gcc_loopnest_to_lambda_loopnest): Removed need_perfect_nest parameter. | |
2612 | Test for perfect_nest_p here. Fix formating. | |
2613 | (replace_uses_equiv_to_x_with_y): Fix formating. | |
2614 | (stmt_uses_op): Removed. | |
2615 | (can_convert_to_perfect_nest): Removed loopivs parameter. | |
2616 | Complete the test by checking the scalar dependences. | |
2617 | (perfect_nestify): Remove the test for can_convert_to_perfect_nest. | |
2618 | Fix formating. | |
2619 | ||
be448346 BS |
2620 | 2005-05-17 Bernd Schmidt <bernd.schmidt@analog.com> |
2621 | ||
2622 | PR bootstrap/22541 | |
2623 | From Dan Kegel <dank@kegel.com>: | |
2624 | * Makefile.in: Strip "dir/../" combinations from SYSTEM_INCLUDE_DIR. | |
2625 | ||
2e3b8fe7 EB |
2626 | 2006-05-17 Eric Botcazou <ebotcazou@adacore.com> |
2627 | ||
2628 | * tree.c (variably_modified_type_p) <ARRAY_TYPE>: Return true | |
2629 | if the element type is variably modified without recursing. | |
2630 | ||
9cb8f1ba SP |
2631 | 2006-05-17 Sebastian Pop <pop@cri.ensmp.fr> |
2632 | ||
2633 | PR middle-end/27332 | |
e8366202 | 2634 | * tree-loop-linear.c (try_interchange_loops): Test for |
9cb8f1ba SP |
2635 | no data dependences. |
2636 | ||
e5db3515 ZD |
2637 | 2006-05-17 Zdenek Dvorak <dvorakz@suse.cz> |
2638 | ||
2639 | PR tree-optimization/27548 | |
2640 | * tree-scalar-evolution.c (scev_const_prop): Do not prolong life | |
2641 | range of ssa names that appear on abnormal edges. | |
2642 | * tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Export. | |
2643 | * tree-flow.h (contains_abnormal_ssa_name_p): Declare. | |
2644 | ||
33598a1b BS |
2645 | 2005-05-17 Bernd Schmidt <bernd.schmidt@analog.com> |
2646 | ||
2647 | PR middle-end/27620 | |
2648 | * expr.c (safe_from_p): Handle CONSTRUCTOR again. | |
2649 | ||
761041be JJ |
2650 | 2006-05-17 Jakub Jelinek <jakub@redhat.com> |
2651 | ||
2652 | PR middle-end/27415 | |
2653 | * tree.h (OMP_PARALLEL_COMBINED): Define. | |
2654 | * gimplify.c (struct gimplify_omp_ctx): Add is_combined_parallel field. | |
2655 | (new_omp_context): Add is_combined_parallel argument. | |
2656 | (gimplify_scan_omp_clauses): Add in_combined_parallel argument, adjust | |
2657 | new_omp_context caller. | |
2658 | (gimplify_omp_parallel, gimplify_omp_for, gimplify_omp_workshare): | |
2659 | Adjust gimplify_scan_omp_clauses callers. | |
2660 | (omp_is_private): Issue errors if iteration variable is firstprivate | |
2661 | or reduction in the current context. | |
2662 | * c-parser.c (c_parser_omp_parallel): Set OMP_PARALLEL_COMBINED | |
2663 | on combined parallel workshare constructs. | |
2664 | ||
8dc3f290 L |
2665 | 2006-05-16 H.J. Lu <hongjiu.lu@intel.com> |
2666 | ||
2667 | * Makefile.in (GCC_OBJS): Replace options.o with gcc-options.o. | |
2668 | (gcc-options.o): New rule. | |
2669 | ||
2670 | * optc-gen.awk: Protect variables for gcc-options.o with | |
2671 | #ifdef GCC_DRIVER/#endif. | |
2672 | ||
2ed4b0ce | 2673 | 2006-05-16 Daniel Berlin <dberlin@dberlin.org> |
e8366202 | 2674 | |
2ed4b0ce DB |
2675 | Fix PR tree-optimization/27373 |
2676 | * tree-ssa-forwprop.c: (forward_propagate_addr_expr_1): Add argument. | |
2677 | (forward_propagate_addr_expr): Update call. | |
2678 | ||
48b06e94 L |
2679 | 2006-05-16 H.J. Lu <hongjiu.lu@intel.com> |
2680 | ||
2681 | * doc/options.texi: Move the Negative option. | |
2682 | ||
faaf1436 RG |
2683 | 2006-05-16 Richard Guenther <rguenther@suse.de> |
2684 | ||
2685 | PR tree-optimization/22303 | |
2686 | * tree-ssa-ccp.c (fold_const_aggregate_ref): Handle reads | |
2687 | from STRING_CSTs. | |
2688 | (evaluate_stmt): Fall back to fold_const_aggregate_ref, if | |
2689 | ccp_fold did not simplify the statement. | |
2690 | ||
14c7833c L |
2691 | 2006-05-16 H.J. Lu <hongjiu.lu@intel.com> |
2692 | ||
2693 | PR driver/26885 | |
2694 | * Makefile.in (GCC_OBJS): New. | |
2695 | (OBJS-common): Add opts-common.o. | |
2696 | (xgcc$(exeext)): Replace gcc.o with $(GCC_OBJS). | |
2697 | (cpp$(exeext)): Likewise. | |
2698 | (gcc.o): Also depend on opts.h. | |
2699 | (opts-common.o): New. | |
2700 | ||
2701 | * common.opt (gcoff): Add Negative(gdwarf-2). | |
2702 | (gdwarf-2): Add Negative(gstabs). | |
2703 | (gstabs): Add Negative(gstabs+). | |
2704 | (gstabs+): Add Negative(gvms). | |
2705 | (gvms): Add Negative(gxcoff). | |
2706 | (gxcoff): Add Negative(gxcoff+). | |
2707 | (gxcoff+): Add Negative(gcoff). | |
2708 | * config/i386/i386.opt (m32): Add Negative(m64). | |
2709 | (m64): Add Negative(m32). | |
2710 | ||
2711 | * doc/options.texi: Document the Negative option. | |
2712 | ||
2713 | * gcc.c: Include "opts.h". | |
2714 | (main): Call prune_options after expandargv. | |
2715 | ||
2716 | * optc-gen.awk: Generate common declarations for all flag | |
2717 | variables in options.c. Output the neg_index field. | |
2718 | ||
2719 | * opts.c (find_opt): Moved to ... | |
2720 | * opts-common.c: Here. New file. | |
2721 | ||
2722 | * opts.h (cl_option): Add a neg_index field. | |
2723 | (find_opt): New. | |
2724 | (prune_options): Likewise. | |
2725 | ||
4156f84b JJ |
2726 | 2006-05-16 Jakub Jelinek <jakub@redhat.com> |
2727 | ||
b570947c JJ |
2728 | PR middle-end/27573 |
2729 | * omp-low.c (expand_omp_parallel): Don't assert | |
2730 | .OMP_DATA_I = &.OMP_DATA_O is the first statement in the block, | |
2731 | instead search for it. | |
2732 | ||
4156f84b JJ |
2733 | PR c/27499 |
2734 | * gimplify.c (gimplify_omp_for): Remove assertion that iteration var | |
2735 | is signed. | |
2736 | ||
726e9992 AS |
2737 | 2006-05-16 Andreas Schwab <schwab@suse.de> |
2738 | ||
2739 | * doc/tm.texi (TARGET_LIBGCC_SDATA_SECTION): Add missing @end | |
2740 | defmac. | |
2741 | ||
d0b89852 RS |
2742 | 2006-05-15 Roger Sayle <roger@eyesopen.com> |
2743 | ||
2744 | PR target/26600 | |
2745 | * config/i386/i386.c (legitimate_constant_p) <CONST_DOUBLE>: TImode | |
2746 | integer constants other than zero are only legitimate on TARGET_64BIT. | |
2747 | <CONST_VECTOR> Only zero vectors are legitimate. | |
2748 | (ix86_cannot_force_const_mem): Integral and vector constants can | |
2749 | always be put in the constant pool. | |
2750 | ||
a0cfeb0f DD |
2751 | 2006-05-16 DJ Delorie <dj@redhat.com> |
2752 | ||
2753 | * crtstuff.c (__dso_handle): Set section from | |
2754 | TARGET_LBIGCC_SDATA_SECTION if defined. | |
726e9992 | 2755 | * doc/tm.texi (TARGET_LIBGCC_SDATA_SECTION): Document. |
a0cfeb0f DD |
2756 | * config/mips/mips.h (TARGET_LIBGCC_SDATA_SECTION): Define. |
2757 | ||
21028020 DS |
2758 | 2006-05-16 Danny Smith <dannysmith@users.sourceforge.net> |
2759 | ||
eaec4980 | 2760 | PR target/27599 |
21028020 DS |
2761 | * config.host (i[34567]86-*-mingw*): Append i386/x-mingw32 to |
2762 | host_xmake_file. | |
2763 | ||
4741d956 BE |
2764 | 2006-05-16 Ben Elliston <bje@au.ibm.com> |
2765 | ||
2766 | * tree-cfg.c (split_edge_bb_loc): Remove unused variable `src'. | |
2767 | ||
44422aa3 PB |
2768 | 2006-05-15 Per Bothner <per@bothner.com> |
2769 | ||
0977c9ab | 2770 | * tree.c: (last_annotated_node): Use source_locus typedef. |
44422aa3 PB |
2771 | This permits bootstrapping with --enable-mapped-location. |
2772 | ||
95dd3097 ZD |
2773 | 2006-05-15 Zdenek Dvorak <dvorakz@suse.cz> |
2774 | ||
2775 | PR tree-optimization/26830 | |
2776 | * tree-into-ssa.c (struct ssa_name_info): Add age field. | |
2777 | (info_for_ssa_name, current_info_for_ssa_name_age, | |
2778 | blocks_to_update): New variables. | |
2779 | (get_ssa_name_ann): Use info_for_ssa_name instead of SSA_NAME_AUX. | |
2780 | (clear_ssa_name_info, initialize_flags_in_bb, | |
2781 | mark_block_for_update): New functions. | |
2782 | (mark_def_sites, rewrite_stmt): Assert that blocks_to_update is NULL. | |
2783 | (insert_phi_nodes_for, mark_use_interesting, prepare_block_for_update, | |
2784 | prepare_def_site_for): Use mark_block_for_update. | |
2785 | (mark_def_interesting): Assert that the processed block is marked in | |
2786 | blocks_to_update. Do not take blocks argument. | |
2787 | (prepare_use_sites_for, prepare_names_to_update): Do not take blocks | |
2788 | argument. | |
2789 | (rewrite_update_init_block, rewrite_update_stmt): Only process | |
2790 | blocks with statements to rewrite. | |
2791 | (delete_update_ssa): Do not clear SSA_NAME_AUX. | |
2792 | (update_ssa): Initialize and free blocks_to_update. Do not | |
2793 | clear flags on statements. Do not use blocks bitmap. | |
2794 | * tree.h (SSA_NAME_AUX): Removed. | |
2795 | (struct tree_ssa_name): Removed aux field. | |
2796 | * print-tree.c (print_node): Do not print SSA_NAME_AUX. | |
2797 | ||
7136db7a RG |
2798 | 2006-05-15 Richard Guenther <rguenther@suse.de> |
2799 | ||
2800 | PR tree-optimization/27603 | |
2801 | * tree-ssa-loop-niter.c (infer_loop_bounds_from_undefined): | |
2802 | Do computations in original type. | |
2803 | ||
a0145633 MN |
2804 | 2006-05-15 Mircea Namolaru <namolaru@il.ibm.com> |
2805 | ||
f8f80cbb ZD |
2806 | * see.c: Code style changes such as redundant paranthesis, |
2807 | redundant intialization of local variables etc. | |
2808 | (see_main): Declared now as static. | |
2809 | * doc/invoke.texi: Update that -fsee is not enabled by | |
2810 | default at -O3. | |
a0145633 | 2811 | |
eeb1d9e0 JJ |
2812 | 2006-05-15 Jakub Jelinek <jakub@redhat.com> |
2813 | ||
a6fc8e21 JJ |
2814 | * omp-low.c (check_omp_nesting_restrictions): New function. |
2815 | (scan_omp_1): Call it. | |
2816 | ||
eeb1d9e0 JJ |
2817 | PR middle-end/27416 |
2818 | * omp-low.c (build_outer_var_ref): If VAR is reference in orphaned | |
2819 | construct, return *VAR. | |
2820 | ||
a1709769 KK |
2821 | 2006-05-14 Kaz Kojima <kkojima@gcc.gnu.org> |
2822 | ||
2823 | PR rtl-optimization/27406 | |
2824 | * bt-load.c (migrate_btr_def): Skip the block having abnormal | |
2825 | edges. | |
2826 | ||
56106c2e RS |
2827 | 2006-05-14 Roger Sayle <roger@eyesopen.com> |
2828 | ||
2829 | PR rtl-optimization/27538 | |
2830 | * combine.c (expand_compound_operation): Call gen_lowpart | |
2831 | before calling simplify_shift_const. | |
2832 | ||
c505fc06 RS |
2833 | 2006-05-14 Roger Sayle <roger@eyesopen.com> |
2834 | ||
2835 | PR rtl-optimization/22563 | |
2836 | * expmed.c (store_fixed_bit_field): When using AND and IOR to store | |
2837 | a fixed width bitfield, always force the intermediates into psuedos. | |
2838 | ||
f9a4b91e BF |
2839 | 2006-05-14 Bernhard Fischer <aldot@gcc.gnu.org> |
2840 | ||
2841 | PR 27501 | |
2842 | * mkconfig.sh: Use operator = instead of == for test. | |
2843 | ||
83409463 NC |
2844 | 2006-05-13 Nick Clifton <nickc@redhat.com> |
2845 | ||
2846 | * dwarf2out.c (dbx_reg_number): Check return value from | |
2847 | LEAF_REG_REMAP and only use it if it is valid. | |
2848 | (multiple_reg_loc_descriptor): Likewise. | |
2849 | ||
75c3fb73 RG |
2850 | 2006-05-13 Richard Guenther <rguenther@suse.de> |
2851 | ||
2852 | * config.host <i[34567]86-*-cygwin*>: Append i386/x-cygwin to | |
2853 | host_xmake_file. | |
2854 | ||
a1b53177 SB |
2855 | 2006-05-13 Steven Bosscher <stevenb.gcc@gmail.com> |
2856 | ||
2857 | * df-core.c (df_bb_regno_last_use_find): Do not look for dataflow | |
2858 | information attached to non-INSNs such as NOTEs. | |
2859 | (df_bb_regno_first_def_find, df_bb_regno_last_def_find): Likewise. | |
2860 | ||
651a36e3 AK |
2861 | 2006-05-12 Andreas Krebbel <krebbel1@de.ibm.com> |
2862 | ||
2863 | * config/s390/s390.c (s390_const_ok_for_constraint_p): Disallow -4G for | |
2864 | On contraint. | |
2865 | * config/s390/s390.md: Adjust comment describing On constraint. | |
2866 | ||
5d342ef9 JH |
2867 | 2006-05-11 Jan Hubicka <jh@suse.cz> |
2868 | ||
2869 | * cgraphunit.c (decide_is_function_needed): Don't force always_inline | |
2870 | to be output at -O0. | |
2871 | ||
81e61fb4 VR |
2872 | 2006-05-11 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
2873 | ||
7ebcc52c VR |
2874 | PR middle-end/27384 |
2875 | * fold-const.c (size_binop): Move sanity check for arguments to | |
2876 | the beginning of the function. | |
2877 | ||
81e61fb4 VR |
2878 | PR middle-end/27488 |
2879 | * fold-const.c (tree_expr_nonnegative_p): Return early on invalid | |
2880 | expression. | |
2881 | ||
497cfe24 RG |
2882 | 2006-05-11 Richard Guenther <rguenther@suse.de> |
2883 | ||
2884 | PR middle-end/27529 | |
2885 | * fold-const.c (fold_unary): Handle intermediate conversion | |
2886 | to a pointer type like intermediate conversion to an integer | |
2887 | type in folding of (T1)(T2)var to var. | |
2888 | Match the code to the comment in the final conversion for | |
2889 | (T1)(T2)var to (T1)var regarding to type precision. Rather | |
2890 | than disallow T1 being of pointer type, assert that both T1 | |
2891 | and var are of pointer type or not. Make sure not to fall | |
2892 | over the frontends lazyness wrt array to pointer decay though. | |
2893 | ||
29e339b9 RE |
2894 | 2006-05-10 Richard Earnshaw <rearnsha@arm.com> |
2895 | ||
2896 | * arm.c (arm_struct_value_rtx): Delete. | |
2897 | (TARGET_STRUCT_VALUE_RTX): Use the default definition. | |
2898 | (arm_init_cumulative_args): Always initialize nregs to zero. | |
2899 | ||
5ac4f3bb RG |
2900 | 2006-05-10 Richard Guenther <rguenther@suse.de> |
2901 | ||
2902 | PR tree-optimization/27532 | |
2903 | * tree-object-size.c (plus_expr_object_size): Fix typo. | |
2904 | ||
e43d8b8a KH |
2905 | 2006-05-10 Kazu Hirata <kazu@codesourcery.com> |
2906 | ||
2907 | PR target/24949 | |
2908 | * config/m68k/m68k.md (ashrdi_const32, ashrdi_const32_mem, | |
2909 | ashrdi_const, ashrdi3): Use a scratch register. | |
2910 | ||
a04d8591 RG |
2911 | 2006-05-10 Richard Guenther <rguenther@suse.de> |
2912 | ||
2913 | PR tree-optimization/27302 | |
2914 | * fold-const.c (operand_equal_p): For two comparisons, | |
2915 | try comparison of one comparison code swapped if that yields | |
2916 | the same code. | |
2917 | ||
9c5835d5 BE |
2918 | 2006-05-10 Ben Elliston <bje@au.ibm.com> |
2919 | ||
4db60bd0 BE |
2920 | * tree-pretty-print.c (pretty_print_string): No need to handle |
2921 | '\0' as a special character. | |
2922 | ||
9c5835d5 BE |
2923 | * tree.h: Include "hashtab.h". |
2924 | (iterative_hash_expr): Use hashval_t in its prototype. | |
2925 | * Makefile.in (TREE_H): Add $(HASHTAB_H). | |
2926 | ||
543b6009 SE |
2927 | 2006-05-09 Steve Ellcey <sje@cup.hp.com> |
2928 | ||
2929 | PR bootstrap/26872 | |
2930 | * config.gcc (hppa[12]*-*-hpux10*): Set gas to yes. | |
2931 | (hppa*64*-*-hpux11*): Ditto. | |
2932 | (hppa[12]*-*-hpux11*): Ditto. | |
2933 | ||
7ac159a5 DE |
2934 | 2006-05-09 David Edelsohn <edelsohn@gnu.org> |
2935 | ||
2936 | PR target/26545 | |
2937 | * config/rs6000/aix41.h (TARGET_64BIT): Define. | |
2938 | ||
fa959ce4 MM |
2939 | 2006-05-09 Michael Matz <matz@suse.de> |
2940 | ||
2941 | * config.host (<i[34567]86-*-*, x86_64-*-*>): Set | |
2942 | host_extra_gcc_objs and host_xmake_file. | |
2943 | (<*-*-linux*>): Don't overwrite host_xmake_file. | |
2944 | * gcc.c (static_spec_functions): Add EXTRA_SPEC_FUNCTIONS. | |
2945 | * config/i386/i386.h (EXTRA_SPEC_FUNCTIONS): Define. | |
2946 | (host_detect_local_cpu): Declare. | |
2947 | (CC1_CPU_SPEC): Add -march=native and -mtune=native cases. | |
2948 | * config/i386/i386.c (override_options): Handle -mtune=native | |
2949 | as -mtune=generic. | |
2950 | * config/i386/x-i386: New file. | |
2951 | * config/i386/driver-i386.c: New file. | |
2952 | * doc/invoke.texi (<i386 and x86-64 Options>): Describe | |
2953 | cpu-type "native". | |
2954 | ||
f9c3744b DM |
2955 | 2006-05-09 Dirk Mueller <dmueller@suse.de> |
2956 | Richard Guenther <rguenther@suse.de> | |
2957 | ||
2958 | PR middle-end/27498 | |
2959 | * fold-const.c (fold_read_from_constant_string): Relax check | |
2960 | for matching types to matching modes. | |
2961 | ||
2c790a28 ZD |
2962 | 2006-05-09 Zdenek Dvorak <dvorakz@suse.cz> |
2963 | ||
2964 | PR rtl-optimization/27335 | |
2965 | * loop-unroll.c (peel_loops_completely): Use loops->parray to walk the | |
2966 | loops. | |
2967 | ||
ec4fc7ed RS |
2968 | 2006-05-08 Chao-ying Fu <fu@mips.com> |
2969 | Richard Sandiford <richard@codesourcery.com> | |
2970 | ||
2971 | * config/mips/mips-ps-3d.md (scc_ps, s<code>_ps): New patterns. | |
2972 | (vcondv2sf, sminv2sf3, smaxv2sf3): Likewise. | |
2973 | * config/mips/mips.md (UNSPEC_SCC): New constant. | |
2974 | * config/mips/mips-protos.h (mips_expand_vcondv2sf): Declare. | |
2975 | * config/mips/mips.c (mips_reverse_fp_cond_p): New function. | |
2976 | (mips_emit_compare): Use it. | |
2977 | (mips_expand_vcondv2sf): New function. | |
2978 | ||
74be08f8 DB |
2979 | 2006-05-08 Daniel Berlin <dberlin@dberlin.org> |
2980 | ||
2981 | Fix PR tree-optimization/27093 | |
e8366202 | 2982 | * tree-ssa-alias.c (recalculate_used_alone): Mark variables for |
74be08f8 DB |
2983 | renaming when they become not-used_alone. |
2984 | ||
fdaaf002 JDA |
2985 | 2006-05-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2986 | ||
2987 | * hpux-unwind.h (pa_fallback_frame_state): Handle return parameter | |
2988 | relocation and relocation stubs. | |
2989 | ||
90c92323 EC |
2990 | 2006-05-08 Eric Christopher <echristo@apple.com> |
2991 | ||
2992 | * unwind-dw2-fde-darwin.c (examine_objects): Only check data | |
2993 | section for ppc. | |
2994 | ||
04f77d0f JH |
2995 | 2006-05-08 Jan Hubicka <jh@suse.cz> |
2996 | ||
46f5f7f2 | 2997 | PR middle-end/24561 |
04f77d0f JH |
2998 | * cgraphunit.c (decide_is_function_needed): When not optimizing even |
2999 | unused static functions are needed. | |
3000 | ||
857e5753 RS |
3001 | 2006-05-08 Roger Sayle <roger@eyesopen.com> |
3002 | ||
3003 | PR target/27158 | |
3004 | * reload.c (find_reloads_toplev): Only return the simplified SUBREG | |
3005 | of a reg_equiv_constant if the result is a legitimate constant. | |
3006 | ||
b81bd6c9 UB |
3007 | 2006-05-08 Uros Bizjak <uros@kss-loka.si> |
3008 | ||
3009 | PR target/27277 | |
3010 | * config/i386/i386.c (ix86_rtx_costs) [FLOAT_EXTEND]: For | |
3011 | standard 80387 constants, raise the cost to prevent | |
3012 | compress_float_constant() to generate load from memory. | |
3013 | ||
923d16d4 KH |
3014 | 2006-05-08 Kazu Hirata <kazu@codesourcery.com> |
3015 | ||
3016 | * config/arm/constraints.md (c): Fix a typo. | |
3017 | ||
bca50406 KH |
3018 | * see.c, tree-flow-inline.h, tree-phinodes.c: Fix comment |
3019 | typos. | |
3020 | ||
67a4b391 L |
3021 | 2006-05-07 H.J. Lu <hongjiu.lu@intel.com> |
3022 | ||
3023 | PR target/24879 | |
3024 | * config/i386/pmmintrin.h (_mm_monitor): Remove macro. Use | |
3025 | inline function. | |
3026 | (_mm_mwait): Likewise. | |
3027 | ||
3028 | * config/i386/sse.md (sse3_mwait): Replace "mwait\t%0, %1" with | |
3029 | "mwait". | |
3030 | (sse3_monitor): Make it 32bit only. | |
3031 | (sse3_monitor64): New. 64bit monitor. | |
3032 | ||
f7360901 VR |
3033 | 2006-05-07 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
3034 | ||
3035 | PR target/27421 | |
3036 | * config/i386/i386.c (classify_argument): Skip fields with invalid | |
3037 | types. | |
3038 | ||
18455d17 RG |
3039 | 2006-05-07 Richard Guenther <rguenther@suse.de> |
3040 | ||
3041 | PR tree-optimization/27409 | |
3042 | * tree-ssa-structalias.c (get_constraint_for_component_ref): | |
3043 | Do not try to find zero-sized subvars. | |
3044 | ||
ed52affe RG |
3045 | 2006-05-07 Richard Guenther <rguenther@suse.de> |
3046 | ||
3047 | PR tree-optimization/27136 | |
3048 | * tree-ssa-loop-niter.c (get_val_for): Correct function | |
3049 | comment, assert requirements. | |
3050 | (loop_niter_by_eval): Stop processing if the iterated | |
3051 | value did not simplify. | |
3052 | ||
ef5d0a89 MN |
3053 | 2006-05-07 Mircea Namolaru <namolaru@il.ibm.com> |
3054 | ||
e8366202 | 3055 | * opts.c (flag_see): remove its setting at -O3. |
90c92323 | 3056 | |
ce92b223 RE |
3057 | 2006-05-07 Richard Earnshaw <rearnsha@arm.com> |
3058 | ||
3059 | * genpeep.c (main): Make insn-peep.c depend on flags.h. | |
3060 | * arm/constraints.md: New file. | |
3061 | * arm.h (REG_CLASS_FROM_LETTER_P): Delete. | |
3062 | (CONST_OK_FOR_ARM_LETTER, CONST_OK_FOR_THUMB_LETTER) | |
3063 | (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_ARM_LETTER) | |
3064 | (CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT_STR_ARM) | |
3065 | (CONSTRAINT_LEN, EXTRA_CONSTRAINT_THUMB, EXTRA_CONSTRAINT_STR) | |
3066 | (EXTRA_MEMORY_CONSTRAINT): Likewise. | |
3067 | * arm.md: Include constraints.md. | |
3068 | (thumb_movsi_insn): Use satisfies_constraint_J. | |
3069 | (movhi, movqi): Use satisfies_constraint_I. | |
3070 | ||
ed1a08a7 AS |
3071 | 2006-04-29 Anatoly Sokolov <aesok@post.ru> |
3072 | ||
e8366202 | 3073 | * config/avr/avr.h (CRT_BINUTILS_SPECS): Fixed crt* file name |
ed1a08a7 AS |
3074 | for atmeg a645 device. |
3075 | ||
75bfa678 RG |
3076 | 2006-05-06 Richard Guenther <rguenther@suse.de> |
3077 | ||
3078 | PR tree-optimization/27151 | |
3079 | * tree-vect-transform.c (vectorizable_condition): Punt on | |
3080 | values that have a different type than the condition. | |
3081 | ||
8d8d1a28 AH |
3082 | 2006-05-03 Aldy Hernandez <aldyh@redhat.com> |
3083 | ||
3084 | PR/21391 | |
3085 | * c-parser.c (c_parser_cast_expression): Only insert casts into | |
3086 | hash table if pointer. | |
3087 | * function.c (used_types_insert_helper): Rename from | |
3088 | used_types_insert. | |
3089 | (used_types_insert): Call used_types_insert_helper. | |
3090 | * function.h (used_types_insert): Accept only one argument. | |
3091 | ||
edd54d25 DE |
3092 | 2006-05-05 David Edelsohn <edesohn@gnu.org> |
3093 | ||
3094 | * config/rs6000/rs6000.md: Mark all "X" constraints for clobbered | |
3095 | scratch with output modifier. | |
3096 | ||
1958f718 DE |
3097 | 2006-05-04 David Edelsohn <edelsohn@gnu.org> |
3098 | ||
3099 | PR target/26481 | |
3100 | * config/rs6000/rs6000.md (stmsi_power): Mark clobber constraint | |
3101 | with output modifier. | |
3102 | ||
05431b85 KH |
3103 | 2006-05-04 Richard Sandiford <richard@codesourcery.com> |
3104 | ||
3105 | PR target/26765 | |
3106 | * config/mips/mips.c (mips_symbolic_address_p): Return true | |
3107 | for SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL, SYMBOL_TPREL, | |
3108 | SYMBOL_GOTTPREL, and SYMBOL_TLS. | |
3109 | ||
d818832c RG |
3110 | 2006-05-04 Richard Guenther <rguenther@suse.de> |
3111 | ||
3112 | PR tree-optimization/14287 | |
3113 | PR tree-optimization/14844 | |
3114 | PR tree-optimization/19792 | |
3115 | PR tree-optimization/21608 | |
3116 | PR tree-optimization/27090 | |
3117 | * tree-ssa-pre.c (try_combine_conversion): New function. | |
3118 | (compute_avail): After constructing the value-handle | |
3119 | expression, use try_combine_conversion to combine NOP_EXPRs | |
3120 | with previous value-handle expressions and use the result if it | |
3121 | is available. | |
3122 | ||
6c4b5a19 JM |
3123 | 2006-05-04 Joseph S. Myers <joseph@codesourcery.com> |
3124 | ||
3125 | * config/mips/linux64.h (DWARF_OFFSET_SIZE): Remove. | |
3126 | ||
69fb1284 JH |
3127 | 2006-05-04 Jan Hubicka <jh@suse.cz> |
3128 | ||
3129 | PR middle-end/25962 | |
3130 | * cgraphunit.c (verify_cgraph_node): Fix cgraph_hash testing. | |
3131 | ||
554006bd BS |
3132 | 2006-05-04 Bernd Schmidt <bernd.schmidt@analog.com> |
3133 | ||
3134 | * config/bfin/predicates.md (const01_rtx): Tell generator programs | |
3135 | that this only matches CONST_INTs. All users changed to VOIDmode | |
3136 | operands. | |
3137 | ||
42da70b7 BS |
3138 | * config/bfin/bfin.c: Include "optabs.h". |
3139 | (bfin_rtx_costs): Some costs for vector operations, to allow combine | |
3140 | to do more work. | |
3141 | (enum bfin_builtins): Add a number of fractional and vector builtins. | |
3142 | (bfin_init_builtins): Likewise. | |
3143 | (struct builtin_description, bdesc_2arg, bdesc_1arg): New. | |
3144 | (safe_vector_operand, bfin_expand_binop_builtin, | |
3145 | bfin_expand_unop_builtin): New functions. | |
3146 | (bfin_expand_builtin): Handle the new builtins. | |
3147 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define | |
3148 | __ADSPBLACKFIN__. | |
3149 | ||
8cd37d0b RL |
3150 | 2006-05-04 Leehod Baruch <leehod@il.ibm.com> |
3151 | ||
e8366202 MS |
3152 | * see.c: New file. |
3153 | * Makefile.in (OBJS-common): Add see.o. | |
3154 | (see.o): Add dependencies. | |
3155 | * common.opt (fsee): New flag for the see optimization was added. | |
3156 | * opts.c (flag_see): Initialized. | |
3157 | * passes.c (init_optimization_passes, pass_see): New pass. | |
3158 | * rtl.h (see_main): Declaration as extern. | |
3159 | * timevar.def (TV_SEE): New. | |
3160 | * tree-pass.h (pass_see): Declaration as extern. | |
3161 | * invoke.texi (-fsee): Document. | |
3162 | * recog.c (validate_simplify_insn): New function. | |
3163 | * recog.h (validate_simplify_insn): Declaration as extern. | |
3164 | * df-problems.c (df_chain_dump): Check for NULL. | |
8cd37d0b RL |
3165 | |
3166 | 2006-05-04 Kenneth Zadeck <zadeck@naturalbridge.com> | |
e8366202 | 3167 | Daniel Berlin <dberlin@dberlin.org> |
8cd37d0b | 3168 | |
e8366202 MS |
3169 | * cfgrtl.c (insert_insn_bb_end_new): New function. |
3170 | * basic-block.h (insert_insn_bb_end_new): Declaration as extern. | |
8cd37d0b RL |
3171 | |
3172 | 2006-05-04 Leehod Baruch <leehod.baruch@weizmann.ac.il> | |
3173 | ||
e8366202 MS |
3174 | * df.h (struct web_entry): Moved from web.c. |
3175 | (union_defs): Declaration as extern. | |
3176 | (unionfind_root): Likewise. | |
3177 | (unionfind_union): Likewise. | |
3178 | * web.c (struct web_entry): Moved to df.h. | |
3179 | (unionfind_root): Remove static declaration. | |
3180 | (unionfind_union): Likewise. | |
3181 | (union_defs): Likewise and generalize to use callback function. | |
3182 | (web_main): Update arguments for union_defs function call. | |
8cd37d0b | 3183 | |
23ba9627 RG |
3184 | 2006-05-04 Richard Guenther <rguenther@suse.de> |
3185 | ||
3186 | PR tree-optimization/26447 | |
3187 | * tree-ssa-pre.c (realify_fake_stores): For necessary loads | |
3188 | produce SSA_NAME copies before the store stmt to avoid | |
3189 | breaking exception handling. | |
3190 | ||
f6a5ffbf JJ |
3191 | 2006-05-04 Jakub Jelinek <jakub@redhat.com> |
3192 | ||
3193 | PR middle-end/27388 | |
3194 | * gimplify.c (omp_is_private): If var is shared in some outer context, | |
3195 | return false instead of true. Stop searching on parallel context | |
3196 | boundary. | |
3197 | ||
0ef1a537 AO |
3198 | 2006-05-03 Alexandre Oliva <aoliva@redhat.com> |
3199 | ||
3200 | PR java/8260 | |
3201 | * coverage.c: Use get_gcov_unsigned_t() instead of | |
3202 | unsigned_type_node all over. | |
3203 | ||
afd83fe4 AM |
3204 | 2006-05-02 Andrew MacLeod <amacleod@redhat.com> |
3205 | ||
3206 | PR tree-optimization/27381 | |
90c92323 | 3207 | * tree-phinodes.c (remove_phi_arg_num): When moving a phi argument, |
afd83fe4 | 3208 | maintain the same immediate_use links. |
90c92323 | 3209 | * tree-ssa-operands.c (dump_immediate_uses_for): Show iteration marker |
afd83fe4 AM |
3210 | node rather than segfaulting. |
3211 | ||
693d710f JJ |
3212 | 2006-05-03 Jakub Jelinek <jakub@redhat.com> |
3213 | ||
3214 | PR fortran/27395 | |
3215 | * gimplify.c (gimplify_scan_omp_clauses): Compare OMP_CLAUSE_CODE | |
3216 | rather than TREE_CODE to OMP_CLAUSE_REDUCTION. Set also GOVD_SEEN | |
3217 | bit for OMP_CLAUSE_REDUCTION_PLACEHOLDER. | |
3218 | ||
832a0c1d DB |
3219 | 2006-05-02 Daniel Berlin <dberlin@dberlin.org> |
3220 | ||
3221 | Fix PR tree-optimization/26626 | |
3222 | * tree-ssa-structalias.c (compute_points_to_sets): For now, solve | |
3223 | always. | |
3224 | * tree-ssa-operands.c (access_can_touch_variable): Allow | |
3225 | typecasting through union pointers. | |
3226 | ||
8ca5b2a2 JJ |
3227 | 2006-05-02 Jakub Jelinek <jakub@redhat.com> |
3228 | ||
3229 | PR c++/26943 | |
3230 | * omp-low.c (maybe_lookup_decl_in_outer_ctx): New function. | |
3231 | (build_outer_var_ref): Use maybe_lookup_decl_in_outer_ctx | |
3232 | to find if var will be a global variable even in the nested context. | |
3233 | (omp_copy_decl): Only check for global variable at the end, it might | |
3234 | be overridden in outer contexts. | |
3235 | (scan_sharing_clauses): For global variables don't create a field. | |
3236 | (lower_rec_input_clauses): Do nothing for global shared variables. | |
3237 | Emit a barrier at the end of ILIST if there were any decls in both | |
3238 | firstprivate and lastprivate clauses. | |
3239 | (lower_send_clauses): Do nothing for global variables except for | |
3240 | COPYIN. | |
3241 | ||
a3428e07 ZD |
3242 | 2006-05-02 Zdenek Dvorak <dvorakz@suse.cz> |
3243 | ||
3244 | * tree.c (unsigned_type_for, signed_type_for): Make sure a type | |
3245 | of the correct signedness is returned. | |
3246 | ||
26ef4301 JL |
3247 | 2006-05-02 Jeff Law <law@redhat.com> |
3248 | ||
3249 | PR tree-optimization/27364 | |
3250 | * tree-vrp.c (vrp_int_const_binop): Fix detection of overflow from | |
3251 | multiply expressions. | |
3252 | ||
263bb8fb TT |
3253 | 2006-05-02 Tom Tromey <tromey@redhat.com> |
3254 | ||
3255 | * tree-flow-inline.h (op_iter_init_phiuse): Fixed typo. | |
3256 | ||
54b9e939 KH |
3257 | 2006-05-02 Kazu Hirata <kazu@codesourcery.com> |
3258 | ||
3259 | PR target/27387 | |
3260 | * arm.c (arm_output_mi_thunk): Use pc-relative addressing when | |
3261 | -mthumb -fPIC are used. | |
3262 | ||
2297e173 SS |
3263 | 2006-05-02 Stanislaw Skowronek <skylark@linux-mips.org> |
3264 | Joshua Kinard <kumba@gentoo.org> | |
d541888b SS |
3265 | |
3266 | PR target/25871 | |
a1d1988f | 3267 | * config/mips/mips.h (TRAMPOLINE_TEMPLATE): Avoid 32-bit moves |
d541888b SS |
3268 | with 64-bit pointers. |
3269 | ||
7a7017bc PB |
3270 | 2006-05-02 Paul Brook <paul@codesourcery.com> |
3271 | ||
3272 | * config/arm/arm.c (add_minipool_forward_ref): Check if insn | |
3273 | and pool overlap. | |
3274 | (create_fix_barrier): Check that a suitable barrier location is | |
3275 | found. | |
3276 | (arm_reorg): Include ftmp->address in allowable range of addresses. | |
3277 | ||
3beef5cb DB |
3278 | 2006-05-02 David Billinghurst <David.Billinghurst@riotinto.com> |
3279 | ||
3280 | PR ada/27366 | |
90c92323 | 3281 | * ada/env.c (__gnat_clearenv): Use unsetenv() to clear environment |
7a7017bc | 3282 | on Cygwin. |
3beef5cb | 3283 | |
d5d86fde JJ |
3284 | 2006-05-02 Jakub Jelinek <jakub@redhat.com> |
3285 | ||
077b0dfb JJ |
3286 | PR middle-end/27337 |
3287 | * gimplify.c (gimplify_scan_omp_clauses): Handle INDIRECT_REF | |
3288 | around RESULT_DECL for result passed by reference. | |
3289 | (gimplify_expr): Call omp_notice_variable when RESULT_DECL is seen. | |
3290 | * omp-low.c (use_pointer_for_field): Don't look at | |
3291 | DECL_HAS_VALUE_EXPR_P for RESULT_DECLs. | |
3292 | (scan_omp_1): Call remap_decl on RESULT_DECLs. | |
3293 | (lower_rec_input_clauses): Don't allocate VLA memory for the second | |
3294 | time or var for passing by reference for | |
3295 | OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE clauses. Allow creation of | |
3296 | TREE_ADDRESSABLE variables when passing by reference. | |
3297 | ||
3298 | * omp-low.c (dump_omp_region): Fix output formatting. | |
3299 | ||
2aee3e57 JJ |
3300 | PR middle-end/27328 |
3301 | * omp-low.c (remove_exit_barrier): Handle NULL exit_bb. | |
3302 | (expand_omp_parallel): Likewise. | |
3303 | * tree-cfg.c (move_sese_region_to_fn): Likewise. | |
3304 | ||
4a31b7ee JJ |
3305 | PR middle-end/27325 |
3306 | * omp-low.c (lower_omp_sections): Call maybe_catch_exception | |
3307 | on statement list containing also constructors and destructors. | |
3308 | (lower_omp_single, lower_omp_for, lower_omp_parallel): Likewise. | |
3309 | ||
d5d86fde JJ |
3310 | PR middle-end/27310 |
3311 | * except.c (duplicate_eh_regions): Fix clearing of | |
3312 | cfun->eh->region_array entries. | |
3313 | ||
c15b113b DD |
3314 | 2006-05-01 DJ Delorie <dj@redhat.com> |
3315 | ||
3316 | * configure.ac (gcc_cv_nm): Don't use an in-tree nm if | |
3317 | build!=host. | |
3318 | (gcc_cv_objdump): Likewise. | |
3319 | * configure: Regenerated. | |
3320 | ||
94634f14 KH |
3321 | 2006-05-01 Kazu Hirata <kazu@codesourcery.com> |
3322 | ||
3323 | PR target/27374 | |
3324 | * config/arm/vfp.md (*arm_movdi_vfp): Correct the output | |
3325 | templates for case 3 and 4. | |
3326 | ||
2d5bc016 DD |
3327 | 2006-05-01 DJ Delorie <dj@redhat.com> |
3328 | ||
3329 | * vec.c: Include bconfig.h when appropriate. | |
3330 | * Makefile.in (build/vec.o): Adjust dependencies. | |
3331 | * mkconfig.sh: Make sure config.h isn't used for build machine | |
3332 | compiles. | |
3333 | ||
2ce79879 ZD |
3334 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
3335 | ||
3336 | * tree-into-ssa.c (phis_to_rewrite, blocks_with_phis_to_rewrite): New | |
3337 | variables. | |
3338 | (mark_phi_for_rewrite): New function. | |
3339 | (insert_phi_nodes_for, mark_use_interesting): Call | |
3340 | mark_phi_for_rewrite. | |
3341 | (rewrite_update_phi_arguments): Traverse only phis in phis_to_rewrite. | |
3342 | (update_ssa): Initialize and free phis_to_rewrite. | |
3343 | ||
ed541ddb ZD |
3344 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
3345 | ||
3346 | PR rtl-optimization/27291 | |
3347 | * loop-doloop.c (add_test, doloop_modify): Handle the case condition is | |
3348 | folded to a constant. | |
3349 | ||
dcccd88d ZD |
3350 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
3351 | ||
3352 | PR tree-optimization/27283 | |
3353 | * tree-ssa-loop-ivopts.c (struct nfe_cache_elt): Store just trees, | |
3354 | not whole # of iteration descriptions. | |
3355 | (niter_for_exit): Return just # of iterations. Fail if # of iterations | |
3356 | uses abnormal ssa name. | |
3357 | (niter_for_single_dom_exit): Ditto. | |
3358 | (find_induction_variables, may_eliminate_iv): Expect niter_for_exit to | |
3359 | return just the number of iterations. | |
3360 | ||
763f4527 ZD |
3361 | 2006-05-01 Zdenek Dvorak <dvorakz@suse.cz> |
3362 | ||
3363 | PR tree-optimization/27144 | |
3364 | * tree-ssa-loop-niter.c (derive_constant_upper_bound): New function. | |
3365 | (record_estimate): Only record constant upper bound. | |
3366 | (infer_loop_bounds_from_undefined): Call | |
3367 | compute_estimated_nb_iterations just once. | |
3368 | (proved_non_wrapping_p): Renamed to ... | |
3369 | (n_of_executions_at_most): ... this. Expect bound to be a constant. | |
3370 | (convert_step_widening, scev_probably_wraps_p): Call | |
3371 | n_of_executions_at_most instead of proved_non_wrapping_p. | |
3372 | (substitute_in_loop_info): Do not replace values in bounds. | |
3373 | * cfgloop.h (struct nb_iter_bound): Remove "additional" field. Update | |
3374 | comments. | |
3375 | ||
2a83cc52 RH |
3376 | 2006-05-01 Richard Henderson <rth@redhat.com> |
3377 | ||
3378 | PR c/27358 | |
3379 | * c-parser.c (c_parser_skip_to_end_of_block_or_statement): Move after | |
3380 | c_parser_skip_to_pragma_eol. Convert to switch statement. Handle | |
3381 | CPP_PRAGMA. | |
3382 | ||
0f57299d RS |
3383 | 2006-05-01 Roger Sayle <roger@eyesopen.com> |
3384 | ||
3385 | * c-typeck.c (parser_build_binary_op): Don't call the function | |
3386 | unsigned_conversion_warning to spot operand/result type overflow. | |
3387 | (build_binary_op): Instead, call convert_and_check instead of | |
3388 | convert to report the problem when the operands are promoted. | |
3389 | * c-common.c (unsigned_conversion_warning): Make static. | |
3390 | * c-common.h (unsigned_conversion_warning): Delete prototype. | |
3391 | ||
ea643120 RG |
3392 | 2006-05-01 Richard Guenther <rguenther@suse.de> |
3393 | ||
3394 | PR tree-optimization/26726 | |
3395 | * tree-ssa-loop-ivopts.c (idx_find_step): Mark source of the | |
3396 | problem ... | |
3397 | (find_interesting_uses_address): ... we work around here | |
3398 | by folding INDIRECT_REFs in the substituted base. | |
3399 | ||
444e96af DN |
3400 | 2006-05-01 Diego Novillo <dnovillo@redhat.com> |
3401 | ||
3402 | * omp-low.c (dump_omp_region): Add newlines. | |
3403 | ||
71834ad3 RS |
3404 | 2006-04-30 Roger Sayle <roger@eyesopen.com> |
3405 | ||
3406 | * common.opt (Woverflow): New command line option. | |
3407 | * c-common.c (constant_expression_warning): Check warn_overflow. | |
3408 | (overflow_waring): Pass OPT_Woverflow to warning. | |
3409 | (unsigned_conversion_warning): Likewise. | |
3410 | (convert_and_check): Likewise. | |
3411 | * doc/invoke.texi: Document new command line option. | |
3412 | ||
194c524a DE |
3413 | 2006-04-30 David Edelsohn <edelsohn@gnu.org> |
3414 | ||
3415 | * config/rs6000/rs6000.c (rs6000_override_options): Enable | |
3416 | TARGET_NO_FP_IN_TOC for section anchors. | |
3417 | (optimization_options): Enable section anchors for all | |
3418 | non-"Objective" languages. | |
3419 | ||
4f8bdef9 EC |
3420 | 2006-04-28 Eric Christopher <echristo@apple.com> |
3421 | ||
3422 | * config/darwin-c.c (darwin_ms_struct): Move this | |
3423 | (darwin_set_default_type_attributes): and this... | |
3424 | * config/darwin.c: ... here. | |
3425 | * config/darwin.h (darwin_ms_struct): Declare. | |
3426 | ||
a5f84464 AM |
3427 | 2006-04-28 Andrew MacLeod <amacleod@redhat.com> |
3428 | ||
3429 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Fix assert clause. | |
3430 | ||
a0f0ab9f RS |
3431 | 2006-04-28 Roger Sayle <roger@eyesopen.com> |
3432 | ||
3433 | PR c/25309 | |
3434 | * c-typeck.c (struct spelling): Make I an unsigned HOST_WIDE_INT. | |
3435 | (push_array_bounds): Delete prototype. Change BOUNDS argument to | |
3436 | an unsigned HOST_WIDE_INT. | |
3437 | (print_spelling): Use HOST_WIDE_INT_PRINT_UNSIGNED to output the | |
3438 | array index. | |
3439 | (really_start_incremental_init): No need to call convert because | |
3440 | bitsize_zero_node is already of type bitsizetype. | |
3441 | (push_init_level): Extract the value of constructor_index as an | |
3442 | unsigned HOST_WIDE_INT quantity, using tree_low_cst. | |
3443 | (process_init_element): Likewise. | |
3444 | ||
c7370b83 JM |
3445 | 2006-04-28 Joseph S. Myers <joseph@codesourcery.com> |
3446 | ||
3447 | * gcc.c (process_command): Add program name to GCC_EXEC_PREFIX | |
3448 | value before passing to make_relative_prefix. | |
3449 | ||
bb6a0ee1 AM |
3450 | 2006-04-28 Alan Modra <amodra@bigpond.net.au> |
3451 | ||
3452 | PR middle-end/27260 | |
3453 | * builtins.c (expand_builtin_memset): Expand val in original mode. | |
3454 | ||
16d6f994 EC |
3455 | 2006-04-27 Eric Christopher <echristo@apple.com> |
3456 | ||
3457 | * target-def.h (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Bracket | |
3458 | with #ifndef/#endif. | |
3459 | * config/darwin-c.c (darwin_ms_struct): New. | |
3460 | (darwin_pragma_ms_struct): Ditto. | |
3461 | (darwin_set_default_type_attributes): Ditto. | |
3462 | * config/darwin-protos.h (darwin_pragma_ms_struct): Declare. | |
3463 | * config/darwin.h (DARWIN_REGISTER_TARGET_PRAGMAS): | |
3464 | Register ms_struct pragma. | |
3465 | * config/i386/darwin.h (REGISTER_TARGET_PRAGMAS): Declare. | |
3466 | (TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Ditto. | |
3467 | * config/rs6000/rs6000.c (rs6000_set_default_type_attributes): Call | |
3468 | darwin_set_default_type_attributes if TARGET_MACHO. | |
3469 | ||
6c00f606 AM |
3470 | 2006-04-27 Andrew MacLeod <amacleod@redhat.com> |
3471 | ||
3472 | PR tree-optimization/26854 | |
3473 | * tree-vrp.c (remove_range_assertions): Use new Immuse iterator. | |
3474 | * doc/tree-ssa.texi: Update immuse iterator documentation. | |
3475 | * tree-ssa-math-opts.c (execute_cse_reciprocals_1): Use new iterator. | |
3476 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Use new iterator. | |
3477 | * tree-flow-inline.h (end_safe_imm_use_traverse, end_safe_imm_use_p, | |
3478 | first_safe_imm_use, next_safe_imm_use): Remove. | |
3479 | (end_imm_use_stmt_p): New. Check for end of immuse stmt traversal. | |
3480 | (end_imm_use_stmt_traverse): New. Terminate immuse stmt traversal. | |
3481 | (move_use_after_head): New. Helper function to sort immuses in a stmt. | |
3482 | (link_use_stmts_after): New. Link all immuses in a stmt consescutively. | |
3483 | (first_imm_use_stmt): New. Get first stmt in an immuse list. | |
3484 | (next_imm_use_stmt): New. Get next stmt in an immuse list. | |
3485 | (first_imm_use_on_stmt): New. Get first immuse on a stmt. | |
3486 | (end_imm_use_on_stmt_p): New. Check for end of immuses on a stmt. | |
3487 | (next_imm_use_on_stmt): New. Move to next immuse on a stmt. | |
3488 | * tree-ssa-forwprop.c (forward_propagate_addr_expr): Use new iterator. | |
3489 | * lambda-code.c (lambda_loopnest_to_gcc_loopnest): Use new iterator. | |
3490 | (perfect_nestify): Use new iterator. | |
16d6f994 | 3491 | * tree-vect-transform.c (vect_create_epilog_for_reduction): Use new |
6c00f606 AM |
3492 | iterator. |
3493 | * tree-flow.h (struct immediate_use_iterator_d): Add comments. | |
3494 | (next_imm_name): New field in struct immediate_use_iterator_d. | |
3495 | (FOR_EACH_IMM_USE_SAFE, BREAK_FROM_SAFE_IMM_USE): Remove. | |
16d6f994 | 3496 | (FOR_EACH_IMM_USE_STMT, BREAK_FROM_IMM_USE_STMT, |
6c00f606 AM |
3497 | FOR_EACH_IMM_USE_ON_STMT): New immediate use iterator macros. |
3498 | * tree-cfg.c (replace_uses_by): Use new iterator. | |
3499 | * tree-ssa-threadedge.c (lhs_of_dominating_assert): Use new iterator. | |
3500 | * tree-ssa-operands.c (correct_use_link): Remove. | |
3501 | (finalize_ssa_use_ops): No longer call correct_use_link. | |
3502 | ||
9613eaff SH |
3503 | 2006-04-27 Stuart Hastings <stuart@apple.com> |
3504 | ||
3505 | * config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New. | |
3506 | * config/t-darwin (crt3.o): Use it. | |
3507 | * config/rs6000/rs6000.c (rs6000_initialize_trampoline): Remove | |
3508 | 'pmode', use Pmode instead of SImode for SYMBOL_REF. | |
3509 | * config/rs6000/rs6000.md (call_indirect_nonlocal_sysv, | |
3510 | call_nonlocal_sysv, call_value_indirect_nonlocal_sysv, | |
3511 | call_value_nonlocal_sysv): Suffix with the "P" macro for 32/64 | |
3512 | support. | |
16d6f994 | 3513 | |
135c2bd4 RS |
3514 | 2006-04-27 Roger Sayle <roger@eyesopen.com> |
3515 | ||
3516 | * expmed.c (store_fixed_bit_field): If we're not optimizing for | |
3517 | size, force the intermediate into a new pseudo rather instead of | |
3518 | performing both a bitwise AND and a bitwise IOR in memory. | |
3519 | ||
921b02cd RG |
3520 | 2006-04-27 Richard Guenther <rguenther@suse.de> |
3521 | ||
3522 | PR rtl-optimization/26685 | |
3523 | * params.def (PARAM_MAX_CSE_INSNS): Correct typo that named | |
3524 | this one "max-flow-memory-locations". | |
3525 | ||
67ac6e63 RG |
3526 | 2006-04-27 Richard Guenther <rguenther@suse.de> |
3527 | ||
3528 | PR tree-optimization/25148 | |
3529 | * tree-vrp.c (compare_values): Remove code dealing with | |
3530 | comparisons against type min/max value. Honour overflow | |
3531 | and negative constants in code dealing with comparisons | |
3532 | of plus and minus expressions. | |
3533 | (value_inside_range): Use fold_binary with LE_EXPR and | |
3534 | GE_EXPR rather than compare_values. | |
3535 | ||
869170df DM |
3536 | 2006-04-27 Dirk Mueller <dmueller@suse.de> |
3537 | ||
3538 | * config/i386/xmmintrin.h (_mm_shuffle_pi16): Declare | |
3539 | prototype for SSE. | |
3540 | ||
3bf7d5e7 KZ |
3541 | 2006-04-26 Kenneth Zadeck <zadeck@naturalbridge.com> |
3542 | ||
3543 | * basic-block.h (safe_insert_insn_on_edge): Removed. | |
3544 | * cfgrtl.c (mark_killed_regs, safe_insert_insn_on_edge): Removed. | |
3545 | ||
7b282ff9 DE |
3546 | 2006-04-26 David Edelsohn <edelsohn@gnu.org> |
3547 | Paolo Bonzini <bonzini@gnu.org> | |
3548 | ||
3549 | PR middle-end/27282 | |
3550 | * combine.c (simplify_and_const_int_1): Use gen_int_mode. | |
3551 | (simplify_and_const_int): Same. | |
3552 | ||
44470433 AH |
3553 | 2006-04-26 Aldy Hernandez <aldyh@redhat.com> |
3554 | ||
e8366202 | 3555 | * tree-ssa-dse.c (dse_optimize_stmt): Remove unused variable USE. |
44470433 | 3556 | |
21a66e91 JJ |
3557 | 2006-04-26 Jakub Jelinek <jakub@redhat.com> |
3558 | ||
91b6c26d JJ |
3559 | PR c/26171 |
3560 | * cgraph.c (cgraph_varpool_finalize_decl): Don't call | |
3561 | cgraph_varpool_assemble_pending_decls if -fopenmp, unless | |
3562 | cgraph_global_info_ready. | |
3563 | ||
07ed51c9 JJ |
3564 | PR middle-end/26913 |
3565 | * tree-cfg.c (find_outermost_region_in_block): Handle RESX_EXPR. | |
3566 | ||
1562e1fe JJ |
3567 | PR c/25996 |
3568 | * c-parser.c (c_parser_omp_for_loop): Don't call c_finish_omp_for if | |
3569 | either decl or init is error_mark_node. | |
3570 | ||
21a66e91 JJ |
3571 | PR middle-end/25989 |
3572 | * tree-flow.h (struct omp_region): Add sched_kind. | |
3573 | * omp-low.c (expand_parallel_call): Use region->inner->sched_kind | |
3574 | instead of extracting omp for data. | |
3575 | (expand_omp_for): Save extracted sched_kind. | |
3576 | ||
f7acbf4c RS |
3577 | 2006-04-25 Roger Sayle <roger@eyesopen.com> |
3578 | ||
3579 | * expmed.c (store_bit_field): Also check whether the bitsize is | |
3580 | valid for the machine's "insv" instruction before moving the | |
3581 | target into a pseudo for use with the insv. | |
3582 | * config/i386/predicates.md (const8_operand): New predicate. | |
3583 | * config/i386/i386.md (extv, extzv, insv): Use the new | |
3584 | const8_operand predicate where appropriate. | |
3585 | ||
c9936427 DD |
3586 | 2006-04-25 DJ Delorie <dj@redhat.com> |
3587 | ||
3588 | * doc/install.texi (Specific): Clarify that this is not a list of | |
3589 | supported hosts or targets. | |
3590 | ||
c0c5d392 RS |
3591 | 2006-04-25 Richard Sandiford <richard@codesourcery.com> |
3592 | ||
3593 | PR rtl-optimization/26725 | |
3594 | * cfgrtl.c (rtl_redirect_edge_and_branch_force): Set the source | |
3595 | block's BB_DIRTY flag. | |
3596 | ||
d61772b2 GK |
3597 | 2006-04-25 Geoffrey Keating <geoffk@apple.com> |
3598 | ||
887dc802 GK |
3599 | * dwarf2out.c (size_of_locs): Don't fill dw_loc_addr if there |
3600 | are no branches. | |
3601 | ||
d61772b2 GK |
3602 | * dwarf2asm.c (dw2_asm_output_data): Don't generate RTL just |
3603 | to print an integer. | |
3604 | ||
d5fa3ec8 DE |
3605 | 2006-04-25 David Edelsohn <edelsohn@gnu.org> |
3606 | ||
3607 | * varasm.c (align_variable): New function. | |
3608 | (get_block_for_decl): Apply align_variable to DECL before | |
3609 | calculating section information. | |
3610 | (assemble_variable): Split out alignment computation. | |
3611 | ||
495db1a1 AK |
3612 | 2006-04-25 Andreas Krebbel <krebbel1@de.ibm.com> |
3613 | ||
3614 | * expmed.c (store_bit_field): Handle paradoxical subregs on big endian | |
3615 | machines. | |
3616 | ||
75d8b2d0 BS |
3617 | 2006-04-25 Bernd Schmidt <bernd.schmidt@analog.com> |
3618 | ||
3619 | * genmodes.c (make_vector_mode): Allow making VECTOR_MODE_INT of a | |
3620 | MODE_PARTIAL_INT mode. | |
3621 | * config/bfin/bfin-modes.def: Add V2PDI and V2SI. | |
3622 | * config/bfin/bfin.c (print_operand): Add macflag and mac/msu modifiers | |
3623 | for CONST_INTs. | |
3624 | (hard_regno_mode_ok): V2PDImode is ok for accumulators. | |
3625 | * config/bfin/bfin.h (CLASS_MAX_NREGS, HARD_REGNO_NREGS): Handle | |
3626 | V2PDImode. | |
3627 | * config/bfin/predicates.md (const01_operand, vec_shift_operand): | |
3628 | New predicates. | |
3629 | * config/bfin/bfin.md (UNSPEC_MUL_WITH_FLAG, UNSPEC_MAC_WITH_FLAG): | |
3630 | New constants. | |
3631 | (MACFLAG_NONE, MACFLAG_T, MACFLAG_FU, MACFLAG_TFU, MACFLAG_IS, | |
3632 | MACFLAG_IU, MACFLAG_W32, MACFLAG_M, MACFLAG_S2RND, MACFLAG_ISS2, | |
3633 | MACFLAG_IH): Likewise. | |
3634 | (movstricthi_1): Renamed from "*movstricthi". | |
3635 | (load_accumulator, load_accumulator_pair, movsi_insv, insv, | |
3636 | ssaddsi3, sssubsi3, ssnegsi2, signbitssi2, smaxhi3, sminhi3, | |
3637 | abshi2, neghi2, ssneghi2, signbitshi2, movhi_low2high, | |
3638 | movhi_high2high, movhi_low2low, movhi_high2low, movhiv2hi_low, | |
3639 | movhiv2hi_high, composev2hi, movv2hi_hi, movv2hi_hi_low, | |
3640 | movv2hi_hi_high, ssaddhi3, sssubhi3, ssaddv2hi3, sssubv2hi3, | |
3641 | addsubv2hi3, subaddv2hi3, ssaddsubv2hi3, sssubaddv2hi3, | |
3642 | sublohiv2hi3, subhilov2hi3, sssublohiv2hi3, sssubhilov2hi3, | |
3643 | addlohiv2hi3, addhilov2hi3, ssaddlohiv2hi3, ssaddhilov2hi3, | |
3644 | mulhisi_ll, mulhisi_lh, mulhisi_hl, mulhisi_hh, ssnegv2hi2, | |
3645 | ssashiftv2hi3, ssashifthi3, lshiftv2hi3, lshifthi3, packv2hi, | |
3646 | flag_mulhi, flag_mulhisi_parts, flag_machi, flag_machi_acconly, | |
3647 | flag_macinithi, flag_macinit1hi, flag_mulv2hi, flag_mulv2hi_parts, | |
3648 | flag_macv2hi_parts, flag_macv2hi_parts_acconly, | |
3649 | flag_macinitv2hi_parts, flag_macinit1v2hi_parts): New patterns. | |
3650 | ||
6d75cd5f BS |
3651 | * doc/rtl.texi (ss_ashift): Improve wording. |
3652 | ||
6f8d8ef0 GK |
3653 | 2006-04-24 Geoffrey Keating <geoffk@apple.com> |
3654 | ||
3655 | * dwarf2out.c (verify_marks_clear): New. | |
3656 | (prune_unused_types): Call verify_marks_clear initially, not | |
3657 | prune_unmark_dies. | |
3658 | ||
e551ad26 BS |
3659 | 2006-04-24 Bernd Schmidt <bernd.schmidt@analog.com> |
3660 | ||
3661 | * rtl.def (SS_ASHIFT, SS_NEG): New codes. | |
3662 | * doc/rtl.texi: Document them. | |
3663 | * simplify-rtx.c (simplify_unary_operation, | |
3664 | simplify_binary_operation_1): Don't abort when we see them. | |
3665 | ||
bfa11223 MM |
3666 | 2006-04-24 Mark Mitchell <mark@codesourcery.com> |
3667 | ||
3668 | Revert: | |
3669 | 2006-04-23 Mark Mitchell <mark@codesourcery.com> | |
3670 | * configure.ac: Completely disregard languages that are not | |
3671 | enabled. | |
3672 | * configure: Regenerated. | |
3673 | ||
d84b37b0 AP |
3674 | 2006-04-24 Andrew Pinski <pinskia@gcc.gnu.org> |
3675 | Richard Guenther <rguenther@suse.de> | |
3676 | ||
3677 | PR tree-optimization/27236 | |
3678 | * tree-inline.c (copy_body_r): Make sure to copy | |
3679 | TREE_THIS_VOLATILE flag. | |
3680 | ||
c0a3f887 RG |
3681 | 2006-04-24 Richard Guenther <rguenther@suse.de> |
3682 | ||
3683 | PR middle-end/26869 | |
3684 | * tree-complex.c (update_parameter_components): Don't handle | |
3685 | unused parameters which have no default def. | |
3686 | ||
72fa5e06 AP |
3687 | 2006-04-24 Andrew Pinski <pinskia@gcc.gnu.org> |
3688 | Richard Guenther <rguenther@suse.de> | |
3689 | ||
3690 | PR tree-optimization/27218 | |
3691 | * tree-inline.c (expand_call_inline): Strip useless type | |
3692 | conversions for the return slot address. | |
3693 | ||
0162f155 RG |
3694 | 2006-04-24 Richard Guenther <rguenther@suse.de> |
3695 | ||
3696 | * cfgloop.h (struct loops): Remove unused field array. Reorder | |
3697 | state after num. | |
3698 | (LOOP_PREFETCH): Remove. | |
3699 | ||
7e1584f8 RG |
3700 | 2006-04-24 Richard Guenther <rguenther@suse.de> |
3701 | ||
3702 | PR tree-optimization/22525 | |
3703 | * value-prof.c (tree_mod_pow2): Remove unnecessary temporary | |
3704 | variable, adjust types of generated expressions. | |
3705 | ||
d24b23bb L |
3706 | 2006-04-23 H.J. Lu <hongjiu.lu@intel.com> |
3707 | ||
3708 | * Makefile.in (c-convert.o): Add dependency on $(TARGET_H) | |
3709 | (tree-vect-patterns.o): Likewise. | |
3710 | (jump.o): Likewise. | |
3711 | (cselib.o): Likewise. | |
3712 | (loop-doloop.o): Likewise. | |
3713 | (regclass.o): Likewise. | |
3714 | (reload1.o): Likewise. | |
3715 | (explow.o): Replace target.h with $(TARGET_H). | |
3716 | (ipa-prop.o): Likewise. | |
3717 | (ipa-cp.o): Likewise. | |
3718 | (ipa-inline.o): Likewise. | |
3719 | (reorg.o): Likewise. | |
3720 | (reg-stack.o): Likewise. | |
3721 | ||
e8c3ff97 EB |
3722 | 2006-04-23 Eric Botcazou <ebotcazou@adacore.com> |
3723 | ||
3724 | * tree-tailcall.c (pass_tail_recursion): Use gate_tail_calls too. | |
3725 | ||
38a4afee MM |
3726 | 2006-04-23 Mark Mitchell <mark@codesourcery.com> |
3727 | ||
bfa11223 MM |
3728 | * print-tree.c (print_node): Print DECL_BIT_FIELD_TYPE. |
3729 | ||
3730 | * configure.ac: Completely disregard languages that are not | |
3731 | enabled. | |
3732 | * configure: Regenerated. | |
3733 | ||
38a4afee MM |
3734 | PR c++/26534 |
3735 | * c-common.h (c_build_bitfield_integer_type): Declare. | |
3736 | * c-decl.c (c_build_bitfield_integer_type): Move to ... | |
3737 | * c-common.c (c_build_bitfield_integer_type): ... here. | |
3738 | ||
acb188c1 RS |
3739 | 2006-04-23 Roger Sayle <roger@eyesopen.com> |
3740 | ||
3741 | PR target/21283 | |
3742 | * config/fr30/fr30.md (define_split): Avoid calling gen_lowpart on | |
3743 | a SImode SUBREG of a floating point register after no_new_pseudos. | |
3744 | ||
a02ee5b2 RS |
3745 | 2006-04-23 Roger Sayle <roger@eyesopen.com> |
3746 | ||
3747 | * config/fr30/fr30.md (addsi_small_int): Use REGNO_PTR_FRAME_P to | |
3748 | identify potentially eliminable registers to additionally catch | |
3749 | VIRTUAL_INCOMING_ARGS_REGNUM. | |
3750 | (addsi3): Update the conditions on when to use addsi_small_int. | |
3751 | ||
c21242e8 RS |
3752 | 2006-04-23 Roger Sayle <roger@eyesopen.com> |
3753 | ||
3754 | PR target/16641 | |
3755 | * config/fr30/fr30.h (GO_IF_LEGITIMATE_ADDRESS): Check REGNO for | |
3756 | STACK_POINTER_RTX and FRAME_POINTER_RTX instead of comparing the | |
3757 | rtx to stack_pointer_rtx or frame_pointer_rtx directly. | |
3758 | ||
1464eeb8 EB |
3759 | 2006-04-23 Eric Botcazou <ebotcazou@adacore.com> |
3760 | ||
3761 | * fold-const.c (range_predecessor): Use operand_equal_p | |
3762 | as the predicate for equality. | |
3763 | (range_successor): Likewise. | |
3764 | ||
9542abd3 KH |
3765 | 2006-04-22 Kazu Hirata <kazu@codesourcery.com> |
3766 | ||
3767 | Revert: | |
3768 | * config/soft-fp/op-common.h: Fix a typo. | |
3769 | ||
110c4563 FCE |
3770 | 2006-04-22 Frank Ch. Eigler <fche@redhat.com> |
3771 | ||
3772 | PR libmudflap/26864 | |
3773 | * common.opt (flag_mudflap_threads): Overload flag_mudflap. | |
3774 | * tree-mudflap.c (flag_mudflap_threads): Derive from flag_mudflap. | |
3775 | ||
66a4ad37 KH |
3776 | 2006-04-22 Kazu Hirata <kazu@codesourcery.com> |
3777 | ||
3778 | * config/soft-fp/op-common.h, double-int.h, tree-ssa-dom.c: | |
3779 | Fix comment typos. | |
3780 | * doc/tm.texi: Fix a typo. | |
3781 | ||
d6eeb3ba GK |
3782 | 2006-04-21 Geoffrey Keating <geoffk@apple.com> |
3783 | ||
3784 | * dwarf2out.c (struct die_struct): Document that die_sib makes | |
3785 | a circular linked list. | |
3786 | (FOR_EACH_CHILD): New. | |
3787 | (reverse_die_lists): Delete. | |
3788 | (reverse_all_dies): Delete. | |
3789 | (add_dwarf_attr): Correct documentation. | |
3790 | (remove_child_with_prev): New. | |
3791 | (remove_child_TAG): Update for change to die_struct, use | |
3792 | remove_child_with_prev. | |
3793 | (add_child_die): Update for change to die_struct. | |
3794 | (splice_child_die): Use remove_child_with_prev and add_child_die. | |
3795 | (print_die): Use FOR_EACH_CHILD. | |
3796 | (die_checksum): Likewise. | |
3797 | (assign_symbol_names): Likewise. | |
3798 | (output_location_lists): Likewise. | |
3799 | (build_abbrev_table): Likewise. | |
3800 | (calc_die_sizes): Likewise. | |
3801 | (mark_dies): Likewise. | |
3802 | (unmark_dies): Likewise. | |
3803 | (unmark_all_dies): Likewise. | |
3804 | (output_die): Likewise. | |
3805 | (prune_unused_types_mark): Likewise. | |
3806 | (prune_unused_types_walk): Likewise. | |
3807 | (same_die_p): Update for change to die_struct. | |
3808 | (break_out_includes): Likewise. | |
3809 | (prune_unused_types_prune): Likewise. | |
3810 | (add_sibling_attributes): Use FOR_EACH_CHILD, simplify logic. | |
3811 | (prune_unmark_dies): Use FOR_EACH_CHILD, don't clear die_mark if | |
3812 | it's already clear. | |
3813 | (dwarf2out_finish): Don't call reverse_all_dies. | |
3814 | ||
7a0b46c9 EC |
3815 | 2006-04-21 Eric Christopher <echristo@apple.com> |
3816 | ||
3817 | * df-core.c, tree-outof-ssa.c, config/i386/i386.c: Fix typos | |
3818 | in comments and function names. | |
3819 | ||
5d5e98dc VR |
3820 | 2006-04-21 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
3821 | ||
f01da1a5 VR |
3822 | PR c/25875 |
3823 | * c-typeck.c (digest_init): Robustify. | |
3824 | ||
5d5e98dc VR |
3825 | * c-typeck.c (pop_init_level): Simplify. |
3826 | ||
3144998a SE |
3827 | 2006-04-21 Steve Ellcey <sje@cup.hp.com> |
3828 | ||
3829 | * config/pa/t-pa64: Add dependencies on $(GCC_PASSES). | |
3830 | ||
87b24aaf PB |
3831 | 2006-04-21 Paul Brook <paul@codesourcery.com> |
3832 | ||
3833 | * config/arm/arm.c (arm_override_options): Error on iWMMXt and | |
3834 | hardware floating point. | |
3835 | ||
e3604432 DE |
3836 | 2006-04-21 David Edelsohn <edelsohn@gnu.org> |
3837 | ||
3838 | * config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Add sfp to | |
3839 | NON_FLOAT_REGS. | |
3840 | ||
15eaa78f NC |
3841 | 2006-04-21 Nick Clifton <nickc@redhat.com> |
3842 | ||
3843 | * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Include | |
3844 | OPT_EXTRA_PARTS. | |
3845 | ||
56438901 AM |
3846 | 2006-04-21 Alan Modra <amodra@bigpond.net.au> |
3847 | ||
3848 | PR target/27230 | |
3849 | * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Use | |
3850 | C++ lang type in traceback table for Objective-C++. | |
3851 | ||
3852 | * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Update comment. | |
3853 | ||
a46cec70 L |
3854 | 2006-04-20 H.J. Lu <hongjiu.lu@intel.com> |
3855 | ||
3856 | * config/i386/i386.c (asm_preferred_eh_data_format): Reformat. | |
3857 | ||
06866a73 VR |
3858 | 2006-04-20 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
3859 | ||
3860 | PR mudflap/26789 | |
3861 | * tree-mudflap.c (mudflap_finish_file): Skip function when there | |
3862 | were errors. Remove check for erroneous objects. | |
3863 | ||
bfc646bf JL |
3864 | 2006-04-20 Jeff Law <law@redhat.com> |
3865 | ||
3866 | PR tree-optimization/26854 | |
3867 | * tree-ssa-dse.c (dse_optimize_stmt): Avoid num_imm_uses when | |
3868 | checking for zero or one use. | |
3869 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Similarly. | |
3870 | * tree-cfgcleanup.c (merge_phi_nodes): Similarly. | |
3871 | * tree-ssa-reassoc.c (negate_value): Similarly. | |
3872 | (reassociate_bb): Similarly. | |
3873 | ||
455f78d9 JJ |
3874 | 2006-04-20 Jakub Jelinek <jakub@redhat.com> |
3875 | ||
3876 | * c-pretty-print.c (pp_c_direct_abstract_declarator): Print | |
3877 | TYPE_MAX_VALUE (TYPE_DOMAIN (t)) + 1 for ARRAY_TYPE rather | |
3878 | than plain TYPE_MAX_VALUE (TYPE_DOMAIN (t)). | |
3879 | ||
9a74f8ee AM |
3880 | 2006-04-20 Alan Modra <amodra@bigpond.net.au> |
3881 | ||
3882 | * config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Consume all | |
3883 | fp regs if the last fp arg doesn't fit in regs. | |
3884 | ||
904b6a0e KK |
3885 | 2006-04-20 Kaz Kojima <kkojima@gcc.gnu.org> |
3886 | ||
3887 | PR target/27182 | |
3888 | * config/sh/sh.md (movsicc_true+3): Tweak condition for the case | |
3889 | that the last insn has the REG_INC note. | |
3890 | ||
9dfb66b9 CD |
3891 | 2006-04-19 Carlos O'Donell <carlos@codesourcery.com> |
3892 | Nathan Sidwell <nathan@codesourcery.com> | |
3893 | ||
3894 | PR c/26774 | |
7a0b46c9 | 3895 | * stor-layout.c (update_alignment_for_field): Do not align |
9dfb66b9 CD |
3896 | ERROR_MARK nodes. |
3897 | (place_union_field): Place union field at the start of the union. | |
3898 | (place_field): Move ERROR_MARK check later, and use the current | |
3899 | allocation position to maintain monotonicity. | |
3900 | ||
74c96e0c ZD |
3901 | 2006-04-19 Zdenek Dvorak <dvorakz@suse.cz> |
3902 | ||
3903 | * dominance.c: Include timevar.h. | |
3904 | (calculate_dominance_info): Use TV_DOMINANCE. | |
3905 | * timevar.def (TV_DOMINANCE): New timevar. | |
3906 | * Makefile.in (dominance.o): Add TIMEVAR_H dependency. | |
3907 | ||
e90cd854 AK |
3908 | 2006-04-19 Andreas Krebbel <krebbel1@de.ibm.com> |
3909 | ||
4414de4a | 3910 | PR rtl-optimization/14261 |
e90cd854 AK |
3911 | * ifcvt.c (noce_emit_move_insn): Call store_bit_field if the resulting |
3912 | move would be an INSV insn. | |
7a0b46c9 | 3913 | (noce_process_if_block): Don't optimize if the destination is a |
e90cd854 AK |
3914 | ZERO_EXTRACT which can't be handled by noce_emit_move_insn. |
3915 | ||
43a09b63 AK |
3916 | 2006-04-19 Andreas Krebbel <krebbel1@de.ibm.com> |
3917 | ||
3918 | * config/s390/s390.md: Add comments with the instructions emitted | |
3919 | by an insn pattern if macros are used. | |
3920 | ||
0f35201e AM |
3921 | 2006-04-19 Alan Modra <amodra@bigpond.net.au> |
3922 | ||
3923 | PR rtl-optimization/26026 | |
3924 | * fold-const.c (fold_binary): Optimize div and mod where the divisor | |
3925 | is a known power of two shifted left a variable amount. | |
3926 | ||
76f7a74f GK |
3927 | 2006-04-18 Geoffrey Keating <geoffk@apple.com> |
3928 | ||
3929 | * dwarf2out.c (prune_unused_types_update_strings): Don't add strings | |
3930 | to hash table twice when the debug_str section has SECTION_MERGE. | |
3931 | ||
49721058 JM |
3932 | 2006-04-18 Joseph S. Myers <joseph@codesourcery.com> |
3933 | ||
3934 | * config/soft-fp: New directory. From glibc. | |
3935 | * config/soft-fp/t-softfp: New. | |
3936 | * config/soft-fp/README: New. | |
3937 | * mklibgcc.in: Handle LIB2FUNCS_EXCLUDE. | |
3938 | * Makefile.in (LIB2FUNCS_EXCLUDE, SFP_MACHINE): New. | |
3939 | (libgcc.mk): Pass LIB2FUNCS_EXCLUDE. | |
3940 | (LIBGCC_DEPS): Add $(SFP_MACHINE). | |
3941 | * config.gcc: Use rs6000/t-fprules-fpbit or | |
3942 | rs6000/t-fprules-softfp and soft-fp/t-softfp together with | |
3943 | rs6000/t-fprules. | |
3944 | * config/rs6000/sfp-machine.h: New. Based on glibc. | |
3945 | * config/rs6000/t-fprules-fpbit, config/rs6000/t-fprules-softfp: | |
3946 | New. | |
3947 | * config/rs6000/t-fprules: Remove fp-bit rules. | |
3948 | * config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Use +=. | |
3949 | * config/rs6000/t-linux64: Likewise. Remove duplicates from | |
3950 | LIB2FUNCS_EXTRA. Remove fp-bit rules. | |
3951 | (softfp_wrap_start, softfp_wrap_end): New. | |
3952 | ||
7e96ee36 DD |
3953 | 2006-04-18 DJ Delorie <dj@redhat.com> |
3954 | ||
3955 | * config/m32c/m32c.h (PTRDIFF_TYPE): Define. | |
3956 | ||
d955420e DP |
3957 | 2006-04-18 Devang Patel <dpatel@apple.com> |
3958 | ||
3959 | * doc/invoke.texi (-Wuninitialized): Clarify -O connection. | |
7a0b46c9 | 3960 | |
503b5c9f NC |
3961 | 2006-04-18 Nick Clifton <nickc@redhat.com> |
3962 | ||
3963 | * config/sh/t-symbian: Add rule to build sh-c.o | |
3964 | * config/sh/symbian.c (sh_symbian_mark_dllexport): Replace use | |
3965 | of DECL_NON_ADDR_CONST_P with DECL_DLLIMPORT_P. | |
3966 | (sh_symbian_encode_section_info): Likewise. | |
3967 | ||
c2f07c00 AK |
3968 | 2006-04-18 Andreas Krebbel <krebbel1@de.ibm.com> |
3969 | ||
7a0b46c9 | 3970 | * builtins.c (expand_builtin_strcmp): Cover label definition of |
c2f07c00 AK |
3971 | do_libcall with HAVE_cmpstrnsi. |
3972 | ||
6370682a KH |
3973 | 2006-04-18 Kazu Hirata <kazu@codesourcery.com> |
3974 | ||
3975 | * function.c (temp_slots_at_level, max_slot_level): Use VEC | |
3976 | instead of VARRAY. | |
3977 | * function.h (temp_slot_p): New. | |
3978 | (function): Change the type of x_used_temp_slots to | |
3979 | VEC(temp_slot_p,gc) *. | |
3980 | ||
224504d2 NC |
3981 | 2006-04-18 Nick Clifton <nickc@redhat.com> |
3982 | ||
13a41b42 NC |
3983 | * config/mmix/mmix.h (OPTIMIZATION_OPTIONS): Remove reference to |
3984 | flag_strength_reduce. | |
3985 | ||
224504d2 NC |
3986 | * doc/tm.texi (TARGET_SECTION_TYPE_FLAGS): Fix typo. |
3987 | ||
6ee2e158 PB |
3988 | 2006-04-18 Paolo Bonzini <bonzini@gnu.org> |
3989 | ||
e8366202 | 3990 | PR target/27117 |
6ee2e158 PB |
3991 | |
3992 | Partial revert of revision 112637 | |
3993 | 2006-04-03 Paolo Bonzini <bonzini@gnu.org> | |
3994 | Dale Johannesen <dalej@apple.com> | |
3995 | ||
3996 | PR target/19653 | |
3997 | * regclass.c (struct reg_pref): Update documentation. | |
3998 | (regclass): Set prefclass to NO_REGS if memory is the best option. | |
3999 | (record_reg_classes): Cope with a prefclass set to NO_REGS. | |
4000 | ||
e3949961 PB |
4001 | 2006-04-18 Paolo Bonzini <bonzini@gnu.org> |
4002 | ||
e8366202 MS |
4003 | PR tree-optimization/26821 |
4004 | * tree-ssa-math-opts.c (get_constant_one): New. | |
4005 | (insert_reciprocals): Use it. | |
e3949961 | 4006 | |
e26303c2 GK |
4007 | 2006-04-17 Geoffrey Keating <geoffk@apple.com> |
4008 | ||
4009 | * dwarf2out.c (free_AT): Delete. | |
4010 | (remove_AT): Update string ref counts. | |
4011 | (remove_child_TAG): Don't call free_die. | |
4012 | (free_die): Delete. | |
4013 | (break_out_includes): Don't call free_die on DW_TAG_GNU_BINCL | |
4014 | or DW_TAG_GNU_EINCL. | |
4015 | (prune_unused_types_walk_attribs): Reset string refcounts. | |
4016 | (prune_unused_types_update_strings): New. | |
4017 | (prune_unused_types_prune): Don't make unnecessary stores. Don't | |
4018 | call free_die. Do call prune_unused_types_update_strings. | |
4019 | (prune_unused_types): Empty debug_str_hash. | |
4020 | ||
6cc1d694 RS |
4021 | 2006-04-17 Roger Sayle <roger@eyesopen.com> |
4022 | ||
4023 | * expr.c (expand_assignment): Optimize away no-op moves where the | |
4024 | source and destination are equal and have no side-effects. | |
4025 | ||
71a9b19a RG |
4026 | 2006-04-17 Richard Guenther <rguenther@suse.de> |
4027 | ||
4028 | PR target/26826 | |
4029 | * reload.c (push_reload): Guard calls to get_secondary_mem | |
4030 | for memory subregs. | |
4031 | ||
08c79682 KH |
4032 | 2006-04-16 Kazu Hirata <kazu@codesourcery.com> |
4033 | ||
4034 | * alias.c (reg_base_value, old_reg_base_value): Change the | |
4035 | type to VEC(rtx,gc) *. | |
4036 | (REG_BASE_VALUE, find_base_value, record_set, | |
4037 | init_alias_analysis): Use VEC instead of VARRAY. | |
4038 | ||
1a5640b4 KH |
4039 | * alias.c (alias_sets): Change the type to |
4040 | VEC(alias_set_entry,gc) *. | |
4041 | (get_alias_set_entry, new_alias_set, record_alias_subset): Use | |
4042 | VEC instead of VARRAY. | |
4043 | (last_alias_set): Remove. | |
4044 | ||
b2c0ad40 KH |
4045 | * cgraph.h (cgraph_edge_p): New. |
4046 | Update the prototype of cgraph_function_versioning. | |
4047 | * cgraphunit.c (cgraph_copy_node_for_versioning, | |
4048 | cgraph_function_versioning): Use VEC instead of VARRAY. | |
4049 | * ipa-cp.c (ipcp_insert_stage): Likewise. | |
4050 | ||
726ac11e RS |
4051 | 2006-04-16 Roger Sayle <roger@eyesopen.com> |
4052 | ||
4053 | PR target/26961 | |
4054 | * fold-const.c (fold_ternary): When converting "A ? B : C" into either | |
4055 | "A op B" or "A op C", we may need to convert A to the type of B and C. | |
4056 | ||
b12cbf2c AN |
4057 | 2006-04-16 Adam Nemet <anemet@caviumnetworks.com> |
4058 | ||
4059 | * target.h (struct gcc_target): Add mode_rep_extended. | |
4060 | * rtlanal.c (num_sign_bit_copies_in_rep): New global. | |
4061 | (init_num_sign_bit_copies_in_rep): Initialize it using | |
4062 | mode_rep_extended. | |
4063 | (truncate_to_mode): Use it. | |
4064 | (init_rtlanal): Call init_num_sign_bit_copies_in_rep. | |
4065 | * targhooks.h (default_mode_rep_extended): Declare it. | |
4066 | * targhooks.c (default_mode_rep_extended): Define it. | |
4067 | * target-def.h (TARGET_MODE_REP_EXTENDED): New macro. Default to | |
4068 | default_mode_rep_extended. | |
4069 | (TARGET_INITIALIZER): Include it. | |
4070 | * doc/tm.texi (Misc): Document it. | |
4071 | * config/mips/mips.c (TARGET_TRUNCATED_TO_MODE): Override it. | |
4072 | (mips_truncated_to_mode): New function. | |
4073 | ||
d763e130 RS |
4074 | 2006-04-16 Roger Sayle <roger@eyesopen.com> |
4075 | ||
4076 | PR middle-end/25474 | |
4077 | * expr.c (compress_float_constant): Copy the narrow constant into | |
4078 | a new pseudo before extending it to its final width. | |
4079 | ||
2ff61948 RS |
4080 | 2006-04-16 Roger Sayle <roger@eyesopen.com> |
4081 | Andrew Pinski <pinskia@gcc.gnu.org> | |
4082 | Dale Johannesen <dalej@apple.com> | |
4083 | ||
4084 | PR target/24076 | |
4085 | * config/i386/i386.c (ix86_expand_vector_init_duplicate): Add | |
4086 | special case code to implement V8HImode and V16QImode with SSE2. | |
4087 | ||
3db8a113 RS |
4088 | 2006-04-15 Roger Sayle <roger@eyesopen.com> |
4089 | ||
4090 | * config/i386/i386.c (ix86_va_start): Ensure all integer constant | |
4091 | trees are constructed with a suitable tree type. | |
4092 | ||
7fe25d1a RS |
4093 | 2006-04-15 Roger Sayle <roger@eyesopen.com> |
4094 | ||
4095 | * tree.c (integer_zerop): Ignore TREE_CONSTANT_OVERFLOW. | |
4096 | (integer_onep): Likewise. | |
4097 | (integer_all_onesp): Likewise. | |
4098 | (integer_pow2p): Likewise. | |
4099 | (integer_nonzerop): Likewise. | |
4100 | (real_zerop): Likewise. | |
4101 | (real_onep): Likewise. | |
4102 | (real_twop): Likewise. | |
4103 | (real_minus_onep): Likewise. | |
4104 | (int_size_in_bytes): Likewise. | |
4105 | (host_integerp): Likewise. | |
4106 | ||
75c40d56 KH |
4107 | 2006-04-15 Kazu Hirata <kazu@codesourcery.com> |
4108 | ||
4109 | * cfgcleanup.c, config/dfp-bit.c, expr.c, fold-const.c, | |
4110 | jump.c, mips-tfile.c, omp-low.c, sched-int.h, | |
4111 | tree-ssa-loop-prefetch.c, tree-vrp.c: Fix comment typos. | |
4112 | ||
aacac31f KH |
4113 | * tree-ssa-structalias.h (alias_info): Remove num_references. |
4114 | ||
8370f6fa JDA |
4115 | 2006-04-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
4116 | ||
4117 | * pa.md (output_bb patterns): Shorten long branch alternatives by 4. | |
4118 | (output_bvb patterns): Likewise. | |
4119 | * pa.c (output_bb): Use 'bb' insn for long branch case. | |
4120 | (output_bvb): Likewise use '{bvb|bb}' for long branch case. | |
4121 | (output_dbra): Use '{comb|cmpb}' for long branch case for alternative | |
4122 | 1. Correct length operand for alternatives 1 and 2. | |
4123 | (output_movb): Use '{comb|cmpb}' for long branch case for alternatives | |
4124 | 1, 2 and 3. Correct length operand for alternatives 1, 2 and 3. | |
4125 | ||
bed575d5 RS |
4126 | 2006-04-14 Roger Sayle <roger@eyesopen.com> |
4127 | ||
4128 | * tree-cfg.c (make_edges, make_omp_sections_edges, move_stmt_r, | |
4129 | is_ctrl_altering_stmt): Reinstate RTH's changes from r112935 that | |
4130 | were accidentally reverted by r112959. | |
4131 | ||
7e2df4a1 JJ |
4132 | 2006-04-15 Jakub Jelinek <jakub@redhat.com> |
4133 | ||
4134 | PR middle-end/26823 | |
4135 | * except.h (eh_region_outermost): New prototype. | |
4136 | * except.c (eh_region_outermost): New function. | |
4137 | * tree-cfg.c (find_outermost_region_in_block): Use it. | |
4138 | ||
43b373a2 KH |
4139 | 2006-04-14 Kazu Hirata <kazu@codesourcery.com> |
4140 | ||
4141 | * local-alloc.c (rest_of_handle_local_alloc): Use VEC instead | |
4142 | of VARRAY. | |
4143 | * reload1.c (reg_equiv_memory_loc_varray): Rename to | |
4144 | reg_equiv_memory_loc_vec. Change the type to VEC(rtx,gc) *. | |
4145 | (init_reload, reload): Use VEC instead of VARRAY. | |
4146 | * reload.h: Update the prototype for | |
4147 | reg_equiv_memory_loc_varray. | |
4148 | ||
68ba34f3 | 4149 | 2006-04-14 Alexey Starovoytov <alexey.starovoytov@sun.com> |
e8366202 | 4150 | Eric Botcazou <ebotcazou@libertysurf.fr> |
68ba34f3 AS |
4151 | |
4152 | * config/sparc/sparc.c (emit_and_preserve): Allocate space for the | |
4153 | register save area. | |
4154 | ||
39b1ec97 UB |
4155 | 2005-04-13 Uros Bizjak <uros@kss-loka.si> |
4156 | ||
4157 | PR middle-end/27134 | |
4158 | * builtins.c (expand_builtin_int_roundingfn): Use expand_normal() | |
4159 | to expand fallback builtin function call. | |
4160 | ||
880864cf AM |
4161 | 2006-04-14 Alan Modra <amodra@bigpond.net.au> |
4162 | ||
4163 | PR middle-end/27095 | |
4164 | * builtins.c: (expand_builtin_memset): Stabilize args before expansion | |
4165 | and emit libcall here in case the builtin fails. | |
4166 | (expand_builtin_strcmp): Always emit the libcall here on failure. | |
4167 | ||
1935e8a8 KH |
4168 | 2006-04-14 Kazu Hirata <kazu@codesourcery.com> |
4169 | ||
4170 | * basic-block.h (REG_BASIC_BLOCK): Use VEC instead of VARRAY. | |
4171 | * flow.c (reg_n_info): Change the type to | |
4172 | VEC(reg_info_p,heap) *. | |
4173 | * regclass.c (allocate_reg_info, free_reg_info): Use VEC | |
4174 | instead of VARRAY. | |
4175 | * regs.h (reg_info_p): New. | |
4176 | (REG_N_REFS, REG_FREQ, REG_N_SETS, REG_N_DEATHS, | |
4177 | REG_N_CALLS_CROSSED, REG_N_THROWING_CALLS_CROSSED, | |
4178 | REG_LIVE_LENGTH, REGNO_FIRST_UID, REGNO_LAST_UID): Use VEC | |
4179 | instead of VARRAY. | |
4180 | ||
6f8dd94b EB |
4181 | 2006-04-13 Eric Botcazou <ebotcazou@adacore.com> |
4182 | ||
4183 | * params.def (PARAM_MAX_SCHED_READY_INSNS): New parameter, | |
4184 | defaulting to 100. | |
4185 | * params.h (MAX_SCHED_READY_INSNS): New macro. | |
4186 | * haifa-sched.c: (queue_to_ready): Re-queue insns for the next cycle | |
4187 | past MAX_SCHED_READY_INSNS during the first scheduling pass. | |
4188 | (schedule_block): Delay insns past MAX_SCHED_READY_INSNS in | |
4189 | the ready list for 1 cycle during the first scheduling pass. | |
4190 | * doc/invoke.texi (--param): New parameter max-sched-ready-insns. | |
4191 | ||
777f7f9a RH |
4192 | 2006-04-13 Richard Henderson <rth@redhat.com> |
4193 | ||
bed575d5 | 4194 | PR libgomp/26651 |
777f7f9a RH |
4195 | * gimple-low.c (lower_omp_directive): Remove dead code. |
4196 | (lower_stmt): Do nothing except for openmp, except for OMP_PARALLEL. | |
4197 | * gimplify.c (gimplify_expr): Update for OMP_RETURN, OMP_CONTINUE. | |
4198 | * omp-low.c (struct omp_region): Move to tree-flow.h. | |
4199 | (root_omp_region): Export. | |
4200 | (omp_regions, lookup_omp_region): Remove. | |
4201 | (determine_parallel_type): Update for struct omp_region changes. | |
4202 | (dump_omp_region): Dump regions with block numbers. | |
4203 | (new_omp_region): Take type and block instead of stmt; malloc | |
4204 | instead of ggc. | |
4205 | (free_omp_region_1, free_omp_regions): New. | |
4206 | (expand_parallel_call): Take entry_stmt as argument; update for | |
4207 | changes to omp_region. | |
4208 | (remove_exit_barrier): Rewrite to update OMP_RETURN_NOWAIT. | |
4209 | (remove_exit_barriers): New. | |
4210 | (expand_omp_parallel): Update for struct omp_region changes. | |
4211 | (expand_omp_synch): Likewise. | |
4212 | (expand_omp): Likewise. | |
4213 | (expand_omp_for_static_nochunk): Likewise; update for OMP_CONTINUE. | |
4214 | (expand_omp_for_static_chunk): Likewise. | |
4215 | (expand_omp_for): Likewise. | |
4216 | (expand_omp_for_generic): Likewise; emit the proper GOMP_loop_end call. | |
4217 | (expand_omp_sections): Similarly, with GOMP_sections_end. | |
4218 | (expand_omp_single): New. | |
4219 | (build_omp_regions_1): Update for OMP_CONTINUE. | |
4220 | (execute_expand_omp): Call remove_exit_barriers, free_omp_regions. | |
4221 | (lower_omp_sections): Expand with OMP_CONTINUE, do not collect | |
4222 | OMP_SECTIONS_SECTIONS. | |
4223 | (lower_omp_single_simple): Don't emit barrier here. | |
4224 | (lower_omp_single_copy): Likewise. | |
4225 | (lower_omp_single): Fix bindings, and lower to straightline now. | |
4226 | (lower_omp_master, lower_omp_ordered): Likewise. | |
4227 | (lower_omp_critical): Likewise. | |
4228 | (lower_omp_for): Likewise. Emit OMP_CONTINUE. | |
4229 | * tree-cfg.c (make_edges): Collect an omp_region tree, use it for | |
4230 | omp edges, free it afterward. | |
4231 | (make_omp_sections_edges): Remove. | |
4232 | (is_ctrl_altering_stmt): Don't bother checking flag_openmp. | |
4233 | (move_stmt_r): Handle OMP_CONTINUE. | |
7a0b46c9 | 4234 | * tree-flow.h (struct omp_region): Move from omp-low.c. Switch |
777f7f9a RH |
4235 | statement pointers to basic blocks. Add type member. |
4236 | (root_omp_region, new_omp_region, free_omp_regions): Declare. | |
4237 | * tree-gimple.c (is_gimple_stmt): Handle OMP_RETURN, OMP_CONTINUE. | |
4238 | * tree-inline.c (estimate_num_insns_1): Likewise. | |
4239 | * tree-pretty-print.c (dump_generic_node): Likewise. | |
4240 | * tree-ssa-operands.c (get_expr_operands): Likewise. | |
4241 | * tree.def (OMP_SECTIONS): Remove OMP_SECTIONS_SECTIONS operand. | |
4242 | (OMP_RETURN): Rename from OMP_RETURN_EXPR. | |
4243 | (OMP_CONTINUE): New. | |
4244 | * tree.h (OMP_DIRECTIVE_P): Add OMP_CONTINUE. | |
4245 | (OMP_SECTIONS_SECTIONS): Remove. | |
4246 | (OMP_SECTION_LAST): New. | |
4247 | (OMP_RETURN_NOWAIT): New. | |
4248 | ||
15b1c12a RS |
4249 | 2006-04-13 Roger Sayle <roger@eyesopen.com> |
4250 | ||
4251 | * fold-const.c (native_encode_vector, native_interpret_real): | |
4252 | Correct obvious mistakes in the previous check-in. | |
4253 | ||
78bf6e2f RS |
4254 | 2006-04-13 Roger Sayle <roger@eyesopen.com> |
4255 | ||
4256 | * fold-const.c (native_encode_expr): New function to encode | |
4257 | the target representation of an INTEGER_CST, REAL_CST, COMPLEX_CST | |
4258 | or VECTOR_CST into a specified buffer. | |
4259 | (native_encode_int): New function. | |
4260 | (native_encode_real): New function. | |
4261 | (native_encode_complex): New function. | |
4262 | (native_encode_vector): New function. | |
4263 | (native_interpret_expr): Inverse of native_encode_expr to convert | |
4264 | a target representation into an INTEGER_CST, REAL_CST etc... | |
4265 | (native_interpret_int): New function. | |
4266 | (native_interpret_real): New function. | |
4267 | (native_interpret_complex): New function. | |
4268 | (native_interpret_vector): New function. | |
4269 | (fold_view_convert_expr): New function to constant fold/evaluate | |
4270 | a VIEW_CONVERT_EXPR of a suitable constant expression. | |
4271 | (fold_unary) <VIEW_CONVERT_EXPR>: Call fold_view_convert_expr. | |
4272 | Change call of build1 to fold_build1 when constructing a | |
4273 | VIEW_CONVERT_EXPR. | |
4274 | ||
76492753 PB |
4275 | 2006-04-13 Paolo Bonzini <bonzini@gnu.org> |
4276 | Ulrich Weigand <uweigand@de.ibm.com> | |
4277 | ||
4278 | PR target/27006 | |
4279 | * config/rs6000/rs6000.h (EASY_VECTOR_15_ADD_SELF): Require n | |
4280 | to be even. | |
4281 | ||
7b5d92b2 AM |
4282 | 2006-04-13 Alan Modra <amodra@bigpond.net.au> |
4283 | ||
4284 | PR target/26459 | |
4285 | * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Don't | |
4286 | optimize to lo_sum for DFmode if !TARGET_FPRS. | |
4287 | ||
d96f49bf KH |
4288 | 2006-04-12 Kazu Hirata <kazu@codesourcery.com> |
4289 | ||
4290 | * tree-ssa-alias.c (set_initial_properties, init_alias_info, | |
4291 | delete_alias_info, compute_flow_sensitive_aliasing, | |
4292 | group_aliases): Use VEC instead of VARRAY. | |
4293 | * tree-ssa-structalias.c (update_alias_info): Likewise. | |
4294 | * tree-ssa-structalias.h (alias_info): Change the type of | |
4295 | processed_ptrs to VEC(tree,heap) *. | |
4296 | ||
3f1d3526 R |
4297 | 2006-04-12 J"orn Rennecke <joern.rennecke@st.com> |
4298 | ||
4299 | PR target/27060 | |
e8366202 MS |
4300 | * config/sh/lib1funcs.h: New file, broken out of: |
4301 | * config/sh/lib1funcs.asm. | |
4302 | * config/sh/lib1funcs.h (DR00, DR01, DR20, DR21, DR40, DR41): | |
3f1d3526 R |
4303 | New macros. |
4304 | * config/sh/lib1funcs.asm (udivsi3_i4): Use them. | |
e8366202 | 4305 | * config/sh/lib1funcs-Os-4-200.asm: New file. |
3f1d3526 R |
4306 | * config/sh/embed-elf.h (LIBGCC_SPEC): Use -lgcc-Os-4-200. |
4307 | * config/sh/t-sh (OPT_EXTRA_PARTS): New variable. | |
4308 | (EXTRA_MULTILIB_PARTS): Include it. | |
4309 | ($(T)sdivsi3_i4i-Os-4-200.o): New rule. | |
4310 | ($(T)udivsi3_i4i-Os-4-200.o, $(T)libgcc-Os-4-200.a): Likewise. | |
4311 | * config/sh/t-superh (EXTRA_MULTILIB_PARTS): Include OPT_EXTRA_PARTS. | |
4312 | * config/sh/sh.h (OVERRIDE_OPTIONS): Recognize -mdiv=call-table for | |
4313 | TARGET_SH2. | |
4314 | ||
dacb336e KH |
4315 | 2006-04-12 Kazu Hirata <kazu@codesourcery.com> |
4316 | ||
4317 | * Makefile.in (TREE_SSA_LIVE_H): Add vecprim.h. | |
4318 | * tree-ssa-live.c (tpa_init, tpa_remove_partition, tpa_delete, | |
4319 | tpa_compact, root_var_init, type_var_init): Use VEC instead of | |
4320 | VARRAY. | |
4321 | * tree-ssa-live.h: Include vecprim.h. | |
4322 | (tree_partition_associator_d): Change the type of | |
4323 | first_partition to VEC(int,heap) *. | |
4324 | (tpa_first_partition): Use VEC instead of VARRAY. | |
4325 | ||
597d6703 KH |
4326 | * Makefile.in (GTFILES): Move functions.h after tree.h. |
4327 | * function.c (reset_block_changes, record_block_change, | |
4328 | check_block_change, free_block_changes): Use VEC instead of | |
4329 | VARRAY. | |
4330 | * function.h (function): Change the type of | |
4331 | ib_boundaries_block to VEC(tree,gc) *. | |
4332 | * tree-inline.c (copy_cfg_body): Initialize | |
4333 | ib_boundaries_block to NULL instead of (varray_type) 0. | |
4334 | ||
7488662d RS |
4335 | 2006-04-12 Roger Sayle <roger@eyesopen.com> |
4336 | ||
4337 | * expr.c (emit_group_store): Correct operand order in call to | |
4338 | subreg_lowpart_offset. Always create paradoxical SUBREGs with | |
4339 | a SUBREG_BYTE of zero. | |
4340 | ||
76783bc2 RG |
4341 | 2006-04-12 Richard Guenther <rguenther@suse.de> |
4342 | ||
4343 | * profile.c (compute_branch_probabilities): Remove code | |
4344 | encapsulated in !ir_type (), which are remanents of the | |
4345 | removed RTL profiling code. | |
4346 | * rtl-profile.c: Remove. | |
4347 | ||
79773478 AM |
4348 | 2006-04-12 Alan Modra <amodra@bigpond.net.au> |
4349 | ||
4350 | * config/rs6000/rs6000.c (rs6000_mixed_function_arg): Update | |
4351 | magic NULL_RTX comment. | |
4352 | (function_arg): Store entire fp arg to mem if any part should go | |
4353 | on stack. | |
4354 | (rs6000_arg_partial_bytes): Adjust for above change. | |
4355 | ||
10934c3b RS |
4356 | 2006-04-11 Roger Sayle <roger@eyesopen.com> |
4357 | ||
4358 | * dwarf2out.c (output_call_frame_info): Create debug_frame_section | |
4359 | if it hasn't been initialized by dwarf2out_init. | |
4360 | ||
58be56ea JDA |
4361 | 2006-04-11 John David Anglin <dava.anglin@nrc-cnrc.gc.ca> |
4362 | ||
4363 | * pa.md (MAX_12BIT_OFFSET, MAX_17BIT_OFFSET): Define and use new | |
4364 | symbolic constants in branch patterns. | |
4365 | ||
f6c4ed08 RS |
4366 | 2006-04-11 Roger Sayle <roger@eyesopen.com> |
4367 | ||
4368 | * caller-save.c: #include "addresses.h" after #include "tm_p.h". | |
4369 | ||
205eb6e7 RS |
4370 | 2006-04-11 Richard Sandiford <richard@codesourcery.com> |
4371 | ||
4372 | PR rtl-optimization/27073 | |
4373 | * gcse.c (try_replace_reg): Revert last change. Continue to search | |
4374 | for both REG_EQUAL and REG_EQUIV notes, but only perform replacements | |
4375 | on the former. | |
4376 | ||
ef6843ed EB |
4377 | 2006-04-11 Eric Botcazou <ebotcazou@libertysurf.fr> |
4378 | ||
4379 | * config/sparc/sparc.c (function_arg_slotno) <BLKmode>: Handle | |
4380 | aggregate types other than record and union types. | |
4381 | (function_arg): Likewise. | |
4382 | (function_arg_pass_by_reference): In 64-bit mode, return 0 for | |
4383 | small arrays. | |
4384 | (function_value): In 64-bit mode, return objects that require it | |
4385 | in FP registers. | |
4386 | ||
b4426e0a RS |
4387 | 2006-04-11 Roger Sayle <roger@eyesopen.com> |
4388 | ||
4389 | * dwarf2out.c (premark_used_types): Remove problematic prototype. | |
4390 | ||
8beb0d9e JJ |
4391 | 2006-04-11 Jakub Jelinek <jakub@redhat.com> |
4392 | ||
4393 | * gcc.c (LINK_COMMAND_SPEC): Move link_gomp after %o. | |
4394 | ||
cf282d0a JL |
4395 | 2006-04-03 Jeff Law <law@redhat.com> |
4396 | ||
4397 | PR/27087 | |
4398 | * tree-ssa-copy.c (may_propagate_copy): Test flow sensitive | |
4399 | alias information too. | |
4400 | ||
b3b2cbc4 MF |
4401 | 2006-04-10 Mike Frysinger <vapier@gentoo.org> |
4402 | ||
a1d1988f | 4403 | * Makefile.in (gcc-cross): Add $(exeext) to target name. |
b3b2cbc4 | 4404 | |
33c9159e AH |
4405 | 2006-04-10 Aldy Hernandez <aldyh@redhat.com> |
4406 | ||
4407 | PR/21391 | |
4408 | * dwarf2out.c (struct die_struct): Add die_perennial_p field. | |
4409 | (premark_used_types_helper): New. | |
4410 | (premark_used_types): New. | |
4411 | (gen_subprogram_die): Call premark_used_types. | |
4412 | (prune_unused_types_walk): Do not prune perennial dies. | |
4413 | * function.c (used_types_insert): New. | |
4414 | * function.h (struct function): Add used_types_hash field. | |
4415 | (used_types_insert): Add prototype. | |
4416 | * Makefile.in (FUNCTION_H): Depend on HASHTAB_H. | |
4417 | * c-parser.c (c_parser_cast_expression): Save casted types in used | |
4418 | types hash table. | |
4419 | ||
ab9260ac MM |
4420 | 2006-04-11 Mark Mitchell <mark@codesourcery.com> |
4421 | ||
4422 | PR target/26459 | |
4423 | * config/rs6000/e500-double.h (SUB3TARGET_OVERRIDE_OPTIONS): Test | |
4424 | rs6000_explicit_options.float_gprs. | |
4425 | ||
acef130f RS |
4426 | 2006-04-10 Roger Sayle <roger@eyesopen.com> |
4427 | ||
4428 | * config/i386/i386.c (ix86_expand_vector_init_one_nonzero): Renamed | |
4429 | from ix86_expand_vector_init_low_nonzero. Take an additional | |
4430 | one_var argument indicating which element is non-zero. Support | |
4431 | one_var != 0 for V4SFmode and V4SImode by permuting the result. | |
4432 | (ix86_expand_vector_init): Call ix86_expand_vector_init_one_nonzero | |
4433 | with one_var instead of ix86_expand_vector_init_low_nonzero. | |
4434 | ||
e3df376d KH |
4435 | 2006-04-10 Kazu Hirata <kazu@codesourcery.com> |
4436 | ||
4437 | * Makefile.in (tree-into-ssa.o, tree-outof-ssa.o, | |
4438 | tree-ssa-live.o, tree-ssa-alias.o, function.o, df-problems.o, | |
4439 | global.o, cfglayout.o, lambda-code.o, reg-stack.o, | |
4440 | build/genextract.o): Depend on vecprim.h. | |
4441 | * cfglayout.c, df-problems.c, function.c, genextract.c, | |
4442 | global.c, lambda-code.c, reg-stack.c, tree-into-ssa.c, | |
4443 | tree-outof-ssa.c, tree-ssa-alias.c, tree-ssa-live.c: Include | |
4444 | vecprim.h. | |
4445 | * vecprim.h: New. | |
4446 | ||
1a27722f GK |
4447 | 2006-04-10 Geoffrey Keating <geoffk@apple.com> |
4448 | ||
4449 | * dwarf2out.c (struct dw_attr_struct): Remove dw_attr_next. | |
4450 | Declare VECs of this type. | |
4451 | (struct die_struct): Make field die_attr a VEC of dw_attr_struct. | |
4452 | (remove_children): Delete. | |
4453 | (add_dwarf_attr): Use VEC routines. | |
4454 | (add_AT_flag): Update for changes to add_dwarf_attr. | |
4455 | (add_AT_int): Likewise. | |
4456 | (add_AT_unsigned): Likewise. | |
4457 | (add_AT_long_long): Likewise. | |
4458 | (add_AT_vec): Likewise. | |
4459 | (add_AT_string): Likewise. | |
4460 | (add_AT_die_ref): Likewise. | |
4461 | (add_AT_fde_ref): Likewise. | |
4462 | (add_AT_loc): Likewise. | |
4463 | (add_AT_loc_list): Likewise. | |
4464 | (add_AT_addr): Likewise. | |
4465 | (add_AT_lbl_id): Likewise. | |
4466 | (add_AT_lineptr): Likewise. | |
4467 | (add_AT_macptr): Likewise. | |
4468 | (add_AT_offset): Likewise. | |
4469 | (add_AT_range_list): Likewise. | |
4470 | (get_AT): Use VEC_iterate. | |
4471 | (remove_AT): Use VEC_ordered_remove. | |
4472 | (free_die): Fold remove_children into here; have it use VEC_iterate. | |
4473 | (print_die): Use VEC_iterate on attrs. | |
4474 | (reverse_die_lists): Don't reverse attr lists. | |
4475 | (die_checksum): Use VEC_iterate on attrs. | |
4476 | (same_die_p): Likewise. | |
4477 | (output_location_lists): Likewise. | |
4478 | (build_abbrev_table): Likewise. | |
4479 | (size_of_die): Likewise. | |
4480 | (unmark_all_dies): Likewise. | |
4481 | (output_abbrev_section): Likewise. | |
4482 | (output_die): Likewise. | |
4483 | (prune_unused_types_walk_attribs): Likewise. | |
4484 | ||
1da1ce3f EB |
4485 | 2006-04-10 Eric Botcazou <ebotcazou@libertysurf.fr> |
4486 | ||
1f3d30ed | 4487 | * doc/install.texi (*-*-solaris2*): Point to the configure page. |
1da1ce3f | 4488 | |
ef85ac9a JJ |
4489 | 2006-04-10 Jakub Jelinek <jakub@redhat.com> |
4490 | ||
4491 | PR debug/27057 | |
4492 | * dwarf2out.c (is_symbol_die): Return true also for namespaces. | |
4493 | ||
cf26aa89 RS |
4494 | 2006-04-09 Roger Sayle <roger@eyesopen.com> |
4495 | ||
4496 | * expr.c (store_constructor): Don't bother clearing target if | |
4497 | we're about to assign a vector to it using vec_init_optab. | |
4498 | ||
ef2bb311 | 4499 | 2006-04-10 Daniel Berlin <dberlin@dberlin.org> |
7a0b46c9 | 4500 | |
ef2bb311 DB |
4501 | * tree-ssa-alias.c (lhs_may_store_to): New function. |
4502 | (recalculate_used_alone): Handle LHS of calls. | |
4503 | ||
8b89a26a JDA |
4504 | 2006-04-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
4505 | ||
4506 | PR target/27034 | |
4507 | PR target/26508 | |
4508 | * config.gcc (hppa*64*-*-hpux11*): Add 'libgcc_stub.a' to extra_parts. | |
4509 | * pa64-hpux.h (LIB_SPEC): Correct typo. Don't append milli.a. | |
4510 | (LINK_GCC_C_SEQUENCE_SPEC): Define. Append milli.a here. | |
4511 | (PA_CXA_FINALIZE_STUB, PA_JV_REGISTERCLASSES_STUB): Delete defines. | |
4512 | (PA_INIT_FINI_HACK): Rename to PA_CRTBEGIN_HACK. | |
4513 | (PA_CRTBEGIN_HACK): Ensure __do_global_ctors_aux is placed in text | |
4514 | section. Delete PA_CXA_FINALIZE_STUB and PA_JV_REGISTERCLASSES_STUB | |
4515 | stubs. Add ".align 8" directives before all ".dword" directives. | |
4516 | (GTHREAD_USE_WEAK): Revise comment. | |
4517 | (TARGET_ATTRIBUTE_WEAK): Define. | |
4518 | * pa/t-pa64 (LIBGCCSTUB_OBJS): Add new rules for stublib.c, rfi-stub.o, | |
4519 | dfi-stub.o, cxaf-stub.o and jvrc-stub.o. | |
4520 | * stublib.c: New file. | |
16d74a3c JDA |
4521 | |
4522 | PR target/26743 | |
4523 | PR target/11254 | |
4524 | PR target/10274 | |
4525 | * pa.md (cbranch patterns): Revise arguments used in calls to | |
4526 | output_cbranch, output_bb and output_bvd. Add long branch length | |
4527 | attributes. | |
4528 | (fbranch patterns): Handle long branches. | |
4529 | (jump): Revise length check. Revise arguments for output_lbranch call. | |
4530 | Add long branch length attributes. | |
4531 | (decrement_and_branch_until_zero): Add long branch length attributes. | |
4532 | (output_movb, output_parallel_addb and output_parallel_movb patterns): | |
4533 | Likewise. Revise arguments for output_parallel_addb and | |
4534 | output_parallel_movb calls. | |
4535 | * pa-protos.h (output_cbranch, output_lbranch, output_bb, output_bvb, | |
4536 | output_parallel_movb and output_parallel_addb): Update prototypes. | |
4537 | * pa.c (output_cbranch): Revise arguments. Correct handling of | |
4538 | nullification in long branches. | |
4539 | (output_lbranch): Add new argument to control extraction of delay | |
4540 | instruction. | |
4541 | (output_bb): Handle long branches. | |
4542 | (output_bvb, output_dbra, output_movb, output_parallel_movb, | |
4543 | output_parallel_addb): Likewise. | |
4544 | ||
c3a50ca3 RS |
4545 | 2006-04-09 Richard Sandiford <richard@codesourcery.com> |
4546 | ||
4547 | PR rtl-optimization/27073 | |
4548 | * gcse.c (try_replace_reg): Just propagate into REG_EQUAL notes, | |
4549 | not REG_EQUIVs. | |
4550 | ||
9ccfe0cd DB |
4551 | 2006-04-08 Daniel Berlin <dberlin@dberlin.org> |
4552 | ||
4553 | * tree.h (tree_memory_tag): Add old_used_alone. | |
4554 | (SMT_OLD_USED_ALONE): New macro. | |
4555 | * tree-ssa-alias.c (recalculate_used_alone): Stop | |
4556 | marking things for renaming unnecessarily. | |
4557 | ||
917f1b7e KH |
4558 | 2006-04-08 Kazu Hirata <kazu@codesourcery.com> |
4559 | ||
4560 | * builtins.c, config/arm/arm.c, config/i386/cygwin.h, | |
4561 | config/i386/i386.c, config/ia64/ia64.c, config/s390/fixdfdi.h, | |
4562 | config/sh/sh.c, config/sh/sh.h, df-scan.c, except.c, | |
4563 | haifa-sched.c, optabs.c, rtl.h, sched-deps.c, sched-int.h, | |
4564 | sched-rgn.c, tree-inline.h, tree-ssa-dom.c, | |
4565 | tree-ssa-loop-prefetch.c, tree-ssa-operands.c, | |
4566 | tree-vect-patterns.c, tree-vrp.c: Fix comment typos. Follow | |
4567 | spelling convensions. | |
4568 | * config/ia64/ia64.opt, doc/contrib.texi, doc/invoke.texi, | |
4569 | doc/passes.texi, doc/tm.texi, doc/tree-ssa.texi: Fix comment | |
4570 | typos. Follow spelling conventions. | |
4571 | ||
9d746d5e DD |
4572 | 2006-04-07 DJ Delorie <dj@redhat.com> |
4573 | ||
4574 | * config/m32c/m32c.c (m32c_function_arg): Structures are always | |
4575 | passed on the stack. | |
4576 | (m32c_init_cumulative_args): When a function returns a structure, | |
4577 | always pass the pointer to that return area on the stack. | |
4578 | (m32c_function_arg_advance): Don't increment the parameter number | |
4579 | if we're processing the returned structure pointer. | |
4580 | (pushm_info): Reverse order of registers. | |
4581 | ||
ff5e9a94 SP |
4582 | 2006-04-07 Sebastian Pop <pop@cri.ensmp.fr> |
4583 | ||
4584 | * tree-ssa-loop-niter.c (inverse, number_of_iterations_ne, | |
4585 | assert_no_overflow_lt, assert_loop_rolls_lt, number_of_iterations_lt, | |
4586 | number_of_iterations_le, number_of_iterations_cond, find_loop_niter, | |
7a0b46c9 | 4587 | estimate_numbers_of_iterations_loop): Use build_int_cst instead of |
ff5e9a94 SP |
4588 | build_int_cst_type. |
4589 | * tree-chrec.c (chrec_fold_multiply_poly_poly, | |
4590 | chrec_fold_multiply): Same. | |
4591 | * tree-ssa-loop-ivopts.c (strip_offset_1, force_expr_to_var_cost, | |
4592 | force_expr_to_var_cost): Same. | |
4593 | * tree-mudflap.c (mf_xform_derefs_1): Same. | |
4594 | * tree-ssa-loop-prefetch.c (idx_analyze_ref): Same. | |
4595 | ||
f6fe3a22 DE |
4596 | 2006-04-07 David Edelsohn <edelsohn@gnu.org> |
4597 | ||
4598 | * config/rs6000/rs6000.c (rs6000_rtx_costs) <CONST_DOUBLE>: Do not | |
4599 | treat CONST_DOUBLE as INTVAL. and64_2_operands require an extra | |
4600 | insn. | |
28e6f134 JH |
4601 | |
4602 | 2006-04-07 Jan Hubicka <jh@suse.cz> | |
4603 | ||
4604 | * ipa-inline.c (cgraph_early_inlining): Collect garbage. | |
4605 | ||
fcfa143a RB |
4606 | 2006-04-07 Richard Guenther <rguenther@suse.de> |
4607 | ||
4608 | PR tree-optimization/26135 | |
4609 | * tree-ssa-copy.c (stmt_may_generate_copy): Handle memory | |
4610 | loads for store copy-prop. | |
4611 | (copy_prop_visit_stmt): Likewise. | |
4612 | ||
4613 | 2006-04-05 Robert Millan <robertmh@gnu.org> | |
8224ee20 | 4614 | |
e8366202 | 4615 | * config/i386/linux.h: Add a comment to mark macros that are |
8224ee20 | 4616 | being overriden in config/k*bsd-gnu.h. |
e8366202 | 4617 | * config/kfreebsd-gnu.h: Redefine GLIBC_DYNAMIC_LINKER instead of |
8224ee20 | 4618 | DYNAMIC_LINKER. |
e8366202 | 4619 | * config/knetbsd-gnu.h: Ditto. |
8224ee20 | 4620 | |
1f651229 JH |
4621 | 2006-04-06 Jan Hubicka <jh@suse.cz> |
4622 | ||
4623 | PR profile/20815 | |
4624 | PR profile/26399 | |
4625 | * coverage.c (coverage_checksum_string): Reorganize loop to not read | |
4626 | after buffer. | |
4627 | ||
3425c35f MS |
4628 | 2006-04-06 Mike Stump <mrs@apple.com> |
4629 | ||
4630 | * builtins.c (expand_builtin_longjmp):Use #ifdef instead of #if | |
4631 | for HAVE_nonlocal_goto to be consistent. | |
4632 | (expand_builtin_nonlocal_goto): Likewise. | |
4633 | (expand_builtin_strcmp): Use #ifdef instead of #if | |
4634 | for HAVE_cmpstrnsi to be consistent. | |
4635 | ||
0f681872 DD |
4636 | 2006-04-05 DJ Delorie <dj@redhat.com> |
4637 | ||
4638 | * config/m32c/m32c.h (INCOMING_FRAME_SP_OFFSET): Adjust for m16c | |
4639 | vs m32c. | |
4640 | ||
300adfc2 BS |
4641 | 2006-04-05 Bernd Schmidt <bernd.schmidt@analog.com> |
4642 | ||
4643 | * config/bfin/bfin.c (bfin_legitimate_address_p): Disallow | |
4644 | got-relative addressing for anything but SImode. | |
4645 | ||
dcef6aba BS |
4646 | * config/bfin/lib1funcs.asm (modsi): P1/P2 can be call-clobbered |
4647 | even if the calling function doesn't modify them. | |
4648 | ||
cf51dca2 RG |
4649 | 2006-04-05 Richard Guenther <rguenther@suse.de> |
4650 | ||
4651 | PR tree-optimization/26919 | |
4652 | * ipa-inline.c (cgraph_decide_inlining_incrementally): Fix argument | |
4653 | to cgraph_estimate_size_after_inlining. | |
4654 | ||
e17e34d8 AM |
4655 | 2006-04-05 Alan Modra <amodra@bigpond.net.au> |
4656 | ||
4657 | * reload.c (find_dummy_reload): Fix typo in 2006-04-03 change. | |
4658 | ||
42d375ed SP |
4659 | 2006-04-05 Sebastian Pop <pop@cri.ensmp.fr> |
4660 | ||
4661 | PR tree-optimization/26996 | |
4662 | * tree-scalar-evolution.c (analyze_scalar_evolution_1): Don't analyze | |
4663 | VECTOR_TYPE variables. | |
4664 | ||
6eee9893 RG |
4665 | 2006-04-05 Richard Guenther <rguenther@suse.de> |
4666 | ||
4667 | PR tree-optimization/26763 | |
4668 | * fold-const.c (fold_comparison): Move folding of | |
4669 | PTR + CST CMP PTR + CST ... | |
4670 | (fold_binary): ... here. Fold only for EQ_EXPR and NE_EXPR. | |
4671 | ||
80521187 GP |
4672 | 2006-04-05 Gerald Pfeifer <gerald@pfeifer.com> |
4673 | ||
4674 | * doc/install.texi (Prerequisites): Refine some wording on | |
4675 | bootstrapping and ksh. | |
4676 | Move the version numbers of DejaGnu here from the testing section | |
4677 | and fix casing of names. | |
4678 | Fix markup and clarify wording for autogen requirements. | |
4679 | Refer to GCJ instead of just java. | |
4680 | Refer to SVN instead of CVS. | |
4681 | Describe diffutils as useful instead of necessary. | |
4682 | (Downloading the source): Refer to SVN instead of CVS. | |
4683 | Adjust a link to our web site accordingly. | |
4684 | (Configuration): Fix casing of Bison. | |
7a0b46c9 | 4685 | (Building): Refer to SVN instead of CVS. |
80521187 GP |
4686 | Fix a sentence on the use of Bison and remove duplicate (and |
4687 | incorrect) version number of Bison requirement. | |
4688 | Remove one redundant list of packages needed for building. | |
4689 | (Specific): Avoid reference to CVS. | |
4690 | ||
77ccdfed EC |
4691 | 2006-04-04 Eric Christopher <echristo@apple.com> |
4692 | ||
4693 | * config/rs6000/rs6000.c (TARGET_MS_BITFIELD_LAYOUT_P): Define. | |
4694 | (TARGET_USE_MS_BITFIELD_LAYOUT): Ditto. | |
4695 | (rs6000_handle_struct_attribute): New. | |
4696 | (rs6000_ms_bitfield_layout_p): Ditto. | |
4697 | ||
b3c2c547 GK |
4698 | 2006-04-04 Geoffrey Keating <geoffk@apple.com> |
4699 | ||
4700 | * config/darwin-crt3.c (atexit): Pass &__dso_handle rather than | |
4701 | NULL for dso parameter to atexit_common. | |
4702 | ||
4b1c1f6f EC |
4703 | 2006-04-04 Eric Christopher <echristo@apple.com> |
4704 | ||
4705 | * config/i386/i386.c (machopic_output_stub): Output \t | |
4706 | between instructions and operands. | |
4707 | ||
547b216d DE |
4708 | 2006-04-04 David Edelsohn <edelsohn@gnu.org> |
4709 | ||
4710 | * config/rs6000/rs6000.c (num_insns_constant_wide): Change | |
4711 | satisfies_constraint_[IL] to explicit tests on value. | |
4712 | ||
dc61cc6b SP |
4713 | 2006-04-04 Sebastian Pop <pop@cri.ensmp.fr> |
4714 | ||
4715 | * tree-scalar-evolution.c (compute_overall_effect_of_inner_loop, | |
4716 | set_nb_iterations_in_loop): Use build_int_cst instead of | |
4717 | build_int_cst_type. | |
4718 | * tree-data-ref.c (can_use_analyze_subscript_affine_affine): Use | |
4719 | build_int_cst instead of convert. | |
4720 | ||
2225b57c CD |
4721 | 2006-04-04 Carlos O'Donell <carlos@codesourcery.com> |
4722 | ||
4723 | * doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document | |
4724 | new value 2 for incoming. | |
4725 | * function.c (expand_function_start): Call struct_value_rtx | |
4726 | with incoming as 2. | |
4727 | * config/sparc/sparc.md: Comment updated_return. | |
4728 | * config/sparc/sparc.opt: Add -mstd-struct-return option. | |
4729 | * config/sparc/sparc.c (sparc_struct_value_rtx): Use standard | |
4730 | struct return if sparc_std_struct_return and incoming is 2. | |
4731 | (print_operand): Do not adjust return if | |
4732 | sparc_std_struct_return. | |
4733 | ||
3967bc2d RS |
4734 | 2006-04-04 Roger Sayle <roger@eyesopen.com> |
4735 | ||
4736 | * builtins.c (fold_builtin_sprintf): Use fold_convert instead of | |
4737 | convert in the middle-end. | |
4738 | * expr.c (store_expr, store_constructor, get_inner_reference, | |
4739 | expand_expr_real_1, string_constant, try_casesi, try_tablejump): | |
4740 | Likewise. | |
4741 | * tree.c (build_range_type): Likewise. | |
4742 | ||
b52be2c8 TT |
4743 | 2006-04-04 Tom Tromey <tromey@redhat.com> |
4744 | ||
4745 | * doc/install.texi (Prerequisites): Mention jar. | |
4746 | ||
d9d93d96 DB |
4747 | 2006-04-04 Daniel Berlin <dberlin@dberlin.org> |
4748 | ||
4749 | * doc/tree-ssa.texi (Preserving the virtual ssa form): New | |
4750 | subsection. | |
4751 | ||
8160ab35 MK |
4752 | 2006-04-04 Matthias Klose <doko@debian.org> |
4753 | ||
4754 | * Makefile.in (unprotoize.o): Same dependencies as for protoize.o. | |
9edaf51e MK |
4755 | * Makefile.in (s-macro_list): Conform to POSIX rules in single quoted |
4756 | strings. | |
8160ab35 | 4757 | |
a7d37464 GK |
4758 | 2006-04-03 Geoffrey Keating <geoffk@apple.com> |
4759 | ||
4b1c1f6f | 4760 | * doc/extend.texi (Function Attributes): Rewrite visibility |
46bdbc00 GK |
4761 | attribute documentation. |
4762 | * doc/invoke.texi (C++ Dialect Options): Rewrite | |
4763 | -fvisibility-inlines-hidden documentation to describe something | |
4764 | entirely different, although in practise compatible. | |
4cb19a9f | 4765 | (Code Gen Options): Warn about system headers in -fvisibility= |
46bdbc00 GK |
4766 | documentation. |
4767 | ||
a7d37464 GK |
4768 | * doc/extend.texi (Other Builtins): Document that |
4769 | __builtin_nan is a compile-time constant only when its argument | |
4770 | is valid. | |
4771 | ||
2332d585 AN |
4772 | 2006-04-03 Adam Nemet <anemet@caviumnetworks.com> |
4773 | ||
4774 | * simplify-rtx.c (simplify_unary_operation_1) <TRUNCATE>: When | |
4775 | trying to remove TRUNCATE check if all bits outside the new mode | |
4776 | are identical to the sign bit. | |
4777 | ||
cbc75e62 JL |
4778 | 2006-04-03 Jeff Law <law@redhat.com> |
4779 | ||
4780 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Avoid useless folding | |
4781 | and operand scanning in some common cases. | |
4782 | ||
4735cca6 | 4783 | 2006-04-03 Paolo Bonzini <bonzini@gnu.org> |
b5c82fa1 PB |
4784 | Dale Johannesen <dalej@apple.com> |
4785 | ||
4786 | PR target/19653 | |
4787 | * regclass.c (struct reg_pref): Update documentation. | |
4788 | (regclass): Set prefclass to NO_REGS if memory is the best option. | |
4789 | (record_reg_classes): Cope with a prefclass set to NO_REGS. | |
4790 | * reload.c (find_reloads): Take PREFERRED_OUTPUT_RELOAD_CLASS | |
4791 | into account. For non-registers, equate an empty preferred | |
4792 | reload class to a `!' in the constraint; move the if clause to | |
4793 | do so after those that reject the insn. | |
4794 | (push_reload): Allow PREFERRED_*_RELOAD_CLASS to liberally | |
4795 | return NO_REGS. | |
4796 | (find_dummy_reload): Likewise. | |
4797 | * doc/tm.texi (Register Classes): Document what it means | |
4798 | if PREFERRED_*_RELOAD_CLASS return NO_REGS. | |
4799 | * config/i386/i386.c (ix86_preferred_reload_class): Force | |
4800 | using SSE registers (and return NO_REGS for floating-point | |
4801 | constants) if math is done with SSE. | |
4802 | (ix86_preferred_output_reload_class): New. | |
4803 | * config/i386/i386-protos.h (ix86_preferred_output_reload_class): New. | |
4804 | * config/i386/i386.h (PREFERRED_OUTPUT_RELOAD_CLASS): New. | |
4805 | * config/i386/i386.md: Remove # register preferences. | |
4806 | ||
16a2acea SP |
4807 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
4808 | ||
4809 | PR bootstrap/26992 | |
4810 | * tree-scalar-evolution.c (compute_overall_effect_of_inner_loop, | |
4811 | chrec_is_positive, set_nb_iterations_in_loop): Use a variable for | |
4812 | the type of nb_iter. | |
4813 | (instantiate_parameters_1): Convert the operands before calling | |
4814 | chrec_fold_minus, chrec_fold_plus, or chrec_fold_multiply. | |
4815 | * tree-data-ref.c (can_use_analyze_subscript_affine_affine): Same. | |
4816 | ||
b6f65e3c RS |
4817 | 2006-04-02 Roger Sayle <roger@eyesopen.com> |
4818 | ||
4819 | * builtins.c (dummy_object): Use build_int_cst instead of convert. | |
4820 | * tree-ssa-ccp.c (maybe_fold_stmt_addition): Use fold_convert | |
4821 | instead of convert. | |
4822 | * dojump.c (do_jump): Likewise. | |
4823 | * expr.h (ADD_PARM_SIZE, SUB_PARM_SIZE, ARGS_SIZE_TREE): Likewise. | |
4824 | * gimplify.c (gimple_boolify, gimplify_init_constructor, | |
4825 | gimplify_boolean_expr): Likewise. | |
4826 | * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise. | |
4827 | * varasm.c (array_size_for_constructor): Likewise. | |
4828 | * tree-object-size.c (compute_object_offset): Likewise. | |
4829 | ||
9fd20553 RS |
4830 | 2006-04-02 Roger Sayle <roger@eyesopen.com> |
4831 | ||
4832 | PR middle-end/26977 | |
4833 | * expr.c (emit_group_store): Check whether simplify_gen_subreg returns | |
4834 | NULL_RTX, indicating it couldn't create a valid paradoxical subreg. | |
4835 | ||
ace23abf SP |
4836 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
4837 | ||
4838 | PR tree-optimization/26939 | |
4839 | * tree-chrec.c (chrec_merge): Use eq_evolutions_p. | |
4840 | ||
e2157b49 SP |
4841 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
4842 | ||
4843 | * tree-scalar-evolution.c (add_to_evolution_1): Pass an extra argument | |
4b1c1f6f | 4844 | at_stmt. Convert the type of operands before calling |
e2157b49 SP |
4845 | build_polynomial_chrec. |
4846 | (add_to_evolution): Pass an extra argument at_stmt. Adjust the call to | |
4847 | add_to_evolution_1. | |
4848 | (follow_ssa_edge_in_rhs): Adjust call to add_to_evolution. | |
4b1c1f6f | 4849 | (instantiate_parameters_1): Convert the type of operands before calling |
e2157b49 SP |
4850 | build_polynomial_chrec. |
4851 | * tree-chrec.c (chrec_fold_poly_cst, chrec_fold_plus_poly_poly, | |
4852 | chrec_fold_multiply_poly_poly, chrec_replace_initial_condition, | |
4853 | reset_evolution_in_loop): Insert asserts to check the types of the | |
4854 | operands. | |
4855 | (chrec_type): Moved... | |
4856 | (eq_evolutions_p): Use operand_equal_p. | |
4857 | * tree-chrec.h (build_polynomial_chrec): Insert an assert to check | |
4858 | the types of the operands. | |
4859 | (chrec_type): ...here. | |
4860 | * tree-data-ref.c (create_data_ref): Convert the operands before | |
4861 | calling chrec_replace_initial_condition. | |
4862 | (same_access_functions, analyze_subscript_affine_affine, | |
4863 | analyze_miv_subscript, all_chrecs_equal_p): Use eq_evolutions_p. | |
4864 | (compute_subscript_distance, analyze_ziv_subscript, | |
4865 | analyze_siv_subscript_cst_affine, compute_overlap_steps_for_affine_1_2, | |
4866 | analyze_miv_subscript): Convert the operands before calling | |
4867 | chrec_fold_minus or chrec_fold_plus. | |
4868 | ||
a84481aa SP |
4869 | 2006-04-02 Sebastian Pop <pop@cri.ensmp.fr> |
4870 | ||
4871 | * tree-data-ref.c (compute_all_dependences): Use a pointer to | |
4872 | the dependence_relations vector. | |
4873 | (compute_data_dependences_for_loop): Adjust call to | |
4874 | compute_all_dependences. | |
4875 | ||
d568d1a8 RS |
4876 | 2006-04-01 Roger Sayle <roger@eyesopen.com> |
4877 | Richard Henderson <rth@redhat.com> | |
4878 | ||
4879 | * gimplify.c (gimplify_scan_omp_clauses) <OMP_CLAUSE_IF>: Call | |
4880 | gimple_boolify on the condition before calling gimplify_expr. | |
4881 | ||
b7974b3a BW |
4882 | 2006-03-31 Bob Wilson <bob.wilson@acm.org> |
4883 | ||
4884 | * config/xtensa/lib1funcs.asm: Rename abi_entry/abi_return macros | |
4885 | to leaf_entry/leaf_return. Change leaf_entry to add 16 bytes to | |
4886 | the frame size. Update to use the new macros. | |
4887 | * config/xtensa/ieee754-sf.S: Use new leaf_entry/leaf_return macros. | |
4888 | * config/xtensa/ieee754-df.S: Likewise. | |
4889 | ||
4890 | 2006-03-31 Richard Henderson <rth@redhat.com> | |
56e84019 RH |
4891 | |
4892 | * tree-cfg.c (make_ctrl_stmt_edges, make_exit_edges): Merge into... | |
4893 | (make_edges): ... here. Control fallthru creation with a local | |
4894 | variable. Do not play with fake edges. | |
4895 | (make_omp_sections_edges): Don't set EDGE_ABNORMAL. | |
4896 | (make_goto_expr_edges): Don't play with fake edges. Make for_call | |
4897 | a boolean. | |
4898 | ||
0c33762a JM |
4899 | 2006-04-01 Joseph S. Myers <joseph@codesourcery.com> |
4900 | ||
4901 | * dwarf2.h (DW64_CIE_ID): Define. | |
4902 | * dwarf2out.c (DWARF_CIE_ID): Define. | |
4903 | (output_call_frame_info): Output 0xffffffff before standard 8-byte | |
4904 | length header. Use DWARF_CIE_ID. | |
4905 | (value_format): Use DW_FORM_data4 or DW_FORM_data8 for | |
4906 | dw_val_class_loc_list depending on DWARF_OFFSET_SIZE. | |
4907 | ||
b890ea50 KK |
4908 | 2006-03-31 Kaz Kojima <kkojima@gcc.gnu.org> |
4909 | ||
4910 | * config/sh/linux-atomic.asm: New file. | |
4911 | * config/sh/t-linux (LIB2FUNCS_EXTRA): Add linux-atomic.asm. | |
4912 | ||
16659fcf DD |
4913 | 2006-03-31 DJ Delorie <dj@redhat.com> |
4914 | ||
4915 | * config/m32c/cond.md: Set condition flags properly throughout. | |
4916 | * config/m32c/minmax.md: Likewise. | |
4917 | * config/m32c/prologue.md: Likewise. | |
4918 | * config/m32c/bitops.md: Likewise. | |
4919 | * config/m32c/muldiv.md: Likewise. | |
4920 | * config/m32c/mov.md: Likewise. | |
4921 | * config/m32c/addsub.md: Likewise. | |
4922 | * config/m32c/m32c.md: Likewise. | |
4923 | * config/m32c/jump.md: Likewise. | |
4924 | * config/m32c/shift.md: Likewise. | |
4925 | ||
4926 | * config/m32c/cond.md (cmp<mode>): Call m32c_output_compare to | |
4927 | conditionally output the pattern for this. | |
4928 | * config/m32c/m32c.c (flags_needed_for_conditional): New. | |
4929 | (m32c_compare_redundant): New. | |
4930 | (m32c_output_compare): New. | |
4931 | * config/m32c/m32c-protos.h (m32c_output_compare): New. | |
4932 | ||
4933 | * config/m32c/m32c.c (m32c_prepare_shift): Fix logic to clobber | |
4934 | dest, not src. Allow other 4-byte modes. | |
4935 | ||
fc262682 DC |
4936 | 2006-03-30 Denis Chertykov <denisc@overta.ru> |
4937 | ||
4938 | * doc/md.texi: Refer to avr/constraints.md instead of | |
4939 | avr/avr.h. | |
4940 | ||
5650dfbd RS |
4941 | 2006-03-30 Roger Sayle <roger@eyesopen.com> |
4942 | ||
4943 | * expr.c (emit_group_store): Make BYTEPOS a HOST_WIDE_INT to | |
4944 | signed vs. unsigned comparison failures on some hosts. | |
4945 | ||
d3603e8c AM |
4946 | 2006-03-31 Alan Modra <amodra@bigpond.net.au> |
4947 | ||
ca0e79d9 AM |
4948 | PR target/26459 |
4949 | * config/rs6000/rs6000.h (CANNOT_CHANGE_MODE_CLASS): Limit 2003-12-08 | |
4950 | change to FLOAT_REGS. | |
4951 | ||
d3603e8c AM |
4952 | * config/rs6000/rs6000.c (rs6000_explicit_options): Add ieee. |
4953 | (rs6000_override_options): Use it. | |
4954 | (rs6000_handle_option): Set it. Set rs6000_explicit_options.abi | |
4955 | only for -mabi=spe/no-spe and -mabi=altivec. | |
4956 | ||
24cec83c GK |
4957 | 2006-03-30 Geoffrey Keating <geoffk@apple.com> |
4958 | ||
4959 | * config/darwin.h (LINK_COMMAND_SPEC): Don't try to protect %S with | |
4960 | !Zdynamiclib. | |
4961 | ||
ad3a7ce3 CD |
4962 | 2006-03-30 Carlos O'Donell <carlos@codesourcery.com> |
4963 | ||
4964 | * Makefile.in: Rename docdir to gcc_docdir. | |
4965 | ||
79edfde8 RS |
4966 | 2006-03-30 Roger Sayle <roger@eyesopen.com> |
4967 | ||
4968 | PR target/17959 | |
e8366202 | 4969 | * expr.c (emit_group_store): Optimize group stores into a pseudo |
79edfde8 RS |
4970 | register by using a paradoxical subreg to initialize the destination |
4971 | if the first or last member of the group specifies a "low part". | |
4972 | ||
c7ec5472 MK |
4973 | 2006-03-30 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
4974 | ||
4975 | PR target/26734 | |
4976 | * rtl.def (DEPS_LIST): Change type of the second operand to 'int'. | |
4977 | * target.h (struct gcc_target.speculate_insn): Change type of the | |
4978 | second parameter to 'int'. | |
4979 | * lists.c (alloc_DEPS_LIST): Change signature. Update reference to | |
4980 | the second operand of the DEPS_LIST. | |
4981 | (copy_DEPS_LIST_list): Update reference to the second operand of the | |
4982 | DEPS_LIST. | |
4983 | * rtl.h (alloc_DEPS_LIST): Update signature. | |
4984 | * sched-int.h (ds_t): Change typedef to 'int'. | |
4985 | (DEP_STATUS, BITS_PER_DEP_STATUS): Update. | |
4986 | ||
682b6a9e MK |
4987 | 2006-03-30 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
4988 | ||
4989 | * haifa-sched.c (try_ready): Change condition to restore | |
4990 | non-speculative pattern of the instruction. | |
4991 | (process_insn_depend_be_in_spec): Code to keep probability of the | |
4992 | speculative dependence non-decreasing. | |
4993 | ||
144f8315 JZ |
4994 | 2006-03-30 Jie Zhang <jie.zhang@analog.com> |
4995 | ||
4996 | * config/bfin/bfin.c (single_move_for_strmov): Renamed to... | |
4997 | (single_move_for_movmem): ... this. Also change all uses. | |
4998 | (bfin_expand_strmov): Renamed to... | |
4999 | (bfin_expand_movmem): ... this. Also change all uses. | |
5000 | * config/bfin/bfin.md (movstrsi): Renamed to... | |
5001 | (movstrsi): ...this. | |
5002 | ||
ae25dbda PB |
5003 | 2006-03-30 Paolo Bonzini <bonzini@gnu.org> |
5004 | ||
5005 | PR tree-optimization/26830 | |
5006 | ||
5007 | * tree-ssa-copy.c (copy_prop_visit_assignment): Do not check loop depth. | |
5008 | (copy_prop_visit_stmt): Remove write-only variable ann. | |
5009 | (init_copy_prop): Check variable loop depth here. Do not simulate | |
5010 | memory-tag and virtual operand PHIs except for store copy prop. | |
5011 | ||
7d3a3b01 RG |
5012 | 2006-03-30 Richard Guenther <rguenther@suse.de> |
5013 | ||
5014 | * config/i386/i386.c: Remove builtins for SSE2 ABI intrinsic | |
5015 | variants with double arguments. | |
5016 | ||
10a27391 DE |
5017 | 2006-03-29 David Edelsohn <edelsohn@gnu.org> |
5018 | ||
5019 | * genpreds.c (write_tm_constrs_h): Delete variable p. | |
f8569394 DE |
5020 | * genconditions.c (write_header): Add tm-constrs.h to included |
5021 | headers. | |
f160357f | 5022 | * genpeep.c (main): Add toplev.h to included headers. |
92cf85e9 | 5023 | * Makefile.in (build/gencondmd.o): Add tm-constrs.h dependency. |
c13a761d | 5024 | (build/genpeep.o): Add toplev.h dependency. |
40377a6d | 5025 | * config/rs6000/constraints.md: Add "W" constraint. |
10a27391 | 5026 | |
a6a12bb9 RS |
5027 | 2006-03-29 Roger Sayle <roger@eyesopen.com> |
5028 | ||
5029 | * stor-layout.c (mode_for_size_tree): Remove restiction on type | |
5030 | sizes by correctly testing whether the size fits a host integer. | |
5031 | (initialize_sizetypes): Use set_min_and_max_values_for_integral_type | |
5032 | to correctly set TYPE_MIN_VALUE and TYPE_MAX_VALUE to the full | |
5033 | SImode range for the default sizetype and bitsizetype. | |
5034 | ||
0a931ce5 RS |
5035 | 2006-03-29 Roger Sayle <roger@eyesopen.com> |
5036 | ||
5037 | * convert.c (convert_to_pointer): Preserve the TREE_OVERFLOW | |
5038 | and TREE_CONSTANT_OVERFLOW bits of the argument. Return | |
5039 | quickly if the argument is already of the correct type. | |
5040 | Call fold_build1 instead of build1. Tidy up blank lines. | |
5041 | ||
279bb624 DE |
5042 | 2006-03-29 David Edelsohn <edelsohn@gnu.org> |
5043 | ||
5044 | * genemit.c (main): Add tm-constrs.h to included headers. | |
5045 | * genoutput.c (output_prologue): Add tm-constrs.h to included headers. | |
5046 | * genpeep.c (main): Add tm-constrs.h to included headers. | |
5047 | * genpreds.c (write_satisfies_constraint_fns): Rename to ... | |
5048 | (write_tm_constrs_h): this and write complete file. | |
5049 | (write_tm_preds_h): Do not emit satisfies_constraint fns. | |
5050 | (write_insn_preds_c): Add tm-constrs.h to included headers. | |
5051 | (gen_constrs): New variable. | |
5052 | (parse_option): Parse "-c". | |
5053 | (main): Invoke write_tm_constrs_h. | |
5054 | * genrecog.c (write_header): Add tm-constrs.h to included headers. | |
5055 | * Makefile.in (STAGECOPYSTUFF): Add tm-constrs.h. | |
5056 | (object_out_file): Add tm-constrs.h dependency. | |
5057 | (insn-emit.o): Same. | |
5058 | (insn-output.o): Same. | |
5059 | (insn-peep.o): Same. | |
5060 | (insn-preds.o): Same. | |
5061 | (insn-recog.o): Same. | |
5062 | (tm-constsr.h): New target. | |
5063 | (s-constrs-h): New target. | |
5064 | ||
5065 | * config/rs6000/constraints.md: New file. | |
5066 | * config/rs6000/rs6000.c: Include tm-constrs.h. | |
5067 | (num_insn_constant_wide): Convert to satisfies_constraint. | |
5068 | (rs6000_rtx_costs): Convert to satisfies_constraint. | |
5069 | * config/rs6000/rs6000.h (REG_CLASS_FROM_LETTER): Delete. | |
5070 | (CONST_OK_FOR_LETTER_P): Delete. | |
5071 | (CONST_DOUBLE_OK_FOR_LETTER_P): Delete. | |
5072 | (EXTRA_CONSTRAINT): Delete. | |
5073 | (EXTRA_MEMORY_CONSTRAINT): Delete. | |
5074 | (EXTRA_ADDRESS_CONSTRAINT): Delete. | |
5075 | * config/rs6000/predicates.md: Convert to satisfies_constraint. | |
5076 | * config/rs6000/rs6000.md: Include constraints.md. Convert to | |
5077 | satisfies_constraint. | |
5078 | ||
5079 | * config/i386/i386.c: Include tm-constrs.h. | |
5080 | ||
e14b10df SP |
5081 | 2006-03-29 Sebastian Pop <pop@cri.ensmp.fr> |
5082 | ||
5083 | * tree-loop-linear.c (compute_data_dependences_for_loop): Adjust calls. | |
5084 | * tree-data-ref.c (find_data_references_in_loop, | |
5085 | compute_data_dependences_for_loop): Use pointers to VEC. | |
5086 | (analyze_all_data_dependences): Adjust calls. | |
5087 | * tree-data-ref.h (find_data_references_in_loop, | |
5088 | compute_data_dependences_for_loop): Adjust declarations. | |
5089 | * tree-vect-analyze.c (vect_analyze_data_refs): Adjust call to | |
5090 | compute_data_dependences_for_loop. | |
5091 | ||
221b2a64 PB |
5092 | 2006-03-29 Paul Brook <paul@codesourcery.com> |
5093 | ||
5094 | * config/arm/vfp.md (movsf_vfp): Disparage w<->r alternatives. | |
5095 | (movdf_vfp): Ditto. | |
5096 | ||
d31db22f SP |
5097 | 2006-03-29 Sebastian Pop <pop@cri.ensmp.fr> |
5098 | ||
5099 | PR tree-optimization/26859 | |
5100 | * tree-ssa-loop-niter.c (infer_loop_bounds_from_undefined): Avoid | |
5101 | division by zero. | |
5102 | (convert_step): Remove TREE_OVERFLOW and TREE_CONSTANT_OVERFLOW flags | |
5103 | for the step after fold_convert. | |
5104 | ||
67f07489 PB |
5105 | 2006-03-29 Paul Brook <paul@codesourcery.com> |
5106 | ||
5107 | * reload1.c (choose_reload_regs): Check for all RTX_AUTOINC operators. | |
5108 | (inc_for_reload): Handle PRE_MODIFY and POST_MODIFY addresses. | |
5109 | ||
c2a64439 PB |
5110 | 2006-03-29 Paul Brook <paul@codesourcery.com> |
5111 | ||
5112 | PR middle-end/23623 | |
5113 | * targhooks.c (default_narrow_bitfield): New fuction. | |
5114 | * targhooks.h (default_narrow_bitfield): add prototype. | |
5115 | * target.h (gcc_target): Add narrow_volatile_bitfield. | |
5116 | * target-def.h (TARGET_NARROW_VOLATILE_BITFIELD): Define. | |
5117 | * stor-layout.c (get_best_mode): Use targetm.narrow_volatile_bitfield. | |
5118 | * doc/tm.texi: Document TARGET_NARROW_VOLATILE_BITFIELDS. | |
5119 | * config/arm/arm.c (TARGET_NARROW_VOLATILE_BITFIELD): Define. | |
5120 | ||
4dc19cc0 AK |
5121 | 2006-03-29 Andreas Krebbel <krebbel1@de.ibm.com> |
5122 | ||
4b1c1f6f | 5123 | * config.gcc (s390-*-linux-*, s390x-*-linux*): Add t-dfprules to |
4dc19cc0 AK |
5124 | tmake_file. |
5125 | * config/s390/s390.c (S390_scalar_mode_supported_p): New function. | |
5126 | (NR_C_MODES): Add TDmode, DDmode and SDmode. | |
5127 | (s390_output_pool_entry, ): Accept MODE_DECIMAL_FLOAT. | |
5128 | (s390_hard_regno_mode_ok): Disallow TDmode in integer regs. | |
5129 | (s390_function_arg_float): Allow SDmode and DDmode values to be | |
5130 | passed in floating point registers. | |
4b1c1f6f | 5131 | (s390_function_arg_integer, s390_function_value): Replace MODE_FLOAT |
4dc19cc0 AK |
5132 | check with SCALAR_FLOAT_MODE_P. |
5133 | (TARGET_SCALAR_MODE_SUPPORTED_P): Define target macro. | |
5134 | ||
f08ac361 ZD |
5135 | 2006-03-28 Zdenek Dvorak <dvorakz@suse.cz> |
5136 | ||
5137 | PR tree-optimization/25985 | |
5138 | * tree-ssa-loop-niter.c (number_of_iterations_le, | |
5139 | number_of_iterations_ne): Make comments more precise. | |
5140 | (number_of_iterations_cond): Add only_exit argument. Use the | |
5141 | fact that signed variables do not overflow only when only_exit | |
5142 | is true. | |
5143 | (loop_only_exit_p): New. | |
5144 | (number_of_iterations_exit): Pass result of loop_only_exit_p to | |
5145 | number_of_iterations_cond. | |
5146 | ||
dd79d394 ZD |
5147 | 2006-03-28 Zdenek Dvorak <dvorakz@suse.cz> |
5148 | ||
5149 | PR tree-optimization/26643 | |
5150 | * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Do not handle | |
5151 | bit_field_refs. | |
5152 | ||
95ec2af0 KK |
5153 | 2006-03-28 Kaz Kojima <kkojima@gcc.gnu.org> |
5154 | ||
5155 | * config/sh/sh.md (udivsi3_i4_int): Clobber MACH_REG and MACL_REG. | |
5156 | (divsi3_i4_int): Likewise. | |
5157 | ||
e8366202 | 5158 | 2006-03-28 Roger Sayle <roger@eyesopen.com> |
5ac60669 RS |
5159 | |
5160 | * expr.c (emit_group_store): Only create a new pseudo reg if the | |
5161 | quantity it needs to hold isn't already a suitable pseudo. | |
5162 | ||
b6313dcf JL |
5163 | 2006-03-28 Jeff Law <law@redhat.com> |
5164 | ||
5165 | * timevar.def (TV_TREE_PHI_CPROP): New timevar. | |
5166 | * tree-ssa-dom.c (pass_phi_only_cprop): Use it. | |
5167 | ||
dd2c62dc RS |
5168 | 2006-03-28 Roger Sayle <roger@eyesopen.com> |
5169 | ||
5170 | * fold-const.c (fold_binary) <BIT_XOR_EXPR>: Fold (X & Y) ^ Y as | |
5171 | the equivalent ~X & Y, and the symmetry related transformations. | |
4b1c1f6f | 5172 | (fold_binary) <BIT_AND_EXPR>: Similarly, fold (X ^ Y) & Y as |
dd2c62dc RS |
5173 | ~X & Y, and symmetry related transforms. |
5174 | ||
3cc82eea MK |
5175 | 2006-03-28 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
5176 | ||
5177 | Revert my 2006-03-27 patches. | |
5178 | ||
e8206491 RS |
5179 | 2006-03-28 Roger Sayle <roger@eyesopen.com> |
5180 | ||
5181 | * fold-const.c (fold_unary) <NOP_EXPR>: Fold (T1)(~(T2)X) as | |
5182 | ~(T1)X, when T1 and T2 are integer types of the same precision | |
5183 | and (T2)X isn't an extension. | |
5184 | ||
72922229 JL |
5185 | 2006-03-28 Jeff Law <law@redhat.com> |
5186 | ||
5187 | PR tree-optimization/26796 | |
5188 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Queue blocks which | |
5189 | need EH edge cleanups rather than purging them immediately. | |
5190 | (eliminate_degenerate_phis): Handle queued EH cleanups. | |
5191 | ||
c245c134 DB |
5192 | 2006-03-28 Daniel Berlin <dberlin@dberlin.org> |
5193 | ||
5194 | * tree-ssa-alias.c (create_sft): Initially inherit TREE_ADDRESSABLE | |
5195 | from parent_var. | |
5196 | ||
7f166b0a RS |
5197 | 2006-03-27 Roger Sayle <roger@eyesopen.com> |
5198 | ||
5199 | PR middle-end/22524 | |
5200 | * fold-const.c (fold_binary) <MINUS_EXPR>: Call fold_convert to | |
5201 | cast BIT_NOT_EXPR operand to the correct type. | |
5202 | ||
ebf78a47 SP |
5203 | 2006-03-27 Sebastian Pop <pop@cri.ensmp.fr> |
5204 | ||
5205 | * tree-loop-linear.c: Don't include varray.h. | |
5206 | (gather_interchange_stats, try_interchange_loops, | |
5207 | linear_transform_loops): Use VEC instead of VARRAY. | |
5208 | * lambda-mat.c: Don't include varray.h. | |
5209 | * tree-chrec.c: Same. | |
5210 | * lambda-trans.c: Same. | |
5211 | * tree-vectorizer.c (new_loop_vec_info, destroy_loop_vec_info): Use | |
5212 | VEC instead of VARRAY. | |
5213 | * tree-vectorizer.h: Idem. | |
5214 | * tree-data-ref.c (dump_data_references, | |
5215 | dump_data_dependence_relations, dump_dist_dir_vectors, dump_ddrs, | |
5216 | initialize_data_dependence_relation, finalize_ddr_dependent, | |
5217 | compute_all_dependences, find_data_references_in_loop, | |
5218 | compute_data_dependences_for_loop, analyze_all_data_dependences, | |
5219 | free_dependence_relation, free_dependence_relations, | |
5220 | free_data_refs): Idem. | |
5221 | * tree-data-ref.h (data_reference_p, subscript_p): New. | |
5222 | (data_dependence_relation, DDR_SUBSCRIPT, DDR_NUM_SUBSCRIPTS): Use | |
5223 | VEC instead of VARRAY. | |
5224 | (DDR_SUBSCRIPTS_VECTOR_INIT): Removed. | |
5225 | (find_data_references_in_loop, compute_data_dependences_for_loop, | |
5226 | dump_ddrs, dump_dist_dir_vectors, dump_data_references, | |
5227 | dump_data_dependence_relations, free_dependence_relations, | |
5228 | free_data_refs): Adjust declaration. | |
5229 | (lambda_transform_legal_p): Move declaration here... | |
5230 | * tree-vect-analyze.c (vect_analyze_data_ref_dependences, | |
5231 | vect_compute_data_refs_alignment, vect_verify_datarefs_alignment, | |
5232 | vect_enhance_data_refs_alignment, vect_analyze_data_ref_accesses, | |
5233 | vect_analyze_data_refs): Use VEC instead of VARRAY. | |
5234 | * lambda.h (lambda_transform_legal_p): ...from here. | |
5235 | * lambda-code.c (lambda_transform_legal_p): Use VEC instead of VARRAY. | |
5236 | * tree-vect-transform.c (vect_update_inits_of_drs): Idem. | |
5237 | * Makefile.in (tree-loop-linear.o, lambda-mat.o, lambda-trans.o, | |
5238 | tree-chrec.o): Don't depend on VARRAY_H. | |
5239 | ||
5edb2b13 MK |
5240 | 2006-03-27 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
5241 | ||
5242 | * rtl.def (Copyright): Update date. | |
5243 | (DEPS_LIST): Change type of the second operand to 'int'. | |
5244 | * target.h (Copyright): Update date. | |
5245 | (struct gcc_target.speculate_insn): Change type of the second parameter | |
5246 | to 'int'. | |
5247 | * lists.c (Copyright): Update date. | |
5248 | (alloc_DEPS_LIST): Change signature. Update reference to the second | |
5249 | operand of the DEPS_LIST. | |
5250 | (copy_DEPS_LIST_list): Update reference to the second operand of the | |
5251 | DEPS_LIST. | |
5252 | * rtl.h (Copyright): Update date. | |
5253 | (alloc_DEPS_LIST): Update signature. | |
5254 | * sched-int.h (Copyright): Update date. | |
5255 | (ds_t): Change typedef to 'int'. | |
5256 | (DEP_STATUS, BITS_PER_DEP_STATUS): Update. | |
5257 | ||
c96a7cc5 MK |
5258 | 2006-03-27 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
5259 | ||
5260 | * haifa-sched.c (Copyright): Update date. | |
5261 | (try_ready): Change condition to restore non-speculative pattern | |
5262 | of the instruction. | |
5263 | (process_insn_depend_be_in_spec): Code to keep probability of the | |
5264 | speculative dependence non-decreasing. | |
5265 | ||
b256fbaf BS |
5266 | 2006-03-27 Bernd Schmidt <bernd.schmidt@analog.com> |
5267 | ||
5268 | * regrename.c (replace_oldest_value_addr): Initialize a variable to | |
5269 | shut up the compiler. | |
5270 | ||
575066d2 R |
5271 | 2006-03-27 J"orn Rennecke <joern.rennecke@st.com> |
5272 | ||
5273 | * config/sh/t-sh ($(T)libic_invalidate_array_4-100.a): Fix rule | |
5274 | to use lib prefix for target. | |
5275 | ($(T)libic_invalidate_array_4-200.a): Likewise. | |
5276 | ($(T)libic_invalidate_array_4a.a): Likewise. | |
5277 | ||
25e651ca AS |
5278 | 2006-03-27 Andrew Stubbs <andrew.stubbs@st.com> |
5279 | J"orn Rennecke <joern.rennecke@st.com> | |
5280 | ||
5281 | * superh.opt: New file. | |
5282 | * sh.c (boardtype, osruntime): Remove. | |
5283 | * superh.h (SUBTARGET_OPTIONS): Remove. | |
5284 | * config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options. | |
5285 | ||
5286 | * config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed | |
5287 | arguments with ^ and/or []. | |
5288 | ||
5289 | * config.gcc (sh-*-*): Add quoting to account for quirk of | |
5290 | Solaris /bin/sh. | |
5291 | Replace == with = in enable_incomplete_targets test. | |
5292 | ||
5293 | * config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT | |
5294 | with MASK_LITTLE_ENDIAN. | |
5295 | ||
5296 | * config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file. | |
5297 | * config/sh/sh.opt: Added to some comments. | |
5298 | * config/sh/superh.h: Removed some chaff. | |
5299 | ||
5300 | * config/sh/sh.opt: Add m4-[1234]00* options. | |
5301 | * config/sh/sh.c (sh_handle_option): Likewise. | |
5302 | * config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define. | |
5303 | (ic_invalidate_array_4-100.o): New rule. | |
5304 | ($(T)libic_invalidate_array_4-100.a): Likewise. | |
5305 | (ic_invalidate_array_4-200.o): Likewise. | |
5306 | ($(T)libic_invalidate_array_4-200.a): Likewise. | |
5307 | (ic_invalidate_array_4a.o): Likewise. | |
5308 | ($(T)libic_invalidate_array_4a.a): Likewise. | |
5309 | * config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS. | |
5310 | * config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*, | |
5311 | m4-200*, and m4a*. | |
5312 | * config/sh/crt1.asm: Merged in profiling code. | |
5313 | * config/sh/superh.h (STARTFILE_SPEC): Override. | |
5314 | * config/sh/t-superh: Override EXTRA_MULTILIB_PARTS. | |
5315 | Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o. | |
5316 | * config.gcc (sh*-superh-elf): Add t-superh to tmake_file. | |
5317 | ||
5318 | * t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants. | |
5319 | * config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS / | |
5320 | MULTILIB_DIRNAMES / MULTILIB_MATCHES settings. | |
5321 | ||
5322 | * sh.opt (mpretend-cmove): New option. | |
5323 | * sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1. | |
5324 | * sh.md (movsicc_t_false, movsicc_t_tru): New patterns. | |
5325 | (movsicc): Add TARGET_PRETEND_CMOVE code. | |
5326 | ||
74aa8b4b AK |
5327 | 2006-03-27 Andreas Krebbel <krebbel1@de.ibm.com> |
5328 | ||
4b1c1f6f | 5329 | * config/s390/s390-protos.h (s390_hard_regno_mode_ok, |
74aa8b4b AK |
5330 | s390_class_max_nregs): New function prototypes. |
5331 | * config/s390/s390.c (REGNO_PAIR_OK): New macro. | |
5332 | (s390_hard_regno_mode_ok, s390_class_max_nregs): New functions. | |
5333 | * config/s390/s390.h (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK, | |
5334 | CLASS_MAX_NREGS): Macro bodies replaced by function calls. | |
5335 | ||
0d06ead5 GK |
5336 | 2006-03-26 Geoffrey Keating <geoffk@apple.com> |
5337 | ||
5338 | * dwarf2out.c (add_location_or_const_value_attribute): Call | |
5339 | tree_add_const_value_attribute if nothing else works. | |
5340 | (reference_to_unused): New. | |
5341 | (rtl_for_decl_init): Use reference_to_unused to decide whether | |
5342 | to output an initializer. | |
5343 | ||
036aadfc AM |
5344 | 2006-03-27 Alan Modra <amodra@bigpond.net.au> |
5345 | ||
5346 | PR target/26459 | |
5347 | * config/rs6000/rs6000.md (DF reg move peephole): Prevent | |
5348 | peephole removing spe frob_di_df_2. | |
5349 | ||
ba42e045 SP |
5350 | 2006-03-26 Sebastian Pop <pop@cri.ensmp.fr> |
5351 | ||
5352 | * tree-data-ref.c: Rename DDR_SIZE_VECT to DDR_NB_LOOPS. | |
5353 | (subscript_dependence_tester_1): Declared. | |
5354 | (print_dir_vectors, print_dist_vectors): New. | |
5355 | (debug_data_dependence_relation): New. | |
5356 | (dump_data_dependence_relation): Print more details. | |
5357 | (initialize_data_dependence_relation): Initialize DDR_LOOP_NEST. | |
5358 | (analyze_subscript_affine_affine): Don't ICE when gcd_alpha_beta is 0. | |
5359 | (save_dist_v, save_dir_v, add_outer_distances, | |
5360 | build_classic_dist_vector_1): New. | |
5361 | (build_classic_dist_vector): Rewrite to work on DDR_LOOP_NEST. | |
5362 | Don't test for lambda_vector_lexico_pos. | |
5363 | (same_access_functions, add_multivariate_self_dist, | |
5364 | add_other_self_distances, dir_from_dist): New. | |
4b1c1f6f | 5365 | (build_classic_dir_vector): Replace implementation almost identical to |
ba42e045 SP |
5366 | build_classic_dist_vector with a walk of DDR_DIST_VECTS with a call to |
5367 | dir_from_dist. | |
5368 | (subscript_dependence_tester_1): New. | |
5369 | (subscript_dependence_tester): Handle the lexicographically negative | |
5370 | distance vectors by recomputing the dependence relation. | |
5371 | (compute_affine_dependence): Remove parameter loop_nest_depth. | |
5372 | (compute_self_dependence): Don't call compute_subscript_distance. | |
5373 | (compute_all_dependences): Remove parameters nb_loops, loop_nest_depth. | |
5374 | Add a parameter for the loop_nest. | |
5375 | (find_loop_nest_1, find_loop_nest): New. | |
5376 | (compute_data_dependences_for_loop): Compute the loop nest, and give | |
5377 | up if the nest is not well formed. | |
5378 | * tree-data-ref.h (loop_p): New. | |
4b1c1f6f | 5379 | (struct data_dependence_relation): Replace size_vect field with |
ba42e045 SP |
5380 | loop_nest, a vec of loops. |
5381 | (DDR_SIZE_VECT): Renamed DDR_NB_LOOPS. | |
5382 | (DDR_LOOP_NEST): New. | |
5383 | (print_dir_vectors, print_dist_vectors, | |
5384 | debug_data_dependence_relation): Declared. | |
5385 | (index_in_loop_nest): New. | |
5386 | * tree-vect-analyze.c (vect_analyze_data_ref_dependence): Use | |
5387 | DDR_LOOP_NEST and index_in_loop_nest to determine the dependence | |
5388 | distance. | |
5389 | ||
30a440a7 AN |
5390 | 2006-03-25 Adam Nemet <anemet@caviumnetworks.com> |
5391 | ||
5392 | * simplify-rtx.c (simplify_relational_operation): Call | |
5393 | simplify_relational_operation_1 even if mode is VOIDmode. | |
5394 | ||
fe1f8f44 DB |
5395 | 2006-03-25 Daniel Berlin <dberlin@dberlin.org> |
5396 | ||
5397 | PR tree-optimization/26804 | |
5398 | * tree.h (DECL_CALL_CLOBBERED): New macro. | |
5399 | (tree_decl_common): Add call_clobbered_flag. | |
5400 | * tree-flow-inline.h (is_call_clobbered): Use DECL_CALL_CLOBBERED. | |
5401 | (mark_call_clobbered): Set DECL_CALL_CLOBBERED. | |
5402 | (clear_call_clobbered): Clear DECL_CALL_CLOBBERED. | |
5403 | (mark_non_addressable): Ditto. | |
5404 | * tree-ssa.c (verify_call_clobbered): New function. | |
5405 | (verify_alias_info): Use it. | |
5406 | * tree-pass.h (pass_reset_cc_flags): New prototype. | |
5407 | * tree-ssa-alias.c (pass_reset_cc_flags): New structure. | |
5408 | (reset_cc_flags): New function. | |
5409 | * passes.c (init_optimization_passes): Call reset_cc_flags after | |
5410 | initializing referenced_vars. | |
5411 | ||
1d8b38a0 UB |
5412 | 2006-03-25 Uros Bizjak <uros@kss-loka.si> |
5413 | Roger Sayle <roger@eyesopen.com> | |
5414 | ||
5415 | PR middle-end/26717 | |
5416 | * fold-const.c (fold_binary) [RDIV_EXPR]: Do not optimize A / A | |
5417 | to 1.0 for non-real operands. Implement A / A optimization for | |
5418 | complex operands. | |
5419 | ||
75bcbcdb L |
5420 | 2006-03-25 H.J. Lu <hongjiu.lu@intel.com> |
5421 | ||
5422 | * config/i386/i386.c (size_cost): Correct the comment for | |
5423 | cost of storing fp registers. | |
5424 | (i386_cost): Likewise. | |
5425 | (i486_cost): Likewise. | |
5426 | (pentium_cost): Likewise. | |
5427 | (pentiumpro_cost): Likewise. | |
5428 | (k6_cost): Likewise. | |
5429 | (athlon_cost): Likewise. | |
5430 | (k8_cost): Likewise. | |
5431 | (pentium4_cost): Likewise. | |
5432 | (nocona_cost): Likewise. | |
5433 | (generic64_cost): Likewise. | |
5434 | (generic32_cost): Likewise. | |
5435 | ||
625a46d9 DC |
5436 | 2006-03-24 Denis Chertykov <denisc@overta.ru> |
5437 | ||
5438 | * config/avr/avr-protos.h (extra_constraint): Delete. | |
5439 | (extra_constraint_Q): New declaration. | |
5440 | * config/avr/constraints.md: New file. | |
5441 | * config/avr/avr.md: Include it. | |
5442 | (REG_X, REG_Y, REG_Z, REG_W): New constants. | |
5443 | (TMP_REGNO, ZERO_REGNO): Likewise. | |
5444 | (UNSPEC_STRLEN, UNSPEC_INDEX_JMP): Likewise. | |
5445 | * config/avr/avr.c (avr_reg_class_from_letter): Delete. | |
5446 | (extra_constraint): Delete. | |
5447 | (extra_constraint_Q): Test for memory constraint 'Q'. | |
5448 | * config/avr/avr.h (REG_X,REG_Y,REG_Z,REG_W): Delete. | |
5449 | (REG_CLASS_FROM_LETTER): Delete. | |
5450 | (CONST_OK_FOR_LETTER_P): Delete. | |
5451 | (CONST_DOUBLE_OK_FOR_LETTER_P): Delete. | |
5452 | (EXTRA_CONSTRAINT): Delete. | |
5453 | (TMP_REGNO): Delete. | |
5454 | (ZERO_REGNO): Delete. | |
5455 | ||
3ae194cd JL |
5456 | 2006-03-24 Jeff Law <law@redhat.com> |
5457 | ||
5458 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt | |
5459 | directly. Call mark_new_vars_to_rename slightly earlier. | |
5460 | ||
895de5a8 GK |
5461 | 2006-03-24 Geoffrey Keating <geoffk@apple.com> |
5462 | ||
9e51ddaa GK |
5463 | * dwarf2out.c (is_c_family): Understand new DWARF3 language types. |
5464 | (is_cxx): Likewise. | |
5465 | (gen_compile_unit_die): Use new language types for Objective-C and | |
5466 | Objective-C++. | |
5467 | (dwarf2out_decl): Use is_cxx rather than testing explicitly against | |
5468 | DW_LANG_C_plus_plus. | |
5469 | ||
895de5a8 GK |
5470 | PR 26793 |
5471 | * config/t-darwin (crt3.o): Work around bug 26840. | |
5472 | * config/darwin-crt3.c: Rewrite. | |
5473 | * config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o. | |
5474 | ||
e713adf6 CD |
5475 | 2006-03-24 Carlos O'Donell <carlos@codesourcery.com> |
5476 | ||
5477 | * doc/invoke.texi: Document -femit-class-debug-always | |
5478 | * common.opt: Add -femit-class-debug-always. | |
5479 | ||
93fa8428 AK |
5480 | 2006-03-24 Andreas Krebbel <krebbel1@de.ibm.com> |
5481 | ||
5482 | * config/s390/s390.c (s390_decompose_address): Allow SImode for | |
5483 | index and base register. | |
5484 | (s390_expand_plug_operand, legitimate_address_p, preferred_la_operand_p, | |
5485 | print_operand_address, print_operand): Replaced REG_OK_FOR_BASE_STRICT_P | |
5486 | with REGNO_OK_FOR_BASE_P and REG_OK_FOR_INDEX_STRICT_P with | |
5487 | REGNO_OK_FOR_INDEX_P. | |
5488 | * config/s390/s390.h (REGNO_OK_FOR_INDEX_P): Replaced check with | |
5489 | ADDR_REGNO_P. | |
5490 | (REG_OK_FOR_INDEX_NONSTRICT_P, REG_OK_FOR_BASE_NONSTRICT_P, | |
5491 | REG_OK_FOR_INDEX_STRICT_P, REG_OK_FOR_BASE_STRICT_P, REG_OK_FOR_INDEX_P, | |
5492 | REG_OK_FOR_BASE_P): Definitions removed. | |
5493 | ||
8cb86b65 JJ |
5494 | 2006-03-24 Jakub Jelinek <jakub@redhat.com> |
5495 | ||
5496 | PR middle-end/26611 | |
5497 | * gimplify.c (gimplify_bind_expr): Only call omp_add_variable on | |
5498 | non-global variables that don't have DECL_SEEN_IN_BIND_EXPR_P bit | |
5499 | set yet or weren't marked as local yet. | |
5500 | ||
84c9cb12 BS |
5501 | 2006-03-24 Bernd Schmidt <bernd.schmidt@analog.com> |
5502 | ||
5503 | * regrename.c (scan_rtx_address): Initialize a variable to shut up | |
5504 | the compiler. | |
5505 | ||
d04b6e6e EB |
5506 | 2006-03-24 Eric Botcazou <ebotcazou@adacore.com> |
5507 | ||
5508 | * config/rs6000/rs6000-protos.h (rs6000_offsettable_memref_p): Declare. | |
5509 | (rs6000_legitimate_small_data_p): Delete. | |
5510 | * config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New predicate. | |
5511 | (rs6000_legitimate_small_data_p): Rename to legitimate_small_data_p | |
5512 | and make static. Add forward declaration. Update uses. | |
5513 | (rs6000_split_multireg_move): Use rs6000_offsettable_memref_p instead | |
5514 | of offsettable_memref_p. | |
5515 | * config/rs6000/rs6000.md (movdf_hardfloat32): Revert 2005-08-23 fix. | |
5516 | Use rs6000_offsettable_memref_p instead of a less accurate predicate. | |
5517 | ||
243cc836 JL |
5518 | 2006-03-24 Jeff Law <law@redhat.com> |
5519 | ||
5520 | * tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work | |
5521 | around bug in immediate-use iterator. | |
5522 | ||
5b314bb3 AM |
5523 | 2006-03-24 Alan Modra <amodra@bigpond.net.au> |
5524 | ||
5525 | PR target/26607 | |
5526 | * config/rs6000/darwin-ldouble.c: Don't compile when __NO_FPRS__ | |
5527 | or __LITTLE_ENDIAN__. | |
5528 | ||
b368d6b8 R |
5529 | 2006-03-23 J"orn Rennecke <joern.rennecke@st.com> |
5530 | ||
5531 | * config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files. | |
5532 | * config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant. | |
5533 | * config/sh/t-sh (LIB1ASMFUNCS): Add _div_table. | |
5534 | * config/sh/sh.opt (mdiv=): Amend description. | |
5535 | * config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro. | |
5536 | (TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise. | |
5537 | (sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1, | |
5538 | SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC. | |
5539 | (OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1. | |
5540 | Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros. | |
5541 | * config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns. | |
5542 | (udivsi3, divsi3): Use them. Check TARGET_DIVIDE_CALL_TABLE / | |
5543 | TARGET_DIVIDE_CALL_FP. | |
5544 | ||
a57aee2a MK |
5545 | 2006-03-23 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
5546 | ||
5547 | * haifa-sched.c (choose_ready): Fix type of the local variable. | |
5548 | Move local variables. Add comment. | |
5549 | (check_reg_live): Change signature. Make callable from debugger. | |
5550 | * sched-int.h (check_reg_live): Update signature. | |
5551 | * sched-ebb.c (check_reg_live): Update parameters. | |
5552 | * sched-rgn.c (check_reg_live): Ditto. | |
5553 | (region_head_or_leaf_p): Check pointer before dereferencing. | |
5554 | * config/ia64/ia64.c (ia64_set_sched_flags): Disable data speculation | |
5555 | before reload on optimization levels below 1. | |
5556 | ||
dec6909b RH |
5557 | 2006-03-23 Richard Henderson <rth@redhat.com> |
5558 | ||
e584065d RH |
5559 | * config/alpha/alpha.c (alpha_legitimate_constant_p): Reject |
5560 | tls symbols. | |
5561 | ||
dec6909b RH |
5562 | PR target/26347 |
5563 | * config/alpha/predicates.md (local_symbolic_operand): Reject | |
5564 | weak symbols. | |
5565 | ||
60fee157 AP |
5566 | 2006-03-23 Andrew Pinski <pinskia@physics.uc.edu> |
5567 | ||
5568 | PR tree-opt/26795 | |
5569 | * tree-ssa-pre.c (create_value_expr_from): Don't reject | |
5570 | expressions which have overflowed constants. | |
5571 | ||
79b9dd8c ZD |
5572 | 2006-03-23 Zdenek Dvorak <dvorakz@suse.cz> |
5573 | ||
5574 | * cse.c (cse_end_of_basic_block): Do not check for LOOP_END note. | |
5575 | ||
054a09fb ZD |
5576 | 2006-03-23 Zdenek Dvorak <dvorakz@suse.cz> |
5577 | ||
5578 | * cfgloopmanip.c (create_loop_notes): Removed. | |
5579 | * final.c (final_scan_insn): Do not handle loop notes. | |
5580 | * jump.c (squeeze_notes): Ditto. | |
5581 | * cfglayout.c (skip_insns_after_block, | |
5582 | duplicate_insn_chain): Ditto. | |
5583 | * cfgcleanup.c (rest_of_handle_jump2): Do not call | |
5584 | create_loop_notes. | |
5585 | * cfgloop.h (create_loop_notes): Declaration removed. | |
5586 | ||
c16ba1d5 RS |
5587 | 2006-03-23 Richard Sandiford <richard@codesourcery.com> |
5588 | ||
5589 | * varasm.c (output_constant_pool): Restore fnname and fndecl | |
5590 | arguments. | |
5591 | (assemble_start_function): Adjust call accordingly. | |
5592 | (assemble_end_function): Likewise. | |
5593 | ||
698cf1c8 VR |
5594 | 2006-03-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
5595 | ||
91d876d9 | 5596 | PR mudflap/26789 |
7a752640 VR |
5597 | * tree-mudflap.c (mudflap_finish_file): Skip erroneous objects. |
5598 | ||
91d876d9 | 5599 | PR mudflap/26790 |
698cf1c8 VR |
5600 | * tree-mudflap.c (mf_xform_derefs_1): Return early on error_mark_node. |
5601 | ||
ddaf3b86 VR |
5602 | 2006-03-22 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
5603 | ||
5604 | PR driver/22600 | |
5605 | * system.h (ICE_EXIT_CODE): New macro. | |
5606 | * diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE. | |
5607 | (diagnostic_action_after_output): Likewise. | |
5608 | * gcc.c (fatal_ice): New function. | |
5609 | (execute): Use it instead of fatal. | |
5610 | (fancy_abort): Likewise. | |
5611 | * doc/invoke.texi (-pass-exit-codes): Document return code for ICEs. | |
5612 | ||
4dc7782d JL |
5613 | 2006-03-22 Jeff Law <law@redhat.com> |
5614 | ||
5615 | * loop-unroll.c (analyze_iv_to_split_insn): Handle | |
5616 | iv_analyze_result returning false. | |
5617 | ||
f328a23a JZ |
5618 | 2006-03-22 Jie Zhang <jie.zhang@analog.com> |
5619 | ||
5620 | * config/bfin/bfin.h (ASM_FORMAT_PRIVATE_NAME): Remove. | |
5621 | ||
fad41cd7 RH |
5622 | 2006-03-22 Richard Henderson <rth@redhat.com> |
5623 | ||
5624 | PR middle-end/26084 | |
5625 | * except.c (duplicate_eh_regions_0): New. | |
5626 | (duplicate_eh_region_1): Duplicate the children of the node as | |
5627 | well as the node itself. Link them up properly. | |
5628 | (duplicate_eh_region_2): Merge into ... | |
5629 | (duplicate_eh_regions): ... here. Take copy_region argument, and | |
5630 | copy only a sub-tree if asked. Simplify copying and fixup. | |
5631 | (eh_region_outer_p): New. | |
5632 | * except.h (duplicate_eh_regions): Update decl. | |
5633 | (eh_region_outer_p): Declare. | |
5634 | * omp-low.c (lower_omp_single): Fix eh region placement wrt OMP_RETURN. | |
5635 | (lower_omp_master): Likewise. | |
5636 | (lower_omp_ordered): Likewise. | |
5637 | * tree-cfg.c (struct move_stmt_d): Add new_label_map. | |
5638 | (move_stmt_r): Use it to remap labels. Handle recursion vs | |
5639 | remap_decls_p properly. | |
5640 | (move_block_to_fn): Pass in new_label_map. Remap RESX_EXPR. | |
5641 | (find_outermost_region_in_block): New. | |
5642 | (new_label_mapper): New. | |
5643 | (move_sese_region_to_fn): Copy eh information to the new function | |
5644 | properly. | |
5645 | * tree-inline.c (copy_cfg_body): Update for new duplicate_eh_regions | |
5646 | argument. | |
5647 | * tree-pretty-print.c (dump_generic_node): Dump RESX_EXPR region | |
5648 | number. | |
5649 | ||
bc4a3483 RS |
5650 | 2006-03-22 Richard Sandiford <richard@codesourcery.com> |
5651 | ||
5652 | * doc/md.texi (-mshared): Mention that -mshared code can be linked | |
5653 | into shared libraries. | |
5654 | ||
08b1e29a RS |
5655 | 2006-03-22 Richard Sandiford <richard@codesourcery.com> |
5656 | ||
5657 | * doc/md.texi: Refer to i386/constraints.md instead of | |
5658 | i386/predicates.md. | |
5659 | * config/i386/constraints.md: New file, extracted from... | |
5660 | * config/i386/predicates.md: ...here. | |
5661 | * config/i386/i386.md: Include constraints.md. | |
5662 | ||
5b5cba1f JM |
5663 | 2006-03-21 Jason Merrill <jason@redhat.com> |
5664 | ||
ac382b62 JM |
5665 | * builtins.c (expand_builtin_fork_or_exec): Fix pasto. |
5666 | ||
5b5cba1f JM |
5667 | PR middle-end/20297 |
5668 | * expr.c (init_block_move_fn): Force default visibility. | |
5669 | (init_block_clear_fn): Likewise. | |
5670 | * builtins.c (expand_builtin_fork_or_exec): Likewise. | |
5671 | * targhooks.c (default_external_stack_protect_fail): Likewise. | |
5672 | ||
d9870b7e RS |
5673 | 2006-03-21 Richard Sandiford <richard@codesourcery.com> |
5674 | ||
5675 | * config/mips/predicates.md (const_call_insn_operand): Allow direct | |
5676 | calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS. | |
5677 | * config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS. | |
5678 | Use TARGET_OLDABI instead of !TARGET_NEWABI. | |
5679 | (loadgp): Use mips_current_loadgp_style. | |
5680 | (loadgp_noshared): New pattern. | |
5681 | (sibcall_internal): Use MIPS_CALL. | |
5682 | (sibcall_value_internal): Likewise. | |
5683 | (sibcall_value_multiple_internal): Likewise. | |
5684 | (call_internal): Likewise. | |
5685 | (call_value_internal): Likewise. | |
5686 | (call_value_multiple_internal): Likewise. | |
5687 | (call_split): Use MIPS_CALL and add an 'S' constraint. | |
5688 | (call_value_split): Likewise. | |
5689 | (call_value_multiple_split): Likewise. | |
5690 | * config/mips/mips.opt (-mabicalls): Tweak docstring. | |
5691 | (-mshared): New option. | |
5692 | * config/mips/mips-protos.h (mips_loadgp_style): New enum. | |
5693 | (mips_current_loadgp_style): Declare. | |
5694 | * config/mips/mips.c (mips_classify_symbol): Avoid using | |
5695 | SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS. Use SYMBOL_GENERAL | |
5696 | rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if | |
5697 | TARGET_ABSOLUTE_ABICALLS. | |
5698 | (override_options): Adjust comments. Improve the warning that is | |
5699 | issued when -mabicalls and -G are used together. | |
5700 | (mips_file_start): Remove comment. | |
5701 | (mips_current_loadgp_style): New function. | |
5702 | (mips_gnu_local_gp): New variable. | |
5703 | (mips_emit_loadgp): Use mips_current_loadgp_style. Handle | |
5704 | LOADGP_ABSOLUTE. | |
5705 | (mips_output_function_prologue): Use mips_current_laodgp_style. | |
5706 | (mips_expand_prologue): Call mips_emit_loadgp before emitting | |
5707 | the cprestore instruction. | |
5708 | (mips_extra_live_on_entry): Fix reversed test. Don't make $25 | |
5709 | live for TARGET_ABSOLUTE_ABICALLS. | |
5710 | * config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro. | |
5711 | (ASM_SPEC): Pass down -mshared and -mno-shared. | |
5712 | (MIPS_CALL): New macro. | |
5713 | * config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__ | |
5714 | definition. | |
5715 | * doc/invoke.texi (-mabicalls): Update documentation. | |
5716 | (-mshared): Document. | |
5717 | ||
487d9a61 SE |
5718 | 2006-03-21 Steve Ellcey <sje@cup.hp.com> |
5719 | ||
5720 | * config/ia64/unwind-hpux.c: New file. | |
5721 | * config/ia64/t-hpux: Add unwind-hpux.c to libgcc. | |
5722 | ||
f7da48ef SE |
5723 | 2006-03-21 Steve Ellcey <sje@cup.hp.com> |
5724 | ||
5725 | PR libgomp/26384 | |
5726 | * config/pa/pa64-hpux.h (LIB_SPEC): Fix for -mt and -pthread options. | |
5727 | ||
a3b196e3 JL |
5728 | 2006-03-21 Jeff Law <law@redhat.com> |
5729 | ||
5730 | * tree-vrp.c (extract_range_from_unary_expr): Derive ranges for | |
5731 | type conversions of a VR_VARYING source to a wider type. | |
5732 | ||
ec23ed60 EB |
5733 | 2006-03-21 Eric Botcazou <ebotcazou@libertysurf.fr> |
5734 | ||
5735 | * config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to | |
5736 | tm_file on Solaris 10 and later. | |
5737 | (sparc64-*-solaris2*): Likewise. | |
5738 | (sparc-*-solaris2*): Likewise. | |
5739 | * config/sol26.h: Rename to config/sol2-6.h. | |
5740 | * config/sol2-10.h: New file. | |
5741 | ||
5ded46eb AP |
5742 | 2006-03-21 Andrew Pinski <pinskia@physics.uc.edu> |
5743 | ||
5744 | PR tree-opt/26781 | |
5745 | * tree-ssa-pre.c (create_component_ref_by_pieces): | |
5746 | Handle STRING_CST. | |
5747 | ||
3c9bb46e JJ |
5748 | 2006-03-21 Jakub Jelinek <jakub@redhat.com> |
5749 | ||
5750 | PR c++/26690 | |
5751 | * tree.c (get_callee_fndecl): If CALL is error_mark_node, | |
5752 | return it immediately. | |
5753 | ||
b6bbd675 MM |
5754 | 2006-03-21 Michael Matz <matz@suse.de> |
5755 | ||
5756 | * genautomata.c (<struct state>, num_out_arcs, presence_signature): | |
5757 | New members. | |
5758 | (remove_arc, add_arc): Update num_out_arcs member. | |
5759 | (set_out_arc_insns_equiv_num): Returns nothing instead of number | |
5760 | of out arcs. | |
5761 | (cache_presence): New function. | |
5762 | (compare_states_for_equiv): New function. | |
5763 | (state_is_differed): Don't take number of outargs, adjust callers. | |
5764 | Use new invariant for speeding up. | |
5765 | (init_equiv_class): Create initial classes based on sorted | |
5766 | input. | |
5767 | (partition_equiv_class): Don't track out_arcs_num. | |
5768 | (evaluate_equiv_classes): Call cache_presence on all states and | |
5769 | sort them. | |
5770 | ||
c4963a0a BS |
5771 | 2006-03-21 Bernd Schmidt <bernd.schmidt@analog.com> |
5772 | ||
5773 | * config/bfin/bfin-protos.h (bfin_dsp_memref_p): Declare. | |
5774 | * config/bfin/bfin.c (bfin_dsp_memref_p): New function. | |
5775 | (bfin_valid_reg_p): Test for pseudos explicitly and use only | |
5776 | REGNO_MODE_CODE_OK_FOR_BASE_P. New args MODE and OUTER_CODE; all | |
5777 | callers changed. | |
5778 | * config/bfin/bfin.h (PREG_P): Use P_REGNO_P. | |
5779 | (IREG_P, P_REGNO_P, I_REGNO_P): New macros. | |
5780 | (enum reg_class, REG_CLASS_CONTENTS): Add IPREGS. | |
5781 | (BASE_REG_CLASS, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, | |
5782 | REGNO_OK_FOR_BASE_STRICT_P, REGNO_OK_FOR_BASE_NONSTRICT_P): Delete | |
5783 | macros. | |
5784 | (IREG_POSSIBLE_P, MODE_CODE_BASE_REG_CLASS, | |
5785 | REGNO_MODE_CODE_OK_FOR_BASE_P): New macros. | |
5786 | (REGNO_REG_CLASS): ARGP is in PREGS. | |
5787 | * config/bfin/bfin.md (movhi_insn): Allow for addresses containing | |
5788 | IREGS. | |
5789 | (zero_extendhisi2, extendhisi2): Likewise; changed to define_and_split | |
5790 | to deal with those addresses. | |
5791 | * addresses.h: New file. | |
5792 | * caller-save.c: Include "addresses.h". | |
5793 | (init_caller_save): Use new base_reg_class function. | |
5794 | * rtl-factoring.c: Include "addresses.h". | |
5795 | (recompute_gain_for_pattern_seq): Use new function ok_for_base_p_1. | |
5796 | * recog.c: Include "addresses.h". | |
5797 | (preprocess_constraints): Use new base_reg_class function. | |
5798 | * regrename.c: Include "addresses.h". | |
5799 | (scan_rtx_address): Use new regno_ok_for_base_p and base_reg_class | |
5800 | functions. Keep track of a new var INDEX_CODE to compute valid | |
5801 | classes. | |
5802 | (replace_oldest_value_addr): Likewise. | |
5803 | (replace_oldest_value_mem): Use base_reg_class. | |
5804 | * reload.c: Include "addresses.h". | |
5805 | (REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P): Delete macros. | |
5806 | (find_reloads): Use new base_reg_class function. | |
5807 | (find_reloads_address): Likewise; also use regno_ok_for_base_p. | |
5808 | (find_reloads_address_1): Likewise. New args OUTER_CODE and INDEX_CODE; | |
5809 | all callers and prototype changed. | |
5810 | * reload1.c: Include "addresses.h". | |
5811 | (maybe_fix_stack_asms): Use base_reg_class. | |
5812 | * regclass.c: Include "addresses.h". | |
5813 | (ok_for_index_p_nonstrict, ok_for_base_p_nonstrict): New functions. | |
5814 | (init_reg_autoinc): Use new base_reg_class function. | |
5815 | (record_reg_classes): Likewise. | |
5816 | (record_address_regs): Delete arg CLASS; add args CONTEXT, MODE, | |
5817 | OUTER_CODE and INDEX_CODE. All callers and prototype changed. | |
5818 | Use new args to compute necessary class. | |
5819 | ||
5820 | * Makefile.in (regclass.o, reload.o, reload1.o, caller-save.o, recog.o, | |
5821 | regrename.o, rtl-factoring.o): Update dependencies. | |
5822 | * doc/tm.texi (MODE_CODE_BASE_REG_CLASS): Document. | |
5823 | (REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise. | |
5824 | (REG_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_REG_BASE_P, | |
5825 | REG_OK_FOR_INDEX_P): Delete documentation. | |
5826 | ||
69bdb292 AS |
5827 | 2006-03-21 Alexey Starovoytov <alexey.starovoytov@sun.com> |
5828 | ||
5829 | * config.gcc (sparc-*-solaris2*): Change the default CPU setting | |
5830 | from V7 to V9 for Solaris 7 and above. | |
5831 | ||
0698a1d2 TM |
5832 | 2006-03-21 Toon Moene <toon@moene.indiv.nluug.nl> |
5833 | ||
5834 | * doc/invoke.texi: Document new flag -fargument-noalias-anything. | |
5835 | * tree-ssa-alias.c (may_alias_p): If flag_argument_noalias > 2, | |
5836 | argument pointers may not alias any other storage. | |
5837 | * common.opt: Define option -fargument-noalias-anything. | |
5838 | * tree-ssa-structalias.c (intra_create_variable_infos): Fortran | |
5839 | alias semantics is specified by flag_argument_noalias > 2. | |
5840 | ||
ee51e035 | 5841 | 2006-03-20 Jeff Law <law@redhat.com> |
e67c25c7 JL |
5842 | |
5843 | * tree-pass.h (pass_phi_only_copy_prop): Delete. | |
5844 | (pass_phi_only_cprop): Declare. | |
5845 | * passes.c (init_optimization_passes): Replace pass_phi_only_copy_prop | |
5846 | with phi_only_cprop | |
5847 | * tree-ssa-dom.c (degenerate_phi_result): New function. | |
5848 | (remove_stmt_or_phi, get_lhs_or_phi_result): Likewise. | |
5849 | (get_rhs_or_phi_arg, propagate_rhs_into_lhs): Likewise. | |
5850 | (eliminate_const_or_copy, eliminate_degenerate_phis_1): Likewise. | |
5851 | (eliminate_degenerate_phis): Likewise. | |
5852 | (pass_phi_only_cprop): New pass descriptor. | |
5853 | * tree-ssa-copy.c (init_copy_prop): Lose PHIS_ONLY argument and | |
5854 | support code. Callers updated. | |
5855 | (execute_copy_prop, do_copy_prop): Likewise and corresponding changes. | |
5856 | (store_copy_prop): Likewise. | |
5857 | (do_phi_only_copy_prop, pass_phi_only_copy_prop): Remove. | |
5858 | ||
0ed5edac JM |
5859 | 2006-03-20 Jason Merrill <jason@redhat.com> |
5860 | ||
5861 | PR c++/21764 | |
5862 | * c-pragma.c (visstack): Move out of handle_pragma_visibility. | |
5863 | (push_visibility, pop_visibility): Likewise. | |
5864 | * c-pragma.h: Declare them. | |
5865 | ||
c6d56443 KK |
5866 | 2006-03-20 Kaz Kojima <kkojima@gcc.gnu.org> |
5867 | ||
5868 | * config/sh/sh.c (untangle_mova): Initialize n_addr and n_target. | |
5869 | ||
5870 | * config/sh/sh.c (find_regmode_weight): Change the type of the first | |
5871 | parameter and use get_ebb_head_tail. | |
5872 | (sh_md_init_global): Adjust uses of find_regmode_weight. | |
5873 | ||
ede497cf SB |
5874 | 2006-03-20 Steven Bosscher <stevenb.gcc@gmail.com> |
5875 | ||
5876 | * function.h (struct function) <x_tail_recursion_reentry>: | |
5877 | Rename to x_stack_check_probe_note. | |
5878 | (tail_recursion_reentry): Rename to stack_check_probe_note. | |
5879 | * function.c: Replace tail_recursion_reentry with | |
5880 | stack_check_probe_note everywhere. | |
5881 | (expand_function_start): Only emit a note for | |
5882 | stack_check_probe_note with -fstack-protect. | |
5883 | * stmt.c (expand_case): Don't emit NOTE_INSN_DELETED notes. | |
5884 | ||
5885 | * emit-rtl.c (remove_unnecessary_notes): Remove. | |
5886 | (pass_remove_unnecessary_notes): Remove. | |
5887 | * rtl.h (remove_unnecessary_notes): Remove prototype. | |
5888 | * final.c (final_start_function): Don't call remove_unnecessary_notes. | |
5889 | * tree-pass.h (pass_remove_unnecessary_notes): Remove. | |
5890 | * passes.c (pass_remove_unnecessary_notes): Don't run it. | |
5891 | ||
e13f1c14 AP |
5892 | 2006-03-20 Andrew Pinski <pinskia@physics.uc.edu> |
5893 | ||
5894 | PR tree-opt/26629 | |
5895 | * tree-ssa-pre (phi_translate): Handle ARRAY_REF's operands. | |
5896 | (valid_in_set): Handle ARRAY_REF. | |
5897 | Change "if min_variant or VH" to asserts. | |
5898 | (create_component_ref_by_pieces): Handle ARRAY_REF. | |
5899 | (create_expression_by_pieces): Likewise. | |
5900 | (can_PRE_operation): ARRAY_REFs can now be PRE'd. | |
5901 | ||
7a22dbec DE |
5902 | 2006-03-20 David Edelsohn <edelsohn@gnu.org> |
5903 | ||
5904 | * genpreds.c (write_insn_extra_address_constraint): Argument `c' | |
5905 | is operand of switch, not str[0]. | |
5906 | ||
e0bf274f AM |
5907 | 2006-03-20 Alan Modra <amodra@bigpond.net.au> |
5908 | ||
5909 | * config/rs6000/rs6000.c (rs6000_handle_option): Use | |
5910 | TARGET_NO_FP_IN_TOC inside #ifdef TARGET_USES_SYSV4_OPT too. | |
5911 | ||
e800e79b DE |
5912 | 2006-03-19 David Edelsohn <edelsohn@gnu.org> |
5913 | ||
5914 | * genpreds.c (write_tm_preds_h): Add semicolon and newline at | |
5915 | end of insn_extra_address_constraint declaration. | |
5916 | ||
d2894ab5 DE |
5917 | 2006-03-19 David Edelsohn <edelsohn@gnu.org> |
5918 | ||
5919 | * config/rs6000/rs6000.opt (no-fp-in-toc): Use Var not Mask. | |
5920 | (no-sum-in-toc): Same. | |
5921 | * config/rs6000/rs6000.c (rs6000_handle_option): Use new | |
5922 | variables. | |
5923 | * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set | |
5924 | NO_FP_IN_TOC for -fPIC instead of mask. | |
5925 | ||
5926 | * config/rs6000/t-aix43 (T_ADAFLAGS): Delete. | |
5927 | (BOOT_LDFLAGS): Delete. | |
5928 | (LDFLAGS): Delete. | |
5929 | * config/rs6000/t-aix52: Same. | |
5930 | ||
5931 | * config/rs6000/rs6000.md (store_multiple_power): Delete. | |
5932 | (stmsi[345678]_power): New. | |
5933 | ||
30b82356 SE |
5934 | 2006-03-17 Steve Ellcey <sje@cup.hp.com> |
5935 | ||
5936 | * config/ia64/ia64.opt: Add empty line to end of file. | |
5937 | ||
445a6ba4 RG |
5938 | 2006-03-17 Richard Guenther <rguenther@suse.de> |
5939 | ||
5940 | PR middle-end/26721 | |
5941 | * builtins.c (get_pointer_alignment): For component style references | |
5942 | adjust alignment to the component type alignment. Make sure | |
5943 | to adjust alignment for component access of constants. | |
5944 | ||
ea5bd0d8 DE |
5945 | 2006-03-17 David Edelsohn <edelsohn@gnu.org> |
5946 | ||
5947 | * config/rs6000/rs6000.md (strlensi): Emit barrier after | |
5948 | unconditional jump. | |
5949 | ||
3cf94279 PB |
5950 | 2006-03-17 Paul Brook <paul@codesourcery.com> |
5951 | ||
5952 | * doc/install.texi: Docuemnt --with-mode. | |
5953 | * config.gcc: Add --with-mode for arm*-*-*. | |
5954 | * config/arm/arm.h (OPTION_DEFAULT_SPECS): Add "mode". | |
5955 | ||
4241ecb0 R |
5956 | 2006-03-17 J"orn Rennecke <joern.rennecke@st.com> |
5957 | ||
5958 | * sh.c (max_labelno_before_reorg): New variable. | |
5959 | (sh_reorg): Initialize it. | |
5960 | (find_barrier): Check max_labelno_before_reorg before using | |
5961 | label_to_alignment. Take length of explicit alignment insns | |
5962 | into account. When seeing a UNSPECV_CONST_END, return it. | |
5963 | ||
5964 | * sh.c (fixup_mova): Set mode of affected label to QImode. | |
5965 | (untangle_mova): New function. | |
5966 | (find_barrier): Use it. Check mode of label before decrementing | |
5967 | num_mova. | |
5968 | (sh_reorg): Likewise. | |
5969 | Set mode of all insns back to VOIDmode. | |
5970 | ||
5971 | * sh.c (MOVA_LABELREF): New macro. | |
5972 | (mova_p, fixup_mova, sh_reorg): Use it. | |
5973 | (find_barrier, sh_reorg): Don't count num_mova back to 0 unless | |
5974 | ADDR_DIFF_VEC matches mova. | |
5975 | ||
79252435 SB |
5976 | 2006-03-17 Steven Bosscher <stevenb.gcc@gmail.com> |
5977 | ||
5978 | * dwarf2asm.c (dw2_asm_output_offset): Mark 'base' argument | |
5979 | with ATTRIBUTE_UNUSED. | |
5980 | ||
6a037308 AO |
5981 | 2006-03-17 Alexandre Oliva <aoliva@redhat.com> |
5982 | ||
5983 | * dwarf2out.c (dwarf2out_stack_adjust): Always track the stack | |
5984 | pointer, instead of assuming it is possible to derive the | |
5985 | correct args size from a call insn. | |
5986 | ||
d97c1295 JBG |
5987 | 2006-03-16 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
5988 | ||
5989 | * rtl.h (CONST_INT_P): Define. | |
5990 | * config/vax/vax.c (print_operand_address): Use CONST_INT_P() | |
5991 | instead of GET_CODE(x) == CONST_INT. | |
5992 | (vax_rtx_costs): Likewise. | |
5993 | (vax_output_int_move): Likewise. | |
5994 | (vax_output_int_add): Likewise. | |
5995 | (legitimate_constant_address_p): Likewise. | |
5996 | (index_term_p): Likewise. | |
5997 | * config/vax/vax.h (PRINT_OPERAND): Likewise. | |
5998 | * config/vax/vax.md (and<mode>3): Likewise. | |
5999 | (ashrsi3): Likewise. | |
6000 | (extv): Likewise. | |
6001 | (movstricthi): Likewise. | |
6002 | (movstrictqi): Likewise. | |
6003 | (rotrsi3): Likewise. | |
6004 | (five unnamed insns): Likewise. | |
6005 | ||
192d0f89 GK |
6006 | 2006-03-16 Geoffrey Keating <geoffk@apple.com> |
6007 | ||
6008 | * doc/tm.texi (SDB and DWARF): Add extra parameter to | |
6009 | ASM_OUTPUT_DWARF_OFFSET. Use @var to indicate metavariables. | |
6010 | * dwarf2asm.h (dw2_asm_output_offset): Add section parameter. | |
6011 | * dwarf2asm.c (dw2_asm_output_offset): Add base section parameter. | |
6012 | Pass to ASM_OUTPUT_DWARF_OFFSET. | |
6013 | * dwarf2out.c (debug_frame_section): New. | |
6014 | (output_call_frame_info): Use debug_frame_section. Pass it to | |
6015 | dw2_asm_output_offset. | |
6016 | (output_die): Pass appropriate section to dw2_asm_output_offset. | |
6017 | (output_compilation_unit_header): Likewise. | |
6018 | (output_pubnames): Likewise. | |
6019 | (output_aranges): Likewise. | |
6020 | (enum dw_val_class): Break dw_val_class_lbl_offset into | |
6021 | dw_val_class_lineptr and dw_val_class_macptr. | |
6022 | (add_AT_lbl_offset): Delete. | |
6023 | (add_AT_lineptr): New. | |
6024 | (add_AT_macptr): New. | |
6025 | (AT_lbl): Expect a lineptr or macptr. | |
6026 | (print_die): Handle dw_val_class_lineptr and dw_val_class_macptr. | |
6027 | (attr_checksum): Likewise. | |
6028 | (same_dw_val_p): Likewise. | |
6029 | (size_of_die): Likewise. | |
6030 | (value_format): Likewise. | |
6031 | (output_die): Likewise. | |
6032 | (dwarf2out_finish): Call add_AT_lineptr and add_AT_macptr instead of | |
6033 | add_AT_lbl_offset. | |
6034 | * config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Add extra parameter. | |
6035 | * config/i386/i386.c (x86_file_start): Call darwin_file_start. | |
6036 | * config/darwin-protos.h (darwin_file_start): New. | |
6037 | (darwin_asm_output_dwarf_offset): New. | |
6038 | * config/ia64/ia64.h (ASM_OUTPUT_DWARF_OFFSET): Add extra parameter. | |
6039 | * config/rs6000/rs6000.c (rs6000_darwin_file_start): Call | |
6040 | darwin_file_start. | |
6041 | * config/darwin.c (darwin_emit_unwind_label): Don't output label | |
6042 | if not EH section; simplify. | |
6043 | (darwin_file_start): New. | |
6044 | (darwin_asm_output_dwarf_offset): New. | |
6045 | * config/darwin.h (DEBUG_FRAME_SECTION): In __DWARF segment, | |
6046 | mark as 'debug'. | |
6047 | (DEBUG_INFO_SECTION): Likewise. | |
6048 | (DEBUG_ABBREV_SECTION): Likewise. | |
6049 | (DEBUG_ARANGES_SECTION): Likewise. | |
6050 | (DEBUG_MACINFO_SECTION): Likewise. | |
6051 | (DEBUG_LINE_SECTION): Likewise. | |
6052 | (DEBUG_LOC_SECTION): Likewise. | |
6053 | (DEBUG_PUBNAMES_SECTION): Likewise. | |
6054 | (DEBUG_STR_SECTION): Likewise. | |
6055 | (DEBUG_RANGES_SECTION): Likewise. | |
6056 | (FRAME_BEGIN_LABEL): Must start with 'L' in debug section. | |
6057 | (ASM_OUTPUT_DWARF_OFFSET): New. | |
6058 | ||
620b87b3 JM |
6059 | 2006-03-16 Joseph S. Myers <joseph@codesourcery.com> |
6060 | ||
6061 | * config.gcc (tm_defines): Always add to previous value rather | |
6062 | than replacing it. | |
6063 | ||
ea462dd0 RS |
6064 | 2006-03-16 Richard Sandiford <richard@codesourcery.com> |
6065 | ||
6066 | * config/mips/predicates.md (splittable_const_int_operand): New, | |
6067 | split from move_operand. | |
6068 | (splittable_symbolic_operand): New. | |
6069 | (move_operand): Add commentary. Use splittable_const_int_operand. | |
6070 | Inline mips_atomic_symbolic_constant_p. | |
6071 | * config/mips/mips.md: Add combine splitters for handling moves | |
6072 | of splittable_const_int_operands and splittable_symbolic_operands. | |
6073 | * config/mips/mips-protos.h (mips_atomic_symbolic_constant_p): Delete. | |
6074 | (mips_split_symbol): Declare. | |
6075 | (mips_move_integer): Declare. | |
6076 | * config/mips/mips.c (mips_split_p): Make global. | |
6077 | (TARGET_MIN_ANCHOR_OFFSET): Override default. | |
6078 | (TARGET_MAX_ANCHOR_OFFSET): Likewise. | |
6079 | (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Likewise. | |
6080 | (TARGET_USE_ANCHORS_FOR_SYMBOL_P): Likewise. | |
6081 | (mips_offset_within_object_p): Handle block symbols. | |
6082 | (mips_atomic_symbolic_constant_p): Delete. | |
6083 | (mips_cannot_force_const_mem): Return false for constants that | |
6084 | mips_legitimize_move can handle. | |
6085 | (mips_use_blocks_for_constant_p): New function. | |
6086 | (mips_split_symbol): Make global. | |
6087 | (mips_move_integer): Likewise. Add a temporary register argument. | |
6088 | (mips_legitimize_const_move): Use splittable_const_int_operand and | |
6089 | splittable_symbolic_operand. | |
6090 | (mips_use_anchors_for_symbol_p): New function. | |
6091 | * config/mips/mips.h: Protect externs with !USED_FOR_TARGET. | |
4b1c1f6f | 6092 | (mips_split_p): Declare. |
ea462dd0 | 6093 | |
5d2a73d5 RS |
6094 | 2006-03-16 Richard Sandiford <richard@codesourcery.com> |
6095 | ||
6096 | * config.gcc (mips64*-*-linux*): Keep existing tm_defines. | |
6097 | (mips*-*-linux*): Likewise. | |
6098 | ||
da54e73b RS |
6099 | 2006-03-16 Roger Sayle <roger@eyesopen.com> |
6100 | Daniel Speyer <dspeyer@wam.umd.edu> | |
6101 | ||
6102 | PR middle-end/18259 | |
6103 | * tree-dump.c (dump_real): New function. | |
6104 | (dequeue_and_dump) <REAL_CST>: Use it to dump FP constants. | |
6105 | * Makefile.in (REAL_H): New macro for dependencies on real.h. | |
6106 | (tree-dump.o): Add $(REAL_H) to the dependencies. | |
6107 | ||
a47564c8 RS |
6108 | 2006-03-16 Roger Sayle <roger@eyesopen.com> |
6109 | ||
6110 | PR middle-end/21781 | |
6111 | * real.c (real_from_string): If the mantissa is zero, don't bother | |
6112 | parsing the exponent as the result should always be zero. | |
6113 | ||
349f4ea1 AK |
6114 | 2006-03-16 Andreas Krebbel <krebbel1@de.ibm.com> |
6115 | ||
6116 | * simplify-rtx.c (simplify_plus_minus): Simplify within CONST terms. | |
6117 | ||
048d0d36 MK |
6118 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6119 | ||
dec6909b RH |
6120 | * config/ia64/ia64.c (stops_p): Added explicit initialization. |
6121 | (ia64_first_cycle_multipass_dfa_lookahead_guard_spec, | |
6122 | ia64_h_i_d_extended, ia64_set_sched_flags, ia64_speculate_insn, | |
6123 | ia64_needs_block_p, ia64_gen_check, ia64_sched_init_global, | |
048d0d36 MK |
6124 | ia64_sched_finish_global): New static functions to implement |
6125 | hooks from gcc_target.sched. | |
6126 | (spec_check_no, max_uid, pending_data_specs): New static variables. | |
dec6909b | 6127 | (ia64_mode_to_int, ia64_gen_spec_insn, ia64_spec_check_p, |
048d0d36 | 6128 | ia64_spec_check_src_p): New static functions. |
dec6909b RH |
6129 | (ia64_adjust_cost): Renamed to ia64_adjust_cost_2. |
6130 | (TARGET_SCHED_ADJUST_COST): Removed. | |
6131 | (TARGET_SCHED_ADJUST_COST_2, TARGET_SCHED_INIT_GLOBAL, | |
048d0d36 MK |
6132 | TARGET_SCHED_FINISH_GLOBAL, TARGET_SCHED_H_I_D_EXTENDED, |
6133 | TARGET_SCHED_SPECULATE_INSN, TARGET_SCHED_NEEDS_BLOCK_P, | |
6134 | TARGET_SCHED_GEN_CHECK, | |
6135 | TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC, | |
dec6909b RH |
6136 | TARGET_SCHED_SET_SCHED_FLAGS): New macros. |
6137 | (update_set_flags, group_barrier_needed, set_src_needs_barrier): | |
048d0d36 | 6138 | Fixed to handle speculation checks. |
dec6909b RH |
6139 | (rtx_needs_barrier): Fixed to handle speculative loads and |
6140 | their checks. | |
6141 | (ia64_variable_issue): Added code to count speculative loads and their | |
6142 | checks. | |
6143 | (ia64_first_cycle_multipass_dfa_lookahead_guard): Fixed to handle | |
6144 | speculative loads. | |
6145 | (enum SPEC_MODES, enum SPEC_GEN_LD_MAP, SPEC_GEN_CHECK_OFFSET): | |
6146 | New enumerations. | |
6147 | (SPEC_GEN_EXTEND_OFFSET, SPEC_N, SPEC_GEN_CHECK_MUTATION_OFFSET): | |
6148 | New constants. | |
6149 | (ia64_ld_address_bypass_p): Fixed to handle speculative loads. | |
048d0d36 | 6150 | (ia64_reorg): Reset stops_p to NULL after it is freed. |
dec6909b | 6151 | * config/ia64/ia64.md (UNSPEC_LDA, UNSPEC_LDS, UNSPEC_LDSA, |
048d0d36 | 6152 | UNSPEC_LDCCLR, UNSPEC_CHKACLR, UNSPEC_CHKS): New constants. |
dec6909b RH |
6153 | (itanium_class): chk_s renamed to chk_s_i. New constants: chk_s_f, |
6154 | chk_a. | |
6155 | (data_speculative, control_speculative, check_load): New attributes. | |
6156 | (mov<mode>_advanced, mov<mode>_speculative, | |
6157 | mov<mode>_speculative_advanced, zero_extend<mode>di2_advanced, | |
6158 | zero_extend<mode>di2_speculative, | |
6159 | zero_extend<mode>di2_speculative_advanced): New patterns for | |
6160 | data and control speculative loads. | |
6161 | (mov<mode>_clr, zero_extend<mode>di2_clr): New patterns for | |
6162 | check loads. | |
6163 | (advanced_load_check_clr_<mode>, speculation_check_<mode>): | |
6164 | New pattern for data and control speculation checks. | |
048d0d36 MK |
6165 | (MODE, MODE_FOR_EXTEND, output_a, output_s, output_sa, output_c_clr, |
6166 | ld_reg_constr, ldc_reg_constr, chk_reg_constr, mem_constr, | |
6167 | reg_pred_prefix, ld_class, chka_class, chks_class, attr_yes): | |
6168 | Auxiliary definitions for the patterns. | |
dec6909b RH |
6169 | * config/ia64/itanium1.md (1_fldc, 1_fldpc, 1_ldc, 1_chk_s_f, 1_chk_a, |
6170 | 1b_fldc, 1b_fldpc, 1b_ldc, 1b_chk_s_f, 1b_chk_a): New resource | |
6171 | constraints. | |
048d0d36 | 6172 | (1_fld, 1_fldp, 1_ld, 1b_fld, 1b_fldp, 1b_ld): Add a condition |
dec6909b RH |
6173 | for speculation. |
6174 | (1_chk_s, 1b_chk_s): Renamed to 1_chk_s_i, 1b_chk_s_i. | |
6175 | * config/ia64/itanium2.md (2_flda, 2_fldc, 2_fldpc, 2_ldc, 2_chk_s_f, | |
048d0d36 MK |
6176 | 2_chk_a, 2b_flda, 2b_fldc, 2b_fldpc, 2b_ldc, 2b_chk_s_f, 2b_chk_a): |
6177 | New resource constraints. | |
6178 | (2_fld, 2_fldp, 2_ld, 2b_fld, 2b_fldp, 2b_ld): Add a condition | |
dec6909b RH |
6179 | for speculation. |
6180 | (2_chk_s, 2b_chk_s): Renamed to 2_chk_s_i, 2b_chk_s_i. | |
6181 | * config/ia64/ia64.opt (msched-br-data-spec, msched-ar-data-spec, | |
6182 | msched-control-spec, msched-br-in-data-spec, msched-ar-in-data-spec, | |
6183 | msched-in-control-spec, msched-ldc, msched-control-ldc, | |
6184 | msched-spec-verbose, msched-prefer-non-data-spec-insns, | |
6185 | msched-prefer-non-control-spec-insns, | |
048d0d36 MK |
6186 | msched-count-spec-in-critical-path): New flags to tune speculative |
6187 | scheduling. | |
6188 | * doc/invoke.texi (msched-br-data-spec, msched-ar-data-spec, | |
dec6909b RH |
6189 | msched-control-spec, msched-br-in-data-spec, msched-ar-in-data-spec, |
6190 | msched-in-control-spec, msched-ldc, msched-control-ldc, | |
6191 | msched-spec-verbose, msched-prefer-non-data-spec-insns, | |
6192 | msched-prefer-non-control-spec-insns, | |
048d0d36 MK |
6193 | msched-count-spec-in-critical-path): Document new flags. |
6194 | ||
496d7bb0 MK |
6195 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6196 | ||
dec6909b RH |
6197 | * target.h (struct spec_info_def): New opaque declaration. |
6198 | (struct gcc_target.sched): New fields: adjust_cost_2, h_i_d_extended, | |
6199 | speculate_insn, needs_block_p, gen_check, | |
6200 | first_cycle_multipass_dfa_lookahead_guard_spec, set_sched_flags. | |
6201 | * target-def.h (TARGET_SCHED_ADJUST_COST_2, | |
6202 | TARGET_SCHED_H_I_D_EXTENDED, TARGET_SCHED_SPECULATE_INSN, | |
6203 | TARGET_SCHED_NEEDS_BLOCK_P, TARGET_SCHED_GEN_CHECK, | |
6204 | TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC, | |
6205 | TARGET_SCHED_SET_SCHED_FLAGS): New macros to initialize fields in | |
6206 | gcc_target.sched. | |
6207 | (TARGET_SCHED): Use new macros. | |
6208 | * rtl.h (copy_DEPS_LIST_list): New prototype. | |
6209 | * sched-int.h (struct sched_info): Change signature of new_ready field, | |
496d7bb0 | 6210 | adjust all initializations. New fields: add_remove_insn, |
dec6909b | 6211 | begin_schedule_ready, add_block, advance_target_bb, fix_recovery_cfg, |
496d7bb0 | 6212 | region_head_or_leaf_p. |
dec6909b RH |
6213 | (struct spec_info_def): New structure declaration. |
6214 | (spec_info_t): New typedef. | |
6215 | (struct haifa_insn_data): New fields: todo_spec, done_spec, check_spec, | |
6216 | recovery_block, orig_pat. | |
6217 | (glat_start, glat_end): New variables declaraions. | |
6218 | (TODO_SPEC, DONE_SPEC, CHECK_SPEC, RECOVERY_BLOCK, ORIG_PAT): | |
496d7bb0 | 6219 | New access macros. |
dec6909b RH |
6220 | (enum SCHED_FLAGS): New constants: SCHED_RGN, SCHED_EBB, |
6221 | DETACH_LIFE_INFO, USE_GLAT. | |
6222 | (enum SPEC_SCHED_FLAGS): New enumeration. | |
6223 | (NOTE_NOTE_BB_P): New macro. | |
6224 | (extend_dependency_caches, xrecalloc, unlink_bb_notes, add_block, | |
6225 | attach_life_info, debug_spec_status, check_reg_live): New functions. | |
6226 | (get_block_head_tail): Change signature to get_ebb_head_tail, adjust | |
6227 | all uses in ddg.c, modulo-sched.c, haifa-sched.c, sched-rgn.c, | |
6228 | sched-ebb.c | |
496d7bb0 | 6229 | (get_dep_weak, ds_merge): Prototype functions from sched-deps.c . |
dec6909b RH |
6230 | * ddg.c (get_block_head_tail): Adjust all uses. |
6231 | * modulo-sched.c (get_block_head_tail): Adjust all uses. | |
496d7bb0 MK |
6232 | (sms_sched_info): Initialize new fields. |
6233 | (contributes_to_priority): Removed. | |
dec6909b | 6234 | * haifa-sched.c (params.h): New include. |
496d7bb0 | 6235 | (get_block_head_tail): Adjust all uses. |
dec6909b RH |
6236 | (ISSUE_POINTS): New macro. |
6237 | (glat_start, glat_end): New global variables. | |
6238 | (spec_info_var, spec_info, added_recovery_block_p, nr_begin_data, | |
496d7bb0 MK |
6239 | nr_be_in_data, nr_begin_control, nr_be_in_control, bb_header, |
6240 | old_last_basic_block, before_recovery, current_sched_info_var, | |
6241 | rgn_n_insns, luid): New static variables. | |
dec6909b RH |
6242 | (insn_cost1): New function. Move logic from insn_cost to here. |
6243 | (find_insn_reg_weight1): New function. Move logic from | |
6244 | find_insn_reg_weight to here. | |
6245 | (reemit_notes, move_insn, max_issue): Change signature. | |
6246 | (move_insn1): Removed. | |
6247 | (extend_h_i_d, extend_ready, extend_global, extend_all, init_h_i_d, | |
6248 | extend_bb): New static functions to support extension of scheduler's | |
6249 | data structures. | |
6250 | (generate_recovery_code, process_insn_depend_be_in_spec, | |
6251 | begin_speculative_block, add_to_speculative_block, | |
6252 | init_before_recovery, create_recovery_block, create_check_block_twin, | |
6253 | fix_recovery_deps): New static functions to support | |
6254 | generation of recovery code. | |
6255 | (fix_jump_move, find_fallthru_edge, dump_new_block_header, | |
6256 | restore_bb_notes, move_block_after_check, move_succs): New static | |
6257 | functions to support ebb scheduling. | |
6258 | (init_glat, init_glat1, attach_life_info1, free_glat): New static | |
6259 | functions to support handling of register live information. | |
6260 | (associate_line_notes_with_blocks, change_pattern, speculate_insn, | |
496d7bb0 MK |
6261 | sched_remove_insn, clear_priorities, calc_priorities, bb_note, |
6262 | add_jump_dependencies): New static functions. | |
dec6909b | 6263 | (check_cfg, has_edge_p, check_sched_flags): New static functions for |
496d7bb0 MK |
6264 | consistancy checking. |
6265 | (debug_spec_status): New function to call from debugger. | |
6266 | (priority): Added code to handle speculation checks. | |
6267 | (rank_for_schedule): Added code to distinguish speculative instructions. | |
6268 | (schedule_insn): Added code to handle speculation checks. | |
6269 | (unlink_other_notes, rm_line_notes, restore_line_notes, rm_other_notes): | |
6270 | Fixed to handle ebbs. | |
dec6909b | 6271 | (move_insn): Added code to handle ebb scheduling. |
496d7bb0 | 6272 | (max_issue): Added code to use ISSUE_POINTS of instructions. |
dec6909b RH |
6273 | (choose_ready): Added code to choose between speculative and |
6274 | non-speculative instructions. | |
6275 | (schedule_block): Added code to handle ebb scheduling and scheduling of | |
6276 | speculative instructions. | |
6277 | (sched_init): Initialize new variables. | |
6278 | (sched_finish): Free new variables. Print statistics. | |
6279 | (try_ready): Added code to handle speculative instructions. | |
6280 | * lists.c (copy_DEPS_LIST_list): New function. | |
6281 | * sched-deps.c (extend_dependency_caches): New function. Move logic | |
6282 | from create_dependency_caches to here. | |
496d7bb0 | 6283 | (get_dep_weak, ds_merge): Make global. |
dec6909b RH |
6284 | * genattr.c (main): Code to output prototype for |
6285 | dfa_clear_single_insn_cache. | |
6286 | * genautomata.c (DFA_CLEAR_SINGLE_INSN_CACHE_FUNC_NAME): New macros. | |
6287 | (output_dfa_clean_insn_cache_func): Code to output | |
6288 | dfa_clear_single_insn_cache function. | |
6289 | * sched-ebb.c (target_n_insns): Remove. Adjust all users to use | |
496d7bb0 | 6290 | n_insns. |
dec6909b RH |
6291 | (can_schedule_ready_p, fix_basic_block_boundaries, add_missing_bbs): |
6292 | Removed. | |
6293 | (n_insns, dont_calc_deps, ebb_head, ebb_tail, last_bb): | |
6294 | New static variables. | |
6295 | (begin_schedule_ready, add_remove_insn, add_block1, advance_target_bb, | |
496d7bb0 MK |
6296 | fix_recovery_cfg, ebb_head_or_leaf_p): Implement hooks from |
6297 | struct sched_info. | |
dec6909b | 6298 | (ebb_sched_info): Initialize new fields. |
496d7bb0 MK |
6299 | (get_block_head_tail): Adjust all uses. |
6300 | (compute_jump_reg_dependencies): Fixed to use glat_start. | |
6301 | (schedule_ebb): Code to remove unreachable last block. | |
dec6909b RH |
6302 | (schedule_ebbs): Added code to update register live information. |
6303 | * sched-rgn.c (region_sched_info): Initialize new fields. | |
496d7bb0 MK |
6304 | (get_block_head_tail): Adjust all uses. |
6305 | (last_was_jump): Removed. Adjust users. | |
dec6909b | 6306 | (begin_schedule_ready, add_remove_insn, insn_points, extend_regions, |
496d7bb0 MK |
6307 | add_block1, fix_recovery_cfg, advance_target_bb, region_head_or_leaf_p): |
6308 | Implement new hooks. | |
dec6909b RH |
6309 | (check_dead_notes1): New static function. |
6310 | (struct region): New fields: dont_calc_deps, has_real_ebb. | |
6311 | (RGN_DONT_CALC_DEPS, RGN_HAS_REAL_EBB): New access macros. | |
6312 | (BB_TO_BLOCK): Fixed to handle EBBs. | |
6313 | (EBB_FIRST_BB, EBB_LAST_BB): New macros. | |
6314 | (ebb_head): New static variable. | |
6315 | (debug_regions, contributes_to_priority): Fixed to handle EBBs. | |
6316 | (find_single_block_regions, find_rgns, find_more_rgns): Initialize | |
496d7bb0 MK |
6317 | new fields. |
6318 | (compute_dom_prob_ps): New assertion. | |
dec6909b RH |
6319 | (check_live_1, update_live_1): Fixed to work with glat_start instead of |
6320 | global_live_at_start. | |
496d7bb0 MK |
6321 | (init_ready_list): New assertions. |
6322 | (can_schedule_ready_p): Split update code to begin_schedule_ready. | |
6323 | (new_ready): Add support for BEGIN_CONTROL speculation. | |
dec6909b RH |
6324 | (schedule_insns): Fixed code that updates register live information |
6325 | to handle EBBs. | |
6326 | (schedule_region): Fixed to handle EBBs. | |
496d7bb0 | 6327 | (init_regions): Use extend_regions and check_dead_notes1. |
dec6909b RH |
6328 | * params.def (PARAM_MAX_SCHED_INSN_CONFLICT_DELAY, |
6329 | PARAM_SCHED_SPEC_PROB_CUTOFF): New parameters. | |
496d7bb0 MK |
6330 | * doc/tm.texi (TARGET_SCHED_ADJUST_COST_2, TARGET_SCHED_H_I_D_EXTENDED, |
6331 | TARGET_SCHED_SPECULATE_INSN, TARGET_SCHED_NEEDS_BLOCK_P, | |
6332 | TARGET_SCHED_GEN_CHECK, | |
6333 | TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC, | |
6334 | TARGET_SCHED_SET_SCHED_FLAGS): Document. | |
dec6909b | 6335 | * doc/invoke.texi (max-sched-insn-conflict-delay, |
496d7bb0 MK |
6336 | sched-spec-prob-cutoff): Document. |
6337 | ||
63f54b1a MK |
6338 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6339 | ||
dec6909b | 6340 | * sched-int.h (struct haifa_insn_data): New fields: resolved_deps, |
63f54b1a MK |
6341 | inter_tick, queue_index. |
6342 | (struct sched_info): Change signature of init_ready_list field. | |
6343 | Adjust all initializations. | |
6344 | (RESOLVED_DEPS): New access macro. | |
6345 | (ready_add): Remove prototype. | |
6346 | (try_ready): Add prototype. | |
6347 | * sched-rgn.c (init_ready_list): Use try_ready. | |
6348 | (schedule_region): Initialize | |
6349 | current_sched_info->{sched_max_insns_priority, queue_must_finish_empty}. | |
6350 | * sched-ebb.c (new_ready): Remove. Adjust ebb_sched_info. | |
6351 | (init_ready_list): Use try_ready. | |
6352 | (schedule_ebb): Initialize current_sched_info->sched_max_insns_priority. | |
6353 | * lists.c (remove_list_elem): Remove `static'. | |
6354 | (remove_free_INSN_LIST_elem): New function. | |
6355 | * rtl.h (remove_list_elem, remove_free_INSN_LIST_elem): Add prototypes. | |
6356 | * haifa-sched.c (INTER_TICK, QUEUE_INDEX): New macros. | |
6357 | (INVALID_TICK, MIN_TICK, QUEUE_SCHEDULED, QUEUE_NOWHERE, QUEUE_READY): | |
6358 | New constants. | |
6359 | (readyp): New variable. | |
6360 | (queue_remove, ready_remove_insn, fix_inter_tick, fix_tick_ready, | |
6361 | change_queue_index, resolve_dep): New static functions. | |
6362 | (try_ready): New function. Adjust callers in sched-rgn.c and | |
6363 | sched-ebb.c to use it instead of ready_add. | |
6364 | (clock_var): Move at the begining of file. | |
6365 | (rank_for_schedule): Fix typo. | |
6366 | (queue_insn): Add assertion. Handle QUEUE_INDEX. | |
6367 | (ready_lastpos): Enforce assertion. | |
6368 | (ready_add): Make it static. Handle QUEUE_INDEX. Add new argument, | |
6369 | update all callers. | |
6370 | (ready_remove_first, ready_remove): Handle QUEUE_INDEX. | |
6371 | (schedule_insn): Rewrite to use try_ready and resolve_dep. | |
6372 | (queue_to_ready): Use free_INSN_LIST_list. | |
6373 | (early_queue_to_ready): Fix typo. | |
6374 | (schedule_block): Init readyp. Move init_ready_list call after the | |
6375 | initialization of clock_var. Fix error in rejecting insn by | |
6376 | targetm.sched.dfa_new_cycle. Add call to fix_inter_tick. Remove code | |
6377 | that previously corrected INSN_TICKs. Add code for handling | |
6378 | QUEUE_INDEX. | |
6379 | (set_priorities): Fix typo. | |
6380 | (sched_init): Initialize INSN_TICK, INTER_TICK and QUEUE_INDEX. | |
6381 | Clarify comment and code that keeps current_sched_info->next_tail | |
6382 | non-null. | |
6383 | ||
d08eefb9 MK |
6384 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
6385 | ||
6386 | * sched-rgn.c (extend_rgns): New static function. | |
6387 | (find_rgns): Use it. | |
6388 | (gather_region_statistics, print_region_statistics): New static | |
6389 | functions. | |
6390 | * params.def (PARAM_MAX_SCHED_EXTEND_REGIONS_ITERS): New parameter. | |
dec6909b | 6391 | * doc/invoke.texi (max-sched-extend-regions-iters): Document. |
d08eefb9 | 6392 | |
ddbd5439 | 6393 | 2006-03-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru> |
dec6909b | 6394 | Andrey Belevantsev <abel@ispras.ru> |
ddbd5439 MK |
6395 | |
6396 | * ddg.c (build_intra_loop_deps): Adjust add_forward_dependence call. | |
dec6909b | 6397 | * lists.c (unused_deps_list): New variable. |
4b1c1f6f | 6398 | (free_list): Add assertions to verify the proper distinguishing |
dec6909b RH |
6399 | between INSN_LISTs and DEPS_LISTs. |
6400 | (find_list_elem, remove_list_elem, remove_list_node): New static | |
ddbd5439 | 6401 | functions. |
dec6909b RH |
6402 | (alloc_DEPS_LIST, free_DEPS_LIST, free_DEPS_LIST_node, |
6403 | remove_free_INSN_LIST_elem, remove_free_DEPS_LIST_elem, | |
6404 | remove_free_INSN_LIST_node, remove_free_DEPS_LIST_node): New functions. | |
6405 | (alloc_INSN_LIST): Assert that the list we're working on is indeed | |
ddbd5439 | 6406 | an INSN_LIST. |
dec6909b | 6407 | (free_INSN_LIST_node): Likewise. |
ddbd5439 MK |
6408 | * modulo-sched.c (current_sched_info): Initialize flags field. |
6409 | * reg-notes.def: Exchange DEP_ANTI and DEP_OUTPUT. | |
6410 | * rtl.def (DEPS_LIST): Define. | |
dec6909b RH |
6411 | * rtl.h: Declare new functions from lists.c. |
6412 | * sched-deps.c (spec_dependency_cache): New static variable. | |
6413 | (maybe_add_or_update_back_dep_1, add_back_dep): New static functions. | |
6414 | (add_dependence): Change return type to void. Move the logic to ... | |
6415 | (add_or_update_back_dep_1): ... here. Handle speculative dependencies. | |
6416 | (delete_all_dependences): Add comment about forward_dependency_cache. | |
ddbd5439 | 6417 | Handle spec_dependency_cache. Handle DEPS_LISTs. |
dec6909b RH |
6418 | (fixup_sched_groups): Clarify the change of priority of output |
6419 | and anti dependencies. | |
6420 | (sched_analyze_2): Adjust add_dependence calls to create data | |
ddbd5439 | 6421 | speculative dependence. |
dec6909b | 6422 | (add_forward_dependence): Renamed to add_forw_dep, change prototype. |
ddbd5439 | 6423 | Adjust all callers. Handle DEPS_LISTS. |
dec6909b | 6424 | (compute_forward_dependences): Use add_forw_dep. Sort LOG_LINKs in |
ddbd5439 | 6425 | presence of speculation. |
dec6909b | 6426 | (init_dependency_caches, free_dependency_caches): |
ddbd5439 | 6427 | Handle spec_dependency_cache. |
dec6909b | 6428 | (adjust_add_sorted_back_dep, adjust_back_add_forw_dep, delete_forw_dep, |
ddbd5439 MK |
6429 | estimate_dep_weak, get_dep_weak, ds_merge, check_dep_status): |
6430 | New static functions. | |
dec6909b | 6431 | (add_or_update_back_dep, add_or_update_back_forw_dep, |
ddbd5439 MK |
6432 | add_back_forw_dep, delete_back_forw_dep): New functions. |
6433 | * sched-int.h (ds_t, dw_t): New typedefs. | |
6434 | (struct sched_info): Add new field flags. | |
6435 | (struct haifa_insn_data): Add new bitfield has_internal_dep. | |
6436 | Prototype new sched-deps.c functions. | |
dec6909b | 6437 | (HAS_INTERNAL_DEP, DEP_STATUS): New access macros. |
ddbd5439 MK |
6438 | (BITS_PER_DEP_STATUS, BITS_PER_DEP_WEAK, DEP_WEAK_MASK, MAX_DEP_WEAK, |
6439 | MIN_DEP_WEAK, NO_DEP_WEAK, UNCERTAIN_DEP_WEAK, BEGIN_DATA, BE_IN_DATA, | |
6440 | BEGIN_CONTROL, BE_IN_CONTROL, BEGIN_SPEC, DATA_SPEC, CONTROL_SPEC, | |
6441 | SPECULATIVE, BE_IN_SPEC, FIRST_SPEC_TYPE, LAST_SPEC_TYPE, | |
6442 | SPEC_TYPE_SHIFT, DEP_TRUE, DEP_OUTPUT, DEP_ANTI, DEP_TYPES, HARD_DEP): | |
6443 | New constants. | |
dec6909b | 6444 | (enum SPEC_TYPES_OFFSETS, enum DEPS_ADJUST_RESULT, enum SCHED_FLAGS): |
ddbd5439 MK |
6445 | New enums. |
6446 | * sched-rgn.c (current_sched_info): Initialize flags field. | |
6447 | (schedule_insns): Initialize current_sched_info before the sched_init | |
6448 | call. | |
6449 | * sched-ebb.c (current_sched_info): Initialize flags field. | |
6450 | (add_deps_for_risky_insns): Use control_flow_insn_p instead of JUMP_P. | |
6451 | Call add_or_update_back_dep instead of add_dependence. | |
6452 | Create control speculative dependencies. | |
6453 | (schedule_insns): Initialize current_sched_info before the sched_init | |
6454 | call. | |
6455 | ||
3062335c KK |
6456 | 2006-03-16 Kaz Kojima <kkojima@gcc.gnu.org> |
6457 | ||
6458 | * config/sh/linux-unwind.h (shmedia_fallback_frame_state): Set | |
6459 | fs->signal_frame. | |
6460 | (sh_fallback_frame_state): Likewise. | |
6461 | ||
747b9f55 GK |
6462 | 2006-03-15 Geoffrey Keating <geoffk@apple.com> |
6463 | ||
6464 | * config.gcc (*-*-darwin*): Don't build crt2.o for all Darwin ports. | |
6465 | Do switch on default_use_cxa_atexit. | |
6466 | (powerpc*-*-darwin*): Build crt2.o on powerpc. | |
6467 | * config/darwin-crt3.o: New. | |
6468 | * config/darwin.h (LINK_SPEC): If -shared-libgcc, make linker default | |
6469 | to 10.3. Pass '-multiply_defined suppress' if crt3.o is in use. | |
6470 | (STARTFILE_SPEC): Add crt3.o when -shared-libgcc and appropriate | |
6471 | OS version. | |
6472 | * config/rs6000/t-darwin: Move crt2.o building to here. | |
6473 | * config/rs6000/darwin.h (C_COMMON_OVERRIDE_OPTIONS): Update | |
6474 | Mac OS version for using __cxa_get_exception_ptr. Don't test versions | |
6475 | of __cxa_atexit. | |
6476 | ||
79166a87 JBG |
6477 | 2006-03-15 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
6478 | ||
6479 | * config/vax/vax.c (nonindexed_address_p): Change logical negation | |
6480 | from '! xxx' to '!xxx' for coding-style conformance. | |
6481 | * config/vax/vax.h (PCC_BITFIELD_TYPE_MATTERS): Likewise. | |
6482 | (EXTRA_CONSTRAINT): Likewise. | |
6483 | * config/vax/vax.md (four unnamed insns): Likewise. | |
4b1c1f6f | 6484 | |
34a9f549 PB |
6485 | 2006-03-15 Paul Brook <paul@codesourcery.com> |
6486 | ||
6487 | * config/arm/arm.c (minipool_pad): New. | |
5a281edb | 6488 | (add_minipool_forward_ref): Include pool alignment padding in address |
34a9f549 PB |
6489 | calculation. |
6490 | (push_minipool_fix): Set minipool_pad. | |
6491 | (minipool_pad): Ditto. | |
6492 | ||
ff9d4590 JBG |
6493 | 2006-03-15 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
6494 | ||
6495 | * config/vax/vax.c (split_quadword_operands): Use MEM_P() | |
6496 | instead of GET_CODE() == MEM and REG_P() instead of | |
6497 | GET_CODE() == REG. | |
6498 | (print_operand_address): Likewise. | |
6499 | (vax_address_cost): Likewise. | |
6500 | (vax_rtx_costs): Likewise. | |
6501 | (vax_notice_update_cc): Likewise. | |
6502 | (vax_output_int_add): Likewise. | |
6503 | (INDEX_REGISTER_P): Likewise. | |
6504 | (BASE_REGISTER_P): Likewise. | |
6505 | (nonindexed_address_p): Likewise. | |
6506 | (vax_mode_dependent_address_p): Likewise. | |
6507 | * config/vax/vax.h (EXTRA_CONSTRAINT): Likewise. | |
6508 | (PRINT_OPERAND): Likewise. | |
6509 | * config/vax/vax.md (ashlsi3): Likewise. | |
6510 | (ashlsi3): Likewise. | |
6511 | (some more unnamed insns): Likewise. | |
6512 | ||
db490c39 KH |
6513 | 2006-03-15 Kazu Hirata <kazu@codesourcery.com> |
6514 | ||
6515 | * tree-ssa-dce.c (EXECUTE_IF_CONTROL_DEPENDENT): Make it an | |
6516 | iterator-style macro. | |
6517 | (mark_control_dependent_edges_necessary): Update the use of | |
6518 | EXECUTE_IF_CONTROL_DEPENDENT. | |
6519 | ||
f705a9a0 R |
6520 | 2006-03-15 J"orn Rennecke <joern.rennecke@st.com> |
6521 | ||
6522 | * config/sh/predicates.md (cache_address_operand): Special. | |
6523 | (ua_address_operand): Likewise. | |
6524 | ||
8b96512f ZD |
6525 | 2006-03-15 Zdenek Dvorak <dvorakz@suse.cz> |
6526 | ||
6527 | * haifa-sched.c (unlink_other_notes, reemit_notes): Do not handle | |
6528 | loop notes. | |
6529 | * sched-deps.c (sched_analyze_insn, sched_analyze): Ditto. | |
6530 | ||
c0fa4721 AS |
6531 | 2006-03-15 Andreas Schwab <schwab@suse.de> |
6532 | ||
6533 | * gensupport.c (identify_predicable_attribute): Don't free p_false | |
6534 | when it is still in use. | |
6535 | ||
cc0f8895 EB |
6536 | 2006-03-15 Eric Botcazou <ebotcazou@libertysurf.fr> |
6537 | ||
6538 | * config.gcc (default with_cpu setting) <sparc*-*-*>: Do not modify | |
6539 | the default setting here. | |
6540 | ||
1cba0d4e SB |
6541 | 2006-03-14 Steven Bosscher <stevenb.gcc@gmail.com> |
6542 | ||
6543 | * tree-pass.h (pass_cfg): Remove. | |
6544 | * alias.c (rest_of_handle_cfg, pass_cfg): Remove. | |
6545 | * passes.c (pass_cfg): Don't run it. | |
6546 | ||
e4881f23 KH |
6547 | 2006-03-14 Kazu Hirata <kazu@codesourcery.com> |
6548 | ||
6549 | * Makefile.in (reg-stack.o): Don't depend on gt-reg-stack.h. | |
6550 | * reg-stack.c (stack_regs_mentioned_data): Change the type to | |
6551 | VEC(char,heap) *. | |
6552 | (stack_regs_mentioned): Update the uses of | |
6553 | stack_regs_mentioned_data. Don't access the array beyond its | |
6554 | end. | |
6555 | (reg_to_stack): Update the uses of stack_regs_mentioned_data. | |
6556 | Don't include gt-reg-stack.h. | |
6557 | ||
02433683 KH |
6558 | * config/bfin/bfin.h (UNALIGNED_WORD_ASM_OP): Remove. |
6559 | * system.h (UNALIGNED_WORD_ASM_OP): Poison. | |
6560 | ||
df6872b7 KH |
6561 | * combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): Remove. |
6562 | ||
5b94780f KH |
6563 | PR middle-end/26684 |
6564 | * reg-stack.c (stack_regs_mentioned_data): Put it undef #ifdef | |
6565 | STACK_REGS. | |
6566 | ||
e1835ff1 JDA |
6567 | 2006-03-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
6568 | ||
6569 | * pa/pa32-linux.h (CRT_CALL_STATIC_FUNCTION): Fix typo. | |
6570 | ||
b5564e87 RG |
6571 | 2006-03-14 Richard Guenther <rguenther@suse.de> |
6572 | ||
6573 | PR tree-optimization/26672 | |
6574 | * tree-ssa-propagate.c (set_rhs): Don't walk DEFs if not in | |
6575 | SSA form. | |
6576 | ||
6971d714 RG |
6577 | 2006-03-14 Richard Guenther <rguenther@suse.de> |
6578 | ||
6579 | PR tree-optimization/26667 | |
6580 | * ipa-inline.c (cgraph_check_inline_limits): Walk the correct | |
6581 | node for the callees. Always allow inlining if it will shrink | |
6582 | the function size. | |
6583 | ||
7de80559 RG |
6584 | 2006-03-14 Richard Guenther <rguenther@suse.de> |
6585 | ||
6586 | PR middle-end/26659 | |
6587 | * builtins.c (get_pointer_alignment): Prefer alignment | |
6588 | information from decls over that from types. | |
6589 | ||
0e512a4f AP |
6590 | 2006-03-14 Andrew Pinski <pinskia@physics.uc.edu> |
6591 | ||
6592 | PR target/26657 | |
6593 | * config/darwin.h (LINK_COMMAND_SPEC): Handle -fopenmp. | |
6594 | ||
716019c0 JM |
6595 | 2006-03-14 Joseph S. Myers <joseph@codesourcery.com> |
6596 | ||
6597 | * config/rs6000/rs6000.opt (mdlmzb): New option. | |
6598 | (msched-prolog, msched-epilog): Use Var not Mask. | |
6599 | * doc/invoke.texi (-mdlmzb): Document. | |
6600 | * config/rs6000/rs6000.c (TARGET_DEFAULT_TARGET_FLAGS): Remove | |
6601 | MASK_SCHED_PROLOG. | |
6602 | (rs6000_override_options): Enable -mdlmzb for 405 and 440. | |
6603 | * config/rs6000/rs6000.md: Add dlmzb support for 405 and 440. | |
6604 | ||
a14df7da UP |
6605 | 2006-03-13 Uttam Pawar <uttamp@us.ibm.com> |
6606 | ||
6607 | PR rtl-optimization/25739 | |
6608 | * bt-load.c (augment_live_range): Free tos pointer. | |
6609 | ||
6610 | * gensupport.c (identify_predicable_attribute): Free | |
6611 | p_false pointer. | |
6612 | * gcov.c (create_file_names): Free name pointer. | |
6613 | ||
f8318079 RS |
6614 | 2006-03-13 Roger Sayle <roger@eyesopen.com> |
6615 | ||
6616 | PR middle-end/26557 | |
6617 | * stmt.c (emit_case_nodes): Handle the case where the index is a | |
6618 | CONST_INT, where the comparison mode is specified by the index type. | |
6619 | ||
26a851b9 JDA |
6620 | 2006-03-13 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
6621 | ||
6622 | * pa/pa32-linux.h (CRT_CALL_STATIC_FUNCTION): Define when CRTSTUFFS_O | |
6623 | is defined. | |
6624 | ||
94c5a841 RS |
6625 | 2006-03-13 Richard Sandiford <richard@codesourcery.com> |
6626 | ||
6627 | * config/mips/mips.md (*branch_fp): Use %Z2 for the condition. | |
6628 | (*branch_fp_inverted): Likewise. | |
6629 | ||
5b4fc8fb JJ |
6630 | 2006-03-13 Jakub Jelinek <jakub@redhat.com> |
6631 | ||
6632 | PR middle-end/25989 | |
6633 | * omp-low.c (expand_omp_for_generic): Mark istart0 | |
6634 | and iend0 as addressable. | |
6635 | ||
792e526b JZ |
6636 | 2006-03-13 Jie Zhang <jie.zhang@analog.com> |
6637 | ||
6638 | * config/bfin/uclinux.h: Define _GNU_SOURCE in CPLUSPLUS_CPP_SPEC. | |
6639 | ||
2bbec6d9 JL |
6640 | 2006-03-13 Jeff Law <law@redhat.com> |
6641 | ||
6642 | * tree-vrp.c (stmt_interesting_for_vrp): Some statements with | |
6643 | virtual operands are interesting. | |
6644 | (vrp_visit_stmt): Corresponding changes. | |
6645 | ||
a94aa272 BS |
6646 | 2006-03-13 Bernd Schmidt <bernd.schmidt@analog.com> |
6647 | ||
6648 | * config/bfin/lib1funcs.asm (___umodsi3): Use stack to save contents | |
6649 | of RETS. | |
4af990cd BS |
6650 | * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): If |
6651 | TARGET_ID_SHARED_LIBRARY, define __ID_SHARED_LIB__. | |
6652 | * config/bfin/crti.S: Use it instead of __PIC__. | |
6653 | * config/bfin/crtn.S: Likewise. | |
a94aa272 | 6654 | |
96c30d2a BS |
6655 | * config/bfin/bfin.md (call_value_symbol, sibcall_value_symbol, |
6656 | call_symbol, sibcall_symbol): Disallow if TARGET_ID_SHARED_LIBRARY, | |
6657 | not if flag_pic. | |
6658 | Lose 'G' modifier for call operand. | |
6659 | * config/bfin/bfin.c (print_operand) <case SYMBOL_REF>: Don't | |
6660 | recognize 'G' modifier. | |
6661 | ||
3feaea00 EB |
6662 | 2006-03-13 Eric Botcazou <ebotcazou@adacore.com> |
6663 | ||
6664 | PR middle-end/18859 | |
6665 | * gimplify.c (gimplify_switch_expr): Discard empty ranges. | |
6666 | * stmt.c (expand_case): Likewise. | |
6667 | ||
ba946209 ZD |
6668 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
6669 | ||
6670 | PR rtl-optimization/26254 | |
6671 | * loop-invariant.c (seq_insns_valid_p): New function. | |
6672 | (move_invariant_reg): Only emit new code if it is valid. | |
6673 | ||
96e82e0a ZD |
6674 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
6675 | ||
6676 | * cfgrtl.c (last_loop_beg_note, back_edge_of_syntactic_loop_p): | |
6677 | Removed. | |
6678 | (force_nonfallthru_and_redirect): Do not use last_loop_beg_note. | |
6679 | (rtl_split_edge): Do not use back_edge_of_syntactic_loop_p. | |
6680 | (commit_one_edge_insertion): Do not look for loop notes. | |
6681 | ||
50af6384 ZD |
6682 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
6683 | ||
6684 | * jump.c (follow_jumps): Do not check for loop notes. Move check for | |
6685 | flag_test_coverage out of loop. | |
6686 | ||
80838531 ZD |
6687 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
6688 | ||
6689 | * final.c (shorten_branches): Remove outdated comment, and turn | |
6690 | the if branch that guards it to continue. | |
6691 | ||
7490e6c4 ZD |
6692 | 2006-03-13 Zdenek Dvorak <dvorakz@suse.cz> |
6693 | ||
6694 | * cfgloop.c (flow_loop_dump): Do not dump loop->invalid field. | |
6695 | * cfgloop.h (struct loop): Remove unused fields. | |
6696 | ||
5abcfa7e KH |
6697 | 2006-03-13 Kazu Hirata <kazu@codesourcery.com> |
6698 | ||
6699 | * doc/invoke.texi (-fdump-rtl-loop): Remove. | |
4b1c1f6f | 6700 | (-dL, -fdump-rtl-loop2): Update the dump file names |
5abcfa7e | 6701 | |
c6075909 KH |
6702 | * doc/invoke.texi: Update dump file names. |
6703 | ||
3d47ea88 SB |
6704 | 2006-03-12 Steven Bosscher <stevenb.gcc@gmail.com> |
6705 | ||
6706 | * predict.c (estimate_probability): Remove. | |
6707 | * profile.c (rest_of_handle_branch_prob, pass_branch_prob): Remove. | |
6708 | * basic-block.h (estimate_probability): Remove prototype. | |
6709 | * passes.c (finish_optimization_passes): Dump branch prediction or | |
6710 | profiling heuristics to the .profile tree dump. | |
6711 | (init_optimization_passes): Unqueue pass_branch_prob. | |
6712 | ||
6713 | * doc/invoke.texi (-fdump-rtl-bp): Remove. | |
6714 | ||
fc6c490e SB |
6715 | 2006-03-11 Steven Bosscher <stevenb.gcc@gmail.com> |
6716 | ||
6717 | * rtl.def (LABEL_REF): Remove the field for LABEL_NEXTREF. | |
6718 | * rtl.h (LABEL_NEXTREF): Remove field accessor. | |
6719 | ||
9fb798d7 EB |
6720 | 2006-03-11 Eric Botcazou <ebotcazou@adacore.com> |
6721 | ||
6722 | * function.h (frame_offset_overflow): Declare. | |
6723 | * function.c (frame_offset_overflow): New function. | |
6724 | (assign_stack_local_1): Call it to detect that the offset overflows. | |
6725 | * cfgexpand.c (alloc_stack_frame_space): Likewise. | |
6726 | ||
6dd3c0a5 SB |
6727 | 2006-03-11 Steven Bosscher <stevenb.gcc@gmail.com> |
6728 | ||
6729 | * config/sh/sh.c: Include alloc-pool.h. | |
6730 | (label_ref_list_pool): New alloc pool. | |
6731 | (label_ref_list_t): New type for lists of labels. | |
6732 | (struct pool_node): Make wend a label_ref_list_t. | |
6733 | (add_constant): Use the new type, eradicate LABEL_NEXTREF | |
6734 | references. | |
6735 | (dump_table): Likewise. | |
6736 | (sh_reorg): Set up the alloc pool before using add_constant and | |
6737 | dump_table, and destroy it when finishing. | |
6738 | ||
a70ec386 RS |
6739 | 2006-03-11 Richard Sandiford <richard@codesourcery.com> |
6740 | ||
6741 | * config/mips/mips.c: Remove redundant comment. | |
6742 | ||
21f9ec0c JM |
6743 | 2006-03-10 Jason Merrill <jason@redhat.com> |
6744 | ||
6745 | PR c/26004 | |
4b1c1f6f | 6746 | * gimplify.c (gimplify_modify_expr_rhs): Don't do return slot opt if |
21f9ec0c JM |
6747 | the target was declared 'register'. |
6748 | ||
a8597866 AN |
6749 | 2006-03-10 Adam Nemet <anemet@caviumnetworks.com> |
6750 | ||
6751 | * genpreds.c (write_insn_constraint_len): Change definition of | |
6752 | insn_constraint_len to return size_t to match the declaration. | |
6753 | ||
8e4edce7 DD |
6754 | 2006-03-10 DJ Delorie <dj@redhat.com> |
6755 | ||
6756 | * config/m32c/m32c.c (m32c_const_ok_for_constraint_p): Bit numbers | |
6757 | start at zero. | |
6758 | (m32c_expand_insv): Fix test for an AND mask. | |
6759 | ||
891c0eee RG |
6760 | 2006-03-10 Richard Guenther <rguenther@suse.de> |
6761 | ||
6762 | PR middle-end/26565 | |
6763 | * builtins.c (get_pointer_alignment): Handle component | |
6764 | references for field alignment. | |
6765 | ||
8c1aaf26 R |
6766 | 2006-03-10 J"orn Rennecke <joern.rennecke@st.com> |
6767 | ||
6768 | * config.gcc (sh*-superh-elf, sh*elf (newlib)): Use newlib.h | |
6769 | when building with libgloss. | |
6770 | (sh*elf): Implement --without-fp option. | |
4b1c1f6f | 6771 | (sh64-superh-linux*): Don't multilib. |
8c1aaf26 | 6772 | |
7a6164d4 R |
6773 | 2006-03-10 J"orn Rennecke <joern.rennecke@st.com> |
6774 | ||
6775 | * struct-equiv.c (rtx_equiv_p): Fix POST_MODIFY case. | |
6776 | ||
3e0a08d7 AP |
6777 | 2006-03-09 Andrew Pinski <pinskia@physics.uc.edu> |
6778 | ||
6779 | * tree-ssa-phiopt.c (tree_ssa_phiopt): Add cfgchanged variable. | |
6780 | Set it when one of the replacement functions returned true. | |
6781 | Return TODO_cleanup_cfg if cfgchanged is true. | |
6782 | (pass_phiopt) <todo_flags_finish>: Remove TODO_cleanup_cfg. | |
6783 | ||
f243cee6 AN |
6784 | 2006-03-09 Adam Nemet <anemet@caviumnetworks.com> |
6785 | ||
6786 | * combine.c (simplify_shift_const_1): Use gen_lowpart_or_truncate | |
6787 | instead of gen_lowpart. | |
6788 | ||
a8c1d5f8 RS |
6789 | 2006-03-09 Richard Sandiford <richard@codesourcery.com> |
6790 | ||
6791 | * config/mips/mips-protos.h (mips_output_conditional_branch): Change | |
6792 | interface. | |
6793 | (mips_output_order_conditional_branch): Declare. | |
6794 | * config/mips/mips.h (MIPS_BRANCH): New macro. | |
6795 | * config/mips/mips.c (gen_conditional_branch): Use VOIDmode | |
6796 | for the comparison. Use gen_condjump. | |
6797 | (mips_output_conditional_branch): Rework interface to take the | |
6798 | asm templates for a direct branch and the inverse of a direct branch. | |
6799 | (mips_output_order_conditional_branch): New function. | |
6800 | (mips_builtin_branch_and_move): New function. | |
6801 | (mips_expand_builtin_compare): Use it. Use VOIDmode for the | |
6802 | branch condition. Use gen_single_cc as the condition for | |
6803 | __builtin_mips_upper_* or __builtin_mips_lower_*. | |
6804 | (mips_expand_builtin_bposge): Use mips_builtin_branch_and_move. | |
6805 | Use VOIDmode for the branch condition. | |
6806 | * config/mips/predicates.md (order_operator): New predicate. | |
6807 | * config/mips/mips.md (UNSPEC_SINGLE_CC): New constant. | |
6808 | (branch_fp): Rename to... | |
6809 | (*branch_fp): ...this. Remove mode from comparison operator. | |
6810 | Use new mips_output_conditional_branch interface. | |
6811 | (branch_fp_inverted): Rename to... | |
6812 | (*branch_fp_inverted): ...this and update as for *branch_fp. | |
6813 | (*branch_zero<mode>): Rename to... | |
6814 | (*branch_order<mode>): ...this. Remove mode from comparison operator. | |
6815 | Use mips_output_order_conditional_branch. Only accept ordered | |
4b1c1f6f | 6816 | comparisons. |
a8c1d5f8 RS |
6817 | (*branch_zero<mode>_inverted): Rename to... |
6818 | (*branch_order<mode>_inverted): ...this and update as for | |
6819 | *branch_order<mode>. | |
6820 | (*branch_equality<mode>): Accept zero as the second operand to | |
6821 | the equality operator. Use the new mips_output_conditional_branch | |
6822 | interface. | |
6823 | (*branch_equality<mode>_inverted): Likewise. | |
6824 | (condjump): New expander. | |
6825 | * config/mips/mips-dsp.md (mips_bposge): Remove mode from comparison | |
6826 | operator. | |
6827 | * config/mips/mips-ps-3d.md (bc1any4t, bc1any4f): Likewise. | |
6828 | (bc1any2t, bc1any2f): Likewise. | |
6829 | (single_cc): New expander. | |
6830 | (*branch_upper_lower, *branch_upper_lower_inverted): New patterns. | |
6831 | ||
cbbb5b6d RS |
6832 | 2006-03-09 Richard Sandiford <richard@codesourcery.com> |
6833 | ||
6834 | * doc/md.texi: Update documentation of MIPS constraints. | |
6835 | * config/mips/constraints.md: New file. | |
6836 | * config/mips/mips.md: Include it. | |
6837 | * config/mips/mips.c (mips_char_to_class): Delete. | |
6838 | (override_options): Don't initialize mips_char_to_class. | |
6839 | * config/mips/mips.h (mips_char_to_class): Delete. | |
6840 | (REG_CLASS_FROM_LETTER): Delete. | |
6841 | (CONST_OK_FOR_LETTER_P): Delete. | |
6842 | (CONST_DOUBLE_OK_FOR_LETTER_P): Delete. | |
6843 | (EXTRA_CONSTRAINT_Y): Delete. | |
6844 | (EXTRA_CONSTRAINT_STR): Delete. | |
6845 | (CONSTRAINT_LEN): Delete. | |
6846 | (EXTRA_MEMORY_CONSTRAINT): Delete. | |
6847 | ||
1799e5d5 RH |
6848 | 2006-03-09 Diego Novillo <dnovillo@redhat.com> |
6849 | ||
6850 | * tree-cfg.c (move_block_to_fn): Remove the statements from the | |
6851 | original fn's eh regions. | |
6852 | ||
f8fe0545 EB |
6853 | 2006-03-09 Eric Botcazou <ebotcazou@adacore.com> |
6854 | ||
6855 | * fold-const.c (build_range_check): Make sure to use a valid type to | |
6856 | apply the "(c>=low) && (c<=high) into (c-low>=0) && (c-low<=high-low)" | |
6857 | transformation. | |
6858 | ||
6859 | (range_predecessor): New static function. | |
6860 | (range_successor): Likewise. | |
6861 | (merge_ranges): Use them to compute predecessors and successors of | |
6862 | range bounds. | |
6863 | ||
d56ee62b RS |
6864 | 2006-03-09 Roger Sayle <roger@eyesopen.com> |
6865 | ||
6866 | PR middle-end/26561 | |
6867 | * fold-const.c (fold_div_compare): When optimizing X/C1 op C2 as | |
6868 | X op C3, consider whether C3 overflows towards +Inf or -Inf. | |
6869 | ||
07127a0a DD |
6870 | 2006-03-08 DJ Delorie <dj@redhat.com> |
6871 | ||
6872 | * config/m32c/addsub.md (addqi3): Disparage a0/a1. | |
6873 | (addpsi3): Expand to include memory operands. Remove | |
6874 | reload-specific splits. | |
6875 | * config/m32c/bitops.md (bset_qi, bset_hi, bclr_qi): New. | |
6876 | (andqi3_16, andhi3_16, iorqi3_16, iorhi3_16): New. | |
6877 | (andqi3_24, andhi3_24, iorqi3_24, iorhi3_24): New. | |
6878 | (andqi3, andhi3, iorqi3, iorhi3): Convert to expanders. | |
6879 | (shift1_qi, shift1_hi, insv): New. | |
6880 | * config/m32c/cond.md (cbranchqi4, cbranchhi4): Remove. | |
6881 | (cbranch<mode>4, stzx_16, stzx_24_<mode>, stzx_reversed, | |
6882 | cmp<mode>, b<code>, s<code>, s<code>_24, movqicc, movhicc, | |
6883 | cond_to_int): New. | |
6884 | * config/m32c/m32c-protos.h: Update as needed. | |
6885 | * config/m32c/m32c.c (m32c_reg_class_from_constraint): Don't | |
6886 | default the Rcr, Rcl, Raw, and Ral constraints. Add Ra0 and Ra1. | |
6887 | Fail for unrecognized R* constraints. | |
6888 | (m32c_cannot_change_mode_class): Be more picky about pseudos. | |
6889 | (m32c_const_ok_for_constraint_p): Add Imb, Imw, and I00. | |
6890 | (m32c_extra_constraint_p2): Allow (mem (plus (plus fb int) int)). | |
6891 | Add Sp constraint. | |
6892 | (m32c_init_libfuncs): New. | |
6893 | (m32c_legitimate_address_p): Add debug wrapper. | |
6894 | (m32c_rtx_costs): New. | |
6895 | (m32c_address_cost): New. | |
6896 | (conversions): Add 'B' prefix. | |
6897 | (m32c_print_operand): 'h' and 'H' pick lower and upper halves of | |
6898 | operands, or word regnames for QI operands. 'B' prints bit | |
6899 | position. | |
6900 | (m32c_expand_setmemhi): New. | |
6901 | (m32c_expand_movmemhi): New. | |
6902 | (m32c_expand_movstr): New. | |
6903 | (m32c_expand_cmpstr): New. | |
6904 | (m32c_prepare_shift): Shift counts are limited to 16 bits at a time. | |
6905 | (m32c_expand_neg_mulpsi3): Handle non-ints. | |
6906 | (m32c_cmp_flg_0): New. | |
6907 | (m32c_expand_movcc): New. | |
6908 | (m32c_expand_insv): New. | |
6909 | (m32c_scc_pattern): New. | |
6910 | * config/m32c/m32c.h (reg classes): Add AO_REGS and A1_REGS. Take | |
6911 | a0/a1 out of SIregs. | |
6912 | (STORE_FLAG_VALUE): New. | |
6913 | * config/m32c/m32c.md: Add unspecs for string moves. Define various mode and | |
6914 | code macros. | |
6915 | (no_insn): New. | |
6916 | * config/m32c/mov.md: Make constraints more liberal. | |
6917 | (zero_extendqihi2): Optimize r0/r1 case. | |
6918 | * config/m32c/muldiv.md (mulpsi3): Check for intvals. | |
6919 | * config/m32c/predicates.md (m32c_any_operand): New. | |
6920 | (m32c_nonimmediate_operand): New. | |
6921 | (m32c_hl_operand): New. | |
6922 | (m32c_r3_operand): New. | |
6923 | (ap_operand): New. | |
6924 | (ma_operand): New. | |
6925 | (memsym_operand): New. | |
6926 | (memimmed_operand): New. | |
6927 | (a_qi_operand): New. | |
6928 | (m32c_eqne_operator): New. | |
6929 | (m32c_1bit8_operand): New. | |
6930 | (m32c_1bit16_operand): New. | |
6931 | (m32c_1mask8_operand): New. | |
6932 | (m32c_1mask16_operand): New. | |
6933 | * config/m32c/blkmov.md: New file. | |
6934 | * config/m32c/t-m32c (MD_FILES): Add blkmov. | |
6935 | ||
6677e189 AT |
6936 | 2006-03-08 Andreas Tobler <a.tobler@schweiz.ch> |
6937 | ||
8f4fc766 AT |
6938 | * dwarf2out.c (expand_builtin_dwarf_sp_column): Make dwarf_regnum |
6939 | unsigned to fix signed/unsigned comparison issue in | |
6940 | DWARF2_FRAME_REG_OUT. | |
6941 | (expand_builtin_init_dwarf_reg_sizes): Make i unsigned to fix signed/ | |
6942 | unsigned comparison issue in DWARF2_FRAME_REG_OUT. | |
6943 | ||
6677e189 AT |
6944 | * tree-ssa-operands.c (finalize_ssa_def_ops): Move the declaration |
6945 | of ptr into the ENABLE_CHECKING section. | |
6946 | ||
60c9ad46 JL |
6947 | 2006-03-08 Jeff Law <law@redhat.com> |
6948 | ||
6949 | * tree-vrp.c (infer_value_range): Only count pointer uses | |
6950 | and dereferences if -fdelete-null-pointer-checks is enabled. | |
6951 | ||
6952 | * tree-vrp.c (find_assert_locations): Infer value ranges for | |
6953 | single use pointers, but do not create ASSERT_EXPRs for them. | |
6954 | When a non-null range is inferred for a pointer, backwards | |
6955 | propagate that range to other equivalent pointers through the | |
6956 | use-def chain. | |
6957 | ||
dedfa466 PB |
6958 | 2006-03-08 Paolo Bonzini <bonzini@gnu.org> |
6959 | ||
6960 | PR bootstrap/26500 | |
6961 | * Makefile.in (dvi, html, install-info): Invoke the corresponding | |
6962 | language hook targets. | |
6963 | * ada/Make-lang.in, cp/Make-lang.in, objc/Make-lang.in, | |
6964 | objcp/Make-lang.in: Create stub rules for dvi, html, install-info | |
6965 | if language hook targets were missing. | |
6966 | ||
ac574e1b ZD |
6967 | 2006-03-07 Zdenek Dvorak <dvorakz@suse.cz> |
6968 | ||
6969 | * tree-ssa-opfinalize.h: Removed. | |
6970 | * Makefile.in (tree-ssa-operands.o): Remove tree-ssa-opfinalize.h | |
6971 | dependency. | |
6972 | * tree-ssa-operands.c: Do not include tree-ssa-opfinalize.h. | |
6973 | (ALLOC_OPTYPE, APPEND_OP_AFTER, MOVE_HEAD_AFTER, MOVE_HEAD_TO_FREELIST, | |
6974 | INITIALIZE_USE, add_def_op, add_use_op, add_vuse_op, add_maydef_op, | |
6975 | add_mustdef_op, finalize_ssa_def_ops, finalize_ssa_use_ops, | |
6976 | finalize_ssa_v_may_def_ops, finalize_ssa_vuse_ops, | |
6977 | finalize_ssa_v_must_def_ops): New. | |
6978 | ||
50d5ff7d KZ |
6979 | 2006-03-07 Kenneth Zadeck <zadeck@naturalbridge.com> |
6980 | ||
6981 | * df-scan.c: (df_bb_refs_record): Fix obvious typo with wrong | |
6982 | block as parameter. | |
6983 | ||
fb638355 GK |
6984 | 2006-03-07 Geoffrey Keating <geoffk@apple.com> |
6985 | ||
cd554454 GK |
6986 | * varasm.c (assemble_end_function): Say that 'fnname' is unused. |
6987 | ||
dbde310d GK |
6988 | * config/i386/i386.c (ix86_delegitimize_address): Handle Darwin |
6989 | addresses with offsets; reorganize. | |
6990 | ||
fb638355 GK |
6991 | * dwarf2out.c (DWARF2_FRAME_REG_OUT): Move up in file. |
6992 | (expand_builtin_dwarf_sp_column): Call DWARF2_FRAME_REG_OUT. | |
6993 | (expand_builtin_init_dwarf_reg_sizes): Likewise. | |
6994 | ||
0f047685 DB |
6995 | 2006-03-08 David Billinghurst <David.Billinghurst@riotinto.com> |
6996 | ||
6997 | PR target/26588 | |
6998 | * config/i386/cygwin.h (GOMP_SELF_SPECS): Define. | |
6999 | ||
c18f0c26 BE |
7000 | 2006-03-08 Ben Elliston <bje@au.ibm.com> |
7001 | ||
7002 | * config/fp-bit.h (CMPtype): Typedef to a word mode integer. | |
7003 | ||
48fa3029 AH |
7004 | 2006-03-07 Aldy Hernandez <aldyh@redhat.com> |
7005 | ||
7006 | PR gomp/26238 | |
7007 | * doc/passes.texi (Tree-SSA passes): Document omp lowering and | |
7008 | expansion. | |
7009 | ||
6f1be8e1 RG |
7010 | 2006-03-07 Richard Guenther <rguenther@suse.de> |
7011 | ||
7012 | PR tree-optimization/26587 | |
7013 | * tree-ssa-structalias.c (handle_ptr_arith): Handle MINUS_EXPR. | |
7014 | ||
6410fb81 RS |
7015 | 2006-03-07 Richard Sandiford <richard@codesourcery.com> |
7016 | ||
7017 | * varasm.c (assemble_variable): Fix setting of DECL_IN_TEXT_SECTION. | |
7018 | ||
1d3dbd99 RS |
7019 | 2006-03-07 Richard Sandiford <richard@codesourcery.com> |
7020 | ||
7021 | * hooks.c (hook_bool_mode_rtx_true): New function. | |
7022 | * hooks.h (hook_bool_mode_rtx_true): Declare. | |
7023 | * toplev.c (compile_file): Call output_shared_constant_pool. | |
7024 | * varasm.c (shared_constant_pool): New variable. | |
7025 | (assemble_start_function, assemble_end_function): Remove arguments | |
7026 | from call to output_constant_pool. | |
7027 | (create_constant_pool): New function, split out from... | |
7028 | (init_varasm_status): ...here. | |
7029 | (force_const_mem): Choose between the shared and per-function constant | |
7030 | pools. Set current_function_uses_const_pool when reusing old entries | |
7031 | as well as when creating new ones. | |
7032 | (mark_constant): Ignore data argument. | |
7033 | (mark_constants): Remove pool argument. | |
7034 | (mark_constant_pool): Likewise. Use current_function_uses_const_pool | |
7035 | to decide whether the function uses a constant pool. | |
7036 | (output_constant_pool_contents): New function, split out from... | |
7037 | (output_constant_pool): ...here. | |
7038 | (output_shared_constant_pool): New function. | |
7039 | (init_varasm_once): Initialize shared_constant_pool. | |
7040 | * output.h (output_constant_pool): Delete. | |
7041 | (output_shared_constant_pool): Declare. | |
7042 | * config/s390/s390-protos.h (s390_output_constant_pool): Delete. | |
7043 | * config/i386/i386.c (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Override. | |
7044 | ||
7d14f0fc NC |
7045 | 2006-03-06 Nick Clifton <nickc@redhat.com> |
7046 | ||
7047 | * config/m32r/m32r.h (OPTIMIZATION_OPTIONS): Remove reference to | |
7048 | flag_strength_reduce. | |
7049 | ||
d9b9633d BE |
7050 | 2006-03-06 Ben Elliston <bje@au.ibm.com> |
7051 | ||
45b9a4e8 BE |
7052 | * config.gcc: Add t-dfprules to $tmake_file for i*86-*-linux* and |
7053 | x86_64-*-linux* configurations. | |
7054 | ||
d9b9633d | 7055 | * config/dfp-bit.h (CMPtype): Typedef to a word mode integer. |
c92f986f | 7056 | (LIBGCC2_WORDS_BIG_ENDIAN): Define. |
d9b9633d | 7057 | |
acfc4f0a KH |
7058 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
7059 | ||
7060 | * tree-ssa-threadupdate.c (rediscover_loops_after_threading): | |
7061 | Remove. | |
7062 | * basic-block.h: Remove the extern for | |
7063 | rediscover_loops_after_threading. | |
7064 | ||
b00bf166 KH |
7065 | * cfgloop.c (cancel_loop): Make it static. |
7066 | * cfgloop.h: Remove the prototype for cancel_loop. | |
7067 | ||
a678e384 KH |
7068 | * flow.c (recompute_reg_usage): Make it static. |
7069 | * rtl.h: Remove the prototype for recompute_reg_usage. | |
7070 | ||
0bf8477d KH |
7071 | * function.c (use_return_register): Make it static. |
7072 | * function.h: Remove the prototype. | |
7073 | ||
d42ee77a KH |
7074 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
7075 | ||
7076 | * recog.c (volatile_mem_p, validate_change_maybe_volatile): | |
7077 | Remove. | |
7078 | * recog.h: Remove the prototype for | |
7079 | validate_change_maybe_volatile. | |
7080 | ||
dc782dcd KH |
7081 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
7082 | ||
7083 | * rtlanal.c (replace_reg): Remove. | |
7084 | * rtl.h: Remove the prototype for replace_reg. | |
7085 | ||
3c491cab KH |
7086 | 2006-03-05 Kazu Hirata <kazu@codesourcery.com> |
7087 | ||
7088 | * regclass.c (reg_scan_update): Remove. | |
7089 | (reg_scan_mark_refs): Remove the last argument. | |
7090 | * rtl.h: Remove the prototype for reg_scan_update. | |
7091 | ||
c0220ea4 KH |
7092 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
7093 | ||
7094 | * builtins.c, c-pragma.h, c-typeck.c, cgraph.c, cgraphunit.c, | |
7095 | combine.c, common.opt, config/dfp-bit.c, config/i386/i386.c, | |
7096 | config/m68k/m68k.c, config/m68k/m68k.md, config/mt/mt.c, | |
7097 | config/mt/mt.h, config/s390/s390.md, df-core.c, df-problems.c, | |
7098 | df-scan.c, df.h, diagnostic.c, expr.c, function.h, gimplify.c, | |
7099 | loop-invariant.c, omp-low.c, opts.c, passes.c, | |
7100 | rtl-factoring.c, rtlanal.c, struct-equiv.c, tree-cfgcleanup.c, | |
7101 | tree-ssa-loop-niter.c, tree-ssa-loop-prefetch.c, | |
7102 | tree-ssa-structalias.c, tree-ssa-threadedge.c, | |
7103 | tree-ssa-threadupdate.c, tree-vect-patterns.c, | |
7104 | tree-vect-transform.c, tree-vectorizer.h, tree-vrp.c, | |
7105 | unwind-dw2.c: Fix comment typos. Follow spelling conventions. | |
7106 | ||
ae3b9f19 KH |
7107 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
7108 | ||
7109 | * dwarf2out.c (dwarf2out_add_library_unit_info): Remove. | |
7110 | * dwarf2out.h: Remove the prototype for | |
7111 | dwarf2out_add_library_unit_info. | |
7112 | ||
a82db052 KH |
7113 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
7114 | ||
7115 | * tree.c (add_var_to_bind_expr): Remove. | |
7116 | * tree.h: Remove the prototype for add_var_to_bind_expr. | |
7117 | ||
3c6c67f8 KH |
7118 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
7119 | ||
7120 | * regclass.c (n_non_fixed_regs): Remove. | |
7121 | (init_reg_sets_1, globalize_reg): Remove all uses of | |
7122 | n_non_fixed_regs. | |
7123 | * hard-reg-set.h: Remove the extern for n_non_fixed_regs. | |
7124 | ||
22ec0cc8 KH |
7125 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
7126 | ||
7127 | * rtlanal.c (insns_safe_to_move_p): Remove. | |
7128 | * rtl.h: Remove the prototype for insns_safe_to_move_p. | |
7129 | ||
2f8dc5bb KH |
7130 | 2006-03-04 Kazu Hirata <kazu@codesourcery.com> |
7131 | ||
7132 | * expmed.c (expand_mult_add): Remove. | |
7133 | * expr.h: Remove the prototype for expand_mult_add. | |
7134 | ||
4469af7a JJ |
7135 | 2006-03-04 Jakub Jelinek <jakub@redhat.com> |
7136 | ||
7137 | * unwind-dw2.h (_Unwind_FrameState): Add REG_SAVED_VAL_OFFSET | |
7138 | and REG_SAVED_VAL_EXP constants. | |
7139 | * unwind-dw2.c (struct _Unwind_Context): Add by_value array. | |
7140 | (_Unwind_GetGR, _Unwind_SetGR, _Unwind_GetGRPtr, _Unwind_SetGRPtr): | |
7141 | Handle regs stored by value. | |
7142 | (_Unwind_SetGRValue, _Unwind_GRByValue): New functions. | |
7143 | (execute_cfa_program): Handle DW_CFA_val_offset, | |
7144 | DW_CFA_val_offset_sf and DW_CFA_val_expression. | |
7145 | (uw_update_context_1): Handle REG_SAVED_REG with regs stored by | |
7146 | value specially. Handle REG_SAVED_VAL_OFFSET and REG_SAVED_VAL_EXP. | |
7147 | (uw_install_context_1): Handle target regs stored by value. | |
7148 | ||
efdb3de9 DB |
7149 | 2006-03-03 Daniel Berlin <dberlin@dberlin.org> |
7150 | ||
7151 | * tree-sra.c (tree_sra): Return todoflags; | |
7152 | (generate_one_element): Set TODO_update_smt_usage if needed. | |
7153 | (pass_sra): Remove TODO_update_smt_usage. | |
7154 | * tree-ssa-forwprop.c (forward_propagate_addr_expr): Add some | |
7155 | parameter. | |
7156 | (tree_ssa_forward_propagate_single_use_vars): Return | |
7157 | TODO_update_smt_usage if we need to update SMT usage. | |
7158 | (pass_forwprop): Remove TODO_update_smt_usage. | |
4b1c1f6f | 7159 | |
65ad7c63 DN |
7160 | 2006-03-03 Diego Novillo <dnovillo@redhat.com> |
7161 | ||
7162 | * tree-ssa-operands.c: Tidy whitespace. Fix spelling. | |
7163 | (correct_use_link): Remove reference to get_stmt_operands. | |
7164 | (update_stmt_operands): Likewise. | |
7165 | (get_modify_expr_operands): New function factored out of | |
7166 | parse_ssa_operands and get_expr_operands. | |
7167 | Try to create V_MUST_DEFs for LHS by default. | |
7168 | (get_expr_operands) <case MODIFY_EXPR>: Call | |
7169 | get_modify_expr_operands. | |
7170 | <case ARRAY_RANGE_REF>: Handle together with ARRAY_REF. | |
7171 | <case BIT_FIELD_REF>: Clear opf_kill_def from FLAGS. | |
7172 | (parse_ssa_operands) <case MODIFY_EXPR>: Call | |
7173 | get_modify_expr_operands. | |
7174 | ||
417e90ca KH |
7175 | 2006-03-03 Kazu Hirata <kazu@codesourcery.com> |
7176 | ||
7177 | * tree-dfa.c (referenced_var_lookup_if_exists): Remove. | |
7178 | * tree-flow.h: Remove the prototype for | |
7179 | referenced_var_lookup_if_exists. | |
7180 | ||
f6d65153 SE |
7181 | 2006-03-03 Steve Ellcey <sje@cup.hp.com> |
7182 | ||
7183 | PR rtl-optimization/26345 | |
7184 | PR target/19061 | |
7185 | * config/ia64/predicates.md (basereg_operand): Don't look in subregs. | |
7186 | ||
9a75ede0 RS |
7187 | 2006-03-03 Roger Sayle <roger@eyesopen.com> |
7188 | ||
7189 | PR tree-optimization/26524 | |
7190 | * tree-scalar-evolution.c (interpret_rhs_modify_expr): Use | |
7191 | fold_convert to create a constant of the appropriate type. | |
7192 | ||
3fa9c136 RS |
7193 | 2006-03-03 Richard Sandiford <richard@codesourcery.com> |
7194 | ||
7195 | * doc/tm.texi: Refer to SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
7196 | SYMBOL_REF_IN_BLOCK_P. | |
7197 | * doc/rtl.texi: Likewise. Refer to SYMBOL_FLAG_HAS_BLOCK_INFO instead | |
7198 | of SYMBOL_FLAG_IN_BLOCK. | |
7199 | * gengtype.c (adjust_field_rtx_def): Use SYMBOL_REF_HAS_BLOCK_INFO_P | |
7200 | instead of SYMBOL_REF_IN_BLOCK_P. | |
7201 | * explow.c (use_anchored_address): Likewise. | |
7202 | * rtl.c (rtx_size): Likewise. | |
7203 | * varasm.c (create_block_symbol): Set SYMBOL_FLAG_HAS_BLOCK_INFO | |
7204 | instead of SYMBOL_FLAG_IN_BLOCK. | |
7205 | (make_decl_rtl): Use SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
7206 | SYMBOL_REF_IN_BLOCK_P. | |
7207 | (assemble_variable): Likewise. | |
7208 | (output_constant_def_contents): Likewise. | |
7209 | (output_constant_pool): Likewise. | |
7210 | (default_encode_section_info): Preserve SYMBOL_FLAG_HAS_BLOCK_INFO | |
7211 | instead of SYMBOL_FLAG_IN_BLOCK. | |
7212 | * rtl.h (block_symbol): Refer to SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
7213 | SYMBOL_REF_IN_BLOCK_P. | |
7214 | (SYMBOL_REF_BLOCK): Likewise. | |
7215 | (SYMBOL_REF_OFFSET): Likewise. | |
7216 | (BLOCK_SYMBOL_CHECK): Use SYMBOL_REF_HAS_BLOCK_INFO_P instead of | |
7217 | SYMBOL_REF_IN_BLOCK_P. | |
7218 | (SYMBOL_FLAG_IN_BLOCK): Replace with... | |
7219 | (SYMBOL_FLAG_HAS_BLOCK_INFO): ...this. | |
7220 | (SYMBOL_REF_IN_BLOCK_P): Replace with... | |
7221 | (SYMBOL_REF_HAS_BLOCK_INFO_P): ...this. | |
7222 | ||
f677599e JJ |
7223 | 2006-03-03 Jakub Jelinek <jakub@redhat.com> |
7224 | ||
7225 | * config/arm/unwind-arm.h (_Unwind_GetIPInfo): Fix pasto. | |
7226 | ||
0f2f71b5 RS |
7227 | 2006-03-02 Roger Sayle <roger@eyesopen.com> |
7228 | ||
7229 | * simplify-rtx.c (simplify_unary_operation): When simplifying | |
7230 | (neg (lt X 0)) into (ashiftrt X C) or (lshiftrt X C), make sure | |
7231 | that we perform the right shift in the appropriate mode, and | |
7232 | then extend or truncate the result to requested mode. | |
7233 | ||
f82783bd ZD |
7234 | 2006-03-03 Zdenek Dvorak <dvorakz@suse.cz> |
7235 | ||
7236 | * gengtype.c (main): Handle double_int type. | |
7237 | * tree.h (struct tree_int_cst): Make type of int_cst double_int. | |
7238 | * double-int.c: New file. | |
7239 | * double-int.h: New file. | |
7240 | * system.h: Include doubleint.h. | |
7241 | * Makefile.in (SYSTEM_H): Include double-int.h. | |
7242 | (double-int.o): Add. | |
7243 | ||
778f0e89 JM |
7244 | 2006-03-03 Joseph S. Myers <joseph@codesourcery.com> |
7245 | ||
7246 | PR bootstrap/26478 | |
7247 | * Makefile.in (stmp-int-hdrs): Remove include/unwind.h before | |
7248 | copying over it. | |
7249 | ||
701b8964 ZD |
7250 | 2006-03-02 Zdenek Dvorak <dvorakz@suse.cz> |
7251 | ||
0f2f71b5 RS |
7252 | * tree-vrp.c (remove_range_assertions): Do not update statements |
7253 | unnecessarily. | |
701b8964 | 7254 | |
59994160 ZD |
7255 | 2006-03-02 Zdenek Dvorak <dvorakz@suse.cz> |
7256 | ||
7257 | * cse.c (rest_of_handle_cse): Do not pass CLEANUP_PRE_LOOP to cfg | |
7258 | cleanup. | |
7259 | * gcse.c (rest_of_handle_gcse): Ditto. | |
7260 | * except.c (gate_handle_eh): Ditto. | |
7261 | * cfgcleanup.c (rest_of_handle_jump2): Ditto. | |
7262 | * basic-block.h (CLEANUP_PRE_LOOP): Remove. | |
7263 | ||
5143b5fc EC |
7264 | 2006-03-02 Eric Christopher <echristo@apple.com> |
7265 | ||
7266 | * config/i386/i386.c (machopic_output_stub): Add indirection to | |
7267 | jump. | |
7268 | ||
c6ba18c6 ZD |
7269 | 2006-03-02 Zdenek Dvorak <dvorakz@suse.cz> |
7270 | ||
7271 | * loop.c: Removed. | |
7272 | ||
4c837a1e DM |
7273 | 2006-03-02 David S. Miller <davem@sunset.davemloft.net> |
7274 | ||
7275 | Sun Niagara specific optimizations. | |
7276 | * config.gcc: Recognize niagara as target. | |
7277 | * config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Mention Niagara. | |
7278 | (TARGET_CPU_niagara): Define. | |
7279 | (CPP_CPU64_DEFAULT_SPEC): Define __sparc_v9__ for Niagara. | |
7280 | (ASM_CPU64_DEFAULT_SPEC): Pass -Av9b for Niagara. | |
7281 | (CPP_CPU_SPEC): Handle -mcpu=niagara. | |
7282 | (ASM_CPU_SPEC): Likewise. | |
7283 | (PROCESSOR_NIAGARA): New enum entry. | |
7284 | (REGISTER_MOVE_COST): Handle Niagara. | |
7285 | (BRANCH_COST, PREFETCH_BLOCK, SIMULTANEOUS_PREFETCHES): Likewise. | |
7286 | * config/sparc/sparc.c (niagara_costs): New processor_costs entry. | |
7287 | (sparc_override_options): Recognize "niagara", set appropriate | |
7288 | default MASK_* values for it, and align functions to 32-bytes | |
7289 | by default just like ULTRASPARC/ULTRASPARC3. | |
7290 | (sparc_initialize_trampoline): Handle niagara like ultrasparc. | |
7291 | (sparc64_initialize_trampoline): Likewise. | |
7292 | (sparc_use_sched_lookahead): Use zero for niagara. | |
7293 | (sparc_issue_rate): Use one for niagara. | |
7294 | * config/sparc/niagara.md: New file. | |
7295 | * config/sparc/sparc.md: Include it. | |
7296 | * config/sparc/sol2-bi.h (CPP_CPU64_DEFAULT_SPEC, | |
7297 | ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Set appropriately | |
7298 | when default cpu is niagara. | |
7299 | (CPP_CPU_SPEC): Handle -mcpu=niagara. | |
7300 | (ASM_CPU_SPEC): Likewise. | |
7301 | * config/sparc/sol2.h (ASM_CPU_DEFAULT_SPEC): Set appropriately | |
7302 | when default cpu is niagara. | |
7303 | (ASM_CPU_SPEC): Handle -mcpu=niagara. | |
7304 | * config/sparc/linux64.h: Handle a default of TARGET_CPU_niagara | |
7305 | just like v9/ultrasparc/ultrasparc3. | |
7306 | * doc/invoke.texi: Add documentation for "niagara" and improve | |
7307 | existing documentation for ultrasparc variants. | |
5143b5fc | 7308 | |
2434ab1d DN |
7309 | 2006-03-02 Diego Novillo <dnovillo@redhat.com> |
7310 | ||
7311 | * tree-ssa-operands.c (update_stmt_operands): Update documentation. | |
7312 | ||
434aeebb RS |
7313 | 2006-03-02 Richard Sandiford <richard@codesourcery.com> |
7314 | ||
7315 | * doc/tm.texi (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Document. | |
7316 | (ASM_OUTPUT_BSS): Describe the two ways of handling global BSS, | |
7317 | and say that only one is needed. | |
7318 | * doc/rtl.texi (SYMBOL_REF_BLOCK): Say that the block can be null. | |
7319 | * target.h (have_switchable_bss_sections): New hook. | |
7320 | * explow.c (use_anchored_address): Check that the symbol is in a block. | |
7321 | * varasm.c (tls_comm_section, comm_section, lcomm_section) | |
7322 | (bss_noswitch_section): New variables. | |
7323 | (get_unnamed_section): Add SECTION_UNNAMED to the flags. | |
7324 | (get_noswitch_section): New function. | |
7325 | (get_block_for_section): Allow SECT to be null. | |
7326 | (unlikely_text_section_p): Use SECTION_STYLE. | |
7327 | (bss_initializer_p): New function. | |
7328 | (get_variable_section): Move earlier in file. Take a new argument, | |
7329 | prefer_noswitch_p. Move bss checks from assemble_variable to here. | |
7330 | Return one of the new *_sections in such cases. | |
7331 | (get_block_for_decl): New function, extracting some logic from | |
7332 | use_blocks_for_decl_p. | |
7333 | (change_symbol_section): Remove in favor of... | |
7334 | (change_symbol_block): ...this new function. | |
7335 | (use_blocks_for_decl_p): Remove checks now performed by | |
7336 | get_block_for_decl. | |
7337 | (make_decl_rtl): Use change_symbol_block and get_block_for_decl. | |
7338 | (ASM_EMIT_LOCAL, ASM_EMIT_BSS, ASM_EMIT_COMMON): Delete in favor of... | |
7339 | (emit_local, emit_bss, emit_common): ...these new functions. | |
7340 | Return true if the alignment was honored. | |
7341 | (emit_tls_common): New function. | |
7342 | (asm_emit_uninitialised): Delete. | |
7343 | (assemble_variable_noswitch): New function, split out from... | |
7344 | (assemble_variable): ...here. Don't make decisions about common | |
7345 | variables here. Globalize all public decls that go into non-common | |
7346 | sections. Check whether SYMBOL_REF_BLOCK is null. | |
7347 | (output_constant_def_contents): Check whether SYMBOL_REF_BLOCK is null. | |
7348 | (output_constant_pool): Likewise. | |
7349 | (init_varasm_once): Initialize the new section variables. | |
7350 | (have_global_bss_p): New function. | |
7351 | (categorize_decl_for_section): Use bss_initializer_p. | |
7352 | (switch_to_section): Use SECTION_STYLE. Abort for SECTION_NOSWITCH. | |
7353 | (place_block_symbol): Assert that the symbol must be in a block. | |
7354 | * target-def.h (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): New macro. | |
7355 | (TARGET_INITIALIZER): Include it. | |
7356 | * rtl.h (SYMBOL_REF_BLOCK): Document the null alternative. | |
7357 | * output.h (SECTION_STYLE_MASK, SECTION_COMMON): New macros. | |
7358 | (SECTION_MACH_DEP): Bump by two. | |
7359 | (SECTION_UNNAMED, SECTION_NOSWITCH): New macros. | |
7360 | (unnamed_section): Mention SECTION_UNNAMED in comment. | |
7361 | (named_section): Likewise SECTION_NAMED. | |
7362 | (noswitch_section_callback): New type. | |
7363 | (noswitch_section): New structure. | |
7364 | (section): Add a noswitch_section alternative. | |
7365 | (SECTION_STYLE): New macro. | |
7366 | (tls_comm_section, comm_section, lcomm_section): Declare. | |
7367 | (bss_noswitch_section, have_global_bss_p): Declare. | |
7368 | * config/elfos.h (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Override. | |
7369 | * config/iq2000/iq2000.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): | |
7370 | Override. | |
7371 | * config/v850/v850.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Override. | |
7372 | * config/stormy16/stormy16.c (TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): | |
7373 | Override. | |
7374 | ||
c2924966 DB |
7375 | 2006-03-02 Daniel Berlin <dberlin@dberlin.org> |
7376 | ||
a1d1988f MS |
7377 | * tree-vrp.c (execute_vrp): Return value. |
7378 | * regrename.c (rest_of_handle_regrename): Ditto. | |
7379 | * tree-into-ssa.c (rewrite_into_ssa): Ditto. | |
7380 | * tree-complex.c (tree_lower_complex): Ditto. | |
c2924966 | 7381 | (tree_lower_complex_O0): Ditto. |
a1d1988f MS |
7382 | * tracer.c (rest_of_handle_tracer): Ditto. |
7383 | * postreload-gcse.c (rest_of_handle_gcse2): Ditto. | |
7384 | * postreload.c (rest_of_handle_postreload): Ditto. | |
7385 | * tree-tailcall.c (execute_tail_recursion): Ditto. | |
c2924966 | 7386 | (execute_tail_calls): Ditto. |
a1d1988f MS |
7387 | * tree-ssa-loop-ch.c (copy_loop_headers): Ditto. |
7388 | * tree.h (init_function_for_compilation): Ditto. | |
7389 | * ipa-cp.c (ipcp_driver): Ditto. | |
7390 | * tree-scalar-evolution.c (scev_const_prop): Ditto. | |
7391 | * tree-scalar-evolution.h (scev_const_prop): Ditto. | |
7392 | * final.c (compute_alignments): Ditto. | |
c2924966 DB |
7393 | (rest_of_handle_final): Ditto. |
7394 | (rest_of_handle_shorten_branches): Ditto. | |
7395 | (rest_of_clean_state): Ditto. | |
a1d1988f | 7396 | * omp-low.c (execute_expand_omp): Ditto. |
c2924966 | 7397 | (execute_lower_omp): Ditto. |
a1d1988f MS |
7398 | * tree-ssa-dse.c (tree_ssa_dse): Ditto. |
7399 | * ipa-reference.c (static_execute): Ditto. | |
7400 | * tree-ssa-uncprop.c (tree_ssa_uncprop): Ditto. | |
7401 | * reorg.c (rest_of_handle_delay_slots): Ditto. | |
c2924966 | 7402 | (rest_of_handle_machine_reorg): Ditto. |
a1d1988f MS |
7403 | * cgraphunit.c (rebuild_cgraph_edges): Ditto. |
7404 | * flow.c (recompute_reg_usage): Ditto. | |
c2924966 DB |
7405 | (rest_of_handle_remove_death_notes): Ditto. |
7406 | (rest_of_handle_life): Ditto. | |
7407 | (rest_of_handle_flow2): Ditto. | |
a1d1988f MS |
7408 | * tree-ssa-copyrename.c (rename_ssa_copies): Ditto. |
7409 | * tree-ssa-ccp.c (do_ssa_ccp): Ditto. | |
c2924966 DB |
7410 | (do_ssa_store_ccp): Ditto. |
7411 | (execute_fold_all_builtins): Ditto. | |
a1d1988f MS |
7412 | * mode-switching.c (rest_of_handle_mode_switching): Ditto. |
7413 | * modulo-sched.c (rest_of_handle_sms): Ditto. | |
7414 | * ipa-pure-const.c (static_execute): Ditto. | |
7415 | * cse.c (rest_of_handle_cse): Ditto. | |
c2924966 | 7416 | (rest_of_handle_cse2): Ditto. |
a1d1988f MS |
7417 | * web.c (rest_of_handle_web): Ditto. |
7418 | * tree-stdarg.c (execute_optimize_stdarg): Ditto. | |
7419 | * tree-ssa-math-opts.c (execute_cse_reciprocals): Ditto. | |
7420 | * tree-ssa-dom.c (tree_ssa_dominator_optimize): Ditto. | |
7421 | * tree-nrv.c (tree_nrv): Ditto. | |
c2924966 | 7422 | (execute_return_slot_opt): Ditto. |
a1d1988f | 7423 | * tree-ssa-alias.c (compute_may_aliases): Ditto. |
c2924966 | 7424 | (create_structure_vars): Ditto. |
a1d1988f | 7425 | * loop-init.c (rtl_loop_init): Ditto. |
c2924966 DB |
7426 | (rtl_loop_done): Ditto. |
7427 | (rtl_move_loop_invariants): Ditto. | |
7428 | (rtl_unswitch): Ditto. | |
7429 | (rtl_unroll_and_peel_loops): Ditto. | |
7430 | (rtl_doloop): Ditto. | |
a1d1988f | 7431 | * gimple-low.c (lower_function_body): Ditto. |
c2924966 | 7432 | (mark_used_blocks): Ditto. |
a1d1988f MS |
7433 | * tree-ssa-sink.c (execute_sink_code): Ditto. |
7434 | * ipa-inline.c (cgraph_decide_inlining): Ditto. | |
c2924966 | 7435 | (cgraph_early_inlining): Ditto. |
a1d1988f MS |
7436 | * global.c (rest_of_handle_global_alloc): Ditto. |
7437 | * jump.c (cleanup_barriers): Ditto. | |
c2924966 | 7438 | (purge_line_number_notes): Ditto. |
a1d1988f | 7439 | * ifcvt.c (rest_of_handle_if_conversion): Ditto. |
c2924966 | 7440 | (rest_of_handle_if_after_reload): Ditto. |
a1d1988f | 7441 | * tree-ssa-loop.c (tree_ssa_loop_init): Ditto. |
c2924966 DB |
7442 | (tree_ssa_loop_im): Ditto. |
7443 | (tree_ssa_loop_unswitch): Ditto. | |
7444 | (tree_vectorize): Ditto. | |
7445 | (tree_linear_transform): Ditto. | |
7446 | (tree_ssa_loop_ivcanon): Ditto. | |
7447 | (tree_ssa_empty_loop): Ditto. | |
7448 | (tree_ssa_loop_bounds): Ditto. | |
7449 | (tree_complete_unroll): Ditto. | |
7450 | (tree_ssa_loop_prefetch): Ditto. | |
7451 | (tree_ssa_loop_ivopts): Ditto. | |
7452 | (tree_ssa_loop_done): Ditto. | |
a1d1988f MS |
7453 | * predict.c (tree_estimate_probability): Ditto. |
7454 | * recog.c (split_all_insns_noflow): Ditto. | |
c2924966 DB |
7455 | (rest_of_handle_peephole2): Ditto. |
7456 | (rest_of_handle_split_all_insns): Ditto. | |
a1d1988f MS |
7457 | * tree-eh.c (lower_eh_constructs): Ditto. |
7458 | * regmove.c (rest_of_handle_regmove): Ditto. | |
c2924966 | 7459 | (rest_of_handle_stack_adjustments): Ditto. |
a1d1988f MS |
7460 | * local-alloc.c (rest_of_handle_local_alloc): Ditto. |
7461 | * function.c (instantiate_virtual_regs): Ditto. | |
c2924966 DB |
7462 | (init_function_for_compilation): Ditto. |
7463 | (rest_of_handle_check_leaf_regs): Ditto. | |
a1d1988f | 7464 | * gcse.c (rest_of_handle_jump_bypass): Ditto. |
c2924966 | 7465 | (rest_of_handle_gcse): Ditto. |
a1d1988f MS |
7466 | * ipa-type-escape.c (type_escape_execute): Ditto. |
7467 | * alias.c (rest_of_handle_cfg): Ditto. | |
7468 | * tree-if-conv.c (main_tree_if_conversion): Ditto. | |
7469 | * profile.c (rest_of_handle_branch_prob): Ditto. | |
7470 | * tree-ssa-phiopt.c (tree_ssa_phiopt): Ditto. | |
7471 | * rtl-factoring.c (rest_of_rtl_seqabstr): Ditto. | |
7472 | * bt-load.c (rest_of_handle_branch_target_load_optimize): Ditto | |
7473 | * tree-dfa.c (find_referenced_vars): Ditto. | |
7474 | * except.c (set_nothrow_function_flags): Ditto. | |
c2924966 DB |
7475 | (convert_to_eh_region_ranges): Ditto. |
7476 | (rest_of_handle_eh): Ditto. | |
a1d1988f | 7477 | * emit-rtl.c (unshare_all_rtl): Ditto. |
c2924966 | 7478 | (remove_unnecessary_notes): Ditto. |
a1d1988f | 7479 | * except.h (set_nothrow_function_flags): Ditto. |
c2924966 | 7480 | (convert_to_eh_region_ranges): Ditto. |
a1d1988f MS |
7481 | * cfgexpand.c (tree_expand_cfg): Ditto. |
7482 | * tree-cfgcleanup.c (merge_phi_nodes): Ditto. | |
7483 | * tree-ssa-pre.c (do_pre): Ditto. | |
c2924966 | 7484 | (execute_fre): Ditto. |
a1d1988f | 7485 | * cfgcleanup.c (rest_of_handle_jump): Ditto. |
c2924966 | 7486 | (rest_of_handle_jump2): Ditto. |
a1d1988f MS |
7487 | * tree-sra.c (tree_sra): Ditto. |
7488 | * tree-mudflap.c (execute_mudflap_function_ops): Ditto. | |
c2924966 | 7489 | (execute_mudflap_function_decls): Ditto. |
a1d1988f | 7490 | * tree-ssa-copy.c (do_copy_prop): Ditto. |
c2924966 | 7491 | (do_store_copy_prop): Ditto. |
a1d1988f MS |
7492 | * ipa-prop.h (ipcp_driver): Ditto. |
7493 | * cfglayout.c (insn_locators_initialize): Ditto. | |
7494 | * tree-ssa-forwprop.c | |
c2924966 | 7495 | (tree_ssa_forward_propagate_single_use_vars): Ditto. |
a1d1988f MS |
7496 | * cfglayout.h (insn_locators_initialize): Ditto. |
7497 | * tree-ssa-dce.c (tree_ssa_dce): Ditto. | |
7498 | * tree-ssa.c (execute_early_warn_uninitialized): Ditto. | |
c2924966 | 7499 | (execute_late_warn_uninitialized): Ditto. |
a1d1988f | 7500 | * rtl.h (cleanup_barriers): Ditto. |
c2924966 DB |
7501 | (split_all_insns_noflow): Ditto. |
7502 | (purge_line_number_notes): Ditto. | |
7503 | (unshare_all_rtl): Ditto. | |
7504 | (remove_unnecessary_notes): Ditto. | |
7505 | (recompute_reg_usage): Ditto. | |
7506 | (variable_tracking_main): Ditto. | |
a1d1988f MS |
7507 | * integrate.c (emit_initial_value_sets): Ditto. |
7508 | * integrate.h (emit_initial_value_sets): Ditto. | |
7509 | * tree-optimize.c (execute_free_datastructures): Ditto | |
c2924966 DB |
7510 | (execute_free_cfg_annotations): Ditto. |
7511 | (execute_fixup_cfg): Ditto. | |
7512 | (execute_cleanup_cfg_pre_ipa): Ditto. | |
7513 | (execute_cleanup_cfg_post_optimizing): Ditto. | |
7514 | (execute_init_datastructures): Ditto. | |
a1d1988f MS |
7515 | * tree-object-size.c (compute_object_sizes): Ditto. |
7516 | * combine.c (rest_of_handle_combine): Ditto. | |
7517 | * tree-outof-ssa.c (rewrite_out_of_ssa): Ditto. | |
7518 | * bb-reorder.c (duplicate_computed_gotos): Ditto. | |
c2924966 DB |
7519 | (rest_of_handle_reorder_blocks): Ditto. |
7520 | (rest_of_handle_partition_blocks): Ditto. | |
a1d1988f MS |
7521 | * var-tracking.c (variable_tracking_main): Ditto. |
7522 | * tree-profile.c (tree_profiling): Ditto. | |
7523 | * tree-vect-generic.c (expand_vector_operations): Ditto. | |
7524 | * reg-stack.c (rest_of_handle_stack_regs): Ditto. | |
7525 | * sched-rgn.c (rest_of_handle_sched): Ditto. | |
c2924966 | 7526 | (rest_of_handle_sched2): Ditto. |
a1d1988f MS |
7527 | * basic-block.h (free_bb_insn): Ditto. |
7528 | * tree-ssa-structalias.c (ipa_pta_execute): Ditto. | |
7529 | * tree-cfg.c (execute_build_cfg): Ditto. | |
c2924966 DB |
7530 | (remove_useless_stmts): Ditto. |
7531 | (split_critical_edges): Ditto. | |
7532 | (execute_warn_function_return): Ditto. | |
7533 | (execute_warn_function_noreturn): Ditto. | |
a1d1988f MS |
7534 | * tree-ssa-reassoc.c (execute_reassoc): Ditto. |
7535 | * cfgrtl.c (free_bb_for_insn): Ditto. | |
7536 | * passes.c (execute_one_pass): Run additional | |
c2924966 | 7537 | todos returned by execute function. |
a1d1988f | 7538 | * tree-pass.h (struct tree_opt_pass): Make execute |
c2924966 DB |
7539 | return a value. |
7540 | ||
62c577fd RG |
7541 | 2006-03-02 Richard Guenther <rguenther@suse.de> |
7542 | ||
7543 | * tree-ssa-alias.c (find_used_portions): Consider taking | |
7544 | the address as making the variable not write-only. | |
7545 | ||
c5dde55b NC |
7546 | 2006-03-02 Nick Clifton <nickc@redhat.com> |
7547 | ||
7548 | * config.gcc (default_use_cxa_atexit): Extend the description of | |
7549 | this configure variable. Set its default value to "yes" for | |
7550 | Linux, NetBSD and ELF targets on the assumption that they will | |
7551 | use C libraries with the __cxa_atexit function. | |
7552 | ||
75334508 BE |
7553 | 2006-03-02 Ben Elliston <bje@au.ibm.com> |
7554 | ||
7555 | * config/rs6000/linux-unwind.h (frob_update_context): Mark `fs' | |
7556 | parameter as unused to suppress a build warning. | |
7557 | ||
16c44183 BE |
7558 | 2006-03-02 Ben Elliston <bje@au.ibm.com> |
7559 | ||
7560 | * mklibgcc.in: Depend on config/dfp-bit.h in rules that compile | |
7561 | config/dfp-bit.c. | |
7562 | ||
a11dd268 RS |
7563 | 2006-03-01 Roger Sayle <roger@eyesopen.com> |
7564 | ||
7565 | PR other/26489 | |
7566 | * gthr-posix.h (__gthrw2): Define to take three parameters, the | |
7567 | declared name, the weak reference name, and the typeof name. | |
7568 | (__gthrw): Avoid expanding the declared name suffix. | |
7569 | (__gthrw3): New Tru64 specific macro to simplify the OSF/1 decls. | |
7570 | ||
d213accd JJ |
7571 | 2006-03-01 Jakub Jelinek <jakub@redhat.com> |
7572 | ||
7573 | * dwarf2.h (DW_TAG_condition, DW_TAG_shared_type): New constants | |
7574 | from DWARF 3. | |
7575 | (DW_AT_description, DW_AT_binary_scale, DW_AT_decimal_scale, | |
7576 | DW_AT_small, DW_AT_decimal_sign, DW_AT_digit_count, | |
7577 | DW_AT_picture_string, DW_AT_mutable, DW_AT_threads_scaled, | |
7578 | DW_AT_explicit, DW_AT_object_pointer, DW_AT_endianity, | |
7579 | DW_AT_elemental, DW_AT_pure, DW_AT_recursive): New. | |
7580 | (DW_OP_form_tls_address, DW_OP_call_frame_cfa, DW_OP_bit_piece): New. | |
7581 | (DW_ATE_packed_decimal, DW_ATE_numeric_string, DW_ATE_edited, | |
7582 | DW_ATE_signed_fixed, DW_ATE_unsigned_fixed): New. | |
7583 | (DW_DS_unsigned, DW_DS_leading_overpunch, DW_DS_trailing_overpunch, | |
7584 | DW_DS_leading_separate, DW_DS_trailing_separate): New. | |
7585 | (DW_END_default, DW_END_big, DW_END_little): New. | |
7586 | (DW_END_lo_user, DW_END_hi_user): Define. | |
7587 | (DW_LNE_lo_user, DW_LNE_hi_user): Define. | |
7588 | (DW_CFA_val_offset, DW_CFA_val_offset_sf, DW_CFA_val_expression): New. | |
7589 | (DW_LANG_PLI, DW_LANG_ObjC, DW_LANG_ObjC_plus_plus, DW_LANG_UPC, | |
7590 | DW_LANG_D): New. | |
7591 | ||
18cd8a03 DN |
7592 | 2006-03-01 Diego Novillo <dnovillo@redhat.com> |
7593 | ||
7594 | * tree.def (SYMBOL_MEMORY_TAG): Rename from TYPE_MEMORY_TAG. | |
7595 | Update all users. | |
7596 | * tree-pass.h (PROP_smt_usage): Rename from PROP_tmt_usage. | |
7597 | Update all users. | |
7598 | (TODO_update_smt_usage): Rename from TODO_update_tmt_usage. | |
7599 | Update all users. | |
7600 | * tree.h (SMT_USED_ALONE): Rename from TMT_USED_ALONE. | |
7601 | Update all users. | |
7602 | * tree-flow.h (struct var_ann_d): Rename field 'type_mem_tag' | |
7603 | to 'symbol_mem_tag'. | |
7604 | Update all users. | |
7605 | * doc/tree-ssa.texi: Update documentation to reflect TMT->SMT | |
7606 | rename. | |
7607 | ||
8acb1b3d RS |
7608 | 2006-03-01 Roger Sayle <roger@eyesopen.com> |
7609 | ||
7610 | * builtins.c (fold_builtin_copysign): Delete unreachable code. | |
7611 | ||
c446d1a7 AP |
7612 | 2006-03-01 Andrew Pinski <pinskia@physics.uc.edu> |
7613 | ||
7614 | PR target/25761 | |
7615 | * config/darwin.h (MACHOPIC_JUST_INDIRECT): Check just | |
7616 | MACHO_DYNAMIC_NO_PIC_P. | |
7617 | (MACHOPIC_PURE): Check flag_pic and not MACHO_DYNAMIC_NO_PIC_P. | |
7618 | ||
ab0ff804 AP |
7619 | 2006-03-01 Andrew Pinski <pinskia@physics.uc.edu> |
7620 | ||
7621 | PR target/26389 | |
7622 | * config/darwin-protos.h (darwin_asm_output_anchor): | |
7623 | Declare. | |
7624 | * config/darwin-sections.def (cstring_section): | |
7625 | Add SECTION_MERGE to the flags. | |
7626 | (literal4_section): Likewise. | |
7627 | (literal8_section): Likewise. | |
7628 | (objc_selector_refs_section): Likewise. | |
7629 | (objc_cls_refs_section): Likewise. | |
7630 | * config/darwin.c (darwin_asm_output_anchor): New | |
7631 | function. | |
7632 | * config/darwin.h (TARGET_ASM_OUTPUT_ANCHOR): Define. | |
7633 | ||
607f460c | 7634 | 2006-03-01 Daniel Berlin <dberlin@dberlin.org> |
18cd8a03 | 7635 | |
607f460c DB |
7636 | Fix PR tree-optimization/26443 |
7637 | * tree-vrp.c (pass_vrp): Add TODO_update_tmt_usage | |
7638 | to todo and PROP_tmt_usage to properties_destroyed. | |
7639 | * tree-ssa-ccp.c (pass_ccp): Ditto. | |
7640 | (pass_store_ccp): Ditto. | |
7641 | * tree-ssa-dom.c (pass_dominator): Ditto. | |
7642 | ||
02075bb2 DN |
7643 | 2006-03-01 Diego Novillo <dnovillo@redhat.com> |
7644 | ||
7645 | * tree-ssa-operands.c: Cleanup whitespace. | |
7646 | (get_asm_expr_operands): Move before first invocation. | |
7647 | (get_indirect_ref_operands): Likewise. | |
7648 | (get_tmr_operands): Likewise. | |
7649 | (get_call_expr_operands): Likewise. | |
7650 | (append_def): Likewise. | |
7651 | (append_use): Likewise. | |
7652 | (append_v_may_def): Likewise. | |
7653 | (append_v_must_def): Likewise. | |
7654 | (add_call_clobber_ops): Likewise. | |
7655 | (add_call_read_ops): Likewise. | |
7656 | (add_stmt_operand): Likewise. | |
7657 | (add_virtual_operand): Likewise. | |
7658 | (build_ssa_operands): Likewise. | |
7659 | ||
7660 | 2006-03-01 Andrew Pinski <pinskia@physics.uc.edu> | |
1809ff6b AP |
7661 | |
7662 | PR middle-end/26022 | |
7663 | Revert: | |
7664 | PR middle-end/24437 | |
7665 | * tree-ssa-ccp.c (fold_stmt): Move folding of OBJ_TYPE_REF | |
7666 | with a call expr to ... | |
7667 | * fold-const.c (fold_ternary) <case CALL_EXPR>: Here. | |
7668 | ||
6578c101 DN |
7669 | 2006-03-01 Diego Novillo <dnovillo@redhat.com> |
7670 | ||
7671 | * tree-vrp.c (extract_range_from_assert): Remove special | |
7672 | handling for types with super-types. | |
7673 | ||
0eafb3ec BE |
7674 | 2006-03-01 Ben Elliston <bje@au.ibm.com> |
7675 | ||
ec09c26e BE |
7676 | * config.gcc: Add t-dfprules to $tmake_file for powerpc-*-linux* |
7677 | and powerpc64-*-linux* configurations. | |
7678 | * config/t-dfprules: New file. | |
7679 | ||
0eafb3ec BE |
7680 | * mklibgcc.in: Add logic to handle $DFP_ENABLE and $DFP_CFLAGS. |
7681 | Compile dfp-bit.c from the source directory using -DWIDTH and | |
7682 | $DFP_CFLAGS to control the compilation of that file, rather than | |
7683 | generating width-specific versions in the build directory. | |
7684 | * Makefile.in (libgcc.mk): Pass down DFP_ENABLE and DFP_CFLAGS. | |
7685 | (LIBGCC_DEPS): Replace $(D32PBIT) et al with config/dfp-bit.[hc]. | |
7686 | ||
cccb0908 ZW |
7687 | 2006-02-28 Zack Weinberg <zackw@panix.com> |
7688 | ||
7689 | * doc/md.texi: Avoid use of @headitem so that makeinfo <4.7 | |
7690 | continues to work. | |
7691 | ||
31abac07 EC |
7692 | 2006-02-28 Eric Christopher <echristo@apple.com> |
7693 | ||
7694 | * config/rs6000/darwin.h (ENABLE_STACK_EXECUTE): Define. | |
7695 | Set up IN_LIBGCC definition of TARGET_64BIT. | |
7696 | * config/i386/darwin.h (ENABLE_STACK_EXECUTE): Define. | |
7697 | ||
c457fcec RS |
7698 | 2006-02-28 Roger Sayle <roger@eyesopen.com> |
7699 | ||
7700 | PR middle-end/14752 | |
7701 | * c-common.c (c_common_truthvalue_conversion) <MINUS_EXPR, | |
7702 | BIT_XOR_EXPR, BIT_AND_EXPR>: Delete. Let fold optimize these | |
7703 | cases via the construction of "expr != 0". | |
7704 | ||
63292ebf SB |
7705 | 2006-02-28 Steven Bosscher <stevenb.gcc@gmail.com> |
7706 | ||
7707 | * alias.c (alias_invariant, alias_invariant_size): Remove. | |
7708 | (record_base_value): Remove. | |
7709 | (memrefs_conflict_p): Don't look at alias_invariant. | |
7710 | (end_alias_analysis): Don't free it. | |
7711 | * alias.h (record_base_value): Remove prototype. | |
7712 | ||
d3b72690 PB |
7713 | 2006-02-28 Paolo Bonzini <bonzini@gnu.org> |
7714 | Adam Nemet <anemet@caviumnetworks.com> | |
7715 | ||
7716 | * rtl.h (truncated_to_mode): Declare it. | |
7717 | (struct rtl_hooks): Add reg_truncated_to_mode hook. | |
7718 | * rtlhooks-def.h (RTL_HOOKS_REG_TRUNCATED_TO_MODE): New macro. | |
7719 | (RTL_HOOKS_INITIALIZER): Include it. | |
7720 | * rtlhooks.c (reg_truncated_to_mode_general): New function. | |
7721 | * combine.c (RTL_HOOKS_REG_TRUNCATED_TO_MODE): Override to | |
7722 | reg_truncated_to_mode. | |
7723 | * rtlanal.c (truncated_to_mode): Define it. | |
7724 | * simplify-rtx.c (simplify_unary_operation_1): Use it. | |
7725 | ||
ea45681a JL |
7726 | 2006-02-28 Jeff Law <law@redhat.com> |
7727 | ||
e5c7f9f5 JL |
7728 | * tree-chrec.c (chrec_convert_aggressive): Do not eliminate |
7729 | conversions where TYPE_MIN_VALUE/TYPE_MAX_VALUE do not cover | |
7730 | the range allowed by TYPE_PRECISION. | |
7731 | ||
ea45681a JL |
7732 | * tree.h (strct phi_arg_d): Remove unused NONZERO field. |
7733 | ||
7ffe0f0d DN |
7734 | 2006-02-28 Dorit Nuzman <dorit@il.ibm.com> |
7735 | ||
7736 | PR tree-optimization/26419 | |
7737 | * doc/invoke.texi (ftree-vectorizer-verbose): Add information on | |
7738 | values of n. | |
7739 | ||
3fa1b0e5 ZW |
7740 | 2006-02-27 Zack Weinberg <zackw@panix.com> |
7741 | ||
7742 | * doc/md.texi: Fix typo in previous change. | |
7743 | ||
75743f02 KZ |
7744 | 2006-02-27 Kenneth Zadeck <zadeck@naturalbridge.com> |
7745 | ||
7746 | * df.c: Remove. | |
7747 | ||
f38840db ZW |
7748 | 2006-02-27 Zack Weinberg <zackw@panix.com> |
7749 | ||
7750 | * rtl.def (define_constraint, define_register_constraint) | |
7751 | (define_memory_constraint, define_address_constraint): New MD forms. | |
7752 | * gensupport.c (process_rtx): Put define_constraint etc on the | |
7753 | predicate queue. | |
7754 | * genpreds.c (process_define_predicate): Adjust comment. Validate | |
7755 | the name, and call validate_exp to validate the expression. | |
7756 | (mark_mode_tests, write_extract_subexp): Can assume correct input. | |
7757 | (write_predicate_expr): Likewise. NAME argument no longer necessary; | |
7758 | all callers changed. | |
7759 | (validate_exp, needs_variable, struct constraint_data) | |
7760 | (constraints_by_letter_table, first_constraint, last_constraint_ptr) | |
7761 | (FOR_ALL_CONSTRAINTS, generic_constraint_letters, const_int_constraints) | |
7762 | (const_dbl_constraints, constraint_max_namelen) | |
7763 | (have_register_constraints, have_memory_constraints) | |
7764 | (have_address_constraints, have_address_constraints) | |
7765 | (have_extra_constraints, have_const_int_constraints) | |
7766 | (have_const_dbl_constraints, mangle, add_constraint) | |
7767 | (process_define_constraint, process_define_register_constraint) | |
7768 | (write_enum_constraint_num, write_lookup_constraint) | |
7769 | (write_insn_constraint_len, write_regclass_for_constraint) | |
7770 | (write_constraint_satisfied_p, write_insn_const_int_ok_for_constraint) | |
7771 | (write_insn_extra_memory_constraint) | |
7772 | (write_insn_extra_address_constraint) | |
7773 | (write_satisfies_constraint_fns): New. | |
7774 | (write_tm_preds_h): If we have new-style constraint definitions, | |
7775 | prototype the functions generated from them, and define the | |
7776 | old constraint interface (still used by generic code) in terms of | |
7777 | those functions. | |
7778 | (write_insn_preds_c): If we have new-style constraint definitions, | |
7779 | generate all relevant functions from those definitions. | |
7780 | (main): Handle define_constraint etc. | |
7781 | * genoutput.c (struct constraint_data, indep_constraints) | |
7782 | (mdep_constraint_letters, constraints_by_letter_table, note_constraint) | |
7783 | (mdep_constraint_len): New data structures and functions, defined | |
7784 | #ifdef USE_MD_CONSTRAINTS. | |
7785 | (check_constraint_len): Don't define #ifdef USE_MD_CONSTRAINTS. | |
7786 | (validate_insn_alternatives): If USE_MD_CONSTRAINTS is defined, | |
7787 | use new logic to validate operand constraints against constraint | |
7788 | definitions. | |
7789 | (main): Process define_constraint etc. if USE_MD_CONSTRAINTS is | |
7790 | defined. | |
7791 | * defaults.h: If none of the old-style constraint macros are | |
7792 | defined, define USE_MD_CONSTRAINTS; do not provide defaults for any | |
7793 | old-style macros; and poison REG_CLASS_FROM_LETTER, | |
7794 | CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P, and | |
7795 | EXTRA_CONSTRAINT. | |
7796 | * recog.c (reg_fits_class_p): If cl is NO_REGS, return 0 immediately. | |
7797 | * doc/md.texi: Document new constraint-definition mechanism and the | |
7798 | C interface it provides. Remove references to old mechanism | |
7799 | elsewhere in the document. | |
7800 | (Machine Constraints): Use pathnames relative to gcc directory, | |
7801 | i.e. config/ARCH/FILE. Change i386 section to refer to | |
7802 | config/i386/predicates.md; update that section to match docstrings. | |
7803 | * doc/tm.texi: Move all documentation of the old constraint- | |
7804 | definition macros to their own section, clearly mark as obsolete. | |
7805 | ||
7806 | * config/i386/predicates.md (R, q, Q, l, a, b, c, d, S, D, A, f, t) | |
7807 | (u, y, x, Y, I, J, K, L, M, N, O, G, C, e, Z): New constraint | |
7808 | definitions. | |
7809 | * config/i386/i386.h (REG_CLASS_FROM_LETTER, CONST_OK_FOR_LETTER_P) | |
7810 | (CONST_DOUBLE_OK_FOR_LETTER_P, EXTRA_CONSTRAINT): Delete. | |
7811 | * config/i386/i386.md (*movdf_nointeger): Remove stray 'H' from | |
7812 | constraint strings. | |
7813 | (splits and peepholes): Use satisfies_constraint_*. | |
7814 | * config/i386/i386.c (memory_address_length) | |
7815 | (ix86_attr_length_immediate_default): Use satisfies_constraint_*. | |
7816 | ||
e3e868f6 DB |
7817 | 2006-02-27 Daniel Berlin <dberlin@dberlin.org> |
7818 | ||
7819 | * lambda-code.c (can_convert_to_perfect_nest): Allow any type of | |
7820 | scalar operation to be put back into the loop. | |
7821 | ||
754e45a8 JJ |
7822 | 2006-02-27 Jakub Jelinek <jakub@redhat.com> |
7823 | ||
7824 | PR other/26208 | |
7825 | * unwind-dw2.c (struct _Unwind_Context): Add signal_frame field. | |
7826 | (extract_cie_info): Handle S flag in augmentation string. | |
7827 | (execute_cfa_program): If context->signal_frame, execute also | |
7828 | fs->pc == context->ra instructions. | |
7829 | (uw_frame_state_for): If context->signal_frame, don't subtract one | |
7830 | from context->ra to find FDE. | |
7831 | (uw_update_context_1): Set context->signal_frame to | |
7832 | fs->signal_frame. | |
7833 | (_Unwind_GetIPInfo): New function. | |
7834 | * unwind-dw2.h (_Unwind_FrameState): Add signal_frame field. | |
7835 | * unwind-c.c (PERSONALITY_FUNCTION): Use _Unwind_GetIPInfo instead | |
7836 | of _Unwind_GetIP. | |
7837 | * unwind-sjlj.c (_Unwind_GetIPInfo): New function. | |
7838 | * unwind-generic.h (_Unwind_GetIPInfo): New prototype. | |
7839 | * unwind-compat.c (_Unwind_GetIPInfo): New function. | |
7840 | * libgcc-std.ver (_Unwind_GetIPInfo): Export @@GCC_4.2.0. | |
7841 | * config/ia64/unwind-ia64.c (_Unwind_GetIPInfo): New function. | |
7842 | * config/arm/unwind-arm.h (_Unwind_GetIPInfo): Define. | |
7843 | * config/i386/linux-unwind.h (x86_fallback_frame_state, | |
7844 | x86_64_fallback_frame_state): Set fs->signal_frame. | |
7845 | * config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Likewise. | |
7846 | (MD_FROB_UPDATE_CONTEXT): Define unconditionally. | |
7847 | (frob_update_context): Likewise. Workaround missing S flag in | |
7848 | Linux 2.6.12 - 2.6.16 kernel vDSOs. | |
7849 | * config/s390/linux-unwind.h (s390_fallback_frame_state): Likewise. | |
7850 | Remove the psw_addr + 1 hack. | |
7851 | ||
6df11ca1 DB |
7852 | 2006-02-27 Daniel Berlin <dberlin@dberlin.org> |
7853 | ||
7854 | * tree-ssa-structalias.c (get_constraint_for): Move code to deal | |
7855 | with aggregates here. | |
7856 | (find_func_aliases): Remove code for &<aggregate> from here. | |
7857 | ||
5881ad5d RS |
7858 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
7859 | ||
e8366202 | 7860 | * fold-const.c (fold_binary) <EQ_EXPR>: Fold (~X & C) eq/ne 0 as |
5881ad5d RS |
7861 | (X & C) ne/eq 0, where C is a single bit, i.e. a power of two. |
7862 | Fold both "((X & C) ^ C) eq/ne 0" and "((X ^ C) & C) eq/ne 0" | |
7863 | as (X & C) ne/eq 0. | |
7864 | ||
53f1b560 RS |
7865 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
7866 | ||
7867 | PR middle-end/19983 | |
7868 | * real.c (real_nan): Allow both 0x and 0X as hexadecimal prefixes. | |
7869 | ||
efa1cdf0 ZD |
7870 | 2006-02-26 Zdenek Dvorak <dvorakz@suse.cz> |
7871 | ||
7872 | * opts.c (decode_options): Do not handle flag_strength_reduce. | |
7873 | (common_handle_option): Handle OPT_floop_optimize, OPT_frerun_loop_opt | |
7874 | and OPT_fstrength_reduce. | |
7875 | * tree-ssa-loop.c (tree_ssa_loop_prefetch): Only test | |
7876 | flag_prefetch_loop_arrays for being nonzero. | |
7877 | * common.opt (floop-optimize, frerun-loop-opt): Resurrected as | |
7878 | no-ops. | |
7879 | (fprefetch-loop-arrays-rtl): Removed. | |
7880 | (flag_prefetch_loop_arrays): Do not specify the value. | |
7881 | ||
7882 | * doc/passes.texi: Update documentation of loop optimizer | |
7883 | passes. | |
7884 | * doc/invoke.texi (-fstrength-reduce, -fprefetch-loop-arrays-rtl, | |
7885 | -frerun-loop-opt): Remove. | |
7886 | ||
651402f1 RG |
7887 | 2006-02-26 Richard Guenther <rguenther@suse.de> |
7888 | ||
7889 | PR tree-optimization/26421 | |
7890 | * tree-ssa-alias.c (find_used_portions): Don't treat parameters | |
7891 | in function calls that are ADDR_EXPRs as using the whole structure. | |
7892 | ||
37818e7c SB |
7893 | 2006-02-26 Steven Bosscher <stevenb.gcc@gmail.com> |
7894 | ||
7895 | * common.opt (-floop-optimize, -frerun-loop-opt): Remove. | |
7896 | * tree-pass.h (pass_loop_optimize): Remove. | |
7897 | * passes.c (pass_loop_optimize): Never run it. | |
7898 | * toplev.c (backend_init): Don't call init_loop. | |
7899 | * opts.c (flag_loop_optimize_set): Remove. | |
7900 | (decode_options): Never set flag_loop_optimize or flag_rerun_loop_opt. | |
7901 | (common_handle_option) <OPT_floop_optimize>: Remove. Don't disable | |
7902 | the old RTL loop optimizer when profiling enabled. | |
7903 | * predict.c (tree_estimate_probability): Always strip builtin_expect. | |
7904 | * cfgcleanup.c (try_forward_edges): Don't avoid killing loop | |
7905 | pre-headers for the sake of the old RTL loop optimizer. | |
7906 | * Makefile.in: Remove all references to loop.o. | |
7907 | ||
7908 | * doc/invoke.texi: Remove all references to -floop-optimize | |
7909 | and -frerun-loop-opt. | |
7910 | ||
74fe790b ZW |
7911 | 2006-02-26 Zack Weinberg <zackw@panix.com> |
7912 | ||
7913 | * doc/md.texi (Machine Constraints): Refer to all files with paths | |
7914 | relative to gcc directory (i.e. config/CPU/file). Add missing | |
7915 | @table @code ... @end table to M32C subsection. | |
7916 | ||
cef65eaa RS |
7917 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
7918 | ||
7919 | * fold-const.c (fold_binary) <BIT_XOR_EXPR>: Fold (X & 1) ^ 1 as | |
7920 | (X & 1) == 0. | |
7921 | <BIT_AND_EXPR>: Fold (X ^ 1) & 1 and ~X & 1 as (X & 1) == 0. | |
7922 | ||
a861485c RS |
7923 | 2006-02-26 Roger Sayle <roger@eyesopen.com> |
7924 | James A. Morrison <phython@gcc.gnu.org> | |
7925 | ||
7926 | PR middle-end/21137 | |
e8366202 | 7927 | * fold-const.c (fold_binary) <EQ_EXPR>: Fold ((X>>C1)&C2) eq/ne 0, |
a861485c RS |
7928 | when C2 is a power of two, as either (X&(C2<<C1)) eq/ne 0 if the |
7929 | new constant C2<<C1, or as (X<0) or (X,false) depending upon the | |
7930 | signedness of the shift operation. | |
7931 | ||
afa38a95 DN |
7932 | 2006-02-26 Dorit Nuzman <dorit@il.ibm.com> |
7933 | ||
7934 | PR tree-optimization/26359 | |
7935 | * tree-ssa-alias.c (new_type_alias): Set fields for new tag. | |
7936 | ||
5484a3c3 RS |
7937 | 2006-02-25 Roger Sayle <roger@eyesopen.com> |
7938 | ||
e8366202 | 7939 | * simplify-rtx.c (simplify_relational_operation_1): Simplify |
5484a3c3 RS |
7940 | (X^Y) == 0 as X == Y and (X^Y) != 0 as X != Y. Simplify (X^Y) == Y |
7941 | as X == 0, and some symmetry related transformations. | |
7942 | Simplify (X^C1) == C2 as X == (C1^C2). Split long comment line. | |
7943 | ||
eb8dffe0 RS |
7944 | 2006-02-25 Roger Sayle <roger@eyesopen.com> |
7945 | ||
7946 | PR middle-end/23673 | |
e8366202 | 7947 | * fold-const.c (fold_binary) <EQ_EXPR>: Fold (X^Y) == 0 as X == Y |
eb8dffe0 RS |
7948 | and (X^Y) != 0 as X != Y. Fold (X^Y) == Y as X == 0, and some |
7949 | symmetry related transformations. Fold (X^C1) == C2 as | |
7950 | X == (C1^C2). | |
7951 | ||
332cf1b3 JW |
7952 | 2006-02-25 Juergen Weigert <jw@suse.de> |
7953 | Richard Guenther <rguenther@suse.de> | |
7954 | ||
7955 | * scan-decls.c (scan_decls): Don't fetch new statement after CPP_EOF. | |
7956 | ||
a4876725 AN |
7957 | 2006-02-24 Adam Nemet <anemet@caviumnetworks.com> |
7958 | ||
7959 | * combine.c (gen_lowpart_or_truncate): Call | |
7960 | simplify_gen_unary(TRUNCATE, ...) instead of gen_rtx_TRUNCATE. | |
7961 | ||
8d669cbd DN |
7962 | 2006-02-24 Diego Novillo <dnovillo@redhat.com> |
7963 | ||
7964 | * doc/invoke.texi: Move -fopenmp description to "Options for | |
7965 | Code Generation". | |
7966 | Remove reference to -lgomp. | |
7967 | ||
f44a5ab6 DE |
7968 | 2006-02-24 David Edelsohn <edelsohn@gnu.org> |
7969 | ||
7970 | * doc/install.texi: Require GNU tar version 1.14. | |
7971 | ||
c7b5e395 GK |
7972 | 2006-02-24 Geoffrey Keating <geoffk@apple.com> |
7973 | ||
7974 | * doc/tm.texi (Run-time Target): Document C_COMMON_OVERRIDE_OPTIONS. | |
74fe790b | 7975 | * doc/invoke.texi (C++ Dialect Options): Document |
c7b5e395 GK |
7976 | -fno-use-cxa-get-exception-ptr. |
7977 | * configure.ac: Define DEFAULT_USE_CXA_ATEXIT to 2 not 1. | |
7978 | * configure: Regenerate. | |
7979 | * c.opt (fuse-cxa-get-exception-ptr): New. | |
7980 | * c-opts.c (c_common_handle_option): Handle | |
7981 | OPT_fuse_cxa_get_exception_ptr. | |
7982 | * c-common.c (flag_use_cxa_atexit): Update documentation. | |
7983 | (flag_use_cxa_get_exception_ptr): New. | |
7984 | * c-common.h (flag_use_cxa_get_exception_ptr): New. | |
7985 | * config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Improve | |
7986 | documentation. | |
7987 | (C_COMMON_OVERRIDE_OPTIONS): New. | |
7988 | ||
676cb929 RS |
7989 | 2006-02-24 Roger Sayle <roger@eyesopen.com> |
7990 | ||
7991 | PR middle-end/24952 | |
7992 | * combine.c (try_combine): Explicitly check whether GET_CODE is | |
7993 | a SET or a CLOBBER, instead on checking that it isn't a USE. | |
7994 | ||
e26ec0bb RS |
7995 | 2006-02-24 Roger Sayle <roger@eyesopen.com> |
7996 | ||
7997 | * fold-const.c (fold_comparison): New subroutine of fold_binary | |
7998 | containing transformations common to both the equality and | |
7999 | ordering relational operators, factored out of fold_binary. | |
8000 | (fold_binary): Separate out the equality operators (EQ_EXPR | |
8001 | and NE_EXPR) from the ordering operators (LT_EXPR, GT_EXPR, | |
8002 | LE_EXPR and GE_EXPR), calling fold_comparison to perform the | |
8003 | transformations common to both. | |
74fe790b | 8004 | (fold_div_compare): Fix latent bugs in the previously unreachable |
e26ec0bb RS |
8005 | LT_EXPR and GE_EXPR cases. |
8006 | ||
69ca3549 DE |
8007 | 2006-02-24 David Edelsohn <edelsohn@gnu.org> |
8008 | ||
8009 | * config/rs6000/rs6000.c (rs6000_init_builtins): Change | |
8010 | decl libname for clog to __clog on AIX. | |
8011 | ||
8012 | * config/rs6000/xcoff.h (MAX_OFILE_ALIGNMENT): Define. | |
8013 | ||
8097c268 AM |
8014 | 2006-02-24 Alan Modra <amodra@bigpond.net.au> |
8015 | ||
8016 | PR target/26453 | |
8017 | * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Don't | |
8018 | output traceback table for thunks. Localise rs6000_stack_info call. | |
8019 | ||
efbbbb61 RS |
8020 | 2006-02-23 Roger Sayle <roger@eyesopen.com> |
8021 | Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> | |
8022 | ||
8023 | * gthr-posix.h (__gthrw): Fix typo in comment. | |
8024 | ||
8025 | 2006-02-23 Geoffrey Keating <geoffk@apple.com> | |
c1e12409 GK |
8026 | |
8027 | * doc/cpp.texi (Character sets): Document that we do support | |
8028 | input files to be in any character set. | |
8029 | ||
e260a614 JL |
8030 | 2006-02-23 Jeff Law <law@redhat.com> |
8031 | ||
357e7a82 JL |
8032 | * tree.h (PHI_ARG_NONZERO): Remove. |
8033 | * tree-phinodes.c (add_phi_arg): No longer initialize PHI_ARG_NONZERO. | |
8034 | (remove_phi_arg_num): No longer copy PHI_ARG_NONZERO from the old | |
8035 | node to the new node. | |
8036 | ||
e260a614 JL |
8037 | PR tree-optimization/26425 |
8038 | * tree-vrp.c (vrp_visit_assignment): If the LHS's type has a NULL | |
8039 | min/max, then assume its varying. | |
8040 | ||
e755fcf5 ZD |
8041 | 2006-02-23 Zdenek Dvorak <dvorakz@suse.cz> |
8042 | ||
8043 | PR rtl-optimization/26316 | |
8044 | * rtlanal.c (enum may_trap_p_flags): New. | |
8045 | (may_trap_p_1): Take flags instead of unaligned_mems argument. Ignore | |
8046 | MEM_NOTRAP_P if flags & MTP_AFTER_MOVE. | |
8047 | (may_trap_p, may_trap_or_fault_p): Pass flags to may_trap_p_1. | |
8048 | (may_trap_after_code_motion_p): New function. | |
8049 | * loop-invariant.c (find_identical_invariants): Fix dump formating. | |
8050 | (find_invariant_insn): Use may_trap_after_code_motion_p. | |
8051 | * rtl.h (may_trap_after_code_motion_p): Declare. | |
8052 | ||
65acccdd ZD |
8053 | 2006-02-23 Zdenek Dvorak <dvorakz@suse.cz> |
8054 | ||
8055 | * emit-rtl.c (immed_double_const): Cleanup. | |
8056 | ||
4b0e7346 | 8057 | 2006-02-23 Daniel Berlin <dberlin@dberlin.org> |
74fe790b | 8058 | |
4b0e7346 | 8059 | Fix PR tree-optimization/26376 |
e8366202 | 8060 | * tree-ssa-structalias.c (find_func_aliases): Use get_id_for_tree, |
4b0e7346 DB |
8061 | remove assert. |
8062 | ||
a5c8d67f JJ |
8063 | 2006-02-23 Jakub Jelinek <jakub@redhat.com> |
8064 | ||
8065 | PR middle-end/26412 | |
8066 | * gimplify.c (omp_add_variable): Guard variable size decl test with | |
8067 | DECL_SIZE (decl) check. | |
8068 | ||
98b2060a RG |
8069 | 2006-02-23 Richard Guenther <rguenther@suse.de> |
8070 | ||
8071 | PR middle-end/26439 | |
8072 | * tree-ssa-structalias.c (find_func_aliases): Handle complex types | |
8073 | like aggregate types. | |
8074 | ||
ed965309 JJ |
8075 | 2006-02-23 Jakub Jelinek <jakub@redhat.com> |
8076 | ||
8077 | * configure.ac: Add --with{,out}-long-double-128 configure option. | |
8078 | (TARGET_DEFAULT_LONG_DOUBLE_128): New test. | |
8079 | * configure: Rebuilt. | |
8080 | * config.in: Rebuilt. | |
8081 | * doc/install.texi (Options specification): Document | |
8082 | --with-long-double-128. | |
8083 | ||
8084 | * config/rs6000/linux.h [TARGET_DEFAULT_LONG_DOUBLE_128] | |
8085 | (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128. | |
8086 | * config/rs6000/linux64.h [TARGET_DEFAULT_LONG_DOUBLE_128] | |
8087 | (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define to 128. | |
8088 | ||
8089 | 2006-02-23 Aldy Hernandez <aldyh@redhat.com> | |
8090 | ||
8091 | * config/s390/s390.c (override_options): Handle | |
8092 | TARGET_DEFAULT_LONG_DOUBLE_128. | |
8093 | ||
8094 | * config/alpha/alpha.c (override_options): Handle | |
8095 | TARGET_DEFAULT_LONG_DOUBLE_128. | |
8096 | ||
8097 | * config/sparc/sparc.c (sparc_override_options): Handle | |
8098 | TARGET_DEFAULT_LONG_DOUBLE_128. | |
8099 | ||
9fb03bd8 DJ |
8100 | 2006-02-22 Daniel Jacobowitz <dan@codesourcery.com> |
8101 | ||
8102 | * Makefile.in (stmp-fixinc): Use real-$(INSTALL_HEADERS_DIR). | |
8103 | (real-install-headers-tar, real-install-headers-cpio) | |
8104 | (real-install-headers-cp): New targets. | |
8105 | ||
e8dad6f0 RS |
8106 | 2006-02-22 Richard Sandiford <richard@codesourcery.com> |
8107 | ||
8108 | * tree.h (variable_section): Delete. | |
8109 | * varasm.c (variable_section): Delete. | |
8110 | ||
d7f755c3 PB |
8111 | 2006-02-22 Paolo Bonzini <bonzini@gnu.org> |
8112 | ||
8113 | * install.texi: Add notes on install.texi2html. | |
8114 | (Building in parallel): Do not use footnotes. | |
8115 | ||
4fe7a8bc AH |
8116 | 2006-02-21 Aldy Hernandez <aldyh@redhat.com> |
8117 | ||
8118 | PR libgomp/26234 | |
8119 | * doc/install.texi (Configuration): Document --disable-libgomp. | |
8120 | ||
6070e8e5 GK |
8121 | 2006-02-21 Geoffrey Keating <geoffk@apple.com> |
8122 | ||
8123 | * config/i386/darwin.h (DWARF2_FRAME_REG_OUT): New. | |
8124 | ||
f8770111 AO |
8125 | 2006-02-21 Alexandre Oliva <aoliva@redhat.com> |
8126 | ||
8127 | * config/i386/sse.md (vec_extractv2df_1_sse): New. | |
8128 | (vec_extractv2df_0_sse): New. | |
8129 | ||
35d177a2 AO |
8130 | 2006-02-21 Alexandre Oliva <aoliva@redhat.com> |
8131 | ||
8132 | * defaults.h (CFA_FRAME_BASE_OFFSET): Define. | |
8133 | * config/ia64/ia64.h (CFA_FRAME_BASE_OFFSET): Override. | |
8134 | * doc/tm.texi (CFA_FRAME_BASE_OFFSET): Document. | |
8135 | * dwarf2out.c (build_cfa_loc): New offset parameter. Add it | |
8136 | to the result of the expression. | |
8137 | (def_cfa_1): Adjust. | |
8138 | (frame_pointer_cfa_offset): Rename to... | |
8139 | (frame_pointer_fb_offset): ... this. Adjust all uses. | |
8140 | (convert_cfa_to_loc_list): Rename to... | |
8141 | (convert_cfa_to_fb_loc_list): ... this. New offset parameter. | |
8142 | Pass it on to build_cfa_loc. | |
8143 | (compute_frame_pointer_to_cfa_displacement): Rename to... | |
8144 | (compute_frame_pointer_to_fb_displacement): ... this. New | |
8145 | offset parameter. Use it in computation. | |
8146 | (gen_subprogram_die): Compute cfa_fb_offset with the new | |
8147 | macro, and use it to compute the fb loc list and the | |
8148 | displacement. | |
8149 | ||
4729dc92 BS |
8150 | 2006-02-21 Bernd Schmidt <bernd.schmidt@analog.com> |
8151 | ||
8152 | * config/bfin/predicates.md (cc_operand): Delete predicate. All uses | |
8153 | replaced with register_operand. | |
8154 | * config/bfin/bfin.c (bfin_register_move_cost): Moving CC to any | |
8155 | non-DREG is expensive. | |
8156 | * config/bfin/bfin.h (FIXED_REGISTERS): CC isn't fixed. | |
8157 | * config/bfin/bfin.md (movbi): Fix constraints and template for moves | |
8158 | involving memory. | |
8159 | ||
520bc8a2 JM |
8160 | 2006-02-21 Joseph S. Myers <joseph@codesourcery.com> |
8161 | ||
8162 | * doc/install.texi2html: Use set -e. | |
8163 | ||
f5e605e5 RS |
8164 | 2006-02-21 Richard Sandiford <richard@codesourcery.com> |
8165 | ||
8166 | * doc/tm.texi (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS) | |
8167 | (ASM_OUTPUT_SHARED_LOCAL): Delete. | |
8168 | * doc/invoke.texi (-fshared-data): Delete. | |
8169 | * common.opt (fshared-data): Delete. | |
8170 | * varasm.c (asm_emit_uninitialised): Remove flag_shared_data handling. | |
8171 | (assemble_static_space): Remove #if 0 code. | |
8172 | * system.h (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS) | |
8173 | (ASM_OUTPUT_SHARED_LOCAL): Poison. | |
8174 | * config/cris/cris.h: Remove FIXME. | |
8175 | ||
880b9e7b PB |
8176 | 2006-02-21 Paolo Bonzini <bonzini@gnu.org> |
8177 | ||
8178 | * doc/sourcebuild.texi (Front End Directory): No more double-colon | |
8179 | hooks. | |
8180 | ||
5a9e432d JJ |
8181 | 2006-02-21 Jakub Jelinek <jakub@redhat.com> |
8182 | ||
8183 | PR middle-end/26379 | |
8184 | * combine.c (simplify_shift_const_1): Disable nested shifts | |
8185 | optimization for vector shifts. | |
8186 | ||
c1a70a3c RS |
8187 | 2006-02-20 Roger Sayle <roger@eyesopen.com> |
8188 | ||
8189 | PR tree-optimization/26361 | |
8190 | * tree-vrp.c (extract_range_from_unary_expr): Handle NEGATE_EXPR | |
8191 | of unsigned integer types. | |
8192 | ||
0ff4040e SP |
8193 | 2006-02-20 Sebastian Pop <pop@cri.ensmp.fr> |
8194 | ||
8195 | * tree-chrec.c (eq_evolutions_p): New. | |
8196 | * tree-chrec.h (eq_evolutions_p): Declared. | |
8197 | * tree-data-ref.c: Fix formatting. | |
8198 | (datadep_stats, dependence_stats): New. | |
8199 | (gcd): Moved... | |
8200 | (print_direction_vector): New. | |
8201 | (dump_data_dependence_relation): Use print_direction_vector. | |
8202 | (object_analysis, create_data_ref): Handle COMPONENT_REF. | |
8203 | (compute_subscript_distance): Static. | |
8204 | (initialize_data_dependence_relation): Static. Get the number | |
8205 | of loops surrounding the references from the callers, and initialize | |
8206 | DDR_SIZE_VECT to nb_loops. Use both base_addr_differ_p and | |
8207 | base_object_differ_p analyzers. | |
74fe790b | 8208 | (analyze_ziv_subscript, analyze_siv_subscript_cst_affine, |
0ff4040e SP |
8209 | compute_overlap_steps_for_affine_1_2, |
8210 | analyze_subscript_affine_affine): Count the classified dependences. | |
8211 | Print a message when a test failed. | |
74fe790b | 8212 | (can_use_analyze_subscript_affine_affine): New. |
0ff4040e SP |
8213 | (analyze_siv_subscript): Compute the data dependences on symbolic |
8214 | scevs that verify can_use_analyze_subscript_affine_affine. | |
8215 | (chrec_steps_divide_constant_p): Returns true, false, or unknown. | |
8216 | (analyze_miv_subscript): Update use of chrec_steps_divide_constant_p. | |
8217 | Handle symbolic scevs. | |
8218 | (analyze_overlapping_iterations): Let symbolic affine scevs to be | |
8219 | analyzed. | |
8220 | (subscript_dependence_tester): Moved... | |
74fe790b | 8221 | (build_classic_dist_vector, build_classic_dir_vector): Don't use |
0ff4040e SP |
8222 | lambda_vector_clear on newly allocated vectors. Get nb_loops from |
8223 | DDR_SIZE_VECT instead of getting it in parameter. | |
74fe790b | 8224 | (subscript_dependence_tester): ... here. Take as a parameter |
0ff4040e SP |
8225 | loop_nest_depth. Call build_classic_dist_vector and |
8226 | build_classic_dir_vector. | |
74fe790b ZW |
8227 | (compute_affine_dependence): Update subscript_dependence_tester |
8228 | parameters. Update datadep_stats counters. Call | |
0ff4040e | 8229 | compute_subscript_distance. |
74fe790b | 8230 | (compute_self_dependence): Save the dist and dir vectors. Call |
0ff4040e SP |
8231 | compute_subscript_distance. |
8232 | (ddr_p, DEF_VEC_P(ddr_p), DEF_VEC_ALLOC_P(ddr_p,heap)): Moved... | |
8233 | (compute_all_dependences): Reorder parameters as they were before | |
8234 | conversion to VEC. Pass nb_loops and loop_nest_depth. Don't call | |
74fe790b | 8235 | compute_subscript_distance. Update the use of |
0ff4040e SP |
8236 | compute_affine_dependence and initialize_data_dependence_relation. |
8237 | (find_data_references_in_loop): Handle COMPONENT_REF. | |
8238 | (compute_data_dependences_for_loop): Initialize dependence_stats. | |
8239 | Don't call build_classic_dist_vector and build_classic_dir_vector. | |
74fe790b | 8240 | Update the parameters of initialize_data_dependence_relation and |
0ff4040e SP |
8241 | compute_all_dependences. Print the statistics from datadep_stats. |
8242 | (analyze_all_data_dependences): Static. Not used until the pass for | |
8243 | checking the data dependences is contributed. | |
8244 | * tree-data-ref.h (ddr_p, DEF_VEC_P(ddr_p), | |
8245 | DEF_VEC_ALLOC_P(ddr_p,heap)): ... here. | |
74fe790b | 8246 | (initialize_data_dependence_relation, compute_affine_dependence, |
0ff4040e SP |
8247 | analyze_all_data_dependences, compute_subscript_distance): Removed. |
8248 | (print_direction_vector): New. | |
8249 | * lambda.h (gcd): ... here. | |
8250 | (lambda_vector_gcd): Moved here from gcd_vector. | |
8251 | * lambda-code.c (gcd, gcd_vector): Removed. | |
8252 | (lambda_compute_target_space): Use lambda_vector_gcd. Fix formatting. | |
8253 | * Makefile.in (tree-vect-patterns.o): Depends on TREE_DATA_REF_H. | |
8254 | ||
643519b7 DN |
8255 | 2006-02-20 Diego Novillo <dnovillo@redhat.com> |
8256 | ||
8257 | * ipa-type-escape.c: Tidy some comments and white space. | |
8258 | * tree-ssa-operands.c: Likewise. | |
8259 | ||
406f9d5e AP |
8260 | 2006-02-20 Andrew Pinski <pinskia@physics.uc.edu> |
8261 | ||
8262 | PR tree-opt/25879 | |
8263 | * tree-pretty-print.c (debug_tree_chain): Walk the chains. | |
8264 | (dump_decl_name): Do not walk the decl tree chains. | |
8265 | * tree-pass.h (TDF_CHAIN): Remove. | |
8266 | ||
8267 |