forked from illumos/gcc
/
ChangeLog
6389 lines (4723 loc) · 211 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2009-10-09 Neil Vachharajani <nvachhar@google.com>
* doc/cpp.texi (Other Directives): Do not list #ident and #sccs as
deprecated.
2010-05-12 Jakub Jelinek <jakub@redhat.com>
PR debug/42278
* dwarf2out.c (base_type_die): Don't add name attribute here.
(modified_type_die): Instead of sizetype use
its underlying original type. If a DW_TAG_base_type doesn't
have name added, add __unknown__.
(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
always call force_type_die instead.
2010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
Disable cfi directives unless GCC and gas agree on using read-only
.eh_frame sections for 64-bit.
* configure: Regenerate.
2010-04-29 Release Manager
* GCC 4.4.4 released.
2010-04-21 Jakub Jelinek <jakub@redhat.com>
PR middle-end/43570
* omp-low.c (scan_sharing_clauses): Don't scan_omp_op
OMP_CLAUSE_DECL for OMP_CLAUSE_COPYPRIVATE.
(lower_copyprivate_clauses): Use private var in outer
context instead of original var. Make sure the types
are correct for VLAs.
2010-04-20 Jakub Jelinek <jakub@redhat.com>
PR middle-end/43337
* tree-nested.c (convert_nonlocal_omp_clauses): OMP_CLAUSE_PRIVATE
with non-local decl doesn't need chain.
2010-04-19 Jie Zhang <jie@codesourcery.com>
PR target/43662
* reginfo.c (reinit_regs): Set caller_save_initialized_p
to false.
2010-04-19 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/43771
* tree-vect-analyze.c (vect_supported_load_permutation_p): Check
that load permutation doesn't have gaps.
2010-04-18 Eric Botcazou <ebotcazou@adacore.com>
PR tree-optimization/43769
* tree-sra.c (bitfield_overlaps_p): If the length of the element is
self-referential, try to compute an upper bound.
2010-04-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
Backport from mainline:
2009-12-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR ada/41912
* pa/linux-unwind.h (pa32_fallback_frame_state): Set fs->signal_frame
for signal frames.
* pa/hpux-unwind.h (pa32_fallback_frame_state): Likewise.
2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/43643
* config/i386/gmon-sol2.c [__x86_64__]: Properly restore %rcx.
2010-04-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Backport from mainline:
2010-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR target/38085
* config/i386/i386.c (x86_function_profiler)
[!NO_PROFILE_COUNTERS]: Fix typo.
* config/i386/gmon-sol2.c (_mcleanup) [__x86_64__]: Use call
instead of callq.
2010-04-08 Richard Guenther <rguenther@suse.de>
PR middle-end/42956
* gimplify.c (gimple_fold_indirect_ref): Avoid generating
new ARRAY_REFs on variable size element or minimal index arrays.
* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Use
gimple_fold_indirect_ref.
2010-04-08 Wolfgang Gellerich <gellerich@de.ibm.com>
* config/s390/s390.c (override_options): Adjust the z10
defaults for max-unroll-times, max-completely-peeled-insns
and max-completely-peel-times.
2010-04-08 Wolfgang Gellerich <gellerich@de.ibm.com>
* config/s390/s390.c (override_options): Set
default of max-pending-list-length to 256
2010-04-08 Jakub Jelinek <jakub@redhat.com>
Backport from mainline:
2010-03-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43560
* tree-ssa-loop-im.c (ref_always_accessed_p): Add store_p
parameter.
(can_sm_ref_p): Treat stores to readonly locations as
trapping.
2010-04-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43607
* ipa-type-escape.c (check_call): Do not access non-existing
arguments.
2010-04-01 Richard Guenther <rguenther@suse.de>
PR middle-end/43614
* tree-ssa-address.c (copy_mem_ref_info): Copy TREE_SIDE_EFFECTS
and TREE_THIS_VOLATILE.
(copy_ref_info): Likewise.
* tree-ssa-operands.c (get_tmr_operands): Check TREE_THIS_VOLATILE.
* tree.c (build7_stat): Ignore side-effects of all but arg5
for TARGET_MEM_REF. Set TREE_THIS_VOLATILE from arg5 of
TARGET_MEM_REF.
2010-04-08 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43186
* params.def (PARAM_MAX_UNROLL_ITERATIONS): New param.
* doc/invoke.texi (max-completely-peel-loop-nest-depth): Document.
* tree-ssa-loop-ivcanon.c (tree_unroll_loops_completely): Limit
unroller iterations.
2010-04-07 H.J. Lu <hongjiu.lu@intel.com>
PR target/43668
* config/i386/i386.c (setup_incoming_varargs_64): Align stack to
16byte for FP register save area.
2010-04-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43629
* tree-ssa-ccp.c (likely_value): Properly look for constant
values. Reset all_undefined_operands if we have seen a
constant value.
2010-04-06 Jakub Jelinek <jakub@redhat.com>
PR target/43638
* config/i386/i386.c (print_operand): Remove 'e' and 'E' code
handling.
2010-03-31 Uros Bizjak <ubizjak@gmail.com>
Backport from mainline:
2010-03-27 Uros Bizjak <ubizjak@gmail.com>
PR tree-optimization/43528
* stor-layout.c (place_field): Check that constant fits into
unsigned HWI when skipping calculation of MS bitfield layout.
2010-03-26 Uros Bizjak <ubizjak@gmail.com>
PR target/43524
* config/i386/i386.c (ix86_expand_prologue) [TARGET_STACK_PROBE]:
Remove invalid assert and wrong comment.
2010-03-31 Richard Guenther <rguenther@suse.de>
PR middle-end/43600
* cgraphunit.c (cgraph_output_in_order): Do not allocate
temporary data on stack.
2010-03-31 Jie Zhang <jie@codesourcery.com>
PR 43562
* reload.h (caller_save_initialized_p): Declare.
* toplev.c (backend_init_target): Don't call init_caller_save but
set caller_save_initialized_p to false.
* caller-save.c (caller_save_initialized_p): Define.
(init_caller_save): Check caller_save_initialized_p.
* ira.c (ira): Call init_caller_save if flag_caller_saves.
2010-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (s390_emit_prologue): Omit issuing a dynamic
stack check if the mask would be zero.
2010-03-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
Backport:
2009-06-16 J"orn Rennecke <joern.rennecke@arc.com>
Janis Johnson <janis187@us.ibm.com>
PR target/39254
* config/rs6000/rs6000.c (rs6000_emit_move): Don't emit a USE
for the symbol ref of a constant that is the source of a move
- nor for any other not-obvious-label-ref constants.
2010-03-27 Uros Bizjak <ubizjak@gmail.com>
PR target/42113
* config/alpha/alpha.md (*cmp_sadd_si): Change mode
of scratch register to DImode. Split to DImode comparison operator.
Use SImode subreg of scratch register in the multiplication.
(*cmp_sadd_sidi): Ditto.
(*cmp_ssub_si): Ditto.
(*cmp_ssub_sidi): Ditto.
2010-03-27 Joseph Myers <joseph@codesourcery.com>
PR c/43381
* c-decl.c (get_parm_info): Assert that decl going in OTHERS has a
nested binding iff it is a FUNCTION_DECL.
(store_parm_decls_newstyle): Pass nested=true to bind for
FUNCTION_DECLs amongst parameters.
2010-03-25 Jakub Jelinek <jakub@redhat.com>
PR c/43385
* gimplify.c (gimple_boolify): Only recurse on __builtin_expect
argument if the argument is truth_value_p.
2010-03-23 Kaz Kojima <kkojima@gcc.gnu.org>
Backport from mainline:
2010-01-08 DJ Delorie <dj@redhat.com>
* config/sh/sh.c (sh_expand_epilogue): Fix interrupt handler
register popping order.
2010-03-22 James E. Wilson <wilson@codesourcery.com>
PR target/43348
* ia64.md (call_nogp, call_value_nogp, sibcall_nogp, call_gp,
call_value_gp,sibcall_gp): Use 's' constraint not 'i'.
2010-03-22 Richard Guenther <rguenther@suse.de>
Backport from mainline:
2010-03-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43415
* tree-ssa-pre.c (phi_translate): Split out worker to ...
(phi_translate_1): ... this.
(phi_translate): Move all caching here. Cache all NARY
and REFERENCE translations.
2010-03-22 Jakub Jelinek <jakub@redhat.com>
Backport from mainline:
2010-03-20 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/43438
* combine.c (make_extraction): Properly zero-/sign-extend an
extraction of the low part of a CONST_INT. Also handle
CONST_DOUBLE.
2010-03-19 Michael Matz <matz@suse.de>
PR c++/43116
* attribs.c (decl_attributes): When rebuilding a function pointer
type use the same qualifiers as the original pointer type.
PR target/43305
* builtins.c (expand_builtin_interclass_mathfn,
expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
if that fails.
2010-03-18 Michael Matz <matz@suse.de>
PR middle-end/43419
* builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
into sqrt(x) if we need to preserve signed zeros.
2010-03-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR middle-end/42718
* pa.md (movmemsi): Set align to one if zero.
(movmemdi): Likewise.
2010-03-21 Kaz Kojima <kkojima@gcc.gnu.org>
Backport from mainline:
2009-05-12 Paolo Bonzini <bonzini@gnu.org>
PR target/43417
* config/sh/sh.md (cbranchdi4_i): Use an "I08" constraint
instead of "i" constraint.
2010-03-18 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline:
2010-03-18 Steven Bosscher <steven@gcc.gnu.org>
Eric Botcazou <ebotcazou@adacore.com>
PR rtl-optimization/43360
* loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
note if we don't know its invariant status.
2010-03-08 Jakub Jelinek <jakub@redhat.com>
Backport from mainline:
2010-03-04 Andrew Pinski <andrew_pinski@caviumnetworks.com>
PR c/43248
* c-decl.c (build_compound_literal): Return early if init is
an error_mark_node.
2010-03-08 Jakub Jelinek <jakub@redhat.com>
Backport from mainline:
2010-02-19 Jakub Jelinek <jakub@redhat.com>
PR middle-end/42233
* dojump.c (do_jump) <case TRUTH_NOT_EXPR>: Invert priority.
PR bootstrap/43121
* except.c (sjlj_emit_function_enter): Don't call
add_reg_br_prob_note, instead add REG_BR_PROB note to the last insn
directly.
* rtl.h (add_reg_br_prob_note): Remove prototype.
PR middle-end/42233
* loop-doloop.c (add_test): Adjust do_compare_rtx_and_jump caller.
PR middle-end/42233
* expr.h (jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump,
do_jump_1, do_compare_rtx_and_jump): Add PROB argument.
* dojump.c: Include output.h.
(inv): New inline function.
(jumpifnot, jumpifnot_1, jumpif, jumpif_1, do_jump_1, do_jump,
do_jump_by_parts_greater_rtx, do_jump_by_parts_greater,
do_jump_by_parts_zero_rtx, do_jump_by_parts_equality_rtx,
do_jump_by_parts_equality, do_compare_and_jump): Add PROB
argument, pass it down to other calls.
(do_compare_rtx_and_jump): Likewise. If PROB is not -1,
add REG_BR_PROB note to the conditional jump.
* cfgexpand.c (add_reg_br_prob_note): Removed.
(expand_gimple_cond): Don't call it, add the probability
as last argument to jumpif_1/jumpifnot_1.
* Makefile.in (dojump.o): Depend on output.h.
* builtins.c (expand_errno_check): Adjust do_compare_rtx_and_jump
callers.
* expmed.c (emit_store_flag_force, do_cmp_and_jump): Likewise.
* stmt.c (do_jump_if_equal): Likewise.
* cfgrtl.c (rtl_lv_add_condition_to_bb): Likewise.
* loop-unswitch.c (compare_and_jump_seq): Likewise.
* config/rs6000/rs6000.c (rs6000_aix_emit_builtin_unwind_init):
Likewise.
* optabs.c (expand_doubleword_shift, expand_abs): Likewise.
* expr.c (expand_expr_real_1): Adjust do_jump, jumpifnot and
jumpifnot_1 callers.
(expand_expr_real_2): Adjust jumpifnot_1 and do_compare_rtx_and_jump
callers.
(store_expr): Adjust jumpifnot caller.
(store_constructor): Adjust jumpif caller.
PR middle-end/42233
* gimplify.c (gimple_boolify): For __builtin_expect call
gimple_boolify also on its first argument.
2010-03-02 Uros Bizjak <ubizjak@gmail.com>
* config/alpha/alpha.c (override_options): Fix -mtune error message.
2010-03-02 Jakub Jelinek <jakub@redhat.com>
Backport from mainline:
2010-03-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43220
* tree-ssa-ccp.c (optimize_stack_restore): Do not optimize
BUILT_IN_STACK_{SAVE,RESTORE} around alloca.
2010-02-24 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Backport from trunk
2009-07-10 Mark Mitchell <mark@codesourcery.com>
* config/arm/thumb2.md (thumb2_cbz): Correct computation of length
attribute.
(thumb2_cbnz): Likewise.
2010-02-22 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md ("movqi"): Re-add the mem->mem alternative.
(QI to BLKmode splitter): New splitter.
2010-02-18 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Call
lang_hooks.types_compatible_p instead of comptypes.
2010-02-18 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/40887
Backport from trunk.
2009-12-24 Julian Brown <julian@codesourcery.com>
Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm.c (output_call_mem): Remove armv5 support.
* config/arm/arm.md (*call_mem): Disable for armv5. Add note.
(*call_value_mem): Likewise.
2010-02-17 Mikael Pettersson <mikpe@it.uu.se>
* config/sparc/gas.h: New file. Restore
TARGET_ASM_NAMED_SECTION to its ELF default.
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Do not
check !HAVE_GNU_AS.
* config/sparc/sparc.c (sparc_elf_asm_named_section):
Likewise. Add ATTRIBUTE_UNUSED to prototype.
* config.gcc (sparc*-*-linux*): Include sparc/gas.h
after sparc/sysv4.h.
2010-02-17 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Backport from trunk.
2009-12-07 Julian Brown <julian@codesourcery.com>
* config/arm/constraints.md (Ps, Pt): New constraint letters.
* config/arm/thumb2.md (*thumb2_addsi_short): Tighten constraints.
2010-02-16 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/43074
* tree-vect-analyze.c (vect_detect_hybrid_slp_stmts): Add
vectorizable cycles in hybrid SLP check.
2010-02-14 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (s390_sched_init): New function.
(TARGET_SCHED_INIT): Target hook defined.
2010-02-13 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42871
* tree-ssa-pre.c (phi_translate_set): Make sure to retain
leaders.
2010-02-10 Daniel Gutson <dgutson@codesourcery.com>
* config/arm/lib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__
added to the preprocessor condition.
2010-02-10 Jakub Jelinek <jakub@redhat.com>
PR debug/43010
* dwarf2out.c (retry_incomplete_types): Don't call gen_type_die
if no debug info should be emitted for it.
2010-02-09 Jakub Jelinek <jakub@redhat.com>
Backport from mainline:
2010-01-13 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42705
* tree-ssa-reassoc.c (build_and_add_sum): Insert stmts after
labels.
2010-02-08 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/42890
* tree-inline.c (delete_unreachable_blocks_update_callgraph): New
function backported from the trunk.
(tree_function_versioning): Call it instead of
delete_unreachable_blocks.
PR tree-optimization/42931
* tree-loop-linear.c (try_interchange_loops): Don't call
double_int_mul if estimated_loop_iterations failed.
2010-02-08 Richard Guenther <rguenther@suse.de>
PR middle-end/42995
* tree-inline.c (estimate_move_cost): Assert we are not called
with a void type.
(estimate_num_insns): Do not count the terminating void_type_node
of a function argument type list.
Backport from mainline:
2010-01-06 Richard Guenther <rguenther@suse.de>
* ipa-inline.c (cgraph_decide_inlining_incrementally): Do
not inline regular functions into always-inline functions.
2010-01-05 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/42462
* ipa-inline.c (compute_inline_parameters): Pass node->decl instead of
current_function_decl to helper functions and macros.
2010-02-04 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/42952
* dse.c (const_or_frame_p): Remove MEM handling.
2010-01-31 Eric Botcazou <ebotcazou@adacore.com>
PR middle-end/42898
Backport from mainline:
2009-04-23 Eric Botcazou <ebotcazou@adacore.com>
* gimplify.c (gimplify_modify_expr_rhs) <VAR_DECL>: Do not do a direct
assignment from the constructor either if the target is volatile.
2010-01-31 Richard Guenther <rguenther@suse.de>
PR middle-end/42898
* gimplify.c (gimplify_init_constructor): For volatile LHS
initialize a temporary.
2010-01-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/sparc/sparc.c (sparc_elf_asm_named_section): Test for
HAVE_GNU_AS value.
* config/sparc/sysv4.h [HAVE_GNU_AS] (TARGET_ASM_NAMED_SECTION):
Test for HAVE_GNU_AS value.
2010-01-26 Jakub Jelinek <jakub@redhat.com>
PR fortran/42866
* omp-low.c (expand_omp_sections): Only use single_pred if
l2_bb is single_pred_p.
2010-01-25 Christian Bruel <christian.bruel@st.com>
PR target/42841
* config/sh/sh.c (find_barrier): Increase length for non delayed
conditional branches.
(sh_insn_length_adjustment): Use JUMP_TABLE_DATA_P.
2010-01-25 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
Backport from trunk.
2010-01-19 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/38697
* config/arm/neon-testgen.m (emit_automatics): New parameter
features. Adjust for Fixed_return_reg feature.
(test_intrinsic): Call emit_automatics with new feature.
* config/arm/neon.ml: Update copyright years.
(features): New Fixed_return_reg feature.
(ops): Update feature for Vget_low.
2010-01-24 David S. Miller <davem@davemloft.net>
* config/sparc/sysv4.h (TARGET_ASM_NAMED_SECTION): Only
define if not using GAS.
* config/sparc/sparc.c (sparc_elf_asm_named_section):
Likewise. Delete SECTION_MERGE code, which is only applicable
when using GAS.
2010-01-21 Felyza Wishbringer <fwishbringer@gmail.com>
PR bootstrap/42786
* config.gcc (i[34567]86-*-*): Fix handling of athlon64 and athlon-fx
cpu types. Add support for *-sse3 cpu types.
(x86_64-*-*): Ditto.
2010-01-21 Jakub Jelinek <jakub@redhat.com>
* BASE-VER: Set to 4.4.4.
* DEV-PHASE: Set to prerelease.
2010-01-21 Release Manager
* GCC 4.4.3 released.
2010-01-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/41826
* tree-ssa-structalias.c (get_constraint_for_ptr_offset): Avoid
access to re-allocated vector fields.
2010-01-20 Jakub Jelinek <jakub@redhat.com>
* dwarf2out.c (loc_descriptor_from_tree_1): Don't handle unsigned
division. Handle signed modulo using DW_OP_{over,over,div,mul,minus}.
* unwind-dw2.c (execute_stack_op): Handle DW_OP_mod using unsigned
modulo instead of signed.
PR middle-end/42803
* varasm.c (narrowing_initializer_constant_valid_p): Add CACHE
argument, call initializer_constant_valid_p_1 instead of
initializer_constant_valid_p, pass CACHE to it, return NULL
immediately if first call returns NULL.
(initializer_constant_valid_p_1): New function.
(initializer_constant_valid_p): Use it.
2010-01-18 Uros Bizjak <ubizjak@gmail.com>
PR target/42774
* config/alpha/predicates.md (aligned_memory_operand): Return 0 for
memory references with unaligned offsets. Remove CQImode handling.
(unaligned_memory_operand): Return 1 for memory references with
unaligned offsets. Remove CQImode handling.
2010-01-17 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline:
2010-01-13 Steve Ellcey <sje@cup.hp.com>
PR target/42542
* config/ia64/ia64.c (ia64_expand_vecint_compare): Convert GTU to GT
for V2SI by subtracting (-(INT MAX) - 1) from both operands to make
them signed.
2010-01-17 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42773
* tree-ssa-pre.c (phi_translate_set): Fix check for PHI node existence.
(compute_antic_aux): Likewise.
(compute_partial_antic_aux): Likewise.
2010-01-16 Jakub Jelinek <jakub@redhat.com>
PR middle-end/42760
Backport from trunk
2009-06-17 Steve Ellcey <sje@cup.hp.com>
* expr.c (expand_assignment): Change complex type check.
2010-01-15 Jing Yu <jingyu@google.com>
PR rtl-optimization/42691
* combine.c (try_combine): Set changed_i3_dest to 1 when I2 and I3 set
a pseudo to a constant and are merged, and adjust comments.
2010-01-15 Richard Guenther <rguenther@suse.de>
* tree-ssa-loop-im.c (gen_lsm_tmp_name): Fix bogus fallthru.
2010-01-14 Jakub Jelinek <jakub@redhat.com>
PR middle-end/42674
* c-decl.c (finish_function): Don't emit -Wreturn-type warnings in
functions with noreturn attribute.
PR c++/42608
* varasm.c (declare_weak): Add weak attribute to decl if it
doesn't have one already.
(assemble_external): Only add decls to weak_decls if they also
have weak attribute.
2010-01-14 Jakub Jelinek <jakub@redhat.com>
PR c/42721
Port from no-undefined-overflow branch
2009-03-09 Richard Guenther <rguenther@suse.de>
* fold-const.c (add_double_with_sign): Fix unsigned overflow
detection.
2010-01-14 Jakub Jelinek <jakub@redhat.com>
Backport from mainline
2010-01-10 Richard Guenther <rguenther@suse.de>
PR middle-end/42667
* builtins.c (fold_builtin_strlen): Add type argument and
convert the resulting length to it.
(fold_builtin_1): Adjust.
2010-01-13 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/40281
* tree-scalar-evolution.c (instantiate_scev_1): Base and stride
evolutions should not variate in inner loops.
2010-01-12 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* Backport from mainline
2010-01-12 Julian Brown <julian@codesourcery.com>
* config/arm/neon-schedgen.ml (Utils): Don't try to
open missing module.
(find_with_result): New.
2010-01-12 Jakub Jelinek <jakub@redhat.com>
PR debug/42662
* simplify-rtx.c (simplify_relational_operation_1): Avoid invalid rtx
sharing when canonicalizing ({lt,ge}u (plus a b) b).
2010-01-09 Jakub Jelinek <jakub@redhat.com>
* gcc.c (process_command): Update copyright notice dates.
* gcov.c (print_version): Likewise.
* gcov-dump.c (print_version): Likewise.
* mips-tfile.c (main): Likewise.
* mips-tdump.c (main): Likewise.
2010-01-07 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline
2010-01-05 Paolo Bonzini <bonzini@gnu.org>
H.J. Lu <hongjiu.lu@intel.com>
PR target/42542
* config/i386/i386.c (ix86_expand_int_vcond): Convert GTU to GT
for V4SI and V2DI by subtracting (-(INT MAX) - 1) from both
operands to make them signed.
2010-01-07 Uros Bizjak <ubizjak@gmail.com>
* ifcvt.c (if_convert): Output slim multiple dumps with TDF_SLIM.
PR target/42511
* ifcvt.c (dead_or_predicable): Also remove REG_EQUAL note when
note itself is not function_invariant_p.
2010-01-05 Eric Botcazou <ebotcazou@adacore.com>
PR target/42564
* config/sparc/sparc.h (SPARC_SYMBOL_REF_TLS_P): Delete.
* config/sparc/sparc-protos.h (legitimize_pic_address): Likewise.
(legitimize_tls_address): Likewise.
(sparc_tls_referenced_p): Likewise.
* config/sparc/sparc.c (sparc_expand_move): Use legitimize_tls_address
and adjust calls to legitimize_pic_address.
(legitimate_constant_p) Use sparc_tls_referenced_p.
(legitimate_pic_operand_p): Likewise.
(sparc_legitimate_address_p): Do not use SPARC_SYMBOL_REF_TLS_P.
(sparc_tls_symbol_ref_1): Delete.
(sparc_tls_referenced_p): Make static, recognize specific patterns.
(legitimize_tls_address): Make static, handle CONST patterns.
(legitimize_pic_address): Make static, remove unused parameter and
adjust recursive calls.
(sparc_legitimize_address): Make static, use sparc_tls_referenced_p
and adjust call to legitimize_pic_address.
(sparc_output_mi_thunk): Likewise.
2010-01-05 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42614
* tree-ssa-alias.c (compute_flow_insensitive_aliasing):
Compute SMT aliases before symbol aliases.
2010-01-05 Jakub Jelinek <jakub@redhat.com>
PR other/42611
* cfgexpand.c (expand_one_var): Diagnose too large variables.
2010-01-04 Mikael Pettersson <mikpe@it.uu.se>
PR target/42503
Backport from mainline:
2009-09-09 Jakub Jelinek <jakub@redhat.com>
* config/t-slibgcc-elf-ver (SHLIB_MAKE_SOLINK, SHLIB_INSTALL_SOLINK):
New variables.
(SHLIB_LINK, SHLIB_INSTALL): Use them.
* config/t-slibgcc-libgcc: New file.
2009-10-19 Matthias Klose <doko@ubuntu.com>
PR target/40134
* config.gcc (arm*-*-linux-*eabi): Use config/t-slibgcc-libgcc.
2010-01-04 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/41956
* tree-vect-analyze.c (vect_supported_load_permutation_p): Add check
that the load indices differ.
2010-01-02 Richard Guenther <rguenther@suse.de>
Backport from mainline
2009-12-10 Richard Guenther <rguenther@suse.de>
PR tree-optimization/42337
* tree-ssa-pre.c (seen_during_translate): Remove.
(phi_translate_1): Collapse into ...
(phi_translate): ... this. Remove seen parameter and
adjust recursive calls.
2010-01-02 Uros Bizjak <ubizjak@gmail.com>
PR target/42448
* config/alpha/predicates.md (aligned_memory_operand): Return false
for CQImode.
(unaligned_memory_operand): Return true for CQImode.
* config/alpha/alpha.c (get_aligned_mem): Assert that location
doesn not cross aligned SImode word boundary.
2009-12-30 Ian Lance Taylor <iant@google.com>
PR middle-end/42099
* expmed.c (expand_divmod): Don't shift HOST_WIDE_INT value more
than HOST_BITS_PER_WIDE_INT.
2009-12-30 Uros Bizjak <ubizjak@gmail.com>
PR target/42549
* config/i386/mmx.md (*mmx_subv2sf3): Fix insn operand number for
alternative 1.
2009-12-28 H.J. Lu <hongjiu.lu@intel.com>
Backport from mainline:
2009-12-28 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/41344
* omp-low.c (diagnose_sb_2): Handle GIMPLE_COND.
2009-12-27 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/42231
* ipa-cp.c (ipcp_update_cloned_node): Add missing edges manually
instead of relying on rebuild_cgraph_edges and mark them as
indirect calls.
(ipcp_update_callgraph): Always redirect indirect edges.
2009-12-23 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/42475
* combine.c (make_compound_operation) <case SUBREG>: Use mode of
SUBREG_REG (x) instead of tem's mode.
2009-12-21 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/42429
* reload.c (find_reloads_subreg_address): When adjusting mode of
MEM, update also MEM_SIZE if it is set.
2009-12-17 Dave Korn <dave.korn.cygwin@gmail.com>
* config/i386/cygwin.h (LINK_SPEC): Add -tsaware flag if !mno-cygwin.
2009-12-11 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/42263
Backport from mainline
2009-12-03 Richard Earnshaw <rearnsha@arm.com>
* arm/linux-atomic.c (SYNC_LOCK_RELEASE): Place memory barrier
before the lock release.
2009-12-11 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/42263
2009-08-11 Andrew Haley <aph@redhat.com>
* config/arm/arm.c (arm_init_libfuncs): Add __sync_synchronize.
2009-12-11 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/41196
2009-10-14 Daniel Gutson <dgutson@codesourcery.com>
* config/arm/neon.md (neon_vshll_n<mode>): Checking Bounds fixed.
2009-12-11 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
2009-10-05 Doug Kwan <dougkwan@google.com>
PR rtl-optimization/41574
* combine.c (distribute_and_simplify_rtx): Quit if RTX mode is
floating point and we are not doing unsafe math optimizations.
2009-12-11 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/41939
Backport from mainline:
2009-06-05 Julian Brown <julian@codesourcery.com>
* config/arm/ieee754-df.S (cmpdf2): Avoid writing below SP.
* config/arm/ieee754-sf.S (cmpsf2): Likewise.
2009-12-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md ("copysign<mode>3"): Pattern removed.
2009-12-07 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (*iorqi_ext_2): Fix insn mnemonic typo.
2009-12-06 Richard Henderson <rth@redhat.com>
* tree-ssa-dom.c (degenerate_phi_result): Check for NULL phi
argument earlier.
2009-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
Backport from mainline:
2009-05-22 Trevor Smigiel <Trevor_Smigiel@playstation.sony.com>
* config/spu/spu-protos.h (aligned_mem_p, spu_valid_mov): Remove.
(spu_split_load, spu_split_store): Change return type to int.
(spu_split_convert): Declare.
* config/spu/predicates.md (spu_mem_operand): Remove.
(spu_mov_operand): Update.
(spu_dest_operand, shiftrt_operator, extend_operator): Define.
* config/spu/spu.c (regno_aligned_for_load): Remove.
(reg_aligned_for_addr, spu_expand_load): Define.
(spu_expand_extv): Reimplement and handle MEM.
(spu_expand_insv): Handle MEM.
(spu_sched_reorder): Handle insn's with length 0.
(spu_legitimate_address): Reimplement.
(store_with_one_insn_p): Return TRUE for any mode with size
larger than 16 bytes.
(address_needs_split): Define.
(spu_expand_mov): Call spu_split_load and spu_split_store for MEM
operands.
(spu_convert_move): Define.
(spu_split_load): Use spu_expand_load and change all MEM's to
TImode.
(spu_split_store): Change all MEM's to TImode.
(spu_init_expanders): Preallocate registers that correspond to
LAST_VIRTUAL_REG+1 and LAST_VIRTUAL_REG+2 and set them with
mark_reg_pointer.
(spu_split_convert): Define.
* config/spu/spu.md (QHSI, QHSDI): New mode iterators.
(_move<mode>, _movdi, _movti): Update predicate and condition.
(load, store): Change to define_split.
(extendqiti2, extendhiti2, extendsiti2, extendditi2): Simplify to
extend<mode>ti2.
(zero_extendqiti2, zero_extendhiti2, <v>lshr<mode>3_imm): Define.
(lshr<mode>3, lshr<mode>3_imm, lshr<mode>3_re): Simplify to one
define_insn_and_split of lshr<mode>3.
(shrqbybi_<mode>, shrqby_<mode>): Simplify to define_expand.
(<v>ashr<mode>3_imm): Define.
(extv, extzv, insv): Allow MEM operands.
(trunc_shr_ti<mode>, trunc_shr_tidi, shl_ext_<mode>ti,
shl_ext_diti, sext_trunc_lshr_tiqisi, zext_trunc_lshr_tiqisi,
sext_trunc_lshr_tihisi, zext_trunc_lshr_tihisi): Define for combine.
(_spu_convert2): Change to define_insn_and_split and remove the
corresponding define_peephole2.
(stack_protect_set, stack_protect_test, stack_protect_test_si):
Change predicates to memory_operand.
2009-04-27 Trevor Smigiel <trevor_smigiel@playstation.sony.com>
* spu.c (spu_machine_dependent_reorg): Make sure branch label on hint
instruction is correct.
2009-04-27 Trevor Smigiel <trevor_smigiel@playstation.sony.com>
Allow non-constant arguments to conversion intrinsics.
* spu-protos.h (exp2_immediate_p, spu_gen_exp2): Declare.
* predicates.md (spu_inv_exp2_operand, spu_exp2_operand): New.
* spu.c (print_operand): Handle 'v' and 'w'.
(exp2_immediate_p, spu_gen_exp2): Define.
* spu-builtins.def (spu_convts, spu_convtu, spu_convtf_0,
spu_convtf_1): Update parameter descriptions.
* spu-builtins.md (spu_csflt, spu_cuflt, spu_cflts, spu_cfltu):
Update.
* constraints.md ('v', 'w'): New.
* spu.md (UNSPEC_CSFLT, UNSPEC_CFLTS, UNSPEC_CUFLT, UNSPEC_CFLTU):
Remove.
(i2f, I2F): New define_mode_attr.
(floatsisf2, floatv4siv4sf2, fix_truncsfsi2, fix_truncv4sfv4si2,
floatunssisf2, floatunsv4siv4sf2, fixuns_truncsfsi2,
fixuns_truncv4sfv4si2): Update to use mode attribute.
(float<mode><i2f>2_mul, float<mode><i2f>2_div,
fix_trunc<mode><f2i>2_mul, floatuns<mode><i2f>2_mul,
floatuns<mode><i2f>2_div, fixuns_trunc<mode><f2i>2_mul): New
patterns for combine.
2009-12-03 Jakub Jelinek <jakub@redhat.com>
PR middle-end/42049
* builtins.c (expand_builtin_strcpy_args): Handle COMPOUND_EXPRs
potentially returned from folding strcpy.
2009-12-02 Chao-ying Fu <fu@mips.com>
Backport from mainline
2009-11-30 Chao-ying Fu <fu@mips.com>
* config/mips/mips-dsp.md (mips_lhx_<mode>): Use sign_extend.
2009-12-02 Richard Earnshaw <rearnsha@arm.com>
* arm/thumb2.md (thumb_andsi_not_shiftsi_si): Final condition should
be TARGET_THUMB2.
2009-12-01 Jakub Jelinek <jakub@redhat.com>
PR c++/42234
* tree-cfgcleanup.c (cleanup_omp_return): Don't ICE if control_bb
contains no statements.
2009-11-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (last_scheduled_insn): New variable.
(s390_fpload_toreg, s390_z10_prevent_earlyload_conflicts): New
functions.