]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ChangeLog
re PR tree-optimization/36922 (ICE in tree-data-ref.c with -ftree-loop-linear)
[thirdparty/gcc.git] / gcc / ChangeLog
CommitLineData
418df9d7
JJ
12009-02-18 Jakub Jelinek <jakub@redhat.com>
2
3 PR tree-optimization/36922
4 * tree-data-ref.c (initialize_matrix_A): Handle BIT_NOT_EXPR.
5 * tree-scalar-evolution.c (interpret_rhs_expr, instantiate_scev_1):
6 Likewise.
7
082d2ebb
RS
82009-02-17 Richard Sandiford <rdsandiford@googlemail.com>
9
10 * config/mips/mips.c (mips_override_options): Set flag_dwarf2_cfi_asm
11 to 0 for EABI64.
12
17de576c
RS
132009-02-17 Richard Sandiford <rdsandiford@googlemail.com>
14
15 * config/mips/mips.md (type): Reclassify lui_movf as "unknown".
16
6d8d5435
RS
172009-02-17 Richard Sandiford <rdsandiford@googlemail.com>
18
19 * config/mips/mips.c (mips_gimplify_va_arg_expr): Fix invalid
20 tree sharing.
21
e69ff910
RB
222009-02-17 Ruan Beihong <ruanbeihong@gmail.com>
23 Richard Sandiford <rdsandiford@googlemail.com>
24
25 * config/mips/mips.c (CODE_FOR_loongson_biadd): Delete.
26 * config/mips/loongson.md (reduc_uplus_<mode>): Rename to...
27 (loongson_biadd): ...this.
28
6b24ee26
RG
292009-02-17 Richard Guenther <rguenther@suse.de>
30
31 PR tree-optimization/39202
32 * tree-ssa-structalias.c (do_structure_copy): Before collapsing
33 a var make sure to follow existing collapses.
34
91ab2c86
RG
352009-02-17 Richard Guenther <rguenther@suse.de>
36
37 PR middle-end/39214
38 * langhooks.c (lhd_print_error_function): Check for NULL block.
39
73a63870
RG
402009-02-17 Richard Guenther <rguenther@suse.de>
41
42 PR tree-optimization/39204
43 * tree-ssa-pre.c (phi_translate_1): Lookup the value-number
44 of the PHI arg.
45
0e08f686
UB
462009-02-17 Uros Bizjak <ubizjak@gmail.com>
47
48 * config/soft-fp/double.h: Update from glibc CVS.
49
a60b7ddb
RG
502009-02-17 Richard Guenther <rguenther@suse.de>
51
52 PR tree-optimization/39207
53 * tree-ssa-structalias.c (find_what_p_points_to): Do not emit
54 strict-aliasing warnings for pointers pointing to NULL.
55
a47e20fd
JM
562009-02-16 Joseph Myers <joseph@codesourcery.com>
57
58 PR c/35446
59 * c-parser.c (c_parser_braced_init): Call pop_init_level when
60 skipping until next close brace.
61
50aab7dc
L
622009-02-16 H.J. Lu <hongjiu.lu@intel.com>
63
64 PR target/37049
65 * config/i386/i386.c (ix86_expand_push): Set memory alignment
66 to function argument boundary.
67
68e53db0
HS
682009-02-16 Hariharan Sandanagobalane <hariharan@picochip.com>
69
70 * config/picochip/picochip.md (lea_add): Allow any nonimmediate
71 in the lea_add. Reload eventually constraints it properly.
72 * config/picochip/constraints.md : Remove the target constraint
73 "b", since it is not needed anymore.
74
09e361bb
JJ
752009-02-16 Jakub Jelinek <jakub@redhat.com>
76
77 * gthr-dce.h: Uglify function parameter and local variable names.
78 * gthr-gnat.h: Likewise.
79 * gthr-mipssde.h: Likewise.
80 * gthr-nks.h: Likewise.
81 * gthr-posix95.h: Likewise.
82 * gthr-posix.h: Likewise.
83 * gthr-rtems.h: Likewise.
84 * gthr-single.h: Likewise.
85 * gthr-solaris.h: Likewise.
86 * gthr-tpf.h: Likewise.
87 * gthr-vxworks.h: Likewise.
88 * gthr-win32.h: Likewise.
89
47f5a48f
L
902009-02-15 H.J. Lu <hongjiu.lu@intel.com>
91
92 PR target/39196
93 * config/i386/i386.md: Restrict the new peephole2 to move
94 between MMX/SSE registers.
95
68c9ab45
RG
962009-02-15 Richard Guenther <rguenther@suse.de>
97
98 Revert
99 2009-02-13 Richard Guenther <rguenther@suse.de>
100
101 * configure.ac: Enable LFS.
102 * configure: Re-generate.
103 * config.in: Likewise.
104
d7815554
UW
1052009-02-13 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
106
107 * config/spu/spu_internals.h (spu_sr, spu_sra, spu_srqw,
108 spu_srqwbyte, spu_srqwbytebc): Define.
109 * config/spu/spu-builtins.def (spu_sr, spu_sra, spu_srqw,
110 spu_srqwbyte, spu_srqwbytebc): New overloaded builtins.
111 * config/spu/spu.md ("shrqbybi_<mode>", "shrqbi_<mode>",
112 "shrqby_<mode>"): New insn-and-split patterns.
113 * config/spu/spu.c (expand_builtin_args): Determine and return
114 number of operands using spu_builtin_description data.
115 (spu_expand_builtin_1): Use it.
116
c208436c
SE
1172009-02-13 Steve Ellcey <sje@cup.hp.com>
118
119 PR target/38056
120 * config/ia64/ia64.c (ia64_function_ok_for_sibcall): Check
121 TARGET_CONST_GP.
122
c2e7ba7e
L
1232009-02-13 H.J. Lu <hongjiu.lu@intel.com>
124
125 PR target/39149
126 * config/i386/i386.c (override_options): Correct warning
127 messages for -malign-loops, -malign-jumps and
128 -malign-functions.
129
72f4e3a7
L
1302009-02-13 H.J. Lu <hongjiu.lu@intel.com>
131
132 PR target/39152
133 * config/i386/i386.md: Restrict the new peephole2 to move
134 between the general purpose registers.
135
53f648e2
L
1362009-02-13 H.J. Lu <hongjiu.lu@intel.com>
137
138 PR target/39162
139 * config/i386/i386.c (type_natural_mode): Add a new argument.
140 Return the original mode and warn ABI change if vector size
141 is 32byte.
142 (function_arg_advance): Updated.
143 (function_arg): Likewise.
144 (ix86_function_value): Likewise.
145 (ix86_return_in_memory): Likewise.
146 (ix86_sol10_return_in_memory): Likewise.
147 (ix86_gimplify_va_arg): Likewise.
148 (function_arg_32): Don't warn ABX ABI change here.
149 (function_arg_64): Likewise.
150
b1c92d54
BS
1512008-02-13 Bernd Schmidt <bernd.schmidt@analog.com>
152
153 * loop-iv.c (implies_p): In the final case, test that operands 0
154 of the two comparisons match.
155
dd2139e7
BS
156 * config/bfin/bfin.c (find_prev_insn_start): New function.
157 (bfin_optimize_loop): Use it in some cases instead of PREV_INSN.
158 (find_next_insn_start): Move.
159
601b3e1a
RG
1602009-02-13 Richard Guenther <rguenther@suse.de>
161
162 * configure.ac: Enable LFS.
163 * configure: Re-generate.
164 * config.in: Likewise.
165
f007042e
JM
1662009-02-13 Joseph Myers <joseph@codesourcery.com>
167
168 PR c/35444
169 * c-parser.c (c_parser_parms_list_declarator): Discard pending
170 sizes on syntax error after some arguments have been parsed.
171
3f238e8b
JJ
1722009-02-12 Jakub Jelinek <jakub@redhat.com>
173
174 * doc/invoke.texi (-fira): Remove.
175
328e13b7
L
1762009-02-12 H.J. Lu <hongjiu.lu@intel.com>
177
178 * caller-save.c: Replace regclass.c with reginfo.c in comments.
179 * recog.c: Likewise.
180 * rtl.h: Likewise.
181
c252db20
L
1822009-02-12 Uros Bizjak <ubizjak@gmail.com>
183
184 * longlong.h (sub_ddmmss): New for ia64. Ported from GMP 4.2.
185 (umul_ppmm): Likewise.
186 (count_leading_zeros): Likewise.
187 (count_trailing_zeros): Likewise.
188 (UMUL_TIME): Likewise.
189
1902009-02-12 H.J. Lu <hongjiu.lu@intel.com>
191
ba181049
UB
192 * config.gcc (ia64*-*-linux*): Add ia64/t-fprules-softfp and
193 soft-fp/t-softfp to tmake_file.
c252db20
L
194
195 * config/ia64/ia64.c (ia64_soft_fp_init_libfuncs): New.
ba181049
UB
196 (ia64_expand_compare): Use HPUX library for TFmode only for HPUX.
197 (ia64_builtins) [IA64_BUILTIN_COPYSIGNQ, IA64_BUILTIN_FABSQ,
198 IA64_BUILTIN_INFQ]: New.
c252db20
L
199 (ia64_init_builtins): Initialize __builtin_infq,
200 __builtin_fabsq and __builtin_copysignq if not HPUX.
201 (ia64_expand_builtin): Handle IA64_BUILTIN_COPYSIGNQ,
202 IA64_BUILTIN_FABSQ and IA64_BUILTIN_INFQ.
203
204 * config/ia64/lib1funcs.asm (__divtf3): Define only if
205 SHARED is defined.
206 (__fixtfti): Likewise.
207 (__fixunstfti): Likewise.
208 (__floattitf): Likewise.
209
210 * config/ia64/libgcc-glibc.ver: New.
211 * config/ia64/t-fprules-softfp: Likewise.
212 * config/ia64/sfp-machine.h: Likewise.
213
214 * config/ia64/linux.h (LIBGCC2_HAS_TF_MODE): New.
215 (LIBGCC2_TF_CEXT): Likewise.
216 (TF_SIZE): Likewise.
217 (TARGET_INIT_LIBFUNCS): Likewise.
218
ba181049
UB
219 * config/ia64/t-glibc (SHLINB_MAPFILES):
220 Add $(srcdir)/config/ia64/libgcc-glibc.ver,
c252db20 221
f13eae6a
L
2222009-02-12 H.J. Lu <hongjiu.lu@intel.com>
223
224 * config/i386/i386.c (construct_container): Rewrite processing
225 BLKmode with X86_64_SSE_CLASS.
226
12019aec
L
2272009-02-12 Paolo Bonzini <bonzini@gnu.org>
228
229 PR target/39152
230 * config/i386/i386.md: Replace simplify_replace_rtx with
231 replace_rtx in the new peephole2.
232
28c11eb3
NS
2332009-02-12 Nathan Sidwell <nathan@codesourcery.com>
234
235 * doc/invoke.texi (Optimize Options): Stop claiming inlining and
236 loop unrolling do not happen at -O2.
237
c7b94907
MM
2382009-02-12 Michael Matz <matz@suse.de>
239
240 * gcc.c (ASM_DEBUG_SPEC): Check for -g0.
241
61e98967
JJ
2422009-02-12 Jakub Jelinek <jakub@redhat.com>
243
244 * dwarf2out.c (dwarf2out_finish): Force output of comp_unit_die
245 for -g3.
246
a2a237b5
BE
2472009-02-12 Ben Elliston <bje@au.ibm.com>
248
249 * config/rs6000/rs6000.md (allocate_stack): Use _stack form of
250 patterns when updating the back chain. Missed in the 2009-02-10
251 change.
252
853eda8d
JJ
2532009-02-11 Janis Johnson <janis187@us.ibm.com>
254
255 * doc/extend.texi (Decimal Floating Types): Update identifier of
256 draft TR and list of missing support.
257
3ad6b266
JJ
2582009-02-11 Jakub Jelinek <jakub@redhat.com>
259
260 PR middle-end/39154
261 * gimplify.c (omp_notice_variable): If adding GOVD_SEEN
262 bit to variable length decl's flags, add it also to its
263 pointer replacement variable.
264
b058b753
UB
2652009-02-11 Uros Bizjak <ubizjak@gmail.com>
266 Jakub Jelinek <jakub@redhat.com>
267
268 PR target/39118
269 * config/i386/i386.md (UNSPEC_MEMORY_BLOCKAGE): New constant.
270 (memory_blockage): New expander.
271 (*memory_blockage): New insn pattern.
272 * config/i386/i386.c (ix86_expand_prologue): Use memory_blockage
273 instead of general blockage at the end of function prologue when
274 frame pointer is used to access red zone area. Do not emit blockage
275 when profiling, it is emitted in generic code.
276 (ix86_expand_epilogue): Emit memory_blockage at the beginning of
277 function epilogue when frame pointer is used to access red zone area.
278
bab64f23
PB
2792009-02-11 Paolo Bonzini <bonzini@gnu.org>
280
0ce6dcfa 281 PR target/38824
bab64f23
PB
282 * config/i386/i386.md: Add two new peephole2 to avoid mov followed
283 by arithmetic with memory operands.
284 * config/i386/predicates.md (commutative_operator): New.
285
8fd94bda
JJ
2862009-02-10 Janis Johnson <janis187@us.ibm.com>
287
288 * doc/extend.texi (Fixed-Point Types): Break long paragraphs into
289 bulleted lists.
290
794511d2
EB
2912009-02-10 Eric Botcazou <ebotcazou@adacore.com>
292
293 * alias.h (record_alias_subset): Declare.
294 * alias.c (record_alias_subset): Make global.
295
6da7fc87
NC
2962009-02-10 Nick Clifton <nickc@redhat.com>
297
298 * tree-parloops.c: Change license to GPLv3.
299 * ipa-struct-reorg.c: Change license to GPLv3.
300 * ipa-struct-reorg.h: Change license to GPLv3.
301
a03813c8
SE
3022009-02-10 Steve Ellcey <sje@cup.hp.com>
303
304 PR c/39084
305 * c-decl.c (start_struct): Return NULL on error.
306
fc3103e7
JJ
3072009-02-10 Jakub Jelinek <jakub@redhat.com>
308
9b43d37b
JJ
309 PR middle-end/39124
310 * cfgloopmanip.c (remove_path): Call remove_bbs after
311 cancel_loop_tree, not before it.
312
fc3103e7 313 PR target/39139
b058b753 314 * function.h (struct function): Add has_local_explicit_reg_vars bit.
fc3103e7
JJ
315 * gimplify.c (gimplify_bind_expr): Set it if local DECL_HARD_REGISTER
316 VAR_DECLs were seen.
317 * tree-ssa-live.c (remove_unused_locals): Recompute
318 cfun->has_local_explicit_reg_vars.
319 * tree-ssa-sink.c (statement_sink_location): Don't sink BLKmode
320 copies or clearings if cfun->has_local_explicit_reg_vars.
321
dbf9ee15
UB
3222009-02-10 Uros Bizjak <ubizjak@gmail.com>
323
324 PR target/39118
325 * config/i386/i386.c (expand_prologue): Emit blockage at the end
326 of function prologue when frame pointer is used to access
327 red zone area.
328
bdec4dc7
RG
3292009-02-10 Richard Guenther <rguenther@suse.de>
330
331 PR middle-end/39127
332 * gimplify.c (gimple_regimplify_operands): Always look if
333 we need to create a temporary.
334
7cae94fc
RG
3352009-02-10 Richard Guenther <rguenther@suse.de>
336
337 PR tree-optimization/39132
338 * tree-loop-distribution.c (todo): New global var.
339 (generate_memset_zero): Trigger TODO_rebuild_alias.
340 (tree_loop_distribution): Return todo.
341
a8800687
L
3422009-02-10 H.J. Lu <hongjiu.lu@intel.com>
343
344 PR target/39119
345 * config/i386/i386.c (x86_64_reg_class): Remove X86_64_AVX_CLASS.
346 (x86_64_reg_class_name): Removed.
347 (classify_argument): Return 0 if bytes > 32. Return 0 if the
348 first one isn't X86_64_SSE_CLASS or any other ones aren't
349 X86_64_SSEUP_CLASS when size > 16bytes. Don't turn
350 X86_64_SSEUP_CLASS into X86_64_SSE_CLASS if the preceded one
351 is X86_64_SSEUP_CLASS. Set AVX modes to 1 X86_64_SSE_CLASS
352 and 3 X86_64_SSEUP_CLASS.
353 (construct_container): Remove X86_64_AVX_CLASS. Handle 4
354 registers with 1 X86_64_SSE_CLASS and 3 X86_64_SSEUP_CLASS.
355
d4bacef0
BE
3562009-02-10 Ben Elliston <bje@au.ibm.com>
357
358 * config/rs6000/rs6000.md (allocate_stack): Always use an update
359 form instruction to update the stack back chain word, even if the
360 user has disabled the generation of update instructions.
361 (movdi_<mode>_update_stack): New.
362 (movsi_update_stack): Likewise.
363 * config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Likewise,
364 always use an update form instruction to update the stack back
365 chain word.
366
01d7d2f3
SP
3672009-02-09 Sebastian Pop <sebastian.pop@amd.com>
368
369 PR middle-end/38953
b058b753
UB
370 * graphite.c (if_region_set_false_region): After moving a region in
371 the false branch of a condition, remove the empty dummy basic block.
01d7d2f3
SP
372 (gloog): Remove wrong fix for PR38953.
373
e41e2ab4
UW
3742009-02-09 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
375
376 * config/spu/spu.c (array_to_constant): Fix (latent) wrong-code
377 generation due to implicit sign extension.
378
4bb07c5d
EB
3792009-02-09 Eric Botcazou <ebotcazou@adacore.com>
380
381 PR middle-end/38981
382 * tree-ssa-coalesce.c (add_coalesce): Cap the costs of coalesce pairs
383 at MUST_COALESCE_COST-1 instead of MUST_COALESCE_COST.
384
f060a261
RG
3852009-02-09 Richard Guenther <rguenther@suse.de>
386
387 PR middle-end/35202
388 * convert.c (convert_to_real): Disable (float)fn((double)x)
389 to fnf(x) conversion if errno differences may occur and
390 -fmath-errno is set.
391
5a7e237c
AS
3922009-02-07 Anatoly Sokolov <aesok@post.ru>
393
394 * config/avr/avr.c (avr_mcu_t): Add ata6289 device.
395 * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.).
396 * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).
397
feab5a67
JM
3982009-02-06 Joseph Myers <joseph@codesourcery.com>
399
400 PR c/35434
401 * c-common.c (handle_alias_attribute): Disallow attribute for
402 anything not a FUNCTION_DECL or VAR_DECL.
403
90ef2296
JJ
4042009-02-06 Janis Johnson <janis187@us.ibm.com>
405
406 PR c/39035
407 * real.c (do_compare): Special-case compare of zero against
408 decimal float value.
409
1de2c900
JM
4102009-02-06 Joseph Myers <joseph@codesourcery.com>
411
412 PR c/36432
413 * c-decl.c (grokdeclarator): Don't treat [] declarators in fields
414 as indicating flexible array members unless the field itself is
415 being declarared as the incomplete array.
416
e901811a
JH
4172009-02-06 Jan Hubicka <jh@suse.cz>
418
419 PR tree-optimization/38844
420 * ipa-inline.c (try_inline): Stop inlining recursion when edge
421 is already inlined.
422
3cfa762b
RG
4232009-02-06 Richard Guenther <rguenther@suse.de>
424
425 PR middle-end/38977
426 * tree-cfg.c (need_fake_edge_p): Force a fake edge for
427 fork because we may expand it as __gcov_fork.
428
8506528c
NC
4292009-02-06 Nick Clifton <nickc@redhat.com>
430
dbf9ee15 431 * config/m32c/m32c.h (PCC_BITFIELD_TYPE_MATTERS): Define to zero.
8506528c 432
85169114
PB
4332009-02-06 Paolo Bonzini <bonzini@gnu.org>
434
435 PR tree-optimization/35659
436 * tree-ssa-sccvn.c (vn_constant_eq, vn_reference_eq, vn_nary_op_eq
437 vn_phi_eq): Shortcut if hashcode does not match.
438 (vn_reference_op_compute_hash): Do not call iterative_hash_expr for
439 NULL operands.
440 * tree-ssa-pre.c (pre_expr_hash): Look at hashcode if available,
441 and avoid iterative_hash_expr.
442 (FOR_EACH_VALUE_ID_IN_SET): New.
443 (value_id_compare): Remove.
444 (sorted_array_from_bitmap_set): Use FOR_EACH_VALUE_ID_IN_SET to
445 sort expressions by value id.
446
6d39673d
KK
4472009-02-05 Kaz Kojima <kkojima@gcc.gnu.org>
448
449 PR target/38991
450 * config/sh/predicates.md (general_movsrc_operand): Don't check
451 the subreg of system registers here.
452
e6e1c050
JJ
4532009-02-05 Jakub Jelinek <jakub@redhat.com>
454
455 PR c++/39106
456 * cgraphunit.c (cgraph_function_versioning): Clear also DECL_VIRTUAL_P
457 on the copied decl.
458
65a74b5d
PB
4592009-02-05 Paolo Bonzini <bonzini@gnu.org>
460
461 PR rtl-optimization/39110
462 * rtlanal.c (rtx_addr_can_trap_p_1): Shortcut unaligned
463 addresses, not aligned ones.
464
08e14b2a
DB
4652009-02-05 Daniel Berlin <dberlin@dberlin.org>
466 Richard Guenther <rguenther@suse.de>
467
468 PR tree-optimization/39100
469 * tree-ssa-structalias.c (do_ds_constraint): Actually do what the
470 comment says and add edges.
471
5006381c
JM
4722009-02-05 Joseph Myers <joseph@codesourcery.com>
473
474 PR c/35435
475 * c-common.c (handle_tls_model_attribute): Ignore attribute for
476 non-VAR_DECLs without checking DECL_THREAD_LOCAL_P.
477
b0789219
TG
4782009-02-04 Tobias Grosser <grosser@fim.uni-passau.de>
479
480 * graphite.c (bb_in_sese_p, sese_build_livein_liveouts_use,
481 sese_build_livein_liveouts_bb, sese_build_livein_liveouts,
482 register_bb_in_sese, new_sese, free_sese): Moved.
483 (dot_scop_1, build_scop_loop_nests, build_loop_iteration_domains,
484 outermost_loop_in_scop, build_scop_iteration_domain,
485 expand_scalar_variables_ssa_name, get_vdef_before_scop,
486 limit_scops): Use bb_in_sese_p instead of bb_in_scop_p.
487 Use loop_in_sese_p instead of loop_in_scop_p.
488 (new_graphite_bb, gloog): Do not initialize SCOP_BBS_B.
489 (new_scop, free_scop): Remove SCOP_LOOP2CLOOG_LOOP and SCOP_BBS_B.
490 (scopdet_basic_block_info): Fix bug in scop detection.
491 (new_loop_to_cloog_loop_str, hash_loop_to_cloog_loop,
492 eq_loop_to_cloog_loop): Remove.
493 (nb_loops_around_loop_in_scop, nb_loop
494 ref_nb_loops): Moved here...
495 * graphite.h (ref_nb_loops): ... from here.
496 (struct scop): Remove bbs_b bitmap and loop2cloog_loop.
497 (loop_domain_dim, loop_iteration_vector_dim): Remove.
498 (SCOP_BBS_B, bb_in_scop_p, loop_in_scop_p): Removed.
499 * testsuite/gcc.dg/graphite/scop-19.c: New
500
48e8382e
PB
5012009-02-04 Paolo Bonzini <bonzini@gnu.org>
502 Hans-Peter Nilsson <hp@axis.com>
503
504 PR rtl-optimization/37889
505 * rtlanal.c (rtx_addr_can_trap_p_1): Add offset and size arguments.
506 Move offset handling from PLUS to before the switch. Use new
507 arguments when considering SYMBOL_REFs too.
508 (rtx_addr_can_trap_p): Pass dummy offset and size.
509 (enum may_trap_p_flags): Remove.
510 (may_trap_p_1): Pass size from MEM_SIZE.
511
512 PR rtl-optimization/38921
513 * loop-invariant.c (find_invariant_insn): Use may_trap_or_fault_p.
514 * rtl.h (may_trap_after_code_motion_p): Delete prototype.
515 * rtlanal.c (may_trap_after_code_motion_p): Delete.
516 (may_trap_p, may_trap_or_fault_p): Pass 0/1 as flags.
517
69349ea5
L
5182009-02-04 H.J. Lu <hongjiu.lu@intel.com>
519
520 AVX Programming Reference (January, 2009)
521 * config/i386/sse.md (*vpclmulqdq): New.
522
b545e411
JJ
5232009-02-04 Jakub Jelinek <jakub@redhat.com>
524
525 PR tree-optimization/38977
526 PR gcov-profile/38292
bf9b2cc9 527 * calls.c (special_function_p): Disregard __builtin_ prefix.
b545e411 528
5b43bf05
HS
5292009-02-04 Hariharan Sandanagobalane <hariharan@picochip.com>
530
531 * config/picochip/picochip.c (GO_IF_LEGITIMATE_ADDRESS): Disallow
532 non-indexable addresses even before reload.
533
062c4bb3
JM
5342009-02-03 Joseph Myers <joseph@codesourcery.com>
535
536 PR c/29129
537 * c-decl.c (grokdeclarator): Mark [*] arrays in field declarators
538 as having variable size. Do not give an error for unnamed
539 parameters with [*] declarators. Give a warning for type names
540 with [*] declarators and mark them as variable size.
541 * c-parser.c (c_parser_sizeof_expression): Do not give an error
542 for sizeof applied to [*] type names.
543
6175f578
AP
5442009-02-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
545
546 PR C++/36607
547 * convert.c (convert_to_integer): Treat OFFSET_TYPE like INTEGER_TYPE.
548
d4f4bc84
JJ
5492009-02-03 Jakub Jelinek <jakub@redhat.com>
550
551 * gcc.c (process_command): Update copyright notice dates.
552 * gcov.c (print_version): Likewise.
553 * gcov-dump.c (print_version): Likewise.
554 * mips-tfile.c (main): Likewise.
555 * mips-tdump.c (main): Likewise.
556
f6294de7
JM
5572009-02-03 Joseph Myers <joseph@codesourcery.com>
558
559 PR c/35433
560 * c-typeck.c (composite_type): Set TYPE_SIZE and TYPE_SIZE_UNIT
561 for composite type involving a zero-length array type.
562
754ccf7c
JJ
5632009-02-03 Jakub Jelinek <jakub@redhat.com>
564
70f16287
JJ
565 PR target/35318
566 * function.c (match_asm_constraints_1): Skip over
567 initial optional % in the constraint.
568
754ccf7c
JJ
569 PR inline-asm/39059
570 * c-parser.c (c_parser_postfix_expression): If fixed point is not
571 supported, don't accept FIXED_CSTs.
572 * c-decl.c (finish_declspecs): Error if fixed point is not supported
573 and _Sat is used without _Fract/_Accum. Set specs->type to
574 integer_type_node for cts_fract/cts_accum if fixed point is not
575 supported.
576
965fdadf
CM
5772009-02-02 Catherine Moore <clm@codesourcery.com>
578
dbf9ee15 579 * sde.h (SUBTARGET_ARM_SPEC): Don't assemble -fpic code as -mabicalls.
965fdadf 580
2e8a796f
RS
5812009-02-02 Richard Sandiford <rdsandiford@googlemail.com>
582
583 * config/mips/mips.h (FILE_HAS_64BIT_SYMBOLS): New macro.
584 (ABI_HAS_64BIT_SYMBOLS): Use it.
585 (DWARF2_ADDR_SIZE): Use it instead of ABI_HAS_64BIT_SYMBOLS.
586
e0079468
PB
5872009-02-02 Paul Brook <paul@codesourcery.com>
588
589 * config/arm/arm.md (arm_addsi3): Add r/r/k alternative.
590
eca72963
JJ
5912009-02-02 Jakub Jelinek <jakub@redhat.com>
592
593 PR inline-asm/39058
594 * recog.h (asm_operand_ok): Add constraints argument.
595 * recog.c (asm_operand_ok): Likewise. If it is set, for digits
596 recurse on matching constraint.
597 (check_asm_operands): Pass constraints as 3rd argument to
598 asm_operand_ok. Don't look up matching constraint here.
599 * stmt.c (expand_asm_operands): Pass NULL as 3rd argument
600 to asm_operand_ok.
601
b5bde9ff
BE
6022009-02-02 Ben Elliston <bje@au.ibm.com>
603
604 * doc/tm.texi (Storage Layout): Fix TARGET_ALIGN_ANON_BITFIELD and
605 TARGET_NARROW_VOLATILE_BITFIELD macro names.
606
30f3e427
JDA
6072009-01-31 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
608
be7659ba
JDA
609 * doc/install.texi (hppa*-hp-hpux*): Update binutils and linker
610 information. Remove some obsolete information. Reorganize.
611
30f3e427
JDA
612 * config/pa/fptr.c: Revert license to GPL 2.
613 * config/pa/milli64.S: Likewise.
614
3cbfaf98
DK
6152009-01-31 Dave Korn <dave.korn.cygwin@gmail.com>
616
617 PR target/38904
618 * mkmap-flat.awk (END): Use pe_dll command-line arg to pass
619 LIBRARY name in, instead of hard-coding it.
620 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add an
621 extra target make frag to tmake_files according to EH model.
622 (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
623 * config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Add new target
624 frags that define makefile variable EH_MODEL appropriately.
625 * config/i386/cygming.h (DWARF2_UNWIND_INFO): Add comment.
626 * config/i386/cygwin.h (LIBGCC_EH_EXTN): Define to nothing or
627 to "-sjlj" according to type of EH configured.
628 (LIBGCC_SONAME): Concatenate it to shared library base name.
629 * config/i386/mingw32.h (LIBGCC_EH_EXTN): Define to "_dw2" or
630 to "_sjlj" according to type of EH configured.
631 (LIBGCC_SONAME): Concatenate it to shared library base name.
632 * config/i386/t-cygming (SHLIB_SONAME): Use EH_MODEL.
633 (SHLIB_LINK): Add missing semicolon to if-else construct.
634 (SHLIB_MKMAP_OPTS): Pass library name to mkmap-flat.awk as
635 string value of "pe_dll" command-line option.
636 * config/i386/t-cygwin (SHLIB_EH_EXTENSION): New helper.
637 (SHLIB_SONAME): Use it when overriding t-cygming default.
638 (SHLIB_IMPLIB): Override t-cygming default.
639 (SHLIB_MKMAP_OPTS): Pass library name to mkmap-flat.awk as
640 string value of "pe_dll" command-line option.
641
8d0b6068
DK
6422009-01-31 Dave Korn <dave.korn.cygwin@gmail.com>
643
644 PR target/38952
645 * config/i386/i386.c (ix86_builtin_setjmp_frame_value): New.
bf9b2cc9 646 (TARGET_BUILTIN_SETJMP_FRAME_VALUE): Override default to point at it.
8d0b6068 647
14c28276
RG
6482009-01-31 Richard Guenther <rguenther@suse.de>
649
650 PR tree-optimization/38937
651 * tree-ssa-structalias.c (do_sd_constraint): Do not shortcut
652 computing the transitive closure.
653
5f4d82c2
RG
6542009-01-30 Richard Guenther <rguenther@suse.de>
655
656 PR tree-optimization/39041
657 * tree-ssa-forwprop.c (forward_propagate_addr_expr_1):
658 Propagate variable indices only if the types match for this stmt.
659
d0728ae0
JJ
6602009-01-30 Jakub Jelinek <jakub@redhat.com>
661
662 PR target/39013
663 * c-decl.c (pop_scope): Set DECL_EXTERNAL for functions declared
664 inline but never defined.
665
9fec758d
WG
6662009-01-30 Wolfgang Gellerich <gellerich@de,ibm.com>
667
668 * config/s390/s390.md (*insv<mode>_reg_extimm): Removed.
669 (*insv_h_di_reg_extimm): New insn.
670 (*insv_l<mode>_reg_extimm): New insn.
671
6722009-01-30 Hariharan Sandanagobalane <hariharan@picochip.com>
9e8be1e4
HS
673
674 * config/picochip/picochip.c (flag_conserve_stack): set
675 PARAM_LARGE_STACK_FRAME and PARAM_STACK_FRAME_GROWTH to zero under
676 fconserve-stack. Reduce call-overhead used by inliner.
677
9fec758d 6782009-01-30 Hariharan Sandanagobalane <hariharan@picochip.com>
df9198ab
HS
679
680 PR/38157
681 * common.opt (flag_conserve_stack): Initialised to zero.
682
7f1c539c
KT
6832009-01-30 Kai Tietz <kai.tietz@onevision.com>
684
685 PR/39002
686 * config/i386/i386.c (ix86_can_use_return_insn_p): Check for nsseregs.
687 (ix86_expand_epilogue): Take nsseregs in account to use proper restore
688 method.
689
3631be48
L
6902009-01-29 H.J. Lu <hongjiu.lu@intel.com>
691
692 * ira-color.c (allocno_reload_assign): Update comments.
693 * regmove.c (regmove_optimize): Likewise.
694
695 * ra.h: Removed.
696
416ac4d4
RM
6972009-01-29 Robert Millan <rmh@aybabtu.com>
698
699 * gcc/config.gcc: Recognize GNU/kOpenSolaris (*-*-kopensolaris*-gnu).
700 * gcc/config/i386/kopensolaris-gnu.h: New file. Undefine
701 `MD_UNWIND_SUPPORT'.
702 * gcc/config/kopensolaris-gnu.h: New file (based on kfreebsd-gnu.h).
703
d5e54bc1
KH
7042009-01-29 Kazu Hirata <kazu@codesourcery.com>
705
706 PR tree-optimization/39007
707 * tree-loop-distribution.c (generate_builtin): Use
708 recompute_dominator to compute the immediate dominator of the
709 basic block just after the loop.
710
e9e077fa
RO
7112008-01-29 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
712
713 * config/i386/sol2-10.h [!HAVE_AS_IX86_DIFF_SECT_DELTA]
714 (ASM_OUTPUT_DWARF_PCREL): Define.
715
2af2dbdc
VM
7162008-01-29 Vladimir Makarov <vmakarov@redhat.com>
717
718 * doc/tm.texi (TARGET_IRA_COVER_CLASSES): Modify description.
719 * doc/passes.texi: Remove entries about regclass, local-alloc, and
720 global. Modify entries about regmove and IRA.
721
722 * ra-conflict.c: Remove the file.
723
724 * reload.c (push_reload, find_dummy_reload): Remove flag_ira.
725
726 * tree-pass.h (pass_local_alloc, pass_global_alloc): Remove.
727 (pass_regclass_init): Rename to pass_reginfo_init.
728
729 * cfgloopanal.c (estimate_reg_pressure_cost): Remove flag_ira.
730
731 * toplev.h (flag_ira): Remove.
732
733 * caller-save.c (setup_save_areas): Remove flag_ira.
734
bf9b2cc9 735 * ira-color.c (ira_reuse_stack_slot, ira_mark_new_stack_slot): Ditto.
2af2dbdc
VM
736
737 * global.c: Remove the file.
738
739 * opts.c: (decode_options): Remove flag_ira.
740
741 * hard-reg-set.h (losing_caller_save_reg_set): Remove.
742
743 * regmove.c: Modify file description.
744 (find_use_as_address, try_auto_increment): Define them only if
745 AUTO_INC_DEC is defined.
746 (replacement_quality, replace_in_call_usage, fixup_match_1,
747 stable_and_no_regs_but_for_p): Remove.
748 (reg_set_in_bb): Make it static.
749 (regmove_optimize): Remove flag_ira and code which worked for
750 !flag_ira.
751
752 * local-alloc.c: Remove the file.
753
754 * common.opt (fira): Remove.
755
756 * ira.c: Include except.h.
757 (eliminable_regset): Move from global.c.
758 (mark_elimination): Ditto. Remove flag_ira.
759 (reg_renumber, struct equivalence, reg_equiv, equiv_mem,
760 equiv_mem_modified, validate_equiv_mem_from_store,
761 validate_equiv_mem, equiv_init_varies_p, equiv_init_movable_p,
762 contains_replace_regs, memref_referenced_p, memref_used_between_p,
763 no_equiv, recorded_label_ref): Move from local-alloc.c.
764 (update_equiv_regs): Ditto. Make it static.
765 (print_insn_chain, print_insn_chains): Move it from global.c.
bf9b2cc9 766 (pseudo_for_reload_consideration_p): Ditto. Remove flag_ira.
2af2dbdc
VM
767 (build_insn_chain): Ditto. Make it static.
768 (ra_init_live_subregs): Move from ra-conflict.c. Make it static.
769 Rename to init_live_subregs.
770 (gate_ira): Remove flag_ira.
771
772 * regclass.c: Rename reginfo.c. Change file description.
773 (FORBIDDEN_INC_DEC_CLASSES): Remove.
dbf9ee15 774 (reg_class_superclasses, forbidden_inc_dec_class, in_inc_dec): Remove.
2af2dbdc
VM
775 (init_reg_sets_1): Remove code for evaluation of
776 reg_class_superclasses and losing_caller_save_reg_set.
777 (init_regs): Remove init_reg_autoinc.
778 (struct costs, costs, init_cost, ok_for_index_p_nonstrict,
779 ok_for_base_p_nonstrict): Remove.
bf9b2cc9 780 (regclass_init): Rename to reginfo_init. Don't initialize init_cost.
2af2dbdc
VM
781 (pass_regclass_init): Rename to pass_reginfo_init. Modify
782 corresponding entries.
783 (dump_regclass, record_operand_costs, scan_one_insn,
784 init_reg_autoinc, regclass, record_reg_classes, copy_cost,
785 record_address_regs, auto_inc_dec_reg_p): Remove.
786 (gt-regclass.h): Rename to gt-reginfo.h.
787
788 * rtl.h (dump_global_regs, retry_global_alloc,
bf9b2cc9 789 build_insn_chain, dump_local_alloc, update_equiv_regs): Remove.
2af2dbdc
VM
790
791 * Makefile.in (RA_H): Remove.
792 (OBJS-common): Remove global.o, local-alloc.o, and ra-conflict.o.
793 Rename regclass.o to reginfo.o.
794 (regclass.o): Rename to reginfo.o. Rename gt-regclass.h to
795 gt-reginfo.h.
796 (global.o, local-alloc.o, ra-conflict.o): Remove entries.
797 (GTFILES): Rename regclass.c to reginfo.c.
798
799 * passes.c (init_optimization_passes): Remove pass_local_alloc and
bf9b2cc9 800 pass_global_alloc. Rename pass_regclass_init to pass_reginfo_init.
2af2dbdc
VM
801
802 * reload1.c (compute_use_by_pseudos, reload, count_pseudo,
803 count_spilled_pseudo, find_reg, alter_reg, delete_output_reload):
804 Remove flag_ira.
805 (finish_spills): Ditto. Remove code for !flga_ira.
806
c95b2534 8072009-01-29 Kenneth Zadeck <zadeck@naturalbridge.com>
00b251a0
KZ
808
809 PR middle-end/35854
810 * doc/invoke.texi (rtl debug options): Complete rewrite.
811 * auto-inc-dec.c (pass_inc_dec): Rename pass from "auto-inc-dec"
812 to auto_inc_dec".
813 * mode-switching.c (pass_mode_switching): Rename pass from
814 "mode-sw" to "mode_sw".
815 * except.c (pass_convert_to_eh_ranges): Rename pass from
816 "eh-ranges" to "eh_ranges".
817 * lower-subreg.c (pass_lower_subreg): Renamed pass from "subreg"
818 to "subreg1".
819
820
72a54528
AM
8212009-01-29 Andrey Belevantsev <abel@ispras.ru>
822 Alexander Monakov <amonakov@ispras.ru>
823
824 PR middle-end/38857
825 * sel-sched.c (count_occurrences_1): Check that *cur_rtx is a hard
826 register.
827 (move_exprs_to_boundary): Change return type and pass through
828 should_move from move_op. Relax assert. Update usage ...
829 (schedule_expr_on_boundary): ... here. Use should_move instead of
830 cant_move.
831 (move_op_orig_expr_found): Indicate that insn was disconnected from
832 stream.
833 (code_motion_process_successors): Do not call after_merge_succs
834 callback if original expression was not found when traversing any of
835 the branches.
836 (code_motion_path_driver): Change return type. Update prototype.
837 (move_op): Update comment. Add a new parameter (should_move). Update
838 prototype. Set *should_move based on indication provided by
839 move_op_orig_expr_found.
840
001b9eb6
PH
8412009-01-28 Pat Haugen <pthaugen@us.ibm.com>
842
843 * doc/invoke.texi (avoid-indexed-addresses): Document new option.
844 * config/rs6000/rs6000-protos.h (avoiding_indexed_address_p): Declare.
845 * config/rs6000/rs6000.opt (avoid-indexed-addresses): New option.
846 * config/rs6000/rs6000.c (rs6000_override_options): Default
847 avoid-indexed-addresses on for Power6, off for everything else.
848 (avoiding_indexed_address_p): New function.
849 (rs6000_legitimize_address): Use it.
850 (rs6000_legitimate_address): Likewise.
851 * config/rs6000/rs6000.md (movXX_updateX): Likewise
852
59dc4898
KH
8532009-01-28 Kazu Hirata <kazu@codesourcery.com>
854
855 PR tree-optimization/38997
856 * tree-loop-distribution.c (generate_memset_zero): Use
857 POINTER_PLUS_EXPR for a pointer addition.
858
07da44ab
AK
8592009-01-28 Andreas Krebbel <krebbel1@de.ibm.com>
860
861 * config/s390/s390.md (bswap<mode>2): New pattern added.
862
cdc15d23
WG
8632009-01-28 Wolfgang Gellerich <gellerich@de.ibm.com>
864
865 * config/s390/s390.md (*tls_load_31): Added type attribute.
866
d46f24b6
WG
8672009-01-28 Wolfgang Gellerich <gellerich@de.ibm.com>
868
869 * config/s390/s390.md: Fix a few comments.
870
729e750f
WG
8712009-01-28 Wolfgang Gellerich <gellerich@de.ibm.com>
872
873 * config/s390/s390.md (*tmsi_reg): Fixed z10prop attribute.
874 (*tm<mode>_full): Fixed z10prop attribute.
875 (*tst<mode>_extimm): Fixed z10prop attribute.
876 (*tst<mode>_cconly_extimm): Fixed z10prop attribute.
877 (*tstqiCCT_cconly): Fixed z10prop attribute.
878 (*cmpsi_ccu_zerohi_rlsi): Fixed z10prop attribute.
879 (*movsi_larl): Fixed z10prop attribute.
880 (*movsi_zarch): Fixed z10prop attribute.
881 (*movsi_eas): Fixed z10prop attribute.
882 (*movhi): Fixed z10prop attribute.
883 (*movqi): Fixed z10prop attribute.
884 (*movstrictqi): Fixed z10prop attribute.
885 (*mov<mode>): Fixed z10prop attribute.
886 (*movcc): Fixed z10prop attribute.
887 (*sethighpartdi_64): Fixed z10prop attribute.
888 (*zero_extendhi<mode>2_z10): Fixed z10prop attribute.
889 (*negdi2_sign_cc): Fixed z10prop attribute.
890 (*negdi2_sign): Fixed z10prop attribute.
891 (*absdi2_sign_cc): Fixed z10prop attribute.
892 (*absdi2_sign): Fixed z10prop attribute.
893 (*negabsdi2_sign_cc): Fixed z10prop attribute.
894 (*negabsdi2_sign): Fixed z10prop attribute.
895 (*cmp_and_trap_signed_int<mode>): Fixed z10prop attribute.
896 (*cmp_and_trap_unsigned_int<mode>): Fixed z10prop attribute.
897 (doloop_si64): Fixed z10prop attribute.
898 (doloop_si31): Fixed z10prop attribute.
899 (doloop_long): Fixed z10prop attribute.
900 (indirect_jump): Fixed z10prop attribute.
901 (nop): Fixed z10prop attribute.
902 (main_base_64): Fixed z10prop attribute.
903 (reload_base_64): Fixed z10prop attribute.
904
c7789bfb
JJ
9052009-01-28 Jakub Jelinek <jakub@redhat.com>
906
907 PR rtl-optimization/38740
dbf9ee15 908 * reorg.c (gate_handle_delay_slots): Avoid dbr scheduling if !optimize.
c7789bfb
JJ
909 * config/mips/mips.c (mips_reorg): Likewise.
910
de081cfd
RG
9112009-01-28 Richard Guenther <rguenther@suse.de>
912
913 PR tree-optimization/38926
914 * tree-ssa-pre.c (add_to_value): Assert we add only expressions
915 with the correct value id to a value.
916 (do_regular_insertion): Use the value number of edoubleprime
917 for the value number of the expr.
918
919 Revert
920 2008-08-21 Richard Guenther <rguenther@suse.de>
bf9b2cc9 921
d748c406
UB
922 * tree-ssa-pre.c (insert_into_preds_of_block): Before inserting
923 a PHI ask VN if it is already available.
924 * tree-ssa-sccvn.h (vn_phi_lookup): Declare.
925 * tree-ssa-sccvn.c (vn_phi_lookup): Export.
de081cfd 926
a9d386a1
JJ
9272009-01-28 Jakub Jelinek <jakub@redhat.com>
928
929 PR middle-end/38934
930 * tree-vrp.c (extract_range_from_assert): For LE_EXPR and LT_EXPR
931 set to varying whenever max has TREE_OVERFLOW set, similarly
932 for GE_EXPR and GT_EXPR and TREE_OVERFLOW min.
933
97a170cd
RG
9342009-01-28 Richard Guenther <rguenther@suse.de>
935
936 PR middle-end/38908
937 * tree-ssa.c (warn_uninitialized_var): Do not warn for seemingly
938 uninitialized aggregate uses in call arguments.
939
89ebafc6
PB
9402009-01-28 Paolo Bonzini <bonzini@gnu.org>
941
942 PR tree-optimization/38984
943 * tree-ssa-structalias.c (get_constraints_for_1): Do not use
944 the nothing_id variable if -fno-delete-null-pointer-checks.
945
bef3c57b
UB
9462009-01-28 Uros Bizjak <ubizjak@gmail.com>
947
948 PR target/38988
949 * config/i386/i386.md (set_rip_rex64): Wrap operand 1 in label_ref.
950 (set_got_offset_rex64): Ditto.
951
0c6390fa
L
9522009-01-27 H.J. Lu <hongjiu.lu@intel.com>
953
954 PR target/38941
955 * doc/extend.texi: Improve local variable with asm reg.
956
bee6fa6d
AN
9572009-01-27 Adam Nemet <anemet@caviumnetworks.com>
958
959 * c.opt (Wpacked-bitfield-compat): Change init value to -1.
960 * c-opts.c (c_common_post_options): If -W*packed-bitfield-compat
961 was not supplied then set warn_packed_bitfield_compat to the
962 default value of 1.
963 * stor-layout.c (place_field): Check warn_packed_bitfield_compat
964 against 1.
965
b5c3dfbb
RG
9662009-01-27 Richard Guenther <rguenther@suse.de>
967
968 PR tree-optimization/38503
969 * cfgexpand.c (expand_gimple_basic_block): Ignore
970 GIMPLE_CHANGE_DYNAMIC_TYPE during expansion.
971 * tree-ssa-structalias.c (set_uids_in_ptset): Do not prune
972 variables that cannot have TBAA applied.
973 (compute_points_to_sets): Do not remove GIMPLE_CHANGE_DYNAMIC_TYPE
974 statements.
975
d748c406 9762009-01-27 Uros Bizjak <ubizjak@gmail.com>
576de5cb
UB
977
978 PR middle-end/38969
979 * calls.c (initialize_argument_information): Do not wrap complex
980 arguments in SAVE_EXPR.
981
9112bb38
AT
9822009-01-26 Andreas Tobler <a.tobler@schweiz.org>
983
984 * config/t-vxworks (LIBGCC2_INCLUDES): Fix typo.
5efb79fc 985 (INSTALL_LIBGCC): Revert typo commit.
9112bb38 986
4757704f
RG
9872009-01-26 Richard Guenther <rguenther@suse.de>
988
989 PR tree-optimization/38745
990 * tree-ssa-alias.c (update_alias_info_1): Exclude RESULT_DECL
991 from special handling.
992
e3e6cff4
RG
9932009-01-26 Richard Guenther <rguenther@suse.de>
994
995 PR tree-optimization/38745
996 * tree-ssa.c (execute_update_addresses_taken): Do not include
997 variables that cannot possibly be a register in not_reg_needs.
998 Do not clear TREE_ADDRESSABLE on vars that may not become
999 registers.
1000 * tree-ssa.c (update_alias_info_1): Include those in the set
1001 of addressable vars.
1002
dc874b53
RG
10032009-01-26 Richard Guenther <rguenther@suse.de>
1004
1005 PR middle-end/38851
1006 * Makefile.in (tree-ssa-dse.o): Add langhooks.h.
1007 * tree-ssa-dse.c: Include langhooks.h
1008 (execute_simple_dse): Remove stores with zero size.
1009
849421a3
JJ
10102009-01-24 Jakub Jelinek <jakub@redhat.com>
1011
1012 PR c/38957
1013 * c-typeck.c (c_finish_return): Handle POINTER_PLUS_EXPR the same way
1014 as PLUS_EXPR.
1015
82f70421
JB
10162009-01-24 Julian Brown <julian@codesourcery.com>
1017
1018 * config/arm/t-linux-eabi (LIB2FUNCS_STATIC_EXTRA): Add
1019 config/arm/linux-atomic.c.
1020 * config/arm/linux-atomic.c: New.
1021
863412d6
EB
10222009-01-24 Eric Botcazou <ebotcazou@adacore.com>
1023
1024 * config/sparc/linux.h (DBX_REGISTER_NUMBER): Delete.
1025 * config/sparc/linux64.h (DBX_REGISTER_NUMBER): Likewise.
1026 * config/sparc/sysv4.h (DBX_REGISTER_NUMBER): Likewise.
1027
8c684300
L
10282009-01-24 H.J. Lu <hongjiu.lu@intel.com>
1029
1030 PR c/38938
93f1527a 1031 * c-opts.c (c_common_handle_option): Update warn_pointer_sign
8c684300
L
1032 properly.
1033
b840fb02
SP
10342009-01-24 Sebastian Pop <sebastian.pop@amd.com>
1035
1036 PR tree-optimization/38953
1037 * graphite.c (graphite_verify): Add a call to verify_loop_closed_ssa.
1038 (scop_adjust_phis_for_liveouts): Initialize false_i to zero.
1039 (gloog): Split the exit of the scop when the scop exit is a loop exit.
1040 (graphite_transform_loops): Only call cleanup_tree_cfg if gloog
1041 changed the CFG.
1042
ecee559f
PB
10432009-01-24 Paul Brook <paul@codesourcery.com>
1044
1045 * config/arm/neon.md (neon_type): Move to arm.md.
1046 (neon_mov<VSTRUCT>): Add neon_type attribute.
1047 * config/arm/arm.md (neon_type): Move to here.
1048 (conds): Add "unconditioal" and use as default for NEON insns.
1049
61ad0914
BE
10502009-01-24 Ben Elliston <bje@au.ibm.com>
1051
1052 * bitmap.h (BITMAP_FREE): Eliminate `implicit conversion from
1053 void *' warning from -Wc++-compat.
1054 * Makefile.in (dominance.o-warn): Remove.
1055
9bacafeb
PB
10562008-01-23 Paolo Bonzini <bonzini@gnu.org>
1057
1058 PR tree-optimization/38932
1059 * fold-const.c (fold_unary_ignore_overflow): New.
1060 * tree.h (fold_unary_ignore_overflow): Declare.
1061 * tree-ssa-ccp.c (ccp_fold): Use fold_unary_ignore_overflow.
1062 * tree-ssa-sccvn.c (visit_reference_op_load,
1063 simplify_unary_expression): Likewise.
1064
2cd36c22
AN
10652009-01-22 Adam Nemet <anemet@caviumnetworks.com>
1066
1067 * c-decl.c (finish_struct): Move code to set DECL_PACKED after
1068 DECL_BIT_FIELD is alreay known. Also inherit packed for bitfields
1069 regardless of their type.
1070 * c-common.c (handle_packed_attribute): Don't ignore packed on
1071 bitfields.
1072 * c.opt (Wpacked-bitfield-compat): New warning option.
1073 * stor-layout.c (place_field): Warn if offset of a field changed.
1074 * doc/extend.texi (packed): Mention the ABI change.
1075 * doc/invoke.texi (-Wpacked-bitfield-compat): Document.
1076 (Warning Options): Add it to the list.
1077
e4e624ab
L
10782009-01-22 H.J. Lu <hongjiu.lu@intel.com>
1079
1080 * c-opts.c (c_common_post_options): Fix a typo in comments.
1081
d0ea0759
SE
10822009-01-22 Steve Ellcey <sje@cup.hp.com>
1083
1084 PR middle-end/38615
1085 * gimplify.c (gimplify_init_constructor): Fix promotion of const
1086 variables to static.
1087 * doc/invoke.texi (-fmerge-all-constants): Update description.
1088
87673f84
UB
10892009-01-22 Uros Bizjak <ubizjak@gmail.com>
1090
1091 PR target/38931
1092 * config/i386/i386.md (*movsi_1): Use type "mmx" for alternative 2.
1093 (*movdi_1_rex64): Use type "mmx" for alternative 5.
1094
96339268
RE
10952009-01-22 Richard Earnshaw <rearnsha@arm.com>
1096
1097 * arm.h (DATA_ALIGNMENT): Align structures, unions and arrays to
1098 a word boundary.
1099 (LOCAL_ALIGNMENT): Similarly.
1100
442dc742 11012009-01-22 Mark Shinwell <shinwell@codesourcery.com>
87673f84 1102 Joseph Myers <joseph@codesourcery.com>
442dc742
MS
1103
1104 * config/arm/arm.c (all_architectures): Add iWMMXt2 entry.
1105 * config/arm/arm-cores.def: New ARM_CORE entry for iWMMXt2.
1106 * config/arm/arm-tune.md: Regenerate.
1107 * doc/invoke.texi (ARM Options): Document -mcpu=iwmmxt2 and
1108 -march=iwmmxt2.
1109
9b34732e
MS
11102009-01-22 Mark Shinwell <shinwell@codesourcery.com>
1111
1112 * config/arm/bpabi.h (SUBTARGET_EXTRA_ASM_SPEC): Bump EABI
1113 version number to five.
1114
03c2a308
DS
11152009-01-22 Dodji Seketeli <dodji@redhat.com>
1116
1117 PR c++/38930
1118 * c-decl.c: (clone_underlying_type): Revert PR c++/26693 changes.
1119 * c-common.c (set_underlying_type): Likewise.
1120 (is_typedef_decl ): Likewise
1121 * tree.h: Likewise
1122 (set_underlying_type): Likewise.
1123 (is_typedef_type): Likewise.
1124
1240d76e
VM
11252009-01-21 Vladimir Makarov <vmakarov@redhat.com>
1126
1127 PR middle-end/38587
1128 * ira-color.c (coalesce_spill_slots): Don't coalesce allocnos
1129 crossing setjmps.
1130
b8a1087d
DK
11312009-01-21 Dave Korn <dave.korn.cygwin@gmail.com>
1132
1133 PR bootstrap/37660
1134 * config/i386/cygwin.h (SHARED_LIBGCC_SPEC): New helper macro.
1135 (LIBGCC_SPEC): Don't define.
1136 (REAL_LIBGCC_SPEC): Define instead, using SHARED_LIBGCC_SPEC.
1137
435da628
UB
11382009-01-21 Uros Bizjak <ubizjak@gmail.com>
1139
1140 PR rtl-optimization/38879
1141 * alias.c (base_alias_check): Unaligned access via AND address can
1142 alias all surrounding object types except those with sizes equal
1143 or wider than the size of unaligned access.
1144
d597b3ce
DS
11452009-01-21 Dodji Seketeli <dodji@redhat.com>
1146
1147 PR c++/26693
435da628 1148 * c-decl.c: (clone_underlying_type): Move this ...
d597b3ce 1149 * c-common.c (set_underlying_type): ... here.
435da628 1150 Also, make sure the function properly sets TYPE_STUB_DECL() on
d597b3ce
DS
1151 the newly created typedef variant type.
1152 (is_typedef_decl ): New entry point.
1153 * tree.h: Added a new member member_types_needing_access_check to
1154 struct tree_decl_non_common.
1155 (set_underlying_type): New entry point.
1156 (is_typedef_type): Likewise.
1157
71a6fe66
BM
11582009-01-21 Bingfeng Mei <bmei@broadcom.com>
1159
1160 * alias.c (walk_mems_1, walk_mems_2, insn_alias_sets_conflict_p):
1161 Check whether two instructions have memory references that
1162 belong to conflicting alias sets. walk_mems_1 and walk_mems_2
1163 are helper functions for traversing.
1164 * alias.h (insn_alias_sets_confilict_p): New prototypes.
1165 * ddg.c (add_inter_loop_mem_dep): Call insn_alias_sets_conflict_p
1166 not to draw dependency edge for instructions with non-conflicting
1167 alias sets.
1168
5a248274
JM
11692009-01-20 Joseph Myers <joseph@codesourcery.com>
1170
1171 PR other/38758
1172 * longlong.h: Update copyright years. Use soft-fp license
1173 notice. Sync __clz_tab declaration with glibc.
1174
4b84f3de
SE
11752009-01-20 Steve Ellcey <sje@cup.hp.com>
1176
1177 PR target/30687
1178 * doc/extend.texi (syscall_linkage): New.
1179 (version_id): Modify.
1180
37348bf1 11812009-01-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
435da628 1182 Richard Guenther <rguenther@suse.de>
37348bf1
AP
1183
1184 PR tree-optimization/38747
1185 PR tree-optimization/38748
1186 * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Disable the VCE
1187 conversion if the base address is an indirect reference and the
1188 aliasing sets could cause issues.
1189
d0a58904
SP
11902009-01-20 Sebastian Pop <sebastian.pop@amd.com>
1191
1192 * common.opt (fgraphite, fgraphite-identity): Add comment for
1193 explaining why these options are not documented.
1194
71e7afb2
SP
11952009-01-20 Sebastian Pop <sebastian.pop@amd.com>
1196
1197 * graphite.c (stmt_simple_for_scop_p): Also handle cases when
1198 gimple_call_lhs is NULL.
1199
09efeca1
PB
12002008-01-20 Paolo Bonzini <bonzini@gnu.org>
1201
1202 PR target/38868
1203 * emit-rtl.c (adjust_address_1): Make sure memref is never
1204 overwritten.
1205
cbb8dee3
BE
12062009-01-20 Ben Elliston <bje@au.ibm.com>
1207
1208 * libgcov.c (__gcov_execl, __gcov_execlp, __gcov_execle): Remove
435da628 1209 const qualifier from arg parameter. Remove unnecessary cast to char *.
cbb8dee3
BE
1210 * gcov-io.h (__gcov_execl, __gcov_execlp, __gcov_execle): Remove
1211 const qualifier from arg 2.
1212
72c66596
IS
12132009-01-19 Iain Sandoe <iain.sandoe@sandoe-acoustics.co.uk>
1214
435da628 1215 * config/darwin.h: Add static-libgfortran to LINK_SPEC.
72c66596 1216
f68211cd
VM
12172009-01-19 Vladimir Makarov <vmakarov@redhat.com>
1218
1219 PR c/38869
1220 * rtl.h (reinit_regs): New prototype.
1221 * regclass.c: Include ira.h.
1222 (reinit_regs): New.
1223 * Makefile.in (regclass.o): Add ira.h.
1224 * config/i386/i386.c (ix86_maybe_switch_abi): Use reinit_regs.
1225
6e4f1168
L
12262009-01-18 H.J. Lu <hongjiu.lu@intel.com>
1227
1228 PR target/38736
1229 * c-common.c (handle_aligned_attribute): Use
1230 ATTRIBUTE_ALIGNED_VALUE instead of BIGGEST_ALIGNMENT for
1231 default alignment value.
1232
1233 * c-cppbuiltin.c (c_cpp_builtins): Define __BIGGEST_ALIGNMENT__.
1234
1235 * defaults.h (ATTRIBUTE_ALIGNED_VALUE): New.
1236 * config/i386/i386.h (ATTRIBUTE_ALIGNED_VALUE): Likewise.
1237
1238 * doc/extend.texi: Update __attribute__ ((aligned)). Document
1239 __BIGGEST_ALIGNMENT__.
1240
1241 * doc/tm.texi: Document ATTRIBUTE_ALIGNED_VALUE.
1242
890065bf
RG
12432009-01-18 Richard Guenther <rguenther@suse.de>
1244
1245 PR tree-optimization/38819
1246 * tree-flow.h (operation_could_trap_helper_p): Declare.
1247 * tree-eh.c (operation_could_trap_helper_p): Export.
1248 * tree-ssa-sccvn.h (vn_nary_may_trap): Declare.
1249 * tree-ssa-sccvn.c (vn_nary_may_trap): New function.
1250 * tree-ssa-pre.c (insert_into_preds_of_block): Check if we
1251 are about to insert a possibly trapping instruction and fail
1252 in this case.
1253
a729d731
AS
12542009-01-18 Andreas Schwab <schwab@suse.de>
1255
1256 * doc/install.texi (Configuration): Remove obsolete paragraph
1257 about use of --with-gnu-ld with --with-gnu-as.
1258
a640c13b
KH
12592009-01-18 Kazu Hirata <kazu@codesourcery.com>
1260
1261 * doc/extend.texi, doc/gimple.texi, doc/invoke.texi,
1262 doc/md.texi, doc/sourcebuild.texi, doc/tm.texi: Fix typos.
1263 Follow spelling conventions.
1264
dba2cc0c
BE
12652009-01-18 Ben Elliston <bje@au.ibm.com>
1266
1267 * bitmap.c (bitmap_obstack_alloc_stat): Adjust cast to eliminate
1268 C++ warning about implicit conversion from void * to struct
1269 bitmap_head_def *.
1270 (bitmap_obstack_free): Likewise for bitmap_element *.
bc127c63 1271 * Makefile.in (bitmap.o-warn): Remove.
dba2cc0c 1272
2207a498
DK
12732009-01-17 Dave Korn <dave.korn.cygwin@gmail.com>
1274
1275 * Makefile.in (BACKENDLIBS): Reorder to match dependencies.
1276
8137e465
SP
12772009-01-17 Sebastian Pop <sebastian.pop@amd.com>
1278 Tobias Grosser <tobi.grosser@amd.com>
1279
1280 * graphite.c (graphite_trans_scop_block): Do not block single
1281 nested loops.
1282
5be1c58c
AO
12832009-01-16 Alexandre Oliva <aoliva@redhat.com>
1284
1285 * ebitmap.h (ebitmap_iter_init): Initialize all fields.
1286 * ipa-struct-reorg.c (gen_struct_type): Replace known-true
1287 test with assertion.
1288
786ce82d
RG
12892009-01-16 Richard Guenther <rguenther@suse.de>
1290
1291 PR tree-optimization/38835
1292 PR middle-end/36227
1293 * fold-const.c (fold_binary): Remove PTR + INT -> (INT)(PTR p+ INT)
1294 and INT + PTR -> (INT)(PTR p+ INT) folding.
1295 * tree-ssa-address.c (create_mem_ref): Properly use POINTER_PLUS_EXPR.
1296
c1cb09ad
AN
12972009-01-16 Adam Nemet <anemet@caviumnetworks.com>
1298
1299 PR target/38554
1300 * expmed.c (expand_shift): With SHIFT_COUNT_TRUNCATED, don't lift
1301 the subreg from a lowpart subreg if it is also casting the value.
1302
bcab4e19
SP
13032009-01-16 Sebastian Pop <sebastian.pop@amd.com>
1304 Tobias Grosser <tobi.grosser@amd.com>
1305
1306 * graphite.c (compare_prefix_loops): New.
1307 (build_scop_canonical_schedules): Rewritten.
1308 (graphite_transform_loops): Move build_scop_canonical_schedules
1309 after build_scop_iteration_domain.
1310
0b040072
SP
13112009-01-16 Sebastian Pop <sebastian.pop@amd.com>
1312 Tobias Grosser <tobi.grosser@amd.com>
1313
1314 * graphite.c (add_conditions_to_domain): Add the loops to
1315 the dimension of the iteration domain. Do copy the domain
1316 only when it exists.
1317 (build_scop_conditions_1): Do not call add_conditions_to_domain.
1318 (add_conditions_to_constraints): New.
1319 (can_generate_code_stmt, can_generate_code): Removed.
1320 (gloog): Do not call can_generate_code.
1321 (graphite_transform_loops): Call add_conditions_to_constraints
1322 after building the iteration domain.
1323
56c6a499
JJ
13242009-01-16 Jakub Jelinek <jakub@redhat.com>
1325
1326 PR tree-optimization/38789
1327 * tree-ssa-threadedge.c
1328 (record_temporary_equivalences_from_stmts_at_dest): Ignore calls to
1329 __builtin_constant_p.
1330
c95b2534 13312009-01-16 Kenneth Zadeck <zadeck@naturalbridge.com>
cd3f1729
KZ
1332
1333 * dce.c (delete_unmarked_insns): Reversed the order that insns are
1334 examined before deleting them.
1335
c433cb14
RE
13362009-01-16 Richard Earnshaw <rearnsha@arm.com>
1337
1338 * function.c (aggregate_value_p): Correctly extract the function
1339 type from CALL_EXPR_FN lookup.
1340
c95b2534 13412009-01-16 Hariharan Sandanagobalane <hariharan@picochip.com>
27d62fa4
HS
1342
1343 * config/picochip/picochip.c (picochip_override_options): Revert
1344 CFI asm flag disable commited previously.
1345
c77bb78f
SP
13462009-01-15 Sebastian Pop <sebastian.pop@amd.com>
1347 Tobias Grosser <tobi.grosser@amd.com>
1348 Jan Sjodin <jan.sjodin@amd.com>
1349
1350 * graphite.c (scan_tree_for_params): On substractions negate
1351 all the coefficients of the term.
1352 (clast_to_gcc_expression_red): New. Handle reduction expressions
1353 of more than two operands.
1354 (clast_to_gcc_expression): Call clast_to_gcc_expression_red.
1355 (get_vdef_before_scop): Handle also the case of default definitions.
1356
574af2d6
RS
13572009-01-15 Richard Sandiford <rdsandiford@googlemail.com>
1358
1359 * caller-save.c (add_used_regs_1, add_used_regs): New functions.
1360 (insert_one_insn): Use them instead of REG_DEAD and REG_INC notes.
1361 Also use them when walking CALL_INSN_FUNCTION_USAGE.
1362
e939805b
L
13632009-01-15 H.J. Lu <hongjiu.lu@intel.com>
1364 Joey Ye <joey.ye@intel.com>
1365
1366 PR middle-end/37843
1367 * cfgexpand.c (expand_stack_alignment): Don't update stack
1368 boundary nor check incoming stack boundary here.
1369 (gimple_expand_cfg): Update stack boundary and check incoming
1370 stack boundary here.
1371
c95b2534 13722009-01-15 Kenneth Zadeck <zadeck@naturalbridge.com>
750900db 1373
435da628 1374 * dce.c (find_call_stack_args, delete_unmarked_insns): Fixed comments.
750900db 1375
0196c95e
JJ
13762009-01-14 Jakub Jelinek <jakub@redhat.com>
1377
1378 PR rtl-optimization/38245
1379 * calls.c (expand_call): Add stack arguments to
1380 CALL_INSN_FUNCTION_USAGE even for pure calls (when
1381 ACCUMULATE_OUTGOING_ARGS) and even for args partially passed
1382 in regs and partially in memory or BLKmode arguments.
1383 (emit_library_call_value_1): Add stack arguments to
1384 CALL_INSN_FUNCTION_USAGE even for pure calls (when
1385 ACCUMULATE_OUTGOING_ARGS).
1386 * dce.c: Include tm_p.h.
1387 (find_call_stack_args): New function.
1388 (deletable_insn_p): Call it for CALL_P insns. Add ARG_STORES
1389 argument.
1390 (mark_insn): Call find_call_stack_args for CALL_Ps.
1391 (prescan_insns_for_dce): Walk insns backwards in bb rather than
1392 forwards. Allocate and free arg_stores bitmap if needed, pass it
1393 down to deletable_insn_p, don't mark stores set in arg_stores
1394 bitmap, clear the bitmap at the beginning of each bb.
1395 * Makefile.in (dce.o): Depend on $(TM_P_H).
1396
6df6bcfa
MM
13972009-01-14 Michael Meissner <gnu@the-meissners.org>
1398
1399 PR target/22599
435da628
UB
1400 * config/i386/i386.c (print_operand): Add tests for 'D', 'C', 'F', 'f'
1401 to make sure the insn is a conditional test (bug 22599). Reformat a
1402 few long lines.
6df6bcfa 1403
765ec70c
SP
14042009-01-14 Sebastian Pop <sebastian.pop@amd.com>
1405
1406 PR middle-end/38431
1407 * graphite.c (get_vdef_before_scop, scop_adjust_vphi): New.
1408 (scop_adjust_phis_for_liveouts): Call scop_adjust_vphi.
1409 (gloog): Do not call cleanup_tree_cfg.
1410 (graphite_transform_loops): Call cleanup_tree_cfg after all
1411 scops have been code generated.
1412
7de2b688
BS
14132009-01-14 Basile Starynkevitch <basile@starynkevitch.net>
1414 * doc/gty.texi (Invoking the garbage collector): Added new node
1415 and section documenting ggc_collect.
1416
10bd6c5c
RG
14172009-01-14 Richard Guenther <rguenther@suse.de>
1418
1419 PR tree-optimization/38826
1420 PR middle-end/38477
1421 * tree-ssa-structalias.c (emit_alias_warning): Emit the pointer
1422 initialization notes only if we actually emitted a warning.
1423 (intra_create_variable_infos): Add constraints for a result decl
1424 that is passed by hidden reference.
1425 (build_pred_graph): Mark all related variables non-direct on
1426 address-taking.
1427
9c7c70ee
NC
14282009-01-14 Nick Clifton <nickc@redhat.com>
1429
1430 * ira-conflicts.c: Include addresses.h for the definition of
1431 base_reg_class.
435da628
UB
1432 (ira_build_conflicts): Use base_reg_class instead of BASE_REG_CLASS.
1433 * Makefile.in: Add a dependency of ira-conflicts.o on addresses.h.
9c7c70ee 1434
cf0c2a60
VM
14352009-01-13 Vladimir Makarov <vmakarov@redhat.com>
1436
1437 PR target/38811
1438 * Makefile.in (ira-lives.o): Add except.h.
1439
1440 * ira-lives.c: Include except.h.
1441 (process_bb_node_lives): Process can_throw_internal.
1442
d3302fd3
JJ
14432009-01-13 Jakub Jelinek <jakub@redhat.com>
1444
1445 PR rtl-optimization/38774
1446 * combine.c (simplify_set): When undoing cc_use change, don't do
1447 PUT_CODE on the newly created comparison, but instead put back the
1448 old comparison.
1449
7ab23fd0
JM
14502009-01-13 Joseph Myers <joseph@codesourcery.com>
1451
1452 * doc/invoke.texi (ARM Options): Update lists of -mcpu and -march
1453 values. Remove duplicate arm8 entry.
1454
f9344488
SP
14552009-01-13 Sebastian Pop <sebastian.pop@amd.com>
1456
1457 PR tree-optimization/38786
1458 * graphite.c (expand_scalar_variables_ssa_name): New, outlined from
1459 the SSA_NAME case of expand_scalar_variables_expr.
1460 Set the type of an expression to the type of its assign statement.
1461 (expand_scalar_variables_expr): Also gather the scalar computation
1462 used to index the memory access. Do not pass loop_p.
1463 Fix comment. Stop recursion on tcc_constant or tcc_declaration.
1464 (expand_scalar_variables_stmt): Pass to expand_scalar_variables_expr
bef3c57b
UB
1465 the gimple_stmt_iterator where it inserts new code.
1466 Do not pass loop_p.
f9344488
SP
1467 (copy_bb_and_scalar_dependences): Do not pass loop_p.
1468 (translate_clast): Update call to copy_bb_and_scalar_dependences.
1469
2d8bb84d
SP
14702009-01-13 Sebastian Pop <sebastian.pop@amd.com>
1471
1472 * graphite.h (debug_value): Removed.
1473 * graphite.c (debug_value): Removed.
1474
ff128632
RE
14752009-01-13 Richard Earnshaw <rearnsha@arm.com>
1476
435da628
UB
1477 * config/arm/arm.c (output_move_double): Don't synthesize thumb-2
1478 ldrd/strd with two 32-bit instructions.
ff128632 1479
d5a0a47b
RE
14802009-01-13 Richard Earnshaw <rearnsha@arm.com>
1481
435da628
UB
1482 * config/arm/arm.c (struct processors): Pass for speed down into
1483 cost helper functions.
d5a0a47b
RE
1484 (const_ok_for_op): Handle COMPARE and inequality nodes.
1485 (arm_rtx_costs_1): Rewrite.
1486 (arm_size_rtx_costs): Update prototype.
1487 (arm_rtx_costs): Pass speed down to helper functions.
1488 (arm_slowmul_rtx_costs): Rework cost calculations.
1489 (arm_fastmul_rtx_costs, arm_xscale_rtx_costs): Likewise.
1490 (arm_9e_rtx_costs): Likewise.
1491
26d5bf5b
UB
14922009-01-13 Uros Bizjak <ubizjak@gmail.com>
1493
1494 * config/alpha/alpha.c (alpha_legitimate_address_p): Explicit
435da628 1495 relocations of local symbols wider than UNITS_PER_WORD are not valid.
26d5bf5b
UB
1496 (alpha_legitimize_address): Do not split local symbols wider than
1497 UNITS_PER_WORD into HIGH/LO_SUM parts.
1498
5d14e3d5
DS
14992009-01-13 Danny Smith <dannysmith@users.sourceforge.net>
1500
1501 PR bootstrap/38580
1502 * gcc.c (process_command): Replace call to execvp with calls
1503 to pex_one and exit.
1504
33faafca
AS
15052009-01-03 Anatoly Sokolov <aesok@post.ru>
1506
1507 PR target/29141
1508 * config/avr/t-avr (LIB1ASMFUNCS): Add _tablejump_elpm.
1509 * config/avr/libgcc.S (__do_global_ctors, __do_global_dtors): Add
1510 variant for devices with 3-byte PC.
1511 (__tablejump_elpm__) : New.
1512
634b5df5
JJ
15132009-01-12 Jakub Jelinek <jakub@redhat.com>
1514
1515 PR c/32041
1516 * c-parser.c (c_parser_postfix_expression): Allow `->' in
1517 offsetof member-designator, handle it as `[0].'.
1518
2842bb86
JDA
15192009-01-12 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1520
1521 * pa.c (pa_asm_output_mi_thunk): Use pc-relative branch to thunk
1522 function when not using named sections on targets with named sections
1523 if branch distance is less than 262132.
1524
76ee70f6
RE
15252009-01-12 Richard Earnshaw <rearnsha@arm.com>
1526
1527 * combine.c (combine_instructions): Recompute
1528 optimize_this_for_speed_p for each BB in the main combine loop.
1529
f56e675d
TB
15302009-01-12 Tomas Bily <tbily@suse.cz>
1531
1532 PR middlend/38385
26d5bf5b
UB
1533 * tree-loop-distribution.c (prop_phis): New function.
1534 (generate_builtin): Call prop_phis.
1535 * testsuite/gcc.dg/tree-ssa/pr38385.c: New file.
f56e675d 1536
c2152239
JJ
15372009-01-12 Jakub Jelinek <jakub@redhat.com>
1538
1539 PR tree-optimization/38807
1540 * tree-ssa-reassoc.c (remove_visited_stmt_chain): Don't look at
1541 gimple_visited_p unless stmt is GIMPLE_ASSIGN.
1542
0e510b3e
AN
15432009-01-11 Adam Nemet <anemet@caviumnetworks.com>
1544
1545 * expmed.c (store_bit_field_1): Properly truncate the paradoxical
1546 subreg of op0 to the original op0.
1547
c95b2534 15482009-01-11 Laurent GUERBY <laurent@guerby.net>
10270471
LG
1549
1550 * doc/sourcebuild.texi (Source Tree): Move up intl and fixinc.
1551
53a7ff9a
MS
15522009-01-11 Markus Schoepflin <markus.schoepflin@comsoft.de>
1553
1554 PR debug/7055
1555 * gcc/mips-tfile.c (parse_def): Fix parsing of def strings
1556 starting with digits.
1557
b3a796bc
JJ
15582009-01-10 Jakub Jelinek <jakub@redhat.com>
1559
1560 PR target/38695
1561 * config/arm/arm.c (arm_is_long_call_p): Don't call
1562 arm_function_in_section_p if decl isn't a FUNCTION_DECL.
1563
b21b850e
SB
15642009-01-09 Steven Bosscher <steven@gcc.gnu.org>
1565
1566 * regrename.c (regrename_optimize): Fix dumping.
1567 (find_oldest_value_reg): Preserve REG_POINTER.
1568 (copy_hardreg_forward_1): Likewise.
1569
e0e10d3a
DN
15702009-01-09 Diego Novillo <dnovillo@google.com>
1571
bf9b2cc9 1572 * gimple.h (struct gimple_statement_base) <uid>: Document
e0e10d3a
DN
1573 the restrictions on its use.
1574 (gimple_uid): Tidy.
1575 (gimple_set_uid): Tidy.
1576
c9da2ae8
JJ
15772009-01-09 Jakub Jelinek <jakub@redhat.com>
1578
1579 * config/i386/i386.c (ix86_expand_movmem, ix86_expand_setmem): Add
1580 zero guard even if align_bytes != 0 and count is smaller than
1581 size_needed.
1582
a174c19c
VM
15832008-01-09 Vladimir Makarov <vmakarov@redhat.com>
1584
1585 PR rtl-optimization/38495
26d5bf5b 1586 * ira-emit.c (print_move_list, ira_debug_move_list): New functions.
a174c19c
VM
1587 (add_range_and_copies_from_move_list): Print all added ranges.
1588 Add ranges to memory optimized destination.
1589
260fda3d
JJ
15902009-01-09 Jakub Jelinek <jakub@redhat.com>
1591
6f6278ad
JJ
1592 PR target/38686
1593 PR target/38708
1594 * config/i386/i386.c (override_options): Reject
1595 -mstringop-strategy=rep_8byte with -m32.
1596 (ix86_expand_movmem): For size_needed == 1 set epilogue_size_needed
1597 to 1. Do count comparison against epilogue_size_needed at compile
1598 time even when count_exp was constant forced into register. For
1599 size_needed don't jump to epilogue, instead just avoid aligning
1600 and invoke the body algorithm. If need_zero_guard, add zero guard
1601 even if count is non-zero, but smaller than size_needed + number of
1602 bytes that could be stored for alignment.
1603 (ix86_expand_setmem): For size_needed == 1 set epilogue_size_needed
1604 to 1. If need_zero_guard, add zero guard even if count is non-zero,
1605 but smaller than size_needed + number of bytes that could be stored
1606 for alignment. Compare size_needed with epilogue_size_needed instead
1607 of desired_align - align, don't adjust size_needed, pass
1608 epilogue_size_needed to the epilogue expanders.
1609
260fda3d 1610 PR c/35742
26d5bf5b 1611 * c-pretty-print.c (pp_c_expression): Handle GOTO_EXPR like BIND_EXPR.
260fda3d 1612
67b846fa
JDA
16132009-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1614
1615 * pa.c (last_address): Change to unsigned.
1616 (update_total_code_bytes): Change argument to unsigned. Don't
1617 check if insn addresses are set.
1618 (pa_output_function_epilogue): Set last_address to UINT_MAX if insn
1619 addresses are not set.
1620 (pa_asm_output_mi_thunk): Handle wrap when updating last_address.
1621
91c82473
NC
16222009-01-09 Nick Clifton <nickc@redhat.com>
1623
1624 * config/sh/symbian.c: Replace uses of DECL_INLINE with
1625 DECL_DECLARED_INLINE_P.
1626
4017e262
JJ
16272009-01-09 Jakub Jelinek <jakub@redhat.com>
1628
0a49e5c2
JJ
1629 PR middle-end/38347
1630 * dojump.c (do_jump_by_parts_zero_rtx): Use mode instead of
1631 GET_MODE (op0) in operand_subword_force calls.
1632
4017e262
JJ
1633 PR middle-end/38771
1634 * fold-const.c (fold_unary): For COMPOUND_EXPR and COND_EXPR,
1635 fold_convert arg0 operands to TREE_TYPE (op0) first.
1636
7cd06356
VM
16372009-01-08 Vladimir Makarov <vmakarov@redhat.com>
1638
1639 * params.def (ira-max-conflict-table-size): Decrease default value
1640 to 1000.
1641
96867bbd
JJ
16422009-01-08 Jakub Jelinek <jakub@redhat.com>
1643
1644 PR tree-optimization/37031
1645 * lambda-code.c (lambda_collect_parameters): Call pointer_set_destroy
1646 on parameter_set.
1647 (build_access_matrix): Reserve correct size for AM_MATRIX vector,
1648 allocate it using gc instead of heap, use VEC_quick_push instead of
1649 VEC_safe_push.
1650 * graphite.c (build_access_matrix): Allocate AM_MATRIX vector using gc
1651 instead of heap, use VEC_quick_push instead of VEC_safe_push.
1652 * tree-data-ref.h (struct access_matrix): Change matrix to gc
1653 allocated vector from heap allocated.
1654 * lambda.h: Add DEF_VEC_ALLOC_P for gc allocated lambda_vector.
1655 * tree-loop-linear.c (linear_transform_loops): Allocate nest
1656 vector only after perfect_loop_nest_depth call.
1657
68f61c3d
SP
16582009-01-08 Sebastian Pop <sebastian.pop@amd.com>
1659 Jan Sjodin <jan.sjodin@amd.com>
1660
1661 PR tree-optimization/38559
1662 * graphite.c (debug_value, copy_constraint,
1663 swap_constraint_variables, scale_constraint_variable, ): New.
1664 (get_lower_bound, get_upper_bound): Removed.
1665 (graphite_trans_bb_strip_mine): Clean up this code that works
1666 only for constant number of iterations. Fully copy upper and
1667 lower bound constraints, not only the constant part of them.
1668 * graphite.h (debug_value): Declared.
1669
82567e33
IR
16702009-01-08 Ira Rosen <irar@il.ibm.com>
1671
1672 PR tree-optimization/37194
1673 * tree-vect-transform.c (vect_estimate_min_profitable_iters):
1674 Don't add the cost of cost model guard in prologue to scalar
1675 outside cost in case of known number of iterations.
1676
7da13f1d
NF
16772009-01-07 Nathan Froyd <froydnj@codesourcery.com>
1678 Alan Modra <amodra@bigpond.net.au>
1679
1680 * config/rs6000/rs6000.c (rs6000_legitimize_address): Check for
1681 non-word-aligned REG+CONST addressing.
1682
c0f64575
UB
16832009-01-07 Uros Bizjak <ubizjak@gmail.com>
1684
1685 PR target/38706
1686 * config/alpha/alpha.c (alpha_end_function): For TARGET_ABI_OSF, call
1687 free_after_compilation when outputting a thunk.
1688 (alpha_output_mi_thunk_osf): Assert that we are processing a thunk.
1689 Do not call free_after_compilation here.
1690
301b6a4e
UB
16912009-01-07 Uros Bizjak <ubizjak@gmail.com>
1692
1693 * config/i386/i386.c (ix86_target_string): Use ARRAY_SIZE.
301b6a4e
UB
1694 (ix86_valid_target_attribute_inner_p): Ditto.
1695
6a114766
JS
16962009-01-07 Jan Sjodin <jan.sjodin@amd.com>
1697
1698 PR tree-optimization/38492
1699 PR tree-optimization/38498
1700 * tree-check.c (operator_is_linear, scev_is_linear_expression): New.
1701 * tree-chrec.h (scev_is_linear_expression): Declared.
1702 * graphite.c (graphite_cannot_represent_loop_niter): New.
1703 (scopdet_basic_block_info): Call graphite_cannot_represent_loop_niter.
1704 (graphite_loop_normal_form): Use gcc_assert.
1705 (scan_tree_for_params): Use CASE_CONVERT.
1706 (phi_node_is_iv, bb_contains_non_iv_scalar_phi_nodes): New.
1707 (build_scop_conditions_1): Call bb_contains_non_iv_scalar_phi_nodes.
1708 Use gcc_assert. Discard scops that contain unhandled cases.
1709 (build_scop_conditions): Return a boolean status for unhandled cases.
1710 (strip_mine_profitable_p): Print the loop number, not its depth.
1711 (is_interchange_valid): Pass the depth of the loop nest, don't
1712 recompute it wrongly.
1713 (graphite_trans_bb_block): Same.
1714 (graphite_trans_bb_block): Print tentative of loop blocking.
1715 (graphite_trans_scop_block): Do not print that the loop has been
1716 blocked.
1717 (graphite_transform_loops): Do not handle scops that contain condition
1718 scalar phi nodes.
1719
65b82caa
L
17202009-01-07 H.J. Lu <hongjiu.lu@intel.com>
1721
1722 AVX Programming Reference (December, 2008)
1723 * config/i386/avxintrin.h (_mm256_stream_si256): New.
1724 (_mm256_stream_pd): Likewise.
1725 (_mm256_stream_ps): Likewise.
1726
1727 * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVNTDQ256,
1728 IX86_BUILTIN_MOVNTPD256 and IX86_BUILTIN_MOVNTPS256.
1729 (ix86_special_builtin_type): Add VOID_FTYPE_PV4DI_V4DI.
1730 (bdesc_special_args): Add __builtin_ia32_movntdq256,
1731 __builtin_ia32_movntpd256 and __builtin_ia32_movntps256.
1732 (ix86_init_mmx_sse_builtins): Handle VOID_FTYPE_PV4DI_V4DI.
1733 (ix86_expand_special_args_builtin): Likewise.
1734
1735 * config/i386/sse.md (AVXMODEDI): New.
1736 (avx_movnt<mode>): Likewise.
1737 (avx_movnt<mode>): Likewise.
1738 (<sse>_movnt<mode>): Remove AVX support.
1739 (sse2_movntv2di): Likewise.
1740
cef158f9
RG
17412009-01-07 Richard Guenther <rguenther@suse.de>
1742
1743 PR middle-end/38751
1744 * fold-const.c (extract_muldiv): Remove obsolete comment.
1745 (fold_plusminus_mult_expr): Undo MINUS_EXPR
1746 to PLUS_EXPR canonicalization for the canonicalization.
1747
246cb5be
GP
17482009-01-07 Gerald Pfeifer <gerald@pfeifer.com>
1749
1750 * doc/install.texi (alpha*-dec-osf*): Remove note on 32-bit
1751 hosted cross-compilers generating less efficient code.
1752
84b9b872
RS
17532009-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1754
1755 * function.h (rtl_data): Add a dbr_scheduled_p field.
1756 * reorg.c (dbr_schedule): Set it.
1757 (gate_handle_delay_slots): Check it.
1758 * config/mips/mips.c (mips_base_delayed_branch): Delete.
1759 (mips_reorg): Check flag_delayed_branch instead of
1760 mips_base_delayed_branch.
1761 (mips_override_options): Don't set mips_base_delayed_branch
1762 or flag_delayed_branch.
1763
ace984c8
RS
17642009-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1765
1766 PR rtl-optimization/38426.
1767 * ira.c (ira): Set current_function_is_leaf earlier.
1768
7ad7809b
JJ
17692009-01-06 Jakub Jelinek <jakub@redhat.com>
1770
1771 PR rtl-optimization/38722
1772 * combine.c (try_combine): Don't modify PATTERN (i3) and notes
1773 too early, only set a flag and modify after last possible
1774 undo_all point.
1775
c52ec948
JJ
17762009-01-06 Janis Johnson <janis187@us.ibm.com>
1777
1778 PR c/34252
1779 * ginclude/float.h: Rename DECnn_DEN to DECnn_SUBNORMAL_MIN.
1780 * real.c (decimal_single_format): Correct values of emin and emax.
1781 (decimal_double_format): Ditto.
1782 (decimal_quad_format): Ditto.
1783 * c-cppbuiltin.c (builtin_define_decimal_float_constants): Adjust
1784 computation of DECnn_MIN and DECnn_MAX for corrected values of
1785 emin and emax. Define __DECnn_SUBNORMAL_MIN__ instead of
1786 __DECnn_MIN__, and adjust its computation for the corrected value
1787 of emin.
1788
300240e1
JH
17892009-01-06 Jan Hubicka <jh@suse.cz>
1790
1791 PR target/38744
435da628 1792 * config/i386/i386.c (ix86_expand_call): Use ARRAY_SIZE.
300240e1 1793
271c069e
GP
17942009-01-06 Gerald Pfeifer <gerald@pfeifer.com>
1795
1796 * doc/contrib.texi (Contributors): Slightly adjust the end note.
1797 Add Robert Clark to the list of testers.
1798
64e4c301 17992009-01-06 Jan Hubicka <jh@suse.cz>
c95b2534 1800 Kai Tietz <kai.tietz@onevision.com>
64e4c301 1801
435da628
UB
1802 * config/i386/i386.md (*msabi_syvabi): Add SSE regs clobbers.
1803 * config/i386/i386.c (ix86_expand_call): Add clobbers.
64e4c301 1804
7650b83e 18052009-01-06 Jan Hubicka <jh@suse.cz>
c95b2534 1806 Kai Tietz <kai.tietz@onevision.com>
7650b83e 1807
435da628
UB
1808 * config/i386/i386.h (CONDITIONAL_CALL_USAGE): SSE regs are not used
1809 for w64 ABI.
1810 * config/i386/i386.c (struct ix86_frame): Add padding0 and nsseregs.
7650b83e
JH
1811 (ix86_nsaved_regs): Count only general purpose regs.
1812 (ix86_nsaved_sseregs): New.
1813 (ix86_compute_frame_layout): Update nsseregs; set preferred alignment
1814 to 16 for w64; compute padding and size of sse reg save area.
301b6a4e
UB
1815 (ix86_emit_save_regs, ix86_emit_save_regs_using_mov): Save only
1816 general purpose regs.
7650b83e
JH
1817 (ix86_emit_save_sse_regs_using_mov): New.
1818 (ix86_expand_prologue): Save SSE regs if needed.
1819 (ix86_emit_restore_regs_using_mov): Use only general purpose regs.
1820 (ix86_emit_restore_sse_regs_using_mov): New.
1821 (ix86_expand_epilogue): Save SSE regs if needed.
1822
9aa5c1b2 18232009-01-06 Jan Hubicka <jh@suse.cz>
c95b2534 1824 Kai Tietz <kai.tietz@onevision.com>
9aa5c1b2 1825
435da628
UB
1826 * config/i386/i386.h (ACCUMULATE_OUTGOING_ARGS): Enable for MSABI
1827 * config/i386/i386.c (init_cumulative_args): Disallow calls of MSABI
1828 functions when accumulate outgoing args is off.
9aa5c1b2 1829
f7556aae
L
18302009-01-06 H.J. Lu <hongjiu.lu@intel.com>
1831
1832 PR bootstrap/38742
1833 * ira-color.c (ira_reuse_stack_slot): Check ENABLE_IRA_CHECKING
1834 before using pseudos_have_intersected_live_ranges_p.
1835
1836 * ira-int.h (ira_assert): Always define.
1837
e47b7d04
L
18382009-01-06 H.J. Lu <hongjiu.lu@intel.com>
1839
1840 AVX Programming Reference (December, 2008)
1841 * config/i386/avxintrin.h (_mm_permute2_pd): Removed.
1842 (_mm256_permute2_pd): Likewise.
1843 (_mm_permute2_ps): Likewise.
1844 (_mm256_permute2_ps): Likewise.
1845 * config/i386/i386.md (UNSPEC_VPERMIL2): Likewise.
1846 * config/i386/sse.md (avx_vpermil2<mode>3): Likewise.
1847
1848 * config/i386/i386.c (ix86_builtins): Remove
1849 IX86_BUILTIN_VPERMIL2PD, IX86_BUILTIN_VPERMIL2PS,
1850 IX86_BUILTIN_VPERMIL2PD256 and IX86_BUILTIN_VPERMIL2PS256.
1851 (ix86_builtin_type): Remove V8SF_FTYPE_V8SF_V8SF_V8SI_INT,
1852 V4DF_FTYPE_V4DF_V4DF_V4DI_INT, V4SF_FTYPE_V4SF_V4SF_V4SI_INT
1853 and V2DF_FTYPE_V2DF_V2DF_V2DI_INT.
1854 (bdesc_args): Remove __builtin_ia32_vpermil2pd,
1855 __builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256 and
1856 __builtin_ia32_vpermil2ps256.
1857 (ix86_init_mmx_sse_builtins): Updated.
1858 (ix86_expand_args_builtin): Likewise.
1859
44b86471
JDA
18602009-01-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
1861
e47b7d04
L
1862 * pa.c (output_call): Relocate non-jump insns in the delay slot of
1863 long absolute calls when generating PA 2.0 code.
44b86471 1864
311aab06
VM
18652009-01-05 Vladimir Makarov <vmakarov@redhat.com>
1866
1867 PR rtl-optimization/38583
1868 * params.h (IRA_MAX_CONFLICT_TABLE_SIZE): New macro.
1869
1870 * params.def (ira-max-conflict-table-size): New.
1871
1872 * doc/invoke.texi (ira-max-conflict-table-size): Decribe.
1873
1874 * ira.h (ira_conflicts_p): New external definition.
1875
1876 * ira-conflicts.c (build_conflict_bit_table): Do not build too big
1877 table. Report this. Return result of building.
1878 (ira_build_conflicts): Use ira_conflicts_p. Check result of
1879 building conflict table.
1880
301b6a4e 1881 * ira-color.c (fast_allocation): Use num instead of ira_allocnos_num.
311aab06
VM
1882 (ira_color): Use ira_conflicts_p.
1883
1884 * global.c: Include ira.h.
1885 (pseudo_for_reload_consideration_p, build_insn_chain): Use
1886 ira_conflicts_p.
1887
1888 * Makefile.in (global.o): Add ira.h.
1889
1890 * ira-build.c (mark_all_loops_for_removal,
1891 propagate_some_info_from_allocno): New.
1892 (remove_unnecessary_allocnos): Call
1893 propagate_some_info_from_allocno.
1894 (remove_low_level_allocnos): New.
1895 (remove_unnecessary_regions): Add parameter. Call
1896 mark_all_loops_for_removal and remove_low_level_allocnos. Pass
1897 parameter to remove_unnecessary_regions.
1898 (ira_build): Remove all regions but root if the conflict table was
1899 not built. Update conflict hard regs for allocnos crossing calls.
1900
1901 * ira.c (ira_conflicts_p): New global.
1902 (ira): Define and use ira_conflicts_p.
1903
1904 * reload1.c (compute_use_by_pseudos, reload, count_pseudo,
1905 count_spilled_pseudo, find_reg, alter_reg, finish_spills,
301b6a4e 1906 emit_input_reload_insns, delete_output_reload): Use ira_conflicts_p.
311aab06 1907
5641785f
BE
19082009-01-06 Ben Elliston <bje@au.ibm.com>
1909
1910 * gengtype-lex.l (YY_NO_INPUT): Define.
1911
e4e5261f
AP
19122009-01-05 Andrew Pinski <andrew_pinski@playstation.sony.com>
1913
1914 PR c/34911
5641785f
BE
1915 * c-common.c (handle_vector_size_attribute): Also reject
1916 BOOLEAN_TYPE types.
e4e5261f 1917
7b10257f
SP
19182009-01-05 Sebastian Pop <sebastian.pop@amd.com>
1919
1920 PR tree-optimization/38492
1921 * graphite.c (rename_map_elt, debug_rename_elt,
301b6a4e
UB
1922 debug_rename_map_1, debug_rename_map, new_rename_map_elt,
1923 rename_map_elt_info, eq_rename_map_elts,
1924 get_new_name_from_old_name, bb_in_sese_p): Moved around.
7b10257f
SP
1925 (sese_find_uses_to_rename_use): Renamed sese_build_livein_liveouts_use.
1926 (sese_find_uses_to_rename_bb): Renamed sese_build_livein_liveouts_bb.
1927 (sese_build_livein_liveouts): New.
1928 (new_sese, free_sese): New.
1929 (new_scop): Call new_sese.
1930 (free_scop): Call free_sese.
1931 (rename_variables_from_edge, rename_phis_end_scop): Removed.
1932 (register_old_new_names): Renamed register_old_and_new_names.
1933 (register_scop_liveout_renames, add_loop_exit_phis,
1934 insert_loop_close_phis, struct igp,
1935 default_liveout_before_guard, add_guard_exit_phis,
1936 insert_guard_phis, copy_renames): New.
1937 (translate_clast): Call insert_loop_close_phis and insert_guard_phis.
1938 (sese_add_exit_phis_edge): Renamed scop_add_exit_phis_edge.
1939 (rewrite_into_sese_closed_ssa): Renamed scop_insert_phis_for_liveouts.
1940 (scop_adjust_phis_for_liveouts): New.
1941 (gloog): Call scop_adjust_phis_for_liveouts.
1942
1943 * graphite.h (struct sese): Documented. Added fields liveout,
301b6a4e 1944 num_ver and livein.
7b10257f
SP
1945 (SESE_LIVEOUT, SESE_LIVEIN, SESE_LIVEIN_VER, SESE_NUM_VER): New.
1946 (new_sese, free_sese, sese_build_livein_liveouts): Declared.
1947 (struct scop): Added field liveout_renames.
1948 (SCOP_LIVEOUT_RENAMES): New.
1949
9761fcc7
HJ
19502009-01-05 Harsha Jagasia <harsha.jagasia@amd.com>
1951
1952 PR tree-optimization/38510
1953 * graphite.c (recompute_all_dominators): Call mark_irreducible_loops.
1954 (translate_clast): Call recompute_all_dominators before
1955 graphite_verify.
1956 (gloog): Call recompute_all_dominators before graphite_verify.
1957
19582009-01-05 Harsha Jagasia <harsha.jagasia@amd.com>
c95b2534 1959 Jan Sjodin <jan.sjodin@amd.com>
9761fcc7
HJ
1960
1961 PR tree-optimization/38500
1962 * graphite.c (create_sese_edges): Call fix_loop_structure after
1963 splitting blocks.
1964
c95b2534 19652009-01-05 Joel Sherrill <joel.sherrill@oarcorp.com>
48a01864
JS
1966
1967 * config.gcc: Add m32r*-*-rtems*.
1968 * config/m32r/rtems.h: New file.
1969
fc0cd180
BE
19702009-01-05 Ben Elliston <bje@au.ibm.com>
1971
1972 * Makefile.in (.po.gmo): Use mkinstalldirs, not test -d || mkdir.
1973 (.po.pox): Likewise.
1974 (po/gcc.pot): Likewise.
1975
3106d8e5
DM
19762009-01-04 David S. Miller <davem@davemloft.net>
1977
1978 * config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED_RTX): Delete.
1979 (STARTING_FRAME_OFFSET): Always set to zero.
1980
0009b473
RS
19812009-01-04 Richard Sandiford <rdsandiford@googlemail.com>
1982
1983 * tree.def (LSHIFT_EXPR, RSHIFT_EXPR): Add commentary.
1984 * tree-cfg.c (verify_gimple_assign_binary): Allow shifts of
1985 fixed-point types, and vectors of the same.
1986
4f24c6d6
RS
19872009-01-04 Richard Sandiford <rdsandiford@googlemail.com>
1988
1989 * config/mips/sync.md (*mb_barrier): Rename to...
1990 (*memory_barrier): ...this.
1991
1df48f5c
JW
19922009-01-04 Jonathan Wakely <jwakely.gcc@gmail.com>
1993
1994 * doc/extend.texi (Function Attributes): Move @cindex after @item
eefe5da0 1995 for 'artificial' and 'flatten'. Fix grammar for 'externally_visible'
1df48f5c
JW
1996 and put in alphabetical order. Fix 'target' name and put in order.
1997 * doc/invoke.texi (-Wstrict-null-sentinel, -fipa-matrix-reorg): Fix
1998 typos.
1999
1a8c13b3
UB
20002009-01-04 Uros Bizjak <ubizjak@gmail.com>
2001
2002 * config/s390/s390.md (UNSPEC_MB): Rename from UNSPECV_MB.
2003 (memory_barrier): Expand as unspec instead of unspec_volatile.
2004 Remove mem:BLK from insn operands. Use Pmode scratch register.
2005 (*memory_barrier): Define as unspec instead of unspec_volatile.
2006 Use (match_dup 0) as input operand.
2007
2008 * config/sparc/sparc.md (UNSPEC_MEMBAR): Rename from UNSPECV_MEMBAR.
2009 * config/sparc/sync.md (memory_barrier): Expand as unspec instead of
2010 unspec_volatile. Remove mem:BLK from insn operands. Use Pmode
2011 scratch register. Remove operand 1.
2012 (*stbar): Define as unspec instead of unspec_volatile.
2013 Use (match_dup 0) as input operand, remove (const_int 8).
2014 (*membar): Define as unspec instead of unspec_volatile.
2015 Use (match_dup 0) as input operand, remove input operand 2.
2016
2017 * config/xtensa/xtensa.md (UNSPEC_MEMW): Rename from UNSPECV_MEMW.
2018 (memory_barrier): Expand as unspec instead of unspec_volatile.
2019 Remove mem:BLK from insn operands. Use Pmode scratch register.
2020 (*memory_barrier): Define as unspec instead of unspec_volatile.
2021 Use (match_dup 0) as input operand.
2022
2023 * config/ia64/sync.md (memory_barrier): Redefine as expander pattern.
2024 Remove mem:BLK from insn operands. Use Pmode scratch register.
2025 Set volatile flag on operand 0.
2026 (*memory_barrier): New insn pattern.
2027
2028 * config/rs6000/sync.md (memory_barrier): Remove mem:BLK from
2029 insn operands.
2030 (*memory_barrier): Use (match_dup 0) as input operand.
2031
2032 * config/mips/sync.md (memory_barrier): Redefine as expander pattern.
2033 Remove mem:BLK from insn operands. Use Pmode scratch register.
2034 Set volatile flag on operand 0.
301b6a4e 2035 (*mb_internal): New insn pattern.
1a8c13b3
UB
2036
2037 * config/alpha/sync.md (*memory_barrier): Rename from *mb_internal.
2038
fb0703f7
SB
20392009-01-04 Steven Bosscher <steven@gcc.gnu.org>
2040
2041 PR middle-end/38586
2042 * function.c (struct temp_slot): Move to the section of the file
2043 that deals with temp slots. Remove field 'address'.
2044 (temp_slot_address_table): New hash table of address -> temp slot.
2045 (struct temp_slot_address_entry): New struct, items for the table.
2046 (temp_slot_address_compute_hash, temp_slot_address_hash,
2047 temp_slot_address_eq, insert_temp_slot_address): Support functions
2048 for the new table.
2049 (find_temp_slot_from_address): Rewrite to use the new hash table.
2050 (remove_unused_temp_slot_addresses): Remove addresses of temp
2051 slots that have been made available.
2052 (remove_unused_temp_slot_addresses_1): Call-back for htab_traverse,
2053 worker function for remove_unused_temp_slot_addresses.
2054 (assign_stack_temp_for_type): Don't clear the temp slot address list.
2055 Add the temp slot address to the address -> temp slot map.
2056 (update_temp_slot_address): Update via insert_temp_slot_address.
2057 (free_temp_slots): Call remove_unused_temp_slot_addresses.
2058 (pop_temp_slots): Likewise.
2059 (init_temp_slots): Allocate the address -> temp slot map, or empty
2060 the map if it is already allocated.
2061 (prepare_function_start): Initialize temp slot processing.
2062
b5a430f3
SB
20632009-01-04 Steven Bosscher <steven@gcc.gnu.org>
2064
2065 PR middle-end/38584
2066 * cfgexpand.c (estimate_stack_frame_size): Simplify the estimate:
2067 Calculate the size of all stack vars assuming no packing of stack
2068 vars will happen, replacing a quadratic algorithm with a linear one.
2069
5d560619
JJ
20702009-01-03 Jakub Jelinek <jakub@redhat.com>
2071
2072 PR target/38707
2073 * expmed.c (store_bit_field_1): Don't modify op0 if movstrict insn
2074 can't be used.
2075
953a7caa
DN
20762009-01-03 Diego Novillo <dnovillo@google.com>
2077
2078 * doc/contrib.texi: Update contributions.
2079
5f26a230
JJ
20802009-01-03 Jakub Jelinek <jakub@redhat.com>
2081
493aa551
JJ
2082 PR c++/38705
2083 * builtins.c (fold_builtin_memory_op): Give up if either operand
2084 is volatile. Set srctype or desttype to non-qualified version
2085 of the other type.
2086
5f26a230
JJ
2087 PR c/38700
2088 * builtins.c (fold_builtin_expect): Only check DECL_WEAK for VAR_DECLs
2089 and FUNCTION_DECLs.
2090
c95b2534 20912009-01-02 Kenneth Zadeck <zadeck@naturalbridge.com>
fafe34f9
KZ
2092
2093 PR rtl-optimization/35805
2094 * df-problems.c (df_lr_finalize): Add recursive call to resolve lr
2095 problem if fast dce is able to remove any instructions.
2096 * dce.c (dce_process_block): Fix dump message.
2097
0b355794
MM
20982009-01-02 Mark Mitchell <mark@codesourcery.com>
2099
2100 PR 33649
2101 * tree-ssa-pre.c (compute_antic): Correct loop bounds.
2102
0cf0d02b
JJ
21032009-01-02 Jakub Jelinek <jakub@redhat.com>
2104
2105 PR middle-end/38690
2106 * tree-flow.h (op_code_prio, op_prio): New prototypes.
2107 * tree-pretty-print.c (op_code_prio): New function.
2108 (op_prio): No longer static. Use op_code_prio.
2109 * gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs):
2110 Use op_prio and op_code_prio to determine if () should be
2111 printed around operand(s) or not.
2112
2113 * gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs,
2114 dump_gimple_call, dump_gimple_switch, dump_gimple_cond,
2115 dump_gimple_label, dump_gimple_try, dump_symbols, dump_gimple_phi,
2116 dump_gimple_mem_ops, dump_bb_header, dump_bb_end, pp_cfg_jump): Use
2117 pp_character instead of pp_string for single letter printing.
2118
e3606f3b
RS
21192009-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2120
2121 * doc/extend.texi: Fix '#pragma GCC option' typo.
2122
c95b2534 21232009-01-02 Richard Guenther <rguenther@suse.de>
00f39bd5 2124
a5f061dc
RG
2125 * doc/install.texi (--enable-checking): Mention different
2126 default for stage1.
2127 (--enable-stage1-checking): Document.
00f39bd5 2128
26de0bcb
AP
21292009-01-01 Andrew Pinski <pinskia@gmail.com>
2130
2131 PR middle-end/30142
2132 * tree-cfg.c (verify_expr): Add INDIRECT_REF case. Change MODIFY_EXPR
2133 case to be an error.
2134
7a7d8fab
BE
21352009-01-02 Ben Elliston <bje@au.ibm.com>
2136
2137 * config/fp-bit.h (pack_d): Constify argument.
2138 * config/fp-bit.c (makenan): Constify return type. Remove casts.
2139 (isnan): Constify argument.
2140 (isinf): Likewise.
2141 (iszero): Likewise.
2142 (pack_d): Likewise.
2143 (_fpadd_parts): Constify return type.
2144 (_fpmul_parts): Likewise.
2145 (_fpdiv_parts): Likewise.
2146
b295aee2
JJ
21472009-01-01 Jakub Jelinek <jakub@redhat.com>
2148
2149 PR c/36489
2150 * c-typeck.c (add_pending_init): Add IMPLICIT argument. Only
2151 warn about overwriting initializer with side-effects or
2152 -Woverride-init if !IMPLICIT.
2153 (output_init_element): Likewise. Pass IMPLICIT down to
2154 add_pending_init.
2155 (process_init_element): Add IMPLICIT argument. Pass it down
2156 to output_init_element.
2157 (push_init_element, pop_init_level, set_designator): Adjust
2158 process_init_element callers.
2159 (set_nonincremental_init, set_nonincremental_init_from_string):
2160 Adjust add_pending_init callers.
2161 (output_pending_init_elements): Adjust output_init_element callers.
2162 * c-tree.h (process_init_element): Adjust prototype.
2163 * c-parser.c (c_parser_initelt, c_parser_initval): Adjust
2164 process_init_element callers.