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