xref: /netbsd-src/external/gpl3/gcc/dist/gcc/ChangeLog (revision 6d322f2f4598f0d8a138f10ea648ec4fabe41f8b)
12012-07-02  Release Manager
2
3	* GCC 4.5.4 released.
4
52012-06-22  Richard Guenther  <rguenther@suse.de>
6
7	* gcov-iov.c: Include bconfig.h and system.h.
8
92012-06-22  Richard Guenther  <rguenther@suse.de>
10
11	PR gcov-profile/53744
12	* gcov-iov.c (main): Treat "" and "prerelease" the same.
13
142012-06-20  Richard Guenther  <rguenther@suse.de>
15
16	Backport from mainline
17	2012-05-21  Joseph Myers  <joseph@codesourcery.com>
18
19	PR c/53418
20	* c-typeck.c (build_conditional_expr): Remove C_MAYBE_CONST_EXPR
21	from folded operands before wrapping another around the
22	conditional expression.
23
242012-06-20  Richard Guenther  <rguenther@suse.de>
25
26	Backport from mainline
27	2010-12-18  Jakub Jelinek  <jakub@redhat.com>
28
29	PR tree-optimization/46985
30	* tree-scalar-evolution.c (instantiate_scev_r): If chrec is NULL,
31	return it immediately.
32
33	2011-02-18  Jakub Jelinek  <jakub@redhat.com>
34
35	PR debug/47780
36	* cfgexpand.c (expand_debug_expr) <case SSA_NAME>: Call copy_rtx to
37	avoid invalid rtx sharing.
38
39	2011-02-27  Jakub Jelinek  <jakub@redhat.com>
40
41	PR middle-end/47903
42	* real.c (real_arithmetic) <case PLUS_EXPR, MINUS_EXPR,
43	MULT_EXPR, RDIV_EXPR>: Clear padding bits in *r first if
44	r isn't op0 nor op1.
45
462012-06-04  Edmar Wienskoski  <edmar@freescale.com>
47
48	* config/rs6000/altivec.md (altivec_stvlx): Change machine mode of
49	operands.
50	(altivec_stvlxl): Ditto.
51	(altivec_stvrx): Ditto.
52	(altivec_stvrxl): Ditto.
53
542012-06-04  Georg-Johann Lay  <avr@gjlay.de>
55
56	Backport from 2012-06-04 mainline r188172
57
58	PR target/46261
59	* config/avr/avr-stdint.h: New file.
60	* config.gcc (avr-*-*,tm_file): Use avr/avr-stdint.h instead of
61	newlib-stdint.h
62
632012-05-16  Eric Botcazou  <ebotcazou@adacore.com>
64
65	* configure: Regenerate.
66
672012-05-14  Uros Bizjak  <ubizjak@gmail.com>
68
69	PR target/46098
70	* config/i386/i386.c (ix86_expand_special_args_builtin): Always
71	generate target register for "load" class builtins.
72
73	Revert:
74	2010-10-22  Uros Bizjak  <ubizjak@gmail.com>
75
76	PR target/46098
77	* config/i386/sse.md (*avx_movu<ssemodesuffix><avxmodesuffix>):
78	Rename from avx_movu<ssemodesuffix><avxmodesuffix>.
79	(avx_movu<ssemodesuffix><avxmodesuffix>): New expander.
80	(*<sse>_movu<ssemodesuffix>): Rename from <sse>_movu<ssemodesuffix>.
81	(<sse>_movu<ssemodesuffix>): New expander.
82	(*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>.
83	(avx_movdqu<avxmodesuffix>): New expander.
84	(*sse2_movdqu): Rename from sse2_movdqu.
85	(sse2_movdqu): New expander.
86
872012-05-13  Uros Bizjak  <ubizjak@gmail.com>
88
89	Backport from mainline
90	2012-05-12  Uros Bizjak  <ubizjak@gmail.com>
91
92	* config/alpha/alpha.c (alpha_emit_conditional_branch): Handle
93	ORDERED and UNORDERED conditions.
94
952012-05-04  Uros Bizjak  <ubizjak@gmail.com>
96
97	Backport from mainline
98	2012-05-04  Uros Bizjak  <ubizjak@gmail.com>
99
100	PR target/53228
101	* config/i386/i386.h (X86_ARCH_CMOV): Rename from X86_ARCH_CMOVE.
102	(TARGET_CMOV): Rename from TARGET_CMOVE.
103	(TARGET_CMOVE): New define.
104	* config/i386/i386.c (override_options): Use TARGET_CMOV.
105	Do not set TARGET_CMOVE here.
106
1072012-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
108
109	Backport from the mainline
110	2012-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
111
112	PR target/53199
113	* config/rs6000/rs6000.md (bswapdi splitters): If
114	-mavoid-indexed-addresses (or -mcpu=power6 which sets it by
115	default) is used, generate an alternate sequence that does not
116	depend on using indexed addressing.
117
1182012-05-02  Georg-Johann Lay  <avr@gjlay.de>
119
120	Backport from 2011-10-21 4.6-branch 180303.
121
122	PR target/50820
123	* config/avr/libgcc.S (__EIND__): New define to 0x3C.
124	(__tablejump__): Consistently use EIND for indirect jump/call.
125	(__tablejump_elpm__): Ditto.
126
1272012-05-02  Georg-Johann Lay  <avr@gjlay.de>
128
129	Backport from 2011-05-30 4.6-branch r174427.
130
131	PR target/45263
132	* config/avr/libgcc.S (__do_global_ctors, __do_global_dtors):
133	Don't use r20 around calls of __tablejump_elpm__
134
1352012-05-02  Georg-Johann Lay  <avr@gjlay.de>
136
137	Backport from 2011-07-11 4.6-branch r176143
138
139	PR target/39633
140	* config/avr/avr.c (notice_update_cc): For ashiftrt:QI, only
141	offsets 1..5 set cc0 in a usable way.
142
1432012-05-02  Georg-Johann Lay  <avr@gjlay.de>
144
145	Backport from 2011-07-08 4.6-branch r176055.
146
147	PR target/46779
148	* config/avr/avr.c (avr_hard_regno_mode_ok): Rewrite.
149	In particular, allow 8-bit values in r28 and r29.
150	(avr_hard_regno_scratch_ok): Disallow any register that might be
151	part of the frame pointer.
152	(avr_hard_regno_rename_ok): Same.
153	(avr_legitimate_address_p): Don't allow SUBREGs.
154
1552012-04-30  Uros Bizjak  <ubizjak@gmail.com>
156
157	Backport from mainline
158	2012-04-27  Paolo Bonzini  <bonzini@gnu.org>
159
160	PR target/53138
161	* config/i386/i386.md (x86_mov<mode>cc_0_m1_neg): Add clobber.
162
1632012-04-20  Thomas Schwinge  <thomas@codesourcery.com>
164
165	struct siginfo vs. siginfo_t
166
167	Backport from trunk (but apply to gcc/):
168
169	2012-04-20  Thomas Schwinge  <thomas@codesourcery.com>
170
171	* config/alpha/linux-unwind.h (alpha_fallback_frame_state): Use
172	siginfo_t instead of struct siginfo.
173	* config/bfin/linux-unwind.h (bfin_fallback_frame_state): Likewise.
174	* config/i386/linux-unwind.h (x86_fallback_frame_state): Likewise.
175	* config/ia64/linux-unwind.h (ia64_fallback_frame_state)
176	(ia64_handle_unwabi): Likewise.
177	* config/mips/linux-unwind.h (mips_fallback_frame_state): Likewise.
178	* config/pa/linux-unwind.h (pa32_fallback_frame_state): Likewise.
179	* config/sh/linux-unwind.h (shmedia_fallback_frame_state)
180	(sh_fallback_frame_state): Likewise.
181	* config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Likewise.
182
1832012-04-12  Richard Earnshaw  <rearnsha@arm.com>
184
185	PR target/49448
186	* config.gcc (arm*-*-linux*): Use an unambiguous pattern for
187	detecting big-endian triplets.
188
1892012-04-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
190
191	PR middle-end/52894
192	* varasm.c (process_pending_assemble_externals): Set
193	pending_assemble_externals_processed true.
194	(assemble_external): Call assemble_external_real if the pending
195	assemble externals have been processed.
196
1972012-04-09  Eric Botcazou  <ebotcazou@adacore.com>
198
199	PR target/52717
200	* config/sparc/sparc.c (sparc_file_end): Set TREE_PUBLIC explicitly on
201	the DECL generated for the special GOT helper.
202
2032012-04-06  Matt Turner  <mattst88@gmail.com>
204
205	* doc/install.texi: Correct typo "-mno-lsc" -> "-mno-llsc".
206
2072012-03-29  Uros Bizjak  <ubizjak@gmail.com>
208
209	* config/i386/sse.md (avx_h<plusminus_insn>v4df3): Fix results
210	crossing 128bit lane boundary.
211
2122012-03-29  Uros Bizjak  <ubizjak@gmail.com>
213
214	Backported from mainline
215	2012-03-27  Uros Bizjak  <ubizjak@gmail.com>
216
217	PR target/52698
218	* config/i386/i386-protos.h (ix86_legitimize_reload_address):
219	New prototype.
220	* config/i386/i386.h (LEGITIMIZE_RELOAD_ADDRESS): New define.
221	* config/i386/i386.c: Include reload.h.
222	(ix86_legitimize_reload_address): New function.
223
2242012-03-28  Martin Jambor  <mjambor@suse.cz>
225
226	Backported from mainline
227	2012-03-27  Martin Jambor  <mjambor@suse.cz>
228
229	PR middle-end/52693
230	* tree-sra.c (sra_modify_assign): Do not call
231	load_assign_lhs_subreplacements when working with an unscalarizable
232	region.
233
2342012-03-24  Steven Bosscher  <steven@gcc.gnu.org>
235
236	PR middle-end/52640
237	* varasm.c: Include pointer-set.h.
238	(pending_assemble_externals_set): New pointer set.
239	(process_pending_assemble_externals): Destroy the pointer set.
240	(assemble_external): See if decl is in pending_assemble_externals_set,
241	and add it to pending_assemble_externals if necessary.
242	(init_varasm_once): Allocate pending_assemble_externals_set.
243
2442012-03-06  Michael Meissner  <meissner@linux.vnet.ibm.com>
245
246	Backport from mainline
247	2012-03-06  Michael Meissner  <meissner@linux.vnet.ibm.com>
248
249	PR target/50310
250	* config/rs6000/vector.md (vector_uneq<mode>): Add support for
251	UNEQ, LTGT, ORDERED, and UNORDERED IEEE vector comparisons.
252	(vector_ltgt<mode>): Likewise.
253	(vector_ordered<mode>): Likewise.
254	(vector_unordered<mode>): Likewise.
255	* config/rs6000/rs6000.c (rs6000_emit_vector_compare_inner):
256	Likewise.
257
2582012-03-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
259
260	Backport from mainline
261	2012-03-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
262
263	PR target/52408
264	* config/pa/pa.md (zvdep_imm32): Change type of variable x from int to
265	unsigned HOST_WIDE_INT.
266	(zvdep_imm64): Likewise.
267	(vdepi_ior): Change type of variable x from int to HOST_WIDE_INT.
268	(vdepi_and): Likewise.
269	Likewise for unamed 64-bit patterns.
270	* config/pa/predicates.md (lhs_lshift_cint_operand): Update comment.
271
2722012-03-02  Peter Bergner  <bergner@vnet.ibm.com>
273
274	Backport from mainline
275	2012-03-02  Peter Bergner  <bergner@vnet.ibm.com>
276
277	* config/rs6000/vsx.md (vsx_set_<mode>): Reorder operands.
278
2792012-02-23  Uros Bizjak  <ubizjak@gmail.com>
280
281	PR c/52290
282	* c-decl.c (start_function): Exit early if decl1 is not FUNTION_DECL.
283
2842012-02-22  Uros Bizjak  <ubizjak@gmail.com>
285
286	PR target/52330
287	* config/i386/i386.c (ix86_print_operand) <case 'H'>: Error out if x
288	is not offsettable memory reference.
289
2902012-02-21  Richard Earnshaw  <rearnsha@arm.com>
291
292	PR target/52294
293	* thumb2.md (thumb2_shiftsi3_short): Split register and
294	immediate shifts.  For register shifts tie operands 0 and 1.
295	(peephole2 for above): Check that register-controlled shifts
296	have suitably tied operands.
297
2982012-02-14  Bin Cheng  <bin.cheng@arm.com>
299
300	Backport from mainline.
301	2012-01-30  Bin Cheng  <bin.cheng@arm.com>
302
303	PR target/51835
304	* config/arm/arm.c (arm_libcall_uses_aapcs_base): Use correct ABI
305	for __aeabi_d2iz/__aeabi_d2uiz with hard-float.
306
307	2011-06-08  Julian Brown  <julian@codesourcery.com>
308
309	* config/arm/arm.c (arm_libcall_uses_aapcs_base): Use correct ABI
310	for double-precision helper functions in hard-float mode if only
311	single-precision arithmetic is supported in hardware.
312
3132012-02-09  Jakub Jelinek  <jakub@redhat.com>
314
315	Backported from mainline
316	2012-02-08  Jakub Jelinek  <jakub@redhat.com>
317
318	PR rtl-optimization/52139
319	* cfgrtl.c (cfg_layout_merge_blocks): If BB_END
320	is a BARRIER after emit_insn_after_noloc, move BB_END
321	to the last non-BARRIER insn before it.
322
323	2012-01-19  Jakub Jelinek  <jakub@redhat.com>
324
325	PR libmudflap/40778
326	* tree-mudflap.c (mf_artificial): New function.
327	(execute_mudflap_function_ops, execute_mudflap_function_decls,
328	mx_register_decls, mudflap_enqueue_decl): Use it.
329
330	2012-01-05  Jakub Jelinek  <jakub@redhat.com>
331
332	PR rtl-optimization/51767
333	* cfgrtl.c (force_nonfallthru_and_redirect): Force addition
334	of jump_block and add an extra edge for degenerated asm gotos.
335
336	PR middle-end/51768
337	* stmt.c (check_unique_operand_names): Don't ICE during error
338	reporting if i is from labels chain.
339
340	PR middle-end/44777
341	* profile.c (branch_prob): Split bbs that have exit edge
342	and need a fake entry edge too.
343
3442012-02-09  Peter Bergner  <bergner@vnet.ibm.com>
345
346	Backport from mainline
347	2012-02-09  Peter Bergner  <bergner@vnet.ibm.com>
348
349	PR middle-end/52140
350	* dojump.c (do_compare_rtx_and_jump): Use SCALAR_FLOAT_MODE_P.
351
3522012-02-09  Andrey Belevantsev  <abel@ispras.ru>
353
354	Backport from mainline
355	2012-01-20  Andrey Belevantsev  <abel@ispras.ru>
356
357	PR target/51106
358	* function.c (instantiate_virtual_regs_in_insn): Use
359	delete_insn_and_edges when removing a wrong asm insn.
360
3612012-02-07  Quentin Neill  <quentin.neill@amd.com>
362
363	Backport from mainline:
364	2012-01-19  Quentin Neill  <quentin.neill@amd.com>
365
366	PR target/48743
367	* config/i386/driver-i386.c (host_detect_local_cpu): Also check
368	family to distinguish PROCESSOR_ATHLON.
369
3702012-02-07  Kai Tietz  <ktietz@redhat.com>
371	    Dave Korn  <dave.korn.cygwin@gmail.com>
372
373	PR target/40068
374	* config/i386/winnt-cxx.c (i386_pe_adjust_class_at_definition):
375	Take care that typinfo gets dllexport-attribute.
376
3772012-01-31  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
378
379	Backport from mainline:
380	2012-01-31  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
381
382	* config/arm/thumb2.md (thumb2_mov_notscc): Use MVN for true condition.
383
3842012-01-20  Eric Botcazou  <ebotcazou@adacore.com>
385
386	* cfgrtl.c (rtl_dump_bb): Do not dump insns for {ENTRY|EXIT}_BLOCK.
387
3882012-01-15  Uros Bizjak  <ubizjak@gmail.com>
389
390	PR rtl-optimization/51821
391	* recog.c (peep2_find_free_register): Determine clobbered registers
392	from insn pattern.
393
3942012-01-12  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
395
396	Backport from mainline:
397	2012-01-11  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
398
399	* config/arm/arm.md (mov_notscc): Use MVN for false condition.
400
4012012-01-10  Joseph Myers  <joseph@codesourcery.com>
402
403	Revert:
404
405	2008-09-18  Andrew Pinski  <andrew_pinski@playstation.sony.com>
406
407	PR rtl-opt/37451
408	* loop-doloop.c (doloop_modify): New argument zero_extend_p and
409	zero extend count after the correction to it is done.
410	(doloop_optimize): Update call to doloop_modify, don't zero extend
411	count before call.
412
413	2008-11-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>
414
415	PR rtl-opt/37782
416	* loop-doloop.c (doloop_modify): Add from_mode argument that says what
417	mode count is in.
418	(doloop_optimize): Update call to doloop_modify.
419
4202012-01-09  Richard Sandiford  <rdsandiford@googlemail.com>
421
422	* config/mips/mips.md (loadgp_newabi_<mode>): Add missing
423	earlyclobber.
424
4252012-01-09  Martin Jambor  <mjambor@suse.cz>
426
427	PR tree-optimization/51759
428	Backport from mainline
429	2010-09-15  Martin Jambor  <mjambor@suse.cz>
430
431	PR middle-end/45644
432	* tree-sra.c (create_access): Check for bit-fields directly.
433
4342012-01-09  Eric Botcazou  <ebotcazou@adacore.com>
435
436	* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Check that the
437	purported sigacthandler address isn't null before dereferencing it.
438	(sparc_is_sighandler): Likewise.
439
4402012-01-06  Richard Sandiford  <richard.sandiford@linaro.org>
441
442	PR middle-end/48660
443	* expr.h (copy_blkmode_to_reg): Declare.
444	* expr.c (copy_blkmode_to_reg): New function.
445	(expand_assignment): Don't expand register RESULT_DECLs before
446	the lhs.  Use copy_blkmode_to_reg to copy BLKmode values into a
447	RESULT_DECL register.
448	(expand_expr_real_1): Handle BLKmode decls when looking for promotion.
449
4502012-01-04  Richard Guenther  <rguenther@suse.de>
451
452	Backport from mainline
453	2012-01-04  Richard Guenther  <rguenther@suse.de>
454
455	PR tree-optimization/49651
456	* tree-ssa-structalias.c (type_can_have_subvars): New function.
457	(var_can_have_subvars): Use it.
458	(get_constraint_for_1): Only consider subfields if there
459	can be any.
460
461	2011-07-14  Richard Guenther  <rguenther@suse.de>
462
463	PR tree-optimization/49651
464	* tree-ssa-structalias.c (get_constraint_for_1): Properly
465	handle dereferences with subvariables.
466
4672012-01-03  Richard Guenther  <rguenther@suse.de>
468
469	Backport from mainline
470	2011-10-12  Paul Koning  <pkoning@gcc.gnu.org>
471
472	PR tree-optimization/50189
473	* tree-vrp.c (extract_range_from_assert): Use the type of
474	the variable, not the limit.
475
4762012-01-03  Richard Guenther  <rguenther@suse.de>
477
478	Backport from mainline
479	2011-10-06  Jakub Jelinek  <jakub@redhat.com>
480
481	PR tree-optimization/49279
482	* tree-ssa-structalias.c (find_func_aliases): Don't handle
483	CAST_RESTRICT.
484
4852012-01-03  Richard Guenther  <rguenther@suse.de>
486
487	Backport from mainline
488	2011-08-23  Richard Guenther  <rguenther@suse.de>
489
490	PR tree-optimization/50162
491	* tree-vect-stmts.c (vectorizable_call): Fix argument lookup.
492
4932012-01-03  Richard Guenther  <rguenther@suse.de>
494
495	Backport from mainline
496	2011-05-12  Richard Guenther  <rguenther@suse.de>
497
498	PR tree-optimization/48172
499	* tree-vect-loop-manip.c (vect_vfa_segment_size): Do not exclude
500	the number of iterations from the segment size calculation.
501	(vect_create_cond_for_alias_checks): Adjust.
502
503	2011-05-13  Richard Guenther  <rguenther@suse.de>
504
505	PR tree-optimization/48172
506	* tree-vect-loop-manip.c (vect_vfa_segment_size): Avoid
507	multiplying by number of iterations for equal step.
508	(vect_create_cond_for_alias_checks): Likewise.
509
5102011-12-21  Uros Bizjak  <ubizjak@gmail.com>
511
512	Backport from mainline
513	2011-12-21  Richard Guenther  <rguenther@suse.de>
514
515	PR lto/41159
516	* tree-outof-ssa.c (insert_value_copy_on_edge): Use the
517	mode of the pseudo as destination mode.  Only assert that
518	is equal to the promoted mode of the decl if it is a REG.
519
5202011-12-21  Uros Bizjak  <ubizjak@gmail.com>
521
522	* config/alpha/linux-unwind.h: Update copyright years.
523	(MD_FROB_UPDATE_CONTEXT): New define.
524	(alpha_frob_update_context): New function.
525
5262011-12-16  Eric Botcazou  <ebotcazou@adacore.com>
527
528	* config/sparc/sparc.md (UNSPEC_FRAME_BLOCKAGE): New constant.
529	(frame_blockage): New expander.
530	(frame_blockage<P:mode>): New instruction.
531	* config/sparc/sparc.c (sparc_expand_prologue): When the sequence of
532	instructions establishing the frame isn't atomic, emit frame blockage.
533
5342011-12-13  Eric Botcazou  <ebotcazou@adacore.com>
535
536	* lto-streamer-out.c (write_symbol): Use proper 64-bit host type.
537	* lto-streamer-in.c (lto_read_body): Use 'int' for offsets.
538	(lto_input_toplevel_asms): Likewise.
539	* lto-section-in.c (lto_create_simple_input_block): Likewise.
540	* lto-opts.c (lto_read_file_options): Likewise.
541	* ipa-prop.c (ipa_prop_read_section): Likewise.
542
543	* df.h (DF_NOTE): Fix typo in comment.
544
5452011-12-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
546
547	* regmove.c (fixup_match_2): Only access call_used_regs with hard
548	regs.
549
5502011-12-09  Kazu Hirata  <kazu@codesourcery.com>
551
552	Backport from mainline:
553
554	2011-12-05  Kazu Hirata  <kazu@codesourcery.com>
555
556	PR target/51408
557	* config/arm/arm.md (*minmax_arithsi): Always require the else
558	clause in the MINUS case.
559
5602011-12-04  Jérémie Detrey  <Jeremie.Detrey@loria.fr>
561
562	PR target/51393
563	* config/i386/avxintrin.h (_mm256_insert_epi64): Declare second
564	parameter as long long.
565
5662011-11-25  Richard Sandiford  <richard.sandiford@linaro.org>
567
568	Backport from mainline:
569
570	2011-03-29  Richard Sandiford  <richard.sandiford@linaro.org>
571
572	PR debug/48190
573	* dwarf2out.c (dw_loc_list_node): Add resolved_addr and replaced.
574	(cached_dw_loc_list_def): New structure.
575	(cached_dw_loc_list): New typedef.
576	(cached_dw_loc_list_table): New variable.
577	(cached_dw_loc_list_table_hash): New function.
578	(cached_dw_loc_list_table_eq): Likewise.
579	(add_location_or_const_value_attribute): Take a bool cache_p.
580	Cache the list when the parameter is true.
581	(gen_formal_parameter_die): Update caller.
582	(gen_variable_die): Likewise.
583	(dwarf2out_finish): Likewise.
584	(dwarf2out_abstract_function): Nullify cached_dw_loc_list_table
585	while generating debug info for the decl.
586	(dwarf2out_function_decl): Clear cached_dw_loc_list_table.
587	(dwarf2out_init): Initialize cached_dw_loc_list_table.
588	(resolve_addr): Cache the result of resolving a chain of
589	location lists.
590
591	From: 2010-10-12  Jakub Jelinek  <jakub@redhat.com>
592	* dwarf2out.c (dw_loc_list_node): Add emitted field.
593	(output_loc_list): Return immediately if emitted is set, set it.
594
5952011-11-19  Eric Botcazou  <ebotcazou@adacore.com>
596
597	PR rtl-optimization/51187
598	* reorg.c (relax_delay_slots): Do not consider a jump useless if there
599	is a barrier between the jump and its target label.
600
6012011-11-07  Alan Modra  <amodra@gmail.com>
602
603	PR target/30282
604	* config/rs6000/rs6000.c (rs6000_emit_stack_reset): Always emit
605	blockage for ABI_V4.
606
6072011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
608
609	PR target/50979
610	* config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=v8.
611
6122011-10-30  Uros Bizjak  <ubizjak@gmail.com>
613
614	PR target/50875
615	* config/i386/sse.md (*avx_unpcklpd256): Remove extra insn
616	constraints.  Change alternative 1 to "x,m,1".
617
6182011-10-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
619
620	PR target/50691
621	* config/pa/pa.c (emit_move_sequence): Legitimize TLS symbol
622	references.
623	* config/pa/pa.h (LEGITIMATE_CONSTANT_P): Return false for
624	TLS_MODEL_GLOBAL_DYNAMIC and TLS_MODEL_LOCAL_DYNAMIC symbol references.
625
6262011-10-23  Uros Bizjak  <ubizjak@gmail.com>
627
628	PR target/50788
629	* config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
630	Remove (match_dup 0).
631
6322011-10-18  Uros Bizjak  <ubizjak@gmail.com>
633	    Eric Botcazou  <ebotcazou@adacore.com>
634
635	PR target/50737
636	* config/alpha/linux-unwind.h (alpha_fallback_frame_state): Set
637	fs->signal_frame to 1.
638
6392011-10-12  Joseph Myers  <joseph@codesourcery.com>
640
641	PR c/50565
642	* convert.c (convert_to_integer): Do not narrow operands of
643	pointer subtraction.
644
6452011-10-11  Eric Botcazou  <ebotcazou@adacore.com>
646
647	PR target/49965
648	* config/sparc/sparc.md (mov<I:mode>cc): Do not save comparison code.
649	(mov<F:mode>cc): Likewise.
650
6512011-09-22  Uros Bizjak  <ubizjak@gmail.com>
652
653	PR target/50464
654	* config/i386/sse.md (xop_pcmov_<mode>): Change operand 1 predicate
655	to register_operand and operand 2 predicate to nonimmediate_operand.
656	(xop_pcmov_<mode>256): Ditto.
657	* config/i386/i386.c (ix86_expand_sse_movcc): When generating
658	xop_pcmov, force op_true to register.  Also, force op_false to
659	register if it doesn't satisfy nonimmediate_operand predicate.
660
6612011-09-18  Eric Botcazou  <ebotcazou@adacore.com>
662	    Iain Sandoe  <developer@sandoe-acoustics.co.uk>
663
664	PR target/50091
665	* config/rs6000/rs6000.md (probe_stack): Use explicit operand.
666
6672011-09-08  Martin Jambor  <mjambor@suse.cz>
668
669	Backport from mainline
670	2011-09-07  Martin Jambor  <mjambor@suse.cz>
671
672	PR tree-optimization/49911
673	* tree-sra.c (analyze_access_subtree): Change type of to-be-replaced
674	enumerations to the corresponding plain integer type.
675
6762011-08-26  Richard Sandiford  <richard.sandiford@linaro.org>
677
678	PR target/50090
679	* config/arm/bpabi.h (RENAME_LIBRARY_SET): Delete.
680	(RENAME_LIBRARY): Use a C-level alias instead of an assembly one.
681
6822011-08-12  Nick Clifton  <nickc@redhat.com>
683
684	* builtins.c (expand_builtin_memcmp): Do not use cmpstrnsi pattern.
685	* doc/md.texi (cmpstrn): Note that the comparison stops if both
686	fetched bytes are zero.
687	(cmpstr): Likewise.
688	(cmpmem): Note that the comparison does not stop if both of the
689	fetched bytes are zero.
690
6912011-08-11  Kazuhiro Inaoka  <kazuhiro.inaoka.ud@renesas.com>
692
693	* config/rx/rx.md (movsicc): Allow register to register transfers.
694	(*movsicc): Likewise.
695	(*stcc): Restrict this pattern to EQ and NE compares.
696	(*stcc_reg): New pattern.  Works for any comparison but only for
697	register transfers.
698
6992011-08-10  DJ Delorie  <dj@redhat.com>
700
701	* expr.c (expand_expr_addr_expr_1): Detect a user request for
702	a local frame in a naked function, and produce a suitable
703	error for that specific case.
704
7052011-08-06  Uros Bizjak  <ubizjak@gmail.com>
706
707	PR target/50001
708	* config/alpha/alpha.c (alpha_instantiate_decls): New function.
709	(TARGET_INSTANTIATE_DECLS): New define.
710
7112011-08-01  Sebastien Bourdeauducq  <sebastien@milkymist.org>
712
713	* config/lm32/t-lm32: Add missing multilibs.
714
7152011-07-31  Uros Bizjak  <ubizjak@gmail.com>
716
717	PR target/49920
718	* config/i386/i386.md (strset): Do not expand strset_singleop
719	when %eax or $edi are fixed.
720	(*strsetdi_rex_1): Disable when %eax or %edi are fixed.
721	(*strsetsi_1): Ditto.
722	(*strsetsi_rex_1): Ditto.
723	(*strsethi_1): Ditto.
724	(*strsethi_rex_1): Ditto.
725	(*strsetqi_1): Ditto.
726	(*strsetqi_rex_1): Ditto.
727	(*rep_stosdi_rex64): Disable when %eax, %ecx or %edi are fixed.
728	(*rep_stossi): Ditto.
729	(*rep_stossi_rex64): Ditto.
730	(*rep_stosqi): Ditto.
731	(*rep_stosqi_rex64): Ditto.
732	(*strlenqi_1): Ditto.
733	(*strlenqi_rex_1): Ditto.
734	(cmpstrnsi): Also fail when %ecx is fixed.
735	(*cmpstrnqi_nz_1): Disable when %ecx, %esi or %edi are fixed.
736	(*cmpstrnqi_nz_rex_1): Ditto.
737	(*cmpstrnqi_1): Ditto.
738	(*cmpstrnqi_rex_1): Ditto.
739	(*strmovdi_rex_1): Disable when %esi or %edi are fixed.
740	(*strmovsi_1): Ditto.
741	(*strmovsi_rex_1): Ditto.
742	(*strmovhi_1): Ditto.
743	(*strmovhi_rex_1): Ditto.
744	(*strmovqi_1): Ditto.
745	(*strmovqi_rex_1): Ditto.
746	(*rep_movdi_rex64): Disable when %ecx, %esi or %edi are fixed.
747	(*rep_movsi): Ditto.
748	(*rep_movsi_rex64): Ditto.
749	(*rep_movqi): Ditto.
750	(*rep_movqi_rex64): Ditto.
751
7522011-07-28  Uros Bizjak  <ubizjak@gmail.com>
753
754	PR target/47364
755	* config/i386/i386.md (strlensi): Enable for !TARGET_64BIT only.
756	(strlendi): Enable for TARGET_64BIT only.
757
7582011-07-29  Nick Clifton  <nickc@redhat.com>
759
760	* config/rx/rx.c (rx_expand_builtin): Fix typo checking the setpsw
761	builtin.
762
7632011-07-19  Jakub Jelinek  <jakub@redhat.com>
764
765	Backport from mainline
766	2011-07-08  Jakub Jelinek  <jakub@redhat.com>
767
768	PR target/49621
769	* config/rs6000/rs6000.c (rs6000_emit_vector_cond_expr): Use
770	CONST0_RTX (dest_mode) instead of const0_rtx as second operand
771	of NE.
772	* config/rs6000/vector.md (vector_select_<mode>,
773	vector_select_<mode>_uns): Change second operand of NE to
774	CONST0_RTX (<MODE>mode) instead of const0_rtx.
775	* config/rs6000/altivec.md (*altivec_vsel<mode>,
776	*altivec_vsel<mode>_uns): Expect second operand of NE to be
777	zero_constant of the corresponding vector mode.
778	* config/rs6000/vsx.md (*vsx_xxsel<mode>, *vsx_xxsel<mode>_uns):
779	Likewise.
780
781	2011-07-07  Jakub Jelinek  <jakub@redhat.com>
782
783	PR c/49644
784	* c-typeck.c (build_binary_op): For MULT_EXPR and TRUNC_DIV_EXPR with
785	one non-complex and one complex argument, call c_save_expr on both
786	operands.
787
788	PR middle-end/49640
789	* gimplify.c (gimplify_compound_lval): For last 2 ARRAY_*REF
790	operands and last COMPONENT_REF operand call gimplify_expr on it
791	if non-NULL.
792
793	2011-07-04  Jakub Jelinek  <jakub@redhat.com>
794
795	PR rtl-optimization/49619
796	* combine.c (combine_simplify_rtx): In PLUS -> IOR simplification
797	pass VOIDmode as op0_mode to recursive call.
798
799	2011-05-27  Jakub Jelinek  <jakub@redhat.com>
800
801	PR c++/49165
802	* c-common.c (c_common_truthvalue_conversion) <case COND_EXPR>: For
803	C++ don't call c_common_truthvalue_conversion on void type arms.
804
805	2011-05-26  Jakub Jelinek  <jakub@redhat.com>
806
807	PR c++/49165
808	* gimplify.c (shortcut_cond_r): Don't special case
809	COND_EXPRs if they have void type on one of their arms.
810
811	PR tree-optimization/49161
812	* tree-vrp.c (struct case_info): New type.
813	(compare_case_labels): Sort case_info structs instead of
814	trees, and not primarily by CASE_LABEL uids but by
815	label_for_block indexes.
816	(find_switch_asserts): Put case labels into struct case_info
817	array instead of TREE_VEC, adjust sorting, compare label_for_block
818	values instead of CASE_LABELs.
819
820	2011-05-23  Jakub Jelinek  <jakub@redhat.com>
821
822	PR c/49120
823	* c-decl.c (start_decl): Convert expr to void_type_node.
824
825	PR middle-end/48973
826	* expr.c (expand_expr_real_2) <case LT_EXPR>: If do_store_flag
827	failed and the comparison has a single bit signed type, use
828	constm1_rtx instead of const1_rtx for true value.
829	(do_store_flag): If ops->type is single bit signed type, disable
830	signel bit test optimization and pass -1 instead of 1 as last
831	parameter to emit_store_flag_force.
832
833	2011-05-18  Jakub Jelinek  <jakub@redhat.com>
834
835	PR tree-optimization/49039
836	* tree-vrp.c (extract_range_from_binary_expr): For
837	MIN_EXPR <~[a, b], ~[c, d]> and MAX_EXPR <~[a, b], ~[c, d]>
838	return ~[MAX_EXPR <a, c>, MIN_EXPR <b, d>].
839
8402011-07-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
841
842	PR target/49746
843	Revert:
844	2010-12-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
845
846	* config/pa/pa.md: Add ",*" condition to 64-bit add/subtract boolean
847	patterns.
848
8492011-07-15  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
850
851	PR target/49723
852	* config/pa/pa.md (casesi): Use gen_int_mode instead of GEN_INT.
853
8542011-07-12  Andrey Belevantsev  <abel@ispras.ru>
855
856	Backport from mainline
857	2011-05-25  Andrey Belevantsev  <abel@ispras.ru>
858
859	PR rtl-optimization/49014
860	* config/i386/athlon.md (athlon_ssecomi): Change type to ssecomi.
861
8622011-07-07  Eric Botcazou  <ebotcazou@adacore.com>
863
864	PR target/49660
865	* config/sparc/sol2.h [TARGET_64BIT_DEFAULT] (TARGET_DEFAULT): Add
866	MASK_V8PLUS, remove commented out flag and reorder.
867
868	Backport from mainline
869	2011-06-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
870
871	* config/sparc/sol2-64.h (TARGET_DEFAULT): Remove.
872	(TARGET_64BIT_DEFAULT): Define.
873	* config.gcc (sparc*-*-solaris2*): Move sparc/sol2-64.h to front
874	of tm_file.
875	* config/sparc/sol2.h [TARGET_64BIT_DEFAULT] (TARGET_DEFAULT): Define.
876
8772011-07-04  Richard Guenther  <rguenther@suse.de>
878
879	Backport from mainline
880	2011-05-02  Richard Guenther  <rguenther@suse.de>
881
882	PR tree-optimization/48822
883	* tree-ssa-sccvn.c (set_ssa_val_to): Never go up the lattice.
884
8852011-07-04  Richard Guenther  <rguenther@suse.de>
886
887	Backport from mainline
888	2011-05-23  Richard Guenther  <rguenther@suse.de>
889
890	PR tree-optimization/49115
891	* tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1): Likewise.
892
8932011-07-04  Richard Guenther  <rguenther@suse.de>
894
895	PR tree-optimization/49615
896	* tree-cfgcleanup.c (split_bbs_on_noreturn_calls): Fix
897	basic-block index check.
898
8992011-06-30  Eric Botcazou  <ebotcazou@adacore.com>
900
901	PR tree-optimization/49572
902	* tree-ssa-dom.c (initialize_hash_element) <GIMPLE_SINGLE_RHS>: Use the
903	type of the RHS instead of that of the LHS for the expression type.
904
9052011-06-30  Jack Howarth  <howarth@bromo.med.uc.edu>
906
907	Backport from mainline
908	2011-02-07  Mike Stump  <mikestump@comcast.net>
909
910	PR target/42333
911	Add __ieee_divdc3 entry point.
912	* config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Retain ___divdc3
913	entry point.
914	(SUBTARGET_INIT_BUILTINS): Call darwin_rename_builtins.
915	* config/i386/i386.c (TARGET_INIT_LIBFUNCS): Likewise.
916	* config/darwin.c (darwin_rename_builtins): Add.
917	* config/darwin-protos.h (darwin_rename_builtins): Add.
918
9192011-06-28  Eric Botcazou  <ebotcazou@adacore.com>
920
921	* tree-ssa-dom.c (initialize_hash_element): Fix oversight.
922
9232011-06-17  Hans-Peter Nilsson  <hp@axis.com>
924
925	Backport from mainline
926	2011-06-17  Hans-Peter Nilsson  <hp@axis.com>
927
928	PR rtl-optimization/48542
929	* reload.c (find_equiv_reg): Stop looking when finding a
930	setjmp-type call.
931	* reload1.c (reload_as_needed): Invalidate all reload
932	registers when crossing a setjmp-type call.
933
9342011-06-16  Kaz Kojima  <kkojima@gcc.gnu.org>
935
936	Backport from mainline
937	2011-06-09  Kaz Kojima  <kkojima@gcc.gnu.org>
938
939	PR target/49307
940	* config/sh/sh.md (UNSPEC_CHKADD): New.
941	(chk_guard_add): New define_insn_and_split.
942	(symGOT_load): Use chk_guard_add instead of blockage.
943
9442011-06-11  Uros Bizjak  <ubizjak@gmail.com>
945
946	* config/i386/sse.md (vec_dupv4sf): Correct mode of forced register.
947	(*vec_dupv2df): Rename from vec_dupv2df.
948	(vec_dupv2df): New expander.
949
9502011-06-09  Eric Botcazou  <ebotcazou@adacore.com>
951
952	* config/sparc/sparc.md (return_internal): Adjust 'length' attribute.
953
9542011-06-08  Kaz Kojima  <kkojima@gcc.gnu.org>
955
956	Backport from mainline
957	2011-06-01  Kaz Kojima  <kkojima@gcc.gnu.org>
958
959	PR target/49238
960	* config/sh/sh.c (expand_cbranchdi4): Use a scratch register if
961	needed when original operands are used for msw_skip comparison.
962
9632011-06-05  Eric Botcazou  <ebotcazou@adacore.com>
964
965	* config/sparc/sparc.c (output_return): Fix thinko in the output of an
966	EH return when delayed branches are disabled.
967
9682011-06-05  Kaz Kojima  <kkojima@gcc.gnu.org>
969
970	Backport from mainline
971	2011-05-30  Kaz Kojima  <kkojima@gcc.gnu.org>
972
973	PR target/49186
974	* config/sh/sh.c (expand_cbranchdi4): Set msw_skip when the high
975	part of the second operand is 0.
976
9772011-06-04  Ira Rosen  <ira.rosen@linaro.org>
978
979	PR tree-optimization/49038
980	* tree-vect-loop-manip.c (vect_generate_tmps_on_preheader):
981	Ensure at least one epilogue iteration if required by data
982	accesses with gaps.
983	* tree-vectorizer.h (struct _loop_vec_info): Add new field
984	to mark loops that require peeling for gaps.
985	* tree-vect-loop.c (new_loop_vec_info): Initialize new field.
986	(vect_estimate_min_profitable_iters): Take peeling for gaps into
987	account.
988	(vect_transform_loop): Generate epilogue if required by data
989	access with gaps.
990	* tree-vect-data-refs.c (vect_analyze_group_access): Mark the
991	loop as requiring an epilogue if there are gaps in the end of
992	the strided group.
993
9942011-05-29  Richard Sandiford  <rdsandiford@googlemail.com>
995
996	PR target/43700
997	* config/mips/mips.c (mips_cfun_call_saved_reg_p): Handle global
998	registers.
999
10002011-05-29  Richard Sandiford  <rdsandiford@googlemail.com>
1001
1002	PR target/43995
1003	* config/mips/mips.c (mips_pic_call_symbol_from_set): Add a
1004	recurse_p argument.  Only follow register copies if it is set,
1005	and prevent mips_find_pic_call_symbol from recursing.
1006	(mips_find_pic_call_symbol): Add a recurse_p argument.
1007	Pass it to mips_pic_call_symbol_from_set.
1008	(mips_annotate_pic_calls): Update accordingly.
1009
10102011-05-26  Eric Botcazou  <ebotcazou@adacore.com>
1011
1012	* config/sparc/sparc-protos.h (sparc_optimization_options): Declare.
1013	* config/sparc/sparc.h (OPTIMIZATION_OPTIONS): Define.
1014	* config/sparc/sparc.c (sparc_optimization_options): New function.
1015	Set flag_ira_share_save_slots to 0.
1016
1017	Backport from mainline
1018	2011-01-21  Jeff Law  <law@redhat.com>
1019
1020	PR rtl-optimization/41619
1021	* caller-save.c (setup_save_areas): Break out code to determine
1022	which hard regs are live across calls by examining the reload chains
1023	so that it is always used.
1024	Eliminate code which checked REG_N_CALLS_CROSSED.
1025
10262011-05-25  Uros Bizjak  <ubizjak@gmail.com>
1027
1028	PR target/49133
1029	* config/i386/sse.md (sse2_loadhpd): Remove shufpd alternative.
1030
10312011-05-21  Eric Botcazou  <ebotcazou@adacore.com>
1032
1033	* config/sparc/sparc.md (setjmp): Handle PIC mode and use the hard
1034	frame pointer.
1035
10362011-05-21  Eric Botcazou  <ebotcazou@adacore.com>
1037
1038	* config/sparc/sparc.c (eligible_for_return_delay): Do not return
1039	false if there are call-saved registers here...
1040	(sparc_can_use_return_insn_p): ...but here instead.
1041	(save_or_restore_regs): Fix thinko.
1042	(sparc_expand_prologue): Use current_function_is_leaf.
1043	(sparc_frame_pointer_required): Likewise.
1044
10452011-05-20  Nick Clifton  <nickc@redhat.com>
1046
1047	* config/rx/rx.h (HAVE_PRE_DECREMENT): Fix typo in macro name.
1048
10492011-05-16  Uros Bizjak  <ubizjak@gmail.com>
1050
1051	* config/i386/i386.md (*movxf_internal): Disable CONST_DOUBLE
1052	optimization for CM_MEDIUM and CM_LARGE code models.  Fix usage
1053	of standard_80387_constant_p.
1054	(*movxf_internal_nointeger): Ditto.
1055	(*movdf_internal): Remove dead code-size optimization.
1056	(*movdf_internal_rex64): Fix usage of standard_80387_constant_p.
1057	(*movdf_internal_nointeger): Ditto.
1058	(*movsf_internal): Ditto.
1059	(floating point move splitters): Ditto.
1060	* config/i386/constraints.md (G): Ditto.
1061	* config/i386/i386.c (ix86_preferred_reload_class): Ditto.
1062
10632011-05-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
1064
1065	Backport from mainline
1066	2011-05-10  Michael Meissner  <meissner@linux.vnet.ibm.com>
1067
1068	PR target/48857, 48495
1069	* config/rs6000/rs6000.h (VSX_SCALAR_MODE): Delete.
1070	(VSX_MODE): Ditto.
1071	(VSX_MOVE_MODE): Ditto.
1072	(ALTIVEC_OR_VSX_VECTOR_MODE): New macro, combine all Altivec and
1073	VSX vector types.  Add V2DImode.
1074	(HARD_REGNO_CALLER_SAVE_MODE): Use it instead of
1075	ALTIVEC_VECTOR_MODE and VSX_VECTOR_MODE calls.
1076	(MODES_TIEABLE_P): Ditto.
1077
1078	* config/rs6000/rs6000.c (rs6000_emit_move): Use
1079	ALTIVEC_OR_VSX_MODE instead of ALTIVEC_VECTOR_MODE and
1080	VSX_VECTOR_MODE.
1081	(init_cumulative_args): Ditto.
1082	(rs6000_function_arg_boundary): Ditto.
1083	(rs6000_function_arg_advance_1): Ditto.
1084	(rs6000_function_arg): Ditto.
1085	(rs6000_function_ok_for_sibcall): Ditto.
1086	(emit_frame_save): Ditto.
1087	(rs6000_function_value): Ditto.
1088	(rs6000_libcall_value): Ditto.
1089
10902011-05-10  Jakub Jelinek  <jakub@redhat.com>
1091
1092	Backported from mainline
1093	2011-05-07  Zdenek Dvorak  <ook@ucw.cz>
1094
1095	PR tree-optimization/48837
1096	* tree-tailcall.c (tree_optimize_tail_calls_1): Do not mark tailcalls
1097	when accumulator transformation is performed.
1098
10992011-05-09  Eric Botcazou  <ebotcazou@adacore.com>
1100
1101	* var-tracking.c (find_mem_expr_in_1pdv): Fix thinko.
1102	(dataflow_set_preserve_mem_locs): Likewise.
1103
11042011-05-07  Alan Modra  <amodra@gmail.com>
1105
1106	PR target/48900
1107	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
1108	const0_rtx as the arg to the dummy __tls_get_addr libcall.
1109
11102011-05-05  Jason Merrill  <jason@redhat.com>
1111
1112	PR c++/40975
1113	* tree-inline.c (copy_tree_r): Handle STATEMENT_LIST.
1114
11152011-05-05  Julian Brown  <julian@codesourcery.com>
1116
1117	* config/arm/neon.md (vec_set<mode>_internal): Fix misplaced
1118	parenthesis in D-register case.
1119
11202011-05-05  Ira Rosen  <ira.rosen@linaro.org>
1121
1122	Backport from mainline:
1123	2011-04-18  Ulrich Weigand  <ulrich.weigand@linaro.org>
1124		    Ira Rosen  <ira.rosen@linaro.org>
1125
1126	PR target/48252
1127	* config/arm/arm.c (neon_emit_pair_result_insn): Swap arguments
1128	to match neon_vzip/vuzp/vtrn_internal.
1129	* config/arm/neon.md (neon_vtrn<mode>_internal): Make both
1130	outputs explicitly dependent on both inputs.
1131	(neon_vzip<mode>_internal, neon_vuzp<mode>_internal): Likewise.
1132
11332011-05-04  Uros Bizjak  <ubizjak@gmail.com>
1134
1135	Backport from mainline
1136	2011-04-21  Uros Bizjak  <ubizjak@gmail.com>
1137
1138	PR target/48708
1139	* config/i386/i386.c (ix86_expand_vector_set) <V2DImode>: Generate
1140	vec_extract and vec_concat for non-SSE4_1 targets.
1141
11422011-05-04  Uros Bizjak  <ubizjak@gmail.com>
1143
1144	* config/i386/i386.md (*movdi_internal_rex64) <TYPE_SSEMOV>:
1145	Use %v prefix in insn mnemonic to handle TARGET_AVX.
1146	(*movdi_internal): Use "maybe_vex" instead of "vex" in "prefix"
1147	attribute calculation.
1148	(*movdf_internal): Output AVX mnemonics.  Add "prefix" attribute.
1149	* config/i386/sse.md (*sse2_storeq_rex64): Do not emit %v prefix
1150	for mov{q} mnemonic.
1151	(*vec_extractv2di_1_rex64_avx): Ditto.
1152	(*vec_concatv2di_rex64_sse4_1): Use %vmovd for reg<->xmm moves.
1153	(*vec_concatv2di_rex64_sse): Use movd for reg<->xmm moves.
1154	* config/i386/mmx.md (*mov<mode>_internal_rex64): Ditto.
1155
11562011-05-03  Uros Bizjak  <ubizjak@gmail.com>
1157	    Jakub Jelinek  <jakub@redhat.com>
1158
1159	PR target/48774
1160	* config/i386/i386.c (ix86_match_ccmode): For CC{A,C,O,S}mode
1161	only succeed if req_mode is the same as set_mode.
1162
11632011-05-03  Jakub Jelinek  <jakub@redhat.com>
1164
1165	Backport from mainline
1166	2011-04-30  Jakub Jelinek  <jakub@redhat.com>
1167
1168	PR tree-optimization/48809
1169	* tree-switch-conversion.c (build_arrays): Compute tidx in unsigned
1170	type.
1171	(gen_inbound_check): Don't compute index_expr - range_min in utype
1172	again, instead reuse SSA_NAME initialized in build_arrays.
1173	Remove two useless gsi_for_stmt calls.
1174
1175	2011-04-28  Jakub Jelinek  <jakub@redhat.com>
1176
1177	PR middle-end/48597
1178	* final.c (final_scan_insn): Call dwarf2out_frame_debug even for
1179	inline asm.
1180
1181	2011-04-27  Jakub Jelinek  <jakub@redhat.com>
1182
1183	PR c/48742
1184	* c-typeck.c (build_binary_op): Don't wrap arguments if
1185	int_operands is true.
1186
1187	2011-04-23  Jakub Jelinek  <jakub@redhat.com>
1188
1189	PR c/48685
1190	* fold-const.c (fold_convert_loc): Add NOP_EXPR when casting
1191	to VOID_TYPE even around MODIFY_EXPR.
1192
11932011-05-02  Ulrich Weigand  <ulrich.weigand@linaro.org>
1194
1195	PR middle-end/43085
1196	Backport from mainline:
1197
1198	2010-04-29  Bernd Schmidt  <bernds@codesourcery.com>
1199
1200	From Dominique d'Humieres  <dominiq@lps.ens.fr>
1201	PR bootstrap/43858
1202	* ifcvt.c (dead_or_predicable): Use df_simulate_find_defs to compute
1203	test_set.
1204
1205	2010-04-26  Bernd Schmidt  <bernds@codesourcery.com>
1206
1207	* df-problems.c (df_simulate_initialize_forwards): Set, don't clear,
1208	bits for artificial defs at the top of the block.
1209	* fwprop.c (single_def_use_enter_block): Don't call it.
1210
1211	2010-04-22  Bernd Schmidt  <bernds@codesourcery.com>
1212
1213	* ifcvt.c (dead_or_predicable): Use df_simulate_find_defs and
1214	df_simulate_find_noclobber_defs as appropriate.  Keep track of an
1215	extra set merge_set_noclobber, and use it to relax the final test
1216	slightly.
1217	* df.h (df_simulate_find_noclobber_defs): Declare.
1218	* df-problems.c (df_simulate_find_defs): Don't ignore partial or
1219	conditional defs.
1220	(df_simulate_find_noclobber_defs): New function.
1221
12222011-04-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1223
1224	PR target/48288
1225	* config/pa/predicates.md (ior_operand): Delete predicate.
1226	(cint_ior_operand, reg_or_cint_ior_operand): New predicates.
1227	* config/pa/pa.md (iordi3): Use reg_or_cint_ior_operand predicate in
1228	expander.  Use cint_ior_operand in unnamed insn.
1229	(iorsi3): Likewise.
1230	* config/pa/pa-protos.h (ior_operand): Delete declarations.
1231
12322011-04-28  Richard Guenther  <rguenther@suse.de>
1233
1234	* DEV-PHASE: Set back to prerelease.
1235	* BASE-VER: Bump to 4.5.4.
1236
12372011-04-28  Release Manager
1238
1239	* GCC 4.5.3 released.
1240
12412011-04-21  Richard Guenther  <rguenther@suse.de>
1242
1243	PR middle-end/48712
1244	Backport from 4.6 branch
1245	2011-03-07  Zdenek Dvorak  <ook@ucw.cz>
1246
1247	PR bootstrap/48000
1248	* cfgloopmanip.c (fix_bb_placements): Return immediately
1249	if FROM is BASE_LOOP's header.
1250
12512011-04-20  Richard Guenther  <rguenther@suse.de>
1252
1253	Backport from 4.6 branch
1254	2011-04-19  Bernd Schmidt  <bernds@codesourcery.com>
1255
1256	PR fortran/47976
1257	* reload1.c (inc_for_reload): Return void. All callers changed.
1258	(emit_input_reload_insns): Don't try to delete previous output
1259	reloads to a register, or record spill_reg_store for autoincs.
1260
12612011-04-19  Richard Guenther  <rguenther@suse.de>
1262
1263	Backported from 4.6 branch
1264	2011-03-29  Jakub Jelinek  <jakub@redhat.com>
1265
1266	PR preprocessor/48248
1267	* c-ppoutput.c (print): Add src_file field.
1268	(init_pp_output): Initialize it.
1269	(maybe_print_line): Don't optimize by adding up to 8 newlines
1270	if map->to_file and print.src_file are different file.
1271	(print_line): Update print.src_file.
1272
1273	2011-04-18  Richard Guenther  <rguenther@suse.de>
1274
1275	PR preprocessor/48248
1276	* c-ppoutput.c (maybe_print_line): Avoid changing -P behavior.
1277
12782011-04-19  Richard Guenther  <rguenther@suse.de>
1279
1280	PR tree-optimization/46188
1281	Backported from 4.6 branch
1282	2010-05-26  Jan Hubicka  <jh@suse.cz>
1283
1284	* cgraphunit.c (clone_of_p): Remove.
1285	(verify_cgraph_node): Do not verify clones.
1286	(cgraph_materialize_all_clones): Do no redirection here.
1287	* ipa-inline.c (inline_transform): Do redirection here.
1288
12892011-04-18  Eric Botcazou  <ebotcazou@adacore.com>
1290
1291	* dwarf2out.c (is_redundant_typedef): Add 'inline' to prototype.
1292
12932011-04-18  Richard Guenther  <rguenther@suse.de>
1294
1295	Backported from 4.6 branch
1296	2011-01-19  Jakub Jelinek  <jakub@redhat.com>
1297
1298	PR tree-optimization/47290
1299	* tree-eh.c (infinite_empty_loop_p): New function.
1300	(cleanup_empty_eh): Use it.
1301
1302	2010-05-29  Jan Hubicka  <jh@suse.cz>
1303
1304	PR tree-optimization/46364
1305	* cgraphunit.c (cgraph_materialize_clone): Only remove calles, refs
1306	and body;
1307	not the whole node for masters of materialized clones.
1308
13092011-04-18  Richard Guenther  <rguenther@suse.de>
1310
1311	Backported from 4.6 branch
1312	2011-03-05  Zdenek Dvorak  <ook@ucw.cz>
1313
1314	PR rtl-optimization/47899
1315	* cfgloopmanip.c (fix_bb_placements): Fix first argument
1316	to flow_loop_nested_p when moving the loop upward.
1317
1318	2011-03-15  Richard Guenther  <rguenther@suse.de>
1319
1320	PR middle-end/48031
1321	* fold-const.c (fold_indirect_ref_1): Do not create new variable-sized
1322	or variable-indexed array accesses when in gimple form.
1323
13242011-04-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1325
1326	* config/pa/pa.h (REGISTER_MOVE_COST): Increase to 18 cost of
1327	move from floating point to shift amount register.
1328
1329	Backport from mainline:
1330	2011-04-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1331
1332	PR target/48366
1333	* config/pa/pa.c (emit_move_sequence): Remove secondary reload
1334	support for floating point to shift amount amount register copies.
1335	(pa_secondary_reload): Return GENERAL_REGS for floating point/shift
1336	amount register copies.
1337	* config/pa/pa32-regs.h (HARD_REGNO_MODE_OK): For shift amount
1338	register, return false if mode isn't a scalar integer mode.
1339	* config/pa/pa64-regs.h (HARD_REGNO_MODE_OK): Likewise.
1340
13412011-04-16  Jakub Jelinek  <jakub@redhat.com>
1342
1343	Backported from 4.6 branch
1344	2011-04-15  Jakub Jelinek  <jakub@redhat.com>
1345
1346	PR target/48605
1347	* config/i386/sse.md (avx_insertps, sse4_1_insertps): If operands[2]
1348	is a MEM, offset it as needed based on top 2 bits in operands[3],
1349	change MEM mode to SFmode and mask those 2 bits away from operands[3].
1350
13512011-04-13  Nick Clifton  <nickc@redhat.com>
1352
1353	* config/rx/rx.md (movmemsi): Do not use this pattern when
1354	volatile pointers are involved.
1355
13562011-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1357
1358	Backport from mainline:
1359	2011-02-11  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1360
1361	PR testsuite/47400
1362	* doc/sourcebuild.texi (Require Support): Document
1363	dg-require-ascii-locale.
1364
13652011-04-12  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
1366
1367	Backport from mainline:
1368	2011-04-12  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
1369	PR target/48090
1370	* config/arm/arm.md (*arm_negdi2): Fix early clobber constraints.
1371
13722011-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1373
1374	Backport from mainline:
1375	2011-04-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1376
1377	* config/alpha/osf.h (MAX_OFILE_ALIGNMENT): Define.
1378
13792011-04-09  Duncan Sands  <baldrick@free.fr>
1380
1381	* tree.c (array_type_nelts): Bail out if TYPE_MAX_VALUE not set.
1382
13832011-04-07  Uros Bizjak  <ubizjak@gmail.com>
1384
1385	* config/i386/sse.md (avx_cmps<ssemodesuffixf2c><mode>3): Add
1386	missing output register constraint.
1387	(*vec_concatv2sf_avx): Fix wrong register constraint in
1388	alternative 3 of operand 1.
1389	(*vec_set<mode>_0_avx): Avoid combining registers from different
1390	units in a single alternative.
1391	(*vec_set<mode>_0_sse4_1): Ditto.
1392	(*vec_set<mode>_0_sse2): Ditto.
1393	(vec_set<mode>_0): Ditto.
1394	(sse2_storehpd): Ditto.
1395	(sse2_loadhpd): Ditto.
1396	(sse4_1_insertps): Use nonimmediate_operand for operand 2.
1397	* config/i386/predicates.md (sse_comparison_operator): Do not
1398	define as special predicate.
1399
14002011-04-07  Jakub Jelinek  <jakub@redhat.com>
1401
1402	Backported from mainline
1403	2011-04-06  Jakub Jelinek  <jakub@redhat.com>
1404
1405	PR debug/48466
1406	* dwarf2out.c (based_loc_descr): If drap_reg is INVALID_REGNUM, use
1407	as base_reg whatever register reg has been eliminated to, instead
1408	of hardcoding STACK_POINTER_REGNUM.
1409
1410	2011-03-24  Jakub Jelinek  <jakub@redhat.com>
1411
1412	PR debug/48204
1413	* simplify-rtx.c (simplify_const_unary_operation): Call
1414	real_convert when changing mode class with FLOAT_EXTEND.
1415
1416	2011-03-17  Jakub Jelinek  <jakub@redhat.com>
1417
1418	PR rtl-optimization/48141
1419	* dse.c (record_store): If no positions are needed in an insn
1420	that cannot be deleted, at least unchain it from active_local_stores.
1421
1422	2011-03-03  Jakub Jelinek  <jakub@redhat.com>
1423
1424	PR c/47963
1425	* gimplify.c (omp_add_variable): Only call omp_notice_variable
1426	on TYPE_SIZE_UNIT if it is a DECL.
1427
1428	2011-02-19  Jakub Jelinek  <jakub@redhat.com>
1429
1430	PR c/47809
1431	* c-common.c (c_fully_fold_internal): Handle VIEW_CONVERT_EXPR.
1432
1433	2011-01-26  Jakub Jelinek  <jakub@redhat.com>
1434
1435	PR c/47473
1436	* c-lex.c (interpret_float): If CPP_N_IMAGINARY, ensure
1437	EXCESS_PRECISION_EXPR is created with COMPLEX_TYPE instead of
1438	REAL_TYPE.
1439
14402011-04-07  Jakub Jelinek  <jakub@redhat.com>
1441
1442	PR tree-optimization/47391
1443	* tree-ssa-ccp.c (get_symbol_constant_value): Don't optimize
1444	if sym is volatile.
1445
1446	Backported from mainline
1447	2010-07-01  Richard Guenther  <rguenther@suse.de>
1448
1449	* omp-low.c (scan_omp_1_op): Don't change type of INTEGER_CSTs
1450	directly.
1451
14522011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1453
1454	Backport from mainline
1455	2011-03-26  Andrey Belevantsev  <abel@ispras.ru>
1456
1457	PR rtl-optimization/48144
1458	* sel-sched-ir.c (merge_history_vect): Factor out from ...
1459	(merge_expr_data): ... here.
1460	(av_set_intersect): Rename to av_set_code_motion_filter.
1461	Update all callers.  Call merge_history_vect when an expression
1462	is found in both sets.
1463	* sel-sched-ir.h (av_set_code_motion_filter): Add prototype.
1464
14652011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1466
1467	Backport from mainline
1468	2011-01-13  Andrey Belevantsev  <abel@ispras.ru>
1469
1470	PR rtl-optimization/45352
1471	* sel-sched.c: Update copyright years.
1472	(reset_sched_cycles_in_current_ebb): Also recheck the DFA state
1473	in the advancing loop when we have issued issue_rate insns.
1474
1475	Backport from mainline
1476	2010-12-22  Andrey Belevantsev  <abel@ispras.ru>
1477
1478	PR rtl-optimization/45352
1479	PR rtl-optimization/46521
1480	PR rtl-optimization/46522
1481	* sel-sched.c (reset_sched_cycles_in_current_ebb): Recheck the DFA state
1482	on the last iteration of the advancing loop.
1483	(sel_sched_region_1): Propagate the rescheduling bit to the next block
1484	also for empty blocks.
1485
1486	Backport from mainline
1487	2010-11-08  Andrey Belevantsev  <abel@ispras.ru>
1488
1489	PR rtl-optimization/45352
1490	* sel-sched.c (find_best_expr): Do not set pneed_stall when
1491	the variable_issue hook is not implemented.
1492	(fill_insns): Remove dead variable stall_iterations.
1493	(init_seqno_1): Force EBB start for resetting sched cycles on any
1494	successor blocks of the rescheduled region.
1495	(sel_sched_region_1): Use bitmap_bit_p instead of bitmap_clear_bit.
1496	(reset_sched_cycles_in_current_ebb): Add debug printing.
1497	New variable issued_insns.  Advance state when we have issued
1498	issue_rate insns.
1499
15002011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1501
1502	Backport from mainline
1503	2010-12-24  Alexander Monakov  <amonakov@ispras.ru>
1504
1505	PR rtl-optimization/47036
1506	* sel-sched-ir.c (fallthru_bb_of_jump): Remove special support for
1507	unconditional jumps.
1508	* sel-sched.c (moveup_expr): Ditto.
1509
15102011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1511
1512	Backport from mainline
1513	2010-12-15  Alexander Monakov  <amonakov@ispras.ru>
1514
1515	PR rtl-optimization/46649
1516	* sel-sched-ir.c (purge_empty_blocks): Unconditionally skip the first
1517	basic block in the region.
1518
15192011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1520
1521	Backport from mainline
1522	2010-12-14  Alexander Monakov  <amonakov@ispras.ru>
1523
1524	PR rtl-optimization/46875
1525	* sched-vis.c (print_pattern): Dump "sequence" for ADDR_VECs.
1526	* sel-sched-ir.c (bb_has_removable_jump_to_p): Forbid table jumps.
1527
15282011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1529
1530	Backport from mainline
1531	2010-12-07  Andrey Belevantsev  <abel@ispras.ru>
1532	PR target/43603
1533	* haifa-sched.c (sched_create_recovery_edges): Update
1534	dominator info.
1535	* sel-sched-ir.c (maybe_tidy_empty_bb): Update dominator info
1536	after deleting an empty block.
1537	(tidy_control_flow): Also verify dominators.
1538	(sel_remove_bb): Update dominator info after removing a block.
1539	(sel_redirect_edge_and_branch_force): Assert that no unreachable
1540	blocks will be created. Update dominator info.
1541	(sel_redirect_edge_and_branch): Update dominator info when
1542	basic blocks do not become unreachable.
1543	(sel_remove_loop_preheader): Update dominator info.
1544
1545	2010-10-14  Andrey Belevantsev  <abel@ispras.ru>
1546
1547	* sel-sched-ir.c (maybe_tidy_empty_bb): Simplify comment.
1548	(tidy_control_flow): Tidy vertical space.
1549	(sel_remove_bb): New variable idx.  Use it to remember the basic
1550	block index before deleting the block.
1551	(sel_remove_empty_bb): Remove dead code, simplify and insert to ...
1552	(sel_merge_blocks): ... here.
1553	* sel-sched-ir.h (sel_remove_empty_bb): Remove prototype.
1554
15552011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1556
1557	Backport from mainline
1558	2010-12-03  Alexander Monakov  <amonakov@ispras.ru>
1559
1560	PR rtl-optimization/45354
1561	* sel-sched-ir.c (jump_leads_only_to_bb_p): Rename to ...
1562	(bb_has_removable_jump_to_p): This.  Update all callers. Make static.
1563	Allow BBs ending with a conditional jump.  Forbid EDGE_CROSSING jumps.
1564	* sel-sched-ir.h (jump_leads_only_to_bb_p): Delete prototype.
1565
15662011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1567
1568	Backport from mainline
1569	2010-11-25  Alexander Monakov  <amonakov@ispras.ru>
1570
1571	PR rtl-optimization/46585
1572	* sel-sched-ir.c (return_regset_to_pool): Verify that RS is not NULL.
1573	(vinsn_init): Skip computation of dependencies for local NOPs.
1574	(vinsn_delete): Don't try to free regsets for local NOPs.
1575	(setup_nop_and_exit_insns): Change definition of nop_pattern.
1576
15772011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1578
1579	Backport from mainline
1580	2010-11-25  Alexander Monakov  <amonakov@ispras.ru>
1581
1582	PR rtl-optimization/46602
1583	* sel-sched-ir.c (maybe_tidy_empty_bb): Move checking ...
1584	(tidy_control_flow): Here.
1585
15862011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1587
1588	Backport from mainline
1589	2010-11-22  Alexander Monakov  <amonakov@ispras.ru>
1590
1591	PR rtl-optimization/45652
1592	* alias.c (get_reg_base_value): New.
1593	* rtl.h (get_reg_base_value): Add prototype.
1594	* sel-sched.c (init_regs_for_mode): Use it.  Don't use registers with
1595	non-null REG_BASE_VALUE for renaming.
1596
15972011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1598
1599	Backport from mainline
1600	2010-11-18  Alexander Monakov  <amonakov@ispras.ru>
1601
1602	PR middle-end/46518
1603	* sel-sched-ir.c (init_expr): Use the correct type for
1604	target_available.
1605	* sel-sched.c (fill_vec_av_set): Use explicitly signed char type.
1606
16072011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1608
1609	Backport from mainline
1610	2010-11-12  Alexander Monakov  <amonakov@ispras.ru>
1611
1612	PR rtl-optimization/46204
1613	 sel-sched-ir.c (maybe_tidy_empty_bb): Remove second argument.
1614	pdate all callers.  Do not recompute topological order.  Adjust
1615	allthrough edges following a degenerate conditional jump.
1616
16172011-04-07  Andrey Belevantsev  <abel@ispras.ru>
1618
1619	Backport from mainline
1620	2010-10-14  Andrey Belevantsev  <abel@ispras.ru>
1621
1622	PR rtl-optimization/45570
1623	* sel-sched-ir.c (cfg_preds_1): When walking out of the region,
1624	assert that we are pipelining outer loops.  Allow returning
1625	zero predecessors.
1626
16272011-04-06  Joseph Myers  <joseph@codesourcery.com>
1628
1629	* gcov-io.c: Use GCC Runtime Library Exception.
1630
16312011-03-30  H.J. Lu  <hongjiu.lu@intel.com>
1632
1633	Backport from mainline
1634	2011-03-30  H.J. Lu  <hongjiu.lu@intel.com>
1635
1636	PR target/48349
1637	* config/i386/i386.h (REG_CLASS_CONTENTS): Fix a typo in
1638	FLOAT_SSE_REGS.
1639
16402011-03-29  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
1641
1642	* config/s390/s390.c (s390_preferred_reload_class): Return NO_REGS
1643	for invalid symbolic addresses.
1644	(s390_secondary_reload): Don't use s390_check_symref_alignment for
1645	larl operands.
1646
16472011-03-28  Richard Sandiford  <richard.sandiford@linaro.org>
1648
1649	PR target/47553
1650	* config/arm/predicates.md (neon_lane_number): Accept 0..15.
1651
16522011-03-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
1653
1654	PR other/48254
1655	* doc/invoke.texi (-fipa-struct-reorg): Fix typo.
1656
16572011-03-23  Jonathan Wakely  <jwakely.gcc@gmail.com>
1658
1659	PR other/48179
1660	PR other/48234
1661	* doc/extend.texi (Alignment): Move section to match order in TOC.
1662	* doc/invoke.texi (i386 and x86-64 Windows Options): Likewise.
1663
16642011-03-18  H.J. Lu  <hongjiu.lu@intel.com>
1665
1666	Backport from mainline
1667	2011-03-17  H.J. Lu  <hongjiu.lu@intel.com>
1668
1669	PR target/48171
1670	* config/i386/i386.opt: Add Save to -mavx and -mfma.
1671
16722011-03-16  Pat Haugen  <pthaugen@us.ibm.com>
1673
1674	PR target/47862
1675	* caller-save.c (insert_restore, insert_save): Use non-validate
1676	form of adjust_address.
1677
16782011-03-16  Nick Clifton  <nickc@redhat.com>
1679
1680	* config/rx/rx.h (JUMP_ALIGN): Define.
1681	(JUMP_ALIGN_MAX_SKIP, LABEL_ALIGN_AFTER_BARRIER, LOOP_ALIGN,
1682	(LABEL_ALIGN, LABEL_ALIGN_AFTER_BARRIER_MAX_SKIP,
1683	(LOOP_ALIGN_MAX_SKIP, LABEL_ALIGN_MAX_SKIP): Define.
1684	* config/rx/rx-protos.h (rx_align_for_label): Prototype.
1685	(rx_max_skip_for_label): Prototype.
1686	* config/rx/rx.md (abssi3): Use CC_ZSmode.
1687	(andis3): Fix timings.
1688	(peephole): Add peephole to combine zero- and sign- extending
1689	loads with arithmetic instructions.
1690	(bset): Fix timing.
1691	(bclr): Fix timing.
1692	* config/rx/rx.c (rx_is_legitimate_address): Add checks for QImode
1693	and HImode reg+int address.
1694	(rx_print_operand): Add support for %R.  Fix generation of .B and
1695	.W addressing modes.
1696	(rx_align_for_label): New function.
1697	(rx_max_skip_for_label): New function.
1698
16992011-03-10  Jason Merrill  <jason@redhat.com>
1700
1701	PR c++/48029
1702	* stor-layout.c (layout_type): Don't set structural equality
1703	on arrays of incomplete type.
1704	* tree.c (type_hash_eq): Handle comparing them properly.
1705
17062011-03-08  Richard Guenther  <rguenther@suse.de>
1707
1708	Backport from mainline
1709	2011-02-10  Richard Guenther  <rguenther@suse.de>
1710
1711	* tree-ssa-structalias.c (bitpos_of_field): Use BITS_PER_UNIT, not 8.
1712
1713	2010-10-18  Richard Guenther  <rguenther@suse.de>
1714
1715	PR tree-optimization/45967
1716	* tree-ssa-structalias.c (type_could_have_pointers): Remove.
1717	(could_have_pointers): Likewise.
1718	(handle_rhs_call, handle_const_call, handle_pure_call,
1719	find_func_aliases, intra_create_variable_infos): Remove calls to them.
1720	(struct fieldoff): Add must_have_pointers field.
1721	(type_must_have_pointers): New function.
1722	(field_must_have_pointers): Likewise.
1723	(push_fields_onto_fieldstack): Remove must_have_pointers_p argument.
1724	Adjust field merging.
1725	(create_function_info_for): May-have-pointers of varinfo is
1726	almost always true.
1727	(create_variable_info_for_1): Likewise.
1728
1729	2010-10-12  Richard Guenther  <rguenther@suse.de>
1730
1731	* tree-ssa-structalias.c (get_constraint_for_1): Constants
1732	only point to nonlocal, not anything.
1733
17342011-03-08  Richard Guenther  <rguenther@suse.de>
1735
1736	PR tree-optimization/47278
1737	* tree.h (DECL_REPLACEABLE_P): Remove.
1738	(decl_replaceable_p): Declare.
1739	(decl_binds_to_current_def_p): Likewise.
1740	* varasm.c (decl_replaceable_p): New function.
1741	(decl_binds_to_current_def_p): Likewise.
1742	* cgraph.c (cgraph_function_body_availability): Use decl_replaceable_p.
1743	* tree-inline.c (inlinable_function_p): Likewise.
1744
17452011-03-07  Pat Haugen  <pthaugen@us.ibm.com>
1746
1747	Backport from mainline
1748	2011-03-07  Pat Haugen  <pthaugen@us.ibm.com>
1749
1750	PR target/47862
1751	* config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Define.
1752
17532011-03-07  Mingjie Xing  <mingjie.xing@gmail.com>
1754
1755	* doc/cfg.texi: Remove "See" before @ref.
1756	* doc/invoke.texi: Likewise.
1757
17582011-03-03  Uros Bizjak  <ubizjak@gmail.com>
1759
1760	* config/i386/sse.md (*avx_pmaddubsw128): Fix mode of VEC_SELECT RTX.
1761	(ssse3_pmaddubsw128): Ditto.
1762	(ssse3_pmaddubsw): Ditto.
1763
17642011-03-03  Denis Chertykov  <chertykov@gmail.com>
1765
1766	Backport from mainline
1767	2011-02-22  Georg-Johann Lay  <avr@gjlay.de>
1768
1769	PR target/42240
1770	* config/avr/avr.c (avr_cannot_modify_jumps_p): New function.
1771	(TARGET_CANNOT_MODIFY_JUMPS_P): Define.
1772
17732011-03-03  Richard Guenther  <rguenther@suse.de>
1774
1775	* tree-vect-stmt.c (vectorizable_operation): Remove unused vars.
1776
17772011-03-02  Richard Guenther  <rguenther@suse.de>
1778
1779	Backport from mainline
1780	2011-02-07  Richard Guenther  <rguenther@suse.de>
1781
1782	PR tree-optimization/47615
1783	* tree-ssa-sccvn.h (run_scc_vn): Take a vn-walk mode argument.
1784	* tree-ssa-sccvn.c (default_vn_walk_kind): New global.
1785	(run_scc_vn): Initialize it.
1786	(visit_reference_op_load): Use it.
1787	* tree-ssa-pre.c (execute_pre): Use VN_WALK if in PRE.
1788
17892011-03-01  Richard Guenther  <rguenther@suse.de>
1790
1791	Backport from mainline
1792	2011-02-08  Richard Guenther  <rguenther@suse.de>
1793
1794	PR middle-end/47639
1795	* tree-vect-generic.c (expand_vector_operations_1): Update
1796	stmts here ...
1797	(expand_vector_operations): ... not here.  Cleanup EH info
1798	and the CFG if required.
1799
18002011-03-01  Richard Guenther  <rguenther@suse.de>
1801
1802	Backport from mainline
1803	2011-03-01  Richard Guenther  <rguenther@suse.de>
1804
1805	PR tree-optimization/47890
1806	* tree-vect-loop.c (get_initial_def_for_induction): Set
1807	related stmt properly.
1808
1809	2010-12-01  Richard Guenther  <rguenther@suse.de>
1810
1811	PR tree-optimization/46723
1812	* tree-vect-loop.c (get_initial_def_for_induction): Strip
1813	conversions from the induction evolution and apply it to
1814	the result instead.
1815	* tree-vect-stmts.c (vect_get_vec_def_for_operand): Handle
1816	assigns for induction defs.
1817
18182011-02-28  Georg-Johann Lay  <avr@gjlay.de>
1819
1820	PR target/45261
1821	* config/avr/avr.c (avr_option_override): Use error on bad options.
1822	(avr_help): New function.
1823	(TARGET_HELP): Define.
1824
18252011-02-26  Gerald Pfeifer  <gerald@pfeifer.com>
1826
1827	* doc/invoke.texi (ARC Options): Use CPU instead of cpu.
1828	(ARM Options): Ditto.
1829	(i386 and x86-64 Options): Ditto.
1830	(RX Options): Ditto.
1831	(SPARC Options): Ditto.
1832
18332011-02-26  Tijl Coosemans  <tijl@coosemans.org>
1834
1835	* config.gcc (i386-*-freebsd*): Make i486 the default arch on
1836	FreeBSD 6 and later.  Generally use cpu generic.
1837
18382011-02-25  Gerald Pfeifer  <gerald@pfeifer.com>
1839
1840	* doc/cpp.texi (Obsolete Features): Add background on the
1841	origin of assertions.
1842	Update copyright years.
1843
18442011-02-25  Andriy Gapon  <avg@freebsd.org>
1845
1846	PR target/45808
1847	* config/freebsd-spec.h (FBSD_LIB_SPEC): Handle the shared case.
1848	Update copyright years.
1849
18502011-02-21  Uros Bizjak  <ubizjak@gmail.com>
1851
1852	PR target/47840
1853	* config/i386/avxintrin.h (_mm256_insert_epi32): Use _mm_insert_epi32.
1854	(_mm256_insert_epi64): Use _mm_insert_epi64.
1855
18562011-02-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1857
1858	* config.gcc (hppa[12]*-*-hpux11*): Set extra_parts.
1859	* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
1860	pthread_mutex_unlock, pthread_once): Reinstate pthread stubs.
1861	* config/pa/t-pa-hpux11: Add rules to build pthread stubs.
1862	* config/pa/t-pa64: Likewise.
1863	* config/pa/pa-hpux11.h (LINK_GCC_C_SEQUENCE_SPEC): Define.
1864
18652011-02-17  Uros Bizjak  <ubizjak@gmail.com>
1866
1867	PR target/43653
1868	* config/i386/i386.c (ix86_secondary_reload): Handle SSE
1869	input reload with PLUS RTX.
1870
18712011-02-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1872
1873	PR pch/14940
1874	* config/alpha/host-osf.c: New file.
1875	* config/alpha/x-osf: New file.
1876	* config.host (alpha*-dec-osf*): Use it.
1877
18782011-02-15  Tijl Coosemans  <tijl@coosemans.org>
1879
1880	* config/i386/freebsd.h (SUBTARGET32_DEFAULT_CPU): Add.
1881	Update copyright years.
1882
18832011-02-11  Bernd Schmidt  <bernds@codesourcery.com>
1884
1885	PR rtl-optimization/47166
1886	* reload1.c (emit_reload_insns): Disable the spill_reg_store
1887	mechanism for PRE_MODIFY and POST_MODIFY.
1888	(inc_for_reload): For PRE_MODIFY, return the insn that sets the
1889	reloadreg.
1890
18912011-02-10  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1892
1893	Backport from mainline:
1894	2011-02-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1895
1896	* config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
1897	* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
1898	pthread_mutex_unlock): Remove.
1899	* config/pa/t-pa-hpux11: Remove rules to build pthread stubs.
1900	* config/pa/t-pa64: Likewise.
1901	* config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against
1902	shared libc if not linking against libpthread.
1903	* config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
1904
19052011-02-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
1906
1907	Backport from mainline:
1908	2011-02-02  Michael Meissner  <meissner@linux.vnet.ibm.com>
1909
1910	PR target/47272
1911	* doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions):
1912	Document using vector double with the load/store builtins, and
1913	that the load/store builtins always use Altivec instructions.
1914
1915	* config/rs6000/vector.md (vector_altivec_load_<mode>): New insns
1916	to use altivec memory instructions, even on VSX.
1917	(vector_altivec_store_<mode>): Ditto.
1918
1919	* config/rs6000/rs6000-protos.h (rs6000_address_for_altivec): New
1920	function.
1921
1922	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
1923	V2DF, V2DI support to load/store overloaded builtins.
1924
1925	* config/rs6000/rs6000-builtin.def (ALTIVEC_BUILTIN_*): Add
1926	altivec load/store builtins for V2DF/V2DI types.
1927
1928	* config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
1929	set avoid indexed addresses on power6 if -maltivec.
1930	(altivec_expand_ld_builtin): Add V2DF, V2DI support, use
1931	vector_altivec_load/vector_altivec_store builtins.
1932	(altivec_expand_st_builtin): Ditto.
1933	(altivec_expand_builtin): Add VSX memory builtins.
1934	(rs6000_init_builtins): Add V2DI types to internal types.
1935	(altivec_init_builtins): Add support for V2DF/V2DI altivec
1936	load/store builtins.
1937	(rs6000_address_for_altivec): Insure memory address is appropriate
1938	for Altivec.
1939
1940	* config/rs6000/vsx.md (vsx_load_<mode>): New expanders for
1941	vec_vsx_ld and vec_vsx_st.
1942	(vsx_store_<mode>): Ditto.
1943
1944	* config/rs6000/rs6000.h (RS6000_BTI_long_long): New type
1945	variables to hold long long types for VSX vector memory builtins.
1946	(RS6000_BTI_unsigned_long_long): Ditto.
1947	(long_long_integer_type_internal_node): Ditti.
1948	(long_long_unsigned_type_internal_node): Ditti.
1949
1950	* config/rs6000/altivec.md (UNSPEC_LVX): New UNSPEC.
1951	(altivec_lvx_<mode>): Make altivec_lvx use a mode iterator.
1952	(altivec_stvx_<mode>): Make altivec_stvx use a mode iterator.
1953
1954	* config/rs6000/altivec.h (vec_vsx_ld): Define VSX memory builtin
1955	short cuts.
1956	(vec_vsx_st): Ditto.
1957
1958	Backport from mainline:
1959	2011-02-01  Michael Meissner  <meissner@linux.vnet.ibm.com>
1960
1961	PR target/47580
1962	* config/rs6000/vsx.md (vsx_float<VSi><mode>2): Use
1963	gpc_reg_operand instead of vsx_register_operand to match rs6000.md
1964	generator functions.
1965	(vsx_floatuns<VSi><mode>2): Ditto.
1966	(vsx_fix_trunc<mode><VSi>2): Ditto.
1967	(vsx_fixuns_trunc<mode><VSi>2): Ditto.
1968
19692011-02-02  Nick Clifton  <nickc@redhat.com>
1970
1971	Import these patches from the mainline:
1972	2011-01-31  Nick Clifton  <nickc@redhat.com>
1973
1974	* config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
1975	registers inside interrupt handlers if the handler is not a leaf
1976	function.
1977
1978	2011-01-25  Nick Clifton  <nickc@redhat.com>
1979
1980	* config/rx/rx.h (LIBCALL_VALUE): Do not promote complex types.
1981	* config/rx/rx.c (rx_function_value): Likewise.
1982	(rx_promote_function_mode): Likewise.
1983	(gen_safe_add): Place an outsized immediate value inside an UNSPEC
1984	in order to make it legitimate.
1985	* config/rx/rx.md (adddi3_internal): If the second operand is a
1986	MEM make sure that the first operand is the same as the result
1987	register.
1988	(addsi3_unspec): Delete.
1989	(subdi3): Do not accept immediate operands.
1990	(subdi3_internal): Likewise.
1991
1992	2011-01-24  Richard Henderson  <rth@redhat.com>
1993
1994	* config/rx/predicates.md (rx_fp_comparison_operator): Don't accept
1995	compound unordered comparisons.
1996	* config/rx/rx.c (rx_split_fp_compare): Remove.
1997	* config/rx/rx-protos.h: Update.
1998	* config/rx/rx.md (gcc_conds, rx_conds): Remove.
1999	(cbranchsf4): Don't call rx_split_fp_compare.
2000	(*cbranchsf4): Use rx_split_cbranch.
2001	(*cmpsf): Don't accept "i" constraint.
2002	(*conditional_branch): Only valid after reload.
2003	(cstoresf4): Merge expander with insn.  Don't call
2004	rx_split_fp_compare.
2005
2006	2011-01-22  Nick Clifton  <nickc@redhat.com>
2007
2008	* config/rx/rx.md (cstoresf4): Pass comparison operator to
2009	rx_split_fp_compare.
2010
2011	2011-01-22  Nick Clifton  <nickc@redhat.com>
2012
2013	* config/rx/rx.md (UNSPEC_CONST): New.
2014	(deallocate_and_return): Wrap the amount popped off the stack in
2015	an UNSPEC_CONST in order to stop it being rejected by
2016	-mmax-constant-size.
2017	(pop_and_return): Add a "(return)" rtx.
2018	(call): Drop the immediate operand.
2019	(call_internal): Likewise.
2020	(call_value): Likewise.
2021	(call_value_internal): Likewise.
2022	(sibcall_internal): Likewise.
2023	(sibcall_value_internal): Likewise.
2024	(sibcall): Likewise.  Generate an explicit call using
2025	sibcall_internal.
2026	(sibcall_value): Likewise.
2027	(mov<>): FAIL if a constant operand is not legitimate.
2028	(addsi3_unpsec): New pattern.
2029
2030	* config/rx/rx.c (rx_print_operand_address): Handle UNPSEC
2031	CONSTs.
2032	(ok_for_max_constant): New function.
2033	(gen_safe_add): New function.
2034	(rx_expand_prologue): Use gen_safe_add.
2035	(rx_expand_epilogue): Likewise.
2036	(rx_is_legitimate_constant): Use ok_for_max_constant.  Handle
2037	UNSPEC CONSTs.
2038
2039	2011-01-17  Richard Henderson  <rth@redhat.com>
2040
2041	* config/rx/predicates.md (rx_constshift_operand): Use match_test.
2042	(rx_restricted_mem_operand): New.
2043	(rx_shift_operand): Use register_operand.
2044	(rx_source_operand, rx_compare_operand): Likewise.
2045	* config/rx/rx.md (addsi3_flags): New expander.
2046	(adddi3): Rewrite as expander.
2047	(adc_internal, *adc_flags, adddi3_internal): New patterns.
2048	(subsi3_flags): New expander.
2049	(subdi3): Rewrite as expander.
2050	(sbb_internal, *sbb_flags, subdi3_internal): New patterns.
2051
2052	* config/rx/rx.c (RX_BUILTIN_SAT): Remove.
2053	(rx_init_builtins): Remove sat builtin.
2054	(rx_expand_builtin): Likewise.
2055	* config/rx/rx.md (ssaddsi3): New.
2056	(*sat): Rename from sat.  Represent the CC_REG input.
2057
2058	* config/rx/predicates.md (rshift_operator): New.
2059	* config/rx/rx.c (rx_expand_insv): Remove.
2060	* config/rx/rx-protos.h: Update.
2061	* config/rx/rx.md (*bitset): Rename from bitset.  Swap the ashift
2062	operand to the canonical position.
2063	(*bitset_in_memory, *bitinvert, *bitinvert_in_memory): Similarly.
2064	(*bitclr, *bitclr_in_memory): Similarly.
2065	(*insv_imm, rx_insv_reg, *insv_cond, *bmcc, *insv_cond_lt): New.
2066	(insv): Retain the zero_extract in the expansion.
2067
2068	* config/rx/rx.md (bswapsi2): Use = not + for output reload.
2069	(bswaphi2, bitinvert, revw): Likewise.
2070
2071	* config/rx/rx.c (gen_rx_store_vector): Use VOIDmode for gen_rtx_SET.
2072	(gen_rx_rtsd_vector, gen_rx_popm_vector): Likewise.
2073	* config/rx/rx.md (pop_and_return): Use VOIDmode for SET.
2074	(stack_push, stack_pushm, stack_pop, stack_popm): Likewise.
2075	(bitset, bitset_in_memory): Likewise.
2076	(bitinvert, bitinvert_in_memory): Likewise.
2077	(bitclr, bitclr_in_memory): Likewise.
2078	(insv, sync_lock_test_and_setsi, movstr, rx_movstr): Likewise.
2079	(rx_strend, rx_cmpstrn): Likewise.
2080	(rx_setmem): Likewise.  Make the source BLKmode to match the dest.
2081	(bitop peep2 patterns): Remove.
2082
2083	* config/rx/rx.c (rx_match_ccmode): New.
2084	* config/rx/rx-protos.h: Update.
2085	* config/rx/rx.md (abssi2): Clobber, don't set flags.
2086	(addsi3, adddi3, andsi3, negsi2, one_cmplsi2, iorsi3): Likewise.
2087	(rotlsi3, rotrsi3, ashrsi3, lshrsi3, ashlsi3): Likewise.
2088	(subsi3, subdi3, xorsi3, addsf3, divsf3, mulsf3, subsf3): Likewise.
2089	(fix_truncsfsi2, floatsisf2): Likewise.
2090	(*abssi2_flags, *addsi3_flags, *andsi3_flags, *negsi2_flags): New.
2091	(*one_cmplsi2_flags, *iorsi3_flags, *rotlsi3_flags): New.
2092	(*rotrsi3_flags, *ashrsi3_flags, *lshrsi3_flags, *ashlsi3_flags): New.
2093	(*subsi3_flags, *xorsi3_flags): New.
2094
2095	* config/rx/rx.md (cstoresf4, *cstoresf4): New patterns.
2096
2097	* config/rx/rx.c (rx_print_operand): Remove workaround for
2098	unsplit comparison operations.
2099
2100	* config/rx/rx.md (movsicc): Split after reload.
2101	(*movsicc): Merge *movsieq and *movsine via match_operator.
2102	(*stcc): New pattern.
2103
2104	* config/rx/rx.c (rx_float_compare_mode): Remove.
2105	* config/rx/rx.h (rx_float_compare_mode): Remove.
2106	* config/rx/rx.md (cstoresi4): Split after reload.
2107	(*sccc): New pattern.
2108
2109	* config/rx/predicates.md (label_ref_operand): New.
2110	(rx_z_comparison_operator): New.
2111	(rx_zs_comparison_operator): New.
2112	(rx_fp_comparison_operator): New.
2113	* config/rx/rx.c (rx_print_operand) [B]: Examine comparison modes.
2114	Validate that the flags are set properly for the comparison.
2115	(rx_gen_cond_branch_template): Remove.
2116	(rx_cc_modes_compatible): Remove.
2117	(mode_from_flags): New.
2118	(flags_from_code): Rename from flags_needed_for_conditional.
2119	(rx_cc_modes_compatible): Re-write in terms of flags_from_mode.
2120	(rx_select_cc_mode): Likewise.
2121	(rx_split_fp_compare): New.
2122	(rx_split_cbranch): New.
2123	* config/rx/rx.md (most_cond, zs_cond): Remove iterators.
2124	(*cbranchsi4): Use match_operator and rx_split_cbranch.
2125	(*cbranchsf4): Similarly.
2126	(*cbranchsi4_tst): Rename from *tstbranchsi4_<code>.  Use
2127	match_operator and rx_split_cbranch.
2128	(*cbranchsi4_tst_ext): Combine *tstbranchsi4m_eq and
2129	tstbranchsi4m_ne.  Use match_operator and rx_split_cbranch.
2130	(*cmpsi): Rename from cmpsi.
2131	(*tstsi): Rename from tstsi.
2132	(*cmpsf): Rename from cmpsf; use CC_Fmode.
2133	(*conditional_branch): Rename from conditional_branch.
2134	(*reveresed_conditional_branch): Remove.
2135	(b<code>): Remove expander.
2136	* config/rx/rx-protos.h: Update.
2137
2138	* config/rx/rx.c (rx_compare_redundant): Remove.
2139	* config/rx/rx.md (cmpsi): Don't use it.
2140	* config/rx/rx-protos.h: Update.
2141
2142	* config/rx/rx-modes.def (CC_F): New mode.
2143	* config/rx/rx.c (rx_select_cc_mode): New.
2144	* config/rx/rx.h (SELECT_CC_MODE): Use it.
2145	* config/rx/rx-protos.h: Update.
2146
21472011-02-01  Richard Guenther  <rguenther@suse.de>
2148
2149	PR tree-optimization/47541
2150	* tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
2151	sure to have a field at offset zero.
2152
21532011-01-31  Nathan Froyd  <froydnj@codesourcery.com>
2154
2155	Backport from mainline:
2156	2010-12-30  Nathan Froyd  <froydnj@codesourcery.com>
2157
2158	PR target/44606
2159	* reload1.c (choose_reload_regs): Don't look for equivalences for
2160	output reloads of constant loads.
2161
21622011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
2163
2164	* doc/install.texi (hppa-hp-hpux10): Remove references to HP
2165	support sites.
2166
21672011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
2168
2169	* doc/install.texi: Update copyright years.
2170
21712011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
2172
2173	* doc/install.texi (Binaries): Remove outdated reference for
2174	Motorola 68HC11/68HC12 downloads.
2175
21762011-01-30  Gerald Pfeifer  <gerald@pfeifer.com>
2177
2178	* doc/extend.texi (Thread-Local): Adjust reference to Ulrich
2179	Drepper's paper.
2180
21812011-01-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2182
2183	Backport from mainline:
2184	2010-08-22  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2185
2186	PR boehm-gc/34544
2187	* gthr-posix.h (__gthread_active_init): Delete.
2188	(__gthread_active_p): Do activity check here.
2189	Don't include errno.h on hppa-hpux.  Update comment.
2190	* gthr-posix95.h (__gthread_active_init): Delete.
2191	(__gthread_active_p): Do activity check here.
2192	Don't include errno.h on hppa-hpux.  Update comment.
2193	* config.gcc (hppa[12]*-*-hpux11*): Define extra_parts.
2194	* config/pa/pa64-hpux.h (LIB_SPEC): When -static is specified, only
2195	add -lpthread when -mt or -pthread is specified.
2196	* config/pa/pa-hpux11.h (LIB_SPEC): likewise.
2197	(LINK_GCC_C_SEQUENCE_SPEC): Define.
2198	* config/pa/t-pa-hpux11 (LIBGCCSTUB_OBJS): Define.
2199	(stublib.c, pthread_default_stacksize_np-stub.o,
2200	pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o,
2201	$(T)libgcc_stub.a): Add methods.
2202	* config/pa/t-pa64 (LIBGCCSTUB_OBJS): Add pthread stubs.
2203	(stublib.c, pthread_default_stacksize_np-stub.o,
2204	pthread_mutex_lock-stub.o, pthread_mutex_unlock-stub.o): Add methods.
2205	* config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock,
2206	pthread_mutex_unlock): New stubs.
2207
22082011-01-26  Eric Botcazou  <ebotcazou@adacore.com>
2209
2210	PR rtl-optimization/44469
2211	* cfgcleanup.c (try_optimize_cfg): Iterate in CFG layout mode too
2212	after removing trivially dead basic blocks.
2213
22142011-01-25  Richard Guenther  <rguenther@suse.de>
2215
2216	PR tree-optimization/47411
2217	Backport from mainline
2218	2010-06-30  Michael Matz  <matz@suse.de>
2219
2220	PR bootstrap/44699
2221	* tree-vrp.c (vrp_finalize): Deal with changing num_ssa_names.
2222
22232011-01-21  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2224
2225	Backport from mainline.
2226	2010-09-08  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2227
2228	PR target/44392
2229	* config/arm/arm.md (bswapsi2): Handle condition correctly
2230	for armv6 and optimize_size.
2231
22322011-01-21  Richard Guenther  <rguenther@suse.de>
2233
2234	PR tree-optimization/47365
2235	* tree-ssa-sccvn.h (vn_lookup_kind): Declare.
2236	(vn_reference_lookup_pieces): Adjust.
2237	(vn_reference_lookup): Likewise.
2238	* tree-ssa-sccvn.c (vn_walk_kind): New static global.
2239	(vn_reference_lookup_3): Only look through kills if in
2240	VN_WALKREWRITE mode.
2241	(vn_reference_lookup_pieces): Adjust.
2242	(vn_reference_lookup): Likewise.
2243	(visit_reference_op_load): Likewise.
2244	(visit_reference_op_store): Likewise.
2245	* tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
2246	(compute_avail): Likewise.
2247	(eliminate): Likewise.
2248
22492011-01-20  Richard Guenther  <rguenther@suse.de>
2250
2251	PR tree-optimization/47167
2252	* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
2253	Revert previous change, only avoid enumeral type changes.
2254
22552011-01-17  H.J. Lu  <hongjiu.lu@intel.com>
2256
2257	Backport from mainline
2258	2011-01-17  H.J. Lu  <hongjiu.lu@intel.com>
2259
2260	PR target/47318
2261	* config/i386/avxintrin.h (_mm_maskload_pd): Change mask to
2262	__m128i.
2263	(_mm_maskstore_pd): Likewise.
2264	(_mm_maskload_ps): Likewise.
2265	(_mm_maskstore_ps): Likewise.
2266	(_mm256_maskload_pd): Change mask to __m256i.
2267	(_mm256_maskstore_pd): Likewise.
2268	(_mm256_maskload_ps): Likewise.
2269	(_mm256_maskstore_ps): Likewise.
2270
2271	* config/i386/i386-builtin-types.def: Updated.
2272	(ix86_expand_special_args_builtin): Likewise.
2273
2274	* config/i386/i386.c (bdesc_special_args): Update
2275	__builtin_ia32_maskloadpd, __builtin_ia32_maskloadps,
2276	__builtin_ia32_maskloadpd256, __builtin_ia32_maskloadps256,
2277	__builtin_ia32_maskstorepd, __builtin_ia32_maskstoreps,
2278	__builtin_ia32_maskstorepd256 and __builtin_ia32_maskstoreps256.
2279
2280	* config/i386/sse.md (avx_maskload<ssemodesuffix><avxmodesuffix>):
2281	Use <avxpermvecmode> on mask register.
2282	(avx_maskstore<ssemodesuffix><avxmodesuffix>): Likewise.
2283
22842011-01-17  Olivier Hainque  <hainque@adacore.com>
2285	    Michael Haubenwallner  <michael.haubenwallner@salomon.at>
2286	    Eric Botcazou  <ebotcazou@adacore.com>
2287
2288	PR target/46655
2289	* xcoffout.c (ASM_OUTPUT_LINE): Output line only if positive, and only
2290	if <= USHRT_MAX in 32-bit mode.
2291
22922011-01-17  Richard Guenther  <rguenther@suse.de>
2293
2294	Backport from mainline
2295	PR tree-optimization/47286
2296	* tree-ssa-structalias.c (new_var_info): Register variables
2297	are global.
2298
2299	PR tree-optimization/44592
2300	* tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Copy
2301	from trunk.
2302
23032011-01-16  Jakub Jelinek  <jakub@redhat.com>
2304
2305	Backport from mainline
2306	2011-01-07  Jakub Jelinek  <jakub@redhat.com>
2307
2308	PR target/47201
2309	* config/i386/i386.c (ix86_delegitimize_address): If
2310	simplify_gen_subreg fails, return orig_x.
2311
2312	2011-01-06  Jakub Jelinek  <jakub@redhat.com>
2313
2314	PR c/47150
2315	* c-convert.c (convert): When converting a complex expression
2316	other than COMPLEX_EXPR to a different complex type, ensure
2317	c_save_expr is called instead of save_expr, unless in_late_binary_op.
2318	* c-typeck.c (convert_for_assignment): Set in_late_binary_op also
2319	when converting COMPLEX_TYPE.
2320
2321	2010-12-21  Jakub Jelinek  <jakub@redhat.com>
2322
2323	PR target/46880
2324	* config/i386/sse.md (sse2_loadlpd, sse2_movsd): Fix shufpd source
2325	operand.
2326
2327	PR middle-end/45852
2328	* expr.c (store_expr): Ignore alt_rtl if equal to target,
2329	but has side-effects.
2330
2331	2010-12-16  Jakub Jelinek  <jakub@redhat.com>
2332
2333	PR tree-optimization/43655
2334	* tree-ssa-ter.c (is_replaceable_p): Don't use
2335	gimple_references_memory_p for -O0, instead check for load
2336	by looking at rhs.
2337
2338	PR debug/46893
2339	* cfgexpand.c (expand_debug_expr): If GET_MODE (op0) is VOIDmode,
2340	use TYPE_MODE (TREE_TYPE (tem)) instead of mode1.
2341
2342	2010-12-10  Jakub Jelinek  <jakub@redhat.com>
2343
2344	PR rtl-optimization/46804
2345	* regmove.c (optimize_reg_copy_3): Look for REG_EQUAL note
2346	on the setter of src_reg rather than on insn.  If it is
2347	equal to the setter's original SET_SRC, replace it with its
2348	zero or sign extension instead of dropping it.
2349
2350	PR rtl-optimization/46865
2351	* rtl.c (rtx_equal_p_cb, rtx_equal_p): For last operand of
2352	ASM_OPERANDS and ASM_INPUT if integers are different,
2353	call locator_eq.
2354	* jump.c (rtx_renumbered_equal_p): Likewise.
2355
2356	PR tree-optimization/46864
2357	* tree-ssa-loop-im.c (loop_suitable_for_sm): Return false even
2358	when there are EDGE_EH exit edges.
2359
2360	2010-12-09  Jakub Jelinek  <jakub@redhat.com>
2361
2362	PR target/41082
2363	* config/rs6000/rs6000.c (rs6000_expand_vector_extract): Use stvx
2364	instead of stve*x.
2365	(altivec_expand_stv_builtin): For op0 use mode of operand 1 instead
2366	of operand 0.
2367	* config/rs6000/altivec.md (VI_scalar): New mode attr.
2368	(altivec_stve<VI_char>x, *altivec_stvesfx): Use scalar instead of
2369	vector mode for operand 0, put operand 1 into UNSPEC.
2370
23712011-01-13  Nick Clifton  <nickc@redhat.com>
2372
2373	Import this fix from the mainline:
2374	2010-10-19  Nick Clifton  <nickc@redhat.com>
2375
2376	* config/rx/rx.c (rx_function_value): Small integer types are
2377	promoted to SImode.
2378	(rx_promote_function_mode): New function.
2379	(TARGET_PROMOTE_FUNCTION_MODE): Define.
2380
23812011-01-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2382
2383	Backport from mainline:
2384	2011-01-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2385
2386	PR target/43309
2387	* config/i386/i386.c (legitimize_tls_address)
2388	<TLS_MODEL_INITIAL_EXEC>: Handle TARGET_64BIT && TARGET_SUN_TLS.
2389	* config/i386/i386.md (UNSPEC_TLS_IE_SUN): Declare.
2390	(tls_initial_exec_64_sun): New pattern.
2391
23922011-01-03  Eric Botcazou  <ebotcazou@adacore.com>
2393
2394	Backport from mainline
2395	2010-12-30  Eric Botcazou  <ebotcazou@adacore.com>
2396
2397	PR target/47038
2398	* config/sparc/sparc.c (sparc_file_end): Call resolve_unique_section
2399	on the GOT helper if USE_HIDDEN_LINKONCE.
2400
2401	2010-12-02  Eric Botcazou  <ebotcazou@adacore.com>
2402
2403	PR target/46685
2404	* config/sparc/sparc.c (can_use_mov_pic_label_ref): New predicate.
2405	(sparc_expand_move): Call it to decide whether to emit the special
2406	mov{si,di}_pic_label_ref patterns.
2407	(sparc_legitimize_pic_address): Call it to decide whether to emit
2408	the regular PIC sequence for labels.  Fix long line.
2409	(sparc_file_end): Set is_thunk for the PIC helper.
2410
24112010-12-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2412
2413	* config/pa/pa.md: Add ",*" condition to 64-bit add/subtract boolean
2414	patterns.
2415
24162010-12-27  Yao Qi  <yao@codesourcery.com>
2417
2418	Backport from mainline:
2419	2010-10-14  Yao Qi  <yao@codesourcery.com>
2420
2421	PR target/45447
2422	* config/arm/arm.c (arm_build_builtin_va_list): Assign
2423	va_list_name to TYPE_STUB_DECL (va_list_type).
2424
24252010-12-23  Sebastian Pop  <sebastian.pop@amd.com>
2426	    Richard Guenther  <rguenther@suse.de>
2427
2428	PR tree-optimization/46758
2429	* graphite-sese-to-poly.c (scan_tree_for_params_right_scev): Use
2430	tree_int_to_gmp instead of int_cst_value.
2431	(scan_tree_for_params_int): Same.
2432	(scan_tree_for_params): Same.
2433	(pdr_add_data_dimensions): Use ppl_set_inhomogeneous_tree.
2434
24352010-12-23  Sebastian Pop  <sebastian.pop@amd.com>
2436
2437	Backport from mainline
2438	Fix PR45758: reset scevs before Graphite.
2439	2010-09-24  Sebastian Pop  <sebastian.pop@amd.com>
2440
2441	PR tree-optimization/45552
2442	* graphite.c (graphite_initialize): Call scev_reset.
2443
24442010-12-23  Sebastian Pop  <sebastian.pop@amd.com>
2445
2446	PR tree-optimization/43023
2447	* tree-data-ref.c (mem_write_stride_of_same_size_as_unit_type_p):
2448	Removed.
2449	(stores_zero_from_loop): Call stmt_stores_zero.
2450	(stmt_with_adjacent_zero_store_dr_p): New.
2451	* tree-data-ref.h (stmt_with_adjacent_zero_store_dr_p): Declared.
2452	(stride_of_unit_type_p): New.
2453	* tree-loop-distribution.c (generate_memset_zero): Do not return a
2454	boolean.  Call gcc_assert on stride_of_unit_type_p.
2455	(generate_builtin): Call stmt_stores_zero.
2456	(rdg_flag_all_uses): Removed.
2457	(rdg_flag_similar_memory_accesses): Removed.
2458	(build_rdg_partition_for_component): Removed parameter
2459	other_stores.  Removed call to rdg_flag_similar_memory_accesses.
2460	(can_generate_builtin): New.
2461	(similar_memory_accesses): New.
2462	(fuse_partitions_with_similar_memory_accesses): New.
2463	(rdg_build_partitions): Call
2464	fuse_partitions_with_similar_memory_accesses.
2465
24662010-12-21  Martin Jambor  <mjambor@suse.cz>
2467
2468	Backport from mainline:
2469	2010-12-09  Martin Jambor  <mjambor@suse.cz>
2470
2471	PR middle-end/46734
2472	* tree-sra.c (splice_param_accesses): Check that there are not
2473	multiple ADDRESSABLE types.
2474
24752010-12-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2476
2477	Backport from mainline:
2478	2010-12-18  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2479
2480	PR target/46915
2481	* config/pa/pa.c (branch_to_delay_slot_p): Use next_active_insn instead
2482	of next_real_insn.  Search forward checking for both ASM_INPUT and
2483	ASM_OPERANDS asms until exit condition is found.
2484	(branch_needs_nop_p): Likewise.
2485	(use_skip_p): New function.
2486	(output_cbranch): Use use_skip_p.
2487	(output_bb, output_bvb): Likewise.
2488
24892010-12-19  Eric Botcazou  <ebotcazou@adacore.com>
2490
2491	PR target/46729
2492	* config/sparc/sparc.h (GLOBAL_OFFSET_TABLE_REGNUM): New macro.
2493	(PIC_OFFSET_TABLE_REGNUM): Rewrite in terms of above macro.
2494	* config/sparc/sparc.c (pic_helper_needed): Delete.
2495	(global_offset_table): Likewise.
2496	(pic_helper_symbol): Rename to...
2497	(got_helper_rtx): ...this.
2498	(global_offset_table_rtx): New global variable.
2499	(sparc_got_symbol): Likewise.
2500	(sparc_got): New static function.
2501	(check_pic): Use local variable and call sparc_got.
2502	(sparc_tls_symbol): Initialize to NULL_RTX.
2503	(sparc_tls_got): In non-PIC mode, reload the GOT register for Sun TLS
2504	and 32-bit ABI and copy the GOT symbol to a new register otherwise.
2505	(get_pc_thunk_name): Rename local variable.
2506	(gen_load_pcrel_sym): New wrapper around load_pcrel_sym{si,di}.
2507	(load_pic_register): Rename to...
2508	(load_got_register): ...this.  Adjust and call gen_load_pcrel_sym.
2509	(sparc_expand_prologue): Do not test flag_pic.
2510	(sparc_output_mi_thunk): Use pic_offset_table_rtx directly.
2511	(sparc_file_end): Test got_helper_rtx instead of pic_helper_needed.
2512	Rename local variable and do not call get_pc_thunk_name again.
2513	* config/sparc/sparc.md (load_pcrel_sym): Add operand #3.
2514
25152010-12-18  Alexandre Oliva  <aoliva@redhat.com>
2516
2517	PR debug/46756
2518	* jump.c (mark_all_labels): Skip debug insns.
2519
25202010-12-18  Alexandre Oliva  <aoliva@redhat.com>
2521
2522	PR debug/46782
2523	* cfgcleanup.c (try_forward_edges): Skip debug insns.
2524
25252010-12-16  Eric Botcazou  <ebotcazou@adacore.com>
2526
2527	* tree-ssa-sccvn.c (vn_reference_lookup_3): Always punt if the call to
2528	get_ref_base_and_extent returns -1 as the max size.
2529
25302010-12-16  Richard Guenther  <rguenther@suse.de>
2531
2532	* DEV-PHASE: Set back to prerelease.
2533	* BASE-VER: Bump to 4.5.3.
2534
25352010-12-16  Release Manager
2536
2537	* GCC 4.5.2 released.
2538
25392010-12-07  Jakub Jelinek  <jakub@redhat.com>
2540
2541	Backport from mainline
2542	2010-12-06  Jakub Jelinek  <jakub@redhat.com>
2543
2544	PR target/43897
2545	* config/ia64/ia64.c (rtx_needs_barrier): Handle asm CLOBBER
2546	as a store into that register.
2547
2548	PR rtl-optimization/46777
2549	* cfglayout.c (duplicate_insn_chain): Avoid duplicating
2550	also barrier after tablejump.
2551
2552	2010-11-24  Jakub Jelinek  <jakub@redhat.com>
2553
2554	PR rtl-optimization/46614
2555	* sched-deps.c (NON_FLUSH_JUMP_KIND, NON_FLUSH_JUMP_P): Define.
2556	 (deps_analyze_insn): Mark JUMP_INSNs in
2557	last_pending_memory_flush that weren't added through
2558	flush_pending_lists with NON_FLUSH_JUMP_KIND.
2559	(sched_analyze_2, sched_analyze_insn): Check NON_FLUSH_JUMP_P
2560	on INSN_LIST instead of JUMP_P check on its operand.
2561	* sched-rgn.c (concat_INSN_LIST): Copy over REG_NOTE_KIND.
2562
2563	PR middle-end/46629
2564	* cfgexpand.c (maybe_cleanup_end_of_block): Test NEXT_INSN (insn)
2565	instead of insn with any_condjump_p.
2566
2567	2010-11-23  Jakub Jelinek  <jakub@redhat.com>
2568
2569	PR middle-end/46499
2570	* cfgexpand.c (maybe_cleanup_end_of_block): Remove also BARRIERs
2571	following unconditional jumps.
2572
25732010-12-07  Sebastian Pop  <sebastian.pop@amd.com>
2574
2575	Backport from mainline:
2576	2010-05-07  Sebastian Pop  <sebastian.pop@amd.com>
2577
2578	PR tree-optimization/44676
2579	* graphite-sese-to-poly.c (loop_entry_phi_arg): Renamed
2580	phi_arg_in_outermost_loop.
2581	(remove_simple_copy_phi): Call phi_arg_in_outermost_loop.
2582	(remove_invariant_phi): Same.
2583
25842010-12-07  Jakub Jelinek  <jakub@redhat.com>
2585
2586	Backport from mainline
2587	2010-11-19  Jakub Jelinek  <jakub@redhat.com>
2588
2589	PR target/45870
2590	* dwarf2out.c (const_ok_for_output_1): Don't complain about
2591	non-delegitimized TLS UNSPECs.
2592
2593	2010-11-18  Jakub Jelinek  <jakub@redhat.com>
2594
2595	PR middle-end/46534
2596	* builtins.c (fold_builtin_printf): Don't copy and modify string
2597	before build_string_literal, instead modify what
2598	build_string_literal returned.
2599
2600	2010-11-17  Jakub Jelinek  <jakub@redhat.com>
2601
2602	PR rtl-optimization/46440
2603	* combine.c (update_cfg_for_uncondjump): When changing
2604	an indirect jump into unconditional jump, remove BARRIERs
2605	from bb's footer.
2606
2607	2010-11-16  Jakub Jelinek  <jakub@redhat.com>
2608
2609	PR c++/46401
2610	* c-common.c (warning_candidate_p): Don't track non-const calls
2611	or STRING_CSTs.
2612
26132010-12-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2614
2615	Backport from mainline:
2616	2010-07-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2617
2618	* doc/sourcebuild.texi (Add Options): Document tls.
2619
26202010-12-06  Richard Guenther  <rguenther@suse.de>
2621
2622	PR tree-optimization/46806
2623	* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Do not
2624	coalesce different types.
2625
26262010-12-05  Richard Guenther  <rguenther@suse.de>
2627	    Ira Rosen  <irar@il.ibm.com>
2628
2629	PR tree-optimization/46663
2630	* tree-vect-patterns.c (vect_recog_pow_pattern): Check that
2631	FUNCTION_DECL exists and that it's a builtin.
2632
26332010-12-03  Jason Merrill  <jason@redhat.com>
2634
2635	PR debug/46123
2636	* dwarf2out.c (gen_type_die_with_usage): Don't put local types in
2637	a declaration DIE.
2638
26392010-12-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2640
2641	Backport from mainline:
2642	2010-09-15  Olivier Hainque  <hainque@adacore.com>
2643		    Jose Ruiz  <ruiz@adacore.com>
2644
2645	* config/alpha/osf.h (MD_UNWIND_SUPPORT): Define.
2646	* config/alpha/osf-unwind.h: New file.
2647
26482010-12-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2649
2650	Backport from mainline:
2651	2010-11-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2652
2653	* config/mips/iris6.h [!IRIX_USING_GNU_LD]
2654	(SUPPORTS_INIT_PRIORITY): Define.
2655
26562010-12-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2657
2658	Backport from mainline:
2659	2010-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2660
2661	* configure.ac (*-*-irix6*): Disable set_have_as_tls.
2662	(*-*-osf*): Likewise.
2663	* configure: Regenerate.
2664
26652010-11-29  H.J. Lu  <hongjiu.lu@intel.com>
2666
2667	Backport from mainline
2668	PR middle-end/46651
2669	2010-07-22  Sebastian Pop  <sebastian.pop@amd.com>
2670
2671	* graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Use
2672	SSA_NAME_DEF_STMT only on SSA_NAMEs.
2673
26742010-11-29  Zdenek Dvorak  <rakdver@kam.uniff.cz>
2675
2676	PR tree-optimization/46675
2677	* tree-ssa-loop-niter.c (split_to_var_and_offset): Avoid overflow
2678	in offset calculation.
2679
26802010-11-29  Alexandre Oliva  <aoliva@redhat.com>
2681
2682	PR debug/46258
2683	* tree-cfg.c (replace_uses_by): Don't mark BBs as altered on
2684	debug stmts.
2685
26862010-11-22  Uros Bizjak  <ubizjak@gmail.com>
2687
2688	PR middle-end/43057
2689	* fold-const.c (pedantic_non_lvalue_loc): Unshare x before
2690	setting location.
2691
26922010-11-21  Richard Henderson  <rth@redhat.com>
2693
2694	PR rtl-optimization/46571
2695	* gcse.c (hash_scan_set): Use next_nonnote_nondebug_insn.
2696	(compute_hash_table_work): Use NONDEBUG_INSN_P.
2697
26982010-11-21  Eric Botcazou  <ebotcazou@adacore.com>
2699
2700	* config/mips/mips.c (machine_function): Rename load_label_length to
2701	load_label_num_insns.
2702	(mips_load_label_length): Rename to...
2703	(mips_load_label_num_insns): ...this.  Adjust to first renaming.
2704	(mips_adjust_insn_length): Adjust to second renaming.  Fix thinko.
2705
27062010-11-20  Eric Botcazou  <ebotcazou@adacore.com>
2707
2708	PR target/31100
2709	* config/sparc/sparc.h (ASM_OUTPUT_ALIGN_WITH_NOP): Move to...
2710	* config/sparc/sol2.h (ASM_OUTPUT_ALIGN_WITH_NOP): ...here.
2711	* config/sparc/sol2-gas.h (ASM_OUTPUT_ALIGN_WITH_NOP): Undefine.
2712
27132010-11-19  Joseph Myers  <joseph@codesourcery.com>
2714
2715	PR c/46547
2716	* c-common.c (in_late_binary_op): Define.
2717	(c_common_truthvalue_conversion): Check in_late_binary_op before
2718	calling c_save_expr.
2719	* c-common.h (in_late_binary_op): Declare.
2720	* c-tree.h (in_late_binary_op): Move to c-common.h.
2721	* c-typeck.c (in_late_binary_op): Move to c-common.c.
2722
27232010-11-17  Richard Guenther  <rguenther@suse.de>
2724
2725	PR tree-optimization/46498
2726	* tree-ssa-dce.c (perform_tree_ssa_dce): Compute dominator info.
2727
27282010-11-17  Alan Modra  <amodra@gmail.com>
2729
2730	PR target/45807
2731	* config/rs6000/aix.h (SETUP_FRAME_ADDRESSES): Delete.
2732	* config/rs6000/linux64.h (SETUP_FRAME_ADDRESSES): Delete.
2733	* config/rs6000/rs6000-protos.h (rs6000_aix_emit_builtin_unwind_init):
2734	Delete.
2735	* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init): Delete.
2736	(rs6000_emit_prologue): Don't just create frame save info for r2,
2737	actually save r2.
2738
27392010-11-17  Alan Modra  <amodra@gmail.com>
2740
2741	PR target/44266
2742	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
2743	emit_library_call machinery to set up __tls_get_addr calls.
2744
27452010-11-16  Eric Botcazou  <ebotcazou@adacore.com>
2746
2747	PR rtl-optimization/46315
2748	* rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
2749	* rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
2750	extracted from...
2751	* dce.c (delete_corresponding_reg_eq_notes): ...here.  Rename into...
2752	(remove_reg_equal_equiv_notes_for_defs): ...this.
2753	(delete_unmarked_insns): Adjust to above renaming.
2754	* ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
2755	referring to registers set in the insns being moved, if any.
2756
2757	* df-core.c (df_ref_dump): New function extracted from...
2758	(df_refs_chain_dump): ...here.  Call it.
2759	(df_regs_chain_dump): Likewise.
2760	* df-problems.c (df_chain_dump): Print 'e' for uses in notes.
2761	* df-scan.c (df_scan_start_dump): Likewise.  Fix long line.
2762
27632010-11-16  Richard Guenther  <rguenther@suse.de>
2764
2765	PR tree-optimization/44545
2766	* tree-ssa-reassoc.c (linearize_expr_tree): Possibly throwing
2767	statements are not reassociatable.
2768	(reassociate_bb): Likewise.
2769
27702010-11-15  Jakub Jelinek  <jakub@redhat.com>
2771
2772	PR tree-optimization/46491
2773	Backport from mainline
2774
2775	2010-05-14  Jan Hubicka  <jh@suse.cz>
2776	* ipa-pure-const.c (check_stmt): Do not use memory_identifier_string.
2777
27782010-11-12  Olivier Hainque  <hainque@adacore.com>
2779
2780	* config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Rewrite
2781	switch on insn codes as sequence of ifs.
2782
27832010-11-12  Alexander Monakov  <amonakov@ispras.ru>
2784
2785	Backport from mainline:
2786	2010-08-19  Andrey Belevantsev  <abel@ispras.ru>
2787
2788	PR rtl-optimization/44691
2789	* sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
2790	is not a register.
2791
27922010-11-12  Richard Guenther  <rguenther@suse.de>
2793
2794	Backport from mainline
2795	2010-11-09  Richard Guenther  <rguenther@suse.de>
2796
2797	PR tree-optimization/46355
2798	* tree-loop-distribution.c (tree_loop_distribution): Do not
2799	distribute loops without a single exit.
2800
2801	2010-11-02  Richard Guenther  <rguenther@suse.de>
2802
2803	PR tree-optimization/46177
2804	* tree-loop-distribution.c (prop_phis): Use
2805	mark_virtual_phi_result_for_renaming.
2806
2807	2010-11-09  Richard Guenther  <rguenther@suse.de>
2808
2809	PR tree-optimization/46177
2810	* tree-loop-distribution.c (prop_phis): Remove.
2811	(generate_builtin): Re-use the old loop exit edge to avoid
2812	needing to update PHI nodes.
2813
28142010-11-11  Jakub Jelinek  <jakub@redhat.com>
2815
2816	Backport from mainline
2817	2010-11-05  Jakub Jelinek  <jakub@redhat.com>
2818
2819	PR c/44772
2820	* c-decl.c (warn_cxx_compat_finish_struct): Don't call
2821	pointer_set_contains if DECL_NAME is NULL.
2822
2823	PR tree-optimization/46099
2824	* tree-parloops.c (take_address_of): Add GSI argument.  Return NULL
2825	if it is NULL and uid wasn't found in the hash table.  Just fold the
2826	result if it is NULL otherwise.  Insert other potentially needed
2827	stmts right before current stmt instead of on the entry edge.
2828	(struct elv_data): Add gsi and reset fields.
2829	(eliminate_local_variables_1): Adjust caller.  If take_address_of
2830	failed for debug stmt, set dta->reset and return.
2831	(eliminate_local_variables_stmt): Change STMT argument for GSI,
2832	pass GSI through to the callback, handle resetting of debug stmts.
2833	(eliminate_local_variables): Adjust caller.  Process debug stmts
2834	in second phase.
2835
2836	PR middle-end/43690
2837	* gimplify.c (gimplify_asm_expr): If a "m" input is a
2838	{pre,post}{in,de}crement, fail.
2839
2840	2010-11-03  Jakub Jelinek  <jakub@redhat.com>
2841
2842	PR tree-optimization/46165
2843	* tree-ssa-pre.c (eliminate): Return TODO_cleanup_cfg if changing
2844	a normal call into noreturn call.
2845
2846	PR tree-optimization/46107
2847	* cfgloopmanip.c (loop_version): Set irred_flag back into entry->flags
2848	if cfg_hook_duplicate_loop_to_header_edge failed.
2849
28502010-11-10  Uros Bizjak  <ubizjak@gmail.com>
2851
2852	PR middle-end/46419
2853	* config/i386/xmmintrin.h (_mm_cvtpi16_ps): Swap __hisi and __losi.
2854	(_mm_cvtpu16_ps): Ditto.
2855
28562010-11-09  Sebastian Pop  <sebastian.pop@amd.com>
2857
2858	PR tree-optimization/45314
2859	Backport of revision 163132.
2860	* graphite-sese-to-poly.c (rewrite_phi_out_of_ssa): Always insert out
2861	of SSA copies on edges except for loop->latch.
2862
28632010-11-09  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
2864
2865	PR rtl-optimization/46237
2866	* ira-conflicts.c (ira_build_conflicts): Record conflicts for call
2867	saved hard regs if they might get partially clobbered.
2868
28692010-11-06  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
2870
2871	PR debug/45939
2872	* var-tracking.c (emit_note_insn_var_location): Make sure that
2873	call related var location notes come before the normal ones.
2874
28752010-11-04  Uros Bizjak  <ubizjak@gmail.com>
2876
2877	Revert:
2878	2010-10-30  Uros Bizjak  <ubizjak@gmail.com>
2879
2880	PR middle-end/44569
2881	* lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
2882	determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
2883
28842010-11-04  Alan Modra  <amodra@gmail.com>
2885
2886	* config/rs6000/rs6000.c (rs6000_pic_labelno): Make static.
2887	(rs6000_emit_load_toc_table): Don't use rs6000_pic_labelno when
2888	TARGET_SECURE_PLT.
2889	* config/rs6000/sysv4.h (rs6000_pic_labelno): Don't declare.
2890	* config/rs6000/rs6000.md (load_toc_v4_PIC_3b): Use "b" constraint
2891	on input, "r" on output.
2892
28932010-11-02  Ira Rosen  <irar@il.ibm.com>
2894
2895	PR tree-optimization/45902
2896	* tree-vectorizer.h (enum stmt_vec_info_type): Add new value for shift.
2897	(vect_get_slp_defs): Add arguments.
2898	* tree-vect-stmts.c (cost_for_stmt): Handle shifts.
2899	(vect_get_vec_def_for_operand): Use operand's
2900	type to determine number of units in the created vector.
2901	(vect_get_vec_defs): Pass scalar operands to vect_get_slp_defs.
2902	(vectorizable_shift): New function.
2903	(vectorizable_operation): Move code that handles shifts to
2904	vectorizable_shift.
2905	(vectorizable_type_demotion): Pass scalar operands to
2906	vect_get_slp_defs.
2907	(vectorizable_type_promotion, vectorizable_store): Likewise.
2908	(vect_analyze_stmt): Call vectorizable_shift.
2909	(vect_transform_stmt): Likewise.
2910	* tree-vect-slp.c (vect_get_constant_vectors): Add new argument.
2911	Use it as the operand to create vectors except for stores.
2912	(vect_get_slp_defs): Add new arguments. Pass them to
2913	vect_get_constant_vectors.
2914
29152010-10-30  Uros Bizjak  <ubizjak@gmail.com>
2916
2917	PR middle-end/44569
2918	* lower-suberg.c (simplify_subreg_concatn): For VOIDmode elements,
2919	determine the mode of a subreg by GET_MODE_INNER of CONCATN RTX.
2920
29212010-10-30  Uros Bizjak  <ubizjak@gmail.com>
2922
2923	PR target/46153
2924	* config/i386/sse.md (sse_movhlps_exp): Use destination
2925	returned from ix86_fixup_binary_operands to expand insn.
2926	(sse_movlhps_exp): Ditto.
2927	(sse_loadhps_exp): Ditto.
2928	(sse_loadlps_exp): Ditto.
2929	(sse2_loadhpd_exp): Ditto.
2930	(sse2_loadlpd_exp): Ditto.
2931
29322010-10-29  Richard Henderson  <rth@redhat.com>
2933
2934	PR rtl-opt/46226
2935	* stmt.c (expand_asm_operands): Call do_pending_stack_adjust
2936	for asm goto.
2937
29382010-10-27  Eric Botcazou  <ebotcazou@adacore.com>
2939
2940	* config/sparc/sol2-unwind.h (sparc64_fallback_frame_state): Adjust
2941	for newer Solaris 10 release.
2942	(sparc_fallback_frame_state): Likewise.
2943
29442010-10-26  Ira Rosen  <irar@il.ibm.com>
2945
2946	PR tree-optimization/46167
2947	* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Check that
2948	there is basic block for the statement.
2949
29502010-10-24  Eric Botcazou  <ebotcazou@adacore.com>
2951
2952	* reg-stack.c (convert_regs_1): Return boolean value, true if the CFG
2953	has been modified.
2954	(convert_regs_2): Likewise.  Adjust calls to convert_regs_1.
2955	(convert_regs): Adjust calls to convert_regs_2.  Clean up the CFG if
2956	it has been modified.
2957
29582010-10-22  Uros Bizjak  <ubizjak@gmail.com>
2959
2960	PR target/46098
2961	* config/i386/sse.md (*avx_movup<avxmodesuffixf2c><avxmodesuffix>):
2962	Rename from avx_movup<avxmodesuffixf2c><avxmodesuffix>.
2963	(avx_movup<avxmodesuffixf2c><avxmodesuffix>): New expander.
2964	(*<sse>_movup<ssemodesuffixf2c>): Rename from
2965	<sse>_movup<ssemodesuffixf2c>.
2966	(<sse>_movup<ssemodesuffixf2c>): New expander.
2967	(*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>.
2968	(avx_movdqu<avxmodesuffix>): New expander.
2969	(*sse2_movdqu): Rename from sse2_movdqu.
2970	(sse2_movdqu): New expander.
2971
29722010-10-22  Uros Bizjak  <ubizjak@gmail.com>
2973
2974	PR target/45946
2975	* config/i386/i386.md (*pushti2): New insn pattern.
2976	(pushti2 splitter): New insn splitter.
2977
29782010-10-20  Vladimir Makarov  <vmakarov@redhat.com>
2979
2980	PR fortran/42169
2981	* ira-emit.c (store_can_be_removed_p): Return false instead of
2982	gcc_unreachable.
2983
29842010-10-20  Eric Botcazou  <ebotcazou@adacore.com>
2985
2986	* stor-layout.c (skip_simple_constant_arithmetic): New function.
2987	(self_referential_size): Use it instead of skip_simple_arithmetic.
2988
29892010-10-18  Jakub Jelinek  <jakub@redhat.com>
2990
2991	PR middle-end/46019
2992	* fold-const.c (fold_binary_loc): If integer_pow2p has
2993	TREE_INT_CST_LOW zero, look at TREE_INT_CST_HIGH.
2994
29952010-10-16  Eric Botcazou  <ebotcazou@adacore.com>
2996
2997	* gimplify.c (gimplify_type_sizes) <ARRAY_TYPE>: If the type is to be
2998	ignored for debug info purposes, do not clear the DECL_IGNORED_P flag
2999	on the bounds of its domain.
3000	* tree.h (DECL_IGNORED_P): Document effect on TYPE_DECL specifically.
3001
30022010-10-15  Joseph Myers  <joseph@codesourcery.com>
3003
3004	* doc/extend.texi (Variable Length): Don't refer to VLAs not
3005	conforming to C99.
3006
30072010-10-14  Joseph Myers  <joseph@codesourcery.com>
3008
3009	PR c/45969
3010	* c-typeck.c (build_binary_op): Don't try to compute a semantic
3011	type with excess precision for boolean operations.
3012
30132010-10-13  Richard Guenther  <rguenther@suse.de>
3014	    Joern Rennecke  <joern.rennecke@embecosm.com>
3015
3016	PR debug/44832
3017	* tree-ssa-live.c (mark_all_vars_used_1): Set TREE_USED for
3018	LABEL_DECL.
3019	(remove_unused_scope_block_p): Don't drop TREE_USED LABEL_DECLs
3020	unless they have DECL_IGNORED_P set.
3021
30222010-10-13  Richard Guenther  <rguenther@suse.de>
3023
3024	PR tree-optimization/45982
3025	* tree-ssa-structalias.c (make_constraints_to): New function.
3026	(make_constraint_to): Implement in terms of make_constraints_to.
3027	(find_func_aliases): Properly make return values of pure/const
3028	functions escape if they assign to sth that is not a pointer.
3029
30302010-10-11  Alexandre Oliva  <aoliva@redhat.com>
3031
3032	PR debug/45656
3033	* cse.c (cse_extended_basic_block): Preserve cc0 info across
3034	debug isnsn.  Skip them when searching for cc0 setter.
3035	(set_live_p): Skip debug insns when searching for cc0 user.
3036
30372010-10-09  Ralf Corsépius  <ralf.corsepius@rtems.org>
3038
3039	* config.gcc (bfin*-rtems*): Add newlib-stdint.h.
3040	* config.gcc (lm32*-rtems*): Add newlib-stdint.h.
3041
30422010-10-07  Richard Guenther  <rguenther@suse.de>
3043
3044	PR middle-end/45869
3045	* tree-cfg.c (verify_gimple_assign_binary): Allow vector shifts
3046	of pointers.
3047
30482010-10-07  Richard Guenther  <rguenther@suse.de>
3049
3050	Backport from mainline
3051	2010-09-07  Richard Guenther  <rguenther@suse.de>
3052
3053	PR middle-end/45569
3054	* tree-eh.c (operation_could_trap_helper_p): Neither COMPLEX_EXPR
3055	nor CONSTRUCTOR can trap.
3056	* tree-complex.c (update_complex_assignment): Update EH info.
3057
30582010-10-06  Jack Howarth  <howarth@bromo.med.uc.edu>
3059
3060	Backport from mainline
3061	2010-04-26  Jack Howarth  <howarth@bromo.med.uc.edu>
3062
3063	PR 43715
3064	* configure.ac: Pass -g for export_sym_check on darwin.
3065	Use "-undefined dynamic_lookup" on darwin.
3066	* configure: Regenerate.
3067
30682010-10-05  Ira Rosen  <irar@il.ibm.com>
3069
3070	PR tree-optimization/45752
3071	* tree-vect-slp.c (vect_get_mask_element): Remove static
3072	variables, make them function arguments.
3073	(vect_transform_slp_perm_load): Pass new arguments to
3074	vect_get_mask_element.
3075
30762010-10-04  Matthias Klose  <doko@ubuntu.com>
3077
3078	* config/sparc/t-linux64 (MULTILIB_OSDIRNAMES): Use ../lib32 as the
3079	multilib osdirname if it exists.
3080	* config/s390/t-linux64 (MULTILIB_OSDIRNAMES): Likewise.
3081
30822010-10-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3083
3084	PR target/45820
3085	* config/pa/pa.c (pa_secondary_reload): Handle symbolic operands
3086	earlier.
3087
30882010-10-01  Richard Guenther  <rguenther@suse.de>
3089
3090	PR tree-optimization/45854
3091	* tree-eh.c (cleanup_empty_eh): Avoid degenerate case.
3092
30932010-09-30  Jakub Jelinek  <jakub@redhat.com>
3094
3095	PR target/45843
3096	* config/i386/i386.c (ix86_gimplify_va_arg): Use
3097	INTVAL (XEXP (slot, 1)) as prev_size.
3098
30992010-09-29  Kai Tietz  <kai.tietz@onevision.com>
3100
3101	* config/i386/mingw32.h (TARGET_64BIT): replaced by
3102	TARGET_64BIT_DEFAULT in #if check.
3103
31042010-09-28  Richard Henderson  <rth@redhat.com>
3105
3106	* config/i386/cygming.h (ASM_OUTPUT_DWARF_OFFSET): Output 8 bytes
3107	when 8 bytes are requested.
3108
31092010-09-27  Richard Sandiford  <rdsandiford@googlemail.com>
3110
3111	Backport from mainline:
3112
3113	2010-05-19  James E. Wilson  <wilson@codesourcery.com>
3114
3115	PR target/43764
3116	* config/mips/mips.c (mips_call_expr_from_insn): New arg second_call.
3117	Set it.
3118	(mips_annotate_pic_calls): Pass new arg to mips_call_expr_from_insn.
3119	Use it.
3120
31212010-09-27  Richard Sandiford  <rdsandiford@googlemail.com>
3122
3123	PR rtl-optimization/43358
3124	* ira-lives.c (process_single_reg_class_operands): Adjust the costs
3125	of a single hard register, using simplify_subreg_regno to decide
3126	what that register should be.
3127
31282010-09-25  Eric Botcazou  <ebotcazou@adacore.com>
3129
3130	* tree-inline.c (copy_bb): Use GSI_CONTINUE_LINKING when inserting new
3131	statements because of the return slot optimization.
3132
31332010-09-24  Jakub Jelinek  <jakub@redhat.com>
3134
3135	Revert:
3136	2010-09-17  H.J. Lu  <hongjiu.lu@intel.com>
3137
3138	PR middle-end/45234
3139	* calls.c (expand_call): Make sure that all variable sized
3140	adjustments are multiple of preferred stack boundary after
3141	stack alignment.
3142
31432010-09-23  Eric Botcazou  <ebotcazou@adacore.com>
3144
3145	Backport from mainline
3146	2010-09-02  Olivier Hainque  <hainque@adacore.com>
3147
3148	PR middle-end/44763
3149	* ira-color.c (SORTGT): New macro, helper for qsort callbacks.
3150	(allocno_priority_compare_func): Use it instead of a straight
3151	difference computation over priorities.
3152
31532010-09-22  Eric Botcazou  <ebotcazou@adacore.com>
3154
3155	PR java/44095
3156	* config/sparc/linux.h (ASM_SPEC): Pass -K PIC if -findirect-dispatch
3157	is specified and the suffix of the file isn't ".c".
3158	* config/sparc/linux64.h (ASM_SPEC): Likewise.
3159
31602010-09-22  Eric Botcazou  <ebotcazou@adacore.com>
3161
3162	PR target/35664
3163	* config/sparc/constraints.md ('e'): Return NO_REGS if !TARGET_FPU.
3164	('f'): Likewise.
3165
31662010-09-21  Hans-Peter Nilsson  <hp@axis.com>
3167
3168	PR rtl-optimization/41085
3169	Backport from mainline
3170	2010-07-27  Bernd Schmidt  <bernds@codesourcery.com>
3171
3172	PR rtl-optimization/45051
3173	* reload1.c (delete_output_reload): Use refers_to_regno_p rather
3174	than reg_mentioned_p.
3175
31762010-09-21  Kai Tietz  <kai.tietz@onevision.com>
3177
3178	PR target/45694
3179	* config/i386/i386.c (ix86_expand_prologue): Save r10 in case that
3180	static chain-register is used for 64-bit.
3181
31822010-09-21  Jakub Jelinek  <jakub@redhat.com>
3183
3184	PR middle-end/45678
3185	* expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: If
3186	op0 isn't sufficiently aligned and there is movmisalignM
3187	insn for mode, use it to load op0 into a temporary register.
3188
3189	Backport from mainline
3190	2010-09-20  Jakub Jelinek  <jakub@redhat.com>
3191
3192	PR middle-end/45678
3193	* cfgexpand.c (expand_one_stack_var_at): Limit alignment to
3194	crtl->max_used_stack_slot_alignment.
3195
31962010-09-21  Richard Guenther  <rguenther@suse.de>
3197
3198	PR middle-end/45704
3199	* gimplify.c (gimplify_modify_expr_rhs): Preserve volatileness.
3200
32012010-09-20  Jakub Jelinek  <jakub@redhat.com>
3202
3203	PR rtl-optimization/45728
3204	* expr.c (expand_expr_real_1): If op0 isn't REG or MEM, try
3205	gen_lowpart_common first and if that fails, force_reg first
3206	before calling gen_lowpart.
3207
3208	PR rtl-optimization/45695
3209	* combine.c (try_combine): Don't try to swap the two patterns, if the
3210	chosen order is not possible, just give up.  For HAVE_cc0 targets,
3211	check if XVECEXP (newpat, 0, 0) doesn't use REGs or MEMs set by insns
3212	in between i2 and i3.
3213
32142010-09-20  Eric Botcazou  <ebotcazou@adacore.com>
3215
3216	PR rtl-optimization/42775
3217	* cfgrtl.c (rest_of_pass_free_cfg): Recompute notes if delay slot
3218	scheduling is enabled.
3219
32202010-09-20  H.J. Lu  <hongjiu.lu@intel.com>
3221
3222	Backport from mainline
3223	2010-09-17  H.J. Lu  <hongjiu.lu@intel.com>
3224
3225	PR middle-end/45234
3226	* calls.c (expand_call): Make sure that all variable sized
3227	adjustments are multiple of preferred stack boundary after
3228	stack alignment.
3229
32302010-09-20  Rafael Carre  <rafael.carre@gmail.com>
3231
3232	PR target/45726
3233	* arm.md (arm_movtas_ze): Only enable on machine with MOVT.
3234
32352010-09-20  Richard Guenther  <rguenther@suse.de>
3236
3237	PR tree-optimization/45623
3238	* tree-ssa-structalias.c (get_constraint_for_ptr_offset): Adjust.
3239	(get_constraint_for_component_ref): If computing a constraint
3240	for the rhs handle type punning through unions.
3241	(get_constraint_for_address_of): Adjust.
3242	(get_constraint_for_1): Likewise.
3243	(get_constraint_for): Likewise.
3244	(get_constraint_for_rhs): New function.
3245	(do_structure_copy): Adjust.
3246	(make_constraint_to): Likewise.
3247	(handle_const_call): Likewise.
3248	(find_func_aliases): Likewise.
3249
32502010-09-18  Richard Guenther  <rguenther@suse.de>
3251
3252	PR tree-optimization/45709
3253	* tree-inline.c (copy_phis_for_bb): Delay commit of edge
3254	insertions until after all PHI nodes of the block are processed.
3255
32562010-09-18  H.J. Lu  <hongjiu.lu@intel.com>
3257
3258	Backport from mainline
3259	2010-04-07  Dodji Seketeli  <dodji@redhat.com>
3260
3261	PR debug/43628
3262	* dwarf2out.c (modified_type_die): Ignore artificial typedefs.
3263
32642010-09-18  Richard Guenther  <rguenther@suse.de>
3265
3266	PR tree-optimization/45709
3267	* tree-inline.c (copy_phis_for_bb): Fixup new_edge when
3268	we splitted it.
3269
32702010-09-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3271
3272	Backport from mainline:
3273	2010-09-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3274
3275	* doc/sourcebuild.texi (Effective-Target Keywords): Document
3276	run_expensive_tests.
3277
32782010-09-15  Eric Botcazou  <ebotcazou@adacore.com>
3279
3280	PR rtl-optimization/45593
3281	* reorg.c (relax_delay_slots): Use emit_copy_of_insn_after to re-emit
3282	insns that were in delay slots as stand-alone insns.
3283
32842010-09-14  Tristan Gingold  <gingold@adacore.com>
3285
3286	* configure.ac (plugins): Fix typos.
3287	* configure: Regenerate.
3288
32892010-09-14  Jakub Jelinek  <jakub@redhat.com>
3290
3291	PR middle-end/45567
3292	* builtins.c (expand_builtin_interclass_mathfn, expand_builtin_cexpi,
3293	expand_builtin_powi): Remove subtarget argument, pass NULL_RTX instead.
3294	(expand_builtin): Adjust caller.
3295	(expand_builtin_unop): Only use subtarget if it has the right mode.
3296
3297	PR debug/45660
3298	* dwarf2out.c (gen_decl_die): Call gen_type_die for origin before
3299	gen_type_die for function/method return type.
3300
33012010-09-13  Hans-Peter Nilsson  <hp@axis.com>
3302
3303	PR rtl-optimization/41087
3304	* ifcvt.c (noce_get_condition): Don't allow conditions with
3305	side-effects.
3306
33072010-09-12  Alexander Monakov  <amonakov@ispras.ru>
3308
3309	Backport from mainline
3310	2010-09-06  Andrey Belevantsev  <abel@ispras.ru>
3311
3312	PR rtl-optimization/44919
3313	* sel-sched.c (move_cond_jump): Remove assert, check that
3314	the several blocks case can only happen with mutually exclusive
3315	insns instead.  Rewrite the movement code to support moving through
3316	several basic blocks.
3317
33182010-09-10  Jack Howarth  <howarth@bromo.med.uc.edu>
3319
3320	Backport from mainline
3321	2010-09-07  H.J. Lu  <hjl.tools@gmail.com>
3322		    Jack Howarth  <howarth@bromo.med.uc.edu>
3323
3324	PR target/36502
3325	PR target/42313
3326	PR target/44651
3327	* config/i386/darwin.h (STACK_BOUNDARY): Redefine as 128 for
3328	profiling or 64-bit MS_ABI and as BITS_PER_WORD otherwise.
3329	(PREFERRED_STACK_BOUNDARY): Replace STACK_BOUNDARY with 128 in
3330	MAX macro.
3331
33322010-09-09  Vladimir Makarov  <vmakarov@redhat.com>
3333
3334	PR middle-end/45312
3335	* reload1.c (merge_assigned_reloads): Remove.
3336	(reload_as_needed): Don't call it.
3337
33382010-09-09  Matthias Klose  <doko@ubuntu.com>
3339
3340	PR bootstrap/43847
3341	* configure.ac (--enable-plugin): Enhance for cross builds.
3342	* configure: Regenerate.
3343
33442010-09-09  Vladimir Makarov  <vmakarov@redhat.com>
3345
3346	PR middle-end/44554
3347	* ira.c (ira): Switch off sharing spill slots if setjmp is called.
3348
33492010-09-08  Vladimir Makarov  <vmakarov@redhat.com>
3350
3351	PR middle-end/40386
3352	* ira.c (pseudo_for_reload_consideration_p): Don't use
3353	flag_ira_share_spill_slots.
3354
33552010-09-09  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
3356
3357	* config/s390/s390.c (legitimate_reload_constant_p): Accept floating-
3358	point zero operands that fit into a single GPR.
3359	(s390_preferred_reload_class): Ensure we only return general-purpose
3360	register classes.
3361	* config/s390/s390.md ("*mov<mode>_64dfp"): Use lghi to load
3362	floating-point zero operands into GPRs.
3363	("*mov<mode>_64"): Likewise.
3364	("mov<mode>"): Likewise using lhi.
3365
33662010-09-09  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
3367
3368	* config/s390/s390.c (s390_symref_operand_p): Return false for
3369	literal pool references.
3370	(s390_check_qrst_address): Update caller.
3371
33722010-09-08  Martin Jambor  <mjambor@suse.cz>
3373
3374	PR other/45443
3375	* doc/invoke.texi: Add -fipa-cp-clone to list of switches turned on
3376	at -O3.
3377
33782010-09-03  Jakub Jelinek  <jakub@redhat.com>
3379
3380	PR middle-end/45484
3381	* dwarf2out.c (flush_queued_reg_saves): Rename to...
3382	(dwarf2out_flush_queued_reg_saves): ... this.  No longer static.
3383	(dwarf2out_frame_debug): Adjust callers.
3384	* dwarf2out.h (dwarf2out_flush_queued_reg_saves): New prototype.
3385	* config/i386/i386.c (output_set_got): Call it.
3386
3387	PR debug/45500
3388	* dwarf2out.c (rtl_for_decl_init): Give up for all generic vectors,
3389	not just generic vectors with BLKmode.
3390
33912010-09-02  Ian Bolton  <ian.bolton@arm.com>
3392
3393	Backport from mainline
3394	2010-09-01  Ian Bolton  <ian.bolton@arm.com>
3395
3396	* Makefile.in (tree-switch-conversion.o): Update dependencies.
3397
3398	2010-08-19  Ian Bolton  <ian.bolton@arm.com>
3399
3400	PR target/45070
3401	* config/arm/arm.c (arm_output_epilogue): Ensure that return
3402	value of size 1-3 is handled correctly.
3403
3404	2010-08-19  Ian Bolton  <ian.bolton@arm.com>
3405
3406	* tree-switch-conversion.c (gen_inbound_check): Ensure that the
3407	type for the conditional has wide enough range.
3408
3409	2010-08-07  Marcus Shawcroft  <marcus.shawcroft@arm.com>
3410
3411	* config/arm/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
3412	'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
3413	(SUBWORD_BOOL_CAS): Likewise.
3414	(SUBWORD_SYNC_OP): Likewise.
3415	(SUBWORD_TEST_AND_SET): Likewise.
3416	(FETCH_AND_OP_WORD): Parenthesise INF_OP
3417	(SUBWORD_SYNC_OP): Likewise.
3418	(OP_AND_FETCH_WORD): Likewise.
3419
34202010-09-01  Jakub Jelinek  <jakub@redhat.com>
3421
3422	PR middle-end/45458
3423	* bb-reorder.c (add_labels_and_missing_jumps): Treat
3424	bbs ending with throwing insns like blocks ending with a call.
3425	(fix_up_fall_thru_edges): Likewise.
3426
34272010-09-01  Eric Botcazou  <ebotcazou@adacore.com>
3428
3429	* gimplify.c (gimplify_init_constructor): Do not create a temporary for
3430	a volatile LHS if the constructor has only one element.
3431
34322010-08-31  Eric Botcazou  <ebotcazou@adacore.com>
3433
3434	* tree-nested.c (convert_all_function_calls): Iterate until after the
3435	sum of static chains in the nest doesn't change.
3436
34372010-08-31  Eric Botcazou  <ebotcazou@adacore.com>
3438
3439	Backport from mainline
3440	2010-08-20  Jakub Jelinek  <jakub@redhat.com>
3441
3442	PR rtl-optimization/45353
3443	* sel-sched-ir.c (sel_bb_head): Return NULL even if next_nonnote_insn
3444	after bb_note is a BARRIER.
3445
34462010-08-30  Jakub Jelinek  <jakub@redhat.com>
3447
3448	PR middle-end/45423
3449	* gimplify.c (goa_stabilize_expr): Handle TRUTH_NOT_EXPR
3450	and TRUTH_{AND,OR,XOR}_EXPR.
3451	* c-parser.c (c_parser_omp_atomic): Handle boolean
3452	{PRE,POST}_{INC,DEC}REMENT.
3453
34542010-08-30  Jakub Jelinek  <jakub@redhat.com>
3455
3456	Backport from mainline
3457	2010-07-27  Jakub Jelinek  <jakub@redhat.com>
3458
3459	PR c/45079
3460	* c-pretty-print.c (pp_c_expression): Handle C_MAYBE_CONST_EXPR.
3461
34622010-08-30  H.J. Lu  <hongjiu.lu@intel.com>
3463
3464	Backport from mainline
3465	2010-08-25  Richard Guenther  <rguenther@suse.de>
3466
3467	PR tree-optimization/45393
3468	* tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer
3469	and clean EH info.  Avoid SSA update.
3470	(execute_cse_sincos): Cleanup the CFG if it has changed.
3471
34722010-08-28  Eric Botcazou  <ebotcazou@adacore.com>
3473
3474	* config/ia64/ia64.md (cstorebi4): Fix thinko.
3475
34762010-08-28  Uros Bizjak  <ubizjak@gmail.com>
3477
3478	PR target/41484
3479	* config/i386/sse.md (sse4_1_extendv8qiv8hi2): Also accept memory
3480	operands for operand 1.
3481	(sse4_1_extendv4qiv4si2): Ditto.
3482	(sse4_1_extendv2qiv2di2): Ditto.
3483	(sse4_1_extendv4hiv4si2): Ditto.
3484	(sse4_1_extendv2hiv2di2): Ditto.
3485	(sse4_1_extendv2siv2di2): Ditto.
3486	(sse4_1_zero_extendv8qiv8hi2): Ditto.
3487	(sse4_1_zero_extendv4qiv4si2): Ditto.
3488	(sse4_1_zero_extendv2qiv2di2): Ditto.
3489	(sse4_1_zero_extendv4hiv4si2): Ditto.
3490	(sse4_1_zero_extendv2hiv2di2): Ditto.
3491	(sse4_1_zero_extendv2siv2di2): Ditto.
3492	(*sse4_1_extendv8qiv8hi2): Remove insn pattern.
3493	(*sse4_1_extendv4qiv4si2): Ditto.
3494	(*sse4_1_extendv2qiv2di2): Ditto.
3495	(*sse4_1_extendv4hiv4si2): Ditto.
3496	(*sse4_1_extendv2hiv2di2): Ditto.
3497	(*sse4_1_extendv2siv2di2): Ditto.
3498	(*sse4_1_zero_extendv8qiv8hi2): Ditto.
3499	(*sse4_1_zero_extendv4qiv4si2): Ditto.
3500	(*sse4_1_zero_extendv2qiv2di2): Ditto.
3501	(*sse4_1_zero_extendv4hiv4si2): Ditto.
3502	(*sse4_1_zero_extendv2hiv2di2): Ditto.
3503	(*sse4_1_zero_extendv2siv2di2): Ditto.
3504
35052010-08-25  Jakub Jelinek  <jakub@redhat.com>
3506
3507	PR rtl-optimization/44858
3508	* combine.c (try_combine): If recog_for_combine added CLOBBERs to
3509	newi2pat, make sure they don't affect newpat.
3510
3511	PR rtl-optimization/45400
3512	* combine.c (simplify_shift_const_1) <case SUBREG>: Only use
3513	SUBREG_REG if both modes are of MODE_INT class.
3514
35152010-08-20  Changpeng Fang  <changpeng.fang@amd.com>
3516
3517	PR tree-optimization/45260
3518	* tree-flow.h (may_be_nonaddressable_p): New definition. Make the
3519	existing static function global.
3520
3521	* tree-ssa-loop-ivopts.c (may_be_nonaddressable_p): This function
3522	is changed to global.
3523
3524	* tree-ssa-loop-prefetch.c (gather_memory_references_ref): Call
3525	may_be_nonaddressable_p on base, and don't collect this reference
3526	if the address of the base could not be taken.
3527
35282010-08-20  David Edelsohn  <edelsohn@gnu.org>
3529
3530	Backport from mainline
3531	2010-04-22  David Edelsohn  <edelsohn@gnu.org>
3532
3533	* config/rs6000/x-aix: Override LDFLAGS for all COMPILERS.
3534
35352010-08-19  Uros Bizjak  <ubizjak@gmail.com>
3536
3537	* config/i386/i386.md (*add<SWI:mode>3_cconly_overflow): Do not use
3538	ix86_binary_operator_ok.
3539
35402010-08-18  Uros Bizjak  <ubizjak@gmail.com>
3541
3542	PR target/45327
3543	* config/i386/i386.md (<any_or:code><SWI:mode>_3): Do not use
3544	ix86_binary_operator_ok.
3545
35462010-08-18  H.J. Lu  <hongjiu.lu@intel.com>
3547
3548	Backport from mainline
3549	2010-08-18  Paolo Bonzini  <bonzini@gnu.org>
3550
3551	PR middle-end/45292
3552	* optabs.c (expand_bool_compare_and_swap): Expand pending
3553	pops before trying the optab.
3554
35552010-08-17  Uros Bizjak  <ubizjak@gmail.com>
3556
3557	PR target/45296
3558	* reginfo.c (globalize_reg): Reject stack registers.
3559
35602010-08-16  Changpeng Fang  <changpeng.fang@amd.com>
3561
3562	Backport from mainline:
3563	2010-08-12  Changpeng Fang  <changpeng.fang@amd.com>
3564
3565	PR tree-optimization/45241
3566	* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Give
3567	up dot_prod pattern searching if a stmt is outside the loop.
3568
35692010-08-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3570
3571	Backport from mainline:
3572	2010-08-09  Richard Guenther  <rguenther@suse.de>
3573
3574	PR middle-end/44632
3575	* function.c (gimplify_parameters): Do not clear addressable
3576	bit of the original parameter.
3577
35782010-08-14  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3579
3580	Revert:
3581	2010-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3582
3583	PR boehm-gc/34544
3584	* gthr-posix.h (__gthread_start): Delete.
3585	(__gthread_active_init): Use pthread_default_stacksize_np instead of
3586	pthread_create to determine if hpux pthreads are active.
3587	* gthr-posix95.h (__gthread_start): Delete.
3588	(__gthread_active_init): Likewise use pthread_default_stacksize_np.
3589
35902010-08-12  Jakub Jelinek  <jakub@redhat.com>
3591
3592	PR middle-end/45262
3593	* fold-const.c (make_range) <case NEGATE_EXPR>: Punt if
3594	-a overflows.  Normalize the range.
3595
3596	PR debug/45259
3597	* caller-save.c (save_call_clobbered_regs): Only swap notes with
3598	DEBUG_INSNs if n_regs_saved.
3599
3600	Backport from mainline
3601	2010-07-30  Jakub Jelinek  <jakub@redhat.com>
3602
3603	PR debug/45055
3604	PR rtl-optimization/45137
3605	* rtl.h (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn): New
3606	prototypes.
3607	* emit-rtl.c (prev_nonnote_nondebug_insn, next_nonnote_nondebug_insn):
3608	New functions.
3609	* combine.c (next_nonnote_nondebug_insn): Removed.
3610	* ifcvt.c (noce_process_if_block): Use prev_nonnote_nondebug_insn.
3611	* haifa-sched.c (queue_to_ready): Use next_nonnote_nondebug_insn.
3612	* sched-deps.c (sched_analyze_insn): Likewise.
3613	(fixup_sched_groups, deps_start_bb): Use prev_nonnote_nondebug_insn.
3614	* rtlanal.c (canonicalize_condition): Likewise.
3615	* postreload.c (reload_combine): Likewise.
3616	(reload_cse_move2add): Use next_nonnote_nondebug_insn.
3617
36182010-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3619
3620	Backport from mainline.
3621	2010-07-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3622
3623	PR target/44805
3624	* config/pa/pa.h (CONSTANT_ALIGNMENT): Align strings to BITS_PER_WORD
3625	on all targets.
3626
36272010-08-08  Richard Guenther  <rguenther@suse.de>
3628
3629	PR middle-end/45034
3630	* convert.c (convert_to_integer): Always use an unsigned
3631	type for narrowed negate and bitwise not.
3632
36332010-08-08  Richard Guenther  <rguenther@suse.de>
3634
3635	PR tree-optimization/45109
3636	* tree-ssa-structalias.c (get_constraint_for_component_ref):
3637	Explicitly strip handled components and indirect references.
3638
36392010-08-08  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3640
3641	PR boehm-gc/34544
3642	* gthr-posix.h (__gthread_start): Delete.
3643	(__gthread_active_init): Use pthread_default_stacksize_np instead of
3644	pthread_create to determine if hpux pthreads are active.
3645	* gthr-posix95.h (__gthread_start): Delete.
3646	(__gthread_active_init): Likewise use pthread_default_stacksize_np.
3647
36482010-08-06  Eric Botcazou  <ebotcazou@adacore.com>
3649
3650	PR target/44942
3651	* config/sparc/sparc.c (function_arg_advance): Always take into account
3652	the padding, if any.
3653
36542010-08-06  Uros Bizjak  <ubizjak@gmail.com>
3655
3656	* expmed.c (expand_mult_const) <case alg_shift>: Expand shift into
3657	temporary. Emit move from temporary to accum, so REG_EQUAL note will
3658	be attached to this insn in correct mode.
3659
36602010-08-06  Uros Bizjak  <ubizjak@gmail.com>
3661
3662	* config/i386/i386.c (ix86_decompose_address): Check for SI_REG
3663	using REGNO of base_reg directly.
3664
36652010-08-03  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
3666
3667	* config/spu/spu.c (spu_emit_branch_hint): Do not access NOTE_KIND of
3668	non-NOTE insns.
3669
36702010-08-03  Uros Bizjak  <ubizjak@gmail.com>
3671
3672	PR target/41089
3673	* config/alpha/alpha.c (alpha_build_builtin_va_list): Mark __offset
3674	as volatile.
3675
36762010-08-03  Martin Jambor  <mjambor@suse.cz>
3677
3678	PR tree-optimization/44914
3679	* tree-sra.c (cfg_changed): New variable.
3680	(sra_initialize): Initialize cgf_changed to false.
3681	(scan_function): Set cfg_changed if cfg was changed.
3682	(perform_intra_sra): Return also TODO_cleanup_cfg if cfg was changed.
3683	(ipa_early_sra): Likewise.
3684
36852010-08-02  DJ Delorie  <dj@redhat.com>
3686
3687	* config/rx/predicates.md (rx_constshift_operand): New.
3688	* config/rx/rx.md (zs_cond): New.
3689	(cbranchsi4): Remove mode.
3690	(*cbranchsi4_<code>): Likewise.
3691	(*tstbranchsi4_<code>): New.
3692	(*tstbranchsi4r_<code>): New.
3693	(*tstbranchsi4m_eq): New.
3694	(*tstbranchsi4m_ne): New.
3695	(cbranchsf4): Remove mode.
3696	(*cbranchsf4_<code>): Likewise.
3697
36982010-07-31  Richard Guenther  <rguenther@suse.de>
3699
3700	PR tree-optimization/45052
3701	* ipa-pure-const.c (check_stmt): Check volatileness.
3702
37032010-07-31  Richard Guenther  <rguenther@suse.de>
3704
3705	* ipa-prop.c (ipa_modify_formal_parameters): Use
3706	build_distinct_type_copy.
3707
37082010-07-31  Richard Guenther  <rguenther@suse.de>
3709
3710	* DEV-PHASE: Set back to prerelease.
3711	* BASE-VER: Bump to 4.5.2.
3712
37132010-07-31  Release Manager
3714
3715	* GCC 4.5.1 released.
3716
37172010-07-30  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
3718
3719	Backport from mainline.
3720	2010-07-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
3721
3722	PR target/43698
3723	* config/arm/arm.md: Split arm_rev into *arm_rev and *thumb1_rev.
3724	Set *arm_rev to be predicable.
3725
37262010-07-27  Nick Clifton  <nickc@redhat.com>
3727
3728	* Import this patch from the mainline:
3729
3730	2010-06-30  Nick Clifton  <nickc@redhat.com>
3731
3732	* config/rx/rx-modes.def: New file.
3733	* config/rx/rx.h (FIRST_PSEUDO_REGISTER): Increase to 17.
3734	(CC_REGNUM): Define.
3735	(FIXED_REGISTERS, CALL_USED_REGISTERS, REGISTER_NAMES): Add cc
3736	register.
3737	(CC_NO_CARRY, NOTICE_UPDATE_CC): Delete.
3738	(SELECT_CC_MODE): Define.
3739	* config/rx/rx.md (CC_REG): Define.  Update all patterns to use
3740	(reg:CC CC_REG) instead of (cc0).
3741	(attr "cc"): Delete.
3742	(cbranchsi4): Do not split compare and branch here. Instead move
3743	it to...
3744	(cbranchsi4_<code>): ... here.  New patterns.
3745	(cmpsi): Call rx-compare_redundant to find out if it is necessary
3746	to emit the compare instruction.
3747	* config/rx/rx.c (rx_gen-cond_branch_template): Remove tests of
3748	cc_status flags.
3749	(rx_get_stack_layout): Iterate up to before CC_REGNUM not
3750	FIRST_PSEUDO_REGNUM.
3751	(rx_expand_prologue, rx_expand_epilogue): Likewise.
3752	(rx_notice_update_cc): Delete.
3753	(rx_cc_modes_compatible): New function.
3754	(flags_needed_for_conditional): New function.
3755	(flags_from_mode): New function.
3756	(rx_compare_redundant): New function - scans backwards through
3757	insn list to find out if condition flags are already set correctly.
3758	(TARGET_CC_MODES_COMPATIBLE): Define.
3759	* config/rx/rx-protos.h (rx_compare_redundant): Prototype.
3760
3761	* config/rx/rx.h (BRANCH_COST): Define.
3762	(REGISTER_MOVE_COST): Define.
3763	* config/rx/predicates (rx_source_operand): Allow all constant types.
3764	* config/rx/rx.md (addsi3): Add alternative for swapped operands.
3765	(tstsi4): New pattern.
3766	* config/rx/rx.c (rx_memory_move_cost): Define.
3767	(TARGET_MEMORY_MOVE_COST): Define.
3768
37692010-07-23  Jakub Jelinek  <jakub@redhat.com>
3770	    Richard Guenther  <rguenther@suse.de>
3771
3772	PR tree-optimization/45047
3773	* tree-vect-stmts.c (vectorizable_assignment): Return false
3774	if vectype_out is NULL for conversion statement.
3775
37762010-07-22  Jakub Jelinek  <jakub@redhat.com>
3777
3778	PR debug/45015
3779	* var-tracking.c (adjust_mems): Ignore ASM_OPERANDS with non-zero
3780	ASM_OPERANDS_OUTPUT_IDX.
3781	(adjust_insn): For inline asm with multiple sets ensure first
3782	ASM_OPERANDS vectors are used by all following ASM_OPERANDS in
3783	the insn.
3784
3785	Backport from mainline
3786	2010-07-16  Jakub Jelinek  <jakub@redhat.com>
3787
3788	PR target/44942
3789	* config/i386/i386-protos.h (ix86_function_arg_boundary): Change second
3790	argument to const_tree.
3791	* config/i386/i386.c (function_arg_advance): If padding needs to be
3792	inserted before argument, increment cum->words by number of padding
3793	words as well.
3794	(contains_aligned_value_p): Change argument to const_tree.
3795	(ix86_function_arg_boundary): Change second argument to const_tree.
3796
37972010-07-21  Martin Jambor  <mjambor@suse.cz>
3798
3799	PR tree-optimization/44900
3800	* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
3801	(sra_modify_assign): Move gsi to the next statmenent unconditionally.
3802
38032010-07-21  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3804
3805	Backport from mainline:
3806	2010-07-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3807
3808	* doc/sourcebuild.texi (Effective-Target Keywords): Document
3809	sse_runtime, sse2_runtime.
3810
38112010-07-20  Richard Guenther  <rguenther@suse.de>
3812
3813	PR tree-optimization/44977
3814	* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
3815	SSA form.
3816
38172010-07-19  Bingfeng Mei  <bmei@broadcom.com>
3818
3819	* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
3820	of a loop.
3821	* loop-doloop.c (doloop_condition_get): Skip possible debug_insn.
3822
38232010-07-15  Jie Zhang  <jie@codesourcery.com>
3824
3825	* config/arm/cortex-a8.md (cortex_a8_load_store_2): Reserve
3826	cortex_a8_issue_ls.
3827
38282010-07-14  Jie Zhang  <jie@codesourcery.com>
3829
3830	* config/arm/cortex-a8.md (cortex_a8_alu): Don't use
3831	cortex_a8_default when neon_type is not none.
3832
38332010-07-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3834
3835	Backport from mainline:
3836	2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3837
3838	* config/i386/i386.c (ix86_sol10_return_in_memory): Rename to
3839	ix86_solaris_return_in_memory.
3840	* config/i386-protos.h: Reflect this.
3841	* config/i386/vx-common.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
3842	* config/i386/sol2-10.h (SUBTARGET_RETURN_IN_MEMORY): Likewise.
3843	Move ...
3844	* config/i386/sol2.h (SUBTARGET_RETURN_IN_MEMORY): ... here.
3845
38462010-07-14  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3847
3848	Backport from mainline:
3849	2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3850
3851	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
3852	pentiumpro on Solaris 8 and 9/x86.
3853	* doc/install.texi (Specific, i?86-*-solaris2.[89]): Recommend GNU as.
3854	Document SSE/SSE2 support.
3855	* doc/sourcebuild.texi (Effective-Target Keywords): Document sse.
3856
38572010-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3858
3859	* config/i386/sol2-unwind.h (x86_64_fallback_frame_state): Correct
3860	explanation.
3861	Find ucontext_t * on Solaris 11.
3862	(x86_fallback_frame_state): Handle Solaris 9 multi-threaded pattern.
3863	Handle new Solaris 11 __sighndlr patterns.
3864
38652010-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3866
3867	Backport from mainline:
3868	2010-07-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3869
3870	PR pch/14940
3871	* config/host-solaris.c (mmap_fixed): New function.
3872	(sol_gt_pch_get_address): Use it.
3873	(sol_gt_pch_use_address): Likewise.
3874
38752010-07-12  Jie Zhang  <jie@codesourcery.com>
3876
3877	* config/arm/arm.c (arm_get_frame_offsets): Don't use r3 to
3878	align the stack when it's going to be saved.
3879
38802010-07-11  Kai Tietz  <kai.tietz@onevision.com>
3881
3882	Merged back from trunk
3883	* config/i386/winnt.c (i386_pe_file_end): Quote symbol name
3884	in directive -export.
3885
38862010-07-09  Richard Guenther  <rguenther@suse.de>
3887
3888	PR tree-optimization/44886
3889	* tree-vect-stmts.c (vectorizable_assignment): Fixup backport
3890	of the fix for PR44284.
3891
38922010-07-09  Richard Guenther  <rguenther@suse.de>
3893
3894	Backport from mainline
3895	2010-05-28  Nathan Froyd  <froydnj@codesourcery.com>
3896
3897	* tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of
3898	build1_stat.
3899
39002010-07-09  Dave Korn  <dave.korn.cygwin@gmail.com>
3901
3902	Backport from mainline
3903	2010-05-06  Dave Korn  <dave.korn.cygwin@gmail.com>
3904
3905	PR target/43888
3906	* config/i386/winnt.c (i386_pe_binds_local_p): Tweak weak symbol
3907	handling to still return true for x64 targets.
3908
39092010-07-08  Richard Guenther  <rguenther@suse.de>
3910
3911	Backport from mainline
3912	2010-05-27  Richard Guenther  <rguenther@suse.de>
3913
3914	PR tree-optimization/44284
3915	* tree-vect-stmts.c (vectorizable_assignment): Handle
3916	sign-changing conversions as simple copy.
3917
3918	2010-07-06  Richard Guenther  <rguenther@suse.de>
3919
3920	PR middle-end/44828
3921	* convert.c (convert_to_integer): Watch out for overflowing
3922	MULT_EXPR as well.
3923
39242010-07-07  Duncan Sands  <baldrick@free.fr>
3925
3926	PR middle-end/41355
3927	* tree.c (build_function_type_skip_args): Copy the original type using
3928	build_distinct_type_copy rather than copy_node.
3929
39302010-07-06  Alexandre Oliva  <aoliva@redhat.com>
3931
3932	* doc/gimple.texi (GIMPLE_DEBUG): Document.
3933	* doc/rtl.texi (Debug Information): New node.
3934	(NOTE_INSN_VAR_LOCATION): Document.
3935	(debug_insn): Likewise.
3936	* doc/generic.texi (DEBUG_EXPR_DECL): Document.
3937
39382010-07-05  Kaz Kojima  <kkojima@gcc.gnu.org>
3939
3940	Backport from mainline:
3941	PR target/44531
3942	* config.gcc (sh*-*-*): Use regular expressions instead of
3943	the 'i' modifier for sed substitutions.
3944
39452010-07-05  Mikael Pettersson  <mikpe@it.uu.se>
3946
3947	PR bootstrap/44820
3948	* config/arm/arm.c (arm_attr_length_move_neon): Delete regno.
3949
39502010-07-05  Jie Zhang  <jie@codesourcery.com>
3951
3952	* config/arm/arm.c (arm_attr_length_move_neon): New.
3953	* config/arm/arm-protos.h (arm_attr_length_move_neon): Declare.
3954	* config/arm/neon.md (define_mode_attr V_slen): Remove.
3955	(neon_mov<mode> for VSTRUCT): Use arm_attr_length_move_neon
3956	to compute length attribute.
3957
39582010-07-05  Jie Zhang  <jie@codesourcery.com>
3959
3960	* config/arm/vfp.md (*push_multi_vfp): Use vfp_register_operand
3961	as predicate for operand 1 and remove its constraint.
3962	* config/arm/predicates.md (vfp_register_operand): New.
3963	* config/arm/arm.md (*push_multi): Remove the constraint of
3964	operand 1.
3965	(*push_fp_multi): Likewise.
3966
39672010-07-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3968
3969	PR target/44597
3970	* config/pa/predicates.md (prefetch_cc_operand): Remove.
3971	(prefetch_nocc_operand): Likewise.
3972	* config/pa/pa.md (prefetch): Revise expander to use prefetch_20.
3973	(prefetch_20): New insn.
3974	(prefetch_cc): Remove.
3975	(prefetch_nocc): Likewise.
3976
3977	PR target/44705
3978	* config/pa/pa.h (GO_IF_LEGITIMATE_ADDRESS): Reject LABEL_REF.
3979
39802010-07-02  Richard Guenther  <rguenther@suse.de>
3981
3982	PR middle-end/44777
3983	* tree-cfg.c (gimple_block_ends_with_call_p): Handle empty BBs.
3984
39852010-07-01  Jakub Jelinek  <jakub@redhat.com>
3986
3987	PR debug/44694
3988	* dwarf2out.c (reg_loc_descriptor): For eliminated arg_pointer_rtx
3989	or frame_pointer_rtx use DW_OP_fbreg offset DW_OP_stack_value.
3990
39912010-07-01  Jakub Jelinek  <jakub@redhat.com>
3992
3993	Backport from mainline
3994	2010-06-29  Jakub Jelinek  <jakub@redhat.com>
3995
3996	PR tree-optimization/43801
3997	* cgraph.c (cgraph_create_virtual_clone): Clear DECL_SECTION_NAME
3998	if old_decl was DECL_ONE_ONLY.
3999
4000	2010-06-21  Jakub Jelinek  <jakub@redhat.com>
4001
4002	PR target/44575
4003	* config/i386/i386.c (ix86_gimplify_va_arg): When copying
4004	va_arg from a set of register save slots into a temporary,
4005	if the container is bigger than type size, do the copying
4006	using smaller mode or using memcpy.
4007
4008	2010-05-13  Jakub Jelinek  <jakub@redhat.com>
4009
4010	PR debug/44104
4011	* dwarf2out.c (modified_type_die): Don't dereference mod_type_die
4012	if it is NULL.
4013
40142010-06-30  Jan Hubicka  <jh@suse.cz>
4015
4016	Backport from mainline
4017	2010-06-27  Jan Hubicka  <jh@suse.cz>
4018
4019	PR middle-end/44671
4020	PR middle-end/44686
4021	* tree.c (build_function_decl_skip_args): Clear DECL_BUILT_IN on
4022	signature change.
4023	* ipa-split.c (split_function): Always clear DECL_BUILT_IN.
4024	* ipa-prop.c (ipa_modify_formal_parameters): Likewise.
4025
4026	2010-06-28  Jan Hubicka  <jh@suse.cz>
4027
4028	PR tree-optimization/44357
4029	* ipa-inline.c (add_new_edges_to_heap): Do not add edges to uninlinable
4030	functions.
4031
40322010-06-30  Jakub Jelinek  <jakub@redhat.com>
4033
4034	Backport from mainline
4035	2010-06-30  Jakub Jelinek  <jakub@redhat.com>
4036
4037	PR debug/44694
4038	* cselib.h (cselib_preserve_cfa_base_value): Add regno argument.
4039	* cselib.c (cfa_base_preserved_regno): New static variable.
4040	(cselib_reset_table): Don't reset cfa_base_preserved_regno instead
4041	of REGNO (cfa_base_preserved_val->locs->loc).
4042	(cselib_preserve_cfa_base_value): Add regno argument, set
4043	cfa_base_preserved_regno to it.
4044	(cselib_invalidate_regno): Allow removal of registers other than
4045	cfa_base_preserved_regno from cfa_base_preserved_val.
4046	(cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM.
4047	* var-tracking.c (adjust_mems): Replace sp or hfp even outside
4048	of MEM addresses, if not on LHS.
4049	(reverse_op): Don't add reverse ops for cfa_base_rtx.
4050	(vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller.
4051
4052	2010-06-25  Jakub Jelinek  <jakub@redhat.com>
4053
4054	PR middle-end/43866
4055	* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): If stmt is always
4056	true or always false, return NULL_TREE.
4057	(tree_unswitch_single_loop): Optimize conditions even when reaching
4058	max-unswitch-level parameter.  If num > 0, optimize first all conditions
4059	using entry checks, then do still reachable block discovery and consider
4060	only conditions in still reachable basic blocks in the loop.
4061
4062	2010-05-12  Jakub Jelinek  <jakub@redhat.com>
4063
4064	PR debug/42278
4065	* dwarf2out.c (base_type_die): Don't add name attribute here.
4066	(modified_type_die): Instead of sizetype use
4067	its underlying original type.  If a DW_TAG_base_type doesn't
4068	have name added, add __unknown__.
4069	(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
4070	always call force_type_die instead.
4071
4072	2010-05-11  Jakub Jelinek  <jakub@redhat.com>
4073
4074	PR c++/44059
4075	* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use qnu_unique_object
4076	even for DECL_ONE_ONLY DECL_ARTIFICIAL !TREE_READONLY decls.
4077	* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Likewise.
4078	* dwarf2asm.c (dw2_output_indirect_constant_1): Set TREE_READONLY
4079	on DW.ref.* decls.
4080
40812010-06-30  Martin Jambor  <mjambor@suse.cz>
4082
4083	PR tree-optimization/43905
4084	* tree-sra.c (encountered_recursive_call): Removed with all its uses.
4085	(convert_callers): Do not handle recursive calls specially.
4086	(create_abstract_origin): Removed.
4087	(modify_function): Version the call graph node instead of creating
4088	abstract origins and dealing with same_body aliases.
4089	(ipa_sra_preliminary_function_checks): Check whether the function
4090	is versionable.
4091	* Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
4092
40932010-06-30  Martin Jambor  <mjambor@suse.cz>
4094
4095	Backport from mainline
4096	2010-05-29  Jan Hubicka  <jh@suse.cz>
4097
4098	* cgraph.c (clone_function_name): Made public.
4099	* cgraph.h (clone_function_name): Declare.
4100	* cgraphunit.c (cgraph_function_versioning): Produce new name.
4101
41022010-06-29  Martin Jambor  <mjambor@suse.cz>
4103
4104	Backport from mainline
4105	2010-05-17  Martin Jambor  <mjambor@suse.cz>
4106
4107	PR middle-end/44133
4108	* tree-sra.c (create_access_replacement): New parameter rename, mark
4109	the replaement for renaming only when it is true.
4110	(get_access_replacement): Pass true in the rename parameter of
4111	create_access_replacement.
4112	(get_unrenamed_access_replacement): New function.
4113	(replace_uses_with_default_def_ssa_name): New parameter racc, get the
4114	replacement declaration from it.
4115
41162010-06-29  Martin Jambor  <mjambor@suse.cz>
4117
4118	Backport from mainline
4119	2010-04-13  Martin Jambor  <mjambor@suse.cz>
4120
4121	* tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
4122	(sra_modify_assign): Delete stmts loading dead data even if racc has no
4123	children.  Call replace_uses_with_default_def_ssa_name to handle
4124	SSA_NAES on lhs.
4125
41262010-06-27  Jan Hubicka  <jh@suse.cz>
4127
4128	Backport inliner heruistic fixes from mainline
4129	2010-05-27  Jan Hubicka  <jh@suse.cz>
4130
4131	* ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
4132	(update_caller_keys): Return early if there are no callers;
4133	only update fibheap when decresing the key.
4134	(update_callee_keys): Avoid recursion.
4135	(decide_inlining_of_small_functions): When badness does not match;
4136	re-insert into fibheap.
4137
4138	2010-05-11  Jan Hubicka  <jh@suse.cz>
4139
4140	PR tree-optimize/44063
4141	* ipa-inline.c (cgraph_edge_badness): Move always inlines to top of
4142	queue.
4143
4144	2010-04-13  Jan Hubicka  <jh@suse.cz>
4145
4146	* ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
4147	of optimized out static functions.
4148	(cgraph_edge_badness): Add DUMP parameter and dump reasons for the
4149	cost computation.  Also sanity check for overflows.
4150	(update_caller_keys): Update cgraph_edge_badness call; properly
4151	update fibheap and sanity check that it is up to date.
4152	(add_new_edges_to_heap): Update cgraph_edge_badness.
4153	(cgraph_decide_inlining_of_small_function): Likewise;
4154	add sanity checking that badness in heap is up to date;
4155	improve dumping of reason; Update badness of calls to the
4156	offline copy of function currently inlined; dump badness
4157	of functions not inlined because of unit growth limits.
4158
41592010-06-27  Richard Guenther  <rguenther@suse.de>
4160
4161	PR tree-optimization/44683
4162	* tree-ssa-dom.c (record_edge_info): Record equivalences for the
4163	false edge from the inverted condition.
4164
41652010-06-27  Eric Botcazou  <ebotcazou@adacore.com>
4166
4167	Backport from mainline
4168	2010-05-18  Vladimir Makarov  <vmakarov@redhat.com>
4169
4170	PR rtl-optimization/43332
4171	* haifa-sched.c (setup_insn_max_reg_pressure): Check barrier.
4172
41732010-06-27  Richard Guenther  <rguenther@suse.de>
4174
4175	PR middle-end/44684
4176	* tree-ssa-alias.c (refs_may_alias_p_1): Allow SSA name refs.
4177	(stmt_may_clobber_ref_p_1): Do not bother to call the oracle
4178	for register LHS.  Or non-store assignments.
4179
41802010-06-26  Richard Guenther  <rguenther@suse.de>
4181
4182	PR tree-optimization/44393
4183	* tree-loop-distribution.c (generate_loops_for_partition): Fix
4184	stmt removal and VOP renaming.
4185	(generate_memset_zero): Remove redundant stmt updating.
4186	* tree-flow.h (mark_virtual_ops_in_bb): Remove.
4187	* tree-cfg.c (mark_virtual_ops_in_bb): Likewise.
4188
41892010-06-26  Richard Guenther  <rguenther@suse.de>
4190
4191	PR middle-end/44674
4192	* tree-ssa-alias.c (refs_may_alias_p_1): Allow all kind of
4193	decls.  Handle LABEL_DECLs like FUNCTION_DECLs.
4194
41952010-06-25  Alexandre Oliva  <aoliva@redhat.com>
4196
4197	PR debug/44610
4198	* simplify-rtx.c (delegitimize_mem_from_attrs): Don't use a base
4199	address if the offset is unknown.
4200
42012010-06-25  Richard Guenther  <rguenther@suse.de>
4202
4203	Backport from mainline
4204	2010-06-16  Richard Guenther  <rguenther@suse.de>
4205
4206	PR c/44555
4207	* c-common.c (c_common_truthvalue_conversion): Remove
4208	premature and wrong optimization concering ADDR_EXPRs.
4209
42102010-06-24  Steven Bosscher  <steven@gcc.gnu.org>
4211
4212	Backport from mainline:
4213	2010-05-18  Steven Bosscher  <steven@gcc.gnu.org>
4214
4215	* config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add
4216	lto-macho as lto_binary_reader.
4217	* target.h (struct gcc_target): New hooks lto_start and	lto_end.
4218	* target-def.h (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Define.
4219	* cgraphunit.c (ipa_passes): Wrap LTO assembler output generation
4220	in lto_start and lto_end calls.
4221	(is_elf_or_coff): Rename to maybe_lto_object_file.  Add Mach-O
4222	magic numbers.
4223	(scan_prog_file): Update is_elf_or_coff call.
4224	* doc/tm.text (TARGET_ASM_LTO_START, TARGET_ASM_LTO_END): Document.
4225
4226	* collect2.c (main): Fix enum comparison.
4227
4228	* config/darwin-protos.h (darwin_asm_lto_start, darwin_asm_lto_end):
4229	Add prototypes.
4230	* darwin9.h (LINK_COMMAND_SPEC): Pass -flto and -fwhopr to the linker.
4231	* darwin.h (LINK_COMMAND_SPEC): Likewise.  Define TARGET_ASM_LTO_START
4232	and TARGET_ASM_LTO_END.
4233	* darwin.c: Include obstack.h and lto-streamer.h.
4234	(lto_section_names_offset, lto_section_names_obstack,
4235	lto_asm_out_file, lto_asm_out_name, saved_asm_out_file): New static
4236	global variables.
4237	(LTO_SEGMENT_NAME, LTO_NAMES_SECTION): New defines.
4238	(darwin_asm_lto_start): New function.  Redirect output to asm_out_file
4239	to a temporary file.
4240	(darwin_asm_lto_end): New function.  Restore asm_out_file.
4241	(darwin_asm_named_section): For LTO sections, replace the name with
4242	the offset of the section name in a string table, and build this
4243	table.
4244	(darwin_file_start): Initialize global vars for LTO support.
4245	(darwin_file_end): If output to asm_out_file was redirected, append it
4246	to the proper asm_out_file here.  Add the section names section.
4247
4248	Backport from mainline:
4249	2010-05-18  Steven Bosscher  <steven@gcc.gnu.org>
4250
4251	* darwin.c (darwin_asm_named_section): Do not add assembler comment
4252	after .section directive; just print it before the directive
4253	instead.
4254
42552010-06-22  Eric Botcazou  <ebotcazou@adacore.com>
4256
4257	* cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Chain the
4258	new statement and adjust VDEF only if necessary.  Remove superfluous
4259	call to maybe_clean_or_replace_eh_stmt.
4260	* gimple.c (gimple_call_copy_skip_args): Use gimple_call_copy_flags to
4261	copy the flags.
4262	* gimple-iterator.c (gsi_replace): Clear BB of old statement here...
4263	* tree-inline.c (copy_bb): ...and not there.
4264
42652010-06-22  H.J. Lu  <hongjiu.lu@intel.com>
4266
4267	Backport from mainline
4268	2010-06-22  H.J. Lu  <hongjiu.lu@intel.com>
4269
4270	* config/i386/i386.md (unit): Also check sseishft1.
4271
42722010-06-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4273
4274	PR target/39690
4275	* config/pa/pa.c (override_options): Disable
4276	-freorder-blocks-and-partition.
4277
42782010-06-21  H.J. Lu  <hongjiu.lu@intel.com>
4279
4280	Backport from mainline
4281	2010-06-21  H.J. Lu  <hongjiu.lu@intel.com>
4282
4283	PR target/44615
4284	* config/i386/atom.md (atom_sseishft_2): Also check sseishft1.
4285
4286	* config/i386/i386.md (type): Add sseishft1
4287
4288	* config/i386/ppro_insn (ppro_insn): Also check sseishft1.
4289	(ppro_insn_load): Likewise.
4290	(ppro_insn_store): Likewise.
4291	(ppro_insn_both): Likewise.
4292
4293	* config/i386/sse.md (sse2_lshrv1ti3): Add atom_unit.
4294	(*vec_extractv2di_1_rex64_avx): Replace sseishft with sseishft1
4295	for type.
4296	(*vec_extractv2di_1_avx): Likewise.
4297	(*vec_extractv2di_1_rex64): Replace sseishft with sseishft1 for
4298	type.  Remove atom_unit.
4299	(*vec_extractv2di_1_sse2): Likewise.
4300
43012010-06-21  Jakub Jelinek  <jakub@redhat.com>
4302
4303	PR bootstrap/44426
4304	* sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
4305	prototype.
4306	(sel_print_to_dot): Remove macro.
4307	(sel_print): Likewise.  New prototype.
4308	* sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
4309	(sel_print): New function.
4310
43112010-06-21  Uros Bizjak  <ubizjak@gmail.com>
4312
4313	PR target/44546
4314	* config/i386/predicates.md (ix86_swapped_fp_comparsion_operator):
4315	New predicate.
4316	* config/i386/i386.md (*fp_jcc_8<mode>_387 and splitters): Use
4317	ix86_swapped_fp_comparsion_operator instead of
4318	ix86_fp_comparison_operator.
4319
4320	(*fp_jcc_1_387): Rename from *fp_jcc_3_387.
4321	(*fp_jcc_1r_387): Rename from *fp_jcc_4_387.
4322	(*fp_jcc_2_387): Rename from *fp_jcc_5_387.
4323	(*fp_jcc_2r_387): Rename from *fp_jcc_6_387.
4324	(*fp_jcc_3_387): Rename from *fp_jcc_7_387.
4325	(*fp_jcc_4_<mode>_387): Rename from *fp_jcc_8<mode>_387.
4326
43272010-06-19  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4328
4329	Backport from mainline
4330	2010-05-29  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4331
4332	PR target/44261
4333	* config/pa/pa.md (negdf2_slow, negsf2_slow): New patterns.
4334	(negdf2): Adjust expander pattern and use negdf2_slow.
4335	(negsf2): Likewise.
4336
43372010-06-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
4338
4339	PR target/43740
4340	* config/pa/pa.c (emit_move_sequence): Don't infer REG_POINTER flag
4341	for SET source operand from SET destination operand.
4342
43432010-06-16  Martin Jambor  <mjambor@suse.cz>
4344
4345	PR lto/44464
4346	* tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
4347	on the newly dead SSA name.
4348
43492010-06-15  Eric Botcazou  <ebotcazou@adacore.com>
4350
4351	Backport from mainline
4352	2010-06-09  Eric Botcazou  <ebotcazou@adacore.com>
4353
4354	PR rtl-optimization/42461
4355	* dce.c (deletable_insn_p): Return true for const or pure calls again.
4356	* except.c (insn_could_throw_p): Return false if !flag_exceptions.
4357
43582010-06-15  Eric Botcazou  <ebotcazou@adacore.com>
4359
4360	Backport from mainline
4361	2010-06-11  Sandra Loosemore  <sandra@codesourcery.com>
4362
4363	* tree-ssa-loop-ivopts.c (get_computation_cost_at): Return again the
4364	computed cost.
4365
43662010-06-15  Jakub Jelinek  <jakub@redhat.com>
4367
4368	PR fortran/44536
4369	* langhooks.h (struct lang_hooks_for_decls): Add omp_report_decl.
4370	* langhooks-def.h (LANG_HOOKS_OMP_REPORT_DECL): Define.
4371	(LANG_HOOKS_DECLS): Add it.
4372	* gimplify.c (omp_notice_variable): Call
4373	lang_hooks.decls.omp_report_decl.
4374
43752010-06-15  Martin Jambor  <mjambor@suse.cz>
4376
4377	PR tree-optimization/44258
4378	* tree-sra.c (build_access_subtree): Return false iff there is a
4379	partial overlap.
4380	(build_access_trees): Likewise.
4381	(analyze_all_variable_accesses): Disqualify candidates if
4382	build_access_trees returns true for them.
4383
43842010-06-15  Martin Jambor  <mjambor@suse.cz>
4385
4386	PR tree-optimization/44423
4387	* tree-sra.c (dump_access): Dump also grp_assignment_read.
4388	(analyze_access_subtree): Pass negative allow_replacements to children
4389	if the current type is scalar.
4390
43912010-06-14  Andreas Schwab  <schwab@linux-m68k.org>
4392
4393	Backport from mainline
4394	* config/m68k/m68k.c (m68k_delegitimize_address): Don't do
4395	anything if the argument is not a MEM.
4396
43972010-06-14  H.J. Lu  <hongjiu.lu@intel.com>
4398
4399	Backport from mainline
4400	2010-06-14  H.J. Lu  <hongjiu.lu@intel.com>
4401
4402	PR target/44534
4403	* config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with 0x0.
4404	(vec_extract_lo_v16hi): Likewise.
4405	(vec_extract_lo_v32qi): Likewise.
4406
44072010-06-14  Jakub Jelinek  <jakub@redhat.com>
4408
4409	PR bootstrap/44426
4410	* tree.h (build_call_expr): Don't define as vararg macro, instead
4411	add a prototype.
4412	* builtins.c (build_call_nofold): Remove.
4413	(expand_builtin_int_roundingfn, expand_builtin_pow,
4414	expand_builtin_mempcpy_args, expand_builtin_stpcpy,
4415	expand_builtin_memset_args, expand_builtin_strcmp,
4416	expand_builtin_strncmp, expand_builtin_memory_chk): Use
4417	build_call_nofold_loc instead of build_call_nofold.
4418	(build_call_expr): New function.
4419
4420	PR tree-optimization/44508
4421	* tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE argument.
4422	* tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
4423	don't eliminate trivially dead stmts.
4424	* tree-vrp.c (vrp_finalize): Pass false as last argument
4425	to substitute_and_fold.
4426	* tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
4427	to substitute_and_fold.
4428	* tree-ssa-ccp.c (ccp_finalize): Likewise.
4429
44302010-06-14  Ira Rosen  <irar@il.ibm.com>
4431
4432	PR tree-optimization/44507
4433	* tree-vect-loop.c (get_initial_def_for_reduction): Use -1
4434	to build initial vector for BIT_AND_EXPR.
4435
44362010-06-14  Dave Korn  <dave.korn.cygwin@gmail.com>
4437
4438	Backport from mainline:
4439	2010-04-27  Dave Korn  <dave.korn.cygwin@gmail.com>
4440
4441	PR lto/42776
4442	* configure.ac (gcc_cv_as_section_has_align): Set if installed
4443	binutils supports extended .section directive needed by LTO, or
4444	warn if older binutils found.
4445	(LTO_BINARY_READER): New AC_SUBST'd variable.
4446	(LTO_USE_LIBELF): Likewise.
4447	* config.gcc (lto_binary_reader): New target-specific configure
4448	variable.
4449	* Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
4450	(LTO_USE_LIBELF): Likewise.
4451	* configure: Regenerate.
4452	* collect2.c (is_elf): Rename from this ...
4453	(is_elf_or_coff): ... to this, and recognize and allow i386 COFF
4454	 object files in addition to ELF-formatted ones.
4455	(scan_prog_file): Caller updated.  Also allow for LTO info marker
4456	symbol to be prefixed or not by an extra underscore.
4457	* config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
4458	* config/i386/winnt.c: Also #include lto-streamer.h
4459	(i386_pe_asm_named_section): Specify 1-byte section alignment for
4460	LTO named sections.
4461	(i386_pe_asm_output_aligned_decl_common): Add comment.
4462	(i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
4463
44642010-06-12  Uros Bizjak  <ubizjak@gmail.com>
4465
4466	PR target/44481
4467	* config/i386/i386.md (UNSPEC_PARITY): New unspec.
4468	(paritydi2_cmp): Use UNSPEC_PARITY unspec insted of parity RTX.
4469	(partiysi2_cmp): Ditto.
4470	(*partiyhi2_cmp): Ditto.
4471	(*parityqi2_cmp): Remove.
4472
44732010-06-10  Alexandre Oliva  <aoliva@redhat.com>
4474
4475	PR debug/41371
4476	* var-tracking.c (find_loc_in_1pdv): Remove recursion, only
4477	tail-recurse into canonical node.  Fast-forward over
4478	non-canonical VALUEs.
4479
44802010-06-10  Jan Beulich  <jbeulich@novell.com>
4481
4482	PR bootstrap/37304
4483	* configure.ac: Replace $() with ${} when intending to expand
4484	variables rather than invoking commands.
4485	* configure: Re-generate.
4486
44872010-06-09  Dave Korn  <dave.korn.cygwin@gmail.com>
4488
4489	* opts-common.c (prune_options): Ensure replacement argv array
4490	is correctly terminated by a NULL entry.
4491
44922010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
4493
4494	Backport from mainline:
4495	2010-04-28  Mike Stump  <mikestump@comcast.net>
4496	* config/i386/darwin.h (CC1_SPEC): Ignore -mdynamic-no-pic for
4497	now.
4498
44992010-06-09  Iain Sandoe  <iains@gcc.gnu.org>
4500
4501	Backport from mainline:
4502	2010-05-28  Iain Sandoe  <iains@gcc.gnu.org>
4503	* config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
4504
45052010-06-09  Edmar Wienskoski  <edmar@freescale.com>
4506
4507	PR target/44067
4508	* config/rs6000/rs6000.md (DIFD): Do not split dpfp values for
4509	e500v2 target.
4510
45112010-06-08  Uros Bizjak  <ubizjak@gmail.com>
4512
4513	* config/i386/i386.md (*movsi_1) <TYPE_LEA>: Use %a modifier
4514	to output operand 1.
4515	(ashift_zext lea splitter): Use DImode for multiplication.
4516
4517	* config/i386/i386.c (ix86_expand_epilogue): Do not use ix86_gen_add
4518	to generate addition.
4519
45202010-06-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4521
4522	* doc/sourcebuild.texi (Effective-Target Keywords, Other
4523	attributes): Document gas.
4524
45252010-06-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4526
4527	Backport from mainline:
4528	2010-06-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4529
4530	* configure.ac (gcc_cv_ld_sol2_emulation): Test for GNU ld *_sol2
4531	linker emulations.
4532	* configure: Regenerate.
4533	* config.in: Regenerate.
4534
4535	* config/i386/sol2-10.h [TARGET_GNU_LD] (I386_EMULATION): Define.
4536	(X86_64_EMULATION): Define.
4537	(TARGET_LD_EMULATION): Use them.
4538
4539	* config/sparc/sol2-gld-bi.h (SPARC32_EMULATION): Define.
4540	(SPARC64_EMULATION): Define.
4541	(LINK_ARCH_SPEC): Use them.
4542
45432010-06-07  Kai Tietz  <kai.tietz@onevision.com>
4544
4545	Backport from mainline:
4546	* config/i386.c (ix86_output_addr_vec_elt): Make LPREFIX
4547	argument for fprintf.
4548	(ix86_output_addr_diff_elt): Likewise.
4549	(x86_function_profiler): Likewise.
4550	* config/cygming.h (LOCAL_LABEL_PREFIX): Fix for x64 no-underscore.
4551	(LPREFIX): Likewise.
4552	(ASM_GENERATE_INTERNAL_LABEL): Likewise.
4553
45542010-06-04  Alexandre Oliva  <aoliva@redhat.com>
4555
4556	PR debug/41371
4557	* var-tracking.c (find_loc_in_1pdv): Mark initial value before
4558	recursing.  Check that recursion is bounded.  Rename inner var
4559	to avoid hiding incoming argument.
4560
45612010-06-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4562
4563	Backport from mainline:
4564	2010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4565
4566	* configure.ac: Check for elf_getshdrstrndx or elf_getshstrndx flavor.
4567	* configure: Regenerate.
4568	* config.in: Regenerate.
4569	* doc/install.texi (Prerequisites): Document that Solaris 2 libelf
4570	works.
4571
4572	2010-04-19  Richard Guenther  <rguenther@suse.de>
4573
4574	* configure.ac: Fix quoting around elf_getshstrndx ABI check.
4575	* configure: Re-generated.
4576
45772010-06-04  Uros Bizjak  <ubizjak@gmail.com>
4578
4579	* config/i386/i386.md (*addqi_4): Check for incdec_operand in QImode.
4580
45812010-06-04  Richard Guenther  <rguenther@suse.de>
4582
4583	Backport from mainline:
4584	2010-05-25  Jakub Jelinek  <jakub@redhat.com>
4585
4586	PR debug/41371
4587	* var-tracking.c (find_loc_in_1pdv): Guard asserts with
4588	ENABLE_CHECKING.
4589	(intersect_loc_chains): Walk the s2var's loc_chain together
4590	with s1node chain as long as the locations are equal, don't
4591	call find_loc_in_1pdv in that case.
4592
4593	2010-05-18  Jakub Jelinek  <jakub@redhat.com>
4594
4595	PR debug/41371
4596	* var-tracking.c (find_loc_in_1pdv): Add a few checks from
4597	rtx_equal_p inline.
4598
45992010-06-04  Alan Modra  <amodra@gmail.com>
4600
4601	PR target/44075
4602	* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
4603	fields for better packing.  Add lr_save_state.
4604	(rs6000_ra_ever_killed): Return lr_save_state if set.
4605	(rs6000_emit_eh_reg_restore): Set lr_save_state.
4606
46072010-06-03  Richard Guenther  <rguenther@suse.de>
4608
4609	Backport from mainline:
4610	2010-05-10  Richard Guenther  <rguenther@suse.de>
4611
4612	* lto-symtab.c (lto_symtab_entry_marked_p): Make entry
4613	marked if the entry identifier is marked.
4614
46152010-06-03  Richard Guenther  <rguenther@suse.de>
4616
4617	Backport from mainline:
4618	2010-05-16  Richard Guenther  <rguenther@suse.de>
4619
4620	* var-tracking.c (vars_copy_1): Inline ...
4621	(vars_copy): ... here.  Use FOR_EACH_HTAB_ELEMENT.
4622	(variable_union): Use FOR_EACH_HTAB_ELEMENT.  Merge asserts.
4623	(variable_merge_over_cur): Adjust.  Merge asserts.
4624	(variable_merge_over_src): Likewise.
4625	(dataflow_set_merge): Use FOR_EACH_HTAB_ELEMENT.
4626	(variable_post_merge_new_vals): Merge asserts.
4627	(variable_post_merge_perm_vals): Likewise.
4628	(find_mem_expr_in_1pdv): Likewise.
4629	(dataflow_set_different_value): Remove.
4630	(onepart_variable_different_p): Merge asserts.
4631	(variable_different_p): Likewise.
4632	(dataflow_set_different_1): Inline ...
4633	(dataflow_set_different): ... here.  Use FOR_EACH_HTAB_ELEMENT.
4634	(emit_notes_for_differences_1): Merge asserts.
4635
46362010-06-03  Jan Hubicka  <jh@suse.cz>
4637	    Jakub Jelinek  <jakub@redhat.com>
4638
4639	* var-tracking.c (dataflow_set_equiv_regs): Shortcut the loop if
4640	set->regs[i] is NULL or has just one entry.
4641
46422010-06-03  Alan Modra  <amodra@gmail.com>
4643
4644	PR target/44169
4645	* config/rs6000/rs6000.md (load_toc_v4_PIC_1b): Add label operand.
4646	* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Pass label
4647	rtx to gen_load_toc_v4_PIC_1b.  Tidy.
4648	(rs6000_emit_load_toc_table): Likewise.
4649
46502010-06-02  Richard Guenther  <rguenther@suse.de>
4651
4652	* lto-streamer-in.c (input_gimple_stmt): Fix typo.
4653
46542010-06-02  Richard Guenther  <rguenther@suse.de>
4655
4656	Backport from mainline:
4657	2010-05-27  Jan Hubicka  <jh@suse.cz>
4658
4659	* sched-ebb.c: Rename struct deps to struct deps_desc.
4660	* ddg.c: Likewise.
4661	* sel-sched-ir.c: Likewise.
4662	* sched-deps.c: Likewise.
4663	* sched-int.h: Likewise.
4664	* sched-rgn.c: Likewise.
4665
46662010-06-02  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
4667
4668	* config/s390/2097.md (z10_fhex): Remove insn reservation.
4669	* config/s390/s390.md (UNSPEC_COPYSIGN): Remove unused constant.
4670	(*mov<mode>_64 TD_TF, *mov<mode>_31 TD_TF, *mov<mode>_64dfp DD_DF,
4671	*mov<mode>_64 DD_DF, *mov<mode>_31, mov<mode>): Remove load zero
4672	instruction.
4673	* config/s390/s390.c: Don't accept fp zeros as valid constants
4674	anymore.
4675
46762010-05-31  Jakub Jelinek  <jakub@redhat.com>
4677
4678	PR target/44338
4679	* config/i386/sse.md (fma4i_fmadd<mode>4256, fma4i_fmsub<mode>4256,
4680	fma4i_fnmadd<mode>4256, fma4i_fnmsub<mode>4256, fma4i_fmadd<mode>4,
4681	fma4i_fmsub<mode>4, fma4i_fnmadd<mode>4, fma4i_fnmsub<mode>4,
4682	fma4i_vmfmadd<mode>4, fma4i_vmfmsub<mode>4, fma4i_vmfnmadd<mode>4,
4683	fma4i_vmfnmsub<mode>4, fma4i_fmaddsubv8sf4, fma4i_fmaddsubv4df4,
4684	fma4i_fmaddsubv4sf4, fma4i_fmaddsubv2df4, fma4i_fmsubaddv8sf4,
4685	fma4i_fmsubaddv4df4, fma4i_fmsubaddv4sf4, fma4i_fmsubaddv2df4):
4686	Guard only with TARGET_FMA4 instead of TARGET_FMA4 &&
4687	TARGET_FUSED_MADD.
4688
4689	PR middle-end/44337
4690	* expr.c (expand_assignment): Don't store anything for out-of-bounds
4691	array accesses with non-MEM.
4692
4693	PR tree-optimization/44182
4694	* tree-inline.c (copy_edges_for_bb): Don't split bb if a stmt that
4695	newly needs to end a bb is followed by debug stmts, instead return
4696	true from the function at the end.
4697	(maybe_move_debug_stmts_to_successors): New function.
4698	(copy_cfg_body): Call it if copy_edges_for_bb returned true.
4699
47002010-05-31  Kai Tietz  <kai.tietz@onevision.com>
4701
4702	Merged from trunk
4703	PR target/44161
4704	* config/i386/cygming.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
4705	flag_pic.
4706
47072010-05-28  Richard Guenther  <rguenther@suse.de>
4708
4709	PR lto/44312
4710	* lto-streamer-in.c (unpack_ts_fixed_cst_value_fields):
4711	Stream fixed-point constants mode.
4712	(unpack_ts_type_value_fields): Fix width of TYPE_MODE
4713	and TYPE_PRECISION.
4714	* lto-streamer-out.c (pack_ts_fixed_cst_value_fields):
4715	Stream fixed-point constants mode.
4716	(pack_ts_function_decl_value_fields): Fix width of TYPE_MODE
4717	and TYPE_PRECISION.
4718
47192010-05-28  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
4720
4721	* config/s390/s390.md (movqi): Fix typo ('*' -> '#').
4722
47232010-05-28  Jakub Jelinek  <jakub@redhat.com>
4724
4725	PR target/43636
4726	* builtins.c (expand_movstr): Use a temporary pseudo instead
4727	of target even when target is not NULL and not const0_rtx, but
4728	fails movstr predicate.
4729	* config/m32c/blkmov.md (movstr): Add predicate to first operand.
4730
47312010-05-27  Jon Beniston  <jon@beniston.com>
4732
4733	PR 43726
4734	* config/lm32/lm32.h: Remove definition of
4735	GO_IF_MODE_DEPENDENT_ADDRESS. Update copyright year.
4736
47372010-05-26  Richard Guenther  <rguenther@suse.de>
4738
4739	PR rtl-optimization/44164
4740	* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
4741	no-common access-path disambiguation.
4742	(indirect_ref_may_alias_decl_p): Adjust.
4743	(indirect_refs_may_alias_p): Likewise.
4744	(refs_may_alias_p_1): Likewise.
4745
47462010-05-26  Richard Guenther  <rguenther@suse.de>
4747
4748	PR middle-end/44069
4749	* tree-ssa-ccp.c (maybe_fold_stmt_addition): Avoid generating
4750	out-of-bounds array accesses.
4751
47522010-05-26  Richard Guenther  <rguenther@suse.de>
4753
4754	Backport from mainline:
4755	2010-04-15  Richard Guenther  <rguenther@suse.de>
4756
4757	* alias.c (alias_set_subset_of): Handle alias-set zero
4758	child properly.
4759
47602010-05-26  Jakub Jelinek  <jakub@redhat.com>
4761
4762	PR target/44199
4763	* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
4764	or total_size is larger than red zone size for non-V4 ABI, emit a
4765	stack_tie resp. frame_tie insn before stack pointer restore.
4766	* config/rs6000/rs6000.md (frame_tie): New insn.
4767
47682010-05-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4769
4770	* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
4771	stderr to /dev/null instead of grep -q.
4772	* configure: Regenerate.
4773
47742010-05-25  Richard Guenther  <rguenther@suse.de>
4775
4776	* gimple.c (gimple_types_compatible_p): Check type qualifications
4777	before merging pointer to complete and pointer to incomplete type.
4778	* lto-symtab.c (lto_symtab_resolve_symbols): For commons make sure
4779	we use our own resolution algorithm.  The gold linker plugin
4780	doesn't do the job we want it to do here.
4781
47822010-05-24  Richard Guenther  <rguenther@suse.de>
4783
4784	PR lto/44196
4785	* tree.c (find_decls_types_r): Walk BLOCKs and its vars.
4786
47872010-05-24  Uros Bizjak  <ubizjak@gmail.com>
4788
4789	Backport from mainline:
4790	2010-05-20  Uros Bizjak  <ubizjak@gmail.com>
4791
4792	PR target/43733
4793	* configure.ac (gcc_cv_as_ix86_sahf): Switch to 64bit mode.
4794	* configure: Regenerate.
4795	* config.in: Regenerate.
4796	* config/i386/i386.md (x86_sahf_1): Conditionally output 0x9e
4797	instead of sahf only for 64bit targets.
4798
47992010-05-24  H.J. Lu  <hongjiu.lu@intel.com>
4800
4801	Backport from mainline
4802	2010-05-24  H.J. Lu  <hongjiu.lu@intel.com>
4803
4804	* config/i386/ia32intrin.h (__crc32q): Define only if
4805	__SSE4_2__ is defined.
4806
48072010-05-23  H.J. Lu  <hongjiu.lu@intel.com>
4808
4809	Backport from mainline
4810	2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>
4811
4812	PR target/44245
4813	* config/i386/i386.c (def_builtin): Properly check
4814	OPTION_MASK_ISA_64BIT.
4815
48162010-05-23  Maarten Lankhorst  <mlankhorst@codeweavers.com>
4817
4818	Merged from trunk
4819	PR target/43869
4820	* config/i386/i386.c: Make sure that the correct regparm is passed.
4821
48222010-05-21  Jakub Jelinek  <jakub@redhat.com>
4823
4824	PR debug/44223
4825	* haifa-sched.c (schedule_insn): When freeing INSN_REG_USE_LIST,
4826	unchain each use from the cyclic next_regno_use chain first.
4827
48282010-05-21  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
4829
4830	* config/s390/s390.c (override_options): Increase the default
4831	of max-completely-peel-times.
4832
48332010-05-21  Richard Guenther  <rguenther@suse.de>
4834
4835	PR tree-optimization/44038
4836	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Avoid
4837	taking the address of a V_C_E of a constant.
4838
48392010-05-21  Richard Guenther  <rguenther@suse.de>
4840
4841	PR tree-optimization/43949
4842	* tree-vrp.c (ssa_name_nonnegative_p): Return true for unsigend types.
4843	(extract_range_from_binary_expr): Handle TRUNC_MOD_EXPR.
4844
48452010-05-21  Jakub Jelinek  <jakub@redhat.com>
4846
4847	PR debug/44205
4848	* tree-cfgcleanup.c (tree_forwarder_block_p): Return false if
4849	at -O0 goto_locus of any of the incoming edges differs from
4850	goto_locus of outgoing edge, or gimple_location of any of the
4851	labels differs.
4852
48532010-05-20  Jakub Jelinek  <jakub@redhat.com>
4854
4855	PR debug/44178
4856	* haifa-sched.c (initiate_bb_reg_pressure_info): Do not call
4857	setup_ref_regs for DEBUG_INSNs.
4858
48592010-05-19  Kenneth Zadeck  <zadeck@naturalbridge.com>
4860
4861	PR bootstrap/43870
4862	* df-scan.c (df_ref_compare): Stabilize sort.
4863
48642010-05-20  Hans-Peter Nilsson  <hp@axis.com>
4865
4866	PR target/44202
4867	* config/cris/cris.md ("*addsi3_v32"): Correct "cc"
4868	settings for 16-bit-constant "addo" alternative.
4869
48702010-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4871
4872	Backport from mainline:
4873	2010-05-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4874
4875	PR target/44074
4876	* configure.ac (HAVE_AS_IX86_REP_LOCK_PREFIX): New test.
4877	* configure: Regenerate.
4878	* config.in: Regenerate.
4879	* config/i386/i386.c (print_operand) <case ;>: Also print ; if
4880	!HAVE_AS_IX86_REP_LOCK_PREFIX.
4881	Don't emit whitespace.
4882	* config/i386/i386.md (*rep_movdi_rex64): Use {%;} after rep.
4883	(*rep_movsi): Likewise.
4884	(*rep_movsi_rex64): Likewise.
4885	(*rep_movqi): Likewise.
4886	(*rep_movqi_rex64): Likewise.
4887	(*rep_stosdi_rex64): Likewise.
4888	(*rep_stossi): Likewise.
4889	(*rep_stossi_rex64): Likewise.
4890	(*rep_stosqi): Likewise.
4891	(*rep_stosqi_rex64): Likewise.
4892	(*cmpstrnqi_nz_1): Use {%;} after repz.
4893	(*cmpstrnqi_nz_rex_1): Likewise.
4894	(*cmpstrnqi_1): Likewise.
4895	(*cmpstrnqi_rex_1): Likewise.
4896	(*strlenqi_1): Use {%;} after repnz.
4897	(*strlenqi_rex_1): Likewise.
4898	* config/i386/sync.md (memory_barrier_nosse): Replace {%;| } by {%;} .
4899	(*sync_compare_and_swap<mode>): Likewise.
4900	(sync_double_compare_and_swap<mode>): Likewise.
4901	(*sync_double_compare_and_swapdi_pic): Likewise.
4902	(sync_old_add<mode>): Likewise.
4903	(sync_add<mode>): Likewise.
4904	(sync_sub<mode>): Likewise.
4905	(sync_<code><mode>): Likewise.
4906
49072010-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4908
4909	* doc/sourcebuild.texi (Effective-Target Keywords): Document
4910	3dnow, sse3, sse2.
4911	(Directives): Document optional	dg-require-effective-target
4912	selector.
4913
49142010-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4915
4916	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32 to
4917	pentiumpro on Solaris 8/x86 with Sun as.
4918	* configure.ac (gcc_cv_as_hidden): Check for Solaris 9/x86 as
4919	hidden alias bug.
4920	(gcc_cv_as_ix86_quad): Check for .quad directive.
4921	* configure: Regenerate.
4922	* config.in: Regenerate.
4923	* config/i386/sol2.h (ASM_QUAD): Change guard to !HAVE_AS_IX86_QUAD.
4924
49252010-05-19  Richard Guenther  <rguenther@suse.de>
4926
4927	PR tree-optimization/43987
4928	* tree-ssa-structalias.c (could_have_pointers): For possibly
4929	address-taken variables force pointers to be recorded.
4930	(create_variable_info_for_1): Likewise.
4931	(push_fields_onto_fieldstack): Pass in wheter all fields
4932	must have pointers.
4933	(find_func_aliases): Query types instead of vars whether
4934	they contain pointers where appropriate.
4935
49362010-05-19  Richard Guenther  <rguenther@suse.de>
4937
4938	Backport from mainline:
4939	2010-04-26  Richard Guenther  <rguenther@suse.de>
4940
4941	PR lto/43455
4942	* tree-inline.c (tree_can_inline_p): Also check compatibility
4943	of return types.
4944
4945	2010-04-23  Richard Guenther  <rguenther@suse.de>
4946
4947	PR lto/42653
4948	* tree.c (free_lang_data_in_decl): Do not reset DECL_CONTEXT
4949	of FUNCTION_DECLs.
4950
4951	2010-04-26  Richard Guenther  <rguenther@suse.de>
4952
4953	PR lto/42425
4954	* tree.c (free_lang_data_in_type): Do not free TYPE_CONTEXT
4955	if emitting debug information and it is either a function
4956	or a namespace decl.
4957
4958	2010-04-26  Richard Guenther  <rguenther@suse.de>
4959
4960	PR lto/43080
4961	* gimple.c (gimple_decl_printable_name): Deal gracefully
4962	with a NULL DECL_NAME.
4963
4964	2010-04-30  Richard Guenther  <rguenther@suse.de>
4965
4966	PR lto/43946
4967	* passes.c (init_optimization_passes): Move pass_ipa_free_lang_data
4968	first after all lowering passes.
4969
49702010-05-18  Steven Bosscher  <steven@gcc.gnu.org>
4971
4972	PR lto/44184
4973	* lto-streamer-out.c (output_gimple_stmt): Output number of labels
4974	in a GIMPLE_ASM.
4975	* lto-streamer-in.c (input_gimple_stmt): Read number of labels
4976	in a GIMPLE_ASM.
4977
49782010-05-17  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4979
4980	* config/i386/sol2.h (TARGET_SUN_TLS): Remove duplicate definition.
4981
49822010-05-17  Jakub Jelinek  <jakub@redhat.com>
4983
4984	PR bootstrap/42347
4985	* cfglayout.c (fixup_reorder_chain): Allow returnjump_p
4986	to have no fallthru edge.
4987
4988	PR middle-end/44102
4989	* cfgcleanup.c (try_optimize_cfg): When removing trivially empty
4990	bb with no successors, move footer whenever in IR_RTL_CFGLAYOUT
4991	mode, not just when CLEANUP_CFGLAYOUT, and when in IR_RTL_CFGRTL
4992	add BARRIER after previous bb if needed.
4993
49942010-05-17  Alan Modra  <amodra@gmail.com>
4995
4996	* config/rs6000/rs6000.c (rs6000_emit_allocate_stack): Delete
4997	unnecessary prototype.  Replace copy_r12 and copy_r11 flag params
4998	with copy_reg rtx param.
4999	(rs6000_emit_prologue): Update rs6000_emit_allocate_stack calls.
5000	Correct cases where code for ABI_V4 did not initialise the reg
5001	used to access frame.  Also leave frame_reg_rtx as sp for large
5002	frames that save no regs.
5003
50042010-05-17  Eric Botcazou  <ebotcazou@adacore.com>
5005
5006	Backport from mainline
5007	2010-05-16  Eric Botcazou  <ebotcazou@adacore.com>
5008
5009	* opts.c (handle_option): Call into LTO streamer only if ENABLE_LTO.
5010	(decode_options): Likewise.
5011	* Makefile.in (opts.o): Add dependency on LTO_STREAMER_H.
5012
50132010-05-14  Jason Merrill  <jason@redhat.com>
5014
5015	PR c++/44127
5016	* gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
5017	(gimple_call_set_nothrow): New.
5018	* gimple.c (gimple_build_call_from_tree): Call it.
5019	(gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
5020
5021	PR c++/44127
5022	* gimplify.c (gimplify_seq_add_stmt): No longer static.
5023	* gimple.h: Declare it.
5024	* gimple.c (gimple_build_eh_filter): No ops.
5025
50262010-05-14  Jakub Jelinek  <jakub@redhat.com>
5027
5028	PR debug/44136
5029	* cfgexpand.c (expand_debug_expr): If non-memory op0
5030	has BLKmode, return NULL.
5031
50322010-05-14  H.J. Lu  <hongjiu.lu@intel.com>
5033
5034	Backport from mainline
5035	2010-05-12  H.J. Lu  <hongjiu.lu@intel.com>
5036
5037	PR target/44088
5038	* config/i386/sse.md (*avx_vmmaskcmp<mode>3): New.
5039
50402010-05-14  Richard Guenther  <rguenther@suse.de>
5041
5042	PR tree-optimization/44124
5043	* tree-ssa-sccvn.c (vn_nary_may_trap): Fix invalid memory access.
5044
50452010-05-13  Jason Merrill  <jason@redhat.com>
5046
5047	* gimplify.c (gimplify_expr) [MODIFY_EXPR]: Trust GS_OK even if the
5048	rhs didn't change.
5049
5050	PR c++/43787
5051	* gimplify.c (gimplify_expr): Keep working if gimplify_modify_expr
5052	returns GS_OK.
5053	(gimplify_modify_expr_rhs): Return GS_OK if anything changed.
5054
50552010-05-12  Wolfgang Gellerich  <gellerich@de.ibm.com>
5056
5057	* config/s390/s390.c (override_options): Adjust the z10 defaults
5058	for max-unroll-times, max-completely-peeled-insns
5059	and max-completely-peel-times.
5060
50612010-05-12  Jakub Jelinek  <jakub@redhat.com>
5062
5063	PR middle-end/44085
5064	* gimplify.c (enum omp_region_type): Add ORT_UNTIED_TASK,
5065	change value of ORT_TASK.
5066	(new_omp_context): Handle ORT_UNTIED_TASK like ORT_TASK.
5067	(omp_notice_threadprivate_variable): New function.
5068	(omp_notice_variable): Call it for threadprivate variables.
5069	If enclosing ctx is a task, print enclosing task rather than
5070	enclosing parallel.  Handle ORT_UNTIED_TASK like ORT_TASK.
5071	(gimplify_omp_task): Pass ORT_UNTIED_TASK instead of ORT_TASK
5072	if task has untied clause.
5073
50742010-05-11  Jakub Jelinek  <jakub@redhat.com>
5075
5076	PR middle-end/44071
5077	* cfglayout.c (fixup_reorder_chain): Allow asm goto to have
5078	no fallthru edge.
5079	* cfgcleanup.c (try_optimize_cfg): When in cfglayout mode
5080	optimizing away empty bb with no successors, move over its
5081	footer chain to fallthru predecessor.
5082	* cfgrtl.c (patch_jump_insn): Update also REG_LABEL_OPERAND.
5083	(rtl_split_edge): For asm goto call patch_jump_insn even if
5084	splitting fallthru edge.
5085
50862010-05-11  Martin Jambor  <mjambor@suse.cz>
5087
5088	PR middle-end/43812
5089	* ipa.c (dissolve_same_comdat_group_list): New function.
5090	(function_and_variable_visibility): Call
5091	dissolve_same_comdat_group_list when comdat group contains external or
5092	newly local nodes.
5093	* cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
5094	lists are circular and that they contain only DECL_ONE_ONLY nodes.
5095
50962010-05-10  Jakub Jelinek  <jakub@redhat.com>
5097
5098	PR debug/44028
5099	* haifa-sched.c (schedule_insn): When clearing INSN_VAR_LOCATION_LOC,
5100	clear also INSN_REG_USE_LIST.
5101
51022010-05-10  H.J. Lu  <hongjiu.lu@intel.com>
5103
5104	Backport from mainline
5105	2010-05-10  H.J. Lu  <hongjiu.lu@intel.com>
5106		    Vladimir Makarov  <vmakarov@redhat.com>
5107
5108	PR rtl-optimization/44012
5109	* ira-build.c (remove_unnecessary_allocnos): Nullify
5110	regno_allocno_map of the removed allocno.
5111
51122010-05-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5113
5114	* configure.ac (gcc_cv_ld_eh_gc_sections): Redirect objdump errors
5115	to /dev/null.
5116	* configure: Regenerate.
5117
51182010-05-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5119
5120	* config/sol2.c (solaris_assemble_visibility): Declare decl, vis
5121	unused.
5122	Define visibility_types, name, type inside HAVE_GAS_HIDDEN.
5123	* configure.ac (gcc_cv_ld_hidden): Explain stages of visibility
5124	support in Sun ld.
5125	* configure: Regenerate.
5126
51272010-05-09  H.J. Lu  <hongjiu.lu@intel.com>
5128
5129	Backport from mainline
5130	2010-05-09  H.J. Lu  <hongjiu.lu@intel.com>
5131
5132	PR target/44046
5133	* config/i386/driver-i386.c (host_detect_local_cpu): Properly
5134	detect Atom, Core 2 and Core i7.
5135
51362010-05-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5137
5138	PR documentation/44016
5139	* doc/standards.texi (Standards): Link to unversioned
5140	cxx0x_status.html page.
5141
51422010-05-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5143
5144	* config/mips/iris.h (LINK_SPEC): Don't pass -init, -fini with -r.
5145
51462010-05-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5147
5148	* config/mips/dbxmdebug.h: Remove.
5149	* config.gcc (mips-sgi-irix[56]*): Remove mips/dbxmdebug.h.
5150
51512010-05-05  Kaz Kojima  <kkojima@gcc.gnu.org>
5152
5153	Backport from mainline:
5154	2010-04-22  Kaz Kojima  <kkojima@gcc.gnu.org>
5155
5156	PR target/43744
5157	* config/sh/sh.c (find_barrier): Don't emit a constant pool
5158	in the middle of insns for casesi_worker_2.
5159
51602010-05-05  Jason Merrill  <jason@redhat.com>
5161
5162	PR debug/43370
5163	* c-common.c (handle_aligned_attribute): Respect
5164	ATTR_FLAG_TYPE_IN_PLACE.
5165
51662010-05-05  Richard Guenther  <rguenther@suse.de>
5167
5168	PR c++/43880
5169	* tree-inline.c (copy_bind_expr): Also copy bind expr vars
5170	value-exprs.
5171
51722010-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5173
5174	Backport from mainline
5175	2010-05-04  H.J. Lu  <hongjiu.lu@intel.com>
5176
5177	PR middle-end/43671
5178	* alias.c (true_dependence): Handle the same VALUE in x and mem.
5179	(canon_true_dependence): Likewise.
5180	(write_dependence_p): Likewise.
5181
51822010-05-03  Jakub Jelinek  <jakub@redhat.com>
5183
5184	PR debug/43972
5185	* config/i386/i386.c (ix86_delegitimize_address): Make sure the
5186	result mode matches original rtl mode.
5187
51882010-05-02  Uros Bizjak  <ubizjak@gmail.com>
5189
5190	* config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
5191	when processing flag options.
5192
51932010-05-02  H.J. Lu  <hongjiu.lu@intel.com>
5194
5195	Backport from mainline
5196	2010-04-29  H.J. Lu  <hongjiu.lu@intel.com>
5197
5198	PR target/43921
5199	* config/i386/i386.c (get_some_local_dynamic_name): Replace
5200	INSN_P with NONDEBUG_INSN_P.
5201	(distance_non_agu_define): Likewise.
5202	(distance_agu_use): Likewise.
5203
52042010-04-30  Eric Botcazou  <ebotcazou@adacore.com>
5205
5206	* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Check the alignment of
5207	the variable part of the offset as well.  Use highest_pow2_factor for
5208	all alignment checks.
5209
52102010-04-30  Jakub Jelinek  <jakub@redhat.com>
5211
5212	PR debug/43942
5213	* tree.c (auto_var_in_fn_p): Return false for DECL_EXTERNAL vars.
5214
52152010-04-28  Uros Bizjak  <ubizjak@gmail.com>
5216
5217	* config/alpha/elf.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
5218	type if available.
5219
52202010-04-28  Eric Botcazou  <ebotcazou@adacore.com>
5221
5222	* lto-streamer-in.c (unpack_ts_type_value_fields): Replace test for
5223	record or union type with RECORD_OR_UNION_TYPE_P predicate.
5224	(lto_input_ts_type_tree_pointers): Likewise.
5225	* lto-streamer-out.c (pack_ts_type_value_fields): Likewise.
5226	(lto_output_ts_type_tree_pointers): Likewise.
5227
52282010-04-28  Eric Botcazou  <ebotcazou@adacore.com>
5229
5230	* lto-streamer.c [LTO_STREAMER_DEBUG] (tree_htab, tree_hash_entry,
5231	hash_tree, eq_tree): New tree hash table.
5232	(lto_streamer_init) [LTO_STREAMER_DEBUG]: Initialize it.
5233	[LTO_STREAMER_DEBUG] (lto_orig_address_map, lto_orig_address_get,
5234	lto_orig_address_remove): Reimplement.
5235
52362010-04-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5237
5238	PR target/22224
5239	* config/alpha/osf.h (ASM_OUTPUT_LOCAL): Redefine.
5240
52412010-04-28  Martin Jambor  <mjambor@suse.cz>
5242
5243	PR tree-optimization/43846
5244	* tree-sra.c (struct access): New flag grp_assignment_read.
5245	(build_accesses_from_assign): Set grp_assignment_read.
5246	(sort_and_splice_var_accesses): Propagate grp_assignment_read.
5247	(enum mark_read_status): New type.
5248	(analyze_access_subtree): Propagate grp_assignment_read, create
5249	accesses also if both direct_read and root->grp_assignment_read.
5250
52512010-04-27  Kai Tietz  <kai.tietz@onevision.com>
5252
5253	Back-merged from trnnk.
5254	* collect2.c (TARGET_64BIT): Redefine to target's default.
5255	* tlink.c: Likewise.
5256	* config/i386/cygming.h (USER_LABEL_PREFIX): Define
5257	dependent to TARGET_64BIT and USE_MINGW64_LEADING_UNDERSCORES.
5258	* config/i386/i386.h (CRT_CALL_STATIC_FUNCTION): Use
5259	for underscoring __USER_LABEL_PREFIX__.
5260	* config/i386/mingw-w64.h (SUB_LINK_ENTRY): New macro.
5261	(SUB_LINK_ENTRY32): New.
5262	(SUB_LINK_ENTRY64): New.
5263	(LINK_SPEC): Replace entry point spec by
5264	SUB_LINK_ENTRY.
5265	* config/i386/mingw32 (SUB_LINK_ENTRY32): New.
5266	(SUB_LINK_ENTRY64): New.
5267	(SUB_LINK_ENTRY): New.
5268	(LINK_SPEC): Use SUB_LINK_ENTRY instead of hard-coded entry-point.
5269	(DWARF2_UNWIND_INFO): Error out for use of dw2 unwind when
5270	x64 target is choosen.
5271	* config.in (USE_MINGW64_LEADING_UNDERSCORES): New.
5272	* configure: Regenerated.
5273	* configure.ac (leading-mingw64-underscores): Option added.
5274
52752010-04-27  Jakub Jelinek  <jakub@redhat.com>
5276
5277	* dwarf2out.c (def_cfa_1): After DW_CFA_def_cfa_expression
5278	force using DW_CFA_def_cfa instead of DW_CFA_def_cfa_register
5279	or DW_CFA_def_cfa_offset{,_sf}.
5280
5281	* unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
5282
52832010-04-27  Hans-Peter Nilsson  <hp@bitrange.com>
5284
5285	PR target/43889
5286	* config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
5287	Add missing earlyclobber for second alternative.
5288
52892010-04-26  Jakub Jelinek  <jakub@redhat.com>
5290
5291	PR c/43893
5292	* c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
5293
52942010-04-26  Jie Zhang  <jie@codesourcery.com>
5295
5296	PR tree-optimization/43833
5297	* tree-vrp.c (range_int_cst_p): New.
5298	(range_int_cst_singleton_p): New.
5299	(extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
5300	when both operands are constants.  Use range_int_cst_p in
5301	BIT_IOR_EXPR case.
5302
53032010-04-23  Martin Jambor  <mjambor@suse.cz>
5304
5305	PR middle-end/43835
5306	* tree-sra.c (ipa_sra_preliminary_function_checks): Check that the
5307	function does not have type attributes.
5308
53092010-04-23  Richard Guenther  <rguenther@suse.de>
5310
5311	PR tree-optimization/43572
5312	* tree-tailcall.c (find_tail_calls): Allow PARM_DECL uses.
5313
53142010-04-23  Richard Guenther  <rguenther@suse.de>
5315
5316	Backport from mainline
5317	2010-04-22  Richard Guenther  <rguenther@suse.de>
5318
5319	PR tree-optimization/43845
5320	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Properly
5321	lookup the CALL_EXPR function and arguments.
5322
53232010-04-21  Jakub Jelinek  <jakub@redhat.com>
5324
5325	PR middle-end/43570
5326	* omp-low.c (scan_sharing_clauses): Don't scan_omp_op
5327	OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
5328	(lower_copyprivate_clauses): Use private var in outer
5329	context instead of original var.  Make sure the types
5330	are correct for VLAs.
5331
53322010-04-20  Richard Guenther  <rguenther@suse.de>
5333
5334	PR tree-optimization/43783
5335	* tree-ssa-pre.c (create_component_ref_by_pieces_1): Drop
5336	constant ARRAY_REF operands two and three if possible.
5337
53382010-04-20  Richard Guenther  <rguenther@suse.de>
5339
5340	PR tree-optimization/43796
5341	* tree-vrp.c (adjust_range_with_scev): Lookup init and step
5342	from SCEV in the lattice.
5343	(vrp_visit_phi_node): Dump change.
5344
53452010-04-20  Jakub Jelinek  <jakub@redhat.com>
5346
5347	PR middle-end/43337
5348	* tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
5349	with non-local decl doesn't need chain.
5350
53512010-04-20  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
5352
5353	PR target/43635
5354	* config/s390/s390.c (s390_emit_call): Turn direct into indirect
5355	calls for -fpic -m31 if they have been sibcall optimized.
5356
53572010-04-19  DJ Delorie  <dj@redhat.com>
5358
5359	* cfgexpand.c (expand_debug_expr): Check for mismatched modes in
5360	POINTER_PLUS_EXPR and fix them.
5361
53622010-04-19  Jie Zhang  <jie@codesourcery.com>
5363
5364	PR target/43662
5365	* reginfo.c (reinit_regs): Set caller_save_initialized_p
5366	to false.
5367
53682010-04-19  Richard Guenther  <rguenther@suse.de>
5369
5370	PR tree-optimization/43572
5371	* tree-tailcall.c (find_tail_calls): Verify the tail call
5372	properly.
5373
53742010-04-19  Ira Rosen  <irar@il.ibm.com>
5375
5376	PR tree-optimization/43771
5377	* tree-vect-slp.c (vect_supported_load_permutation_p): Check that
5378	load permutation doesn't have gaps.
5379
53802010-04-18  Matthias Klose  <doko@ubuntu.com>
5381
5382	* gcc.c (main): Search for liblto_plugin.so with mode R_OK.
5383
53842010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5385
5386	Backport from mainline:
5387	2010-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5388
5389	* configure.ac (plugin -rdynamic test): Log result.
5390	* configure: Regenerate.
5391	* config/sol2.h (LINK_SPEC): Handle -rdynamic.
5392	(RDYNAMIC_SPEC): Define.
5393	* config/sol2-gld.h (RDYNAMIC_SPEC): Redefine.
5394
53952010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5396
5397	Backport from mainline:
5398	2010-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5399
5400	* config/sparc/sol2-gld.h: Remove SPARC reference.  Rename ...
5401	* config/sol2-gld.h: ... here.
5402	* config.gcc (sparc*-*-solaris2*): Reflect this.
5403	(i[34567]86-*-solaris2*): Use it.
5404
54052010-04-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5406
5407	Backport from mainline:
5408	2010-04-09  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5409
5410	* configure.ac: Determine Sun ld version numbers.
5411	(comdat_group): Restrict GNU ld version checks to gld.
5412	(comdat_group, *-*-solaris2.1[1-9]*): Enable for Sun ld > 1.1688.
5413	(enable_comdat): Support --enable-comdat.
5414	* configure: Regenerate.
5415	* doc/install.texi (Configuration): Document --enable-comdat.
5416
54172010-04-01  Uros Bizjak  <ubizjak@gmail.com>
5418
5419	Backport from mainline:
5420	2010-04-14  Uros Bizjak  <ubizjak@gmail.com>
5421
5422	* config/i386/i386.md (*divmod<mode>4): Remove stray "&&" from
5423	splitter condition.
5424	(*udivmod<mode>4): Ditto.
5425
5426	2010-04-14  Uros Bizjak  <ubizjak@gmail.com>
5427
5428	* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
5429	from insn template.
5430
54312010-04-15  Thomas Schwinge  <tschwinge@gnu.org>
5432
5433	Backport from mainline:
5434	2010-04-15  Thomas Schwinge  <tschwinge@gnu.org>
5435
5436	* config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux.
5437
54382010-04-15  Richard Guenther  <rguenther@suse.de>
5439
5440	PR tree-optimization/43627
5441	* tree-vrp.c (extract_range_from_unary_expr): Widenings
5442	of [1, +INF(OVF)] go to [1, +INF(OVF)] of the wider type,
5443	not varying.
5444
54452010-04-14  Richard Guenther  <rguenther@suse.de>
5446
5447	* DEV-PHASE: Set back to prerelease.
5448	* BASE-VER: Bump to 4.5.1.
5449
54502010-04-14  Release Manager
5451
5452	* GCC 4.5.0 released.
5453
54542010-04-13  Michael Matz  <matz@suse.de>
5455
5456	PR middle-end/43730
5457	* builtins.c (expand_builtin_interclass_mathfn): Also create
5458	a register if the predicate doesn't match.
5459
54602010-04-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5461
5462	* doc/contrib.texi (Contributors, Rainer Orth): Update.
5463
54642010-04-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5465
5466	PR target/43643
5467	* config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
5468
54692010-04-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5470
5471	* doc/install.texi (Specific, i?86-*-solaris2.10): Fix grammar.
5472	(Specific, *-*-solaris2*): Likewise.
5473	Don't prefer Sun as over GNU as.
5474
54752010-04-08  Richard Guenther  <rguenther@suse.de>
5476
5477	PR tree-optimization/43679
5478	* tree-ssa-pre.c (eliminate): Only propagate copies.
5479
54802010-04-08  Jakub Jelinek  <jakub@redhat.com>
5481
5482	PR debug/43670
5483	* cfgexpand.c (expand_debug_expr): If for non-NULL offset
5484	op0 is not a MEM, just return NULL instead of assertion
5485	failure.
5486	(discover_nonconstant_array_refs): Don't walk debug stmts.
5487
54882010-04-07  H.J. Lu  <hongjiu.lu@intel.com>
5489
5490	PR target/43668
5491	* config/i386/i386.c (setup_incoming_varargs_64): Align stack to
5492	16byte for FP register save area.
5493
54942010-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5495
5496	* doc/install.texi (Configuration): Move description of
5497	--enable-lto, --with-libelf*, --enable-gold from Java section to
5498	general section.
5499
5500	* doc/generic.texi (Working with declarations)
5501	(Function Properties, C and C++ Trees): Fix typos.
5502	* doc/sourcebuild.texi (Top Level): Likewise.
5503
55042010-04-07  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5505
5506	* config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to
5507	generic.
5508
55092010-04-06  Jakub Jelinek  <jakub@redhat.com>
5510
5511	PR target/43667
5512	* config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
5513	instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
5514	(ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
5515	MULTI_* defines for 4 argument vpermil2p* builtins.
5516
55172010-04-06  Joseph Myers  <joseph@codesourcery.com>
5518
5519	* doc/invoke.texi, doc/standards.texi: Refer to
5520	gcc-4.5/c99status.html.
5521
55222010-04-06  Jakub Jelinek  <jakub@redhat.com>
5523
5524	PR target/43638
5525	* config/i386/i386.c (print_operand): Remove 'e' and 'E' code
5526	handling.
5527
55282010-04-06  Richard Guenther  <rguenther@suse.de>
5529
5530	PR middle-end/43661
5531	* fold-const.c (fold_comparison): Handle X * 0 CMP 0.
5532
55332010-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5534
5535	* doc/invoke.texi (Optimize Options): Document that LTO
5536	won't remove object access purely due to incompatible
5537	declarations.
5538
55392010-04-04  Matthias Klose  <doko@ubuntu.com>
5540
5541	* graphite-sese-to-poly.c (translate_scalar_reduction_to_array):
5542	Initialize variable.
5543
55442010-04-03  Richard Guenther  <rguenther@suse.de>
5545
5546	PR middle-end/42509
5547	* alias.c (nonoverlapping_memrefs_p): For spill-slot accesses
5548	require a non-NULL MEM_OFFSET.
5549
55502010-04-02  Steven Bosscher  <steven@gcc.gnu.org>
5551
5552	* ada/gcc-interface/Make-lang.in, alias.c, attribs.c, auto-inc-dec.c,
5553	basic-block.h, bb-reorder.c, calls.c, c-common.c, cgraph.h,
5554	collect2.h, config/alpha/alpha.c, config/alpha/alpha.md,
5555	config/alpha/predicates.md, config/arm/arm.md,
5556	config/arm/lib1funcs.asm, config/arm/neon-schedgen.ml,
5557	config/avr/avr.c, config/avr/avr.md, config/bfin/bfin.c,
5558	config/darwin9.h, config/darwin.c, config/darwin.h,
5559	config/h8300/h8300.c, config/i386/cpuid.h, config/i386/cygming.h,
5560	config/i386/cygwin.h, config/i386/mingw32.h, config/i386/msformat-c.c,
5561	config/i386/sol2-10.h, config/i386/xopintrin.h, config/ia64/ia64.c,
5562	config/ia64/ia64.md, config/ia64/sync.md, config/mep/mep.c,
5563	config/mips/mips.md, config/mn10300/mn10300.c,
5564	config/mn10300/mn10300.h, config/pa/pa.c, config/pa/pa.md,
5565	config/rs6000/aix.h, config/rs6000/dfp.md,
5566	config/rs6000/rs6000-builtin.def, config/rs6000/rs6000-c.c,
5567	config/rs6000/vector.md, config/rtems.h, config/rx/rx.md,
5568	config/s390/s390.md, config/sol2-c.c, config/sparc/sol2-bi.h,
5569	config/sparc/sol2-gas.h, config/sparc/sparc.h, config/sparc/sparc.md,
5570	config/sparc/sparc-protos.h, config/spu/spu.c, config/spu/spu-c.c,
5571	config/t-darwin, convert.c, c.opt, c-opts.c, cp/Make-lang.in,
5572	c-pretty-print.c, c-typeck.c, df-core.c, df-scan.c, diagnostic.c,
5573	diagnostic.h, doc/cppopts.texi, doc/cpp.texi, doc/extend.texi,
5574	doc/gimple.texi, doc/languages.texi, doc/plugins.texi, doc/rtl.texi,
5575	doc/standards.texi, doc/tree-ssa.texi, doc/trouble.texi, dominance.c,
5576	fold-const.c, fortran/Make-lang.in, fwprop.c, gcc-plugin.h,
5577	gensupport.c, gimple.h, gimple-iterator.c, graphite.c,
5578	graphite-clast-to-gimple.c, graphite-clast-to-gimple.h,
5579	graphite-dependences.c, graphite-poly.c, graphite-poly.h,
5580	graphite-ppl.c, graphite-ppl.h, graphite-scop-detection.c,
5581	graphite-sese-to-poly.c, graphite-sese-to-poly.h, ifcvt.c, intl.c,
5582	intl.h, ipa.c, ipa-cp.c, ipa-inline.c, ipa-prop.c, ipa-prop.h,
5583	ipa-pure-const.c, ipa-reference.c, ipa-type-escape.c, ira-color.c,
5584	ira-conflicts.c, ira-lives.c, java/Make-lang.in, lambda-code.c,
5585	loop-invariant.c, lto/Make-lang.in, lto-streamer.h, lto-streamer-in.c,
5586	objc/Make-lang.in, objcp/Make-lang.in, omp-low.c, optc-gen.awk,
5587	opt-functions.awk, opth-gen.awk, params.def, passes.c,
5588	postreload-gcse.c, print-tree.c, recog.c, regrename.c, reload.h,
5589	rtl.def, sched-int.h, sched-rgn.c, sel-sched-dump.c, sese.c, sese.h,
5590	store-motion.c, stor-layout.c, tree-cfgcleanup.c, tree-chrec.c,
5591	tree-complex.c, tree-data-ref.c, tree.def, tree-eh.c, tree-flow.h,
5592	tree-flow-inline.h, tree.h, tree-loop-distribution.c, tree-outof-ssa.c,
5593	tree-parloops.c, tree-pass.h, tree-predcom.c, tree-profile.c,
5594	tree-scalar-evolution.c, tree-ssa-address.c, tree-ssa-alias.c,
5595	tree-ssa-coalesce.c, tree-ssa-copy.c, tree-ssa-dce.c, tree-ssa-dom.c,
5596	tree-ssa-dse.c, tree-ssa-loop-im.c, tree-ssa-loop-ivcanon.c,
5597	tree-ssa-loop-manip.c, tree-ssa-math-opts.c, tree-ssa-operands.c,
5598	tree-ssa-pre.c, tree-ssa-sccvn.c, tree-ssa-structalias.c,
5599	tree-ssa-uncprop.c, tree-tailcall.c, tree-vect-data-refs.c,
5600	tree-vect-loop.c, tree-vectorizer.h, tree-vect-slp.c, tree-vrp.c,
5601	unwind-dw2-fde-darwin.c, varpool.c: Update copyright years.
5602
56032010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5604
5605	PR other/43620
5606	* doc/install.texi (Prerequisites): Bump Automake version to 1.11.1.
5607	* aclocal.m4: Regenerate.
5608
56092010-04-02  Richard Guenther  <rguenther@suse.de>
5610
5611	PR tree-optimization/43629
5612	* tree-ssa-ccp.c (likely_value): Reset all_undefined_operands
5613	if we have seen a constant value.
5614
56152010-04-02  Joseph Myers  <joseph@codesourcery.com>
5616
5617	* read-rtl.c (read_rtx_1): Give an error for EOF while looking for
5618	']'.
5619
56202010-04-02  Richard Earnshaw  <rearnsha@arm.com>
5621
5622	PR target/43469
5623	* arm.c (legitimize_tls_address): Adjust call to
5624	gen_tls_load_dot_plus_four.
5625	(arm_note_pic_base): New function.
5626	(arm_cannot_copy_insn_p): Use it.
5627	* thumb2.md (tls_load_dot_plus_four): Rework to avoid use of '+' in
5628	constraint.
5629
56302010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5631
5632	PR bootstrap/43531
5633
5634	Revert:
5635	2009-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5636
5637	* Makefile.in ($(out_object_file)): Depend on
5638	gt-$(basename $(notdir $(out_file))).h.
5639
56402010-04-01  Ralf Corsépius  <ralf.corsepius@rtems.org>
5641
5642	* config.gcc (lm32-*-rtems*): Add t-lm32.
5643
56442010-04-01  Joel Sherrill  <joel.sherrill@oarcorp.com>
5645
5646	* config.gcc: Add lm32-*-rtems*.
5647	* config/lm32/rtems.h: New file.
5648
56492010-04-01  Dave Korn  <dave.korn.cygwin@gmail.com>
5650
5651	PR target/42609
5652	* config/i386/cygwin.h (CXX_WRAP_SPEC): Disable spec when -mno-cygwin.
5653
56542010-04-01  Jakub Jelinek  <jakub@redhat.com>
5655
5656	* dwarf2out.c (output_compilation_unit_header): For
5657	-gdwarf-4 use version 4 instead of version 3.
5658	(output_line_info): For version 4 and above emit additional
5659	maximum ops per insn header field.
5660	(DWARF_LINE_DEFAULT_MAX_OPS_PER_INSN): Define.
5661
5662	* dwarf2out.c (is_c_family, is_java): Remove.
5663	(lower_bound_default): New function.
5664	(add_bound_info, gen_descr_array_type_die): Use it.
5665
56662010-04-01  Dodji Seketeli  <dodji@redhat.com>
5667
5668	PR debug/43325
5669	* dwarf2out.c (gen_variable_die): Allow debug info for variable
5670	re-declaration when it happens in a function.
5671
56722010-04-01  Aldy Hernandez  <aldyh@redhat.com>
5673
5674	* cgraph.c (cgraph_add_function_insertion_hook): Update comment.
5675	(cgraph_remove_function_insertion_hook): Same.
5676	(cgraph_call_function_insertion_hooks): Same.
5677
56782010-04-01  Richard Guenther  <rguenther@suse.de>
5679
5680	PR middle-end/43614
5681	* tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
5682	and TREE_THIS_VOLATILE.
5683	(copy_ref_info): Likewise.
5684	* tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
5685	* tree.c (build6_stat): Ignore side-effects of all but arg5
5686	for TARGET_MEM_REF.  Set TREE_THIS_VOLATILE from arg5 of
5687	TARGET_MEM_REF.
5688
56892010-04-01  Richard Guenther  <rguenther@suse.de>
5690
5691	PR tree-optimization/43607
5692	* ipa-type-escape.c (check_call): Do not access non-existing
5693	arguments.
5694
56952010-04-01  Richard Guenther  <rguenther@suse.de>
5696
5697	PR middle-end/43602
5698	Revert
5699	2010-03-30  Seongbae Park  <seongbae.park@gmail.com>
5700		    Jack Howarth  <howarth@bromo.med.uc.edu>
5701
5702	* tree-profile.c (tree_init_ic_make_global_vars): Make static
5703	variables TLS.
5704
57052010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5706
5707	* doc/install.texi (Prerequisites): Document libelf usability on
5708	IRIX 5/6 and Solaris 2.
5709	(Specific, i?86-*-solaris2.10): No 64-bit default configuration.
5710	Update GNU as, GNU ld requirements.
5711	(Specific, *-*-solaris2*): Document Solaris 7 obsoletion, removal.
5712	Document Sun Studio compiler download.
5713	Update and simplify as, ld recommendations.
5714	(Specific, *-*-solaris2.7): Note obsoletion, removal.
5715
57162010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5717
5718	* config.gcc (i[34567]86-*-solaris2*): Default with_arch_32,
5719	with_tune_32 to pentium4.
5720
57212010-04-01  Uros Bizjak  <ubizjak@gmail.com>
5722
5723	* config/i386/cpuid.h (__get_cpuid_max): Move misplaced comment.
5724
57252010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5726
5727	* doc/install.texi (Specific, mips-sgi-irix5): Document IRIX 5
5728	obsoletion, removal.
5729	Update IDO URL.
5730	Document GNU as requirement.
5731	Update configure requirements.
5732	(Specific, mips-sgi-irix6): Document IRIX 6 < 6.5 obsoletion,
5733	removal.
5734	Recomment IRIX 6.5.18+.
5735	Document IDF/IDL requirement.
5736	Document GNU as requirement.
5737	Document GNU ld bootstrap failure.
5738	Remove freeware.sgi.com reference.
5739
57402010-04-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5741
5742	* doc/install.texi (Specific, alpha*-dec-osf*): Document Tru64
5743	UNIX V4.0, V5.0 obsoletion, removal.
5744	Remove --with-gc=simple reference.
5745	Update VM requirements during bootstrap.
5746	Remove -oldas bootstrap description.
5747	Update binutils reference.
5748	Remove comparison failure note.
5749
57502010-03-31  Richard Guenther  <rguenther@suse.de>
5751	    Zdenek Dvorak  <ook@ucw.cz>
5752	    Sebastian Pop  <sebastian.pop@amd.com>
5753
5754	PR middle-end/43464
5755	* tree-ssa-copy.c (init_copy_prop): Handle loop close phi nodes
5756	with multiple arguments.
5757	(execute_copy_prop): Remove call to rewrite_into_loop_closed_ssa.
5758
57592010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
5760
5761	* graphite-dependences.c (print_pddr): Call print_pdr with an
5762	extra argument.
5763	* graphite-poly.c (debug_pdr): Add an extra argument for the
5764	verbosity level.
5765	(print_pdr): Same.
5766	(print_pbb_domain): Same.
5767	(print_pbb): Same.
5768	(print_scop_context): Same.
5769	(print_scop): Same.
5770	(print_cloog): Same.
5771	(debug_pbb_domain): Same.
5772	(debug_pbb): Same.
5773	(print_pdrs): Same.
5774	(debug_pdrs): Same.
5775	(debug_scop_context): Same.
5776	(debug_scop): Same.
5777	(debug_cloog): Same.
5778	(print_scop_params): Same.
5779	(debug_scop_params): Same.
5780	(print_iteration_domain): Same.
5781	(print_iteration_domains): Same.
5782	(debug_iteration_domain): Same.
5783	(debug_iteration_domains): Same.
5784	(print_scattering_function): Same.
5785	(print_scattering_functions): Same.
5786	(debug_scattering_function): Same.
5787	(debug_scattering_functions): Same.
5788	* graphite-poly.h (debug_pdr): Update declaration.
5789	(print_pdr): Same.
5790	(print_pbb_domain): Same.
5791	(print_pbb): Same.
5792	(print_scop_context): Same.
5793	(print_scop): Same.
5794	(print_cloog): Same.
5795	(debug_pbb_domain): Same.
5796	(debug_pbb): Same.
5797	(print_pdrs): Same.
5798	(debug_pdrs): Same.
5799	(debug_scop_context): Same.
5800	(debug_scop): Same.
5801	(debug_cloog): Same.
5802	(print_scop_params): Same.
5803	(debug_scop_params): Same.
5804	(print_iteration_domain): Same.
5805	(print_iteration_domains): Same.
5806	(debug_iteration_domain): Same.
5807	(debug_iteration_domains): Same.
5808	(print_scattering_function): Same.
5809	(print_scattering_functions): Same.
5810	(debug_scattering_function): Same.
5811	(debug_scattering_functions): Same.
5812
58132010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
5814
5815	* graphite-poly.c (print_scattering_function_1): New.
5816	(print_scattering_function): Call it.
5817	(print_scop_params): Remove spaces at the end of lines.
5818	(print_cloog): New.
5819	(debug_cloog): New.
5820	* graphite-poly.h (print_cloog): Declared.
5821	(debug_cloog): Declared.
5822
58232010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
5824
5825	* graphite-sese-to-poly.c (graphite_loop_normal_form): Add the IV bump
5826	in loop->header.
5827	* tree-flow.h (canonicalize_loop_ivs): Updated declaration.
5828	* tree-parloops.c (gen_parallel_loop): Add the IV bump in loop->latch.
5829	* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Add a new parameter
5830	to switch between adding the IV bump in loop->latch or in loop->header.
5831
58322010-03-31  Sebastian Pop  <sebastian.pop@amd.com>
5833
5834	* graphite-poly.c (print_scattering_function): Pretty print following
5835	the scoplib format.
5836	(print_pdr): Same.
5837	(print_pbb_domain): Same.
5838	(dump_gbb_cases): Same.
5839	(dump_gbb_conditions): Same.
5840	(print_pdrs): Same.
5841	(print_pbb): Same.
5842	(print_scop_params): Same.
5843	(print_scop_context): Same.
5844	(print_scop): Same.
5845	(print_pbb_body): New.
5846	(lst_indent_to): New.
5847	(print_lst): Start new lines with a #.
5848	* graphite-poly.h (pbb_bb): New.
5849	(pbb_index): Use pbb_bb.
5850	* graphite-ppl.c (ppl_print_powerset_matrix): Print the number of
5851	disjuncts.
5852	* tree-data-ref.c (dump_data_reference): Start new lines with a #.
5853
58542010-03-31  Jakub Jelinek  <jakub@redhat.com>
5855
5856	* dwarf2out.c (size_of_die): For -gdwarf-4 use
5857	uleb128 size instead of fixed 1 or 2 for dw_val_class_loc
5858	and 0 instead of 1 for dw_val_class_flag.
5859	(value_format): For -gdwarf-4 use DW_FORM_sec_offset for
5860	dw_val_class_range_list, dw_val_class_loc_list,
5861	dw_val_class_lineptr and dw_val_class_macptr, use
5862	DW_FORM_flag_present for dw_val_class_flag and
5863	DW_FORM_exprloc for dw_val_class_loc.
5864	(output_die): For -gdwarf-4 print dw_val_class_loc
5865	size as uleb128 instead of 1 or 2 bytes and don't print
5866	anything for dw_val_class_flag.
5867
5868	* var-tracking.c (vt_init_cfa_base): Use cselib_lookup_from_insn
5869	instead of cselib_lookup following by tweaking locs->setting_insn.
5870
5871	PR bootstrap/43596
5872	* cselib.c (cselib_process_insn): Clear cselib_current_insn
5873	even before returning from label, setjmp call or volatile asm
5874	handling.
5875
58762010-03-31  Richard Guenther  <rguenther@suse.de>
5877
5878	PR middle-end/43600
5879	* cgraphunit.c (cgraph_output_in_order): Do not allocate
5880	temporary data on stack.
5881
58822010-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5883
5884	* config/sparc/sysv4.h (PUSHSECTION_FORMAT): Remove undef.
5885	(PUSHSECTION_ASM_OP): Remove.
5886	(POPSECTION_ASM_OP): Remove.
5887	(PUSHSECTION_FORMAT): Remove.
5888	* config/sol2.h (PUSHSECTION_FORMAT): Define.
5889	* config/sparc/sol2.h [!USE_GAS] (PUSHSECTION_FORMAT): Redefine.
5890	* config/sol2.c (solaris_output_init_fini): Use it.
5891
58922010-03-31  Jie Zhang  <jie@codesourcery.com>
5893
5894	PR 43574
5895	* opt-functions.awk (var_type_struct): Use signed char type
5896	for simple variables.
5897
58982010-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5899
5900	* config/sol2.c: Include output.h.
5901	(solaris_assemble_visibility): New function.
5902	* config/t-sol2 (sol2.o): Add output.h dependency.
5903	* config/sol2-protos.h (solaris_assemble_visibility): Declare.
5904	* config/sol2.h [!USE_GAS] (TARGET_ASM_ASSEMBLE_VISIBILITY):
5905	Redefine.
5906
59072010-03-31  Jakub Jelinek  <jakub@redhat.com>
5908
5909	PR target/43580
5910	* config/arm/arm.c (arm_save_coproc_regs): Use Pmode instead of
5911	V2SImode or XFmode on PRE_DEC.
5912
5913	PR debug/43557
5914	* cfgexpand.c (expand_debug_expr): Handle VOIDmode mode like
5915	BLKmode.
5916
59172010-03-31  Jie Zhang  <jie@codesourcery.com>
5918
5919	PR 43562
5920	* reload.h (caller_save_initialized_p): Declare.
5921	* toplev.c (backend_init_target): Don't call
5922	init_caller_save but set caller_save_initialized_p to false.
5923	* caller-save.c (caller_save_initialized_p): Define.
5924	(init_caller_save): Check caller_save_initialized_p.
5925	* ira.c (ira): Call init_caller_save if flag_caller_saves.
5926
59272010-03-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5928
5929	PR target/39048
5930	* config.gcc (i[34567]86-*-solaris2*): Add i386/t-fprules-softfp
5931	and soft-fp/t-softfp to tmake_file.
5932	* config/i386/sol2.h (LIBGCC2_HAS_TF_MODE): Redefine.
5933	(LIBGCC2_TF_CEXT): Define.
5934	(TF_SIZE): Define.
5935
59362010-03-30  Alexandre Oliva  <aoliva@redhat.com>
5937
5938	PR debug/42977
5939	* cselib.c (n_useless_values): Document handling of debug locs.
5940	(n_useless_debug_values, n_debug_values): New variables.
5941	(new_elt_loc_list): Don't add to debug values, keep count.
5942	(promote_debug_loc): New.
5943	(cselib_reset_table): Zero new variables.
5944	(entry_and_rtx_equal_p): Promote debug locs.
5945	(discard_useless_locs): Increment n_useless_debug_values for
5946	debug values.
5947	(remove_useless_values): Adjust n_useless_values and n_debug_values
5948	with n_useless_debug_values.
5949	(add_mem_for_addr): Promote debug locs.
5950	(cselib_lookup_mem): Likewise.
5951	(cselib_lookup_addr): Renamed to...
5952	(cselib_lookup_addr_1): ... this.  Promote debug locs.  Don't call...
5953	(cselib_log_lookup): ... this.  Turn into...
5954	(cselib_lookup_addr): ... new wrapper.
5955	(cselib_lookup_from_insn): New.
5956	(cselib_invalidate_regno): Increment n_useless_debug_values for
5957	debug values.
5958	(cselib_invalidate_mem): Likewise.
5959	(cselib_process_insn): Take n_deleted and n_debug_values into
5960	account to guard remove_useless_value call.
5961	(cselib_finish): Zero n_useless_debug_values.
5962	* cselib.h (cselib_lookup_from_insn): Declare.
5963	* sched-deps.c (sched_analyze_1): Use cselib_lookup_from_insn.
5964	(sched_analyze_2): Likewise.
5965
59662010-03-30  Jakub Jelinek  <jakub@redhat.com>
5967
5968	* var-tracking.c (use_narrower_mode_test, use_narrower_mode): New
5969	functions.
5970	(adjust_mems): Replace narrowing SUBREG of expression containing
5971	just PLUS, MINUS, MULT and ASHIFT of registers and constants
5972	with operations in the narrower mode.
5973
5974	PR debug/43593
5975	* var-tracking.c (dataflow_set_clear_at_call): Invalidate just
5976	regs_invalidated_by_call instead all call_used_reg_set registers.
5977
59782010-03-30  Sebastian Pop  <sebastian.pop@amd.com>
5979
5980	PR middle-end/43430
5981	* tree-vect-slp.c (vect_get_and_check_slp_defs): Replace type
5982	pointer comparisons with types_compatible_p.
5983	* tree-vect-stmts.c (vectorizable_call): Same.
5984	(vectorizable_condition): Same.
5985
59862010-03-30  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
5987
5988	* config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
5989	stack check if the mask would be zero.
5990
59912010-03-30  Seongbae Park  <seongbae.park@gmail.com>
5992	    Jack Howarth  <howarth@bromo.med.uc.edu>
5993
5994	* tree-profile.c (tree_init_ic_make_global_vars): Make static
5995	variables TLS.
5996
59972010-03-30  Joseph Myers  <joseph@codesourcery.com>
5998
5999	PR other/25232
6000	* libgcc-std.ver (GCC_4.5.0): Define version.  Include __unordxf2
6001	and __unordtf2.
6002	* config/bfin/libgcc-bfin.ver (GCC_4.5.0): Define version.
6003	Include ___unordxf2 and ___unordtf2.
6004	* config/i386/libgcc-glibc.ver: Do not define inheritance from
6005	GCC_4.4.0 here.
6006
60072010-03-30  Tarik Graba  <tarik.graba@telecom-paristech.fr>
6008
6009	* config/lm32/t-lm32: New file.
6010	* config.gcc: Use the above file when targetting lm32.
6011
60122010-03-28  Duncan Sands  <baldrick@free.fr>
6013
6014	* Makefile.in (PLUGIN_HEADERS): Add except.h.
6015
60162010-03-29  Sebastian Pop  <sebastian.pop@amd.com>
6017
6018	PR middle-end/43431
6019	* tree-vect-loop.c (vect_estimate_min_profitable_iters):
6020	Improve vectorization cost model diagnostic.
6021
60222010-03-29  Sebastian Pop  <sebastian.pop@amd.com>
6023
6024	PR middle-end/43436
6025	* tree-vect-data-refs.c (vect_analyze_data_refs): When
6026	compute_data_dependences_for_loop returns false, early exit
6027	and output an extra diagnostic for the failed data reference
6028	analysis.
6029
60302010-03-29  Richard Guenther  <rguenther@suse.de>
6031
6032	PR tree-optimization/43560
6033	* tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p parameter.
6034	(can_sm_ref_p): Treat stores to readonly locations as trapping.
6035
60362010-03-29  Jie Zhang  <jie@codesourcery.com>
6037
6038	PR 43564
6039	* toplev.c (process_options): Set optimization_default_node
6040	and optimization_current_node.
6041	* opts.c (decode_options): Don't set optimization_default_node
6042	and optimization_current_node.
6043
60442010-03-29  Ralf Corsépius  <ralf.corsepius@rtems.org>
6045
6046	* config/rtems.h: Abandon -qrtems_debug.
6047
60482010-03-28  Jan Hubicka  <jh@suse.cz>
6049
6050	PR tree-optimization/43505
6051	* cgraph.c (cgraph_clone_node): When clonning a clone, replacement
6052	map should not be copied.
6053
60542010-03-27  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6055
6056	PR middle-end/41674
6057	* cgraphunit.c (cgraph_build_static_cdtor): If target doesn't have
6058	cdtors, set DECL_PRESERVE_P.
6059	* ipa.c (cgraph_externally_visible_p): Return true if declaration
6060	should be preseved.
6061
60622010-03-27  Uros Bizjak  <ubizjak@gmail.com>
6063
6064	PR tree-optimization/43528
6065	* stor-layout.c (place_field): Check that constant fits into
6066	unsigned HWI when skipping calculation of MS bitfield layout.
6067
60682010-03-27  Jan Hubicka  <jh@suse.cz>
6069
6070	PR middle-end/43391
6071	* varasm.c (make_decl_rtl): Deal with COMMON flag to make
6072	notice_global_symbol work.
6073
60742010-03-27  Jakub Jelinek  <jakub@redhat.com>
6075
6076	* dwarf2out.c (dwarf2_debug_hooks): Use dwarf2out_function_decl
6077	instead of dwarf2out_decl.
6078	(struct var_loc_node): Remove section_label field.
6079	(dwarf2out_function_decl): New function.
6080	(dwarf2out_var_location): Don't set section_label field.
6081	(dwarf2out_begin_function): Don't empty decl_loc_table here.
6082
60832010-03-26  Michael Meissner  <meissner@linux.vnet.ibm.com>
6084
6085	PR tree-optimization/43544
6086	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
6087	First argument for builtin vectorized function hook is now a
6088	tree to be able to distinguish between machine specific and
6089	standard builtins.
6090	* targhooks.c (default_builtin_vectorized_function): Ditto.
6091	* targhooks.h (default_builtin_vectorized_function): Ditto.
6092	* target.h (struct gcc_target): Ditto.
6093	* tree-vect-stmts.c (vectorizable_function): Ditto.
6094	* config/i386/i386.c (ix86_builtin_vectorized_function): Ditto.
6095	* config/rs6000/rs6000.c (rs6000_builtin_vectorized_function):
6096	Ditto.
6097
60982010-03-26  Joseph Myers  <joseph@codesourcery.com>
6099
6100	PR c/43381
6101	* c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
6102	nested binding iff it is a FUNCTION_DECL.
6103	(store_parm_decls_newstyle): Pass nested=true to bind for
6104	FUNCTION_DECLs amongst parameters.
6105
61062010-03-26  Jakub Jelinek  <jakub@redhat.com>
6107
6108	* var-tracking.c (vt_expand_loc_callback): Don't run
6109	cselib_expand_value_rtx_cb in dummy mode if
6110	cselib_dummy_expand_value_rtx_cb returned false.
6111
6112	* var-tracking.c (emit_note_insn_var_location): For one part
6113	notes with offset 0, don't add EXPR_LIST around the location.
6114	* dwarf2out.c (loc_descriptor, dw_loc_list_1,
6115	add_location_or_const_value_attribute): Adjust for that change.
6116
6117	PR debug/43540
6118	* dwarf2out.c (reg_save): For DW_CFA_expression put regnum
6119	into first operand and location into second.
6120	(dw_cfi_oprnd1_desc): Return dw_cfi_oprnd_reg_num instead of
6121	dw_cfi_oprnd_loc for DW_CFA_expression.
6122	(dw_cfi_oprnd2_desc): Return dw_cfi_oprnd_loc for DW_CFA_expression.
6123	(output_cfa_loc, output_cfa_loc_raw): For DW_CFA_expression
6124	assume first argument is regnum and second argument is location.
6125
61262010-03-26  Uros Bizjak  <ubizjak@gmail.com>
6127
6128	PR target/42113
6129	* config/alpha/alpha.md (*cmp_sadd_si): Change mode
6130	of scratch register to DImode.  Split to DImode comparison operator.
6131	Use SImode subreg of scratch register in the multiplication.
6132	(*cmp_sadd_sidi): Ditto.
6133	(*cmp_ssub_si): Ditto.
6134	(*cmp_ssub_sidi): Ditto.
6135
61362010-03-26  Uros Bizjak  <ubizjak@gmail.com>
6137
6138	PR target/43524
6139	* config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
6140	Remove invalid assert and wrong comment.
6141
61422010-03-26  Jakub Jelinek  <jakub@redhat.com>
6143
6144	PR debug/43516
6145	* flags.h (final_insns_dump_p): New extern.
6146	* final.c (final_insns_dump_p): New variable.
6147	(rest_of_clean_state): Set it before -fdump-final-insns=
6148	dumping, clear afterwards.
6149	* print-rtl.c (print_rtx): If final_insns_dump_p don't dump
6150	MEM_ALIAS_SET on MEMs.
6151
61522010-03-26  David S. Miller  <davem@davemloft.net>
6153
6154	* configure.ac: Fix sparc GOTDATA_OP bug check.
6155	* configure: Rebuild.
6156
61572010-03-26  Alan Modra  <amodra@gmail.com>
6158
6159	* config/rs6000/rs6000.md (cmptf_internal2): Correct comparison.
6160
61612010-03-25  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6162
6163	* doc/tm.texi (Sections): Document TLS_COMMON_ASM_OP,
6164	TLS_SECTION_ASM_FLAG.
6165
61662010-03-25  Jakub Jelinek  <jakub@redhat.com>
6167
6168	PR bootstrap/43511
6169	* config/i386/i386.c (ix86_code_end): Set DECL_WEAK if TARGET_MACHO.
6170	Clear first_function_block_is_cold.
6171
6172	PR c/43385
6173	* gimplify.c (gimple_boolify): Only recurse on __builtin_expect
6174	argument if the argument is truth_value_p.
6175
61762010-03-24  Michael Meissner  <meissner@linux.vnet.ibm.com>
6177
6178	* config/rs6000/constraints.md: Update copyright year for my changes.
6179
6180	PR target/43484
6181	* config/rs6000/rs6000.c (rs6000_split_multireg_move): If r0 is
6182	used in reg+reg addressing, swap registers.
6183
61842010-03-24  Jakub Jelinek  <jakub@redhat.com>
6185
6186	PR debug/43293
6187	* target.h (struct gcc_target): Add code_end hook.
6188	* target-def.h (TARGET_ASM_CODE_END): Define to hook_void_void
6189	if not yet defined.
6190	(TARGET_ASM_OUT): Add TARGET_ASM_CODE_END.
6191	* toplev.c (compile_file): Call targetm.asm_out.code_end
6192	hook before unwind info/debug info output.
6193	* config/i386/winnt.c (i386_pe_file_end): Don't call ix86_file_end.
6194	* config/i386/linux.h (NEED_INDICATE_EXEC_STACK): Don't define.
6195	(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
6196	* config/i386/linux64.h (NEED_INDICATE_EXEC_STACK): Don't define.
6197	(TARGET_ASM_FILE_END): Define to file_end_indicate_exec_stack.
6198	* config/i386/i386.c (ix86_file_end): Renamed to...
6199	(ix86_code_end): ... this.  Make static.  Don't call
6200	file_end_indicate_exec_stack.  Emit unwind info using
6201	final_start_function/final_end_function.
6202	(darwin_x86_file_end): Remove.
6203	(TARGET_ASM_CODE_END): Define.
6204	* config/i386/i386.h (TARGET_ASM_FILE_END,
6205	NEED_INDICATE_EXEC_STACK): Don't define.
6206	* config/i386/darwin.h (darwin_x86_file_end): Remove prototype.
6207	(TARGET_ASM_FILE_END): Define to darwin_file_end.
6208	* config/i386/i386-protos.h (ix86_file_end): Remove prototype.
6209	* doc/tm.texi (TARGET_ASM_CODE_END): Document.
6210
6211	PR target/43498
6212	* config/i386/i386.c (x86_output_mi_thunk): Call final_start_function
6213	at the beginning and final_end_function at the end.
6214	* config/s390/s390.c (s390_output_mi_thunk): Likewise.
6215
62162010-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6217
6218	* configure.ac (i[34567]86-*-*): Handle Solaris 2/x86 TLS support
6219	and Sun as TLS syntax.
6220	(TLS_SECTION_ASM_FLAG) [on_solaris && !gas_flag]: Define.
6221	* configure: Regenerate.
6222	* config.in: Regenerate.
6223	* varasm.c (TLS_SECTION_ASM_FLAG): Define default.
6224	(default_elf_asm_named_section): Use it.
6225	* config/i386/i386.c (output_pic_addr_const): Lowercase @DTPOFF.
6226	(i386_output_dwarf_dtprel): Likewise.
6227	(output_addr_const_extra): Likewise.
6228	(output_pic_addr_const): Lowercase @GOTTPOFF.
6229	(output_addr_const_extra): Likewise.
6230	(output_pic_addr_const): Lowercase @GOTNTPOFF.
6231	(output_addr_const_extra): Likewise.
6232	(output_pic_addr_const): Lowercase @INDNTPOFF.
6233	(output_addr_const_extra): Likewise.
6234	(output_pic_addr_const): Lowercase @NTPOFF.
6235	(output_addr_const_extra): Likewise.
6236	(output_pic_addr_const): Lowercase @TPOFF.
6237	(output_addr_const_extra): Likewise.
6238	* config/i386/i386.md (*tls_global_dynamic_32_gnu): Lowercase @TLSGD.
6239	(*tls_global_dynamic_64): Likewise.
6240	(*tls_local_dynamic_base_32_gnu): Lowercase @TLSLDM.
6241	(*tls_local_dynamic_base_64): Lowercase	@TLSLD.
6242
6243	* defaults.h (TLS_COMMON_ASM_OP): Provide default.
6244	(ASM_OUTPUT_TLS_COMMON): Use it.
6245	* config/i386/sol2-gas.h (TLS_COMMON_ASM_OP): Undef.
6246
6247	PR target/38118
6248	* config.gcc (sparc*-*-solaris2*) [$gas=yes]: Add usegas.h to tm_file.
6249	* config/sparc/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): Move ...
6250	* config/sol2.h (ASM_OUTPUT_ALIGNED_COMMON): ... here.
6251	* config/i386/sol2-10.h (ASM_OUTPUT_ALIGNED_COMMON): Redefine.
6252	* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
6253	(ASM_DECLARE_OBJECT_NAME) [!USE_GAS]: Redefine.
6254
62552010-03-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6256
6257	* config/i386/i386.c (override_options): Don't accept
6258	-mtls-dialect=sun any longer.
6259	* config/i386/i386.h (TARGET_SUN_TLS): Define as 0.
6260	* config/i386/i386.md (*tls_global_dynamic_32_sun): Remove.
6261	(*tls_local_dynamic_base_32_sun): Likewise.
6262	* config/i386/sol2.h (TARGET_SUN_TLS): Redefine.
6263
62642010-03-24  Jakub Jelinek  <jakub@redhat.com>
6265
6266	PR debug/43508
6267	* dwarf2out.c (mem_loc_descriptor): Don't ICE on
6268	VEC_{MERGE,SELECT,CONCAT,DUPLICATE}.
6269
6270	PR debug/43479
6271	* ira.c (adjust_cleared_regs): New function.
6272	(update_equiv_regs): Adjust cleared_regs in DEBUG_INSNs.
6273
6274	PR debug/19192
6275	PR debug/43479
6276	* cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
6277	from gimple_block.
6278	* expr.c (expand_expr_real): Restore previous
6279	curr_insn_source_location and curr_insn_block after
6280	expand_expr_real_1 call.
6281	(expand_expr_real_1) <case SSA_NAME>: Call expand_expr_real
6282	instead of expand_expr_real_1.
6283
62842010-03-23  Vladimir Makarov  <vmakarov@redhat.com>
6285
6286	PR rtl-optimization/43413
6287	* ira-color.c (setup_allocno_available_regs_num): Count prohibited
6288	hard regs too.
6289
62902010-03-22  James E. Wilson  <wilson@codesourcery.com>
6291
6292	PR target/43348
6293	* ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
6294	call_value_gp, sibcall_gp): Use 's' constraint not 'i'.
6295
62962010-03-22  H.J. Lu  <hongjiu.lu@intel.com>
6297
6298	* config/i386/i386.c (ix86_target_string): Add -mfma.
6299	Fix a typo in comment.
6300
63012010-03-22  Mike Stump  <mikestump@comcast.net>
6302
6303	PR target/23071
6304	* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
6305	Don't overly align based upon packed packed fields.
6306
63072010-03-22  Jason Merrill  <jason@redhat.com>
6308
6309	* c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
6310	Use () rather than [], and move before the element type.
6311
63122010-03-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6313
6314	* doc/configfiles.texi (Configuration Files): Removed
6315	fixinc/Makefile*, intl/Makefile.*.
6316	* doc/makefile.texi: Fixed markup. Abstract from version
6317	control system used.
6318	(Makefile): Removed obsolete gcc/java/parse.y example.
6319	* doc/sourcebuild.texi: Likewise.
6320	(Top Level): Added config, gnattools, libdecnumber, libgcc,
6321	libgomp, libssp.  Removed fastjar.
6322	(Miscellaneous Docs): Clarify location.
6323	Added COPYING3, COPYING3.LIB.
6324	(Front End Directory): Moved Make-lang.in entry to new subsubsection.
6325
63262010-03-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6327
6328	PR target/38085
6329	* config/i386/i386.c (x86_function_profiler)
6330	[!NO_PROFILE_COUNTERS]: Fix typo.
6331	* config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
6332	instead of callq.
6333
63342010-03-22  Janis Johnson  <janis187@us.ibm.com>
6335	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6336
6337	* doc/sourcebuild.texi (Test Directives): Split into six
6338	subsections, with most of the current text in new subsections
6339	Directives, Selectors, and Final Actions.
6340	(Directives): Split list of test directives into multiple
6341	subsubsections.
6342	(Selectors): Describe use and syntax of selectors.
6343	(Effective-Target Keywords): Describe all existing keywords.
6344	(Add Options): Describe features for dg-add-options.
6345	(Require Support): Describe variants of dg-require-support.
6346	(Final Actions): Describe commands to use in dg-final.
6347
63482010-03-22  Michael Matz  <matz@suse.de>
6349
6350	PR middle-end/43475
6351	* recog.c (validate_replace_rtx_group): Replace also in
6352	REG_EQUAL and REG_EQUIV notes.
6353
63542010-03-22  Richard Guenther  <rguenther@suse.de>
6355
6356	PR tree-optimization/43390
6357	* tree-vect-stmts.c (get_vectype_for_scalar_type): Make
6358	sure vector extracts are type correct.
6359
63602010-03-22  Richard Guenther  <rguenther@suse.de>
6361
6362	PR middle-end/40106
6363	* builtins.c (expand_builtin_pow): Expand pow (x, 1.5) as
6364	x * sqrt (x) even when optimizing for size if the target
6365	has native support for sqrt.
6366
63672010-03-22  Jakub Jelinek  <jakub@redhat.com>
6368
6369	* varasm.c (make_decl_rtl_for_debug): Also clear
6370	flag_mudflap for the duration of make_decl_rtl call.
6371
6372	PR debug/43443
6373	* var-tracking.c (add_cselib_value_chains): Remove ASM_OPERANDS
6374	locs from preserved VALUEs.
6375
63762010-03-21  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
6377
6378	PR middle-end/42718
6379	* pa.md (movmemsi): Set align to one if zero.
6380	(movmemdi): Likewise.
6381
63822010-03-21  Richard Earnshaw  <rearnsha@arm.com>
6383
6384	PR target/42321
6385	* arm.c (arm_output_epilogue): Correctly match VFP pop instructions
6386	with their corresponding prologue pushes.
6387
63882010-03-20  Andrew Pinski  <pinskia@gmail.com>
6389
6390	PR target/43156
6391	* config/spu/spu.c (spu_expand_prologue): Don't emit NOTE_INSN_DELETED
6392	at the begining or end.
6393	(spu_expand_epilogue): Likewise.
6394
63952010-03-20  Richard Guenther  <rguenther@suse.de>
6396
6397	PR rtl-optimization/43438
6398	* combine.c (make_extraction): Properly zero-/sign-extend an
6399	extraction of the low part of a CONST_INT.  Also handle
6400	CONST_DOUBLE.
6401
64022010-03-19  Mike Stump  <mikestump@comcast.net>
6403
6404	* config/i386/darwin.h (SUBTARGET32_DEFAULT_CPU): Add.
6405	* config/i386/i386.c (SUBTARGET32_DEFAULT_CPU): Add.
6406	(override_options): Use SUBTARGET32_DEFAULT_CPU.
6407
64082010-03-19  Andrew Pinski  <andrew_pinski@caviumnetworks.com>
6409
6410	PR c/43211
6411	* c-decl.c (grokparms): Set arg_types to NULL_TREE if there was
6412	an error.
6413
64142010-03-19  Bernd Schmidt  <bernd.schmidt@codesourcery.com>
6415
6416	PR rtl-optimization/42258
6417	* ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
6418	use that may match DEF.
6419
6420	PR target/40697
6421	* optabs.c (avoid_expensive_constant): Use rtx_cost to find out
6422	the cost of loading the constant rather than assuming
6423	COSTS_N_INSNS (1).
6424	* config/arm/arm.c (thumb1_rtx_costs) <case CONST_INT>: If the
6425	outer code is AND, do the same tests as the andsi3 expander and
6426	return COSTS_N_INSNS (1) if and is cheap.
6427
6428	* optabs.c (avoid_expensive_constant): Fix formatting.
6429
64302010-03-19  Michael Matz  <matz@suse.de>
6431
6432	PR c++/43116
6433	* attribs.c (decl_attributes): When rebuilding a function pointer
6434	type use the same qualifiers as the original pointer type.
6435
64362010-03-19  Martin Jambor  <mjambor@suse.cz>
6437
6438	* doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
6439	and is_gimple_ip_invariant_address.
6440
64412010-03-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
6442
6443	Revert
6444	2009-10-01  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
6445
6446	* config/arm/arm.c (arm_override_options): Turn off
6447	flag_dwarf2_cfi_asm for AAPCS variants.
6448
64492010-03-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
6450
6451	PR target/43399
6452	* config/arm/arm.c (emit_multi_reg_push): Update comments.
6453	Use PRE_MODIFY instead of PRE_DEC.
6454	(emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
6455	(vfp_emit_fstmd): Likewise.
6456
64572010-03-19  Michael Matz  <matz@suse.de>
6458
6459	PR target/43305
6460	* builtins.c (expand_builtin_interclass_mathfn,
6461	expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
6462	if that fails.
6463
64642010-03-19  Richard Guenther  <rguenther@suse.de>
6465
6466	PR tree-optimization/43415
6467	* tree-ssa-pre.c (phi_translate): Split out worker to ...
6468	(phi_translate_1): ... this.
6469	(phi_translate): Move all caching here.  Cache all NARY
6470	and REFERENCE translations.
6471
64722010-03-19  David S. Miller  <davem@davemloft.net>
6473
6474	With help from Eric Botcazou.
6475	* config/sparc/sparc.c: Include dwarf2out.h.
6476	(emit_pic_helper): Delete.
6477	(pic_helper_symbol_name): Delete.
6478	(pic_helper_emitted_p): Delete.
6479	(pic_helper_needed): New.
6480	(USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
6481	(get_pc_thunk_name): New.
6482	(load_pic_register): Remove 'delay_pic_helper' arg.  Use
6483	get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
6484	Set pic_helper_needed to true.  Don't call emit_pic_helper.
6485	(sparc_expand_prologue): Update load_pic_register call.
6486	(sparc_output_mi_thunk): Likewise.
6487	(sparc_file_end): Emit a hidden comdat symbol for the PIC
6488	thunk if possible.  Output CFI information as needed.
6489
64902010-03-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
6491	    Jack Howarth  <howarth@bromo.med.uc.edu>
6492
6493	PR target/36399
6494	* config/i386/i386.h: Fix ABI on darwin x86-32.
6495
64962010-03-18  Aldy Hernandez  <aldyh@redhat.com>
6497
6498	* tree.h: Declare make_decl_rtl_for_debug.
6499	* varasm.c (make_decl_rtl_for_debug): New.
6500	* dwarf2out.c (rtl_for_decl_location): Call it.
6501	* cfgexpand.c (expand_debug_expr): Call it.
6502
65032010-03-18  Jakub Jelinek  <jakub@redhat.com>
6504
6505	PR bootstrap/43399
6506	* var-tracking.c (adjust_mems) <case POST_MODIFY>: Allow BLKmode
6507	mem_mode.
6508
6509	PR bootstrap/43403
6510	* var-tracking.c (vt_init_cfa_base): Do nothing if
6511	cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed register.
6512
65132010-03-18  Alexandre Oliva  <aoliva@redhat.com>
6514
6515	PR debug/42873
6516	* var-tracking.c (canonicalize_vars_star): New.
6517	(dataflow_post_merge_adjust): Use it.
6518
65192010-03-18  Jakub Jelinek  <jakub@redhat.com>
6520
6521	PR debug/43058
6522	* var-tracking.c (non_suitable_const): New function.
6523	(add_uses): For DEBUG_INSNs with constants, don't record any
6524	value, instead just the constant value itself.
6525	(compute_bb_dataflow) <case MO_VAL_LOC>: If PAT_VAR_LOCATION_LOC
6526	is not VAR_LOC_UNKNOWN_P, set var to the constant.
6527	(emit_notes_in_bb): Likewise.
6528	(emit_note_insn_var_location): For onepart variables if
6529	cur_loc is a VOIDmode constant, use DECL_MODE.
6530
65312010-03-18  Martin Jambor  <mjambor@suse.cz>
6532
6533	PR middle-end/42450
6534	* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
6535	* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
6536	all non-clones.  Moved call redirection...
6537	(cgraph_redirect_edge_call_stmt_to_callee): ...to this new function.
6538	(cgraph_materialize_all_clones): Dispose of all
6539	combined_args_to_skip bitmaps.
6540	(verify_cgraph_node): Do not check for edges pointing to wrong
6541	nodes in inline clones.
6542	* tree-inline.c (copy_bb): Call
6543	cgraph_redirect_edge_call_stmt_to_callee.
6544	* ipa.c (cgraph_remove_unreachable_nodes): Call
6545	cgraph_node_remove_callees even when there are used clones.
6546
65472010-03-18  H.J. Lu  <hongjiu.lu@intel.com>
6548
6549	* config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.
6550
65512010-03-18  H.J. Lu  <hongjiu.lu@intel.com>
6552
6553	PR target/43383
6554	* config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
6555	for 32bit.
6556
65572010-03-18  Michael Matz  <matz@suse.de>
6558
6559	PR middle-end/43419
6560	* builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
6561	into sqrt(x) if we need to preserve signed zeros.
6562
65632010-03-18  Steven Bosscher  <steven@gcc.gnu.org>
6564	    Eric Botcazou  <ebotcazou@adacore.com>
6565
6566	PR rtl-optimization/43360
6567	* loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
6568	note if we don't know its invariant status.
6569
65702010-03-18  Michael Matz  <matz@suse.de>
6571
6572	PR tree-optimization/43402
6573	* tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
6574	PHI chains of ssa names registered for update.
6575
65762010-03-17  Peter Bergner  <bergner@vnet.ibm.com>
6577
6578	PR target/42427
6579	* config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
6580	non-offsettable and pre_modify update addressing.
6581	* config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
6582	and "2" alternatives "#".
6583	(*movdd_softfloat32): Make all alternatives "#";
6584	* config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
6585	(*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
6586	(*movdf_softfloat32): Make all alternatives "#";
6587	(movdi): Use the new DIFD mode iterator to create a common splitter
6588	for movdi, movdf and movdd patterns.
6589
65902010-03-18  Shujing Zhao  <pearly.zhao@oracle.com>
6591
6592	* common.opt (dumpdir): Remove redundant tab.
6593
65942010-03-17  Martin Jambor  <mjambor@suse.cz>
6595
6596	PR tree-optimization/43347
6597	* tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
6598	original base is DECL_ARTIFICIAL or DECL_IGNORED_P.
6599
66002010-03-17  Bernd Schmidt  <bernd.schmidt@analog.com>
6601
6602	PR rtl-optimization/42216
6603	* regrename.c (create_new_chain): New function, broken out from...
6604	(scan_rtx_reg): ... here.  Call it.  Handle the case where we are
6605	appending a use to an empty chain.
6606	(build_def_use): Remove previous changes that convert OP_INOUT to
6607	OP_OUT operands; instead detect the case where an OP_INOUT operand
6608	uses a previously untracked register and create an empty chain for it.
6609
66102010-03-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6611
6612	* doc/extend.texi (Function Attributes): Rewrite unfinished
6613	sentence in ms_abi documentation.
6614
66152010-03-17  Alan Modra  <amodra@gmail.com>
6616
6617	* config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
6618	* config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
6619	(SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
6620	* config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.
6621
66222010-03-16  Richard Henderson  <rth@redhat.com>
6623
6624	PR middle-end/43365
6625	* tree-eh.c (replace_goto_queue): Also replace in the eh_seq.
6626	(lower_try_finally): Save and restore eh_seq around the expansion
6627	of the try-finally.
6628
66292010-03-16  Aldy Hernandez  <aldyh@redhat.com>
6630
6631	* graphite-sese-to-poly.c (split_reduction_stmt): Skip debug
6632	statements before splitting block.
6633
66342010-03-16  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6635
6636	* doc/sourcebuild.texi (Testsuites): Fix markup.
6637	Use pathnames relative to gcc/testsuite.
6638	(Test Directives): Move description of how timeout is determined.
6639	(Ada Tests): Favor gnat.exp over ada/acats/tests/gcc.
6640	(C Tests): Correct gcc.misc-tests directory.
6641	Framework tests now live in gcc.test-framework.
6642
66432010-03-16  Richard Guenther  <rguenther@suse.de>
6644
6645	PR middle-end/43379
6646	* tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI
6647	operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly.
6648
66492010-03-16  Aldy Hernandez  <aldyh@redhat.com>
6650	    Alexandre Oliva  <aoliva@redhat.com>
6651
6652	PR tree-optimization/42917
6653	* lambda-code.c (remove_iv): Skip debug statements.
6654	(lambda_loopnest_to_gcc_loopnest): Likewise.
6655	(not_interesting_stmt): Debug statements are not interesting.
6656
66572010-03-16  Jakub Jelinek  <jakub@redhat.com>
6658
6659	PR debug/43051
6660	PR debug/43092
6661	* cselib.c (cselib_preserve_constants,
6662	cfa_base_preserved_val): New static variables.
6663	(preserve_only_constants): New function.
6664	(cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
6665	clear its REG_VALUES.  If cselib_preserve_constants, don't
6666	empty the whole hash table, but preserve there VALUEs with constants,
6667	cfa_base_preserved_val and cfa_base_preserved_val plus constant.
6668	(cselib_preserve_cfa_base_value): New function.
6669	(cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
6670	(cselib_init): Change argument to int bitfield.  Set
6671	cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
6672	is in it.
6673	(cselib_finish): Clear cselib_preserve_constants and
6674	cfa_base_preserved_val.
6675	* cselib.h (enum cselib_record_what): New enum.
6676	(cselib_init): Change argument to int.
6677	(cselib_preserve_cfa_base_value): New prototype.
6678	* postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
6679	* dse.c (dse_step1): Likewise.
6680	* cfgcleanup.c (thread_jump): Likewise.
6681	* sched-deps.c (sched_analyze): Likewise.
6682	* gcse.c (local_cprop_pass): Likewise.
6683	* simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
6684	If FN is non-NULL, call the callback always and whenever it returns
6685	non-NULL just return that.  Only do rtx_equal_p if FN is NULL.
6686	* rtl.h (simplify_replace_fn_rtx): Add argument to callback.
6687	* combine.c (propagate_for_debug_subst): Add old_rtx argument,
6688	compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
6689	* Makefile.in (var-tracking.o): Depend on $(RECOG_H).
6690	* var-tracking.c: Include recog.h.
6691	(bb_stack_adjust_offset): Remove.
6692	(vt_stack_adjustments): Don't call it, instead just gather the
6693	adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
6694	(adjust_stack_reference): Remove.
6695	(compute_cfa_pointer): New function.
6696	(hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
6697	(struct adjust_mem_data): New type.
6698	(adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
6699	functions.
6700	(get_address_mode): New function.
6701	(replace_expr_with_values): Use it.
6702	(use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
6703	Use get_address_mode.  For cfa_base_rtx return MO_CLOBBER.
6704	(adjust_sets): Remove.
6705	(add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
6706	Use get_address_mode.
6707	(get_adjusted_src): Remove.
6708	(add_stores): Don't call it.  Never reuse expr SET.  Don't add extra
6709	MO_VAL_USE for cfa_base_rtx plus constant.  Use get_address_mode.
6710	(add_with_sets): Don't call adjust_sets.
6711	(fp_setter, vt_init_cfa_base): New functions.
6712	(vt_initialize): Change return type to bool.  Move most of pool etc.
6713	initialization to the beginning of the function from end.  Pass
6714	CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
6715	If !frame_pointer_needed, call vt_stack_adjustment before mos
6716	vector is filled, call vt_init_cfa_base if argp/framep has been
6717	eliminated to sp.  If frame_pointer_needed and argp/framep has
6718	been eliminated to hard frame pointer, set
6719	hard_frame_pointer_adjustment and call vt_init_cfa_base after
6720	encountering fp setter in the prologue.  For MO_ADJUST, call
6721	log_op_type before pusing the op into mos vector, not afterwards.
6722	Call adjust_insn before cselib_process_insn/add_with_sets,
6723	call cancel_changes (0) afterwards.
6724	(variable_tracking_main_1): Adjust for vt_initialize calling
6725	vt_stack_adjustments and returning whether it succeeded or not.
6726
67272010-03-15  Aldy Hernandez  <aldyh@redhat.com>
6728
6729	* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_deps): Skip
6730	debug statements.
6731
67322010-03-15  Jakub Jelinek  <jakub@redhat.com>
6733
6734	* dwarf2out.c (dwarf2out_frame_debug): Don't assert drap_reg
6735	has been set.
6736	(based_loc_descr): Use DW_OP_fbreg for vdrap_reg even when
6737	drap_reg has not been set.
6738
67392010-03-15  Michael Matz  <matz@suse.de>
6740
6741	PR middle-end/43300
6742	* tree-outof-ssa.c (emit_partition_copy): New argument sizeexp,
6743	use it to expand block copies.
6744	(insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
6745	insert_part_to_rtx_on_edge): Adjust callers of emit_partition_copy.
6746	(insert_value_copy_on_edge): Use store_expr for BLKmode values.
6747
67482010-03-15  Richard Guenther  <rguenther@suse.de>
6749
6750	PR tree-optimization/43367
6751	* tree-cfg.c (gimple_can_merge_blocks_p): Simplify PHI
6752	elimination check.
6753
67542010-03-15  Richard Guenther  <rguenther@suse.de>
6755
6756	PR tree-optimization/43317
6757	* ipa-struct-reorg.c (create_new_general_access): Update stmt.
6758
67592010-03-15  Martin Jambor  <mjambor@suse.cz>
6760
6761	PR tree-optimization/43141
6762	* tree-sra.c (create_abstract_origin): New function.
6763	(modify_function): Call create_abstract_origin.
6764
67652010-03-15  Chris Demetriou  <cgd@google.com>
6766
6767	* Makefile.in (stmp-int-hdrs): Don't chmod include/stdint.h if it
6768	wasn't copied.
6769
67702010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6771
6772	PR middle-end/43354
6773	* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Do not
6774	call insert_out_of_ssa_copy for default definitions.
6775
67762010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6777
6778	* graphite-clast-to-gimple.c (my_long_long): Defined.
6779	(gcc_type_for_cloog_iv): Use it instead of long_long_integer_type_node.
6780	* graphite-sese-to-poly.c (my_long_long): Defined.
6781	(scop_ivs_can_be_represented): Use it.
6782
67832010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6784
6785	* doc/invoke.texi: Fix documentation of graphite-max-nb-scop-params,
6786	graphite-max-bbs-per-function, and loop-block-tile-size.
6787	* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Replace "maximal"
6788	with "maximum".
6789	(PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Same.
6790
67912010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6792
6793	* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Remove
6794	forward declaration.
6795	* graphite-sese-to-poly.c (reduction_phi_p): Remove FIXME comment.
6796	(add_upper_bounds_from_estimated_nit): New.
6797	(build_loop_iteration_domains): Use it.
6798
67992010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6800
6801	* doc/invoke.texi (PARAM_LOOP_BLOCK_TILE_SIZE): Document.
6802
68032010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6804
6805	PR middle-end/43306
6806	* tree-chrec.c (evolution_function_right_is_integer_cst): CHREC_RIGHT
6807	should be an INTEGER_CST.  Also handle CASE_CONVERT.
6808
68092010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6810
6811	* graphite.c (graphite_initialize): To bound the number of bbs per
6812	function, use PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION.
6813	* params.def (PARAM_GRAPHITE_MAX_BBS_PER_FUNCTION): Declared.
6814	* doc/invoke.texi: Document it.
6815
68162010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6817
6818	* graphite-sese-to-poly.c (build_poly_scop): Do not return bool.
6819	* graphite-sese-to-poly.h (build_poly_scop): Same.
6820
68212010-03-13  Sebastian Pop  <sebastian.pop@amd.com>
6822
6823	* graphite-sese-to-poly.c (build_poly_scop): Limit scops following
6824	the number of parameters in the scop.  Use as an upper bound
6825	PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS.
6826	* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Declared.
6827	* doc/invoke.texi: Document it.
6828
68292010-03-13  Jerry Quinn  <jlquinn@optonline.net>
6830
6831	* Makefile.in (TEXI_GCCINT_FILES): Remove c-tree.texi.
6832	* doc/c-tree.texi: Remove.
6833	* doc/generic.texi: Merge c-tree.texi here.
6834	* doc/gccint.texi (Trees): Remove menu entry.
6835	(c-tree.texi): Remove @include.
6836	* doc/rtl.texi (Reading RTL): Update pxref from Trees to GENERIC.
6837	* doc/languages.texi (Reading RTL): Ditto.
6838
68392010-03-12  Steve Ellcey  <sje@cup.hp.com>
6840
6841	PR target/42869
6842	* config/ia64/sync.md (sync_compare_and_swap): Move memory fence.
6843
68442010-03-12  Michael Meissner  <meissner@linux.vnet.ibm.com>
6845
6846	PR middle-end/42431
6847	* gcc/config/rs6000/rs6000.c (rs6000_emit_move): Delete band-aid
6848	code added to work around reload clobbering CONST insns.
6849
68502010-03-12  Jakub Jelinek  <jakub@redhat.com>
6851
6852	* cselib.c (LONG_TERM_PRESERVED_VALUE_P): Remove.
6853	(cselib_preserve_definitely, cselib_clear_preserve): Remove.
6854	(cselib_preserve_only_values): Remove retain argument, don't
6855	traverse hash table with cselib_{preserve_definitely,clear_preserve}.
6856	* cselib.h (cselib_preserve_only_values): Remove retain argument.
6857	* var-tracking.c (micro_operation): Move insn field before union.
6858	Add DEF_VEC_O and DEF_VEC_ALLOC_O for this type.
6859	(struct variable_tracking_info_def): Remove n_mos field, change
6860	mos into a vector of micro_operations.
6861	(count_uses, count_uses_1, count_stores, count_with_sets): Remove.
6862	(bb_stack_adjust_offset, log_op_type, add_uses, add_stores,
6863	compute_bb_dataflow, emit_notes_in_bb): Adjust for VTI (bb)->mos
6864	changing into a vector.
6865	(add_with_sets): Likewise.  Ensure MO_VAL_USE uops from add_stores
6866	come before all other uops generated by add_stores.
6867	(vt_add_function_parameters): Adjust for cselib_preserve_only_values
6868	argument removal.
6869	(vt_initialize): Likewise.  Adjust for VTI (bb)->mos changing into
6870	a vector.  Run just one pass over the bbs instead of separate counting
6871	and computation phase.
6872	(vt_finalize): Free VTI (bb)->mos vector instead of array.
6873
6874	PR debug/43329
6875	* tree-inline.c (remap_decls): Put old_var rather than origin_var
6876	into *nonlocalized_list vector.
6877	* dwarf2out.c (gen_formal_parameter_die): Call decl_ultimate_origin
6878	even if origin is non-NULL.
6879	(gen_variable_die): Likewise.
6880	(process_scope_var): Don't change origin.
6881	(gen_decl_die): Likewise.
6882	* tree-cfgcleanup.c (remove_forwarder_block): Check single_pred_p
6883	before adding new edges instead of after it, fix moving over
6884	debug stmts.
6885
68862010-03-11  David S. Miller  <davem@davemloft.net>
6887
6888	* configure.ac (gcc_cv_as_cfi_advance_working): Skip a multiple
6889	of four.
6890	* configure: Rebuild.
6891
68922010-03-11  Martin Jambor  <mjambor@suse.cz>
6893
6894	PR tree-optimization/43257
6895	* tree.c (assign_assembler_name_if_neeeded): New function.
6896	(free_lang_data_in_cgraph): Assembler name assignment moved to the
6897	above new function.
6898	* tree.h (assign_assembler_name_if_neeeded): Declare.
6899	* cgraphunit.c (cgraph_analyze_function): Create an assembler name for
6900	the function if needed.
6901
69022010-03-11  Chris Demetriou  <cgd@google.com>
6903
6904	* Makefile.in (stmp-int-hdrs): Make include/unwind.h,
6905	include/stdint-gcc.h, and include/stdint.h world-readable.
6906
69072010-03-11  Richard Guenther  <rguenther@suse.de>
6908
6909	PR tree-optimization/43255
6910	* tree-vrp.c (process_assert_insertions_for): Do not insert
6911	asserts for trivial conditions.
6912
69132010-03-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
6914
6915	PR tree-optimization/43280
6916	* tree-ssa-math-opts.c (find_bswap_1): Modify symbolic number
6917	generation.  Move calculation of size out of the if branch.
6918	(find_bswap): Modify compare number generation.
6919
69202010-03-11  Richard Guenther  <rguenther@suse.de>
6921
6922	PR lto/43200
6923	* lto-streamer-in.c (maybe_fixup_decls): Simplify.
6924	(input_gimple_stmt): Fixup handled component types during
6925	operand read.  Also fix up decls in ADDR_EXPRs.
6926
69272010-03-10  Eric Botcazou  <ebotcazou@adacore.com>
6928
6929	* config/sparc/sol2-bi.h (CC1_SPEC): Default to -mcpu=v9 for -m32.
6930	* config/sparc/t-sol2-64 (MULTILIB_DIRNAMES): Use sparcv8plus.
6931
69322010-03-10  Jan Hubicka  <jh@suse.cz>
6933
6934	PR c/43288
6935	* ipa.c (function_and_variable_visibility) Normalize COMMON bits.
6936	* varasm.c (get_variable_section): Don't do that here...
6937	(make_decl_rtl): ... and here.
6938	(do_assemble_alias): Produce decl RTL.
6939	(assemble_alias): Likewise.
6940
69412010-03-10  Jakub Jelinek  <jakub@redhat.com>
6942
6943	PR debug/43290
6944	* reg-notes.def (REG_CFA_SET_VDRAP): New note.
6945	* dwarf2out.c (dwarf2out_frame_debug_expr): Remove rule 20 - setting
6946	of fde->vdrap_reg.
6947	(dwarf2out_frame_debug): Handle REG_CFA_SET_VDRAP note.
6948	(based_loc_descr): Only express drap or vdrap regno based expressions
6949	using DW_OP_fbreg when not optimizing.
6950	* config/i386/i386.c (ix86_get_drap_rtx): When not optimizing,
6951	make the vDRAP = DRAP assignment RTX_FRAME_RELATED_P and add
6952	REG_CFA_SET_VDRAP note.
6953
69542010-03-10  Alexander Monakov  <amonakov@ispras.ru>
6955
6956	PR tree-optimization/43236
6957	* tree-loop-distribution.c (generate_memset_zero): Fix off-by-one
6958	error in calculation of base address in reverse iteration case.
6959	(generate_builtin): Take number of latch executions if the statement
6960	is in the latch.
6961
69622010-03-10  Andrey Belevantsev  <abel@ispras.ru>
6963
6964	PR middle-end/42859
6965	* tree-eh.c: Include pointer-set.h.
6966	(lower_eh_dispatch): Filter out duplicate case labels and
6967	remove the unneeded edge when the label is unused.  Return
6968	true when some edges are removed.
6969	(execute_lower_eh_dispatch): When any lowering resulted in
6970	removing an edge, also delete unreachable blocks.
6971
69722010-03-10  Jakub Jelinek  <jakub@redhat.com>
6973
6974	PR bootstrap/43287
6975	* config/rs6000/rs6000.c (rs6000_delegitimize_address): Handle
6976	UNSPEC_MACHOPIC_OFFSET.
6977
69782010-03-09  Andreas Schwab  <schwab@linux-m68k.org>
6979
6980	PR target/43294
6981	* config/m68k/m68k.c (TARGET_DELEGITIMIZE_ADDRESS): Define.
6982	(m68k_delegitimize_address): New function.
6983
69842010-03-09  Jakub Jelinek  <jakub@redhat.com>
6985
6986	PR debug/43299
6987	* dwarf2out.c (const_ok_for_output_1): Return 1 for UNSPECs.
6988
6989	PR debug/43299
6990	* var-tracking.c (adjust_sets): New function.
6991	(count_with_sets, add_with_sets): Use it.
6992	(get_adjusted_src): New inline function.
6993	(add_stores): Use it.
6994
6995	PR debug/43304
6996	* var-tracking.c (vt_expand_loc_callback) <case SUBREG>: If dummy,
6997	call cselib_dummy_expand_value_rtx_cb instead of
6998	cselib_expand_value_rtx_cb.
6999
7000	PR debug/43293
7001	* config/i386/t-i386 (i386.o): Depend on debug.h and dwarf2out.h.
7002	* config/i386/i386.c: Include debug.h and dwarf2out.h.
7003	(ix86_file_end): If dwarf2out_do_cfi_asm (), emit .cfi_startproc
7004	and .cfi_endproc around the pic thunks.
7005	(output_set_got): For TARGET_DEEP_BRANCH_PREDICTION pic, ensure
7006	all queued unwind info register saves are saved before the call.
7007	For !TARGET_DEEP_BRANCH_PREDICTION pic, ensure the call is
7008	considered as sp-=4 for unwind info and the pop as sp+=4 which
7009	also clobbers dest, but doesn't actually restore it.
7010
7011	PR debug/43290
7012	* config/i386/i386.c (ix86_get_drap_rtx): Don't set
7013	RTX_FRAME_RELATED_P.
7014
70152010-03-09  Jie Zhang  <jie@codesourcery.com>
7016
7017	* config/arm/arm.md (thumb_mulsi3_v6): Remove trailing
7018	whitespaces in output template.
7019
70202010-03-09  Jie Zhang  <jie@codesourcery.com>
7021
7022	* ira-lives.c (check_and_make_def_use_conflict): Don't fall
7023	out array boundary.
7024
70252010-03-08  Jakub Jelinek  <jakub@redhat.com>
7026
7027	* Makefile.in (check_gcc_parallelize): Run dg-torture.exp and
7028	builtins.exp in a separate job.
7029
70302010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7031
7032	* graphite-sese-to-poly.c (add_param_constraints): Use
7033	lower_bound_in_type and upper_bound_in_type.
7034
70352010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7036
7037	* graphite-sese-to-poly.c (add_param_constraints): Use sizetype
7038	instead of unsigned_type_node.
7039
70402010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7041	    Reza Yazdani  <reza.yazdani@amd.com>
7042
7043	PR middle-end/43065
7044	* graphite-sese-to-poly.c (add_param_constraints): Insert bounds
7045	on pointer type parameters.
7046
70472010-03-08  Tobias Grosser  <grosser@fim.uni-passau.de>
7048
7049	PR middle-end/42644
7050	PR middle-end/42130
7051	* graphite-clast-to-gimple.c (clast_to_gcc_expression): Also
7052	handle conversions from pointer to integers.
7053	(gcc_type_for_cloog_iv): Choose the smalles signed integer as an
7054	induction variable, to be able to work with code generated by CLooG.
7055	* graphite-sese-to-poly.c (scop_ivs_can_be_represented): New.
7056	(build_poly_scop): Bail out if we cannot codegen a loop.
7057
70582010-03-08  Tobias Grosser  <grosser@fim.uni-passau.de>
7059
7060	* graphite-clast-to-gimple.c (translate_clast): Do not short-cut
7061	code generation with gloog_error.
7062
70632010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7064
7065	* sese.c (expand_scalar_variables_ssa_name): Add new argument for type.
7066	Call fold_convert on all the returned values.
7067	(expand_scalar_variables_expr): Pass to
7068	expand_scalar_variables_ssa_name the type of the resulting expression.
7069
70702010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7071
7072	* graphite-ppl.c (ppl_min_for_le_polyhedron): Renamed
7073	ppl_min_for_le_pointset.
7074	Use ppl_Pointset_Powerset_C_Polyhedron_minimize.
7075	* graphite-ppl.h (ppl_min_for_le_polyhedron): Update declaration.
7076
70772010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7078
7079	* graphite-dependences.c (map_into_dep_poly): Removed.
7080	(dependence_polyhedron_1): Use combine_context_id_scat.
7081
70822010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7083
7084	* graphite-poly.h (struct poly_scattering): Add layout documentation.
7085	(struct poly_bb): Same.
7086	(combine_context_id_scat): New.
7087
70882010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7089
7090	PR middle-end/42326
7091	* sese.c (name_defined_in_loop_p): Return false for default
7092	definitions.
7093
70942010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7095
7096	* graphite-clast-to-gimple.c (find_cloog_iv_in_expr): Simplify
7097	and clean up the logic.
7098
70992010-03-08  Sebastian Pop  <sebastian.pop@amd.com>
7100
7101	* graphite-sese-to-poly.c (add_param_constraints): Enabled: remove
7102	early return.
7103
71042010-03-08  Jakub Jelinek  <jakub@redhat.com>
7105
7106	* var-tracking.c (remove_cselib_value_chains): Define only for
7107	ENABLE_CHECKING.
7108	(dataflow_set_preserve_mem_locs, dataflow_set_remove_mem_locs,
7109	delete_slot_part, emit_notes_for_differences_1): Don't call
7110	remove_cselib_value_chains here.
7111	(set_slot_part, emit_notes_for_differences_2): Don't call
7112	add_cselib_value_chains here.
7113	(preserved_values): New vector.
7114	(preserve_value): New function.
7115	(add_uses, add_stores, vt_add_function_parameters): Use it
7116	instead of cselib_preserve_value.
7117	(changed_values_stack): New vector.
7118	(check_changed_vars_0): New function.
7119	(check_changed_vars_1, check_changed_vars_2): Use it.
7120	(emit_notes_for_changes): Call set_dv_changed (*, false) on all
7121	changed_values_stack VALUEs.
7122	(vt_emit_notes): For all preserved_values call
7123	add_cselib_value_chains.  If ENABLE_CHECKING call
7124	remove_cselib_value_chains before verifying value_chains is empty.
7125	Initialize and free changed_values_stack.
7126	(vt_initialize): Initialize preserved_values.
7127	(vt_finalize): Free preserved_values.
7128
71292010-03-08  Richard Guenther  <rguenther@suse.de>
7130
7131	PR tree-optimization/43269
7132	* tree-ssa-dse.c (dse_possible_dead_store_p): Fix post-dom
7133	region detection.
7134
71352010-03-08  Martin Jambor  <mjambor@suse.cz>
7136
7137	* ipa-prop.h (struct ipa_param_descriptor): Removed the called field.
7138	(ipa_is_param_called): Removed.
7139	* ipa-prop.c (ipa_note_param_call): Do not set the called flag.
7140	(ipa_print_node_params): Do not print the called flag.
7141	(ipa_write_node_info): Do not stream the called flag.
7142	(ipa_read_node_info): Likewise.
7143
71442010-03-07  Jakub Jelinek  <jakub@redhat.com>
7145
7146	PR debug/43176
7147	* Makefile.in (var-tracking.o): Depend on pointer-set.h.
7148	* cselib.c (struct expand_value_data): Add dummy field.
7149	(cselib_expand_value_rtx, cselib_expand_value_rtx_cb): Initialize
7150	dummy to false.
7151	(cselib_dummy_expand_value_rtx_cb): New function.
7152	(cselib_expand_value_rtx_1): If evd->dummy is true, don't allocate
7153	any rtl.
7154	* cselib.h (cselib_dummy_expand_value_rtx_cb): New prototype.
7155	* var-tracking.c: Include pointer-set.h.
7156	(variable): Change n_var_parts to char from int.  Add
7157	cur_loc_changed and in_changed_variables fields.
7158	(variable_canonicalize): Remove.
7159	(shared_var_p): New inline function.
7160	(unshare_variable): Maintain cur_loc_changed and
7161	in_changed_variables fields.  If var was in changed_variables,
7162	replace it there with new_var.  Just copy cur_loc instead of
7163	resetting it to something else.
7164	(variable_union): Don't recompute cur_loc.  Use shared_var_p.
7165	(dataflow_set_union): Don't call variable_canonicalize.
7166	(loc_cmp): If both x and y are DEBUG_EXPRs, compare uids
7167	of their DEBUG_EXPR_TREE_DECLs.
7168	(canonicalize_loc_order_check): Verify that cur_loc is NULL
7169	and in_changed_variables and cur_loc_changed is false.
7170	(variable_merge_over_cur): Clear cur_loc, in_changed_variables
7171	and cur_loc_changed.  Don't update cur_loc here.
7172	(variable_merge_over_src): Don't call variable_canonicalize.
7173	(dataflow_set_preserve_mem_locs): Use shared_var_p.  When
7174	removing loc that is equal to cur_loc, clear cur_loc,
7175	set cur_loc_changed and ensure variable_was_changed is called.
7176	(dataflow_set_remove_mem_locs): Use shared_var_p.  Only
7177	compare pointers in cur_loc check, if it is equal to loc,
7178	clear cur_loc and set cur_loc_changed.  Don't recompute cur_loc here.
7179	(variable_different_p): Remove compare_current_location argument,
7180	don't compare cur_loc.
7181	(dataflow_set_different_1): Adjust variable_different_p caller.
7182	(variable_was_changed): If dv had some var in changed_variables
7183	already, reset in_changed_variables flag for it and propagate
7184	cur_loc_changed over to the new variable.  On empty var
7185	always set cur_loc_changed.  Set in_changed_variables on whatever
7186	var is added to changed_variables.
7187	(set_slot_part): Clear cur_loc_changed and in_changed_variables.
7188	Use shared_var_p.  When removing loc that is equal to cur_loc,
7189	clear cur_loc and set cur_loc_changed.  If cur_loc is NULL at the
7190	end, don't set it to something else, just call variable_was_changed.
7191	(delete_slot_part): Use shared_var_p.  When cur_loc equals to
7192	loc being removed, clear cur_loc and set cur_loc_changed.
7193	Set cur_loc_changed if all locations have been removed.
7194	(struct expand_loc_callback_data): New type.
7195	(vt_expand_loc_callback): Add dummy mode in which no rtxes are
7196	allocated.  Always create SUBREGs if simplify_subreg failed.
7197	Prefer to use cur_loc, when that fails and still in
7198	changed_variables (and seen first time) recompute it.  Set
7199	cur_loc_changed of variables which had to change cur_loc and
7200	compute elcd->cur_loc_changed if any of the subexpressions used
7201	had to change cur_loc.
7202	(vt_expand_loc): Adjust to pass arguments in
7203	expand_loc_callback_data structure.
7204	(vt_expand_loc_dummy): New function.
7205	(emitted_notes): New variable.
7206	(emit_note_insn_var_location): For VALUEs and DEBUG_EXPR_DECLs
7207	that weren't used for any other decl in current
7208	emit_notes_for_changes call call vt_expand_loc_dummy to update
7209	cur_loc.  For -fno-var-tracking-assignments, set cur_loc to
7210	first loc_chain location if NULL before.  Always use just
7211	cur_loc instead of first loc_chain location.  When cur_loc_changed
7212	is false, when not --enable-checking=rtl just don't emit any note.
7213	When rtl checking, compute the note and assert it is the same
7214	as previous note.  Clear cur_loc_changed and in_changed_variables
7215	at the end before removing from changed_variables.
7216	(check_changed_vars_3): New function.
7217	(emit_notes_for_changes): Traverse changed_vars to call
7218	check_changed_vars_3 on each changed var.
7219	(emit_notes_for_differences_1): Clear cur_loc_changed and
7220	in_changed_variables.  Recompute cur_loc of new_var.
7221	(emit_notes_for_differences_2): Clear cur_loc if new variable appears.
7222	(vt_emit_notes): Initialize and destroy emitted_notes.
7223
72242010-03-07  Bernd Schmidt  <bernd.schmidt@analog.com>
7225
7226	PR rtl-optimization/42220
7227	* regrename.c (scan_rtx) <case STRICT_LOW_PART, ZERO_EXTRACT>:
7228	Use verify_reg_tracked to determine if we should use OP_OUT rather
7229	than OP_INOUT.
7230	(build_def_use): If we see an in-out operand for a register that we
7231	know nothing about, treat is an output if possible, fail the block if
7232	not.
7233
72342010-03-06  Alexandre Oliva  <aoliva@redhat.com>
7235
7236	PR debug/42897
7237	* gimple-iterator.c (gsi_remove): Propagate only PHI DEFs removed
7238	permanently.
7239
72402010-03-06  Alexandre Oliva  <aoliva@redhat.com>
7241
7242	PR debug/42897
7243	* tree-vect-loop.c (vect_transform_loop): Kill out-of-loop debug
7244	uses of relevant DEFs that are dead outside the loop too.
7245
72462010-03-06  Alexandre Oliva  <aoliva@redhat.com>
7247
7248	* var-tracking.c (dataflow_set_merge): Swap src and src2.
7249	Reverted:
7250	2010-01-13  Jakub Jelinek  <jakub@redhat.com>
7251	PR debug/41371
7252	* var-tracking.c (values_to_unmark): New variable.
7253	(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
7254	values_to_unmark vector.  Moved body to...
7255	(find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
7256	instead queue it into values_to_unmark vector.
7257	(vt_find_locations): Free values_to_unmark vector.
7258
72592010-03-05  Eric Botcazou  <ebotcazou@adacore.com>
7260
7261	* Makefile.in (PLUGINCC, PLUGINCFLAGS): New variables.
7262	(site.exp): Export them when plugins are enabled.
7263
72642010-03-05  Sebastian Pop  <sebastian.pop@amd.com>
7265
7266	PR middle-end/42326
7267	* tree-chrec.c (chrec_fold_plus_1): Do not handle convert expressions
7268	that contain scevs.
7269	(chrec_fold_multiply): Same.
7270
72712010-03-04  Andrew Pinski  <andrew_pinski@caviumnetworks.com>
7272
7273	PR c/43248
7274	* c-decl.c (build_compound_literal): Return early if init is
7275	an error_mark_node.
7276
72772010-03-04  Martin Jambor  <mjambor@suse.cz>
7278
7279	PR tree-optimization/43164
7280	PR tree-optimization/43191
7281	* tree-sra.c (type_consists_of_records_p): Reject records with
7282	zero-size bit-fields at the end.
7283
72842010-03-04  Mike Stump  <mikestump@comcast.net>
7285
7286	* Makefile.in (TAGS): Remove *.y.
7287
72882010-03-04  Richard Guenther  <rguenther@suse.de>
7289
7290	PR tree-optimization/40761
7291	* tree-ssa-pre.c (compute_antic): Walk reverse postorder
7292	in reverse order.
7293	(my_rev_post_order_compute): New function.
7294	(init_pre): Call it.
7295
72962010-03-04  Changpeng Fang  <changpeng.fang@amd.com>
7297
7298	PR middle-end/43209
7299	* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Do not
7300	decrease the cost of an IV candidate when the cost is infinite.
7301
73022010-03-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7303
7304	* doc/extend.texi (Vector Extensions, X86 Built-in Functions):
7305	Use '3DNow!' for the extension of that name, ensure normal space
7306	after the string.
7307	* doc/invoke.texi (i386 and x86-64 Options): Likewise.
7308
73092010-03-03  Jeff Law  <law@redhat.com>
7310
7311	* PR middle-end/32693
7312	* expmed.c (store_bit_field_1): Use gen_lowpart_SUBREG rather
7313	than gen_rtx_SUBREG.
7314	(extract_bit_field_1): Likewise.
7315
73162010-03-03  Janis Johnson  <janis187@us.ibm.com>
7317
7318	* doc/sourcebuild.texi (Test directives): Document that arguments
7319	include-opts and exclude-opts are now optional for dg-skip-if,
7320	dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
7321
73222010-03-03  Jason Merrill  <jason@redhat.com>
7323
7324	PR c++/12909
7325	* cgraph.h (varpool_node): Add extra_name field.
7326	* varpool.c (varpool_extra_name_alias): New.
7327	(varpool_assemble_decl): Emit extra name aliases.
7328	(varpool_mark_needed_node): Look past an extra name alias.
7329	* lto-streamer.h (LTO_tags): Add LTO_var_decl_alias.
7330	* lto-streamer-in.c (lto_input_tree): Read it.
7331	* lto-streamer-out.c (output_unreferenced_globals): Write it.
7332
73332010-03-03  Eric Botcazou  <ebotcazou@adacore.com>
7334
7335	* config.gcc (sparc64-*-solaris2*, sparc-*-solaris2*): Merge into...
7336	(sparc*-*-solaris2*): ...this.
7337
73382010-03-03  Jakub Jelinek  <jakub@redhat.com>
7339
7340	PR debug/43229
7341	* cfgexpand.c (expand_debug_expr): Handle DOT_PROD_EXPR,
7342	WIDEN_MULT_EXPR and WIDEN_SUM_EXPR.  Return NULL without
7343	ICE for vector expressions, ADDR_SPACE_CONVERT_EXPR,
7344	FIXED_CONVERT_EXPR, OBJ_TYPE_REF and WITH_SIZE_EXPR.
7345
7346	PR debug/43237
7347	* dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
7348	fallthrough to default handling, just with want_address 0 instead of 2.
7349	For single element lists, add_AT_loc directly, otherwise create an
7350	artificial variable DIE and stick location list to it.
7351
7352	PR debug/43177
7353	* var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
7354	(VAL_EXPR_HAS_REVERSE): Define.
7355	(reverse_op): New function.
7356	(add_stores): For reversible operations add an extra MO_VAL_USE.
7357
73582010-03-02  Jason Merrill  <jason@redhat.com>
7359
7360	* c-pretty-print.c (pp_c_specifier_qualifier_list): Print vector size.
7361
73622010-03-02  Eric Botcazou  <ebotcazou@adacore.com>
7363
7364	* config.gcc (sparc-*-linux*): Do not include sparc/gas.h.
7365	(sparc64-*-linux*): Likewise.
7366	(sparc64-*-solaris2*): Include assembler files before linker ones.
7367	(sparc-*-solaris2*): Simplify and reorder to match previous case.
7368	* config/sparc/gas.h: Delete.
7369	* config/sparc/sol2-64.h: Add copyright notice.
7370	* config/sparc/sol2-gas-bi.h: Likewise.
7371	* config/sparc/sol2-gld.h: Likewise.
7372	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Delete.
7373	* config/sparc/sol2.h (TARGET_ASM_NAMED_SECTION): Redefine.
7374	* config/sparc/sol2-gas.h (TARGET_ASM_NAMED_SECTION): Likewise.
7375	* config/sparc/sparc.c (TARGET_ASM_ALIGNED_SI_OP): Never redefine.
7376	(sparc_elf_asm_named_section): Rename into...
7377	(sparc_solaris_elf_asm_named_section): ...this.  Always define.
7378
73792010-03-02  Uros Bizjak  <ubizjak@gmail.com>
7380
7381	* config/alpha/alpha.c (override_options): Fix -mtune error message.
7382
73832010-03-02  Jeff Law  <law@redhat.com>
7384
7385	PR middle-end/42431
7386	* reload1.c (rtx_p, substitute_stack): Declare.
7387	(substitute): Record addresses of changed rtxs.
7388	(gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
7389	Restore the original rtx when complete.
7390	(reload): Free subsitute_stack when complete.
7391
73922010-03-02  Janis Johnson  <janis187@us.ibm.com>
7393
7394	* doc/gccint.texi (menu): Add Testsuites as a chapter.
7395	* doc/sourcebuild.texi (Testsuites): Move up a level to be a
7396	new chapter.
7397	(Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
7398	LTO Testing, gcov Testing, profopt Testing, compat Testing,
7399	Torture Tests): Change from subsection to section.
7400
74012010-03-02  Jakub Jelinek  <jakub@redhat.com>
7402	    Steven Bosscher  <steven@gcc.gnu.org>
7403
7404	* var-tracking.c (vt_initialize): Scan insns in ebb chunks
7405	instead of bb.
7406
74072010-03-02  Reza Yazdani  <reza.yazdani@amd.com>
7408
7409	PR middle-end/42640
7410	* tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
7411	the assignment from the new induction variable to the assignment
7412	of the value from the original loop PHI function.
7413
74142010-03-01  Janis Johnson  <janis187@us.ibm.com>
7415	    Daniel Jacobowitz  <dan@codesourcery.com>
7416
7417	* doc/sourcebuild.texi (Test directives): Clarify options to
7418	dg-skip-if.
7419
74202010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7421
7422	* configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
7423	Disable cfi directives unless GCC and gas agree on using read-only
7424	.eh_frame sections for 64-bit.
7425	* configure: Regenerate.
7426
74272010-03-01  Richard Guenther  <rguenther@suse.de>
7428
7429	PR tree-optimization/43220
7430	* tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
7431	BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
7432
74332010-03-01  Richard Guenther  <rguenther@suse.de>
7434	    Martin Jambor  <mjambor@suse.cz>
7435
7436	PR middle-end/41250
7437	* gimplify.c (gimplify_body): Unset DECL_HAS_VALUE_EXPR_P on
7438	gimplified parameters.
7439
74402010-03-01  Christian Bruel  <christian.bruel@st.com>
7441
7442	* except.c (dw2_build_landing_pads): set LABEL_PRESERVE_P.
7443
74442010-03-01  H.J. Lu  <hongjiu.lu@intel.com>
7445
7446	* config/i386/linux64.h (ASM_SPEC): Use SPEC_32 and SPEC_64.
7447
74482010-03-01  Richard Guenther  <rguenther@suse.de>
7449
7450	PR middle-end/43213
7451	* expr.c (expand_assignment): Use the alias-oracle to tell
7452	if the rhs aliases the result decl.
7453
74542010-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7455
7456	PR pch/14940
7457	* config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
7458	to sol_gt_pch_get_address.
7459	(TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
7460	64-bit, SPARC and x86.
7461	(sol_gt_pch_get_address): New function.
7462
74632010-03-01  Marco Poletti  <poletti.marco@gmail.com>
7464
7465	* toplev.h (inform_n, error_n): Declare.
7466	* diagnostic.c (inform_n, error_n): New function.
7467
74682010-03-01  Jakub Jelinek  <jakub@redhat.com>
7469
7470	* cfgexpand.c (expand_used_vars): If an artificial non-ignored var
7471	has no rtl yet when processing local_decls, queue it and recheck
7472	if deferred stack allocation hasn't assigned it rtl.
7473
74742010-02-28  Kaz Kojima  <kkojima@gcc.gnu.org>
7475
7476	* config/sh/sh.c (unspec_bbr_uid): New.
7477	(gen_block_redirect): Use it instead of INSN_UID.
7478	(gen_far_branch): Likewise.
7479
74802010-02-28  H.J. Lu  <hongjiu.lu@intel.com>
7481
7482	* config/i386/darwin.h (TARGET_SUBTARGET32_ISA_DEFAULT): Make
7483	it the same as TARGET_SUBTARGET64_ISA_DEFAULT.
7484
74852010-02-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7486
7487	* doc/invoke.texi (Warning Options, RX Options): Fix typos.
7488	(Warning Options): -Wno-conversion-null is valid for
7489	Objective-C++ as well.
7490	* doc/tm.texi (Named Address Spaces): Likewise.
7491	* doc/plugins.texi (Plugins): Replace TABs with spaces.
7492	* doc/tree-ssa.texi (Tree SSA): Likewise.
7493
74942010-02-27  H.J. Lu  <hongjiu.lu@intel.com>
7495
7496	PR bootstrap/43202
7497	* config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
7498	by default.  Don't set the default arch for
7499	i[34567]86-*-darwin*|x86_64-*-darwin*.
7500
75012010-02-27  H.J. Lu  <hongjiu.lu@intel.com>
7502
7503	PR bootstrap/43202
7504	* config.gcc: Enable SSE math for i[34567]86-*-darwin* by
7505	default.  Set the default 32bit/64bit archs with $with_arch
7506	instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
7507
75082010-02-27  Richard Guenther  <rguenther@suse.de>
7509
7510	PR tree-optimization/43186
7511	* params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
7512	* doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
7513	* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
7514	unroller iterations.
7515
75162010-02-27  H.J. Lu  <hongjiu.lu@intel.com>
7517
7518	* config.gcc: Set the default 32bit/64bit archs if 64bit ISA is
7519	required and i[34567]86-*-* targets don't support 64bit ISA.
7520
75212010-02-26  Eric Botcazou  <ebotcazou@adacore.com>
7522
7523	PR ada/43096
7524	* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
7525	the same alias set.
7526
75272010-02-26  H.J. Lu  <hongjiu.lu@intel.com>
7528
7529	* config.gcc: Set the default arch at least to Prescott for
7530	i[34567]86-*-darwin* and Pentium 4 for i[34567]86-*-* targets
7531	if SSE math is enabled.
7532
75332010-02-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7534
7535	* diagnostic.c (diagnostic_initialize): Update.
7536	(diagnostic_report_diagnostic): Test inhibit_notes_p for
7537	informative notes.
7538	* diagnostic.h (diagnostic_context): New bool inhibit_notes_p.
7539	(diagnostic_inhibit_notes): New.
7540	* toplev.c (process_options): inhibit notes with -fcompare-debug.
7541
75422010-02-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7543
7544	PR c/20631
7545	* doc/cpp.texi: Use c90 instead of c89 and gnu90 instead of gnu89.
7546	* doc/standards.texi: Likewise.
7547	* doc/extend.texi: Likewise.
7548	* doc/trouble.texi: Likewise.
7549	* doc/cppopts.texi: Likewise.
7550	* doc/install.texi: Likewise.
7551	* c.opt (std=c90,std=gnu90): New options.
7552	* c-opts.c (c_common_handle_option): Handle them.
7553
75542010-02-26  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7555
7556	PR c/24577
7557	* c-decl.c (undeclared_variable): Use an informative note.
7558
75592010-02-26  Richard Guenther  <rguenther@suse.de>
7560
7561	PR tree-optimization/43186
7562	* gimple.h (gimple_fold): Remove.
7563	* gimple.c (gimple_fold): Remove.  Inline into single user ...
7564	* tree-cfgcleanup.c (cleanup_control_expr_graph): ... here.
7565	Try harder for conditions.
7566
75672010-02-26  Jakub Jelinek  <jakub@redhat.com>
7568
7569	PR debug/43190
7570	* function.c (used_types_insert): Don't skip through named pointer
7571	types.  Don't use TYPE_MAIN_VARIANT if the original type has a name
7572	and it is different from the main variant's type.
7573
75742010-02-26  Nick Clifton  <nickc@redhat.com>
7575
7576	* config/rx/rx.md (sminsi3): Remove bogus alternative.
7577
75782010-02-26  H.J. Lu  <hongjiu.lu@intel.com>
7579
7580	* config.gcc: Support --with-fpmath=sse for x86.
7581
7582	* config/i386/ssemath.h: New.
7583
7584	* doc/install.texi (--with-fpmath=sse): Documented.
7585
75862010-02-26  Richard Guenther  <rguenther@suse.de>
7587
7588	PR tree-optimization/43188
7589	* tree-vect-stmts.c (get_vectype_for_scalar_type): Do not build
7590	vector types of over-aligned element type.
7591
75922010-02-26  Uros Bizjak  <ubizjak@gmail.com>
7593
7594	PR target/43175
7595	* config/i386/i386.c (expand_vec_perm_blend): Use correct
7596	operands in V8HImode subregs.  Fix operand order in VEC_MERGE rtx.
7597
75982010-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
7599
7600	* doc/invoke.texi (-fvar-tracking-assignments): Fix typo.
7601
76022010-02-26  Jakub Jelinek  <jakub@redhat.com>
7603
7604	* Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
7605	* var-tracking.c: Include diagnostic.h.
7606	(debug_dv): New function.
7607	(dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
7608
7609	PR debug/43160
7610	* var-tracking.c (dv_onepart_p): Return true for DEBUG_EXPR_DECLs.
7611	(add_value_chain, add_value_chains, remove_value_chain,
7612	remove_value_chains): Handle DEBUG_EXPRs.
7613	(check_changed_vars_1, check_changed_vars_2): Handle DEBUG_EXPR_DECLs.
7614
7615	PR debug/43161
7616	* regcprop.c (struct queued_debug_insn_change): New type.
7617	(struct value_data_entry): Add debug_insn_changes field.
7618	(struct value_data): Add n_debug_insn_changes field.
7619	(debug_insn_changes_pool): New variable.
7620	(free_debug_insn_changes, apply_debug_insn_changes,
7621	cprop_find_used_regs_1, cprop_find_used_regs): New functions.
7622	(kill_value_one_regno): Call free_debug_insn_changes if needed.
7623	(init_value_data): Clear debug_insn_changes and n_debug_insn_changes
7624	fields.
7625	(replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
7626	changes for them.
7627	(copyprop_hardreg_forward_1): Don't call apply_change_group for
7628	DEBUG_INSNs.  For a real insn, if there are queued DEBUG_INSN
7629	changes, call cprop_find_used_regs via note_stores.
7630	(copyprop_hardreg_forward): When copying vd from predecessor
7631	which has any queued DEBUG_INSN changes, make sure the pointers are
7632	cleared.  At the end call df_analyze and then if there are any
7633	DEBUG_INSN changes queued at the end of some basic block for still
7634	live registers, apply them.
7635	(pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
7636
76372010-02-25  Uros Bizjak  <ubizjak@gmail.com>
7638
7639	* config.gcc (i[34567]86-*-* | x86_64-*-*): Split long line.
7640	(arm*-*-*): Ditto.
7641
76422010-02-25  H.J. Lu  <hongjiu.lu@intel.com>
7643
7644	* config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
7645	targets.  Set the default with_cpu/with_arch from arch/cpu.
7646	Allow x86-64 and native for with_cpu/with_arch.
7647
76482010-02-25  Nicolas Benoit  <nbenoit@tuxfamily.org>
7649
7650	* ebitmap.c: Change calls to verify_popcount with calls to
7651	sbitmap_verify_popcount.
7652	(ebitmap_clear_bit): Fixed map->cacheindex test and
7653	map>cache update when bit clearing results in an empty
7654	element.
7655
76562010-02-25  Michael Meissner  <meissner@linux.vnet.ibm.com>
7657
7658	PR target/43154
7659	* config/rs6000/vector.md (VEC_64): New iterator for V2DF, V2DI.
7660	(vec_interleave_high<mode>): Rename from vec_interleave_highv2df
7661	and support both V2DF and V2DI modes.
7662	(vec_interleave_low<mode>): Rename from vec_interleave_lowv2df and
7663	support both V2DF and V2DI modes.
7664	(general): Delete trailing whitespace from a few patterns.
7665
7666	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
7667	V2DF/V2DI interleave high/low builtins.
7668
7669	* config/rs6000/rs6000-builtin.def (VSX_BUILTIN_VEC_MERGE*): Add
7670	new VSX builtins.
7671
7672	* config/rs6000/rs6000.c (bdesc_2arg): Add support for V2DF/V2DI
7673	interleave high/low functions.
7674
76752010-02-25  Gerald Pfeifer  <gerald@pfeifer.com>
7676
7677	* doc/extend.texi (Symbol-Renaming Pragmas): Fix spelling of
7678	#pragma extern_prefix.
7679
76802010-02-25  Jakub Jelinek  <jakub@redhat.com>
7681
7682	PR debug/43166
7683	* cfgexpand.c (expand_debug_expr) <case VAR_DECL>: If mode is
7684	BLKmode, assert op0 is a MEM and just adjust its mode.
7685
7686	PR debug/43165
7687	* cfgexpand.c (expand_debug_expr): Don't call simplify_gen_subreg
7688	if bitpos isn't multiple of mode's bitsize.
7689
76902010-02-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7691
7692	* c.opt (-ftemplate-depth=): New.
7693	(-ftemplate-depth-): Deprecate.
7694	* optc-gen.awk: Handle -ftemplate-depth=.
7695	* opth-gen.awk: Likewise.
7696	* c-opts.c (c_common_handle_option): Likewise.
7697	* doc/invoke.texi (-ftemplate-depth-): Replace with -ftemplate-depth=.
7698
76992010-02-24  Jason Merrill  <jason@redhat.com>
7700
7701	* doc/invoke.texi: Improve -Wabi and -fabi-version docs.
7702
77032010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7704
7705	* cfg.c (alloc_aux_for_block): Remove inline.
7706	(alloc_aux_for_edge): Likewise.
7707
77082010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7709
7710	* config.gcc: Fix typo in mips-sgi-irix6.[0-4]* obsoletion.
7711
77122010-02-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7713
7714	* config/i386/sol2.h (NO_DBX_BNSYM_ENSYM): Define.
7715	* config/i386/sol2-gas.h: New file.
7716	* config.gcc (i[34567]86-*-solaris2*): Use it.
7717
77182010-02-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7719
7720	PR c/43128
7721	* c-typeck.c (ep_convert_and_check): New.
7722	(build_conditional_expr): Use it.
7723	(build_binary_op): Likewise.
7724
77252010-02-24  Jakub Jelinek  <jakub@redhat.com>
7726
7727	* regcprop.c (copyprop_hardreg_forward_1): Don't call df_insn_rescan.
7728
7729	PR debug/43150
7730	* gimplify.c (gimplify_type_sizes): Clear DECL_IGNORED_P for VLA
7731	bounds even for -O+.
7732	* var-tracking.c (track_expr_p): If !need_rtl, don't mandate
7733	expr needs to have DECL_NAME set.
7734
77352010-02-24  Nick Clifton  <nickc@redhat.com>
7736
7737	* config/mep/mep.c: Include gimple.h.
7738	(mep_function_uses_sp): Delete unused function.
7739	(mep_gimplify_va_arg_expr): Change types of pre_p and post_p
7740	parameters.  Use unsigned integers to count args.  Return a
7741	NULL_RTX instead of an error_mark_node.  Toidy up formatting.
7742
77432010-02-23  Jakub Jelinek  <jakub@redhat.com>
7744
7745	PR target/43107
7746	* config/i386/i386.c (avx_vpermilp_parallel): Reject indexes
7747	greater or equal to nelt instead of 2 * nelt.
7748	(expand_vec_perm_1): When op0 and op1 are equal, mask indexes
7749	with nelt - 1.
7750
77512010-02-23  Jason Merrill  <jason@redhat.com>
7752
7753	PR debug/42800
7754	* cfgexpand.c (expand_used_vars): Keep artificial non-ignored vars
7755	in cfun->local_decls even if they have register types.
7756
7757	PR c++/42837
7758	* stor-layout.c (place_field): Don't warn about unnecessary
7759	DECL_PACKED if the type is packed.
7760
77612010-02-23  Jakub Jelinek  <jakub@redhat.com>
7762
7763	PR target/43139
7764	* config/i386/i386.c (ix86_delegitimize_address): Delegitimize all
7765	GOTOFF relocs, even when the base reg isn't pic pointer.
7766
77672010-02-23  Michael Matz  <matz@suse.de>
7768
7769	PR debug/43077
7770	* cfgexpand (expand_debug_expr): Expand TERed ssa names in place.
7771	(expand_gimple_basic_block): Generate and use debug temps if there
7772	are debug uses left after the last real use of TERed ssa names.
7773	Unlink debug immediate uses when they are expanded.
7774
77752010-02-23  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7776
7777	PR 43123
7778	* config/i386/i386.c (override_options): Reorganise to provide
7779	better error messages.
7780
77812010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
7782
7783	PR middle-end/43083
7784	* graphite-scop-detection.c (create_single_exit_edge): Move
7785	the call to find_single_exit_edge to....
7786	(create_sese_edges): ...here.  Don't handle multiple edges
7787	exiting the function.
7788	(build_graphite_scops): Don't handle multiple edges
7789	exiting the function.
7790
77912010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
7792
7793	PR middle-end/43097
7794	* sese.c (get_rename): Assert that old_name is an SSA_NAME.
7795	(rename_variables_in_stmt): Continue when the use is not an SSA_NAME.
7796
77972010-02-22  Sebastian Pop  <sebastian.pop@amd.com>
7798
7799	PR middle-end/43026
7800	* sese.c (expand_scalar_variables_expr): Handle COMPONENT_REF.
7801
78022010-02-22  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7803
7804	PR c++/43126
7805	* c-typeck.c (convert_arguments): Print declaration location.
7806	* c-common.c (validate_nargs): Rename as
7807	builtin_function_validate_nargs.
7808	(check_builtin_function_arguments): Update.
7809
78102010-02-22  Richard Guenther  <rguenther@suse.de>
7811
7812	PR lto/43045
7813	* tree-inline.c (declare_return_variable): Use the type of
7814	the call stmt lhs if available.
7815
78162010-02-22  Duncan Sands  <baldrick@free.fr>
7817
7818	* passes.c (register_pass): Always consider all pass lists when
7819	ref_pass_instance_number is zero.
7820
78212010-02-22  Richard Guenther  <rguenther@suse.de>
7822
7823	PR tree-optimization/42749
7824	* tree-tailcall.c (adjust_return_value_with_ops): Drop update
7825	parameter.  Do arithmetic in the original type.
7826	(update_accumulator_with_ops): Likewise.
7827	(adjust_accumulator_values): Adjust.
7828
78292010-02-22  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
7830
7831	* config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
7832	(QI to BLKmode splitter): New splitter.
7833
78342010-02-22  H.J. Lu  <hongjiu.lu@intel.com>
7835
7836	* config/i386/i386.c (initial_ix86_tune_features): Turn on
7837	X86_TUNE_INTER_UNIT_MOVES for m_ATOM.
7838
78392010-02-22  Richard Guenther  <rguenther@suse.de>
7840
7841	* tree-vect-slp.c (vect_slp_analyze_bb): Fix typo.
7842
78432010-02-22  Hans-Peter Nilsson  <hp@bitrange.com>
7844
7845	Migrate crti, crtn, crtbegin, crtend build rules to libgcc.
7846	* config/mmix/t-mmix (EXTRA_MULTILIB_PARTS): Don't set.
7847	($(T)crti.o, $(T)crtn.o): Remove rules.
7848
78492010-02-21  Tobias Burnus  <burnus@net-b.de>
7850
7851	PR fortran/35259
7852	* doc/invoke.texi (-fassociative-math): Document that this
7853	option is automatically enabled for Fortran.
7854
78552010-02-20  David S. Miller  <davem@davemloft.net>
7856
7857	* configure.ac: Test if linker and assembler properly support
7858	GOTDATA_OP relocations.
7859	* configure: Rebuild.
7860	* config.in: Likewise.
7861	* config/sparc/sparc.md (UNSPEC_MOVE_GOTDATA): New.
7862	(movsi_lo_sum_pic): Use %gdop_*() relocs if available.
7863	(movsi_high_pic): Likewise.
7864	(movdi_lo_sum_pic): Likewise.
7865	(movdi_high_pic): Likewise.
7866	(movsi_pic_gotdata_op): New pattern.
7867	(movdi_pic_gotdata_op): Likewise.
7868	* config/sparc/sparc.c (legitimize_pic_address): If flag_pic is 2,
7869	emit gen_mov{si,di}_pic_gotdata_op for the GOT slot load.
7870
78712010-02-20  Uros Bizjak  <ubizjak@gmail.com>
7872
7873	PR target/43067
7874	* config/i386/sse.md (xop_mulv2div2di3_low): Change type
7875	attribute to ssemul.
7876	(xop_mulv2div2di3_high): Ditto.
7877
78782010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7879
7880	PR c++/35669
7881	* c.opt (Wconversion-null): New option.
7882	* doc/invoke.texi (Wconversion-null): Document.
7883
78842010-02-20  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7885
7886	* common.opt (Wlarger-than-): Add Undocumented.
7887
78882010-02-19  Mike Stump  <mikestump@comcast.net>
7889
7890	* config/t-darwin (gt-darwin.h): Remove as Makefile now handles it.
7891
78922010-02-19  Jason Merrill  <jason@redhat.com>
7893
7894	PR target/40332
7895	* configure.ac (gcc_cv_as_cfi_advance_working): Check 32-bit advance.
7896	* configure: Likewise.
7897
78982010-02-20  Alan Modra  <amodra@gmail.com>
7899
7900	PR middle-end/42344
7901	* cgraph.h (cgraph_make_decl_local): Declare.
7902	* cgraph.c (cgraph_make_decl_local): New function.
7903	(cgraph_make_node_local): Use it.
7904	* cgraphunit.c (cgraph_function_versioning): Likewise.
7905	* ipa.c (function_and_variable_visibility): Likewise.
7906
79072010-02-19  Jakub Jelinek  <jakub@redhat.com>
7908
7909	PR bootstrap/43121
7910	* except.c (sjlj_emit_function_enter): Don't call
7911	add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
7912	directly.
7913	* rtl.h (add_reg_br_prob_note): Remove prototype.
7914
79152010-02-19  Manuel López-Ibáñez  <manu@gcc.gnu.org>
7916
7917	PR 41779
7918	* c-common.c (conversion_warning): Remove widening conversions
7919	before checking the conversion of integers to reals.
7920
79212010-02-19  Mike Stump  <mikestump@comcast.net>
7922
7923	PR middle-end/43125
7924	* c-decl.c (merge_decls): Merge DECL_PRESERVE_P.
7925
7926	PR objc/43061
7927	* cgraphunit.c (process_function_and_variable_attributes): Check
7928	DECL_PRESERVE_P instead of looking up attribute "used".
7929	* ipa-pure-const.c (check_decl): Likewise.
7930	* ipa-reference.c (has_proper_scope_for_analysis): Likewise.
7931	* ipa-type-escape.c (has_proper_scope_for_analysis): Likewise.
7932	* config/sol2.c (solaris_insert_attributes): Set DECL_PRESERVE_P
7933	instead of attribute "used".
7934	* config/sol2-c.c (solaris_pragma_init): Likewise.
7935	(solaris_pragma_fini): Likewise.
7936
79372010-02-19  Jakub Jelinek  <jakub@redhat.com>
7938
7939	* ipa-struct-reorg.c (make_field_acc_node, gen_cluster, peel_field):
7940	Use XCNEW instead of xcalloc.
7941	(add_access_to_acc_sites, create_new_var_node, add_alloc_site): Use
7942	XNEW instead of xmalloc.
7943	(get_fields): Use XNEWVEC instead of xmalloc.
7944
7945	PR debug/43084
7946	* ipa-struct-reorg.c (add_access_to_acc_sites): For debug stmts don't
7947	populate vars array.
7948	(create_new_general_access): For debug stmts just reset value.
7949	(get_stmt_accesses): For accesses within debug stmts just record them
7950	using add_access_to_acc_sites instead of preventing the peeling or
7951	counting them as accesses.
7952
7953	PR middle-end/42233
7954	* dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
7955
79562010-02-19  Richard Guenther  <rguenther@suse.de>
7957
7958	PR tree-optimization/42916
7959	* tree-vect-slp.c (vect_slp_analyze_bb): Count only real
7960	instructions.
7961
79622010-02-19  Andreas Schwab  <schwab@linux-m68k.org>
7963
7964	* configure.ac: Replace all uses of changequote in macro arguments
7965	with proper quoting.
7966
79672010-02-19  Jakub Jelinek  <jakub@redhat.com>
7968
7969	PR middle-end/42233
7970	* loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
7971
79722010-02-19  Richard Guenther  <rguenther@suse.de>
7973
7974	PR tree-optimization/42944
7975	* tree-ssa-alias.c (call_may_clobber_ref_p_1): Massage
7976	test for aliasing with errno.
7977
79782010-02-19  Jakub Jelinek  <jakub@redhat.com>
7979
7980	PR middle-end/42233
7981	* expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
7982	do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
7983	* dojump.c: Include output.h.
7984	(inv): New inline function.
7985	(jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
7986	do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
7987	do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
7988	do_jump_by_parts_equality, do_compare_and_jump): Add PROB
7989	argument, pass it down to other calls.
7990	(do_compare_rtx_and_jump): Likewise.  If PROB is not -1,
7991	add REG_BR_PROB note to the conditional jump.
7992	* cfgexpand.c (add_reg_br_prob_note): Removed.
7993	(expand_gimple_cond): Don't call it, add the probability
7994	as last argument to jumpif_1/jumpifnot_1.
7995	* Makefile.in (dojump.o): Depend on output.h.
7996	* builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
7997	callers.
7998	* expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
7999	* stmt.c (do_jump_if_equal): Likewise.
8000	* cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
8001	* loop-unswitch.c (compare_and_jump_seq): Likewise.
8002	* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
8003	Likewise.
8004	* optabs.c (expand_doubleword_shift, expand_abs): Likewise.
8005	* expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
8006	jumpifnot_1 callers.
8007	(expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
8008	callers.
8009	(store_expr): Adjust jumpifnot caller.
8010	(store_constructor): Adjust jumpif caller.
8011
8012	PR middle-end/42233
8013	* gimplify.c (gimple_boolify): For __builtin_expect call
8014	gimple_boolify also on its first argument.
8015
80162010-02-18  Uros Bizjak  <ubizjak@gmail.com>
8017
8018	* configure.ac (gnu-unique-object): Wrap regexps using [] in
8019	changequote block.
8020	(__stack_chk_fail): Ditto.  Remove quadrigraphs.
8021	* configure: Regenerated.
8022
80232010-02-18  Ulrich Weigand  <Ulrich.Weigand@de.ibm.com>
8024
8025	* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
8026	lang_hooks.types_compatible_p instead of comptypes.
8027
80282010-02-18  Sebastian Huber  <sebastian.huber@embedded-brains.de>
8029
8030	* config/arm/lib1funcs.asm (__prefer_thumb__): New define.
8031	(udivsi3, aeabi_uidivmod, divsi3, aeabi_idivmod): Use Thumb-1 variant
8032	if __prefer_thumb__ is defined.
8033
80342010-02-18  Martin Jambor  <mjambor@suse.cz>
8035
8036	PR tree-optimization/43066
8037	* tree-sra.c (build_ref_for_offset_1): Return false on encountering an
8038	array with zero-sized element type.
8039
80402010-02-18  Jakub Jelinek  <jakub@redhat.com>
8041
8042	* dwarf2out.c (add_var_loc_to_decl): Change last argument to
8043	rtx, allocate struct var_loc_node here and return it to the
8044	caller, and only if it is actually needed.
8045	(dwarf2out_var_location): Adjust add_var_loc_to_decl caller,
8046	move it earlier and return immediately if it returns NULL.
8047
80482010-02-17  Mikael Pettersson  <mikpe@it.uu.se>
8049
8050	* config/sparc/gas.h: New file.  Restore
8051	TARGET_ASM_NAMED_SECTION to its ELF default.
8052	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
8053	check !HAVE_GNU_AS.
8054	* config/sparc/sparc.c (sparc_elf_asm_named_section):
8055	Likewise.  Add ATTRIBUTE_UNUSED to prototype.
8056	* config.gcc (sparc*-*-linux*): Include sparc/gas.h
8057	after sparc/sysv4.h.
8058
80592010-02-17  Dave Korn  <dave.korn.cygwin@gmail.com>
8060
8061	* config/i386/mingw32.h (LIBGCJ_SONAME): Fix cut'n'pasto in DLL name.
8062
80632010-02-17  Steven Bosscher  <steven@gcc.gnu.org>
8064
8065	* gensupport.c (process_one_cond_exec): Derive name for COND_EXEC
8066	patterns from predicated pattern.
8067
80682010-02-17  Uros Bizjak  <ubizjak@gmail.com>
8069
8070	PR target/43103
8071	* config/i386/sse.md (xop_vpermil2<mode>3): Use avxmodesuffixf2c
8072	for insn mnemonic suffix.
8073
80742010-02-17  Richard Guenther  <rguenther@suse.de>
8075
8076	* tree-vrp.c (vrp_visit_phi_node): Restrict SCEV analysis
8077	to loop PHI nodes.
8078
80792010-02-17  Jakub Jelinek  <jakub@redhat.com>
8080
8081	PR debug/42918
8082	* caller-save.c (save_call_clobbered_regs): If BB ends with
8083	a DEBUG_INSN, move any notes in between last real insn and the last
8084	DEBUG_INSN after the last DEBUG_INSN.
8085
80862010-02-16  Joern Rennecke  <joern.rennecke@embecosm.com>
8087
8088	* tm.texi (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD_SPEC):
8089	Fix return type.  Fix argument type.  Explain meaning of return value.
8090
80912010-02-16  Richard Guenther  <rguenther@suse.de>
8092
8093	PR tree-optimization/41043
8094	* tree-vrp.c  (vrp_var_may_overflow): Only ask SCEV for real loops.
8095	(vrp_visit_assignment_or_call): Do not ask SCEV for regular
8096	statements ...
8097	(vrp_visit_phi_node): ... but only for loop PHI nodes.
8098
80992010-02-16  Ira Rosen  <irar@il.ibm.com>
8100
8101	PR tree-optimization/43074
8102	* tree-vectorizer.h (VECTORIZABLE_CYCLE_DEF): New.
8103	* tree-vect-loop.c (vect_analyze_loop_operations): Add
8104	vectorizable cycles in hybrid SLP check.
8105	* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Likewise.
8106
81072010-02-16  Richard Guenther  <rguenther@suse.de>
8108
8109	* alias.c (memrefs_conflict_p): Distinguish must-alias from don't know.
8110	(true_dependence): If memrefs_conflict_p computes must-alias
8111	trust it.  Move TBAA check after offset-based disambiguation.
8112	(canon_true_dependence): Likewise.
8113
81142010-02-16  Alexandre Oliva  <aoliva@redhat.com>
8115
8116	* params.def (PARAM_MAX_VARTRACK_SIZE): New.
8117	* doc/invoke.texi: Document it.
8118	* var-tracking.c: Include toplev.h and params.h.
8119	(vt_find_locations): Return bool indicating success.  Compute
8120	hash sizes unconditionally.  Check new parameter, report.
8121	(variable_tracking_main_1): Check vt_find_locations results and
8122	retry.  Renamed from...
8123	(variable_tracking_main): ... this.  New wrapper to preserve
8124	flag_var_tracking_assignments.
8125	* Makefile.in (var-tracking.o): Adjust dependencies.
8126
81272010-02-16  Jack Howarth  <howarth@bromo.med.uc.edu>
8128	    Jakub Jelinek  <jakub@redhat.com>
8129
8130	PR target/42854
8131	* config/darwin.h (ASM_WEAKEN_DECL): Don't check weak attribute
8132	if weak_import attribute is present.
8133	* config/darwin.c (machopic_select_section): Likewise.
8134
81352010-02-15  Joern Rennecke  <joern.rennecke@embecosm.com>
8136
8137	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST): Document.
8138	(TARGET_VECTORIZE_VECTOR_ALIGNMENT_REACHABLE): Likewise.
8139	(TARGET_VECTORIZE_BUILTIN_VEC_PERM): Likewise.
8140	(TARGET_VECTORIZE_BUILTIN_VEC_PERM_OK): Likewise.
8141
8142	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_CONVERSION): Fix argument types.
8143
8144	* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
8145	Fix argument types.
8146
8147	* doc/tm.texi (TARGET_SCHED_DFA_NEW_CYCLE): Add argument names.
8148	Rewrite text to refer to the names.
8149
81502010-02-15  Sebastian Pop  <sebastian.pop@amd.com>
8151
8152	* config/i386/i386-builtin-types.def
8153	(V2DF_FTYPE_V2DF_V2DF_V2DI_INT): Declared.
8154	(V4DF_FTYPE_V4DF_V4DF_V4DI_INT): Declared.
8155	(V4SF_FTYPE_V4SF_V4SF_V4SI_INT): Declared.
8156	(V8SF_FTYPE_V8SF_V8SF_V8SI_INT): Declared.
8157	* config/i386/i386.c (enum ix86_builtins): Add IX86_BUILTIN_VPERMIL2PD,
8158	IX86_BUILTIN_VPERMIL2PS, IX86_BUILTIN_VPERMIL2PD256, and
8159	IX86_BUILTIN_VPERMIL2PS256.
8160	(MULTI_ARG_4_DF2_DI_I): Defined.
8161	(MULTI_ARG_4_DF2_DI_I1): Defined.
8162	(MULTI_ARG_4_SF2_SI_I): Defined.
8163	(MULTI_ARG_4_SF2_SI_I1): Defined.
8164	(bdesc_multi_arg): Add __builtin_ia32_vpermil2pd,
8165	__builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256, and
8166	__builtin_ia32_vpermil2ps256.
8167	(ix86_expand_multi_arg_builtin): Handle MULTI_ARG_4_DF2_DI_I,
8168	MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
8169	MULTI_ARG_4_SF2_SI_I1.  Handle builtins with 4 arguments.
8170	(ix86_expand_args_builtin): Handle MULTI_ARG_4_DF2_DI_I,
8171	MULTI_ARG_4_DF2_DI_I1, MULTI_ARG_4_SF2_SI_I, and
8172	MULTI_ARG_4_SF2_SI_I1.  Handle CODE_FOR_xop_vpermil2v2df3,
8173	CODE_FOR_xop_vpermil2v4sf3, CODE_FOR_xop_vpermil2v4df3, and
8174	CODE_FOR_xop_vpermil2v8sf3.
8175	* config/i386/i386.md (UNSPEC_VPERMIL2): Declared.
8176	* config/i386/sse.md (xop_vpermil2<mode>3): New insn pattern.
8177	* config/i386/xopintrin.h (_mm_permute2_pd): New.
8178	(_mm256_permute2_pd): New.
8179	(_mm_permute2_ps): New.
8180	(_mm256_permute2_ps): New.
8181
81822010-02-15  Nick Clifton  <nickc@redhat.com>
8183
8184	* config/h8300/h8300.c: (h8300_push_pop): Use bool type for
8185	boolean parameters.  Use emit_jump_insn when emitting a pop
8186	instruction containing a return insn.
8187	(push): Use 'true' rather than '1' as second parameter to F.
8188	(h8300_expand_prologue): Likewise.
8189	Use 'true' and 'false' for boolean parameters to h8300_push_pop.
8190	(h8300_expand_epilogue): Likewise.
8191
81922010-02-15  Richard Guenther  <rguenther@suse.de>
8193
8194	PR middle-end/43068
8195	* cgraphunit.c (thunk_adjust): Skip adjusting by fixed_offset
8196	if that is zero.
8197
81982010-02-15  Nick Clifton  <nickc@redhat.com>
8199
8200	* config/mn10300/mn10300.h (FUNCTION_ARG_REGNO_P): Revert previous
8201	delta.
8202
82032010-02-14  Marco Poletti  <poletti.marco@gmail.com>
8204
8205	* intl.c (fake_ngettext): New function.
8206	* intl.h (fake_ngettext): Declare.
8207	(ngettext): Define macro.
8208	* collect2.c (notice_translated): New function.
8209	(main): Use notice_translated and ngettext.
8210	* collect2.h (notice_translated): Declare.
8211
82122010-02-14  Steven Bosscher  <steven@gcc.gnu.org>
8213
8214	* reorg.c (delete_computation): Comment fixes.
8215	* caller-save.c (setup_save_areas): Idem.
8216	* sel-sched-dump.c (dump_lv_set): Idem.
8217	* rtl.def: Idem.
8218
82192010-02-14  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
8220
8221	* config/s390/s390.c (s390_sched_init): New function.
8222	(TARGET_SCHED_INIT): Target hook defined.
8223
82242010-02-12  Dave Korn  <dave.korn.cygwin@gmail.com>
8225	    Jack Howarth  <howarth@bromo.med.uc.edu>
8226	    Iain Sandoe  <iain.sandoe@sandoe-acoustics.co.uk>
8227
8228	PR target/42982
8229	Partial revert of unintended change in fix for PR41605.
8230	* config/darwin.h: Fix typo.
8231	* config/darwin9.h: Same.
8232
82332010-02-11  Jakub Jelinek  <jakub@redhat.com>
8234
8235	* c-pch.c (pch_init): Clear v.
8236
82372010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
8238
8239	PR middle-end/42930
8240	* graphite-scop-detection.c (graphite_can_represent_scev): Call
8241	graphite_can_represent_init for MULT_EXPR.
8242
82432010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
8244
8245	PR middle-end/42914
8246	PR middle-end/42530
8247	* graphite-sese-to-poly.c (remove_phi): New.
8248	(translate_scalar_reduction_to_array): Call remove_phi.
8249
82502010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
8251
8252	PR middle-end/42771
8253	* graphite-clast-to-gimple.c (gloog): Call rename_sese_parameters.
8254	* graphite-clast-to-gimple.h (gloog): Update declaration.
8255	* graphite-poly.c (new_scop): Clear POLY_SCOP_P.
8256	* graphite-poly.h (struct poly_bb): Add missing comments.
8257	(struct scop): Add poly_scop_p field.
8258	(POLY_SCOP_P): New.
8259	* graphite-sese-to-poly.c (build_poly_scop): Set POLY_SCOP_P.
8260	* graphite.c (graphite_transform_loops): Build the polyhedral
8261	representation for each scop before code generation.
8262	* sese.c (rename_variables_in_operand): Removed.
8263	(rename_variables_in_expr): Return the renamed expression.
8264	(rename_sese_parameters): New.
8265	* sese.h (rename_sese_parameters): Declared.
8266
82672010-02-11  Richard Guenther  <rguenther@suse.de>
8268
8269	PR tree-optimization/42998
8270	* tree-ssa-pre.c (create_expression_by_pieces): Treat
8271	POINTER_PLUS_EXPR properly.
8272
82732010-02-11  Sebastian Pop  <sebastian.pop@amd.com>
8274	    Changpeng Fang  <changpeng.fang@amd.com>
8275
8276	PR middle-end/40886
8277	* tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Decrement
8278	the cost of an IV candidate when the IV is used in a test against zero.
8279
8280	* gcc.dg/tree-ssa/ivopts-3.c: New.
8281
82822010-02-11  Richard Guenther  <rguenther@suse.de>
8283
8284	PR lto/41664
8285	* tree-ssa-alias.c (refs_may_alias_p_1): Canonicalize
8286	pointer-vs-decl case by swapping refs.  Handle some cases
8287	of pointer-vs-decl disambiguations more conservatively.
8288	* cfgexpand.c (gimple_expand_cfg): Set gimple_df->in_ssa_p
8289	to false after expanding.
8290
82912010-02-11  Richard Guenther  <rguenther@suse.de>
8292
8293	PR driver/43021
8294	* gcc.c (process_command): Handle LTO file@offset case more
8295	appropriately.
8296
82972010-02-11  Jakub Jelinek  <jakub@redhat.com>
8298
8299	* reload1.c (eliminate_regs_1): If insn is DEBUG_INSN, avoid any
8300	modifications outside of the DEBUG_INSN.  Accept CLOBBERs inside
8301	of DEBUG_INSNs.
8302	(eliminate_regs_in_insn): Eliminate regs even in DEBUG_INSNs.
8303
8304	* dwarf2out.c (mem_loc_descriptor) <case MEM>: Use DW_OP_deref_size
8305	if MEM's mode size isn't DWARF2_ADDR_SIZE.
8306	(mem_loc_descriptor) <do_scompare>: Allow also VOIDmode arguments.
8307	Optimize eq/ne comparisons when both arguments are known to be
8308	zero-extended.
8309	(mem_loc_descriptor) <do_ucompare>: Allow also VOIDmode arguments.
8310	Don't mask operands unnecessarily if they are known to be already
8311	zero-extended.
8312
83132010-02-10  Vladimir Makarov  <vmakarov@redhat.com>
8314
8315	* ira-conflicts.c (add_insn_allocno_copies): Use find_reg_note
8316	instead of loop.
8317
83182010-02-10  Richard Guenther  <rguenther@suse.de>
8319
8320	PR tree-optimization/43017
8321	* tree-vrp.c (vrp_int_const_binop): Trust int_const_binop
8322	for wrapping signed arithmetic.
8323
83242010-02-10  Jakub Jelinek  <jakub@redhat.com>
8325
8326	PR debug/43010
8327	* dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
8328	if no debug info should be emitted for it.
8329
83302010-02-10  Kaz Kojima  <kkojima@gcc.gnu.org>
8331
8332	* config/sh/sh.c (find_barrier): Skip call insn with a REG_EH_REGION
8333	note when flag_exceptions is set.
8334
83352010-02-10  Duncan Sands  <baldrick@free.fr>
8336
8337	* Makefile.in (PLUGIN_HEADERS): Add debug.h.
8338
83392010-02-10  Richard Guenther  <rguenther@suse.de>
8340
8341	PR c/43007
8342	* tree.c (get_unwidened): Handle constants.
8343	* convert.c (convert_to_integer): Handle TRUNC_DIV_EXPR.
8344
83452010-02-10  Martin Jambor  <mjambor@suse.cz>
8346
8347	PR lto/42985
8348	* ipa-prop.c (ipa_update_after_lto_read): Count parameters and
8349	check for variable argument counts independently.
8350
83512010-02-10  Christian Bruel  <christian.bruel@st.com>
8352
8353	PR target/42841
8354	* config/sh/sh.c (find_barrier): Increase length for non delayed
8355	conditional branches.
8356
83572010-02-10  Christian Bruel  <christian.bruel@st.com>
8358
8359	* config/sh/sh.c (find_barrier): Don't emit a CP inside the GP setting.
8360
83612010-02-10  Jakub Jelinek  <jakub@redhat.com>
8362
8363	* builtins.c (set_builtin_user_assembler_name): Also handle
8364	ffs if int is smaller than word.
8365
83662010-02-09  Vladimir Makarov  <vmakarov@redhat.com>
8367
8368	PR middle-end/42973
8369	* ira-conflicts.c (get_dup): Remove.
8370	(process_reg_shuffles): Add new parameter.  Use it as an
8371	additional guard for copy generation.
8372	(add_insn_allocno_copies): Rewrite.
8373
83742010-02-09  Alexander Monakov  <amonakov@ispras.ru>
8375
8376	* common.opt (fsched2-use-traces): Preserved for backward
8377	compatibility.
8378	* doc/invoke.texi: Remove the documentation about option
8379	-fsched2-use-traces.
8380	* sched-rgn.c (rest_of_handle_sched2): Remove usage of
8381	flag_sched2_use_traces.
8382	* opts.c (common_handle_option): Add OPT_fsched2_use_traces to
8383	the backward compatibility flag section.
8384
83852010-02-09  Richard Guenther  <rguenther@suse.de>
8386
8387	PR tree-optimization/43008
8388	* tree-ssa-structalias.c (handle_lhs_call): Pass in the fndecl,
8389	make HEAP variables initialized from global memory if they
8390	are not known builtin functions.
8391	(find_func_aliases): Adjust.
8392
83932010-02-09  Richard Guenther  <rguenther@suse.de>
8394
8395	PR tree-optimization/43000
8396	* tree-vrp.c (vrp_int_const_binop): Only handle unsigned
8397	arithmetic manually.
8398
83992010-02-08  Jakub Jelinek  <jakub@redhat.com>
8400
8401	PR tree-optimization/42931
8402	* tree-loop-linear.c (try_interchange_loops): Don't call
8403	double_int_mul if estimated_loop_iterations failed.
8404
84052010-02-08  Martin Jambor  <mjambor@suse.cz>
8406
8407	PR middle-end/42898
8408	* tree-sra.c (build_accesses_from_assign): Do not mark in
8409	should_scalarize_away_bitmap if stmt has volatile ops.
8410	(sra_modify_assign): Do not process assigns piecemeal if if stmt
8411	has volatile ops.
8412
84132010-02-08  Joern Rennecke  <joern.rennecke@embecosm.com>
8414
8415	* doc/tm.texi (TARGET_UNWIND_WORD_MODE): Document.
8416
84172010-02-07  Adam Nemet  <adambnmet@gmail.com>
8418
8419	* config/mips/mips.md (*<optab>_trunc<mode>_exts): Fix comment
8420	before the pattern.
8421
84222010-02-07  Andrew Pinski  <pinskia@gmail.com>
8423
8424	PR middle-end/42946
8425	* df-core.c (df_finish_pass): Change type of saved_flags to int.
8426
84272010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
8428
8429	PR middle-end/42988
8430	* graphite-dependences.c (dependence_polyhedron): Set PDDR_KIND
8431	to unknown_dependence.
8432	(graphite_legal_transform_dr): Handle the unknown_dependence.
8433	(graphite_carried_dependence_level_k): Same.
8434
84352010-02-07  Sebastian Pop  <sebastian.pop@amd.com>
8436
8437	* ChangeLog.graphite: Remove testsuite/ or gcc/testsuite/.
8438
84392010-02-07  Richard Guenther  <rguenther@suse.de>
8440
8441	PR middle-end/42991
8442	* expr.c (get_inner_reference): Always initialize *pbitsize.
8443
84442010-02-07  Richard Guenther  <rguenther@suse.de>
8445
8446	PR middle-end/42956
8447	* gimplify.c (gimple_fold_indirect_ref): Avoid generating
8448	new ARRAY_REFs on variable size element or minimal index arrays.
8449	Complete.
8450	* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
8451	gimple_fold_indirect_ref.
8452
84532010-02-06  Richard Earnshaw  <rearnsha@arm.com>
8454
8455	PR target/42957
8456	* arm.c (arm_override_options): Just return if the user has specified
8457	an invalid fpu name.
8458
84592010-02-03  Jason Merrill  <jason@redhat.com>
8460
8461	PR c++/42870
8462	* config/i386/cygming.h (ASM_OUTPUT_DEF_FROM_DECLS): Call
8463	i386_pe_maybe_record_exported_symbol.
8464
84652010-02-05  Steve Ellcey  <sje@cup.hp.com>
8466
8467	PR target/42924
8468	* config/pa/pa.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
8469	(pa_delegitimize_address): New function.
8470
84712010-02-05  Ozkan Sezer  <sezeroz@gmail.com>
8472
8473	* config/i386/msformat-c.c (ms_printf_length_specs): Set the
8474	scalar_identity_flag for the size_t/ptrdiff_t %Id and %Iu specs.
8475
84762010-02-05  Richard Guenther  <rguenther@suse.de>
8477
8478	PR lto/42762
8479	* lto-streamer-in.c (get_resolution): Deal with references
8480	to undefined functions.
8481
84822010-02-05  Richard Guenther  <rguenther@suse.de>
8483
8484	* tree-ssa-ccp.c (get_symbol_constant_value): Strip all conversions.
8485	(fold_const_aggregate_ref): Likewise.
8486	(ccp_fold_stmt): Substitute loads.
8487	(maybe_fold_reference): Verify types before substituting.
8488	Unshare properly.
8489	(fold_gimple_assign): Unshare properly.
8490	(fold_stmt_1): Insert conversion if necessary before replacing the RHS.
8491
84922010-02-05  Nathan Froyd  <froydnj@codesourcery.com>
8493
8494	* config/rs6000/rs6000.c (rs6000_override_options): Invert check
8495	for rs6000_gen_cell_microcode.
8496
84972010-02-04  Richard Guenther  <rguenther@suse.de>
8498
8499	PR rtl-optimization/42952
8500	* dse.c (const_or_frame_p): Remove MEM handling.
8501
85022010-02-04  Nick Clifton  <nickc@redhat.com>
8503
8504	* config/mn10300/mn10300.c (TARGET_ASM_OUTPUT_MI_THUNK): Define.
8505	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Define.
8506	(function_arg): Use NULL_RTX and FIRST_ARGUMENT_REGNUM.
8507	(mn10300_asm_output_mi_thunk): New function.
8508	(mn10300_can_output_mu_thunk): New function.
8509	* config/mn10300/mn10300.h (FIRST_ARGUMENT_REGNUM): Define.
8510	(FUNCTION_ARG_REGNO_P): Fix comment.  Accept d0 and d1.
8511	(FUNCTION_ARG): Delete incorrect comment.
8512
85132010-02-03  Jason Merrill  <jason@redhat.com>
8514
8515	PR c++/40138
8516	* fold-const.c (operand_equal_p): Handle erroneous types.
8517
85182010-02-03  Kaushik Phatak  <kaushik.phatak@kpitcummins.com>
8519
8520	* config/h8300/h8300.md (can_delay): Fix attibute condition.
8521
85222010-02-03  Vladimir Makarov  <vmakarov@redhat.com>
8523
8524	PR rtl-optimization/42941
8525	* sched-deps.c (setup_insn_reg_pressure_info): Use xcalloc instead
8526	of xmalloc.
8527
85282010-02-03  Jason Merrill  <jason@redhat.com>
8529
8530	PR c++/35652
8531	* builtins.c (c_strlen): Use EXPR_LOCATION in diagnostics.
8532
85332010-02-03  Alexandre Oliva  <aoliva@redhat.com>
8534
8535	PR debug/42896
8536	* cselib.h (struct cselib_val_struct): Add uid.  Rename value to hash.
8537	(cselib_reset_table): Renamed from...
8538	(cselib_reset_table_with_next_value): ... this.
8539	(cselib_get_next_uid): Renamed from...
8540	(cselib_get_next_unknown_value): ... this.
8541	* cselib.c (next_uid): Renamed from...
8542	(next_unknown_value): ... this.
8543	(cselib_clear_table): Adjust.
8544	(cselib_reset_table): Adjust.  Renamed from...
8545	(cselib_reset_table_with_next_value): ... this.
8546	(cselib_get_next_uid): Adjust.  Renamed from...
8547	(cselib_get_next_unknown_value): ... this.
8548	(get_value_hash): Use hash.
8549	(cselib_hash_rtx): Likewise.
8550	(new_cselib_val): Adjust.  Set and dump uid.
8551	(cselib_lookup_mem): Pass next_uid as hash.
8552	(cselib_subst_to_values): Likewise.
8553	(cselib_log_lookup): Dump uid.
8554	(cselib_lookup): Pass next_uid as hash.  Adjust.
8555	(cselib_process_insn): Adjust.
8556	(cselib_init): Initialize next_uid.
8557	(cselib_finish): Adjust.
8558	(dump_cselib_table): Likewise.
8559	* dse.c (canon_address): Dump value uid.
8560	* print-rtl.c (print_rtx): Print value uid.
8561	* var-tracking.c (VARIABLE_HASH_VAL): Dropped.
8562	(dvuid): New type.
8563	(dv_uid): New function, sort of renamed from...
8564	(dv_htab_hash): ... this, reimplemented in terms of it and...
8565	(dv_uid2hash): ... this.  New.
8566	(variable_htab_eq): Drop excess assertions.
8567	(tie_break_pointers): Removed.
8568	(canon_value_cmp): Compare uids.
8569	(variable_post_merge_New_vals): Print uids.
8570	(vt_add_function_parameters): Adjust.
8571	(vt_initialize): Reset table.  Adjust.
8572
85732010-02-03  Richard Guenther  <rguenther@suse.de>
8574
8575	PR tree-optimization/42944
8576	* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Handle calloc.
8577	(call_may_clobber_ref_p_1): Likewise.  Properly handle
8578	malloc and calloc clobbering errno.
8579
85802010-02-03  Steven Bosscher  <steven@gcc.gnu.org>
8581
8582	* doc/invoke.texi: Fix name of sched1 dump.
8583
8584	* opts.c (decode_options): Set flag_tree_switch_conversion
8585	only conditionally on optimize >= 2.
8586
8587	* gcse.c: Assorted comment fixes in pass description.
8588
85892010-02-03  Anthony Green  <green@moxielogic.com>
8590
8591	* config/moxie/moxie.c (moxie_asm_trampoline_template): Introduce
8592	nop padding in order to maintain alignment of storage location of
8593	target function address.
8594	(moxie_trampoline_init): Store target function address at newly
8595	aligned location.
8596	* config/moxie/moxie.h (TRAMPOLINE_ALIGNMENT): Increase alignment
8597	to 32.
8598	(TRAMPOLINE_SIZE): Increase size by 2 bytes for alignment padding.
8599
86002010-02-03  Richard Guenther  <rguenther@suse.de>
8601
8602	PR middle-end/42927
8603	* tree-cfg.c (verify_gimple_assign_binary): Fix shift verification.
8604
86052010-02-03  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8606
8607	* config.gcc: Reenable check for obsolete targets.
8608	Obsolete alpha*-dec-osf4*, alpha*-dec-osf5.0*, mips-sgi-irix5*,
8609	mips-sgi-irix6.[0-4]*.
8610
86112010-02-02  Nick Clifton  <nickc@redhat.com>
8612
8613	* config/rx/rx.c (rx_is_legitimate_constant): Treat a maximum
8614	constant size of 4 as being the same as 0.
8615	* doc/invoke.texi (RX Options): Document that -mmax-constant-size
8616	can take values in the range 0..4.
8617
86182010-02-02  Jack Howarth  <howarth@bromo.med.uc.edu>
8619
8620	PR java/41991
8621	* unwind-dw2-fde-darwin.c: Re-export _Unwind_FindEnclosingFunction()
8622	as _darwin10_Unwind_FindEnclosingFunction().
8623	* libgcc-libsystem.ver: New.
8624
86252010-02-01  Vladimir Makarov  <vmakarov@redhat.com>
8626
8627	PR target/41399
8628	* sched-deps.c (sched_analyze_insn): Ignore fixed registers for
8629	implicitly set registers.
8630
86312010-02-01  Richard Earnshaw  <rearnsha@arm.com>
8632
8633	* arm.c (FL_FOR_ARCH_7A): is also a superset of ARMv6K.
8634	(arm_override_options): Allow automatic selection of the thread
8635	pointer register if thumb2.
8636	(legitimize_pic_address): Improve code sequences for Thumb2.
8637	(arm_call_tls_get_addr): Likewise.
8638	(legitimize_tls_address): Likewise.
8639	* arm.md (pic_load_addr_arm): Delete.  Replace with ...
8640	(pic_load_addr_32bit): ... this.  New named pattern.
8641	* thumb2.md (pic_load_addr_thumb2): Delete.
8642	(pic_load_dot_plus_four): Delete.
8643	(tls_load_dot_plus_four): New named pattern.
8644
86452010-02-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8646
8647	PR libgomp/29986
8648	* doc/install.texi (Specific): Add sparc-sun-solaris2.10 entry.
8649	Document fix for TLS bug.
8650
86512010-01-31  Richard Guenther  <rguenther@suse.de>
8652
8653	* tree-sra.c (ptr_parm_has_direct_uses): Rewrite to be
8654	conservatively correct.
8655
86562010-01-31  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
8657
8658	PR target/42850
8659	Revert:
8660	2010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
8661
8662	* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
8663
86642010-01-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
8665
8666	* doc/install.texi: Update recommended GMP/MPFR/MPC versions.
8667
86682010-01-31  Kai Tietz  <kai.tietz@onevision.com>
8669
8670	* config.gcc: Adjust order of makefile fragments for mingw targets.
8671
86722010-01-31  Richard Guenther  <rguenther@suse.de>
8673
8674	PR middle-end/42898
8675	* gimplify.c (gimplify_init_constructor): For volatile LHS
8676	initialize a temporary.
8677
86782010-01-31  Matthias Klose  <doko@ubuntu.com>
8679
8680	* configure.ac: Fix __stack_chk_fail check for cross builds configured
8681	--with-headers
8682	* configure: Regenerate.
8683
86842010-01-29  Eric Botcazou  <ebotcazou@adacore.com>
8685
8686	* tree-ssa-alias.c (same_type_for_tbaa): Return -1 if the types have
8687	the same alias set and their sizes different constantness.
8688	(aliasing_component_refs_p): Revert 2009-10-24 change.
8689
86902010-01-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8691
8692	* config/sparc/sparc.c (sparc_elf_asm_named_section): Declare decl
8693	unused.
8694
86952010-01-29  Richard Guenther  <rguenther@suse.de>
8696
8697	* tree-ssa-ccp.c (ccp_fold_stmt): Unshare values we substitute.
8698	Assert we successfully updated the call.
8699
87002010-01-29  Jakub Jelinek  <jakub@redhat.com>
8701
8702	PR rtl-optimization/42889
8703	* df.h (df_set_bb_dirty_nonlr): New prototype.
8704	* df-core.c (df_set_bb_dirty_nonlr): New function.
8705	* df-scan.c (df_insn_rescan): Call it instead of
8706	df_set_bb_dirty for DEBUG_INSNs.
8707
87082010-01-29  Richard Guenther  <rguenther@suse.de>
8709
8710	PR middle-end/37448
8711	* ipa-inline.c (cgraph_decide_inlining_incrementally): Avoid
8712	quadratic behavior in most cases.
8713
87142010-01-28  Uros Bizjak  <ubizjak@gmail.com>
8715
8716	PR target/42891
8717	* config/i386/i386.c (ix86_expand_int_movcc): Convert tmp to SImode
8718	in the call to gen_x86_movsicc_0_m1.
8719
87202010-01-28  Richard Guenther  <rguenther@suse.de>
8721
8722	PR tree-optimization/42871
8723	* tree-ssa-pre.c (phi_translate_set): Make sure to retain leaders.
8724
87252010-01-28  Richard Guenther  <rguenther@suse.de>
8726
8727	* tree-ssa-ccp.c (ccp_fold_stmt): Fold calls and propagate
8728	into call arguments.
8729
87302010-01-28  Richard Guenther  <rguenther@suse.de>
8731
8732	PR middle-end/42883
8733	* tree-cfgcleanup.c (remove_forwarder_block): Do not remove
8734	the forwarder if the destination is an EH landing pad.
8735
87362010-01-28  Razya Ladelsky  <razya@il.ibm.com>
8737
8738	* tree-parloops.c (transform_to_exit_first_loop): Update the basic
8739	block list passed to gimple_duplicate_sese_tail.
8740	(parallelize_loops): Avoid parallelization when the function
8741	has_nonlocal_label.
8742	Avoid parallelization when the preheader is IRREDUCIBLE.
8743	Try to optimize when estimated_loop_iterations_int is unresolved.
8744	Add the loop's location to the dump file.
8745	* tree-cfg.c (add_phi_args_after_redirect): Remove.
8746	(gimple_duplicate_sese_tail): Remove the check for the latch.
8747	Redirect nexits to the exit block.
8748	Remove handling of the incoming edges to the latch.
8749	Redirect the backedge from the copied latch to the exit bb.
8750
87512010-01-28  Michael Matz  <matz@suse.de>
8752
8753	PR target/42881
8754	* config/i386/i386.c (ix86_expand_vector_init_duplicate):
8755	Wrap force_reg into a sequence, emit it before user.
8756
87572010-01-28  Stephen Thomas  <stephen.thomas@arm.com>
8758
8759	* config/arm/arm.md (bswapsi2): Add support for bswapsi2.
8760	(arm_rev): New.
8761	(arm_legacy_rev): Likewise.
8762	(thumb_legacy_rev): Likewise.
8763
87642010-01-27  Jakub Jelinek  <jakub@redhat.com>
8765
8766	* dwarf2out.c (mem_loc_descriptor): Remove special casing of
8767	CONSTANT_POOL_ADDRESS_P SYMBOL_REFs.  If for MEM recursive call
8768	on MEM's address failed, try avoid_constant_pool_reference and
8769	recurse if it returned something different.
8770	(loc_descriptor): If for MEM mem_loc_descriptor failed on the
8771	address, try avoid_constant_pool_reference and recurse if it
8772	returned something different.
8773	(dw_loc_list_1): If for MEM mem_loc_descriptor failed on the
8774	address and avoid_constant_pool_reference returned something
8775	different, don't set have_address.
8776
87772010-01-27  Alexandre Oliva  <aoliva@redhat.com>
8778
8779	PR debug/42861
8780	* var-tracking.c (val_store): Add modified argument, obey it.
8781	Adjust callers.
8782	(count_uses): Move down logging of main.
8783	(compute_bb_dataflow): Use val_store for MO_VAL_USEs that
8784	don't need resolution.
8785	(emit_notes_in_bb): Likewise.
8786
87872010-01-27  Richard Guenther  <rguenther@suse.de>
8788
8789	PR middle-end/42878
8790	* tree-inline.c (remap_decl): Delay remapping of SSA name
8791	default definitions until we need them.
8792
87932010-01-27  Jakub Jelinek  <jakub@redhat.com>
8794
8795	* config/rs6000/rs6000.c (TARGET_DELEGITIMIZE_ADDRESS): Redefine.
8796	(rs6000_delegitimize_address): New function.
8797
8798	* config/s390/s390.c (s390_delegitimize_address): Call
8799	delegitimize_mem_from_attrs.
8800
8801	PR middle-end/42874
8802	* tree-inline.c (cannot_copy_type_1): Removed.
8803	(copy_forbidden): Don't forbid copying of functions containing
8804	records/unions with variable length fields.
8805
88062010-01-27  Christian Bruel  <christian.bruel@st.com>
8807
8808	Revert:
8809	PR target/42841
8810	* config/sh/sh.c (find_barrier): Increase length for non delayed
8811	conditional branches.
8812
88132010-01-27  Matthias Klose  <doko@ubuntu.com>
8814
8815	* configure.ac (gnu-unique-object): Fix ldd version check.
8816	* configure: Regenerate.
8817
88182010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8819
8820	* config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
8821	HAVE_GNU_AS value.
8822	* config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
8823	Test for HAVE_GNU_AS value.
8824
88252010-01-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8826
8827	* config.gcc (mips-sgi-irix[56]*): Set use_gcc_stdint.
8828	* config/mips/iris.h (INT8_TYPE, INT16_TYPE, INT32_TYPE,
8829	INT64_TYPE): Define.
8830	(UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define.
8831	(INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE,
8832	INT_LEAST64_TYPE): Define.
8833	(UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE,
8834	UINT_LEAST64_TYPE): Define.
8835	(INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE)
8836	INT_FAST64_TYPE): Define.
8837	(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE,
8838	UINT_FAST64_TYPE): Define.
8839	(INTMAX_TYPE, UINTMAX_TYPE): Define.
8840	(INTPTR_TYPE, UINTPTR_TYPE): Define.
8841	(SIG_ATOMIC_TYPE): Define.
8842
88432010-01-26  Richard Guenther  <rguenther@suse.de>
8844
8845	* df-scan.c (df_scan_set_bb_info): Remove assert.
8846	(df_insn_rescan_debug_internal): Merge asserts.
8847	(df_install_ref): Likewise.
8848	(df_mark_reg): Use bitmap_set_range.
8849	(df_hard_reg_used_p): Remove assert.
8850	(df_hard_reg_used_count): Likewise.
8851
88522010-01-26  Richard Guenther  <rguenther@suse.de>
8853
8854	PR rtl-optimization/42685
8855	* web.c (web_main): Ignore DEBUG_INSNs.
8856
88572010-01-26  Joern Rennecke  <amylaar@spamcop.net>
8858
8859	* doc/tm.texi (TARGET_HANDLE_C_OPTION): Explain arguments.
8860
8861	(TARGET_RESOLVE_OVERLOADED_BUILTIN): Add loc parameter.
8862	Fix types of fndecl and arglist parameters.
8863
88642010-01-26  Richard Guenther  <rguenther@suse.de>
8865
8866	PR middle-end/42806
8867	* tree-eh.c (unsplit_eh): Skip debug insns.
8868
88692010-01-26  Richard Guenther  <rguenther@suse.de>
8870
8871	PR tree-optimization/42250
8872	* ipa-type-escape.c (type_escape_execute): Do not analyze clones.
8873
88742010-01-26  Jakub Jelinek  <jakub@redhat.com>
8875
8876	PR fortran/42866
8877	* omp-low.c (expand_omp_sections): Only use single_pred if
8878	l2_bb is single_pred_p.
8879
88802010-01-25  Christian Bruel  <christian.bruel@st.com>
8881
8882	PR target/42841
8883	* config/sh/sh.c (find_barrier): Increase length for non delayed
8884	conditional branches.
8885	(sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
8886
88872010-01-24  David S. Miller  <davem@davemloft.net>
8888
8889	* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
8890	define if not using GAS.
8891	* config/sparc/sparc.c (sparc_elf_asm_named_section):
8892	Likewise.  Delete SECTION_MERGE code, which is only applicable
8893	when using GAS.
8894
88952010-01-24  Mark Mitchell  <mark@codesourcery.com>
8896
8897	PR c++/42748
8898	* config/arm/arm.c (arm_mangle_type): Do not warn about changes to
8899	mangling of va_list in system headers.
8900
89012010-01-23  Toon Moene  <toon@moene.org>
8902
8903	* tree-predcom.c (combine_chains): Return NULL, not false.
8904
89052010-01-23  Joern Rennecke  <amylaar@spamcop.net>
8906
8907	* tree-loop-distribution.c (distribute_loop): Fix declaration and
8908	initialization of variable res to agree with return type.
8909
89102010-01-22  Steve Ellcey  <sje@cup.hp.com>
8911
8912	* Makefile.in (tree-sra.o): Add $(EXPR_H) dependency.
8913	* tree-sra.c: Add include of expr.h.
8914
89152010-01-22  Jakub Jelinek  <jakub@redhat.com>
8916
8917	* tree-into-ssa.c (maybe_register_def): If stmt ends the bb,
8918	insert the debug stmt on the single non-EH edge from the stmt.
8919
89202010-01-22  Richard Henderson  <rth@redhat.com>
8921
8922	PR tree-opt/42833
8923	* tree-sra.c (sra_modify_assign): Delay re-gimplification of
8924	the RHS until after generate_subtree_copies has insertted its
8925	code before the current statement.
8926
89272010-01-22  Joern Rennecke  <amylaar@spamcop.net>
8928
8929	* doc/tm.texi (TARGET_MIN_DIVISIONS_FOR_RECIP_MUL): Fix return type.
8930
8931	* gcc-plugin.h (plugin_init): Use "C" likage for c++.
8932
89332010-01-21  Martin Jambor  <mjambor@suse.cz>
8934
8935	PR tree-optimization/42585
8936	* tree-sra.c (struct access): New field grp_total_scalarization.
8937	(dump_access): Dump the new field.
8938	(should_scalarize_away_bitmap): New variable.
8939	(cannot_scalarize_away_bitmap): Likewise.
8940	(sra_initialize): Allocate new bitmaps.
8941	(sra_deinitialize): Free new bitmaps.
8942	(create_access_1): New function.
8943	(create_access): Parts moved to create_access_1.
8944	(type_consists_of_records_p): New function.
8945	(completely_scalarize_record): Likewise.
8946	(build_access_from_expr): Set bit in cannot_scalarize_away_bitmap.
8947	(build_accesses_from_assign): Set bits in should_scalarize_away_bitmap.
8948	(sort_and_splice_var_accesses): Hint groups with a total_scalarization
8949	access.
8950	(analyze_all_variable_accesses): Completely scalarize small eligible
8951	records.
8952
89532010-01-21  Martin Jambor  <mjambor@suse.cz>
8954
8955	* tree-sra.c (build_ref_for_offset_1): Allow for zero size fields.
8956
89572010-01-21  Andrew Haley  <aph@redhat.com>
8958
8959	* gcc.c (process_command): Move lang_specific_driver before
8960	setting cc_libexec_prefix.
8961
89622010-01-21  Richard Guenther  <rguenther@suse.de>
8963
8964	PR middle-end/19988
8965	* fold-const.c (negate_expr_p): Pretend only negative
8966	real constants are easily negatable.
8967
89682010-01-20  Janis Johnson  <janis187@us.ibm.com>
8969	    Jason Merrill  <jason@redhat.com>
8970
8971	* tree.h (TYPE_TRANSPARENT_UNION): Replace with ...
8972	(TYPE_TRANSPARENT_AGGR): this, for union and record.
8973	* calls.c (initialize argument_information): Handle it.
8974	* c-common.c (handle_transparent_union_attribute): Use new name.
8975	* c-decl.c (finish_struct): Ditto.
8976	* c-typeck.c (type_lists_compatible_p): Ditto.
8977	(convert_for_assignment): Use new name and also handle record.
8978	* function.c (aggregate_value_p): Handle it.
8979	(pass_by_reference): Ditto.
8980	(assign_parm_data_types): Ditto.
8981	* print-tree.c (print_node): Ditto.
8982	* lto-streamer-in.c (unpack_ts_type_value_fields): Ditto.
8983	* lto-streamer-out.c (pack_ts_type_value_fields): Ditto.
8984	* tree.c (first_field): New fn.
8985
89862010-01-21  Dave Korn  <dave.korn.cygwin@gmail.com>
8987
8988	PR target/42818
8989	* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Always apply wrappers,
8990	even when linking statically, for now.
8991
89922010-01-20  Alexandre Oliva  <aoliva@redhat.com>
8993
8994	PR debug/42715
8995	* var-tracking.c (use_type): Choose MO_VAL_SET for REGs set
8996	without a cselib val.
8997	(count_uses): Accept MO_VAL_SET with no val on stores.
8998	(add_stores): Likewise.
8999
90002010-01-20  Jakub Jelinek  <jakub@redhat.com>
9001
9002	* var-tracking.c (check_value_val): Add a compile time assertion.
9003	(dv_is_decl_p): Simplify.
9004	(dv_as_decl, dv_as_value, dv_from_decl, dv_from_value): Only use
9005	gcc_assert if ENABLE_CHECKING.
9006
90072010-01-20  Alexandre Oliva  <aoliva@redhat.com>
9008
9009	PR debug/42782
9010	* var-tracking.c: Include tree-flow.h.
9011	(mem_dies_at_call): New.
9012	(dataflow_set_preserve_mem_locs): Use it.
9013	(dataflow_set_remove_mem_locs): Likewise.
9014	(dump_var): Renamed from dump_variable.  Adjust all callers.
9015	(dump_var_slot): Renamed from dump_variable_slot.  Likewise.
9016	* Makefile.in (var-tracking.o): Adjust deps.
9017
90182010-01-20  Joern Rennecke  <amylaar@spamcop.net>
9019
9020	* doc/tm.texi (TARGET_SCHED_SET_SCHED_FLAGS): Fix argument list.
9021
90222010-01-20  Richard Guenther  <rguenther@suse.de>
9023
9024	PR tree-optimization/42717
9025	* tree-ssa-dce.c (get_live_post_dom): Remove.
9026	(forward_edge_to_pdom): Take an arbitrary edge to copy
9027	degenerate PHI args from.
9028	(remove_dead_stmt): Use the first post-dominator even if it
9029	does not contain live statements as redirection destination.
9030
90312010-01-20  Richard Guenther  <rguenther@suse.de>
9032
9033	* tree-inline.c (estimate_num_insns): Handle EH builtins.
9034
90352010-01-20  Jakub Jelinek  <jakub@redhat.com>
9036
9037	* sel-sched.c (create_speculation_check): Remove set but not used
9038	variable twin.
9039	(try_transformation_cache): Remove set but not used variable ds.
9040	(calculate_privileged_insns): Remove set but not used variables
9041	cur_insn and min_spec_insn.
9042	(find_best_expr): Remove set but not used variable avail_n.
9043	* tree-predcom.c (base_names_in_chain_on): Remove set but not used
9044	variable e.
9045	* cgraphunit.c (assemble_thunk): Remove set but not used variable
9046	false_label.
9047	* haifa-sched.c (remove_notes): Remove set but not used variable prev.
9048	* graphite-clast-to-gimple.c (gloog): Remove set but not used variable
9049	new_scop_exit_edge.
9050
90512010-01-20  Felyza Wishbringer  <fwishbringer@gmail.com>
9052
9053	PR bootstrap/42786
9054	* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
9055	cpu types.  Add support for *-sse3 cpu types.
9056	(x86_64-*-*): Ditto.
9057
90582010-01-20  Jakub Jelinek  <jakub@redhat.com>
9059
9060	PR middle-end/42803
9061	* varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
9062	argument, call initializer_constant_valid_p_1 instead of
9063	initializer_constant_valid_p, pass CACHE to it, return NULL
9064	immediately if first call returns NULL.
9065	(initializer_constant_valid_p_1): New function.
9066	(initializer_constant_valid_p): Use it.
9067
90682010-01-20  Thomas Quinot  <quinot@adacore.com>
9069
9070	* tree.def (PLACEHOLDER_EXPR): Fix comment.
9071
90722010-01-20  Jakub Jelinek  <jakub@redhat.com>
9073
9074	* dwarf2out.c (mem_loc_descriptor): Use DW_OP_mod for UMOD instead
9075	of MOD, handle MOD using DW_OP_{over,over,div,mul,minus}.
9076	(loc_list_from_tree): Don't handle unsigned division.  Handle
9077	signed modulo using DW_OP_{over,over,div,mul,minus}.
9078	* unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
9079	modulo instead of signed.
9080
90812010-01-20  DJ Delorie  <dj@redhat.com>
9082
9083	* config/h8300/h8300.c (F): Add "in_epilogue" flag.
9084	(Fpa): Pass it
9085	(h8300_emit_stack_adjustment): Propogate it.
9086	(push): Pass it.
9087	(h8300_expand_prologue): Likewise.
9088	(h8300_expand_epilogue): Likewise.
9089
90902010-01-19  Michael Matz  <matz@suse.de>
9091
9092	PR tree-optimization/41783
9093	* tree-data-ref.c (toplevel): Include flags.h.
9094	(dump_data_dependence_relation):  Also dump the inputs if the
9095	result will be unknown.
9096	(split_constant_offset_1): Look through some conversions.
9097	* tree-predcom.c (determine_roots_comp): Restart a new chain if
9098	the offset from last element is too large.
9099	(ref_at_iteration): Deal also with MISALIGNED_INDIRECT_REF.
9100	(reassociate_to_the_same_stmt): Handle vector registers.
9101	* tree-vect-data-refs.c (vect_equal_offsets): Handle unary operations
9102	(e.g. conversions).
9103	* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Add
9104	wide_prolog_niters argument, emit widening instructions.
9105	(vect_do_peeling_for_alignment): Adjust caller, use widened
9106	variant of the iteration cound.
9107	* Makefile.in (tree-data-ref.o): Add $(FLAGS_H).
9108
91092010-01-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
9110
9111	PR target/38697
9112	* config/arm/neon-testgen.m (emit_automatics): New parameter
9113	features. Adjust for Fixed_return_reg feature.
9114	(test_intrinsic): Call emit_automatics with new feature.
9115	* config/arm/neon.ml: Update copyright years.
9116	(features): New Fixed_return_reg feature.
9117	(ops): Update feature for Vget_low.
9118
91192010-01-19  Jakub Jelinek  <jakub@redhat.com>
9120
9121	PR tree-optimization/42719
9122	* tree-outof-ssa.c (trivially_conflicts_p): Don't consider debug
9123	stmt uses.
9124
9125	PR debug/42728
9126	* fwprop.c (all_uses_available_at): Return false if def_set dest
9127	is a REG that is used in def_insn.
9128
91292010-01-19  Joern Rennecke  <amylaar@spamcop.net>
9130
9131	* doc/tm.texi (TARGET_FIXED_CONDITION_CODE_REGS): Add argument names.
9132
9133	(TARGET_CC_MODES_COMPATIBLE): Put return value in braces.
9134	Add argument names.
9135
9136	(TARGET_SCHED_INIT_SCHED_CONTEXT): Clarify language.
9137
9138	* target.h (struct gcc_target) <secondary_reload>: Change type
9139	of last argument to secondary_reload_info *.
9140
91412010-01-18  Uros Bizjak  <ubizjak@gmail.com>
9142
9143	PR target/42774
9144	* config/alpha/predicates.md (aligned_memory_operand): Return 0 for
9145	memory references with unaligned offsets.  Remove CQImode handling.
9146	(unaligned_memory_operand): Return 1 for memory references with
9147	unaligned offsets.  Remove CQImode handling.
9148
91492010-01-18  Richard Guenther  <rguenther@suse.de>
9150
9151	PR middle-end/39954
9152	* cfgexpand.c (expand_call_stmt): TER pointer arguments in
9153	builtin calls.
9154
91552010-01-18  Richard Guenther  <rguenther@suse.de>
9156
9157	PR tree-optimization/42781
9158	* tree-ssa-structalias.c (find_what_var_points_to): Skip
9159	restrict processing only if the original variable was artificial.
9160
91612010-01-18  Joern Rennecke  <amylaar@spamcop.net>
9162
9163	* doc/tm.texi (TARGET_ASM_FUNCTION_EPILOGUE): Update text on where to
9164	find number of popped argument bytes.
9165
9166	(TARGET_INVALID_WITHIN_DOLOOP): Put return value in braces.
9167	Fix the text that describes the return value for invalid insns.
9168
9169	(TARGET_SCHED_NEEDS_BLOCK_P): Fix return type.  Fix argument list.
9170
9171	(TARGET_SCHED_IS_COSTLY_DEPENDENCE): Fix argument types.
9172	Clarify what 'cost of the -dependence' is.  Fix quoting.
9173
9174	* toplev.c (default_get_pch_validity): Rename argument to "sz".
9175	* doc/tm.texi (TARGET_GET_PCH_VALIDITY): Likewise.
9176
91772010-01-17  Jakub Jelinek  <jakub@redhat.com>
9178
9179	* dwarf2out.c (mem_loc_descriptor): Don't ICE on
9180	{S,U}S_{PLUS,MINUS,NEG,ABS,ASHIFT}.
9181
91822010-01-17  Richard Guenther  <rguenther@suse.de>
9183
9184	PR middle-end/42248
9185	* function.c (split_complex_args): Take a VEC to modify.
9186	(assign_parms_augmented_arg_list): Build a VEC instead of
9187	a chain of PARM_DECLs.
9188	(assign_parms_unsplit_complex): Take a VEC of arguments.
9189	Do not fixup unmodified parms.
9190	(assign_parms): Deal with the VEC.
9191	(gimplify_parameters): Likewise.
9192
91932010-01-17  Richard Guenther  <rguenther@suse.de>
9194
9195	* tree-ssa-uncprop.c (uncprop_into_successor_phis): Fix PHI
9196	node existence check.
9197	* tree-vect-loop.c (vect_analyze_loop_form): Likewise.
9198	* tree-cfgcleanup.c (merge_phi_nodes): Likewise.
9199	* tree-ssa-dce.c (forward_edge_to_pdom): Likewise.
9200	* tree-cfg.c (gimple_execute_on_growing_pred): Likewise.
9201	(gimple_execute_on_growing_pred): Likewise.
9202
92032010-01-17  Richard Guenther  <rguenther@suse.de>
9204
9205	PR tree-optimization/42773
9206	* tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
9207	(compute_antic_aux): Likewise.
9208	(compute_partial_antic_aux): Likewise.
9209
92102010-01-17  Jie Zhang  <jie.zhang@analog.com>
9211
9212	PR debug/42767
9213	* dwarf2out.c (mem_loc_descriptor): Handle SS_TRUNCATE
9214	and US_TRUNCATE.
9215
92162010-01-17  Joern Rennecke  <amylaar@spamcop.net>
9217
9218	* doc/tm.texi (TARGET_INIT_LIBFUNCS): Put @findex entries in order of
9219	appearance.
9220
9221	(TARGET_LEGITIMATE_ADDRESS_P): Add return type.
9222	Fix markup for strict argument.
9223
9224	(TARGET_SCHED_REORDER2): Fix argument types.
9225
9226	(TARGET_SCHED_DFA_PRE_CYCLE_INSN): Fix return type.
9227	(TARGET_SCHED_DFA_POST_CYCLE_INSN): Likewise.
9228
9229	(TARGET_SCHED_DFA_PRE_ADVANCE_CYCLE): Fix name.
9230	(TARGET_SCHED_DFA_POST_ADVANCE_CYCLE): Likewise.
9231
9232	(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD):
9233	Add argument name.
9234
9235	(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Remove duplicate documentation.
9236	(TARGET_SCHED_INIT_SCHED_CONTEXT): Likewise.
9237	(TARGET_SCHED_SET_SCHED_CONTEXT): Likewise.
9238	(TARGET_SCHED_CLEAR_SCHED_CONTEXT): Likewise.
9239	(TARGET_SCHED_FREE_SCHED_CONTEXT): Likewise.
9240
9241	(TARGET_SCHED_SET_SCHED_CONTEXT): Fix typo.
9242
9243	(TARGET_SCHED_GEN_SPEC_CHECK): Fix name.
9244
9245	(TARGET_ASM_RELOC_RW_MASK): Add return type.
9246	(TARGET_MANGLE_DECL_ASSEMBLER_NAME): Fix return type.
9247
9248	(TARGET_STRIP_NAME_ENCODING): Fix markup of return type and parameter.
9249
9250	(TARGET_ASM_FILE_START): Put @findex before paragraph start.
9251	Use prototype.
9252
9253	(TARGET_ASM_NAMED_SECTION): Fix argument list.
9254
9255	(TARGET_HAVE_NAMED_SECTIONS): Use @deftypevr.
9256	(TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Likewise.
9257
9258	(TARGET_ASM_RECORD_GCC_SWITCHES_SECTION): Use @deftypevr.
9259
9260	(TARGET_ASM_ASSEMBLE_VISIBILITY): Fix argument types.
9261
9262	(TARGET_ASM_MARK_DECL_PRESERVED): Fix argument and markup
9263	referring to it.  Fix language.
9264
9265	(TARGET_HAVE_CTORS_DTORS): Use @deftypevr.
9266
9267	(TARGET_ASM_FINAL_POSTSCAN_INSN): Adjust name of first argument.
9268
9269	(TARGET_ASM_EMIT_UNWIND_LABEL): Add argument types.
9270
9271	(TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Add type to argument.
9272
9273	(TARGET_UNWIND_EMIT): Remove space between 'FILE *' and
9274	'@var{stream}.  Remove stray 'and'.
9275
9276	(TARGET_ARM_EABI_UNWINDER): Use @deftypevr.
9277
9278	(TARGET_ASM_OUTPUT_DWARF_DTPREL): Adjust name of first argument.
9279
9280	(TARGET_SET_DEFAULT_TYPE_ATTRIBUTES): Add missing article.
9281
9282	(TARGET_OPTION_VALID_ATTRIBUTE_P): Fix name, it was
9283	misspelled as TARGET_VALID_OPTION_ATTRIBUTE_P.
9284
9285	(TARGET_GET_PCH_VALIDITY): Put 'void *' in braces.
9286	Fix description of return value.
9287	Rename argument "sz" to "len."
9288
9289	(TARGET_CXX_GUARD_MASK_BIT): Add missing article.
9290	Clarify meaning of 'true' return value.
9291
9292	(TARGET_SHIFT_TRUNCATION_MASK): Fix return type.
9293
9294	(TARGET_MODE_REP_EXTENDED): Fix two inconsisent uses of
9295	rep_mode versus mode_rep.
9296
9297	(TARGET_HANDLE_PRAGMA_EXTERN_PREFIX): Document.
9298
9299	(TARGET_BUILTIN_DECL): Fix name.
9300
9301	(TARGET_COMMUTATIVE_P): Fix type of first argument.
9302
9303	(TARGET_SET_CURRENT_FUNCTION): Mention possibility of cfun being NULL.
9304
9305	(TARGET_BRANCH_TARGET_REGISTER_CLASS): Fix return type.
9306
9307	(TARGET_USE_LOCAL_THUNK_ALIAS_P): Document as macro instead of hook.
9308
9309	(TARGET_RELAXED_ORDERING): Use @deftypevr.
9310
9311	(TARGET_GET_DRAP_RTX): Note that this is a hook.
9312	Clarify language.
9313
9314	(TARGET_BUILTIN_RECIPROCAL): Fix argument types.
9315	Rename argument tm_fn to md_fn.
9316
9317	(TARGET_OPTION_PRINT): Fix argument list.
9318
93192010-01-16  Harsha Jagasia  <harsha.jagasia@amd.com>
9320
9321	PR target/42664
9322	* config/i386/i386.c (ix86_fixup_binary_operands):
9323	Revert FMA4 fixup of operands.
9324
93252010-01-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9326
9327	PR gcc/42525
9328	* Makefile.in (write_entries_to_file, install-plugin):
9329	Use \012 instead of \n with tr.
9330
93312010-01-16  Richard Sandiford  <r.sandiford@uk.ibm.com>
9332
9333	* configure.ac (HAVE_AS_REF): New C macro.
9334	* configure: Regenerate.
9335	* config.in: Likewise.
9336	* collect2.c (main): Only postpone SCAN_DWEH to the second pass
9337	if HAVE_AS_REF.
9338	* config/rs6000/aix.h (ASM_OUTPUT_DWARF_TABLE_REF): Only define
9339	if HAVE_AS_REF.
9340
93412010-01-16  Joern Rennecke  <amylaar@spamcop.net>
9342
9343	* doc/tm.texi (TARGET_USE_BLOCKS_FOR_CONSTANT_P): Fix argument types.
9344
9345	(TARGET_SUPPORT_VECTOR_MISALIGNMENT): Fix argument types.
9346
9347	(TARGET_USE_ANCHORS_FOR_SYMBOL_P): Fix argument types.
9348
9349	(TARGET_SCHED_ALLOC_SCHED_CONTEXT): Put 'void *' in braces.
9350
9351	(TARGET_IN_SMALL_DATA_P): Fix argument type.
9352
9353	(TARGET_BINDS_LOCAL_P): Fix argument type.
9354
9355	(TARGET_ASM_FILE_END): Use prototype.
9356
9357	(TARGET_ASM_RECORD_GCC_SWITCHES): Don't put 'int' in braces.
9358
9359	(TARGET_DWARF_CALLING_CONVENTION): Fix argument type.
9360
9361	(TARGET_COMP_TYPE_ATTRIBUTES): Fix argument types.
9362
9363	(TARGET_VALID_DLLIMPORT_ATTRIBUTE_P): Fix argument type.
9364
9365	(TARGET_EMUTLS_VAR_ALIGN_FIXED): Don't put 'bool' in braces.
9366	(TARGET_EMUTLS_DEBUG_FORM_TLS_ADDRESS): Likewise.
9367
9368	(TARGET_PCH_VALID_P): Put 'const char *' in braces.
9369	(TARGET_CHECK_PCH_TARGET_FLAGS): Likewise.
9370
9371	(TARGET_ADDR_SPACE_LEGITIMATE_ADDRESS_P): Don't put 'bool' in braces.
9372	(TARGET_ADDR_SPACE_SUBSET_P): Likewise.
9373	(TARGET_ADDR_SPACE_LEGITIMIZE_ADDRESS): Don't put 'rtx' in braces.
9374	(TARGET_ADDR_SPACE_CONVERT): Likewise.
9375
9376	(TARGET_CASE_VALUES_THRESHOLD): Put 'unsigned int' in braces.
9377
9378	(TARGET_MACHINE_DEPENDENT_REORG: Use prototype.
9379
9380	(TARGET_INIT_BUILTINS): Use prototype.
9381
9382	(TARGET_INVALID_ARG_FOR_UNPROTOTYPED_FN):
9383	Put 'const char *' in braces.  Fix parameter types.
9384	(TARGET_INVALID_CONVERSION): Fix parameter types.
9385	(TARGET_INVALID_UNARY_OP, TARGET_INVALID_BINARY_OP): Likewise.
9386	(TARGET_INVALID_PARAMETER_TYPE, TARGET_INVALID_RETURN_TYPE): Likewise.
9387
9388	(TARGET_PROMOTED_TYPE): Remove braces around 'tree'.
9389	Fix argument type.
9390
9391	(TARGET_CONVERT_TO_TYPE): Remove braces around 'tree'.
9392
9393	(TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): Remove braces around 'bool'.
9394
93952010-01-15  Joern Rennecke  <amylaar@spamcop.net>
9396
9397	* doc/tm.texi (TARGET_HELP): Fix return type.
9398
9399	(TARGET_PROMOTE_FUNCTION_MODE): Put 'enum machine_mode'
9400	in braces.  Fix argument types.
9401
9402	(TARGET_LIBGCC_CMP_RETURN_MODE): Use prototype.
9403
9404	(TARGET_LIBGCC_SHIFT_COUNT_MODE): Use prototype.
9405
9406	(TARGET_MS_BITFIELD_LAYOUT_P): Fix argument type.
9407
9408	(TARGET_DECIMAL_FLOAT_SUPPORTED_P): Don't put 'bool' in braces.
9409	(TARGET_FIXED_POINT_SUPPORTED_P): Likewise.
9410
9411	(TARGET_MANGLE_TYPE): Fix argument types.
9412
9413	(TARGET_IRA_COVER_CLASSES): Use prototype.
9414
9415	(TARGET_BUILTIN_SETJMP_FRAME_VALUE): Fix return type.  Use prototype.
9416
9417	(TARGET_CAN_ELIMINATE): Use identifiers for argument names.
9418
9419	(TARGET_PROMOTE_PROTOTYPES): Fix argument type.
9420
9421	(TARGET_MUST_PASS_IN_STACK): Fix argument type.
9422
9423	(TARGET_CALLEE_COPIES): Fix argument types.
9424
9425	(TARGET_SPLIT_COMPLEX_ARG): Fix argument type.
9426
9427	(TARGET_GIMPLIFY_VA_ARG_EXPR): Fix argument types.
9428
9429	(TARGET_FUNCTION_VALUE): Fix argument types.
9430
9431	(TARGET_RETURN_IN_MSB): Fix argument type.
9432
9433	(TARGET_RETURN_IN_MEMORY): Fix argument types.
9434
9435	(TARGET_ASM_CAN_OUTPUT_MI_THUNK): Fix argument types.
9436
9437	(TARGET_EXTRA_LIVE_ON_ENTRY): Fix argument type.
9438
9439	(TARGET_STRICT_ARGUMENT_NAMING): Make literal in text
9440	agree with return type.
9441
9442	(TARGET_PRETEND_OUTGOING_VARARGS_NAMED): Add Prototype.
9443
94442010-01-15  Jing Yu  <jingyu@google.com>
9445
9446	PR rtl-optimization/42691
9447	* combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
9448	a pseudo to a constant and are merged, and adjust comments.
9449
94502010-01-15  Eric Botcazou  <ebotcazou@adacore.com>
9451
9452	* config/i386/sse.md (avx_vperm2f128<mode>3): Fix typo.
9453
94542010-01-15  Richard Guenther  <rguenther@suse.de>
9455
9456	PR middle-end/42739
9457	* tree-cfgcleanup.c (remove_forwarder_block): Move destination
9458	labels of computed or non-local gotos to the destination.
9459	* tree-cfg.c (gimple_verify_flow_info): Verify that a EH
9460	landing pad label is the first label.
9461
94622010-01-15  Richard Guenther  <rguenther@suse.de>
9463
9464	* tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
9465
94662010-01-14  Michael Meissner  <meissner@linux.vnet.ibm.com>
9467
9468	PR target/42747
9469	* config/rs6000/rs6000.md (sqrtdf2): Split into expander and insn
9470	to allow generation of the xssqrtdp instruction on power7.
9471	(sqrtdf2_fpr): Ditto.
9472
94732010-01-14  Jakub Jelinek  <jakub@redhat.com>
9474
9475	PR middle-end/42674
9476	* c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
9477	functions with noreturn attribute.
9478
9479	PR c++/42608
9480	* varasm.c (declare_weak): Add weak attribute to decl if it
9481	doesn't have one already.
9482	(assemble_external): Only add decls to weak_decls if they also
9483	have weak attribute.
9484
94852010-01-14  Alexandre Oliva  <aoliva@redhat.com>
9486
9487	* var-tracking.c (var_reg_delete): Don't delete the association
9488	between REGs and values or one-part variables if the register
9489	isn't clobbered.
9490
94912010-01-14  Jakub Jelinek  <jakub@redhat.com>
9492
9493	PR debug/42657
9494	* tree-inline.c (copy_debug_stmt): Don't reset debug stmt just
9495	because its first operand is a non-localized variable.
9496
94972010-01-14  Martin Jambor  <mjambor@suse.cz>
9498
9499	PR tree-optimization/42706
9500	* tree-sra.c (encountered_recursive_call): New variable.
9501	(encountered_unchangable_recursive_call): Likewise.
9502	(sra_initialize): Initialize both new variables.
9503	(callsite_has_enough_arguments_p): New function.
9504	(scan_function): Call decl and flags check only for IPA-SRA, check
9505	whether there is a recursive call and whether it has enough arguments.
9506	(all_callers_have_enough_arguments_p): New function.
9507	(convert_callers): Look for recursive calls only when
9508	encountered_recursive_call is set.
9509	(ipa_early_sra): Bail out either if
9510	!all_callers_have_enough_arguments_p or
9511	encountered_unchangable_recursive_call.
9512
95132010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9514
9515	* sel-sched.c: Add 2010 to copyright years.
9516	* sel-sched-ir.c: Likewise.
9517	* sel-sched-ir.h: Likewise.
9518
95192010-01-14  Martin Jambor  <mjambor@suse.cz>
9520
9521	PR tree-optimization/42714
9522	* tree-sra.c (sra_ipa_modify_assign): Handle incompatible-type
9523	constructors specially.
9524
95252010-01-14  Andi Kleen  <ak@linux.intel.com>
9526
9527	* config/i386/drivers-i386.c (detect_caches_intel):
9528	Add l2sizekb parameter and fill in.
9529	(host_detect_local_cpu): Add l2sizekb, fill in.
9530	Add Atom small cache heuristic.
9531
95322010-01-14  Andi Kleen  <ak@linux.intel.com>
9533
9534	* config/i386/drivers-i386.c (detect_caches_cpuid4):
9535	Add level3 parameter and fill in.
9536	(detect_caches_intel): Handle level3 cache.
9537
95382010-01-14  Andi Kleen  <ak@linux.intel.com>
9539
9540	* config/i386/drivers-i386.c (host_detect_local_cpu):
9541	Fix core duo detection.
9542
95432010-01-14  Andi Kleen  <ak@linux.intel.com>
9544
9545	* config/i386/drivers-i386.c (host_detect_local_cpu):
9546	Fix Atom detection.
9547
95482010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9549
9550	* config/rs6000/rs6000.c (rs6000_variable_issue): Rename to...
9551	(rs6000_variable_issue_1): this.  Use...
9552	(rs6000_variable_issue): here.  Reimplement.  Print debug info.
9553
95542010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9555
9556	* sel-sched-ir.c (sel_restore_other_notes): Rename to
9557	sel_restore_notes.  Update all callers.  Call reemit_notes
9558	for all insns.
9559
95602010-01-14  Andrey Belevantsev  <abel@ispras.ru>
9561
9562	PR rtl-optimization/42246
9563	* sel-sched-ir.h (get_all_loop_exits): Include exits from inner
9564	loops.
9565
95662010-01-14  Andrey Belevantsev  <abel@ispras.ru>
9567
9568	* sel-sched.c (compute_av_set_at_bb_end): Do not test that number of
9569	all successors is the same as number of successors in current region.
9570
95712010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9572
9573	* sel-sched.c (maybe_emit_renaming_copy): Exit early when expression
9574	to rename is not separable.  Otherwise check that its LHS is not NULL.
9575
95762010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9577
9578	* sel-sched.c (choose_best_reg_1):  Loop over all regs for mode.
9579
95802010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9581
9582	* sel-sched.c (mark_unavailable_hard_regs): Do not try to search
9583	available registers when failed to discover LHS register class.
9584	Fix indentation.  Update comment.
9585
95862010-01-14  Andrey Belevantsev  <abel@ispras.ru>
9587	    Alexander Monakov  <amonakov@ispras.ru>
9588
9589	PR rtl-optimization/42389
9590	* sel-sched.c (advance_one_cycle): Set FENCE_ISSUE_MORE
9591	to can_issue_more.
9592	(advance_state_on_fence): Likewise.
9593	(sel_target_adjust_priority): Print debug output only when
9594	sched_verbose >= 4, not 2.
9595	(get_expr_cost): Do not issue all unique insns on the next cycle.
9596	(fill_insns): Initialize can_issue_more from the value saved
9597	with the fence.
9598	* sel-sched-ir.c (flist_add): New parameter issue_more.
9599	Init FENCE_ISSUE_MORE with it.
9600	(merge_fences): Likewise.
9601	(init_fences): Update call to flist_add.
9602	(add_to_fences, add_clean_fence_to_fences)
9603	(add_dirty_fence_to_fences): Likewise.
9604	(move_fence_to_fences): Update call to merge_fences.
9605	(invoke_reorder_hooks): Do not reset can_issue_more on insns from
9606	sched groups.
9607	* sel-sched-ir.h (struct _fence): New field issue_more.
9608	(FENCE_ISSUE_MORE): New accessor macro.
9609
96102010-01-14  Andrey Belevantsev  <abel@ispras.ru>
9611
9612	PR rtl-optimization/42388
9613	* sel-sched-ir.c (maybe_tidy_empty_bb): Do not delete empty blocks
9614	that have no predecessors nor successors.  Do not call move_bb_info
9615	for empty blocks outside of current region.
9616
96172010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9618
9619	PR rtl-optimization/42294
9620	* sel-sched-ir.h (struct _sel_insn_data): Update comment.
9621	* sel-sched.c (move_exprs_to_boundary): Transitively add all
9622	originators' originators.
9623
96242010-01-14  Alexander Monakov  <amonakov@ispras.ru>
9625
9626	PR rtl-optimization/39453
9627	PR rtl-optimization/42246
9628	* sel-sched-ir.c (considered_for_pipelining_p): Do not test
9629	for pipelining_p.
9630	(sel_add_loop_preheaders): Add preheader to last_added_blocks.
9631
96322010-01-14  Andrey Belevantsev  <abel@ispras.ru>
9633	    Alexander Monakov  <amonakov@ispras.ru>
9634
9635	PR middle-end/42245
9636	* sel-sched-ir.c (sel_recompute_toporder): New.  Use it...
9637	(maybe_tidy_empty_bb): ... here.  Make static.  Add new
9638	argument.  Update all callers.
9639	(tidy_control_flow): ... and here.  Recompute topological order
9640	of basic blocks in region if necessary.
9641	(sel_redirect_edge_and_branch): Change return type.  Return true
9642	if topological order might have been invalidated.
9643	(purge_empty_blocks): Export and move from...
9644	* sel-sched.c (purge_empty_blocks): ... here.
9645	* sel-sched-ir.h (sel_redirect_edge_and_branch): Update prototype.
9646	(maybe_tidy_empty_bb): Delete prototype.
9647	(purge_empty_blocks): Declare.
9648
96492010-01-14  Andrey Belevantsev  <abel@ispras.ru>
9650
9651	PR rtl-optimization/42249
9652	* sel-sched.c (try_replace_dest_reg): When chosen register
9653	and original register is the same, do not bail out early, but
9654	still check all original insns for validity of replacing destination
9655	register.  Set EXPR_TARGET_AVAILABLE to 1 before leaving function
9656	in this case.
9657
96582010-01-14  Jakub Jelinek  <jakub@redhat.com>
9659
9660	PR c/42721
9661	Port from no-undefined-overflow branch:
9662	2009-03-09  Richard Guenther  <rguenther@suse.de>
9663
9664	* fold-const.c (add_double_with_sign): Fix unsigned overflow detection.
9665
96662010-01-14  Richard Guenther  <rguenther@suse.de>
9667
9668	PR lto/42665
9669	* gimple.c (iterative_hash_gimple_type): Avoid hashing error_mark_node.
9670
96712010-01-14  Ira Rosen  <irar@il.ibm.com>
9672
9673	PR tree-optimization/42709
9674	* tree-vect-slp.c (vect_get_constant_vectors): Use constant's type
9675	as scalar type in creation of constant vector operand.
9676
96772010-01-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9678
9679	PR testsuite/42414
9680	* Makefile.in ($(TESTSUITEDIR)/site.exp, check-%)
9681	(check-parallel-%): Match `testsuite' directory component only
9682	at the end.
9683
96842010-01-14  Shujing Zhao  <pearly.zhao@oracle.com>
9685
9686	PR translation/39521
9687	* gcc.c (do_spec_1): Wrapped the error and notice messages of specs
9688	strings with _().
9689
96902010-01-13  Richard Guenther  <rguenther@suse.de>
9691
9692	PR tree-optimization/42730
9693	* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Add shortcut for
9694	offset zero.
9695
96962010-01-13  Steve Ellcey  <sje@cup.hp.com>
9697
9698	PR target/pr42542
9699	* config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
9700	for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
9701	them signed.
9702
97032010-01-13  Bernd Schmidt  <bernd.schmidt@analog.com>
9704
9705	* config/bfin/libgcc-bfin.ver: Regenerate based on current
9706	libgcc-std.ver.  Add entries for ___smulsi3_highpart and
9707	___umulsi3_highpart.
9708
9709	* config/bfin/bfin.c (bfin_reorg): Call run_selective_scheduling
9710	rather than schedule_insns if the pass is enabled.
9711
97122010-01-13  Martin Jambor  <mjambor@suse.cz>
9713
9714	PR tree-optimization/42704
9715	* tree-sra.c (sra_modify_assign): Do not delete assignments to
9716	SSA_NAMEs.
9717
97182010-01-13  Martin Jambor  <mjambor@suse.cz>
9719
9720	PR tree-optimization/42703
9721	* tree-sra.c (analyze_access_subtree): Check that we can build a
9722	reference to the original data within the aggregate.
9723
97242010-01-13  Richard Guenther  <rguenther@suse.de>
9725
9726	PR tree-optimization/42705
9727	* tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after labels.
9728
97292010-01-13  Richard Guenther  <rguenther@suse.de>
9730
9731	PR middle-end/42716
9732	* fold-const.c (fold_unary_loc): Fold INDIRECT_REFs.
9733
97342010-01-13  Jakub Jelinek  <jakub@redhat.com>
9735
9736	PR debug/41371
9737	* var-tracking.c (values_to_unmark): New variable.
9738	(find_loc_in_1pdv): Clear VALUE_RECURSED_INTO of values in
9739	values_to_unmark vector.  Moved body to...
9740	(find_loc_in_1pdv_1): ... this.  Don't clear VALUE_RECURSED_INTO,
9741	instead queue it into values_to_unmark vector.
9742	(vt_find_locations): Free values_to_unmark vector.
9743
97442010-01-13  Wolfgang Gellerich  <gellerich@de.ibm.com>
9745
9746	* config/s390/s390.c (override_options): Set
9747	default of max-pending-list-length to 256
9748
97492010-01-13  Richard Guenther  <rguenther@suse.de>
9750
9751	PR lto/42678
9752	* tree-pass.h (PROP_gimple_lcx): New.
9753	* cfgexpand.c (pass_expand): Require PROP_gimple_lcx.
9754	* passes.c (init_optimization_passes): Move pass_lower_complex_O0
9755	before the final cleanup_eh.
9756	(dump_properties): Dump PROP_gimple_lcx.
9757	* tree-complex.c (pass_lower_complex): Provide PROP_gimple_lcx.
9758	(tree_lower_complex_O0): Remove.
9759	(gate_no_optimization): Run if PROP_gimple_lcx is not set.
9760	(pass_lower_complex_O0): Provide PROP_gimple_lcx.  Run
9761	tree_lower_complex, schedule TODO_update_ssa.
9762	* lto-streamer-out.c (output_function): Stream the functions
9763	properties.
9764	* lto-streamer-in.c (input_function): Likewise.
9765	(lto_read_body): Do not override them here.
9766
97672010-01-12  Joseph Myers  <joseph@codesourcery.com>
9768
9769	PR c/42708
9770	* c-typeck.c (build_c_cast): Fold value cast to union type before
9771	wrapping it in a CONSTRUCTOR.
9772
97732010-01-12  Jakub Jelinek  <jakub@redhat.com>
9774
9775	PR rtl-optimization/42699
9776	* cse.c (cse_insn): Optimize lhs ZERO_EXTRACT if only CONST_INTs are
9777	involved.
9778
97792010-01-12  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
9780
9781	* config/mips/iris6.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
9782	SUBTARGET_WARN_UNUSED_SPEC): Move ...
9783	config/mips/iris.h (SUBTARGET_DONT_WARN_UNUSED_SPEC,
9784	SUBTARGET_WARN_UNUSED_SPEC): ... here
9785	* config/mips/iris5.h (LIBGCC_SPEC): Define.
9786
97872010-01-12  Julian Brown  <julian@codesourcery.com>
9788
9789	* config/arm/neon-schedgen.ml (Utils): Don't try to
9790	open missing module.
9791	(find_with_result): New.
9792
97932010-01-12  Jakub Jelinek  <jakub@redhat.com>
9794
9795	PR debug/42662
9796	* simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
9797	sharing when canonicalizing ({lt,ge}u (plus a b) b).
9798
9799	PR tree-optimization/42645
9800	* tree-inline.c (processing_debug_stmt): Move earlier.  Make static.
9801	(remap_ssa_name): If processing_debug_stmt and name wasn't found in
9802	decl_map, set processing_debug_stmt to -1 and return name without
9803	any remapping.
9804
98052010-01-11  Dave Korn  <dave.korn.cygwin@gmail.com>
9806
9807	* doc/install.texi (Specific#x-x-cygwin): Document minimum required
9808	binutils version, and reword target configuration description.
9809
98102010-01-11  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
9811
9812	* config/avr/avr.h (LINKER_NAME): Remove.
9813
98142010-01-11  Janis Johnson  <janis187@us.ibm.com>
9815
9816	PR target/42416
9817	* config/rs6000/rs6000.c (rs6000_override_options): On targets
9818	that support VSX, warn for -mno-altivec if vsx is not disabled,
9819	and disable vsx.
9820
98212010-01-11  Joseph Myers  <joseph@codesourcery.com>
9822	    Shujing Zhao  <pearly.zhao@oracle.com>
9823
9824	PR translation/42469
9825	* common.opt (Wframe-larger-than=, fcompare-debug=, fdbg-cnt=,
9826	fira-verbose=, flto-compression-level=, fplugin-arg-): Use tab
9827	character between option name and help text.
9828	* c.opt (imultilib): Likewise.
9829
98302010-01-10  Rafael Avila de Espindola  <espindola@google.com>
9831
9832	* lto-streamer-out.c (output_unreferenced_globals): Output static
9833	variables.
9834
98352010-01-10  Steven Bosscher  <steven@gcc.gnu.org>
9836
9837	PR rtl-optimization/42621
9838	* bb-reorder.c (gate_duplicated_computed_gotos): Only run if not
9839	optimizing for size.
9840	(duplicate_computed_gotos): Remove now-redundant check.
9841
98422010-01-10  Steve Ellcey  <sje@cup.hp.com>
9843
9844	PR target/37454
9845	* configure.ac: Save and restore LDFLAGS and LIBS
9846	* configure: Regenerate.
9847
98482010-01-10  Richard Guenther  <rguenther@suse.de>
9849
9850	PR middle-end/42667
9851	* builtins.c (fold_builtin_strlen): Add type argument and
9852	convert the resulting length to it.
9853	(fold_builtin_1): Adjust.
9854
98552010-01-09  Jakub Jelinek  <jakub@redhat.com>
9856
9857	* config/rs6000/rs6000.c (rs6000_emit_set_long_const): Shorten
9858	sequence for DImode constants >= 0x80000000UL <= 0xFFFFFFFFUL by
9859	1 insn.
9860	(num_insns_constant_wide): Adjust for that change.
9861
98622010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9863
9864	PR debug/42631
9865	* web.c (union_defs): Add used argument, to combine uses of
9866	uninitialized regs.
9867	(entry_register): Adjust type and tests of used argument.
9868	(web_main): Widen used for new use.  Pass it to union_defs.
9869	* df.h (union_defs): Adjust prototype.
9870
98712010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9872
9873	PR debug/42630
9874	* loop-unroll.c (referenced_in_one_insn_in_loop_p): Count debug
9875	uses in new incoming argument.  Free body.
9876	(reset_debug_uses_in_loop): New.
9877	(analyze_insn_to_expand_var): Call the latter if the former found
9878	anything.  Fix whitespace.  Reject invalid dest overlaps before
9879	going through all insns in the loop.
9880
98812010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9882
9883	PR debug/42629
9884	* haifa-sched.c (dying_use_p): Debug insns don't count.
9885
98862010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9887
9888	PR middle-end/42363
9889	* gimplify.c (gimplify_modify_expr): Drop lhs on noreturn calls.
9890	* tree-cfg.c (is_ctrl_altering_stmt): Don't compute flags twice.
9891	(verify_gimple_call): Reject LHS in noreturn calls.
9892
98932010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9894
9895	PR debug/42604
9896	PR debug/42395
9897	* tree-vect-loop-manip.c (adjust_info): New type.
9898	(adjust_vec): New pointer to vector.
9899	(adjust_debug_stmts_now, adjust_vec_debug_stmts): New.
9900	(adjust_debug_stmts, adjust_phi_and_debug_stmts): New.
9901	(slpeel_update_phis_for_duplicate_loop): Use them.
9902	(slpeel_update_phi_nodes_for_guard1): Likewise.
9903	(slpeel_update_phi_nodes_for_guard2): Likewise.
9904	(slpeel_tree_peel_loop_to_edge): Likewise.
9905	(vect_update_ivs_after_vectorizer): Likewise.
9906
99072010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9908
9909	* vec.h (DEF_VEC_ALLOC_FUNC_O_STACK): Drop excess paren.
9910	(DEF_VEC_ALLOC_FUNC_I_STACK): Likewise.
9911
99122010-01-09  Alexandre Oliva  <aoliva@redhat.com>
9913
9914	* config/i386/i386.c (ix86_vectorize_builtin_vec_perm): Silence
9915	bogus uninitialized warning.
9916
99172010-01-09  Richard Guenther  <rguenther@suse.de>
9918
9919	PR middle-end/42512
9920	* tree-scalar-evolution.c (interpret_loop_phi): Make sure
9921	the evolution is compatible with the initial condition.
9922
99232010-01-09  Jakub Jelinek  <jakub@redhat.com>
9924
9925	* gcc.c (process_command): Update copyright notice dates.
9926	* gcov.c (print_version): Likewise.
9927	* gcov-dump.c (print_version): Likewise.
9928	* mips-tfile.c (main): Likewise.
9929	* mips-tdump.c (main): Likewise.
9930
99312010-01-08  Andy Hutchinson  <hutchinsonandy@gcc.gnu.org>
9932
9933	PR target/41885
9934	* config/avr/avr.md (rotlqi3): Add CONST_INT_P check.
9935	(rotlhi3): Delete.
9936	(rotlhi3_8): Delete.
9937	(rotlsi3): Delete.
9938	(rotlsi3_8): Delete.
9939	(rotlsi3_16): Delete.
9940	(rotlsi3_24): Delete.
9941	(rotl<mode>3): New.
9942	(*rotw<mode>3): New.
9943	(*rotb<mode>3): New.
9944	* config/avr/avr.c (avr_rotate_bytes): New function.
9945	* config/avr/avr-proto.h (avr_rotate_bytes): New function.
9946
99472010-01-08  Steve Ellcey  <sje@cup.hp.com>
9948
9949	PR target/37454
9950	* configure.ac: Modify -rdynamic check.
9951	* configure: Regenerate.
9952
99532010-01-08  DJ Delorie  <dj@redhat.com>
9954
9955	* config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
9956	register popping order.
9957
99582010-01-08  Richard Guenther  <rguenther@suse.de>
9959
9960	PR lto/42528
9961	* c.opt (fsigned-char): Also let LTO handle this option.
9962	(funsigned-char): Likewise.
9963
99642010-01-07  Richard Guenther  <rguenther@suse.de>
9965
9966	* gimple.h (gss_for_code): Wrap gcc_assert in ENABLE_CHECKING.
9967	(gimple_op): Likewise.
9968	(gimple_op_ptr): Likewise.
9969	(gimple_assign_set_lhs): Remove gcc_assert.
9970	(gimple_assign_set_rhs1): Likewise.
9971	(gimple_assign_set_rhs2): Likewise.
9972	(gimple_call_set_lhs): Likewise.
9973	(gimple_call_set_fn): Likewise.
9974	(gimple_call_set_fndecl): Likewise.
9975	(gimple_call_fndecl): Likewise.
9976	(gimple_call_return_type): Likewise.
9977	(gimple_call_set_chain): Likewise.
9978	(gimple_call_num_args): Likewise.
9979	(gimple_call_set_arg): Likewise.
9980	(gimple_cond_set_code): Likewise.
9981	(gimple_cond_set_lhs): Likewise.
9982	(gimple_cond_set_rhs): Likewise.
9983	(gimple_cond_set_true_label): Likewise.
9984	(gimple_cond_set_false_label): Likewise.
9985	(gimple_label_set_label): Likewise.
9986	(gimple_goto_set_dest): Likewise.
9987	(gimple_debug_bind_get_var): Wrap gcc_assert in ENABLE_CHECKING.
9988	(gimple_debug_bind_get_value): Likewise.
9989	(gimple_debug_bind_get_value_ptr): Likewise.
9990	(gimple_debug_bind_set_var): Likewise.
9991	(gimple_debug_bind_set_value): Likewise.
9992	(gimple_debug_bind_reset_value): Likewise.
9993	(gimple_debug_bind_has_value_p): Likewise.
9994	(gimple_return_retval_ptr): Remove gcc_assert.
9995	(gimple_return_retval): Likewise.
9996	(gimple_return_set_retval): Likewise.
9997	* tree-flow.h (struct gimple_df): Remove nonlocal_all member.
9998	(safe_referenced_var_iterator): Remove.
9999	(FOR_EACH_REFERENCED_VAR_SAFE): Likewise.
10000	* tree-flow-inline.h (gimple_nonlocal_all): Remove.
10001	(fill_referenced_var_vec): Remove.
10002	(first_readonly_imm_use): Remove redundant gcc_assert.
10003	(phi_arg_index_from_use): Combine gcc_asserts.
10004	(move_use_after_head): Wrap gcc_assert in ENABLE_CHECKING.
10005	(first_imm_use_stmt): Remove redundant gcc_assert.
10006	* tree-cfg.c (verify_gimple_call): Verify function and chain
10007	operands.  Verify arguments.
10008	(verify_types_in_gimple_stmt): Verify condition code and labels.
10009
100102010-01-07  Richard Guenther  <rguenther@suse.de>
10011
10012	PR tree-optimization/42641
10013	* sese.c (rename_map_elt_info): Use the SSA name version, do
10014	not hash pointers.
10015
100162010-01-07  Jakub Jelinek  <jakub@redhat.com>
10017
10018	PR tree-optimization/42625
10019	* cgraph.c (cgraph_make_node_local): Clear DECL_COMDAT*,
10020	TREE_PUBLIC, DECL_WEAK and DECL_EXTERNAL also for same_body aliases.
10021
100222010-01-07  Duncan Sands  <baldrick@free.fr>
10023
10024	* Makefile.in (PLUGIN_HEADERS): Add version.h.
10025
100262010-01-07  Uros Bizjak  <ubizjak@gmail.com>
10027
10028	PR target/42511
10029	* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
10030	note itself is not function_invariant_p.
10031
100322009-01-07  Steven Bosscher  <steven@gcc.gnu.org>
10033
10034	* gcse.c (execute_rtl_cprop, execute_rtl_pre, execute_rtl_hoist):
10035	Do not add the DF_NOTE problem.
10036	* store-motion.c (execute_rtl_store_motion): Likewise.
10037
100382010-01-07  Martin Jambor  <mjambor@suse.cz>
10039
10040	PR tree-optimization/42157
10041	* tree-sra.c (compare_access_positions): Stabilize sort if both
10042	accesses have integer types, return zero immediately if they are the
10043	same.
10044
100452010-01-06  Richard Henderson  <rth@redhat.com>
10046
10047	PR middle-end/41883
10048	* haifa-sched.c (add_to_note_list): Merge into ...
10049	(concat_note_lists): ... here, and ...
10050	(unlink_other_notes, rm_other_notes): Merge into...
10051	(remove_notes): ... here.  Create REG_SAVE_NOTEs for
10052	NOTE_INSN_EPILOGUE_BEG.
10053
100542010-01-06  Richard Guenther  <rguenther@suse.de>
10055
10056	* ipa-inline.c (cgraph_decide_inlining_incrementally): Do
10057	not inline regular functions into always-inline functions.
10058
100592010-01-06  Nick Clifton  <nickc@redhat.com>
10060
10061	* config/rx/rx.h (enum rx_cpu_type): Add RX200.
10062	(CC1_SPEC): Issue an error message if -mcpu=rx200 and -fpu are
10063	used together.
10064	(OVERRIDE_OPTIONS): Delete.
10065	(OPTIMIZATION_OPTIONS): Define.
10066	(ALLOW_RX_FPU_INSNS): Define only in terms of -fpu option.
10067	* config/rx/rx.c (rx_handle_option): Issue an error message if
10068	-mcpu=rx200 and -fpu are used together.
10069	(rx_set_optimization_options): New function.  Issue an error
10070	message if an optimization attribute attempts to reset the FPU/
10071	math optimization pairing.
10072	* config/rx/rx-protos.h (rx_set_optimization_options): Prototype.
10073	* config/rx/rx.opt: Set the default to 32-bit doubles.
10074	* config/rx/t-rx: Add multilibs for -nofpu option.
10075	* doc/invoke.texi: Update documentation of RX options.
10076
100772010-01-06  Richard Guenther  <rguenther@suse.de>
10078
10079	* tree-ssa-pre.c (name_to_id): New global.
10080	(alloc_expression_id): Simplify SSA name handling.
10081	(lookup_expression_id): Likewise.
10082	(init_pre): Zero name_to_id.
10083	(fini_pre): Free it.
10084
100852010-01-06  Uros Bizjak  <ubizjak@gmail.com>
10086
10087	* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
10088
100892010-01-05  H.J. Lu  <hongjiu.lu@intel.com>
10090
10091	PR target/42542
10092	* config/i386/sse.md (smaxv2di3): New.
10093	(umaxv2di3): Likewise.
10094	(sminv2di3): Likewise.
10095	(uminv2di3): Likewise.
10096
100972010-01-05  Eric Botcazou  <ebotcazou@adacore.com>
10098
10099	PR target/42564
10100	* config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
10101	* config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
10102	(legitimize_tls_address): Likewise.
10103	(sparc_tls_referenced_p): Likewise.
10104	* config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
10105	and adjust calls to legitimize_pic_address.
10106	(legitimate_constant_p) Use sparc_tls_referenced_p.
10107	(legitimate_pic_operand_p): Likewise.
10108	(sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
10109	(sparc_tls_symbol_ref_1): Delete.
10110	(sparc_tls_referenced_p): Make static, recognize specific patterns.
10111	(legitimize_tls_address): Make static, handle CONST patterns.
10112	(legitimize_pic_address): Make static, remove unused parameter and
10113	adjust recursive calls.
10114	(sparc_legitimize_address): Make static, use sparc_tls_referenced_p
10115	and adjust call to legitimize_pic_address.
10116	(sparc_output_mi_thunk): Likewise.
10117
101182010-01-05  Paolo Bonzini  <bonzini@gnu.rg>
10119	    H.J. Lu  <hongjiu.lu@intel.com>
10120
10121	PR target/42542
10122	* config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
10123	for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
10124	operands to make them signed.
10125
10126	Revert:
10127	2010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
10128
10129	PR target/42542
10130	* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
10131	GTU to GT for V4SI and V2DI.
10132
10133	* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
10134	(umin<mode>3): Removed.
10135	(uminv8hi3): New.
10136	(uminv4si3): Likewise.
10137
101382010-01-05  Martin Jambor  <mjambor@suse.cz>
10139
10140	PR tree-optimization/42462
10141	* ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
10142	current_function_decl to helper functions and macros.
10143
101442010-01-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
10145
10146	PR bootstrap/41771
10147	* flags.h: Don't include real.h.
10148	(HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES, HONOR_SIGNED_ZEROS,
10149	HONOR_SIGN_DEPENDENT_ROUNDING): Move ...
10150	* real.h (HONOR_NANS, HONOR_SNANS, HONOR_INFINITIES,
10151	HONOR_SIGNED_ZEROS, HONOR_SIGN_DEPENDENT_ROUNDING): ... here.
10152	* dominance.c: Update copyright.
10153	* gimple.c (walk_gimple_op): Remove inline.
10154	* tree-ssa-reassoc.c: Include real.h.
10155	* Makefile.in (FLAGS_H): Remove $(REAL_H).
10156	(tree-ssa-reassoc.o): Depend on $(REAL_H).
10157
101582010-01-05  Nick Clifton  <nickc@redhat.com>
10159
10160	* config/rx/rx.c (rx_get_stack_layout): Fix allocation of second
10161	register to push into the stack frame when the accumulator has to
10162	be saved during interrupts.
10163
101642010-01-05  Eric Fisher  <joefoxreal@gmail.com>
10165
10166	* doc/invoke.texi: Remove the documentation about option
10167	-Wunreachable-code.
10168	* common.opt (Wunreachable-code):  Preserved for backward
10169	compatibility.
10170	* tree-cfg.c: Remove the implementation of -Wunreachable-code.
10171	* opts.c (common_handle_option): Add OPT_Wunreachable_code to
10172	the backward compatibility flag section.
10173
101742010-01-05  Richard Guenther  <rguenther@suse.de>
10175
10176	* tree-ssa-pre.c (bitmap_value_insert_into_set): Optimize.
10177
101782010-01-05  Jakub Jelinek  <jakub@redhat.com>
10179
10180	PR other/42611
10181	* cfgexpand.c (expand_one_var): Diagnose too large variables.
10182
10183	PR tree-optimization/42508
10184	* tree-sra.c (convert_callers): Check for recursive call
10185	by comparing cgraph nodes instead of decls.
10186	(modify_function): Call ipa_modify_formal_parameters also
10187	on all same_body aliases.
10188
10189	* cgraphunit.c (cgraph_materialize_all_clones): Compare
10190	cgraph nodes when checking for same_body aliases.
10191
101922010-01-05  Richard Guenther  <rguenther@suse.de>
10193
10194	* tree-ssa-pre.c (get_or_alloc_expr_for_name): Avoid redundant
10195	allocation and lookup.
10196	(get_or_alloc_expr_for_constant): Likewise.
10197	(phi_translate): Sink allocation.
10198
101992010-01-04  Richard Guenther  <rguenther@suse.de>
10200
10201	* tree-ssa-sccvn.c (get_or_alloc_constant_value_id): Allocate
10202	a new entry only if needed.
10203	* tree-ssa-dom.c (lookup_avail_expr): Likewise.
10204	* tree-ssa-coalesce.c (find_coalesce_pair): Avoid one
10205	hashtable lookup.
10206	* tree-ssa-pre.c (sorted_array_from_bitmap_set): Pre-allocate
10207	the result array.
10208	(phi_translate): Handle CONSTANTs early.
10209
102102010-01-04  Martin Jambor  <mjambor@suse.cz>
10211
10212	PR tree-optimization/42398
10213	* tree-sra.c (struct access): Removed flag grp_different_types.
10214	(dump_access): Do not dump the removed flag.
10215	(sort_and_splice_var_accesses): Do not set the removed flag.
10216	(sra_modify_expr): Check for type compatibility directly.
10217
102182010-01-04  Martin Jambor  <mjambor@suse.cz>
10219
10220	PR tree-optimization/42366
10221	* ipa-cp.c (ipcp_init_stage): Always call ipa_compute_jump_functions on
10222	edges with variable number of parameters.
10223	* ipa-prop.c (ipa_write_node_info): Stream out uses_analysis_done
10224	flag instead of asserting it.
10225	(ipa_read_node_info): Read uses_analysis_done flag.
10226
102272010-01-04  Richard Guenther  <rguenther@suse.de>
10228
10229	* tree-ssa-sccvn.c (vn_reference_op_compute_hash): Use
10230	iterative_hash_* as intended.
10231	(vn_reference_compute_hash): Likewise.  Simplify hashing
10232	SSA names.
10233	(vn_reference_lookup_2): Likewise.
10234	(vn_nary_op_compute_hash): Likewise.
10235	(vn_phi_compute_hash): Likewise.
10236	(expressions_equal_p): Remove strange code.
10237	* tree-ssa-pre.c (pre_expr_eq): Use gcc_unreachable ().
10238	(pre_expr_hash): Likewise.  Simplify hashing SSA names.
10239	(bitmap_insert_into_set_1): Take value-id as parameter.
10240	(add_to_value): Pass it.
10241	(bitmap_insert_into_set): Likewise.
10242	(bitmap_value_insert_into_set): Likewise.  Remove redundant check.
10243
102442010-01-04  Jakub Jelinek  <jakub@redhat.com>
10245
10246	PR driver/42442
10247	* gcc.c (SWITCH_IGNORE_PERMANENTLY): Define.
10248	(do_self_spec): For switches with SWITCH_IGNORE set set also
10249	SWITCH_IGNORE_PERMANENTLY.
10250	(check_live_switch): Check SWITCH_IGNORE_PERMANENTLY instead
10251	of SWITCH_IGNORE.
10252
102532010-01-04  Rafael Avila de Espindola  <espindola@google.com>
10254
10255	* lto-streamer-out.c (output_unreferenced_globals): Output the full
10256	tree of an unreferenced global var.
10257
102582010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
10259
10260	PR target/42542
10261	* config/i386/i386.c (ix86_expand_int_vcond): Don't convert
10262	GTU to GT for V4SI and V2DI.
10263
10264	* config/i386/sse.md (umaxv4si3): Enabled for SSE4.1 and XOP.
10265	(umin<mode>3): Removed.
10266	(uminv8hi3): New.
10267	(uminv4si3): Likewise.
10268
102692010-01-04  H.J. Lu  <hongjiu.lu@intel.com>
10270
10271	PR lto/42581
10272	* collect2.c (main): Turn on trace in collect2 if -v is passed
10273	to gcc with LTO.
10274
102752010-01-03  Jerry Quinn  <jlquinn@optonline.net>
10276
10277	* doc/c-tree.texi (RETURN_STMT): Change to RETURN_EXPR.  Update
10278	description of expression operand.
10279
102802010-01-03  Andrew Jenner  <andrew@codesourcery.com>
10281
10282	* configure.ac: Add install-html to target_list for Make-hooks.
10283	* configure: Regenerate.
10284	* fortran/Make-lang.in (F95_HTMLFILES): New.
10285	(fortran.html): Use it.
10286	(fortran.install-html): New.
10287	* Makefile.in (install-html): Add lang.install-html.
10288	* java/Make-lang.in (JAVA_HTMLFILES): New.
10289	(java.html): Use it.
10290	(java.install-html): New.
10291	* objc/Make-lang.in (objc.install-html): New.
10292	* objcp/Make-lang.in (obj-c++.install-html): New.
10293	* cp/Make-lang.in (c++.install-html): New.
10294	* ada/gcc-interface/Make-lang.in (ada.install-html): New.
10295	* lto/Make-lang.in (lto.install-html): New.
10296
102972010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
10298
10299	PR lto/42520
10300	* gcc.c (LINK_COMMAND_SPEC): Pass -m* and -v to -plugin-opt.
10301
103022009-01-03  Steven Bosscher  <steven@gcc.gnu.org>
10303
10304	PR rtl-optimization/41862
10305	* store-motion.c (store_killed_in_insn, compute_store_table,
10306	remove_reachable_equiv_notes, replace_store_insn,
10307	build_store_vectors): Ignore all DEBUG_INSNs.
10308
103092010-01-03  H.J. Lu  <hongjiu.lu@intel.com>
10310
10311	PR lto/41564
10312	* common.opt: Add dumpdir.
10313
10314	* gcc.c (cc1_options): Add "-dumpbase %B" only if -dumpbase
10315	isn't specified.
10316	(option_map): Add --dumpdir.
10317
10318	* gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add dumpdir.
10319
10320	* lto-wrapper.c (run_gcc): Add -dumpbase and -dumpdir for -o.
10321
10322	* opts.c (decode_options): Try dump_dir_name first if
10323	dump_base_name isn't an absolute path.
10324	(common_handle_option): Handle OPT_dumpdir.
10325
10326	* toplev.c (dump_dir_name): New.
10327	(print_switch_values): Also ignore -dumpdir.
10328
10329	* toplev.h (dump_dir_name): New.
10330
103312010-01-03  Richard Guenther  <rguenther@suse.de>
10332
10333	PR tree-optimization/42589
10334	* tree-ssa-math-opts.c (execute_optimize_bswap): Allow
10335	double-word expansion of bswap32.
10336
103372010-01-03  Steven Bosscher  <steven@gcc.gnu.org>
10338
10339	* postreload-gcse.c (insert_expr_in_table): Replace BLOCK_NUM
10340	with BLOCK_FOR_INSN.
10341	* auto-inc-dec.c (attempt_change, get_next_ref, find_inc): Likewise.
10342	* ifcvt.c (noce_get_alt_condition, noce_try_abs,
10343	noce_process_if_block): Likewise.
10344	* gcse.c (compute_local_properties, insert_expr_in_table,
10345	insert_set_in_table, canon_list_insert, find_avail_set,
10346	pre_insert_copy_insn): Likewise.
10347
10348	* basic-block.h (BLOCK_NUM): Move from here...
10349	* sched-int.h (BLOCK_NUM): ... to here to localize it in the scheduler.
10350
103512010-01-03  Richard Guenther  <rguenther@suse.de>
10352
10353	PR tree-optimization/42438
10354	* tree-ssa-pre.c (struct bb_bitmap_sets): Add
10355	contains_may_not_return_call flag.
10356	(BB_MAY_NOTRETURN): New.
10357	(valid_in_sets): Trapping nary operations are not valid
10358	in blocks that may not return.
10359	(insert_into_preds_of_block): Remove check for trapping expressions.
10360	(compute_avail): Compute also BB_MAY_NOTRETURN.
10361
103622010-01-03  Gerald Pfeifer  <gerald@pfeifer.com>
10363
10364	* doc/invoke.texi: Add 2010 to copyright years.
10365
103662010-01-03  Eric Botcazou  <ebotcazou@adacore.com>
10367
10368	* config/sparc/sparc.c: Fix formatting nits.
10369
103702010-01-02  Gerald Pfeifer  <gerald@pfeifer.com>
10371	    Alexander Monakov  <amonakov@ispras.ru>
10372
10373	* doc/invoke.texi (Optimize Options): Reword introduction a bit.
10374
103752010-01-02  Richard Guenther  <rguenther@suse.de>
10376
10377	PR middle-end/42577
10378	* tree-vrp.c (check_all_array_refs): Skip non-excutable blocks.
10379	(simplify_switch_using_ranges): Mark to be removed edges
10380	as non-executable.
10381
103822010-01-02  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
10383
10384	* config/pa/t-slibgcc-dwarf-ver (SHLIB_SOVERSION): Bump by two.
10385
10386	* collect2.c (scan_libraries): Add missing argument in call to
10387	scan_prog_file.
10388
103892010-01-02  Uros Bizjak  <ubizjak@gmail.com>
10390
10391	PR target/42448
10392	* config/alpha/predicates.md (aligned_memory_operand): Return false
10393	for CQImode.
10394	(unaligned_memory_operand): Return true for CQImode.
10395	* config/alpha/alpha.c (get_aligned_mem): Assert that location
10396	doesn not cross aligned SImode word boundary.
10397
103982010-01-02  Anatoly Sokolov  <aesok@post.ru>
10399
10400	* config/avr/avr.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P, XEXP_):
10401	Remove.
10402	* config/avr/avr-protos.h (avr_init_once, avr_optimization_options,
10403	avr_change_section, avr_reg_class_from_letter) : Remove declaration.
10404
104052010-01-02  Richard Guenther  <rguenther@suse.de>
10406
10407	PR lto/41597
10408	* toplev.c (compile_file): Emit LTO marker properly.  Change
10409	it to __gnu_lto_v1.
10410	* collect2.c (scan_prog_file): Adjust for changed LTO marker.
10411
104122010-01-01  Richard Guenther  <rguenther@suse.de>
10413
10414	PR debug/42455
10415	* tree-sra.c (analyze_all_variable_accesses): Work in DECL_UID order.
10416
104172010-01-01  Richard Guenther  <rguenther@suse.de>
10418
10419	PR c/42570
10420	* c-decl.c (grokdeclarator): For zero-size arrays force
10421	structural equality checks as layout_type does.
10422
104232010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
10424
10425	* builtins.c: Update copyright to 2010.
10426
104272010-01-01  H.J. Lu  <hongjiu.lu@intel.com>
10428
10429	PR lto/42531
10430	* lto-streamer-out.c (produce_asm): Revert the last change.
10431	(copy_function): Likewise.
10432
10433	* lto-streamer.c (lto_get_section_name): Skip any leading
10434	asterisk in name.
10435
104362010-01-01  Richard Guenther  <rguenther@suse.de>
10437
10438	PR middle-end/42559
10439	* builtins.c (get_object_alignment): Do not use DECL_ALIGN
10440	for LABEL_DECLs.
10441
10442
10443Copyright (C) 2010 Free Software Foundation, Inc.
10444
10445Copying and distribution of this file, with or without modification,
10446are permitted in any medium without royalty provided the copyright
10447notice and this notice are preserved.
10448