OSDN Git Service

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