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