12011-12-09  Kazu Hirata  <kazu@codesourcery.com>
2
3	Backport from mainline:
4
5	2011-12-05  Kazu Hirata  <kazu@codesourcery.com>
6
7	PR target/51408
8	* config/arm/arm.md (*minmax_arithsi): Always require the else
9	clause in the MINUS case.
10
112011-10-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
12
13	PR target/50691
14	* config/pa/pa.c (emit_move_sequence): Legitimize TLS symbol references.
15	* config/pa/pa.h (LEGITIMATE_CONSTANT_P): Return false for
16	TLS_MODEL_GLOBAL_DYNAMIC and TLS_MODEL_LOCAL_DYNAMIC symbol references.
17
182011-06-17  Hans-Peter Nilsson  <hp@axis.com>
19
20	Backport from mainline
21	2011-06-17  Hans-Peter Nilsson  <hp@axis.com>
22
23	PR rtl-optimization/48542
24	* reload.c (find_equiv_reg): Stop looking when finding a
25	setjmp-type call.
26	* reload1.c (reload_as_needed): Invalidate all reload
27	registers when crossing a setjmp-type call.
28
292011-04-28  Release Manager
30
31	* GCC 4.5.3 released.
32
332011-04-21  Richard Guenther  <rguenther@suse.de>
34
35	PR middle-end/48712
36	Backport from 4.6 branch
37	2011-03-07  Zdenek Dvorak  <ook@ucw.cz>
38
39	PR bootstrap/48000
40	* cfgloopmanip.c (fix_bb_placements): Return immediately
41	if FROM is BASE_LOOP's header.
42
432011-04-20  Richard Guenther  <rguenther@suse.de>
44
45	Backport from 4.6 branch
46	2011-04-19  Bernd Schmidt  <bernds@codesourcery.com>
47
48	PR fortran/47976
49	* reload1.c (inc_for_reload): Return void. All callers changed.
50	(emit_input_reload_insns): Don't try to delete previous output
51	reloads to a register, or record spill_reg_store for autoincs.
52
532011-04-19  Richard Guenther  <rguenther@suse.de>
54
55	Backported from 4.6 branch
56	2011-03-29  Jakub Jelinek  <jakub@redhat.com>
57
58	PR preprocessor/48248
59	* c-ppoutput.c (print): Add src_file field.
60	(init_pp_output): Initialize it.
61	(maybe_print_line): Don't optimize by adding up to 8 newlines
62	if map->to_file and print.src_file are different file.
63	(print_line): Update print.src_file.
64
65	2011-04-18  Richard Guenther  <rguenther@suse.de>
66
67	PR preprocessor/48248
68	* c-ppoutput.c (maybe_print_line): Avoid changing -P behavior.
69
702011-04-19  Richard Guenther  <rguenther@suse.de>
71
72	PR tree-optimization/46188
73	Backported from 4.6 branch
74	2010-05-26  Jan Hubicka  <jh@suse.cz>
75
76	* cgraphunit.c (clone_of_p): Remove.
77	(verify_cgraph_node): Do not verify clones.
78	(cgraph_materialize_all_clones): Do no redirection here.
79	* ipa-inline.c (inline_transform): Do redirection here.
80
812011-04-18  Eric Botcazou  <ebotcazou@adacore.com>
82
83	* dwarf2out.c (is_redundant_typedef): Add 'inline' to prototype.
84
852011-04-18  Richard Guenther  <rguenther@suse.de>
86
87	Backported from 4.6 branch
88	2011-01-19  Jakub Jelinek  <jakub@redhat.com>
89
90	PR tree-optimization/47290
91	* tree-eh.c (infinite_empty_loop_p): New function.
92	(cleanup_empty_eh): Use it.
93
94	2010-05-29  Jan Hubicka  <jh@suse.cz>
95
96	PR tree-optimization/46364
97	* cgraphunit.c (cgraph_materialize_clone): Only remove calles, refs
98	and body;
99	not the whole node for masters of materialized clones.
100
1012011-04-18  Richard Guenther  <rguenther@suse.de>
102
103	Backported from 4.6 branch
104	2011-03-05  Zdenek Dvorak  <ook@ucw.cz>
105
106	PR rtl-optimization/47899
107	* cfgloopmanip.c (fix_bb_placements): Fix first argument
108	to flow_loop_nested_p when moving the loop upward.
109
110	2011-03-15  Richard Guenther  <rguenther@suse.de>
111 
112	PR middle-end/48031
113	* fold-const.c (fold_indirect_ref_1): Do not create new variable-sized
114	or variable-indexed array accesses when in gimple form.
115
1162011-04-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
117
118	* config/pa/pa.h (REGISTER_MOVE_COST): Increase to 18 cost of
119	move from floating point to shift amount register.
120
121	Backport from mainline:
122	2011-04-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
123
124	PR target/48366
125	* config/pa/pa.c (emit_move_sequence): Remove secondary reload
126	support for floating point to shift amount amount register copies.
127	(pa_secondary_reload): Return GENERAL_REGS for floating point/shift
128	amount register copies.
129	* config/pa/pa32-regs.h (HARD_REGNO_MODE_OK): For shift amount
130	register, return false if mode isn't a scalar integer mode.
131	* config/pa/pa64-regs.h (HARD_REGNO_MODE_OK): Likewise.
132
1332011-04-16  Jakub Jelinek  <jakub@redhat.com>
134
135	Backported from 4.6 branch
136	2011-04-15  Jakub Jelinek  <jakub@redhat.com>
137
138	PR target/48605
139	* config/i386/sse.md (avx_insertps, sse4_1_insertps): If operands[2]
140	is a MEM, offset it as needed based on top 2 bits in operands[3],
141	change MEM mode to SFmode and mask those 2 bits away from operands[3].
142
1432011-04-13  Nick Clifton  <nickc@redhat.com>
144
145	* config/rx/rx.md (movmemsi): Do not use this pattern when
146	volatile pointers are involved.
147
1482011-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
149
150	Backport from mainline:
151	2011-02-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
152
153	PR testsuite/47400
154	* doc/sourcebuild.texi (Require Support): Document
155	dg-require-ascii-locale.
156
1572011-04-12  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
158
159	Backport from mainline:
160	2011-04-12  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
161	PR target/48090
162	* config/arm/arm.md (*arm_negdi2): Fix early clobber constraints.
163
1642011-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
165
166	Backport from mainline:
167	2011-04-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
168
169	* config/alpha/osf.h (MAX_OFILE_ALIGNMENT): Define.
170
1712011-04-09  Duncan Sands  <baldrick@free.fr>
172
173	* tree.c (array_type_nelts): Bail out if TYPE_MAX_VALUE not set.
174
1752011-04-07  Uros Bizjak  <ubizjak@gmail.com>
176
177	* config/i386/sse.md (avx_cmps<ssemodesuffixf2c><mode>3): Add
178	missing output register constraint.
179	(*vec_concatv2sf_avx): Fix wrong register constraint in
180	alternative 3 of operand 1.
181	(*vec_set<mode>_0_avx): Avoid combining registers from different
182	units in a single alternative.
183	(*vec_set<mode>_0_sse4_1): Ditto.
184	(*vec_set<mode>_0_sse2): Ditto.
185	(vec_set<mode>_0): Ditto.
186	(sse2_storehpd): Ditto.
187	(sse2_loadhpd): Ditto.
188	(sse4_1_insertps): Use nonimmediate_operand for operand 2.
189	* config/i386/predicates.md (sse_comparison_operator): Do not
190	define as special predicate.
191
1922011-04-07  Jakub Jelinek  <jakub@redhat.com>
193
194	Backported from mainline
195	2011-04-06  Jakub Jelinek  <jakub@redhat.com>
196
197	PR debug/48466
198	* dwarf2out.c (based_loc_descr): If drap_reg is INVALID_REGNUM, use
199	as base_reg whatever register reg has been eliminated to, instead
200	of hardcoding STACK_POINTER_REGNUM.
201
202	2011-03-24  Jakub Jelinek  <jakub@redhat.com>
203
204	PR debug/48204
205	* simplify-rtx.c (simplify_const_unary_operation): Call
206	real_convert when changing mode class with FLOAT_EXTEND.
207
208	2011-03-17  Jakub Jelinek  <jakub@redhat.com>
209
210	PR rtl-optimization/48141
211	* dse.c (record_store): If no positions are needed in an insn
212	that cannot be deleted, at least unchain it from active_local_stores.
213
214	2011-03-03  Jakub Jelinek  <jakub@redhat.com>
215
216	PR c/47963
217	* gimplify.c (omp_add_variable): Only call omp_notice_variable
218	on TYPE_SIZE_UNIT if it is a DECL.
219
220	2011-02-19  Jakub Jelinek  <jakub@redhat.com>
221
222	PR c/47809
223	* c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
224
225	2011-01-26  Jakub Jelinek  <jakub@redhat.com>
226
227	PR c/47473
228	* c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
229	EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
230	REAL_TYPE.
231
2322011-04-07  Jakub Jelinek  <jakub@redhat.com>
233
234	PR tree-optimization/47391
235	* tree-ssa-ccp.c (get_symbol_constant_value): Don't optimize
236	if sym is volatile.
237
238	Backported from mainline
239	2010-07-01  Richard Guenther  <rguenther@suse.de>
240
241	* omp-low.c (scan_omp_1_op): Don't change type of INTEGER_CSTs
242	directly.
243
2442011-04-07  Andrey Belevantsev  <abel@ispras.ru>
245
246	Backport from mainline
247	2011-03-26  Andrey Belevantsev  <abel@ispras.ru>
248
249	PR rtl-optimization/48144
250	* sel-sched-ir.c (merge_history_vect): Factor out from ...
251	(merge_expr_data): ... here.
252	(av_set_intersect): Rename to av_set_code_motion_filter.
253	Update all callers.  Call merge_history_vect when an expression
254	is found in both sets.
255	* sel-sched-ir.h (av_set_code_motion_filter): Add prototype.
256
2572011-04-07  Andrey Belevantsev  <abel@ispras.ru>
258
259	Backport from mainline
260	2011-01-13  Andrey Belevantsev  <abel@ispras.ru>
261
262	PR rtl-optimization/45352
263	* sel-sched.c: Update copyright years.
264	(reset_sched_cycles_in_current_ebb): Also recheck the DFA state
265	in the advancing loop when we have issued issue_rate insns.
266
267	Backport from mainline
268	2010-12-22  Andrey Belevantsev  <abel@ispras.ru>
269
270	PR rtl-optimization/45352
271	PR rtl-optimization/46521
272	PR rtl-optimization/46522
273	* sel-sched.c (reset_sched_cycles_in_current_ebb): Recheck the DFA state
274	on the last iteration of the advancing loop.
275	(sel_sched_region_1): Propagate the rescheduling bit to the next block
276	also for empty blocks.
277
278	Backport from mainline
279	2010-11-08  Andrey Belevantsev  <abel@ispras.ru>
280
281	PR rtl-optimization/45352
282	* sel-sched.c (find_best_expr): Do not set pneed_stall when
283	the variable_issue hook is not implemented.
284	(fill_insns): Remove dead variable stall_iterations.
285	(init_seqno_1): Force EBB start for resetting sched cycles on any
286	successor blocks of the rescheduled region.
287	(sel_sched_region_1): Use bitmap_bit_p instead of bitmap_clear_bit.
288	(reset_sched_cycles_in_current_ebb): Add debug printing.
289	New variable issued_insns.  Advance state when we have issued
290	issue_rate insns.
291
2922011-04-07  Andrey Belevantsev  <abel@ispras.ru>
293
294	Backport from mainline
295	2010-12-24  Alexander Monakov  <amonakov@ispras.ru>
296
297	PR rtl-optimization/47036
298	* sel-sched-ir.c (fallthru_bb_of_jump): Remove special support for
299	unconditional jumps.
300	* sel-sched.c (moveup_expr): Ditto.
301
3022011-04-07  Andrey Belevantsev  <abel@ispras.ru>
303
304	Backport from mainline
305	2010-12-15  Alexander Monakov  <amonakov@ispras.ru>
306
307	PR rtl-optimization/46649
308	* sel-sched-ir.c (purge_empty_blocks): Unconditionally skip the first
309	basic block in the region.
310
3112011-04-07  Andrey Belevantsev  <abel@ispras.ru>
312
313	Backport from mainline
314	2010-12-14  Alexander Monakov  <amonakov@ispras.ru>
315
316	PR rtl-optimization/46875
317	* sched-vis.c (print_pattern): Dump "sequence" for ADDR_VECs.
318	* sel-sched-ir.c (bb_has_removable_jump_to_p): Forbid table jumps.
319
3202011-04-07  Andrey Belevantsev  <abel@ispras.ru>
321
322	Backport from mainline
323	2010-12-07  Andrey Belevantsev  <abel@ispras.ru>
324	PR target/43603
325	* haifa-sched.c (sched_create_recovery_edges): Update
326	dominator info.
327	* sel-sched-ir.c (maybe_tidy_empty_bb): Update dominator info
328	after deleting an empty block.
329	(tidy_control_flow): Also verify dominators.
330	(sel_remove_bb): Update dominator info after removing a block.
331	(sel_redirect_edge_and_branch_force): Assert that no unreachable
332	blocks will be created. Update dominator info.
333	(sel_redirect_edge_and_branch): Update dominator info when
334	basic blocks do not become unreachable.
335	(sel_remove_loop_preheader): Update dominator info.
336
337	2010-10-14  Andrey Belevantsev  <abel@ispras.ru>
338
339	* sel-sched-ir.c (maybe_tidy_empty_bb): Simplify comment.
340	(tidy_control_flow): Tidy vertical space.
341	(sel_remove_bb): New variable idx.  Use it to remember the basic
342	block index before deleting the block.
343	(sel_remove_empty_bb): Remove dead code, simplify and insert to ...
344	(sel_merge_blocks): ... here.
345	* sel-sched-ir.h (sel_remove_empty_bb): Remove prototype.
346
3472011-04-07  Andrey Belevantsev  <abel@ispras.ru>
348
349	Backport from mainline
350	2010-12-03  Alexander Monakov  <amonakov@ispras.ru>
351
352	PR rtl-optimization/45354
353	* sel-sched-ir.c (jump_leads_only_to_bb_p): Rename to ...
354	(bb_has_removable_jump_to_p): This.  Update all callers. Make static.
355	Allow BBs ending with a conditional jump.  Forbid EDGE_CROSSING jumps.
356	* sel-sched-ir.h (jump_leads_only_to_bb_p): Delete prototype.
357
3582011-04-07  Andrey Belevantsev  <abel@ispras.ru>
359
360	Backport from mainline
361	2010-11-25  Alexander Monakov  <amonakov@ispras.ru>
362
363	PR rtl-optimization/46585
364	* sel-sched-ir.c (return_regset_to_pool): Verify that RS is not NULL.
365	(vinsn_init): Skip computation of dependencies for local NOPs.
366	(vinsn_delete): Don't try to free regsets for local NOPs.
367	(setup_nop_and_exit_insns): Change definition of nop_pattern.
368
3692011-04-07  Andrey Belevantsev  <abel@ispras.ru>
370
371	Backport from mainline
372	2010-11-25  Alexander Monakov  <amonakov@ispras.ru>
373
374	PR rtl-optimization/46602
375	* sel-sched-ir.c (maybe_tidy_empty_bb): Move checking ...
376	(tidy_control_flow): Here.
377
3782011-04-07  Andrey Belevantsev  <abel@ispras.ru>
379
380	Backport from mainline
381	2010-11-22  Alexander Monakov  <amonakov@ispras.ru>
382
383	PR rtl-optimization/45652
384	* alias.c (get_reg_base_value): New.
385	* rtl.h (get_reg_base_value): Add prototype.
386	* sel-sched.c (init_regs_for_mode): Use it.  Don't use registers with
387	non-null REG_BASE_VALUE for renaming.
388
3892011-04-07  Andrey Belevantsev  <abel@ispras.ru>
390
391	Backport from mainline
392	2010-11-18  Alexander Monakov  <amonakov@ispras.ru>
393
394	PR middle-end/46518
395	* sel-sched-ir.c (init_expr): Use the correct type for
396	target_available.
397	* sel-sched.c (fill_vec_av_set): Use explicitly signed char type.
398
3992011-04-07  Andrey Belevantsev  <abel@ispras.ru>
400
401	Backport from mainline
402	2010-11-12  Alexander Monakov  <amonakov@ispras.ru>
403
404	PR rtl-optimization/46204
405	 sel-sched-ir.c (maybe_tidy_empty_bb): Remove second argument.
406	pdate all callers.  Do not recompute topological order.  Adjust
407	allthrough edges following a degenerate conditional jump.
408
4092011-04-07  Andrey Belevantsev  <abel@ispras.ru>
410
411	Backport from mainline
412	2010-10-14  Andrey Belevantsev  <abel@ispras.ru>
413
414	PR rtl-optimization/45570
415	* sel-sched-ir.c (cfg_preds_1): When walking out of the region,
416	assert that we are pipelining outer loops.  Allow returning
417	zero predecessors.
418
4192011-04-06  Joseph Myers  <joseph@codesourcery.com>
420
421	* gcov-io.c: Use GCC Runtime Library Exception.
422
4232011-03-30  H.J. Lu  <hongjiu.lu@intel.com>
424
425	Backport from mainline
426	2011-03-30  H.J. Lu  <hongjiu.lu@intel.com>
427
428	PR target/48349
429	* config/i386/i386.h (REG_CLASS_CONTENTS): Fix a typo in
430	FLOAT_SSE_REGS.
431
4322011-03-29  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
433
434	* config/s390/s390.c (s390_preferred_reload_class): Return NO_REGS
435	for invalid symbolic addresses.
436	(s390_secondary_reload): Don't use s390_check_symref_alignment for
437	larl operands.
438
4392011-03-28  Richard Sandiford  <richard.sandiford@linaro.org>
440
441	PR target/47553
442	* config/arm/predicates.md (neon_lane_number): Accept 0..15.
443
4442011-03-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
445
446	PR other/48254
447	* doc/invoke.texi (-fipa-struct-reorg): Fix typo.
448
4492011-03-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
450
451	PR other/48179
452	PR other/48234
453	* doc/extend.texi (Alignment): Move section to match order in TOC.
454	* doc/invoke.texi (i386 and x86-64 Windows Options): Likewise.
455
4562011-03-18  H.J. Lu  <hongjiu.lu@intel.com>
457
458	Backport from mainline
459	2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>
460
461	PR target/48171
462	* config/i386/i386.opt: Add Save to -mavx and -mfma.
463
4642011-03-16  Pat Haugen <pthaugen@us.ibm.com>
465
466	PR target/47862
467	* caller-save.c (insert_restore, insert_save): Use non-validate
468	form of adjust_address.
469
4702011-03-16  Nick Clifton  <nickc@redhat.com>
471
472	* config/rx/rx.h (JUMP_ALIGN): Define.
473	(JUMP_ALIGN_MAX_SKIP, LABEL_ALIGN_AFTER_BARRIER, LOOP_ALIGN,
474	(LABEL_ALIGN, LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP,
475	(LOOP_ALIGN_MAX_SKIP, LABEL_ALIGN_MAX_SKIP): Define.
476	* config/rx/rx-protos.h (rx_align_for_label): Prototype.
477	(rx_max_skip_for_label): Prototype.
478	* config/rx/rx.md (abssi3): Use CC_ZSmode.
479	(andis3): Fix timings.
480	(peephole): Add peephole to combine zero- and sign- extending
481	loads with arithmetic instructions.
482	(bset): Fix timing.
483	(bclr): Fix timing.
484	* config/rx/rx.c (rx_is_legitimate_address): Add checks for QImode
485	and HImode reg+int address.
486	(rx_print_operand): Add support for %R.  Fix generation of .B and
487	.W addressing modes.
488	(rx_align_for_label): New function.
489	(rx_max_skip_for_label): New function.
490
4912011-03-10  Jason Merrill  <jason@redhat.com>
492
493	PR c++/48029
494	* stor-layout.c (layout_type): Don't set structural equality
495	on arrays of incomplete type.
496	* tree.c (type_hash_eq): Handle comparing them properly.
497
4982011-03-08  Richard Guenther  <rguenther@suse.de>
499
500	Backport from mainline
501	2011-02-10  Richard Guenther  <rguenther@suse.de>
502
503	* tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
504
505	2010-10-18  Richard Guenther  <rguenther@suse.de>
506
507	PR tree-optimization/45967
508	* tree-ssa-structalias.c (type_could_have_pointers): Remove.
509	(could_have_pointers): Likewise.
510	(handle_rhs_call, handle_const_call, handle_pure_call,
511	find_func_aliases, intra_create_variable_infos): Remove calls to them.
512	(struct fieldoff): Add must_have_pointers field.
513	(type_must_have_pointers): New function.
514	(field_must_have_pointers): Likewise.
515	(push_fields_onto_fieldstack): Remove must_have_pointers_p argument.
516	Adjust field merging.
517	(create_function_info_for): May-have-pointers of varinfo is
518	almost always true.
519	(create_variable_info_for_1): Likewise.
520
521	2010-10-12  Richard Guenther  <rguenther@suse.de>
522
523	* tree-ssa-structalias.c (get_constraint_for_1): Constants
524	only point to nonlocal, not anything.
525
5262011-03-08  Richard Guenther  <rguenther@suse.de>
527
528	PR tree-optimization/47278
529	* tree.h (DECL_REPLACEABLE_P): Remove.
530	(decl_replaceable_p): Declare.
531	(decl_binds_to_current_def_p): Likewise.
532	* varasm.c (decl_replaceable_p): New function.
533	(decl_binds_to_current_def_p): Likewise.
534	* cgraph.c (cgraph_function_body_availability): Use decl_replaceable_p.
535	* tree-inline.c (inlinable_function_p): Likewise.
536
5372011-03-07  Pat Haugen <pthaugen@us.ibm.com>
538
539	Backport from mainline
540	2011-03-07  Pat Haugen <pthaugen@us.ibm.com>
541
542	PR target/47862
543	* config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Define.
544
5452011-03-07  Mingjie Xing  <mingjie.xing@gmail.com>
546
547	* doc/cfg.texi: Remove "See" before @ref.
548	* doc/invoke.texi: Likewise.
549
5502011-03-03  Uros Bizjak  <ubizjak@gmail.com>
551
552	* config/i386/sse.md (*avx_pmaddubsw128): Fix mode of VEC_SELECT RTX.
553	(ssse3_pmaddubsw128): Ditto.
554	(ssse3_pmaddubsw): Ditto.
555
5562011-03-03  Denis Chertykov <chertykov@gmail.com>
557
558	Backport from mainline
559	2011-02-22  Georg-Johann Lay  <avr@gjlay.de>
560
561	PR target/42240
562	* config/avr/avr.c (avr_cannot_modify_jumps_p): New function.
563	(TARGET_CANNOT_MODIFY_JUMPS_P): Define.
564
5652011-03-03  Richard Guenther  <rguenther@suse.de>
566
567	* tree-vect-stmt.c (vectorizable_operation): Remove unused vars.
568
5692011-03-02  Richard Guenther  <rguenther@suse.de>
570
571	Backport from mainline
572	2011-02-07  Richard Guenther  <rguenther@suse.de>
573
574	PR tree-optimization/47615
575	* tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
576	* tree-ssa-sccvn.c (default_vn_walk_kind): New global.
577	(run_scc_vn): Initialize it.
578	(visit_reference_op_load): Use it.
579	* tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
580
5812011-03-01  Richard Guenther  <rguenther@suse.de>
582
583	Backport from mainline
584	2011-02-08  Richard Guenther  <rguenther@suse.de>
585
586	PR middle-end/47639
587	* tree-vect-generic.c (expand_vector_operations_1): Update
588	stmts here ...
589	(expand_vector_operations): ... not here.  Cleanup EH info
590	and the CFG if required.
591
5922011-03-01  Richard Guenther  <rguenther@suse.de>
593
594	Backport from mainline
595	2011-03-01  Richard Guenther  <rguenther@suse.de>
596
597	PR tree-optimization/47890
598	* tree-vect-loop.c (get_initial_def_for_induction): Set
599	related stmt properly.
600
601	2010-12-01  Richard Guenther  <rguenther@suse.de>
602
603	PR tree-optimization/46723
604	* tree-vect-loop.c (get_initial_def_for_induction): Strip
605	conversions from the induction evolution and apply it to
606	the result instead.
607	* tree-vect-stmts.c (vect_get_vec_def_for_operand): Handle
608	assigns for induction defs.
609
6102011-02-28  Georg-Johann Lay  <avr@gjlay.de>
611
612	PR target/45261
613	* config/avr/avr.c (avr_option_override): Use error on bad options.
614	(avr_help): New function.
615	(TARGET_HELP): Define.
616
6172011-02-26  Gerald Pfeifer  <gerald@pfeifer.com>
618
619	* doc/invoke.texi (ARC Options): Use CPU instead of cpu.
620	(ARM Options): Ditto.
621	(i386 and x86-64 Options): Ditto.
622	(RX Options): Ditto.
623	(SPARC Options): Ditto.
624
6252011-02-26  Tijl Coosemans  <tijl@coosemans.org>
626
627	* config.gcc (i386-*-freebsd*): Make i486 the default arch on
628	FreeBSD 6 and later.  Generally use cpu generic.
629
6302011-02-25  Gerald Pfeifer  <gerald@pfeifer.com>
631
632	* doc/cpp.texi (Obsolete Features): Add background on the
633	origin of assertions.
634	Update copyright years.
635
6362011-02-25  Andriy Gapon <avg@freebsd.org>
637
638	PR target/45808
639	* config/freebsd-spec.h (FBSD_LIB_SPEC): Handle the shared case.
640	Update copyright years.
641
6422011-02-21  Uros Bizjak  <ubizjak@gmail.com>
643
644	PR target/47840
645	* config/i386/avxintrin.h (_mm256_insert_epi32): Use _mm_insert_epi32.
646	(_mm256_insert_epi64): Use _mm_insert_epi64.
647
6482011-02-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
649
650	* config.gcc (hppa[12]*-*-hpux11*): Set extra_parts.
651	* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
652	pthread_mutex_unlock, pthread_once): Reinstate pthread stubs.
653	* config/pa/t-pa-hpux11: Add rules to build pthread stubs.
654	* config/pa/t-pa64: Likewise.
655	* config/pa/pa-hpux11.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
656
6572011-02-17  Uros Bizjak  <ubizjak@gmail.com>
658
659	PR target/43653
660	* config/i386/i386.c (ix86_secondary_reload): Handle SSE
661	input reload with PLUS RTX.
662
6632011-02-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
664
665	PR pch/14940
666	* config/alpha/host-osf.c: New file.
667	* config/alpha/x-osf: New file.
668	* config.host (alpha*-dec-osf*): Use it.
669
6702011-02-15  Tijl Coosemans  <tijl@coosemans.org>
671
672	* config/i386/freebsd.h (SUBTARGET32_DEFAULT_CPU): Add.
673	Update copyright years.
674
6752011-02-11  Bernd Schmidt  <bernds@codesourcery.com>
676
677	PR rtl-optimization/47166
678	* reload1.c (emit_reload_insns): Disable the spill_reg_store
679	mechanism for PRE_MODIFY and POST_MODIFY.
680	(inc_for_reload): For PRE_MODIFY, return the insn that sets the
681	reloadreg.
682
6832011-02-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
684
685	Backport from mainline:
686	2011-02-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
687
688	* config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
689	* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
690	pthread_mutex_unlock): Remove.
691	* config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
692	* config/pa/t-pa64: Likewise.
693	* config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
694	shared libc if not linking against libpthread.
695	* config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
696
6972011-02-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
698
699	Backport from mainline:
700	2011-02-02  Michael Meissner  <meissner@linux.vnet.ibm.com>
701
702	PR target/47272
703	* doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
704	Document using vector double with the load/store builtins, and
705	that the load/store builtins always use Altivec instructions.
706
707	* config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
708	to use altivec memory instructions, even on VSX.
709	(vector_altivec_store_<mode>): Ditto.
710
711	* config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
712	function.
713
714	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
715	V2DF, V2DI support to load/store overloaded builtins.
716
717	* config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
718	altivec load/store builtins for V2DF/V2DI types.
719
720	* config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
721	set avoid indexed addresses on power6 if -maltivec.
722	(altivec_expand_ld_builtin): Add V2DF, V2DI support, use
723	vector_altivec_load/vector_altivec_store builtins.
724	(altivec_expand_st_builtin): Ditto.
725	(altivec_expand_builtin): Add VSX memory builtins.
726	(rs6000_init_builtins): Add V2DI types to internal types.
727	(altivec_init_builtins): Add support for V2DF/V2DI altivec
728	load/store builtins.
729	(rs6000_address_for_altivec): Insure memory address is appropriate
730	for Altivec.
731
732	* config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
733	vec_vsx_ld and vec_vsx_st.
734	(vsx_store_<mode>): Ditto.
735
736	* config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
737	variables to hold long long types for VSX vector memory builtins.
738	(RS6000_BTI_unsigned_long_long): Ditto.
739	(long_long_integer_type_internal_node): Ditti.
740	(long_long_unsigned_type_internal_node): Ditti.
741
742	* config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
743	(altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
744	(altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
745
746	* config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
747	short cuts.
748	(vec_vsx_st): Ditto.
749
750	Backport from mainline:
751	2011-02-01  Michael Meissner  <meissner@linux.vnet.ibm.com>
752
753	PR target/47580
754	* config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
755	gpc_reg_operand instead of vsx_register_operand to match rs6000.md
756	generator functions.
757	(vsx_floatuns<VSi><mode>2): Ditto.
758	(vsx_fix_trunc<mode><VSi>2): Ditto.
759	(vsx_fixuns_trunc<mode><VSi>2): Ditto.
760
7612011-02-02  Nick Clifton  <nickc@redhat.com>
762
763	Import these patches from the mainline:
764	2011-01-31  Nick Clifton  <nickc@redhat.com>
765
766	* config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
767	registers inside interrupt handlers if the handler is not a leaf
768	function.
769
770	2011-01-25  Nick Clifton  <nickc@redhat.com>
771
772	* config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
773	* config/rx/rx.c (rx_function_value): Likewise.
774	(rx_promote_function_mode): Likewise.
775	(gen_safe_add): Place an outsized immediate value inside an UNSPEC
776	in order to make it legitimate.
777	* config/rx/rx.md (adddi3_internal): If the second operand is a
778	MEM make sure that the first operand is the same as the result
779	register.
780	(addsi3_unspec): Delete.
781	(subdi3): Do not accept immediate operands.
782	(subdi3_internal): Likewise.
783
784	2011-01-24  Richard Henderson  <rth@redhat.com>
785
786	* config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
787	compound unordered comparisons.
788	* config/rx/rx.c (rx_split_fp_compare): Remove.
789	* config/rx/rx-protos.h: Update.
790	* config/rx/rx.md (gcc_conds, rx_conds): Remove.
791	(cbranchsf4): Don't call rx_split_fp_compare.
792	(*cbranchsf4): Use rx_split_cbranch.
793	(*cmpsf): Don't accept "i" constraint.
794	(*conditional_branch): Only valid after reload.
795	(cstoresf4): Merge expander with insn.  Don't call
796	rx_split_fp_compare.
797
798	2011-01-22  Nick Clifton  <nickc@redhat.com>
799
800	* config/rx/rx.md (cstoresf4): Pass comparison operator to
801	rx_split_fp_compare.
802
803	2011-01-22  Nick Clifton  <nickc@redhat.com>
804
805	* config/rx/rx.md (UNSPEC_CONST): New.
806	(deallocate_and_return): Wrap the amount popped off the stack in
807	an UNSPEC_CONST in order to stop it being rejected by
808	-mmax-constant-size.
809	(pop_and_return): Add a "(return)" rtx.
810	(call): Drop the immediate operand.
811	(call_internal): Likewise.
812	(call_value): Likewise.
813	(call_value_internal): Likewise.
814	(sibcall_internal): Likewise.
815	(sibcall_value_internal): Likewise.
816	(sibcall): Likewise.  Generate an explicit call using
817	sibcall_internal.
818	(sibcall_value): Likewise.
819	(mov<>): FAIL if a constant operand is not legitimate.
820	(addsi3_unpsec): New pattern.
821
822	* config/rx/rx.c (rx_print_operand_address): Handle UNPSEC
823	CONSTs.
824	(ok_for_max_constant): New function.
825	(gen_safe_add): New function.
826	(rx_expand_prologue): Use gen_safe_add.
827	(rx_expand_epilogue): Likewise.
828	(rx_is_legitimate_constant): Use ok_for_max_constant.  Handle
829	UNSPEC CONSTs.
830
831	2011-01-17  Richard Henderson  <rth@redhat.com>
832
833	* config/rx/predicates.md (rx_constshift_operand): Use match_test.
834	(rx_restricted_mem_operand): New.
835	(rx_shift_operand): Use register_operand.
836	(rx_source_operand, rx_compare_operand): Likewise.
837	* config/rx/rx.md (addsi3_flags): New expander.
838	(adddi3): Rewrite as expander.
839	(adc_internal, *adc_flags, adddi3_internal): New patterns.
840	(subsi3_flags): New expander.
841	(subdi3): Rewrite as expander.
842	(sbb_internal, *sbb_flags, subdi3_internal): New patterns.
843
844	* config/rx/rx.c (RX_BUILTIN_SAT): Remove.
845	(rx_init_builtins): Remove sat builtin.
846	(rx_expand_builtin): Likewise.
847	* config/rx/rx.md (ssaddsi3): New.
848	(*sat): Rename from sat.  Represent the CC_REG input.
849
850	* config/rx/predicates.md (rshift_operator): New.
851	* config/rx/rx.c (rx_expand_insv): Remove.
852	* config/rx/rx-protos.h: Update.
853	* config/rx/rx.md (*bitset): Rename from bitset.  Swap the ashift
854	operand to the canonical position.
855	(*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
856	(*bitclr, *bitclr_in_memory): Similarly.
857	(*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
858	(insv): Retain the zero_extract in the expansion.
859
860	* config/rx/rx.md (bswapsi2): Use = not + for output reload.
861	(bswaphi2, bitinvert, revw): Likewise.
862
863	* config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
864	(gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
865	* config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
866	(stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
867	(bitset, bitset_in_memory): Likewise.
868	(bitinvert, bitinvert_in_memory): Likewise.
869	(bitclr, bitclr_in_memory): Likewise.
870	(insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
871	(rx_strend, rx_cmpstrn): Likewise.
872	(rx_setmem): Likewise.  Make the source BLKmode to match the dest.
873	(bitop peep2 patterns): Remove.
874
875	* config/rx/rx.c (rx_match_ccmode): New.
876	* config/rx/rx-protos.h: Update.
877	* config/rx/rx.md (abssi2): Clobber, don't set flags.
878	(addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
879	(rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
880	(subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
881	(fix_truncsfsi2, floatsisf2): Likewise.
882	(*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
883	(*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
884	(*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
885	(*subsi3_flags, *xorsi3_flags): New.
886
887	* config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
888
889	* config/rx/rx.c (rx_print_operand): Remove workaround for
890	unsplit comparison operations.
891
892	* config/rx/rx.md (movsicc): Split after reload.
893	(*movsicc): Merge *movsieq and *movsine via match_operator.
894	(*stcc): New pattern.
895
896	* config/rx/rx.c (rx_float_compare_mode): Remove.
897	* config/rx/rx.h (rx_float_compare_mode): Remove.
898	* config/rx/rx.md (cstoresi4): Split after reload.
899	(*sccc): New pattern.
900
901	* config/rx/predicates.md (label_ref_operand): New.
902	(rx_z_comparison_operator): New.
903	(rx_zs_comparison_operator): New.
904	(rx_fp_comparison_operator): New.
905	* config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
906	Validate that the flags are set properly for the comparison.
907	(rx_gen_cond_branch_template): Remove.
908	(rx_cc_modes_compatible): Remove.
909	(mode_from_flags): New.
910	(flags_from_code): Rename from flags_needed_for_conditional.
911	(rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
912	(rx_select_cc_mode): Likewise.
913	(rx_split_fp_compare): New.
914	(rx_split_cbranch): New.
915	* config/rx/rx.md (most_cond, zs_cond): Remove iterators.
916	(*cbranchsi4): Use match_operator and rx_split_cbranch.
917	(*cbranchsf4): Similarly.
918	(*cbranchsi4_tst): Rename from *tstbranchsi4_<code>.  Use
919	match_operator and rx_split_cbranch.
920	(*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
921	tstbranchsi4m_ne.  Use match_operator and rx_split_cbranch.
922	(*cmpsi): Rename from cmpsi.
923	(*tstsi): Rename from tstsi.
924	(*cmpsf): Rename from cmpsf; use CC_Fmode.
925	(*conditional_branch): Rename from conditional_branch.
926	(*reveresed_conditional_branch): Remove.
927	(b<code>): Remove expander.
928	* config/rx/rx-protos.h: Update.
929
930	* config/rx/rx.c (rx_compare_redundant): Remove.
931	* config/rx/rx.md (cmpsi): Don't use it.
932	* config/rx/rx-protos.h: Update.
933
934	* config/rx/rx-modes.def (CC_F): New mode.
935	* config/rx/rx.c (rx_select_cc_mode): New.
936	* config/rx/rx.h (SELECT_CC_MODE): Use it.
937	* config/rx/rx-protos.h: Update.
938
9392011-02-01  Richard Guenther  <rguenther@suse.de>
940
941	PR tree-optimization/47541
942	* tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
943	sure to have a field at offset zero.
944
9452011-01-31  Nathan Froyd  <froydnj@codesourcery.com>
946
947	Backport from mainline:
948	2010-12-30  Nathan Froyd  <froydnj@codesourcery.com>
949
950	PR target/44606
951	* reload1.c (choose_reload_regs): Don't look for equivalences for
952	output reloads of constant loads.
953
9542011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
955
956	* doc/install.texi (hppa-hp-hpux10): Remove references to HP
957	support sites.
958
9592011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
960
961	* doc/install.texi: Update copyright years.
962
9632011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
964
965	* doc/install.texi (Binaries): Remove outdated reference for
966	Motorola 68HC11/68HC12 downloads.
967
9682011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
969
970	* doc/extend.texi (Thread-Local): Adjust reference to Ulrich
971	Drepper's paper.
972
9732011-01-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
974
975	Backport from mainline:
976	2010-08-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
977
978	PR boehm-gc/34544
979	* gthr-posix.h (__gthread_active_init): Delete.
980	(__gthread_active_p): Do activity check here.
981	Don't include errno.h on hppa-hpux.  Update comment.
982	* gthr-posix95.h (__gthread_active_init): Delete.
983	(__gthread_active_p): Do activity check here.
984	Don't include errno.h on hppa-hpux.  Update comment.
985	* config.gcc (hppa[12]*-*-hpux11*): Define extra_parts.
986	* config/pa/pa64-hpux.h (LIB_SPEC): When -static is specified, only
987	add -lpthread when -mt or -pthread is specified.
988	* config/pa/pa-hpux11.h (LIB_SPEC): likewise.
989	(LINK_GCC_C_SEQUENCE_SPEC): Define.
990	* config/pa/t-pa-hpux11 (LIBGCCSTUB_OBJS): Define.
991	(stublib.c, pthread_default_stacksize_np-stub.o,
992	pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o,
993	$(T)libgcc_stub.a): Add methods.
994	* config/pa/t-pa64 (LIBGCCSTUB_OBJS): Add pthread stubs.
995	(stublib.c, pthread_default_stacksize_np-stub.o,
996	pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o): Add methods.
997	* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
998	pthread_mutex_unlock): New stubs.
999
10002011-01-26  Eric Botcazou  <ebotcazou@adacore.com>
1001
1002	PR rtl-optimization/44469
1003	* cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
1004	after removing trivially dead basic blocks.
1005
10062011-01-25  Richard Guenther  <rguenther@suse.de>
1007
1008	PR tree-optimization/47411
1009	Backport from mainline
1010	2010-06-30  Michael Matz  <matz@suse.de>
1011
1012	PR bootstrap/44699
1013	* tree-vrp.c (vrp_finalize): Deal with changing num_ssa_names.
1014
10152011-01-21  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
1016
1017	Backport from mainline.
1018	2010-09-08  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
1019
1020	PR target/44392
1021	* config/arm/arm.md (bswapsi2): Handle condition correctly
1022	for armv6 and optimize_size.
1023
10242011-01-21  Richard Guenther  <rguenther@suse.de>
1025
1026	PR tree-optimization/47365
1027	* tree-ssa-sccvn.h (vn_lookup_kind): Declare.
1028	(vn_reference_lookup_pieces): Adjust.
1029	(vn_reference_lookup): Likewise.
1030	* tree-ssa-sccvn.c (vn_walk_kind): New static global.
1031	(vn_reference_lookup_3): Only look through kills if in
1032	VN_WALKREWRITE mode.
1033	(vn_reference_lookup_pieces): Adjust.
1034	(vn_reference_lookup): Likewise.
1035	(visit_reference_op_load): Likewise.
1036	(visit_reference_op_store): Likewise.
1037	* tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
1038	(compute_avail): Likewise.
1039	(eliminate): Likewise.
1040
10412011-01-20  Richard Guenther  <rguenther@suse.de>
1042
1043	PR tree-optimization/47167
1044	* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
1045	Revert previous change, only avoid enumeral type changes.
1046
10472011-01-17  H.J. Lu  <hongjiu.lu@intel.com>
1048
1049	Backport from mainline
1050	2011-01-17  H.J. Lu  <hongjiu.lu@intel.com>
1051
1052	PR target/47318
1053	* config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
1054	__m128i.
1055	(_mm_maskstore_pd): Likewise.
1056	(_mm_maskload_ps): Likewise.
1057	(_mm_maskstore_ps): Likewise.
1058	(_mm256_maskload_pd): Change mask to __m256i.
1059	(_mm256_maskstore_pd): Likewise.
1060	(_mm256_maskload_ps): Likewise.
1061	(_mm256_maskstore_ps): Likewise.
1062
1063	* config/i386/i386-builtin-types.def: Updated.
1064	(ix86_expand_special_args_builtin): Likewise.
1065
1066	* config/i386/i386.c (bdesc_special_args): Update
1067	__builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
1068	__builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
1069	__builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
1070	__builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
1071
1072	* config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
1073	Use <avxpermvecmode> on mask register.
1074	(avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
1075
10762011-01-17  Olivier Hainque  <hainque@adacore.com>
1077	    Michael Haubenwallner  <michael.haubenwallner@salomon.at>
1078	    Eric Botcazou  <ebotcazou@adacore.com>
1079
1080	PR target/46655
1081	* xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
1082	if <= USHRT_MAX in 32-bit mode.
1083
10842011-01-17  Richard Guenther  <rguenther@suse.de>
1085
1086	Backport from mainline
1087	PR tree-optimization/47286
1088	* tree-ssa-structalias.c (new_var_info): Register variables
1089	are global.
1090
1091	PR tree-optimization/44592
1092	* tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Copy
1093	from trunk.
1094
10952011-01-16  Jakub Jelinek  <jakub@redhat.com>
1096
1097	Backport from mainline
1098	2011-01-07  Jakub Jelinek  <jakub@redhat.com>
1099
1100	PR target/47201
1101	* config/i386/i386.c (ix86_delegitimize_address): If
1102	simplify_gen_subreg fails, return orig_x.
1103
1104	2011-01-06  Jakub Jelinek  <jakub@redhat.com>
1105
1106	PR c/47150
1107	* c-convert.c (convert): When converting a complex expression
1108	other than COMPLEX_EXPR to a different complex type, ensure
1109	c_save_expr is called instead of save_expr, unless in_late_binary_op.
1110	* c-typeck.c (convert_for_assignment): Set in_late_binary_op also
1111	when converting COMPLEX_TYPE.
1112
1113	2010-12-21  Jakub Jelinek  <jakub@redhat.com>
1114
1115	PR target/46880
1116	* config/i386/sse.md (sse2_loadlpd, sse2_movsd): Fix shufpd source
1117	operand.
1118
1119	PR middle-end/45852
1120	* expr.c (store_expr): Ignore alt_rtl if equal to target,
1121	but has side-effects.
1122
1123	2010-12-16  Jakub Jelinek  <jakub@redhat.com>
1124
1125	PR tree-optimization/43655
1126	* tree-ssa-ter.c (is_replaceable_p): Don't use
1127	gimple_references_memory_p for -O0, instead check for load
1128	by looking at rhs.
1129
1130	PR debug/46893
1131	* cfgexpand.c (expand_debug_expr): If GET_MODE (op0) is VOIDmode,
1132	use TYPE_MODE (TREE_TYPE (tem)) instead of mode1.
1133
1134	2010-12-10  Jakub Jelinek  <jakub@redhat.com>
1135
1136	PR rtl-optimization/46804
1137	* regmove.c (optimize_reg_copy_3): Look for REG_EQUAL note
1138	on the setter of src_reg rather than on insn.  If it is
1139	equal to the setter's original SET_SRC, replace it with its
1140	zero or sign extension instead of dropping it.
1141
1142	PR rtl-optimization/46865
1143	* rtl.c (rtx_equal_p_cb, rtx_equal_p): For last operand of
1144	ASM_OPERANDS and ASM_INPUT if integers are different,
1145	call locator_eq.
1146	* jump.c (rtx_renumbered_equal_p): Likewise.
1147
1148	PR tree-optimization/46864
1149	* tree-ssa-loop-im.c (loop_suitable_for_sm): Return false even
1150	when there are EDGE_EH exit edges.
1151
1152	2010-12-09  Jakub Jelinek  <jakub@redhat.com>
1153
1154	PR target/41082
1155	* config/rs6000/rs6000.c (rs6000_expand_vector_extract): Use stvx
1156	instead of stve*x.
1157	(altivec_expand_stv_builtin): For op0 use mode of operand 1 instead
1158	of operand 0.
1159	* config/rs6000/altivec.md (VI_scalar): New mode attr.
1160	(altivec_stve<VI_char>x, *altivec_stvesfx): Use scalar instead of
1161	vector mode for operand 0, put operand 1 into UNSPEC.
1162
11632011-01-13  Nick Clifton  <nickc@redhat.com>
1164
1165	Import this fix from the mainline:
1166	2010-10-19  Nick Clifton  <nickc@redhat.com>
1167
1168	* config/rx/rx.c (rx_function_value): Small integer types are
1169	promoted to SImode.
1170	(rx_promote_function_mode): New function.
1171	(TARGET_PROMOTE_FUNCTION_MODE): Define.
1172
11732011-01-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1174
1175	Backport from mainline:
1176	2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1177
1178	PR target/43309
1179	* config/i386/i386.c (legitimize_tls_address)
1180	<TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
1181	* config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
1182	(tls_initial_exec_64_sun): New pattern.
1183
11842011-01-03  Eric Botcazou  <ebotcazou@adacore.com>
1185
1186	Backport from mainline
1187	2010-12-30  Eric Botcazou  <ebotcazou@adacore.com>
1188
1189	PR target/47038
1190	* config/sparc/sparc.c (sparc_file_end): Call resolve_unique_section
1191	on the GOT helper if USE_HIDDEN_LINKONCE.
1192
1193	2010-12-02  Eric Botcazou  <ebotcazou@adacore.com>
1194
1195	PR target/46685
1196	* config/sparc/sparc.c (can_use_mov_pic_label_ref): New predicate.
1197	(sparc_expand_move): Call it to decide whether to emit the special
1198	mov{si,di}_pic_label_ref patterns.
1199	(sparc_legitimize_pic_address): Call it to decide whether to emit
1200	the regular PIC sequence for labels.  Fix long line.
1201	(sparc_file_end): Set is_thunk for the PIC helper.
1202
12032010-12-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1204
1205	* config/pa/pa.md: Add ",*" condition to 64-bit add/subtract boolean
1206	patterns.
1207
12082010-12-27  Yao Qi  <yao@codesourcery.com>
1209
1210	Backport from mainline:
1211	2010-10-14  Yao Qi  <yao@codesourcery.com>
1212
1213	PR target/45447
1214	* config/arm/arm.c (arm_build_builtin_va_list): Assign
1215	va_list_name to TYPE_STUB_DECL (va_list_type).
1216
12172010-12-23  Sebastian Pop  <sebastian.pop@amd.com>
1218	    Richard Guenther  <rguenther@suse.de>
1219
1220	PR tree-optimization/46758
1221	* graphite-sese-to-poly.c (scan_tree_for_params_right_scev): Use
1222	tree_int_to_gmp instead of int_cst_value.
1223	(scan_tree_for_params_int): Same.
1224	(scan_tree_for_params): Same.
1225	(pdr_add_data_dimensions): Use ppl_set_inhomogeneous_tree.
1226
12272010-12-23  Sebastian Pop  <sebastian.pop@amd.com>
1228
1229	Backport from mainline
1230	Fix PR45758: reset scevs before Graphite.
1231	2010-09-24  Sebastian Pop  <sebastian.pop@amd.com>
1232
1233	PR tree-optimization/45552
1234	* graphite.c (graphite_initialize): Call scev_reset.
1235
12362010-12-23  Sebastian Pop  <sebastian.pop@amd.com>
1237
1238	PR tree-optimization/43023
1239	* tree-data-ref.c (mem_write_stride_of_same_size_as_unit_type_p):
1240	Removed.
1241	(stores_zero_from_loop): Call stmt_stores_zero.
1242	(stmt_with_adjacent_zero_store_dr_p): New.
1243	* tree-data-ref.h (stmt_with_adjacent_zero_store_dr_p): Declared.
1244	(stride_of_unit_type_p): New.
1245	* tree-loop-distribution.c (generate_memset_zero): Do not return a
1246	boolean.  Call gcc_assert on stride_of_unit_type_p.
1247	(generate_builtin): Call stmt_stores_zero.
1248	(rdg_flag_all_uses): Removed.
1249	(rdg_flag_similar_memory_accesses): Removed.
1250	(build_rdg_partition_for_component): Removed parameter
1251	other_stores.  Removed call to rdg_flag_similar_memory_accesses.
1252	(can_generate_builtin): New.
1253	(similar_memory_accesses): New.
1254	(fuse_partitions_with_similar_memory_accesses): New.
1255	(rdg_build_partitions): Call
1256	fuse_partitions_with_similar_memory_accesses.
1257
12582010-12-21  Martin Jambor  <mjambor@suse.cz>
1259
1260	Backport from mainline:
1261	2010-12-09  Martin Jambor  <mjambor@suse.cz>
1262
1263	PR middle-end/46734
1264	* tree-sra.c (splice_param_accesses): Check that there are not
1265	multiple ADDRESSABLE types.
1266
12672010-12-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1268
1269	Backport from mainline:
1270	2010-12-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1271
1272	PR target/46915
1273	* config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead
1274	of next_real_insn.  Search forward checking for both ASM_INPUT and
1275	ASM_OPERANDS asms until exit condition is found.
1276	(branch_needs_nop_p): Likewise.
1277	(use_skip_p): New function.
1278	(output_cbranch): Use use_skip_p.
1279	(output_bb, output_bvb): Likewise.
1280
12812010-12-19  Eric Botcazou  <ebotcazou@adacore.com>
1282
1283	PR target/46729
1284	* config/sparc/sparc.h (GLOBAL_OFFSET_TABLE_REGNUM): New macro.
1285	(PIC_OFFSET_TABLE_REGNUM): Rewrite in terms of above macro.
1286	* config/sparc/sparc.c (pic_helper_needed): Delete.
1287	(global_offset_table): Likewise.
1288	(pic_helper_symbol): Rename to...
1289	(got_helper_rtx): ...this.
1290	(global_offset_table_rtx): New global variable.
1291	(sparc_got_symbol): Likewise.
1292	(sparc_got): New static function.
1293	(check_pic): Use local variable and call sparc_got.
1294	(sparc_tls_symbol): Initialize to NULL_RTX.
1295	(sparc_tls_got): In non-PIC mode, reload the GOT register for Sun TLS
1296	and 32-bit ABI and copy the GOT symbol to a new register otherwise.
1297	(get_pc_thunk_name): Rename local variable.
1298	(gen_load_pcrel_sym): New wrapper around load_pcrel_sym{si,di}.
1299	(load_pic_register): Rename to...
1300	(load_got_register): ...this.  Adjust and call gen_load_pcrel_sym.
1301	(sparc_expand_prologue): Do not test flag_pic.
1302	(sparc_output_mi_thunk): Use pic_offset_table_rtx directly.
1303	(sparc_file_end): Test got_helper_rtx instead of pic_helper_needed.
1304	Rename local variable and do not call get_pc_thunk_name again.
1305	* config/sparc/sparc.md (load_pcrel_sym): Add operand #3.
1306
13072010-12-18  Alexandre Oliva  <aoliva@redhat.com>
1308
1309	PR debug/46756
1310	* jump.c (mark_all_labels): Skip debug insns.
1311
13122010-12-18  Alexandre Oliva  <aoliva@redhat.com>
1313
1314	PR debug/46782
1315	* cfgcleanup.c (try_forward_edges): Skip debug insns.
1316
13172010-12-16  Eric Botcazou  <ebotcazou@adacore.com>
1318
1319	* tree-ssa-sccvn.c (vn_reference_lookup_3): Always punt if the call to
1320	get_ref_base_and_extent returns -1 as the max size.
1321
13222010-12-16  Richard Guenther  <rguenther@suse.de>
1323
1324	* DEV-PHASE: Set back to prerelease.
1325	* BASE-VER: Bump to 4.5.3.
1326
13272010-12-16  Release Manager
1328
1329	* GCC 4.5.2 released.
1330
13312010-12-07  Jakub Jelinek  <jakub@redhat.com>
1332
1333	Backport from mainline
1334	2010-12-06  Jakub Jelinek  <jakub@redhat.com>
1335 
1336	PR target/43897
1337	* config/ia64/ia64.c (rtx_needs_barrier): Handle asm CLOBBER
1338	as a store into that register.
1339
1340	PR rtl-optimization/46777
1341	* cfglayout.c (duplicate_insn_chain): Avoid duplicating
1342	also barrier after tablejump.
1343
1344	2010-11-24  Jakub Jelinek  <jakub@redhat.com>
1345
1346	PR rtl-optimization/46614
1347	* sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP_P): Define.
1348	 (deps_analyze_insn): Mark JUMP_INSNs in
1349	last_pending_memory_flush that weren't added through
1350	flush_pending_lists with NON_FLUSH_JUMP_KIND.
1351	(sched_analyze_2, sched_analyze_insn): Check NON_FLUSH_JUMP_P
1352	on INSN_LIST instead of JUMP_P check on its operand.
1353	* sched-rgn.c (concat_INSN_LIST): Copy over REG_NOTE_KIND.
1354
1355	PR middle-end/46629
1356	* cfgexpand.c (maybe_cleanup_end_of_block): Test NEXT_INSN (insn)
1357	instead of insn with any_condjump_p.
1358
1359	2010-11-23  Jakub Jelinek  <jakub@redhat.com>
1360
1361	PR middle-end/46499
1362	* cfgexpand.c (maybe_cleanup_end_of_block): Remove also BARRIERs
1363	following unconditional jumps.
1364
13652010-12-07  Sebastian Pop  <sebastian.pop@amd.com>
1366
1367	Backport from mainline:
1368	2010-05-07  Sebastian Pop  <sebastian.pop@amd.com>
1369
1370	PR tree-optimization/44676
1371	* graphite-sese-to-poly.c (loop_entry_phi_arg): Renamed
1372	phi_arg_in_outermost_loop.
1373	(remove_simple_copy_phi): Call phi_arg_in_outermost_loop.
1374	(remove_invariant_phi): Same.
1375
13762010-12-07  Jakub Jelinek  <jakub@redhat.com>
1377
1378	Backport from mainline
1379	2010-11-19  Jakub Jelinek  <jakub@redhat.com>
1380
1381	PR target/45870
1382	* dwarf2out.c (const_ok_for_output_1): Don't complain about
1383	non-delegitimized TLS UNSPECs.
1384
1385	2010-11-18  Jakub Jelinek  <jakub@redhat.com>
1386
1387	PR middle-end/46534
1388	* builtins.c (fold_builtin_printf): Don't copy and modify string
1389	before build_string_literal, instead modify what
1390	build_string_literal returned.
1391
1392	2010-11-17  Jakub Jelinek  <jakub@redhat.com>
1393
1394	PR rtl-optimization/46440
1395	* combine.c (update_cfg_for_uncondjump): When changing
1396	an indirect jump into unconditional jump, remove BARRIERs
1397	from bb's footer.
1398
1399	2010-11-16  Jakub Jelinek  <jakub@redhat.com>
1400
1401	PR c++/46401
1402	* c-common.c (warning_candidate_p): Don't track non-const calls
1403	or STRING_CSTs.
1404
14052010-12-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1406
1407	Backport from mainline:
1408	2010-07-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1409
1410	* doc/sourcebuild.texi (Add Options): Document tls.
1411
14122010-12-06  Richard Guenther  <rguenther@suse.de>
1413
1414	PR tree-optimization/46806
1415	* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Do not
1416	coalesce different types.
1417
14182010-12-05  Richard Guenther  <rguenther@suse.de>
1419	    Ira Rosen  <irar@il.ibm.com>
1420
1421	PR tree-optimization/46663
1422	* tree-vect-patterns.c (vect_recog_pow_pattern): Check that
1423	FUNCTION_DECL exists and that it's a builtin.
1424
14252010-12-03  Jason Merrill  <jason@redhat.com>
1426
1427	PR debug/46123
1428	* dwarf2out.c (gen_type_die_with_usage): Don't put local types in
1429	a declaration DIE.
1430
14312010-12-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1432
1433	Backport from mainline:
1434	2010-09-15  Olivier Hainque  <hainque@adacore.com>
1435		    Jose Ruiz  <ruiz@adacore.com>
1436
1437	* config/alpha/osf.h (MD_UNWIND_SUPPORT): Define.
1438	* config/alpha/osf-unwind.h: New file.
1439
14402010-12-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1441
1442	Backport from mainline:
1443	2010-11-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1444
1445	* config/mips/iris6.h [!IRIX_USING_GNU_LD]
1446	(SUPPORTS_INIT_PRIORITY): Define.
1447
14482010-12-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1449
1450	Backport from mainline:
1451	2010-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1452
1453	* configure.ac (*-*-irix6*): Disable set_have_as_tls.
1454	(*-*-osf*): Likewise.
1455	* configure: Regenerate.
1456
14572010-11-29  H.J. Lu  <hongjiu.lu@intel.com>
1458
1459	Backport from mainline
1460	PR middle-end/46651
1461	2010-07-22  Sebastian Pop  <sebastian.pop@amd.com>
1462
1463	* graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Use
1464	SSA_NAME_DEF_STMT only on SSA_NAMEs.
1465
14662010-11-29  Zdenek Dvorak  <rakdver@kam.uniff.cz>
1467
1468	PR tree-optimization/46675
1469	* tree-ssa-loop-niter.c (split_to_var_and_offset): Avoid overflow
1470	in offset calculation.
1471
14722010-11-29  Alexandre Oliva  <aoliva@redhat.com>
1473
1474	PR debug/46258
1475	* tree-cfg.c (replace_uses_by): Don't mark BBs as altered on
1476	debug stmts.
1477
14782010-11-22  Uros Bizjak  <ubizjak@gmail.com>
1479
1480	PR middle-end/43057
1481	* fold-const.c (pedantic_non_lvalue_loc): Unshare x before
1482	setting location.
1483
14842010-11-21  Richard Henderson  <rth@redhat.com>
1485
1486	PR rtl-optimization/46571
1487	* gcse.c (hash_scan_set): Use next_nonnote_nondebug_insn.
1488	(compute_hash_table_work): Use NONDEBUG_INSN_P.
1489
14902010-11-21  Eric Botcazou  <ebotcazou@adacore.com>
1491
1492	* config/mips/mips.c (machine_function): Rename load_label_length to
1493	load_label_num_insns.
1494	(mips_load_label_length): Rename to...
1495	(mips_load_label_num_insns): ...this.  Adjust to first renaming.
1496	(mips_adjust_insn_length): Adjust to second renaming.  Fix thinko.
1497
14982010-11-20  Eric Botcazou  <ebotcazou@adacore.com>
1499
1500	PR target/31100
1501	* config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP): Move to...
1502	* config/sparc/sol2.h (ASM_OUTPUT_ALIGN_WITH_NOP): ...here.
1503	* config/sparc/sol2-gas.h (ASM_OUTPUT_ALIGN_WITH_NOP): Undefine.
1504
15052010-11-19  Joseph Myers  <joseph@codesourcery.com>
1506
1507	PR c/46547
1508	* c-common.c (in_late_binary_op): Define.
1509	(c_common_truthvalue_conversion): Check in_late_binary_op before
1510	calling c_save_expr.
1511	* c-common.h (in_late_binary_op): Declare.
1512	* c-tree.h (in_late_binary_op): Move to c-common.h.
1513	* c-typeck.c (in_late_binary_op): Move to c-common.c.
1514
15152010-11-17  Richard Guenther  <rguenther@suse.de>
1516
1517	PR tree-optimization/46498
1518	* tree-ssa-dce.c (perform_tree_ssa_dce): Compute dominator info.
1519
15202010-11-17  Alan Modra  <amodra@gmail.com>
1521
1522	PR target/45807
1523	* config/rs6000/aix.h (SETUP_FRAME_ADDRESSES): Delete.
1524	* config/rs6000/linux64.h (SETUP_FRAME_ADDRESSES): Delete.
1525	* config/rs6000/rs6000-protos.h (rs6000_aix_emit_builtin_unwind_init):
1526	Delete.
1527	* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init): Delete.
1528	(rs6000_emit_prologue): Don't just create frame save info for r2,
1529	actually save r2.
1530
15312010-11-17  Alan Modra  <amodra@gmail.com>
1532
1533	PR target/44266
1534	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
1535	emit_library_call machinery to set up __tls_get_addr calls.
1536
15372010-11-16  Eric Botcazou  <ebotcazou@adacore.com>
1538
1539	PR rtl-optimization/46315
1540	* rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
1541	* rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
1542	extracted from...
1543	* dce.c (delete_corresponding_reg_eq_notes): ...here.  Rename into...
1544	(remove_reg_equal_equiv_notes_for_defs): ...this.
1545	(delete_unmarked_insns): Adjust to above renaming.
1546	* ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
1547	referring to registers set in the insns being moved, if any.
1548
1549	* df-core.c (df_ref_dump): New function extracted from...
1550	(df_refs_chain_dump): ...here.  Call it.
1551	(df_regs_chain_dump): Likewise.
1552	* df-problems.c (df_chain_dump): Print 'e' for uses in notes.
1553	* df-scan.c (df_scan_start_dump): Likewise.  Fix long line.
1554
15552010-11-16  Richard Guenther  <rguenther@suse.de>
1556
1557	PR tree-optimization/44545
1558	* tree-ssa-reassoc.c (linearize_expr_tree): Possibly throwing
1559	statements are not reassociatable.
1560	(reassociate_bb): Likewise.
1561
15622010-11-15  Jakub Jelinek  <jakub@redhat.com>
1563
1564	PR tree-optimization/46491
1565	Backport from mainline
1566
1567	2010-05-14  Jan Hubicka  <jh@suse.cz>
1568	* ipa-pure-const.c (check_stmt): Do not use memory_identifier_string.
1569
15702010-11-12  Olivier Hainque  <hainque@adacore.com>
1571
1572	* config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Rewrite
1573	switch on insn codes as sequence of ifs.
1574
15752010-11-12  Alexander Monakov  <amonakov@ispras.ru>
1576
1577	Backport from mainline:
1578	2010-08-19  Andrey Belevantsev  <abel@ispras.ru>
1579
1580	PR rtl-optimization/44691
1581	* sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
1582	is not a register.
1583
15842010-11-12  Richard Guenther  <rguenther@suse.de>
1585
1586	Backport from mainline
1587	2010-11-09  Richard Guenther  <rguenther@suse.de>
1588
1589	PR tree-optimization/46355
1590	* tree-loop-distribution.c (tree_loop_distribution): Do not
1591	distribute loops without a single exit.
1592
1593	2010-11-02  Richard Guenther  <rguenther@suse.de>
1594
1595	PR tree-optimization/46177
1596	* tree-loop-distribution.c (prop_phis): Use
1597	mark_virtual_phi_result_for_renaming.
1598
1599	2010-11-09  Richard Guenther  <rguenther@suse.de>
1600
1601	PR tree-optimization/46177
1602	* tree-loop-distribution.c (prop_phis): Remove.
1603	(generate_builtin): Re-use the old loop exit edge to avoid
1604	needing to update PHI nodes.
1605
16062010-11-11  Jakub Jelinek  <jakub@redhat.com>
1607
1608	Backport from mainline
1609	2010-11-05  Jakub Jelinek  <jakub@redhat.com>
1610
1611	PR c/44772
1612	* c-decl.c (warn_cxx_compat_finish_struct): Don't call
1613	pointer_set_contains if DECL_NAME is NULL.
1614
1615	PR tree-optimization/46099
1616	* tree-parloops.c (take_address_of): Add GSI argument.  Return NULL
1617	if it is NULL and uid wasn't found in the hash table.  Just fold the
1618	result if it is NULL otherwise.  Insert other potentially needed
1619	stmts right before current stmt instead of on the entry edge.
1620	(struct elv_data): Add gsi and reset fields.
1621	(eliminate_local_variables_1): Adjust caller.  If take_address_of
1622	failed for debug stmt, set dta->reset and return.
1623	(eliminate_local_variables_stmt): Change STMT argument for GSI,
1624	pass GSI through to the callback, handle resetting of debug stmts.
1625	(eliminate_local_variables): Adjust caller.  Process debug stmts
1626	in second phase.
1627
1628	PR middle-end/43690
1629	* gimplify.c (gimplify_asm_expr): If a "m" input is a
1630	{pre,post}{in,de}crement, fail.
1631
1632	2010-11-03  Jakub Jelinek  <jakub@redhat.com>
1633
1634	PR tree-optimization/46165
1635	* tree-ssa-pre.c (eliminate): Return TODO_cleanup_cfg if changing
1636	a normal call into noreturn call.
1637
1638	PR tree-optimization/46107
1639	* cfgloopmanip.c (loop_version): Set irred_flag back into entry->flags
1640	if cfg_hook_duplicate_loop_to_header_edge failed.
1641
16422010-11-10  Uros Bizjak  <ubizjak@gmail.com>
1643
1644	PR middle-end/46419
1645	* config/i386/xmmintrin.h (_mm_cvtpi16_ps): Swap __hisi and __losi.
1646	(_mm_cvtpu16_ps): Ditto.
1647
16482010-11-09  Sebastian Pop  <sebastian.pop@amd.com>
1649
1650	PR tree-optimization/45314
1651	Backport of revision 163132.
1652	* graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Always insert out
1653	of SSA copies on edges except for loop->latch.
1654
16552010-11-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
1656
1657	PR rtl-optimization/46237
1658	* ira-conflicts.c (ira_build_conflicts): Record conflicts for call
1659	saved hard regs if they might get partially clobbered.
1660
16612010-11-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
1662
1663	PR debug/45939
1664	* var-tracking.c (emit_note_insn_var_location): Make sure that
1665	call related var location notes come before the normal ones.
1666
16672010-11-04  Uros Bizjak  <ubizjak@gmail.com>
1668
1669	Revert:
1670	2010-10-30  Uros Bizjak  <ubizjak@gmail.com>
1671
1672	PR middle-end/44569
1673	* lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
1674	determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
1675
16762010-11-04  Alan Modra  <amodra@gmail.com>
1677
1678	* config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
1679	(rs6000_emit_load_toc_table): Don't use rs6000_pic_labelno when
1680	TARGET_SECURE_PLT.
1681	* config/rs6000/sysv4.h (rs6000_pic_labelno): Don't declare.
1682	* config/rs6000/rs6000.md (load_toc_v4_PIC_3b): Use "b" constraint
1683	on input, "r" on output.
1684
16852010-11-02  Ira Rosen  <irar@il.ibm.com>
1686
1687	PR tree-optimization/45902
1688	* tree-vectorizer.h (enum stmt_vec_info_type): Add new value for shift.
1689	(vect_get_slp_defs): Add arguments.
1690	* tree-vect-stmts.c (cost_for_stmt): Handle shifts.
1691	(vect_get_vec_def_for_operand): Use operand's
1692	type to determine number of units in the created vector.
1693	(vect_get_vec_defs): Pass scalar operands to vect_get_slp_defs.
1694	(vectorizable_shift): New function.
1695	(vectorizable_operation): Move code that handles shifts to
1696	vectorizable_shift.
1697	(vectorizable_type_demotion): Pass scalar operands to
1698	vect_get_slp_defs.
1699	(vectorizable_type_promotion, vectorizable_store): Likewise.
1700	(vect_analyze_stmt): Call vectorizable_shift.
1701	(vect_transform_stmt): Likewise.
1702	* tree-vect-slp.c (vect_get_constant_vectors): Add new argument.
1703	Use it as the operand to create vectors except for stores.
1704	(vect_get_slp_defs): Add new arguments. Pass them to
1705	vect_get_constant_vectors.
1706
17072010-10-30  Uros Bizjak  <ubizjak@gmail.com>
1708
1709	PR middle-end/44569
1710	* lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
1711	determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
1712
17132010-10-30  Uros Bizjak  <ubizjak@gmail.com>
1714
1715	PR target/46153
1716	* config/i386/sse.md (sse_movhlps_exp): Use destination
1717	returned from ix86_fixup_binary_operands to expand insn.
1718	(sse_movlhps_exp): Ditto.
1719	(sse_loadhps_exp): Ditto.
1720	(sse_loadlps_exp): Ditto.
1721	(sse2_loadhpd_exp): Ditto.
1722	(sse2_loadlpd_exp): Ditto.
1723
17242010-10-29  Richard Henderson  <rth@redhat.com>
1725
1726	PR rtl-opt/46226
1727	* stmt.c (expand_asm_operands): Call do_pending_stack_adjust
1728	for asm goto.
1729
17302010-10-27  Eric Botcazou  <ebotcazou@adacore.com>
1731
1732	* config/sparc/sol2-unwind.h (sparc64_fallback_frame_state): Adjust
1733	for newer Solaris 10 release.
1734	(sparc_fallback_frame_state): Likewise.
1735
17362010-10-26  Ira Rosen  <irar@il.ibm.com>
1737
1738	PR tree-optimization/46167
1739	* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Check that
1740	there is basic block for the statement.
1741
17422010-10-24  Eric Botcazou  <ebotcazou@adacore.com>
1743
1744	* reg-stack.c (convert_regs_1): Return boolean value, true if the CFG
1745	has been modified.
1746	(convert_regs_2): Likewise.  Adjust calls to convert_regs_1.
1747	(convert_regs): Adjust calls to convert_regs_2.  Clean up the CFG if
1748	it has been modified.
1749
17502010-10-22  Uros Bizjak  <ubizjak@gmail.com>
1751
1752	PR target/46098
1753	* config/i386/sse.md (*avx_movup<avxmodesuffixf2c><avxmodesuffix>):
1754	Rename from avx_movup<avxmodesuffixf2c><avxmodesuffix>.
1755	(avx_movup<avxmodesuffixf2c><avxmodesuffix>): New expander.
1756	(*<sse>_movup<ssemodesuffixf2c>): Rename from
1757	<sse>_movup<ssemodesuffixf2c>.
1758	(<sse>_movup<ssemodesuffixf2c>): New expander.
1759	(*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>.
1760	(avx_movdqu<avxmodesuffix>): New expander.
1761	(*sse2_movdqu): Rename from sse2_movdqu.
1762	(sse2_movdqu): New expander.
1763
17642010-10-22  Uros Bizjak  <ubizjak@gmail.com>
1765
1766	PR target/45946
1767	* config/i386/i386.md (*pushti2): New insn pattern.
1768	(pushti2 splitter): New insn splitter.
1769
17702010-10-20  Vladimir Makarov  <vmakarov@redhat.com>
1771
1772	PR fortran/42169
1773	* ira-emit.c (store_can_be_removed_p): Return false instead of
1774	gcc_unreachable.
1775
17762010-10-20  Eric Botcazou  <ebotcazou@adacore.com>
1777
1778	* stor-layout.c (skip_simple_constant_arithmetic): New function.
1779	(self_referential_size): Use it instead of skip_simple_arithmetic.
1780
17812010-10-18  Jakub Jelinek  <jakub@redhat.com>
1782
1783	PR middle-end/46019
1784	* fold-const.c (fold_binary_loc): If integer_pow2p has
1785	TREE_INT_CST_LOW zero, look at TREE_INT_CST_HIGH.
1786
17872010-10-16  Eric Botcazou  <ebotcazou@adacore.com>
1788
1789	* gimplify.c (gimplify_type_sizes) <ARRAY_TYPE>: If the type is to be
1790	ignored for debug info purposes, do not clear the DECL_IGNORED_P flag
1791	on the bounds of its domain.
1792	* tree.h (DECL_IGNORED_P): Document effect on TYPE_DECL specifically.
1793
17942010-10-15  Joseph Myers  <joseph@codesourcery.com>
1795
1796	* doc/extend.texi (Variable Length): Don't refer to VLAs not
1797	conforming to C99.
1798
17992010-10-14  Joseph Myers  <joseph@codesourcery.com>
1800
1801	PR c/45969
1802	* c-typeck.c (build_binary_op): Don't try to compute a semantic
1803	type with excess precision for boolean operations.
1804
18052010-10-13  Richard Guenther  <rguenther@suse.de>
1806	    Joern Rennecke  <joern.rennecke@embecosm.com>
1807
1808	PR debug/44832
1809	* tree-ssa-live.c (mark_all_vars_used_1): Set TREE_USED for
1810	LABEL_DECL.
1811	(remove_unused_scope_block_p): Don't drop TREE_USED LABEL_DECLs
1812	unless they have DECL_IGNORED_P set.
1813
18142010-10-13  Richard Guenther  <rguenther@suse.de>
1815
1816	PR tree-optimization/45982
1817	* tree-ssa-structalias.c (make_constraints_to): New function.
1818	(make_constraint_to): Implement in terms of make_constraints_to.
1819	(find_func_aliases): Properly make return values of pure/const
1820	functions escape if they assign to sth that is not a pointer.
1821
18222010-10-11  Alexandre Oliva  <aoliva@redhat.com>
1823
1824	PR debug/45656
1825	* cse.c (cse_extended_basic_block): Preserve cc0 info across
1826	debug isnsn.  Skip them when searching for cc0 setter.
1827	(set_live_p): Skip debug insns when searching for cc0 user.
1828
18292010-10-09  Ralf Cors��pius <ralf.corsepius@rtems.org>
1830
1831	* config.gcc (bfin*-rtems*): Add newlib-stdint.h.
1832	* config.gcc (lm32*-rtems*): Add newlib-stdint.h.
1833
18342010-10-07  Richard Guenther  <rguenther@suse.de>
1835
1836	PR middle-end/45869
1837	* tree-cfg.c (verify_gimple_assign_binary): Allow vector shifts
1838	of pointers.
1839
18402010-10-07  Richard Guenther  <rguenther@suse.de>
1841
1842	Backport from mainline
1843	2010-09-07  Richard Guenther  <rguenther@suse.de>
1844
1845	PR middle-end/45569
1846	* tree-eh.c (operation_could_trap_helper_p): Neither COMPLEX_EXPR
1847	nor CONSTRUCTOR can trap.
1848	* tree-complex.c (update_complex_assignment): Update EH info.
1849
18502010-10-06  Jack Howarth  <howarth@bromo.med.uc.edu>
1851
1852	Backport from mainline
1853	2010-04-26  Jack Howarth <howarth@bromo.med.uc.edu>
1854
1855	PR 43715
1856	* configure.ac: Pass -g for export_sym_check on darwin.
1857	Use "-undefined dynamic_lookup" on darwin.
1858	* configure: Regenerate.
1859
18602010-10-05  Ira Rosen  <irar@il.ibm.com>
1861
1862	PR tree-optimization/45752
1863	* tree-vect-slp.c (vect_get_mask_element): Remove static
1864	variables, make them function arguments.
1865	(vect_transform_slp_perm_load): Pass new arguments to
1866	vect_get_mask_element.
1867
18682010-10-04  Matthias Klose  <doko@ubuntu.com>
1869
1870	* config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the
1871	multilib osdirname if it exists.
1872	* config/s390/t-linux64 (MULTILIB_OSDIRNAMES): Likewise.
1873
18742010-10-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1875
1876	PR target/45820
1877	* config/pa/pa.c (pa_secondary_reload): Handle symbolic operands
1878	earlier.
1879
18802010-10-01  Richard Guenther  <rguenther@suse.de>
1881
1882	PR tree-optimization/45854
1883	* tree-eh.c (cleanup_empty_eh): Avoid degenerate case.
1884
18852010-09-30  Jakub Jelinek  <jakub@redhat.com>
1886
1887	PR target/45843
1888	* config/i386/i386.c (ix86_gimplify_va_arg): Use
1889	INTVAL (XEXP (slot, 1)) as prev_size.
1890
18912010-09-29  Kai Tietz  <kai.tietz@onevision.com>
1892
1893	* config/i386/mingw32.h (TARGET_64BIT): replaced by
1894	TARGET_64BIT_DEFAULT in #if check.
1895
18962010-09-28  Richard Henderson  <rth@redhat.com>
1897
1898	* config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Output 8 bytes
1899	when 8 bytes are requested.
1900
19012010-09-27  Richard Sandiford  <rdsandiford@googlemail.com>
1902
1903	Backport from mainline:
1904
1905	2010-05-19  James E. Wilson  <wilson@codesourcery.com>
1906
1907	PR target/43764
1908	* config/mips/mips.c (mips_call_expr_from_insn): New arg second_call.
1909	Set it.
1910	(mips_annotate_pic_calls): Pass new arg to mips_call_expr_from_insn.
1911	Use it.
1912
19132010-09-27  Richard Sandiford  <rdsandiford@googlemail.com>
1914
1915	PR rtl-optimization/43358
1916	* ira-lives.c (process_single_reg_class_operands): Adjust the costs
1917	of a single hard register, using simplify_subreg_regno to decide
1918	what that register should be.
1919
19202010-09-25  Eric Botcazou  <ebotcazou@adacore.com>
1921
1922	* tree-inline.c (copy_bb): Use GSI_CONTINUE_LINKING when inserting new
1923	statements because of the return slot optimization.
1924
19252010-09-24  Jakub Jelinek  <jakub@redhat.com>
1926
1927	Revert:
1928	2010-09-17  H.J. Lu  <hongjiu.lu@intel.com>
1929
1930	PR middle-end/45234
1931	* calls.c (expand_call): Make sure that all variable sized
1932	adjustments are multiple of preferred stack boundary after
1933	stack alignment.
1934
19352010-09-23  Eric Botcazou  <ebotcazou@adacore.com>
1936
1937	Backport from mainline
1938	2010-09-02  Olivier Hainque  <hainque@adacore.com>
1939
1940	PR middle-end/44763
1941	* ira-color.c (SORTGT): New macro, helper for qsort callbacks.
1942	(allocno_priority_compare_func): Use it instead of a straight
1943	difference computation over priorities.
1944
19452010-09-22  Eric Botcazou  <ebotcazou@adacore.com>
1946
1947	PR java/44095
1948	* config/sparc/linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch
1949	is specified and the suffix of the file isn't ".c".
1950	* config/sparc/linux64.h (ASM_SPEC): Likewise.
1951
19522010-09-22  Eric Botcazou  <ebotcazou@adacore.com>
1953
1954	PR target/35664
1955	* config/sparc/constraints.md ('e'): Return NO_REGS if !TARGET_FPU.
1956	('f'): Likewise.
1957
19582010-09-21  Hans-Peter Nilsson  <hp@axis.com>
1959
1960	PR rtl-optimization/41085
1961	Backport from mainline
1962	2010-07-27  Bernd Schmidt  <bernds@codesourcery.com>
1963
1964	PR rtl-optimization/45051
1965	* reload1.c (delete_output_reload): Use refers_to_regno_p rather
1966	than reg_mentioned_p.
1967
19682010-09-21  Kai Tietz  <kai.tietz@onevision.com>
1969
1970	PR target/45694
1971	* config/i386/i386.c (ix86_expand_prologue): Save r10 in case that
1972	static chain-register is used for 64-bit.
1973
19742010-09-21  Jakub Jelinek  <jakub@redhat.com>
1975
1976	PR middle-end/45678
1977	* expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: If
1978	op0 isn't sufficiently aligned and there is movmisalignM
1979	insn for mode, use it to load op0 into a temporary register.
1980
1981	Backport from mainline
1982	2010-09-20  Jakub Jelinek  <jakub@redhat.com>
1983
1984	PR middle-end/45678
1985	* cfgexpand.c (expand_one_stack_var_at): Limit alignment to
1986	crtl->max_used_stack_slot_alignment.
1987
19882010-09-21  Richard Guenther  <rguenther@suse.de>
1989
1990	PR middle-end/45704
1991	* gimplify.c (gimplify_modify_expr_rhs): Preserve volatileness.
1992
19932010-09-20  Jakub Jelinek  <jakub@redhat.com>
1994
1995	PR rtl-optimization/45728
1996	* expr.c (expand_expr_real_1): If op0 isn't REG or MEM, try
1997	gen_lowpart_common first and if that fails, force_reg first
1998	before calling gen_lowpart.
1999
2000	PR rtl-optimization/45695
2001	* combine.c (try_combine): Don't try to swap the two patterns, if the
2002	chosen order is not possible, just give up.  For HAVE_cc0 targets,
2003	check if XVECEXP (newpat, 0, 0) doesn't use REGs or MEMs set by insns
2004	in between i2 and i3.
2005
20062010-09-20  Eric Botcazou  <ebotcazou@adacore.com>
2007
2008	PR rtl-optimization/42775
2009	* cfgrtl.c (rest_of_pass_free_cfg): Recompute notes if delay slot
2010	scheduling is enabled.
2011
20122010-09-20  H.J. Lu  <hongjiu.lu@intel.com>
2013
2014	Backport from mainline
2015	2010-09-17  H.J. Lu  <hongjiu.lu@intel.com>
2016
2017	PR middle-end/45234
2018	* calls.c (expand_call): Make sure that all variable sized
2019	adjustments are multiple of preferred stack boundary after
2020	stack alignment.
2021
20222010-09-20  Rafael Carre  <rafael.carre@gmail.com>
2023
2024	PR target/45726
2025	* arm.md (arm_movtas_ze): Only enable on machine with MOVT.
2026
20272010-09-20  Richard Guenther  <rguenther@suse.de>
2028
2029	PR tree-optimization/45623
2030	* tree-ssa-structalias.c (get_constraint_for_ptr_offset): Adjust.
2031	(get_constraint_for_component_ref): If computing a constraint
2032	for the rhs handle type punning through unions.
2033	(get_constraint_for_address_of): Adjust.
2034	(get_constraint_for_1): Likewise.
2035	(get_constraint_for): Likewise.
2036	(get_constraint_for_rhs): New function.
2037	(do_structure_copy): Adjust.
2038	(make_constraint_to): Likewise.
2039	(handle_const_call): Likewise.
2040	(find_func_aliases): Likewise.
2041
20422010-09-18  Richard Guenther  <rguenther@suse.de>
2043
2044	PR tree-optimization/45709
2045	* tree-inline.c (copy_phis_for_bb): Delay commit of edge
2046	insertions until after all PHI nodes of the block are processed.
2047
20482010-09-18  H.J. Lu  <hongjiu.lu@intel.com>
2049
2050	Backport from mainline
2051	2010-04-07  Dodji Seketeli  <dodji@redhat.com>
2052
2053	PR debug/43628
2054	* dwarf2out.c (modified_type_die): Ignore artificial typedefs.
2055
20562010-09-18  Richard Guenther  <rguenther@suse.de>
2057
2058	PR tree-optimization/45709
2059	* tree-inline.c (copy_phis_for_bb): Fixup new_edge when
2060	we splitted it.
2061
20622010-09-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2063
2064	Backport from mainline:
2065	2010-09-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2066
2067	* doc/sourcebuild.texi (Effective-Target Keywords): Document
2068	run_expensive_tests.
2069
20702010-09-15  Eric Botcazou  <ebotcazou@adacore.com>
2071
2072	PR rtl-optimization/45593
2073	* reorg.c (relax_delay_slots): Use emit_copy_of_insn_after to re-emit
2074	insns that were in delay slots as stand-alone insns.
2075
20762010-09-14  Tristan Gingold  <gingold@adacore.com>
2077
2078	* configure.ac (plugins): Fix typos.
2079	* configure: Regenerate.
2080
20812010-09-14  Jakub Jelinek  <jakub@redhat.com>
2082
2083	PR middle-end/45567
2084	* builtins.c (expand_builtin_interclass_mathfn, expand_builtin_cexpi,
2085	expand_builtin_powi): Remove subtarget argument, pass NULL_RTX instead.
2086	(expand_builtin): Adjust caller.
2087	(expand_builtin_unop): Only use subtarget if it has the right mode.
2088
2089	PR debug/45660
2090	* dwarf2out.c (gen_decl_die): Call gen_type_die for origin before
2091	gen_type_die for function/method return type.
2092
20932010-09-13  Hans-Peter Nilsson  <hp@axis.com>
2094
2095	PR rtl-optimization/41087
2096	* ifcvt.c (noce_get_condition): Don't allow conditions with
2097	side-effects.
2098
20992010-09-12  Alexander Monakov  <amonakov@ispras.ru>
2100
2101	Backport from mainline
2102	2010-09-06  Andrey Belevantsev  <abel@ispras.ru>
2103
2104	PR rtl-optimization/44919
2105	* sel-sched.c (move_cond_jump): Remove assert, check that
2106	the several blocks case can only happen with mutually exclusive
2107	insns instead.  Rewrite the movement code to support moving through
2108	several basic blocks.
2109
21102010-09-10  Jack Howarth <howarth@bromo.med.uc.edu>
2111
2112	Backport from mainline
2113	2010-09-07  H.J. Lu  <hjl.tools@gmail.com>
2114		    Jack Howarth <howarth@bromo.med.uc.edu>
2115
2116	PR target/36502
2117	PR target/42313
2118	PR target/44651
2119	* config/i386/darwin.h (STACK_BOUNDARY): Redefine as 128 for
2120	profiling or 64-bit MS_ABI and as BITS_PER_WORD otherwise.
2121	(PREFERRED_STACK_BOUNDARY): Replace STACK_BOUNDARY with 128 in
2122	MAX macro.
2123
21242010-09-09  Vladimir Makarov  <vmakarov@redhat.com>
2125
2126	PR middle-end/45312
2127	* reload1.c (merge_assigned_reloads): Remove.
2128	(reload_as_needed): Don't call it.
2129
21302010-09-09  Matthias Klose  <doko@ubuntu.com>
2131
2132	PR bootstrap/43847
2133	* configure.ac (--enable-plugin): Enhance for cross builds.
2134	* configure: Regenerate.
2135
21362010-09-09  Vladimir Makarov  <vmakarov@redhat.com>
2137
2138	PR middle-end/44554
2139	* ira.c (ira): Switch off sharing spill slots if setjmp is called.
2140
21412010-09-08  Vladimir Makarov  <vmakarov@redhat.com>
2142
2143	PR middle-end/40386
2144	* ira.c (pseudo_for_reload_consideration_p): Don't use
2145	flag_ira_share_spill_slots.
2146
21472010-09-09  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2148
2149	* config/s390/s390.c (legitimate_reload_constant_p): Accept floating-
2150	point zero operands that fit into a single GPR.
2151	(s390_preferred_reload_class): Ensure we only return general-purpose
2152	register classes.
2153	* config/s390/s390.md ("*mov<mode>_64dfp"): Use lghi to load
2154	floating-point zero operands into GPRs.
2155	("*mov<mode>_64"): Likewise.
2156	("mov<mode>"): Likewise using lhi.
2157
21582010-09-09  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2159
2160	* config/s390/s390.c (s390_symref_operand_p): Return false for
2161	literal pool references.
2162	(s390_check_qrst_address): Update caller.
2163
21642010-09-08  Martin Jambor  <mjambor@suse.cz>
2165
2166	PR other/45443
2167	* doc/invoke.texi: Add -fipa-cp-clone to list of switches turned on
2168	at -O3.
2169
21702010-09-03  Jakub Jelinek  <jakub@redhat.com>
2171
2172	PR middle-end/45484
2173	* dwarf2out.c (flush_queued_reg_saves): Rename to...
2174	(dwarf2out_flush_queued_reg_saves): ... this.  No longer static.
2175	(dwarf2out_frame_debug): Adjust callers.
2176	* dwarf2out.h (dwarf2out_flush_queued_reg_saves): New prototype.
2177	* config/i386/i386.c (output_set_got): Call it.
2178
2179	PR debug/45500
2180	* dwarf2out.c (rtl_for_decl_init): Give up for all generic vectors,
2181	not just generic vectors with BLKmode.
2182
21832010-09-02  Ian Bolton  <ian.bolton@arm.com>
2184
2185	Backport from mainline
2186	2010-09-01  Ian Bolton  <ian.bolton@arm.com>
2187
2188	* Makefile.in (tree-switch-conversion.o): Update dependencies.
2189
2190	2010-08-19  Ian Bolton  <ian.bolton@arm.com>
2191
2192	PR target/45070
2193	* config/arm/arm.c (arm_output_epilogue): Ensure that return
2194	value of size 1-3 is handled correctly.
2195
2196	2010-08-19  Ian Bolton  <ian.bolton@arm.com>
2197
2198	* tree-switch-conversion.c (gen_inbound_check): Ensure that the
2199	type for the conditional has wide enough range.
2200
2201	2010-08-07  Marcus Shawcroft  <marcus.shawcroft@arm.com>
2202
2203	* config/arm/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
2204	'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
2205	(SUBWORD_BOOL_CAS): Likewise.
2206	(SUBWORD_SYNC_OP): Likewise.
2207	(SUBWORD_TEST_AND_SET): Likewise.
2208	(FETCH_AND_OP_WORD): Parenthesise INF_OP
2209	(SUBWORD_SYNC_OP): Likewise.
2210	(OP_AND_FETCH_WORD): Likewise.
2211
22122010-09-01  Jakub Jelinek  <jakub@redhat.com>
2213
2214	PR middle-end/45458
2215	* bb-reorder.c (add_labels_and_missing_jumps): Treat
2216	bbs ending with throwing insns like blocks ending with a call.
2217	(fix_up_fall_thru_edges): Likewise.
2218
22192010-09-01  Eric Botcazou  <ebotcazou@adacore.com>
2220
2221	* gimplify.c (gimplify_init_constructor): Do not create a temporary for
2222	a volatile LHS if the constructor has only one element.
2223
22242010-08-31  Eric Botcazou  <ebotcazou@adacore.com>
2225
2226	* tree-nested.c (convert_all_function_calls): Iterate until after the
2227	sum of static chains in the nest doesn't change.
2228
22292010-08-31  Eric Botcazou  <ebotcazou@adacore.com>
2230
2231	Backport from mainline
2232	2010-08-20  Jakub Jelinek  <jakub@redhat.com>
2233
2234	PR rtl-optimization/45353
2235	* sel-sched-ir.c (sel_bb_head): Return NULL even if next_nonnote_insn
2236	after bb_note is a BARRIER.
2237
22382010-08-30  Jakub Jelinek  <jakub@redhat.com>
2239
2240	PR middle-end/45423
2241	* gimplify.c (goa_stabilize_expr): Handle TRUTH_NOT_EXPR
2242	and TRUTH_{AND,OR,XOR}_EXPR.
2243	* c-parser.c (c_parser_omp_atomic): Handle boolean
2244	{PRE,POST}_{INC,DEC}REMENT.
2245
22462010-08-30  Jakub Jelinek  <jakub@redhat.com>
2247
2248	Backport from mainline
2249	2010-07-27  Jakub Jelinek  <jakub@redhat.com>
2250
2251	PR c/45079
2252	* c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
2253
22542010-08-30  H.J. Lu  <hongjiu.lu@intel.com>
2255
2256	Backport from mainline
2257	2010-08-25  Richard Guenther  <rguenther@suse.de>
2258
2259	PR tree-optimization/45393
2260	* tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer
2261	and clean EH info.  Avoid SSA update.
2262	(execute_cse_sincos): Cleanup the CFG if it has changed.
2263
22642010-08-28  Eric Botcazou  <ebotcazou@adacore.com>
2265
2266	* config/ia64/ia64.md (cstorebi4): Fix thinko.
2267
22682010-08-28  Uros Bizjak  <ubizjak@gmail.com>
2269
2270	PR target/41484
2271	* config/i386/sse.md (sse4_1_extendv8qiv8hi2): Also accept memory
2272	operands for operand 1.
2273	(sse4_1_extendv4qiv4si2): Ditto.
2274	(sse4_1_extendv2qiv2di2): Ditto.
2275	(sse4_1_extendv4hiv4si2): Ditto.
2276	(sse4_1_extendv2hiv2di2): Ditto.
2277	(sse4_1_extendv2siv2di2): Ditto.
2278	(sse4_1_zero_extendv8qiv8hi2): Ditto.
2279	(sse4_1_zero_extendv4qiv4si2): Ditto.
2280	(sse4_1_zero_extendv2qiv2di2): Ditto.
2281	(sse4_1_zero_extendv4hiv4si2): Ditto.
2282	(sse4_1_zero_extendv2hiv2di2): Ditto.
2283	(sse4_1_zero_extendv2siv2di2): Ditto.
2284	(*sse4_1_extendv8qiv8hi2): Remove insn pattern.
2285	(*sse4_1_extendv4qiv4si2): Ditto.
2286	(*sse4_1_extendv2qiv2di2): Ditto.
2287	(*sse4_1_extendv4hiv4si2): Ditto.
2288	(*sse4_1_extendv2hiv2di2): Ditto.
2289	(*sse4_1_extendv2siv2di2): Ditto.
2290	(*sse4_1_zero_extendv8qiv8hi2): Ditto.
2291	(*sse4_1_zero_extendv4qiv4si2): Ditto.
2292	(*sse4_1_zero_extendv2qiv2di2): Ditto.
2293	(*sse4_1_zero_extendv4hiv4si2): Ditto.
2294	(*sse4_1_zero_extendv2hiv2di2): Ditto.
2295	(*sse4_1_zero_extendv2siv2di2): Ditto.
2296
22972010-08-25  Jakub Jelinek  <jakub@redhat.com>
2298
2299	PR rtl-optimization/44858
2300	* combine.c (try_combine): If recog_for_combine added CLOBBERs to
2301	newi2pat, make sure they don't affect newpat.
2302
2303	PR rtl-optimization/45400
2304	* combine.c (simplify_shift_const_1) <case SUBREG>: Only use
2305	SUBREG_REG if both modes are of MODE_INT class.
2306
23072010-08-20  Changpeng Fang  <changpeng.fang@amd.com>
2308
2309	PR tree-optimization/45260
2310	* tree-flow.h (may_be_nonaddressable_p): New definition. Make the
2311	existing static function global.
2312
2313	* tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): This function
2314	is changed to global.
2315
2316	* tree-ssa-loop-prefetch.c (gather_memory_references_ref): Call
2317	may_be_nonaddressable_p on base, and don't collect this reference
2318	if the address of the base could not be taken.
2319
23202010-08-20  David Edelsohn  <edelsohn@gnu.org>
2321
2322	Backport from mainline
2323	2010-04-22  David Edelsohn  <edelsohn@gnu.org>
2324
2325	* config/rs6000/x-aix: Override LDFLAGS for all COMPILERS.
2326
23272010-08-19  Uros Bizjak  <ubizjak@gmail.com>
2328
2329	* config/i386/i386.md (*add<SWI:mode>3_cconly_overflow): Do not use
2330	ix86_binary_operator_ok.
2331
23322010-08-18  Uros Bizjak  <ubizjak@gmail.com>
2333
2334	PR target/45327
2335	* config/i386/i386.md (<any_or:code><SWI:mode>_3): Do not use
2336	ix86_binary_operator_ok.
2337
23382010-08-18  H.J. Lu  <hongjiu.lu@intel.com>
2339
2340	Backport from mainline
2341	2010-08-18  Paolo Bonzini  <bonzini@gnu.org>
2342
2343	PR middle-end/45292
2344	* optabs.c (expand_bool_compare_and_swap): Expand pending
2345	pops before trying the optab.
2346
23472010-08-17  Uros Bizjak  <ubizjak@gmail.com>
2348
2349	PR target/45296
2350	* reginfo.c (globalize_reg): Reject stack registers.
2351
23522010-08-16  Changpeng Fang  <changpeng.fang@amd.com>
2353
2354	Backport from mainline:
2355	2010-08-12  Changpeng Fang  <changpeng.fang@amd.com>
2356
2357	PR tree-optimization/45241
2358	* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Give
2359	up dot_prod pattern searching if a stmt is outside the loop.
2360
23612010-08-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2362
2363	Backport from mainline:
2364	2010-08-09  Richard Guenther  <rguenther@suse.de>
2365
2366	PR middle-end/44632
2367	* function.c (gimplify_parameters): Do not clear addressable
2368	bit of the original parameter.
2369
23702010-08-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2371
2372	Revert:
2373	2010-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2374
2375	PR boehm-gc/34544
2376	* gthr-posix.h (__gthread_start): Delete.
2377	(__gthread_active_init): Use pthread_default_stacksize_np instead of
2378	pthread_create to determine if hpux pthreads are active.
2379	* gthr-posix95.h (__gthread_start): Delete.
2380	(__gthread_active_init): Likewise use pthread_default_stacksize_np.
2381
23822010-08-12  Jakub Jelinek  <jakub@redhat.com>
2383
2384	PR middle-end/45262
2385	* fold-const.c (make_range) <case NEGATE_EXPR>: Punt if
2386	-a overflows.  Normalize the range.
2387
2388	PR debug/45259
2389	* caller-save.c (save_call_clobbered_regs): Only swap notes with
2390	DEBUG_INSNs if n_regs_saved.
2391
2392	Backport from mainline
2393	2010-07-30  Jakub Jelinek  <jakub@redhat.com>
2394
2395	PR debug/45055
2396	PR rtl-optimization/45137
2397	* rtl.h (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn): New
2398	prototypes.
2399	* emit-rtl.c (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn):
2400	New functions.
2401	* combine.c (next_nonnote_nondebug_insn): Removed.
2402	* ifcvt.c (noce_process_if_block): Use prev_nonnote_nondebug_insn.
2403	* haifa-sched.c (queue_to_ready): Use next_nonnote_nondebug_insn.
2404	* sched-deps.c (sched_analyze_insn): Likewise.
2405	(fixup_sched_groups, deps_start_bb): Use prev_nonnote_nondebug_insn.
2406	* rtlanal.c (canonicalize_condition): Likewise.
2407	* postreload.c (reload_combine): Likewise.
2408	(reload_cse_move2add): Use next_nonnote_nondebug_insn.
2409
24102010-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2411
2412	Backport from mainline.
2413	2010-07-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2414
2415	PR target/44805
2416	* config/pa/pa.h (CONSTANT_ALIGNMENT): Align strings to BITS_PER_WORD
2417	on all targets.
2418
24192010-08-08  Richard Guenther  <rguenther@suse.de>
2420
2421	PR middle-end/45034
2422	* convert.c (convert_to_integer): Always use an unsigned
2423	type for narrowed negate and bitwise not.
2424
24252010-08-08  Richard Guenther  <rguenther@suse.de>
2426
2427	PR tree-optimization/45109
2428	* tree-ssa-structalias.c (get_constraint_for_component_ref):
2429	Explicitly strip handled components and indirect references.
2430
24312010-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2432
2433	PR boehm-gc/34544
2434	* gthr-posix.h (__gthread_start): Delete.
2435	(__gthread_active_init): Use pthread_default_stacksize_np instead of
2436	pthread_create to determine if hpux pthreads are active.
2437	* gthr-posix95.h (__gthread_start): Delete.
2438	(__gthread_active_init): Likewise use pthread_default_stacksize_np.
2439
24402010-08-06  Eric Botcazou  <ebotcazou@adacore.com>
2441
2442	PR target/44942
2443	* config/sparc/sparc.c (function_arg_advance): Always take into account
2444	the padding, if any.
2445
24462010-08-06  Uros Bizjak  <ubizjak@gmail.com>
2447
2448	* expmed.c (expand_mult_const) <case alg_shift>: Expand shift into
2449	temporary. Emit move from temporary to accum, so REG_EQUAL note will
2450	be attached to this insn in correct mode.
2451
24522010-08-06  Uros Bizjak  <ubizjak@gmail.com>
2453
2454	* config/i386/i386.c (ix86_decompose_address): Check for SI_REG
2455	using REGNO of base_reg directly.
2456
24572010-08-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
2458
2459	* config/spu/spu.c (spu_emit_branch_hint): Do not access NOTE_KIND of
2460	non-NOTE insns.
2461
24622010-08-03  Uros Bizjak  <ubizjak@gmail.com>
2463
2464	PR target/41089
2465	* config/alpha/alpha.c (alpha_build_builtin_va_list): Mark __offset
2466	as volatile.
2467
24682010-08-03  Martin Jambor  <mjambor@suse.cz>
2469
2470	PR tree-optimization/44914
2471	* tree-sra.c (cfg_changed): New variable.
2472	(sra_initialize): Initialize cgf_changed to false.
2473	(scan_function): Set cfg_changed if cfg was changed.
2474	(perform_intra_sra): Return also TODO_cleanup_cfg if cfg was changed.
2475	(ipa_early_sra): Likewise.
2476
24772010-08-02  DJ Delorie  <dj@redhat.com>
2478
2479	* config/rx/predicates.md (rx_constshift_operand): New.
2480	* config/rx/rx.md (zs_cond): New.
2481	(cbranchsi4): Remove mode.
2482	(*cbranchsi4_<code>): Likewise.
2483	(*tstbranchsi4_<code>): New.
2484	(*tstbranchsi4r_<code>): New.
2485	(*tstbranchsi4m_eq): New.
2486	(*tstbranchsi4m_ne): New.
2487	(cbranchsf4): Remove mode.
2488	(*cbranchsf4_<code>): Likewise.
2489
24902010-07-31  Richard Guenther  <rguenther@suse.de>
2491
2492	PR tree-optimization/45052
2493	* ipa-pure-const.c (check_stmt): Check volatileness.
2494
24952010-07-31  Richard Guenther  <rguenther@suse.de>
2496
2497	* ipa-prop.c (ipa_modify_formal_parameters): Use
2498	build_distinct_type_copy.
2499
25002010-07-31  Richard Guenther  <rguenther@suse.de>
2501
2502	* DEV-PHASE: Set back to prerelease.
2503	* BASE-VER: Bump to 4.5.2.
2504
25052010-07-31  Release Manager
2506
2507	* GCC 4.5.1 released.
2508
25092010-07-30  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2510
2511	Backport from mainline.
2512	2010-07-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2513
2514 	PR target/43698
2515	* config/arm/arm.md: Split arm_rev into *arm_rev and *thumb1_rev.
2516	Set *arm_rev to be predicable.
2517
25182010-07-27  Nick Clifton  <nickc@redhat.com>
2519
2520	* Import this patch from the mainline:
2521
2522	2010-06-30  Nick Clifton  <nickc@redhat.com>
2523
2524	* config/rx/rx-modes.def: New file.
2525	* config/rx/rx.h (FIRST_PSEUDO_REGISTER): Increase to 17.
2526	(CC_REGNUM): Define.
2527	(FIXED_REGISTERS, CALL_USED_REGISTERS, REGISTER_NAMES): Add cc
2528	register.
2529	(CC_NO_CARRY, NOTICE_UPDATE_CC): Delete.
2530	(SELECT_CC_MODE): Define.
2531	* config/rx/rx.md (CC_REG): Define.  Update all patterns to use
2532	(reg:CC CC_REG) instead of (cc0).
2533	(attr "cc"): Delete.
2534	(cbranchsi4): Do not split compare and branch here. Instead move
2535	it to...
2536	(cbranchsi4_<code>): ... here.  New patterns.
2537	(cmpsi): Call rx-compare_redundant to find out if it is necessary
2538	to emit the compare instruction.
2539	* config/rx/rx.c (rx_gen-cond_branch_template): Remove tests of
2540	cc_status flags.
2541	(rx_get_stack_layout): Iterate up to before CC_REGNUM not
2542	FIRST_PSEUDO_REGNUM.
2543	(rx_expand_prologue, rx_expand_epilogue): Likewise.
2544	(rx_notice_update_cc): Delete.
2545	(rx_cc_modes_compatible): New function.
2546	(flags_needed_for_conditional): New function.
2547	(flags_from_mode): New function.
2548	(rx_compare_redundant): New function - scans backwards through
2549	insn list to find out if condition flags are already set correctly.
2550	(TARGET_CC_MODES_COMPATIBLE): Define.
2551	* config/rx/rx-protos.h (rx_compare_redundant): Prototype.
2552
2553	* config/rx/rx.h (BRANCH_COST): Define.
2554	(REGISTER_MOVE_COST): Define.
2555	* config/rx/predicates (rx_source_operand): Allow all constant types.
2556	* config/rx/rx.md (addsi3): Add alternative for swapped operands.
2557	(tstsi4): New pattern.
2558	* config/rx/rx.c (rx_memory_move_cost): Define.
2559	(TARGET_MEMORY_MOVE_COST): Define.
2560
25612010-07-23  Jakub Jelinek  <jakub@redhat.com>
2562	    Richard Guenther  <rguenther@suse.de>
2563
2564	PR tree-optimization/45047
2565	* tree-vect-stmts.c (vectorizable_assignment): Return false
2566	if vectype_out is NULL for conversion statement.
2567
25682010-07-22  Jakub Jelinek  <jakub@redhat.com>
2569
2570	PR debug/45015
2571	* var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
2572	ASM_OPERANDS_OUTPUT_IDX.
2573	(adjust_insn): For inline asm with multiple sets ensure first
2574	ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
2575	the insn.
2576
2577	Backport from mainline
2578	2010-07-16  Jakub Jelinek  <jakub@redhat.com>
2579
2580	PR target/44942
2581	* config/i386/i386-protos.h (ix86_function_arg_boundary): Change second
2582	argument to const_tree.
2583	* config/i386/i386.c (function_arg_advance): If padding needs to be
2584	inserted before argument, increment cum->words by number of padding
2585	words as well.
2586	(contains_aligned_value_p): Change argument to const_tree.
2587	(ix86_function_arg_boundary): Change second argument to const_tree.
2588
25892010-07-21  Martin Jambor  <mjambor@suse.cz>
2590
2591	PR tree-optimization/44900
2592	* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
2593	(sra_modify_assign): Move gsi to the next statmenent unconditionally.
2594
25952010-07-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2596
2597	Backport from mainline:
2598	2010-07-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2599
2600	* doc/sourcebuild.texi (Effective-Target Keywords): Document
2601	sse_runtime, sse2_runtime.
2602
26032010-07-20  Richard Guenther  <rguenther@suse.de>
2604
2605	PR tree-optimization/44977
2606	* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
2607	SSA form.
2608
26092010-07-19  Bingfeng Mei  <bmei@broadcom.com>
2610
2611	* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
2612	of a loop.
2613	* loop-doloop.c (doloop_condition_get): Skip possible debug_insn.
2614
26152010-07-15  Jie Zhang  <jie@codesourcery.com>
2616
2617	* config/arm/cortex-a8.md (cortex_a8_load_store_2): Reserve
2618	cortex_a8_issue_ls.
2619
26202010-07-14  Jie Zhang  <jie@codesourcery.com>
2621
2622	* config/arm/cortex-a8.md (cortex_a8_alu): Don't use
2623	cortex_a8_default when neon_type is not none.
2624
26252010-07-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2626
2627	Backport from mainline:
2628	2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2629
2630	* config/i386/i386.c (ix86_sol10_return_in_memory): Rename to
2631	ix86_solaris_return_in_memory.
2632	* config/i386-protos.h: Reflect this.
2633	* config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
2634	* config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
2635	Move ...
2636	* config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): ... here.
2637
26382010-07-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2639
2640	Backport from mainline:
2641	2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2642
2643	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
2644	pentiumpro on Solaris 8 and 9/x86.
2645	* doc/install.texi (Specific, i?86-*-solaris2.[89]): Recommend GNU as.
2646	Document SSE/SSE2 support.
2647	* doc/sourcebuild.texi (Effective-Target Keywords): Document sse.
2648
26492010-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2650
2651	* config/i386/sol2-unwind.h (x86_64_fallback_frame_state): Correct
2652	explanation.
2653	Find ucontext_t * on Solaris 11.
2654	(x86_fallback_frame_state): Handle Solaris 9 multi-threaded pattern.
2655	Handle new Solaris 11 __sighndlr patterns.
2656
26572010-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2658
2659	Backport from mainline:
2660	2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2661
2662	PR pch/14940
2663	* config/host-solaris.c (mmap_fixed): New function.
2664	(sol_gt_pch_get_address): Use it.
2665	(sol_gt_pch_use_address): Likewise.
2666
26672010-07-12  Jie Zhang  <jie@codesourcery.com>
2668
2669	* config/arm/arm.c (arm_get_frame_offsets): Don't use r3 to
2670	align the stack when it's going to be saved.
2671
26722010-07-11  Kai Tietz  <kai.tietz@onevision.com>
2673
2674	Merged back from trunk
2675	* config/i386/winnt.c (i386_pe_file_end): Quote symbol name
2676	in directive -export.
2677
26782010-07-09  Richard Guenther  <rguenther@suse.de>
2679
2680	PR tree-optimization/44886
2681	* tree-vect-stmts.c (vectorizable_assignment): Fixup backport
2682	of the fix for PR44284.
2683
26842010-07-09  Richard Guenther  <rguenther@suse.de>
2685
2686	Backport from mainline
2687	2010-05-28  Nathan Froyd  <froydnj@codesourcery.com>
2688
2689	* tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of
2690	build1_stat.
2691
26922010-07-09  Dave Korn  <dave.korn.cygwin@gmail.com>
2693
2694	Backport from mainline
2695	2010-05-06  Dave Korn  <dave.korn.cygwin@gmail.com>
2696
2697	PR target/43888
2698	* config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
2699	handling to still return true for x64 targets.
2700
27012010-07-08  Richard Guenther  <rguenther@suse.de>
2702
2703	Backport from mainline
2704	2010-05-27  Richard Guenther  <rguenther@suse.de>
2705
2706	PR tree-optimization/44284
2707	* tree-vect-stmts.c (vectorizable_assignment): Handle
2708	sign-changing conversions as simple copy.
2709
2710	2010-07-06  Richard Guenther  <rguenther@suse.de>
2711
2712	PR middle-end/44828
2713	* convert.c (convert_to_integer): Watch out for overflowing
2714	MULT_EXPR as well.
2715
27162010-07-07  Duncan Sands  <baldrick@free.fr>
2717
2718	PR middle-end/41355
2719	* tree.c (build_function_type_skip_args): Copy the original type using
2720	build_distinct_type_copy rather than copy_node.
2721
27222010-07-06  Alexandre Oliva  <aoliva@redhat.com>
2723
2724	* doc/gimple.texi (GIMPLE_DEBUG): Document.
2725	* doc/rtl.texi (Debug Information): New node.
2726	(NOTE_INSN_VAR_LOCATION): Document.
2727	(debug_insn): Likewise.
2728	* doc/generic.texi (DEBUG_EXPR_DECL): Document.
2729
27302010-07-05  Kaz Kojima  <kkojima@gcc.gnu.org>
2731
2732	Backport from mainline:
2733	PR target/44531
2734	* config.gcc (sh*-*-*): Use regular expressions instead of
2735	the 'i' modifier for sed substitutions.
2736
27372010-07-05  Mikael Pettersson  <mikpe@it.uu.se>
2738
2739	PR bootstrap/44820
2740	* config/arm/arm.c (arm_attr_length_move_neon): Delete regno.
2741
27422010-07-05  Jie Zhang  <jie@codesourcery.com>
2743
2744	* config/arm/arm.c (arm_attr_length_move_neon): New.
2745	* config/arm/arm-protos.h (arm_attr_length_move_neon): Declare.
2746	* config/arm/neon.md (define_mode_attr V_slen): Remove.
2747	(neon_mov<mode> for VSTRUCT): Use arm_attr_length_move_neon
2748	to compute length attribute.
2749
27502010-07-05  Jie Zhang  <jie@codesourcery.com>
2751
2752	* config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
2753	as predicate for operand 1 and remove its constraint.
2754	* config/arm/predicates.md (vfp_register_operand): New.
2755	* config/arm/arm.md (*push_multi): Remove the constraint of
2756	operand 1.
2757	(*push_fp_multi): Likewise.
2758
27592010-07-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2760
2761	PR target/44597
2762	* config/pa/predicates.md (prefetch_cc_operand): Remove.
2763	(prefetch_nocc_operand): Likewise.
2764	* config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
2765	(prefetch_20): New insn.
2766	(prefetch_cc): Remove.
2767	(prefetch_nocc): Likewise.
2768
2769	PR target/44705
2770	* config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.
2771
27722010-07-02  Richard Guenther  <rguenther@suse.de>
2773
2774	PR middle-end/44777
2775	* tree-cfg.c (gimple_block_ends_with_call_p): Handle empty BBs.
2776
27772010-07-01  Jakub Jelinek  <jakub@redhat.com>
2778
2779	PR debug/44694
2780	* dwarf2out.c (reg_loc_descriptor): For eliminated arg_pointer_rtx
2781	or frame_pointer_rtx use DW_OP_fbreg offset DW_OP_stack_value.
2782
27832010-07-01  Jakub Jelinek  <jakub@redhat.com>
2784
2785	Backport from mainline
2786	2010-06-29  Jakub Jelinek  <jakub@redhat.com>
2787
2788	PR tree-optimization/43801
2789	* cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
2790	if old_decl was DECL_ONE_ONLY.
2791
2792	2010-06-21  Jakub Jelinek  <jakub@redhat.com>
2793
2794	PR target/44575
2795	* config/i386/i386.c (ix86_gimplify_va_arg): When copying
2796	va_arg from a set of register save slots into a temporary,
2797	if the container is bigger than type size, do the copying
2798	using smaller mode or using memcpy.
2799
2800	2010-05-13  Jakub Jelinek  <jakub@redhat.com>
2801
2802	PR debug/44104
2803	* dwarf2out.c (modified_type_die): Don't dereference mod_type_die
2804	if it is NULL.
2805
28062010-06-30  Jan Hubicka  <jh@suse.cz>
2807
2808	Backport from mainline
2809	2010-06-27  Jan Hubicka  <jh@suse.cz>
2810
2811	PR middle-end/44671
2812	PR middle-end/44686
2813	* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on
2814	signature change.
2815	* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
2816	* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
2817
2818	2010-06-28  Jan Hubicka  <jh@suse.cz>
2819
2820	PR tree-optimization/44357
2821	* ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
2822	functions.
2823
28242010-06-30  Jakub Jelinek  <jakub@redhat.com>
2825
2826	Backport from mainline
2827	2010-06-30  Jakub Jelinek  <jakub@redhat.com>
2828
2829	PR debug/44694
2830	* cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
2831	* cselib.c (cfa_base_preserved_regno): New static variable.
2832	(cselib_reset_table): Don't reset cfa_base_preserved_regno instead
2833	of REGNO (cfa_base_preserved_val->locs->loc).
2834	(cselib_preserve_cfa_base_value): Add regno argument, set
2835	cfa_base_preserved_regno to it.
2836	(cselib_invalidate_regno): Allow removal of registers other than
2837	cfa_base_preserved_regno from cfa_base_preserved_val.
2838	(cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
2839	* var-tracking.c (adjust_mems): Replace sp or hfp even outside
2840	of MEM addresses, if not on LHS.
2841	(reverse_op): Don't add reverse ops for cfa_base_rtx.
2842	(vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
2843
2844	2010-06-25  Jakub Jelinek  <jakub@redhat.com>
2845
2846	PR middle-end/43866
2847	* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
2848	true or always false, return NULL_TREE.
2849	(tree_unswitch_single_loop): Optimize conditions even when reaching
2850	max-unswitch-level parameter.  If num > 0, optimize first all conditions
2851	using entry checks, then do still reachable block discovery and consider
2852	only conditions in still reachable basic blocks in the loop.
2853
2854	2010-05-12  Jakub Jelinek  <jakub@redhat.com>
2855
2856	PR debug/42278
2857	* dwarf2out.c (base_type_die): Don't add name attribute here.
2858	(modified_type_die): Instead of sizetype use
2859	its underlying original type.  If a DW_TAG_base_type doesn't
2860	have name added, add __unknown__.
2861	(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
2862	always call force_type_die instead.
2863
2864	2010-05-11  Jakub Jelinek  <jakub@redhat.com>
2865
2866	PR c++/44059
2867	* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
2868	even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
2869	* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
2870	* dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
2871	on DW.ref.* decls.
2872
28732010-06-30  Martin Jambor  <mjambor@suse.cz>
2874
2875	PR tree-optimization/43905
2876	* tree-sra.c (encountered_recursive_call): Removed with all its uses.
2877	(convert_callers): Do not handle recursive calls specially.
2878	(create_abstract_origin): Removed.
2879	(modify_function): Version the call graph node instead of creating
2880	abstract origins and dealing with same_body aliases.
2881	(ipa_sra_preliminary_function_checks): Check whether the function
2882	is versionable.
2883	* Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
2884
28852010-06-30  Martin Jambor  <mjambor@suse.cz>
2886
2887	Backport from mainline
2888	2010-05-29  Jan Hubicka  <jh@suse.cz>
2889
2890	* cgraph.c (clone_function_name): Made public.
2891	* cgraph.h (clone_function_name): Declare.
2892	* cgraphunit.c (cgraph_function_versioning): Produce new name.
2893
28942010-06-29  Martin Jambor  <mjambor@suse.cz>
2895
2896	Backport from mainline
2897	2010-05-17  Martin Jambor  <mjambor@suse.cz>
2898
2899	PR middle-end/44133
2900	* tree-sra.c (create_access_replacement): New parameter rename, mark
2901	the replaement for renaming only when it is true.
2902	(get_access_replacement): Pass true in the rename parameter of
2903	create_access_replacement.
2904	(get_unrenamed_access_replacement): New function.
2905	(replace_uses_with_default_def_ssa_name): New parameter racc, get the
2906	replacement declaration from it.
2907
29082010-06-29  Martin Jambor  <mjambor@suse.cz>
2909
2910	Backport from mainline
2911	2010-04-13  Martin Jambor  <mjambor@suse.cz>
2912
2913	* tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
2914	(sra_modify_assign): Delete stmts loading dead data even if racc has no
2915	children.  Call replace_uses_with_default_def_ssa_name to handle
2916	SSA_NAES on lhs.
2917
29182010-06-27  Jan Hubicka  <jh@suse.cz>
2919
2920	Backport inliner heruistic fixes from mainline
2921	2010-05-27  Jan Hubicka  <jh@suse.cz>
2922
2923	* ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
2924	(update_caller_keys): Return early if there are no callers;
2925	only update fibheap when decresing the key.
2926	(update_callee_keys): Avoid recursion.
2927	(decide_inlining_of_small_functions): When badness does not match;
2928	re-insert into fibheap.
2929
2930	2010-05-11  Jan Hubicka  <jh@suse.cz>
2931
2932	PR tree-optimize/44063
2933	* ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
2934	queue.
2935
2936	2010-04-13  Jan Hubicka  <jh@suse.cz>
2937
2938	* ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
2939	of optimized out static functions.
2940	(cgraph_edge_badness): Add DUMP parameter and dump reasons for the
2941	cost computation.  Also sanity check for overflows.
2942	(update_caller_keys): Update cgraph_edge_badness call; properly
2943	update fibheap and sanity check that it is up to date.
2944	(add_new_edges_to_heap): Update cgraph_edge_badness.
2945	(cgraph_decide_inlining_of_small_function): Likewise;
2946	add sanity checking that badness in heap is up to date;
2947	improve dumping of reason; Update badness of calls to the
2948	offline copy of function currently inlined; dump badness
2949	of functions not inlined because of unit growth limits.
2950
29512010-06-27  Richard Guenther  <rguenther@suse.de>
2952
2953	PR tree-optimization/44683
2954	* tree-ssa-dom.c (record_edge_info): Record equivalences for the
2955	false edge from the inverted condition.
2956
29572010-06-27  Eric Botcazou  <ebotcazou@adacore.com>
2958
2959	Backport from mainline
2960	2010-05-18  Vladimir Makarov  <vmakarov@redhat.com>
2961
2962	PR rtl-optimization/43332
2963	* haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.
2964
29652010-06-27  Richard Guenther  <rguenther@suse.de>
2966
2967	PR middle-end/44684
2968	* tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
2969	(stmt_may_clobber_ref_p_1): Do not bother to call the oracle
2970	for register LHS.  Or non-store assignments.
2971
29722010-06-26  Richard Guenther  <rguenther@suse.de>
2973
2974	PR tree-optimization/44393
2975	* tree-loop-distribution.c (generate_loops_for_partition): Fix
2976	stmt removal and VOP renaming.
2977	(generate_memset_zero): Remove redundant stmt updating.
2978	* tree-flow.h (mark_virtual_ops_in_bb): Remove.
2979	* tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
2980
29812010-06-26  Richard Guenther  <rguenther@suse.de>
2982
2983	PR middle-end/44674
2984	* tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
2985	decls.  Handle LABEL_DECLs like FUNCTION_DECLs.
2986
29872010-06-25  Alexandre Oliva  <aoliva@redhat.com>
2988
2989	PR debug/44610
2990	* simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
2991	address if the offset is unknown.
2992
29932010-06-25  Richard Guenther  <rguenther@suse.de>
2994
2995	Backport from mainline
2996	2010-06-16  Richard Guenther  <rguenther@suse.de>
2997
2998	PR c/44555
2999	* c-common.c (c_common_truthvalue_conversion): Remove
3000	premature and wrong optimization concering ADDR_EXPRs.
3001
30022010-06-24  Steven Bosscher  <steven@gcc.gnu.org>
3003
3004	Backport from mainline:
3005	2010-05-18  Steven Bosscher  <steven@gcc.gnu.org>
3006
3007	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
3008	lto-macho as lto_binary_reader.
3009	* target.h (struct gcc_target): New hooks lto_start and	lto_end.
3010	* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
3011	* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
3012	in lto_start and lto_end calls.
3013	(is_elf_or_coff): Rename to maybe_lto_object_file.  Add Mach-O
3014	magic numbers.
3015	(scan_prog_file): Update is_elf_or_coff call.
3016	* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
3017
3018	* collect2.c (main): Fix enum comparison.
3019
3020	* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
3021	Add prototypes.
3022	* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
3023	* darwin.h (LINK_COMMAND_SPEC): Likewise.  Define TARGET_ASM_LTO_START
3024	and TARGET_ASM_LTO_END.
3025	* darwin.c: Include obstack.h and lto-streamer.h.
3026	(lto_section_names_offset, lto_section_names_obstack,
3027	lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
3028	global variables.
3029	(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
3030	(darwin_asm_lto_start): New function.  Redirect output to asm_out_file
3031	to a temporary file.
3032	(darwin_asm_lto_end): New function.  Restore asm_out_file.
3033	(darwin_asm_named_section): For LTO sections, replace the name with
3034	the offset of the section name in a string table, and build this
3035	table.
3036	(darwin_file_start): Initialize global vars for LTO support.
3037	(darwin_file_end): If output to asm_out_file was redirected, append it
3038	to the proper asm_out_file here.  Add the section names section.
3039
3040	Backport from mainline:
3041	2010-05-18  Steven Bosscher  <steven@gcc.gnu.org>
3042
3043	* darwin.c (darwin_asm_named_section): Do not add assembler comment
3044	after .section directive; just print it before the directive
3045	instead.
3046
30472010-06-22  Eric Botcazou  <ebotcazou@adacore.com>
3048
3049	* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
3050	new statement and adjust VDEF only if necessary.  Remove superfluous
3051	call to maybe_clean_or_replace_eh_stmt.
3052	* gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
3053	copy the flags.
3054	* gimple-iterator.c (gsi_replace): Clear BB of old statement here...
3055	* tree-inline.c (copy_bb): ...and not there.
3056
30572010-06-22  H.J. Lu  <hongjiu.lu@intel.com>
3058
3059	Backport from mainline
3060	2010-06-22  H.J. Lu  <hongjiu.lu@intel.com>
3061
3062	* config/i386/i386.md (unit): Also check sseishft1.
3063
30642010-06-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3065
3066	PR target/39690
3067	* config/pa/pa.c (override_options): Disable
3068	-freorder-blocks-and-partition.
3069
30702010-06-21  H.J. Lu  <hongjiu.lu@intel.com>
3071
3072	Backport from mainline
3073	2010-06-21  H.J. Lu  <hongjiu.lu@intel.com>
3074
3075	PR target/44615
3076	* config/i386/atom.md (atom_sseishft_2): Also check sseishft1.
3077
3078	* config/i386/i386.md (type): Add sseishft1
3079
3080	* config/i386/ppro_insn (ppro_insn): Also check sseishft1.
3081	(ppro_insn_load): Likewise.
3082	(ppro_insn_store): Likewise.
3083	(ppro_insn_both): Likewise.
3084
3085	* config/i386/sse.md (sse2_lshrv1ti3): Add atom_unit.
3086	(*vec_extractv2di_1_rex64_avx): Replace sseishft with sseishft1
3087	for type.
3088	(*vec_extractv2di_1_avx): Likewise.
3089	(*vec_extractv2di_1_rex64): Replace sseishft with sseishft1 for
3090	type.  Remove atom_unit.
3091	(*vec_extractv2di_1_sse2): Likewise.
3092
30932010-06-21  Jakub Jelinek  <jakub@redhat.com>
3094
3095	PR bootstrap/44426
3096	* sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
3097	prototype.
3098	(sel_print_to_dot): Remove macro.
3099	(sel_print): Likewise.  New prototype.
3100	* sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
3101	(sel_print): New function.
3102
31032010-06-21  Uros Bizjak  <ubizjak@gmail.com>
3104
3105	PR target/44546
3106	* config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
3107	New predicate.
3108	* config/i386/i386.md (*fp_jcc_8<mode>_387 and splitters): Use
3109	ix86_swapped_fp_comparsion_operator instead of
3110	ix86_fp_comparison_operator.
3111
3112	(*fp_jcc_1_387): Rename from *fp_jcc_3_387.
3113	(*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
3114	(*fp_jcc_2_387): Rename from *fp_jcc_5_387.
3115	(*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
3116	(*fp_jcc_3_387): Rename from *fp_jcc_7_387.
3117	(*fp_jcc_4_<mode>_387): Rename from *fp_jcc_8<mode>_387.
3118
31192010-06-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3120
3121	Backport from mainline
3122	2010-05-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3123
3124	PR target/44261
3125	* config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
3126	(negdf2): Adjust expander pattern and use negdf2_slow.
3127	(negsf2): Likewise.
3128
31292010-06-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3130
3131	PR target/43740
3132	* config/pa/pa.c (emit_move_sequence): Don't infer REG_POINTER flag
3133	for SET source operand from SET destination operand.
3134
31352010-06-16  Martin Jambor  <mjambor@suse.cz>
3136
3137	PR lto/44464
3138	* tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
3139	on the newly dead SSA name.
3140
31412010-06-15  Eric Botcazou  <ebotcazou@adacore.com>
3142
3143	Backport from mainline
3144	2010-06-09  Eric Botcazou  <ebotcazou@adacore.com>
3145
3146	PR rtl-optimization/42461
3147	* dce.c (deletable_insn_p): Return true for const or pure calls again.
3148	* except.c (insn_could_throw_p): Return false if !flag_exceptions.
3149
31502010-06-15  Eric Botcazou  <ebotcazou@adacore.com>
3151
3152	Backport from mainline
3153	2010-06-11  Sandra Loosemore  <sandra@codesourcery.com>
3154
3155	* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
3156	computed cost.
3157
31582010-06-15  Jakub Jelinek  <jakub@redhat.com>
3159
3160	PR fortran/44536
3161	* langhooks.h (struct lang_hooks_for_decls): Add omp_report_decl.
3162	* langhooks-def.h (LANG_HOOKS_OMP_REPORT_DECL): Define.
3163	(LANG_HOOKS_DECLS): Add it.
3164	* gimplify.c (omp_notice_variable): Call
3165	lang_hooks.decls.omp_report_decl.
3166
31672010-06-15  Martin Jambor  <mjambor@suse.cz>
3168
3169	PR tree-optimization/44258
3170	* tree-sra.c (build_access_subtree): Return false iff there is a
3171	partial overlap.
3172	(build_access_trees): Likewise.
3173	(analyze_all_variable_accesses): Disqualify candidates if
3174	build_access_trees returns true for them.
3175
31762010-06-15  Martin Jambor  <mjambor@suse.cz>
3177
3178	PR tree-optimization/44423
3179	* tree-sra.c (dump_access): Dump also grp_assignment_read.
3180	(analyze_access_subtree): Pass negative allow_replacements to children
3181	if the current type is scalar.
3182
31832010-06-14  Andreas Schwab  <schwab@linux-m68k.org>
3184
3185	Backport from mainline
3186	* config/m68k/m68k.c (m68k_delegitimize_address): Don't do
3187	anything if the argument is not a MEM.
3188
31892010-06-14  H.J. Lu  <hongjiu.lu@intel.com>
3190
3191	Backport from mainline
3192	2010-06-14  H.J. Lu  <hongjiu.lu@intel.com>
3193
3194	PR target/44534
3195	* config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with 0x0.
3196	(vec_extract_lo_v16hi): Likewise.
3197	(vec_extract_lo_v32qi): Likewise.
3198
31992010-06-14  Jakub Jelinek  <jakub@redhat.com>
3200
3201	PR bootstrap/44426
3202	* tree.h (build_call_expr): Don't define as vararg macro, instead
3203	add a prototype.
3204	* builtins.c (build_call_nofold): Remove.
3205	(expand_builtin_int_roundingfn, expand_builtin_pow,
3206	expand_builtin_mempcpy_args, expand_builtin_stpcpy,
3207	expand_builtin_memset_args, expand_builtin_strcmp,
3208	expand_builtin_strncmp, expand_builtin_memory_chk): Use
3209	build_call_nofold_loc instead of build_call_nofold.
3210	(build_call_expr): New function.
3211
3212	PR tree-optimization/44508
3213	* tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE argument.
3214	* tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
3215	don't eliminate trivially dead stmts.
3216	* tree-vrp.c (vrp_finalize): Pass false as last argument
3217	to substitute_and_fold.
3218	* tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
3219	to substitute_and_fold.
3220	* tree-ssa-ccp.c (ccp_finalize): Likewise.
3221
32222010-06-14  Ira Rosen  <irar@il.ibm.com>
3223
3224	PR tree-optimization/44507
3225	* tree-vect-loop.c (get_initial_def_for_reduction): Use -1
3226	to build initial vector for BIT_AND_EXPR.
3227
32282010-06-14  Dave Korn  <dave.korn.cygwin@gmail.com>
3229
3230	Backport from mainline:
3231	2010-04-27  Dave Korn  <dave.korn.cygwin@gmail.com>
3232
3233	PR lto/42776
3234	* configure.ac (gcc_cv_as_section_has_align): Set if installed
3235	binutils supports extended .section directive needed by LTO, or
3236	warn if older binutils found.
3237	(LTO_BINARY_READER): New AC_SUBST'd variable.
3238	(LTO_USE_LIBELF): Likewise.
3239	* config.gcc (lto_binary_reader): New target-specific configure
3240	variable.
3241	* Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
3242	(LTO_USE_LIBELF): Likewise.
3243	* configure: Regenerate.
3244	* collect2.c (is_elf): Rename from this ...
3245	(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
3246	 object files in addition to ELF-formatted ones.
3247	(scan_prog_file): Caller updated.  Also allow for LTO info marker
3248	symbol to be prefixed or not by an extra underscore.
3249	* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
3250	* config/i386/winnt.c: Also #include lto-streamer.h
3251	(i386_pe_asm_named_section): Specify 1-byte section alignment for
3252	LTO named sections.
3253	(i386_pe_asm_output_aligned_decl_common): Add comment.
3254	(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
3255
32562010-06-12  Uros Bizjak  <ubizjak@gmail.com>
3257
3258	PR target/44481
3259	* config/i386/i386.md (UNSPEC_PARITY): New unspec.
3260	(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
3261	(partiysi2_cmp): Ditto.
3262	(*partiyhi2_cmp): Ditto.
3263	(*parityqi2_cmp): Remove.
3264
32652010-06-10  Alexandre Oliva  <aoliva@redhat.com>
3266
3267	PR debug/41371
3268	* var-tracking.c (find_loc_in_1pdv): Remove recursion, only
3269	tail-recurse into canonical node.  Fast-forward over
3270	non-canonical VALUEs.
3271
32722010-06-10  Jan Beulich  <jbeulich@novell.com>
3273
3274	PR bootstrap/37304
3275	* configure.ac: Replace $() with ${} when intending to expand
3276	variables rather than invoking commands.
3277	* configure: Re-generate.
3278
32792010-06-09  Dave Korn  <dave.korn.cygwin@gmail.com>
3280
3281	* opts-common.c (prune_options): Ensure replacement argv array
3282	is correctly terminated by a NULL entry.
3283
32842010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
3285
3286	Backport from mainline:
3287	2010-04-28  Mike Stump  <mikestump@comcast.net>
3288	* config/i386/darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for
3289	now.
3290
32912010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
3292
3293	Backport from mainline:
3294	2010-05-28  Iain Sandoe  <iains@gcc.gnu.org>
3295	* config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
3296
32972010-06-09  Edmar Wienskoski  <edmar@freescale.com>
3298
3299	PR target/44067
3300	* config/rs6000/rs6000.md (DIFD): Do not split dpfp values for
3301	e500v2 target.
3302
33032010-06-08  Uros Bizjak  <ubizjak@gmail.com>
3304
3305	* config/i386/i386.md (*movsi_1) <TYPE_LEA>: Use %a modifier
3306	to output operand 1.
3307	(ashift_zext lea splitter): Use DImode for multiplication.
3308
3309	* config/i386/i386.c (ix86_expand_epilogue): Do not use ix86_gen_add
3310	to generate addition.
3311
33122010-06-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3313
3314	* doc/sourcebuild.texi (Effective-Target Keywords, Other
3315	attributes): Document gas.
3316
33172010-06-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3318
3319	Backport from mainline:
3320	2010-06-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3321
3322	* configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2
3323	linker emulations.
3324	* configure: Regenerate.
3325	* config.in: Regenerate.
3326
3327	* config/i386/sol2-10.h [TARGET_GNU_LD] (I386_EMULATION): Define.
3328	(X86_64_EMULATION): Define.
3329	(TARGET_LD_EMULATION): Use them.
3330
3331	* config/sparc/sol2-gld-bi.h (SPARC32_EMULATION): Define.
3332	(SPARC64_EMULATION): Define.
3333	(LINK_ARCH_SPEC): Use them.
3334
33352010-06-07  Kai Tietz  <kai.tietz@onevision.com>
3336
3337	Backport from mainline:
3338	* config/i386.c (ix86_output_addr_vec_elt): Make LPREFIX
3339	argument for fprintf.
3340	(ix86_output_addr_diff_elt): Likewise.
3341	(x86_function_profiler): Likewise.
3342	* config/cygming.h (LOCAL_LABEL_PREFIX): Fix for x64 no-underscore.
3343	(LPREFIX): Likewise.
3344	(ASM_GENERATE_INTERNAL_LABEL): Likewise.
3345
33462010-06-04  Alexandre Oliva  <aoliva@redhat.com>
3347
3348	PR debug/41371
3349	* var-tracking.c (find_loc_in_1pdv): Mark initial value before
3350	recursing.  Check that recursion is bounded.  Rename inner var
3351	to avoid hiding incoming argument.
3352
33532010-06-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3354
3355	Backport from mainline:
3356	2010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3357
3358	* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx flavor.
3359	* configure: Regenerate.
3360	* config.in: Regenerate.
3361	* doc/install.texi (Prerequisites): Document that Solaris 2 libelf
3362	works.
3363
3364	2010-04-19  Richard Guenther  <rguenther@suse.de>
3365
3366	* configure.ac: Fix quoting around elf_getshstrndx ABI check.
3367	* configure: Re-generated.
3368
33692010-06-04  Uros Bizjak  <ubizjak@gmail.com>
3370
3371	* config/i386/i386.md (*addqi_4): Check for incdec_operand in QImode.
3372
33732010-06-04  Richard Guenther  <rguenther@suse.de>
3374
3375	Backport from mainline:
3376	2010-05-25  Jakub Jelinek  <jakub@redhat.com>
3377
3378	PR debug/41371
3379	* var-tracking.c (find_loc_in_1pdv): Guard asserts with
3380	ENABLE_CHECKING.
3381	(intersect_loc_chains): Walk the s2var's loc_chain together
3382	with s1node chain as long as the locations are equal, don't
3383	call find_loc_in_1pdv in that case.
3384
3385	2010-05-18  Jakub Jelinek  <jakub@redhat.com>
3386
3387	PR debug/41371
3388	* var-tracking.c (find_loc_in_1pdv): Add a few checks from
3389	rtx_equal_p inline.
3390
33912010-06-04  Alan Modra  <amodra@gmail.com>
3392
3393	PR target/44075
3394	* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
3395	fields for better packing.  Add lr_save_state.
3396	(rs6000_ra_ever_killed): Return lr_save_state if set.
3397	(rs6000_emit_eh_reg_restore): Set lr_save_state.
3398
33992010-06-03  Richard Guenther  <rguenther@suse.de>
3400
3401	Backport from mainline:
3402	2010-05-10  Richard Guenther  <rguenther@suse.de>
3403
3404	* lto-symtab.c (lto_symtab_entry_marked_p): Make entry
3405	marked if the entry identifier is marked.
3406
34072010-06-03  Richard Guenther  <rguenther@suse.de>
3408
3409	Backport from mainline:
3410	2010-05-16  Richard Guenther  <rguenther@suse.de>
3411
3412	* var-tracking.c (vars_copy_1): Inline ...
3413	(vars_copy): ... here.  Use FOR_EACH_HTAB_ELEMENT.
3414	(variable_union): Use FOR_EACH_HTAB_ELEMENT.  Merge asserts.
3415	(variable_merge_over_cur): Adjust.  Merge asserts.
3416	(variable_merge_over_src): Likewise.
3417	(dataflow_set_merge): Use FOR_EACH_HTAB_ELEMENT.
3418	(variable_post_merge_new_vals): Merge asserts.
3419	(variable_post_merge_perm_vals): Likewise.
3420	(find_mem_expr_in_1pdv): Likewise.
3421	(dataflow_set_different_value): Remove.
3422	(onepart_variable_different_p): Merge asserts.
3423	(variable_different_p): Likewise.
3424	(dataflow_set_different_1): Inline ...
3425	(dataflow_set_different): ... here.  Use FOR_EACH_HTAB_ELEMENT.
3426	(emit_notes_for_differences_1): Merge asserts.
3427
34282010-06-03  Jan Hubicka  <jh@suse.cz>
3429	    Jakub Jelinek  <jakub@redhat.com>
3430
3431	* var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
3432	set->regs[i] is NULL or has just one entry.
3433
34342010-06-03  Alan Modra  <amodra@gmail.com>
3435
3436	PR target/44169
3437	* config/rs6000/rs6000.md (load_toc_v4_PIC_1b): Add label operand.
3438	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Pass label
3439	rtx to gen_load_toc_v4_PIC_1b.  Tidy.
3440	(rs6000_emit_load_toc_table): Likewise.
3441
34422010-06-02  Richard Guenther  <rguenther@suse.de>
3443
3444	* lto-streamer-in.c (input_gimple_stmt): Fix typo.
3445
34462010-06-02  Richard Guenther  <rguenther@suse.de>
3447
3448	Backport from mainline:
3449	2010-05-27  Jan Hubicka  <jh@suse.cz>
3450
3451	* sched-ebb.c: Rename struct deps to struct deps_desc.
3452	* ddg.c: Likewise.
3453	* sel-sched-ir.c: Likewise.
3454	* sched-deps.c: Likewise.
3455	* sched-int.h: Likewise.
3456	* sched-rgn.c: Likewise.
3457
34582010-06-02  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
3459
3460	* config/s390/2097.md (z10_fhex): Remove insn reservation.
3461	* config/s390/s390.md (UNSPEC_COPYSIGN): Remove unused constant.
3462	(*mov<mode>_64 TD_TF, *mov<mode>_31 TD_TF, *mov<mode>_64dfp DD_DF,
3463	*mov<mode>_64 DD_DF, *mov<mode>_31, mov<mode>): Remove load zero
3464	instruction.
3465	* config/s390/s390.c: Don't accept fp zeros as valid constants
3466	anymore.
3467
34682010-05-31  Jakub Jelinek  <jakub@redhat.com>
3469
3470	PR target/44338
3471	* config/i386/sse.md (fma4i_fmadd<mode>4256, fma4i_fmsub<mode>4256,
3472	fma4i_fnmadd<mode>4256, fma4i_fnmsub<mode>4256, fma4i_fmadd<mode>4,
3473	fma4i_fmsub<mode>4, fma4i_fnmadd<mode>4, fma4i_fnmsub<mode>4,
3474	fma4i_vmfmadd<mode>4, fma4i_vmfmsub<mode>4, fma4i_vmfnmadd<mode>4,
3475	fma4i_vmfnmsub<mode>4, fma4i_fmaddsubv8sf4, fma4i_fmaddsubv4df4,
3476	fma4i_fmaddsubv4sf4, fma4i_fmaddsubv2df4, fma4i_fmsubaddv8sf4,
3477	fma4i_fmsubaddv4df4, fma4i_fmsubaddv4sf4, fma4i_fmsubaddv2df4):
3478	Guard only with TARGET_FMA4 instead of TARGET_FMA4 &&
3479	TARGET_FUSED_MADD.
3480
3481	PR middle-end/44337
3482	* expr.c (expand_assignment): Don't store anything for out-of-bounds
3483	array accesses with non-MEM.
3484
3485	PR tree-optimization/44182
3486	* tree-inline.c (copy_edges_for_bb): Don't split bb if a stmt that
3487	newly needs to end a bb is followed by debug stmts, instead return
3488	true from the function at the end.
3489	(maybe_move_debug_stmts_to_successors): New function.
3490	(copy_cfg_body): Call it if copy_edges_for_bb returned true.
3491
34922010-05-31  Kai Tietz  <kai.tietz@onevision.com>
3493
3494	Merged from trunk
3495	PR target/44161
3496	* config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
3497	flag_pic.
3498
34992010-05-28  Richard Guenther  <rguenther@suse.de>
3500
3501	PR lto/44312
3502	* lto-streamer-in.c (unpack_ts_fixed_cst_value_fields):
3503	Stream fixed-point constants mode.
3504	(unpack_ts_type_value_fields): Fix width of TYPE_MODE
3505	and TYPE_PRECISION.
3506	* lto-streamer-out.c (pack_ts_fixed_cst_value_fields):
3507	Stream fixed-point constants mode.
3508	(pack_ts_function_decl_value_fields): Fix width of TYPE_MODE
3509	and TYPE_PRECISION.
3510
35112010-05-28  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
3512
3513	* config/s390/s390.md (movqi): Fix typo ('*' -> '#').
3514
35152010-05-28  Jakub Jelinek  <jakub@redhat.com>
3516
3517	PR target/43636
3518	* builtins.c (expand_movstr): Use a temporary pseudo instead
3519	of target even when target is not NULL and not const0_rtx, but
3520	fails movstr predicate.
3521	* config/m32c/blkmov.md (movstr): Add predicate to first operand.
3522
35232010-05-27  Jon Beniston  <jon@beniston.com>
3524
3525	PR 43726
3526	* config/lm32/lm32.h: Remove definition of
3527	GO_IF_MODE_DEPENDENT_ADDRESS. Update copyright year.
3528
35292010-05-26  Richard Guenther  <rguenther@suse.de>
3530
3531	PR rtl-optimization/44164
3532	* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
3533	no-common access-path disambiguation.
3534	(indirect_ref_may_alias_decl_p): Adjust.
3535	(indirect_refs_may_alias_p): Likewise.
3536	(refs_may_alias_p_1): Likewise.
3537
35382010-05-26  Richard Guenther  <rguenther@suse.de>
3539
3540	PR middle-end/44069
3541	* tree-ssa-ccp.c (maybe_fold_stmt_addition): Avoid generating
3542	out-of-bounds array accesses.
3543
35442010-05-26  Richard Guenther  <rguenther@suse.de>
3545
3546	Backport from mainline:
3547	2010-04-15  Richard Guenther  <rguenther@suse.de>
3548
3549	* alias.c (alias_set_subset_of): Handle alias-set zero
3550	child properly.
3551
35522010-05-26  Jakub Jelinek  <jakub@redhat.com>
3553
3554	PR target/44199
3555	* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
3556	or total_size is larger than red zone size for non-V4 ABI, emit a
3557	stack_tie resp. frame_tie insn before stack pointer restore.
3558	* config/rs6000/rs6000.md (frame_tie): New insn.
3559
35602010-05-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3561
3562	* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
3563	stderr to /dev/null instead of grep -q.
3564	* configure: Regenerate.
3565
35662010-05-25  Richard Guenther  <rguenther@suse.de>
3567
3568	* gimple.c (gimple_types_compatible_p): Check type qualifications
3569	before merging pointer to complete and pointer to incomplete type.
3570	* lto-symtab.c (lto_symtab_resolve_symbols): For commons make sure
3571	we use our own resolution algorithm.  The gold linker plugin
3572	doesn't do the job we want it to do here.
3573
35742010-05-24  Richard Guenther  <rguenther@suse.de>
3575
3576	PR lto/44196
3577	* tree.c (find_decls_types_r): Walk BLOCKs and its vars.
3578
35792010-05-24  Uros Bizjak  <ubizjak@gmail.com>
3580
3581	Backport from mainline:
3582	2010-05-20  Uros Bizjak  <ubizjak@gmail.com>
3583
3584	PR target/43733
3585	* configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
3586	* configure: Regenerate.
3587	* config.in: Regenerate.
3588	* config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
3589	instead of sahf only for 64bit targets.
3590
35912010-05-24  H.J. Lu  <hongjiu.lu@intel.com>
3592
3593	Backport from mainline
3594	2010-05-24  H.J. Lu  <hongjiu.lu@intel.com>
3595
3596	* config/i386/ia32intrin.h (__crc32q): Define only if
3597	__SSE4_2__ is defined.
3598
35992010-05-23  H.J. Lu  <hongjiu.lu@intel.com>
3600
3601	Backport from mainline
3602	2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>
3603
3604	PR target/44245
3605	* config/i386/i386.c (def_builtin): Properly check
3606	OPTION_MASK_ISA_64BIT.
3607
36082010-05-23  Maarten Lankhorst  <mlankhorst@codeweavers.com>
3609
3610	Merged from trunk
3611	PR target/43869
3612	* config/i386/i386.c: Make sure that the correct regparm is passed.
3613
36142010-05-21  Jakub Jelinek  <jakub@redhat.com>
3615
3616	PR debug/44223
3617	* haifa-sched.c (schedule_insn): When freeing INSN_REG_USE_LIST,
3618	unchain each use from the cyclic next_regno_use chain first.
3619
36202010-05-21  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
3621
3622	* config/s390/s390.c (override_options): Increase the default
3623	of max-completely-peel-times.
3624
36252010-05-21  Richard Guenther  <rguenther@suse.de>
3626
3627	PR tree-optimization/44038
3628	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Avoid
3629	taking the address of a V_C_E of a constant.
3630
36312010-05-21  Richard Guenther  <rguenther@suse.de>
3632
3633	PR tree-optimization/43949
3634	* tree-vrp.c (ssa_name_nonnegative_p): Return true for unsigend types.
3635	(extract_range_from_binary_expr): Handle TRUNC_MOD_EXPR.
3636
36372010-05-21  Jakub Jelinek  <jakub@redhat.com>
3638
3639	PR debug/44205
3640	* tree-cfgcleanup.c (tree_forwarder_block_p): Return false if
3641	at -O0 goto_locus of any of the incoming edges differs from
3642	goto_locus of outgoing edge, or gimple_location of any of the
3643	labels differs.
3644
36452010-05-20  Jakub Jelinek  <jakub@redhat.com>
3646
3647	PR debug/44178
3648	* haifa-sched.c (initiate_bb_reg_pressure_info): Do not call
3649	setup_ref_regs for DEBUG_INSNs.
3650
36512010-05-19  Kenneth Zadeck  <zadeck@naturalbridge.com>
3652
3653	PR bootstrap/43870
3654	* df-scan.c (df_ref_compare): Stabilize sort.
3655
36562010-05-20  Hans-Peter Nilsson  <hp@axis.com>
3657
3658	PR target/44202
3659	* config/cris/cris.md ("*addsi3_v32"): Correct "cc"
3660	settings for 16-bit-constant "addo" alternative.
3661
36622010-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3663
3664	Backport from mainline:
3665	2010-05-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3666
3667	PR target/44074
3668	* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
3669	* configure: Regenerate.
3670	* config.in: Regenerate.
3671	* config/i386/i386.c (print_operand) <case ;>: Also print ; if
3672	!HAVE_AS_IX86_REP_LOCK_PREFIX.
3673	Don't emit whitespace.
3674	* config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
3675	(*rep_movsi): Likewise.
3676	(*rep_movsi_rex64): Likewise.
3677	(*rep_movqi): Likewise.
3678	(*rep_movqi_rex64): Likewise.
3679	(*rep_stosdi_rex64): Likewise.
3680	(*rep_stossi): Likewise.
3681	(*rep_stossi_rex64): Likewise.
3682	(*rep_stosqi): Likewise.
3683	(*rep_stosqi_rex64): Likewise.
3684	(*cmpstrnqi_nz_1): Use {%;} after repz.
3685	(*cmpstrnqi_nz_rex_1): Likewise.
3686	(*cmpstrnqi_1): Likewise.
3687	(*cmpstrnqi_rex_1): Likewise.
3688	(*strlenqi_1): Use {%;} after repnz.
3689	(*strlenqi_rex_1): Likewise.
3690	* config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
3691	(*sync_compare_and_swap<mode>): Likewise.
3692	(sync_double_compare_and_swap<mode>): Likewise.
3693	(*sync_double_compare_and_swapdi_pic): Likewise.
3694	(sync_old_add<mode>): Likewise.
3695	(sync_add<mode>): Likewise.
3696	(sync_sub<mode>): Likewise.
3697	(sync_<code><mode>): Likewise.
3698
36992010-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3700
3701	* doc/sourcebuild.texi (Effective-Target Keywords): Document
3702	3dnow, sse3, sse2.
3703	(Directives): Document optional	dg-require-effective-target
3704	selector.
3705
37062010-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3707
3708	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
3709	pentiumpro on Solaris 8/x86 with Sun as.
3710	* configure.ac (gcc_cv_as_hidden): Check for Solaris 9/x86 as
3711	hidden alias bug.
3712	(gcc_cv_as_ix86_quad): Check for .quad directive.
3713	* configure: Regenerate.
3714	* config.in: Regenerate.
3715	* config/i386/sol2.h (ASM_QUAD): Change guard to !HAVE_AS_IX86_QUAD.
3716
37172010-05-19  Richard Guenther  <rguenther@suse.de>
3718
3719	PR tree-optimization/43987
3720	* tree-ssa-structalias.c (could_have_pointers): For possibly
3721	address-taken variables force pointers to be recorded.
3722	(create_variable_info_for_1): Likewise.
3723	(push_fields_onto_fieldstack): Pass in wheter all fields
3724	must have pointers.
3725	(find_func_aliases): Query types instead of vars whether
3726	they contain pointers where appropriate.
3727
37282010-05-19  Richard Guenther  <rguenther@suse.de>
3729
3730	Backport from mainline:
3731	2010-04-26  Richard Guenther  <rguenther@suse.de>
3732
3733	PR lto/43455
3734	* tree-inline.c (tree_can_inline_p): Also check compatibility
3735	of return types.
3736
3737	2010-04-23  Richard Guenther  <rguenther@suse.de>
3738
3739	PR lto/42653
3740	* tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT
3741	of FUNCTION_DECLs.
3742
3743	2010-04-26  Richard Guenther  <rguenther@suse.de>
3744
3745	PR lto/42425
3746	* tree.c (free_lang_data_in_type): Do not free TYPE_CONTEXT
3747	if emitting debug information and it is either a function
3748	or a namespace decl.
3749
3750	2010-04-26  Richard Guenther  <rguenther@suse.de>
3751
3752	PR lto/43080
3753	* gimple.c (gimple_decl_printable_name): Deal gracefully
3754	with a NULL DECL_NAME.
3755
3756	2010-04-30  Richard Guenther  <rguenther@suse.de>
3757
3758	PR lto/43946
3759	* passes.c (init_optimization_passes): Move pass_ipa_free_lang_data
3760	first after all lowering passes.
3761
37622010-05-18  Steven Bosscher  <steven@gcc.gnu.org>
3763
3764	PR lto/44184
3765	* lto-streamer-out.c (output_gimple_stmt): Output number of labels
3766	in a GIMPLE_ASM.
3767	* lto-streamer-in.c (input_gimple_stmt): Read number of labels
3768	in a GIMPLE_ASM.
3769
37702010-05-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3771
3772	* config/i386/sol2.h (TARGET_SUN_TLS): Remove duplicate definition.
3773
37742010-05-17  Jakub Jelinek  <jakub@redhat.com>
3775
3776	PR bootstrap/42347
3777	* cfglayout.c (fixup_reorder_chain): Allow returnjump_p
3778	to have no fallthru edge.
3779
3780	PR middle-end/44102
3781	* cfgcleanup.c (try_optimize_cfg): When removing trivially empty
3782	bb with no successors, move footer whenever in IR_RTL_CFGLAYOUT
3783	mode, not just when CLEANUP_CFGLAYOUT, and when in IR_RTL_CFGRTL
3784	add BARRIER after previous bb if needed.
3785
37862010-05-17  Alan Modra  <amodra@gmail.com>
3787
3788	* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
3789	unnecessary prototype.  Replace copy_r12 and copy_r11 flag params
3790	with copy_reg rtx param.
3791	(rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
3792	Correct cases where code for ABI_V4 did not initialise the reg
3793	used to access frame.  Also leave frame_reg_rtx as sp for large
3794	frames that save no regs.
3795
37962010-05-17  Eric Botcazou  <ebotcazou@adacore.com>
3797
3798	Backport from mainline
3799	2010-05-16  Eric Botcazou  <ebotcazou@adacore.com>
3800
3801	* opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
3802	(decode_options): Likewise.
3803	* Makefile.in (opts.o): Add dependency on LTO_STREAMER_H.
3804
38052010-05-14  Jason Merrill  <jason@redhat.com>
3806
3807	PR c++/44127
3808	* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
3809	(gimple_call_set_nothrow): New.
3810	* gimple.c (gimple_build_call_from_tree): Call it.
3811	(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
3812
3813	PR c++/44127
3814	* gimplify.c (gimplify_seq_add_stmt): No longer static.
3815	* gimple.h: Declare it.
3816	* gimple.c (gimple_build_eh_filter): No ops.
3817
38182010-05-14  Jakub Jelinek  <jakub@redhat.com>
3819
3820	PR debug/44136
3821	* cfgexpand.c (expand_debug_expr): If non-memory op0
3822	has BLKmode, return NULL.
3823
38242010-05-14  H.J. Lu  <hongjiu.lu@intel.com>
3825
3826	Backport from mainline
3827	2010-05-12  H.J. Lu  <hongjiu.lu@intel.com>
3828
3829	PR target/44088
3830	* config/i386/sse.md (*avx_vmmaskcmp<mode>3): New.
3831
38322010-05-14  Richard Guenther  <rguenther@suse.de>
3833
3834	PR tree-optimization/44124
3835	* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.
3836
38372010-05-13  Jason Merrill  <jason@redhat.com>
3838
3839	* gimplify.c (gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the
3840	rhs didn't change.
3841
3842	PR c++/43787
3843	* gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr
3844	returns GS_OK.
3845	(gimplify_modify_expr_rhs): Return GS_OK if anything changed.
3846
38472010-05-12  Wolfgang Gellerich  <gellerich@de.ibm.com>
3848
3849	* config/s390/s390.c (override_options): Adjust the z10 defaults
3850	for max-unroll-times, max-completely-peeled-insns
3851	and max-completely-peel-times.
3852
38532010-05-12  Jakub Jelinek  <jakub@redhat.com>
3854
3855	PR middle-end/44085
3856	* gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
3857	change value of ORT_TASK.
3858	(new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
3859	(omp_notice_threadprivate_variable): New function.
3860	(omp_notice_variable): Call it for threadprivate variables.
3861	If enclosing ctx is a task, print enclosing task rather than
3862	enclosing parallel.  Handle ORT_UNTIED_TASK like ORT_TASK.
3863	(gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
3864	if task has untied clause.
3865
38662010-05-11  Jakub Jelinek  <jakub@redhat.com>
3867
3868	PR middle-end/44071
3869	* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
3870	no fallthru edge.
3871	* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
3872	optimizing away empty bb with no successors, move over its
3873	footer chain to fallthru predecessor.
3874	* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
3875	(rtl_split_edge): For asm goto call patch_jump_insn even if
3876	splitting fallthru edge.
3877
38782010-05-11  Martin Jambor  <mjambor@suse.cz>
3879
3880	PR middle-end/43812
3881	* ipa.c (dissolve_same_comdat_group_list): New function.
3882	(function_and_variable_visibility): Call
3883	dissolve_same_comdat_group_list when comdat group contains external or
3884	newly local nodes.
3885	* cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
3886	lists are circular and that they contain only DECL_ONE_ONLY nodes.
3887
38882010-05-10  Jakub Jelinek  <jakub@redhat.com>
3889
3890	PR debug/44028
3891	* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
3892	clear also INSN_REG_USE_LIST.
3893
38942010-05-10  H.J. Lu  <hongjiu.lu@intel.com>
3895
3896	Backport from mainline
3897	2010-05-10  H.J. Lu  <hongjiu.lu@intel.com>
3898		    Vladimir Makarov  <vmakarov@redhat.com>
3899
3900	PR rtl-optimization/44012
3901	* ira-build.c (remove_unnecessary_allocnos): Nullify
3902	regno_allocno_map of the removed allocno.
3903
39042010-05-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3905
3906	* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
3907	to /dev/null.
3908	* configure: Regenerate.
3909
39102010-05-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3911
3912	* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
3913	unused.
3914	Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
3915	* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
3916	support in Sun ld.
3917	* configure: Regenerate.
3918
39192010-05-09  H.J. Lu  <hongjiu.lu@intel.com>
3920
3921	Backport from mainline
3922	2010-05-09  H.J. Lu  <hongjiu.lu@intel.com>
3923
3924	PR target/44046
3925	* config/i386/driver-i386.c (host_detect_local_cpu): Properly
3926	detect Atom, Core 2 and Core i7.
3927
39282010-05-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3929
3930	PR documentation/44016
3931	* doc/standards.texi (Standards): Link to unversioned
3932	cxx0x_status.html page.
3933
39342010-05-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3935
3936	* config/mips/iris.h (LINK_SPEC): Don't pass -init, -fini with -r.
3937
39382010-05-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3939
3940	* config/mips/dbxmdebug.h: Remove.
3941	* config.gcc (mips-sgi-irix[56]*): Remove mips/dbxmdebug.h.
3942
39432010-05-05  Kaz Kojima  <kkojima@gcc.gnu.org>
3944
3945	Backport from mainline:
3946	2010-04-22  Kaz Kojima  <kkojima@gcc.gnu.org>
3947
3948	PR target/43744
3949	* config/sh/sh.c (find_barrier): Don't emit a constant pool
3950	in the middle of insns for casesi_worker_2.
3951
39522010-05-05  Jason Merrill  <jason@redhat.com>
3953
3954	PR debug/43370
3955	* c-common.c (handle_aligned_attribute): Respect
3956	ATTR_FLAG_TYPE_IN_PLACE.
3957
39582010-05-05  Richard Guenther  <rguenther@suse.de>
3959
3960	PR c++/43880
3961	* tree-inline.c (copy_bind_expr): Also copy bind expr vars
3962	value-exprs.
3963
39642010-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3965
3966	Backport from mainline
3967	2010-05-04  H.J. Lu  <hongjiu.lu@intel.com>
3968
3969	PR middle-end/43671
3970	* alias.c (true_dependence): Handle the same VALUE in x and mem.
3971	(canon_true_dependence): Likewise.
3972	(write_dependence_p): Likewise.
3973
39742010-05-03  Jakub Jelinek  <jakub@redhat.com>
3975
3976	PR debug/43972
3977	* config/i386/i386.c (ix86_delegitimize_address): Make sure the
3978	result mode matches original rtl mode.
3979
39802010-05-02  Uros Bizjak  <ubizjak@gmail.com>
3981
3982	* config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
3983	when processing flag options.
3984
39852010-05-02  H.J. Lu  <hongjiu.lu@intel.com>
3986
3987	Backport from mainline
3988	2010-04-29  H.J. Lu  <hongjiu.lu@intel.com>
3989
3990	PR target/43921
3991	* config/i386/i386.c (get_some_local_dynamic_name): Replace
3992	INSN_P with NONDEBUG_INSN_P.
3993	(distance_non_agu_define): Likewise.
3994	(distance_agu_use): Likewise.
3995
39962010-04-30  Eric Botcazou  <ebotcazou@adacore.com>
3997
3998	* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check the alignment of
3999	the variable part of the offset as well.  Use highest_pow2_factor for
4000	all alignment checks.
4001
40022010-04-30  Jakub Jelinek  <jakub@redhat.com>
4003
4004	PR debug/43942
4005	* tree.c (auto_var_in_fn_p): Return false for DECL_EXTERNAL vars.
4006
40072010-04-28  Uros Bizjak  <ubizjak@gmail.com>
4008
4009	* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
4010	type if available.
4011
40122010-04-28  Eric Botcazou  <ebotcazou@adacore.com>
4013
4014	* lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
4015	record or union type with RECORD_OR_UNION_TYPE_P predicate.
4016	(lto_input_ts_type_tree_pointers): Likewise.
4017	* lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
4018	(lto_output_ts_type_tree_pointers): Likewise.
4019
40202010-04-28  Eric Botcazou  <ebotcazou@adacore.com>
4021
4022	* lto-streamer.c [LTO_STREAMER_DEBUG] (tree_htab, tree_hash_entry,
4023	hash_tree, eq_tree): New tree hash table.
4024	(lto_streamer_init) [LTO_STREAMER_DEBUG]: Initialize it.
4025	[LTO_STREAMER_DEBUG] (lto_orig_address_map, lto_orig_address_get,
4026	lto_orig_address_remove): Reimplement.
4027
40282010-04-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4029
4030	PR target/22224
4031	* config/alpha/osf.h (ASM_OUTPUT_LOCAL): Redefine.
4032
40332010-04-28  Martin Jambor  <mjambor@suse.cz>
4034
4035	PR tree-optimization/43846
4036	* tree-sra.c (struct access): New flag grp_assignment_read.
4037	(build_accesses_from_assign): Set grp_assignment_read.
4038	(sort_and_splice_var_accesses): Propagate grp_assignment_read.
4039	(enum mark_read_status): New type.
4040	(analyze_access_subtree): Propagate grp_assignment_read, create
4041	accesses also if both direct_read and root->grp_assignment_read.
4042
40432010-04-27  Kai Tietz  <kai.tietz@onevision.com>
4044
4045	Back-merged from trnnk.
4046	* collect2.c (TARGET_64BIT): Redefine to target's default.
4047	* tlink.c: Likewise.
4048	* config/i386/cygming.h (USER_LABEL_PREFIX): Define
4049	dependent to TARGET_64BIT and USE_MINGW64_LEADING_UNDERSCORES.
4050	* config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): Use
4051	for underscoring __USER_LABEL_PREFIX__.
4052	* config/i386/mingw-w64.h (SUB_LINK_ENTRY): New macro.
4053	(SUB_LINK_ENTRY32): New.
4054	(SUB_LINK_ENTRY64): New.
4055	(LINK_SPEC): Replace entry point spec by
4056	SUB_LINK_ENTRY.
4057	* config/i386/mingw32 (SUB_LINK_ENTRY32): New.
4058	(SUB_LINK_ENTRY64): New.
4059	(SUB_LINK_ENTRY): New.
4060	(LINK_SPEC): Use SUB_LINK_ENTRY instead of hard-coded entry-point.
4061	(DWARF2_UNWIND_INFO): Error out for use of dw2 unwind when
4062	x64 target is choosen.
4063	* config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
4064	* configure: Regenerated.
4065	* configure.ac (leading-mingw64-underscores): Option added.
4066
40672010-04-27  Jakub Jelinek  <jakub@redhat.com>
4068
4069	* dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression
4070	force using DW_CFA_def_cfa instead of DW_CFA_def_cfa_register
4071	or DW_CFA_def_cfa_offset{,_sf}.
4072
4073	* unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
4074
40752010-04-27  Hans-Peter Nilsson  <hp@bitrange.com>
4076
4077	PR target/43889
4078	* config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
4079	Add missing earlyclobber for second alternative.
4080
40812010-04-26  Jakub Jelinek  <jakub@redhat.com>
4082
4083	PR c/43893
4084	* c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
4085
40862010-04-26  Jie Zhang  <jie@codesourcery.com>
4087
4088	PR tree-optimization/43833
4089	* tree-vrp.c (range_int_cst_p): New.
4090	(range_int_cst_singleton_p): New.
4091	(extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
4092	when both operands are constants.  Use range_int_cst_p in
4093	BIT_IOR_EXPR case.
4094
40952010-04-23  Martin Jambor  <mjambor@suse.cz>
4096
4097	PR middle-end/43835
4098	* tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
4099	function does not have type attributes.
4100
41012010-04-23  Richard Guenther  <rguenther@suse.de>
4102
4103	PR tree-optimization/43572
4104	* tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.
4105
41062010-04-23  Richard Guenther  <rguenther@suse.de>
4107
4108	Backport from mainline
4109	2010-04-22  Richard Guenther  <rguenther@suse.de>
4110
4111	PR tree-optimization/43845
4112	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly
4113	lookup the CALL_EXPR function and arguments.
4114
41152010-04-21  Jakub Jelinek  <jakub@redhat.com>
4116
4117	PR middle-end/43570
4118	* omp-low.c (scan_sharing_clauses): Don't scan_omp_op
4119	OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
4120	(lower_copyprivate_clauses): Use private var in outer
4121	context instead of original var.  Make sure the types
4122	are correct for VLAs.
4123
41242010-04-20  Richard Guenther  <rguenther@suse.de>
4125
4126	PR tree-optimization/43783
4127	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Drop
4128	constant ARRAY_REF operands two and three if possible.
4129
41302010-04-20  Richard Guenther  <rguenther@suse.de>
4131
4132	PR tree-optimization/43796
4133	* tree-vrp.c (adjust_range_with_scev): Lookup init and step
4134	from SCEV in the lattice.
4135	(vrp_visit_phi_node): Dump change.
4136
41372010-04-20  Jakub Jelinek  <jakub@redhat.com>
4138
4139	PR middle-end/43337
4140	* tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
4141	with non-local decl doesn't need chain.
4142
41432010-04-20  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
4144
4145	PR target/43635
4146	* config/s390/s390.c (s390_emit_call): Turn direct into indirect
4147	calls for -fpic -m31 if they have been sibcall optimized.
4148
41492010-04-19  DJ Delorie  <dj@redhat.com>
4150
4151	* cfgexpand.c (expand_debug_expr): Check for mismatched modes in
4152	POINTER_PLUS_EXPR and fix them.
4153
41542010-04-19  Jie Zhang  <jie@codesourcery.com>
4155
4156	PR target/43662
4157	* reginfo.c (reinit_regs): Set caller_save_initialized_p
4158	to false.
4159
41602010-04-19  Richard Guenther  <rguenther@suse.de>
4161
4162	PR tree-optimization/43572
4163	* tree-tailcall.c (find_tail_calls): Verify the tail call
4164	properly.
4165
41662010-04-19 Ira Rosen  <irar@il.ibm.com>
4167
4168	PR tree-optimization/43771
4169	* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
4170	load permutation doesn't have gaps.
4171
41722010-04-18  Matthias Klose  <doko@ubuntu.com>
4173
4174	* gcc.c (main): Search for liblto_plugin.so with mode R_OK.
4175
41762010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4177
4178	Backport from mainline:
4179	2010-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4180
4181	* configure.ac (plugin -rdynamic test): Log result.
4182	* configure: Regenerate.
4183	* config/sol2.h (LINK_SPEC): Handle -rdynamic.
4184	(RDYNAMIC_SPEC): Define.
4185	* config/sol2-gld.h (RDYNAMIC_SPEC): Redefine.
4186
41872010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4188
4189	Backport from mainline:
4190	2010-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4191
4192	* config/sparc/sol2-gld.h: Remove SPARC reference.  Rename ...
4193	* config/sol2-gld.h: ... here.
4194	* config.gcc (sparc*-*-solaris2*): Reflect this.
4195	(i[34567]86-*-solaris2*): Use it.
4196
41972010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4198
4199	Backport from mainline:
4200	2010-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4201
4202	* configure.ac: Determine Sun ld version numbers.
4203	(comdat_group): Restrict GNU ld version checks to gld.
4204	(comdat_group, *-*-solaris2.1[1-9]*): Enable for Sun ld > 1.1688.
4205	(enable_comdat): Support --enable-comdat.
4206	* configure: Regenerate.
4207	* doc/install.texi (Configuration): Document --enable-comdat.
4208
42092010-04-01  Uros Bizjak  <ubizjak@gmail.com>
4210
4211	Backport from mainline:
4212	2010-04-14  Uros Bizjak  <ubizjak@gmail.com>
4213
4214	* config/i386/i386.md (*divmod<mode>4): Remove stray "&&" from
4215	splitter condition.
4216	(*udivmod<mode>4): Ditto.
4217
4218	2010-04-14  Uros Bizjak  <ubizjak@gmail.com>
4219
4220	* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
4221	from insn template.
4222
42232010-04-15  Thomas Schwinge  <tschwinge@gnu.org>
4224
4225	Backport from mainline:
4226	2010-04-15  Thomas Schwinge  <tschwinge@gnu.org>
4227
4228	* config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux.
4229
42302010-04-15  Richard Guenther  <rguenther@suse.de>
4231
4232	PR tree-optimization/43627
4233	* tree-vrp.c (extract_range_from_unary_expr): Widenings
4234	of [1, +INF(OVF)] go to [1, +INF(OVF)] of the wider type,
4235	not varying.
4236
42372010-04-14  Richard Guenther  <rguenther@suse.de>
4238
4239	* DEV-PHASE: Set back to prerelease.
4240	* BASE-VER: Bump to 4.5.1.
4241
42422010-04-14  Release Manager
4243
4244	* GCC 4.5.0 released.
4245
42462010-04-13  Michael Matz  <matz@suse.de>
4247
4248	PR middle-end/43730
4249	* builtins.c (expand_builtin_interclass_mathfn): Also create
4250	a register if the predicate doesn't match.
4251
42522010-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4253
4254	* doc/contrib.texi (Contributors, Rainer Orth): Update.
4255
42562010-04-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4257
4258	PR target/43643
4259	* config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
4260
42612010-04-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4262
4263	* doc/install.texi (Specific, i?86-*-solaris2.10): Fix grammar.
4264	(Specific, *-*-solaris2*): Likewise.
4265	Don't prefer Sun as over GNU as.
4266
42672010-04-08  Richard Guenther  <rguenther@suse.de>
4268
4269	PR tree-optimization/43679
4270	* tree-ssa-pre.c (eliminate): Only propagate copies.
4271
42722010-04-08  Jakub Jelinek  <jakub@redhat.com>
4273
4274	PR debug/43670
4275	* cfgexpand.c (expand_debug_expr): If for non-NULL offset
4276	op0 is not a MEM, just return NULL instead of assertion
4277	failure.
4278	(discover_nonconstant_array_refs): Don't walk debug stmts.
4279
42802010-04-07  H.J. Lu  <hongjiu.lu@intel.com>
4281
4282	PR target/43668
4283	* config/i386/i386.c (setup_incoming_varargs_64): Align stack to
4284	16byte for FP register save area.
4285
42862010-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4287
4288	* doc/install.texi (Configuration): Move description of
4289	--enable-lto, --with-libelf*, --enable-gold from Java section to
4290	general section.
4291
4292	* doc/generic.texi (Working with declarations)
4293	(Function Properties, C and C++ Trees): Fix typos.
4294	* doc/sourcebuild.texi (Top Level): Likewise.
4295
42962010-04-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4297
4298	* config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to
4299	generic.
4300
43012010-04-06  Jakub Jelinek  <jakub@redhat.com>
4302
4303	PR target/43667
4304	* config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
4305	instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
4306	(ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
4307	MULTI_* defines for 4 argument vpermil2p* builtins.
4308
43092010-04-06  Joseph Myers  <joseph@codesourcery.com>
4310
4311	* doc/invoke.texi, doc/standards.texi: Refer to
4312	gcc-4.5/c99status.html.
4313
43142010-04-06  Jakub Jelinek  <jakub@redhat.com>
4315
4316	PR target/43638
4317	* config/i386/i386.c (print_operand): Remove 'e' and 'E' code
4318	handling.
4319
43202010-04-06  Richard Guenther  <rguenther@suse.de>
4321
4322	PR middle-end/43661
4323	* fold-const.c (fold_comparison): Handle X * 0 CMP 0.
4324
43252010-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4326
4327	* doc/invoke.texi (Optimize Options): Document that LTO
4328	won't remove object access purely due to incompatible
4329	declarations.
4330
43312010-04-04  Matthias Klose  <doko@ubuntu.com>
4332
4333	* graphite-sese-to-poly.c (translate_scalar_reduction_to_array):
4334	Initialize variable.
4335
43362010-04-03  Richard Guenther  <rguenther@suse.de>
4337
4338	PR middle-end/42509
4339	* alias.c (nonoverlapping_memrefs_p): For spill-slot accesses
4340	require a non-NULL MEM_OFFSET.
4341
43422010-04-02  Steven Bosscher  <steven@gcc.gnu.org>
4343
4344	* ada/gcc-interface/Make-lang.in, alias.c, attribs.c, auto-inc-dec.c,
4345	basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
4346	collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
4347	config/alpha/predicates.md, config/arm/arm.md,
4348	config/arm/lib1funcs.asm, config/arm/neon-schedgen.ml,
4349	config/avr/avr.c, config/avr/avr.md, config/bfin/bfin.c,
4350	config/darwin9.h, config/darwin.c, config/darwin.h,
4351	config/h8300/h8300.c, config/i386/cpuid.h, config/i386/cygming.h,
4352	config/i386/cygwin.h, config/i386/mingw32.h, config/i386/msformat-c.c,
4353	config/i386/sol2-10.h, config/i386/xopintrin.h, config/ia64/ia64.c,
4354	config/ia64/ia64.md, config/ia64/sync.md, config/mep/mep.c,
4355	config/mips/mips.md, config/mn10300/mn10300.c,
4356	config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.md,
4357	config/rs6000/aix.h, config/rs6000/dfp.md,
4358	config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-c.c,
4359	config/rs6000/vector.md, config/rtems.h, config/rx/rx.md,
4360	config/s390/s390.md, config/sol2-c.c, config/sparc/sol2-bi.h,
4361	config/sparc/sol2-gas.h, config/sparc/sparc.h, config/sparc/sparc.md,
4362	config/sparc/sparc-protos.h, config/spu/spu.c, config/spu/spu-c.c,
4363	config/t-darwin, convert.c, c.opt, c-opts.c, cp/Make-lang.in,
4364	c-pretty-print.c, c-typeck.c, df-core.c, df-scan.c, diagnostic.c,
4365	diagnostic.h, doc/cppopts.texi, doc/cpp.texi, doc/extend.texi,
4366	doc/gimple.texi, doc/languages.texi, doc/plugins.texi, doc/rtl.texi,
4367	doc/standards.texi, doc/tree-ssa.texi, doc/trouble.texi, dominance.c,
4368	fold-const.c, fortran/Make-lang.in, fwprop.c, gcc-plugin.h,
4369	gensupport.c, gimple.h, gimple-iterator.c, graphite.c,
4370	graphite-clast-to-gimple.c, graphite-clast-to-gimple.h,
4371	graphite-dependences.c, graphite-poly.c, graphite-poly.h,
4372	graphite-ppl.c, graphite-ppl.h, graphite-scop-detection.c,
4373	graphite-sese-to-poly.c, graphite-sese-to-poly.h, ifcvt.c, intl.c,
4374	intl.h, ipa.c, ipa-cp.c, ipa-inline.c, ipa-prop.c, ipa-prop.h,
4375	ipa-pure-const.c, ipa-reference.c, ipa-type-escape.c, ira-color.c,
4376	ira-conflicts.c, ira-lives.c, java/Make-lang.in, lambda-code.c,
4377	loop-invariant.c, lto/Make-lang.in, lto-streamer.h, lto-streamer-in.c,
4378	objc/Make-lang.in, objcp/Make-lang.in, omp-low.c, optc-gen.awk,
4379	opt-functions.awk, opth-gen.awk, params.def, passes.c,
4380	postreload-gcse.c, print-tree.c, recog.c, regrename.c, reload.h,
4381	rtl.def, sched-int.h, sched-rgn.c, sel-sched-dump.c, sese.c, sese.h,
4382	store-motion.c, stor-layout.c, tree-cfgcleanup.c, tree-chrec.c,
4383	tree-complex.c, tree-data-ref.c, tree.def, tree-eh.c, tree-flow.h,
4384	tree-flow-inline.h, tree.h, tree-loop-distribution.c, tree-outof-ssa.c,
4385	tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
4386	tree-scalar-evolution.c, tree-ssa-address.c, tree-ssa-alias.c,
4387	tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dom.c,
4388	tree-ssa-dse.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
4389	tree-ssa-loop-manip.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
4390	tree-ssa-pre.c, tree-ssa-sccvn.c, tree-ssa-structalias.c,
4391	tree-ssa-uncprop.c, tree-tailcall.c, tree-vect-data-refs.c,
4392	tree-vect-loop.c, tree-vectorizer.h, tree-vect-slp.c, tree-vrp.c,
4393	unwind-dw2-fde-darwin.c, varpool.c: Update copyright years.
4394
43952010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4396
4397	PR other/43620
4398	* doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
4399	* aclocal.m4: Regenerate.
4400
44012010-04-02  Richard Guenther  <rguenther@suse.de>
4402
4403	PR tree-optimization/43629
4404	* tree-ssa-ccp.c (likely_value): Reset all_undefined_operands
4405	if we have seen a constant value.
4406
44072010-04-02  Joseph Myers  <joseph@codesourcery.com>
4408
4409	* read-rtl.c (read_rtx_1): Give an error for EOF while looking for
4410	']'.
4411
44122010-04-02  Richard Earnshaw  <rearnsha@arm.com>
4413
4414	PR target/43469
4415	* arm.c (legitimize_tls_address): Adjust call to
4416	gen_tls_load_dot_plus_four.
4417	(arm_note_pic_base): New function.
4418	(arm_cannot_copy_insn_p): Use it.
4419	* thumb2.md (tls_load_dot_plus_four): Rework to avoid use of '+' in
4420	constraint.
4421
44222010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4423
4424	PR bootstrap/43531
4425
4426	Revert:
4427	2009-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4428
4429	* Makefile.in ($(out_object_file)): Depend on
4430	gt-$(basename $(notdir $(out_file))).h.
4431
44322010-04-01  Ralf Cors��pius  <ralf.corsepius@rtems.org>
4433
4434	* config.gcc (lm32-*-rtems*): Add t-lm32.
4435
44362010-04-01  Joel Sherrill  <joel.sherrill@oarcorp.com>
4437
4438	* config.gcc: Add lm32-*-rtems*.
4439	* config/lm32/rtems.h: New file.
4440
44412010-04-01  Dave Korn  <dave.korn.cygwin@gmail.com>
4442
4443	PR target/42609
4444	* config/i386/cygwin.h (CXX_WRAP_SPEC): Disable spec when -mno-cygwin.
4445
44462010-04-01  Jakub Jelinek  <jakub@redhat.com>
4447
4448	* dwarf2out.c (output_compilation_unit_header): For
4449	-gdwarf-4 use version 4 instead of version 3.
4450	(output_line_info): For version 4 and above emit additional
4451	maximum ops per insn header field.
4452	(DWARF_LINE_DEFAULT_MAX_OPS_PER_INSN): Define.
4453
4454	* dwarf2out.c (is_c_family, is_java): Remove.
4455	(lower_bound_default): New function.
4456	(add_bound_info, gen_descr_array_type_die): Use it.
4457
44582010-04-01  Dodji Seketeli  <dodji@redhat.com>
4459
4460	PR debug/43325
4461	* dwarf2out.c (gen_variable_die): Allow debug info for variable
4462	re-declaration when it happens in a function.
4463
44642010-04-01  Aldy Hernandez  <aldyh@redhat.com>
4465
4466	* cgraph.c (cgraph_add_function_insertion_hook): Update comment.
4467	(cgraph_remove_function_insertion_hook): Same.
4468	(cgraph_call_function_insertion_hooks): Same.
4469
44702010-04-01  Richard Guenther  <rguenther@suse.de>
4471
4472	PR middle-end/43614
4473	* tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
4474	and TREE_THIS_VOLATILE.
4475	(copy_ref_info): Likewise.
4476	* tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
4477	* tree.c (build6_stat): Ignore side-effects of all but arg5
4478	for TARGET_MEM_REF.  Set TREE_THIS_VOLATILE from arg5 of
4479	TARGET_MEM_REF.
4480
44812010-04-01  Richard Guenther  <rguenther@suse.de>
4482
4483	PR tree-optimization/43607
4484	* ipa-type-escape.c (check_call): Do not access non-existing
4485	arguments.
4486
44872010-04-01  Richard Guenther  <rguenther@suse.de>
4488
4489	PR middle-end/43602
4490	Revert
4491	2010-03-30  Seongbae Park  <seongbae.park@gmail.com>
4492		    Jack Howarth  <howarth@bromo.med.uc.edu>
4493
4494	* tree-profile.c (tree_init_ic_make_global_vars): Make static
4495	variables TLS.
4496
44972010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4498
4499	* doc/install.texi (Prerequisites): Document libelf usability on
4500	IRIX 5/6 and Solaris 2.
4501	(Specific, i?86-*-solaris2.10): No 64-bit default configuration.
4502	Update GNU as, GNU ld requirements.
4503	(Specific, *-*-solaris2*): Document Solaris 7 obsoletion, removal.
4504	Document Sun Studio compiler download.
4505	Update and simplify as, ld recommendations.
4506	(Specific, *-*-solaris2.7): Note obsoletion, removal.
4507
45082010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4509
4510	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32,
4511	with_tune_32 to pentium4.
4512
45132010-04-01  Uros Bizjak  <ubizjak@gmail.com>
4514
4515	* config/i386/cpuid.h (__get_cpuid_max): Move misplaced comment.
4516
45172010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4518
4519	* doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
4520	obsoletion, removal.
4521	Update IDO URL.
4522	Document GNU as requirement.
4523	Update configure requirements.
4524	(Specific, mips-sgi-irix6): Document IRIX 6 < 6.5 obsoletion,
4525	removal.
4526	Recomment IRIX 6.5.18+.
4527	Document IDF/IDL requirement.
4528	Document GNU as requirement.
4529	Document GNU ld bootstrap failure.
4530	Remove freeware.sgi.com reference.
4531
45322010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4533
4534	* doc/install.texi (Specific, alpha*-dec-osf*): Document Tru64
4535	UNIX V4.0, V5.0 obsoletion, removal.
4536	Remove --with-gc=simple reference.
4537	Update VM requirements during bootstrap.
4538	Remove -oldas bootstrap description.
4539	Update binutils reference.
4540	Remove comparison failure note.
4541
45422010-03-31  Richard Guenther  <rguenther@suse.de>
4543	    Zdenek Dvorak  <ook@ucw.cz>
4544	    Sebastian Pop  <sebastian.pop@amd.com>
4545
4546	PR middle-end/43464
4547	* tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes
4548	with multiple arguments.
4549	(execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa.
4550
45512010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
4552
4553	* graphite-dependences.c (print_pddr): Call print_pdr with an
4554	extra argument.
4555	* graphite-poly.c (debug_pdr): Add an extra argument for the
4556	verbosity level.
4557	(print_pdr): Same.
4558	(print_pbb_domain): Same.
4559	(print_pbb): Same.
4560	(print_scop_context): Same.
4561	(print_scop): Same.
4562	(print_cloog): Same.
4563	(debug_pbb_domain): Same.
4564	(debug_pbb): Same.
4565	(print_pdrs): Same.
4566	(debug_pdrs): Same.
4567	(debug_scop_context): Same.
4568	(debug_scop): Same.
4569	(debug_cloog): Same.
4570	(print_scop_params): Same.
4571	(debug_scop_params): Same.
4572	(print_iteration_domain): Same.
4573	(print_iteration_domains): Same.
4574	(debug_iteration_domain): Same.
4575	(debug_iteration_domains): Same.
4576	(print_scattering_function): Same.
4577	(print_scattering_functions): Same.
4578	(debug_scattering_function): Same.
4579	(debug_scattering_functions): Same.
4580	* graphite-poly.h (debug_pdr): Update declaration.
4581	(print_pdr): Same.
4582	(print_pbb_domain): Same.
4583	(print_pbb): Same.
4584	(print_scop_context): Same.
4585	(print_scop): Same.
4586	(print_cloog): Same.
4587	(debug_pbb_domain): Same.
4588	(debug_pbb): Same.
4589	(print_pdrs): Same.
4590	(debug_pdrs): Same.
4591	(debug_scop_context): Same.
4592	(debug_scop): Same.
4593	(debug_cloog): Same.
4594	(print_scop_params): Same.
4595	(debug_scop_params): Same.
4596	(print_iteration_domain): Same.
4597	(print_iteration_domains): Same.
4598	(debug_iteration_domain): Same.
4599	(debug_iteration_domains): Same.
4600	(print_scattering_function): Same.
4601	(print_scattering_functions): Same.
4602	(debug_scattering_function): Same.
4603	(debug_scattering_functions): Same.
4604
46052010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
4606
4607	* graphite-poly.c (print_scattering_function_1): New.
4608	(print_scattering_function): Call it.
4609	(print_scop_params): Remove spaces at the end of lines.
4610	(print_cloog): New.
4611	(debug_cloog): New.
4612	* graphite-poly.h (print_cloog): Declared.
4613	(debug_cloog): Declared.
4614
46152010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
4616
4617	* graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump
4618	in loop->header.
4619	* tree-flow.h (canonicalize_loop_ivs): Updated declaration.
4620	* tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch.
4621	* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter
4622	to switch between adding the IV bump in loop->latch or in loop->header.
4623
46242010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
4625
4626	* graphite-poly.c (print_scattering_function): Pretty print following
4627	the scoplib format.
4628	(print_pdr): Same.
4629	(print_pbb_domain): Same.
4630	(dump_gbb_cases): Same.
4631	(dump_gbb_conditions): Same.
4632	(print_pdrs): Same.
4633	(print_pbb): Same.
4634	(print_scop_params): Same.
4635	(print_scop_context): Same.
4636	(print_scop): Same.
4637	(print_pbb_body): New.
4638	(lst_indent_to): New.
4639	(print_lst): Start new lines with a #.
4640	* graphite-poly.h (pbb_bb): New.
4641	(pbb_index): Use pbb_bb.
4642	* graphite-ppl.c (ppl_print_powerset_matrix): Print the number of
4643	disjuncts.
4644	* tree-data-ref.c (dump_data_reference): Start new lines with a #.
4645
46462010-03-31  Jakub Jelinek  <jakub@redhat.com>
4647
4648	* dwarf2out.c (size_of_die): For -gdwarf-4 use
4649	uleb128 size instead of fixed 1 or 2 for dw_val_class_loc
4650	and 0 instead of 1 for dw_val_class_flag.
4651	(value_format): For -gdwarf-4 use DW_FORM_sec_offset for
4652	dw_val_class_range_list, dw_val_class_loc_list,
4653	dw_val_class_lineptr and dw_val_class_macptr, use
4654	DW_FORM_flag_present for dw_val_class_flag and
4655	DW_FORM_exprloc for dw_val_class_loc.
4656	(output_die): For -gdwarf-4 print dw_val_class_loc
4657	size as uleb128 instead of 1 or 2 bytes and don't print
4658	anything for dw_val_class_flag.
4659
4660	* var-tracking.c (vt_init_cfa_base): Use cselib_lookup_from_insn
4661	instead of cselib_lookup following by tweaking locs->setting_insn.
4662
4663	PR bootstrap/43596
4664	* cselib.c (cselib_process_insn): Clear cselib_current_insn
4665	even before returning from label, setjmp call or volatile asm
4666	handling.
4667
46682010-03-31  Richard Guenther  <rguenther@suse.de>
4669
4670	PR middle-end/43600
4671	* cgraphunit.c (cgraph_output_in_order): Do not allocate
4672	temporary data on stack.
4673
46742010-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4675
4676	* config/sparc/sysv4.h (PUSHSECTION_FORMAT): Remove undef.
4677	(PUSHSECTION_ASM_OP): Remove.
4678	(POPSECTION_ASM_OP): Remove.
4679	(PUSHSECTION_FORMAT): Remove.
4680	* config/sol2.h (PUSHSECTION_FORMAT): Define.
4681	* config/sparc/sol2.h [!USE_GAS] (PUSHSECTION_FORMAT): Redefine.
4682	* config/sol2.c (solaris_output_init_fini): Use it.
4683
46842010-03-31  Jie Zhang  <jie@codesourcery.com>
4685
4686	PR 43574
4687	* opt-functions.awk (var_type_struct): Use signed char type
4688	for simple variables.
4689
46902010-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4691
4692	* config/sol2.c: Include output.h.
4693	(solaris_assemble_visibility): New function.
4694	* config/t-sol2 (sol2.o): Add output.h dependency.
4695	* config/sol2-protos.h (solaris_assemble_visibility): Declare.
4696	* config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY):
4697	Redefine.
4698
46992010-03-31  Jakub Jelinek  <jakub@redhat.com>
4700
4701	PR target/43580
4702	* config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of
4703	V2SImode or XFmode on PRE_DEC.
4704
4705	PR debug/43557
4706	* cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like
4707	BLKmode.
4708
47092010-03-31  Jie Zhang  <jie@codesourcery.com>
4710
4711	PR 43562
4712	* reload.h (caller_save_initialized_p): Declare.
4713	* toplev.c (backend_init_target): Don't call
4714	init_caller_save but set caller_save_initialized_p to false.
4715	* caller-save.c (caller_save_initialized_p): Define.
4716	(init_caller_save): Check caller_save_initialized_p.
4717	* ira.c (ira): Call init_caller_save if flag_caller_saves.
4718
47192010-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4720
4721	PR target/39048
4722	* config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
4723	and soft-fp/t-softfp to tmake_file.
4724	* config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
4725	(LIBGCC2_TF_CEXT): Define.
4726	(TF_SIZE): Define.
4727
47282010-03-30  Alexandre Oliva  <aoliva@redhat.com>
4729
4730	PR debug/42977
4731	* cselib.c (n_useless_values): Document handling of debug locs.
4732	(n_useless_debug_values, n_debug_values): New variables.
4733	(new_elt_loc_list): Don't add to debug values, keep count.
4734	(promote_debug_loc): New.
4735	(cselib_reset_table): Zero new variables.
4736	(entry_and_rtx_equal_p): Promote debug locs.
4737	(discard_useless_locs): Increment n_useless_debug_values for
4738	debug values.
4739	(remove_useless_values): Adjust n_useless_values and n_debug_values
4740	with n_useless_debug_values.
4741	(add_mem_for_addr): Promote debug locs.
4742	(cselib_lookup_mem): Likewise.
4743	(cselib_lookup_addr): Renamed to...
4744	(cselib_lookup_addr_1): ... this.  Promote debug locs.  Don't call...
4745	(cselib_log_lookup): ... this.  Turn into...
4746	(cselib_lookup_addr): ... new wrapper.
4747	(cselib_lookup_from_insn): New.
4748	(cselib_invalidate_regno): Increment n_useless_debug_values for
4749	debug values.
4750	(cselib_invalidate_mem): Likewise.
4751	(cselib_process_insn): Take n_deleted and n_debug_values into
4752	account to guard remove_useless_value call.
4753	(cselib_finish): Zero n_useless_debug_values.
4754	* cselib.h (cselib_lookup_from_insn): Declare.
4755	* sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn.
4756	(sched_analyze_2): Likewise.
4757
47582010-03-30  Jakub Jelinek  <jakub@redhat.com>
4759
4760	* var-tracking.c (use_narrower_mode_test, use_narrower_mode): New
4761	functions.
4762	(adjust_mems): Replace narrowing SUBREG of expression containing
4763	just PLUS, MINUS, MULT and ASHIFT of registers and constants
4764	with operations in the narrower mode.
4765
4766	PR debug/43593
4767	* var-tracking.c (dataflow_set_clear_at_call): Invalidate just
4768	regs_invalidated_by_call instead all call_used_reg_set registers.
4769
47702010-03-30  Sebastian Pop  <sebastian.pop@amd.com>
4771
4772	PR middle-end/43430
4773	* tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type
4774	pointer comparisons with types_compatible_p.
4775	* tree-vect-stmts.c (vectorizable_call): Same.
4776	(vectorizable_condition): Same.
4777
47782010-03-30  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
4779
4780	* config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
4781	stack check if the mask would be zero.
4782
47832010-03-30  Seongbae Park  <seongbae.park@gmail.com>
4784	    Jack Howarth  <howarth@bromo.med.uc.edu>
4785
4786	* tree-profile.c (tree_init_ic_make_global_vars): Make static
4787	variables TLS.
4788
47892010-03-30  Joseph Myers  <joseph@codesourcery.com>
4790
4791	PR other/25232
4792	* libgcc-std.ver (GCC_4.5.0): Define version.  Include __unordxf2
4793	and __unordtf2.
4794	* config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version.
4795	Include ___unordxf2 and ___unordtf2.
4796	* config/i386/libgcc-glibc.ver: Do not define inheritance from
4797	GCC_4.4.0 here.
4798
47992010-03-30  Tarik Graba  <tarik.graba@telecom-paristech.fr>
4800
4801	* config/lm32/t-lm32: New file.
4802	* config.gcc: Use the above file when targetting lm32.
4803
48042010-03-28  Duncan Sands  <baldrick@free.fr>
4805
4806	* Makefile.in (PLUGIN_HEADERS): Add except.h.
4807
48082010-03-29  Sebastian Pop  <sebastian.pop@amd.com>
4809
4810	PR middle-end/43431
4811	* tree-vect-loop.c (vect_estimate_min_profitable_iters):
4812	Improve vectorization cost model diagnostic.
4813
48142010-03-29  Sebastian Pop  <sebastian.pop@amd.com>
4815
4816	PR middle-end/43436
4817	* tree-vect-data-refs.c (vect_analyze_data_refs): When
4818	compute_data_dependences_for_loop returns false, early exit
4819	and output an extra diagnostic for the failed data reference
4820	analysis.
4821
48222010-03-29  Richard Guenther  <rguenther@suse.de>
4823
4824	PR tree-optimization/43560
4825	* tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p parameter.
4826	(can_sm_ref_p): Treat stores to readonly locations as trapping.
4827
48282010-03-29  Jie Zhang  <jie@codesourcery.com>
4829
4830	PR 43564
4831	* toplev.c (process_options): Set optimization_default_node
4832	and optimization_current_node.
4833	* opts.c (decode_options): Don't set optimization_default_node
4834	and optimization_current_node.
4835
48362010-03-29  Ralf Cors��pius  <ralf.corsepius@rtems.org>
4837
4838	* config/rtems.h: Abandon -qrtems_debug.
4839
48402010-03-28  Jan Hubicka  <jh@suse.cz>
4841
4842	PR tree-optimization/43505
4843	* cgraph.c (cgraph_clone_node): When clonning a clone, replacement
4844	map should not be copied.
4845
48462010-03-27  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4847
4848	PR middle-end/41674
4849	* cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have
4850	cdtors, set DECL_PRESERVE_P.
4851	* ipa.c (cgraph_externally_visible_p): Return true if declaration
4852	should be preseved.
4853
48542010-03-27  Uros Bizjak  <ubizjak@gmail.com>
4855
4856	PR tree-optimization/43528
4857	* stor-layout.c (place_field): Check that constant fits into
4858	unsigned HWI when skipping calculation of MS bitfield layout.
4859
48602010-03-27  Jan Hubicka  <jh@suse.cz>
4861
4862	PR middle-end/43391
4863	* varasm.c (make_decl_rtl): Deal with COMMON flag to make
4864	notice_global_symbol work.
4865
48662010-03-27  Jakub Jelinek  <jakub@redhat.com>
4867
4868	* dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl
4869	instead of dwarf2out_decl.
4870	(struct var_loc_node): Remove section_label field.
4871	(dwarf2out_function_decl): New function.
4872	(dwarf2out_var_location): Don't set section_label field.
4873	(dwarf2out_begin_function): Don't empty decl_loc_table here.
4874
48752010-03-26  Michael Meissner  <meissner@linux.vnet.ibm.com>
4876
4877	PR tree-optimization/43544
4878	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
4879	First argument for builtin vectorized function hook is now a
4880	tree to be able to distinguish between machine specific and
4881	standard builtins.
4882	* targhooks.c (default_builtin_vectorized_function): Ditto.
4883	* targhooks.h (default_builtin_vectorized_function): Ditto.
4884	* target.h (struct gcc_target): Ditto.
4885	* tree-vect-stmts.c (vectorizable_function): Ditto.
4886	* config/i386/i386.c (ix86_builtin_vectorized_function): Ditto.
4887	* config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
4888	Ditto.
4889
48902010-03-26  Joseph Myers  <joseph@codesourcery.com>
4891
4892	PR c/43381
4893	* c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
4894	nested binding iff it is a FUNCTION_DECL.
4895	(store_parm_decls_newstyle): Pass nested=true to bind for
4896	FUNCTION_DECLs amongst parameters.
4897
48982010-03-26  Jakub Jelinek  <jakub@redhat.com>
4899
4900	* var-tracking.c (vt_expand_loc_callback): Don't run
4901	cselib_expand_value_rtx_cb in dummy mode if
4902	cselib_dummy_expand_value_rtx_cb returned false.
4903
4904	* var-tracking.c (emit_note_insn_var_location): For one part
4905	notes with offset 0, don't add EXPR_LIST around the location.
4906	* dwarf2out.c (loc_descriptor, dw_loc_list_1,
4907	add_location_or_const_value_attribute): Adjust for that change.
4908
4909	PR debug/43540
4910	* dwarf2out.c (reg_save): For DW_CFA_expression put regnum
4911	into first operand and location into second.
4912	(dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of
4913	dw_cfi_oprnd_loc for DW_CFA_expression.
4914	(dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression.
4915	(output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression
4916	assume first argument is regnum and second argument is location.
4917
49182010-03-26  Uros Bizjak  <ubizjak@gmail.com>
4919
4920	PR target/42113
4921	* config/alpha/alpha.md (*cmp_sadd_si): Change mode
4922	of scratch register to DImode.  Split to DImode comparison operator.
4923	Use SImode subreg of scratch register in the multiplication.
4924	(*cmp_sadd_sidi): Ditto.
4925	(*cmp_ssub_si): Ditto.
4926	(*cmp_ssub_sidi): Ditto.
4927
49282010-03-26  Uros Bizjak  <ubizjak@gmail.com>
4929
4930	PR target/43524
4931	* config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
4932	Remove invalid assert and wrong comment.
4933
49342010-03-26  Jakub Jelinek  <jakub@redhat.com>
4935
4936	PR debug/43516
4937	* flags.h (final_insns_dump_p): New extern.
4938	* final.c (final_insns_dump_p): New variable.
4939	(rest_of_clean_state): Set it before -fdump-final-insns=
4940	dumping, clear afterwards.
4941	* print-rtl.c (print_rtx): If final_insns_dump_p don't dump
4942	MEM_ALIAS_SET on MEMs.
4943
49442010-03-26  David S. Miller  <davem@davemloft.net>
4945
4946	* configure.ac: Fix sparc GOTDATA_OP bug check.
4947	* configure: Rebuild.
4948
49492010-03-26  Alan Modra  <amodra@gmail.com>
4950
4951	* config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
4952
49532010-03-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4954
4955	* doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP,
4956	TLS_SECTION_ASM_FLAG.
4957
49582010-03-25  Jakub Jelinek  <jakub@redhat.com>
4959
4960	PR bootstrap/43511
4961	* config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO.
4962	Clear first_function_block_is_cold.
4963
4964	PR c/43385
4965	* gimplify.c (gimple_boolify): Only recurse on __builtin_expect
4966	argument if the argument is truth_value_p.
4967
49682010-03-24  Michael Meissner  <meissner@linux.vnet.ibm.com>
4969
4970	* config/rs6000/constraints.md: Update copyright year for my changes.
4971
4972	PR target/43484
4973	* config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
4974	used in reg+reg addressing, swap registers.
4975
49762010-03-24  Jakub Jelinek  <jakub@redhat.com>
4977
4978	PR debug/43293
4979	* target.h (struct gcc_target): Add code_end hook.
4980	* target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void
4981	if not yet defined.
4982	(TARGET_ASM_OUT): Add TARGET_ASM_CODE_END.
4983	* toplev.c (compile_file): Call targetm.asm_out.code_end
4984	hook before unwind info/debug info output.
4985	* config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end.
4986	* config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define.
4987	(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
4988	* config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define.
4989	(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
4990	* config/i386/i386.c (ix86_file_end): Renamed to...
4991	(ix86_code_end): ... this.  Make static.  Don't call
4992	file_end_indicate_exec_stack.  Emit unwind info using
4993	final_start_function/final_end_function.
4994	(darwin_x86_file_end): Remove.
4995	(TARGET_ASM_CODE_END): Define.
4996	* config/i386/i386.h (TARGET_ASM_FILE_END,
4997	NEED_INDICATE_EXEC_STACK): Don't define.
4998	* config/i386/darwin.h (darwin_x86_file_end): Remove prototype.
4999	(TARGET_ASM_FILE_END): Define to darwin_file_end.
5000	* config/i386/i386-protos.h (ix86_file_end): Remove prototype.
5001	* doc/tm.texi (TARGET_ASM_CODE_END): Document.
5002
5003	PR target/43498
5004	* config/i386/i386.c (x86_output_mi_thunk): Call final_start_function
5005	at the beginning and final_end_function at the end.
5006	* config/s390/s390.c (s390_output_mi_thunk): Likewise.
5007
50082010-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5009
5010	* configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
5011	and Sun as TLS syntax.
5012	(TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
5013	* configure: Regenerate.
5014	* config.in: Regenerate.
5015	* varasm.c (TLS_SECTION_ASM_FLAG): Define default.
5016	(default_elf_asm_named_section): Use it.
5017	* config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
5018	(i386_output_dwarf_dtprel): Likewise.
5019	(output_addr_const_extra): Likewise.
5020	(output_pic_addr_const): Lowercase @GOTTPOFF.
5021	(output_addr_const_extra): Likewise.
5022	(output_pic_addr_const): Lowercase @GOTNTPOFF.
5023	(output_addr_const_extra): Likewise.
5024	(output_pic_addr_const): Lowercase @INDNTPOFF.
5025	(output_addr_const_extra): Likewise.
5026	(output_pic_addr_const): Lowercase @NTPOFF.
5027	(output_addr_const_extra): Likewise.
5028	(output_pic_addr_const): Lowercase @TPOFF.
5029	(output_addr_const_extra): Likewise.
5030	* config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
5031	(*tls_global_dynamic_64): Likewise.
5032	(*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
5033	(*tls_local_dynamic_base_64): Lowercase	@TLSLD.
5034
5035	* defaults.h (TLS_COMMON_ASM_OP): Provide default.
5036	(ASM_OUTPUT_TLS_COMMON): Use it.
5037	* config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
5038
5039	PR target/38118
5040	* config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
5041	* config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
5042	* config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
5043	* config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
5044	* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
5045	(ASM_DECLARE_OBJECT_NAME) [!USE_GAS]: Redefine.
5046
50472010-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5048
5049	* config/i386/i386.c (override_options): Don't accept
5050	-mtls-dialect=sun any longer.
5051	* config/i386/i386.h (TARGET_SUN_TLS): Define as 0.
5052	* config/i386/i386.md (*tls_global_dynamic_32_sun): Remove.
5053	(*tls_local_dynamic_base_32_sun): Likewise.
5054	* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
5055
50562010-03-24  Jakub Jelinek  <jakub@redhat.com>
5057
5058	PR debug/43508
5059	* dwarf2out.c (mem_loc_descriptor): Don't ICE on
5060	VEC_{MERGE,SELECT,CONCAT,DUPLICATE}.
5061
5062	PR debug/43479
5063	* ira.c (adjust_cleared_regs): New function.
5064	(update_equiv_regs): Adjust cleared_regs in DEBUG_INSNs.
5065
5066	PR debug/19192
5067	PR debug/43479
5068	* cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
5069	from gimple_block.
5070	* expr.c (expand_expr_real): Restore previous
5071	curr_insn_source_location and curr_insn_block after
5072	expand_expr_real_1 call.
5073	(expand_expr_real_1) <case SSA_NAME>: Call expand_expr_real
5074	instead of expand_expr_real_1.
5075
50762010-03-23  Vladimir Makarov  <vmakarov@redhat.com>
5077
5078	PR rtl-optimization/43413
5079	* ira-color.c (setup_allocno_available_regs_num): Count prohibited
5080	hard regs too.
5081
50822010-03-22  James E. Wilson  <wilson@codesourcery.com>
5083
5084	PR target/43348
5085	* ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
5086	call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
5087
50882010-03-22  H.J. Lu  <hongjiu.lu@intel.com>
5089
5090	* config/i386/i386.c (ix86_target_string): Add -mfma.
5091	Fix a typo in comment.
5092
50932010-03-22  Mike Stump  <mikestump@comcast.net>
5094
5095	PR target/23071
5096	* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
5097	Don't overly align based upon packed packed fields.
5098
50992010-03-22  Jason Merrill  <jason@redhat.com>
5100
5101	* c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
5102	Use () rather than [], and move before the element type.
5103
51042010-03-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5105
5106	* doc/configfiles.texi (Configuration Files): Removed
5107	fixinc/Makefile*, intl/Makefile.*.
5108	* doc/makefile.texi: Fixed markup. Abstract from version
5109	control system used.
5110	(Makefile): Removed obsolete gcc/java/parse.y example.
5111	* doc/sourcebuild.texi: Likewise.
5112	(Top Level): Added config, gnattools, libdecnumber, libgcc,
5113	libgomp, libssp.  Removed fastjar.
5114	(Miscellaneous Docs): Clarify location.
5115	Added COPYING3, COPYING3.LIB.
5116	(Front End Directory): Moved Make-lang.in entry to new subsubsection.
5117
51182010-03-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5119
5120	PR target/38085
5121	* config/i386/i386.c (x86_function_profiler)
5122	[!NO_PROFILE_COUNTERS]: Fix typo.
5123	* config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
5124	instead of callq.
5125
51262010-03-22  Janis Johnson  <janis187@us.ibm.com>
5127	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5128
5129	* doc/sourcebuild.texi (Test Directives): Split into six
5130	subsections, with most of the current text in new subsections
5131	Directives, Selectors, and Final Actions.
5132	(Directives): Split list of test directives into multiple
5133	subsubsections.
5134	(Selectors): Describe use and syntax of selectors.
5135	(Effective-Target Keywords): Describe all existing keywords.
5136	(Add Options): Describe features for dg-add-options.
5137	(Require Support): Describe variants of dg-require-support.
5138	(Final Actions): Describe commands to use in dg-final.
5139
51402010-03-22  Michael Matz  <matz@suse.de>
5141
5142	PR middle-end/43475
5143	* recog.c (validate_replace_rtx_group): Replace also in
5144	REG_EQUAL and REG_EQUIV notes.
5145
51462010-03-22  Richard Guenther  <rguenther@suse.de>
5147
5148	PR tree-optimization/43390
5149	* tree-vect-stmts.c (get_vectype_for_scalar_type): Make
5150	sure vector extracts are type correct.
5151
51522010-03-22  Richard Guenther  <rguenther@suse.de>
5153
5154	PR middle-end/40106
5155	* builtins.c (expand_builtin_pow): Expand pow (x, 1.5) as
5156	x * sqrt (x) even when optimizing for size if the target
5157	has native support for sqrt.
5158
51592010-03-22  Jakub Jelinek  <jakub@redhat.com>
5160
5161	* varasm.c (make_decl_rtl_for_debug): Also clear
5162	flag_mudflap for the duration of make_decl_rtl call.
5163
5164	PR debug/43443
5165	* var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
5166	locs from preserved VALUEs.
5167
51682010-03-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
5169
5170	PR middle-end/42718
5171	* pa.md (movmemsi): Set align to one if zero.
5172	(movmemdi): Likewise.
5173
51742010-03-21  Richard Earnshaw  <rearnsha@arm.com>
5175
5176	PR target/42321
5177	* arm.c (arm_output_epilogue): Correctly match VFP pop instructions
5178	with their corresponding prologue pushes.
5179
51802010-03-20  Andrew Pinski  <pinskia@gmail.com>
5181
5182	PR target/43156
5183	* config/spu/spu.c (spu_expand_prologue): Don't emit NOTE_INSN_DELETED
5184	at the begining or end.
5185	(spu_expand_epilogue): Likewise.
5186
51872010-03-20  Richard Guenther  <rguenther@suse.de>
5188
5189	PR rtl-optimization/43438
5190	* combine.c (make_extraction): Properly zero-/sign-extend an
5191	extraction of the low part of a CONST_INT.  Also handle
5192	CONST_DOUBLE.
5193
51942010-03-19  Mike Stump  <mikestump@comcast.net>
5195
5196	* config/i386/darwin.h (SUBTARGET32_DEFAULT_CPU): Add.
5197	* config/i386/i386.c (SUBTARGET32_DEFAULT_CPU): Add.
5198	(override_options): Use SUBTARGET32_DEFAULT_CPU.
5199
52002010-03-19  Andrew Pinski  <andrew_pinski@caviumnetworks.com>
5201
5202	PR c/43211
5203	* c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
5204	an error.
5205
52062010-03-19  Bernd Schmidt  <bernd.schmidt@codesourcery.com>
5207
5208	PR rtl-optimization/42258
5209	* ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
5210	use that may match DEF.
5211
5212	PR target/40697
5213	* optabs.c (avoid_expensive_constant): Use rtx_cost to find out
5214	the cost of loading the constant rather than assuming
5215	COSTS_N_INSNS (1).
5216	* config/arm/arm.c (thumb1_rtx_costs) <case CONST_INT>: If the
5217	outer code is AND, do the same tests as the andsi3 expander and
5218	return COSTS_N_INSNS (1) if and is cheap.
5219
5220	* optabs.c (avoid_expensive_constant): Fix formatting.
5221
52222010-03-19  Michael Matz  <matz@suse.de>
5223
5224	PR c++/43116
5225	* attribs.c (decl_attributes): When rebuilding a function pointer
5226	type use the same qualifiers as the original pointer type.
5227
52282010-03-19  Martin Jambor  <mjambor@suse.cz>
5229
5230	* doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
5231	and is_gimple_ip_invariant_address.
5232
52332010-03-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
5234
5235	Revert
5236	2009-10-01  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
5237
5238	* config/arm/arm.c (arm_override_options): Turn off
5239	flag_dwarf2_cfi_asm for AAPCS variants.
5240
52412010-03-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
5242
5243	PR target/43399
5244	* config/arm/arm.c (emit_multi_reg_push): Update comments.
5245	Use PRE_MODIFY instead of PRE_DEC.
5246	(emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
5247	(vfp_emit_fstmd): Likewise.
5248
52492010-03-19  Michael Matz  <matz@suse.de>
5250
5251	PR target/43305
5252	* builtins.c (expand_builtin_interclass_mathfn,
5253	expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
5254	if that fails.
5255
52562010-03-19  Richard Guenther  <rguenther@suse.de>
5257
5258	PR tree-optimization/43415
5259	* tree-ssa-pre.c (phi_translate): Split out worker to ...
5260	(phi_translate_1): ... this.
5261	(phi_translate): Move all caching here.  Cache all NARY
5262	and REFERENCE translations.
5263
52642010-03-19  David S. Miller  <davem@davemloft.net>
5265
5266	With help from Eric Botcazou.
5267	* config/sparc/sparc.c: Include dwarf2out.h.
5268	(emit_pic_helper): Delete.
5269	(pic_helper_symbol_name): Delete.
5270	(pic_helper_emitted_p): Delete.
5271	(pic_helper_needed): New.
5272	(USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
5273	(get_pc_thunk_name): New.
5274	(load_pic_register): Remove 'delay_pic_helper' arg.  Use
5275	get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
5276	Set pic_helper_needed to true.  Don't call emit_pic_helper.
5277	(sparc_expand_prologue): Update load_pic_register call.
5278	(sparc_output_mi_thunk): Likewise.
5279	(sparc_file_end): Emit a hidden comdat symbol for the PIC
5280	thunk if possible.  Output CFI information as needed.
5281
52822010-03-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
5283	    Jack Howarth  <howarth@bromo.med.uc.edu>
5284
5285	PR target/36399
5286	* config/i386/i386.h: Fix ABI on darwin x86-32.
5287
52882010-03-18  Aldy Hernandez  <aldyh@redhat.com>
5289
5290	* tree.h: Declare make_decl_rtl_for_debug.
5291	* varasm.c (make_decl_rtl_for_debug): New.
5292	* dwarf2out.c (rtl_for_decl_location): Call it.
5293	* cfgexpand.c (expand_debug_expr): Call it.
5294
52952010-03-18  Jakub Jelinek  <jakub@redhat.com>
5296
5297	PR bootstrap/43399
5298	* var-tracking.c (adjust_mems) <case POST_MODIFY>: Allow BLKmode
5299	mem_mode.
5300
5301	PR bootstrap/43403
5302	* var-tracking.c (vt_init_cfa_base): Do nothing if
5303	cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
5304
53052010-03-18  Alexandre Oliva  <aoliva@redhat.com>
5306
5307	PR debug/42873
5308	* var-tracking.c (canonicalize_vars_star): New.
5309	(dataflow_post_merge_adjust): Use it.
5310
53112010-03-18  Jakub Jelinek  <jakub@redhat.com>
5312
5313	PR debug/43058
5314	* var-tracking.c (non_suitable_const): New function.
5315	(add_uses): For DEBUG_INSNs with constants, don't record any
5316	value, instead just the constant value itself.
5317	(compute_bb_dataflow) <case MO_VAL_LOC>: If PAT_VAR_LOCATION_LOC
5318	is not VAR_LOC_UNKNOWN_P, set var to the constant.
5319	(emit_notes_in_bb): Likewise.
5320	(emit_note_insn_var_location): For onepart variables if
5321	cur_loc is a VOIDmode constant, use DECL_MODE.
5322
53232010-03-18  Martin Jambor  <mjambor@suse.cz>
5324
5325	PR middle-end/42450
5326	* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
5327	* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
5328	all non-clones.  Moved call redirection...
5329	(cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
5330	(cgraph_materialize_all_clones): Dispose of all
5331	combined_args_to_skip bitmaps.
5332	(verify_cgraph_node): Do not check for edges pointing to wrong
5333	nodes in inline clones.
5334	* tree-inline.c (copy_bb): Call
5335	cgraph_redirect_edge_call_stmt_to_callee.
5336	* ipa.c (cgraph_remove_unreachable_nodes): Call
5337	cgraph_node_remove_callees even when there are used clones.
5338
53392010-03-18  H.J. Lu  <hongjiu.lu@intel.com>
5340
5341	* config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
5342
53432010-03-18  H.J. Lu  <hongjiu.lu@intel.com>
5344
5345	PR target/43383
5346	* config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
5347	for 32bit.
5348
53492010-03-18  Michael Matz  <matz@suse.de>
5350
5351	PR middle-end/43419
5352	* builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
5353	into sqrt(x) if we need to preserve signed zeros.
5354
53552010-03-18  Steven Bosscher  <steven@gcc.gnu.org>
5356	    Eric Botcazou  <ebotcazou@adacore.com>
5357
5358	PR rtl-optimization/43360
5359	* loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
5360	note if we don't know its invariant status.
5361
53622010-03-18  Michael Matz  <matz@suse.de>
5363
5364	PR tree-optimization/43402
5365	* tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
5366	PHI chains of ssa names registered for update.
5367
53682010-03-17  Peter Bergner  <bergner@vnet.ibm.com>
5369
5370	PR target/42427
5371	* config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
5372	non-offsettable and pre_modify update addressing.
5373	* config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
5374	and "2" alternatives "#".
5375	(*movdd_softfloat32): Make all alternatives "#";
5376	* config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
5377	(*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
5378	(*movdf_softfloat32): Make all alternatives "#";
5379	(movdi): Use the new DIFD mode iterator to create a common splitter
5380	for movdi, movdf and movdd patterns.
5381
53822010-03-18  Shujing Zhao  <pearly.zhao@oracle.com>
5383
5384	* common.opt (dumpdir): Remove redundant tab.
5385
53862010-03-17  Martin Jambor  <mjambor@suse.cz>
5387
5388	PR tree-optimization/43347
5389	* tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
5390	original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
5391
53922010-03-17  Bernd Schmidt  <bernd.schmidt@analog.com>
5393
5394	PR rtl-optimization/42216
5395	* regrename.c (create_new_chain): New function, broken out from...
5396	(scan_rtx_reg): ... here.  Call it.  Handle the case where we are
5397	appending a use to an empty chain.
5398	(build_def_use): Remove previous changes that convert OP_INOUT to
5399	OP_OUT operands; instead detect the case where an OP_INOUT operand
5400	uses a previously untracked register and create an empty chain for it.
5401
54022010-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5403
5404	* doc/extend.texi (Function Attributes): Rewrite unfinished
5405	sentence in ms_abi documentation.
5406
54072010-03-17  Alan Modra  <amodra@gmail.com>
5408
5409	* config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
5410	* config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
5411	(SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
5412	* config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
5413
54142010-03-16  Richard Henderson  <rth@redhat.com>
5415
5416	PR middle-end/43365
5417	* tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
5418	(lower_try_finally): Save and restore eh_seq around the expansion
5419	of the try-finally.
5420
54212010-03-16  Aldy Hernandez  <aldyh@redhat.com>
5422
5423	* graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
5424	statements before splitting block.
5425
54262010-03-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5427
5428	* doc/sourcebuild.texi (Testsuites): Fix markup.
5429	Use pathnames relative to gcc/testsuite.
5430	(Test Directives): Move description of how timeout is determined.
5431	(Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
5432	(C Tests): Correct gcc.misc-tests directory.
5433	Framework tests now live in gcc.test-framework.
5434
54352010-03-16  Richard Guenther  <rguenther@suse.de>
5436
5437	PR middle-end/43379
5438	* tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
5439	operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
5440
54412010-03-16  Aldy Hernandez  <aldyh@redhat.com>
5442	    Alexandre Oliva  <aoliva@redhat.com>
5443
5444	PR tree-optimization/42917
5445	* lambda-code.c (remove_iv): Skip debug statements.
5446	(lambda_loopnest_to_gcc_loopnest): Likewise.
5447	(not_interesting_stmt): Debug statements are not interesting.
5448
54492010-03-16  Jakub Jelinek  <jakub@redhat.com>
5450
5451	PR debug/43051
5452	PR debug/43092
5453	* cselib.c (cselib_preserve_constants,
5454	cfa_base_preserved_val): New static variables.
5455	(preserve_only_constants): New function.
5456	(cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
5457	clear its REG_VALUES.  If cselib_preserve_constants, don't
5458	empty the whole hash table, but preserve there VALUEs with constants,
5459	cfa_base_preserved_val and cfa_base_preserved_val plus constant.
5460	(cselib_preserve_cfa_base_value): New function.
5461	(cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
5462	(cselib_init): Change argument to int bitfield.  Set
5463	cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
5464	is in it.
5465	(cselib_finish): Clear cselib_preserve_constants and
5466	cfa_base_preserved_val.
5467	* cselib.h (enum cselib_record_what): New enum.
5468	(cselib_init): Change argument to int.
5469	(cselib_preserve_cfa_base_value): New prototype.
5470	* postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
5471	* dse.c (dse_step1): Likewise.
5472	* cfgcleanup.c (thread_jump): Likewise.
5473	* sched-deps.c (sched_analyze): Likewise.
5474	* gcse.c (local_cprop_pass): Likewise.
5475	* simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
5476	If FN is non-NULL, call the callback always and whenever it returns
5477	non-NULL just return that.  Only do rtx_equal_p if FN is NULL.
5478	* rtl.h (simplify_replace_fn_rtx): Add argument to callback.
5479	* combine.c (propagate_for_debug_subst): Add old_rtx argument,
5480	compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
5481	* Makefile.in (var-tracking.o): Depend on $(RECOG_H).
5482	* var-tracking.c: Include recog.h.
5483	(bb_stack_adjust_offset): Remove.
5484	(vt_stack_adjustments): Don't call it, instead just gather the
5485	adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
5486	(adjust_stack_reference): Remove.
5487	(compute_cfa_pointer): New function.
5488	(hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
5489	(struct adjust_mem_data): New type.
5490	(adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
5491	functions.
5492	(get_address_mode): New function.
5493	(replace_expr_with_values): Use it.
5494	(use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
5495	Use get_address_mode.  For cfa_base_rtx return MO_CLOBBER.
5496	(adjust_sets): Remove.
5497	(add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
5498	Use get_address_mode.
5499	(get_adjusted_src): Remove.
5500	(add_stores): Don't call it.  Never reuse expr SET.  Don't add extra
5501	MO_VAL_USE for cfa_base_rtx plus constant.  Use get_address_mode.
5502	(add_with_sets): Don't call adjust_sets.
5503	(fp_setter, vt_init_cfa_base): New functions.
5504	(vt_initialize): Change return type to bool.  Move most of pool etc.
5505	initialization to the beginning of the function from end.  Pass
5506	CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
5507	If !frame_pointer_needed, call vt_stack_adjustment before mos
5508	vector is filled, call vt_init_cfa_base if argp/framep has been
5509	eliminated to sp.  If frame_pointer_needed and argp/framep has
5510	been eliminated to hard frame pointer, set
5511	hard_frame_pointer_adjustment and call vt_init_cfa_base after
5512	encountering fp setter in the prologue.  For MO_ADJUST, call
5513	log_op_type before pusing the op into mos vector, not afterwards.
5514	Call adjust_insn before cselib_process_insn/add_with_sets,
5515	call cancel_changes (0) afterwards.
5516	(variable_tracking_main_1): Adjust for vt_initialize calling
5517	vt_stack_adjustments and returning whether it succeeded or not.
5518
55192010-03-15  Aldy Hernandez  <aldyh@redhat.com>
5520
5521	* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
5522	debug statements.
5523
55242010-03-15  Jakub Jelinek  <jakub@redhat.com>
5525
5526	* dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
5527	has been set.
5528	(based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
5529	drap_reg has not been set.
5530
55312010-03-15  Michael Matz  <matz@suse.de>
5532
5533	PR middle-end/43300
5534	* tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
5535	use it to expand block copies.
5536	(insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
5537	insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
5538	(insert_value_copy_on_edge): Use store_expr for BLKmode values.
5539
55402010-03-15  Richard Guenther  <rguenther@suse.de>
5541
5542	PR tree-optimization/43367
5543	* tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
5544	elimination check.
5545
55462010-03-15  Richard Guenther  <rguenther@suse.de>
5547
5548	PR tree-optimization/43317
5549	* ipa-struct-reorg.c (create_new_general_access): Update stmt.
5550
55512010-03-15  Martin Jambor  <mjambor@suse.cz>
5552
5553	PR tree-optimization/43141
5554	* tree-sra.c (create_abstract_origin): New function.
5555	(modify_function): Call create_abstract_origin.
5556
55572010-03-15  Chris Demetriou  <cgd@google.com>
5558
5559	* Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
5560	wasn't copied.
5561
55622010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5563
5564	PR middle-end/43354
5565	* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
5566	call insert_out_of_ssa_copy for default definitions.
5567
55682010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5569
5570	* graphite-clast-to-gimple.c (my_long_long): Defined.
5571	(gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
5572	* graphite-sese-to-poly.c (my_long_long): Defined.
5573	(scop_ivs_can_be_represented): Use it.
5574
55752010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5576
5577	* doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
5578	graphite-max-bbs-per-function, and loop-block-tile-size.
5579	* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
5580	with "maximum".
5581	(PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
5582
55832010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5584
5585	* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
5586	forward declaration.
5587	* graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
5588	(add_upper_bounds_from_estimated_nit): New.
5589	(build_loop_iteration_domains): Use it.
5590
55912010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5592
5593	* doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
5594
55952010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5596
5597	PR middle-end/43306
5598	* tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
5599	should be an INTEGER_CST.  Also handle CASE_CONVERT.
5600
56012010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5602
5603	* graphite.c (graphite_initialize): To bound the number of bbs per
5604	function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
5605	* params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
5606	* doc/invoke.texi: Document it.
5607
56082010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5609
5610	* graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
5611	* graphite-sese-to-poly.h (build_poly_scop): Same.
5612
56132010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
5614
5615	* graphite-sese-to-poly.c (build_poly_scop): Limit scops following
5616	the number of parameters in the scop.  Use as an upper bound
5617	PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
5618	* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
5619	* doc/invoke.texi: Document it.
5620
56212010-03-13  Jerry Quinn  <jlquinn@optonline.net>
5622
5623	* Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
5624	* doc/c-tree.texi: Remove.
5625	* doc/generic.texi: Merge c-tree.texi here.
5626	* doc/gccint.texi (Trees): Remove menu entry.
5627	(c-tree.texi): Remove @include.
5628	* doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
5629	* doc/languages.texi (Reading RTL): Ditto.
5630
56312010-03-12  Steve Ellcey  <sje@cup.hp.com>
5632
5633	PR target/42869
5634	* config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
5635
56362010-03-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
5637
5638	PR middle-end/42431
5639	* gcc/config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
5640	code added to work around reload clobbering CONST insns.
5641
56422010-03-12  Jakub Jelinek  <jakub@redhat.com>
5643
5644	* cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
5645	(cselib_preserve_definitely, cselib_clear_preserve): Remove.
5646	(cselib_preserve_only_values): Remove retain argument, don't
5647	traverse hash table with cselib_{preserve_definitely,clear_preserve}.
5648	* cselib.h (cselib_preserve_only_values): Remove retain argument.
5649	* var-tracking.c (micro_operation): Move insn field before union.
5650	Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
5651	(struct variable_tracking_info_def): Remove n_mos field, change
5652	mos into a vector of micro_operations.
5653	(count_uses, count_uses_1, count_stores, count_with_sets): Remove.
5654	(bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
5655	compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
5656	changing into a vector.
5657	(add_with_sets): Likewise.  Ensure MO_VAL_USE uops from add_stores
5658	come before all other uops generated by add_stores.
5659	(vt_add_function_parameters): Adjust for cselib_preserve_only_values
5660	argument removal.
5661	(vt_initialize): Likewise.  Adjust for VTI (bb)->mos changing into
5662	a vector.  Run just one pass over the bbs instead of separate counting
5663	and computation phase.
5664	(vt_finalize): Free VTI (bb)->mos vector instead of array.
5665
5666	PR debug/43329
5667	* tree-inline.c (remap_decls): Put old_var rather than origin_var
5668	into *nonlocalized_list vector.
5669	* dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
5670	even if origin is non-NULL.
5671	(gen_variable_die): Likewise.
5672	(process_scope_var): Don't change origin.
5673	(gen_decl_die): Likewise.
5674	* tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
5675	before adding new edges instead of after it, fix moving over
5676	debug stmts.
5677
56782010-03-11  David S. Miller  <davem@davemloft.net>
5679
5680	* configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
5681	of four.
5682	* configure: Rebuild.
5683
56842010-03-11  Martin Jambor  <mjambor@suse.cz>
5685
5686	PR tree-optimization/43257
5687	* tree.c (assign_assembler_name_if_neeeded): New function.
5688	(free_lang_data_in_cgraph): Assembler name assignment moved to the
5689	above new function.
5690	* tree.h (assign_assembler_name_if_neeeded): Declare.
5691	* cgraphunit.c (cgraph_analyze_function): Create an assembler name for
5692	the function if needed.
5693
56942010-03-11  Chris Demetriou  <cgd@google.com>
5695
5696	* Makefile.in (stmp-int-hdrs): Make include/unwind.h,
5697	include/stdint-gcc.h, and include/stdint.h world-readable.
5698
56992010-03-11  Richard Guenther  <rguenther@suse.de>
5700
5701	PR tree-optimization/43255
5702	* tree-vrp.c (process_assert_insertions_for): Do not insert
5703	asserts for trivial conditions.
5704
57052010-03-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
5706
5707	PR tree-optimization/43280
5708	* tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
5709	generation.  Move calculation of size out of the if branch.
5710	(find_bswap): Modify compare number generation.
5711
57122010-03-11  Richard Guenther  <rguenther@suse.de>
5713
5714	PR lto/43200
5715	* lto-streamer-in.c (maybe_fixup_decls): Simplify.
5716	(input_gimple_stmt): Fixup handled component types during
5717	operand read.  Also fix up decls in ADDR_EXPRs.
5718
57192010-03-10  Eric Botcazou  <ebotcazou@adacore.com>
5720
5721	* config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
5722	* config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
5723
57242010-03-10  Jan Hubicka  <jh@suse.cz>
5725
5726	PR c/43288
5727	* ipa.c (function_and_variable_visibility) Normalize COMMON bits.
5728	* varasm.c (get_variable_section): Don't do that here...
5729	(make_decl_rtl): ... and here.
5730	(do_assemble_alias): Produce decl RTL.
5731	(assemble_alias): Likewise.
5732
57332010-03-10  Jakub Jelinek  <jakub@redhat.com>
5734
5735	PR debug/43290
5736	* reg-notes.def (REG_CFA_SET_VDRAP): New note.
5737	* dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
5738	of fde->vdrap_reg.
5739	(dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
5740	(based_loc_descr): Only express drap or vdrap regno based expressions
5741	using DW_OP_fbreg when not optimizing.
5742	* config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
5743	make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
5744	REG_CFA_SET_VDRAP note.
5745
57462010-03-10  Alexander Monakov  <amonakov@ispras.ru>
5747
5748	PR tree-optimization/43236
5749	* tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
5750	error in calculation of base address in reverse iteration case.
5751	(generate_builtin): Take number of latch executions if the statement
5752	is in the latch.
5753
57542010-03-10  Andrey Belevantsev  <abel@ispras.ru>
5755
5756	PR middle-end/42859
5757	* tree-eh.c: Include pointer-set.h.
5758	(lower_eh_dispatch): Filter out duplicate case labels and
5759	remove the unneeded edge when the label is unused.  Return
5760	true when some edges are removed.
5761	(execute_lower_eh_dispatch): When any lowering resulted in
5762	removing an edge, also delete unreachable blocks.
5763
57642010-03-10  Jakub Jelinek  <jakub@redhat.com>
5765
5766	PR bootstrap/43287
5767	* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
5768	UNSPEC_MACHOPIC_OFFSET.
5769
57702010-03-09  Andreas Schwab  <schwab@linux-m68k.org>
5771
5772	PR target/43294
5773	* config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
5774	(m68k_delegitimize_address): New function.
5775
57762010-03-09  Jakub Jelinek  <jakub@redhat.com>
5777
5778	PR debug/43299
5779	* dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
5780
5781	PR debug/43299
5782	* var-tracking.c (adjust_sets): New function.
5783	(count_with_sets, add_with_sets): Use it.
5784	(get_adjusted_src): New inline function.
5785	(add_stores): Use it.
5786
5787	PR debug/43304
5788	* var-tracking.c (vt_expand_loc_callback) <case SUBREG>: If dummy,
5789	call cselib_dummy_expand_value_rtx_cb instead of
5790	cselib_expand_value_rtx_cb.
5791
5792	PR debug/43293
5793	* config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
5794	* config/i386/i386.c: Include debug.h and dwarf2out.h.
5795	(ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
5796	and .cfi_endproc around the pic thunks.
5797	(output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
5798	all queued unwind info register saves are saved before the call.
5799	For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
5800	considered as sp-=4 for unwind info and the pop as sp+=4 which
5801	also clobbers dest, but doesn't actually restore it.
5802
5803	PR debug/43290
5804	* config/i386/i386.c (ix86_get_drap_rtx): Don't set
5805	RTX_FRAME_RELATED_P.
5806
58072010-03-09  Jie Zhang  <jie@codesourcery.com>
5808
5809	* config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
5810	whitespaces in output template.
5811
58122010-03-09  Jie Zhang  <jie@codesourcery.com>
5813
5814	* ira-lives.c (check_and_make_def_use_conflict): Don't fall
5815	out array boundary.
5816
58172010-03-08  Jakub Jelinek  <jakub@redhat.com>
5818
5819	* Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
5820	builtins.exp in a separate job.
5821
58222010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5823
5824	* graphite-sese-to-poly.c (add_param_constraints): Use
5825	lower_bound_in_type and upper_bound_in_type.
5826
58272010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5828
5829	* graphite-sese-to-poly.c (add_param_constraints): Use sizetype
5830	instead of unsigned_type_node.
5831
58322010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5833	    Reza Yazdani  <reza.yazdani@amd.com>
5834
5835	PR middle-end/43065
5836	* graphite-sese-to-poly.c (add_param_constraints): Insert bounds
5837	on pointer type parameters.
5838
58392010-03-08  Tobias Grosser  <grosser@fim.uni-passau.de>
5840
5841	PR middle-end/42644
5842	PR middle-end/42130
5843	* graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
5844	handle conversions from pointer to integers.
5845	(gcc_type_for_cloog_iv): Choose the smalles signed integer as an
5846	induction variable, to be able to work with code generated by CLooG.
5847	* graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
5848	(build_poly_scop): Bail out if we cannot codegen a loop.
5849
58502010-03-08  Tobias Grosser  <grosser@fim.uni-passau.de>
5851
5852	* graphite-clast-to-gimple.c (translate_clast): Do not short-cut
5853	code generation with gloog_error.
5854
58552010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5856
5857	* sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
5858	Call fold_convert on all the returned values.
5859	(expand_scalar_variables_expr): Pass to
5860	expand_scalar_variables_ssa_name the type of the resulting expression.
5861
58622010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5863
5864	* graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
5865	ppl_min_for_le_pointset.
5866	Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
5867	* graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
5868
58692010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5870
5871	* graphite-dependences.c (map_into_dep_poly): Removed.
5872	(dependence_polyhedron_1): Use combine_context_id_scat.
5873
58742010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5875
5876	* graphite-poly.h (struct poly_scattering): Add layout documentation.
5877	(struct poly_bb): Same.
5878	(combine_context_id_scat): New.
5879
58802010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5881
5882	PR middle-end/42326
5883	* sese.c (name_defined_in_loop_p): Return false for default
5884	definitions.
5885
58862010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5887
5888	* graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
5889	and clean up the logic.
5890
58912010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
5892
5893	* graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
5894	early return.
5895
58962010-03-08  Jakub Jelinek  <jakub@redhat.com>
5897
5898	* var-tracking.c (remove_cselib_value_chains): Define only for
5899	ENABLE_CHECKING.
5900	(dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
5901	delete_slot_part, emit_notes_for_differences_1): Don't call
5902	remove_cselib_value_chains here.
5903	(set_slot_part, emit_notes_for_differences_2): Don't call
5904	add_cselib_value_chains here.
5905	(preserved_values): New vector.
5906	(preserve_value): New function.
5907	(add_uses, add_stores, vt_add_function_parameters): Use it
5908	instead of cselib_preserve_value.
5909	(changed_values_stack): New vector.
5910	(check_changed_vars_0): New function.
5911	(check_changed_vars_1, check_changed_vars_2): Use it.
5912	(emit_notes_for_changes): Call set_dv_changed (*, false) on all
5913	changed_values_stack VALUEs.
5914	(vt_emit_notes): For all preserved_values call
5915	add_cselib_value_chains.  If ENABLE_CHECKING call
5916	remove_cselib_value_chains before verifying value_chains is empty.
5917	Initialize and free changed_values_stack.
5918	(vt_initialize): Initialize preserved_values.
5919	(vt_finalize): Free preserved_values.
5920
59212010-03-08  Richard Guenther  <rguenther@suse.de>
5922
5923	PR tree-optimization/43269
5924	* tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
5925	region detection.
5926
59272010-03-08  Martin Jambor  <mjambor@suse.cz>
5928
5929	* ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
5930	(ipa_is_param_called): Removed.
5931	* ipa-prop.c (ipa_note_param_call): Do not set the called flag.
5932	(ipa_print_node_params): Do not print the called flag.
5933	(ipa_write_node_info): Do not stream the called flag.
5934	(ipa_read_node_info): Likewise.
5935
59362010-03-07  Jakub Jelinek  <jakub@redhat.com>
5937
5938	PR debug/43176
5939	* Makefile.in (var-tracking.o): Depend on pointer-set.h.
5940	* cselib.c (struct expand_value_data): Add dummy field.
5941	(cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
5942	dummy to false.
5943	(cselib_dummy_expand_value_rtx_cb): New function.
5944	(cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
5945	any rtl.
5946	* cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
5947	* var-tracking.c: Include pointer-set.h.
5948	(variable): Change n_var_parts to char from int.  Add
5949	cur_loc_changed and in_changed_variables fields.
5950	(variable_canonicalize): Remove.
5951	(shared_var_p): New inline function.
5952	(unshare_variable): Maintain cur_loc_changed and
5953	in_changed_variables fields.  If var was in changed_variables,
5954	replace it there with new_var.  Just copy cur_loc instead of
5955	resetting it to something else.
5956	(variable_union): Don't recompute cur_loc.  Use shared_var_p.
5957	(dataflow_set_union): Don't call variable_canonicalize.
5958	(loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
5959	of their DEBUG_EXPR_TREE_DECLs.
5960	(canonicalize_loc_order_check): Verify that cur_loc is NULL
5961	and in_changed_variables and cur_loc_changed is false.
5962	(variable_merge_over_cur): Clear cur_loc, in_changed_variables
5963	and cur_loc_changed.  Don't update cur_loc here.
5964	(variable_merge_over_src): Don't call variable_canonicalize.
5965	(dataflow_set_preserve_mem_locs): Use shared_var_p.  When
5966	removing loc that is equal to cur_loc, clear cur_loc,
5967	set cur_loc_changed and ensure variable_was_changed is called.
5968	(dataflow_set_remove_mem_locs): Use shared_var_p.  Only
5969	compare pointers in cur_loc check, if it is equal to loc,
5970	clear cur_loc and set cur_loc_changed.  Don't recompute cur_loc here.
5971	(variable_different_p): Remove compare_current_location argument,
5972	don't compare cur_loc.
5973	(dataflow_set_different_1): Adjust variable_different_p caller.
5974	(variable_was_changed): If dv had some var in changed_variables
5975	already, reset in_changed_variables flag for it and propagate
5976	cur_loc_changed over to the new variable.  On empty var
5977	always set cur_loc_changed.  Set in_changed_variables on whatever
5978	var is added to changed_variables.
5979	(set_slot_part): Clear cur_loc_changed and in_changed_variables.
5980	Use shared_var_p.  When removing loc that is equal to cur_loc,
5981	clear cur_loc and set cur_loc_changed.  If cur_loc is NULL at the
5982	end, don't set it to something else, just call variable_was_changed.
5983	(delete_slot_part): Use shared_var_p.  When cur_loc equals to
5984	loc being removed, clear cur_loc and set cur_loc_changed.
5985	Set cur_loc_changed if all locations have been removed.
5986	(struct expand_loc_callback_data): New type.
5987	(vt_expand_loc_callback): Add dummy mode in which no rtxes are
5988	allocated.  Always create SUBREGs if simplify_subreg failed.
5989	Prefer to use cur_loc, when that fails and still in
5990	changed_variables (and seen first time) recompute it.  Set
5991	cur_loc_changed of variables which had to change cur_loc and
5992	compute elcd->cur_loc_changed if any of the subexpressions used
5993	had to change cur_loc.
5994	(vt_expand_loc): Adjust to pass arguments in
5995	expand_loc_callback_data structure.
5996	(vt_expand_loc_dummy): New function.
5997	(emitted_notes): New variable.
5998	(emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
5999	that weren't used for any other decl in current
6000	emit_notes_for_changes call call vt_expand_loc_dummy to update
6001	cur_loc.  For -fno-var-tracking-assignments, set cur_loc to
6002	first loc_chain location if NULL before.  Always use just
6003	cur_loc instead of first loc_chain location.  When cur_loc_changed
6004	is false, when not --enable-checking=rtl just don't emit any note.
6005	When rtl checking, compute the note and assert it is the same
6006	as previous note.  Clear cur_loc_changed and in_changed_variables
6007	at the end before removing from changed_variables.
6008	(check_changed_vars_3): New function.
6009	(emit_notes_for_changes): Traverse changed_vars to call
6010	check_changed_vars_3 on each changed var.
6011	(emit_notes_for_differences_1): Clear cur_loc_changed and
6012	in_changed_variables.  Recompute cur_loc of new_var.
6013	(emit_notes_for_differences_2): Clear cur_loc if new variable appears.
6014	(vt_emit_notes): Initialize and destroy emitted_notes.
6015
60162010-03-07  Bernd Schmidt  <bernd.schmidt@analog.com>
6017
6018	PR rtl-optimization/42220
6019	* regrename.c (scan_rtx) <case STRICT_LOW_PART, ZERO_EXTRACT>:
6020	Use verify_reg_tracked to determine if we should use OP_OUT rather
6021	than OP_INOUT.
6022	(build_def_use): If we see an in-out operand for a register that we
6023	know nothing about, treat is an output if possible, fail the block if
6024	not.
6025
60262010-03-06  Alexandre Oliva  <aoliva@redhat.com>
6027
6028	PR debug/42897
6029	* gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
6030	permanently.
6031
60322010-03-06  Alexandre Oliva  <aoliva@redhat.com>
6033
6034	PR debug/42897
6035	* tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
6036	uses of relevant DEFs that are dead outside the loop too.
6037
60382010-03-06  Alexandre Oliva  <aoliva@redhat.com>
6039
6040	* var-tracking.c (dataflow_set_merge): Swap src and src2.
6041	Reverted:
6042	2010-01-13  Jakub Jelinek  <jakub@redhat.com>
6043	PR debug/41371
6044	* var-tracking.c (values_to_unmark): New variable.
6045	(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
6046	values_to_unmark vector.  Moved body to...
6047	(find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
6048	instead queue it into values_to_unmark vector.
6049	(vt_find_locations): Free values_to_unmark vector.
6050
60512010-03-05  Eric Botcazou  <ebotcazou@adacore.com>
6052
6053	* Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
6054	(site.exp): Export them when plugins are enabled.
6055
60562010-03-05  Sebastian Pop  <sebastian.pop@amd.com>
6057
6058	PR middle-end/42326
6059	* tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
6060	that contain scevs.
6061	(chrec_fold_multiply): Same.
6062
60632010-03-04  Andrew Pinski  <andrew_pinski@caviumnetworks.com>
6064
6065	PR c/43248
6066	* c-decl.c (build_compound_literal): Return early if init is
6067	an error_mark_node.
6068
60692010-03-04  Martin Jambor  <mjambor@suse.cz>
6070
6071	PR tree-optimization/43164
6072	PR tree-optimization/43191
6073	* tree-sra.c (type_consists_of_records_p): Reject records with
6074	zero-size bit-fields at the end.
6075
60762010-03-04  Mike Stump  <mikestump@comcast.net>
6077
6078	* Makefile.in (TAGS): Remove *.y.
6079
60802010-03-04  Richard Guenther  <rguenther@suse.de>
6081
6082	PR tree-optimization/40761
6083	* tree-ssa-pre.c (compute_antic): Walk reverse postorder
6084	in reverse order.
6085	(my_rev_post_order_compute): New function.
6086	(init_pre): Call it.
6087
60882010-03-04  Changpeng Fang  <changpeng.fang@amd.com>
6089
6090	PR middle-end/43209
6091	* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
6092	decrease the cost of an IV candidate when the cost is infinite.
6093
60942010-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6095
6096	* doc/extend.texi (Vector Extensions, X86 Built-in Functions):
6097	Use '3DNow!' for the extension of that name, ensure normal space
6098	after the string.
6099	* doc/invoke.texi (i386 and x86-64 Options): Likewise.
6100
61012010-03-03  Jeff Law  <law@redhat.com>
6102
6103	* PR middle-end/32693
6104	* expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
6105	than gen_rtx_SUBREG.
6106	(extract_bit_field_1): Likewise.
6107
61082010-03-03  Janis Johnson  <janis187@us.ibm.com>
6109
6110	* doc/sourcebuild.texi (Test directives): Document that arguments
6111	include-opts and exclude-opts are now optional for dg-skip-if,
6112	dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
6113
61142010-03-03  Jason Merrill  <jason@redhat.com>
6115
6116	PR c++/12909
6117	* cgraph.h (varpool_node): Add extra_name field.
6118	* varpool.c (varpool_extra_name_alias): New.
6119	(varpool_assemble_decl): Emit extra name aliases.
6120	(varpool_mark_needed_node): Look past an extra name alias.
6121	* lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
6122	* lto-streamer-in.c (lto_input_tree): Read it.
6123	* lto-streamer-out.c (output_unreferenced_globals): Write it.
6124
61252010-03-03  Eric Botcazou  <ebotcazou@adacore.com>
6126
6127	* config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
6128	(sparc*-*-solaris2*): ...this.
6129
61302010-03-03  Jakub Jelinek  <jakub@redhat.com>
6131
6132	PR debug/43229
6133	* cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
6134	WIDEN_MULT_EXPR and WIDEN_SUM_EXPR.  Return NULL without
6135	ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
6136	FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
6137
6138	PR debug/43237
6139	* dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
6140	fallthrough to default handling, just with want_address 0 instead of 2.
6141	For single element lists, add_AT_loc directly, otherwise create an
6142	artificial variable DIE and stick location list to it.
6143
6144	PR debug/43177
6145	* var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
6146	(VAL_EXPR_HAS_REVERSE): Define.
6147	(reverse_op): New function.
6148	(add_stores): For reversible operations add an extra MO_VAL_USE.
6149
61502010-03-02  Jason Merrill  <jason@redhat.com>
6151
6152	* c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
6153
61542010-03-02  Eric Botcazou  <ebotcazou@adacore.com>
6155
6156	* config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
6157	(sparc64-*-linux*): Likewise.
6158	(sparc64-*-solaris2*): Include assembler files before linker ones.
6159	(sparc-*-solaris2*): Simplify and reorder to match previous case.
6160	* config/sparc/gas.h: Delete.
6161	* config/sparc/sol2-64.h: Add copyright notice.
6162	* config/sparc/sol2-gas-bi.h: Likewise.
6163	* config/sparc/sol2-gld.h: Likewise.
6164	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
6165	* config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
6166	* config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
6167	* config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
6168	(sparc_elf_asm_named_section): Rename into...
6169	(sparc_solaris_elf_asm_named_section): ...this.  Always define.
6170
61712010-03-02  Uros Bizjak  <ubizjak@gmail.com>
6172
6173	* config/alpha/alpha.c (override_options): Fix -mtune error message.
6174
61752010-03-02  Jeff Law  <law@redhat.com>
6176
6177	PR middle-end/42431
6178	* reload1.c (rtx_p, substitute_stack): Declare.
6179	(substitute): Record addresses of changed rtxs.
6180	(gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
6181	Restore the original rtx when complete.
6182	(reload): Free subsitute_stack when complete.
6183
61842010-03-02  Janis Johnson  <janis187@us.ibm.com>
6185
6186	* doc/gccint.texi (menu): Add Testsuites as a chapter.
6187	* doc/sourcebuild.texi (Testsuites): Move up a level to be a
6188	new chapter.
6189	(Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
6190	LTO Testing, gcov Testing, profopt Testing, compat Testing,
6191	Torture Tests): Change from subsection to section.
6192
61932010-03-02  Jakub Jelinek  <jakub@redhat.com>
6194	    Steven Bosscher  <steven@gcc.gnu.org>
6195
6196	* var-tracking.c (vt_initialize): Scan insns in ebb chunks
6197	instead of bb.
6198
61992010-03-02  Reza Yazdani  <reza.yazdani@amd.com>
6200
6201	PR middle-end/42640
6202	* tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
6203	the assignment from the new induction variable to the assignment
6204	of the value from the original loop PHI function.
6205
62062010-03-01  Janis Johnson  <janis187@us.ibm.com>
6207	    Daniel Jacobowitz  <dan@codesourcery.com>
6208
6209	* doc/sourcebuild.texi (Test directives): Clarify options to
6210	dg-skip-if.
6211
62122010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6213
6214	* configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
6215	Disable cfi directives unless GCC and gas agree on using read-only
6216	.eh_frame sections for 64-bit.
6217	* configure: Regenerate.
6218
62192010-03-01  Richard Guenther  <rguenther@suse.de>
6220
6221	PR tree-optimization/43220
6222	* tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
6223	BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
6224
62252010-03-01  Richard Guenther  <rguenther@suse.de>
6226	    Martin Jambor  <mjambor@suse.cz>
6227
6228	PR middle-end/41250
6229	* gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
6230	gimplified parameters.
6231
62322010-03-01  Christian Bruel  <christian.bruel@st.com>
6233
6234	* except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
6235
62362010-03-01  H.J. Lu  <hongjiu.lu@intel.com>
6237
6238	* config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
6239
62402010-03-01  Richard Guenther  <rguenther@suse.de>
6241
6242	PR middle-end/43213
6243	* expr.c (expand_assignment): Use the alias-oracle to tell
6244	if the rhs aliases the result decl.
6245
62462010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6247
6248	PR pch/14940
6249	* config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
6250	to sol_gt_pch_get_address.
6251	(TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
6252	64-bit, SPARC and x86.
6253	(sol_gt_pch_get_address): New function.
6254
62552010-03-01  Marco Poletti  <poletti.marco@gmail.com>
6256
6257	* toplev.h (inform_n, error_n): Declare.
6258	* diagnostic.c (inform_n, error_n): New function.
6259
62602010-03-01  Jakub Jelinek  <jakub@redhat.com>
6261
6262	* cfgexpand.c (expand_used_vars): If an artificial non-ignored var
6263	has no rtl yet when processing local_decls, queue it and recheck
6264	if deferred stack allocation hasn't assigned it rtl.
6265
62662010-02-28  Kaz Kojima  <kkojima@gcc.gnu.org>
6267
6268	* config/sh/sh.c (unspec_bbr_uid): New.
6269	(gen_block_redirect): Use it instead of INSN_UID.
6270	(gen_far_branch): Likewise.
6271
62722010-02-28  H.J. Lu  <hongjiu.lu@intel.com>
6273
6274	* config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
6275	it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
6276
62772010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6278
6279	* doc/invoke.texi (Warning Options, RX Options): Fix typos.
6280	(Warning Options): -Wno-conversion-null is valid for
6281	Objective-C++ as well.
6282	* doc/tm.texi (Named Address Spaces): Likewise.
6283	* doc/plugins.texi (Plugins): Replace TABs with spaces.
6284	* doc/tree-ssa.texi (Tree SSA): Likewise.
6285
62862010-02-27  H.J. Lu  <hongjiu.lu@intel.com>
6287
6288	PR bootstrap/43202
6289	* config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
6290	by default.  Don't set the default arch for
6291	i[34567]86-*-darwin*|x86_64-*-darwin*.
6292
62932010-02-27  H.J. Lu  <hongjiu.lu@intel.com>
6294
6295	PR bootstrap/43202
6296	* config.gcc: Enable SSE math for i[34567]86-*-darwin* by
6297	default.  Set the default 32bit/64bit archs with $with_arch
6298	instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
6299
63002010-02-27  Richard Guenther  <rguenther@suse.de>
6301
6302	PR tree-optimization/43186
6303	* params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
6304	* doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
6305	* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
6306	unroller iterations.
6307
63082010-02-27  H.J. Lu  <hongjiu.lu@intel.com>
6309
6310	* config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
6311	required and i[34567]86-*-* targets don't support 64bit ISA.
6312
63132010-02-26  Eric Botcazou  <ebotcazou@adacore.com>
6314
6315	PR ada/43096
6316	* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
6317	the same alias set.
6318
63192010-02-26  H.J. Lu  <hongjiu.lu@intel.com>
6320
6321	* config.gcc: Set the default arch at least to Prescott for
6322	i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
6323	if SSE math is enabled.
6324
63252010-02-26  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6326
6327	* diagnostic.c (diagnostic_initialize): Update.
6328	(diagnostic_report_diagnostic): Test inhibit_notes_p for
6329	informative notes.
6330	* diagnostic.h (diagnostic_context): New bool inhibit_notes_p.
6331	(diagnostic_inhibit_notes): New.
6332	* toplev.c (process_options): inhibit notes with -fcompare-debug.
6333
63342010-02-26  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6335
6336	PR c/20631
6337	* doc/cpp.texi: Use c90 instead of c89 and gnu90 instead of gnu89.
6338	* doc/standards.texi: Likewise.
6339	* doc/extend.texi: Likewise.
6340	* doc/trouble.texi: Likewise.
6341	* doc/cppopts.texi: Likewise.
6342	* doc/install.texi: Likewise.
6343	* c.opt (std=c90,std=gnu90): New options.
6344	* c-opts.c (c_common_handle_option): Handle them.
6345
63462010-02-26  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6347
6348	PR c/24577
6349	* c-decl.c (undeclared_variable): Use an informative note.
6350
63512010-02-26  Richard Guenther  <rguenther@suse.de>
6352
6353	PR tree-optimization/43186
6354	* gimple.h (gimple_fold): Remove.
6355	* gimple.c (gimple_fold): Remove.  Inline into single user ...
6356	* tree-cfgcleanup.c (cleanup_control_expr_graph): ... here.
6357	Try harder for conditions.
6358
63592010-02-26  Jakub Jelinek  <jakub@redhat.com>
6360
6361	PR debug/43190
6362	* function.c (used_types_insert): Don't skip through named pointer
6363	types.  Don't use TYPE_MAIN_VARIANT if the original type has a name
6364	and it is different from the main variant's type.
6365
63662010-02-26  Nick Clifton  <nickc@redhat.com>
6367
6368	* config/rx/rx.md (sminsi3): Remove bogus alternative.
6369
63702010-02-26  H.J. Lu  <hongjiu.lu@intel.com>
6371
6372	* config.gcc: Support --with-fpmath=sse for x86.
6373
6374	* config/i386/ssemath.h: New.
6375
6376	* doc/install.texi (--with-fpmath=sse): Documented.
6377
63782010-02-26  Richard Guenther  <rguenther@suse.de>
6379
6380	PR tree-optimization/43188
6381	* tree-vect-stmts.c (get_vectype_for_scalar_type): Do not build
6382	vector types of over-aligned element type.
6383
63842010-02-26  Uros Bizjak  <ubizjak@gmail.com>
6385
6386	PR target/43175
6387	* config/i386/i386.c (expand_vec_perm_blend): Use correct
6388	operands in V8HImode subregs.  Fix operand order in VEC_MERGE rtx.
6389
63902010-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
6391
6392	* doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
6393
63942010-02-26  Jakub Jelinek  <jakub@redhat.com>
6395
6396	* Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
6397	* var-tracking.c: Include diagnostic.h.
6398	(debug_dv): New function.
6399	(dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
6400
6401	PR debug/43160
6402	* var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
6403	(add_value_chain, add_value_chains, remove_value_chain,
6404	remove_value_chains): Handle DEBUG_EXPRs.
6405	(check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
6406
6407	PR debug/43161
6408	* regcprop.c (struct queued_debug_insn_change): New type.
6409	(struct value_data_entry): Add debug_insn_changes field.
6410	(struct value_data): Add n_debug_insn_changes field.
6411	(debug_insn_changes_pool): New variable.
6412	(free_debug_insn_changes, apply_debug_insn_changes,
6413	cprop_find_used_regs_1, cprop_find_used_regs): New functions.
6414	(kill_value_one_regno): Call free_debug_insn_changes if needed.
6415	(init_value_data): Clear debug_insn_changes and n_debug_insn_changes
6416	fields.
6417	(replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
6418	changes for them.
6419	(copyprop_hardreg_forward_1): Don't call apply_change_group for
6420	DEBUG_INSNs.  For a real insn, if there are queued DEBUG_INSN
6421	changes, call cprop_find_used_regs via note_stores.
6422	(copyprop_hardreg_forward): When copying vd from predecessor
6423	which has any queued DEBUG_INSN changes, make sure the pointers are
6424	cleared.  At the end call df_analyze and then if there are any
6425	DEBUG_INSN changes queued at the end of some basic block for still
6426	live registers, apply them.
6427	(pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
6428
64292010-02-25  Uros Bizjak  <ubizjak@gmail.com>
6430
6431	* config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
6432	(arm*-*-*): Ditto.
6433
64342010-02-25  H.J. Lu  <hongjiu.lu@intel.com>
6435
6436	* config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
6437	targets.  Set the default with_cpu/with_arch from arch/cpu.
6438	Allow x86-64 and native for with_cpu/with_arch.
6439
64402010-02-25  Nicolas Benoit  <nbenoit@tuxfamily.org>
6441
6442	* ebitmap.c: Change calls to verify_popcount with calls to
6443	sbitmap_verify_popcount.
6444	(ebitmap_clear_bit): Fixed map->cacheindex test and
6445	map>cache update when bit clearing results in an empty
6446	element.
6447
64482010-02-25  Michael Meissner  <meissner@linux.vnet.ibm.com>
6449
6450	PR target/43154
6451	* config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
6452	(vec_interleave_high<mode>): Rename from vec_interleave_highv2df
6453	and support both V2DF and V2DI modes.
6454	(vec_interleave_low<mode>): Rename from vec_interleave_lowv2df and
6455	support both V2DF and V2DI modes.
6456	(general): Delete trailing whitespace from a few patterns.
6457
6458	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
6459	V2DF/V2DI interleave high/low builtins.
6460
6461	* config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
6462	new VSX builtins.
6463
6464	* config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
6465	interleave high/low functions.
6466
64672010-02-25  Gerald Pfeifer  <gerald@pfeifer.com>
6468
6469	* doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
6470	#pragma extern_prefix.
6471
64722010-02-25  Jakub Jelinek  <jakub@redhat.com>
6473
6474	PR debug/43166
6475	* cfgexpand.c (expand_debug_expr) <case VAR_DECL>: If mode is
6476	BLKmode, assert op0 is a MEM and just adjust its mode.
6477
6478	PR debug/43165
6479	* cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
6480	if bitpos isn't multiple of mode's bitsize.
6481
64822010-02-24  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6483
6484	* c.opt (-ftemplate-depth=): New.
6485	(-ftemplate-depth-): Deprecate.
6486	* optc-gen.awk: Handle -ftemplate-depth=.
6487	* opth-gen.awk: Likewise.
6488	* c-opts.c (c_common_handle_option): Likewise.
6489	* doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
6490
64912010-02-24  Jason Merrill  <jason@redhat.com>
6492
6493	* doc/invoke.texi: Improve -Wabi and -fabi-version docs.
6494
64952010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6496
6497	* cfg.c (alloc_aux_for_block): Remove inline.
6498	(alloc_aux_for_edge): Likewise.
6499
65002010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6501
6502	* config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
6503
65042010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6505
6506	* config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
6507	* config/i386/sol2-gas.h: New file.
6508	* config.gcc (i[34567]86-*-solaris2*): Use it.
6509
65102010-02-24  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6511
6512	PR c/43128
6513	* c-typeck.c (ep_convert_and_check): New.
6514	(build_conditional_expr): Use it.
6515	(build_binary_op): Likewise.
6516
65172010-02-24  Jakub Jelinek  <jakub@redhat.com>
6518
6519	* regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
6520
6521	PR debug/43150
6522	* gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
6523	bounds even for -O+.
6524	* var-tracking.c (track_expr_p): If !need_rtl, don't mandate
6525	expr needs to have DECL_NAME set.
6526
65272010-02-24  Nick Clifton  <nickc@redhat.com>
6528
6529	* config/mep/mep.c: Include gimple.h.
6530	(mep_function_uses_sp): Delete unused function.
6531	(mep_gimplify_va_arg_expr): Change types of pre_p and post_p
6532	parameters.  Use unsigned integers to count args.  Return a
6533	NULL_RTX instead of an error_mark_node.  Toidy up formatting.
6534
65352010-02-23  Jakub Jelinek  <jakub@redhat.com>
6536
6537	PR target/43107
6538	* config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
6539	greater or equal to nelt instead of 2 * nelt.
6540	(expand_vec_perm_1): When op0 and op1 are equal, mask indexes
6541	with nelt - 1.
6542
65432010-02-23  Jason Merrill  <jason@redhat.com>
6544
6545	PR debug/42800
6546	* cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
6547	in cfun->local_decls even if they have register types.
6548
6549	PR c++/42837
6550	* stor-layout.c (place_field): Don't warn about unnecessary
6551	DECL_PACKED if the type is packed.
6552
65532010-02-23  Jakub Jelinek  <jakub@redhat.com>
6554
6555	PR target/43139
6556	* config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
6557	GOTOFF relocs, even when the base reg isn't pic pointer.
6558
65592010-02-23  Michael Matz  <matz@suse.de>
6560
6561	PR debug/43077
6562	* cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
6563	(expand_gimple_basic_block): Generate and use debug temps if there
6564	are debug uses left after the last real use of TERed ssa names.
6565	Unlink debug immediate uses when they are expanded.
6566
65672010-02-23  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6568
6569	PR 43123
6570	* config/i386/i386.c (override_options): Reorganise to provide
6571	better error messages.
6572
65732010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
6574
6575	PR middle-end/43083
6576	* graphite-scop-detection.c (create_single_exit_edge): Move
6577	the call to find_single_exit_edge to....
6578	(create_sese_edges): ...here.  Don't handle multiple edges
6579	exiting the function.
6580	(build_graphite_scops): Don't handle multiple edges
6581	exiting the function.
6582
65832010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
6584
6585	PR middle-end/43097
6586	* sese.c (get_rename): Assert that old_name is an SSA_NAME.
6587	(rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
6588
65892010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
6590
6591	PR middle-end/43026
6592	* sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
6593
65942010-02-22  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6595
6596	PR c++/43126
6597	* c-typeck.c (convert_arguments): Print declaration location.
6598	* c-common.c (validate_nargs): Rename as
6599	builtin_function_validate_nargs.
6600	(check_builtin_function_arguments): Update.
6601
66022010-02-22  Richard Guenther  <rguenther@suse.de>
6603
6604	PR lto/43045
6605	* tree-inline.c (declare_return_variable): Use the type of
6606	the call stmt lhs if available.
6607
66082010-02-22  Duncan Sands  <baldrick@free.fr>
6609
6610	* passes.c (register_pass): Always consider all pass lists when
6611	ref_pass_instance_number is zero.
6612
66132010-02-22  Richard Guenther  <rguenther@suse.de>
6614
6615	PR tree-optimization/42749
6616	* tree-tailcall.c (adjust_return_value_with_ops): Drop update
6617	parameter.  Do arithmetic in the original type.
6618	(update_accumulator_with_ops): Likewise.
6619	(adjust_accumulator_values): Adjust.
6620
66212010-02-22  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
6622
6623	* config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
6624	(QI to BLKmode splitter): New splitter.
6625
66262010-02-22  H.J. Lu  <hongjiu.lu@intel.com>
6627
6628	* config/i386/i386.c (initial_ix86_tune_features): Turn on
6629	X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
6630
66312010-02-22  Richard Guenther  <rguenther@suse.de>
6632
6633	* tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
6634
66352010-02-22  Hans-Peter Nilsson  <hp@bitrange.com>
6636
6637	Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
6638	* config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
6639	($(T)crti.o, $(T)crtn.o): Remove rules.
6640
66412010-02-21  Tobias Burnus  <burnus@net-b.de>
6642
6643	PR fortran/35259
6644	* doc/invoke.texi (-fassociative-math): Document that this
6645	option is automatically enabled for Fortran.
6646
66472010-02-20  David S. Miller  <davem@davemloft.net>
6648
6649	* configure.ac: Test if linker and assembler properly support
6650	GOTDATA_OP relocations.
6651	* configure: Rebuild.
6652	* config.in: Likewise.
6653	* config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
6654	(movsi_lo_sum_pic): Use %gdop_*() relocs if available.
6655	(movsi_high_pic): Likewise.
6656	(movdi_lo_sum_pic): Likewise.
6657	(movdi_high_pic): Likewise.
6658	(movsi_pic_gotdata_op): New pattern.
6659	(movdi_pic_gotdata_op): Likewise.
6660	* config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
6661	emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
6662
66632010-02-20  Uros Bizjak  <ubizjak@gmail.com>
6664
6665	PR target/43067
6666	* config/i386/sse.md (xop_mulv2div2di3_low): Change type
6667	attribute to ssemul.
6668	(xop_mulv2div2di3_high): Ditto.
6669
66702010-02-20  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6671
6672	PR c++/35669
6673	* c.opt (Wconversion-null): New option.
6674	* doc/invoke.texi (Wconversion-null): Document.
6675
66762010-02-20  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6677
6678	* common.opt (Wlarger-than-): Add Undocumented.
6679
66802010-02-19  Mike Stump  <mikestump@comcast.net>
6681
6682	* config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
6683
66842010-02-19  Jason Merrill  <jason@redhat.com>
6685
6686	PR target/40332
6687	* configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
6688	* configure: Likewise.
6689
66902010-02-20  Alan Modra  <amodra@gmail.com>
6691
6692	PR middle-end/42344
6693	* cgraph.h (cgraph_make_decl_local): Declare.
6694	* cgraph.c (cgraph_make_decl_local): New function.
6695	(cgraph_make_node_local): Use it.
6696	* cgraphunit.c (cgraph_function_versioning): Likewise.
6697	* ipa.c (function_and_variable_visibility): Likewise.
6698
66992010-02-19  Jakub Jelinek  <jakub@redhat.com>
6700
6701	PR bootstrap/43121
6702	* except.c (sjlj_emit_function_enter): Don't call
6703	add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
6704	directly.
6705	* rtl.h (add_reg_br_prob_note): Remove prototype.
6706
67072010-02-19  Manuel L��pez-Ib����ez  <manu@gcc.gnu.org>
6708
6709	PR 41779
6710	* c-common.c (conversion_warning): Remove widening conversions
6711	before checking the conversion of integers to reals.
6712
67132010-02-19  Mike Stump  <mikestump@comcast.net>
6714
6715	PR middle-end/43125
6716	* c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
6717
6718	PR objc/43061
6719	* cgraphunit.c (process_function_and_variable_attributes): Check
6720	DECL_PRESERVE_P instead of looking up attribute "used".
6721	* ipa-pure-const.c (check_decl): Likewise.
6722	* ipa-reference.c (has_proper_scope_for_analysis): Likewise.
6723	* ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
6724	* config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
6725	instead of attribute "used".
6726	* config/sol2-c.c (solaris_pragma_init): Likewise.
6727	(solaris_pragma_fini): Likewise.
6728
67292010-02-19  Jakub Jelinek  <jakub@redhat.com>
6730
6731	* ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
6732	Use XCNEW instead of xcalloc.
6733	(add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
6734	XNEW instead of xmalloc.
6735	(get_fields): Use XNEWVEC instead of xmalloc.
6736
6737	PR debug/43084
6738	* ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
6739	populate vars array.
6740	(create_new_general_access): For debug stmts just reset value.
6741	(get_stmt_accesses): For accesses within debug stmts just record them
6742	using add_access_to_acc_sites instead of preventing the peeling or
6743	counting them as accesses.
6744
6745	PR middle-end/42233
6746	* dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
6747
67482010-02-19  Richard Guenther  <rguenther@suse.de>
6749
6750	PR tree-optimization/42916
6751	* tree-vect-slp.c (vect_slp_analyze_bb): Count only real
6752	instructions.
6753
67542010-02-19  Andreas Schwab  <schwab@linux-m68k.org>
6755
6756	* configure.ac: Replace all uses of changequote in macro arguments
6757	with proper quoting.
6758
67592010-02-19  Jakub Jelinek  <jakub@redhat.com>
6760
6761	PR middle-end/42233
6762	* loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
6763
67642010-02-19  Richard Guenther  <rguenther@suse.de>
6765
6766	PR tree-optimization/42944
6767	* tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
6768	test for aliasing with errno.
6769
67702010-02-19  Jakub Jelinek  <jakub@redhat.com>
6771
6772	PR middle-end/42233
6773	* expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
6774	do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
6775	* dojump.c: Include output.h.
6776	(inv): New inline function.
6777	(jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
6778	do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
6779	do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
6780	do_jump_by_parts_equality, do_compare_and_jump): Add PROB
6781	argument, pass it down to other calls.
6782	(do_compare_rtx_and_jump): Likewise.  If PROB is not -1,
6783	add REG_BR_PROB note to the conditional jump.
6784	* cfgexpand.c (add_reg_br_prob_note): Removed.
6785	(expand_gimple_cond): Don't call it, add the probability
6786	as last argument to jumpif_1/jumpifnot_1.
6787	* Makefile.in (dojump.o): Depend on output.h.
6788	* builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
6789	callers.
6790	* expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
6791	* stmt.c (do_jump_if_equal): Likewise.
6792	* cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
6793	* loop-unswitch.c (compare_and_jump_seq): Likewise.
6794	* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
6795	Likewise.
6796	* optabs.c (expand_doubleword_shift, expand_abs): Likewise.
6797	* expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
6798	jumpifnot_1 callers.
6799	(expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
6800	callers.
6801	(store_expr): Adjust jumpifnot caller.
6802	(store_constructor): Adjust jumpif caller.
6803
6804	PR middle-end/42233
6805	* gimplify.c (gimple_boolify): For __builtin_expect call
6806	gimple_boolify also on its first argument.
6807
68082010-02-18  Uros Bizjak  <ubizjak@gmail.com>
6809
6810	* configure.ac (gnu-unique-object): Wrap regexps using [] in
6811	changequote block.
6812	(__stack_chk_fail): Ditto.  Remove quadrigraphs.
6813	* configure: Regenerated.
6814
68152010-02-18  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
6816
6817	* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
6818	lang_hooks.types_compatible_p instead of comptypes.
6819
68202010-02-18  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6821
6822	* config/arm/lib1funcs.asm (__prefer_thumb__): New define.
6823	(udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
6824	if __prefer_thumb__ is defined.
6825
68262010-02-18  Martin Jambor  <mjambor@suse.cz>
6827
6828	PR tree-optimization/43066
6829	* tree-sra.c (build_ref_for_offset_1): Return false on encountering an
6830	array with zero-sized element type.
6831
68322010-02-18  Jakub Jelinek  <jakub@redhat.com>
6833
6834	* dwarf2out.c (add_var_loc_to_decl): Change last argument to
6835	rtx, allocate struct var_loc_node here and return it to the
6836	caller, and only if it is actually needed.
6837	(dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
6838	move it earlier and return immediately if it returns NULL.
6839
68402010-02-17  Mikael Pettersson  <mikpe@it.uu.se>
6841
6842	* config/sparc/gas.h: New file.  Restore
6843	TARGET_ASM_NAMED_SECTION to its ELF default.
6844	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
6845	check !HAVE_GNU_AS.
6846	* config/sparc/sparc.c (sparc_elf_asm_named_section):
6847	Likewise.  Add ATTRIBUTE_UNUSED to prototype.
6848	* config.gcc (sparc*-*-linux*): Include sparc/gas.h
6849	after sparc/sysv4.h.
6850
68512010-02-17  Dave Korn  <dave.korn.cygwin@gmail.com>
6852
6853	* config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
6854
68552010-02-17  Steven Bosscher  <steven@gcc.gnu.org>
6856
6857	* gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
6858	patterns from predicated pattern.
6859
68602010-02-17  Uros Bizjak  <ubizjak@gmail.com>
6861
6862	PR target/43103
6863	* config/i386/sse.md (xop_vpermil2<mode>3): Use avxmodesuffixf2c
6864	for insn mnemonic suffix.
6865
68662010-02-17  Richard Guenther  <rguenther@suse.de>
6867
6868	* tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
6869	to loop PHI nodes.
6870
68712010-02-17  Jakub Jelinek  <jakub@redhat.com>
6872
6873	PR debug/42918
6874	* caller-save.c (save_call_clobbered_regs): If BB ends with
6875	a DEBUG_INSN, move any notes in between last real insn and the last
6876	DEBUG_INSN after the last DEBUG_INSN.
6877
68782010-02-16  Joern Rennecke  <joern.rennecke@embecosm.com>
6879
6880	* tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
6881	Fix return type.  Fix argument type.  Explain meaning of return value.
6882
68832010-02-16  Richard Guenther  <rguenther@suse.de>
6884
6885	PR tree-optimization/41043
6886	* tree-vrp.c  (vrp_var_may_overflow): Only ask SCEV for real loops.
6887	(vrp_visit_assignment_or_call): Do not ask SCEV for regular
6888	statements ...
6889	(vrp_visit_phi_node): ... but only for loop PHI nodes.
6890
68912010-02-16  Ira Rosen  <irar@il.ibm.com>
6892
6893	PR tree-optimization/43074
6894	* tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
6895	* tree-vect-loop.c (vect_analyze_loop_operations): Add
6896	vectorizable cycles in hybrid SLP check.
6897	* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
6898
68992010-02-16  Richard Guenther  <rguenther@suse.de>
6900
6901	* alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
6902	(true_dependence): If memrefs_conflict_p computes must-alias
6903	trust it.  Move TBAA check after offset-based disambiguation.
6904	(canon_true_dependence): Likewise.
6905
69062010-02-16  Alexandre Oliva  <aoliva@redhat.com>
6907
6908	* params.def (PARAM_MAX_VARTRACK_SIZE): New.
6909	* doc/invoke.texi: Document it.
6910	* var-tracking.c: Include toplev.h and params.h.
6911	(vt_find_locations): Return bool indicating success.  Compute
6912	hash sizes unconditionally.  Check new parameter, report.
6913	(variable_tracking_main_1): Check vt_find_locations results and
6914	retry.  Renamed from...
6915	(variable_tracking_main): ... this.  New wrapper to preserve
6916	flag_var_tracking_assignments.
6917	* Makefile.in (var-tracking.o): Adjust dependencies.
6918
69192010-02-16  Jack Howarth  <howarth@bromo.med.uc.edu>
6920	    Jakub Jelinek  <jakub@redhat.com>
6921
6922	PR target/42854
6923	* config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
6924	if weak_import attribute is present.
6925	* config/darwin.c (machopic_select_section): Likewise.
6926
69272010-02-15  Joern Rennecke  <joern.rennecke@embecosm.com>
6928
6929	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
6930	(TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
6931	(TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
6932	(TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
6933
6934	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument types.
6935
6936	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
6937	Fix argument types.
6938
6939	* doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
6940	Rewrite text to refer to the names.
6941
69422010-02-15  Sebastian Pop  <sebastian.pop@amd.com>
6943
6944	* config/i386/i386-builtin-types.def
6945	(V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
6946	(V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
6947	(V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
6948	(V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
6949	* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
6950	IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
6951	IX86_BUILTIN_VPERMIL2PS256.
6952	(MULTI_ARG_4_DF2_DI_I): Defined.
6953	(MULTI_ARG_4_DF2_DI_I1): Defined.
6954	(MULTI_ARG_4_SF2_SI_I): Defined.
6955	(MULTI_ARG_4_SF2_SI_I1): Defined.
6956	(bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
6957	__builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
6958	__builtin_ia32_vpermil2ps256.
6959	(ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
6960	MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
6961	MULTI_ARG_4_SF2_SI_I1.  Handle builtins with 4 arguments.
6962	(ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
6963	MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
6964	MULTI_ARG_4_SF2_SI_I1.  Handle CODE_FOR_xop_vpermil2v2df3,
6965	CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
6966	CODE_FOR_xop_vpermil2v8sf3.
6967	* config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
6968	* config/i386/sse.md (xop_vpermil2<mode>3): New insn pattern.
6969	* config/i386/xopintrin.h (_mm_permute2_pd): New.
6970	(_mm256_permute2_pd): New.
6971	(_mm_permute2_ps): New.
6972	(_mm256_permute2_ps): New.
6973
69742010-02-15  Nick Clifton  <nickc@redhat.com>
6975
6976	* config/h8300/h8300.c: (h8300_push_pop): Use bool type for
6977	boolean parameters.  Use emit_jump_insn when emitting a pop
6978	instruction containing a return insn.
6979	(push): Use 'true' rather than '1' as second parameter to F.
6980	(h8300_expand_prologue): Likewise.
6981	Use 'true' and 'false' for boolean parameters to h8300_push_pop.
6982	(h8300_expand_epilogue): Likewise.
6983
69842010-02-15  Richard Guenther  <rguenther@suse.de>
6985
6986	PR middle-end/43068
6987	* cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
6988	if that is zero.
6989
69902010-02-15  Nick Clifton  <nickc@redhat.com>
6991
6992	* config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
6993	delta.
6994
69952010-02-14  Marco Poletti  <poletti.marco@gmail.com>
6996
6997	* intl.c (fake_ngettext): New function.
6998	* intl.h (fake_ngettext): Declare.
6999	(ngettext): Define macro.
7000	* collect2.c (notice_translated): New function.
7001	(main): Use notice_translated and ngettext.
7002	* collect2.h (notice_translated): Declare.
7003
70042010-02-14  Steven Bosscher  <steven@gcc.gnu.org>
7005
7006	* reorg.c (delete_computation): Comment fixes.
7007	* caller-save.c (setup_save_areas): Idem.
7008	* sel-sched-dump.c (dump_lv_set): Idem.
7009	* rtl.def: Idem.
7010
70112010-02-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
7012
7013	* config/s390/s390.c (s390_sched_init): New function.
7014	(TARGET_SCHED_INIT): Target hook defined.
7015
70162010-02-12  Dave Korn  <dave.korn.cygwin@gmail.com>
7017	    Jack Howarth  <howarth@bromo.med.uc.edu>
7018	    Iain Sandoe  <iain.sandoe@sandoe-acoustics.co.uk>
7019
7020	PR target/42982
7021	Partial revert of unintended change in fix for PR41605.
7022	* config/darwin.h: Fix typo.
7023	* config/darwin9.h: Same.
7024
70252010-02-11  Jakub Jelinek  <jakub@redhat.com>
7026
7027	* c-pch.c (pch_init): Clear v.
7028
70292010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
7030
7031	PR middle-end/42930
7032	* graphite-scop-detection.c (graphite_can_represent_scev): Call
7033	graphite_can_represent_init for MULT_EXPR.
7034
70352010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
7036
7037	PR middle-end/42914
7038	PR middle-end/42530
7039	* graphite-sese-to-poly.c (remove_phi): New.
7040	(translate_scalar_reduction_to_array): Call remove_phi.
7041
70422010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
7043
7044	PR middle-end/42771
7045	* graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
7046	* graphite-clast-to-gimple.h (gloog): Update declaration.
7047	* graphite-poly.c (new_scop): Clear POLY_SCOP_P.
7048	* graphite-poly.h (struct poly_bb): Add missing comments.
7049	(struct scop): Add poly_scop_p field.
7050	(POLY_SCOP_P): New.
7051	* graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
7052	* graphite.c (graphite_transform_loops): Build the polyhedral
7053	representation for each scop before code generation.
7054	* sese.c (rename_variables_in_operand): Removed.
7055	(rename_variables_in_expr): Return the renamed expression.
7056	(rename_sese_parameters): New.
7057	* sese.h (rename_sese_parameters): Declared.
7058
70592010-02-11  Richard Guenther  <rguenther@suse.de>
7060
7061	PR tree-optimization/42998
7062	* tree-ssa-pre.c (create_expression_by_pieces): Treat
7063	POINTER_PLUS_EXPR properly.
7064
70652010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
7066	    Changpeng Fang  <changpeng.fang@amd.com>
7067
7068	PR middle-end/40886
7069	* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
7070	the cost of an IV candidate when the IV is used in a test against zero.
7071
7072	* gcc.dg/tree-ssa/ivopts-3.c: New.
7073
70742010-02-11  Richard Guenther  <rguenther@suse.de>
7075
7076	PR lto/41664
7077	* tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
7078	pointer-vs-decl case by swapping refs.  Handle some cases
7079	of pointer-vs-decl disambiguations more conservatively.
7080	* cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
7081	to false after expanding.
7082
70832010-02-11  Richard Guenther  <rguenther@suse.de>
7084
7085	PR driver/43021
7086	* gcc.c (process_command): Handle LTO file@offset case more
7087	appropriately.
7088
70892010-02-11  Jakub Jelinek  <jakub@redhat.com>
7090
7091	* reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
7092	modifications outside of the DEBUG_INSN.  Accept CLOBBERs inside
7093	of DEBUG_INSNs.
7094	(eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
7095
7096	* dwarf2out.c (mem_loc_descriptor) <case MEM>: Use DW_OP_deref_size
7097	if MEM's mode size isn't DWARF2_ADDR_SIZE.
7098	(mem_loc_descriptor) <do_scompare>: Allow also VOIDmode arguments.
7099	Optimize eq/ne comparisons when both arguments are known to be
7100	zero-extended.
7101	(mem_loc_descriptor) <do_ucompare>: Allow also VOIDmode arguments.
7102	Don't mask operands unnecessarily if they are known to be already
7103	zero-extended.
7104
71052010-02-10  Vladimir Makarov  <vmakarov@redhat.com>
7106
7107	* ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
7108	instead of loop.
7109
71102010-02-10  Richard Guenther  <rguenther@suse.de>
7111
7112	PR tree-optimization/43017
7113	* tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
7114	for wrapping signed arithmetic.
7115
71162010-02-10  Jakub Jelinek  <jakub@redhat.com>
7117
7118	PR debug/43010
7119	* dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
7120	if no debug info should be emitted for it.
7121
71222010-02-10  Kaz Kojima  <kkojima@gcc.gnu.org>
7123
7124	* config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
7125	note when flag_exceptions is set.
7126
71272010-02-10  Duncan Sands  <baldrick@free.fr>
7128
7129	* Makefile.in (PLUGIN_HEADERS): Add debug.h.
7130
71312010-02-10  Richard Guenther  <rguenther@suse.de>
7132
7133	PR c/43007
7134	* tree.c (get_unwidened): Handle constants.
7135	* convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
7136
71372010-02-10  Martin Jambor  <mjambor@suse.cz>
7138
7139	PR lto/42985
7140	* ipa-prop.c (ipa_update_after_lto_read): Count parameters and
7141	check for variable argument counts independently.
7142
71432010-02-10  Christian Bruel  <christian.bruel@st.com>
7144
7145	PR target/42841
7146	* config/sh/sh.c (find_barrier): Increase length for non delayed
7147	conditional branches.
7148
71492010-02-10  Christian Bruel  <christian.bruel@st.com>
7150
7151	* config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
7152
71532010-02-10  Jakub Jelinek  <jakub@redhat.com>
7154
7155	* builtins.c (set_builtin_user_assembler_name): Also handle
7156	ffs if int is smaller than word.
7157
71582010-02-09  Vladimir Makarov  <vmakarov@redhat.com>
7159
7160	PR middle-end/42973
7161	* ira-conflicts.c (get_dup): Remove.
7162	(process_reg_shuffles): Add new parameter.  Use it as an
7163	additional guard for copy generation.
7164	(add_insn_allocno_copies): Rewrite.
7165
71662010-02-09  Alexander Monakov  <amonakov@ispras.ru>
7167
7168	* common.opt (fsched2-use-traces): Preserved for backward
7169	compatibility.
7170	* doc/invoke.texi: Remove the documentation about option
7171	-fsched2-use-traces.
7172	* sched-rgn.c (rest_of_handle_sched2): Remove usage of
7173	flag_sched2_use_traces.
7174	* opts.c (common_handle_option): Add OPT_fsched2_use_traces to
7175	the backward compatibility flag section.
7176
71772010-02-09  Richard Guenther  <rguenther@suse.de>
7178
7179	PR tree-optimization/43008
7180	* tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
7181	make HEAP variables initialized from global memory if they
7182	are not known builtin functions.
7183	(find_func_aliases): Adjust.
7184
71852010-02-09  Richard Guenther  <rguenther@suse.de>
7186
7187	PR tree-optimization/43000
7188	* tree-vrp.c (vrp_int_const_binop): Only handle unsigned
7189	arithmetic manually.
7190
71912010-02-08  Jakub Jelinek  <jakub@redhat.com>
7192
7193	PR tree-optimization/42931
7194	* tree-loop-linear.c (try_interchange_loops): Don't call
7195	double_int_mul if estimated_loop_iterations failed.
7196
71972010-02-08  Martin Jambor  <mjambor@suse.cz>
7198
7199	PR middle-end/42898
7200	* tree-sra.c (build_accesses_from_assign): Do not mark in
7201	should_scalarize_away_bitmap if stmt has volatile ops.
7202	(sra_modify_assign): Do not process assigns piecemeal if if stmt
7203	has volatile ops.
7204
72052010-02-08  Joern Rennecke  <joern.rennecke@embecosm.com>
7206
7207	* doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
7208
72092010-02-07  Adam Nemet  <adambnmet@gmail.com>
7210
7211	* config/mips/mips.md (*<optab>_trunc<mode>_exts): Fix comment
7212	before the pattern.
7213
72142010-02-07  Andrew Pinski  <pinskia@gmail.com>
7215
7216	PR middle-end/42946
7217	* df-core.c (df_finish_pass): Change type of saved_flags to int.
7218
72192010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
7220
7221	PR middle-end/42988
7222	* graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
7223	to unknown_dependence.
7224	(graphite_legal_transform_dr): Handle the unknown_dependence.
7225	(graphite_carried_dependence_level_k): Same.
7226
72272010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
7228
7229	* ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
7230
72312010-02-07  Richard Guenther  <rguenther@suse.de>
7232
7233	PR middle-end/42991
7234	* expr.c (get_inner_reference): Always initialize *pbitsize.
7235
72362010-02-07  Richard Guenther  <rguenther@suse.de>
7237
7238	PR middle-end/42956
7239	* gimplify.c (gimple_fold_indirect_ref): Avoid generating
7240	new ARRAY_REFs on variable size element or minimal index arrays.
7241	Complete.
7242	* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
7243	gimple_fold_indirect_ref.
7244
72452010-02-06  Richard Earnshaw  <rearnsha@arm.com>
7246
7247	PR target/42957
7248	* arm.c (arm_override_options): Just return if the user has specified
7249	an invalid fpu name.
7250
72512010-02-03  Jason Merrill  <jason@redhat.com>
7252
7253	PR c++/42870
7254	* config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
7255	i386_pe_maybe_record_exported_symbol.
7256
72572010-02-05  Steve Ellcey  <sje@cup.hp.com>
7258
7259	PR target/42924
7260	* config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
7261	(pa_delegitimize_address): New function.
7262
72632010-02-05  Ozkan Sezer  <sezeroz@gmail.com>
7264
7265	* config/i386/msformat-c.c (ms_printf_length_specs): Set the
7266	scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
7267
72682010-02-05  Richard Guenther  <rguenther@suse.de>
7269
7270	PR lto/42762
7271	* lto-streamer-in.c (get_resolution): Deal with references
7272	to undefined functions.
7273
72742010-02-05  Richard Guenther  <rguenther@suse.de>
7275
7276	* tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
7277	(fold_const_aggregate_ref): Likewise.
7278	(ccp_fold_stmt): Substitute loads.
7279	(maybe_fold_reference): Verify types before substituting.
7280	Unshare properly.
7281	(fold_gimple_assign): Unshare properly.
7282	(fold_stmt_1): Insert conversion if necessary before replacing the RHS.
7283
72842010-02-05  Nathan Froyd  <froydnj@codesourcery.com>
7285
7286	* config/rs6000/rs6000.c (rs6000_override_options): Invert check
7287	for rs6000_gen_cell_microcode.
7288
72892010-02-04  Richard Guenther  <rguenther@suse.de>
7290
7291	PR rtl-optimization/42952
7292	* dse.c (const_or_frame_p): Remove MEM handling.
7293
72942010-02-04  Nick Clifton  <nickc@redhat.com>
7295
7296	* config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
7297	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
7298	(function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
7299	(mn10300_asm_output_mi_thunk): New function.
7300	(mn10300_can_output_mu_thunk): New function.
7301	* config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
7302	(FUNCTION_ARG_REGNO_P): Fix comment.  Accept d0 and d1.
7303	(FUNCTION_ARG): Delete incorrect comment.
7304
73052010-02-03  Jason Merrill  <jason@redhat.com>
7306
7307	PR c++/40138
7308	* fold-const.c (operand_equal_p): Handle erroneous types.
7309
73102010-02-03  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
7311
7312	* config/h8300/h8300.md (can_delay): Fix attibute condition.
7313
73142010-02-03  Vladimir Makarov  <vmakarov@redhat.com>
7315
7316	PR rtl-optimization/42941
7317	* sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
7318	of xmalloc.
7319
73202010-02-03  Jason Merrill  <jason@redhat.com>
7321
7322	PR c++/35652
7323	* builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
7324
73252010-02-03  Alexandre Oliva  <aoliva@redhat.com>
7326
7327	PR debug/42896
7328	* cselib.h (struct cselib_val_struct): Add uid.  Rename value to hash.
7329	(cselib_reset_table): Renamed from...
7330	(cselib_reset_table_with_next_value): ... this.
7331	(cselib_get_next_uid): Renamed from...
7332	(cselib_get_next_unknown_value): ... this.
7333	* cselib.c (next_uid): Renamed from...
7334	(next_unknown_value): ... this.
7335	(cselib_clear_table): Adjust.
7336	(cselib_reset_table): Adjust.  Renamed from...
7337	(cselib_reset_table_with_next_value): ... this.
7338	(cselib_get_next_uid): Adjust.  Renamed from...
7339	(cselib_get_next_unknown_value): ... this.
7340	(get_value_hash): Use hash.
7341	(cselib_hash_rtx): Likewise.
7342	(new_cselib_val): Adjust.  Set and dump uid.
7343	(cselib_lookup_mem): Pass next_uid as hash.
7344	(cselib_subst_to_values): Likewise.
7345	(cselib_log_lookup): Dump uid.
7346	(cselib_lookup): Pass next_uid as hash.  Adjust.
7347	(cselib_process_insn): Adjust.
7348	(cselib_init): Initialize next_uid.
7349	(cselib_finish): Adjust.
7350	(dump_cselib_table): Likewise.
7351	* dse.c (canon_address): Dump value uid.
7352	* print-rtl.c (print_rtx): Print value uid.
7353	* var-tracking.c (VARIABLE_HASH_VAL): Dropped.
7354	(dvuid): New type.
7355	(dv_uid): New function, sort of renamed from...
7356	(dv_htab_hash): ... this, reimplemented in terms of it and...
7357	(dv_uid2hash): ... this.  New.
7358	(variable_htab_eq): Drop excess assertions.
7359	(tie_break_pointers): Removed.
7360	(canon_value_cmp): Compare uids.
7361	(variable_post_merge_New_vals): Print uids.
7362	(vt_add_function_parameters): Adjust.
7363	(vt_initialize): Reset table.  Adjust.
7364
73652010-02-03  Richard Guenther  <rguenther@suse.de>
7366
7367	PR tree-optimization/42944
7368	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
7369	(call_may_clobber_ref_p_1): Likewise.  Properly handle
7370	malloc and calloc clobbering errno.
7371
73722010-02-03  Steven Bosscher  <steven@gcc.gnu.org>
7373
7374	* doc/invoke.texi: Fix name of sched1 dump.
7375
7376	* opts.c (decode_options): Set flag_tree_switch_conversion
7377	only conditionally on optimize >= 2.
7378
7379	* gcse.c: Assorted comment fixes in pass description.
7380
73812010-02-03  Anthony Green  <green@moxielogic.com>
7382
7383	* config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
7384	nop padding in order to maintain alignment of storage location of
7385	target function address.
7386	(moxie_trampoline_init): Store target function address at newly
7387	aligned location.
7388	* config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
7389	to 32.
7390	(TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
7391
73922010-02-03  Richard Guenther  <rguenther@suse.de>
7393
7394	PR middle-end/42927
7395	* tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
7396
73972010-02-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7398
7399	* config.gcc: Reenable check for obsolete targets.
7400	Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
7401	mips-sgi-irix6.[0-4]*.
7402
74032010-02-02  Nick Clifton  <nickc@redhat.com>
7404
7405	* config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
7406	constant size of 4 as being the same as 0.
7407	* doc/invoke.texi (RX Options): Document that -mmax-constant-size
7408	can take values in the range 0..4.
7409
74102010-02-02  Jack Howarth  <howarth@bromo.med.uc.edu>
7411
7412	PR java/41991
7413	* unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
7414	as _darwin10_Unwind_FindEnclosingFunction().
7415	* libgcc-libsystem.ver: New.
7416
74172010-02-01  Vladimir Makarov  <vmakarov@redhat.com>
7418
7419	PR target/41399
7420	* sched-deps.c (sched_analyze_insn): Ignore fixed registers for
7421	implicitly set registers.
7422
74232010-02-01  Richard Earnshaw  <rearnsha@arm.com>
7424
7425	* arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
7426	(arm_override_options): Allow automatic selection of the thread
7427	pointer register if thumb2.
7428	(legitimize_pic_address): Improve code sequences for Thumb2.
7429	(arm_call_tls_get_addr): Likewise.
7430	(legitimize_tls_address): Likewise.
7431	* arm.md (pic_load_addr_arm): Delete.  Replace with ...
7432	(pic_load_addr_32bit): ... this.  New named pattern.
7433	* thumb2.md (pic_load_addr_thumb2): Delete.
7434	(pic_load_dot_plus_four): Delete.
7435	(tls_load_dot_plus_four): New named pattern.
7436
74372010-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7438
7439	PR libgomp/29986
7440	* doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
7441	Document fix for TLS bug.
7442
74432010-01-31  Richard Guenther  <rguenther@suse.de>
7444
7445	* tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
7446	conservatively correct.
7447
74482010-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
7449
7450	PR target/42850
7451	Revert:
7452	2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
7453
7454	* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
7455
74562010-01-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7457
7458	* doc/install.texi: Update recommended GMP/MPFR/MPC versions.
7459
74602010-01-31  Kai Tietz  <kai.tietz@onevision.com>
7461
7462	* config.gcc: Adjust order of makefile fragments for mingw targets.
7463
74642010-01-31  Richard Guenther  <rguenther@suse.de>
7465
7466	PR middle-end/42898
7467	* gimplify.c (gimplify_init_constructor): For volatile LHS
7468	initialize a temporary.
7469
74702010-01-31  Matthias Klose  <doko@ubuntu.com>
7471
7472	* configure.ac: Fix __stack_chk_fail check for cross builds configured
7473	--with-headers
7474	* configure: Regenerate.
7475
74762010-01-29  Eric Botcazou  <ebotcazou@adacore.com>
7477
7478	* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
7479	the same alias set and their sizes different constantness.
7480	(aliasing_component_refs_p): Revert 2009-10-24 change.
7481
74822010-01-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7483
7484	* config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
7485	unused.
7486
74872010-01-29  Richard Guenther  <rguenther@suse.de>
7488
7489	* tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
7490	Assert we successfully updated the call.
7491
74922010-01-29  Jakub Jelinek  <jakub@redhat.com>
7493
7494	PR rtl-optimization/42889
7495	* df.h (df_set_bb_dirty_nonlr): New prototype.
7496	* df-core.c (df_set_bb_dirty_nonlr): New function.
7497	* df-scan.c (df_insn_rescan): Call it instead of
7498	df_set_bb_dirty for DEBUG_INSNs.
7499
75002010-01-29  Richard Guenther  <rguenther@suse.de>
7501
7502	PR middle-end/37448
7503	* ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
7504	quadratic behavior in most cases.
7505
75062010-01-28  Uros Bizjak  <ubizjak@gmail.com>
7507
7508	PR target/42891
7509	* config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
7510	in the call to gen_x86_movsicc_0_m1.
7511
75122010-01-28  Richard Guenther  <rguenther@suse.de>
7513
7514	PR tree-optimization/42871
7515	* tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
7516
75172010-01-28  Richard Guenther  <rguenther@suse.de>
7518
7519	* tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
7520	into call arguments.
7521
75222010-01-28  Richard Guenther  <rguenther@suse.de>
7523
7524	PR middle-end/42883
7525	* tree-cfgcleanup.c (remove_forwarder_block): Do not remove
7526	the forwarder if the destination is an EH landing pad.
7527
75282010-01-28  Razya Ladelsky  <razya@il.ibm.com>
7529
7530	* tree-parloops.c (transform_to_exit_first_loop): Update the basic
7531	block list passed to gimple_duplicate_sese_tail.
7532	(parallelize_loops): Avoid parallelization when the function
7533	has_nonlocal_label.
7534	Avoid parallelization when the preheader is IRREDUCIBLE.
7535	Try to optimize when estimated_loop_iterations_int is unresolved.
7536	Add the loop's location to the dump file.
7537	* tree-cfg.c (add_phi_args_after_redirect): Remove.
7538	(gimple_duplicate_sese_tail): Remove the check for the latch.
7539	Redirect nexits to the exit block.
7540	Remove handling of the incoming edges to the latch.
7541	Redirect the backedge from the copied latch to the exit bb.
7542
75432010-01-28  Michael Matz  <matz@suse.de>
7544
7545	PR target/42881
7546	* config/i386/i386.c (ix86_expand_vector_init_duplicate):
7547	Wrap force_reg into a sequence, emit it before user.
7548
75492010-01-28  Stephen Thomas  <stephen.thomas@arm.com>
7550
7551	* config/arm/arm.md (bswapsi2): Add support for bswapsi2.
7552	(arm_rev): New.
7553	(arm_legacy_rev): Likewise.
7554	(thumb_legacy_rev): Likewise.
7555
75562010-01-27  Jakub Jelinek  <jakub@redhat.com>
7557
7558	* dwarf2out.c (mem_loc_descriptor): Remove special casing of
7559	CONSTANT_POOL_ADDRESS_P SYMBOL_REFs.  If for MEM recursive call
7560	on MEM's address failed, try avoid_constant_pool_reference and
7561	recurse if it returned something different.
7562	(loc_descriptor): If for MEM mem_loc_descriptor failed on the
7563	address, try avoid_constant_pool_reference and recurse if it
7564	returned something different.
7565	(dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
7566	address and avoid_constant_pool_reference returned something
7567	different, don't set have_address.
7568
75692010-01-27  Alexandre Oliva  <aoliva@redhat.com>
7570
7571	PR debug/42861
7572	* var-tracking.c (val_store): Add modified argument, obey it.
7573	Adjust callers.
7574	(count_uses): Move down logging of main.
7575	(compute_bb_dataflow): Use val_store for MO_VAL_USEs that
7576	don't need resolution.
7577	(emit_notes_in_bb): Likewise.
7578
75792010-01-27  Richard Guenther  <rguenther@suse.de>
7580
7581	PR middle-end/42878
7582	* tree-inline.c (remap_decl): Delay remapping of SSA name
7583	default definitions until we need them.
7584
75852010-01-27  Jakub Jelinek  <jakub@redhat.com>
7586
7587	* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
7588	(rs6000_delegitimize_address): New function.
7589
7590	* config/s390/s390.c (s390_delegitimize_address): Call
7591	delegitimize_mem_from_attrs.
7592
7593	PR middle-end/42874
7594	* tree-inline.c (cannot_copy_type_1): Removed.
7595	(copy_forbidden): Don't forbid copying of functions containing
7596	records/unions with variable length fields.
7597
75982010-01-27  Christian Bruel  <christian.bruel@st.com>
7599
7600	Revert:
7601	PR target/42841
7602	* config/sh/sh.c (find_barrier): Increase length for non delayed
7603	conditional branches.
7604
76052010-01-27  Matthias Klose  <doko@ubuntu.com>
7606
7607	* configure.ac (gnu-unique-object): Fix ldd version check.
7608	* configure: Regenerate.
7609
76102010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7611
7612	* config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
7613	HAVE_GNU_AS value.
7614	* config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
7615	Test for HAVE_GNU_AS value.
7616
76172010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7618
7619	* config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
7620	* config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
7621	INT64_TYPE): Define.
7622	(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
7623	(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
7624	INT_LEAST64_TYPE): Define.
7625	(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
7626	UINT_LEAST64_TYPE): Define.
7627	(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
7628	INT_FAST64_TYPE): Define.
7629	(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
7630	UINT_FAST64_TYPE): Define.
7631	(INTMAX_TYPE, UINTMAX_TYPE): Define.
7632	(INTPTR_TYPE, UINTPTR_TYPE): Define.
7633	(SIG_ATOMIC_TYPE): Define.
7634
76352010-01-26  Richard Guenther  <rguenther@suse.de>
7636
7637	* df-scan.c (df_scan_set_bb_info): Remove assert.
7638	(df_insn_rescan_debug_internal): Merge asserts.
7639	(df_install_ref): Likewise.
7640	(df_mark_reg): Use bitmap_set_range.
7641	(df_hard_reg_used_p): Remove assert.
7642	(df_hard_reg_used_count): Likewise.
7643
76442010-01-26  Richard Guenther  <rguenther@suse.de>
7645
7646	PR rtl-optimization/42685
7647	* web.c (web_main): Ignore DEBUG_INSNs.
7648
76492010-01-26  Joern Rennecke  <amylaar@spamcop.net>
7650
7651	* doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
7652
7653	(TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
7654	Fix types of fndecl and arglist parameters.
7655
76562010-01-26  Richard Guenther  <rguenther@suse.de>
7657
7658	PR middle-end/42806
7659	* tree-eh.c (unsplit_eh): Skip debug insns.
7660
76612010-01-26  Richard Guenther  <rguenther@suse.de>
7662
7663	PR tree-optimization/42250
7664	* ipa-type-escape.c (type_escape_execute): Do not analyze clones.
7665
76662010-01-26  Jakub Jelinek  <jakub@redhat.com>
7667
7668	PR fortran/42866
7669	* omp-low.c (expand_omp_sections): Only use single_pred if
7670	l2_bb is single_pred_p.
7671
76722010-01-25  Christian Bruel  <christian.bruel@st.com>
7673
7674	PR target/42841
7675	* config/sh/sh.c (find_barrier): Increase length for non delayed
7676	conditional branches.
7677	(sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
7678
76792010-01-24  David S. Miller  <davem@davemloft.net>
7680
7681	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
7682	define if not using GAS.
7683	* config/sparc/sparc.c (sparc_elf_asm_named_section):
7684	Likewise.  Delete SECTION_MERGE code, which is only applicable
7685	when using GAS.
7686
76872010-01-24  Mark Mitchell  <mark@codesourcery.com>
7688
7689	PR c++/42748
7690	* config/arm/arm.c (arm_mangle_type): Do not warn about changes to
7691	mangling of va_list in system headers.
7692
76932010-01-23  Toon Moene  <toon@moene.org>
7694
7695	* tree-predcom.c (combine_chains): Return NULL, not false.
7696
76972010-01-23  Joern Rennecke  <amylaar@spamcop.net>
7698
7699	* tree-loop-distribution.c (distribute_loop): Fix declaration and
7700	initialization of variable res to agree with return type.
7701
77022010-01-22  Steve Ellcey  <sje@cup.hp.com>
7703
7704	* Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
7705	* tree-sra.c: Add include of expr.h.
7706
77072010-01-22  Jakub Jelinek  <jakub@redhat.com>
7708
7709	* tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
7710	insert the debug stmt on the single non-EH edge from the stmt.
7711
77122010-01-22  Richard Henderson  <rth@redhat.com>
7713
7714	PR tree-opt/42833
7715	* tree-sra.c (sra_modify_assign): Delay re-gimplification of
7716	the RHS until after generate_subtree_copies has insertted its
7717	code before the current statement.
7718
77192010-01-22  Joern Rennecke  <amylaar@spamcop.net>
7720
7721	* doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
7722
7723	* gcc-plugin.h (plugin_init): Use "C" likage for c++.
7724
77252010-01-21  Martin Jambor  <mjambor@suse.cz>
7726
7727	PR tree-optimization/42585
7728	* tree-sra.c (struct access): New field grp_total_scalarization.
7729	(dump_access): Dump the new field.
7730	(should_scalarize_away_bitmap): New variable.
7731	(cannot_scalarize_away_bitmap): Likewise.
7732	(sra_initialize): Allocate new bitmaps.
7733	(sra_deinitialize): Free new bitmaps.
7734	(create_access_1): New function.
7735	(create_access): Parts moved to create_access_1.
7736	(type_consists_of_records_p): New function.
7737	(completely_scalarize_record): Likewise.
7738	(build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
7739	(build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
7740	(sort_and_splice_var_accesses): Hint groups with a total_scalarization
7741	access.
7742	(analyze_all_variable_accesses): Completely scalarize small eligible
7743	records.
7744
77452010-01-21  Martin Jambor  <mjambor@suse.cz>
7746
7747	* tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
7748
77492010-01-21  Andrew Haley  <aph@redhat.com>
7750
7751	* gcc.c (process_command): Move lang_specific_driver before
7752	setting cc_libexec_prefix.
7753
77542010-01-21  Richard Guenther  <rguenther@suse.de>
7755
7756	PR middle-end/19988
7757	* fold-const.c (negate_expr_p): Pretend only negative
7758	real constants are easily negatable.
7759
77602010-01-20  Janis Johnson  <janis187@us.ibm.com>
7761	    Jason Merrill  <jason@redhat.com>
7762
7763	* tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
7764	(TYPE_TRANSPARENT_AGGR): this, for union and record.
7765	* calls.c (initialize argument_information): Handle it.
7766	* c-common.c (handle_transparent_union_attribute): Use new name.
7767	* c-decl.c (finish_struct): Ditto.
7768	* c-typeck.c (type_lists_compatible_p): Ditto.
7769	(convert_for_assignment): Use new name and also handle record.
7770	* function.c (aggregate_value_p): Handle it.
7771	(pass_by_reference): Ditto.
7772	(assign_parm_data_types): Ditto.
7773	* print-tree.c (print_node): Ditto.
7774	* lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
7775	* lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
7776	* tree.c (first_field): New fn.
7777
77782010-01-21  Dave Korn  <dave.korn.cygwin@gmail.com>
7779
7780	PR target/42818
7781	* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
7782	even when linking statically, for now.
7783
77842010-01-20  Alexandre Oliva  <aoliva@redhat.com>
7785
7786	PR debug/42715
7787	* var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
7788	without a cselib val.
7789	(count_uses): Accept MO_VAL_SET with no val on stores.
7790	(add_stores): Likewise.
7791
77922010-01-20  Jakub Jelinek  <jakub@redhat.com>
7793
7794	* var-tracking.c (check_value_val): Add a compile time assertion.
7795	(dv_is_decl_p): Simplify.
7796	(dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
7797	gcc_assert if ENABLE_CHECKING.
7798
77992010-01-20  Alexandre Oliva  <aoliva@redhat.com>
7800
7801	PR debug/42782
7802	* var-tracking.c: Include tree-flow.h.
7803	(mem_dies_at_call): New.
7804	(dataflow_set_preserve_mem_locs): Use it.
7805	(dataflow_set_remove_mem_locs): Likewise.
7806	(dump_var): Renamed from dump_variable.  Adjust all callers.
7807	(dump_var_slot): Renamed from dump_variable_slot.  Likewise.
7808	* Makefile.in (var-tracking.o): Adjust deps.
7809
78102010-01-20  Joern Rennecke  <amylaar@spamcop.net>
7811
7812	* doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
7813
78142010-01-20  Richard Guenther  <rguenther@suse.de>
7815
7816	PR tree-optimization/42717
7817	* tree-ssa-dce.c (get_live_post_dom): Remove.
7818	(forward_edge_to_pdom): Take an arbitrary edge to copy
7819	degenerate PHI args from.
7820	(remove_dead_stmt): Use the first post-dominator even if it
7821	does not contain live statements as redirection destination.
7822
78232010-01-20  Richard Guenther  <rguenther@suse.de>
7824
7825	* tree-inline.c (estimate_num_insns): Handle EH builtins.
7826
78272010-01-20  Jakub Jelinek  <jakub@redhat.com>
7828
7829	* sel-sched.c (create_speculation_check): Remove set but not used
7830	variable twin.
7831	(try_transformation_cache): Remove set but not used variable ds.
7832	(calculate_privileged_insns): Remove set but not used variables
7833	cur_insn and min_spec_insn.
7834	(find_best_expr): Remove set but not used variable avail_n.
7835	* tree-predcom.c (base_names_in_chain_on): Remove set but not used
7836	variable e.
7837	* cgraphunit.c (assemble_thunk): Remove set but not used variable
7838	false_label.
7839	* haifa-sched.c (remove_notes): Remove set but not used variable prev.
7840	* graphite-clast-to-gimple.c (gloog): Remove set but not used variable
7841	new_scop_exit_edge.
7842
78432010-01-20  Felyza Wishbringer  <fwishbringer@gmail.com>
7844
7845	PR bootstrap/42786
7846	* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
7847	cpu types.  Add support for *-sse3 cpu types.
7848	(x86_64-*-*): Ditto.
7849
78502010-01-20  Jakub Jelinek  <jakub@redhat.com>
7851
7852	PR middle-end/42803
7853	* varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
7854	argument, call initializer_constant_valid_p_1 instead of
7855	initializer_constant_valid_p, pass CACHE to it, return NULL
7856	immediately if first call returns NULL.
7857	(initializer_constant_valid_p_1): New function.
7858	(initializer_constant_valid_p): Use it.
7859
78602010-01-20  Thomas Quinot  <quinot@adacore.com>
7861
7862	* tree.def (PLACEHOLDER_EXPR): Fix comment.
7863
78642010-01-20  Jakub Jelinek  <jakub@redhat.com>
7865
7866	* dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
7867	of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
7868	(loc_list_from_tree): Don't handle unsigned division.  Handle
7869	signed modulo using DW_OP_{over,over,div,mul,minus}.
7870	* unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
7871	modulo instead of signed.
7872
78732010-01-20  DJ Delorie  <dj@redhat.com>
7874
7875	* config/h8300/h8300.c (F): Add "in_epilogue" flag.
7876	(Fpa): Pass it
7877	(h8300_emit_stack_adjustment): Propogate it.
7878	(push): Pass it.
7879	(h8300_expand_prologue): Likewise.
7880	(h8300_expand_epilogue): Likewise.
7881
78822010-01-19  Michael Matz  <matz@suse.de>
7883
7884	PR tree-optimization/41783
7885	* tree-data-ref.c (toplevel): Include flags.h.
7886	(dump_data_dependence_relation):  Also dump the inputs if the
7887	result will be unknown.
7888	(split_constant_offset_1): Look through some conversions.
7889	* tree-predcom.c (determine_roots_comp): Restart a new chain if
7890	the offset from last element is too large.
7891	(ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
7892	(reassociate_to_the_same_stmt): Handle vector registers.
7893	* tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
7894	(e.g. conversions).
7895	* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
7896	wide_prolog_niters argument, emit widening instructions.
7897	(vect_do_peeling_for_alignment): Adjust caller, use widened
7898	variant of the iteration cound.
7899	* Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
7900
79012010-01-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
7902
7903	PR target/38697
7904	* config/arm/neon-testgen.m (emit_automatics): New parameter
7905	features. Adjust for Fixed_return_reg feature.
7906	(test_intrinsic): Call emit_automatics with new feature.
7907	* config/arm/neon.ml: Update copyright years.
7908	(features): New Fixed_return_reg feature.
7909	(ops): Update feature for Vget_low.
7910
79112010-01-19  Jakub Jelinek  <jakub@redhat.com>
7912
7913	PR tree-optimization/42719
7914	* tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
7915	stmt uses.
7916
7917	PR debug/42728
7918	* fwprop.c (all_uses_available_at): Return false if def_set dest
7919	is a REG that is used in def_insn.
7920
79212010-01-19  Joern Rennecke  <amylaar@spamcop.net>
7922
7923	* doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
7924
7925	(TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
7926	Add argument names.
7927
7928	(TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
7929
7930	* target.h (struct gcc_target) <secondary_reload>: Change type
7931	of last argument to secondary_reload_info *.
7932
79332010-01-18  Uros Bizjak  <ubizjak@gmail.com>
7934
7935	PR target/42774
7936	* config/alpha/predicates.md (aligned_memory_operand): Return 0 for
7937	memory references with unaligned offsets.  Remove CQImode handling.
7938	(unaligned_memory_operand): Return 1 for memory references with
7939	unaligned offsets.  Remove CQImode handling.
7940
79412010-01-18  Richard Guenther  <rguenther@suse.de>
7942
7943	PR middle-end/39954
7944	* cfgexpand.c (expand_call_stmt): TER pointer arguments in
7945	builtin calls.
7946
79472010-01-18  Richard Guenther  <rguenther@suse.de>
7948
7949	PR tree-optimization/42781
7950	* tree-ssa-structalias.c (find_what_var_points_to): Skip
7951	restrict processing only if the original variable was artificial.
7952
79532010-01-18  Joern Rennecke  <amylaar@spamcop.net>
7954
7955	* doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
7956	find number of popped argument bytes.
7957
7958	(TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
7959	Fix the text that describes the return value for invalid insns.
7960
7961	(TARGET_SCHED_NEEDS_BLOCK_P): Fix return type.  Fix argument list.
7962
7963	(TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
7964	Clarify what 'cost of the -dependence' is.  Fix quoting.
7965
7966	* toplev.c (default_get_pch_validity): Rename argument to "sz".
7967	* doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
7968
79692010-01-17  Jakub Jelinek  <jakub@redhat.com>
7970
7971	* dwarf2out.c (mem_loc_descriptor): Don't ICE on
7972	{S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
7973
79742010-01-17  Richard Guenther  <rguenther@suse.de>
7975
7976	PR middle-end/42248
7977	* function.c (split_complex_args): Take a VEC to modify.
7978	(assign_parms_augmented_arg_list): Build a VEC instead of
7979	a chain of PARM_DECLs.
7980	(assign_parms_unsplit_complex): Take a VEC of arguments.
7981	Do not fixup unmodified parms.
7982	(assign_parms): Deal with the VEC.
7983	(gimplify_parameters): Likewise.
7984
79852010-01-17  Richard Guenther  <rguenther@suse.de>
7986
7987	* tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
7988	node existence check.
7989	* tree-vect-loop.c (vect_analyze_loop_form): Likewise.
7990	* tree-cfgcleanup.c (merge_phi_nodes): Likewise.
7991	* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
7992	* tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
7993	(gimple_execute_on_growing_pred): Likewise.
7994
79952010-01-17  Richard Guenther  <rguenther@suse.de>
7996
7997	PR tree-optimization/42773
7998	* tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
7999	(compute_antic_aux): Likewise.
8000	(compute_partial_antic_aux): Likewise.
8001
80022010-01-17  Jie Zhang  <jie.zhang@analog.com>
8003
8004	PR debug/42767
8005	* dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
8006	and US_TRUNCATE.
8007
80082010-01-17  Joern Rennecke  <amylaar@spamcop.net>
8009
8010	* doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
8011	appearance.
8012
8013	(TARGET_LEGITIMATE_ADDRESS_P): Add return type.
8014	Fix markup for strict argument.
8015
8016	(TARGET_SCHED_REORDER2): Fix argument types.
8017
8018	(TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
8019	(TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
8020
8021	(TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
8022	(TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
8023
8024	(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
8025	Add argument name.
8026
8027	(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
8028	(TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
8029	(TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
8030	(TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
8031	(TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
8032
8033	(TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
8034
8035	(TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
8036
8037	(TARGET_ASM_RELOC_RW_MASK): Add return type.
8038	(TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
8039
8040	(TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
8041
8042	(TARGET_ASM_FILE_START): Put @findex before paragraph start.
8043	Use prototype.
8044
8045	(TARGET_ASM_NAMED_SECTION): Fix argument list.
8046
8047	(TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
8048	(TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
8049
8050	(TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
8051
8052	(TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
8053
8054	(TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
8055	referring to it.  Fix language.
8056
8057	(TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
8058
8059	(TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
8060
8061	(TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
8062
8063	(TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
8064
8065	(TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
8066	'@var{stream}.  Remove stray 'and'.
8067
8068	(TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
8069
8070	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
8071
8072	(TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
8073
8074	(TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
8075	misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
8076
8077	(TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
8078	Fix description of return value.
8079	Rename argument "sz" to "len."
8080
8081	(TARGET_CXX_GUARD_MASK_BIT): Add missing article.
8082	Clarify meaning of 'true' return value.
8083
8084	(TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
8085
8086	(TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
8087	rep_mode versus mode_rep.
8088
8089	(TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
8090
8091	(TARGET_BUILTIN_DECL): Fix name.
8092
8093	(TARGET_COMMUTATIVE_P): Fix type of first argument.
8094
8095	(TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
8096
8097	(TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
8098
8099	(TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
8100
8101	(TARGET_RELAXED_ORDERING): Use @deftypevr.
8102
8103	(TARGET_GET_DRAP_RTX): Note that this is a hook.
8104	Clarify language.
8105
8106	(TARGET_BUILTIN_RECIPROCAL): Fix argument types.
8107	Rename argument tm_fn to md_fn.
8108
8109	(TARGET_OPTION_PRINT): Fix argument list.
8110
81112010-01-16  Harsha Jagasia  <harsha.jagasia@amd.com>
8112
8113	PR target/42664
8114	* config/i386/i386.c (ix86_fixup_binary_operands):
8115	Revert FMA4 fixup of operands.
8116
81172010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8118
8119	PR gcc/42525
8120	* Makefile.in (write_entries_to_file, install-plugin):
8121	Use \012 instead of \n with tr.
8122
81232010-01-16  Richard Sandiford  <r.sandiford@uk.ibm.com>
8124
8125	* configure.ac (HAVE_AS_REF): New C macro.
8126	* configure: Regenerate.
8127	* config.in: Likewise.
8128	* collect2.c (main): Only postpone SCAN_DWEH to the second pass
8129	if HAVE_AS_REF.
8130	* config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
8131	if HAVE_AS_REF.
8132
81332010-01-16  Joern Rennecke  <amylaar@spamcop.net>
8134
8135	* doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
8136
8137	(TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
8138
8139	(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
8140
8141	(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
8142
8143	(TARGET_IN_SMALL_DATA_P): Fix argument type.
8144
8145	(TARGET_BINDS_LOCAL_P): Fix argument type.
8146
8147	(TARGET_ASM_FILE_END): Use prototype.
8148
8149	(TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
8150
8151	(TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
8152
8153	(TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
8154
8155	(TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
8156
8157	(TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
8158	(TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
8159
8160	(TARGET_PCH_VALID_P): Put 'const char *' in braces.
8161	(TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
8162
8163	(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
8164	(TARGET_ADDR_SPACE_SUBSET_P): Likewise.
8165	(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
8166	(TARGET_ADDR_SPACE_CONVERT): Likewise.
8167
8168	(TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
8169
8170	(TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
8171
8172	(TARGET_INIT_BUILTINS): Use prototype.
8173
8174	(TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
8175	Put 'const char *' in braces.  Fix parameter types.
8176	(TARGET_INVALID_CONVERSION): Fix parameter types.
8177	(TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
8178	(TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
8179
8180	(TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
8181	Fix argument type.
8182
8183	(TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
8184
8185	(TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
8186
81872010-01-15  Joern Rennecke  <amylaar@spamcop.net>
8188
8189	* doc/tm.texi (TARGET_HELP): Fix return type.
8190
8191	(TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
8192	in braces.  Fix argument types.
8193
8194	(TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
8195
8196	(TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
8197
8198	(TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
8199
8200	(TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
8201	(TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
8202
8203	(TARGET_MANGLE_TYPE): Fix argument types.
8204
8205	(TARGET_IRA_COVER_CLASSES): Use prototype.
8206
8207	(TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type.  Use prototype.
8208
8209	(TARGET_CAN_ELIMINATE): Use identifiers for argument names.
8210
8211	(TARGET_PROMOTE_PROTOTYPES): Fix argument type.
8212
8213	(TARGET_MUST_PASS_IN_STACK): Fix argument type.
8214
8215	(TARGET_CALLEE_COPIES): Fix argument types.
8216
8217	(TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
8218
8219	(TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
8220
8221	(TARGET_FUNCTION_VALUE): Fix argument types.
8222
8223	(TARGET_RETURN_IN_MSB): Fix argument type.
8224
8225	(TARGET_RETURN_IN_MEMORY): Fix argument types.
8226
8227	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
8228
8229	(TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
8230
8231	(TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
8232	agree with return type.
8233
8234	(TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
8235
82362010-01-15  Jing Yu  <jingyu@google.com>
8237
8238	PR rtl-optimization/42691
8239	* combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
8240	a pseudo to a constant and are merged, and adjust comments.
8241
82422010-01-15  Eric Botcazou  <ebotcazou@adacore.com>
8243
8244	* config/i386/sse.md (avx_vperm2f128<mode>3): Fix typo.
8245
82462010-01-15  Richard Guenther  <rguenther@suse.de>
8247
8248	PR middle-end/42739
8249	* tree-cfgcleanup.c (remove_forwarder_block): Move destination
8250	labels of computed or non-local gotos to the destination.
8251	* tree-cfg.c (gimple_verify_flow_info): Verify that a EH
8252	landing pad label is the first label.
8253
82542010-01-15  Richard Guenther  <rguenther@suse.de>
8255
8256	* tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
8257
82582010-01-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
8259
8260	PR target/42747
8261	* config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
8262	to allow generation of the xssqrtdp instruction on power7.
8263	(sqrtdf2_fpr): Ditto.
8264
82652010-01-14  Jakub Jelinek  <jakub@redhat.com>
8266
8267	PR middle-end/42674
8268	* c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
8269	functions with noreturn attribute.
8270
8271	PR c++/42608
8272	* varasm.c (declare_weak): Add weak attribute to decl if it
8273	doesn't have one already.
8274	(assemble_external): Only add decls to weak_decls if they also
8275	have weak attribute.
8276
82772010-01-14  Alexandre Oliva  <aoliva@redhat.com>
8278
8279	* var-tracking.c (var_reg_delete): Don't delete the association
8280	between REGs and values or one-part variables if the register
8281	isn't clobbered.
8282
82832010-01-14  Jakub Jelinek  <jakub@redhat.com>
8284
8285	PR debug/42657
8286	* tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
8287	because its first operand is a non-localized variable.
8288
82892010-01-14  Martin Jambor  <mjambor@suse.cz>
8290
8291	PR tree-optimization/42706
8292	* tree-sra.c (encountered_recursive_call): New variable.
8293	(encountered_unchangable_recursive_call): Likewise.
8294	(sra_initialize): Initialize both new variables.
8295	(callsite_has_enough_arguments_p): New function.
8296	(scan_function): Call decl and flags check only for IPA-SRA, check
8297	whether there is a recursive call and whether it has enough arguments.
8298	(all_callers_have_enough_arguments_p): New function.
8299	(convert_callers): Look for recursive calls only when
8300	encountered_recursive_call is set.
8301	(ipa_early_sra): Bail out either if
8302	!all_callers_have_enough_arguments_p or
8303	encountered_unchangable_recursive_call.
8304
83052010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8306
8307	* sel-sched.c: Add 2010 to copyright years.
8308	* sel-sched-ir.c: Likewise.
8309	* sel-sched-ir.h: Likewise.
8310
83112010-01-14  Martin Jambor  <mjambor@suse.cz>
8312
8313	PR tree-optimization/42714
8314	* tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
8315	constructors specially.
8316
83172010-01-14  Andi Kleen  <ak@linux.intel.com>
8318
8319	* config/i386/drivers-i386.c (detect_caches_intel):
8320	Add l2sizekb parameter and fill in.
8321	(host_detect_local_cpu): Add l2sizekb, fill in.
8322	Add Atom small cache heuristic.
8323
83242010-01-14  Andi Kleen  <ak@linux.intel.com>
8325
8326	* config/i386/drivers-i386.c (detect_caches_cpuid4):
8327	Add level3 parameter and fill in.
8328	(detect_caches_intel): Handle level3 cache.
8329
83302010-01-14  Andi Kleen  <ak@linux.intel.com>
8331
8332	* config/i386/drivers-i386.c (host_detect_local_cpu):
8333	Fix core duo detection.
8334
83352010-01-14  Andi Kleen  <ak@linux.intel.com>
8336
8337	* config/i386/drivers-i386.c (host_detect_local_cpu):
8338	Fix Atom detection.
8339
83402010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8341
8342	* config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
8343	(rs6000_variable_issue_1): this.  Use...
8344	(rs6000_variable_issue): here.  Reimplement.  Print debug info.
8345
83462010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8347
8348	* sel-sched-ir.c (sel_restore_other_notes): Rename to
8349	sel_restore_notes.  Update all callers.  Call reemit_notes
8350	for all insns.
8351
83522010-01-14  Andrey Belevantsev  <abel@ispras.ru>
8353
8354	PR rtl-optimization/42246
8355	* sel-sched-ir.h (get_all_loop_exits): Include exits from inner
8356	loops.
8357
83582010-01-14  Andrey Belevantsev  <abel@ispras.ru>
8359
8360	* sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
8361	all successors is the same as number of successors in current region.
8362
83632010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8364
8365	* sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
8366	to rename is not separable.  Otherwise check that its LHS is not NULL.
8367
83682010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8369
8370	* sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.
8371
83722010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8373
8374	* sel-sched.c (mark_unavailable_hard_regs): Do not try to search
8375	available registers when failed to discover LHS register class.
8376	Fix indentation.  Update comment.
8377
83782010-01-14  Andrey Belevantsev  <abel@ispras.ru>
8379	    Alexander Monakov  <amonakov@ispras.ru>
8380
8381	PR rtl-optimization/42389
8382	* sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
8383	to can_issue_more.
8384	(advance_state_on_fence): Likewise.
8385	(sel_target_adjust_priority): Print debug output only when
8386	sched_verbose >= 4, not 2.
8387	(get_expr_cost): Do not issue all unique insns on the next cycle.
8388	(fill_insns): Initialize can_issue_more from the value saved
8389	with the fence.
8390	* sel-sched-ir.c (flist_add): New parameter issue_more.
8391	Init FENCE_ISSUE_MORE with it.
8392	(merge_fences): Likewise.
8393	(init_fences): Update call to flist_add.
8394	(add_to_fences, add_clean_fence_to_fences)
8395	(add_dirty_fence_to_fences): Likewise.
8396	(move_fence_to_fences): Update call to merge_fences.
8397	(invoke_reorder_hooks): Do not reset can_issue_more on insns from
8398	sched groups.
8399	* sel-sched-ir.h (struct _fence): New field issue_more.
8400	(FENCE_ISSUE_MORE): New accessor macro.
8401
84022010-01-14  Andrey Belevantsev  <abel@ispras.ru>
8403
8404	PR rtl-optimization/42388
8405	* sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
8406	that have no predecessors nor successors.  Do not call move_bb_info
8407	for empty blocks outside of current region.
8408
84092010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8410
8411	PR rtl-optimization/42294
8412	* sel-sched-ir.h (struct _sel_insn_data): Update comment.
8413	* sel-sched.c (move_exprs_to_boundary): Transitively add all
8414	originators' originators.
8415
84162010-01-14  Alexander Monakov  <amonakov@ispras.ru>
8417
8418	PR rtl-optimization/39453
8419	PR rtl-optimization/42246
8420	* sel-sched-ir.c (considered_for_pipelining_p): Do not test
8421	for pipelining_p.
8422	(sel_add_loop_preheaders): Add preheader to last_added_blocks.
8423
84242010-01-14  Andrey Belevantsev  <abel@ispras.ru>
8425	    Alexander Monakov  <amonakov@ispras.ru>
8426
8427	PR middle-end/42245
8428	* sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
8429	(maybe_tidy_empty_bb): ... here.  Make static.  Add new
8430	argument.  Update all callers.
8431	(tidy_control_flow): ... and here.  Recompute topological order
8432	of basic blocks in region if necessary.
8433	(sel_redirect_edge_and_branch): Change return type.  Return true
8434	if topological order might have been invalidated.
8435	(purge_empty_blocks): Export and move from...
8436	* sel-sched.c (purge_empty_blocks): ... here.
8437	* sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
8438	(maybe_tidy_empty_bb): Delete prototype.
8439	(purge_empty_blocks): Declare.
8440
84412010-01-14  Andrey Belevantsev  <abel@ispras.ru>
8442
8443	PR rtl-optimization/42249
8444	* sel-sched.c (try_replace_dest_reg): When chosen register
8445	and original register is the same, do not bail out early, but
8446	still check all original insns for validity of replacing destination
8447	register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
8448	in this case.
8449
84502010-01-14  Jakub Jelinek  <jakub@redhat.com>
8451
8452	PR c/42721
8453	Port from no-undefined-overflow branch:
8454	2009-03-09  Richard Guenther  <rguenther@suse.de>
8455
8456	* fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
8457
84582010-01-14  Richard Guenther  <rguenther@suse.de>
8459
8460	PR lto/42665
8461	* gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
8462
84632010-01-14  Ira Rosen  <irar@il.ibm.com>
8464
8465	PR tree-optimization/42709
8466	* tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
8467	as scalar type in creation of constant vector operand.
8468
84692010-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8470
8471	PR testsuite/42414
8472	* Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
8473	(check-parallel-%): Match `testsuite' directory component only
8474	at the end.
8475
84762010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>
8477
8478	PR translation/39521
8479	* gcc.c (do_spec_1): Wrapped the error and notice messages of specs
8480	strings with _().
8481
84822010-01-13  Richard Guenther  <rguenther@suse.de>
8483
8484	PR tree-optimization/42730
8485	* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
8486	offset zero.
8487
84882010-01-13  Steve Ellcey  <sje@cup.hp.com>
8489
8490	PR target/pr42542
8491	* config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
8492	for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
8493	them signed.
8494
84952010-01-13  Bernd Schmidt  <bernd.schmidt@analog.com>
8496
8497	* config/bfin/libgcc-bfin.ver: Regenerate based on current
8498	libgcc-std.ver.  Add entries for ___smulsi3_highpart and
8499	___umulsi3_highpart.
8500
8501	* config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
8502	rather than schedule_insns if the pass is enabled.
8503
85042010-01-13  Martin Jambor  <mjambor@suse.cz>
8505
8506	PR tree-optimization/42704
8507	* tree-sra.c (sra_modify_assign): Do not delete assignments to
8508	SSA_NAMEs.
8509
85102010-01-13  Martin Jambor  <mjambor@suse.cz>
8511
8512	PR tree-optimization/42703
8513	* tree-sra.c (analyze_access_subtree): Check that we can build a
8514	reference to the original data within the aggregate.
8515
85162010-01-13  Richard Guenther  <rguenther@suse.de>
8517
8518	PR tree-optimization/42705
8519	* tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
8520
85212010-01-13  Richard Guenther  <rguenther@suse.de>
8522
8523	PR middle-end/42716
8524	* fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
8525
85262010-01-13  Jakub Jelinek  <jakub@redhat.com>
8527
8528	PR debug/41371
8529	* var-tracking.c (values_to_unmark): New variable.
8530	(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
8531	values_to_unmark vector.  Moved body to...
8532	(find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
8533	instead queue it into values_to_unmark vector.
8534	(vt_find_locations): Free values_to_unmark vector.
8535
85362010-01-13  Wolfgang Gellerich  <gellerich@de.ibm.com>
8537
8538	* config/s390/s390.c (override_options): Set
8539	default of max-pending-list-length to 256
8540
85412010-01-13  Richard Guenther  <rguenther@suse.de>
8542
8543	PR lto/42678
8544	* tree-pass.h (PROP_gimple_lcx): New.
8545	* cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
8546	* passes.c (init_optimization_passes): Move pass_lower_complex_O0
8547	before the final cleanup_eh.
8548	(dump_properties): Dump PROP_gimple_lcx.
8549	* tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
8550	(tree_lower_complex_O0): Remove.
8551	(gate_no_optimization): Run if PROP_gimple_lcx is not set.
8552	(pass_lower_complex_O0): Provide PROP_gimple_lcx.  Run
8553	tree_lower_complex, schedule TODO_update_ssa.
8554	* lto-streamer-out.c (output_function): Stream the functions
8555	properties.
8556	* lto-streamer-in.c (input_function): Likewise.
8557	(lto_read_body): Do not override them here.
8558
85592010-01-12  Joseph Myers  <joseph@codesourcery.com>
8560
8561	PR c/42708
8562	* c-typeck.c (build_c_cast): Fold value cast to union type before
8563	wrapping it in a CONSTRUCTOR.
8564
85652010-01-12  Jakub Jelinek  <jakub@redhat.com>
8566
8567	PR rtl-optimization/42699
8568	* cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
8569	involved.
8570
85712010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8572
8573	* config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
8574	SUBTARGET_WARN_UNUSED_SPEC): Move ...
8575	config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
8576	SUBTARGET_WARN_UNUSED_SPEC): ... here
8577	* config/mips/iris5.h (LIBGCC_SPEC): Define.
8578
85792010-01-12  Julian Brown  <julian@codesourcery.com>
8580
8581	* config/arm/neon-schedgen.ml (Utils): Don't try to
8582	open missing module.
8583	(find_with_result): New.
8584
85852010-01-12  Jakub Jelinek  <jakub@redhat.com>
8586
8587	PR debug/42662
8588	* simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
8589	sharing when canonicalizing ({lt,ge}u (plus a b) b).
8590
8591	PR tree-optimization/42645
8592	* tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
8593	(remap_ssa_name): If processing_debug_stmt and name wasn't found in
8594	decl_map, set processing_debug_stmt to -1 and return name without
8595	any remapping.
8596
85972010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
8598
8599	* doc/install.texi (Specific#x-x-cygwin): Document minimum required
8600	binutils version, and reword target configuration description.
8601
86022010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
8603
8604	* config/avr/avr.h (LINKER_NAME): Remove.
8605
86062010-01-11  Janis Johnson  <janis187@us.ibm.com>
8607
8608	PR target/42416
8609	* config/rs6000/rs6000.c (rs6000_override_options): On targets
8610	that support VSX, warn for -mno-altivec if vsx is not disabled,
8611	and disable vsx.
8612
86132010-01-11  Joseph Myers  <joseph@codesourcery.com>
8614	    Shujing Zhao  <pearly.zhao@oracle.com>
8615
8616	PR translation/42469
8617	* common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
8618	fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
8619	character between option name and help text.
8620	* c.opt (imultilib): Likewise.
8621
86222010-01-10  Rafael Avila de Espindola  <espindola@google.com>
8623
8624	* lto-streamer-out.c (output_unreferenced_globals): Output static
8625	variables.
8626
86272010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
8628
8629	PR rtl-optimization/42621
8630	* bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
8631	optimizing for size.
8632	(duplicate_computed_gotos): Remove now-redundant check.
8633
86342010-01-10  Steve Ellcey  <sje@cup.hp.com>
8635
8636	PR target/37454
8637	* configure.ac: Save and restore LDFLAGS and LIBS
8638	* configure: Regenerate.
8639
86402010-01-10  Richard Guenther  <rguenther@suse.de>
8641
8642	PR middle-end/42667
8643	* builtins.c (fold_builtin_strlen): Add type argument and
8644	convert the resulting length to it.
8645	(fold_builtin_1): Adjust.
8646
86472010-01-09  Jakub Jelinek  <jakub@redhat.com>
8648
8649	* config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
8650	sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
8651	1 insn.
8652	(num_insns_constant_wide): Adjust for that change.
8653
86542010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8655
8656	PR debug/42631
8657	* web.c (union_defs): Add used argument, to combine uses of
8658	uninitialized regs.
8659	(entry_register): Adjust type and tests of used argument.
8660	(web_main): Widen used for new use.  Pass it to union_defs.
8661	* df.h (union_defs): Adjust prototype.
8662
86632010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8664
8665	PR debug/42630
8666	* loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
8667	uses in new incoming argument.  Free body.
8668	(reset_debug_uses_in_loop): New.
8669	(analyze_insn_to_expand_var): Call the latter if the former found
8670	anything.  Fix whitespace.  Reject invalid dest overlaps before
8671	going through all insns in the loop.
8672
86732010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8674
8675	PR debug/42629
8676	* haifa-sched.c (dying_use_p): Debug insns don't count.
8677
86782010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8679
8680	PR middle-end/42363
8681	* gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
8682	* tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
8683	(verify_gimple_call): Reject LHS in noreturn calls.
8684
86852010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8686
8687	PR debug/42604
8688	PR debug/42395
8689	* tree-vect-loop-manip.c (adjust_info): New type.
8690	(adjust_vec): New pointer to vector.
8691	(adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
8692	(adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
8693	(slpeel_update_phis_for_duplicate_loop): Use them.
8694	(slpeel_update_phi_nodes_for_guard1): Likewise.
8695	(slpeel_update_phi_nodes_for_guard2): Likewise.
8696	(slpeel_tree_peel_loop_to_edge): Likewise.
8697	(vect_update_ivs_after_vectorizer): Likewise.
8698
86992010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8700
8701	* vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
8702	(DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
8703
87042010-01-09  Alexandre Oliva  <aoliva@redhat.com>
8705
8706	* config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
8707	bogus uninitialized warning.
8708
87092010-01-09  Richard Guenther  <rguenther@suse.de>
8710
8711	PR middle-end/42512
8712	* tree-scalar-evolution.c (interpret_loop_phi): Make sure
8713	the evolution is compatible with the initial condition.
8714
87152010-01-09  Jakub Jelinek  <jakub@redhat.com>
8716
8717	* gcc.c (process_command): Update copyright notice dates.
8718	* gcov.c (print_version): Likewise.
8719	* gcov-dump.c (print_version): Likewise.
8720	* mips-tfile.c (main): Likewise.
8721	* mips-tdump.c (main): Likewise.
8722
87232010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
8724
8725	PR target/41885
8726	* config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
8727	(rotlhi3): Delete.
8728	(rotlhi3_8): Delete.
8729	(rotlsi3): Delete.
8730	(rotlsi3_8): Delete.
8731	(rotlsi3_16): Delete.
8732	(rotlsi3_24): Delete.
8733	(rotl<mode>3): New.
8734	(*rotw<mode>3): New.
8735	(*rotb<mode>3): New.
8736	* config/avr/avr.c (avr_rotate_bytes): New function.
8737	* config/avr/avr-proto.h (avr_rotate_bytes): New function.
8738
87392010-01-08  Steve Ellcey  <sje@cup.hp.com>
8740
8741	PR target/37454
8742	* configure.ac: Modify -rdynamic check.
8743	* configure: Regenerate.
8744
87452010-01-08  DJ Delorie  <dj@redhat.com>
8746
8747	* config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
8748	register popping order.
8749
87502010-01-08  Richard Guenther  <rguenther@suse.de>
8751
8752	PR lto/42528
8753	* c.opt (fsigned-char): Also let LTO handle this option.
8754	(funsigned-char): Likewise.
8755
87562010-01-07  Richard Guenther  <rguenther@suse.de>
8757
8758	* gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
8759	(gimple_op): Likewise.
8760	(gimple_op_ptr): Likewise.
8761	(gimple_assign_set_lhs): Remove gcc_assert.
8762	(gimple_assign_set_rhs1): Likewise.
8763	(gimple_assign_set_rhs2): Likewise.
8764	(gimple_call_set_lhs): Likewise.
8765	(gimple_call_set_fn): Likewise.
8766	(gimple_call_set_fndecl): Likewise.
8767	(gimple_call_fndecl): Likewise.
8768	(gimple_call_return_type): Likewise.
8769	(gimple_call_set_chain): Likewise.
8770	(gimple_call_num_args): Likewise.
8771	(gimple_call_set_arg): Likewise.
8772	(gimple_cond_set_code): Likewise.
8773	(gimple_cond_set_lhs): Likewise.
8774	(gimple_cond_set_rhs): Likewise.
8775	(gimple_cond_set_true_label): Likewise.
8776	(gimple_cond_set_false_label): Likewise.
8777	(gimple_label_set_label): Likewise.
8778	(gimple_goto_set_dest): Likewise.
8779	(gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
8780	(gimple_debug_bind_get_value): Likewise.
8781	(gimple_debug_bind_get_value_ptr): Likewise.
8782	(gimple_debug_bind_set_var): Likewise.
8783	(gimple_debug_bind_set_value): Likewise.
8784	(gimple_debug_bind_reset_value): Likewise.
8785	(gimple_debug_bind_has_value_p): Likewise.
8786	(gimple_return_retval_ptr): Remove gcc_assert.
8787	(gimple_return_retval): Likewise.
8788	(gimple_return_set_retval): Likewise.
8789	* tree-flow.h (struct gimple_df): Remove nonlocal_all member.
8790	(safe_referenced_var_iterator): Remove.
8791	(FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
8792	* tree-flow-inline.h (gimple_nonlocal_all): Remove.
8793	(fill_referenced_var_vec): Remove.
8794	(first_readonly_imm_use): Remove redundant gcc_assert.
8795	(phi_arg_index_from_use): Combine gcc_asserts.
8796	(move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
8797	(first_imm_use_stmt): Remove redundant gcc_assert.
8798	* tree-cfg.c (verify_gimple_call): Verify function and chain
8799	operands.  Verify arguments.
8800	(verify_types_in_gimple_stmt): Verify condition code and labels.
8801
88022010-01-07  Richard Guenther  <rguenther@suse.de>
8803
8804	PR tree-optimization/42641
8805	* sese.c (rename_map_elt_info): Use the SSA name version, do
8806	not hash pointers.
8807
88082010-01-07  Jakub Jelinek  <jakub@redhat.com>
8809
8810	PR tree-optimization/42625
8811	* cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
8812	TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
8813
88142010-01-07  Duncan Sands  <baldrick@free.fr>
8815
8816	* Makefile.in (PLUGIN_HEADERS): Add version.h.
8817
88182010-01-07  Uros Bizjak  <ubizjak@gmail.com>
8819
8820	PR target/42511
8821	* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
8822	note itself is not function_invariant_p.
8823
88242009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
8825
8826	* gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
8827	Do not add the DF_NOTE problem.
8828	* store-motion.c (execute_rtl_store_motion): Likewise.
8829
88302010-01-07  Martin Jambor  <mjambor@suse.cz>
8831
8832	PR tree-optimization/42157
8833	* tree-sra.c (compare_access_positions): Stabilize sort if both
8834	accesses have integer types, return zero immediately if they are the
8835	same.
8836
88372010-01-06  Richard Henderson  <rth@redhat.com>
8838
8839	PR middle-end/41883
8840	* haifa-sched.c (add_to_note_list): Merge into ...
8841	(concat_note_lists): ... here, and ...
8842	(unlink_other_notes, rm_other_notes): Merge into...
8843	(remove_notes): ... here.  Create REG_SAVE_NOTEs for
8844	NOTE_INSN_EPILOGUE_BEG.
8845
88462010-01-06  Richard Guenther  <rguenther@suse.de>
8847
8848	* ipa-inline.c (cgraph_decide_inlining_incrementally): Do
8849	not inline regular functions into always-inline functions.
8850
88512010-01-06  Nick Clifton  <nickc@redhat.com>
8852
8853	* config/rx/rx.h (enum rx_cpu_type): Add RX200.
8854	(CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
8855	used together.
8856	(OVERRIDE_OPTIONS): Delete.
8857	(OPTIMIZATION_OPTIONS): Define.
8858	(ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
8859	* config/rx/rx.c (rx_handle_option): Issue an error message if
8860	-mcpu=rx200 and -fpu are used together.
8861	(rx_set_optimization_options): New function.  Issue an error
8862	message if an optimization attribute attempts to reset the FPU/
8863	math optimization pairing.
8864	* config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
8865	* config/rx/rx.opt: Set the default to 32-bit doubles.
8866	* config/rx/t-rx: Add multilibs for -nofpu option.
8867	* doc/invoke.texi: Update documentation of RX options.
8868
88692010-01-06  Richard Guenther  <rguenther@suse.de>
8870
8871	* tree-ssa-pre.c (name_to_id): New global.
8872	(alloc_expression_id): Simplify SSA name handling.
8873	(lookup_expression_id): Likewise.
8874	(init_pre): Zero name_to_id.
8875	(fini_pre): Free it.
8876
88772010-01-06  Uros Bizjak  <ubizjak@gmail.com>
8878
8879	* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
8880
88812010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
8882
8883	PR target/42542
8884	* config/i386/sse.md (smaxv2di3): New.
8885	(umaxv2di3): Likewise.
8886	(sminv2di3): Likewise.
8887	(uminv2di3): Likewise.
8888
88892010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
8890
8891	PR target/42564
8892	* config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
8893	* config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
8894	(legitimize_tls_address): Likewise.
8895	(sparc_tls_referenced_p): Likewise.
8896	* config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
8897	and adjust calls to legitimize_pic_address.
8898	(legitimate_constant_p) Use sparc_tls_referenced_p.
8899	(legitimate_pic_operand_p): Likewise.
8900	(sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
8901	(sparc_tls_symbol_ref_1): Delete.
8902	(sparc_tls_referenced_p): Make static, recognize specific patterns.
8903	(legitimize_tls_address): Make static, handle CONST patterns.
8904	(legitimize_pic_address): Make static, remove unused parameter and
8905	adjust recursive calls.
8906	(sparc_legitimize_address): Make static, use sparc_tls_referenced_p
8907	and adjust call to legitimize_pic_address.
8908	(sparc_output_mi_thunk): Likewise.
8909
89102010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
8911	    H.J. Lu  <hongjiu.lu@intel.com>
8912
8913	PR target/42542
8914	* config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
8915	for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
8916	operands to make them signed.
8917
8918	Revert:
8919	2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
8920
8921	PR target/42542
8922	* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
8923	GTU to GT for V4SI and V2DI.
8924
8925	* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
8926	(umin<mode>3): Removed.
8927	(uminv8hi3): New.
8928	(uminv4si3): Likewise.
8929
89302010-01-05  Martin Jambor  <mjambor@suse.cz>
8931
8932	PR tree-optimization/42462
8933	* ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
8934	current_function_decl to helper functions and macros.
8935
89362010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8937
8938	PR bootstrap/41771
8939	* flags.h: Don't include real.h.
8940	(HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
8941	HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
8942	* real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
8943	HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
8944	* dominance.c: Update copyright.
8945	* gimple.c (walk_gimple_op): Remove inline.
8946	* tree-ssa-reassoc.c: Include real.h.
8947	* Makefile.in (FLAGS_H): Remove $(REAL_H).
8948	(tree-ssa-reassoc.o): Depend on $(REAL_H).
8949
89502010-01-05  Nick Clifton  <nickc@redhat.com>
8951
8952	* config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
8953	register to push into the stack frame when the accumulator has to
8954	be saved during interrupts.
8955
89562010-01-05  Eric Fisher  <joefoxreal@gmail.com>
8957
8958	* doc/invoke.texi: Remove the documentation about option
8959	-Wunreachable-code.
8960	* common.opt (Wunreachable-code):  Preserved for backward
8961	compatibility.
8962	* tree-cfg.c: Remove the implementation of -Wunreachable-code.
8963	* opts.c (common_handle_option): Add OPT_Wunreachable_code to
8964	the backward compatibility flag section.
8965
89662010-01-05  Richard Guenther  <rguenther@suse.de>
8967
8968	* tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
8969
89702010-01-05  Jakub Jelinek  <jakub@redhat.com>
8971
8972	PR other/42611
8973	* cfgexpand.c (expand_one_var): Diagnose too large variables.
8974
8975	PR tree-optimization/42508
8976	* tree-sra.c (convert_callers): Check for recursive call
8977	by comparing cgraph nodes instead of decls.
8978	(modify_function): Call ipa_modify_formal_parameters also
8979	on all same_body aliases.
8980
8981	* cgraphunit.c (cgraph_materialize_all_clones): Compare
8982	cgraph nodes when checking for same_body aliases.
8983
89842010-01-05  Richard Guenther  <rguenther@suse.de>
8985
8986	* tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
8987	allocation and lookup.
8988	(get_or_alloc_expr_for_constant): Likewise.
8989	(phi_translate): Sink allocation.
8990
89912010-01-04  Richard Guenther  <rguenther@suse.de>
8992
8993	* tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
8994	a new entry only if needed.
8995	* tree-ssa-dom.c (lookup_avail_expr): Likewise.
8996	* tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
8997	hashtable lookup.
8998	* tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
8999	the result array.
9000	(phi_translate): Handle CONSTANTs early.
9001
90022010-01-04  Martin Jambor  <mjambor@suse.cz>
9003
9004	PR tree-optimization/42398
9005	* tree-sra.c (struct access): Removed flag grp_different_types.
9006	(dump_access): Do not dump the removed flag.
9007	(sort_and_splice_var_accesses): Do not set the removed flag.
9008	(sra_modify_expr): Check for type compatibility directly.
9009
90102010-01-04  Martin Jambor  <mjambor@suse.cz>
9011
9012	PR tree-optimization/42366
9013	* ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
9014	edges with variable number of parameters.
9015	* ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
9016	flag instead of asserting it.
9017	(ipa_read_node_info): Read uses_analysis_done flag.
9018
90192010-01-04  Richard Guenther  <rguenther@suse.de>
9020
9021	* tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
9022	iterative_hash_* as intended.
9023	(vn_reference_compute_hash): Likewise.  Simplify hashing
9024	SSA names.
9025	(vn_reference_lookup_2): Likewise.
9026	(vn_nary_op_compute_hash): Likewise.
9027	(vn_phi_compute_hash): Likewise.
9028	(expressions_equal_p): Remove strange code.
9029	* tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
9030	(pre_expr_hash): Likewise.  Simplify hashing SSA names.
9031	(bitmap_insert_into_set_1): Take value-id as parameter.
9032	(add_to_value): Pass it.
9033	(bitmap_insert_into_set): Likewise.
9034	(bitmap_value_insert_into_set): Likewise.  Remove redundant check.
9035
90362010-01-04  Jakub Jelinek  <jakub@redhat.com>
9037
9038	PR driver/42442
9039	* gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
9040	(do_self_spec): For switches with SWITCH_IGNORE set set also
9041	SWITCH_IGNORE_PERMANENTLY.
9042	(check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
9043	of SWITCH_IGNORE.
9044
90452010-01-04  Rafael Avila de Espindola  <espindola@google.com>
9046
9047	* lto-streamer-out.c (output_unreferenced_globals): Output the full
9048	tree of an unreferenced global var.
9049
90502010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
9051
9052	PR target/42542
9053	* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
9054	GTU to GT for V4SI and V2DI.
9055
9056	* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
9057	(umin<mode>3): Removed.
9058	(uminv8hi3): New.
9059	(uminv4si3): Likewise.
9060
90612010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
9062
9063	PR lto/42581
9064	* collect2.c (main): Turn on trace in collect2 if -v is passed
9065	to gcc with LTO.
9066
90672010-01-03  Jerry Quinn  <jlquinn@optonline.net>
9068
9069	* doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR.  Update
9070	description of expression operand.
9071
90722010-01-03  Andrew Jenner  <andrew@codesourcery.com>
9073
9074	* configure.ac: Add install-html to target_list for Make-hooks.
9075	* configure: Regenerate.
9076	* fortran/Make-lang.in (F95_HTMLFILES): New.
9077	(fortran.html): Use it.
9078	(fortran.install-html): New.
9079	* Makefile.in (install-html): Add lang.install-html.
9080	* java/Make-lang.in (JAVA_HTMLFILES): New.
9081	(java.html): Use it.
9082	(java.install-html): New.
9083	* objc/Make-lang.in (objc.install-html): New.
9084	* objcp/Make-lang.in (obj-c++.install-html): New.
9085	* cp/Make-lang.in (c++.install-html): New.
9086	* ada/gcc-interface/Make-lang.in (ada.install-html): New.
9087	* lto/Make-lang.in (lto.install-html): New.
9088
90892010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
9090
9091	PR lto/42520
9092	* gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
9093
90942009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
9095
9096	PR rtl-optimization/41862
9097	* store-motion.c (store_killed_in_insn, compute_store_table,
9098	remove_reachable_equiv_notes, replace_store_insn,
9099	build_store_vectors): Ignore all DEBUG_INSNs.
9100
91012010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
9102
9103	PR lto/41564
9104	* common.opt: Add dumpdir.
9105
9106	* gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
9107	isn't specified.
9108	(option_map): Add --dumpdir.
9109
9110	* gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
9111
9112	* lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
9113
9114	* opts.c (decode_options): Try dump_dir_name first if
9115	dump_base_name isn't an absolute path.
9116	(common_handle_option): Handle OPT_dumpdir.
9117
9118	* toplev.c (dump_dir_name): New.
9119	(print_switch_values): Also ignore -dumpdir.
9120
9121	* toplev.h (dump_dir_name): New.
9122
91232010-01-03  Richard Guenther  <rguenther@suse.de>
9124
9125	PR tree-optimization/42589
9126	* tree-ssa-math-opts.c (execute_optimize_bswap): Allow
9127	double-word expansion of bswap32.
9128
91292010-01-03  Steven Bosscher  <steven@gcc.gnu.org>
9130
9131	* postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
9132	with BLOCK_FOR_INSN.
9133	* auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
9134	* ifcvt.c (noce_get_alt_condition, noce_try_abs,
9135	noce_process_if_block): Likewise.
9136	* gcse.c (compute_local_properties, insert_expr_in_table,
9137	insert_set_in_table, canon_list_insert, find_avail_set,
9138	pre_insert_copy_insn): Likewise.
9139
9140	* basic-block.h (BLOCK_NUM): Move from here...
9141	* sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
9142
91432010-01-03  Richard Guenther  <rguenther@suse.de>
9144
9145	PR tree-optimization/42438
9146	* tree-ssa-pre.c (struct bb_bitmap_sets): Add
9147	contains_may_not_return_call flag.
9148	(BB_MAY_NOTRETURN): New.
9149	(valid_in_sets): Trapping nary operations are not valid
9150	in blocks that may not return.
9151	(insert_into_preds_of_block): Remove check for trapping expressions.
9152	(compute_avail): Compute also BB_MAY_NOTRETURN.
9153
91542010-01-03  Gerald Pfeifer  <gerald@pfeifer.com>
9155
9156	* doc/invoke.texi: Add 2010 to copyright years.
9157
91582010-01-03  Eric Botcazou  <ebotcazou@adacore.com>
9159
9160	* config/sparc/sparc.c: Fix formatting nits.
9161
91622010-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
9163	    Alexander Monakov  <amonakov@ispras.ru>
9164
9165	* doc/invoke.texi (Optimize Options): Reword introduction a bit.
9166
91672010-01-02  Richard Guenther  <rguenther@suse.de>
9168
9169	PR middle-end/42577
9170	* tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
9171	(simplify_switch_using_ranges): Mark to be removed edges
9172	as non-executable.
9173
91742010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
9175
9176	* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
9177
9178	* collect2.c (scan_libraries): Add missing argument in call to
9179	scan_prog_file.
9180
91812010-01-02  Uros Bizjak  <ubizjak@gmail.com>
9182
9183	PR target/42448
9184	* config/alpha/predicates.md (aligned_memory_operand): Return false
9185	for CQImode.
9186	(unaligned_memory_operand): Return true for CQImode.
9187	* config/alpha/alpha.c (get_aligned_mem): Assert that location
9188	doesn not cross aligned SImode word boundary.
9189
91902010-01-02  Anatoly Sokolov  <aesok@post.ru>
9191
9192	* config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
9193	Remove.
9194	* config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
9195	avr_change_section, avr_reg_class_from_letter) : Remove declaration.
9196
91972010-01-02  Richard Guenther  <rguenther@suse.de>
9198
9199	PR lto/41597
9200	* toplev.c (compile_file): Emit LTO marker properly.  Change
9201	it to __gnu_lto_v1.
9202	* collect2.c (scan_prog_file): Adjust for changed LTO marker.
9203
92042010-01-01  Richard Guenther  <rguenther@suse.de>
9205
9206	PR debug/42455
9207	* tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
9208
92092010-01-01  Richard Guenther  <rguenther@suse.de>
9210
9211	PR c/42570
9212	* c-decl.c (grokdeclarator): For zero-size arrays force
9213	structural equality checks as layout_type does.
9214
92152010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
9216
9217	* builtins.c: Update copyright to 2010.
9218
92192010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
9220
9221	PR lto/42531
9222	* lto-streamer-out.c (produce_asm): Revert the last change.
9223	(copy_function): Likewise.
9224
9225	* lto-streamer.c (lto_get_section_name): Skip any leading
9226	asterisk in name.
9227
92282010-01-01  Richard Guenther  <rguenther@suse.de>
9229
9230	PR middle-end/42559
9231	* builtins.c (get_object_alignment): Do not use DECL_ALIGN
9232	for LABEL_DECLs.
9233
9234
9235Copyright (C) 2010 Free Software Foundation, Inc.
9236
9237Copying and distribution of this file, with or without modification,
9238are permitted in any medium without royalty provided the copyright
9239notice and this notice are preserved.
9240