OSDN Git Service

Daily bump.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2013-11-05  Uros Bizjak  <ubizjak@gmail.com>
2
3         * config/i386/t-rtems (MULTILIB_MATCHES): Fix option typos.
4
5 2013-10-26  Uros Bizjak  <ubizjak@gmail.com>
6
7         Backport from mainline
8         2013-10-22  Uros Bizjak  <ubizjak@gmail.com>
9
10         PR target/58779
11         * config/i386/i386.c (put_condition_code) <case GTU, case LEU>:
12         Remove CCCmode handling.
13         <case LTU>: Return 'c' suffix for CCCmode.
14         <case GEU>: Return 'nc' suffix for CCCmode.
15         (ix86_cc_mode) <case GTU, case LEU>: Do not generate overflow checks.
16         * config/i386/i386.md (*sub<mode>3_cconly_overflow): Remove.
17         (*sub<mode>3_cc_overflow): Ditto.
18         (*subsi3_zext_cc_overflow): Ditto.
19
20 2013-10-26  Uros Bizjak  <ubizjak@gmail.com>
21
22         Backport from mainline
23         2013-10-19  Uros Bizjak  <ubizjak@gmail.com>
24
25         PR target/58792
26         * config/i386/i386.c (ix86_function_value_regno): Add DX_REG,
27         ST1_REG and XMM1_REG for 32bit and 64bit targets.  Also add DI_REG
28         and SI_REG for 64bit SYSV ABI targets.
29
30 2013-10-25  Richard Henderson  <rth@twiddle.net>
31
32         PR rtl/58542
33         * optabs.c (maybe_emit_atomic_exchange): Use create_input_operand
34         instead of create_convert_operand_to.
35         (maybe_emit_sync_lock_test_and_set): Likewise.
36         (expand_atomic_compare_and_swap): Likewise.
37         (maybe_emit_compare_and_swap_exchange_loop): Don't convert_modes.
38
39 2013-10-25  Eric Botcazou  <ebotcazou@adacore.com>
40
41         PR rtl-optimization/58831
42         * alias.c (init_alias_analysis): At the beginning of each iteration,
43         set the reg_seen[N] flag if static_reg_base_value[N] is non-null.
44
45 2013-10-25  Eric Botcazou  <ebotcazou@adacore.com>
46
47         * recog.c (search_ofs): New static variable moved from...
48         (peep2_find_free_register): ...here.
49         (peephole2_optimize): Initialize it.
50
51 2013-10-02  John David Anglin  <danglin@gcc.gnu.org>
52
53         * config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file.
54
55 2013-09-23  Eric Botcazou  <ebotcazou@adacore.com>
56
57         * tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy
58         assignment statements.
59
60 2013-09-20  John David Anglin  <danglin@gcc.gnu.org>
61
62         * config/pa/pa.md: In "scc" insn patterns, change output template to
63         handle const0_rtx in reg_or_0_operand operands.
64
65 2013-09-18  Daniel Morris  <danielm@ecoscentric.com>
66             Paolo Carlini  <paolo.carlini@oracle.com>
67
68         PR c++/58458
69         * doc/implement-cxx.texi: Fix references to the C++ standards.
70
71 2013-09-14  John David Anglin  <danglin@gcc.gnu.org>
72
73         PR target/58382
74         * config/pa/pa.c (pa_expand_prologue): Change mode in gen_rtx_POST_INC
75         calls to word_mode.
76
77 2013-09-12  Terry Guo  <terry.guo@arm.com>
78
79         Backport from mainline
80         2012-09-17  Richard Guenther  <rguenther@suse.de>
81
82         PR lto/54598
83         * tree-streamer-in.c (unpack_ts_real_cst_value_fields): Use ggc'ed
84         FIXED_VALUE_TYPE instead of struct fixed_value.
85
86 2013-09-10  Richard Earnshaw  <rearnsha@arm.com>
87
88         PR target/58361
89         * arm/vfp.md (combine_vcvt_f32_<FCVTI32typename>): Fix pattern to
90         support conditional execution.
91         (combine_vcvt_f64_<FCVTI32typename>): Likewise.
92
93 2013-09-01  Uros Bizjak  <ubizjak@gmail.com>
94
95         Backport from mainline
96         2013-08-31  Uros Bizjak  <ubizjak@gmail.com>
97
98         * config/alpha/alpha.c (alpha_emit_conditional_move): Update
99         "cmp" RTX before signed_comparison_operator check to account
100         for "code" changes.
101
102 2013-09-01  John David Anglin  <danglin@gcc.gnu.org>
103
104         * config/pa/pa.md: Allow "const 0" operand 1 in "scc" insns.
105
106 2013-09-01  Iain Sandoe  <iain@codesourcery.com>
107
108         Backported from 4.8
109         2012-06-19  Steven Bosscher  <steven@gcc.gnu.org>
110
111         * doc/tm.texi.in (TARGET_OBJC_DECLARE_UNRESOLVED_CLASS_REFERENCE,
112         TARGET_OBJC_DECLARE_CLASS_DEFINITION): Add @hooks.
113         (ASM_DECLARE_CLASS_REFERENCE, ASM_DECLARE_UNRESOLVED_REFERENCE):
114         Remove.
115         * doc/tm.texi: Regenerate.
116         * config/darwin.h (ASM_OUTPUT_LABELREF): Remove special case for
117         .objc_class_name_*.
118         * config/darwin-c.c: Include target.h.
119         (darwin_objc_declare_unresolved_class_reference): New function.
120         (darwin_objc_declare_class_definition): New function.
121         (TARGET_OBJC_DECLARE_UNRESOLVED_CLASS_REFERENCE): Define.
122         (TARGET_OBJC_DECLARE_CLASS_DEFINITION): Define.
123
124 2013-09-01  Iain Sandoe  <iain@codesourcery.com>
125
126         Backport from mainline:
127         2013-07-22  Uros Bizjak  <ubizjak@gmail.com>
128
129         * config/i386/i386.md (nonlocal_goto_receiver): Delete insn if
130         it is not needed after split.
131
132         2013-07-20  Iain Sandoe  <iain@codesourcery.com>
133
134         PR target/51784
135         * config/i386/i386.c (output_set_got) [TARGET_MACHO]: Adjust to emit a
136         second label for nonlocal goto receivers. Don't output pic base labels
137         unless we're producing PIC; mark that action unreachable().
138         (ix86_save_reg): If the function contains a nonlocal label, save the
139         PIC base reg.
140         * config/darwin-protos.h (machopic_should_output_picbase_label): New.
141         * gcc/config/darwin.c (emitted_pic_label_num): New GTY.
142         (update_pic_label_number_if_needed): New.
143         (machopic_output_function_base_name): Adjust for nonlocal receiver
144         case.
145         (machopic_should_output_picbase_label): New.
146         * config/i386/i386.md (enum unspecv): UNSPECV_NLGR: New.
147         (nonlocal_goto_receiver): New insn and split.
148
149 2013-08-28  Uros Bizjak  <ubizjak@gmail.com>
150
151         Backport from mainline
152         2013-08-27  Christian Widmer  <shadow@umbrox.de>
153
154         PR target/57927
155         * config/i386/driver-i386.c (host_detect_local_cpu): Add detection
156         of Ivy Bridge processors.
157
158 2013-08-21  Richard Earnshaw  <rearnsha@arm.com>
159
160         PR target/56979
161         * arm.c (aapcs_vfp_allocate): Decompose the argument if the
162         suggested mode for the assignment isn't compatible with the
163         registers required.
164
165 2013-08-17  Uros Bizjak  <ubizjak@gmail.com>
166
167         Backport from mainline
168         2013-08-12  Perez Read  <netfirewall@gmail.com>
169
170         PR target/58132
171         * config/i386/i386.md (*movabs<mode>_1):  Add <ptrsize> PTR before
172         operand 0 for intel asm alternative.
173         (*movabs<mode>_2): Ditto for operand 1.
174
175 2013-08-13  Marek Polacek  <polacek@redhat.com>
176
177         Backport from 4.8:
178         2013-0813  Marek Polacek  <polacek@redhat.com>
179                    Jakub Jelinek  <jakub@redhat.com>
180
181         PR tree-optimization/57980
182         * tree-tailcall.c (process_assignment): Return false
183         when not dealing with integers or floats.
184
185 2013-08-12  David Edelsohn  <dje.gcc@gmail.com>
186
187         Backport from mainline
188         2013-02-14  Steven Bosscher  <steven@gcc.gnu.org>
189
190         * collect2-aix.h: Define F_LOADONLY.
191
192 2013-08-02  Eric Botcazou  <ebotcazou@adacore.com>
193
194         * config/sparc/sparc.c (sparc_emit_membar_for_model) <SMM_TSO>: Add
195         the implied StoreLoad barrier for atomic operations if before.
196
197 2013-07-11  Georg-Johann Lay  <avr@gjlay.de>
198
199         Backport from 2013-07-11 trunk r200901.
200
201         PR target/57631
202         * config/avr/avr.c (avr_set_current_function): Sanity-check signal
203         name seen by assembler/linker if available.
204
205 2013-07-10  Georg-Johann Lay  <avr@gjlay.de>
206
207         Backport from 2013-07-10 trunk r200872.
208
209         PR target/57844
210         * config/avr/avr.c (avr_prologue_setup_frame): Trunk -size to mode
211         of my_fp.
212
213 2013-07-10  Uros Bizjak  <ubizjak@gmail.com>
214
215         Backport from mainline
216         2013-07-06  Uros Bizjak  <ubizjak@gmail.com>
217
218         * config/i386/sse.md (sse_movlhps): Change alternative 3
219         of operand 2 to "m".
220
221 2013-07-09  Joseph Myers  <joseph@codesourcery.com>
222
223         * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Only
224         adjust register size for TDmode and TFmode for VSX registers.
225
226 2013-07-08  Eric Botcazou  <ebotcazou@adacore.com>
227
228         * Makefile.in (tree-ssa-reassoc.o): Add dependency on $(PARAMS_H).
229
230 2013-07-08  Jakub Jelinek  <jakub@redhat.com>
231
232         PR rtl-optimization/57829
233         * simplify-rtx.c (simplify_binary_operation_1) <case IOR>: Ensure that
234         mask bits outside of mode are just sign-extension from mode to HWI.
235
236 2013-07-05  Uros Bizjak  <ubizjak@gmail.com>
237
238         Backport from mainline
239         2013-06-20  Uros Bizjak  <ubizjak@gmail.com>
240
241         PR target/57655
242         * config/i386/i386.c (construct_container): Report error if
243         long double is used with disabled x87 float returns.
244
245 2013-06-21  David Edelsohn  <dje.gcc@gmail.com>
246
247         Backport from mainline
248         2013-06-19  David Edelsohn  <dje.gcc@gmail.com>
249
250         PR driver/57652
251         * collect2.c (collect_atexit): New.
252         (collect_exit): Delete.
253         (main): Register collect_atexit with atexit.
254         (collect_wait): Change collect_exit to exit.
255         (do_wait): Same.
256         * collect2.h (collect_exit): Delete.
257         * tlink.c (do_tlink): Rename exit to ret. Change collect_exit to exit.
258
259 2013-06-07  Uros Bizjak  <ubizjak@gmail.com>
260
261         Backport from mainline
262         2013-06-10  Uros Bizjak  <ubizjak@gmail.com>
263
264         * config/alpha/alpha.c (alpha_emit_xfloating_compare): Also use
265         cmp_code to construct REG_EQUAL note.
266
267         Backport from mainline
268         2013-06-05  Uros Bizjak  <ubizjak@gmail.com>
269
270         * config/alpha/alpha.c (alpha_emit_conditional_move): Swap all
271         GE, GT, GEU and GTU compares, modulo DImode compares with zero.
272
273         Backport from mainline
274         2013-05-23  Uros Bizjak  <ubizjak@gmail.com>
275
276         PR target/57379
277         * config/alpha/alpha.md (unspec): Add UNSPEC_XFLT_COMPARE.
278         * config/alpha/alpha.c (alpha_emit_xfloating_compare): Construct
279         REG_EQUAL note as UNSPEC_XFLT_COMPARE unspec.
280
281 2013-06-09  Jakub Jelinek  <jakub@redhat.com>
282
283         PR target/57568
284         * config/i386/i386.md (TARGET_READ_MODIFY_WRITE peepholes): Ensure
285         that operands[2] doesn't overlap with operands[0].
286
287 2013-05-22  Uros Bizjak  <ubizjak@gmail.com>
288
289         PR target/57356
290         * config/i386/i386.md (*movti_internal_rex64): Emit movaps/movups
291         for non-sse2 targets.  Simplify mode attribute calculation.
292
293 2013-05-17  Uros Bizjak  <ubizjak@gmail.com>
294
295         Backport from mainline
296         2013-05-16  Uros Bizjak  <ubizjak@gmail.com>
297
298         * config/i386/driver-i386.c (host_detect_local_cpu): Determine
299         cache parameters using detect_caches_amd also for CYRIX,
300         NSC and TM2 signatures.
301
302         2013-05-16  Uros Bizjak  <ubizjak@gmail.com>
303                     Dzianis Kahanovich  <mahatma@eu.by>
304
305         PR target/45359
306         PR target/46396
307         * config/i386/driver-i386.c (host_detect_local_cpu): Detect
308         VIA/Centaur processors and determine their cache parameters
309         using detect_caches_amd.
310
311         2013-05-15  Uros Bizjak  <ubizjak@gmail.com>
312
313         * config/i386/i386.c (ix86_option_override_internal): Add
314         PTA_POPCNT to corei7 entry.
315
316 2013-05-14  Richard Biener  <rguenther@suse.de>
317
318         PR gcov-profile/57269
319         Backport from mainline
320         2012-06-30  Nathan Sidwell  <nathan@acm.org>
321
322         * coverage.c (coverage_init): Read counts file before writing
323         graph header.
324
325 2013-05-13  Uros Bizjak  <ubizjak@gmail.com>
326
327         PR target/57264
328         Backport from mainline
329         2013-01-22  Jakub Jelinek  <jakub@redhat.com>
330
331         PR target/55686
332         * config/i386/i386.md (UNSPEC_STOS): New.
333         (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1,
334         *strsetqi_1): Add UNSPEC_STOS.
335
336 2013-05-10  Joey Ye  <joey.ye@arm.com>
337
338         Backport from mainline
339         2012-11-29  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>
340
341         PR target/54974
342         * config/arm/arm.md (thumb2_pool_range, pool_range): Add comment on
343         Thumb pool ranges.
344         (thumb1_extendhisi2): Reduce Thumb pool range.
345         (arm_movdi): Likewise.
346         (thumb1_movdi_insn): Likewise.
347         (thumb1_movsi_insn): Likewise.
348         (pic_load_addr_unified): Likewise.
349         (pic_load_addr_32bit): Likewise.
350         (pic_load_addr_thumb1): Likewise.
351         (thumb1_movhf): Likewise.
352         (arm_movsf_soft_insn): Likewise.
353         (thumb1_movsf_soft_insn): Likewise.
354         (movdf_soft_insn): Likewise.
355         (thumb1_movdf_soft_insn): Likewise.
356         * config/arm/neon.md (*neon_mov<mode>): Likewise.
357         (*neon_mov<mode>): Likwise.
358         * config/arm/thumb2.md: (*thumb2_movsi_insn): Likewise.
359         (*thumb2_movhi_insn): Likewise.
360         (*thumb2_extendqisi_v6): Likewise.
361         (*thumb2_zero_extendqisi_v6): Likewise.
362         (*thumb2_zero_extendqisi2_v6): Likewise.
363         * config/arm/vfp.md: (*thumb2_movsi_vfp): Likewise.
364         (*movdi_vfp): Likewise.
365         (*movdi_vfp_cortexa8): Likewise.
366         (*thumb2_movsf_vfp): Likewise.
367         (*thumb2_movdf_vfp): Likewise.
368
369 2013-05-10  Sebastian Huber  <sebastian.huber@embedded-brains.de>
370
371         * config/arm/t-rtems-eabi: Remove mthumb/march=armv7 multilib.
372         Add mthumb/march=armv7-a multilib.
373         Add mthumb/march=armv7-r multilib.
374         Add mthumb/march=armv7-a/mfpu=neon/mfloat-abi=hard multilib.
375
376 2013-05-10  Ralf Corsépius  <ralf.corsepius@rtems.org>
377
378         PR target/57237
379         * config/v850/t-rtems: Add more multilibs.
380
381 2013-05-07  Michael Meissner  <meissner@linux.vnet.ibm.com>
382
383         Backport from trunk
384         2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
385
386         PR target/57150
387         * config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Use DFmode
388         to save TFmode registers and DImode to save TImode registers for
389         caller save operations.
390         (HARD_REGNO_CALL_PART_CLOBBERED): TFmode and TDmode do not need to
391         mark being partially clobbered since they only use the first
392         double word.
393
394         * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): TFmode
395         and TDmode only use the upper 64-bits of each VSX register.
396
397 2013-05-03  Marek Polacek  <polacek@redhat.com>
398
399         Backport from mainline
400         2013-04-25  Marek Polacek  <polacek@redhat.com>
401
402         PR tree-optimization/57066
403         * builtins.c (fold_builtin_logb): Return +Inf for -Inf.
404
405 2013-04-30  Uros Bizjak  <ubizjak@gmail.com>
406
407         Backport from mainline
408         2013-04-29  Uros Bizjak  <ubizjak@gmail.com>
409
410         PR target/44578
411         * config/i386/i386.md (*zero_extendsidi2_rex64): Add "!" to m->?*y
412         alternative.
413         (*zero_extendsidi2): Ditto.
414
415         Backport from mainline
416         2013-04-29  Uros Bizjak  <ubizjak@gmail.com>
417
418         PR target/57098
419         * config/i386/i386.c (ix86_expand_vec_perm): Validize constant memory.
420
421 2013-04-29  Christian Bruel  <christian.bruel@st.com>
422
423         PR target/57108
424         * sh.md (tstsi_t_zero_extract_eq): Set mode for operand 0.
425
426 2013-04-27  Jakub Jelinek  <jakub@redhat.com>
427
428         PR target/56866
429         * config/i386/sse.md (xop_rotr<mode>3): Fix up computation of
430         the immediate rotate count.
431
432 2013-04-21  Eric Botcazou  <ebotcazou@adacore.com>
433
434         * cfgexpand.c (avoid_complex_debug_insns): Fix C++ism.
435
436 2013-04-19  Matthias Klose  <doko@ubuntu.com>
437
438         PR middle-end/56848
439         Re-apply
440         2013-04-01  Andrey Belevantsev  <abel@ispras.ru>
441
442         Backport from mainline
443         2013-02-25  Andrey Belevantsev  <abel@ispras.ru>
444         Alexander Monakov  <amonakov@ispras.ru>
445
446         PR middle-end/56077
447         * sched-deps.c (sched_analyze_insn): When reg_pending_barrier,
448         flush pending lists also on non-jumps.  Adjust comment.
449
450         Backport from 4.8:
451         2012-08-27  Maxim Kuvyrkov  <maxim@codesourcery.com>
452
453         * sched-deps.c (add_dependence_list_and_free): Simplify.
454         (flush_pending_list_and_free): Fix a hack that was fixing a hack.  Free
455         lists when add_dependence_list_and_free doesn't free them.
456
457 2013-04-19  Marek Polacek  <polacek@redhat.com>
458
459         Backport from mainline
460         2013-01-08  Steven Bosscher  <steven@gcc.gnu.org>
461                     Jakub Jelinek  <jakub@redhat.com>
462
463         PR tree-optimization/48189
464         * predict.c (predict_loops): If max is 0, don't call compare_tree_int.
465         If nitercst is 0, don't predict the exit edge.
466
467 2013-04-16  Jack Howarth  <howarth@bromo.med.uc.edu>
468
469         Backport from mainline
470         2012-05-29  Jack Howarth  <howarth@bromo.med.uc.edu>
471         * config/darwin.h (STARTFILE_SPEC): Use -no_new_main with -lgcrt1.o
472         on Darwin >= 12.
473         (DARWIN_CRT1_SPEC): Use -lcrt1.10.6.o when Darwin >= 10 and < 12.
474
475
476         2012-05-29  Jack Howarth  <howarth@bromo.med.uc.edu>
477         PR debug/53453
478         * doc/tm.texi: Update.
479         * doc/tm.texi.in (SDB and DWARF) <TARGET_FORCE_AT_COMP_DIR>: Add @hook.
480         * target.def (force_at_comp_dir): New hook.
481         * config/darwin.h (TARGET_FORCE_AT_COMP_DIR): Define.
482         * dwarf2out.c (dwarf2out_finish): Check targetm.force_at_comp_dir.
483
484 2013-04-15  Eric Botcazou  <ebotcazou@adacore.com>
485
486         PR target/56890
487         * config/sparc/sparc.c (enum sparc_mode_class): Add H_MODE value.
488         (S_MODES): Set H_MODE bit.
489         (SF_MODES): Set only S_MODE and SF_MODE bits.
490         (DF_MODES): Set SF_MODES and only D_MODE and DF_MODE bits.
491         (sparc_init_modes) <MODE_INT>: Set H_MODE bit for sub-word modes.
492         <MODE_VECTOR_INT>: Do not set SF_MODE for sub-word modes.
493         <MODE_FLOAT>: Likewise.
494
495 2013-04-13  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
496
497         Backport from mainline:
498         2013-04-06  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
499
500         PR target/55487
501         * config/pa/pa.c (legitimize_pic_address): Before incrementing label
502         nuses, make sure we have a label.
503
504 2013-04-11  Richard Biener  <rguenther@suse.de>
505
506         * BASE-VER: Set to 4.7.4.
507         * DEV-PHASE: Set to prerelease.
508
509 2013-04-11  Release Manager
510
511         * GCC 4.7.3 released.
512
513 2013-04-10  David S. Miller  <davem@davemloft.net>
514
515         * config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=supersparc
516         or -mcpu=hypersparc.
517
518 2013-04-05  Eric Botcazou  <ebotcazou@adacore.com>
519
520         PR middle-end/56848
521         Revert
522         2013-04-01  Andrey Belevantsev  <abel@ispras.ru>
523
524         Backport from mainline
525         2013-02-25  Andrey Belevantsev  <abel@ispras.ru>
526         Alexander Monakov  <amonakov@ispras.ru>
527
528         PR middle-end/56077
529         * sched-deps.c (sched_analyze_insn): When reg_pending_barrier,
530         flush pending lists also on non-jumps.  Adjust comment.
531
532 2013-04-03  Richard Biener  <rguenther@suse.de>
533
534         PR tree-optimization/56501
535         * tree-switch-conversion.c (check_process_case): Properly
536         handle !single_succ_p case.
537
538 2013-04-03  Jakub Jelinek  <jakub@redhat.com>
539
540         Backported from mainline
541         2013-03-06  Jakub Jelinek  <jakub@redhat.com>
542
543         PR tree-optimization/56539
544         * tree-tailcall.c (adjust_return_value_with_ops): Use GSI_SAME_STMT
545         instead of GSI_CONTINUE_LINKING as last argument to
546         force_gimple_operand_gsi.  Adjust function comment.
547
548         2013-03-05  Jakub Jelinek  <jakub@redhat.com>
549
550         PR debug/56510
551         * cfgexpand.c (expand_debug_parm_decl): Call copy_rtx on incoming.
552         (avoid_complex_debug_insns): New function.
553         (expand_debug_locations): Call it.
554
555 2013-04-02  Wei Mi  <wmi@google.com>
556
557         * config/i386/i386.c (ix86_rtx_costs): Set proper rtx cost for
558         ashl<mode>3_mask, *<shift_insn><mode>3_mask and
559         *<rotate_insn><mode>3_mask in i386.md.
560
561 2013-04-02  Richard Biener  <rguenther@suse.de>
562
563         PR middle-end/56768
564         Backport from mainline
565         2012-05-16  Richard Guenther  <rguenther@suse.de>
566
567         * tree-inline.c (declare_return_variable): Properly handle
568         DECL_BY_REFERENCE return vars in SSA form.
569
570 2013-04-01  Wei Mi  <wmi@google.com>
571
572         * config/i386/i386.md (*ashl<mode>3_mask): Rewrite as define_insn.
573         Truncate operand 2 using %b asm operand modifier.
574         (*<shift_insn><mode>3_mask): Ditto.
575         (*<rotate_insn><mode>3_mask): Ditto.
576
577 2013-04-01  Uros Bizjak  <ubizjak@gmail.com>
578
579         * config/i386/i386.md (*movsf_internal): Change type of
580         alternatives 3,4 to imov.
581
582 2013-04-01  Andrey Belevantsev  <abel@ispras.ru>
583
584         Backport from mainline
585         2013-02-27  Andrey Belevantsev  <abel@ispras.ru>
586
587         PR middle-end/45472
588         * sel-sched-ir.c (merge_expr): Also change vinsn of merged expr
589         when the may_trap_p bit of the exprs being merged differs.
590         Reorder tests for speculativeness in the logical and operator.
591
592         Backport from mainline
593          2013-03-05  Jakub Jelinek  <jakub@redhat.com>
594
595         PR middle-end/56461
596         * sel-sched-ir.c (free_sched_pools): Release
597         succs_info_pool.stack[succs_info_pool.max_top] vectors too
598         if succs_info_pool.max_top isn't -1.
599
600 2013-04-01  Andrey Belevantsev  <abel@ispras.ru>
601
602         Backport from mainline
603         2012-02-19  Andrey Belevantsev  <abel@ispras.ru>
604
605         PR middle-end/55889
606         * sel-sched.c: Include ira.h.
607         (implicit_clobber_conflict_p): New function.
608         (moveup_expr): Use it.
609         * Makefile.in (sel-sched.o): Depend on ira.h.
610
611 2013-04-01  Andrey Belevantsev  <abel@ispras.ru>
612
613         Backport from mainline
614         2013-02-25  Andrey Belevantsev  <abel@ispras.ru>
615         Alexander Monakov  <amonakov@ispras.ru>
616
617         PR middle-end/56077
618         * sched-deps.c (sched_analyze_insn): When reg_pending_barrier,
619         flush pending lists also on non-jumps.  Adjust comment.
620
621 2013-03-30  Gerald Pfeifer  <gerald@pfeifer.com>
622
623         * doc/invoke.texi (AVR Options): Tweak link for AVR-LibC user manual.
624         * doc/extend.texi (Named Address Spaces): Ditto.
625         (Variable Attributes): Ditto.
626
627 2013-03-28  Eric Botcazou  <ebotcazou@adacore.com>
628
629         * toplev.c (process_options): Do not disable -fomit-frame-pointer on a
630         general basis if unwind info is requested and ACCUMULATE_OUTGOING_ARGS
631         is not enabled.
632
633 2013-03-27  Walter Lee  <walt@tilera.com>
634
635         Backport from mainline:
636         2013-03-27  Walter Lee  <walt@tilera.com>
637
638         * config/tilegx/tilegx.c (tilegx_expand_prologue): Avoid
639         double-decrement of next_scratch_regno.
640
641 2013-03-27  Walter Lee  <walt@tilera.com>
642
643         Backport from mainline:
644         2013-03-27  Walter Lee  <walt@tilera.com>
645
646         * config/tilegx/tilegx.md (insn_v1mulu): Fix predicates on
647         input operands.
648         (insn_v1mulus): Ditto.
649         (insn_v2muls): Ditto.
650
651 2013-03-27  Walter Lee  <walt@tilera.com>
652
653         Backport from mainline:
654         2013-03-27  Walter Lee  <walt@tilera.com>
655
656         * config/tilegx/tilegx.h (ASM_OUTPUT_ADDR_VEC_ELT): Delete
657         extra tab.
658         (ASM_OUTPUT_ADDR_DIFF_ELT): Ditto.
659
660 2013-03-27  Walter Lee  <walt@tilera.com>
661
662         Backport from mainline:
663         2013-03-27  Walter Lee  <walt@tilera.com>
664
665         * config/tilegx/tilegx.md (*sibcall_insn): Fix type atribute
666         for jr.
667         (*sibcall_value): Ditto.
668
669 2013-03-27  Walter Lee  <walt@tilera.com>
670
671         Backport from mainline:
672         2013-03-27  Walter Lee  <walt@tilera.com>
673
674         * config/tilegx/tilegx.md (insn_mnz_<mode>): Replaced by ...
675         (insn_mnz_v8qi): ... this ...
676         (insn_mnz_v4hi): ... and this.  Replace (const_int 0) with the
677         vector equivalent.
678         (insn_v<n>mnz): Replaced by ...
679         (insn_v1mnz): ... this ...
680         (insn_v2mnz): ... and this.  Replace (const_int 0) with the vector
681         equivalent.
682         (insn_mz_<mode>): Replaced by ...
683         (insn_mz_v8qi): ... this ...
684         (insn_mz_v4hi): ... and this.  Replace (const_int 0) with the
685         vector equivalent.
686         (insn_v<n>mz): Replaced by ...
687         (insn_v1mz): ... this ...
688         (insn_v2mz): ... and this.  Replace (const_int 0) with the vector
689         equivalent.
690
691 2013-03-26  Eric Botcazou  <ebotcazou@adacore.com>
692
693         * doc/invoke.texi (SPARC options): Remove -mlittle-endian.
694
695 2013-03-26  Richard Biener  <rguenther@suse.de>
696
697         Backport from mainline:
698         2013-03-13  Richard Biener  <rguenther@suse.de>
699
700         PR tree-optimization/56608
701         * tree-vect-slp.c (vect_schedule_slp): Do not remove scalar
702         calls when vectorizing basic-blocks.
703
704         2013-03-05  Richard Biener  <rguenther@suse.de>
705
706         PR tree-optimization/56270
707         * tree-vect-slp.c (vect_schedule_slp): Clear vectorized stmts
708         of loads after scheduling an SLP instance.
709
710 2013-03-26  Walter Lee  <walt@tilera.com>
711
712         Backport from mainline:
713         2013-03-26  Walter Lee  <walt@tilera.com>
714
715         * config/tilegx/tilegx.h (PROFILE_BEFORE_PROLOGUE): Define.
716         * config/tilegx/tilepro.h (PROFILE_BEFORE_PROLOGUE): Define.
717
718 2013-03-26  Walter Lee  <walt@tilera.com>
719
720         Backport from mainline:
721         2013-03-25  Walter Lee  <walt@tilera.com>
722
723         * config/tilegx/tilegx-builtins.h (enum tilegx_builtin): Add
724         TILEGX_INSN_SHUFFLEBYTES1.
725         * config/tilegx/tilegx.c (tilegx_builtin_info): Add entry for
726         shufflebytes1.
727         (tilegx_builtins): Ditto.
728         * config/tilegx/tilegx.md (insn_shufflebytes1): New pattern.
729
730 2013-03-26  Walter Lee  <walt@tilera.com>
731
732         Backport from mainline:
733         2013-03-25  Walter Lee  <walt@tilera.com>
734
735         * config/tilegx/tilegx.c (expand_set_cint64_one_inst): Inline
736         tests for constraint J, K, N, P.
737
738 2013-03-26  Walter Lee  <walt@tilera.com>
739
740         Backport from mainline:
741         2013-03-25  Walter Lee  <walt@tilera.com>
742
743         * config/tilegx/tilegx.c (tilegx_asm_preferred_eh_data_format):
744         Use indirect/pcrel encoding.
745         * config/tilepro/tilepro.c (tilepro_asm_preferred_eh_data_format):
746         Ditto.
747
748 2013-03-25  Oleg Endo  <olegendo@gcc.gnu.org>
749
750         Backport from mainline:
751         2013-03-13  Oleg Endo  <olegendo@gcc.gnu.org>
752         2013-03-14  Kaz Kojima  <kkojima@gcc.gnu.org>
753
754         PR target/49880
755         * config/sh/sh.opt (FPU_SINGLE_ONLY): New mask.
756         (musermode): Convert to Var(TARGET_USERMODE).
757         * config/sh/sh.h (SELECT_SH2A_SINGLE_ONLY, SELECT_SH4_SINGLE_ONLY,
758         MASK_ARCH): Add MASK_FPU_SINGLE_ONLY.
759         * config/sh/sh.c (sh_option_override): Use
760         TARGET_FPU_DOUBLE || TARGET_FPU_SINGLE_ONLY for call-fp case.
761         * config/sh/sh.md (udivsi3_i1, divsi3_i1): Remove ! TARGET_SH4
762         condition.
763         (udivsi3_i4, divsi3_i4): Use TARGET_FPU_DOUBLE condition instead of
764         TARGET_SH4.
765         (udivsi3_i4_single, divsi3_i4_single): Use
766         TARGET_FPU_SINGLE_ONLY || TARGET_FPU_DOUBLE instead of TARGET_HARD_SH4.
767         * config/sh/linux.h (TARGET_DEFAULT): Remove MASK_USERMODE.
768         (SUBTARGET_OVERRIDE_OPTIONS): Set TARGET_USERMODE as default.
769         * config/sh/netbsd-elf.h (TARGET_DEFAULT): Remove MASK_USERMODE.
770         (SUBTARGET_OVERRIDE_OPTIONS): New.
771
772 2013-03-25  Oleg Endo  <olegendo@gcc.gnu.org>
773
774         Backport from mainline:
775         2012-04-03  Kaz Kojima  <kkojima@gcc.gnu.org>
776
777         * config/sh/t-sh (MULTILIB_MATCHES): Match m2a-single-only
778         to m2a-single instead of m2e.
779
780 2013-03-22  H.J. Lu  <hongjiu.lu@intel.com>
781
782         PR target/56560
783         * config/i386/i386.h (ix86_args): Define only if USED_FOR_TARGET
784         isn't defined.
785
786 2013-03-22  H.J. Lu  <hongjiu.lu@intel.com>
787
788         PR target/56560
789         * config/i386/i386.c (init_cumulative_args): Also set
790         cum->callee_return_avx256_p.
791         (ix86_function_arg): Set cum->callee_pass_avx256_p.  Set
792         cfun->machine->callee_pass_avx256_p only when MODE == VOIDmode.
793
794         * config/i386/i386.h (ix86_args): Add callee_pass_avx256_p and
795         callee_return_avx256_p.
796
797 2013-03-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
798
799         Backport from mainline:
800         2012-12-04  Ian Lance Taylor  <iant@google.com>
801
802         * godump.c (find_dummy_types): Output a dummy type if we couldn't
803         output the real type.
804
805 2013-03-20  Jack Howarth  <howarth@bromo.med.uc.edu>
806
807         PR bootstrap/56258
808         * doc/generic.texi (POINTER_PLUS_EXPR): Use @item instead of @itemx.
809         (PLUS_EXPR): Likewise.
810         * doc/cppopts.texi (--help): Likewise.
811         * doc/invoke.texi (-fenable-@var{kind}-@var{pass}): Likewise.
812         (-fdump-rtl-cprop_hardreg): Likewise.
813         (-fdump-rtl-csa): Likewise.
814         (-fdump-rtl-dce): Likewise.
815         (-fdump-rtl-dbr): Likewise.
816         (-fdump-rtl-into_cfglayout): Likewise.
817         (-fdump-rtl-outof_cfglayout): Likewise.
818
819 2013-03-18  Richard Earnshaw  <rearnsha@arm.com>
820
821         PR target/56470
822         * config/arm/arm.c (shift_op): Validate RTL pattern on the fly.
823         (arm_print_operand, case 'S'): Don't use shift_operator to validate
824         the RTL.
825
826 2013-03-14  Seth LaForge  <sethml@google.com>
827
828         PR target/56351
829         Backport from mainline
830         2012-10-22  Julian Brown  <julian@codesourcery.com>
831
832         * config/arm/arm.h (CANNOT_CHANGE_MODE_CLASS): Avoid subreg'ing
833         VFP D registers in big-endian mode.
834
835 2013-03-08  Joey Ye  <joey.ye@arm.com>
836
837         Backport from mainline
838         2013-03-06  Joey Ye  <joey.ye@arm.com>
839
840         PR lto/50293
841         * gcc.c (convert_white_space): New function.
842         (main): Handles white space in function name.
843
844 2013-03-06  Oleg Endo  <olegendo@gcc.gnu.org>
845
846         Backport from mainline
847         2013-03-06  Oleg Endo  <olegendo@gcc.gnu.org>
848
849         PR target/56529
850         * config/sh/sh.c (sh_option_override): Check for TARGET_DYNSHIFT
851         instead of TARGET_SH2 for call-table case.  Do not set sh_div_strategy
852         to SH_DIV_CALL_TABLE for TARGET_SH2.
853         * config.gcc (sh_multilibs): Add m2 and m2a to sh*-*-linux* multilib
854         list.
855         * doc/invoke.texi (SH options): Use table for mdiv= option.  Document
856         mdiv= call-div1, call-fp, call-table options.
857
858 2013-03-06  Sebastian Huber <sebastian.huber@embedded-brains.de>
859
860         * config.gcc (arm*-*-rtemself*): New.
861         (arm*-*-rtems*): Removed.
862         (arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtemseabi*): Rename
863         "arm*-*-rtemseabi*" to "arm*-*-rtems*".
864
865 2013-03-01  Richard Biener  <rguenther@suse.de>
866
867         Backport from mainline
868         2012-12-12  Zdenek Dvorak  <ook@ucw.cz>
869
870         PR tree-optimization/55481
871         * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Fall
872         back to general rewriting if we cannot leave an original biv
873         definition alone.
874
875 2013-03-01  Richard Biener  <rguenther@suse.de>
876
877         Backport from mainline
878         2012-04-10  Richard Guenther  <rguenther@suse.de>
879
880         PR middle-end/52888
881         * gimple-low.c (gimple_check_call_args): Properly account for
882         compatible aggregate types.
883
884 2013-02-26  Nick Clifton  <nickc@redhat.com>
885
886         PR target/56453
887         Import this patch from the mainline:
888
889         2012-08-17  Nick Clifton  <nickc@redhat.com>
890
891         * config/fr30/fr30.md (cbranchsi4): Remove mode from comparison.
892         (branch_true): Likewise.
893         (branch_false): Likewise.
894
895 2013-02-26  Jakub Jelinek  <jakub@redhat.com>
896
897         PR tree-optimization/56443
898         * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): For
899         overaligned types, pass TYPE_UNSIGNED (scalar_type) as second argument
900         to type_for_mode langhook.
901
902 2013-02-21  Jakub Jelinek  <jakub@redhat.com>
903
904         PR bootstrap/56258
905         * doc/invoke.texi (-fdump-rtl-pro_and_epilogue): Use @item
906         instead of @itemx.
907
908 2013-02-19  Jakub Jelinek  <jakub@redhat.com>
909
910         Backported from mainline
911         2013-02-19  Jakub Jelinek  <jakub@redhat.com>
912
913         PR tree-optimization/56350
914         * tree-vect-loop.c (vectorizable_reduction): If orig_stmt, return false
915         if haven't found reduction or nested cycle operand, rather than
916         asserting we must find it.
917
918         PR tree-optimization/56381
919         * tree-ssa-pre.c (create_expression_by_pieces): Fix up last argument
920         to fold_build3.
921
922         2013-02-08  Jakub Jelinek  <jakub@redhat.com>
923
924         PR tree-optimization/56250
925         * fold-const.c (extract_muldiv_1) <case NEGATE_EXPR>: Don't optimize
926         if type is unsigned and code isn't MULT_EXPR.
927
928         2013-02-06  Jakub Jelinek  <jakub@redhat.com>
929
930         PR middle-end/56217
931         * omp-low.c (use_pointer_for_field): Return false if
932         lower_send_shared_vars doesn't generate any copy-out code.
933
934         2012-11-27  Jakub Jelinek  <jakub@redhat.com>
935
936         PR tree-optimization/55110
937         * tree-vect-loop.c (vectorizable_reduction): Don't assert
938         that STMT_VINFO_RELATED_STMT of orig_stmt is stmt.
939
940 2013-02-18  Richard Biener  <rguenther@suse.de>
941
942         Revert
943         2013-02-04  Richard Biener  <rguenther@suse.de>
944
945         Backport from mainline
946         2012-07-04  Richard Guenther  <rguenther@suse.de>
947
948         PR tree-optimization/53844
949         * tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
950         the loop virtual PHI.
951
952 2013-02-13  David S. Miller  <davem@davemloft.net>
953
954         * expmed.c (expand_shift_1): Only strip scalar integer subregs.
955
956 2013-02-11  Uros Bizjak  <ubizjak@gmail.com>
957
958         Backport from mainline
959         2013-02-11  Uros Bizjak  <ubizjak@gmail.com>
960
961         PR rtl-optimization/56275
962         * simplify-rtx.c (avoid_constant_pool_reference): Check that
963         offset is non-negative and less than cmode size before
964         calling simplify_subreg.
965
966 2013-02-09  Uros Bizjak  <ubizjak@gmail.com>
967
968         Backport from mainline
969         2013-02-08  Uros Bizjak  <ubizjak@gmail.com>
970
971         * config/i386/sse.md (FMAMODEM): New mode iterator.
972         (fma<mode>4, fms<mode>4, fnma<mode>4, fnms<mode>4): Use FMAMODEM
973         mode iterator. Do not use TARGET_SSE_MATH in insn constraint.
974
975         2013-02-08  Uros Bizjak  <ubizjak@gmail.com>
976
977         * config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Define only
978         when HAVE_GAS_CFI_PERSONALITY_DIRECTIVE is set.
979         * config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): Ditto.
980
981 2013-02-08  Michael Meissner  <meissner@linux.vnet.ibm.com>
982
983         Backport from mainline
984         2013-02-08  Michael Meissner  <meissner@linux.vnet.ibm.com>
985
986         PR target/56043
987         * config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass):
988         If there is no implicit builtin declaration, just return NULL.
989
990 2013-02-08  David Edelsohn  <dje.gcc@gmail.com>
991             Michael Meissner  <meissner@linux.vnet.ibm.com>
992
993         Backport from mainline
994         * config/rs6000/rs6000.c (rs6000_option_override_internal): Clear
995         MASK_VSX from set_masks if OS_MISSING_ALTIVEC.
996
997 2013-02-07  David S. Miller  <davem@davemloft.net>
998
999         * dwarf2out.c (based_loc_descr): Perform leaf register remapping
1000         on 'reg'.
1001         * var-tracking.c (vt_add_function_parameter): Test the presence of
1002         HAVE_window_save properly and do not remap argument registers when
1003         we have a leaf function.
1004
1005 2013-02-07  Uros Bizjak  <ubizjak@gmail.com>
1006
1007         Backport from mainline
1008         2013-02-07  Uros Bizjak  <ubizjak@gmail.com>
1009
1010         PR bootstrap/56227
1011         * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT
1012         instead of "ll".
1013         * config/i386/i386.c (ix86_print_operand): Ditto.
1014
1015 2013-02-07  Alan Modra  <amodra@gmail.com>
1016
1017         PR target/53040
1018         * config/rs6000/rs6000.c (rs6000_savres_strategy): When using
1019         static chain, set REST_INLINE_FPRS too.
1020
1021 2013-02-06  David Edelsohn  <dje.gcc@gmail.com>
1022
1023         Backport from mainline
1024         2013-01-25  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
1025
1026         * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
1027         * configure: Regenerate.
1028
1029 2013-02-05  David Edelsohn  <dje.gcc@gmail.com>
1030
1031         Backport from mainline
1032         2013-02-03  David Edelsohn  <dje.gcc@gmail.com>
1033                     Andrew Dixie  <andrewd@gentrack.com>
1034
1035         * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY
1036         flag set.
1037
1038 2013-02-05  Richard Biener  <rguenther@suse.de>
1039
1040         Backport from mainline
1041         2012-12-10  Richard Biener  <rguenther@suse.de>
1042
1043         PR tree-optimization/55107
1044         * tree-ssa-pre.c (struct pre_stats): Remove constified field.
1045         (bitmap_set_replace_value): Add gcc_unreachable.
1046         (do_regular_insertion): Re-write all_same handling.  Insert
1047         an assignment instead of a PHI in this case.
1048         (execute_pre): Do not record constified events.
1049
1050 2013-02-05  Richard Biener  <rguenther@suse.de>
1051
1052         PR tree-optimization/54767
1053         * tree-vrp.c (vrp_visit_phi_node): For PHI arguments coming via
1054         backedges drop all symbolical range information.
1055         (execute_vrp): Compute backedges.
1056
1057 2013-02-04  Richard Biener  <rguenther@suse.de>
1058
1059         Backport from mainline
1060         2012-01-11  Richard Guenther  <rguenther@suse.de>
1061
1062         PR tree-optimization/44061
1063         * tree-vrp.c (extract_range_basic): Compute zero as
1064         value-range for __builtin_constant_p of function parameters.
1065
1066         2013-01-08  Jakub Jelinek  <jakub@redhat.com>
1067
1068         PR middle-end/55890
1069         * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_class_p.
1070
1071 2013-02-04  Richard Biener  <rguenther@suse.de>
1072
1073         Backport from mainline
1074         2012-07-04  Richard Guenther  <rguenther@suse.de>
1075
1076         PR tree-optimization/53844
1077         * tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
1078         the loop virtual PHI.
1079
1080         2012-12-13  Richard Biener  <rguenther@suse.de>
1081
1082         PR lto/55660
1083         * tree-streamer.c (record_common_node): Check that we are not
1084         recursively pre-loading nodes we want to skip.  Handle
1085         char_type_node appearing as part of va_list_type_node.
1086
1087 2013-02-04  Richard Biener  <rguenther@suse.de>
1088
1089         PR middle-end/55890
1090         * gimple.h (gimple_call_builtin_class_p): New function.
1091         * gimple.c (validate_call): New function.
1092         (gimple_call_builtin_class_p): Likewise.
1093         * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
1094         Use gimple_call_builtin_class_p.
1095         (find_func_clobbers): Likewise.
1096         * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
1097         (strlen_optimize_stmt): Likewise.
1098
1099 2013-02-01  Jakub Jelinek  <jakub@redhat.com>
1100
1101         Backported from mainline
1102         2013-01-28  Jakub Jelinek  <jakub@redhat.com>
1103
1104         PR tree-optimization/56125
1105         * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
1106         pow(x,c) into sqrt(x) * powi(x, n/2) or
1107         1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
1108         optimizing for size.
1109         Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
1110         1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
1111         integer.
1112
1113         2013-01-25  Jakub Jelinek  <jakub@redhat.com>
1114
1115         PR tree-optimization/56098
1116         * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
1117         for stmts with volatile ops.
1118         (cond_store_replacement): Don't optimize if assign has volatile ops.
1119         (cond_if_else_store_replacement_1): Don't optimize if either
1120         then_assign or else_assign have volatile ops.
1121
1122         2013-01-23  Jakub Jelinek  <jakub@redhat.com>
1123
1124         PR target/49069
1125         * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
1126         instead of cmpdi_operand for first comparison operand.
1127         Don't assert that comparison operands aren't both constants.
1128
1129         2013-01-21  Jakub Jelinek  <jakub@redhat.com>
1130
1131         PR tree-optimization/56051
1132         * fold-const.c (fold_binary_loc): Don't fold
1133         X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
1134         a narrowing conversion, or widening conversion from signed
1135         to unsigned.
1136
1137         2013-01-18  Jakub Jelinek  <jakub@redhat.com>
1138
1139         PR middle-end/56015
1140         * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
1141         the case where writing real complex part of target modifies
1142         op1.
1143
1144         2013-01-15  Jakub Jelinek  <jakub@redhat.com>
1145
1146         PR target/55940
1147         * function.c (thread_prologue_and_epilogue_insns): Always
1148         add crtl->drap_reg to set_up_by_prologue.set, even if
1149         stack_realign_drap is false.
1150
1151         2013-01-10  Jakub Jelinek  <jakub@redhat.com>
1152
1153         PR tree-optimization/55921
1154         * tree-complex.c (expand_complex_asm): New function.
1155         (expand_complex_operations_1): Call it for GIMPLE_ASM.
1156
1157         2013-01-03  Jakub Jelinek  <jakub@redhat.com>
1158
1159         PR rtl-optimization/55838
1160         * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
1161         iv0.step, iv1.step and step.
1162
1163         2012-11-23  Jakub Jelinek  <jakub@redhat.com>
1164
1165         PR c++/54046
1166         * Makefile.in (gimple-low.o): Depend on langhooks.h.
1167         * gimple-low.c: Include langhooks.c.
1168         (block_may_fallthru): Handle TARGET_EXPR and ERROR_MARK,
1169         by default call lang_hooks.block_may_fallthru.
1170         * langhooks.h (struct lang_hooks): Add block_may_fallthru
1171         langhook.
1172         * langhooks-def.h (LANG_HOOKS_BLOCK_MAY_FALLTHRU): Define.
1173         (LANG_HOOKS_INITIALIZER): Use it.
1174
1175         2012-11-20  Jakub Jelinek  <jakub@redhat.com>
1176
1177         PR middle-end/55094
1178         * builtins.c (expand_builtin_trap): Add REG_ARGS_SIZE note
1179         on the trap insn for !ACCUMULATE_OUTGOING_ARGS.
1180         * cfgcleanup.c (outgoing_edges_match): Don't look at debug insns
1181         on the first old_insns_match_p call.  For !ACCUMULATE_OUTGOING_ARGS
1182         fail if the last real insn doesn't have REG_ARGS_SIZE note.
1183
1184         2012-11-17  Jakub Jelinek  <jakub@redhat.com>
1185
1186         PR tree-optimization/55236
1187         * fold-const.c (make_range_step) <case NEGATE_EXPR>: For -fwrapv
1188         and signed ARG0_TYPE, force low and high to be non-NULL.
1189
1190         2012-11-13  Jakub Jelinek  <jakub@redhat.com>
1191
1192         PR rtl-optimization/54127
1193         * cfgrtl.c (force_nonfallthru_and_redirect): When redirecting
1194         asm goto labels from BB_HEAD (e->dest) to target bb, decrement
1195         LABEL_NUSES of BB_HEAD (e->dest) and increment LABEL_NUSES of
1196         BB_HEAD (target) appropriately and adjust JUMP_LABEL and/or
1197         REG_LABEL_TARGET and REG_LABEL_OPERAND.
1198
1199 2013-02-01  Eric Botcazou  <ebotcazou@adacore.com>
1200
1201         * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the
1202         range isn't testing for zero.
1203
1204 2013-01-29  Richard Biener  <rguenther@suse.de>
1205
1206         PR tree-optimization/56113
1207         * tree-ssa-structalias.c (equiv_class_lookup): Also return
1208         the bitmap leader.
1209         (label_visit): Free duplicate bitmaps and record the leader instead.
1210         (perform_var_substitution): Adjust.
1211
1212 2013-01-28  Serowk  <serowk@yandex.ru>
1213
1214         PR target/35294
1215         * config/arm/arm.c (arm_expand_binop_builtin): Add new parameter.
1216         Fix mode checks to allow for the passing of constants in the
1217         second parameter.
1218         (arm_expand_builtin): Adjust calls to arm_expand_binop_builtin.
1219         Add entries in the switch statement for builtin iwmmxt vector
1220         shift and rotate builtins.
1221
1222 2013-01-27  Uros Bizjak  <ubizjak@gmail.com>
1223
1224         Backport from mainline
1225         2013-01-27  Uros Bizjak  <ubizjak@gmail.com>
1226
1227         PR target/56114
1228         * config/i386/i386.md (*movabs<mode>_1): Add square brackets around
1229         operand 0 in movabs insn template for -masm=intel asm alternative.
1230         (*movabs<mode>_2): Ditto for operand 1.
1231
1232 2013-01-27  Uros Bizjak  <ubizjak@gmail.com>
1233
1234         Backport from mainline
1235         2013-01-22  Uros Bizjak  <ubizjak@gmail.com>
1236
1237         PR target/56028
1238         * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
1239         alternative to (o,r).
1240         (*movdi_internal_rex64): Remove (!o,n) alternative.
1241         (DImode immediate->memory splitter): Remove.
1242         (DImode immediate->memory peephole2): Remove.
1243         (movtf): Enable for TARGET_64BIT || TARGET_SSE.
1244         (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
1245         alternative to (!o,*r).
1246         (*movtf_internal_sse): New pattern.
1247         (*movxf_internal_rex64): New pattern.
1248         (*movxf_internal): Disable for TARGET_64BIT.
1249         (*movdf_internal_rex64): Remove (!o,F) alternative.
1250
1251         2013-01-23  Uros Bizjak  <ubizjak@gmail.com>
1252
1253         * config/i386/i386.md (*movdf_internal_rex64): Disparage alternatives
1254         involving stack registers slightly.
1255
1256         2013-01-24  Uros Bizjak  <ubizjak@gmail.com>
1257
1258         * config/i386/constraints.md (Yf): New constraint.
1259         * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
1260         of f constraint to conditionaly disable x87 register preferences.
1261         (*movdf_internal): Ditto.
1262         (*movsf_internal): Ditto.
1263
1264         2012-01-24  Uros Bizjak  <ubizjak@gmail.com>
1265
1266         * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
1267         (*movtf_internal_rex64): Add (!o,C) alternative
1268         (*movxf_internal_rex64): Ditto.
1269         (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
1270
1271 2013-01-25  Georg-Johann Lay  <avr@gjlay.de>
1272
1273         * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.
1274
1275 2013-01-24  Martin Jambor  <mjambor@suse.cz>
1276
1277         Backport from mainline
1278         2013-01-04  Martin Jambor  <mjambor@suse.cz>
1279
1280         PR tree-optimization/55755
1281         * tree-sra.c (sra_modify_assign): Do not check that an access has no
1282         children when trying to avoid producing a VIEW_CONVERT_EXPR.
1283
1284 2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
1285
1286         Backport from mainline
1287         2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
1288
1289         * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
1290
1291 2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
1292
1293         PR rtl-optimization/56023
1294         * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
1295         dependent on debug instruction.
1296
1297 2013-01-21  Martin Jambor  <mjambor@suse.cz>
1298
1299         Backport from mainline
1300         2013-01-17  Martin Jambor  <mjambor@suse.cz>
1301
1302         PR tree-optimizations/55264
1303         * cgraph.c (cgraph_create_virtual_clone): Mark clones as non-virtual.
1304         * cgraph.h (cgraph_only_called_directly_p_or_aliased_p): Return false
1305         for virtual functions.
1306         * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true
1307         for virtual methods.
1308         * ipa.c (cgraph_remove_unreachable_nodes): Never return true for
1309         virtual methods before inlining is over.
1310
1311 2013-01-17  Uros Bizjak  <ubizjak@gmail.com>
1312
1313         Backport from mainline
1314         2012-01-17  Uros Bizjak  <ubizjak@gmail.com>
1315
1316         PR target/55981
1317         * config/i386/sync.md (atomic_store<mode>): Generate SWImode
1318         store through atomic_store<mode>_1.
1319         (atomic_store<mode>_1): Macroize insn using SWI mode iterator.
1320
1321 2013-01-16  Richard Biener  <rguenther@suse.de>
1322
1323         PR middle-end/55882
1324         * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
1325         account for bitpos when computing alignment.
1326
1327 2013-01-14  Georg-Johann Lay  <avr@gjlay.de>
1328
1329         Backport from 2013-01-14 trunk r195169.
1330
1331         PR target/55974
1332         * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
1333         etc. to 1 and not to __flash.
1334         Use LL suffix for __INT24_MAX__ with -mint8.
1335         Use ULL suffix for __UINT24_MAX__ with -mint8.
1336
1337 2013-01-14  Matthias Klose  <doko@ubuntu.com>
1338
1339         * doc/invoke.texi: Document -print-multiarch.
1340         * doc/install.texi: Document --enable-multiarch.
1341         * doc/fragments.texi: Document MULTILIB_OSDIRNAMES, MULTIARCH_DIRNAME.
1342         * configure.ac: Add --enable-multiarch option.
1343         Substitute with_cpu, with_float.
1344         * configure: Regenerate.
1345         * Makefile.in (s-mlib): Pass MULTIARCH_DIRNAME to genmultilib.
1346         enable_multiarch, with_cpu, with_float: New macros.
1347         if_multiarch: New macro, define in terms of enable_multiarch.
1348         * genmultilib: Add new argument for the multiarch name.
1349         * gcc.c (multiarch_dir): Define.
1350         (for_each_path): Search for multiarch suffixes.
1351         (driver_handle_option): Handle multiarch option.
1352         (do_spec_1): Pass -imultiarch if defined.
1353         (main): Print multiarch.
1354         (set_multilib_dir): Separate multilib and multiarch names
1355         from multilib_select.
1356         (print_multilib_info): Ignore multiarch names in multilib_select.
1357         * incpath.c (add_standard_paths): Search the multiarch include dirs.
1358         * cppdefault.h (default_include): Document multiarch in multilib
1359         member.
1360         * cppdefault.c: [LOCAL_INCLUDE_DIR, STANDARD_INCLUDE_DIR] Add an
1361         include directory for multiarch directories.
1362         * common.opt: New options --print-multiarch and -imultilib.
1363
1364         * config.gcc <i[34567]86-*-linux* | x86_64-*-linux*> (tmake_file):
1365         Include i386/t-linux.
1366         <i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu> (tmake_file):
1367         Include i386/t-kfreebsd.
1368         <i[34567]86-*-gnu*> (tmake_file): Include i386/t-gnu.
1369         * config/i386/t-linux64: Add multiarch names in
1370         MULTILIB_OSDIRNAMES, define MULTIARCH_DIRNAME.
1371         * config/i386/t-gnu: New file.
1372         * config/i386/t-kfreebsd: Likewise.
1373         * config/i386/t-linux: Likewise.
1374
1375         * config/sparc/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
1376         * config/sparc/t-linux: New file; define MULTIARCH_DIRNAME.
1377         * config.gcc <sparc-*-linux*> (tmake_file): Include sparc/t-linux
1378         for 32bit non-biarch configurations.
1379
1380         * config/pa/t-linux: New file; define MULTIARCH_DIRNAME.
1381         * config.gcc <hppa*64*-*-linux*, hppa*-*-linux*> (tmake_file):
1382         Include pa/t-linux.
1383
1384         * config/mips/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
1385
1386         * config/arm/t-linux-eabi: Define MULTIARCH_DIRNAME for linux target.
1387
1388         * config/rs6000/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
1389         * config/rs6000/t-linux: New file; define MULTIARCH_DIRNAME.
1390         * config/rs6000/t-fprules (SOFT_FLOAT_CPUS): New macro. Add e300c2
1391         to the list.
1392         (MULTILIB_MATCHES_FLOAT): Define in terms of SOFT_FLOAT_CPUS.
1393         * config.gcc <powerpc-*-linux* | powerpc64-*-linux*> (tmake_file):
1394         Include rs6000/t-linux for 32bit non-biarch configurations.
1395
1396         * config/s390/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
1397
1398         * config/m68k/t-linux: Define MULTIARCH_DIRNAME.
1399
1400         * config/ia64/t-linux: New file; define MULTIARCH_DIRNAME.
1401         * config.gcc <ia64*-*-linux*> (tmake_file): Include ia64/t-linux.
1402
1403         * config/alpha/t-linux: New file; define MULTIARCH_DIRNAME.
1404         * config.gcc <alpha*-*-linux*> (tmake_file): Include alpha/t-linux.
1405
1406 2013-01-14  Eric Botcazou  <ebotcazou@adacore.com>
1407
1408         * tree-vectorizer.h (vect_get_single_scalar_iteraion_cost): Fix typo.
1409         * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Likewise.
1410         (vect_estimate_min_profitable_iter): Adjust to above fix.
1411         * tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost): Likewise.
1412
1413 2013-01-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
1414
1415         Backport from mainline
1416         2013-01-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
1417
1418         * doc/extend.texi (X86 Built-in Functions): Add whitespace in
1419         __builtin_ia32_paddb256 and __builtin_ia32_pavgb256
1420         documentation.  Add missing '__' in front of
1421         __builtin_ia32_packssdw256.
1422
1423 2013-01-09  Uros Bizjak  <ubizjak@gmail.com>
1424
1425         Backport from mainline
1426         2013-01-09  Uros Bizjak  <ubizjak@gmail.com>
1427
1428         * config/i386/sse.md (*vec_interleave_highv2df): Change mode
1429         attribute of movddup insn to DF.
1430         (*vec_interleave_lowv2df): Ditto.
1431         (vec_dupv2df): Ditto.
1432
1433 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
1434
1435         Backport from 2013-01-07 trunk r194991, r194992.
1436
1437         PR target/55897
1438         * doc/extend.texi (AVR Named Address Spaces): __memx goes into
1439         .progmemx.data now.
1440
1441         * config/avr/avr.h (ADDR_SPACE_COUNT): New enum.
1442         (avr_addrspace_t): Add .section_name field.
1443         * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as
1444         array size.
1445         (avr_addrspace): Same.  Initialize .section_name.  Remove last
1446         NULL entry.  Put __memx into .progmemx.data.
1447         (progmem_section_prefix): Remove.
1448         (avr_asm_init_sections): No need to initialize progmem_section.
1449         (avr_asm_named_section): Use avr_addrspace[].section_name to get
1450         section name prefix.
1451         (avr_asm_select_section): Ditto.  And use get_unnamed_section to
1452         retrieve the progmem section.
1453         * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop
1454         boundary to run over avr_addrspace[].
1455         (avr_register_target_pragmas): Ditto.
1456
1457 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
1458
1459         Backport from 2013-01-07 trunk r194978.
1460
1461         PR target/54461
1462         * doc/install.texi (Cross-Compiler-Specific Options): Document
1463         --with-avrlibc.
1464
1465 2013-01-07  Georg-Johann Lay  <avr@gjlay.de>
1466
1467         Backport from 2013-01-07 trunk r194968.
1468
1469         PR other/55243
1470         * config/avr/t-avr: Don't automatically rebuild
1471         $(srcdir)/config/avr/t-multilib
1472         $(srcdir)/config/avr/avr-tables.opt
1473         (avr-mcus): New phony target to build them on request.
1474         (s-avr-mlib): Remove.
1475         * avr/avr-mcus.def: Adjust comments.
1476
1477 2013-01-07  Terry Guo  <terry.guo@arm.com>
1478
1479         Backport from mainline
1480         2012-12-19  Terry Guo  <terry.guo@arm.com>
1481
1482         * config/arm/arm.c (thumb_find_work_register): Check argument
1483         register number based on current PCS.
1484
1485 2013-01-06  Uros Bizjak  <ubizjak@gmail.com>
1486
1487         Backport from mainline
1488         2013-01-03  Uros Bizjak  <ubizjak@gmail.com>
1489
1490         PR target/55712
1491         * config/i386/i386-c.c (ix86_target_macros_internal): Depending on
1492         selected code model, define __code_mode_small__, __code_model_medium__,
1493         __code_model_large__, __code_model_32__ or __code_model_kernel__.
1494         * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix
1495         xchg temporary register with %k.  Declare temporary register as
1496         early clobbered.
1497         [__x86_64__]: For medium and large code models, preserve %rbx register.
1498
1499 2013-01-03  Richard Henderson  <rth@redhat.com>
1500
1501         * config/i386/i386.c (ix86_expand_move): Always assign to op1
1502         after eliminating TLS symbols.
1503
1504 2013-01-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1505
1506         PR target/53789
1507         * config/pa/pa.md (movsi): Revert previous change.
1508         * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol
1509         references.
1510
1511 2013-01-02  Rainer Emrich  <rainer@emrich-ebersheim.de>
1512
1513         PR bootstrap/55707
1514         * graphite-dependences.c (hash_poly_ddr_p): Cast from pointer via
1515         intptr_t.
1516
1517 2013-01-02  Jason Merrill  <jason@redhat.com>
1518
1519         PR c++/55804
1520         * tree.c (build_array_type_1): Revert earlier change.
1521
1522 2012-12-25  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1523
1524         PR target/53789
1525         * config/pa/pa.md (movsi): Reject expansion of TLS symbol references
1526         after reload starts.
1527
1528 2012-12-21  Martin Jambor  <mjambor@suse.cz>
1529
1530         PR tree-optimization/55355
1531         * tree-sra.c (type_internals_preclude_sra_p): Also check that
1532         bit_position is small enough to fit a single HOST_WIDE_INT.
1533
1534 2012-12-21  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>
1535
1536         * config.gcc: Match arm*-*-uclinux*eabi* for EABI uCLinux.
1537
1538 2012-12-18  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>
1539
1540         Backport from mainline
1541         2012-10-15  Matthias Klose  <doko@ubuntu.com>
1542
1543         * config.gcc: Match arm*-*-linux-* for ARM Linux/GNU.
1544         * doc/install.texi: Use arm-*-*linux-* instead of arm-*-*linux-gnueabi.
1545
1546 2012-12-16  Eric Botcazou  <ebotcazou@adacore.com>
1547             Tomash Brechko  <tomash.brechko@gmail.com>
1548
1549         PR target/55673
1550         * config/sparc/sparc.c (sparc_emit_membar_for_model): Fix reversed
1551         handling of before and after cases.
1552         * config/sparc/sync.md (atomic_store): Fix pasto.
1553
1554 2012-12-14  Yvan Roux  <yvan.roux@linaro.org>
1555
1556         * optabs.c (expand_atomic_store): Elide redundant model test.
1557
1558 2012-12-13  Richard Henderson  <rth@redhat.com>
1559
1560         PR middle-end/55492
1561         * optabs.c (expand_atomic_load): Emit acquire barrier after the load.
1562
1563 2012-12-11  Eric Botcazou  <ebotcazou@adacore.com>
1564
1565         PR target/54121
1566         * config/sparc/sparc.md (tldo_stb_sp32): Fix pasto.
1567         (tldo_stb_sp64): Likewise.
1568         (tldo_sth_sp32): Likewise.
1569         (tldo_sth_sp64): Likewise.
1570         (tldo_stw_sp32): Likewise.
1571         (tldo_stw_sp64): Likewise.
1572         (tldo_stx_sp64): Likewise.
1573
1574 2012-12-10 Kai Tietz  <ktietz@redhat.com>
1575
1576         PR target/53912
1577         * print-tree.c (print_node): Cast from pointer via uintptr_t.
1578
1579 2012-12-07  Uros Bizjak  <ubizjak@gmail.com>
1580
1581         Backport from mainline
1582         2012-12-06  Uros Bizjak  <ubizjak@gmail.com>
1583                     H.J. Lu  <hongjiu.lu@intel.com>
1584
1585         PR target/55597
1586         * config/i386/i386.c (legitimize_tls_address): Zero-extend x to Pmode,
1587         before using it as insn or call equivalent.
1588
1589 2012-12-06  Jason Merrill  <jason@redhat.com>
1590
1591         PR c++/55032
1592         * tree.c (build_array_type_1): Re-layout if we found it in the
1593         hash table.
1594
1595 2012-12-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1596
1597         * config/pa/pa.md: Use "const_int 0" instead of match_test to simplify
1598         opaque cond in all call insns.
1599
1600 2012-12-03  Eric Botcazou  <ebotcazou@adacore.com>
1601
1602         * config/ia64/ia64.c (ia64_compute_frame_size): Allocate the scratch
1603         area if the function allocates dynamic stack space.
1604         (ia64_initial_elimination_offset): Adjust offsets to above change.
1605
1606 2012-12-03  Richard Biener  <rguenther@suse.de>
1607
1608         Backport from mainline
1609         2012-09-24  Richard Guenther  <rguenther@suse.de>
1610
1611         PR tree-optimization/53663
1612         * tree-ssa-sccvn.c (vn_reference_lookup_3): Conditional
1613         native encode/interpret translation on VN_WALKREWRITE.
1614
1615 2012-12-03 Kai Tietz  <ktietz@redhat.com>
1616
1617         PR target/53912
1618         * ggc-common.c (POINTER_HASH): Cast from pointer via intptr_t.
1619
1620         PR target/53912
1621         * tree-dump.c (dump_pointer): Print pointer via HOST_WIDE_INT_PRINT.
1622
1623         PR target/53912
1624         * pointer-set.c (hash1): Cast from pointer via uintptr_t.
1625
1626 2012-12-01  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1627
1628         Backport from mainline:
1629         2012-11-12  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
1630
1631         PR target/55195
1632         * config/pa/pa.md (type): Add sibcall and sh_func_adrs insn types.
1633         (in_branch_delay): Don't allow sibcall or sh_func_adrs insns.
1634         (in_nullified_branch_delay): Likewise.
1635         (in_call_delay): Likewise.
1636         Define delay for sibcall insns.  Adjust Z3 and Z4 insn reservations for
1637         new types.  Add opaque cond to mark all calls, sibcalls, dyncalls and
1638         the $$sh_func_adrs call as variable.  Update type of sibcalls and
1639         $$sh_func_adrs call.
1640         * config/pa/pa.c (pa_adjust_insn_length): Revise to return updated
1641         length instead of adjustment.  Handle negative and undefined call
1642         adjustments for insn_default_length.  Remove adjustment for millicode
1643         insn with unfilled delay slot.
1644         (pa_output_millicode_call): Update for revised millicode length.
1645         * config/pa/pa.h (ADJUST_INSN_LENGTH): Revise to set LENGTH.
1646
1647 2012-11-29  Kai Tietz  <ktietz@redhat.com>
1648
1649         PR target/55171
1650         * prefix.c (lookup_key): Replace xmalloc/xrealloc
1651         use by XNEWVEC/XRESIZEVEC.
1652
1653         * i386.c (get_scratch_register_on_entry): Handle
1654         thiscall-convention.
1655         (split_stack_prologue_scratch_regno): Likewise.
1656         (ix86_static_chain): Likewise.
1657         (x86_output_mi_thunk): Likewise.
1658
1659 2012-11-28  H.J. Lu  <hongjiu.lu@intel.com>
1660
1661         Backported from mainline
1662         2012-11-27  H.J. Lu  <hongjiu.lu@intel.com>
1663                     Markus Trippelsdorf  <markus@trippelsdorf.de>
1664
1665         PR lto/54795
1666         * lto-opts.c (lto_write_options): Also handle
1667         OPT_SPECIAL_unknown, OPT_SPECIAL_ignore and
1668         OPT_SPECIAL_program_name.
1669
1670         PR lto/55474
1671         * lto-wrapper.c (merge_and_complain): Handle
1672         OPT_SPECIAL_unknown, OPT_SPECIAL_ignore,
1673         OPT_SPECIAL_program_name and OPT_SPECIAL_input_file.
1674
1675 2012-11-27  Paolo Bonzini  <pbonzini@redhat.com>
1676
1677         PR rtl-optimization/55489
1678         * gcse.c (compute_transp): Precompute a canonical version
1679         of XEXP (x, 0), and pass it to canon_true_dependence.
1680
1681 2012-11-27  Richard Biener  <rguenther@suse.de>
1682
1683         PR middle-end/55331
1684         * gimple-fold.c (gimplify_and_update_call_from_tree): Replace
1685         stmt with a NOP instead of removing it.
1686
1687 2012-11-26  Richard Biener  <rguenther@suse.de>
1688
1689         Backport from mainline
1690         2012-10-19  Richard Biener  <rguenther@suse.de>
1691
1692         PR tree-optimization/54976
1693         * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
1694         Robustify against odd inner_mode inputs.
1695
1696         2012-10-12  Richard Biener  <rguenther@suse.de>
1697
1698         PR tree-optimization/54894
1699         * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
1700         Handle over-aligned scalar types properly.
1701
1702         2012-10-02  Richard Guenther  <rguenther@suse.de>
1703
1704         PR middle-end/54735
1705         * tree-ssa-pre.c (do_pre): Make sure to update virtual SSA form before
1706         cleaning up the CFG.
1707
1708 2012-11-21  Michael Meissner  <meissner@linux.vnet.ibm.com>
1709
1710         Backport from mainline
1711         2012-11-20  Michael Meissner  <meissner@linux.vnet.ibm.com>
1712
1713         * config/rs6000/rs6000.md (movdf_hardfloat32): Add a comment
1714         explaining the register ordering preferences.
1715
1716         2012-11-19  Michael Meissner  <meissner@linux.vnet.ibm.com>
1717         * config/rs6000/rs6000.md (movdf_hardfloat32): Reorder move
1718         constraints so that the traditional floating point loads, stores,
1719         and moves are done first, then the VSX loads, stores, and moves,
1720         and finally the GPR loads, stores, and moves so that reload
1721         chooses FPRs over GPRs, and uses the traditional load/store
1722         instructions which provide an offset.
1723         (movdf_hardfloat64): Likewise.
1724
1725 2012-11-19  H.J. Lu  <hongjiu.lu@intel.com>
1726
1727         Backported from mainline
1728         2012-11-13  Eric Botcazou  <ebotcazou@adacore.com>
1729                     H.J. Lu  <hongjiu.lu@intel.com>
1730
1731         PR middle-end/55142
1732         * config/i386/i386.c (legitimize_pic_address): Properly handle
1733         REG + CONST.
1734         (ix86_print_operand_address): Set code to 'k' when forcing
1735         addr32 prefix.  For x32, zero-extend negative displacement if
1736         it < -16*1024*1024.
1737
1738 2012-11-12  Eric Botcazou  <ebotcazou@adacore.com>
1739
1740         * common.opt (fvar-tracking-uninit): Document.
1741         * toplev.c (process_options): Fix handling of flag_var_tracking_uninit.
1742         * config/darwin.c (darwin_override_options): Likewise.
1743
1744 2012-11-11  Eric Botcazou  <ebotcazou@adacore.com>
1745
1746         * config/sparc/sparc.h (AS_NIAGARA3_FLAG): Tweak.
1747         * config/sparc/sol2.h (TARGET_CPU_niagara4 support): Fix pasto.
1748
1749 2012-11-09  Eric Botcazou  <ebotcazou@adacore.com>
1750
1751         * doc/install.texi (sparc64-x-solaris2): Mention MPC as well.
1752
1753 2012-11-09  Eric Botcazou  <ebotcazou@adacore.com>
1754
1755         * config/i386/i386.c (release_scratch_register_on_entry): Also adjust
1756         sp_offset manually.
1757
1758 2012-11-07  Uros Bizjak  <ubizjak@gmail.com>
1759
1760         Backport from mainline
1761         2012-11-06  Uros Bizjak  <ubizjak@gmail.com>
1762
1763         * config/i386/i386.c (ix86_init_machine_status): Do not
1764         explicitly clear tls_descriptor_call_expanded_p again.
1765
1766         2012-11-06  Uros Bizjak  <ubizjak@gmail.com>
1767
1768         * config/i386/sse.md
1769         (<avx_avx2>_maskstore<ssemodesuffix><avxsizesuffix>): Mark operand 0
1770         as read and written by the instruction.
1771
1772         2012-11-06  Uros Bizjak  <ubizjak@gmail.com>
1773
1774         * config/i386/i386.c (TARGET_INSTANTIATE_DECLS): New define.
1775         (ix86_instantiate_decls): New function.
1776         (ix86_expand_builtin) <case IX86_BUILTIN_LDMXCSR>: Use SLOT_TEMP
1777         stack slot instead of SLOT_VIRTUAL.
1778         <case IX86_BUILTIN_STMXCSR>: Ditto.
1779         (assign_386_stack_local): Do not assert when virtual slot is valid.
1780         * config/i386/i386.h (enum ix86_stack_slot): Remove SLOT_VIRTUAL.
1781         * config/i386/i386.md (truncdfsf2): Do not use SLOT_VIRTUAL stack slot.
1782         (truncxf<mode>2): Ditto.
1783         (floatunssi<mode>2): Ditto.
1784         (isinf<mode>2): Ditto.
1785         * config/i386/sync.md (atomic_load<mode>): Ditto.
1786         (atomic_store<mode>): Ditto.
1787
1788 2012-11-07  Eric Botcazou  <ebotcazou@adacore.com>
1789
1790         PR middle-end/55219
1791         * fold-const.c (fold_binary_op_with_conditional_arg): Do not fold if
1792         the argument is itself a conditional expression.
1793
1794 2012-11-05  H.J. Lu  <hongjiu.lu@intel.com>
1795
1796         * config/i386/i386.c (print_reg): Replace REX_INT_REG_P with
1797         REX_INT_REGNO_P.
1798
1799 2012-11-05  Eric Botcazou  <ebotcazou@adacore.com>
1800
1801         PR tree-optimization/54986
1802         * gimple-fold.c (canonicalize_constructor_val): Strip again all no-op
1803         conversions on entry but add them back on exit if needed.
1804
1805 2012-11-05  Richard Sandiford  <rdsandiford@googlemail.com>
1806
1807         PR target/55204
1808         * config/i386/i386.c (ix86_address_subreg_operand): Remove stack
1809         pointer check.
1810         (print_reg): Use true_regnum rather than REGNO.
1811         (ix86_print_operand_address): Remove SUBREG handling.
1812
1813 2012-11-05  Jakub Jelinek  <jakub@redhat.com>
1814
1815         Backported from mainline
1816         2012-10-24  Jakub Jelinek  <jakub@redhat.com>
1817
1818         PR debug/54828
1819         * gimple.h (is_gimple_sizepos): New inline function.
1820         * gimplify.c (gimplify_one_sizepos): Use it.  Remove useless
1821         final assignment to expr variable.
1822         * tree.c (RETURN_TRUE_IF_VAR): Return true also if
1823         !TYPE_SIZES_GIMPLIFIED (type) and _t is going to be gimplified
1824         into a local temporary.
1825
1826         2012-10-10  Jakub Jelinek  <jakub@redhat.com>
1827
1828         PR tree-optimization/54877
1829         * tree-vect-loop.c (vect_is_simple_reduction_1): For MINUS_EXPR
1830         use make_ssa_name instead of copy_ssa_name.
1831
1832 2012-11-03  Peter Bergner  <bergner@vnet.ibm.com>
1833
1834         Backport from mainline
1835         2012-10-31  Jakub Jelinek  <jakub@redhat.com>
1836
1837         PR tree-optimization/53708
1838         * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Preserve
1839         user-supplied alignment when used with an explicit section name.
1840
1841 2012-11-02  Jeff Law  <law@redhat.com>
1842
1843         PR tree-optimization/54985
1844         * tree-ssa-threadedge.c (cond_arg_set_in_bb): New function extracted
1845         from thread_across_edge.
1846         (thread_across_edge): Use it in all cases where we might thread
1847         across a back edge.
1848
1849 2012-10-31  Eric Botcazou  <ebotcazou@adacore.com>
1850
1851         * config/i386/i386.c (ix86_expand_prologue): Emit frame info for the
1852         special register pushes before frame probing and allocation.
1853
1854 2012-10-31  Ralf Corsépius  <ralf.corsepius@rtems.org>,
1855             Joel Sherrill  <joel.sherrill@oarcorp.com>
1856
1857         * config/sparc/t-rtems: New (Custom multilibs).
1858         * config/sparc/t-rtems-64: New (Custom multilibs).
1859         * config.gcc (sparc64-*-rtems*): Add sparc/t-rtems-64.
1860         (sparc-*-rtems*): Add sparc/t-rtems.
1861
1862 2012-10-30  Eric Botcazou  <ebotcazou@adacore.com>
1863
1864         * cse.c (hash_rtx_cb): Replace RTX_UNCHANGING_P with MEM_READONLY_P in
1865         head comment.
1866         (hash_rtx): Likewise.
1867
1868 2012-10-29  Terry Guo  <terry.guo@arm.com>
1869
1870         Backport from mainline
1871         2012-10-11  Terry Guo  <terry.guo@arm.com>
1872
1873         * config/arm/arm.c (arm_arch6m): New variable to denote armv6-m
1874         architecture.
1875         * config/arm/arm.h (TARGET_HAVE_DMB): The armv6-m also has DMB
1876         instruction.
1877
1878 2012-10-26  Gunther Nikl  <gnikl@users.sourceforge.net>
1879
1880         * common/config/m68k/m68k-common.c (m68k_handle_option): Set
1881         gcc_options fields of opts_set for -m68020-40 and -m68020-60.
1882
1883 2012-10-26  Ralf Corsépius  <ralf.corsepius@rtems.org>
1884
1885         * config/avr/t-rtems: Revert previous commit.
1886
1887 2012-10-26  Terry Guo  <terry.guo@arm.com>
1888
1889         Backport from mainline
1890         2012-10-23  Terry Guo  <terry.guo@arm.com>
1891
1892         PR target/55019
1893         * config/arm/arm.c (thumb1_expand_prologue): Don't push high regs with
1894         live argument regs.
1895
1896 2012-10-26  Ralf Corsépius  <ralf.corsepius@rtems.org>
1897
1898         * config/avr/rtems.h (TARGET_OS_CPP_BUILTINS): Remove
1899         __USE_INIT_FINI__.
1900         * config/avr/t-rtems (LIB1ASMFUNCS): Filter out _exit.
1901
1902 2012-10-25  Ralf Corsépius  <ralf.corsepius@rtems.org>
1903
1904         * config.gcc (microblaze*-*-rtems*): New target.
1905         * config/microblaze/rtems.h: New.
1906         * config/microblaze/t-rtems: New.
1907
1908 2012-10-25  Richard Biener  <rguenther@suse.de>
1909
1910         PR tree-optimization/54902
1911         * tree-ssa-pre.c (fini_pre): Return TODO.
1912         (execute_pre): Adjust.
1913         * tree-ssa-tailmerge.c (tail_merge_optimize): Delete unreachable
1914         blocks before computing dominators.
1915
1916 2012-10-24  Uros Bizjak  <ubizjak@gmail.com>
1917
1918         Backport from mainline
1919         2012-10-22  Uros Bizjak  <ubizjak@gmail.com>
1920
1921         * config/i386/i386.c (memory_address_length): Assert that non-null
1922         base or index RTXes are registers.  Do not check for REG RTXes.
1923         Determine addr32 prefix using SImode_address_operand or
1924         from original base and index RTXes.  Simplify code.
1925
1926         2012-10-21  Uros Bizjak  <ubizjak@gmail.com>
1927
1928         * config/i386/i386-protos.h (memory_address_length): Add new bool
1929         argument.  Update all uses.
1930         * config/i386/i386.c (memory_address_length): If not LEA insn, then
1931         add length of addr32 prefix based on mode of base or index register.
1932         (ix86_attr_length_address_default) <TYPE_LEA>: Do not handle SImode
1933         addresses here.  Update call to memory_address_length.
1934         (ix86_print_address_operand): Use SImode_address_operand predicate.
1935         * config/i386/predicates.md (SImode_address_operand): New.
1936         * config/i386/i386.md (lea<mode>): Use SImode_address_operand
1937         to calculate "mode" attribute.  Use SImode_address_operand predicate
1938         instead of open-coding accepted RTX codes.
1939
1940 2012-10-22  Georg-Johann Lay  <avr@gjlay.de>
1941
1942         Backport from 2012-10-22 trunk r192685.
1943         * doc/invoke.texi (AVR Options): Document __AVR_ARCH__.
1944         Note __AVR_<device>__ is not defined for cores.
1945         Don't point to --help=target.
1946         Order --mcu= documentation according to trunk:/gcc/doc/avr-mmcu.texi.
1947
1948 2012-10-19  Marek Polacek  <polacek@redhat.com>
1949
1950         Backported from mainline
1951         2012-10-19  Marek Polacek  <polacek@redhat.com>
1952
1953         PR middle-end/54945
1954         * fold-const.c (fold_sign_changed_comparison):  Punt if folding
1955         pointer/non-pointer comparison.
1956
1957 2012-10-19  Zhenqiang Chen <zhenqiang.chen@linaro.org>
1958
1959         Backported from mainline
1960         2012-10-19  Zhenqiang Chen <zhenqiang.chen@linaro.org>
1961
1962         PR target/54892
1963         * config/arm/arm.c (arm_expand_compare_and_swap): Use SImode to make
1964         sure the mode is correct when falling through from above cases.
1965
1966 2012-10-19  Alan Modra  <amodra@gmail.com>
1967
1968         * configure.ac (HAVE_LD_NO_DOT_SYMS): Set if using gold.
1969         (HAVE_LD_LARGE_TOC): Likewise.
1970         * configure: Regenerate.
1971
1972 2012-10-19  Alan Modra  <amodra@gmail.com>
1973
1974         * config/rs6000/predicates.md (splat_input_operand): Don't call
1975         input_operand for MEMs.  Instead check for volatile and call
1976         memory_address_addr_space_p with modified mode.
1977
1978 2012-10-17  Matthew Gretton-Dann  <matthew.gretton-dann@linaro.org>
1979
1980         Backported from mainline
1981         2012-07-23  Ulrich Weigand  <ulrich.weigand@linaro.org>
1982
1983         * config/arm/arm.c (arm_reorg): Ensure all insns are split.
1984
1985 2012-10-16  Eric Botcazou  <ebotcazou@adacore.com>
1986
1987         PR rtl-optimization/54870
1988         * tree.h (TREE_ADDRESSABLE): Document special usage on SSA_NAME.
1989         * cfgexpand.c (update_alias_info_with_stack_vars ): Set it on the
1990         SSA_NAME pointer that points to a partition if there is at least
1991         one variable with it set in the partition.
1992         * dse.c (local_variable_can_escape): New predicate.
1993         (can_escape): Call it.
1994         * gimplify.c (mark_addressable): If this is a partitioned decl, also
1995         mark the SSA_NAME pointer that points to a partition.
1996
1997 2012-10-16  Andrey Belevantsev  <abel@ispras.ru>
1998
1999         Backport from mainline
2000         2012-08-09  Andrey Belevantsev  <abel@ispras.ru>
2001
2002         PR rtl-optimization/53701
2003         * sel-sched.c (vinsn_vec_has_expr_p): Clarify function comment.
2004         rocess not only expr's vinsns but all old vinsns from expr's
2005         istory of changes.
2006
2007 2012-10-16  Andrey Belevantsev  <abel@ispras.ru>
2008
2009         Backport from mainline
2010         2012-07-31  Andrey Belevantsev  <abel@ispras.ru>
2011         PR target/53975
2012
2013         * sel-sched-ir.c (has_dependence_note_reg_use): Clarify comment.
2014         Revert
2015         2011-08-04  Sergey Grechanik  <mouseentity@ispras.ru>
2016         * sel-sched-ir.c (has_dependence_note_reg_use): Call ds_full_merge
2017         only if producer writes to the register given by regno.
2018
2019 2012-09-15  Uros Bizjak  <ubizjak@gmail.com>
2020
2021         Backport from mainline
2022         2012-10-15  Uros Bizjak  <ubizjak@gmail.com>
2023
2024         * config/i386/sse.md (UNSPEC_MOVU): Remove.
2025         (UNSPEC_LOADU): New.
2026         (UNSPEC_STOREU): Ditto.
2027         (<sse>_movu<ssemodesuffix><avxsizesuffix>): Split to ...
2028         (<sse>_loadu<ssemodesuffix><avxsizesuffix>): ... this and ...
2029         (<sse>_storeu<ssemodesuffix><avxsizesuffix>) ... this.
2030         (<sse2>_movdqu<avxsizesuffix>): Split to ...
2031         (<sse2>_loaddqu<avxsizesuffix>): ... this and ...
2032         (<sse2>_storedqu<avxsizesuffix>): ... this.
2033         (*sse4_2_pcmpestr_unaligned): Update.
2034         (*sse4_2_pcmpistr_unaligned): Ditto.
2035
2036         * config/i386/i386.c (ix86_avx256_split_vector_move_misalign): Use
2037         gen_avx_load{dqu,ups,upd}256 to load from unaligned memory and
2038         gen_avx_store{dqu,ups,upd}256 to store to unaligned memory.
2039         (ix86_expand_vector_move_misalign): Use gen_sse_loadups or
2040         gen_sse2_load{dqu,upd} to load from unaligned memory and
2041         gen_sse_loadups or gen_sse2_store{dqu,upd}256 to store to
2042         unaligned memory.
2043         (struct builtin_description bdesc_spec) <IX86_BUILTIN_LOADUPS>:
2044         Use CODE_FOR_sse_loadups.
2045         <IX86_BUILTIN_LOADUPD>: Use CODE_FOR_sse2_loadupd.
2046         <IX86_BUILTIN_LOADDQU>: Use CODE_FOR_sse2_loaddqu.
2047         <IX86_BUILTIN_STOREUPS>: Use CODE_FOR_sse_storeups.
2048         <IX86_BUILTIN_STOREUPD>: Use CODE_FOR_sse2_storeupd.
2049         <IX86_BUILTIN_STOREDQU>: Use CODE_FOR_sse2_storedqu.
2050         <IX86_BUILTIN_LOADUPS256>: Use CODE_FOR_avx_loadups256.
2051         <IX86_BUILTIN_LOADUPD256>: Use CODE_FOR_avx_loadupd256.
2052         <IX86_BUILTIN_LOADDQU256>: Use CODE_FOR_avx_loaddqu256.
2053         <IX86_BUILTIN_STOREUPS256>: Use CODE_FOR_avx_storeups256.
2054         <IX86_BUILTIN_STOREUPD256>: Use CODE_FOR_avx_storeupd256.
2055         <IX86_BUILTIN_STOREDQU256>: Use CODE_FOR_avx_storedqu256.
2056
2057 2012-10-15  Steven Bosscher  <steven@gcc.gnu.org>
2058
2059         Backport from trunk (r190222):
2060
2061         PR tree-optimization/54146
2062         * ifcvt.c: Include pointer-set.h.
2063         (cond_move_process_if_block): Change type of then_regs and
2064         else_regs from alloca'd array to pointer_sets.
2065         (check_cond_move_block): Update for this change.
2066         (cond_move_convert_if_block): Likewise.
2067         * Makefile.in: Fix dependencies for ifcvt.o.
2068
2069 2012-10-15  Richard Guenther  <rguenther@suse.de>
2070
2071         PR tree-optimization/54920
2072         * tree-ssa-pre.c (create_expression_by_pieces): Properly
2073         allocate temporary storage for all NARY elements.
2074
2075 2012-10-08  Georg-Johann Lay  <avr@gjlay.de>
2076
2077         PR target/54854
2078         * doc/invoke.texi (AVR Options): Deprecate -mshort-calls.
2079
2080 2012-10-05  Mark Kettenis  <kettenis@openbsd.org>
2081
2082         * config.gcc (*-*-openbsd4.[3-9]|*-*-openbsd[5-9]*): Set
2083         default_use_cxa_atexit to yes.
2084
2085 2012-10-05  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
2086
2087         * config/pa/pa.md: Adjust unamed HImode add insn pattern.
2088
2089 2012-10-05  Jan Hubicka  <jh@suse.cz>
2090             Jakub Jelinek  <jakub@redhat.com>
2091
2092         PR tree-optimization/33763
2093         * tree-inline.c (expand_call_inline): Silently ignore always_inline
2094         attribute for redefined extern inline functions.
2095
2096 2012-10-03  H.J. Lu  <hongjiu.lu@intel.com>
2097
2098         Backported from mainline
2099         2012-10-03  Andrew W. Nosenko <andrew.w.nosenko@gmail.com>
2100
2101         * config/i386/driver-i386.c (host_detect_local_cpu): Fix logic
2102         in SSE and YMM state support check for -march=native.
2103
2104 2012-10-03  Alexandre Oliva <aoliva@redhat.com>
2105
2106         PR debug/53135
2107         * dwarf2out.c (value_format): Use block4 for dw_val_class_loc
2108         when needed.
2109
2110 2012-10-02  H.J. Lu  <hongjiu.lu@intel.com>
2111
2112         Backported from mainline
2113         2012-10-02  H.J. Lu  <hongjiu.lu@intel.com>
2114
2115         PR target/54785
2116         * doc/invoke.texi: Document -mprefer-avx128.
2117
2118 2012-10-02  H.J. Lu  <hongjiu.lu@intel.com>
2119
2120         Backported from mainline
2121         2012-10-02  H.J. Lu  <hongjiu.lu@intel.com>
2122
2123         PR target/54741
2124         *  config/i386/driver-i386.c (XCR_XFEATURE_ENABLED_MASK): New.
2125         (XSTATE_FP): Likewise.
2126         (XSTATE_SSE): Likewise.
2127         (XSTATE_YMM): Likewise.
2128         (host_detect_local_cpu): Disable AVX, AVX2, FMA, FMA4 and XOP if
2129         SSE and YMM states aren't supported.
2130
2131 2012-10-01  Tom de Vries  <tom@codesourcery.com>
2132
2133         * var-tracking.c (set_dv_changed): Add an 'inline' function specifier to
2134         the prototype.
2135
2136 2012-10-01  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
2137
2138         PR target/54746
2139         * config/s390/s390.c (s390_option_override): Add missing break.
2140
2141 2012-09-29  Andreas Tobler  <andreast@fgznet.ch>
2142
2143         Backport from mainline
2144         2012-09-29  Andreas Tobler  <andreast@fgznet.ch>
2145
2146         * config.gcc: Replace 'host' with 'target' when configuring for
2147         powerpc64*-*-freebsd.
2148
2149 2012-09-28  Meador Inge  <meadori@codesourcery.com>
2150
2151         Backport from mainline
2152         2012-09-27  Meador Inge  <meadori@codesourcery.com>
2153
2154         * gcc-ar.c (main): Handle the returning of the sub-process error
2155         code correctly.
2156
2157 2012-09-28  Georg-Johann Lay  <avr@gjlay.de>
2158
2159         Backport from 2012-09-28 trunk r191821.
2160         * config/avr/avr.c (avr_pgm_check_var_decl): Fix non-error diagnostic.
2161
2162 2012-09-27  Jakub Jelinek  <jakub@redhat.com>
2163
2164         PR target/54703
2165         * simplify-rtx.c (simplify_binary_operation_1): Perform
2166         (x - (x & y)) -> (x & ~y) optimization only for integral modes.
2167
2168 2012-09-24  Eric Botcazou  <ebotcazou@adacore.com>
2169
2170         * tree-streamer-in.c (unpack_ts_type_common_value_fields): Stream in
2171         TYPE_NONALIASED_COMPONENT flag.
2172         * tree-streamer-out.c (pack_ts_type_common_value_fields): Stream out
2173         TYPE_NONALIASED_COMPONENT flag.
2174
2175 2012-09-21  Richard Guenther  <rguenther@suse.de>
2176
2177         PR middle-end/54638
2178         Backport from mainline
2179         2012-04-19  Richard Guenther  <rguenther@suse.de>
2180
2181         * ira-int.h (ira_allocno_object_iter_cond): Avoid out-of-bound
2182         array access.
2183
2184 2012-09-20  Joseph Myers  <joseph@codesourcery.com>
2185
2186         PR c/54552
2187         * c-typeck.c (c_cast_expr): When casting to a type requiring
2188         C_MAYBE_CONST_EXPR to be created, pass the inner expression to
2189         c_fully_fold first.
2190
2191 2012-09-20  Joseph Myers  <joseph@codesourcery.com>
2192
2193         PR c/54103
2194         * c-typeck.c (build_unary_op): Pass original argument of
2195         TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
2196         any C_MAYBE_CONST_EXPR, if it has integer operands.
2197         (build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
2198         TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
2199         to c_objc_common_truthvalue_conversion, then remove any
2200         C_MAYBE_CONST_EXPR, if they have integer operands.  Use
2201         c_objc_common_truthvalue_conversion not
2202         c_common_truthvalue_conversion.
2203         (c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
2204         call note_integer_operands for arguments with integer operands
2205         that are not integer constants.
2206
2207 2012-09-20  Jakub Jelinek  <jakub@redhat.com>
2208
2209         Backported from mainline
2210         2012-09-17  Jakub Jelinek  <jakub@redhat.com>
2211
2212         PR tree-optimization/54563
2213         * tree-ssa-math-opts.c (execute_cse_sincos): Call
2214         gimple_purge_dead_eh_edges if last call has been changed.
2215
2216         2012-09-14  Jakub Jelinek  <jakub@redhat.com>
2217
2218         PR target/54564
2219         * config/i386/sse.md (fmai_vmfmadd_<mode>): Use (match_dup 1)
2220         instead of (match_dup 0) as second argument to vec_merge.
2221         (*fmai_fmadd_<mode>, *fmai_fmsub_<mode>): Likewise.
2222         Remove third alternative.
2223         (*fmai_fnmadd_<mode>, *fmai_fnmsub_<mode>): Likewise.  Negate
2224         operand 2 instead of operand 1, but put it as first argument
2225         of fma.
2226         * config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss,
2227         _mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead
2228         of the first.
2229
2230 2012-09-20  Jakub Jelinek  <jakub@redhat.com>
2231
2232         * BASE-VER: Set to 4.7.3.
2233         * DEV-PHASE: Set to prerelease.
2234
2235 2012-09-20  Release Manager
2236
2237         * GCC 4.7.2 released.
2238
2239 2012-09-15  Andi Kleen  <ak@linux.intel.com>
2240
2241         Backport from mainline
2242         2012-09-07  Andi Kleen  <ak@linux.intel.com>
2243
2244         * gcc/lto-streamer.h (res_pair): Add.
2245         (lto_file_decl_data): Replace resolutions with respairs.
2246         Add max_index.
2247         * gcc/lto/lto.c (lto_resolution_read): Remove max_index.  Add rp.
2248         Initialize respairs.
2249         (lto_file_finalize): Set up resolutions vector lazily from respairs.
2250
2251 2012-09-14  Walter Lee  <walt@tilera.com>
2252
2253         Backport from mainline.
2254         2012-09-14  Walter Lee  <walt@tilera.com>
2255
2256         * doc/invoke.texi (Option Summary): fix typesetting for -mcpu
2257         option for TILEPro and TILE-Gx.
2258
2259 2012-09-13  Uros Bizjak  <ubizjak@gmail.com>
2260
2261         * config/i386/i386.h (x86_prefetchw): New global variable.
2262         (TARGET_PREFETCHW): New macro.
2263         * config/i386/i386.c (PTA_PREFETCHW): Ditto.
2264         (processor_alias_table): Add PTA_PREFETCHW to
2265         bdver1, bdver2 and btver1.
2266         (ix86_option_override_internal): Set x86_prefetchw for
2267         PTA_PREFETCHW targets.
2268         * config/i386/i386.md (prefetch): Expand to prefetchw
2269         for TARGET_PREFETCHW.
2270         (*prefetch_3dnow_<mode>): Also enable for TARGET_PREFETCHW.
2271
2272         Backport from mainline
2273         2012-08-13  Uros Bizjak  <ubizjak@gmail.com>
2274
2275         * config/i386/i386.md (prefetch): Do not assert mode of operand 0.
2276         (*prefetch_sse_<mode>): Do not set mode of address_operand predicate.
2277         Rename to ...
2278         (*prefetch_sse): ... this.
2279         (*prefetch_3dnow_<mode>): Do not set mode of address_operand predicate.
2280         Rename to ...
2281         (*prefetch_3dnow): ... this.
2282
2283 2012-09-13  Jakub Jelinek  <jakub@redhat.com>
2284
2285         PR c/54559
2286         * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or
2287         COMPLEX_TYPE with in_late_binary_op set temporarily to true.
2288
2289 2012-09-12  Teresa Johnson  <tejohnson@google.com>
2290
2291         Backport from mainline.
2292         2012-09-12  Teresa Johnson  <tejohnson@google.com>
2293
2294         PR gcov-profile/54487
2295         * configure.ac (HOST_HAS_F_SETLKW): Set based on compile
2296         test using F_SETLKW with fcntl.
2297         * configure, config.in: Regenerate.
2298
2299 2012-09-12  Uros Bizjak  <ubizjak@gmail.com>
2300
2301         Backport from mainline
2302         2012-09-12  Ganesh Gopalasubramanian  <Ganesh.Gopalasubramanian@amd.com>
2303
2304         * config/i386/i386.md : Comments on fma4 instruction selection
2305         reflect requirement on register pressure based cost model.
2306
2307         * config/i386/driver-i386.c (host_detect_local_cpu): fma4
2308         flag is set-reset as informed by the cpuid flag.
2309
2310         * config/i386/i386.c (processor_alias_table): fma4
2311         flag is enabled for bdver2.
2312
2313 2012-09-12  Christian Bruel  <christian.bruel@st.com>
2314
2315         * config/sh/newlib.h (NO_IMPLICIT_EXTERN_C): Define.
2316
2317 2012-09-12  Jakub Jelinek  <jakub@redhat.com>
2318
2319         * config.gcc: Obsolete picochip-*.
2320
2321 2012-09-11  Richard Guenther  <rguenther@suse.de>
2322
2323         PR debug/54534
2324         * cgraph.h (varpool_can_remove_if_no_refs): Restore dependence
2325         on flag_toplevel_reorder.
2326
2327 2012-09-10  Richard Henderson  <rth@redhat.com>
2328
2329         * config/alpha/predicates.md (small_symbolic_operand): Disallow
2330         large offsets.
2331
2332 2012-09-10  Georg-Johann Lay  <avr@gjlay.de>
2333
2334         Backport from 2012-09-10 mainline r191132.
2335
2336         PR target/54536
2337         * config/avr/avr-mcus.def (at90usb1287): Set LIBRARY_NAME to "usb1287".
2338
2339 2012-09-10  Markus Trippelsdorf  <markus@trippelsdorf.de>
2340
2341         PR middle-end/54515
2342         * tree-sra.c (disqualify_base_of_expr): Check for possible
2343         NULL_TREE returned by get_base_address()
2344
2345 2012-09-07  Richard Guenther  <rguenther@suse.de>
2346
2347         Backport from mainline
2348         2012-06-26  Jan Hubicka  <jh@suse.cz>
2349
2350         PR lto/53572
2351         * cgraph.h (varpool_can_remove_if_no_refs): Fix handling of
2352         used symbols.
2353
2354 2012-09-07  Richard Guenther  <rguenther@suse.de>
2355
2356         Backport from mainline
2357         2012-07-13  Richard Guenther  <rguenther@suse.de>
2358
2359         PR tree-optimization/53922
2360         * tree-vrp.c (value_inside_range): Change prototype to take
2361         min/max instead of value-range.
2362         (range_includes_zero_p): Likewise.  Return the result from
2363         value_inside_range.
2364         (extract_range_from_binary_expr_1): Adjust to handle dont-know
2365         return value from range_includes_zero_p.
2366         (extract_range_from_unary_expr_1): Likewise.
2367         (compare_range_with_value): Likewise.
2368         (vrp_meet_1): Likewise.
2369
2370 2012-09-07  Richard Guenther  <rguenther@suse.de>
2371
2372         PR middle-end/53667
2373         * tree-ssa-structalias.c (handle_rhs_call): Properly clobber
2374         EAF_NOESCAPED arguments.  Transitively close non-EAF_DIRECT
2375         arguments separately.
2376
2377 2012-09-07  Jakub Jelinek  <jakub@redhat.com>
2378
2379         Backported from mainline
2380         2012-09-06  Jakub Jelinek  <jakub@redhat.com>
2381
2382         PR rtl-optimization/54455
2383         * sel-sched-ir.c (maybe_tidy_empty_bb): Give up if previous fallthru
2384         bb ends up with asm goto referencing bb's label.
2385
2386 2012-09-07  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2387
2388         Backport from mainline.
2389         2012-08-29  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
2390                     Richard Earnshaw  <richard.earnshaw@arm.com>
2391
2392         PR target/54252
2393         * config/arm/arm.c (neon_dereference_pointer): Adjust nelems by
2394         element size. Use elem_type from the formal parameter. New parameter
2395         fcode.
2396         (neon_expand_args): Adjust call to neon_dereference_pointer.
2397
2398 2012-09-06  Uros Bizjak  <ubizjak@gmail.com>
2399
2400         * config/i386/sse.md (<sse4_1_avx2>_pblendvb): Use
2401         reg_not_xmm0_operand_maybe_avx as operand 0 constraint.
2402
2403 2012-09-06  Uros Bizjak  <ubizjak@gmail.com>
2404
2405         Backport from mainline
2406         2012-08-11  Uros Bizjak  <ubizjak@gmail.com>
2407
2408         * config/i386/i386.md (isa): Add fma and fma4.
2409         (enabled): Handle fma and fma4.
2410         * config/i386/sse.md (*fma_fmadd_<mode>): Merge *fma4_fmadd_<mode>.
2411         (*fma_fmsub_<mode>): Merge *fma4_fmsub_<mode>.
2412         (*fma_fnmadd_<mode>): Merge *fma4_fnmadd_<mode>.
2413         (*fma_fnmsub_<mode>): Merge *fma4_fnmsub_<mode>.
2414         (*fma_fmaddsub_<mode>): Merge *fma4_fmaddsub_<mode>.
2415         (*fma_fmsubadd_<mode>): Merge *fma4_fmsubadd_<mode>.
2416
2417         2012-08-10  Uros Bizjak  <ubizjak@gmail.com>
2418
2419         * config/i386/sse.md (*fma_fmadd_<mode>, *fma_fmsub_<mode>,
2420         *fma_fnmadd_<mode>, *fma_fnmsub_<mode>, *fma_fmaddsub_<mode>,
2421         *fma_fmsubadd_<mode>): Move FMA3 insn patterns before FMA4 patterns.
2422
2423 2012-09-06  Richard Guenther  <rguenther@suse.de>
2424
2425         PR tree-optimization/54498
2426         * tree-ssa-alias.h (get_continuation_for_phi): Add flag to
2427         abort when reaching an already visited region.
2428         * tree-ssa-alias.c (maybe_skip_until): Likewise.  And do it.
2429         (get_continuation_for_phi_1): Likewise.
2430         (walk_non_aliased_vuses): When we translated the reference,
2431         abort when we re-visit a region.
2432         * tree-ssa-pre.c (translate_vuse_through_block): Adjust.
2433
2434 2012-09-06  Andrew Pinski  <apinski@cavium.com>
2435
2436         PR tree-opt/54494
2437         * tree-inline.c (remap_gimple_op_r): Copy TREE_SIDE_EFFECTS also.
2438
2439 2012-09-05  Jakub Jelinek  <jakub@redhat.com>
2440
2441         PR middle-end/54486
2442         * builtins.c (fold_builtin_strspn, fold_builtin_strcspn): Use
2443         build_int_cst with size_type_node instead of size_int.
2444
2445 2012-09-05  Georg-Johann Lay  <avr@gjlay.de>
2446
2447         Backport from 2012-09-05 mainline r190697.
2448
2449         PR target/54461
2450         * config.gcc (tm_file,target=avr-*-*): Add avr/avrlibc.h if
2451         configured --with-avrlibc.
2452         (tm_defines,target=avr-*-*): Add WITH_AVRLIBC if configured
2453         --with-avrlibc.
2454         * config/avr/avrlibc.h: New file.
2455         * config/avr/avr-c.c: Build-in define __WITH_AVRLIBC__ if
2456         configured --with-avrlibc.
2457         * doc/invoke.texi (AVR Built-in Macros): Document __WITH_AVRLIBC__
2458
2459 2012-09-05  Bin Cheng  <bin.cheng@arm.com>
2460
2461         Backport from 2012-09-04 mainline r190919
2462
2463         PR target/45070
2464         * config/arm/arm.c (thumb1_extra_regs_pushed): Handle return value
2465         of size less than 4 bytes by using macro ARM_NUM_INTS.
2466         (thumb1_unexpanded_epilogue): Use macro ARM_NUM_INTS.
2467
2468 2012-09-04  Richard Henderson  <rth@redhat.com>
2469
2470         * alias.c (read_dependence): Return true for ALIAS_SET_MEMORY_BARRIER.
2471
2472 2012-09-04  Georg-Johann Lay  <avr@gjlay.de>
2473
2474         Backport from 2012-09-04 mainline r190920
2475
2476         PR target/54476
2477         * config/avr/avr.c (avr_expand_delay_cycles): Mask operand with SImode.
2478
2479 2012-09-04  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
2480
2481         Backport from 2012-09-04 mainline r190914
2482
2483         PR target/54220
2484         * config/avr/avr.c (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): New
2485         define to...
2486         (avr_allocate_stack_slots_for_args): ...this new static function.
2487
2488 2012-09-03  H.J. Lu  <hongjiu.lu@intel.com>
2489
2490         Backported from mainline
2491         2012-08-23  H.J. Lu  <hongjiu.lu@intel.com>
2492
2493         PR driver/54335
2494         * doc/invoke.texi: Add -da and remove -dm.
2495
2496 2012-09-03  Jakub Jelinek  <jakub@redhat.com>
2497
2498         Backported from mainline
2499         2012-09-01  Jakub Jelinek  <jakub@redhat.com>
2500
2501         PR target/54436
2502         * config/i386/i386.md (*mov<mode>_insv_1_rex64, *movsi_insv_1): If
2503         operands[1] is CONST_INT_P, convert it to QImode before printing.
2504
2505         2012-08-31  Jakub Jelinek  <jakub@redhat.com>
2506
2507         PR c/54428
2508         * c-convert.c (convert): Don't call fold_convert_loc if
2509         TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
2510         is a COMPLEX_EXPR.  Remove TYPE_MAIN_VARIANT check from
2511         COMPLEX_TYPE -> COMPLEX_TYPE conversion.
2512
2513         2012-08-24  Jakub Jelinek  <jakub@redhat.com>
2514
2515         PR c/54363
2516         * gimplify.c (optimize_compound_literals_in_ctor): Only recurse
2517         if init is a CONSTRUCTOR.
2518
2519 2012-09-02  Eric Botcazou  <ebotcazou@adacore.com>
2520
2521         PR rtl-optimization/54369
2522         * config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before
2523         calling dbr_schedule.
2524         * config/sparc/sparc.c (sparc_reorg): Likewise.
2525
2526 2012-08-31  Kirill Yukhin  <kirill.yukhin@intel.com>
2527
2528         Backport from mainline
2529         2012-08-23  Yuri Rumyantsev  <ysrumyan@gmail.com>
2530
2531         * config/i386/i386.c (ia32_multipass_dfa_lookahead) : Add
2532         case for Atom processor.
2533
2534 2012-08-28  Uros Bizjak  <ubizjak@gmail.com>
2535
2536         Backport from mainline
2537         2012-08-27  Uros Bizjak  <ubizjak@gmail.com>
2538
2539         PR target/46254
2540         * config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Return
2541         true for TARGET_64BIT or !flag_pic.
2542         * config/i386/sync.md (*atomic_compare_and_swap_doubledi_pic): Remove.
2543         (atomic_compare_and_swap_double<mode>): Change operand 2 predicate
2544         to cmpxchg8b_pic_memory_operand.  Use DWIH mode iterator.
2545         Add insn constraint.  Conditionally emit xchg asm insns.
2546         (atomic_compare_and_swap<mode>): Update calls.  Check only
2547         cmpxchg8b_pic_memory_operand in memory address fixup.
2548         (DCASMODE): Remove.
2549         (CASHMODE): Rename from DCASHMODE.
2550         (doublemodesuffix): Update modes.
2551         (regprefix): New mode attribute.
2552
2553         (unspecv) <UNSPECV_CMPXCHG_{1,2,3,4}>: Remove.
2554         <UNSPECV_CMPXCHG>: New constant.
2555         (atomic_compare_and_swap<mode>_1): Rename from
2556         atomic_compare_and_swap_single<mode>.  Update calls and
2557         unspec_volatile constants.
2558         (atomic_compare_and_swap<mode>_doubleword): Rename from
2559         atomic_compare_and_swap_double<mode>.  Update calls and
2560         unspec_volatile constants.
2561
2562 2012-08-28  Walter Lee  <walt@tilera.com>
2563
2564         Backport from mainline
2565         2012-08-28  Walter Lee  <walt@tilera.com>
2566
2567         * confg/tilegx/tilegx.md: Fix code style.
2568         (*zero_extendsidi_truncdisi): Fix typo.
2569         * config/tilegx/tilegx.c: Fix code style.
2570         (tilegx_function_profiler): Fix typo.
2571
2572 2012-08-27  Walter Lee  <walt@tilera.com>
2573
2574         Backport from mainline
2575         2012-08-27  Walter Lee  <walt@tilera.com>
2576
2577         * doc/md.texi (TILE-Gx): Fix typo.
2578
2579 2012-08-27  Walter Lee  <walt@tilera.com>
2580
2581         Backport from mainline
2582         2012-08-27  Walter Lee  <walt@tilera.com>
2583
2584         * config/tilegx/tilegx.c (tilegx_function_profiler): Fix typo.
2585         * config/tilepro/tilepro.c (tilepro_function_profiler): Ditto.
2586
2587 2012-08-27  Walter Lee  <walt@tilera.com>
2588
2589         Backport from mainline
2590         2012-08-27  Walter Lee  <walt@tilera.com>
2591
2592         * config/tilegx/tilegx.md (*bfins): Rename to insn_bfins.
2593         (insn_bfins): Delete.
2594
2595 2012-08-27  Walter Lee  <walt@tilera.com>
2596
2597         Backport from mainline
2598         2012-08-27  Walter Lee  <walt@tilera.com>
2599
2600         * config/tilegx/sync.md (atomic_compare_and_swap_bare<mode>,
2601         atomic_exchange_bare<mode>,
2602         atomic_fetch_<fetchop_name>_bare<mode>): Set type to X1_remote.
2603         * config/tilegx/tilegx-generic.md (X1_remote): New insn_reservation.
2604         * config/tilegx/tilegx.md (type): Add X1_remove.
2605         (insn_cmpexch<four_if_si>, insn_exch<four_if_si>,
2606         insn_fetchadd<four_if_si>, insn_fetchaddgez<four_if_si>,
2607         insn_fetchand<four_if_si>, insn_fetchor<four_if_si>): Set type to
2608         X1_remote.
2609
2610 2012-08-25  Eric Botcazou  <ebotcazou@adacore.com>
2611
2612         PR rtl-optimization/54088
2613         * jump.c (delete_related_insns): Robustify latest change.
2614
2615 2012-08-21  Richard Guenther  <rguenther@suse.de>
2616
2617         Backport from mainline
2618         2012-08-16  Richard Guenther  <rguenther@suse.de>
2619
2620         PR middle-end/54146
2621         * tree-ssa-loop-niter.c (find_loop_niter_by_eval): Free the
2622         exit vector.
2623         * ipa-pure-const.c (analyze_function): Use FOR_EACH_LOOP_BREAK.
2624         * cfgloop.h (FOR_EACH_LOOP_BREAK): Fix.
2625         * tree-ssa-structalias.c (handle_lhs_call): Properly free rhsc.
2626         * tree-ssa-loop-im.c (analyze_memory_references): Adjust.
2627         (tree_ssa_lim_finalize): Free all mem_refs.
2628         * tree-ssa-sccvn.c (extract_and_process_scc_for_name): Free
2629         scc when bailing out.
2630         * modulo-sched.c (sms_schedule): Use FOR_EACH_LOOP_BREAK.
2631         * ira-build.c (loop_with_complex_edge_p): Free loop exit vector.
2632         * graphite-sese-to-poly.c (scop_ivs_can_be_represented): Use
2633         FOR_EACH_LOOP_BREAK.
2634
2635         2012-08-17  Richard Guenther  <rguenther@suse.de>
2636
2637         * tree-sra.c (modify_function): Free redirect_callers vector.
2638         * ipa-split.c (split_function): Free args_to_pass vector.
2639         * tree-vect-stmts.c (vectorizable_operation): Do not pre-allocate
2640         vec_oprnds.
2641         (new_stmt_vec_info): Do not pre-allocate STMT_VINFO_SAME_ALIGN_REFS.
2642         * tree-vect-slp.c (vect_free_slp_instance): Free the instance.
2643         (vect_analyze_slp_instance): Free everything.
2644         (destroy_bb_vec_info): Free the SLP instances.
2645
2646         2012-08-17  Richard Guenther  <rguenther@suse.de>
2647
2648         * params.def (integer-share-limit): Decrease from 256 to 251,
2649         add rationale.
2650
2651         2012-08-21  Richard Guenther  <rguenther@suse.de>
2652
2653         * tree-ssa-loop-im.c (tree_ssa_lim_finalize): Properly free
2654         the affine expansion cache.
2655
2656 2012-08-20  Patrick Marlier  <patrick.marlier@gmail.com>
2657
2658         Backported from trunk
2659         2012-08-20  Patrick Marlier  <patrick.marlier@gmail.com>
2660
2661         PR middle-end/53992
2662         * omp-low.c (lower_omp_1): Handle GIMPLE_TRANSACTION.
2663
2664 2012-08-20  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
2665
2666         Backport from mainline.
2667         2012-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
2668
2669         PR target/54212
2670         * config/arm/neon.md (vec_set<mode>_internal VD,VQ): Do not
2671         mark as predicable. Adjust asm template.
2672         (vec_setv2di_internal): Likewise.
2673         (vec_extract<mode> VD, VQ): Likewise.
2674         (vec_extractv2di): Likewise.
2675         (neon_vget_lane<mode>_sext_internal VD, VQ): Likewise.
2676         (neon_vset_lane<mode>_sext_internal VD, VQ): Likewise.
2677         (neon_vdup_n<mode> VX, V32): Likewise.
2678         (neon_vdup_nv2di): Likewise.
2679
2680 2012-08-17  Walter Lee  <walt@tilera.com>
2681
2682         Backport from mainline
2683         2012-08-17  Walter Lee  <walt@tilera.com>
2684
2685         * config/tilegx/feedback.h (FEEDBACK_ENTER_EXPLICIT): Define.
2686         (FEEDBACK_ENTER): Define.
2687         (FEEDBACK_REENTER): Define.
2688         (FEEDBACK_ENTRY): Define.
2689         * config/tilepro/feedback.h: (FEEDBACK_ENTER_EXPLICIT): Define.
2690         (FEEDBACK_ENTER): Define.
2691         (FEEDBACK_REENTER): Define.
2692         (FEEDBACK_ENTRY): Define.
2693
2694 2012-08-16  Walter Lee  <walt@tilera.com>
2695
2696         Backport from mainline
2697         2012-08-16  Walter Lee  <walt@tilera.com>
2698
2699         * config.gcc (tilegx-*-linux*): Add feedback.h.
2700         (tilepro-*-linux*): Likewise.
2701         * config/tilegx/feedback.h: New file.
2702         * config/tilepro/feedback.h: New file.
2703
2704 2012-08-08  Pavel Chupin  <pavel.v.chupin@intel.com>
2705
2706         Backport from mainline r189840 and r187586:
2707         2012-07-25 Sergey Melnikov <sergey.melnikov@intel.com>
2708
2709         * config/i386/i386.md (stack_protect_set): Disable the pattern
2710         for Android since Android libc (bionic) does not provide random
2711         value for stack protection guard at gs:0x14. Guard value
2712         will be provided from external symbol (default implementation).
2713         (stack_protect_set_<mode>): Likewise.
2714         (stack_protect_test): Likewise.
2715         (stack_protect_test_<mode>): Likewise.
2716         * gcc/defaults.h: Define macro TARGET_HAS_BIONIC to 0 - target does
2717         not have Bionic by default
2718         * config/linux.h: Redefine macro TARGET_HAS_BIONIC to (OPTION_BIONIC)
2719         Macro OPTION_BIONIC is defined in this file and provides Bionic
2720         accessibility status
2721
2722         2012-05-16  Igor Zamyatin  <igor.zamyatin@intel.com>
2723
2724         * configure.ac: Stack protector enabling for Android targets.
2725         * configure: Regenerate.
2726
2727 2012-08-13  Jakub Jelinek  <jakub@redhat.com>
2728
2729         Backported from trunk
2730         2012-07-19  Jakub Jelinek  <jakub@redhat.com>
2731
2732         PR rtl-optimization/53942
2733         * function.c (assign_parm_setup_reg): Avoid zero/sign extension
2734         directly from likely spilled non-fixed hard registers, move them
2735         to pseudo first.
2736
2737 2012-08-11  Uros Bizjak  <ubizjak@gmail.com>
2738
2739         * config/i386/sse.md (xop_phaddbq):  Fix vec_select selectors.
2740         (xop_phaddubq): Ditto.
2741
2742 2012-08-10  Ulrich Weigand  <ulrich.weigand@linaro.org>
2743
2744         Backport from mainline
2745         2012-07-30  Ulrich Weigand  <ulrich.weigand@linaro.org>
2746                     Richard Earnshaw  <rearnsha@arm.com>
2747
2748         * target.def (vector_alignment): New target hook.
2749         * doc/tm.texi.in (TARGET_VECTOR_ALIGNMENT): Document new hook.
2750         * doc/tm.texi: Regenerate.
2751         * targhooks.c (default_vector_alignment): New function.
2752         * targhooks.h (default_vector_alignment): Add prototype.
2753         * stor-layout.c (layout_type): Use targetm.vector_alignment.
2754         * config/arm/arm.c (arm_vector_alignment): New function.
2755         (TARGET_VECTOR_ALIGNMENT): Define.
2756
2757         * tree-vect-data-refs.c (vect_update_misalignment_for_peel): Use
2758         vector type alignment instead of size.
2759         * tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Use
2760         element type size directly instead of computing it from alignment.
2761         Fix variable naming and comment.
2762
2763 2012-08-09  Uros Bizjak  <ubizjak@gmail.com>
2764
2765         Backport from mainline
2766         2012-08-09  Uros Bizjak  <ubizjak@gmail.com>
2767
2768         * config/alpha/alpha.c (alpha_pad_noreturn): Rename to ...
2769         (alpha_pad_function_end): ... this.  Also insert NOP between
2770         sibling call and GP load.
2771         (alpha_reorg): Update call to alpha_pad_function_end.  Expand comment.
2772
2773 2012-08-09  H.J. Lu  <hongjiu.lu@intel.com>
2774
2775         Backport from mainline
2776         2012-08-08  Richard Sandiford  <rdsandiford@googlemail.com>
2777                     H.J. Lu  <hongjiu.lu@intel.com>
2778
2779         PR rtl-optimization/54157
2780         * combine.c (gen_lowpart_for_combine): Don't return identity
2781         for CONST or symbolic reference.
2782
2783 2012-08-06  Uros Bizjak  <ubizjak@gmail.com>
2784
2785         Backport from mainline
2786         2012-07-23  Uros Bizjak  <ubizjak@gmail.com>
2787
2788         * config/i386/i386-protos.h (ix86_lea_outperforms): Remove prototype.
2789         * config/i386/i386.c (ix86_lea_outperforms): Make static.  Make
2790         split_cost argument signed.
2791         (ix86_use_lea_for_mov): Use INVALID_REGNUM instead of -1.
2792         (ix86_avoid_lea_for_addr): Ditto.
2793
2794         2012-07-27  Uros Bizjak  <ubizjak@gmail.com>
2795
2796         * config/i386/i386.c (ix86_avoid_lea_for_addr): Return false if
2797         the address has less than two components.
2798
2799 2012-08-02  Steve Ellcey  <sellcey@mips.com>
2800
2801         Backport from mainline
2802         2012-07-19  Steve Ellcey  <sellcey@mips.com>
2803
2804         * config/mips/mips.c (mips_set_mips16_mode): Clear SYNCI_MASK in
2805         MIPS16 mode.
2806
2807 2012-08-02  Uros Bizjak  <ubizjak@gmail.com>
2808
2809         Backport from mainline
2810         2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
2811
2812         PR target/53961
2813         * config/i386/i386.c (ix86_legitimate_address_p): Move check for
2814         negative constant address for TARGET_X32 ...
2815         (ix86_decompose_address): ... here.  Reject constant addresses
2816         that don't satisfy x86_64_immediate_operand predicate.
2817
2818         2012-07-23  Uros Bizjak  <ubizjak@gmail.com>
2819
2820         PR target/53961
2821         * config/i386/i386.md (*lea): Add asserts to detect invalid addresses.
2822         * config/i386/i386.c (ix86_print_operand_address): Ditto.
2823         (ix86_decompose_address): Allow (zero_extend:DI (subreg:SI (...)))
2824         addresses.  Prevent zero extensions of CONST_INT operands.
2825
2826         2012-07-22  Uros Bizjak  <ubizjak@gmail.com>
2827
2828         PR target/53961
2829         * config/i386/i386.md (*lea): New insn pattern.
2830         (*lea_1): Remove.
2831         (*lea<mode>_2): Ditto.
2832         (*lea_{3,4,5,6}_zext): Ditto.
2833         * config/i386/predicates.md (lea_address_operand): Do not reject
2834         zero-extended address operands.
2835         * config/i386/constraints.md (j): Remove address constraint.
2836         * config/i386/i386.c (ix86_decompose_address): Allow SImode subreg
2837         of an address.
2838         (ix86_print_operand_address): Handle SImode subreg of an address.
2839         (ix86_avoid_lea_for_addr): Reject zero-extended addresses for now.
2840
2841 2012-08-01  Uros Bizjak  <ubizjak@gmail.com>
2842
2843         Backport from mainline
2844         2012-03-09  Uros Bizjak  <ubizjak@gmail.com>
2845
2846         PR target/52530
2847         * config/i386/i386.c (ix86_print_operand): Handle 'E' operand modifier.
2848         (ix86_print_operand_address): Handle UNSPEC_LEA_ADDR. Do not fallback
2849         to set code to 'q'.
2850         * config/i386/i386.md (UNSPEC_LEA_ADDR): New unspec.
2851         (*movdi_internal_rex64): Use %E operand modifier for lea.
2852         (*movsi_internal): Ditto.
2853         (*lea_1): Ditto.
2854         (*lea<mode>_2): Ditto.
2855         (*lea_{3,4,5,6}_zext): Ditto.
2856         (*tls_global_dynamic_32_gnu): Ditto.
2857         (*tls_global_dynamic_64): Ditto.
2858         (*tls_dynamic_gnu2_lea_32): Ditto.
2859         (*tls_dynamic_gnu2_lea_64): Ditto.
2860         (pro_epilogue_adjust_stack_<mode>_add): Ditto.
2861
2862 2012-08-01  Uros Bizjak  <ubizjak@gmail.com>
2863
2864         Backport from mainline
2865         2012-08-01  Uros Bizjak  <ubizjak@gmail.com>
2866
2867         * config/i386/i386.c (ix86_address_subreg_operand): Reject
2868         stack pointer.
2869         (ix86_print_operand_address): Assert that parts.base and parts.index
2870         are non-NULL after call to simplify_subreg.
2871
2872 2012-07-22  Oleg Endo  <olegendo@gcc.gnu.org>
2873
2874         PR target/33135
2875         * config/sh/sh.opt (mieee): Use Var instead of Mask.  Correct
2876         description.
2877         * config/sh/sh.c (sh_option_override): Do not change
2878         flag_finite_math_only.  Set TARGET_IEEE to complement of
2879         flag_finite_math_only.
2880         * doc/invoke.texi (SH options): Add mno-ieee.  Correct
2881         description of mieee and mno-ieee behavior.
2882
2883 2012-07-20  Kirill Yukhin  <kirill.yukhin@intel.com>
2884
2885         PR target/53877
2886         * config/i386/lzcntintrin.h (_lzcnt_u32): New.
2887         (_lzcnt_u64): Ditto.
2888
2889 2012-07-20  Andrey Belevantsev  <abel@ispras.ru>
2890
2891         Backport from mainline
2892         2012-03-06  Andrey Belevantsev  <abel@ispras.ru>
2893
2894         PR rtl-optimization/52250
2895         * sel-sched-ir.c (maybe_tidy_empty_bb): Try harder to find a bb
2896         to put note list into.  Unconditionally call move_bb_info.
2897         (move_bb_info): Do not assert the blocks being in the same region,
2898         just drop the note list if they are not.
2899
2900 2012-07-19  Eric Botcazou  <ebotcazou@adacore.com>
2901
2902         * config/sparc/sparc.md (adddi3_insn_sp32): Add earlyclobber.
2903
2904 2012-07-19  Eric Botcazou  <ebotcazou@adacore.com>
2905
2906         * tree-ssa-forwprop.c (combine_conversions): Punt if the RHS of the
2907         defining statement is a SSA name that occurs in abnormal PHIs.
2908
2909 2012-07-19  Eric Botcazou  <ebotcazou@adacore.com>
2910
2911         * gimple-fold.c (canonicalize_constructor_val): Strip only useless type
2912         conversions.
2913
2914 2012-07-19  Richard Guenther  <rguenther@suse.de>
2915             Eric Botcazou  <ebotcazou@adacore.com>
2916
2917         * tree-ssa-ccp.c (valid_lattice_transition): Clarify comment
2918         about transition from invariant to known bits.
2919         (likely_value): Addresses with UNDEFINED components are UNDEFINED.
2920
2921 2012-07-19  Jakub Jelinek  <jakub@redhat.com>
2922
2923         PR middle-end/54017
2924         * tree-cfgcleanup.c (cleanup_omp_return): Remove.
2925         (cleanup_tree_cfg_bb): Don't call it.
2926         * omp-low.c (expand_omp_sections): Fix up the !exit_reachable case
2927         handling.
2928
2929 2012-07-19  Christian Bruel  <christian.bruel@st.com>
2930
2931         PR target/54029
2932         * config/sh/sh.c (gen_far_branch): Set JUMP_LABEL for return jumps.
2933
2934 2012-07-18  Ralf Corsépius  <ralf.corsepius@rtems.org>
2935
2936         * config.gcc (v850-*-rtems*): New target.
2937         * config/v850/rtems.h: New.
2938         * config/v850/t-rtems: New.
2939
2940 2012-07-18  Nick Clifton  <nickc@redhat.com>
2941
2942         * doc/invoke.texi (ARM Options): Document -munaligned-access.
2943
2944 2012-07-15  Uros Bizjak  <ubizjak@gmail.com>
2945
2946         PR target/53961
2947
2948         Backport from mainline
2949         2012-04-25  Jakub Jelinek  <jakub@redhat.com>
2950
2951         PR target/53110
2952         * config/i386/i386.md (and<mode>3): For andq $0xffffffff, reg
2953         instead expand it as zero extension.
2954
2955 2012-07-14  Uros Bizjak  <ubizjak@gmail.com>
2956
2957         * config/i386/i386.md (QImode and HImode cmove splitters): Merge
2958         QImode and HImode splitters.  Use ix86_comparison_operator.
2959         Explicitly match FLAGS_REG.
2960         (DFmode cmove splitter): Explicitly match FLAGS_REG.
2961
2962 2012-07-13  Richard Sandiford  <rdsandiford@googlemail.com>
2963             Steven Bosscher  <steven@gcc.gnu.org>
2964             Bernd Schmidt  <bernds@codesourcery.com>
2965
2966         PR rtl-optimization/53908
2967         * df-problems.c (can_move_insns_across): When doing
2968         memory-reference book-keeping, handle call insns.
2969
2970 2012-07-10  Uros Bizjak  <ubizjak@gmail.com>
2971
2972         Backport from mainline
2973         2012-07-03  Uros Bizjak  <ubizjak@gmail.com>
2974
2975         PR target/53811
2976         * config/i386/i386.c (x86_output_mi_thunk): Check if fnaddr satisfies
2977         sibcall_insn_operand.  Move it to a temporary register if not.
2978
2979         2012-07-06  Uros Bizjak  <ubizjak@gmail.com>
2980
2981         PR target/53853
2982         * config/i386/i386.c (x86_output_mi_thunk): For CM_LARGE_PIC model,
2983         emit PIC sequence for fnaddr symbol reference in advance.
2984
2985 2012-07-09  Jason Merrill  <jason@redhat.com>
2986
2987         PR c++/53882
2988         * tree.c (type_contains_placeholder_1): Handle NULLPTR_TYPE.
2989         (type_hash_eq): Likewise.
2990
2991         PR c++/53826
2992         * tree.c (build_zero_cst): Handle NULLPTR_TYPE.
2993
2994 2012-07-07  Ulrich Weigand  <ulrich.weigand@linaro.org>
2995
2996         * combine.c (force_to_mode) [LSHIFTRT]: Avoid undefined behaviour
2997         due to negative shift amount.
2998
2999 2012-07-06  Kai Tietz  <ktietz@redhat.com>
3000
3001         Backport from mainline.
3002         PR bootstrap/52947
3003         * config/i386/mingw32.h (NATIVE_SYSTEM_HEADER_DIR): Define it always
3004         as "/mingw/include".
3005
3006 2012-07-06  Nick Clifton  <nickc@redhat.com>
3007
3008         * config/mn10300/mn10300.c (mn10300_encode_section_info): Call
3009         default_encode_section_info.
3010
3011 2012-07-06  Richard Guenther  <rguenther@suse.de>
3012
3013         Backport from mainline
3014         2012-03-30  Richard Guenther  <rguenther@suse.de>
3015
3016         PR middle-end/52786
3017         * double-int.c (rshift_double): Remove not needed cast.
3018
3019         2012-03-28  Richard Guenther  <rguenther@suse.de>
3020
3021         PR middle-end/50708
3022         * double-int.h (rshift_double): Remove.
3023         * double-int.c (lshift_double): Use absu_hwi to make count
3024         positive.
3025         (rshift_double): Make static, take unsigned count argument,
3026         remove handling of negative count argument.
3027         (double_int_rshift): Dispatch to lshift_double.
3028
3029 2012-07-06  Richard Guenther  <rguenther@suse.de>
3030
3031         Backport from mainline
3032         2012-06-18  Richard Guenther  <rguenther@suse.de>
3033
3034         PR tree-optimization/53693
3035         * tree-vect-patterns.c (vect_operation_fits_smaller_type):
3036         Reject operands with more than one use.
3037
3038 2012-07-06  Richard Guenther  <rguenther@suse.de>
3039
3040         Backport from mainline
3041         2012-04-11  Richard Guenther  <rguenther@suse.de>
3042
3043         PR middle-end/52621
3044         * tree-chrec.c (evolution_function_is_invariant_rec_p): Properly
3045         consider loop nesting.
3046         (evolution_function_is_univariate_p): Properly check the remainder
3047         for chrecs.
3048
3049 2012-07-05  Pat Haugen <pthaugen@us.ibm.com>
3050
3051         Backport from mainline
3052         2012-05-24  Pat Haugen <pthaugen@us.ibm.com>
3053
3054         * config/rs6000/rs6000.c (rs6000_option_override_internal): Change
3055         rs6000_sched_costly_dep default to true_store_to_load_dep_costly.
3056         (adjacent_mem_locations): Move some code to and call...
3057         (get_memref_parts): ...new function.
3058         (mem_locations_overlap): New function.
3059         (rs6000_adjust_priority): Adjust calls to is_load_insn/is_store_insn.
3060         (is_mem_ref): Rename to...
3061         (find_mem_ref): ...this. Return MEM rtx.
3062         (get_store_dest): Remove function.
3063         (is_load_insn1, is_load_insn, is_store_insn1, is_store_insn): Add
3064         new parameter and adjust calls.
3065         (rs6000_is_costly_dependence): Update calls for extra arg. Make sure
3066         mem refs overlap for true_store_to_load_dep_costly.
3067         (rs6000_sched_reorder2): Update calls for extra arg. Adjust args
3068         passed to adjacent_mem_locations.
3069         (is_costly_group): Walk resolved dependency list.
3070         (force_new_group): Emit group ending nop for Power6/Power7.
3071         * config/rs6000/rs6000.md (UNSPEC_GRP_END_NOP): New enum value.
3072         (group_ending_nop): New define_insn.
3073
3074 2012-07-04  Richard Guenther  <rguenther@suse.de>
3075
3076         PR middle-end/53433
3077         * gimple-fold.c (get_base_constructor): Do not return an
3078         error_mark_node DECL_INITIAL.
3079
3080 2012-07-04  Uros Bizjak  <ubizjak@gmail.com>
3081
3082         Backport from mainline
3083         2012-07-03  Uros Bizjak  <ubizjak@gmail.com>
3084
3085         * config/i386/i386.c (ix86_option_override_internal): Fix wrong
3086         code model string in the error message.
3087
3088 2012-07-04  Tristan Gingold  <gingold@adacore.com>
3089
3090         Backport from mainline.
3091         2012-06-25  Tristan Gingold  <gingold@adacore.com>
3092
3093         * config/i386/winnt.c (i386_pe_seh_end_prologue): Move code to ...
3094         (seh_cfa_adjust_cfa): ... that function.
3095         (seh_emit_stackalloc): Do not emit out of range values.
3096         * config/i386/i386.md: Delete unused UNSPEC_REG_SAVE,
3097         UNSPEC_DEF_CFA constants.
3098         * config/i386/i386.h (SEH_MAX_FRAME_SIZE): Define.
3099         * config/i386/i386.c (ix86_frame_pointer_required): Required
3100         for very large frames on SEH target.
3101         (ix86_compute_frame_layout): Save area is before frame pointer
3102         on SEH target.  Handle very large frames.
3103         (ix86_expand_prologue): Likewise.
3104
3105 2012-07-04  Richard Guenther  <rguenther@suse.de>
3106
3107         * tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same
3108         as in free_lang_data_in_type.
3109
3110 2012-07-02  Martin Jambor  <mjambor@suse.cz>
3111
3112         Backport from mainline.
3113         2012-07-02  Martin Jambor  <mjambor@suse.cz>
3114
3115         PR middle-end/38474
3116         * ipa-prop.c (compute_known_type_jump_func): Put BINFO check before a
3117         dynamic type change check.
3118
3119 2012-06-29  Eric Botcazou  <ebotcazou@adacore.com>
3120
3121         * tree-eh.c (lower_try_finally_switch): Really put the location of the
3122         last statement of the finally block onto the switch.
3123
3124 2012-06-29  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
3125
3126         * configure: Regenerate.
3127
3128         Backport from mainline.
3129         2012-03-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
3130
3131         * config.gcc (target_type_format_char): New. Document it. Set it for
3132         arm*-*-* .
3133         * configure.ac (gnu_unique_option): Use target_type_format_char
3134         in test.  Comment rationale.
3135
3136 2012-06-29  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
3137
3138         Backport from mainline.
3139         2012-05-30  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>
3140
3141         * config/arm/arm.c (arm_evpc_neon_vrev): Adjust off by one error.
3142
3143 2012-06-28  Georg-Johann Lay  <avr@gjlay.de>
3144
3145         Backport from 2012-06-28 mainline r189049
3146
3147         PR 53595
3148         * config/avr/avr.c (avr_hard_regno_call_part_clobbered): New.
3149         * config/avr/avr-protos.h (avr_hard_regno_call_part_clobbered): New.
3150         * config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): Forward to
3151         avr_hard_regno_call_part_clobbered.
3152
3153 2012-06-28  Richard Guenther  <rguenther@suse.de>
3154
3155         PR middle-end/53790
3156         * expr.c (expand_expr_real_1): Verify if the type is complete
3157         before inspecting its size.
3158
3159 2012-06-27  Nick Clifton  <nickc@redhat.com>
3160
3161         * config/rx/rx.md (comparesi3_extend): Remove = modifier from
3162         input operand.
3163
3164 2012-06-26  Alexandre Oliva  <aoliva@redhat.com>
3165
3166         PR debug/53682
3167         * cselib.c (promote_debug_loc): Don't crash on NULL argument.
3168
3169 2012-06-26  Nick Clifton  <nickc@redhat.com>
3170
3171         * config/rx/rx.md (simple_return): Use the simple_return rtx.
3172
3173 2012-06-25  Jakub Jelinek  <jakub@redhat.com>
3174
3175         PR target/53759
3176         * config/i386/sse.md (sse_loadlps): Use x m x constraints instead
3177         of x x x in the vmovlps load alternative.
3178
3179 2012-06-22  Richard Guenther  <rguenther@suse.de>
3180
3181         * gcov-iov.c: Include bconfig.h and system.h.
3182
3183 2012-06-22  Richard Guenther  <rguenther@suse.de>
3184
3185         PR gcov-profile/53744
3186         * gcov-iov.c (main): Treat "" and "prerelease" the same.
3187
3188 2012-06-22  Eric Botcazou  <ebotcazou@adacore.com>
3189
3190         * tree-ssa-live.c (remove_unused_scope_block_p): Remove again
3191         DECL_IGNORED_P non-reg vars even if they are used.
3192
3193 2012-06-19  Jason Merrill  <jason@redhat.com>
3194
3195         PR c++/52637
3196         * dwarf2out.c (modified_type_die): Use scope_die_for.
3197         (gen_type_die_with_usage, dwarf2out_finish): Likewise.
3198         (uses_local_type_r, uses_local_type): New.
3199         (scope_die_for): Keep a type that uses a local type in local scope.
3200         Use get_context_die for namespace and type scope.
3201
3202 2012-06-19  Richard Guenther  <rguenther@suse.de>
3203
3204         PR middle-end/53470
3205         * tree.c (free_lang_data_in_type): Do not clear TYPE_CONTEXT but
3206         replace it with the first non-BLOCK context.
3207
3208 2012-06-18  Vladimir Makarov  <vmakarov@redhat.com>
3209
3210         PR rtl-optimization/53700
3211
3212         Backport from mainline
3213         2012-03-29  Vladimir Makarov  <vmakarov@redhat.com>
3214
3215         * ira-color.c (setup_left_conflict_sizes_p): Process all
3216         conflicting objects.
3217
3218 2012-06-18  Venkataramanan Kumar <venkataramanan.kumar@amd.com>
3219
3220         Backport from mainline
3221         2012-05-09 Uros Bizjak  <ubizjak@gmail.com>
3222
3223         PR target/52908
3224         * config/i386/sse.md (vec_widen_smult_hi_v4si): Expand using
3225         xop_pmacsdqh insn pattern instead of xop_mulv2div2di3_high.
3226         (vec_widen_smult_lo_v4si): Expand using xop_pmacsdql insn pattern
3227         instead of xop_mulv2div2di3_low.
3228         (xop_p<macs>dql): Fix vec_select selector.
3229         (xop_p<macs>dqh): Ditto.
3230         (xop_mulv2div2di3_low): Remove insn_and_split pattern.
3231         (xop_mulv2div2di3_high): Ditto.
3232
3233 2012-06-17  Uros Bizjak  <ubizjak@gmail.com>
3234
3235         Backport from mainline:
3236         2012-06-17  Uros Bizjak  <ubizjak@gmail.com>
3237
3238         * config/i386/sse.md (vcvtph2ps): Fix vec_select selector.
3239
3240 2012-06-16  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3241
3242         Backport from mainline:
3243         2012-06-03  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3244
3245         * config/pa/pa.h (MAX_PCREL17F_OFFSET): Define.
3246         * config/pa/pa.c (pa_attr_length_millicode_call): Use
3247         MAX_PCREL17F_OFFSET instead of fixed offset.
3248         (pa_attr_length_call): Likewise.
3249         (pa_attr_length_indirect_call): Likewise.
3250
3251 2012-06-15  Walter Lee  <walt@tilera.com>
3252
3253         Backport from mainline:
3254         2012-06-15  Walter Lee  <walt@tilera.com>
3255
3256         * config/tilegx/sync.md (atomic_fetch_<fetchop_name><mode>): Fix typo.
3257
3258         2012-06-14  Maxim Kuvyrkov  <maxim@codesourcery.com>
3259
3260         * config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo.
3261
3262 2012-06-15  Aldy Hernandez  <aldyh@redhat.com>
3263
3264         Backport from mainline:
3265
3266         2012-05-31  Aldy Hernandez  <aldyh@redhat.com>
3267         * tree-ssa-loop-im.c (execute_sm): Do not check flag_tm.
3268         * gimple.h (block_in_transaction): Check for flag_tm.
3269
3270 2012-06-14  Aldy Hernandez  <aldyh@redhat.com>
3271
3272         PR tree-optimization/52558
3273
3274         Backport from mainline:
3275         2012-05-21  Aldy Hernandez  <aldyh@redhat.com>
3276         * gimple.h (gimple_set_in_transaction): Remove.
3277         (gimple_in_transaction): Look in BB instead.
3278         (gimple_statement_base): Remove in_transaction field.
3279         * basic-block.h (enum bb_flags): Add BB_IN_TRANSACTION.
3280         * trans-mem.c (compute_transaction_bits): Place transaction bit
3281         information into basic blocks.
3282
3283         2012-05-31  Aldy Hernandez  <aldyh@redhat.com>
3284
3285         PR tree-optimization/52558
3286         * cfg.c (alloc_aux_for_edge): Fix comment.
3287         (alloc_aux_for_edge): Remove static.
3288         * basic-block.h (alloc_aux_for_edge): Protoize.
3289         * tree-ssa-loop-im.c (execute_sm_if_changed): New.
3290         (execute_sm_if_changed_flag): New.
3291         (execute_sm_if_changed_flag_set): New.
3292         (execute_sm): Do not generate data races unless requested.
3293         (tree_ssa_lim_initialize): Call alloc_aux_for_edges.
3294         (tree_ssa_lim_finalize): Call free_aux_for_edges.
3295         * gimple.h (block_in_transaction): New.
3296         (gimple_in_transaction): Use block_in_transaction.
3297
3298 2012-06-14  Jakub Jelinek  <jakub@redhat.com>
3299
3300         Backported from mainline
3301         2012-06-12  Jakub Jelinek  <jakub@redhat.com>
3302
3303         PR rtl-optimization/53589
3304         * cfgrtl.c (force_nonfallthru_and_redirect): Do asm_goto_edge
3305         discovery even when e->dest != target.  If any LABEL_REF points
3306         to e->dest label, redirect it to target's label.
3307
3308         2012-06-07  Jakub Jelinek  <jakub@redhat.com>
3309
3310         PR middle-end/53580
3311         * omp-low.c (scan_omp_1_stmt): If check_omp_nesting_restrictions
3312         returns false, replace stmt with GIMPLE_NOP.
3313         (check_omp_nesting_restrictions): Instead of issuing warnings,
3314         issue errors and return false if any errors were reported.
3315
3316 2012-06-14  Richard Guenther  <rguenther@suse.de>
3317
3318         * BASE-VER: Set to 4.7.2.
3319         * DEV-PHASE: Set to prerelease.
3320
3321 2012-06-12  Christian Bruel  <christian.bruel@st.com>
3322
3323         PR target/53621
3324         * config/sh/sh.c (sh_option_override): Don't force
3325          flag_omit_frame_pointer and maccumulate_outgoing_args.
3326         * config/sh/sh.opt (maccumulate-outgoing-args): Init as Var.
3327
3328 2012-06-14  Release Manager
3329
3330         * GCC 4.7.1 released.
3331
3332 2012-06-13  Uros Bizjak  <ubizjak@gmail.com>
3333
3334         * config/ia64/sync.md (fetchop_name): Change ior attribute to "or".
3335
3336 2012-06-13  Richard Henderson  <rth@redhat.com>
3337
3338         * config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode
3339         iterator instead of INT.
3340
3341 2012-06-08  Richard Henderson  <rth@redhat.com>
3342
3343         PR c++/53602
3344         * combine-stack-adj.c (force_move_args_size_note): Add ARGS_SIZE
3345         note to a clobber insn when no other insn is available.
3346
3347 2012-06-04  Paolo Carlini  <paolo.carlini@oracle.com>
3348
3349         PR c++/53524
3350         * doc/invoke.texi (Wenum-compare): Update documentation.
3351
3352 2012-06-04  Edmar Wienskoski  <edmar@freescale.com>
3353
3354         PR target/53559
3355         * config/rs6000/altivec.md (altivec_stvlx): Change machine mode of
3356         operands.
3357         (altivec_stvlxl): Ditto.
3358         (altivec_stvrx): Ditto.
3359         (altivec_stvrxl): Ditto.
3360
3361 2012-06-04  Aldy Hernandez  <aldyh@redhat.com>
3362
3363         PR middle-end/47530
3364         * trans-mem.c (expand_block_edges): Do not skip the first
3365         statement when resetting the BB.
3366
3367 2012-06-04  Richard Guenther  <rguenther@suse.de>
3368
3369         PR middle-end/53471
3370         * dwarf2out.c (dwarf2out_finish): If generating LTO do not
3371         create new assembler names.
3372
3373 2012-06-04  Richard Guenther  <rguenther@suse.de>
3374
3375         Backport from mainline
3376         2012-04-25  Jakub Jelinek  <jakub@redhat.com>
3377
3378         PR middle-end/52979
3379         * stor-layout.c (get_best_mode): Don't return mode with bitsize
3380         larger than maxbits.  Don't compute maxbits modulo align.
3381         Also check that unit bytes long store at bitpos / unit * unit
3382         doesn't affect bits beyond bitregion_end.
3383         * expmed.c (store_bit_field_1): Avoid trying insv if OP_MODE MEM
3384         would not fit into bitregion_start ... bitregion_end + 1 bit
3385         region.
3386         (store_split_bit_field): Decrease unit close to end of bitregion_end
3387         if access is restricted in order to avoid mutual recursion.
3388
3389 2012-06-04  Georg-Johann Lay  <avr@gjlay.de>
3390
3391         Backport from 2012-06-04 mainline r188172
3392
3393         PR target/46261
3394         * config/avr/avr-stdint.h: New file.
3395         * config.gcc (avr-*-*,tm_file): Use avr/avr-stdint.h instead of
3396         newlib-stdint.h
3397
3398 2012-06-04  Jakub Jelinek  <jakub@redhat.com>
3399
3400         PR tree-optimization/53550
3401         * tree-ssa-loop-niter.c (number_of_iterations_cond): If type
3402         is POINTER_TYPE_P, use sizetype as step type instead of type.
3403
3404 2012-06-04  Richard Guenther  <rguenther@suse.de>
3405             Eric Botcazou  <ebotcazou@adacore.com>
3406
3407         Backport from mainline
3408         2012-04-03  Eric Botcazou  <ebotcazou@adacore.com>
3409
3410         * expr.c (get_bit_range): Add OFFSET parameter and adjust BITPOS.
3411         Change type of BITOFFSET to signed.  Make sure the lower bound of
3412         the computed range is non-negative by adjusting OFFSET and BITPOS.
3413         (expand_assignment): Adjust call to get_bit_range.
3414
3415         2012-03-27  Eric Botcazou  <ebotcazou@adacore.com>
3416
3417         * expr.c (get_bit_range): Return the null range if the enclosing record
3418         is part of a larger bit field.
3419
3420         2012-03-20  Richard Guenther  <rguenther@suse.de>
3421
3422         * stor-layout.c (finish_bitfield_representative): Fallback
3423         to conservative maximum size if the padding up to the next
3424         field cannot be computed as a constant.
3425         (finish_bitfield_layout): If we cannot compute the distance
3426         between the start of the bitfield representative and the
3427         bitfield member start a new representative.
3428         * expr.c (get_bit_range): The distance between the start of
3429         the bitfield representative and the bitfield member is zero
3430         if the field offsets are not constants.
3431
3432         2012-03-16  Richard Guenther  <rguenther@suse.de>
3433
3434         * stor-layout.c (finish_bitfield_representative): Fall back
3435         to the conservative maximum size if we cannot compute the
3436         size of the tail padding.
3437
3438         2012-03-14  Richard Guenther  <rguenther@suse.de>
3439
3440         * tree.h (DECL_BIT_FIELD_REPRESENTATIVE): New define.
3441         * stor-layout.c (start_bitfield_representative): New function.
3442         (finish_bitfield_representative): Likewise.
3443         (finish_bitfield_layout): Likewise.
3444         (finish_record_layout): Call finish_bitfield_layout.
3445         * tree.c (free_lang_data_in_decl): Only free DECL_QUALIFIER
3446         for QUAL_UNION_TYPE fields.
3447         * tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
3448         Stream DECL_BIT_FIELD_REPRESENTATIVE.
3449         * tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise.
3450
3451         PR middle-end/52080
3452         PR middle-end/52097
3453         PR middle-end/48124
3454         * expr.c (get_bit_range): Unconditionally extract bitrange
3455         from DECL_BIT_FIELD_REPRESENTATIVE.
3456         (expand_assignment): Adjust call to get_bit_range.
3457
3458 2012-06-01  Eric Botcazou  <ebotcazou@adacore.com>
3459
3460         PR middle-end/53501
3461         * fold-const.c (fold_binary_loc): Refine previous change.
3462
3463 2012-06-01  Oleg Endo  <olegendo@gcc.gnu.org>
3464
3465         Backport from mainline
3466         2012-03-27  Chung-Lin Tang  <cltang@codesourcery.com>
3467
3468         PR target/52667
3469         * config/sh/sh.c (find_barrier): Add equality check of last_got to
3470         avoid going above orig insn.  Update comments.
3471
3472 2012-06-01  Oleg Endo  <olegendo@gcc.gnu.org>
3473
3474         Backport from mainline
3475         2012-03-21  Kaz Kojima  <kkojima@gcc.gnu.org>
3476
3477         PR target/52642
3478         * config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of
3479         prologue for unwinder and profiler.
3480
3481 2012-06-01  Oleg Endo  <olegendo@gcc.gnu.org>
3482
3483         Backport from mainline
3484         2012-03-03  Kaz Kojima  <kkojima@gcc.gnu.org>
3485
3486         * config/sh/sh.md (abssi2): Add TARGET_SH1 condition.
3487
3488 2012-06-01  Oleg Endo  <olegendo@gcc.gnu.org>
3489
3490         Backport from mainline
3491         2012-03-03  Kaz Kojima  <kkojima@gcc.gnu.org>
3492
3493         * config/sh/sh.c (sh_dwarf_register_span): Don't apply
3494         DBX_REGISTER_NUMBER.
3495
3496 2012-06-01  Oleg Endo  <olegendo@gcc.gnu.org>
3497
3498         Backport from mainline
3499         2012-03-03  Kaz Kojima  <kkojima@gcc.gnu.org>
3500
3501         * config/sh/sh.c (shiftcosts): Return MAX_COST when the first
3502         operand is CONST_INT.  Take COSTS_N_INSNS into account.
3503         (sh_rtx_costs): Don't apply COSTS_N_INSNS to the return value of
3504         shiftcosts.     
3505
3506 2012-05-31  Georg-Johann Lay  <avr@gjlay.de>
3507
3508         * config/avr/avr.opt (-msp8): Document it.
3509         * doc/invoke.texi (AVR Options): Copy from trunk docu.
3510
3511 2012-05-31  Richard Guenther  <rguenther@suse.de>
3512
3513         PR middle-end/48493
3514         * expr.c (expand_assignment): Do not use movmisalign on
3515         non-memory.
3516
3517 2012-05-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
3518
3519         PR target/52999
3520         * config/pa/pa.c (TARGET_SECTION_TYPE_FLAGS): Define.
3521         (pa_section_type_flags): New.
3522         (pa_legitimate_constant_p): Revert previous change.
3523
3524 2012-05-30  Aldy Hernandez  <aldyh@redhat.com>
3525
3526         Backport from mainline
3527         2012-05-25  Aldy Hernandez  <aldyh@redhat.com>
3528
3529         PR middle-end/53008
3530         * trans-mem.c (ipa_tm_create_version_alias): Output new_node if
3531         accessed indirectly.
3532         (ipa_tm_create_version): Same.
3533
3534 2012-05-30  Jason Merrill  <jason@redhat.com>
3535
3536         PR c++/53220
3537         * c-typeck.c (array_to_pointer_conversion): Give -Wc++-compat warning
3538         about array compound literals.
3539
3540 2012-05-30  Richard Guenther  <rguenther@suse.de>
3541
3542         PR middle-end/53501
3543         * fold-const.c (fold_binary_loc): Make sure to call
3544         fold_plusminus_mult_expr with the original sign of operands.
3545
3546 2012-05-30  Eric Botcazou  <ebotcazou@adacore.com>
3547
3548         * explow.c (probe_stack_range): Restore simple control flow and stop