OSDN Git Service

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