OSDN Git Service

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