re PR ada/41929 (64-bit null_pointer_deref1 gnat.dg test consumes all available memory)
[gcc.git] / gcc / ChangeLog
1 2011-02-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2
3 PR ada/41929
4 * config/sparc/sol2-unwind.h: Include <sys/frame.h>, <sys/stack.h>
5 (IS_SIGHANDLER): Define.
6 (sparc64_is_sighandler): New function, split off from
7 sparc64_fallback_frame_state.
8 (sparc_is_sighandler): New function, split off from
9 sparc_fallback_frame_state.
10 (sparc64_fallback_frame_state): Merge with ...
11 (sparc_fallback_frame_state): ... this into ...
12 (MD_FALLBACK_FRAME_STATE_FOR): ... this.
13 Change new_cfa to long.
14 Remove regs_off, fpu_save_off, fpu_save.
15 Define nframes, mctx.
16 Use IS_SIGHANDLER, handler_args, mctx, walk stack instead of
17 hardcoded offsets.
18
19 2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
20
21 * go/gccgo.texi (Top, Import and Export): Fix a typo and a
22 markup nit.
23
24 2011-02-14 Andriy Gapon <avg@freebsd.org>
25
26 PR target/45808
27 * config/freebsd-spec.h (FBSD_LIB_SPEC): Handle the shared case.
28
29 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
30
31 * configure: Regenerate.
32
33 2011-02-12 Joseph Myers <joseph@codesourcery.com>
34
35 PR driver/45731
36 * gcc.c (asm_options): Correct spec matching --target-help.
37
38 2011-02-12 Martin Jambor <mjambor@suse.cz>
39
40 * tree-cfg.c (verify_gimple_call): Return true upon invalid argument
41 to gimple call error.
42
43 2011-02-12 Mike Stump <mikestump@comcast.net>
44
45 * config/frv/frv.h (TRANSFER_FROM_TRAMPOLINE): Canonicalize
46 comments in backslash regions.
47
48 2011-02-12 Mike Stump <mikestump@comcast.net>
49 Jakub Jelinek <jakub@redhat.com>
50 Iain Sandoe <iains@gcc.gnu.org>
51
52 PR target/47324
53 * dwarf2out.c (output_cfa_loc): When required, apply the
54 DWARF2_FRAME_REG_OUT macro to adjust register numbers.
55 (output_loc_sequence): Likewise.
56 (output_loc_operands_raw): Likewise.
57 (output_loc_sequence_raw): Likewise.
58 (output_cfa_loc): Likewise.
59 (output_loc_list): Suppress register number adjustment when
60 calling output_loc_sequence()
61 (output_die): Likewise.
62
63 2011-02-12 Anatoly Sokolov <aesok@post.ru>
64
65 * config/xtensa/xtensa.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST):
66 Remove macros.
67 * config/xtensa/xtensa.c (xtensa_register_move_cost,
68 xtensa_memory_move_cost): New functions.
69 (TARGET_REGISTER_MOVE_COST, TARGET_REGISTER_MOVE_COST): Define.
70
71 2011-02-12 Alexandre Oliva <aoliva@redhat.com>
72
73 PR lto/47225
74 * configure.ac (gcc_cv_lto_plugin): Test for liblto_plugin.la
75 in the current directory.
76 * configure: Rebuilt.
77
78 2011-02-12 Iain Sandoe <iains@gcc.gnu.org>
79
80 * config/darwin.c (darwin_override_options): Add a hunk missed
81 from the commit of r168571. Trim comment line lengths and
82 correct indents of the preceding block.
83
84 2011-02-12 Iain Sandoe <iains@gcc.gnu.org>
85
86 * gcc.c (driver_handle_option): Concatenate the argument to -F with
87 the switch.
88
89 2011-02-11 Joseph Myers <joseph@codesourcery.com>
90
91 * common.opt (nostartfiles): New Driver option.
92
93 2011-02-11 Xinliang David Li <davidxl@google.com>
94
95 PR tree-optimization/47707
96 * tree-chrec.c (convert_affine_scev): Keep type precision.
97
98 2011-02-11 Eric Botcazou <ebotcazou@adacore.com>
99
100 PR tree-optimization/47420
101 * ipa-split.c (visit_bb): Punt on any kind of GIMPLE_RESX.
102
103 2011-02-11 Pat Haugen <pthaugen@us.ibm.com>
104
105 PR rtl-optimization/47614
106 * rtl.h (check_for_inc_dec): Declare.
107 * dse.c (check_for_inc_dec): Externalize...
108 * postreload.c (reload_cse_simplify): ...use it before deleting stmt.
109 (reload_cse_simplify_operands): Don't simplify opnds with side effects.
110
111 2011-02-11 Joseph Myers <joseph@codesourcery.com>
112
113 PR driver/47678
114 * gcc.c (main): Do not compile inputs if there were errors in
115 option handling.
116 * opts-common.c (read_cmdline_option): Check for wrong language
117 after other error checks.
118
119 2011-02-11 Nathan Froyd <froydnj@codesourcery.com>
120
121 * cgraph.c: Fix comment typos.
122 * cgraph.h: Likewise.
123 * cgraphunit.c: Likewise.
124 * ipa-cp.c: Likewise.
125 * ipa-inline.c: Likewise.
126 * ipa-prop.c: Likewise.
127 * ipa-pure-const.c: Likewise.
128 * ipa-ref.c: Likewise.
129 * ipa-reference.c: Likewise.
130
131 2011-02-11 Jakub Jelinek <jakub@redhat.com>
132
133 PR debug/47684
134 * tree-predcom.c (single_nonlooparound_use): Ignore debug uses.
135
136 2011-02-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
137
138 PR testsuite/47400
139 * doc/sourcebuild.texi (Require Support): Document
140 dg-require-ascii-locale.
141
142 2011-02-11 Mingjie Xing <mingjie.xing@gmail.com>
143
144 * doc/lto.texi (Write summary): Fix missing parentheses.
145
146 2011-02-10 DJ Delorie <dj@redhat.com>
147
148 * config/m32c/m32c.c (m32c_option_override): Disable
149 -fcombine-stack-adjustments until flag value tracking and compare
150 optimization can be rewritten.
151
152 2011-02-10 Peter Bergner <bergner@vnet.ibm.com>
153
154 * config/rs6000/linux64.h (PROCESSOR_DEFAULT): Change to
155 PROCESSOR_POWER7.
156 (PROCESSOR_DEFAULT64): Likewise.
157
158 2011-02-10 Richard Henderson <rth@redhat.com>
159
160 * config/rx/predicates.md (rx_zs_comparison_operator): Revert
161 change from 2011-02-03.
162 * config/rx/rx.c (flags_from_code): Likewise.
163 (rx_print_operand) ['B']: For LT/GE, use lt/ge if overflow flag
164 is valid, n/pz otherwise.
165 (rx_select_cc_mode): Return CCmode if Y is not zero.
166
167 2011-02-10 Richard Guenther <rguenther@suse.de>
168
169 * tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
170
171 2011-02-10 Richard Guenther <rguenther@suse.de>
172
173 PR tree-optimization/47677
174 * tree-vrp.c (vrp_bitmap_equal_p): Fix comparison of empty bitmaps.
175
176 2011-02-10 Jakub Jelinek <jakub@redhat.com>
177
178 PR target/47665
179 * combine.c (make_compound_operation): Only change shifts into
180 multiplication for SCALAR_INT_MODE_P.
181
182 2011-02-10 Jie Zhang <jie@codesourcery.com>
183
184 PR testsuite/47622
185 Revert
186 2011-02-05 Jie Zhang <jie@codesourcery.com>
187 PR debug/42631
188 * web.c (entry_register): Don't clobber the number of the
189 first uninitialized reference in used[].
190
191 2011-02-09 Richard Guenther <rguenther@suse.de>
192
193 PR tree-optimization/47664
194 * ipa-inline.c (cgraph_decide_inlining_incrementally): Visit
195 all edges again.
196
197 2011-02-09 David Edelsohn <dje.gcc@gmail.com>
198
199 PR target/46481
200 PR target/47032
201 * config/rs6000/aix61.h (PROCESSOR_DEFAULT): Change to
202 PROCESSOR_POWER7.
203 (PROCESSOR_DEFAULT64): Same.
204 (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Delete.
205
206 2011-02-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
207
208 * config/mips/iris6.h (TARGET_C99_FUNCTIONS): Define.
209
210 2011-02-09 Martin Jambor <mjambor@suse.cz>
211
212 PR middle-end/45505
213 * tree-sra.c (struct access): New flags grp_scalar_read and
214 grp_scalar_write. Changed description of assignment read and write
215 flags.
216 (dump_access): Dump new flags, reorder all of them.
217 (sort_and_splice_var_accesses): Set the new flag accordingly, use them
218 to detect multiple scalar reads.
219 (analyze_access_subtree): Use the new scalar read write flags instead
220 of the old flags. Adjusted comments.
221
222 2011-02-08 DJ Delorie <dj@redhat.com>
223
224 PR target/47548
225 * config/m32c/m32c.c (m32c_subreg): Don't try to validate interim
226 patterns.
227
228 2011-02-08 Joseph Myers <joseph@codesourcery.com>
229
230 * config/m68k/uclinux.opt: New.
231 * config.gcc (m68k-*-uclinux*): Use m68k/uclinux.opt.
232
233 2011-02-08 Joseph Myers <joseph@codesourcery.com>
234
235 * config/cris/elf.opt (sim): New Driver option.
236
237 2011-02-08 Joseph Myers <joseph@codesourcery.com>
238
239 * config/xtensa/elf.opt: New.
240 * config.gcc (xtensa*-*-elf*): Use xtensa/elf.opt.
241
242 2011-02-08 Joseph Myers <joseph@codesourcery.com>
243
244 * config/vax/elf.opt: New.
245 * config.gcc (vax-*-linux*, vax-*-netbsdelf*): Use vax/elf.opt.
246
247 2011-02-08 Joseph Myers <joseph@codesourcery.com>
248
249 * config/rs6000/aix64.opt (posix, pthread): New Driver options.
250
251 2011-02-08 Joseph Myers <joseph@codesourcery.com>
252
253 * config/gnu-user.opt: New.
254 * config.gcc (*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu |
255 *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu,
256 *-*-uclinux*): Use gnu-user.opt.
257
258 2011-02-08 Thomas Schwinge <thomas@schwinge.name>
259
260 * config/gnu.h (CPP_SPEC, LIB_SPEC): Remove handling of -bsd option.
261 * config/i386/gnu.h (CPP_SPEC): Likewise.
262
263 2011-02-08 Ian Lance Taylor <iant@google.com>
264
265 * common.opt (fcx-limited-range): Add SetByCombined flag.
266 (ffinite-math-only, fmath-errno, frounding-math): Likewise.
267 (fsignaling-nans, fsigned-zeros, ftrapping-math): Likewise.
268 (fassociative-math, freciprocal-math): Likewise.
269 (funsafe-math-optimizations): Likewise.
270 * opth-gen.awk: Handle SetByCombined.
271 * optc-gen.awk: Likewise.
272 * opts.c (set_fast_math_flags): Don't override flag if set by frontend.
273 (set_unsafe_math_optimizations_flags): Likewise.
274 * doc/options.texi (Option properties): Document SetByCombined.
275
276 2011-02-08 Joseph Myers <joseph@codesourcery.com>
277
278 * config.gcc (arc-*, alpha*-*-gnu*, arm*-*-netbsd*, arm-*-pe*,
279 i[34567]86-*-interix3*, i[34567]86-*-netbsd*, i[34567]86-*-pe,
280 m68hc11-*-*, m6811-*-*, m68hc12-*-*, m6812-*-*,
281 m68k-*-uclinuxoldabi*, mcore-*-pe*, powerpc*-*-gnu*,
282 sh*-*-symbianelf*, vax-*-netbsd*): Mark obsolete.
283
284 2011-02-08 Sebastian Pop <sebastian.pop@amd.com>
285
286 PR tree-optimization/46834
287 PR tree-optimization/46994
288 PR tree-optimization/46995
289 * graphite-sese-to-poly.c (used_outside_reduction): New.
290 (detect_commutative_reduction): Call used_outside_reduction.
291 (rewrite_commutative_reductions_out_of_ssa_close_phi): Call
292 translate_scalar_reduction_to_array only when at least one
293 loop-phi/close-phi tuple has been detected.
294
295 2011-02-08 Richard Guenther <rguenther@suse.de>
296
297 PR middle-end/47639
298 * tree-vect-generic.c (expand_vector_operations_1): Update
299 stmts here ...
300 (expand_vector_operations): ... not here. Cleanup EH info
301 and the CFG if required.
302
303 2011-02-08 Richard Guenther <rguenther@suse.de>
304
305 PR tree-optimization/47641
306 * tree-ssa.c (execute_update_addresses_taken): For asm outputs
307 require type compatibility.
308
309 2011-02-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
310
311 * gimple-low.c (lower_function_body): Don't remove the location of
312 the return statement here.
313 (lower_gimple_return): Do it here instead but only if the return
314 statement is actually used twice.
315
316 2011-02-08 Richard Guenther <rguenther@suse.de>
317
318 PR tree-optimization/47632
319 * tree-ssa-forwprop.c (remove_prop_source_from_use): Remove
320 unused up_to_stmt parameter, return whether cfg-cleanup is
321 necessary, remove EH info properly.
322 (forward_propagate_into_gimple_cond): Adjust caller.
323 (forward_propagate_into_cond): Likewise.
324 (forward_propagate_comparison): Likewise.
325 (tree_ssa_forward_propagate_single_use_vars): Make
326 forward_propagate_comparison case similar to the two others.
327
328 2011-02-08 Nick Clifton <nickc@redhat.com>
329
330 * config/mn10300/mn10300.opt (mliw): New command line option.
331 * config/mn10300/mn10300.md (UNSPEC_LIW): New unspec.
332 (liw_bundling): New automaton.
333 (liw): New attribute.
334 (liw_op): New attribute.
335 (liw_op1, liw_op2, liw_both, liw_either): New reservations.
336 (movsi_internal): Add LIW attributes.
337 (andsi3): Likewise.
338 (iorsi3): Likewise.
339 (xorsi3): Likewise.
340 (addsi3): Separate register and immediate alternatives.
341 Add LIW attributes.
342 (subsi3): Likewise.
343 (cmpsi): Likewise.
344 (aslsi3): Likewise.
345 (lshrsi3): Likewise.
346 (ashrsi3): Likewise.
347 (liw): New pattern.
348 * config/mn10300/mn10300.c (liw_op_names): New
349 (mn10300_print_operand): Handle 'W' operand descriptor.
350 (extract_bundle): New function.
351 (check_liw_constraints): New function.
352 (liw_candidate): New function.
353 (mn10300_bundle_liw): New function.
354 (mn10300_reorg): New function.
355 (TARGET_MACHINE_DEPENDENT_REORG): Define.
356 (TARGET_DEFAULT_TARGET_FLAGS): Add MASK_ALLOW_LIW.
357 * config/mn10300/mn10300.h (TARGET_CPU_CPP_BUILTINS): Define
358 __LIW__ or __NO_LIW__.
359 * doc/invoke.texi: Describe the -mliw command line option.
360
361 2011-02-07 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
362
363 * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
364 * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
365 pthread_mutex_unlock): Remove.
366 * config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
367 * config/pa/t-pa64: Likewise.
368 * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
369 shared libc if not linking against libpthread.
370 * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
371
372 2011-02-07 Iain Sandoe <iains@gcc.gnu.org>
373
374 PR target/47558
375 * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Put -lSystem first
376 on 10.6 and later to ensure that we always use the unwinder from
377 the system. Only add -no_compact_unwind when tarteting darwin
378 10.6 or later.
379
380 2011-02-07 Steve Ellcey <sje@cup.hp.com>
381
382 PR target/46997
383 * vect.md (vec_interleave_highv2sf): Change fmix for TARGET_BIG_ENDIAN.
384 (vec_interleave_lowv2sf): Ditto.
385 (vec_extract_evenv2sf): Add TARGET_BIG_ENDIAN check.
386 (vec_extract_oddv2sf): Ditto.
387
388 2011-02-07 Mike Stump <mikestump@comcast.net>
389
390 PR target/42333
391 Add __ieee_divdc3 entry point.
392 * config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Retain ___divdc3
393 entry point.
394 (SUBTARGET_INIT_BUILTINS): Call darwin_rename_builtins.
395 * config/i386/i386.c (TARGET_INIT_LIBFUNCS): Likewise.
396 * config/darwin.c (darwin_rename_builtins): Add.
397 * config/darwin-protos.h (darwin_rename_builtins): Add.
398
399 2011-02-07 Michael Meissner <meissner@linux.vnet.ibm.com>
400
401 PR target/47636
402 * config/rs6000/rs6000.md (rsqrt<mode>2): Use the correct macro
403 for the condition.
404
405 2011-02-07 Mike Stump <mikestump@comcast.net>
406
407 * config/darwin.opt (mmacosx-version-min): Update default OS version.
408
409 2011-02-07 Denis Chertykov <chertykov@gmail.com>
410
411 PR target/47534
412 * config/avr/libgcc.S (exit): Move .endfunc
413
414 2011-02-07 Richard Guenther <rguenther@suse.de>
415
416 PR tree-optimization/47615
417 * tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
418 * tree-ssa-sccvn.c (default_vn_walk_kind): New global.
419 (run_scc_vn): Initialize it.
420 (visit_reference_op_load): Use it.
421 * tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
422
423 2011-02-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
424
425 * config/spu/spu.c (spu_init_libfuncs): Install SImode and
426 DImode trapping arithmetic libfuncs.
427
428 2011-02-07 Richard Guenther <rguenther@suse.de>
429
430 PR tree-optimization/47621
431 * tree-ssa.c (non_rewritable_lvalue_p): New function, split out from
432 two duplicates ...
433 (execute_update_addresses_taken): ... here. Make it more
434 conservative in what we accept.
435
436 2011-02-06 Joseph Myers <joseph@codesourcery.com>
437
438 * config/sparc/freebsd.h (ASM_SPEC): Define.
439 * config/sparc/vxworks.h (ASM_SPEC): Define.
440
441 2011-02-06 Joseph Myers <joseph@codesourcery.com>
442
443 * config/sparc/sol2-bi.h (CC1_SPEC): Remove %{sun4:} %{target:}.
444
445 2011-02-06 Steven Bosscher <steven@gcc.gnu.org>
446
447 * doc/invoke.texi: Remove reference to compiler internals from
448 user documentation.
449
450 * reg-notes.def: Remove REG_VALUE_PROFILE.
451 * combine.c (distribute_notes): Do not handle REG_VALUE_PROFILE.
452
453 2011-02-05 Jakub Jelinek <jakub@redhat.com>
454
455 PR middle-end/47610
456 * varasm.c (default_section_type_flags): If decl is NULL,
457 and name is .data.rel.ro or .data.rel.ro.local, set SECTION_RELRO bit.
458
459 2011-02-05 Jie Zhang <jie@codesourcery.com>
460
461 PR debug/42631
462 * web.c (entry_register): Don't clobber the number of the
463 first uninitialized reference in used[].
464
465 2011-02-04 Sebastian Pop <sebastian.pop@amd.com>
466
467 PR tree-optimization/46194
468 * tree-data-ref.c (analyze_miv_subscript): Remove comment.
469 (build_classic_dist_vector_1): Do not represent classic distance
470 vectors when the access functions are variating in different loops.
471
472 2011-02-04 Joseph Myers <joseph@codesourcery.com>
473
474 * config/mips/iris6.opt: New.
475 * config.gcc (mips-sgi-irix6.5*): Use mips/iris6.opt.
476
477 2011-02-04 Richard Henderson <rth@redhat.com>
478 Steve Ellcey <sje@cup.hp.com>
479
480 PR target/46997
481 * config/ia64/predicates.md (mux1_brcst_element): New.
482 * config/ia64/ia64-protos.h (ia64_unpack_assemble): New.
483 * config/ia64/ia64.c (ia64_unpack_assemble): New.
484 (ia64_unpack_sign): New.
485 (ia64_expand_unpack): Rewrite using new routines.
486 (ia64_expand_widen_sum): Ditto.
487 (ia64_expand_dot_prod_v8qi): Ditto.
488 * config/ia64/vect.md (mulv8qi3): Rewrite to use new
489 routines, add endian check.
490 (pmpy2_even): Rename from pmpy2_r, add endian check.
491 (pmpy2_odd): Rename from pmpy2_l, add endian check.
492 (vec_widen_smult_lo_v4hi): Rewrite using new routines.
493 (vec_widen_smult_hi_v4hi): Ditto.
494 (vec_widen_umult_lo_v4hi): Ditto.
495 (vec_widen_umult_hi_v4hi): Ditto.
496 (mulv2si3): Change endian checks.
497 (sdot_prodv4hi): Rewrite with new calls.
498 (udot_prodv4hi): New.
499 (vec_pack_ssat_v4hi): Add endian check.
500 (vec_pack_usat_v4hi): Ditto.
501 (vec_pack_ssat_v2si): Ditto.
502 (max1_even): Rename from max1_r, add endian check.
503 (max1_odd): Rename from max1_l, add endian check.
504 (*mux1_rev): Format change.
505 (*mux1_mix): Ditto.
506 (*mux1_shuf): Ditto.
507 (*mux1_alt): Ditto.
508 (*mux1_brcst_v8qi): Use new predicate.
509 (vec_extract_evenv8qi): Remove endian check.
510 (vec_extract_oddv8qi): Ditto.
511 (vec_interleave_lowv4hi): Format change.
512 (vec_interleave_highv4hi): Ditto.
513 (mix2_even): Rename from mix2_r, add endian check.
514 (mix2_odd): Rename from mux2_l, add endian check.
515 (*mux2): Fix mask setting for TARGET_BIG_ENDIAN.
516 (vec_extract_evenodd_helper): Format change.
517 (vec_extract_evenv4hi): Remove endian check.
518 (vec_extract_oddv4hi): Remove endian check.
519 (vec_interleave_lowv2si): Format change.
520 (vec_interleave_highv2si): Format change.
521 (vec_initv2si): Remove endian check.
522 (vecinit_v2si): Add endian check.
523 (reduc_splus_v2sf): Add endian check.
524 (reduc_smax_v2sf): Ditto.
525 (reduc_smin_v2sf): Ditto.
526 (vec_initv2sf): Remove endian check.
527 (fpack): Add endian check.
528 (fswap): Add endian check.
529 (vec_interleave_highv2sf): Add endian check.
530 (vec_interleave_lowv2sf): Add endian check.
531 (fmix_lr): Add endian check.
532 (vec_setv2sf): Format change.
533 (*vec_extractv2sf_0_be): Use shift to extract operand.
534 (*vec_extractv2sf_1_be): New.
535 (vec_pack_trunc_v4hi): Add endian check.
536 (vec_pack_trunc_v2si): Format change.
537
538 2011-02-04 Jakub Jelinek <jakub@redhat.com>
539
540 PR inline-asm/23200
541 * tree-ssa-ter.c (is_replaceable_p): Add TER argument. Don't
542 do bb, locus and block comparison and disallow loads if it is not set.
543 (stmt_is_replaceable_p): New function.
544 (process_replaceable, find_replaceable_in_bb): Adjust is_replaceable_p
545 callers.
546 * expr.c (expand_expr_real_1) <case SSA_NAME>: If
547 get_gimple_for_ssa_name try for EXPAND_INITIALIZER harder to use
548 SSA_NAME_DEF_STMT.
549 * tree-flow.h (stmt_is_replaceable_p): New prototype.
550
551 2011-02-04 Joseph Myers <joseph@codesourcery.com>
552
553 * config/rs6000/xilinx.opt: New.
554 * config.gcc (powerpc-xilinx-eabi*): Use rs6000/xilinx.opt.
555
556 2011-02-04 Joseph Myers <joseph@codesourcery.com>
557
558 * config/mips/mips.opt (EB, EL, noasmopt): New Driver options.
559
560 2011-02-03 Anatoly Sokolov <aesok@post.ru>
561
562 * config/xtensa/xtensa.h (PREFERRED_RELOAD_CLASS,
563 PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
564 * config/xtensa/xtensa-protos.h (xtensa_preferred_reload_class,
565 secondary_reload_info, xtensa_secondary_reload): Remove.
566 * config/xtensa/xtensa.c (TARGET_PREFERRED_RELOAD_CLASS,
567 TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
568 (xtensa_preferred_reload_class): Make static. Change return and
569 'rclass' argument type to reg_class_t. Remove 'isoutput' argument.
570 Use CONST_DOUBLE_P predicate.
571 (xtensa_preferred_output_reload_class): New function.
572 (xtensa_secondary_reload): Make static.
573
574 2011-02-03 Joseph Myers <joseph@codesourcery.com>
575
576 * config/microblaze/microblaze.opt (Zxl-mode-bootstrap,
577 Zxl-mode-executable, Zxl-mode-novectors, Zxl-mode-xilkernel,
578 Zxl-mode-xmdstub, mxl-mode-xilkernel): New Driver options.
579
580 2011-02-03 Jakub Jelinek <jakub@redhat.com>
581
582 PR middle-end/31490
583 * output.h (SECTION_RELRO): Define.
584 (SECTION_MACH_DEP): Adjust.
585 (get_variable_section): New prototype.
586 * varpool.c (varpool_finalize_named_section_flags): New function.
587 (varpool_assemble_pending_decls): Call it.
588 * cgraph.h (varpool_finalize_named_section_flags): New prototype.
589 * cgraphunit.c (cgraph_output_in_order): Call
590 varpool_finalize_named_section_flags.
591 * varasm.c (get_section): Allow section flags conflicts between
592 relro and read-only sections if the section hasn't been declared yet.
593 Set SECTION_OVERRIDE after diagnosing section type conflict.
594 (get_variable_section): No longer static.
595 (default_section_type_flags): Use SECTION_WRITE | SECTION_RELRO for
596 readonly sections that need relocations.
597 (decl_readonly_section_1): New function.
598 (decl_readonly_section): Use it.
599
600 Revert:
601 2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
602 Steve Ellcey <sje@cup.hp.com>
603
604 PR middle-end/31490
605 * varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
606 if section attribute used.
607
608 2011-02-03 Jakub Jelinek <jakub@redhat.com>
609
610 * config/darwin.h (SECTION_NO_ANCHOR): Remove.
611 * config/darwin.c (SECTION_NO_ANCHOR): Define.
612 (darwin_init_sections): Remove assertion.
613
614 2011-02-03 Nick Clifton <nickc@redhat.com>
615
616 * config/rx/predicates.md (rx_zs_comparison_operator): Remove
617 lt and ge.
618 * config/rx/rx.md (abssi2_flags): Use CC_ZSmode rather than CC_ZSOmode.
619 * config/rx/rx.c (rx_print_operand): Use "lt" and "ge" suffixes
620 instead of "n" and "pz".
621 (flags_from_code): LT and GE tests need CC_FLAG_O as well as
622 CC_FLAG_S.
623
624 2011-02-03 Jakub Jelinek <jakub@redhat.com>
625
626 PR target/47312
627 * expr.c (expand_expr_real_2) <case FMA_EXPR>: If target doesn't expand
628 fma, expand FMA_EXPR as fma{,f,l} call.
629
630 PR lto/47274
631 * lto-streamer-out.c (write_symbol): When writing kind and visibility,
632 copy them into a unsigned char variable and pass address of it to
633 lto_output_data_stream.
634
635 PR target/47564
636 * toplev.c (target_reinit): Save and restore *crtl and regno_reg_rtx
637 around backend_init_target and lang_dependent_init_target calls.
638 * cgraphunit.c (cgraph_debug_gimple_stmt): New function.
639 (verify_cgraph_node): Don't call set_cfun here. Use
640 cgraph_debug_gimple_stmt instead of debug_gimple_stmt.
641 Set error_found for incorrectly represented calls to thunks.
642
643 2011-02-03 Alexandre Oliva <aoliva@redhat.com>
644
645 PR debug/43092
646 PR rtl-optimization/43494
647 * rtl.h (for_each_inc_dec_fn): New type.
648 (for_each_inc_dec): Declare.
649 * rtlanal.c (struct for_each_inc_dec_ops): New type.
650 (for_each_inc_dec_find_inc_dec): New fn.
651 (for_each_inc_dec_find_mem): New fn.
652 (for_each_inc_dec): New fn.
653 * dse.c (struct insn_size): Remove.
654 (replace_inc_dec, replace_inc_dec_mem): Remove.
655 (emit_inc_dec_insn_before): New fn.
656 (check_for_inc_dec): Use it, along with for_each_inc_dec.
657 (canon_address): Pass mem modes to cselib_lookup.
658 * cselib.h (cselib_lookup): Add memmode argument. Adjust callers.
659 (cselib_lookup_from_insn): Likewise.
660 (cselib_subst_to_values): Likewise.
661 * cselib.c (find_slot_memmode): New var.
662 (cselib_find_slot): New fn. Use it instead of
663 htab_find_slot_with_hash everywhere.
664 (entry_and_rtx_equal_p): Use find_slot_memmode.
665 (autoinc_split): New fn.
666 (rtx_equal_for_cselib_p): Rename and implement in terms of...
667 (rtx_equal_for_cselib_1): ... this. Take memmode, pass it on.
668 Deal with autoinc. Special-case recursion into MEMs.
669 (cselib_hash_rtx): Likewise.
670 (cselib_lookup_mem): Infer pmode from address mode. Distinguish
671 address and MEM modes.
672 (cselib_subst_to_values): Add memmode, pass it on.
673 Deal with autoinc.
674 (cselib_lookup): Add memmode argument, pass it on.
675 (cselib_lookup_from_insn): Add memmode.
676 (cselib_invalidate_rtx): Discard obsolete push_operand handling.
677 (struct cselib_record_autoinc_data): New.
678 (cselib_record_autoinc_cb): New fn.
679 (cselib_record_sets): Use it, along with for_each_inc_dec. Pass MEM
680 mode to cselib_lookup. Reset autoinced REGs here instead of...
681 (cselib_process_insn): ... here.
682 * var-tracking.c (replace_expr_with_values, use_type): Pass MEM mode
683 to cselib_lookup.
684 (add_uses): Likewise, also to cselib_subst_to_values.
685 (add_stores): Likewise.
686 * sched-deps.c (add_insn_mem_dependence): Pass mode to
687 cselib_subst_to_values.
688 (sched_analyze_1, sched_analyze_2): Likewise. Adjusted.
689 * gcse.c (do_local_cprop): Adjusted.
690 * postreload.c (reload_cse_simplify_set): Adjusted.
691 (reload_cse_simplify_operands): Adjusted.
692 * sel-sched-dump (debug_mem_addr_value): Pass mode.
693
694 2011-02-03 Alexandre Oliva <aoliva@redhat.com>
695
696 PR tree-optimization/45122
697 * tree-ssa-loop-niter.c (number_of_iterations_exit): Don't make
698 unsafe assumptions when there's more than one loop exit.
699
700 2011-02-02 Michael Meissner <meissner@linux.vnet.ibm.com>
701
702 PR target/47272
703 * doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
704 Document using vector double with the load/store builtins, and
705 that the load/store builtins always use Altivec instructions.
706
707 * config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
708 to use altivec memory instructions, even on VSX.
709 (vector_altivec_store_<mode>): Ditto.
710
711 * config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
712 function.
713
714 * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
715 V2DF, V2DI support to load/store overloaded builtins.
716
717 * config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
718 altivec load/store builtins for V2DF/V2DI types.
719
720 * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
721 set avoid indexed addresses on power6 if -maltivec.
722 (altivec_expand_ld_builtin): Add V2DF, V2DI support, use
723 vector_altivec_load/vector_altivec_store builtins.
724 (altivec_expand_st_builtin): Ditto.
725 (altivec_expand_builtin): Add VSX memory builtins.
726 (rs6000_init_builtins): Add V2DI types to internal types.
727 (altivec_init_builtins): Add support for V2DF/V2DI altivec
728 load/store builtins.
729 (rs6000_address_for_altivec): Insure memory address is appropriate
730 for Altivec.
731
732 * config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
733 vec_vsx_ld and vec_vsx_st.
734 (vsx_store_<mode>): Ditto.
735
736 * config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
737 variables to hold long long types for VSX vector memory builtins.
738 (RS6000_BTI_unsigned_long_long): Ditto.
739 (long_long_integer_type_internal_node): Ditti.
740 (long_long_unsigned_type_internal_node): Ditti.
741
742 * config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
743 (altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
744 (altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
745
746 * config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
747 short cuts.
748 (vec_vsx_st): Ditto.
749
750 2011-02-02 Joseph Myers <joseph@codesourcery.com>
751
752 * config/pa/pa-hpux10.opt: New.
753 * config/hpux11.opt (pthread): New Driver option.
754 * config/pa/pa-hpux.opt (nolibdld, rdynamic): New Driver options.
755 * config.gcc (hppa[12]*-*-hpux10*): Use pa/pa-hpux10.opt.
756
757 2011-02-02 Joseph Myers <joseph@codesourcery.com>
758
759 * config/ia64/vms.opt: New.
760 * config.gcc (ia64-hp-*vms*): Use ia64/vms.opt.
761
762 2011-02-01 Michael Meissner <meissner@linux.vnet.ibm.com>
763
764 PR target/47580
765 * config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
766 gpc_reg_operand instead of vsx_register_operand to match rs6000.md
767 generator functions.
768 (vsx_floatuns<VSi><mode>2): Ditto.
769 (vsx_fix_trunc<mode><VSi>2): Ditto.
770 (vsx_fixuns_trunc<mode><VSi>2): Ditto.
771
772 2011-02-02 Joseph Myers <joseph@codesourcery.com>
773
774 * config/i386/djgpp.opt (posix): New Driver option.
775
776 2011-02-02 Gerald Pfeifer <gerald@pfeifer.com>
777
778 * config.gcc (*-*-freebsd[12], *-*-freebsd[12].*, *-*-freebsd*aout*):
779 Move to the unsupported targets list.
780
781 2011-02-02 Peter Bergner <bergner@vnet.ibm.com>
782
783 PR rtl-optimization/47525
784 * df-scan.c: Update copyright years.
785 (df_get_call_refs): Do not mark global registers as DF_REF_REG_USE
786 and non-clobber DF_REF_REG_DEF for calls to const and pure functions.
787
788 2011-02-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
789
790 * config/i386/sysv4.h (TARGET_VERSION): Remove.
791 (SUBTARGET_RETURN_IN_MEMORY): Remove.
792 (ASM_OUTPUT_ASCII): Remove.
793 * config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): Remove #undef.
794
795 2011-02-02 Jeff Law <law@redhat.com>
796
797 PR middle-end/47543
798 * reload.c (find_reloads_address): Handle reg+d address where both
799 components are invalid by reloading the entire address.
800
801 2011-02-02 Sebastian Pop <sebastian.pop@amd.com>
802 Richard Guenther <rguenther@suse.de>
803
804 PR tree-optimization/40979
805 PR bootstrap/47044
806 * passes.c (init_optimization_passes): After LIM call copy_prop
807 and DCE to clean up.
808 * tree-ssa-loop.c (pass_graphite_transforms): Add TODO_dump_func.
809
810 2011-02-02 Sebastian Pop <sebastian.pop@amd.com>
811
812 PR tree-optimization/47576
813 PR tree-optimization/47555
814 * doc/invoke.texi (scev-max-expr-complexity): Documented.
815 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
816 (PARAM_SCEV_MAX_EXPR_COMPLEXITY): Declared.
817 * tree-scalar-evolution.c (follow_ssa_edge): Use
818 PARAM_SCEV_MAX_EXPR_COMPLEXITY.
819
820 2011-02-02 Richard Guenther <rguenther@suse.de>
821
822 PR tree-optimization/47566
823 * builtins.c (builtin_save_expr): No SAVE_EXPR for SSA_NAMEs.
824
825 2011-02-02 Alexandre Oliva <aoliva@redhat.com>
826
827 PR debug/47106
828 PR debug/47402
829 * tree-inline.c (declare_return_variable): Remove unused caller
830 variable.
831
832 PR debug/47106
833 PR debug/47402
834 * tree-flow-inline.h (clear_is_used, is_used_p): New.
835 * cfgexpand.c (account_used_vars_for_block): Use them.
836 * tree-nrv.c (tree_nrv): Likewise.
837 * tree-ssa-live.c (remove_unused_scope_block_p): Likewise.
838 (dump_scope_block): Likewise.
839 (remove_unused_locals): Likewise.
840
841 PR debug/47106
842 PR debug/47402
843 * tree-inline.c (declare_return_variable): Add result decl to
844 local decls only once.
845 * gimple-low.c (record_vars_into): Mark newly-created variables
846 as referenced.
847
848 2011-02-02 Alexandre Oliva <aoliva@redhat.com>
849
850 PR debug/47498
851 PR debug/47501
852 PR debug/45136
853 PR debug/45130
854 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
855 debug insns.
856 (no_real_insns_p, schedule_block, set_priorities): Drop special
857 treatment of boundary debug insns.
858 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
859 * sched-ebb.c (schedule_ebbs): Adjust skipping of debug insns.
860 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
861 (BOUNDARY_DEBUG_INSN_P): Likewise.
862 (SCHEDULE_DEBUG_INSN_P): Likewise.
863 * sched-rgn.c (init_ready_list): Drop special treatment of
864 boundary debug insns.
865 * final.c (rest_of_clean_state): Clear notes' BB.
866
867 2011-02-01 Joseph Myers <joseph@codesourcery.com>
868
869 * config/openbsd.opt (assert=): New Driver option.
870
871 2011-02-01 Joseph Myers <joseph@codesourcery.com>
872
873 * config/i386/nto.opt: New.
874 * config.gcc (i[34567]86-*-nto-qnx*): Use i386/nto.opt.
875
876 2011-02-01 Joseph Myers <joseph@codesourcery.com>
877
878 * config/i386/netware.opt: New.
879 * config.gcc (i[3456x]86-*-netware*): Use i386/netware.opt.
880
881 2011-02-01 Joseph Myers <joseph@codesourcery.com>
882
883 * config/interix.opt (posix): New Driver option.
884
885 2011-02-01 DJ Delorie <dj@redhat.com>
886
887 * config/m32c/m32c.h (PTRDIFF_TYPE): Remove extra definition.
888
889 * config/m32c/m32c.c (m32c_regno_reg_class): Return smallest reg
890 class for A0/A1.
891
892 2011-02-01 Sebastian Pop <sebastian.pop@amd.com>
893
894 PR tree-optimization/47561
895 * toplev.c (process_options): Print the Graphite flags. Add
896 flag_loop_flatten to the list of options requiring Graphite.
897
898 2011-02-01 Joseph Myers <joseph@codesourcery.com>
899
900 * config/i386/cygming.opt (posix): New Driver option.
901
902 2011-02-01 Joseph Myers <joseph@codesourcery.com>
903
904 * config/arm/vxworks.opt: New.
905 * config.gcc (arm-wrs-vxworks): Use arm/vxworks.opt.
906
907 2011-02-01 Joseph Myers <joseph@codesourcery.com>
908
909 * config/alpha/elf.opt: New.
910 * config.gcc (alpha*-*-linux*, alpha*-*-gnu*, alpha*-*-freebsd*,
911 alpha*-*-netbsd*, alpha*-*-openbsd*): Use alpha/elf.opt.
912
913 2011-02-01 Richard Guenther <rguenther@suse.de>
914
915 PR tree-optimization/47559
916 * tree-ssa-loop-im.c (can_sm_ref_p): Do not perform
917 store-motion on references that can throw.
918
919 2011-02-01 Bernd Schmidt <bernds@codesourcery.com>
920
921 * tree-dump.c (dump_option_value_info): Add entry for TDF_CSELIB.
922 * tree-pass.h (TDF_CSELIB): New macro.
923 * cselib.c (new_cselib_val, expand_loc, cselib_expand_value_rtx_1,
924 cselib_lookup): Check for it rather than for TDF_DETAILS.
925
926 2011-02-01 H.J. Lu <hongjiu.lu@intel.com>
927
928 PR driver/47547
929 * lto-wrapper.c (run_gcc): Don't add -dumpdir if linker_output
930 is HOST_BIT_BUCKET.
931
932 * opts.c (finish_options): Don't add x_aux_base_name if it is
933 HOST_BIT_BUCKET.
934
935 2011-02-01 Richard Guenther <rguenther@suse.de>
936
937 PR tree-optimization/47555
938 Revert
939 2010-07-15 Sebastian Pop <sebastian.pop@amd.com>
940
941 * params.def (PARAM_SCEV_MAX_EXPR_SIZE): Bump the value to 100.
942
943 2011-02-01 Sebastien Bourdeauducq <sebastien@milkymist.org>
944
945 PR gcc/46692
946 * config/lm32/t-lm32: Add multilib for all CPU options.
947
948 2011-02-01 Richard Guenther <rguenther@suse.de>
949
950 PR tree-optimization/47541
951 * tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
952 sure to have a field at offset zero.
953
954 2011-01-31 Joseph Myers <joseph@codesourcery.com>
955
956 * config/arc/arc.opt (EB, EL): New Driver options.
957
958 2011-01-31 Joseph Myers <joseph@codesourcery.com>
959
960 * config/alpha/osf5.opt: New.
961 * config.gcc (alpha*-dec-osf5.1*): Use alpha/osf5.opt.
962
963 2011-01-31 Joseph Myers <joseph@codesourcery.com>
964
965 * config/vms/vms.opt (map, mvms-return-codes): New Driver options.
966
967 2011-01-31 Sebastian Pop <sebastian.pop@amd.com>
968
969 * common.opt (ftree-loop-linear): Use Alias to make it an alias of
970 -floop-interchange.
971 * invoke.texi (-ftree-loop-linear): Make it clear that this flag
972 is an alias of -floop-interchange and that it requires the
973 Graphite infrastructure.
974 * tree-ssa-loop.c (gate_graphite_transforms): Do not set
975 flag_loop_interchange based on the value of flag_tree_loop_linear.
976
977 2011-01-31 Jakub Jelinek <jakub@redhat.com>
978 Richard Guenther <rguenther@suse.de>
979
980 PR tree-optimization/47538
981 * tree-ssa-ccp.c (bit_value_binop_1): For uns computation use
982 type instead of r1type, except for comparisons. For right
983 shifts and comparisons punt if there are mismatches in
984 sizetype vs. non-sizetype types.
985
986 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
987
988 * doc/sourcebuild.texi (Effective-Target Keywords): Document
989 avx_runtime.
990
991 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
992
993 * configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld
994 version number.
995 * configure: Regenerate.
996
997 2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
998
999 * configure.ac (gcc_cv_ld_static_option): Define.
1000 (gcc_cv_ld_dynamic_option): Define.
1001 (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
1002 instead.
1003 (HAVE_LD_STATIC_DYNAMIC): Update message.
1004 (LD_STATIC_OPTION): Define.
1005 (LD_DYNAMIC_OPTION): Define.
1006 * configure: Regenerate.
1007 * config.in: Regenerate.
1008 * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
1009 HAVE_LD_STATIC_DYNAMIC]: Use them.
1010
1011 2011-01-31 Nick Clifton <nickc@redhat.com>
1012
1013 * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
1014 registers inside interrupt handlers if the handler is not a leaf
1015 function.
1016
1017 2011-01-31 Nick Clifton <nickc@redhat.com>
1018
1019 * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
1020 reg_renumber returning an INVALID_REGNUM.
1021
1022 2011-01-31 Alexandre Oliva <aoliva@redhat.com>
1023
1024 PR libgcj/44341
1025 * doc/install.texi: Document host options discarded when cross
1026 configuring target libraries.
1027
1028 2011-01-31 Alexandre Oliva <aoliva@redhat.com>
1029
1030 Reverted:
1031 2011-01-25 Alexandre Oliva <aoliva@redhat.com>
1032 PR debug/45136
1033 PR debug/45130
1034 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
1035 debug insns.
1036 (no_real_insns_p, schedule_block, set_priorities): Drop special
1037 treatment of boundary debug insns.
1038 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
1039 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
1040 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
1041 (BOUNDARY_DEBUG_INSN_P): Likewise.
1042 (SCHEDULE_DEBUG_INSN_P): Likewise.
1043 * sched-rgn.c (init_ready_list): Drop special treatment of
1044 boundary debug insns.
1045 * final.c (rest_of_clean-state): Clear notes' BB.
1046
1047 2011-01-31 Alan Modra <amodra@gmail.com>
1048
1049 * config/rs6000/rs6000.c (print_operand): Rearrange addends in
1050 toc relative expressions as we do in print_operand_address.
1051
1052 2011-01-30 Kazu Hirata <kazu@codesourcery.com>
1053
1054 * doc/extend.texi: Follow spelling conventions.
1055 * doc/invoke.texi: Fix a typo.
1056
1057 2011-01-30 Joseph Myers <joseph@codesourcery.com>
1058
1059 * config/hpux11.opt: New.
1060 * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*,
1061 ia64*-*-hpux*): Use hpux11.opt.
1062
1063 2011-01-30 Jonathan Yong <jon_y@users.sourceforge.net>
1064
1065 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add t-dfprules
1066 to tmake_file.
1067
1068 2011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
1069
1070 * doc/install.texi (hppa-hp-hpux10): Remove references to HP
1071 support sites.
1072
1073 2011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
1074
1075 * doc/install.texi (Binaries): Remove outdated reference for
1076 Motorola 68HC11/68HC12 downloads.
1077
1078 2011-01-30 Gerald Pfeifer <gerald@pfeifer.com>
1079
1080 * doc/extend.texi (Thread-Local): Adjust reference to Ulrich
1081 Drepper's paper.
1082
1083 2011-01-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1084
1085 PR bootstrap/47147
1086 * ginclude/stddef.h: Check for _X86_64_ANSI_H_ and _I386_ANSI_H_ as
1087 used by NetBSD.
1088
1089 2011-01-28 Ahmad Sharif <asharif@google.com>
1090
1091 * value-prof.c (check_counter): Corrected error message.
1092
1093 2011-01-29 Jie Zhang <jie@codesourcery.com>
1094
1095 * config/arm/arm.c (arm_legitimize_reload_address): New.
1096 * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
1097 arm_legitimize_reload_address.
1098 * config/arm/arm-protos.h (arm_legitimize_reload_address): Declare.
1099
1100 2011-01-28 Ian Lance Taylor <iant@google.com>
1101
1102 * godump.c (go_define): Ignore macros whose definitions include
1103 two adjacent operands.
1104
1105 2011-01-28 Jakub Jelinek <jakub@redhat.com>
1106
1107 PR target/42894
1108 * varasm.c (force_const_mem): Store copy of x in desc->constant
1109 instead of x itself.
1110 * expr.c (emit_move_insn): Add a copy of y_cst instead of y_cst
1111 itself into REG_EQUAL note.
1112
1113 2011-01-28 Joseph Myers <joseph@codesourcery.com>
1114
1115 * config/freebsd.opt (posix, rdynamic): New Driver options.
1116
1117 2011-01-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1118
1119 * configure.ac (gcc_cv_ld_static_dynamic): IRIX 6 ld supports
1120 -Bstatic/-Bdynamic.
1121 * configure: Regenerate.
1122
1123 2011-01-27 Joseph Myers <joseph@codesourcery.com>
1124
1125 * config/rs6000/sysv4.h (LIB_NETBSD_SPEC): Don't handle -profile.
1126 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -profile.
1127
1128 2011-01-27 Anatoly Sokolov <aesok@post.ru>
1129
1130 * config/s390/s390.h (PREFERRED_RELOAD_CLASS): Remove.
1131 * config/s390/s390-protos.h (s390_preferred_reload_class): Remove.
1132 * config/s390/s390.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
1133 (s390_preferred_reload_class): Make static. Change return and
1134 'rclass' argument type to reg_class_t.
1135
1136 2011-01-27 Jan Hubicka <jh@suse.cz>
1137
1138 PR middle-end/46949
1139 * cgraphunit.c (process_common_attributes): Fix use of remove_attribute.
1140 (process_function_and_variable_attributes): Check defined weakrefs.
1141
1142 2011-01-27 Martin Jambor <mjambor@suse.cz>
1143
1144 PR tree-optimization/47228
1145 * tree-sra.c (sra_modify_assign): Use build_ref_for_model instead of
1146 build_ref_for_offset.
1147
1148 2011-01-27 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1149
1150 * config/spu/spu-elf.h (ASM_SPEC): Remove.
1151
1152 2011-01-26 Mikael Pettersson <mikpe@it.uu.se>
1153
1154 PR rtl-optimization/46856
1155 * postreload.c (reload_combine_recognize_const_pattern): Do not
1156 separate cc0 setter and user on cc0 targets.
1157
1158 2011-01-26 Nicola Pero <nicola.pero@meta-innovation.com>
1159
1160 PR c/43082
1161 * c-typeck.c (c_objc_common_truthvalue_conversion): If we are
1162 passed a VOID_TYPE expression, immediately emit an error and
1163 return error_mark_node.
1164
1165 2011-01-26 Jeff Law <law@redhat.com>
1166
1167 PR rtl-optimization/47464
1168 * df-problems.c (can_move_insn_across): Use may_trap_or_fault_p
1169 rather than may_trap_p as needed.
1170
1171 2011-01-26 DJ Delorie <dj@redhat.com>
1172
1173 PR rtl-optimization/46878
1174 * combine.c (insn_a_feeds_b): Check for the implicit cc0
1175 setter/user dependency as well.
1176
1177 2011-01-26 Eric Botcazou <ebotcazou@adacore.com>
1178
1179 PR rtl-optimization/44469
1180 * cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
1181 after removing trivially dead basic blocks.
1182
1183 2011-01-26 Joseph Myers <joseph@codesourcery.com>
1184
1185 * config/bfin/bfin.h (LINK_SPEC): Remove %{Qy:} %{!Qn:-Qy}.
1186 * config/frv/frv.h (LINK_SPEC): Likewise.
1187 * config/i386/netware.h (LINK_SPEC): Likewise.
1188 * config/m68k/linux.h (ASM_SPEC): Likewise.
1189 * config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
1190 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
1191 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
1192 * config/sparc/linux.h (ASM_SPEC): Likewise.
1193 * config/sparc/linux64.h (ASM_SPEC): Likewise.
1194 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
1195
1196 2011-01-26 Joseph Myers <joseph@codesourcery.com>
1197
1198 * config/bfin/bfin.h (ASM_SPEC): Remove %{Ym,*}.
1199 * config/frv/frv.h (ASM_SPEC): Likewise.
1200 * config/m68k/linux.h (ASM_SPEC): Likewise.
1201 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
1202 * config/rs6000/linux64.h (ASM_SPEC): Likewise.
1203 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
1204 * config/sparc/linux.h (ASM_SPEC): Likewise.
1205 * config/sparc/linux64.h (ASM_SPEC): Likewise.
1206 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
1207
1208 2011-01-26 Joseph Myers <joseph@codesourcery.com>
1209
1210 * config/bfin/bfin.h (LINK_SPEC): Remove %{YP,*}.
1211 * config/frv/frv.h (LINK_SPEC): Likewise.
1212 * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
1213
1214 2011-01-26 Joseph Myers <joseph@codesourcery.com>
1215
1216 * config/bfin/bfin.h (ASM_SPEC): Remove %{Yd,*}.
1217 * config/frv/frv.h (ASM_SPEC): Likewise.
1218 * config/i386/sol2-10.h (ASM_SPEC): Likewise.
1219 * config/m68k/linux.h (ASM_SPEC): Likewise.
1220 * config/pa/pa-linux.h (ASM_SPEC): Likewise.
1221 * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
1222 * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
1223 * config/sol2.h (ASM_SPEC): Remove comment about -Yd,.
1224 * config/sparc/linux.h (ASM_SPEC): Likewise.
1225 * config/sparc/linux64.h (ASM_SPEC): Likewise.
1226 * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
1227 * config/sparc/sysv4.h (ASM_SPEC): Remove %{Yd,*}.
1228
1229 2011-01-26 Steve Ellcey <sje@cup.hp.com>
1230
1231 PR target/46997
1232 * config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
1233 (*mux2): Ditto.
1234 (vec_extract_evenodd_help): Ditto.
1235 (vec_extract_evenv4hi): Ditto.
1236 (vec_extract_oddv4hi): Ditto.
1237 (vec_interleave_lowv2si): Ditto.
1238 (vec_interleave_highv2si): Ditto.
1239 (vec_extract_evenv2si): Ditto.
1240 (vec_extract_oddv2si: Ditto.
1241 (vec_pack_trunc_v2si): Ditto.
1242
1243 2011-01-22 Jan Hubicka <jh@suse.cz>
1244
1245 PR target/47237
1246 * cgraph.h (cgraph_local_info): New field can_change_signature.
1247 * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
1248 signature can change.
1249 (ipcp_estimate_growth): Call sequence simplify only if calle signature
1250 can change.
1251 (ipcp_insert_stage): Only compute args_to_skip if signature can change.
1252 (cgraph_function_versioning): We can not change signature of functions
1253 that don't allow that.
1254 * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
1255 (lto_input_node): Likewise.
1256 * ipa-inline.c (compute_inline_parameters): Compute
1257 local.can_change_signature.
1258 * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
1259 * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on
1260 functions that can not change signature.
1261 * i386.c (ix86_function_regparm, ix86_function_sseregparm,
1262 init_cumulative_args): Do not use local calling conventions
1263 for functions that can not change signature.
1264
1265 2011-01-22 Jan Hubicka <jh@suse.cz>
1266
1267 * doc/invoke.texi (hot-bb-frequency-fraction): Commit forgotten hunk.
1268
1269 2011-01-26 Richard Guenther <rguenther@suse.de>
1270
1271 PR tree-optimization/47190
1272 * cgraphunit.c (process_common_attributes): New function.
1273 (process_function_and_variable_attributes): Use it.
1274
1275 2011-01-26 Richard Guenther <rguenther@suse.de>
1276
1277 PR lto/47423
1278 * cgraphbuild.c (record_eh_tables): Record reference to personality
1279 function.
1280
1281 2011-01-26 Alexandre Oliva <aoliva@redhat.com>
1282
1283 PR debug/45454
1284 * sel-sched.c (moveup_expr): Don't let debug insns prevent
1285 non-debug insns from moving up.
1286
1287 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1288
1289 PR target/40125
1290 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable
1291 t-dlldir{,-x} fragment for build and add it to tmake_file.
1292 (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
1293 * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc.
1294 * config/i386/t-dlldir: New file.
1295 (SHLIB_DLLDIR): Define.
1296 * config/i386/t-dlldir-x: New file.
1297 (SHLIB_DLLDIR): Define.
1298 * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set.
1299 (SHLIB_INSTALL): Use it.
1300
1301 2011-01-26 Chung-Lin Tang <cltang@codesourcery.com>
1302
1303 PR target/47246
1304 * config/arm/arm.c (thumb2_legitimate_index_p): Change the
1305 lower bound of the allowed Thumb-2 coprocessor load/store
1306 index range to -256. Add explaining comment.
1307
1308 2011-01-25 Ian Lance Taylor <iant@google.com>
1309
1310 * godump.c (go_define): Improve lexing of macro expansion to only
1311 accept expressions which match Go spec.
1312
1313 2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
1314
1315 PR c++/43601
1316 * tree.c (handle_dll_attribute): Handle it.
1317 * doc/extend.texi (@item dllexport): Mention it.
1318 * doc/invoke.texi (@item -fno-keep-inline-dllexport): Document it.
1319
1320 2011-01-25 Ian Lance Taylor <iant@google.com>
1321
1322 PR tree-optimization/26854
1323 * c-decl.c (struct c_scope): Add field has_jump_unsafe_decl.
1324 (decl_jump_unsafe): Move higher in file, with no other change.
1325 (bind): Set has_jump_unsafe_decl if appropriate.
1326 (update_label_decls): Test has_jump_unsafe_decl to avoid loop.
1327 (check_earlier_gotos): Likewise.
1328 (c_check_switch_jump_warnings): Likewise.
1329
1330 2011-01-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1331
1332 * doc/invoke.texi (Warning Options): Add missing hyphen.
1333 (-fprofile-dir): Minor grammatical fixes.
1334 (-fbranch-probabilities): Likewise.
1335
1336 2011-01-25 Alexandre Oliva <aoliva@redhat.com>
1337
1338 PR debug/45136
1339 PR debug/45130
1340 * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
1341 debug insns.
1342 (no_real_insns_p, schedule_block, set_priorities): Drop special
1343 treatment of boundary debug insns.
1344 * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug insns.
1345 * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
1346 * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
1347 (BOUNDARY_DEBUG_INSN_P): Likewise.
1348 (SCHEDULE_DEBUG_INSN_P): Likewise.
1349 * sched-rgn.c (init_ready_list): Drop special treatment of
1350 boundary debug insns.
1351 * final.c (rest_of_clean-state): Clear notes' BB.
1352
1353 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1354
1355 * Makefile.in (LAMBDA_H): Removed.
1356 (TREE_DATA_REF_H): Remove dependence on LAMBDA_H.
1357 (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o,
1358 lambda-trans.o, and tree-loop-linear.o.
1359 (lto-symtab.o): Remove dependence on LAMBDA_H.
1360 (tree-loop-linear.o): Remove rule.
1361 (lambda-mat.o): Same.
1362 (lambda-trans.o): Same.
1363 (lambda-code.o): Same.
1364 (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H.
1365 (tree-vect-slp.o): Same.
1366 * hwint.h (gcd): Moved here.
1367 (least_common_multiple): Same.
1368 * lambda-code.c: Removed.
1369 * lambda-mat.c: Removed.
1370 * lambda-trans.c: Removed.
1371 * lambda.h: Removed.
1372 * tree-loop-linear.c: Removed.
1373 * lto-symtab.c: Do not include lambda.h.
1374 * omega.c (gcd): Removed.
1375 * passes.c (init_optimization_passes): Remove pass_linear_transform.
1376 * tree-data-ref.c (print_lambda_vector): Moved here.
1377 (lambda_vector_copy): Same.
1378 (lambda_matrix_copy): Same.
1379 (lambda_matrix_id): Same.
1380 (lambda_vector_first_nz): Same.
1381 (lambda_matrix_row_add): Same.
1382 (lambda_matrix_row_exchange): Same.
1383 (lambda_vector_mult_const): Same.
1384 (lambda_vector_negate): Same.
1385 (lambda_matrix_row_negate): Same.
1386 (lambda_vector_equal): Same.
1387 (lambda_matrix_right_hermite): Same.
1388 * tree-data-ref.h: Do not include lambda.h.
1389 (lambda_vector): Moved here.
1390 (lambda_matrix): Same.
1391 (dependence_level): Same.
1392 (lambda_transform_legal_p): Removed declaration.
1393 (lambda_collect_parameters): Same.
1394 (lambda_compute_access_matrices): Same.
1395 (lambda_vector_gcd): Same.
1396 (lambda_vector_new): Same.
1397 (lambda_vector_clear): Same.
1398 (lambda_vector_lexico_pos): Same.
1399 (lambda_vector_zerop): Same.
1400 (lambda_matrix_new): Same.
1401 * tree-flow.h (least_common_multiple): Removed declaration.
1402 * tree-parloops.c (lambda_trans_matrix): Moved here.
1403 (LTM_MATRIX): Same.
1404 (LTM_ROWSIZE): Same.
1405 (LTM_COLSIZE): Same.
1406 (LTM_DENOMINATOR): Same.
1407 (lambda_trans_matrix_new): Same.
1408 (lambda_matrix_vector_mult): Same.
1409 (lambda_transform_legal_p): Same.
1410 * tree-pass.h (pass_linear_transform): Removed declaration.
1411 * tree-ssa-loop.c (tree_linear_transform): Removed.
1412 (gate_tree_linear_transform): Removed.
1413 (pass_linear_transform): Removed.
1414 (gate_graphite_transforms): Make flag_tree_loop_linear an alias of
1415 flag_loop_interchange.
1416
1417 2011-01-25 Jakub Jelinek <jakub@redhat.com>
1418
1419 PR tree-optimization/47265
1420 PR tree-optimization/47443
1421 * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false
1422 if name still has some uses.
1423
1424 2011-01-25 Martin Jambor <mjambor@suse.cz>
1425
1426 PR tree-optimization/47382
1427 * gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
1428 (gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.
1429
1430 2011-01-25 Joel Sherrill <joel.sherrill@oarcorp.com>
1431
1432 * config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
1433 sjlj_except_unwind_info.
1434
1435 2011-01-25 Richard Guenther <rguenther@suse.de>
1436
1437 PR tree-optimization/47426
1438 * tree-ssa-structalias.c (ipa_pta_execute): Make externally
1439 visible functions results escape.
1440
1441 2011-01-25 Jakub Jelinek <jakub@redhat.com>
1442
1443 PR target/45701
1444 * config/arm/arm.c (any_sibcall_uses_r3): New function.
1445 (arm_get_frame_offsets): Use it.
1446
1447 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1448 Jakub Jelinek <jakub@redhat.com>
1449
1450 PR tree-optimization/47271
1451 * tree-if-conv.c (bb_postdominates_preds): New.
1452 (if_convertible_bb_p): Call bb_postdominates_preds.
1453 (if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
1454 (predicate_scalar_phi): Call bb_postdominates_preds.
1455
1456 2011-01-25 Nick Clifton <nickc@redhat.com>
1457
1458 * config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
1459 * config/rx/rx.c (rx_function_value): Likewise.
1460 (rx_promote_function_mode): Likewise.
1461 (gen_safe_add): Place an outsized immediate value inside an UNSPEC
1462 in order to make it legitimate.
1463 * config/rx/rx.md (adddi3_internal): If the second operand is a MEM
1464 make sure that the first operand is the same as the result register.
1465 (addsi3_unspec): Delete.
1466 (subdi3): Do not accept immediate operands.
1467 (subdi3_internal): Likewise.
1468
1469 2011-01-25 Jeff Law <law@redhat.com>
1470
1471 PR rtl-optimization/37273
1472 * ira-costs.c (scan_one_insn): Detect constants living in memory and
1473 handle them like argument loads from stack slots. Do not double
1474 count memory for memory constants and argument loads from stack slots.
1475
1476 2011-01-25 Jakub Jelinek <jakub@redhat.com>
1477
1478 PR tree-optimization/47427
1479 PR tree-optimization/47428
1480 * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
1481 coalesce if the new root var would be TREE_READONLY.
1482
1483 2011-01-25 Richard Guenther <rguenther@suse.de>
1484
1485 PR middle-end/47414
1486 * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
1487 correct type for TBAA.
1488
1489 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1490
1491 * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
1492 (close_phi_written_to_memory): Call for_each_index with
1493 dr_indices_valid_in_loop.
1494
1495 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1496
1497 * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
1498 when it is initialized.
1499
1500 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1501
1502 * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
1503 call to graphite_find_data_references_in_stmt.
1504 * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
1505 (try_generate_gimple_bb): Call outermost_loop_in_sese_1. Update
1506 call to graphite_find_data_references_in_stmt.
1507 (analyze_drs_in_stmts): Same.
1508 * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
1509 in which the scalar analysis of indices is performed.
1510 (create_data_ref): Same. Update call to dr_analyze_indices.
1511 (find_data_references_in_stmt): Update call to create_data_ref.
1512 (graphite_find_data_references_in_stmt): Same.
1513 * tree-data-ref.h (graphite_find_data_references_in_stmt): Update
1514 declaration.
1515 (create_data_ref): Same.
1516 * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
1517 call to create_data_ref.
1518
1519 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1520
1521 * graphite-sese-to-poly.c (build_poly_scop): Move
1522 rewrite_commutative_reductions_out_of_ssa before find_scop_parameters.
1523
1524 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1525
1526 * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
1527 VAR_DECL, PARM_DECL, and RESULT_DECL.
1528
1529 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1530
1531 * graphite-dependences.c (reduction_dr_1): Allow several reductions
1532 in a reduction PBB.
1533 * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
1534 that have already been marked as PBB_IS_REDUCTION.
1535
1536 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1537
1538 * graphite-scop-detection.c (same_close_phi_node): New.
1539 (remove_duplicate_close_phi): New.
1540 (make_close_phi_nodes_unique): New.
1541 (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.
1542
1543 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1544
1545 * graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
1546 * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
1547 of both data references to be the same.
1548
1549 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1550
1551 * graphite-dependences.c (build_lexicographical_constraint): Remove
1552 the gdim parameter.
1553 (build_lexicographical_constraint): Adjust call to
1554 ppl_powerset_is_empty.
1555 (dependence_polyhedron): Same.
1556 (graphite_legal_transform_dr): Same.
1557 (graphite_carried_dependence_level_k): Same.
1558 * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params
1559 parameter.
1560 * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.
1561
1562 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1563
1564 * graphite-sese-to-poly.c
1565 (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
1566 (close_phi_written_to_memory): New.
1567 (translate_scalar_reduction_to_array): Call close_phi_written_to_memory
1568 and unshare_expr.
1569
1570 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1571
1572 * doc/install.texi: Update the expected version number of PPL to 0.11.
1573 * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
1574 #if PPL_VERSION_MINOR < 11.
1575
1576 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1577
1578 * graphite-dependences.c: Include graphite-cloog-util.h.
1579 (new_poly_ddr): Inlined into dependence_polyhedron.
1580 (free_poly_ddr): Moved close by new_poly_ddr.
1581 (dependence_polyhedron_1): Renamed dependence_polyhedron.
1582 Early return NULL when ppl_powerset_is_empty returns true.
1583 (dependence_polyhedron): Renamed new_poly_ddr. Call only once
1584 poly_drs_may_alias_p. Avoid one call to ppl_powerset_is_empty.
1585 (graphite_legal_transform_dr): Call new_poly_ddr.
1586 (graphite_carried_dependence_level_k): Same.
1587 (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2. Use new_poly_ddr.
1588 (dot_transformed_deps_stmt_1): Removed.
1589 (dot_deps_stmt_1): Call dot_deps_stmt_2.
1590 (dot_original_deps): Renamed dot_deps_2. Call new_poly_ddr.
1591 (dot_deps_1): Call dot_deps_2.
1592 * Makefile.in (graphite-dependences.o): Add missing dependence on
1593 graphite-cloog-util.h.
1594
1595 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1596
1597 * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
1598 (build_lexicographical_constraint): Same.
1599 (dependence_polyhedron_1): Same.
1600 (graphite_legal_transform_dr): Same.
1601 (graphite_carried_dependence_level_k): Same.
1602 * graphite-ppl.c (ppl_powerset_is_empty): New.
1603 * graphite-ppl.h (ppl_powerset_is_empty): Declared.
1604 * tree-data-ref.c (dump_data_reference): Print the basic block index.
1605
1606 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1607
1608 * graphite-dependences.c (build_pairwise_scheduling): Correctly compute
1609 the "a followed by b" relation and document it.
1610
1611 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1612
1613 * graphite-dependences.c (build_lexicographical_constraint): Stop the
1614 iteration when the bag of constraints is empty.
1615
1616 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1617
1618 * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.
1619
1620 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1621
1622 * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
1623 nest and two loop depths as parameters.
1624 (lst_try_interchange_loops): Call lst_interchange_profitable_p after
1625 lst_perfect_nestify.
1626
1627 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1628
1629 * graphite-dependences.c (print_pddr): Call
1630 ppl_io_fprint_Pointset_Powerset_C_Polyhedron.
1631
1632 2011-01-25 Sebastian Pop <sebastian.pop@amd.com>
1633
1634 * graphite-ppl.c (debug_gmp_value): New.
1635 * graphite-ppl.h (debug_gmp_value): Declared.
1636
1637 2011-01-25 Tobias Grosser <grosser@fim.uni-passau.de>
1638
1639 * doc/install.texi: Document availability of cloog-0.16.
1640
1641 2011-01-25 Vladimir Kargov <kargov@gmail.com>
1642
1643 * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
1644 invalid postdominance info.
1645
1646 2011-01-24 Jan Hubicka <jh@suse.cz>
1647
1648 PR c/21659
1649 * doc/extend.texi (weak pragma): Drop claim that it must
1650 appear before definition.
1651 * varasm.c (merge_weak, declare_weak): Only sanity check
1652 that DECL is not output at a time it is declared weak.
1653
1654 2011-01-24 Kenneth Zadeck <zadeck@naturalbridge.com>
1655
1656 * machmode.def: Fixed comments.
1657
1658 2011-01-24 Kai Tietz <kai.tietz@onevision.com>
1659
1660 * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
1661
1662 2011-01-24 Paul Koning <ni1d@arrl.net>
1663
1664 * builtins.c (c_readstr): Fix byte order if BYTES_BIG_ENDIAN !=
1665 WORDS_BIG_ENDIAN.
1666
1667 2011-01-24 H.J. Lu <hongjiu.lu@intel.com>
1668
1669 PR target/46519
1670 * config/i386/i386.c: Include sbitmap.h and fibheap.h.
1671 (block_info): Add scanned and prev.
1672 (move_or_delete_vzeroupper_2): Return if the basic block
1673 has been scanned and the upper 128bit state is unchanged
1674 from the last scan.
1675 (move_or_delete_vzeroupper_1): Return true if the exit
1676 state is changed.
1677 (move_or_delete_vzeroupper): Visit basic blocks using the
1678 work-list based algorithm based on vt_find_locations in
1679 var-tracking.c.
1680
1681 * config/i386/t-i386: Also depend on sbitmap.h and $(FIBHEAP_H).
1682
1683 2011-01-24 Nick Clifton <nickc@redhat.com>
1684
1685 * config/v850/v850.opt (mv850es): New option - alias for -mv850e1.
1686 * config/v850/v850.h (ASM_SPEC): If -mv850es is specified pass
1687 -mv850e1 to the assembler. If -mv850e1 or -mv850es is specified
1688 then define __v850e1__.
1689 * doc/invoke.texi: Document -mv850es.
1690
1691 2011-01-24 Richard Henderson <rth@redhat.com>
1692
1693 * config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
1694 compound unordered comparisons.
1695 * config/rx/rx.c (rx_split_fp_compare): Remove.
1696 * config/rx/rx-protos.h: Update.
1697 * config/rx/rx.md (gcc_conds, rx_conds): Remove.
1698 (cbranchsf4): Don't call rx_split_fp_compare.
1699 (*cbranchsf4): Use rx_split_cbranch.
1700 (*cmpsf): Don't accept "i" constraint.
1701 (*conditional_branch): Only valid after reload.
1702 (cstoresf4): Merge expander with insn. Don't call rx_split_fp_compare.
1703
1704 2011-01-24 Michael Meissner <meissner@linux.vnet.ibm.com>
1705
1706 PR target/47385
1707 * config/rs6000/altivec.md (vector constant splitters): Add
1708 support for creating vector single precision constants if -mvsx is
1709 used and we would create the constant using Altivec primitives.
1710
1711 2011-01-23 Bernd Schmidt <bernds@codesourcery.com>
1712 Richard Sandiford <rdsandiford@googlemail.com>
1713
1714 PR rtl-optimization/47166
1715 * reload1.c (emit_reload_insns): Disable the spill_reg_store
1716 mechanism for PRE_MODIFY and POST_MODIFY.
1717 (inc_for_reload): For PRE_MODIFY, return the insn that sets the
1718 reloadreg.
1719
1720 2011-01-23 Andreas Schwab <schwab@linux-m68k.org>
1721
1722 * compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers.
1723
1724 2011-01-22 Jan Hubicka <jh@suse.cz>
1725
1726 PR lto/47333
1727 * lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.
1728
1729 2011-01-22 Jan Hubicka <jh@suse.cz>
1730
1731 PR tree-optimization/43884
1732 PR lto/44334
1733 * predict.c (maybe_hot_frequency_p): Use entry block frequency as base.
1734 * doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
1735
1736 2011-01-22 Anatoly Sokolov <aesok@post.ru>
1737
1738 * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
1739 * config/s390/s390.c (s390_register_move_cost,
1740 s390_memory_move_cost): New.
1741 (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
1742
1743 2011-01-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1744
1745 PR middle-end/47401
1746 * except.c (sjlj_assign_call_site_values): Move setting the
1747 crtl->uses_eh_lsda flag to ...
1748 (sjlj_mark_call_sites): ... here.
1749 (sjlj_emit_function_enter): Support NULL dispatch label.
1750 (sjlj_build_landing_pads): In a function with no landing pads
1751 that still has must-not-throw regions, generate code to register
1752 a personality function with empty LSDA.
1753
1754 2011-01-21 Richard Henderson <rth@redhat.com>
1755
1756 * config/rx/rx.c (TARGET_FLAGS_REGNUM): New.
1757
1758 * config/mn10300/mn10300.c (TARGET_FLAGS_REGNUM): New.
1759
1760 * compare-elim.c: New file.
1761 * Makefile.in (OBJS-common): Add it.
1762 (compare-elim.o): New.
1763 * common.opt (fcompare-elim): New.
1764 * opts.c (default_options_table): Add OPT_fcompare_elim.
1765 * tree-pass.h (pass_compare_elim_after_reload): New.
1766 * passes.c (init_optimization_passes): Add it.
1767 * recog.h: Protect against re-inclusion.
1768 * target.def (TARGET_FLAGS_REGNUM): New POD hook.
1769 * doc/invoke.texi (-fcompare-elim): Document it.
1770 * doc/tm.texi.in (TARGET_FLAGS_REGNUM): Document it.
1771 * doc/tm.texi: Rebuild.
1772
1773 2011-01-22 Nick Clifton <nickc@redhat.com>
1774
1775 * config/rx/rx.md (cstoresf4): Pass comparison operator to
1776 rx_split_fp_compare.
1777
1778 2011-01-22 Nick Clifton <nickc@redhat.com>
1779
1780 * config/rx/rx.md (UNSPEC_CONST): New.
1781 (deallocate_and_return): Wrap the amount popped off the stack in
1782 an UNSPEC_CONST in order to stop it being rejected by
1783 -mmax-constant-size.
1784 (pop_and_return): Add a "(return)" rtx.
1785 (call): Drop the immediate operand.
1786 (call_internal): Likewise.
1787 (call_value): Likewise.
1788 (call_value_internal): Likewise.
1789 (sibcall_internal): Likewise.
1790 (sibcall_value_internal): Likewise.
1791 (sibcall): Likewise. Generate an explicit call using
1792 sibcall_internal.
1793 (sibcall_value): Likewise.
1794 (mov<>): FAIL if a constant operand is not legitimate.
1795 (addsi3_unpsec): New pattern.
1796
1797 * config/rx/rx.c (rx_print_operand_address): Handle UNSPEC CONSTs.
1798 (ok_for_max_constant): New function.
1799 (gen_safe_add): New function.
1800 (rx_expand_prologue): Use gen_safe_add.
1801 (rx_expand_epilogue): Likewise.
1802 (rx_is_legitimate_constant): Use ok_for_max_constant. Handle
1803 UNSPEC CONSTs.
1804
1805 2011-01-21 Jeff Law <law@redhat.com>
1806
1807 PR tree-optimization/47053
1808 * tree-ssa-dse.c (need_eh_cleanup): New bitmap.
1809 (dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
1810 statements are deleted.
1811 (tree_ssa_dse): Allocate & free NEED_EH_CLEANUP. If NEED_EH_CLEANUP
1812 is nonempty, then purge dead edges and cleanup the CFG.
1813
1814 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
1815
1816 PR debug/47402
1817 Temporarily revert:
1818 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
1819 PR debug/47106
1820 * tree-dfa.c (create_var_ann): Mark variable as used.
1821
1822 2011-01-21 Jakub Jelinek <jakub@redhat.com>
1823
1824 PR middle-end/45566
1825 * except.c (convert_to_eh_region_ranges): Emit queued no-region
1826 notes from other section in hot/cold partitioning even if
1827 last_action is -3. Increment call_site_base.
1828
1829 PR rtl-optimization/47366
1830 * fwprop.c (forward_propagate_into): Return bool. If
1831 any changes are made, -fnon-call-exceptions is used and
1832 REG_EH_REGION note is present, call purge_dead_edges
1833 and return true if it purged anything.
1834 (fwprop_addr): Adjust callers, call cleanup_cfg (0) if
1835 any EH edges were purged.
1836
1837 2011-01-21 Jeff Law <law@redhat.com>
1838
1839 PR rtl-optimization/41619
1840 * caller-save.c (setup_save_areas): Break out code to determine
1841 which hard regs are live across calls by examining the reload chains
1842 so that it is always used.
1843 Eliminate code which checked REG_N_CALLS_CROSSED.
1844
1845 2011-01-21 Jakub Jelinek <jakub@redhat.com>
1846
1847 PR tree-optimization/47355
1848 * tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
1849 NOP has non-debug uses beyond PHIs in new_bb.
1850
1851 2011-01-21 Alexandre Oliva <aoliva@redhat.com>
1852
1853 PR debug/47106
1854 * cfgexpand.c (account_used_vars_for_block): Only account vars
1855 that are annotated as used.
1856 (estimated_stack_frame_size): Don't set TREE_USED.
1857 * tree-dfa.c (create_var_ann): Mark variable as used.
1858
1859 2011-01-21 Richard Guenther <rguenther@suse.de>
1860
1861 PR middle-end/47395
1862 * tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.
1863
1864 2011-01-21 Richard Guenther <rguenther@suse.de>
1865
1866 PR tree-optimization/47365
1867 * tree-ssa-sccvn.h (vn_lookup_kind): Declare.
1868 (vn_reference_lookup_pieces): Adjust.
1869 (vn_reference_lookup): Likewise.
1870 * tree-ssa-sccvn.c (vn_walk_kind): New static global.
1871 (vn_reference_lookup_3): Only look through kills if in
1872 VN_WALKREWRITE mode.
1873 (vn_reference_lookup_pieces): Adjust.
1874 (vn_reference_lookup): Likewise.
1875 (visit_reference_op_load): Likewise.
1876 (visit_reference_op_store): Likewise.
1877 * tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
1878 (compute_avail): Likewise.
1879 (eliminate): Likewise.
1880
1881 2011-01-21 Jakub Jelinek <jakub@redhat.com>
1882
1883 * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
1884 DECL_IGNORED_P non-reg vars if they are used.
1885
1886 PR tree-optimization/47391
1887 * varpool.c (const_value_known_p): Return false if
1888 decl is volatile.
1889
1890 2011-01-21 Kai Tietz <kai.tietz@onevision.com>
1891
1892 PR bootstrap/47215
1893 * config/i386/i386.c (ix86_local_alignment): Handle
1894 case for va_list_type_node is nil.
1895 (ix86_canonical_va_list_type): Likewise.
1896
1897 2011-01-21 Alan Modra <amodra@gmail.com>
1898
1899 * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
1900 builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
1901
1902 2011-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1903
1904 * config/arm/arm.md (define_attr type): Rename f_load
1905 and f_store to f_fpa_load and f_fpa_store. Update.
1906 (write_conflict): Deal with rename fallout.
1907 (*push_fp_multi): Likewise.
1908 * config/arm/fpa.md (f_load): Use f_fpa_load.
1909 (f_store): Use f_fpa_store.
1910 (*movsf_fpa): Likewise.
1911 (*movdf_fpa): Likewise.
1912 (*movxf_fpa): Likewise.
1913 (*thumb2_movsf_fpa): Likewise.
1914 (*thumb2_movdf_fpa): Likewise.
1915 (*thumb2_movxf_fpa): Likewise.
1916 * config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
1917 f_loadd and f_stored.
1918 (*thumb2_movdi_vfp): Likewise.
1919 (*thumb2_movsf_vfp): Fix attribute to f_loads.
1920 (*thumb2_movsi_vfp): Likewise.
1921 * config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
1922 Use f_loads instead of f_load.
1923 * config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.
1924
1925 2011-01-20 Anatoly Sokolov <aesok@post.ru>
1926
1927 * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
1928 * config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
1929 * config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
1930 (xtensa_mode_dependent_address_p): New function.
1931 (constantpool_address_p): Make static. Change return type to bool.
1932 Change argument type to const_rtx. Use CONST_INT_P predicate.
1933
1934 2011-01-20 Alexandre Oliva <aoliva@redhat.com>
1935
1936 PR debug/46583
1937 * tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
1938
1939 2011-01-20 Jakub Jelinek <jakub@redhat.com>
1940
1941 PR debug/47283
1942 * cfgexpand.c (expand_debug_expr): Instead of generating
1943 (mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
1944 etc. handling.
1945
1946 2011-01-20 Richard Guenther <rguenther@suse.de>
1947
1948 PR middle-end/47370
1949 * tree-inline.c (remap_gimple_op_r): Recurse manually for
1950 the pointer operand of MEM_REFs.
1951
1952 2011-01-20 Jakub Jelinek <jakub@redhat.com>
1953
1954 PR tree-optimization/46130
1955 * ipa-split.c (consider_split): If return_bb contains non-virtual
1956 PHIs other than for retval or if split_function would not adjust it,
1957 refuse to split.
1958
1959 2011-01-20 Richard Guenther <rguenther@suse.de>
1960
1961 PR tree-optimization/47167
1962 * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
1963 Revert previous change, only avoid enumeral type changes.
1964
1965 2011-01-19 Mike Stump <mikestump@comcast.net>
1966
1967 * doc/tm.texi.in (BRANCH_COST): Englishify.
1968 * doc/tm.texi (BRANCH_COST): Likewise.
1969
1970 2011-01-19 Dodji Seketeli <dodji@redhat.com>
1971
1972 PR c++/47291
1973 * dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
1974 (gen_scheduled_generic_parms_dies): New functions.
1975 (gen_struct_or_union_type_die): Schedule template parameters DIEs
1976 generation for the end of CU compilation.
1977 (dwarf2out_finish): Generate template parameters DIEs here.
1978
1979 2011-01-19 Alexandre Oliva <aoliva@redhat.com>
1980
1981 PR debug/46240
1982 * tree-into-ssa.c (maybe_register_def): Do not attempt to add
1983 debug bind stmt on merge edges.
1984
1985 2011-01-19 Alexandre Oliva <aoliva@redhat.com>
1986
1987 PR debug/47079
1988 PR debug/46724
1989 * function.c (instantiate_expr): Instantiate incoming rtl of
1990 implicit arguments, and recurse on VALUE_EXPRs.
1991 (instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
1992 * var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.
1993
1994 2011-01-19 Alexandre Oliva <aoliva@redhat.com>
1995
1996 * c-parser.c (c_parser_for_statement): Initialize
1997 collection_expression.
1998
1999 2011-01-19 Joseph Myers <joseph@codesourcery.com>
2000
2001 * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
2002
2003 2011-01-19 Joseph Myers <joseph@codesourcery.com>
2004
2005 * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
2006 (LINK_SHLIB_SPEC): Don't use %(link_path).
2007 (SUBTARGET_EXTRA_SPECS): Remove link_path.
2008
2009 2011-01-19 Joseph Myers <joseph@codesourcery.com>
2010
2011 * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
2012 (NO_SHARED_LIB_SUPPORT): Remove.
2013 (LINK_SHLIB_SPEC): Remove one conditional definition.
2014
2015 2011-01-19 Joseph Myers <joseph@codesourcery.com>
2016
2017 * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
2018 %{call_shared}.
2019 * config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
2020 * config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
2021 * config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
2022 %{call_shared} and conditionals on these options not being passed.
2023 * config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
2024 %{call_shared}.
2025
2026 2011-01-19 Jakub Jelinek <jakub@redhat.com>
2027
2028 * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
2029 simplify.
2030
2031 * ipa-split.c: Spelling fixes.
2032
2033 2011-01-19 Richard Henderson <rth@redhat.com>
2034
2035 * config/mn10300/mn10300.md (mulsi3): Use reg_or_am33_const_operand.
2036 (*mulsi3): Likewise.
2037
2038 * longlong.h [__mn10300__] (count_leading_zeros): New.
2039 [__mn10300__] (umul_ppmm, smul_ppmm): New.
2040 [__mn10300__] (add_ssaaaa, subddmmss): New.
2041 [__mn10300__] (udiv_qrnnd, sdiv_qrnnd): New.
2042 [__mn10300__] (UMUL_TIME, UDIV_TIME): New.
2043
2044 2011-01-19 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2045
2046 * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
2047
2048 2011-01-19 Richard Henderson <rth@redhat.com>
2049
2050 * config/mn10300/mn10300.md (addsi3_flags): New.
2051 (addc_internal, adddi3, adddi3_internal, *adddi3_degenerate): New.
2052 (subsi3_flags, subc_internal, subdi3): New.
2053 (subdi3_internal, *subdi3_degenerate): New.
2054 * config/mn10300/predicates.md (reg_or_am33_const_operand): New.
2055
2056 * config/mn10300/mn10300.c (mn10300_can_use_retf_insn): New.
2057 (mn10300_can_use_rets_insn): Rename from mn10300_can_use_return_insn.
2058 (mn10300_expand_epilogue): Use it. Compute REG_SAVE_BYTES once.
2059 * config/mn10300/mn10300-protos.h: Update.
2060 * config/mn10300/mn10300.md (return): Use mn10300_can_use_retf_insn.
2061 (return_ret): Likewise. Rename from return_internal_regs.
2062 (return_internal): Remove.
2063
2064 * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter): Remove.
2065 (mn10300_asm_output_addr_const_extra): Don't handle UNSPEC_INT_LABEL.
2066 (mn10300_legitimate_constant_p): Likewise.
2067 (mn10300_can_use_return_insn): Use mn10300_initial_offset.
2068 (mn10300_frame_size): New.
2069 (mn10300_expand_prologue): Use it.
2070 (mn10300_expand_epilogue): Likewise.
2071 (mn10300_initial_offset): Likewise.
2072 * config/mn10300/mn10300-protos.h: Update.
2073 * config/mn10300/mn10300.h (mn10300_unspec_int_label_counter): Remove.
2074 * config/mn10300/mn10300.md (UNSPEC_INT_LABEL): Remove.
2075 (prologue, epilogue, return_internal): Tidy output code.
2076 (mn10300_store_multiple_operation, return): Likewise.
2077 (int_label, pop_pic_reg, GOTaddr2picreg): Remove.
2078 (am33_loadPC, mn10300_loadPC, call_next_insn): Remove.
2079 (add_GOT_to_pic_reg, add_GOT_to_any_reg): Remove.
2080 (load_pic, am33_load_pic): New.
2081 (mn10300_load_pic0, mn10300_load_pic1): New.
2082
2083 * config/mn10300/mn10300-modes.def (CCZN, CCZNC): New modes.
2084 * config/mn10300/mn10300.c (CC_FLAG_Z): New.
2085 (CC_FLAG_N, CC_FLAG_C, CC_FLAG_V): New.
2086 (cc_flags_for_mode, cc_flags_for_code): New.
2087 (mn10300_print_operand) ['B']: Use nc/ns for GE/LT when the
2088 overflow flag is not valid. Validate that the flags we need
2089 for the comparison are valid.
2090 (mn10300_output_cmp): Remove.
2091 (mn10300_output_add): New.
2092 (mn10300_select_cc_mode): Use cc_flags_for_code.
2093 (mn10300_split_cbranch): New.
2094 (mn10300_match_ccmode): New.
2095 (mn10300_split_and_operand_count): New.
2096 * config/mn10300/mn10300.h (SELECT_CC_MODE): Pass all of the arguments
2097 to the function.
2098 * config/mn10300/mn10300.md (*am33_addsi3, *mn10300_addsi3): Merge...
2099 (addsi3): ... here. Use mn10300_output_add.
2100 (*addsi3_flags): New.
2101 (*am33_subsi3, *mn10300_subsi3): Merge...
2102 (subsi3): ... here. Use attribute isa.
2103 (*subsi3_flags): New.
2104 (negsi2): Rewrite from expander to insn_and_split. Use NOT+INC
2105 when possible.
2106 (*am33_andsi3, *mn10300_andsi3): Merge...
2107 (andsi3): ... here.
2108 (*andsi3_flags): New.
2109 (andsi3 splitters): New.
2110 (*am33_iorsi3, *mn10300_iorsi3): Merge...
2111 (iorsi3): ... here.
2112 (*iorsi3_flags): New.
2113 (*am33_xorsi3, *mn10300_xorsi3): Merge...
2114 (xorsi3): ... here.
2115 (*xorsi3_flags): New.
2116 (*am33_cmpsi2, *mn10300_cmplsi2): Merge...
2117 (one_cmplsi2): ... here.
2118 (*one_cmplsi2_flags): New.
2119 (*cbranchsi4_cmp): Rename from cbranchsi4_post_reload. Use "r"
2120 instead of "dax" in constraints. Use mn10300_split_cbranch.
2121 (*cmpsi): Rename from cmpsi. Do not use mn10300_output_cmp. Do not
2122 use matching constraints to eliminate a self-comparison.
2123 (*integer_conditional_branch): Rename from integer_conditional_branch.
2124 Use int_mode_flags to match CC_REG.
2125 (*cbranchsi4_btst, *btstsi): New.
2126 (*cbranchsf4_cmp): Rename from *cbranchsf4_post_reload. Use
2127 mn10300_split_cbranch.
2128 (*am33_cmpsf): Rename from am33_cmpsf.
2129 (*float_conditional_branch): Rename from float_conditional_branch.
2130 (*zero_extendqisi2_am33, *zero_extendqisi2_mn10300): Merge...
2131 (zero_extendqisi2): ... here.
2132 (*zero_extendhisi2_am33, *zero_extendhisi2_mn10300): Merge...
2133 (zero_extendhisi2): ... here.
2134 (*extendqisi2_am33, *extendqisi2_mn10300): Merge...
2135 (extendqisi2): ... here.
2136 (*extendhisi2_am33, *extendhisi2_mn10300): Merge...
2137 (extendhisi2): ... here.
2138 (*am33_ashlsi3, *mn10300_ashlsi3): Merge...
2139 (ashlsi3): ... here.
2140 (*am33_lshrsi3, *mn10300_lshrsi3): Merge...
2141 (lshrsi3): ... here.
2142 (*am33_ashrisi3, *mn10300_ashrsi3): Merge...
2143 (ashrsi3): ... here.
2144 (consecutive add peephole): Remove.
2145 * config/mn10300/predicates.md (label_ref_operand): New.
2146 (int_mode_flags): New.
2147 (CCZN_comparison_operator): New.
2148
2149 * config/mn10300/mn10300.md (UNSPEC_EXT): New.
2150 (throughput_42_latency_43): New reservation.
2151 (mulsidi3, umulsidi3): New expanders.
2152 (mulsidi3_internal): Rewrite from old mulsidi3 pattern. Expose
2153 the MDR register to allocation; separately allocate the low and
2154 high parts of the DImode result.
2155 (umulsidi3_internal): Similarly.
2156 (*am33_mulsi3, *mn10300_mulsi3): Merge into ...
2157 (*mulsi3): ... here. Clobber MDR as a scratch as necessary.
2158 (udivsi3, umodsi3): Remove.
2159 (udivmodsi4, divmodsi4): New expanders.
2160 (*udivmodsi4): Rename from udivmodsi4. Expose MDR properly.
2161 (*divmodsi4): Simiarly.
2162 (ext_internal): New.
2163
2164 * config/mn10300/constraints.md ("z"): New constraint.
2165 * config/mn10300/mn10300.h (MDR_REGNUM): Remove.
2166 (FIXED_REGISTERS): Don't fix MDR.
2167 (CALL_USED_REGSITERS): Reformat nicely.
2168 (REG_ALLOC_ORDER): Add MDR.
2169 (enum regclass): Add MDR_REGS.
2170 (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update to match.
2171 (IRA_COVER_CLASSES): Add MDR_REGS.
2172 (REGNO_REG_CLASS): Handle MDR_REG.
2173 * config/mn10300/mn10300.c (mn10300_secondary_reload): Handle MDR_REGS.
2174 (mn10300_register_move_cost): Likewise.
2175 * config/mn10300/mn10300.md (MDR_REG): New.
2176 (*movsi_internal): Handle moves to/from MDR_REGS.
2177
2178 * config/mn10300/mn10300.c (mn10300_print_operand_address): Handle
2179 POST_MODIFY.
2180 (mn10300_secondary_reload): Tidy combination reload classes.
2181 (mn10300_legitimate_address_p): Allow post-modify and reg+reg
2182 addresses for AM33. Allow symbolic offsets for reg+imm.
2183 (mn10300_regno_in_class_p): New.
2184 (mn10300_legitimize_reload_address): New.
2185 * config/mn10300/mn10300.h (enum reg_class): Remove
2186 DATA_OR_ADDRESS_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS,
2187 SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS. Add
2188 SP_OR_GENERAL_REGS.
2189 (REG_CLASS_NAMES): Update to match.
2190 (REG_CLASS_CONTENTS): Likewise.
2191 (INDEX_REG_CLASS): Use GENERAL_REGS for AM33.
2192 (BASE_REG_CLASS): Use SP_OR_GENERAL_REGS for AM33.
2193 (REGNO_IN_RANGE_P): Remove.
2194 (REGNO_DATA_P): Use mn10300_regno_in_class_p.
2195 (REGNO_ADDRESS_P, REGNO_EXTENDED_P): Likewise.
2196 (REGNO_STRICT_OK_FOR_BASE_P): Likewise.
2197 (REGNO_STRICT_OK_FOR_BIT_BASE_P): Likewise.
2198 (REGNO_STRICT_OK_FOR_INDEX_P): Likewise.
2199 (REGNO_SP_P, REGNO_AM33_P, REGNO_FP_P): Remove.
2200 (REGNO_GENERAL_P): New.
2201 (HAVE_POST_MODIFY_DISP): New.
2202 (USE_LOAD_POST_INCREMENT, USE_STORE_POST_INCREMENT): New.
2203 (LEGITIMIZE_RELOAD_ADDRESS): New.
2204 * config/mn10300/mn10300-protos.h: Update.
2205
2206 * config/mn10300/mn10300.c (mn10300_preferred_reload_class): Allow
2207 DATA_REGS for AM33 stack-pointer destination.
2208 (mn10300_preferred_output_reload_class): Likewise.
2209 (mn10300_secondary_reload): Rearrange mn10300_secondary_reload_class
2210 into a form appropriate for ...
2211 (TARGET_SECONDARY_RELOAD): New.
2212 * config/mn10300/mn10300.h (SECONDARY_RELOAD_CLASS): Remove.
2213 * config/mn10300/mn10300-protos.h: Update.
2214 * config/mn10300/mn10300.md (reload_plus_sp_const): Rename from
2215 reload_insi; use the "A" constraint for the scratch; handle AM33
2216 moves of sp to non-address registers.
2217
2218 * config/mn10300/mn10300.md (*am33_movqi, *mn10300_movqi): Merge into
2219 (*movqi_internal): ... here.
2220 (*am33_movhi, *mn10300_movhi): Merge into...
2221 (*movhi_internal): ... here.
2222 (*movsi_internal): Use "r" instead of "dax" in constraints. Use "A"
2223 as the source/destination of moves from/to SP.
2224 (movsf): Only allow for AM33-2.
2225 (*movsf_internal): Use "r" instead of "dax"; use "F" instead of
2226 any integer constant constraint. Only allow for AM33-2. Tidy
2227 all of the alternative outputs.
2228 (movdi, movdf, *am33_2_movdf, *mn10300_movdf): Remove.
2229 (udivmodsi4): Delete expander and promote *udivmodsi4. Disallow
2230 for MN103.
2231 (udivsi3, umodsi3): New patterns for MN103 only.
2232
2233 2011-01-19 Joern Rennecke <amylaar@spamcop.net>
2234
2235 * doc/tm.texi.in: Spell out that a lack of register class unions
2236 can lead to ICEs.
2237 * doc/tm.texi: Regenerate.
2238
2239 2011-01-19 Jakub Jelinek <jakub@redhat.com>
2240
2241 PR rtl-optimization/47337
2242 * dce.c (check_argument_store): New function.
2243 (find_call_stack_args): Ignore debug insns. Use check_argument_store.
2244
2245 PR tree-optimization/47290
2246 * tree-eh.c (infinite_empty_loop_p): New function.
2247 (cleanup_empty_eh): Use it.
2248
2249 2011-01-18 Steve Ellcey <sje@cup.hp.com>
2250
2251 PR target/46997
2252 * ia64.c (ia64_expand_unpack): Fix code for TARGET_BIG_ENDIAN.
2253 (a64_expand_widen_sum): Ditto.
2254 * vect.md (mulv2si3): Disable for TARGET_BIG_ENDIAN.
2255 (vec_extract_evenodd_help): Ditto.
2256 (vec_extract_evenv4hi): Ditto.
2257 (vec_extract_oddv4hi): Ditto.
2258 (vec_extract_evenv2si): Ditto.
2259 (vec_extract_oddv2si): Ditto.
2260 (vec_extract_evenv2sf): Ditto.
2261 (vec_extract_oddv2sf): Ditto.
2262 (vec_pack_trunc_v4hi: Ditto.
2263 (vec_pack_trunc_v2si): Ditto.
2264 (vec_interleave_lowv8qi): Fix for TARGET_BIG_ENDIAN.
2265 (vec_interleave_highv8qi): Ditto.
2266 (mix1_r): Ditto.
2267 (vec_extract_oddv8qi): Ditto.
2268 (vec_interleave_lowv4hi): Ditto.
2269 (vec_interleave_highv4hi): Ditto.
2270 (vec_interleave_lowv2si): Ditto.
2271 (vec_interleave_highv2si): Ditto.
2272
2273 2011-01-18 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
2274
2275 * doc/extend.texi: Mention __float128 support on hppa HP-UX.
2276 * config/pa/pa-hpux.h (HPUX_LONG_DOUBLE_LIBRARY): Define to 1.
2277 * config/pa/pa.c (pa_expand_builtin): New. Include "langhooks.h".
2278 (pa_c_mode_for_suffix): New.
2279 (TARGET_EXPAND_BUILTIN): Define.
2280 (TARGET_C_MODE_FOR_SUFFIX): Define.
2281 (pa_builtins): Define.
2282 (pa_init_builtins): Register __float128 type and init new support
2283 builtins.
2284 * config/pa/pa.h (HPUX_LONG_DOUBLE_LIBRARY): Define if not defined.
2285 * config/pa/quadlib.c (_U_Qfcopysign): New.
2286
2287 2011-01-18 Eric Botcazou <ebotcazou@adacore.com>
2288
2289 PR middle-end/46894
2290 * explow.c (allocate_dynamic_stack_space): Do not assume more than
2291 BITS_PER_UNIT alignment if STACK_DYNAMIC_OFFSET or STACK_POINTER_OFFSET
2292 are defined.
2293
2294 2011-01-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2295
2296 PR tree-optimization/47179
2297 * config/spu/spu.c (spu_ref_may_alias_errno): New function.
2298 (TARGET_REF_MAY_ALIAS_ERRNO): Define.
2299
2300 2011-01-18 Richard Guenther <rguenther@suse.de>
2301
2302 PR rtl-optimization/47216
2303 * emit-rtl.c: Include tree-flow.h.
2304 (set_mem_attributes_minus_bitpos): Use tree_could_trap_p instead
2305 of replicating it with different semantics.
2306 * Makefile.in (emit-rtl.o): Adjust.
2307
2308 2011-01-18 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2309
2310 * config/arm/cortex-a9.md (cortex-a9-neon.md): Actually include.
2311 (cortex_a9_dp): Handle neon types correctly.
2312
2313 2011-01-18 Jakub Jelinek <jakub@redhat.com>
2314
2315 PR rtl-optimization/47299
2316 * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Don't use
2317 subtarget. Use normal multiplication if both operands are constants.
2318 * expmed.c (expand_widening_mult): Don't try to optimize constant
2319 multiplication if op0 has VOIDmode. Convert op1 constant to mode
2320 before using it.
2321
2322 2011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2323
2324 * doc/lto.texi (LTO): Ensure two spaces after period. Fix
2325 spacing after 'e.g.', typos, comma, hyphenation.
2326
2327 2011-01-17 Richard Henderson <rth@redhat.com>
2328
2329 * config/rx/predicates.md (rx_constshift_operand): Use match_test.
2330 (rx_restricted_mem_operand): New.
2331 (rx_shift_operand): Use register_operand.
2332 (rx_source_operand, rx_compare_operand): Likewise.
2333 * config/rx/rx.md (addsi3_flags): New expander.
2334 (adddi3): Rewrite as expander.
2335 (adc_internal, *adc_flags, adddi3_internal): New patterns.
2336 (subsi3_flags): New expander.
2337 (subdi3): Rewrite as expander.
2338 (sbb_internal, *sbb_flags, subdi3_internal): New patterns.
2339
2340 * config/rx/rx.c (RX_BUILTIN_SAT): Remove.
2341 (rx_init_builtins): Remove sat builtin.
2342 (rx_expand_builtin): Likewise.
2343 * config/rx/rx.md (ssaddsi3): New.
2344 (*sat): Rename from sat. Represent the CC_REG input.
2345
2346 * config/rx/predicates.md (rshift_operator): New.
2347 * config/rx/rx.c (rx_expand_insv): Remove.
2348 * config/rx/rx-protos.h: Update.
2349 * config/rx/rx.md (*bitset): Rename from bitset. Swap the ashift
2350 operand to the canonical position.
2351 (*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
2352 (*bitclr, *bitclr_in_memory): Similarly.
2353 (*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
2354 (insv): Retain the zero_extract in the expansion.
2355
2356 * config/rx/rx.md (bswapsi2): Use = not + for output reload.
2357 (bswaphi2, bitinvert, revw): Likewise.
2358
2359 * config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
2360 (gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
2361 * config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
2362 (stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
2363 (bitset, bitset_in_memory): Likewise.
2364 (bitinvert, bitinvert_in_memory): Likewise.
2365 (bitclr, bitclr_in_memory): Likewise.
2366 (insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
2367 (rx_strend, rx_cmpstrn): Likewise.
2368 (rx_setmem): Likewise. Make the source BLKmode to match the dest.
2369 (bitop peep2 patterns): Remove.
2370
2371 * config/rx/rx.c (rx_match_ccmode): New.
2372 * config/rx/rx-protos.h: Update.
2373 * config/rx/rx.md (abssi2): Clobber, don't set flags.
2374 (addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
2375 (rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
2376 (subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
2377 (fix_truncsfsi2, floatsisf2): Likewise.
2378 (*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
2379 (*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
2380 (*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
2381 (*subsi3_flags, *xorsi3_flags): New.
2382
2383 * config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
2384
2385 * config/rx/rx.c (rx_print_operand): Remove workaround for
2386 unsplit comparison operations.
2387
2388 * config/rx/rx.md (movsicc): Split after reload.
2389 (*movsicc): Merge *movsieq and *movsine via match_operator.
2390 (*stcc): New pattern.
2391
2392 * config/rx/rx.c (rx_float_compare_mode): Remove.
2393 * config/rx/rx.h (rx_float_compare_mode): Remove.
2394 * config/rx/rx.md (cstoresi4): Split after reload.
2395 (*sccc): New pattern.
2396
2397 * config/rx/predicates.md (label_ref_operand): New.
2398 (rx_z_comparison_operator): New.
2399 (rx_zs_comparison_operator): New.
2400 (rx_fp_comparison_operator): New.
2401 * config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
2402 Validate that the flags are set properly for the comparison.
2403 (rx_gen_cond_branch_template): Remove.
2404 (rx_cc_modes_compatible): Remove.
2405 (mode_from_flags): New.
2406 (flags_from_code): Rename from flags_needed_for_conditional.
2407 (rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
2408 (rx_select_cc_mode): Likewise.
2409 (rx_split_fp_compare): New.
2410 (rx_split_cbranch): New.
2411 * config/rx/rx.md (most_cond, zs_cond): Remove iterators.
2412 (*cbranchsi4): Use match_operator and rx_split_cbranch.
2413 (*cbranchsf4): Similarly.
2414 (*cbranchsi4_tst): Rename from *tstbranchsi4_<code>. Use
2415 match_operator and rx_split_cbranch.
2416 (*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
2417 tstbranchsi4m_ne. Use match_operator and rx_split_cbranch.
2418 (*cmpsi): Rename from cmpsi.
2419 (*tstsi): Rename from tstsi.
2420 (*cmpsf): Rename from cmpsf; use CC_Fmode.
2421 (*conditional_branch): Rename from conditional_branch.
2422 (*reveresed_conditional_branch): Remove.
2423 (b<code>): Remove expander.
2424 * config/rx/rx-protos.h: Update.
2425
2426 * config/rx/rx.c (rx_compare_redundant): Remove.
2427 * config/rx/rx.md (cmpsi): Don't use it.
2428 * config/rx/rx-protos.h: Update.
2429
2430 * config/rx/rx-modes.def (CC_F): New mode.
2431 * config/rx/rx.c (rx_select_cc_mode): New.
2432 * config/rx/rx.h (SELECT_CC_MODE): Use it.
2433 * config/rx/rx-protos.h: Update.
2434
2435 2011-01-17 Richard Henderson <rth@redhat.com>
2436
2437 * except.c (dump_eh_tree): Fix stray ; after for statement.
2438
2439 2011-01-17 Richard Guenther <rguenther@suse.de>
2440
2441 PR tree-optimization/47313
2442 * tree-inline.c (tree_function_versioning): Move DECL_RESULT
2443 handling before copying the body. Properly deal with
2444 by-reference result in SSA form.
2445
2446 2011-01-17 Ian Lance Taylor <iant@google.com>
2447
2448 PR target/47219
2449 * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
2450 (struct_value_alias_set): Don't define.
2451 (sparc_option_override): Don't set sparc_sr_alias_set and
2452 struct_value_alias_set.
2453 (save_or_restore_regs): Use gen_frame_mem rather than calling
2454 set_mem_alias_set.
2455 (sparc_struct_value_rtx): Likewise.
2456
2457 2011-01-17 H.J. Lu <hongjiu.lu@intel.com>
2458
2459 PR target/47318
2460 * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
2461 __m128i.
2462 (_mm_maskstore_pd): Likewise.
2463 (_mm_maskload_ps): Likewise.
2464 (_mm_maskstore_ps): Likewise.
2465 (_mm256_maskload_pd): Change mask to __m256i.
2466 (_mm256_maskstore_pd): Likewise.
2467 (_mm256_maskload_ps): Likewise.
2468 (_mm256_maskstore_ps): Likewise.
2469
2470 * config/i386/i386-builtin-types.def: Updated.
2471 (ix86_expand_special_args_builtin): Likewise.
2472
2473 * config/i386/i386.c (bdesc_special_args): Update
2474 __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
2475 __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
2476 __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
2477 __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
2478
2479 * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
2480 Use <avxpermvecmode> on mask register.
2481 (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
2482
2483 2011-01-17 Olivier Hainque <hainque@adacore.com>
2484 Michael Haubenwallner <michael.haubenwallner@salomon.at>
2485 Eric Botcazou <ebotcazou@adacore.com>
2486
2487 PR target/46655
2488 * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
2489 if <= USHRT_MAX in 32-bit mode.
2490
2491 2011-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2492
2493 * doc/install.texi (Configuration, Specific): Wrap long
2494 lines in examples. Allow line wrapping in long options
2495 and URLs where beneficial for PDF output.
2496
2497 2011-01-16 Richard Sandiford <rdsandiford@googlemail.com>
2498
2499 * config/mips/mips.c (mips_classify_symbol): Don't return
2500 SYMBOL_PC_RELATIVE for nonlocal labels.
2501
2502 2011-01-15 Eric Botcazou <ebotcazou@adacore.com>
2503
2504 * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
2505
2506 2011-01-15 Jan Hubicka <jh@suse.cz>
2507
2508 PR tree-optimization/47276
2509 * ipa.c (function_and_variable_visibility): Do not try to mark alias
2510 declarations as needed.
2511
2512 2011-01-15 Martin Jambor <mjambor@suse.cz>
2513
2514 * common.opt (fdevirtualize): New flag.
2515 * doc/invoke.texi (Option Summary): Document it.
2516 * opts.c (default_options_table): Add devirtualize flag.
2517 * ipa-prop.c (detect_type_change): Return immediately if
2518 devirtualize flag is not set.
2519 (detect_type_change_ssa): Likewise.
2520 (compute_known_type_jump_func): Likewise.
2521 (ipa_analyze_virtual_call_uses): Likewise.
2522
2523 2011-01-14 Martin Jambor <mjambor@suse.cz>
2524
2525 PR tree-optimization/45934
2526 PR tree-optimization/46302
2527 * ipa-prop.c (type_change_info): New type.
2528 (stmt_may_be_vtbl_ptr_store): New function.
2529 (check_stmt_for_type_change): Likewise.
2530 (detect_type_change): Likewise.
2531 (detect_type_change_ssa): Likewise.
2532 (compute_complex_assign_jump_func): Check for dynamic type change.
2533 (compute_complex_ancestor_jump_func): Likewise.
2534 (compute_known_type_jump_func): Likewise.
2535 (compute_scalar_jump_functions): Likewise.
2536 (ipa_analyze_virtual_call_uses): Likewise.
2537 (ipa_analyze_node): Push and pop cfun, set current_function_decl.
2538
2539 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2540
2541 * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
2542 * config/i386/i386.opt (msse5): New Alias.
2543
2544 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2545
2546 * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
2547 * config/sparc/linux64.h (CC1_SPEC): Likewise.
2548 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
2549 * config/sparc/sparc.h (CC1_SPEC): Likewise.
2550
2551 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2552
2553 * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
2554 -mcpu options.
2555 * config/sparc/linux64.h (CC1_SPEC): Likewise.
2556 * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
2557 * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
2558 * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
2559 Likewise.
2560 * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
2561
2562 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2563
2564 * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or -fvec-eabi.
2565
2566 2011-01-14 Mike Stump <mikestump@comcast.net>
2567
2568 * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
2569 * config/fr30/fr30.md: Likweise
2570 (movsi_push): Likewise.
2571 (movsi_pop): Likewise.
2572 (enter_func): Likewise.
2573 * config/moxie/moxie.md (movsi_push): Likewise.
2574 (movsi_pop): Likewise.
2575
2576 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2577
2578 * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
2579 %{no_archive} %{exact_version}.
2580 * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
2581 * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
2582 %{no_archive} %{exact_version}.
2583 * config/mips/openbsd.h (LINK_SPEC): Likewise.
2584 * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
2585 * config/mips/vxworks.h: Likewise.
2586
2587 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2588
2589 * config/microblaze/microblaze.h (ASM_SPEC): Remove %{microblaze1}.
2590
2591 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2592
2593 * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
2594 ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
2595
2596 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2597
2598 * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
2599 -nodefaultlib.
2600
2601 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2602
2603 * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
2604 for mcpu not cpu.
2605 * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
2606 CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
2607 not cpu.
2608 (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
2609 Don't handle -shlib.
2610
2611 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2612
2613 * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
2614 (CC1_SPEC): Don't handle -profile.
2615
2616 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2617
2618 * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
2619 * config/mips/mips.h (CC1_SPEC): Likewise.
2620
2621 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2622
2623 * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
2624 * config/mips/mips.h (CC1_SPEC): Likewise.
2625
2626 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2627
2628 * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
2629 * config/m32r/linux.h (LINK_SPEC): Likewise.
2630 * config/mips/linux.h (LINK_SPEC): Likewise.
2631 * config/mips/linux64.h (LINK_SPEC): Likewise.
2632 * config/sparc/linux.h (LINK_SPEC): Likewise.
2633 * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
2634 LINK_SPEC): Likewise.
2635 * config/xtensa/linux.h (LINK_SPEC): Likewise.
2636
2637 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2638
2639 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
2640 %{version:-v}.
2641 * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
2642
2643 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2644
2645 * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
2646 * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
2647
2648 2011-01-14 Joseph Myers <joseph@codesourcery.com>
2649
2650 * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
2651
2652 2011-01-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2653
2654 * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
2655 supports -Bstatic/-Bdynamic.
2656 * configure: Regenerate.
2657
2658 2011-01-14 Jan Hubicka <jh@suse.cz>
2659 Jack Howarth <howarth@bromo.med.uc.edu>
2660
2661 PR target/46037
2662 * config/darwin.c (darwin_override_options): Honor flag_gtoggle
2663 when checking debug_info_level. Test write_symbols instead of
2664 debug_hooks->var_location when setting flag_var_tracking_uninit.
2665
2666 2011-01-14 Richard Guenther <rguenther@suse.de>
2667
2668 PR tree-optimization/47179
2669 * target.def (ref_may_alias_errno): New target hook.
2670 * targhooks.h (default_ref_may_alias_errno): Declare.
2671 * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
2672 (default_ref_may_alias_errno): New function.
2673 * target.h (struct ao_ref_s): Declare.
2674 * tree-ssa-alias.c: Include target.h.
2675 (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
2676 * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
2677 (targhooks.o): Likewise.
2678 * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
2679 * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
2680
2681 2011-01-14 Richard Guenther <rguenther@suse.de>
2682
2683 * tree-ssa-structalias.c (new_var_info): Use DECL_HARD_REGISTER.
2684
2685 2011-01-14 Richard Guenther <rguenther@suse.de>
2686
2687 PR tree-optimization/47280
2688 * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
2689 return CFG changes.
2690 (tree_ssa_forward_propagate_single_use_vars): Deal with
2691 CFG changes from associate_plusminus.
2692
2693 2011-01-14 Richard Guenther <rguenther@suse.de>
2694
2695 PR middle-end/47281
2696 Revert
2697 2011-01-11 Richard Guenther <rguenther@suse.de>
2698
2699 PR tree-optimization/46076
2700 * tree-ssa.c (useless_type_conversion_p): Conversions from
2701 unprototyped to empty argument list function types are useless.
2702
2703 2011-01-14 Richard Guenther <rguenther@suse.de>
2704
2705 PR tree-optimization/47286
2706 * tree-ssa-structalias.c (new_var_info): Register variables are global.
2707
2708 2011-01-14 Martin Jambor <mjambor@suse.cz>
2709
2710 PR middle-end/46823
2711 * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
2712
2713 2011-01-13 Anatoly Sokolov <aesok@post.ru>
2714
2715 * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
2716 LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
2717 * config/xtensa/xtensa.c (xtensa_libcall_value,
2718 xtensa_function_value_regno_p): New functions.
2719 (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
2720
2721 2011-01-13 Kai Tietz <kai.tietz@onevision.com>
2722
2723 PR c++/47213
2724 * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
2725 PE specific hook.
2726 * config/i386/i386-protos.h (i386_pe_assemble_visibility):
2727 New function prototype.
2728 * config/i386/winnt.c (i386_pe_assemble_visibility):
2729 Warn only if attribute was specified by user.
2730
2731 2011-01-13 Michael Meissner <meissner@linux.vnet.ibm.com>
2732
2733 PR target/47251
2734 * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
2735 floating point.
2736 (floatunsdidf2_fcfidu): Ditto.
2737
2738 2011-01-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
2739
2740 * config/s390/s390.c (print_operand_address): Replace 'error' with
2741 'output_operand_lossage'.
2742 (print_operand): Likewise.
2743
2744 2011-01-13 Jeff Law <law@redhat.com>
2745
2746 PR rtl-optimization/39077
2747 * doc/invoke.texi (max-gcse-insertion-ratio): Document.
2748 * params.h (MAX_GCSE_INSERTION_RATIO): Define.
2749 * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
2750 * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
2751 * gcse.c (prune_insertions_deletions): New function.
2752 (compute_pre_data): Use it.
2753
2754 2011-01-13 Dodji Seketeli <dodji@redhat.com>
2755
2756 PR debug/PR46973
2757 * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
2758 static function.
2759 (prune_unused_types_mark): Use it.
2760
2761 2011-01-13 Andrey Belevantsev <abel@ispras.ru>
2762
2763 PR rtl-optimization/45352
2764 * sel-sched.c: Update copyright years.
2765 (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
2766 in the advancing loop when we have issued issue_rate insns.
2767
2768 2011-01-12 Richard Henderson <rth@redhat.com>
2769
2770 * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
2771 (TARGET_MD_ASM_CLOBBERS): New.
2772
2773 * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
2774 (TARGET_DELEGITIMIZE_ADDRESS): New.
2775
2776 * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
2777 (clzsi2, *bsch): New patterns.
2778
2779 * config/mn10300/mn10300.md (INT): New mode iterator.
2780 (*mov<INT>_clr): New pattern, and peep2 to generate it.
2781
2782 * config/mn10300/mn10300.c (mn10300_option_override): Force enable
2783 flag_split_wide_types.
2784
2785 * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
2786 (mn10300_trampoline_init): Rewrite without a template, an immediate
2787 load and a direct branch.
2788 * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
2789
2790 2011-01-12 Anatoly Sokolov <aesok@post.ru>
2791
2792 * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
2793 * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
2794 * config/s390/s390.c (s390_output_addr_const_extra): Make static.
2795 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
2796
2797 2011-01-12 Kai Tietz <kai.tietz@onevision.com>
2798
2799 PR debug/47209
2800 * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
2801 of type.
2802
2803 2011-01-12 Jan Hubicka <jh@suse.cz>
2804
2805 PR driver/47244
2806 * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
2807 (PLUGIN_COND_CLOSE): New macro.
2808 (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
2809
2810 2011-01-12 Richard Guenther <rguenther@suse.de>
2811
2812 PR lto/47259
2813 * lto-streamer-out.c (output_gimple_stmt): Do not wrap
2814 register variables in a MEM_REF.
2815
2816 2011-01-12 Joseph Myers <joseph@codesourcery.com>
2817
2818 * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
2819 crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
2820 hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
2821 i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
2822 i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
2823 x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
2824 ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
2825 m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
2826 mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
2827 s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
2828 sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
2829 am33_2.0-*-linux*): Use gnu-user.h before linux.h.
2830 * config/gnu-user.h: New. Copied from linux.h.
2831 (LINUX_TARGET_STARTFILE_SPEC): Rename to
2832 GNU_USER_TARGET_STARTFILE_SPEC.
2833 (LINUX_TARGET_ENDFILE_SPEC): Rename to
2834 GNU_USER_TARGET_ENDFILE_SPEC.
2835 (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
2836 (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
2837 (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
2838 LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
2839 CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
2840 UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
2841 BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
2842 BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
2843 LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
2844 TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
2845 * config/arm/linux-eabi.h (CC1_SPEC): Use
2846 GNU_USER_TARGET_CC1_SPEC.
2847 (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
2848 (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
2849 (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
2850 * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
2851 LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
2852 LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
2853 CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
2854 LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
2855
2856 2011-01-12 Richard Guenther <rguenther@suse.de>
2857
2858 PR other/46946
2859 * doc/invoke.texi (ffast-math): Document it is turned on
2860 with -Ofast.
2861
2862 2011-01-12 Jan Hubicka <jh@suse.cz>
2863
2864 PR tree-optimization/47233
2865 * opts.c (common_handle_option): Disable ipa-reference with profile
2866 feedback.
2867
2868 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
2869
2870 * c-parser.c (c_parser_objc_at_property_declaration): Improved
2871 error message.
2872
2873 2011-01-12 Nicola Pero <nicola.pero@meta-innovation.com>
2874
2875 * c-parser.c (c_lex_one_token): Updated and reindented some
2876 comments. No changes in code.
2877
2878 2011-01-11 Ian Lance Taylor <iant@google.com>
2879
2880 * godump.c (go_output_var): Don't output the variable if there is
2881 already a type with the same name.
2882
2883 2011-01-11 Ian Lance Taylor <iant@google.com>
2884
2885 * godump.c (go_format_type): Don't generate float80.
2886
2887 2011-01-11 Richard Henderson <rth@redhat.com>
2888
2889 * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
2890 declaration. Rewrite for both speed and size.
2891 (mn10300_address_cost_1): Remove.
2892 (mn10300_register_move_cost): New.
2893 (mn10300_memory_move_cost): New.
2894 (mn10300_rtx_costs): Rewrite for both speed and size. Don't handle
2895 ZERO_EXTRACT. Do handle UNSPEC, arithmetic, logicals, compare,
2896 extensions, shifts, BSWAP, CLZ.
2897 (mn10300_wide_const_load_uses_clr): Remove.
2898 (TARGET_REGISTER_MOVE_COST): New.
2899 (TARGET_MEMORY_MOVE_COST): New.
2900 * config/mn10300/mn10300-protos.h: Update.
2901 * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
2902
2903 * config/mn10300/constraints.md ("R", "T"): Remove constraints.
2904 * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
2905 * config/mn10300/mn10300-protos.h: Update.
2906 * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
2907 (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
2908 (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
2909 (*test_int_bitfield, *test_byte_bitfield): Remove.
2910 (*bit_test, *subreg_bit_test): Remove.
2911 * config/mn10300/predicates.md (const_8bit_operand): Remove.
2912
2913 * config/mn10300/constraints.md ("c"): Rename from "A".
2914 ("A", "D"): New constraint letters.
2915 * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
2916 (fmssf4, fnmasf4, fnmssf4): Likewise.
2917
2918 * config/mn10300/mn10300.md (isa): New attribute.
2919 (enabled): New attribute.
2920
2921 * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
2922 (abssf2, negsf2): Define only for hardware fp.
2923 (sqrtsf2): Reformat.
2924 (addsf3, subsf3, mulsf3): Merge expander and insn.
2925
2926 * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
2927 (DEBUGGER_AUTO_OFFSET): Remove.
2928 (DEBUGGER_ARG_OFFSET): Remove.
2929
2930 * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
2931 Emit register stores with the same offsets as the hardware.
2932 (mn10300_store_multiple_operation): Don't check that the register
2933 save offsets are monotonic.
2934 * config/mn10300/mn10300-protos.h: Update.
2935
2936 * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
2937
2938 * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
2939 in terms of the value on the stack, not the MDR register.
2940
2941 2011-01-11 Jan Hubicka <jh@suse.cz>
2942
2943 PR lto/45721
2944 PR lto/45375
2945 * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
2946 (symbol_alias_set_destroy, symbol_alias_set_contains,
2947 propagate_aliases_backward): Declare.
2948 * lto-streamer-out.c (struct sets): New sturcture.
2949 (trivally_defined_alias): New function.
2950 (output_alias_pair_p): Rewrite.
2951 (output_unreferenced_globals): Fix output of alias pairs.
2952 (produce_symtab): Likewise.
2953 * ipa.c (function_and_variable_visibility): Set weak alias destination
2954 as needed in lto.
2955 * varasm.c (symbol_alias_set_t): Remove.
2956 (symbol_alias_set_destroy): Export.
2957 (propagate_aliases_forward, propagate_aliases_backward): New functions
2958 based on ...
2959 (compute_visible_aliases): ... this one; remove.
2960 (trivially_visible_alias): New
2961 (trivially_defined_alias): New.
2962 (remove_unreachable_alias_pairs): Rewrite.
2963 (finish_aliases_1): Reorganize code checking if alias is defined.
2964 * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
2965 in LTO mode.
2966
2967 2011-01-11 Richard Guenther <rguenther@suse.de>
2968
2969 PR tree-optimization/46076
2970 * tree-ssa.c (useless_type_conversion_p): Conversions from
2971 unprototyped to empty argument list function types are useless.
2972
2973 2011-01-11 Richard Guenther <rguenther@suse.de>
2974
2975 PR middle-end/45235
2976 * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
2977 volatile MEMs as MEM_READONLY_P.
2978
2979 2011-01-11 Richard Guenther <rguenther@suse.de>
2980
2981 PR tree-optimization/47239
2982 * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
2983
2984 2011-01-11 Jeff Law <law@redhat.com>
2985
2986 PR tree-optimization/47086
2987 * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
2988 IVs from statements that might throw.
2989
2990 2011-01-10 Jan Hubicka <jh@suse.cz>
2991
2992 PR lto/45375
2993 * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
2994
2995 2011-01-10 Jan Hubicka <jh@suse.cz>
2996
2997 PR lto/45375
2998 * profile.c (read_profile_edge_counts): Ignore profile inconistency
2999 when correcting profile.
3000
3001 2011-01-10 Jan Hubicka <jh@suse.cz>
3002
3003 PR lto/46083
3004 * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
3005 DECL_FINI_PRIORITY.
3006 * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
3007 Restore DECL_FINI_PRIORITY.
3008
3009 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3010
3011 * doc/gimple.texi: Fix quoting of multi-word return values in
3012 @deftypefn statements. Ensure presence of return value. Wrap
3013 overlong @deftypefn lines.
3014 (is_gimple_operand, is_gimple_min_invariant_address): Remove
3015 descriptions of removed functions.
3016 * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
3017 of multi-word return value in @deftypefn statement.
3018
3019 2011-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3020
3021 * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
3022 (Conditional Expressions, Logical Operators)
3023 (Statement and operand traversals): Do not indent smallexample
3024 code. Fix duplicate function argument in example.
3025
3026 2011-01-10 Jeff Law <law@redhat.com>
3027
3028 PR tree-optimization/47141
3029 * ipa-split.c (split_function): Handle case where we are
3030 returning a value and the return block has a virtual operand phi.
3031
3032 2011-01-10 Jan Hubicka <jh@suse.cz>
3033
3034 PR tree-optimization/47234
3035 * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
3036 (pass_feedback_split_functions): Declare.
3037 * passes.c (init_optimization_passes): Add ipa-split as subpass of
3038 tree-profile.
3039 * ipa-split.c (gate_split_functions): Update comments; disable
3040 split-functions for profile_arc_flag and branch_probabilities.
3041 (gate_feedback_split_functions): New function.
3042 (execute_feedback_split_functions): New function.
3043 (pass_feedback_split_functions): New global var.
3044
3045 2011-01-10 H.J. Lu <hongjiu.lu@intel.com>
3046
3047 PR lto/46760
3048 * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
3049 calling gimple_call_set_cannot_inline.
3050
3051 2011-01-10 Iain Sandoe <iains@gcc.gnu.org>
3052
3053 * config/darwin-sections.def: Remove unused section.
3054
3055 2011-01-10 Dave Korn <dave.korn.cygwin@gmail.com>
3056
3057 PR c++/47218
3058 * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
3059
3060 2011-01-09 Nicola Pero <nicola.pero@meta-innovation.com>
3061
3062 PR objc/47232
3063 * c-parser.c (c_parser_declaration_or_fndef): Improved
3064 error message.
3065
3066 2011-01-09 Kai Tietz <kai.tietz@onevision.com>
3067
3068 * config/i386/winnt.c (i386_pe_start_function): Make sure
3069 to switch back to function's section.
3070
3071 2011-01-09 Iain Sandoe <iains@gcc.gnu.org>
3072
3073 PR gcc/46902
3074 PR testsuite/46912
3075 * plugin.c: Move include of dlfcn.h from here...
3076 * system.h: ... to here.
3077
3078 2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
3079
3080 * doc/cpp.texi (C++ Named Operators): Fix markup for header
3081 file name.
3082 * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
3083 two extra empty pages in PDF output.
3084
3085 2011-01-08 Nicola Pero <nicola.pero@meta-innovation.com>
3086
3087 PR objc/47078
3088 * c-parser.c (c_parser_objc_type_name): If the type is unknown,
3089 for error recovery purposes behave as if it was not specified so
3090 that the default type is usd.
3091
3092 2011-01-07 Jan Hubicka <jh@suse.cz>
3093
3094 PR tree-optmization/46469
3095 * ipa.c (function_and_variable_visibility): Clear needed flags on
3096 nodes with external decls; handle weakrefs merging correctly.
3097
3098 2011-01-07 Joseph Myers <joseph@codesourcery.com>
3099
3100 * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
3101 not false.
3102
3103 2011-01-07 Jan Hubicka <jh@suse.cz>
3104
3105 * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
3106 and no longer claim that gold is required for linker plugin.
3107 * configure: Regenerate.
3108 * gcc.c (PLUGIN_COND): New macro.
3109 (LINK_COMMAND_SPEC): Use it.
3110 (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
3111 * config.in (HAVE_LTO_PLUGIN): New.
3112 * configure.ac (--with-lto-plugin): New parameter; autodetect
3113 HAVE_LTO_PLUGIN.
3114
3115 2011-01-07 Jan Hubicka <jh@suse.cz>
3116
3117 PR tree-optimization/46367
3118 * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
3119 when we can update original.
3120 (cgraph_mark_inline_edge): Sanity check.
3121 * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
3122
3123 2011-01-07 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3124
3125 * config/spu/spu.h (ASM_COMMENT_START): Define.
3126
3127 2011-01-07 H.J. Lu <hongjiu.lu@intel.com>
3128
3129 PR driver/42445
3130 * gcc.c (%>S): New.
3131 (SWITCH_KEEP_FOR_GCC): Likewise.
3132 (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
3133 (do_spec_1): Handle "%>".
3134
3135 * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
3136
3137 2011-01-07 Jakub Jelinek <jakub@redhat.com>
3138
3139 PR target/47201
3140 * config/i386/i386.c (ix86_delegitimize_address): If
3141 simplify_gen_subreg fails, return orig_x.
3142
3143 PR bootstrap/47187
3144 * value-prof.c (gimple_stringop_fixed_value): Handle
3145 lhs of the call properly.
3146
3147 2011-01-07 Jan Hubicka <jh@suse.cz>
3148
3149 PR lto/45375
3150 * lto-opt.c (lto_reissue_options): Set flag_shlib.
3151
3152 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
3153
3154 * target.def (function_switched_text_sections): New hook.
3155 * doc/tm.texi: Regenerated.
3156 * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
3157 * final.c (default_function_switched_text_sections): New.
3158 (final_scan_insn): Call function_switched_text_sections when a
3159 mid-function section change occurs.
3160 * output.h (default_function_switched_text_sections): Declare.
3161 * config/darwin-protos.h (darwin_function_switched_text_sections):
3162 Likewise.
3163 * config/darwin.c (darwin_function_switched_text_sections): New.
3164 * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
3165
3166 2011-01-07 Iain Sandoe <iains@gcc.gnu.org>
3167
3168 * dwarf2out.c (gen_subprogram_die): Add pubnames with code ranges for
3169 DWARF >= 3. Add pubnames for the primary section and a reduced DIE for
3170 the secondary code fragment when outputting for DWARF == 2.
3171
3172 2011-01-07 Anatoly Sokolov <aesok@post.ru>
3173
3174 * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
3175 * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
3176 Remove.
3177 * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
3178 (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
3179
3180 2011-01-06 Eric Botcazou <ebotcazou@adacore.com>
3181
3182 PR debug/46704
3183 * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
3184 when it is not empty.
3185
3186 2011-01-06 Changpeng Fang <changpeng.fang@amd.com>
3187
3188 Bobcat Enablement
3189 * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
3190 (case ${target}): Add btver1.
3191 * config/i386/driver-i386.c (host_detect_local_cpu): Let
3192 -march=native recognize btver1 processors.
3193 * config/i386/i386-c.c (ix86_target_macros_internal): Add
3194 btver1 def_and_undef
3195 * config/i386/i386.c (struct processor_costs btver1_cost): New
3196 btver1 cost table.
3197 (m_BTVER1): New definition.
3198 (m_AMD_MULTIPLE): Includes m_BTVER1.
3199 (initial_ix86_tune_features): Add btver1 tune.
3200 (processor_target_table): Add btver1 entry.
3201 (static const char *const cpu_names): Add btver1 entry.
3202 (software_prefetching_beneficial_p): Add btver1.
3203 (ix86_option_override_internal): Add btver1 instruction sets.
3204 (ix86_issue_rate): Add btver1.
3205 (ix86_adjust_cost): Add btver1.
3206 * config/i386/i386.h (TARGET_BTVER1): New definition.
3207 (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
3208 (enum processor_type): Add PROCESSOR_BTVER1.
3209 * config/i386/i386.md (define_attr "cpu"): Add btver1.
3210
3211 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3212
3213 PR target/43309
3214 * config/i386/i386.c (legitimize_tls_address)
3215 <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
3216 * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
3217 (tls_initial_exec_64_sun): New pattern.
3218
3219 2011-01-06 Gerald Pfeifer <gerald@pfeifer.com>
3220
3221 * doc/invoke.texi (Overall Options): Improve wording and markup
3222 of the description of -wrapper.
3223
3224 2011-01-06 Joseph Myers <joseph@codesourcery.com>
3225
3226 * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
3227 rdynamic, threads): New Driver options.
3228
3229 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3230
3231 PR target/38118
3232 * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
3233 if coming from .tdata.
3234 * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
3235
3236 2011-01-06 Jan Hubicka <jh@suse.cz>
3237
3238 PR lto/47188
3239 * collect2.c (main): Do not enable LTOmode when plugin is active.
3240
3241 2011-01-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3242
3243 PR other/45915
3244 * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
3245 --version output if supported.
3246 * configure: Regenerate.
3247
3248 2011-01-06 Joseph Myers <joseph@codesourcery.com>
3249
3250 * config/linux-android.opt (tno-android-cc, tno-android-ld): New
3251 Driver options.
3252
3253 2011-01-06 Jakub Jelinek <jakub@redhat.com>
3254
3255 PR c/47150
3256 * c-convert.c (convert): When converting a complex expression
3257 other than COMPLEX_EXPR to a different complex type, ensure
3258 c_save_expr is called instead of save_expr, unless in_late_binary_op.
3259 * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
3260 when converting COMPLEX_TYPE.
3261
3262 2011-01-06 Ira Rosen <irar@il.ibm.com>
3263
3264 PR tree-optimization/47139
3265 * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
3266 only the last reduction value is used outside the loop. Update
3267 documentation.
3268
3269 2011-01-05 Joseph Myers <joseph@codesourcery.com>
3270
3271 * config/rtems.opt: New.
3272 * config.gcc (*-*-rtems*): Use rtems.opt.
3273
3274 2011-01-05 Changpeng Fang <changpeng.fang@amd.com>
3275
3276 * config/i386/i386.c (ix86_option_override_internal): Bulldozer
3277 processors do not support 3DNow instructions.
3278
3279 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3280
3281 * config/spu/spu.c (spu_option_override): Set parameter
3282 PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
3283
3284 2011-01-05 Jan Hubicka <jh@suse.cz>
3285
3286 * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
3287 at the command line.
3288
3289 2011-01-05 Martin Jambor <mjambor@suse.cz>
3290
3291 PR lto/47162
3292 * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
3293 deltas on streamed outgoing edges.
3294 (output_node_opt_summary): Output info for outgoing edges only when
3295 the node is in new parameter set.
3296 (output_cgraph_opt_summary): New parameter set, passed to the two
3297 aforementioned functions. Update its forward declaration and its
3298 callee too.
3299
3300 2011-01-05 Tom Tromey <tromey@redhat.com>
3301
3302 * c-parser.c (c_parser_omp_atomic): Pass location of assignment
3303 operator to c_finish_omp_atomic.
3304 * c-typeck.c (lvalue_or_else): Add 'loc' argument.
3305 (build_unary_op): Update.
3306 (build_modify_expr): Update.
3307 (build_asm_expr): Update.
3308
3309 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3310
3311 * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
3312 newly inserted insns.
3313 (pad_bb): Likewise.
3314 (spu_emit_branch_hint): Likewise.
3315 (insert_hbrp_for_ilb_runout): Likewise.
3316 (spu_machine_dependent_reorg): Call df_finish_pass after
3317 schedule_insns returns.
3318
3319 2011-01-05 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3320
3321 * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
3322
3323 2011-01-05 Eric Botcazou <ebotcazou@adacore.com>
3324
3325 PR tree-optimization/47005
3326 * tree-sra.c (struct access): Add 'non_addressable' bit.
3327 (create_access): Set it for a DECL_NONADDRESSABLE_P field.
3328 (decide_one_param_reduction): Return 0 if the parameter is passed by
3329 reference and one of the accesses in the group is non_addressable.
3330
3331 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
3332
3333 PR tree-optimization/47056
3334 * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
3335 (mark_load): Likewise. Handle FUNCTION_DECL specially.
3336 (mark_store): Likewise. Pass STMT to ipa_record_reference.
3337
3338 2011-01-04 Eric Botcazou <ebotcazou@adacore.com>
3339
3340 * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
3341 initializer. Skip view conversions from aggregate types.
3342
3343 2011-01-04 Kai Tietz <kai.tietz@onevision.com>
3344
3345 PR bootstrap/47055
3346 * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
3347
3348 2011-01-04 Philipp Thomas <pth@suse.de>
3349
3350 * config/microblaze/microbalse.opt (mxl-float-convert): Fix
3351 obvious typo.
3352
3353 2011-01-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3354
3355 * function.c (thread_prologue_and_epilogue_insns): Do not crash
3356 on empty epilogue sequences.
3357
3358 2011-01-04 Joseph Myers <joseph@codesourcery.com>
3359
3360 * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
3361 non-static): New Driver options.
3362
3363 2011-01-04 Jie Zhang <jie@codesourcery.com>
3364
3365 PR driver/47137
3366 * gcc.c (default_compilers[]): Set combinable field to 0
3367 for all assembly languages.
3368
3369 2011-01-04 Mingjie Xing <mingjie.xing@gmail.com>
3370
3371 * config/mips/loongson3a.md: New file.
3372 * config/mips/mips.md: Include loongson3a.md.
3373 * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
3374 TUNE_LOONGSON_3A.
3375
3376 2011-01-03 Eric Botcazou <ebotcazou@adacore.com>
3377
3378 PR middle-end/47017
3379 * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
3380 instead of convert_memory_address_addr_space on the base expression.
3381
3382 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3383
3384 * config/spu/spu.c (spu_option_override): Update error text
3385 for bad -march= / -mtune= values.
3386
3387 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3388
3389 * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
3390 if branch-hint optimization will be performed.
3391
3392 2011-01-03 Jakub Jelinek <jakub@redhat.com>
3393
3394 PR tree-optimization/47148
3395 * ipa-split.c (split_function): Convert arguments to
3396 DECL_ARG_TYPE if possible.
3397
3398 PR tree-optimization/47155
3399 * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
3400 when computing uns.
3401
3402 PR rtl-optimization/47157
3403 * combine.c (try_combine): If undobuf.other_insn becomes
3404 (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
3405 and set *new_direct_jump_p too.
3406
3407 2011-01-03 Sebastian Pop <sebastian.pop@amd.com>
3408
3409 PR tree-optimization/47021
3410 * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
3411
3412 2011-01-03 Jakub Jelinek <jakub@redhat.com>
3413
3414 * gcc.c (process_command): Update copyright notice dates.
3415 * gcov.c (print_version): Likewise.
3416 * gcov-dump.c (print_version): Likewise.
3417 * mips-tfile.c (main): Likewise.
3418 * mips-tdump.c (main): Likewise.
3419
3420 2011-01-03 Martin Jambor <mjambor@suse.cz>
3421
3422 PR tree-optimization/46801
3423 * tree-sra.c (type_internals_preclude_sra_p): Check whether
3424 aggregate fields start at byte boundary instead of the bit-field flag.
3425
3426 2011-01-03 H.J. Lu <hongjiu.lu@intel.com>
3427
3428 PR driver/47137
3429 * gcc.c (main): Revert revision 168407.
3430
3431 2011-01-03 Martin Jambor <mjambor@suse.cz>
3432
3433 * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
3434
3435 2011-01-03 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
3436
3437 * tree-vect-generic.c (expand_vector_operations_1): When using vector/
3438 vector optab to expand vector/scalar shift, update gimple to vector.
3439
3440 2011-01-03 Martin Jambor <mjambor@suse.cz>
3441
3442 * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
3443 a thunk.
3444
3445 2011-01-03 Martin Jambor <mjambor@suse.cz>
3446
3447 PR tree-optimization/46984
3448 * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
3449 HOST_WIDE_INT.
3450 (cgraph_create_indirect_edge): Fixed line length.
3451 (cgraph_indirect_call_info): Declare.
3452 (cgraph_make_edge_direct) Update declaration.
3453 * cgraph.c (cgraph_allocate_init_indirect_info): New function.
3454 (cgraph_create_indirect_edge): Use it.
3455 (cgraph_make_edge_direct): Made delta HOST_WIDE_INT. Updated all
3456 callees.
3457 * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
3458 the new thunk_delta representation.
3459 * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
3460 HOST_WIDE_INT.
3461 (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
3462 (ipa_read_indirect_edge_info): Likewise.
3463 * lto-cgraph.c (output_edge_opt_summary): New function.
3464 (output_node_opt_summary): Call it on all outgoing edges.
3465 (input_edge_opt_summary): New function.
3466 (input_node_opt_summary): Call it on all outgoing edges.
3467
3468 2011-01-02 H.J. Lu <hongjiu.lu@intel.com>
3469
3470 PR driver/47137
3471 * gcc.c (main): Don't check have_o when settting combine_inputs.
3472
3473 2011-01-02 Eric Botcazou <ebotcazou@adacore.com>
3474
3475 * regrename.c: Add general comment describing the pass.
3476 (struct du_head): Remove 'length' field.
3477 (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
3478 (regrename_optimize): Do not sort chains. Rework comments, add others.
3479 Force renaming to the preferred class (if any) in the first pass and do
3480 not consider registers that belong to it in the second pass.
3481 (create_new_chain): Do not set 'length' field.
3482 (scan_rtx_reg): Likewise.
3483
3484 2011-01-02 Jakub Jelinek <jakub@redhat.com>
3485
3486 PR tree-optimization/47140
3487 * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
3488 TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
3489 to bit_value_binop.
3490
3491 PR rtl-optimization/47028
3492 * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
3493 parm_birth_insn instead of at the beginning of first bb.
3494
3495 2011-01-02 Mingjie Xing <mingjie.xing@gmail.com>
3496
3497 * doc/generic.texi: Remove duplicated "@subsubsection Statements".
3498 Remove the word "see" before "@pxref".
3499 * doc/rtl.texi: Remove the word "see" before "@pxref".
3500
3501 2011-01-01 Jan Hubicka <jh@suse.cz>
3502
3503 * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
3504 memory.
3505
3506 2011-01-01 Kai Tietz <kai.tietz@onevision.com>
3507
3508 PR target/38662
3509 * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
3510
3511 \f
3512 Copyright (C) 2011 Free Software Foundation, Inc.
3513
3514 Copying and distribution of this file, with or without modification,
3515 are permitted in any medium without royalty provided the copyright
3516 notice and this notice are preserved.