OSDN Git Service

a17a9a36cd11afe0522d107eabec199280516b7c
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2011-01-31  Sebastian Pop  <sebastian.pop@amd.com>
2
3         * common.opt (ftree-loop-linear): Use Alias to make it an alias of
4         -floop-interchange.
5         * invoke.texi (-ftree-loop-linear): Make it clear that this flag
6         is an alias of -floop-interchange and that it requires the
7         Graphite infrastructure.
8         * tree-ssa-loop.c (gate_graphite_transforms): Do not set
9         flag_loop_interchange based on the value of flag_tree_loop_linear.
10
11 2011-01-31  Jakub Jelinek  <jakub@redhat.com>
12             Richard Guenther  <rguenther@suse.de>
13
14         PR tree-optimization/47538
15         * tree-ssa-ccp.c (bit_value_binop_1): For uns computation use
16         type instead of r1type, except for comparisons.  For right
17         shifts and comparisons punt if there are mismatches in
18         sizetype vs. non-sizetype types.
19
20 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
21
22         * doc/sourcebuild.texi (Effective-Target Keywords): Document
23         avx_runtime.
24
25 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
26
27         * configure.ac (gcc_cv_ld_eh_frame_hdr): Update minimal Sun ld
28         version number.
29         * configure: Regenerate.
30
31 2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
32
33         * configure.ac (gcc_cv_ld_static_option): Define.
34         (gcc_cv_ld_dynamic_option): Define.
35         (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
36         instead.
37         (HAVE_LD_STATIC_DYNAMIC): Update message.
38         (LD_STATIC_OPTION): Define.
39         (LD_DYNAMIC_OPTION): Define.
40         * configure: Regenerate.
41         * config.in: Regenerate.
42         * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
43         HAVE_LD_STATIC_DYNAMIC]: Use them.
44
45 2011-01-31  Nick Clifton  <nickc@redhat.com>
46
47         * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
48         registers inside interrupt handlers if the handler is not a leaf
49         function.
50
51 2011-01-31  Nick Clifton  <nickc@redhat.com>
52
53         * config/mn10300/mn10300.c (mn10300_regno_in_class_p): Check for
54         reg_renumber returning an INVALID_REGNUM.
55
56 2011-01-31  Alexandre Oliva  <aoliva@redhat.com>
57
58         PR libgcj/44341
59         * doc/install.texi: Document host options discarded when cross
60         configuring target libraries.
61
62 2011-01-31  Alexandre Oliva  <aoliva@redhat.com>
63
64         Reverted:
65         2011-01-25  Alexandre Oliva  <aoliva@redhat.com>
66         PR debug/45136
67         PR debug/45130
68         * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
69         debug insns.
70         (no_real_insns_p, schedule_block, set_priorities): Drop special
71         treatment of boundary debug insns.
72         * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug
73         insns.
74         * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
75         * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
76         (BOUNDARY_DEBUG_INSN_P): Likewise.
77         (SCHEDULE_DEBUG_INSN_P): Likewise.
78         * sched-rgn.c (init_ready_list): Drop special treatment of
79         boundary debug insns.
80         * final.c (rest_of_clean-state): Clear notes' BB.
81
82 2011-01-31  Alan Modra  <amodra@gmail.com>
83
84         * config/rs6000/rs6000.c (print_operand): Rearrange addends in
85         toc relative expressions as we do in print_operand_address.
86
87 2011-01-30  Kazu Hirata  <kazu@codesourcery.com>
88
89         * doc/extend.texi: Follow spelling conventions.
90         * doc/invoke.texi: Fix a typo.
91
92 2011-01-30  Joseph Myers  <joseph@codesourcery.com>
93
94         * config/hpux11.opt: New.
95         * config.gcc (hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*,
96         ia64*-*-hpux*): Use hpux11.opt.
97
98 2011-01-30  Jonathan Yong <jon_y@users.sourceforge.net>
99
100         * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Add t-dfprules
101         to tmake_file.
102
103 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
104
105         * doc/install.texi (hppa-hp-hpux10): Remove references to HP
106         support sites.
107
108 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
109
110         * doc/install.texi (Binaries): Remove outdated reference for
111         Motorola 68HC11/68HC12 downloads.
112
113 2011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
114
115         * doc/extend.texi (Thread-Local): Adjust reference to Ulrich
116         Drepper's paper.
117
118 2011-01-29  Jonathan Wakely  <jwakely.gcc@gmail.com>
119
120         PR bootstrap/47147
121         * ginclude/stddef.h: Check for _X86_64_ANSI_H_ and _I386_ANSI_H_ as
122         used by NetBSD.
123
124 2011-01-28  Ahmad Sharif <asharif@google.com>
125
126         * value-prof.c (check_counter): Corrected error message.
127
128 2011-01-29  Jie Zhang  <jie@codesourcery.com>
129
130         * config/arm/arm.c (arm_legitimize_reload_address): New.
131         * config/arm/arm.h (ARM_LEGITIMIZE_RELOAD_ADDRESS): Use
132         arm_legitimize_reload_address.
133         * config/arm/arm-protos.h (arm_legitimize_reload_address):
134         Declare.
135
136 2011-01-28  Ian Lance Taylor  <iant@google.com>
137
138         * godump.c (go_define): Ignore macros whose definitions include
139         two adjacent operands.
140
141 2011-01-28  Jakub Jelinek  <jakub@redhat.com>
142
143         PR target/42894
144         * varasm.c (force_const_mem): Store copy of x in desc->constant
145         instead of x itself.
146         * expr.c (emit_move_insn): Add a copy of y_cst instead of y_cst
147         itself into REG_EQUAL note.
148
149 2011-01-28  Joseph Myers  <joseph@codesourcery.com>
150
151         * config/freebsd.opt (posix, rdynamic): New Driver options.
152
153 2011-01-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
154
155         * configure.ac (gcc_cv_ld_static_dynamic): IRIX 6 ld supports
156         -Bstatic/-Bdynamic.
157         * configure: Regenerate.
158
159 2011-01-27  Joseph Myers  <joseph@codesourcery.com>
160
161         * config/rs6000/sysv4.h (LIB_NETBSD_SPEC): Don't handle -profile.
162         * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -profile.
163
164 2011-01-27  Anatoly Sokolov  <aesok@post.ru>
165
166         * config/s390/s390.h (PREFERRED_RELOAD_CLASS): Remove.
167         * config/s390/s390-protos.h (s390_preferred_reload_class): Remove.
168         * config/s390/s390.c (TARGET_PREFERRED_RELOAD_CLASS): Define.
169         (s390_preferred_reload_class): Make static. Change return and
170         'rclass' argument type to reg_class_t.
171
172 2011-01-27  Jan Hubicka  <jh@suse.cz>
173
174         PR middle-end/46949
175         * cgraphunit.c (process_common_attributes): Fix use of remove_attribute.
176         (process_function_and_variable_attributes): Check defined weakrefs.
177
178 2011-01-27  Martin Jambor  <mjambor@suse.cz>
179
180         PR tree-optimization/47228
181         * tree-sra.c (sra_modify_assign): Use build_ref_for_model instead of
182         build_ref_for_offset.
183
184 2011-01-27  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
185
186         * config/spu/spu-elf.h (ASM_SPEC): Remove.
187
188 2011-01-26  Mikael Pettersson <mikpe@it.uu.se>
189
190         PR rtl-optimization/46856
191         * postreload.c (reload_combine_recognize_const_pattern): Do not
192         separate cc0 setter and user on cc0 targets.
193
194 2011-01-26  Nicola Pero  <nicola.pero@meta-innovation.com>
195
196         PR c/43082
197         * c-typeck.c (c_objc_common_truthvalue_conversion): If we are
198         passed a VOID_TYPE expression, immediately emit an error and
199         return error_mark_node.
200
201 2011-01-26  Jeff Law  <law@redhat.com>
202
203         PR rtl-optimization/47464
204         * df-problems.c (can_move_insn_across): Use may_trap_or_fault_p
205         rather than may_trap_p as needed.
206
207 2011-01-26  DJ Delorie  <dj@redhat.com>
208
209         PR rtl-optimization/46878
210         * combine.c (insn_a_feeds_b): Check for the implicit cc0
211         setter/user dependency as well.
212
213 2011-01-26  Eric Botcazou  <ebotcazou@adacore.com>
214
215         PR rtl-optimization/44469
216         * cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
217         after removing trivially dead basic blocks.
218
219 2011-01-26  Joseph Myers  <joseph@codesourcery.com>
220
221         * config/bfin/bfin.h (LINK_SPEC): Remove %{Qy:} %{!Qn:-Qy}.
222         * config/frv/frv.h (LINK_SPEC): Likewise.
223         * config/i386/netware.h (LINK_SPEC): Likewise.
224         * config/m68k/linux.h (ASM_SPEC): Likewise.
225         * config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
226         * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
227         * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
228         * config/sparc/linux.h (ASM_SPEC): Likewise.
229         * config/sparc/linux64.h (ASM_SPEC): Likewise.
230         * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
231
232 2011-01-26  Joseph Myers  <joseph@codesourcery.com>
233
234         * config/bfin/bfin.h (ASM_SPEC): Remove %{Ym,*}.
235         * config/frv/frv.h (ASM_SPEC): Likewise.
236         * config/m68k/linux.h (ASM_SPEC): Likewise.
237         * config/pa/pa-linux.h (ASM_SPEC): Likewise.
238         * config/rs6000/linux64.h (ASM_SPEC): Likewise.
239         * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
240         * config/sparc/linux.h (ASM_SPEC): Likewise.
241         * config/sparc/linux64.h (ASM_SPEC): Likewise.
242         * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
243
244 2011-01-26  Joseph Myers  <joseph@codesourcery.com>
245
246         * config/bfin/bfin.h (LINK_SPEC): Remove %{YP,*}.
247         * config/frv/frv.h (LINK_SPEC): Likewise.
248         * config/rs6000/sysv4.h (LINK_SPEC): Likewise.
249
250 2011-01-26  Joseph Myers  <joseph@codesourcery.com>
251
252         * config/bfin/bfin.h (ASM_SPEC): Remove %{Yd,*}.
253         * config/frv/frv.h (ASM_SPEC): Likewise.
254         * config/i386/sol2-10.h (ASM_SPEC): Likewise.
255         * config/m68k/linux.h (ASM_SPEC): Likewise.
256         * config/pa/pa-linux.h (ASM_SPEC): Likewise.
257         * config/rs6000/linux64.h (ASM_SPEC32): Likewise.
258         * config/rs6000/vxworks.h (ASM_SPEC): Likewise.
259         * config/sol2.h (ASM_SPEC): Remove comment about -Yd,.
260         * config/sparc/linux.h (ASM_SPEC): Likewise.
261         * config/sparc/linux64.h (ASM_SPEC): Likewise.
262         * config/sparc/sp-elf.h (ASM_SPEC): Likewise.
263         * config/sparc/sysv4.h (ASM_SPEC): Remove %{Yd,*}.
264
265 2011-01-26  Steve Ellcey  <sje@cup.hp.com>
266
267         PR target/46997
268         * config/ia64/vect.md (mulv2si3): Enable and fix for TARGET_BIG_ENDIAN.
269         (*mux2): Ditto.
270         (vec_extract_evenodd_help): Ditto.
271         (vec_extract_evenv4hi): Ditto.
272         (vec_extract_oddv4hi): Ditto.
273         (vec_interleave_lowv2si): Ditto.
274         (vec_interleave_highv2si): Ditto.
275         (vec_extract_evenv2si): Ditto.
276         (vec_extract_oddv2si: Ditto.
277         (vec_pack_trunc_v2si): Ditto.
278
279 2011-01-22  Jan Hubicka  <jh@suse.cz>
280
281         PR target/47237
282         * cgraph.h (cgraph_local_info): New field can_change_signature.
283         * ipa-cp.c (ipcp_update_callgraph): Only compute args_to_skip if callee
284         signature can change.
285         (ipcp_estimate_growth): Call sequence simplify only if calle signature
286         can change.
287         (ipcp_insert_stage): Only compute args_to_skip if signature can change.
288         (cgraph_function_versioning): We can not change signature of functions
289         that don't allow that.
290         * lto-cgraph.c (lto_output_node): Stream local.can_change_signature.
291         (lto_input_node): Likewise.
292         * ipa-inline.c (compute_inline_parameters): Compute local.can_change_signature.
293         * ipa-split.c (visit_bb): Never split away APPLY_ARGS.
294         * tree-sra.c (ipa_sra_preliminary_function_checks): Give up on functions
295         that can not change signature.
296         * i386.c (ix86_function_regparm, ix86_function_sseregparm,
297         init_cumulative_args): Do not use local calling conventions for functions
298         that can not change signature.
299
300 2011-01-22  Jan Hubicka  <jh@suse.cz>
301
302         * doc/invoke.texi (hot-bb-frequency-fraction): Commit forgotten hunk.
303
304 2011-01-26  Richard Guenther  <rguenther@suse.de>
305
306         PR tree-optimization/47190
307         * cgraphunit.c (process_common_attributes): New function.
308         (process_function_and_variable_attributes): Use it.
309
310 2011-01-26  Richard Guenther  <rguenther@suse.de>
311
312         PR lto/47423
313         * cgraphbuild.c (record_eh_tables): Record reference to personality
314         function.
315
316 2011-01-26  Alexandre Oliva  <aoliva@redhat.com>
317
318         PR debug/45454
319         * sel-sched.c (moveup_expr): Don't let debug insns prevent
320         non-debug insns from moving up.
321
322 2011-01-26  Dave Korn  <dave.korn.cygwin@gmail.com>
323
324         PR target/40125
325         * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable
326         t-dlldir{,-x} fragment for build and add it to tmake_file.
327         (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise.
328         * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc.
329         * config/i386/t-dlldir: New file.
330         (SHLIB_DLLDIR): Define.
331         * config/i386/t-dlldir-x: New file.
332         (SHLIB_DLLDIR): Define.
333         * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set.
334         (SHLIB_INSTALL): Use it.
335
336 2011-01-26  Chung-Lin Tang  <cltang@codesourcery.com>
337
338         PR target/47246
339         * config/arm/arm.c (thumb2_legitimate_index_p): Change the
340         lower bound of the allowed Thumb-2 coprocessor load/store
341         index range to -256. Add explaining comment.
342
343 2011-01-25  Ian Lance Taylor  <iant@google.com>
344
345         * godump.c (go_define): Improve lexing of macro expansion to only
346         accept expressions which match Go spec.
347
348 2011-01-26  Dave Korn  <dave.korn.cygwin@gmail.com>
349
350         PR c++/43601
351         * tree.c (handle_dll_attribute): Handle it.
352         * doc/extend.texi (@item dllexport): Mention it.
353         * doc/invoke.texi (@item -fno-keep-inline-dllexport): Document it.
354
355 2011-01-25  Ian Lance Taylor  <iant@google.com>
356
357         PR tree-optimization/26854
358         * c-decl.c (struct c_scope): Add field has_jump_unsafe_decl.
359         (decl_jump_unsafe): Move higher in file, with no other change.
360         (bind): Set has_jump_unsafe_decl if appropriate.
361         (update_label_decls): Test has_jump_unsafe_decl to avoid loop.
362         (check_earlier_gotos): Likewise.
363         (c_check_switch_jump_warnings): Likewise.
364
365 2011-01-25  Jonathan Wakely  <jwakely.gcc@gmail.com>
366
367         * doc/invoke.texi (Warning Options): Add missing hyphen.
368         (-fprofile-dir): Minor grammatical fixes.
369         (-fbranch-probabilities): Likewise.
370
371 2011-01-25  Alexandre Oliva  <aoliva@redhat.com>
372
373         PR debug/45136
374         PR debug/45130
375         * haifa-sched.c (get_ebb_head_tail): Move notes across boundary
376         debug insns.
377         (no_real_insns_p, schedule_block, set_priorities): Drop special
378         treatment of boundary debug insns.
379         * sched-deps.c (sd_init_insn, sd_finish_insn): Don't mark debug
380         insns.
381         * sched-ebb.c (schedule_ebbs): Don't skip debug insns.
382         * sched-int.h (DEBUG_INSN_SCHED_P): Remove.
383         (BOUNDARY_DEBUG_INSN_P): Likewise.
384         (SCHEDULE_DEBUG_INSN_P): Likewise.
385         * sched-rgn.c (init_ready_list): Drop special treatment of
386         boundary debug insns.
387         * final.c (rest_of_clean-state): Clear notes' BB.
388
389 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
390
391         * Makefile.in (LAMBDA_H): Removed.
392         (TREE_DATA_REF_H): Remove dependence on LAMBDA_H.
393         (OBJS-common): Remove dependence on lambda-code.o, lambda-mat.o,
394         lambda-trans.o, and tree-loop-linear.o.
395         (lto-symtab.o): Remove dependence on LAMBDA_H.
396         (tree-loop-linear.o): Remove rule.
397         (lambda-mat.o): Same.
398         (lambda-trans.o): Same.
399         (lambda-code.o): Same.
400         (tree-vect-loop.o): Add missing dependence on TREE_DATA_REF_H.
401         (tree-vect-slp.o): Same.
402         * hwint.h (gcd): Moved here.
403         (least_common_multiple): Same.
404         * lambda-code.c: Removed.
405         * lambda-mat.c: Removed.
406         * lambda-trans.c: Removed.
407         * lambda.h: Removed.
408         * tree-loop-linear.c: Removed.
409         * lto-symtab.c: Do not include lambda.h.
410         * omega.c (gcd): Removed.
411         * passes.c (init_optimization_passes): Remove pass_linear_transform.
412         * tree-data-ref.c (print_lambda_vector): Moved here.
413         (lambda_vector_copy): Same.
414         (lambda_matrix_copy): Same.
415         (lambda_matrix_id): Same.
416         (lambda_vector_first_nz): Same.
417         (lambda_matrix_row_add): Same.
418         (lambda_matrix_row_exchange): Same.
419         (lambda_vector_mult_const): Same.
420         (lambda_vector_negate): Same.
421         (lambda_matrix_row_negate): Same.
422         (lambda_vector_equal): Same.
423         (lambda_matrix_right_hermite): Same.
424         * tree-data-ref.h: Do not include lambda.h.
425         (lambda_vector): Moved here.
426         (lambda_matrix): Same.
427         (dependence_level): Same.
428         (lambda_transform_legal_p): Removed declaration.
429         (lambda_collect_parameters): Same.
430         (lambda_compute_access_matrices): Same.
431         (lambda_vector_gcd): Same.
432         (lambda_vector_new): Same.
433         (lambda_vector_clear): Same.
434         (lambda_vector_lexico_pos): Same.
435         (lambda_vector_zerop): Same.
436         (lambda_matrix_new): Same.
437         * tree-flow.h (least_common_multiple): Removed declaration.
438         * tree-parloops.c (lambda_trans_matrix): Moved here.
439         (LTM_MATRIX): Same.
440         (LTM_ROWSIZE): Same.
441         (LTM_COLSIZE): Same.
442         (LTM_DENOMINATOR): Same.
443         (lambda_trans_matrix_new): Same.
444         (lambda_matrix_vector_mult): Same.
445         (lambda_transform_legal_p): Same.
446         * tree-pass.h (pass_linear_transform): Removed declaration.
447         * tree-ssa-loop.c (tree_linear_transform): Removed.
448         (gate_tree_linear_transform): Removed.
449         (pass_linear_transform): Removed.
450         (gate_graphite_transforms): Make flag_tree_loop_linear an alias of
451         flag_loop_interchange.
452
453 2011-01-25  Jakub Jelinek  <jakub@redhat.com>
454
455         PR tree-optimization/47265
456         PR tree-optimization/47443
457         * tree-ssa-forwprop.c (forward_propagate_addr_expr): Return false
458         if name still has some uses.
459
460 2011-01-25  Martin Jambor  <mjambor@suse.cz>
461
462         PR tree-optimization/47382
463         * gimple-fold.c (gimple_fold_obj_type_ref_call): Removed.
464         (gimple_fold_call): Do not call gimple_fold_obj_type_ref_call.
465
466 2011-01-25  Joel Sherrill <joel.sherrill@oarcorp.com>
467
468         * config/m32r/m32r.c: Define TARGET_EXCEPT_UNWIND_INFO to
469         sjlj_except_unwind_info.
470
471 2011-01-25  Richard Guenther  <rguenther@suse.de>
472
473         PR tree-optimization/47426
474         * tree-ssa-structalias.c (ipa_pta_execute): Make externally
475         visible functions results escape.
476
477 2011-01-25  Jakub Jelinek  <jakub@redhat.com>
478
479         PR target/45701
480         * config/arm/arm.c (any_sibcall_uses_r3): New function.
481         (arm_get_frame_offsets): Use it.
482
483 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
484             Jakub Jelinek  <jakub@redhat.com>
485
486         PR tree-optimization/47271
487         * tree-if-conv.c (bb_postdominates_preds): New.
488         (if_convertible_bb_p): Call bb_postdominates_preds.
489         (if_convertible_loop_p_1): Compute CDI_POST_DOMINATORS.
490         (predicate_scalar_phi): Call bb_postdominates_preds.
491
492 2011-01-25  Nick Clifton  <nickc@redhat.com>
493
494         * config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
495         * config/rx/rx.c (rx_function_value): Likewise.
496         (rx_promote_function_mode): Likewise.
497         (gen_safe_add): Place an outsized immediate value inside an UNSPEC
498         in order to make it legitimate.
499         * config/rx/rx.md (adddi3_internal): If the second operand is a
500         MEM make sure that the first operand is the same as the result
501         register.
502         (addsi3_unspec): Delete.
503         (subdi3): Do not accept immediate operands.
504         (subdi3_internal): Likewise.
505
506 2011-01-25  Jeff Law  <law@redhat.com>
507
508         PR rtl-optimization/37273
509         * ira-costs.c (scan_one_insn): Detect constants living in memory and
510         handle them like argument loads from stack slots.  Do not double
511         count memory for memory constants and argument loads from stack slots.
512
513 2011-01-25  Jakub Jelinek  <jakub@redhat.com>
514
515         PR tree-optimization/47427
516         PR tree-optimization/47428
517         * tree-ssa-copyrename.c (copy_rename_partition_coalesce): Don't
518         coalesce if the new root var would be TREE_READONLY.
519
520 2011-01-25  Richard Guenther  <rguenther@suse.de>
521
522         PR middle-end/47414
523         * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Use the
524         correct type for TBAA.
525
526 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
527
528         * graphite-sese-to-poly.c (dr_indices_valid_in_loop): New.
529         (close_phi_written_to_memory): Call for_each_index with
530         dr_indices_valid_in_loop.
531
532 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
533
534         * graphite-sese-to-poly.c (new_pbb_from_pbb): Only copy PBB_DOMAIN
535         when it is initialized.
536
537 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
538
539         * graphite-scop-detection.c (stmt_has_simple_data_refs_p): Update
540         call to graphite_find_data_references_in_stmt.
541         * graphite-sese-to-poly.c (outermost_loop_in_sese_1): New.
542         (try_generate_gimple_bb): Call outermost_loop_in_sese_1.  Update
543         call to graphite_find_data_references_in_stmt.
544         (analyze_drs_in_stmts): Same.
545         * tree-data-ref.c (dr_analyze_indices): Pass in parameter the loop
546         in which the scalar analysis of indices is performed.
547         (create_data_ref): Same.  Update call to dr_analyze_indices.
548         (find_data_references_in_stmt): Update call to create_data_ref.
549         (graphite_find_data_references_in_stmt): Same.
550         * tree-data-ref.h (graphite_find_data_references_in_stmt): Update
551         declaration.
552         (create_data_ref): Same.
553         * tree-ssa-loop-prefetch.c (determine_loop_nest_reuse): Update
554         call to create_data_ref.
555
556 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
557
558         * graphite-sese-to-poly.c (build_poly_scop): Move
559         rewrite_commutative_reductions_out_of_ssa before
560         find_scop_parameters.
561
562 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
563
564         * graphite-sese-to-poly.c (close_phi_written_to_memory): Also allow
565         VAR_DECL, PARM_DECL, and RESULT_DECL.
566
567 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
568
569         * graphite-dependences.c (reduction_dr_1): Allow several reductions
570         in a reduction PBB.
571         * graphite-sese-to-poly.c (split_reduction_stmt): Do not split PBBs
572         that have already been marked as PBB_IS_REDUCTION.
573
574 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
575
576         * graphite-scop-detection.c (same_close_phi_node): New.
577         (remove_duplicate_close_phi): New.
578         (make_close_phi_nodes_unique): New.
579         (canonicalize_loop_closed_ssa): Call make_close_phi_nodes_unique.
580
581 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
582
583         * graphite-dependences.c (new_poly_ddr): Call same_pdr_p.
584         * graphite-poly.h (same_pdr_p): Do not expect that the PDR_TYPE
585         of both data references to be the same.
586
587 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
588
589         * graphite-dependences.c (build_lexicographical_constraint): Remove the
590         gdim parameter.
591         (build_lexicographical_constraint): Adjust call to ppl_powerset_is_empty.
592         (dependence_polyhedron): Same.
593         (graphite_legal_transform_dr): Same.
594         (graphite_carried_dependence_level_k): Same.
595         * graphite-ppl.c (ppl_powerset_is_empty): Remove the nb_params parameter.
596         * graphite-ppl.h (ppl_powerset_is_empty): Adjust declaration.
597
598 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
599
600         * graphite-sese-to-poly.c
601         (translate_scalar_reduction_to_array_for_stmt): Call unshare_expr.
602         (close_phi_written_to_memory): New.
603         (translate_scalar_reduction_to_array): Call close_phi_written_to_memory
604         and unshare_expr.
605
606 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
607
608         * doc/install.texi: Update the expected version number of PPL to 0.11.
609         * graphite-ppl.c (ppl_powerset_is_empty): Remove now dead code under
610         #if PPL_VERSION_MINOR < 11.
611
612 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
613
614         * graphite-dependences.c: Include graphite-cloog-util.h.
615         (new_poly_ddr): Inlined into dependence_polyhedron.
616         (free_poly_ddr): Moved close by new_poly_ddr.
617         (dependence_polyhedron_1): Renamed dependence_polyhedron.
618         Early return NULL when ppl_powerset_is_empty returns true.
619         (dependence_polyhedron): Renamed new_poly_ddr.  Call only once
620         poly_drs_may_alias_p.  Avoid one call to ppl_powerset_is_empty.
621         (graphite_legal_transform_dr): Call new_poly_ddr.
622         (graphite_carried_dependence_level_k): Same.
623         (dot_original_deps_stmt_1): Renamed dot_deps_stmt_2.  Use new_poly_ddr.
624         (dot_transformed_deps_stmt_1): Removed.
625         (dot_deps_stmt_1): Call dot_deps_stmt_2.
626         (dot_original_deps): Renamed dot_deps_2.  Call new_poly_ddr.
627         (dot_deps_1): Call dot_deps_2.
628         * Makefile.in (graphite-dependences.o): Add missing dependence on
629         graphite-cloog-util.h.
630
631 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
632
633         * graphite-dependences.c (new_poly_dr): Call ppl_powerset_is_empty.
634         (build_lexicographical_constraint): Same.
635         (dependence_polyhedron_1): Same.
636         (graphite_legal_transform_dr): Same.
637         (graphite_carried_dependence_level_k): Same.
638         * graphite-ppl.c (ppl_powerset_is_empty): New.
639         * graphite-ppl.h (ppl_powerset_is_empty): Declared.
640         * tree-data-ref.c (dump_data_reference): Print the basic block index.
641
642 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
643
644         * graphite-dependences.c (build_pairwise_scheduling): Correctly compute
645         the "a followed by b" relation and document it.
646
647 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
648
649         * graphite-dependences.c (build_lexicographical_constraint): Stop the
650         iteration when the bag of constraints is empty.
651
652 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
653
654         * graphite-poly.c (pbb_remove_duplicate_pdrs): Make it work.
655
656 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
657
658         * graphite-interchange.c (lst_interchange_profitable_p): Takes a loop
659         nest and two loop depths as parameters.
660         (lst_try_interchange_loops): Call lst_interchange_profitable_p after
661         lst_perfect_nestify.
662
663 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
664
665         * graphite-dependences.c (print_pddr): Call
666         ppl_io_fprint_Pointset_Powerset_C_Polyhedron.
667
668 2011-01-25  Sebastian Pop  <sebastian.pop@amd.com>
669
670         * graphite-ppl.c (debug_gmp_value): New.
671         * graphite-ppl.h (debug_gmp_value): Declared.
672
673 2011-01-25  Tobias Grosser  <grosser@fim.uni-passau.de>
674
675         * doc/install.texi: Document availability of cloog-0.16.
676
677 2011-01-25  Vladimir Kargov  <kargov@gmail.com>
678
679         * graphite-scop-detection.c (canonicalize_loop_closed_ssa): Free
680         invalid postdominance info.
681
682 2011-01-24  Jan Hubicka  <jh@suse.cz>
683
684         PR c/21659
685         * doc/extend.texi (weak pragma): Drop claim that it must
686         appear before definition.
687         * varasm.c (merge_weak, declare_weak): Only sanity check
688         that DECL is not output at a time it is declared weak.
689
690 2011-01-24  Kenneth Zadeck  <zadeck@naturalbridge.com>
691
692         * machmode.def: Fixed comments.
693
694 2011-01-24  Kai Tietz  <kai.tietz@onevision.com>
695
696         * emit-rtl.c (reg_attrs_htab_hash): Replace long by intptr_t.
697
698 2011-01-24  Paul Koning  <ni1d@arrl.net>
699
700         * builtins.c (c_readstr): Fix byte order if BYTES_BIG_ENDIAN !=
701         WORDS_BIG_ENDIAN.
702
703 2011-01-24  H.J. Lu  <hongjiu.lu@intel.com>
704
705         PR target/46519
706         * config/i386/i386.c: Include sbitmap.h and fibheap.h.
707         (block_info): Add scanned and prev.
708         (move_or_delete_vzeroupper_2): Return if the basic block
709         has been scanned and the upper 128bit state is unchanged
710         from the last scan.
711         (move_or_delete_vzeroupper_1): Return true if the exit
712         state is changed.
713         (move_or_delete_vzeroupper): Visit basic blocks using the
714         work-list based algorithm based on vt_find_locations in
715         var-tracking.c.
716
717         * config/i386/t-i386: Also depend on sbitmap.h and $(FIBHEAP_H).
718
719 2011-01-24  Nick Clifton  <nickc@redhat.com>
720
721         * config/v850/v850.opt (mv850es): New option - alias for -mv850e1.
722         * config/v850/v850.h (ASM_SPEC): If -mv850es is specified pass
723         -mv850e1 to the assembler.  If -mv850e1 or -mv850es is specified
724         then define __v850e1__.
725         * doc/invoke.texi: Document -mv850es.
726
727 2011-01-24  Richard Henderson  <rth@redhat.com>
728
729         * config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
730         compound unordered comparisons.
731         * config/rx/rx.c (rx_split_fp_compare): Remove.
732         * config/rx/rx-protos.h: Update.
733         * config/rx/rx.md (gcc_conds, rx_conds): Remove.
734         (cbranchsf4): Don't call rx_split_fp_compare.
735         (*cbranchsf4): Use rx_split_cbranch.
736         (*cmpsf): Don't accept "i" constraint.
737         (*conditional_branch): Only valid after reload.
738         (cstoresf4): Merge expander with insn.  Don't call rx_split_fp_compare.
739
740 2011-01-24  Michael Meissner  <meissner@linux.vnet.ibm.com>
741
742         PR target/47385
743         * config/rs6000/altivec.md (vector constant splitters): Add
744         support for creating vector single precision constants if -mvsx is
745         used and we would create the constant using Altivec primitives.
746
747 2011-01-23  Bernd Schmidt  <bernds@codesourcery.com>
748             Richard Sandiford  <rdsandiford@googlemail.com>
749
750         PR rtl-optimization/47166
751         * reload1.c (emit_reload_insns): Disable the spill_reg_store
752         mechanism for PRE_MODIFY and POST_MODIFY.
753         (inc_for_reload): For PRE_MODIFY, return the insn that sets the
754         reloadreg.
755
756 2011-01-23  Andreas Schwab  <schwab@linux-m68k.org>
757
758         * compare-elim.c (maybe_select_cc_mode): Add ATTRIBUTE_UNUSED markers.
759
760 2011-01-22  Jan Hubicka  <jh@suse.cz>
761
762         PR lto/47333
763         * lto-cgraph.c (reachable_from_this_partition_p): Fix pasto.
764
765 2011-01-22  Jan Hubicka  <jh@suse.cz>
766
767         PR tree-optimization/43884
768         PR lto/44334
769         * predict.c (maybe_hot_frequency_p): Use entry block frequency as base.
770         * doc/invoke.texi (hot-bb-frequency-fraction): Update docs.
771
772 2011-01-22  Anatoly Sokolov  <aesok@post.ru>
773
774         * config/s390/s390.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
775         * config/s390/s390.c (s390_register_move_cost,
776         s390_memory_move_cost): New.
777         (TARGET_REGISTER_MOVE_COST, TARGET_MEMORY_MOVE_COST): Define.
778
779 2011-01-22  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
780
781         PR middle-end/47401
782         * except.c (sjlj_assign_call_site_values): Move setting the
783         crtl->uses_eh_lsda flag to ...
784         (sjlj_mark_call_sites): ... here.
785         (sjlj_emit_function_enter): Support NULL dispatch label.
786         (sjlj_build_landing_pads): In a function with no landing pads
787         that still has must-not-throw regions, generate code to register
788         a personality function with empty LSDA.
789
790 2011-01-21  Richard Henderson  <rth@redhat.com>
791
792         * config/rx/rx.c (TARGET_FLAGS_REGNUM): New.
793
794         * config/mn10300/mn10300.c (TARGET_FLAGS_REGNUM): New.
795
796         * compare-elim.c: New file.
797         * Makefile.in (OBJS-common): Add it.
798         (compare-elim.o): New.
799         * common.opt (fcompare-elim): New.
800         * opts.c (default_options_table): Add OPT_fcompare_elim.
801         * tree-pass.h (pass_compare_elim_after_reload): New.
802         * passes.c (init_optimization_passes): Add it.
803         * recog.h: Protect against re-inclusion.
804         * target.def (TARGET_FLAGS_REGNUM): New POD hook.
805         * doc/invoke.texi (-fcompare-elim): Document it.
806         * doc/tm.texi.in (TARGET_FLAGS_REGNUM): Document it.
807         * doc/tm.texi: Rebuild.
808
809 2011-01-22  Nick Clifton  <nickc@redhat.com>
810
811         * config/rx/rx.md (cstoresf4): Pass comparison operator to
812         rx_split_fp_compare.
813
814 2011-01-22  Nick Clifton  <nickc@redhat.com>
815
816         * config/rx/rx.md (UNSPEC_CONST): New.
817         (deallocate_and_return): Wrap the amount popped off the stack in
818         an UNSPEC_CONST in order to stop it being rejected by
819         -mmax-constant-size.
820         (pop_and_return): Add a "(return)" rtx.
821         (call): Drop the immediate operand.
822         (call_internal): Likewise.
823         (call_value): Likewise.
824         (call_value_internal): Likewise.
825         (sibcall_internal): Likewise.
826         (sibcall_value_internal): Likewise.
827         (sibcall): Likewise.  Generate an explicit call using
828         sibcall_internal.
829         (sibcall_value): Likewise.
830         (mov<>): FAIL if a constant operand is not legitimate.
831         (addsi3_unpsec): New pattern.
832
833         * config/rx/rx.c (rx_print_operand_address): Handle UNPSEC
834         CONSTs.
835         (ok_for_max_constant): New function.
836         (gen_safe_add): New function.
837         (rx_expand_prologue): Use gen_safe_add.
838         (rx_expand_epilogue): Likewise.
839         (rx_is_legitimate_constant): Use ok_for_max_constant.  Handle
840         UNSPEC CONSTs.
841
842 2011-01-21  Jeff Law  <law@redhat.com>
843
844         PR tree-optimization/47053
845         * tree-ssa-dse.c (need_eh_cleanup): New bitmap.
846         (dse_optimize_stmt): Set the appropriate bit in NEED_EH_CLEANUP when
847         statements are deleted.
848         (tree_ssa_dse): Allocate & free NEED_EH_CLEANUP.  If NEED_EH_CLEANUP
849         is nonempty, then purge dead edges and cleanup the CFG.
850
851 2011-01-21  Alexandre Oliva  <aoliva@redhat.com>
852
853         PR debug/47402
854         Temporarily revert:
855         2011-01-21  Alexandre Oliva  <aoliva@redhat.com>
856         PR debug/47106
857         * tree-dfa.c (create_var_ann): Mark variable as used.
858
859 2011-01-21  Jakub Jelinek  <jakub@redhat.com>
860
861         PR middle-end/45566
862         * except.c (convert_to_eh_region_ranges): Emit queued no-region
863         notes from other section in hot/cold partitioning even if
864         last_action is -3.  Increment call_site_base.
865
866         PR rtl-optimization/47366
867         * fwprop.c (forward_propagate_into): Return bool.  If
868         any changes are made, -fnon-call-exceptions is used and
869         REG_EH_REGION note is present, call purge_dead_edges
870         and return true if it purged anything.
871         (fwprop_addr): Adjust callers, call cleanup_cfg (0) if
872         any EH edges were purged.
873
874 2011-01-21  Jeff Law  <law@redhat.com>
875
876         PR rtl-optimization/41619
877         * caller-save.c (setup_save_areas): Break out code to determine
878         which hard regs are live across calls by examining the reload chains
879         so that it is always used.
880         Eliminate code which checked REG_N_CALLS_CROSSED.
881
882 2011-01-21  Jakub Jelinek  <jakub@redhat.com>
883
884         PR tree-optimization/47355
885         * tree-eh.c (cleanup_empty_eh_merge_phis): Give up if
886         NOP has non-debug uses beyond PHIs in new_bb.
887
888 2011-01-21  Alexandre Oliva  <aoliva@redhat.com>
889
890         PR debug/47106
891         * cfgexpand.c (account_used_vars_for_block): Only account vars
892         that are annotated as used.
893         (estimated_stack_frame_size): Don't set TREE_USED.
894         * tree-dfa.c (create_var_ann): Mark variable as used.
895
896 2011-01-21  Richard Guenther  <rguenther@suse.de>
897
898         PR middle-end/47395
899         * tree.def (WIDEN_MULT_MINUS_EXPR): Fix printed name.
900
901 2011-01-21  Richard Guenther  <rguenther@suse.de>
902
903         PR tree-optimization/47365
904         * tree-ssa-sccvn.h (vn_lookup_kind): Declare.
905         (vn_reference_lookup_pieces): Adjust.
906         (vn_reference_lookup): Likewise.
907         * tree-ssa-sccvn.c (vn_walk_kind): New static global.
908         (vn_reference_lookup_3): Only look through kills if in
909         VN_WALKREWRITE mode.
910         (vn_reference_lookup_pieces): Adjust.
911         (vn_reference_lookup): Likewise.
912         (visit_reference_op_load): Likewise.
913         (visit_reference_op_store): Likewise.
914         * tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
915         (compute_avail): Likewise.
916         (eliminate): Likewise.
917
918 2011-01-21  Jakub Jelinek  <jakub@redhat.com>
919
920         * tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
921         DECL_IGNORED_P non-reg vars if they are used.
922
923         PR tree-optimization/47391
924         * varpool.c (const_value_known_p): Return false if
925         decl is volatile.
926
927 2011-01-21  Kai Tietz  <kai.tietz@onevision.com>
928
929         PR bootstrap/47215
930         * config/i386/i386.c (ix86_local_alignment): Handle
931         case for va_list_type_node is nil.
932         (ix86_canonical_va_list_type): Likewise.
933
934 2011-01-21  Alan Modra  <amodra@gmail.com>
935
936         * config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
937         builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
938
939 2011-01-20  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
940
941         * config/arm/arm.md (define_attr type): Rename f_load
942         and f_store to f_fpa_load and f_fpa_store. Update.
943         (write_conflict): Deal with rename fallout.
944         (*push_fp_multi): Likewise.
945         * config/arm/fpa.md (f_load): Use f_fpa_load.
946         (f_store): Use f_fpa_store.
947         (*movsf_fpa): Likewise.
948         (*movdf_fpa): Likewise.
949         (*movxf_fpa): Likewise.
950         (*thumb2_movsf_fpa): Likewise.
951         (*thumb2_movdf_fpa): Likewise.
952         (*thumb2_movxf_fpa): Likewise.
953         * config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
954         f_loadd and f_stored.
955         (*thumb2_movdi_vfp): Likewise.
956         (*thumb2_movsf_vfp): Fix attribute to f_loads.
957         (*thumb2_movsi_vfp): Likewise.
958         * config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
959         Use f_loads instead of f_load.
960         * config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.
961
962 2011-01-20  Anatoly Sokolov  <aesok@post.ru>
963
964         * config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
965         * config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
966         * config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
967         (xtensa_mode_dependent_address_p): New function.
968         (constantpool_address_p): Make static. Change return type to bool.
969         Change argument type to const_rtx. Use CONST_INT_P predicate.
970
971 2011-01-20  Alexandre Oliva  <aoliva@redhat.com>
972
973         PR debug/46583
974         * tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
975
976 2011-01-20  Jakub Jelinek  <jakub@redhat.com>
977
978         PR debug/47283
979         * cfgexpand.c (expand_debug_expr): Instead of generating
980         (mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
981         etc. handling.
982
983 2011-01-20  Richard Guenther  <rguenther@suse.de>
984
985         PR middle-end/47370
986         * tree-inline.c (remap_gimple_op_r): Recurse manually for
987         the pointer operand of MEM_REFs.
988
989 2011-01-20  Jakub Jelinek  <jakub@redhat.com>
990
991         PR tree-optimization/46130
992         * ipa-split.c (consider_split): If return_bb contains non-virtual
993         PHIs other than for retval or if split_function would not adjust it,
994         refuse to split.
995
996 2011-01-20  Richard Guenther  <rguenther@suse.de>
997
998         PR tree-optimization/47167
999         * tree-ssa-copyrename.c (copy_rename_partition_coalesce):
1000         Revert previous change, only avoid enumeral type changes.
1001
1002 2011-01-19  Dodji Seketeli  <dodji@redhat.com>
1003
1004         PR c++/47291
1005         * dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
1006         (gen_scheduled_generic_parms_dies): New functions.
1007         (gen_struct_or_union_type_die): Schedule template parameters DIEs
1008         generation for the end of CU compilation.
1009         (dwarf2out_finish): Generate template parameters DIEs here.
1010
1011 2011-01-19  Alexandre Oliva  <aoliva@redhat.com>
1012
1013         PR debug/46240
1014         * tree-into-ssa.c (maybe_register_def): Do not attempt to add
1015         debug bind stmt on merge edges.
1016
1017 2011-01-19  Alexandre Oliva  <aoliva@redhat.com>
1018
1019         PR debug/47079
1020         PR debug/46724
1021         * function.c (instantiate_expr): Instantiate incoming rtl of
1022         implicit arguments, and recurse on VALUE_EXPRs.
1023         (instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
1024         * var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.
1025
1026 2011-01-19  Alexandre Oliva  <aoliva@redhat.com>
1027
1028         * c-parser.c (c_parser_for_statement): Initialize
1029         collection_expression.
1030
1031 2011-01-19  Joseph Myers  <joseph@codesourcery.com>
1032
1033         * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
1034
1035 2011-01-19  Joseph Myers  <joseph@codesourcery.com>
1036
1037         * config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
1038         (LINK_SHLIB_SPEC): Don't use %(link_path).
1039         (SUBTARGET_EXTRA_SPECS): Remove link_path.
1040
1041 2011-01-19  Joseph Myers  <joseph@codesourcery.com>
1042
1043         * config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
1044         (NO_SHARED_LIB_SUPPORT): Remove.
1045         (LINK_SHLIB_SPEC): Remove one conditional definition.
1046
1047 2011-01-19  Joseph Myers  <joseph@codesourcery.com>
1048
1049         * config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
1050         %{call_shared}.
1051         * config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
1052         * config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
1053         * config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
1054         %{call_shared} and conditionals on these options not being passed.
1055         * config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
1056         %{call_shared}.
1057
1058 2011-01-19  Jakub Jelinek  <jakub@redhat.com>
1059
1060         * ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
1061         simplify.
1062
1063         * ipa-split.c: Spelling fixes.
1064
1065 2011-01-19  Richard Henderson  <rth@redhat.com>
1066
1067         * config/mn10300/mn10300.md (mulsi3): Use reg_or_am33_const_operand.
1068         (*mulsi3): Likewise.
1069
1070         * longlong.h [__mn10300__] (count_leading_zeros): New.
1071         [__mn10300__] (umul_ppmm, smul_ppmm): New.
1072         [__mn10300__] (add_ssaaaa, subddmmss): New.
1073         [__mn10300__] (udiv_qrnnd, sdiv_qrnnd): New.
1074         [__mn10300__] (UMUL_TIME, UDIV_TIME): New.
1075
1076 2011-01-19  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
1077
1078         * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
1079
1080 2011-01-19  Richard Henderson  <rth@redhat.com>
1081
1082         * config/mn10300/mn10300.md (addsi3_flags): New.
1083         (addc_internal, adddi3, adddi3_internal, *adddi3_degenerate): New.
1084         (subsi3_flags, subc_internal, subdi3): New.
1085         (subdi3_internal, *subdi3_degenerate): New.
1086         * config/mn10300/predicates.md (reg_or_am33_const_operand): New.
1087
1088         * config/mn10300/mn10300.c (mn10300_can_use_retf_insn): New.
1089         (mn10300_can_use_rets_insn): Rename from mn10300_can_use_return_insn.
1090         (mn10300_expand_epilogue): Use it.  Compute REG_SAVE_BYTES once.
1091         * config/mn10300/mn10300-protos.h: Update.
1092         * config/mn10300/mn10300.md (return): Use mn10300_can_use_retf_insn.
1093         (return_ret): Likewise.  Rename from return_internal_regs.
1094         (return_internal): Remove.
1095
1096         * config/mn10300/mn10300.c (mn10300_unspec_int_label_counter): Remove.
1097         (mn10300_asm_output_addr_const_extra): Don't handle UNSPEC_INT_LABEL.
1098         (mn10300_legitimate_constant_p): Likewise.
1099         (mn10300_can_use_return_insn): Use mn10300_initial_offset.
1100         (mn10300_frame_size): New.
1101         (mn10300_expand_prologue): Use it.
1102         (mn10300_expand_epilogue): Likewise.
1103         (mn10300_initial_offset): Likewise.
1104         * config/mn10300/mn10300-protos.h: Update.
1105         * config/mn10300/mn10300.h (mn10300_unspec_int_label_counter): Remove.
1106         * config/mn10300/mn10300.md (UNSPEC_INT_LABEL): Remove.
1107         (prologue, epilogue, return_internal): Tidy output code.
1108         (mn10300_store_multiple_operation, return): Likewise.
1109         (int_label, pop_pic_reg, GOTaddr2picreg): Remove.
1110         (am33_loadPC, mn10300_loadPC, call_next_insn): Remove.
1111         (add_GOT_to_pic_reg, add_GOT_to_any_reg): Remove.
1112         (load_pic, am33_load_pic): New.
1113         (mn10300_load_pic0, mn10300_load_pic1): New.
1114
1115         * config/mn10300/mn10300-modes.def (CCZN, CCZNC): New modes.
1116         * config/mn10300/mn10300.c (CC_FLAG_Z): New.
1117         (CC_FLAG_N, CC_FLAG_C, CC_FLAG_V): New.
1118         (cc_flags_for_mode, cc_flags_for_code): New.
1119         (mn10300_print_operand) ['B']: Use nc/ns for GE/LT when the
1120         overflow flag is not valid.  Validate that the flags we need
1121         for the comparison are valid.
1122         (mn10300_output_cmp): Remove.
1123         (mn10300_output_add): New.
1124         (mn10300_select_cc_mode): Use cc_flags_for_code.
1125         (mn10300_split_cbranch): New.
1126         (mn10300_match_ccmode): New.
1127         (mn10300_split_and_operand_count): New.
1128         * config/mn10300/mn10300.h (SELECT_CC_MODE): Pass all of the arguments
1129         to the function.
1130         * config/mn10300/mn10300.md (*am33_addsi3, *mn10300_addsi3): Merge...
1131         (addsi3): ... here.  Use mn10300_output_add.
1132         (*addsi3_flags): New.
1133         (*am33_subsi3, *mn10300_subsi3): Merge...
1134         (subsi3): ... here.  Use attribute isa.
1135         (*subsi3_flags): New.
1136         (negsi2): Rewrite from expander to insn_and_split.  Use NOT+INC
1137         when possible.
1138         (*am33_andsi3, *mn10300_andsi3): Merge...
1139         (andsi3): ... here.
1140         (*andsi3_flags): New.
1141         (andsi3 splitters): New.
1142         (*am33_iorsi3, *mn10300_iorsi3): Merge...
1143         (iorsi3): ... here.
1144         (*iorsi3_flags): New.
1145         (*am33_xorsi3, *mn10300_xorsi3): Merge...
1146         (xorsi3): ... here.
1147         (*xorsi3_flags): New.
1148         (*am33_cmpsi2, *mn10300_cmplsi2): Merge...
1149         (one_cmplsi2): ... here.
1150         (*one_cmplsi2_flags): New.
1151         (*cbranchsi4_cmp): Rename from cbranchsi4_post_reload.  Use "r"
1152         instead of "dax" in constraints.  Use mn10300_split_cbranch.
1153         (*cmpsi): Rename from cmpsi.  Do not use mn10300_output_cmp.  Do not
1154         use matching constraints to eliminate a self-comparison.
1155         (*integer_conditional_branch): Rename from integer_conditional_branch.
1156         Use int_mode_flags to match CC_REG.
1157         (*cbranchsi4_btst, *btstsi): New.
1158         (*cbranchsf4_cmp): Rename from *cbranchsf4_post_reload.  Use
1159         mn10300_split_cbranch.
1160         (*am33_cmpsf): Rename from am33_cmpsf.
1161         (*float_conditional_branch): Rename from float_conditional_branch.
1162         (*zero_extendqisi2_am33, *zero_extendqisi2_mn10300): Merge...
1163         (zero_extendqisi2): ... here.
1164         (*zero_extendhisi2_am33, *zero_extendhisi2_mn10300): Merge...
1165         (zero_extendhisi2): ... here.
1166         (*extendqisi2_am33, *extendqisi2_mn10300): Merge...
1167         (extendqisi2): ... here.
1168         (*extendhisi2_am33, *extendhisi2_mn10300): Merge...
1169         (extendhisi2): ... here.
1170         (*am33_ashlsi3, *mn10300_ashlsi3): Merge...
1171         (ashlsi3): ... here.
1172         (*am33_lshrsi3, *mn10300_lshrsi3): Merge...
1173         (lshrsi3): ... here.
1174         (*am33_ashrisi3, *mn10300_ashrsi3): Merge...
1175         (ashrsi3): ... here.
1176         (consecutive add peephole): Remove.
1177         * config/mn10300/predicates.md (label_ref_operand): New.
1178         (int_mode_flags): New.
1179         (CCZN_comparison_operator): New.
1180
1181         * config/mn10300/mn10300.md (UNSPEC_EXT): New.
1182         (throughput_42_latency_43): New reservation.
1183         (mulsidi3, umulsidi3): New expanders.
1184         (mulsidi3_internal): Rewrite from old mulsidi3 pattern.  Expose
1185         the MDR register to allocation; separately allocate the low and
1186         high parts of the DImode result.
1187         (umulsidi3_internal): Similarly.
1188         (*am33_mulsi3, *mn10300_mulsi3): Merge into ...
1189         (*mulsi3): ... here.  Clobber MDR as a scratch as necessary.
1190         (udivsi3, umodsi3): Remove.
1191         (udivmodsi4, divmodsi4): New expanders.
1192         (*udivmodsi4): Rename from udivmodsi4.  Expose MDR properly.
1193         (*divmodsi4): Simiarly.
1194         (ext_internal): New.
1195
1196         * config/mn10300/constraints.md ("z"): New constraint.
1197         * config/mn10300/mn10300.h (MDR_REGNUM): Remove.
1198         (FIXED_REGISTERS): Don't fix MDR.
1199         (CALL_USED_REGSITERS): Reformat nicely.
1200         (REG_ALLOC_ORDER): Add MDR.
1201         (enum regclass): Add MDR_REGS.
1202         (REG_CLASS_NAMES, REG_CLASS_CONTENTS): Update to match.
1203         (IRA_COVER_CLASSES): Add MDR_REGS.
1204         (REGNO_REG_CLASS): Handle MDR_REG.
1205         * config/mn10300/mn10300.c (mn10300_secondary_reload): Handle MDR_REGS.
1206         (mn10300_register_move_cost): Likewise.
1207         * config/mn10300/mn10300.md (MDR_REG): New.
1208         (*movsi_internal): Handle moves to/from MDR_REGS.
1209
1210         * config/mn10300/mn10300.c (mn10300_print_operand_address): Handle
1211         POST_MODIFY.
1212         (mn10300_secondary_reload): Tidy combination reload classes.
1213         (mn10300_legitimate_address_p): Allow post-modify and reg+reg
1214         addresses for AM33.  Allow symbolic offsets for reg+imm.
1215         (mn10300_regno_in_class_p): New.
1216         (mn10300_legitimize_reload_address): New.
1217         * config/mn10300/mn10300.h (enum reg_class): Remove
1218         DATA_OR_ADDRESS_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS,
1219         SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS.  Add
1220         SP_OR_GENERAL_REGS.
1221         (REG_CLASS_NAMES): Update to match.
1222         (REG_CLASS_CONTENTS): Likewise.
1223         (INDEX_REG_CLASS): Use GENERAL_REGS for AM33.
1224         (BASE_REG_CLASS): Use SP_OR_GENERAL_REGS for AM33.
1225         (REGNO_IN_RANGE_P): Remove.
1226         (REGNO_DATA_P): Use mn10300_regno_in_class_p.
1227         (REGNO_ADDRESS_P, REGNO_EXTENDED_P): Likewise.
1228         (REGNO_STRICT_OK_FOR_BASE_P): Likewise.
1229         (REGNO_STRICT_OK_FOR_BIT_BASE_P): Likewise.
1230         (REGNO_STRICT_OK_FOR_INDEX_P): Likewise.
1231         (REGNO_SP_P, REGNO_AM33_P, REGNO_FP_P): Remove.
1232         (REGNO_GENERAL_P): New.
1233         (HAVE_POST_MODIFY_DISP): New.
1234         (USE_LOAD_POST_INCREMENT, USE_STORE_POST_INCREMENT): New.
1235         (LEGITIMIZE_RELOAD_ADDRESS): New.
1236         * config/mn10300/mn10300-protos.h: Update.
1237
1238         * config/mn10300/mn10300.c (mn10300_preferred_reload_class): Allow
1239         DATA_REGS for AM33 stack-pointer destination.
1240         (mn10300_preferred_output_reload_class): Likewise.
1241         (mn10300_secondary_reload): Rearrange mn10300_secondary_reload_class
1242         into a form appropriate for ...
1243         (TARGET_SECONDARY_RELOAD): New.
1244         * config/mn10300/mn10300.h (SECONDARY_RELOAD_CLASS): Remove.
1245         * config/mn10300/mn10300-protos.h: Update.
1246         * config/mn10300/mn10300.md (reload_plus_sp_const): Rename from
1247         reload_insi; use the "A" constraint for the scratch; handle AM33
1248         moves of sp to non-address registers.
1249
1250         * config/mn10300/mn10300.md (*am33_movqi, *mn10300_movqi): Merge into
1251         (*movqi_internal): ... here.
1252         (*am33_movhi, *mn10300_movhi): Merge into...
1253         (*movhi_internal): ... here.
1254         (*movsi_internal): Use "r" instead of "dax" in constraints.  Use "A"
1255         as the source/destination of moves from/to SP.
1256         (movsf): Only allow for AM33-2.
1257         (*movsf_internal): Use "r" instead of "dax"; use "F" instead of
1258         any integer constant constraint.  Only allow for AM33-2.  Tidy
1259         all of the alternative outputs.
1260         (movdi, movdf, *am33_2_movdf, *mn10300_movdf): Remove.
1261         (udivmodsi4): Delete expander and promote *udivmodsi4.  Disallow
1262         for MN103.
1263         (udivsi3, umodsi3): New patterns for MN103 only.
1264
1265 2011-01-19  Joern Rennecke  <amylaar@spamcop.net>
1266
1267         * doc/tm.texi.in: Spell out that a lack of register class unions
1268         can lead to ICEs.
1269         * doc/tm.texi: Regenerate.
1270
1271 2011-01-19  Jakub Jelinek  <jakub@redhat.com>
1272
1273         PR rtl-optimization/47337
1274         * dce.c (check_argument_store): New function.
1275         (find_call_stack_args): Ignore debug insns.  Use check_argument_store.
1276
1277         PR tree-optimization/47290
1278         * tree-eh.c (infinite_empty_loop_p): New function.
1279         (cleanup_empty_eh): Use it.
1280
1281 2011-01-18  Steve Ellcey  <sje@cup.hp.com>
1282
1283         PR target/46997
1284         * ia64.c (ia64_expand_unpack): Fix code for TARGET_BIG_ENDIAN.
1285         (a64_expand_widen_sum): Ditto.
1286         * vect.md (mulv2si3): Disable for TARGET_BIG_ENDIAN.
1287         (vec_extract_evenodd_help): Ditto.
1288         (vec_extract_evenv4hi): Ditto.
1289         (vec_extract_oddv4hi): Ditto.
1290         (vec_extract_evenv2si): Ditto.
1291         (vec_extract_oddv2si): Ditto.
1292         (vec_extract_evenv2sf): Ditto.
1293         (vec_extract_oddv2sf): Ditto.
1294         (vec_pack_trunc_v4hi: Ditto.
1295         (vec_pack_trunc_v2si): Ditto.
1296         (vec_interleave_lowv8qi): Fix for TARGET_BIG_ENDIAN.
1297         (vec_interleave_highv8qi): Ditto.
1298         (mix1_r): Ditto.
1299         (vec_extract_oddv8qi): Ditto.
1300         (vec_interleave_lowv4hi): Ditto.
1301         (vec_interleave_highv4hi): Ditto.
1302         (vec_interleave_lowv2si): Ditto.
1303         (vec_interleave_highv2si): Ditto.
1304
1305 2011-01-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1306
1307         * doc/extend.texi: Mention __float128 support on hppa HP-UX.
1308         * config/pa/pa-hpux.h (HPUX_LONG_DOUBLE_LIBRARY): Define to 1.
1309         * config/pa/pa.c (pa_expand_builtin): New.  Include "langhooks.h".
1310         (pa_c_mode_for_suffix): New.
1311         (TARGET_EXPAND_BUILTIN): Define.
1312         (TARGET_C_MODE_FOR_SUFFIX): Define.
1313         (pa_builtins): Define.
1314         (pa_init_builtins): Register __float128 type and init new support
1315         builtins.
1316         * config/pa/pa.h (HPUX_LONG_DOUBLE_LIBRARY): Define if not defined.
1317         * config/pa/quadlib.c (_U_Qfcopysign): New.
1318
1319 2011-01-18  Eric Botcazou  <ebotcazou@adacore.com>
1320
1321         PR middle-end/46894
1322         * explow.c (allocate_dynamic_stack_space): Do not assume more than
1323         BITS_PER_UNIT alignment if STACK_DYNAMIC_OFFSET or STACK_POINTER_OFFSET
1324         are defined.
1325
1326 2011-01-18  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
1327
1328         PR tree-optimization/47179
1329         * config/spu/spu.c (spu_ref_may_alias_errno): New function.
1330         (TARGET_REF_MAY_ALIAS_ERRNO): Define.
1331
1332 2011-01-18  Richard Guenther  <rguenther@suse.de>
1333
1334         PR rtl-optimization/47216
1335         * emit-rtl.c: Include tree-flow.h.
1336         (set_mem_attributes_minus_bitpos): Use tree_could_trap_p instead
1337         of replicating it with different semantics.
1338         * Makefile.in (emit-rtl.o): Adjust.
1339
1340 2011-01-18  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
1341
1342         * config/arm/cortex-a9.md (cortex-a9-neon.md): Actually
1343         include.
1344         (cortex_a9_dp): Handle neon types correctly.
1345
1346 2011-01-18  Jakub Jelinek  <jakub@redhat.com>
1347
1348         PR rtl-optimization/47299
1349         * expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Don't use
1350         subtarget.  Use normal multiplication if both operands are
1351         constants.
1352         * expmed.c (expand_widening_mult): Don't try to optimize constant
1353         multiplication if op0 has VOIDmode.  Convert op1 constant to mode
1354         before using it.
1355
1356 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1357
1358         * doc/lto.texi (LTO): Ensure two spaces after period.  Fix
1359         spacing after 'e.g.', typos, comma, hyphenation.
1360
1361 2011-01-17  Richard Henderson  <rth@redhat.com>
1362
1363         * config/rx/predicates.md (rx_constshift_operand): Use match_test.
1364         (rx_restricted_mem_operand): New.
1365         (rx_shift_operand): Use register_operand.
1366         (rx_source_operand, rx_compare_operand): Likewise.
1367         * config/rx/rx.md (addsi3_flags): New expander.
1368         (adddi3): Rewrite as expander.
1369         (adc_internal, *adc_flags, adddi3_internal): New patterns.
1370         (subsi3_flags): New expander.
1371         (subdi3): Rewrite as expander.
1372         (sbb_internal, *sbb_flags, subdi3_internal): New patterns.
1373
1374         * config/rx/rx.c (RX_BUILTIN_SAT): Remove.
1375         (rx_init_builtins): Remove sat builtin.
1376         (rx_expand_builtin): Likewise.
1377         * config/rx/rx.md (ssaddsi3): New.
1378         (*sat): Rename from sat.  Represent the CC_REG input.
1379
1380         * config/rx/predicates.md (rshift_operator): New.
1381         * config/rx/rx.c (rx_expand_insv): Remove.
1382         * config/rx/rx-protos.h: Update.
1383         * config/rx/rx.md (*bitset): Rename from bitset.  Swap the ashift
1384         operand to the canonical position.
1385         (*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
1386         (*bitclr, *bitclr_in_memory): Similarly.
1387         (*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
1388         (insv): Retain the zero_extract in the expansion.
1389
1390         * config/rx/rx.md (bswapsi2): Use = not + for output reload.
1391         (bswaphi2, bitinvert, revw): Likewise.
1392
1393         * config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
1394         (gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
1395         * config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
1396         (stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
1397         (bitset, bitset_in_memory): Likewise.
1398         (bitinvert, bitinvert_in_memory): Likewise.
1399         (bitclr, bitclr_in_memory): Likewise.
1400         (insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
1401         (rx_strend, rx_cmpstrn): Likewise.
1402         (rx_setmem): Likewise.  Make the source BLKmode to match the dest.
1403         (bitop peep2 patterns): Remove.
1404
1405         * config/rx/rx.c (rx_match_ccmode): New.
1406         * config/rx/rx-protos.h: Update.
1407         * config/rx/rx.md (abssi2): Clobber, don't set flags.
1408         (addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
1409         (rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
1410         (subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
1411         (fix_truncsfsi2, floatsisf2): Likewise.
1412         (*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
1413         (*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
1414         (*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
1415         (*subsi3_flags, *xorsi3_flags): New.
1416
1417         * config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
1418
1419         * config/rx/rx.c (rx_print_operand): Remove workaround for
1420         unsplit comparison operations.
1421
1422         * config/rx/rx.md (movsicc): Split after reload.
1423         (*movsicc): Merge *movsieq and *movsine via match_operator.
1424         (*stcc): New pattern.
1425
1426         * config/rx/rx.c (rx_float_compare_mode): Remove.
1427         * config/rx/rx.h (rx_float_compare_mode): Remove.
1428         * config/rx/rx.md (cstoresi4): Split after reload.
1429         (*sccc): New pattern.
1430
1431         * config/rx/predicates.md (label_ref_operand): New.
1432         (rx_z_comparison_operator): New.
1433         (rx_zs_comparison_operator): New.
1434         (rx_fp_comparison_operator): New.
1435         * config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
1436         Validate that the flags are set properly for the comparison.
1437         (rx_gen_cond_branch_template): Remove.
1438         (rx_cc_modes_compatible): Remove.
1439         (mode_from_flags): New.
1440         (flags_from_code): Rename from flags_needed_for_conditional.
1441         (rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
1442         (rx_select_cc_mode): Likewise.
1443         (rx_split_fp_compare): New.
1444         (rx_split_cbranch): New.
1445         * config/rx/rx.md (most_cond, zs_cond): Remove iterators.
1446         (*cbranchsi4): Use match_operator and rx_split_cbranch.
1447         (*cbranchsf4): Similarly.
1448         (*cbranchsi4_tst): Rename from *tstbranchsi4_<code>.  Use
1449         match_operator and rx_split_cbranch.
1450         (*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
1451         tstbranchsi4m_ne.  Use match_operator and rx_split_cbranch.
1452         (*cmpsi): Rename from cmpsi.
1453         (*tstsi): Rename from tstsi.
1454         (*cmpsf): Rename from cmpsf; use CC_Fmode.
1455         (*conditional_branch): Rename from conditional_branch.
1456         (*reveresed_conditional_branch): Remove.
1457         (b<code>): Remove expander.
1458         * config/rx/rx-protos.h: Update.
1459
1460         * config/rx/rx.c (rx_compare_redundant): Remove.
1461         * config/rx/rx.md (cmpsi): Don't use it.
1462         * config/rx/rx-protos.h: Update.
1463
1464         * config/rx/rx-modes.def (CC_F): New mode.
1465         * config/rx/rx.c (rx_select_cc_mode): New.
1466         * config/rx/rx.h (SELECT_CC_MODE): Use it.
1467         * config/rx/rx-protos.h: Update.
1468
1469 2011-01-17  Richard Henderson  <rth@redhat.com>
1470
1471         * except.c (dump_eh_tree): Fix stray ; after for statement.
1472
1473 2011-01-17  Richard Guenther  <rguenther@suse.de>
1474
1475         PR tree-optimization/47313
1476         * tree-inline.c (tree_function_versioning): Move DECL_RESULT
1477         handling before copying the body.  Properly deal with
1478         by-reference result in SSA form.
1479
1480 2011-01-17  Ian Lance Taylor  <iant@google.com>
1481
1482         PR target/47219
1483         * config/sparc/sparc.c (sparc_sr_alias_set): Don't define.
1484         (struct_value_alias_set): Don't define.
1485         (sparc_option_override): Don't set sparc_sr_alias_set and
1486         struct_value_alias_set.
1487         (save_or_restore_regs): Use gen_frame_mem rather than calling
1488         set_mem_alias_set.
1489         (sparc_struct_value_rtx): Likewise.
1490
1491 2011-01-17  H.J. Lu  <hongjiu.lu@intel.com>
1492
1493         PR target/47318
1494         * config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
1495         __m128i.
1496         (_mm_maskstore_pd): Likewise.
1497         (_mm_maskload_ps): Likewise.
1498         (_mm_maskstore_ps): Likewise.
1499         (_mm256_maskload_pd): Change mask to __m256i.
1500         (_mm256_maskstore_pd): Likewise.
1501         (_mm256_maskload_ps): Likewise.
1502         (_mm256_maskstore_ps): Likewise.
1503
1504         * config/i386/i386-builtin-types.def: Updated.
1505         (ix86_expand_special_args_builtin): Likewise.
1506
1507         * config/i386/i386.c (bdesc_special_args): Update
1508         __builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
1509         __builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
1510         __builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
1511         __builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
1512
1513         * config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
1514         Use <avxpermvecmode> on mask register.
1515         (avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
1516
1517 2011-01-17  Olivier Hainque  <hainque@adacore.com>
1518             Michael Haubenwallner  <michael.haubenwallner@salomon.at>
1519             Eric Botcazou  <ebotcazou@adacore.com>
1520
1521         PR target/46655
1522         * xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
1523         if <= USHRT_MAX in 32-bit mode.
1524
1525 2011-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1526
1527         * doc/install.texi (Configuration, Specific): Wrap long
1528         lines in examples.  Allow line wrapping in long options
1529         and URLs where beneficial for PDF output.
1530
1531 2011-01-16  Richard Sandiford  <rdsandiford@googlemail.com>
1532
1533         * config/mips/mips.c (mips_classify_symbol): Don't return
1534         SYMBOL_PC_RELATIVE for nonlocal labels.
1535
1536 2011-01-15  Eric Botcazou  <ebotcazou@adacore.com>
1537
1538         * config/sparc/sol2-bi.h (CC1_SPEC): Fix typo.
1539
1540 2011-01-15  Jan Hubicka  <jh@suse.cz>
1541
1542         PR tree-optimization/47276
1543         * ipa.c (function_and_variable_visibility): Do not try to mark alias
1544         declarations as needed.
1545
1546 2011-01-15  Martin Jambor  <mjambor@suse.cz>
1547
1548         * common.opt (fdevirtualize): New flag.
1549         * doc/invoke.texi (Option Summary): Document it.
1550         * opts.c (default_options_table): Add devirtualize flag.
1551         * ipa-prop.c (detect_type_change): Return immediately if
1552         devirtualize flag is not set.
1553         (detect_type_change_ssa): Likewise.
1554         (compute_known_type_jump_func): Likewise.
1555         (ipa_analyze_virtual_call_uses): Likewise.
1556
1557 2011-01-14  Martin Jambor  <mjambor@suse.cz>
1558
1559         PR tree-optimization/45934
1560         PR tree-optimization/46302
1561         * ipa-prop.c (type_change_info): New type.
1562         (stmt_may_be_vtbl_ptr_store): New function.
1563         (check_stmt_for_type_change): Likewise.
1564         (detect_type_change): Likewise.
1565         (detect_type_change_ssa): Likewise.
1566         (compute_complex_assign_jump_func): Check for dynamic type change.
1567         (compute_complex_ancestor_jump_func): Likewise.
1568         (compute_known_type_jump_func): Likewise.
1569         (compute_scalar_jump_functions): Likewise.
1570         (ipa_analyze_virtual_call_uses): Likewise.
1571         (ipa_analyze_node): Push and pop cfun, set current_function_decl.
1572
1573 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1574
1575         * config/i386/i386.h (CC1_CPU_SPEC_1): Don't handle -msse5.
1576         * config/i386/i386.opt (msse5): New Alias.
1577
1578 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1579
1580         * config/sparc/linux.h (CC1_SPEC): Remove %{sun4:} %{target:}.
1581         * config/sparc/linux64.h (CC1_SPEC): Likewise.
1582         * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
1583         * config/sparc/sparc.h (CC1_SPEC): Likewise.
1584
1585 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1586
1587         * config/sparc/linux.h (CC1_SPEC): Don't handle old equivalents of
1588         -mcpu options.
1589         * config/sparc/linux64.h (CC1_SPEC): Likewise.
1590         * config/sparc/netbsd-elf.h (CC1_SPEC32, CC1_SPEC64): Likewise.
1591         * config/sparc/sol2-bi.h (CPP_CPU_SPEC, CC1_SPEC): Likewise.
1592         * config/sparc/sparc.h (CPP_CPU_SPEC, CC1_SPEC, ASM_CPU_SPEC):
1593         Likewise.
1594         * config/sparc/t-elf (MULTILIB_MATCHES): Don't handle -mv8.
1595
1596 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1597
1598         * config/rs6000/vxworks.h (CC1_SPEC): Don't handle -fvec or
1599         -fvec-eabi.
1600
1601 2011-01-14  Mike Stump  <mikestump@comcast.net>
1602
1603         * config/alpha/alpha.md (umk_mismatch_args): Don't put a mode on set.
1604         * config/fr30/fr30.md: Likweise
1605         (movsi_push): Likewise.
1606         (movsi_pop): Likewise.
1607         (enter_func): Likewise.
1608         * config/moxie/moxie.md (movsi_push): Likewise.
1609         (movsi_pop): Likewise.
1610
1611 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1612
1613         * config/mips/linux64.h (LINK_SPEC): Remove %{bestGnum}
1614         %{no_archive} %{exact_version}.
1615         * config/mips/mips.h (LINK_SPEC): Remove %{bestGnum}.
1616         * config/mips/netbsd.h (LINK_SPEC): Remove %{bestGnum}
1617         %{no_archive} %{exact_version}.
1618         * config/mips/openbsd.h (LINK_SPEC): Likewise.
1619         * config/mips/sde.h (LINK_SPEC): Remove %{bestGnum}.
1620         * config/mips/vxworks.h: Likewise.
1621
1622 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1623
1624         * config/microblaze/microblaze.h (ASM_SPEC): Remove
1625         %{microblaze1}.
1626
1627 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1628
1629         * config/m32r/little.h (CPP_ENDIAN_SPEC, CC1_ENDIAN_SPEC,
1630         ASM_ENDIAN_SPEC, LINK_ENDIAN_SPEC): Remove.
1631
1632 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1633
1634         * config/i386/nwld.h (LINK_SPEC): Check -nodefaultlibs not
1635         -nodefaultlib.
1636
1637 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1638
1639         * config/cris/cris.h (ASM_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check
1640         for mcpu not cpu.
1641         * config/cris/linux.h (CRIS_CPP_SUBTARGET_SPEC,
1642         CRIS_CC1_SUBTARGET_SPEC, CRIS_ASM_SUBTARGET_SPEC): Check for mcpu
1643         not cpu.
1644         (CRIS_LINK_SUBTARGET_SPEC): Don't generate -rpath-link options.
1645         Don't handle -shlib.
1646
1647 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1648
1649         * config/avr/avr.h (CPP_SPEC): Don't handle -posix.
1650         (CC1_SPEC): Don't handle -profile.
1651
1652 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1653
1654         * config/microblaze/microblaze.h (CC1_SPEC): Remove -gline spec.
1655         * config/mips/mips.h (CC1_SPEC): Likewise.
1656
1657 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1658
1659         * config/microblaze/microblaze.h (CC1_SPEC): Remove %{save-temps: }.
1660         * config/mips/mips.h (CC1_SPEC): Likewise.
1661
1662 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1663
1664         * config/i386/linux.h (LINK_SPEC): Don't use %{!ibcs:} conditional.
1665         * config/m32r/linux.h (LINK_SPEC): Likewise.
1666         * config/mips/linux.h (LINK_SPEC): Likewise.
1667         * config/mips/linux64.h (LINK_SPEC): Likewise.
1668         * config/sparc/linux.h (LINK_SPEC): Likewise.
1669         * config/sparc/linux64.h (LINK_ARCH32_SPEC, LINK_ARCH64_SPEC,
1670         LINK_SPEC): Likewise.
1671         * config/xtensa/linux.h (LINK_SPEC): Likewise.
1672
1673 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1674
1675         * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove
1676         %{version:-v}.
1677         * config/lm32/uclinux-elf.h (LINK_SPEC): Likewise.
1678
1679 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1680
1681         * config/sparc/sp-elf.h (ASM_SPEC): Remove %{v:-V}.
1682         * config/sparc/sp64-elf.h (ASM_SPEC): Likewise.
1683
1684 2011-01-14  Joseph Myers  <joseph@codesourcery.com>
1685
1686         * config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Remove %{b}.
1687
1688 2011-01-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1689
1690         * configure.ac (gcc_cv_ld_static_dynamic): Solaris 2 ld always
1691         supports -Bstatic/-Bdynamic.
1692         * configure: Regenerate.
1693
1694 2011-01-14  Jan Hubicka  <jh@suse.cz>
1695         Jack Howarth <howarth@bromo.med.uc.edu>
1696
1697         PR target/46037
1698         * config/darwin.c (darwin_override_options): Honor flag_gtoggle
1699         when checking debug_info_level. Test write_symbols instead of
1700         debug_hooks->var_location when setting flag_var_tracking_uninit.
1701
1702 2011-01-14  Richard Guenther  <rguenther@suse.de>
1703
1704         PR tree-optimization/47179
1705         * target.def (ref_may_alias_errno): New target hook.
1706         * targhooks.h (default_ref_may_alias_errno): Declare.
1707         * targhooks.c: Include tree-ssa-alias.h and tree-flow.h.
1708         (default_ref_may_alias_errno): New function.
1709         * target.h (struct ao_ref_s): Declare.
1710         * tree-ssa-alias.c: Include target.h.
1711         (call_may_clobber_ref_p_1): Use the ref_may_alias_errno target hook.
1712         * Makefile.in (tree-ssa-alias.o): Adjust dependencies.
1713         (targhooks.o): Likewise.
1714         * doc/tm.texi.in (TARGET_REF_MAY_ALIAS_ERRNO): Document.
1715         * doc/tm.texi (TARGET_REF_MAY_ALIAS_ERRNO): Copy documentation.
1716
1717 2011-01-14  Richard Guenther  <rguenther@suse.de>
1718
1719         * tree-ssa-structalias.c  (new_var_info): Use DECL_HARD_REGISTER.
1720
1721 2011-01-14  Richard Guenther  <rguenther@suse.de>
1722
1723         PR tree-optimization/47280
1724         * tree-ssa-forwprop.c (associate_plusminus): Cleanup EH and
1725         return CFG changes.
1726         (tree_ssa_forward_propagate_single_use_vars): Deal with
1727         CFG changes from associate_plusminus.
1728
1729 2011-01-14  Richard Guenther  <rguenther@suse.de>
1730
1731         PR middle-end/47281
1732         Revert
1733         2011-01-11  Richard Guenther  <rguenther@suse.de>
1734
1735         PR tree-optimization/46076
1736         * tree-ssa.c (useless_type_conversion_p): Conversions from
1737         unprototyped to empty argument list function types are useless.
1738
1739 2011-01-14  Richard Guenther  <rguenther@suse.de>
1740
1741         PR tree-optimization/47286
1742         * tree-ssa-structalias.c (new_var_info): Register variables are global.
1743
1744 2011-01-14  Martin Jambor  <mjambor@suse.cz>
1745
1746         PR middle-end/46823
1747         * tree-inline.c (expand_call_inline): Get fndecl from call graph edge.
1748
1749 2011-01-13  Anatoly Sokolov  <aesok@post.ru>
1750
1751         * config/xtensa/xtensa.h (XTENSA_LIBCALL_VALUE, LIBCALL_VALUE,
1752         LIBCALL_OUTGOING_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
1753         * config/xtensa/xtensa.c (xtensa_libcall_value,
1754         xtensa_function_value_regno_p): New functions.
1755         (TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
1756
1757 2011-01-13  Kai Tietz  <kai.tietz@onevision.com>
1758
1759         PR c++/47213
1760         * config/i386/cygming.h (TARGET_ASM_ASSEMBLE_VISIBILITY):
1761         PE specific hook.
1762         * config/i386/i386-protos.h (i386_pe_assemble_visibility):
1763         New function prototype.
1764         * config/i386/winnt.c (i386_pe_assemble_visibility):
1765         Warn only if attribute was specified by user.
1766
1767 2011-01-13  Michael Meissner  <meissner@linux.vnet.ibm.com>
1768
1769         PR target/47251
1770         * config/rs6000/rs6000.md (floatunsdidf2): Add check for hardware
1771         floating point.
1772         (floatunsdidf2_fcfidu): Ditto.
1773
1774 2011-01-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
1775
1776         * config/s390/s390.c (print_operand_address): Replace 'error' with
1777         'output_operand_lossage'.
1778         (print_operand): Likewise.
1779
1780 2011-01-13  Jeff Law  <law@redhat.com>
1781
1782         PR rtl-optimization/39077
1783         * doc/invoke.texi (max-gcse-insertion-ratio): Document.
1784         * params.h (MAX_GCSE_INSERTION_RATIO): Define.
1785         * params.def (PARAM_MAX_GCSE_INSERTION_RATIO): Define.
1786         * lcm.c (pre_edge_lcm): Properly initialize output sbitmaps.
1787         * gcse.c (prune_insertions_deletions): New function.
1788         (compute_pre_data): Use it.
1789
1790 2011-01-13  Dodji Seketeli  <dodji@redhat.com>
1791
1792         PR debug/PR46973
1793         * dwarf2out.c (prune_unused_types_mark_generic_parms_dies): New
1794         static function.
1795         (prune_unused_types_mark): Use it.
1796
1797 2011-01-13  Andrey Belevantsev  <abel@ispras.ru>
1798
1799         PR rtl-optimization/45352
1800         * sel-sched.c: Update copyright years.
1801         (reset_sched_cycles_in_current_ebb): Also recheck the DFA state
1802         in the advancing loop when we have issued issue_rate insns.
1803
1804 2011-01-12  Richard Henderson  <rth@redhat.com>
1805
1806         * config/mn10300/mn10300.c (mn10300_md_asm_clobbers): New.
1807         (TARGET_MD_ASM_CLOBBERS): New.
1808
1809         * config/mn10300/mn10300.c (mn10300_delegitimize_address): New.
1810         (TARGET_DELEGITIMIZE_ADDRESS): New.
1811
1812         * config/mn10300/mn10300.md (UNSPEC_BSCH): New.
1813         (clzsi2, *bsch): New patterns.
1814
1815         * config/mn10300/mn10300.md (INT): New mode iterator.
1816         (*mov<INT>_clr): New pattern, and peep2 to generate it.
1817
1818         * config/mn10300/mn10300.c (mn10300_option_override): Force enable
1819         flag_split_wide_types.
1820
1821         * config/mn10300/mn10300.c (mn10300_asm_trampoline_template): Remove.
1822         (mn10300_trampoline_init): Rewrite without a template, an immediate
1823         load and a direct branch.
1824         * config/mn10300/mn10300.h (TRAMPOLINE_SIZE): Reduce to 16.
1825
1826 2011-01-12  Anatoly Sokolov  <aesok@post.ru>
1827
1828         * config/s390/s390.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
1829         * config/s390/s390-protos.h (s390_output_addr_const_extra): Remove.
1830         * config/s390/s390.c (s390_output_addr_const_extra): Make static.
1831         (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
1832
1833 2011-01-12  Kai Tietz  <kai.tietz@onevision.com>
1834
1835         PR debug/47209
1836         * dwarfout2.c (should_emit_struct_debug): Use TYPE_MAIN_VARIANT
1837         of type.
1838
1839 2011-01-12  Jan Hubicka  <jh@suse.cz>
1840
1841         PR driver/47244
1842         * gcc.c (PLUGIN_COND): Update to disable plugin unless -flto is used.
1843         (PLUGIN_COND_CLOSE): New macro.
1844         (LINK_COMMAND_SPEC): Update to use PLUGIN_COND_CLOSE.
1845
1846 2011-01-12  Richard Guenther  <rguenther@suse.de>
1847
1848         PR lto/47259
1849         * lto-streamer-out.c (output_gimple_stmt): Do not wrap
1850         register variables in a MEM_REF.
1851
1852 2011-01-12  Joseph Myers  <joseph@codesourcery.com>
1853
1854         * config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,
1855         crisv32-*-linux* | cris-*-linux*, frv-*-*linux*, moxie-*-uclinux*,
1856         hppa*64*-*-linux*, hppa*-*-linux*, i[34567]86-*-linux* |
1857         i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu |
1858         i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu,
1859         x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu,
1860         ia64*-*-linux*, lm32-*-uclinux*, m32r-*-linux*, m32rle-*-linux*,
1861         m68k-*-uclinux*, m68k-*-linux*, microblaze*-linux*,
1862         mips64*-*-linux* | mipsisa64*-*-linux*, mips*-*-linux*,
1863         s390-*-linux*, s390x-*-linux*, sh*-*-linux*, sparc-*-linux*,
1864         sparc64-*-linux*, vax-*-linux*, xtensa*-*-linux*,
1865         am33_2.0-*-linux*): Use gnu-user.h before linux.h.
1866         * config/gnu-user.h: New.  Copied from linux.h.
1867         (LINUX_TARGET_STARTFILE_SPEC): Rename to
1868         GNU_USER_TARGET_STARTFILE_SPEC.
1869         (LINUX_TARGET_ENDFILE_SPEC): Rename to
1870         GNU_USER_TARGET_ENDFILE_SPEC.
1871         (LINUX_TARGET_CC1_SPEC): Rename to GNU_USER_TARGET_CC1_SPEC.
1872         (LINUX_TARGET_LIB_SPEC): Rename to GNU_USER_TARGET_LIB_SPEC.
1873         (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC,
1874         LINUX_TARGET_OS_CPP_BUILTINS, CHOOSE_DYNAMIC_LINKER1,
1875         CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
1876         UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64,
1877         BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,
1878         BIONIC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER,
1879         LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64,
1880         TARGET_C99_FUNCTIONS, TARGET_HAS_SINCOS): Remove.
1881         * config/arm/linux-eabi.h (CC1_SPEC): Use
1882         GNU_USER_TARGET_CC1_SPEC.
1883         (LIB_SPEC): Use GNU_USER_TARGET_LIB_SPEC.
1884         (STARTFILE_SPEC): Use GNU_USER_TARGET_STARTFILE_SPEC.
1885         (ENDFILE_SPEC): Use GNU_USER_TARGET_ENDFILE_SPEC
1886         * config/linux.h (NO_IMPLICIT_EXTERN_C, ASM_APP_ON, ASM_APP_OFF,
1887         LINUX_TARGET_STARTFILE_SPEC, STARTFILE_SPEC,
1888         LINUX_TARGET_ENDFILE_SPEC, ENDFILE_SPEC, LINUX_TARGET_CC1_SPEC,
1889         CC1_SPEC, CPLUSPLUS_CPP_SPEC, LINUX_TARGET_LIB_SPEC, LIB_SPEC,
1890         LINK_EH_SPEC, LINK_GCC_C_SEQUENCE_SPEC, USE_LD_AS_NEEDED): Remove.
1891
1892 2011-01-12  Richard Guenther  <rguenther@suse.de>
1893
1894         PR other/46946
1895         * doc/invoke.texi (ffast-math): Document it is turned on
1896         with -Ofast.
1897
1898 2011-01-12  Jan Hubicka  <jh@suse.cz>
1899
1900         PR tree-optimization/47233
1901         * opts.c (common_handle_option): Disable ipa-reference with profile
1902         feedback.
1903
1904 2011-01-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1905
1906         * c-parser.c (c_parser_objc_at_property_declaration): Improved
1907         error message.
1908
1909 2011-01-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1910
1911         * c-parser.c (c_lex_one_token): Updated and reindented some
1912         comments.  No changes in code.
1913
1914 2011-01-11  Ian Lance Taylor  <iant@google.com>
1915
1916         * godump.c (go_output_var): Don't output the variable if there is
1917         already a type with the same name.
1918
1919 2011-01-11  Ian Lance Taylor  <iant@google.com>
1920
1921         * godump.c (go_format_type): Don't generate float80.
1922
1923 2011-01-11  Richard Henderson  <rth@redhat.com>
1924
1925         * config/mn10300/mn10300.c (mn10300_address_cost): Remove forward
1926         declaration.  Rewrite for both speed and size.
1927         (mn10300_address_cost_1): Remove.
1928         (mn10300_register_move_cost): New.
1929         (mn10300_memory_move_cost): New.
1930         (mn10300_rtx_costs): Rewrite for both speed and size.  Don't handle
1931         ZERO_EXTRACT.  Do handle UNSPEC, arithmetic, logicals, compare,
1932         extensions, shifts, BSWAP, CLZ.
1933         (mn10300_wide_const_load_uses_clr): Remove.
1934         (TARGET_REGISTER_MOVE_COST): New.
1935         (TARGET_MEMORY_MOVE_COST): New.
1936         * config/mn10300/mn10300-protos.h: Update.
1937         * config/mn10300/mn10300.h (REGISTER_MOVE_COST): Remove.
1938
1939         * config/mn10300/constraints.md ("R", "T"): Remove constraints.
1940         * config/mn10300/mn10300.c (mn10300_mask_ok_for_mem_btst): Remove.
1941         * config/mn10300/mn10300-protos.h: Update.
1942         * config/mn10300/mn10300.md (movsi_internal): Don't use "R".
1943         (*byte_clear, *byte_set, *bit_clear1, *bit_clear2, *bit_set): Remove.
1944         (iorqi3, *am33_iorqi3, *mn10300_iorqi3): Remove.
1945         (*test_int_bitfield, *test_byte_bitfield): Remove.
1946         (*bit_test, *subreg_bit_test): Remove.
1947         * config/mn10300/predicates.md (const_8bit_operand): Remove.
1948
1949         * config/mn10300/constraints.md ("c"): Rename from "A".
1950         ("A", "D"): New constraint letters.
1951         * config/mn10300/mn10300.md (fmasf4): Use the "c" constraint.
1952         (fmssf4, fnmasf4, fnmssf4): Likewise.
1953
1954         * config/mn10300/mn10300.md (isa): New attribute.
1955         (enabled): New attribute.
1956
1957         * config/mn10300/mn10300.md (absdf2, negdf2): Remove.
1958         (abssf2, negsf2): Define only for hardware fp.
1959         (sqrtsf2): Reformat.
1960         (addsf3, subsf3, mulsf3): Merge expander and insn.
1961
1962         * config/mn10300/mn10300.h (ARG_PIONTER_CFA_OFFSET): New.
1963         (DEBUGGER_AUTO_OFFSET): Remove.
1964         (DEBUGGER_ARG_OFFSET): Remove.
1965
1966         * config/mn10300/mn10300.c (mn10300_gen_multiple_store): Make static.
1967         Emit register stores with the same offsets as the hardware.
1968         (mn10300_store_multiple_operation): Don't check that the register
1969         save offsets are monotonic.
1970         * config/mn10300/mn10300-protos.h: Update.
1971
1972         * config/mn10300/mn10300.h (ASM_PN_FORMAT): Delete.
1973
1974         * config/mn10300/mn10300.h (INCOMING_RETURN_ADDR_RTX): Define
1975         in terms of the value on the stack, not the MDR register.
1976
1977 2011-01-11  Jan Hubicka  <jh@suse.cz>
1978
1979         PR lto/45721
1980         PR lto/45375
1981         * tree.h (symbol_alias_set_t): Move typedef here from varasm.c
1982         (symbol_alias_set_destroy, symbol_alias_set_contains,
1983         propagate_aliases_backward): Declare.
1984         * lto-streamer-out.c (struct sets): New sturcture.
1985         (trivally_defined_alias): New function.
1986         (output_alias_pair_p): Rewrite.
1987         (output_unreferenced_globals): Fix output of alias pairs.
1988         (produce_symtab): Likewise.
1989         * ipa.c (function_and_variable_visibility): Set weak alias destination
1990         as needed in lto.
1991         * varasm.c (symbol_alias_set_t): Remove.
1992         (symbol_alias_set_destroy): Export.
1993         (propagate_aliases_forward, propagate_aliases_backward): New functions
1994         based on ...
1995         (compute_visible_aliases): ... this one; remove.
1996         (trivially_visible_alias): New
1997         (trivially_defined_alias): New.
1998         (remove_unreachable_alias_pairs): Rewrite.
1999         (finish_aliases_1): Reorganize code checking if alias is defined.
2000         * passes.c (rest_of_decl_compilation): Do not call assemble_alias when
2001         in LTO mode.
2002
2003 2011-01-11  Richard Guenther  <rguenther@suse.de>
2004
2005         PR tree-optimization/46076
2006         * tree-ssa.c (useless_type_conversion_p): Conversions from
2007         unprototyped to empty argument list function types are useless.
2008
2009 2011-01-11  Richard Guenther  <rguenther@suse.de>
2010
2011         PR middle-end/45235
2012         * emit-rtl.c (set_mem_attributes_minus_bitpos): Do not mark
2013         volatile MEMs as MEM_READONLY_P.
2014
2015 2011-01-11  Richard Guenther  <rguenther@suse.de>
2016
2017         PR tree-optimization/47239
2018         * tree-ssa-ccp.c (get_value_from_alignment): Punt for FUNCTION_DECLs.
2019
2020 2011-01-11  Jeff Law  <law@redhat.com>
2021
2022         PR tree-optimization/47086
2023         * tree-ssa-loop-ivopts.c (find_givs_in_stmt_scev): Do not record
2024         IVs from statements that might throw.
2025
2026 2011-01-10  Jan Hubicka  <jh@suse.cz>
2027
2028         PR lto/45375
2029         * lto-cgraph.c (input_profile_summary): Remove overactive sanity check.
2030
2031 2011-01-10  Jan Hubicka  <jh@suse.cz>
2032
2033         PR lto/45375
2034         * profile.c (read_profile_edge_counts): Ignore profile inconistency
2035         when correcting profile.
2036
2037 2011-01-10  Jan Hubicka  <jh@suse.cz>
2038
2039         PR lto/46083
2040         * lto-streamer-out.c (pack_ts_function_decl_value_fields): Store
2041         DECL_FINI_PRIORITY.
2042         * lto-streamer-in.c (unpack_ts_function_decl_value_fields):
2043         Restore DECL_FINI_PRIORITY.
2044
2045 2011-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2046
2047         * doc/gimple.texi: Fix quoting of multi-word return values in
2048         @deftypefn statements.  Ensure presence of return value.  Wrap
2049         overlong @deftypefn lines.
2050         (is_gimple_operand, is_gimple_min_invariant_address): Remove
2051         descriptions of removed functions.
2052         * doc/hostconfig.texi (Host Common): Wrap long line, fix quoting
2053         of multi-word return value in @deftypefn statement.
2054
2055 2011-01-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2056
2057         * doc/gimple.texi (Temporaries, Operands, Compound Lvalues)
2058         (Conditional Expressions, Logical Operators)
2059         (Statement and operand traversals): Do not indent smallexample
2060         code.  Fix duplicate function argument in example.
2061
2062 2011-01-10  Jeff Law  <law@redhat.com>
2063
2064         PR tree-optimization/47141
2065         * ipa-split.c (split_function): Handle case where we are
2066         returning a value and the return block has a virtual operand phi.
2067
2068 2011-01-10  Jan Hubicka  <jh@suse.cz>
2069
2070         PR tree-optimization/47234
2071         * tree-pass.h (TODO_rebuild_cgraph_edges): New TODO.
2072         (pass_feedback_split_functions): Declare.
2073         * passes.c (init_optimization_passes): Add ipa-split as subpass of
2074         tree-profile.
2075         * ipa-split.c (gate_split_functions): Update comments; disable
2076         split-functions for profile_arc_flag and branch_probabilities.
2077         (gate_feedback_split_functions): New function.
2078         (execute_feedback_split_functions): New function.
2079         (pass_feedback_split_functions): New global var.
2080
2081 2011-01-10  H.J. Lu  <hongjiu.lu@intel.com>
2082
2083         PR lto/46760
2084         * tree-inline.c (tree_can_inline_p): Check e->call_stmt before
2085         calling gimple_call_set_cannot_inline.
2086
2087 2011-01-10  Iain Sandoe  <iains@gcc.gnu.org>
2088
2089         * config/darwin-sections.def: Remove unused section.
2090
2091 2011-01-10  Dave Korn  <dave.korn.cygwin@gmail.com>
2092
2093         PR c++/47218
2094         * cgraphunit.c (assemble_thunk): Call resolve_unique_section.
2095
2096 2011-01-09  Nicola Pero  <nicola.pero@meta-innovation.com>
2097
2098         PR objc/47232
2099         * c-parser.c (c_parser_declaration_or_fndef): Improved
2100         error message.
2101
2102 2011-01-09  Kai Tietz  <kai.tietz@onevision.com>
2103
2104         * config/i386/winnt.c (i386_pe_start_function): Make sure
2105         to switch back to function's section.
2106
2107 2011-01-09  Iain Sandoe  <iains@gcc.gnu.org>
2108
2109         PR gcc/46902
2110         PR testsuite/46912
2111         * plugin.c: Move include of dlfcn.h from here...
2112         * system.h: ... to here.
2113
2114 2011-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2115
2116         * doc/cpp.texi (C++ Named Operators): Fix markup for header
2117         file name.
2118         * doc/cppinternals.texi (Top): Wrap node in @ifnottex to avoid
2119         two extra empty pages in PDF output.
2120
2121 2011-01-08  Nicola Pero  <nicola.pero@meta-innovation.com>
2122
2123         PR objc/47078
2124         * c-parser.c (c_parser_objc_type_name): If the type is unknown,
2125         for error recovery purposes behave as if it was not specified so
2126         that the default type is usd.
2127
2128 2011-01-07  Jan Hubicka  <jh@suse.cz>
2129
2130         PR tree-optmization/46469
2131         * ipa.c (function_and_variable_visibility): Clear needed flags on
2132         nodes with external decls; handle weakrefs merging correctly.
2133
2134 2011-01-07  Joseph Myers  <joseph@codesourcery.com>
2135
2136         * opts.c (finish_options): Set opts->x_flag_opts_finished to true,
2137         not false.
2138
2139 2011-01-07  Jan Hubicka  <jh@suse.cz>
2140
2141         * doc/invoke.texi: (-flto, -fuse-linker-plugin): Update defaults
2142         and no longer claim that gold is required for linker plugin.
2143         * configure: Regenerate.
2144         * gcc.c (PLUGIN_COND): New macro.
2145         (LINK_COMMAND_SPEC): Use it.
2146         (main): Default to plugin enabled with HAVE_LTO_PLUGIN is set.
2147         * config.in (HAVE_LTO_PLUGIN): New.
2148         * configure.ac (--with-lto-plugin): New parameter; autodetect
2149         HAVE_LTO_PLUGIN.
2150
2151 2011-01-07  Jan Hubicka  <jh@suse.cz>
2152
2153         PR tree-optimization/46367
2154         * ipa-inline.c (cgraph_clone_inlined_nodes): Use original function only
2155         when we can update original.
2156         (cgraph_mark_inline_edge): Sanity check.
2157         * ipa-prop.c (ipa_make_edge_direct_to_target): Sanity check.
2158
2159 2011-01-07  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2160
2161         * config/spu/spu.h (ASM_COMMENT_START): Define.
2162
2163 2011-01-07  H.J. Lu  <hongjiu.lu@intel.com>
2164
2165         PR driver/42445
2166         * gcc.c (%>S): New.
2167         (SWITCH_KEEP_FOR_GCC): Likewise.
2168         (set_collect_gcc_options): Check SWITCH_KEEP_FOR_GCC.
2169         (do_spec_1): Handle "%>".
2170
2171         * config/i386/i386.h (CC1_CPU_SPEC): Replace "%<" with "%>".
2172
2173 2011-01-07  Jakub Jelinek  <jakub@redhat.com>
2174
2175         PR target/47201
2176         * config/i386/i386.c (ix86_delegitimize_address): If
2177         simplify_gen_subreg fails, return orig_x.
2178
2179         PR bootstrap/47187
2180         * value-prof.c (gimple_stringop_fixed_value): Handle
2181         lhs of the call properly.
2182
2183 2011-01-07  Jan Hubicka  <jh@suse.cz>
2184
2185         PR lto/45375
2186         * lto-opt.c (lto_reissue_options): Set flag_shlib.
2187
2188 2011-01-07  Iain Sandoe  <iains@gcc.gnu.org>
2189
2190         * target.def (function_switched_text_sections): New hook.
2191         * doc/tm.texi: Regenerated.
2192         * doc/tm.texi.in (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
2193         * final.c (default_function_switched_text_sections): New.
2194         (final_scan_insn): Call function_switched_text_sections when a
2195         mid-function section change occurs.
2196         * output.h (default_function_switched_text_sections): Declare.
2197         * config/darwin-protos.h (darwin_function_switched_text_sections):
2198         Likewise.
2199         * config/darwin.c (darwin_function_switched_text_sections): New.
2200         * config/darwin.h (TARGET_ASM_FUNCTION_SWITCHED_TEXT_SECTIONS): New.
2201
2202 2011-01-07  Iain Sandoe  <iains@gcc.gnu.org>
2203
2204         * dwarf2out.c (gen_subprogram_die):  Add pubnames with code ranges for
2205         DWARF >= 3.  Add pubnames for the primary section and a reduced DIE for
2206         the secondary code fragment when outputting for DWARF == 2.
2207
2208 2011-01-07  Anatoly Sokolov  <aesok@post.ru>
2209
2210         * config/xtensa/xtensa.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
2211         * config/xtensa/xtensa-protos.h (xtensa_output_addr_const_extra):
2212         Remove.
2213         * config/xtensa/xtensa.c (xtensa_output_addr_const_extra): Make static.
2214         (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.
2215
2216 2011-01-06  Eric Botcazou  <ebotcazou@adacore.com>
2217
2218         PR debug/46704
2219         * dwarf2out.c (dwarf2out_finish): Output the debug_aranges section only
2220         when it is not empty.
2221
2222 2011-01-06  Changpeng Fang  <changpeng.fang@amd.com>
2223
2224         Bobcat Enablement
2225         * config.gcc (i[34567]86-*-linux* | ...): Add btver1.
2226         (case ${target}): Add btver1.
2227         * config/i386/driver-i386.c (host_detect_local_cpu): Let
2228         -march=native recognize btver1 processors.
2229         * config/i386/i386-c.c (ix86_target_macros_internal): Add
2230         btver1 def_and_undef
2231         * config/i386/i386.c (struct processor_costs btver1_cost): New
2232         btver1 cost table.
2233         (m_BTVER1): New definition.
2234         (m_AMD_MULTIPLE): Includes m_BTVER1.
2235         (initial_ix86_tune_features): Add btver1 tune.
2236         (processor_target_table): Add btver1 entry.
2237         (static const char *const cpu_names): Add btver1 entry.
2238         (software_prefetching_beneficial_p): Add btver1.
2239         (ix86_option_override_internal): Add btver1 instruction sets.
2240         (ix86_issue_rate): Add btver1.
2241         (ix86_adjust_cost): Add btver1.
2242         * config/i386/i386.h (TARGET_BTVER1): New definition.
2243         (enum target_cpu_default): Add TARGET_CPU_DEFAULT_btver1.
2244         (enum processor_type): Add PROCESSOR_BTVER1.
2245         * config/i386/i386.md (define_attr "cpu"): Add btver1.
2246
2247 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2248
2249         PR target/43309
2250         * config/i386/i386.c (legitimize_tls_address)
2251         <TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
2252         * config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
2253         (tls_initial_exec_64_sun): New pattern.
2254
2255 2011-01-06  Gerald Pfeifer  <gerald@pfeifer.com>
2256
2257         * doc/invoke.texi (Overall Options): Improve wording and markup
2258         of the description of -wrapper.
2259
2260 2011-01-06  Joseph Myers  <joseph@codesourcery.com>
2261
2262         * config/sol2.opt (G, YP,, Ym,, compat-bsd, pthread, pthreads,
2263         rdynamic, threads): New Driver options.
2264
2265 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2266
2267         PR target/38118
2268         * config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Also switch to .bss
2269         if coming from .tdata.
2270         * config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Likewise.
2271
2272 2011-01-06  Jan Hubicka  <jh@suse.cz>
2273
2274         PR lto/47188
2275         * collect2.c (main): Do not enable LTOmode when plugin is active.
2276
2277 2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2278
2279         PR other/45915
2280         * configure.ac (gcc_cv_as_gnu_unique_object): Only use ldd
2281         --version output if supported.
2282         * configure: Regenerate.
2283
2284 2011-01-06  Joseph Myers  <joseph@codesourcery.com>
2285
2286         * config/linux-android.opt (tno-android-cc, tno-android-ld): New
2287         Driver options.
2288
2289 2011-01-06  Jakub Jelinek  <jakub@redhat.com>
2290
2291         PR c/47150
2292         * c-convert.c (convert): When converting a complex expression
2293         other than COMPLEX_EXPR to a different complex type, ensure
2294         c_save_expr is called instead of save_expr, unless in_late_binary_op.
2295         * c-typeck.c (convert_for_assignment): Set in_late_binary_op also
2296         when converting COMPLEX_TYPE.
2297
2298 2011-01-06  Ira Rosen  <irar@il.ibm.com>
2299
2300         PR tree-optimization/47139
2301         * tree-vect-loop.c (vect_is_simple_reduction_1): Check that
2302         only the last reduction value is used outside the loop.  Update
2303         documentation.
2304
2305 2011-01-05  Joseph Myers  <joseph@codesourcery.com>
2306
2307         * config/rtems.opt: New.
2308         * config.gcc (*-*-rtems*): Use rtems.opt.
2309
2310 2011-01-05  Changpeng Fang  <changpeng.fang@amd.com>
2311
2312         * config/i386/i386.c (ix86_option_override_internal): Bulldozer
2313         processors do not support 3DNow instructions.
2314
2315 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2316
2317         * config/spu/spu.c (spu_option_override): Set parameter
2318         PARAM_MAX_COMPLETELY_PEEL_TIMES to 4 instead of 1.
2319
2320 2011-01-05  Jan Hubicka  <jh@suse.cz>
2321
2322         * lto-wrapper.c (run_gcc): Default to WHOPR mode when none is specified
2323         at the command line.
2324
2325 2011-01-05  Martin Jambor  <mjambor@suse.cz>
2326
2327         PR lto/47162
2328         * lto-cgraph.c (output_cgraph_opt_summary_p): Also check for thunk
2329         deltas on streamed outgoing edges.
2330         (output_node_opt_summary): Output info for outgoing edges only when
2331         the node is in new parameter set.
2332         (output_cgraph_opt_summary): New parameter set, passed to the two
2333         aforementioned functions.  Update its forward declaration and its
2334         callee too.
2335
2336 2011-01-05  Tom Tromey  <tromey@redhat.com>
2337
2338         * c-parser.c (c_parser_omp_atomic): Pass location of assignment
2339         operator to c_finish_omp_atomic.
2340         * c-typeck.c (lvalue_or_else): Add 'loc' argument.
2341         (build_unary_op): Update.
2342         (build_modify_expr): Update.
2343         (build_asm_expr): Update.
2344
2345 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2346
2347         * config/spu/spu.c (emit_nop_for_insn): Set INSN_LOCATOR for
2348         newly inserted insns.
2349         (pad_bb): Likewise.
2350         (spu_emit_branch_hint): Likewise.
2351         (insert_hbrp_for_ilb_runout): Likewise.
2352         (spu_machine_dependent_reorg): Call df_finish_pass after
2353         schedule_insns returns.
2354
2355 2011-01-05  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2356
2357         * config/spu/spu.c (spu_expand_prologue): Support -fstack-usage.
2358
2359 2011-01-05  Eric Botcazou  <ebotcazou@adacore.com>
2360
2361         PR tree-optimization/47005
2362         * tree-sra.c (struct access): Add 'non_addressable' bit.
2363         (create_access): Set it for a DECL_NONADDRESSABLE_P field.
2364         (decide_one_param_reduction): Return 0 if the parameter is passed by
2365         reference and one of the accesses in the group is non_addressable.
2366
2367 2011-01-04  Eric Botcazou  <ebotcazou@adacore.com>
2368
2369         PR tree-optimization/47056
2370         * cgraphbuild.c (mark_address): Remove ATTRIBUTE_UNUSED markers.
2371         (mark_load): Likewise.  Handle FUNCTION_DECL specially.
2372         (mark_store): Likewise.  Pass STMT to ipa_record_reference.
2373
2374 2011-01-04  Eric Botcazou  <ebotcazou@adacore.com>
2375
2376         * dwarf2out.c (rtl_for_decl_init): Strip no-op conversions off the
2377         initializer.  Skip view conversions from aggregate types.
2378
2379 2011-01-04  Kai Tietz  <kai.tietz@onevision.com>
2380
2381         PR bootstrap/47055
2382         * libgcov.c (gcov_exit): Check for HAS_DRIVE_SPEC.
2383
2384 2011-01-04  Philipp Thomas <pth@suse.de>
2385
2386         * config/microblaze/microbalse.opt (mxl-float-convert): Fix
2387         obvious typo.
2388
2389 2011-01-04  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2390
2391         * function.c (thread_prologue_and_epilogue_insns): Do not crash
2392         on empty epilogue sequences.
2393
2394 2011-01-04  Joseph Myers  <joseph@codesourcery.com>
2395
2396         * config/vxworks.opt (Bdynamic, Bstatic, Xbind-lazy, Xbind-now,
2397         non-static): New Driver options.
2398
2399 2011-01-04  Jie Zhang  <jie@codesourcery.com>
2400
2401         PR driver/47137
2402         * gcc.c (default_compilers[]): Set combinable field to 0
2403         for all assembly languages.
2404
2405 2011-01-04  Mingjie Xing  <mingjie.xing@gmail.com>
2406
2407         * config/mips/loongson3a.md: New file.
2408         * config/mips/mips.md: Include loongson3a.md.
2409         * config/mips/mips.c (mips_multipass_dfa_lookahead): Return 4 when
2410         TUNE_LOONGSON_3A.
2411
2412 2011-01-03  Eric Botcazou  <ebotcazou@adacore.com>
2413
2414         PR middle-end/47017
2415         * expr.c (expand_expr_real_1) <MEM_REF>: Call memory_address_addr_space
2416         instead of convert_memory_address_addr_space on the base expression.
2417
2418 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2419
2420         * config/spu/spu.c (spu_option_override): Update error text
2421         for bad -march= / -mtune= values.
2422
2423 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2424
2425         * config/spu/spu.c (asm_file_start): Only reset flag_var_tracking
2426         if branch-hint optimization will be performed.
2427
2428 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
2429
2430         PR tree-optimization/47148
2431         * ipa-split.c (split_function): Convert arguments to
2432         DECL_ARG_TYPE if possible.
2433
2434         PR tree-optimization/47155
2435         * tree-ssa-ccp.c (bit_value_binop_1): Use r1type instead of type
2436         when computing uns.
2437
2438         PR rtl-optimization/47157
2439         * combine.c (try_combine): If undobuf.other_insn becomes
2440         (set (pc) (pc)) jump, call update_cfg_for_uncondjump on it
2441         and set *new_direct_jump_p too.
2442
2443 2011-01-03  Sebastian Pop  <sebastian.pop@amd.com>
2444
2445         PR tree-optimization/47021
2446         * graphite-sese-to-poly.c (scan_tree_for_params): Handle ADDR_EXPR.
2447
2448 2011-01-03  Jakub Jelinek  <jakub@redhat.com>
2449
2450         * gcc.c (process_command): Update copyright notice dates.
2451         * gcov.c (print_version): Likewise.
2452         * gcov-dump.c (print_version): Likewise.
2453         * mips-tfile.c (main): Likewise.
2454         * mips-tdump.c (main): Likewise.
2455
2456 2011-01-03  Martin Jambor  <mjambor@suse.cz>
2457
2458         PR tree-optimization/46801
2459         * tree-sra.c (type_internals_preclude_sra_p): Check whether
2460         aggregate fields start at byte boundary instead of the bit-field flag.
2461
2462 2011-01-03  H.J. Lu  <hongjiu.lu@intel.com>
2463
2464         PR driver/47137
2465         * gcc.c (main): Revert revision 168407.
2466
2467 2011-01-03  Martin Jambor  <mjambor@suse.cz>
2468
2469         * lto-cgraph.c (input_cgraph_opt_section): Use the correct section type.
2470
2471 2011-01-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2472
2473         * tree-vect-generic.c (expand_vector_operations_1): When using vector/
2474         vector optab to expand vector/scalar shift, update gimple to vector.
2475
2476 2011-01-03  Martin Jambor  <mjambor@suse.cz>
2477
2478         * cgraphunit.c (verify_cgraph_node): Verify there is no direct call to
2479         a thunk.
2480
2481 2011-01-03  Martin Jambor  <mjambor@suse.cz>
2482
2483         PR tree-optimization/46984
2484         * cgraph.h (cgraph_indirect_call_info): make field thunk_delta
2485         HOST_WIDE_INT.
2486         (cgraph_create_indirect_edge): Fixed line length.
2487         (cgraph_indirect_call_info): Declare.
2488         (cgraph_make_edge_direct) Update declaration.
2489         * cgraph.c (cgraph_allocate_init_indirect_info): New function.
2490         (cgraph_create_indirect_edge): Use it.
2491         (cgraph_make_edge_direct): Made delta HOST_WIDE_INT.  Updated all
2492         callees.
2493         * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Update for
2494         the new thunk_delta representation.
2495         * ipa-prop.c (ipa_make_edge_direct_to_target): Convert delta to
2496         HOST_WIDE_INT.
2497         (ipa_write_indirect_edge_info): Remove streaming of thunk_delta.
2498         (ipa_read_indirect_edge_info): Likewise.
2499         * lto-cgraph.c (output_edge_opt_summary): New function.
2500         (output_node_opt_summary): Call it on all outgoing edges.
2501         (input_edge_opt_summary): New function.
2502         (input_node_opt_summary): Call it on all outgoing edges.
2503
2504 2011-01-02  H.J. Lu  <hongjiu.lu@intel.com>
2505
2506         PR driver/47137
2507         * gcc.c (main): Don't check have_o when settting combine_inputs.
2508
2509 2011-01-02  Eric Botcazou  <ebotcazou@adacore.com>
2510
2511         * regrename.c: Add general comment describing the pass.
2512         (struct du_head): Remove 'length' field.
2513         (get_element, merge_sort_comparison, merge, sort_du_head): Remove.
2514         (regrename_optimize): Do not sort chains.  Rework comments, add others.
2515         Force renaming to the preferred class (if any) in the first pass and do
2516         not consider registers that belong to it in the second pass.
2517         (create_new_chain): Do not set 'length' field.
2518         (scan_rtx_reg): Likewise.
2519
2520 2011-01-02  Jakub Jelinek  <jakub@redhat.com>
2521
2522         PR tree-optimization/47140
2523         * tree-ssa-ccp.c (evaluate_stmt): For binary assignments, use
2524         TREE_TYPE (lhs) instead of TREE_TYPE (rhs1) as second argument
2525         to bit_value_binop.
2526
2527         PR rtl-optimization/47028
2528         * cfgexpand.c (gimple_expand_cfg): Insert entry edge insertions after
2529         parm_birth_insn instead of at the beginning of first bb.
2530
2531 2011-01-02  Mingjie Xing  <mingjie.xing@gmail.com>
2532
2533         * doc/generic.texi: Remove duplicated "@subsubsection Statements".
2534         Remove the word "see" before "@pxref".
2535         * doc/rtl.texi: Remove the word "see" before "@pxref".
2536
2537 2011-01-01  Jan Hubicka  <jh@suse.cz>
2538
2539         * tree-loop-distribution.c (tree_loop_distribution): Do not use freed
2540         memory.
2541
2542 2011-01-01  Kai Tietz  <kai.tietz@onevision.com>
2543
2544         PR target/38662
2545         * tree.c (type_hash_eq): Call language hook for METHOD_TYPEs, too.
2546
2547 \f
2548 Copyright (C) 2011 Free Software Foundation, Inc.
2549
2550 Copying and distribution of this file, with or without modification,
2551 are permitted in any medium without royalty provided the copyright
2552 notice and this notice are preserved.