aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog.apple-ppc
blob: 6342e5b24fcab09bdb0b256653b42b1dbffd84e5 (plain)
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
2005-05-02  Mike Stump  <mrs@apple.com>

	* Radar 4099000
	* config/i386/lib1funcs.asm: Add ___i686.get_pc_thunk.<reg> to
	libgcc.
	* config/i386/t-darwin: Add.
	* config.gcc: Add i386/t-darwin.

2005-05-02  Dale Johannesen  <dalej@apple.com>

	Radar 4102133  (PR 21293, Zdenek's patch)
	* tree-cfg.c (find_taken_edge_cond_expr): Use zero_p instead of
        integer_zerop.
        * tree-gimple.c (is_gimple_min_invariant): Consider overflowed
        constants invariant.
        * fortran/trans-intrinsic.c (gfc_conv_intrinsic_ishft): Convert
        the argument of the shift to the unsigned type.

2005-04-28  Devang Patel  <dpatel@apple.com>

	Radar 4086969
	* c-typeck.c (convert_for_assignment): Fix warn_discard_qual.

2005-04-28  Devang Patel  <dpatel@apple.com>

	Radar 4086969
	* c-typeck.c (convert_for_assignment): Check warn_discard_qual.
	* c.opt (Wdiscard-qual): New.
	* doc/invoke.texi: Dcoument -Wdiscard-qual.

2005-04-28  Dale Johannesen  <dalej@apple.com>

	Radar 4101687
	* i386.c (legitimize_address):  Canonicalize shifts correctly.

2005-04-28  Dale Johannesen  <dalej@apple.com>

	Radar 4100712 (PR 21173, Dan Berlin's patch)
	* tree-ssa-pre.c (create_expression_by_pieces): Call unshare_expr
	on things we pass to force_gimple_operand.  Don't try to special
	case min_invariants.

2005-04-28  Dale Johannesen  <dalej@apple.com>

	Radar 4101973
	* config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS):
	Back out patch for 4096578.
	* config/i386/i386.c (reset_optimization_options):  Ditto.

2005-04-26  Dale Johannesen  <dalej@apple.com>

	Radar 4099768
	* config/i386/i386.c (ix86_split_long_mode):  Adjust
	stack offsets for 128-bit long doubles correctly.

2005-04-26  Dale Johannesen  <dalej@apple.com>

	Radar 4096578
	* config/i386/darwin.h (SUBTARGET_OVERRIDE_OPTIONS):
	Default omit-frame-pointer on with optimization.
	* config/i386/i386.c (reset_optimization_options):  Ditto.

2005-04-26  Stuart Hastings  <stuart@apple.com>

	Radar 4010496
	* gcc/config/i386/x-darwin: Add -mdynamic-no-pic.

2005-04-25  Devang Patel  <dpatel@apple.com>

	Radar 4095956
	* config/rs6000/darwin.h (REAL_LIBGCC_GCC): Use -lgcc_static.

2005-04-26  Stuart Hastings  <stuart@apple.com>

	Radar 4096118
	* build_gcc: Default to --with-arch=pentium4 --with-tune=prescott.
	* gcc/config/i386/darwin.h: Override OPTIONS_DEFAULT_SPECS.

2005-04-25  Devang Patel  <dpatel@apple.com>

	Radar 4095956
	* config/darwin.h (REAL_LIBGCC_GCC): Use -lgcc_static.

2005-04-25  Devang Patel  <dpatel@apple.com>

	Radar 3954848
	* dbxout.c (dbxout_type): Emit attribute vector.

2005-04-23  Dale Johannesen  <dalej@apple.com>

	Radar 4097111
	* opts.c (decode_options):  Move cl_pf_opts_cooked setup...
	* toplev.c (process_options):  ...to here.

2005-04-22  Dale Johannesen   <dalej@apple.com>

	* common.opt (falign-functions=):  Fix it.

2005-04-22  Devang Patel  <dpatel@apple.com>

	* config/rs6000/darwin.h: Update APPLE LOCAL markers to reflect
	FSF mainline check-in.

2005-04-21  Dale Johannesen  <dalej@apple.com>

	Radar 3124235
	* Makefile.in (options.o):  New dependencies.
	(tree-optimize.o):  Ditto.
	* c-decl.c (start_function):  Record perfunc flags.
	* common.opt (falign-jumps, falign-labels, falign-loops):
	Add PerFunc, VarUint, VarExists.
	(fbranch-count-reg, fbranch-target-load-optimize,
	fbranch-target-load-optimize2, fbtr-bb-exclusive, 
	fcaller-saves, fcprop-registers, fcrossjumping,
	fcse-follow-jumps, fcse-skip-blocks, fcx-limited-range,
	fdefer-pop, fdelayed-branch, fdelete-null-pointer-checks,
	fexpensive-optimizations, ffinite-math-only, ffloat-store,
	fforce-addr, fforce-mem, ffunction-cse, fgcse, fgcse-lm,
	fgcse-sm, fgcse-las, fgcse-after-reload, 
	fguess-branch-probability, fif-conversion, fif-conversion2,
	fivopts, floop-optimize, floop-optimize2, fmath-errno,
	fmodulo-sched, fmove-loop-invariants, 
	freschedule-modulo-scheduled-loops, fomit-frame-pointer,
	foptimize-register-move, foptimize-sibling-calls, fpeel-loops,
	fpeephole, fpeephole2, fprefetch-loop-arrays, fregmove,
	frename-registers, freorder-blocks, freorder-blocks-and-partition,
	frerun-cse-after-loop, frerun-loop-opt, frounding-math,
	fsched-interblock, fsched-spec, fsched-spec-load, 
	fsched-spec-load-dangerous, fsched2-use-superblocks,
	fsched2-use-traces, fschedule-insns, fschedule-insns2,
	fsignaling-nans, fsplit-ivs-in-unroller, 
	fvariable-expansion-in-unroller, fstrength-reduce,
	fthread-jumps, ftracer, ftrapping-math, ftrapv, ftree-ccp,
	ftree-ch, ftree-combine-temps, ftree-copyrename, ftree-dce,
	ftree-dominator-opts, ftree-dse, ftree-fre, ftree-loop-im,
	ftree-loop-linear, ftree-loop-ivcanon, ftree-loop-memset,
	ftree-loop-optimize, ftree-pre, ftree-sra, ftree-ter,
	ftree-lrs, funroll-loops, funroll-all-loops, 
	funsafe-math-optimizations, funswitch-loops, ftree-vectorize,
	fweb, fwrapv): Add PerFunc.
	(fsched-verbose):  Add Var, UInteger, PerFunc, VarUint.
	(fsched-stalled-insns-dep):  Add PerFunc, VarUint.
	(p): Add VarExists.
	* final.c (asm_insn_count):  Replace "optimize" by "optimizing".
	(final):  Ditto.
	(final_scan_insn):  Ditto.
	* flags.h (optimize, optimize_size):  Remove.
	* haifa-sched.c (sched_verbose_param):  Remove.
	(fix_sched_param):  Remove.
	* loop.c (struct loop_mem_info): Replace "optimize" by "optimizable".
	(insert_loop_mem, load_mems):  Adjust references.
	* opt-functions.awk (flag_set_p):  New.
	(switch_flags):  Add VarUint, PerFunc.
	(var_ref):  Handle them.
	(access_ref):  New.
	* optc-gen.awk (END):  Substantial rewrite to handle PerFunc,
	VarUint.
	* opth-gen.awk (END):  Ditto.
	* opts.c (hashtab.h):  New include.
	(handle_option):  Use access_flag.
	(set_flags_from_O):  New.
	(decode_options):  Split out set_flags_from_O. Save
	cl_pf_opts_cooked.
	(common_handle_options):  Remove special cases for
	align-functions, align-jumps, align-labels, 
	align-loops, sched-verbose, sched-stalled-insns-dep.
	Use access_flag.
	(cl_perfunc_opts_hash_table, hash_cl_perfunc_opts,
	cmp_cl_perfunc_opts, make_perfunc_opts, 
	func_cl_pf_opts_mapping_hash_table, struct func_cl_pf_opts_mapping,
	func_cl_pf_opts_mapping_hash, func_cl_pf_opts_mapping_eq,
	record_func_cl_pf_opts_mapping, restore_func_cl_pf_opts_mapping, 
	copy_func_cl_pf_opts_mapping):  New.
	* opts.h (set_flags_from_O, record_func_cl_pf_opts_mapping,
	restore_func_cl_pf_opts_mapping, copy_func_cl_pf_opts_mapping):  New.
	(struct cl_option):  Add access_flag.
	(CL_VARUINT, CL_PERFUNC):  New.
	* toplev.c (optimize, optimize_size):  Remove.
	(print_switch_values):  Use access_flag.
	* toplev.h (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
	flag_if_conversion2, flag_peel_loops, flag_rerun_cse_after_loops,
	flag_thread_jumps, flag_tracer, flag_unroll_loops, 
	flag_unroll_all_loops, flag_unswitch_loops, flag_cprop_registers,
	flag_loop_optimize2):  Remove.
	* tree-optimize.c (opts.h):  New include.
	(tree_rest_of_compilation):  Restore saved opts from definition.
	* config/darwin-c.c (flags.h, opts.h, varray.h):  New includes.
	(darwin_pragma_reverse_bitfields):  Fix obvious spelling bug.
	(va_opt, push_opt_level, pop_opt_level, darwin_pragma_opt_level,
	darwin_pragma_opt_size):  New.
	* config/darwin-protos.h (darwin_pragma_opt_level,
	darwin_pragma_opt_size, reset_optimization_options):  New.
	* config/darwin.h (DARWIN_REGISTER_TARGET_PRAGMAS):
	Add optimization_level, optimize_for_size.
	* config/t-darwin (darwin-c.o):  New dependencies.
	* config/i386/i386.c (reset_optimization_options):  New.
	* config/rs6000/rs6000.c (reset_optimization_options):  New.
	* config/rs6000/rs6000.h (optimize, flag_expensive_optimizations):  Remove.
	* cp/Make-lang.in (cp/decl.o):  New dependency.
	* cp/decl.c (opts.h):  New include.
	(build_library_fn_1):  Record perfunc opts.
	(start_preparsed_function): Propagate saved opts to existing forward decl.
	(start_function):  Record perfunc opts.
	* doc/extend.texi (pragma optimization_level, optimize_for_size):
	Document.
	* objc/objc-act.c (objc_start_function):  Record perfunc opts.

2005-04-21  Dale Johannesen  <dalej@apple.com>

	Radar 4080945
	PR 20742
	* params.def (PARAM_SCEV_MAX_EXPR_SIZE):  New.
	* tree-chrec.c (params.h):  New include.
	(chrec_fold_plus_1):  Avoid too deep recursion.
	(reset_evolution_in_loop):  Use build2 not build.
	(tree_contains_chrecs):  Add size argument.
	* tree-chrec.h (tree_constains_chrecs):  Add size argument.
	(tree_does_not_contain_chrecs):  Adjust call to it.
	* tree-scalar-evolution.c (simple_iv):  Ditto.
	* doc/invoke.texi (scev-max-expr-size):  Document.

2005-04-21  Devang Patel  <dpatel@apple.com>

	Radar 4080840
	* config/rs6000/darwin.h (ASM_OUTPUT_MAX_SKIP_ALIGN): New.

2005-04-20  Mike Stump  <mrs@apple.com>

	Radar 4077104
	* c-common.c (print_cw_asm_operand): Handle -40(sp) in C++ CW asms better.

2005-04-20  Stuart Hastings  <stuart@apple.com>

	* Radar 4067496
	* gcc/config/i386/i386.c (optimization_options): Raise inlining limits under -Os.

2005-04-20 Fariborz Jahanian <fjahanian@apple.com>

	* expr.c (emit_single_push_insn): Radar 4087332.

2005-04-18  Devang Patel  <dpatel@apple.com>

	* config/rs6000/atlivec.md (mulv4si3): Update APPLE LOCAL markers to
	reflect check-in on mainline.

2005-04-15  Devang Patel  <dpatel@apple.com>

	Radar 3972875
	* config/rs6000/atlivec.md (mulv4si3): New pattern.

2005-04-15  Stuart Hastings  <stuart@apple.com>

	Radar 4087864
	* config/darwin-protos.h: Extern for machopic_symbol_stub2_section.
	* config/i386/i386.c (machopic_output_stub): Fix stubs targeted for
	deeply-pipelined CPUs.

2005-04-15  Caroline Tice  <ctice@apple.com>

	Radar 4078608
	* config/darwin.c (machopic_select_section): Change name for function 
	to switch to cold text section to unlikely_text_section 
	(the correct function name, in varasm.c).
        * config/darwin.h (SECTION_FUNCTION): Remove code that created a second
        (incorrect) function for switching to cold text section.

2005-04-14  Devang Patel  <dpatel@apple.com>

	Radar 4080840
        * common.opt (falign-jumps-max-skip, falign-jumps-max-skip=,
        falign-loops-max-skip, falign-loops-max-skip=): New.
        * opts.c (common_handle_option): Handle new falign-loops-max-skip
        and falign-jumps-max-skip options.
        * doc/invoke.texi: Document -falign-jumps-max-skip and
        -falign-loops-max-skip.
	* toplev.c (align_jumps_max_skip, align_loops_max_skip): Remove.

2005-04-14  Devang Patel  <dpatel@apple.com>

	Radar 3972515
        * config/rs600/altivec.md (altivec_vsr<VI_char>): Rename to ..
        (lhsr<mode>3): ... new name.
        (altivec_vsra<VI_char>): Rename to ..
        (ashr<mode>3): ... new name.
        * config/rs6000/rs6000.c (builtin_description): Rename shift
        operations.

2005-04-12  Geoffrey Keating  <geoffk@apple.com>

	Radar 4087079
	* rtlanal.c (subreg_regno_offset): Compute offset into float
	subregs on x86 properly.
	(subreg_offset_representable_p): Likewise.

2005-04-08  Ziemowit Laski  <zlaski@apple.com>

	Radar 4055183
	* c-common.h (objc_rewrite_function_call): New prototype.
	* c-typeck.c (build_function_call):
	Call objc_rewrite_function_call() to handle casts.
	* stub-objc.c (objc_rewrite_function_call): New stub.

2005-04-08  Devang Patel  <dpatel@apple.com>

	Radar 4044861
	* config/darwin-drver.c (save_temps_seen): New.
	(main): Reject -save-temps with multiple -arch options.

2005-04-07  Fariborz Jahanian <fjahanian@apple.com>

	Radar 4063657 (part 2).
	* c-common.c (cw_process_arg): Remove from 'uses' list any 
	register which ends up on an output or input list.
	(cw_asm_stmt): New 'uses' argument is passed to cw_process_arg.
	'uses' list is added to 'clobber' list.
	(print_cw_asm_operand): When building 'uses' list do not
	duplicate a hard register on this list.

2005-04-07  Devang Patel  <dpatel@apple.com>

	Radar 4069922
        * tree-sra.c (decide_block_copy): Disable scalarization of sub-elements.

2005-04-05  Fariborz Jahanian <fjahanian@apple.com>

	Radar 4063657 (part 1).
	* c-common.c (print_cw_asm_operand): Added a new argument to
	track use of hard registers. Return any use of hard register
	to caller in a tree-list form.
	(cw_asm_stmt): Add tree-list of hard register register uses to 
	ASM_EXPR statement tree.
	(cw_asm_label): Add the extra argument when building ASM_EXPR.
	(cw_asm_entry): Ditto.
	* c-typeck.c (build_asm_expr): Ditto.
	* cp/semantics.c (finish_asm_stmt): Ditto.
	* recog.c (asm_noperands): Bypass USE seen in asm_operand.
	(decode_asm_operands): Ditto.
	* stmt.c (expand_asm_operands): Insert list of use of hard 
	registers in the asm_operand rtl following the clobber list.
	(expand_asm_expr): Pass hard register usage tree-list to
	expand_asm_operands.
	* tree.def (ASM_EXPR): Tree now takes an extra argument.
	* tree.h (ASM_USES): New macro defined.
	
2005-04-02  Ziemowit Laski  <zlaski@apple.com>

	Radar 4072153
	* tree.c (build2_stat): Never mark tcc_expression-class nodes
	as constant, unless AltiVec PIM support has been selected
	and we have a compound expression with constant elements.

2005-04-01  Jon Ziegler  <jonz@apple.com>

	Radar 4075524
	* ginclude/tgmath.h (scalbn) Change to use __TGMATH_REAL_1_2 macro.
	(scalbln) Likewise.

2005-03-31  Dale Johannesen  <dalej@apple.com>

	* print-tree.c (print_node):  Handle STATEMENT_LIST (mainline).

2005-03-29  Dale Johannesen  <dalej@apple.com>

	Radar 3955567
	* stor-layout.c (place_field):  Reverse bitfields if pragma was set.
	* target-def.h (TARGET_REVERSE_BITFIELDS_P):  New, defaults to false.
	* target.h (struct gcc_target):  Add reverse_bitfields_p.
	* config/darwin-c.c (darwin_pragma_reverse_bitfields):  New.
	* config/darwin-protos.h:  Declare it.
	* config/darwin.c (darwin_reverse_bitfields):  Define, initialize to 0.
	* config/darwin.h:  Declare it.
	(DARWIN_REGISTER_TARGET_PRAGMAS):  Add reverse_bitfields.
	* config/rs6000/rs6000.c (rs6000_reverse_bitfields_p):  New.
	(TARGET_REVERSE_BITFIELDS_P):  Use it.
	(rs6000_override_options):  Set darwin_reverse_bitfields to 0.

2005-03-24  Dale Johannesen  <dalej@apple.com>

	Radar 3982365
	* cp/tree.c (cp_tree_equal):  Fix from mainline.

2005-03-22  Devang Patel  <dpatel@apple.com>

        Radar 4023104 
        * config/darwin-driver.c (dash_capital_m_seen): Remove. 
        (main) : Do not handle -M options.

2005-03-21  Stuart Hastings  <stuart@apple.com>

	Radars 3805723 4010664 3965893 4010496 4015764
	* config/mh-x86-darwin: New; now bootstraps with -mdynamic-no-pic on Darwin/x86.
	* configure.in: Now bootstraps with -mdynamic-no-pic on Darwin/x86.
	* configure: Re-autoconfiscated with above.
	* gcc/config/darwin-protos.h (machopic_lazy_symbol_ptr2, machopic_lazy_symbol_ptr3):
	New lazy_symbol_ptr sections for new Darwin/x86 stubs.
	(darwin_texcoal_nt_section): New section for set_pc_thunk pic-base settors.
	* gcc/config/darwin.c (machopic_symbol_defined_p): No longer static.
	(machopic_indirect_data_reference): Revise to support -mdynamic-no-pic for x86.
	* gcc/config/darwin.h (machopic_lazy_symbol_ptr2, machopic_lazy_symbol_ptr3,
	machopic_picsymbol_stub2, darwin_textcoal_nt): New sections.
	* gcc/config/i386/darwin.h (CC1_SPEC): Un-disable -mdynamic-no-pic option.
	(TARGET_ASM_FILE_END): Use darwin_x86_file_end.  (darwin_x86_file_end): New.
	(TARGET_DEEP_BRANCH_PREDICTION, MASK_MACHO_DYNAMIC_NO_PIC, TARGET_DYNAMIC_NO_PIC):
	Un-disable for x86. (SUBTARGET_OVERRIDE_OPTIONS): New arch/tune/fpmath defaults for Darwin/x86.
	* gcc/config/i386/i386.c (override_options): New diagnostic for "-fPIC -mdynamic-no-pic."
	(get_pc_thunk_name): Mach-O support.  (ix86_output_function_epilogue): Isolate labels
	from the end of Mach-O sections with a NOP.
	(legitimate_constant_p, legitimze_address, print_operand, ix86_expand_move,
	machopic_output_stub):	Darwin -mdynamic-no-pic support.
	(darwin_x86_file_end): New; appends set_pc_thunks at end of compilation.
	* gcc/config/i386/i386.h: Update unused-bits comment.
	* gcc/cp/optimize.c: Wire the decloner OFF.

2005-03-18  Geoffrey Keating  <geoffk@apple.com>

	* doc/include/sourcecode.texi: Update branch name.

2005-03-17  Geoffrey Keating  <geoffk@apple.com>

	* c-parse.in: Change number of expected conflicts to 15.

2005-03-14  Dale Johannesen  <dalej@apple.com>

	Radar 4045984
	* rtlanal.c (find_first_parameter_load):  Rewrite to
	return actual first param load or the call if none,
	instead of first in block, when not all loads exist.

2005-03-11  Devang Patel  <dpatel@apple.com>

        * target.h: Reinsert one line comment.

2005-03-11  Ziemowit Laski  <zlaski@apple.com>

	Radar 3995882
	* c-decl.c (objc_mark_locals_volatile): Mark local variables and
	parameters 'volatile' in ways expected by the C front-end.

2005-03-10  Devang Patel  <dpatel@apple.com>

	Radar 4040918
	* c-opts.c (set_std_c89): Do not set lang if it is already set as CLK_ASM.

2005-03-09  Devang Patel  <dpatel@apple.com>

	* tree-vectorizer.c (vect_analyze_loop): Reorder data refs alignment analysis.
	
2005-03-08  Dale Johannesen  <dalej@apple.com>

	* Makefile.in:  Remove useless code from LNO branch.
	* tree-ssa-loop-ch.c:  Local marker cleanup.
	* tree-pass.h:  Ditto.
	* tree-ssa-loop.c:  Ditto both the above.

2005-03-08  Dale Johannesen  <dalej@apple.com>

	* Makefile.in:  Remove useless code from LNO branch.
	* cfgloop.h: Ditto.
	* cfgloopmanip.c: Ditto.
	* common.opt: Ditto.
	* lambda-trans.c: Ditto.
	* opts.c: Ditto.
	* rtl.h: Ditto.
	* timevar.def: Ditto.
	* toplev.c: Ditto.
	* toplev.h: Ditto.
	* tree-flow.h: Ditto.
	* tree-optimize.c: Ditto.
	* tree-pass.h: Ditto.
	* tree-ssa-loop-ch.c: Ditto.
	* tree-ssa-loop.c: Ditto.
	* tree.h: Ditto.
	* varray.h: Ditto.

2005-03-07  Devang Patel  <dpatel@apple.com>

	* target-def.h (TARGET_VECT): Remove.
	* target.h (tree.h, tree-flow.h): Do not include.
	(struct gcc_target): Remove struct vect.
	* config/rs6000/rs6000.c (cfgloop.h): Do not include.
	(rs6000_support_misaligned_vloads, rs6000_permute_misaligned_vloads,
	rs6000_build_builtin_lvsl, rs6000_build_builtin_lvsr,
	rs6000_build_builtin_vperm, rs6000_support_vmul_uch_p,
	rs6000_build_vmul_uch, rs6000_support_vector_init_p,
	get_vector_init_fns_for_type, rs6000_build_vector_init): Remove.
	(TARGET_VECT_SUPPORT_MISALIGNED_LOADS, TARGET_VECT_PERMUTE_MISALIGNED_LOADS,
	TARGET_VECT_BUILD_BUILTIN_LVSL, TARGET_VECT_BUILD_BUILTIN_LVSR,
	TARGET_VECT_BUILD_BUILTIN_VPERM, TARGET_VECT_SUPPORT_VMUL_UCH_P,
	TARGET_VECT_BUILD_VMUL_UCH, TARGET_VECT_SUPPORT_VECTOR_INIT_P,
	TARGET_VECT_BUILD_VECTOR_INIT, TARGET_GIMPLIFY_VA_ARG_EXPR): Remove.
	* c-incpath.c (errors.h): Include.
	
2005-03-06  Devang Patel  <dpatel@apple.com>

	* config/darwin.h (LINK_COMMAND_SPEC): Remove foutput-dbg.

2005-03-06  Devang Patel  <dpatel@apple.com>

	* target-def.h (TARGET_VECT_SUPPORT_MISALIGNED_LOADS,  
	TARGET_VECT_PERMUTE_MISALIGNED_LOADS, TARGET_VECT_BUILD_BUILTIN_LVSL,
	TARGET_VECT_BUILD_BUILTIN_LVSR, TARGET_VECT_BUILD_BUILTIN_VPERM,
	TARGET_VECT_SUPPORT_VMUL_UCH_P, TARGET_VECT_BUILD_VMUL_UCH, 
	TARGET_VECT_SUPPORT_VECTOR_INIT_P, TARGET_VECT_BUILD_VECTOR_INIT): Remove 
	redundant macros.

2005-03-06  Devang Patel  <dpatel@apple.com>

	Radar 4025991
        * tree-vectorizer.c (vect_is_simple_cond): Now second parameter is
        loop_vec_info instead of loop *.
        (vectorizable_select): Supply loop_vec_info to vect_is_simple_use.
        (vect_build_dist_vector): Use loop nest's depth.

2005-03-06  Devang Patel  <dpatel@apple.com>

	* c-opts.c (c_common_handle_option): Remove QA_DISABLE_WERROR.

2005-03-06  Devang Patel  <dpatel@apple.com>

	* tree-ssa-operands.h (add_vdef): Remove.
	* tree.h (get_array_base): Remove.
	(swap_tree_comparison): Remove redundant decl.

2005-03-06  Devang Patel  <dpatel@apple.com>

	* varray.h (VARRAY_DG_INIT, VARRAY_DG): Remove.
	
2005-03-04  Dale Johannesen  <dalej@apple.com>

	Radar 4025985 (partial)
	* config/rs6000/rs6000.c:  Restore 64-bit ABI from mainline.
	* config/rs6000/rs6000.h:  Ditto.

2005-03-03  Dale Johannesen  <dalej@apple.com>

	Radar 3897244
	* config/i386/darwin.h:  Define REGISTER_TARGET_PRAGMAS
	and ROUND_TYPE_ALIGN.
	* config/i386/i386.c (x86_field_alignment):  Support Mac68K alignment.

2005-03-02  Devang Patel  <dpatel@apple.com>

	Undo Radar 4023104
	* config/darwin-driver.c (dash_capital_m_seen): Remove.
	(main) : Do not handle -M options.

2005-02-28  Ziemowit Laski  <zlaski@apple.com>

	Radar 4015382
	* config/darwin.c (machopic_select_section): Do not place
	non-weak '::operator new' and '::operator delete' definitions
	in the coalesced section.

2005-02-27  Dale Johannesen  <dalej@apple.com>

	Radar 4015911
	* config/i386/i386.c (ix86_binds_local_p):  New.
	(TARGET_BINDS_LOCAL_P):  Use it.

2005-02-26  Dale Johanensen  <dalej@apple.com>

	Radar 3988125
	PR 19360 (from mainline)
	* tree-ssa-dom.c (tree_ssa_dominator_optimize): Clear SSA_NAME_VALUE
	at the end of the main DOM loop rather than just before DOM exits.

2005-02-25  Devang Patel  <dpatel@apple.com>

	Radar 4023104
	* config/darwin-driver.c (dash_capital_m_seen): New.
	(main) : Handle -M options.

2005-02-24  Dale Johannesen  <dalej@apple.com>

	* doc/extend.texi (nested function description):  Improvement
	from mainline.

2005-02-23  Dale Johannesen  <dalej@apple.com>

	Radar 4011924
	PR 19241 (patch from mainline)
	* tree-inline.c (copy_body_r):  Don't recurse when
	remapping variables.

2005-02-23  Devang Patel  <dpatel@apple.com>
	
	Radar 4021019
	* config/rs6000/darwin.h (CC1_SPEC): Ignore -march=pentium4 and
	-mcpu=pentium4.
	* config/i386/darwin.h (CC1_SPEC): Ignore -mno-fused-madd.

2005-02-23  Devang Patel  <dpatel@apple.com>

        Radar 3841402 3841397 3841275
        * config/darwin-driver.c (add_arch_options): Do not supply
	-march=i386. Interpret -arch pentIIm3 appropriately.

2005-02-22  Devang Patel  <dpatel@apple.com>

	Radar 3844827
	Backport from Mainline.

	2005-01-18  Andi Kleen <ak@muc.de>

        * c-typeck.c: (convert_for_assignment): Check warn_pointer_sign.
        * c.opt (-Wpointer-sign): Add.
        * doc/invoke.texi: (-Wpointer-sign): Add.

2005-02-21  Dale Johannesen  <dalej@apple.com>

	Radar 4015820 (missing piece)
	* objcp/objcp-lang.c:  Use objc_gimplify_expr.

2005-02-21  Dale Johannesen  <dalej@apple.com>

	Radar 4015820
	* objc/objc-act.c (objc_gimplify_expr):  New.
	* objc/objc-lang.c (LANG_HOOKS_GIMPLIFY_EXPR):  Use it.
	* objc/objc-act.h:  Declare it.  Include tree-gimple.h.
	* objc/Make-lang.in:  Add required tree-gimple.h's.
	* objcp/Make-lang.in:  Ditto.

2005-02-21  Stan Shebs  <shebs@apple.com>

	* config/darwin-c.c (darwin_pragma_options): Warn about uses
	of mac68k alignment pragma when 64-bit.

2005-02-21  Devang Patel  <dpatel@apple.com>

	Radar 3964387
	* config/rs6000/darwin.h (CC1_SPEC): Ignore -msse and -msse2.

2005-02-19  Ziemowit Laski  <zlaski@apple.com>

	Radar 4014879
	* config/rs6000/rs6000.md (call_nonlocal_sysv,
	sibcall_symbolic): Add handling of ABSCALL annotations.

2005-02-17  Devang Patel  <dpatel@apple.com>

	Radar 4008460
	* tree-vectorizer.c (vect_analyze_data_ref_dependence): Check for NULL
	distance vector.

2005-02-17  Devang Patel  <dpatel@apple.com>

        Undo Radar 3964387 fix.

2005-02-17  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3971074

	* c-common.c (cw_asm_stmt): Generate .file and .line
	directives. Remove cw_asm_lineno declaration.
	* c-common.h: Add argument to cw_asm_stmt declaration, remove
	cw_asm_lineno declaration.
	* c-parse.in: Accurately pass line no information to
	cw_asm_stmt routine.

2005-02-17  Ziemowit Laski  <zlaski@apple.com>

	Radar 3635843, 3922342
	* c-common.h (objc_generate_write_barrier): New prototype.
	* c-typeck.c (lvalue_or_else): Do not emit warning if
	'-Wno-non-lvalue-assign' has been specified.
	(build_modify_expr): Call objc_generate_write_barrier() if
	'-fobjc-gc' has been specified.
	* c.opt (-Wassign-intercept, -Wnon-lvalue-assign,
	-fobjc-direct-dispatch, -fobjc-gc): New options.
	* calls.c (emit_call_1): For functions with 'hard_coded_address'
	attribute, annotate the RTL call instruction with the address
	to use.
	* reg-notes.def (ABSCALL): New RTL annotation.
	* stub-objc.c (objc_generate_write_barrier): New stub.
	* config/darwin-protos.h (darwin_handle_objc_gc_attribute):
	New prototype.
	* config/darwin.c (darwin_handle_objc_gc_attribute): New function.
	* config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add
	'-Wno-non-lvalue-assign' whenever '-fobjc-gc' is seen.
	(SUBTARGET_OS_CPP_BUILTINS): Define '__strong' and '__OBJC_GC__'
	macros as needed.
	(SUBTARGET_ATTRIBUTE_TABLE): Add 'objc_gc' attribute.
	* config/rs6000/rs6000.md (call_value_nonlocal_sysv,
	sibcall_value_symbolic): Add handling of ABSCALL annotations.

2005-02-16  Dale Johannesen  <dalej@apple.com>

	Radar 4006687
	PR 17767 et al (fix from mainline)
	* cse.c (fold_rtx) [RTX_COMPARE, RTX_COMM_COMPARE]: Don't attempt
	any simplifications of vector mode comparison operators.
	* simplify-rtx.c (simplify_relational_operation): Fix variable name.

2005-02-15  Dale Johannesen  <dalej@apple.com>

	Radar 3991611
	Radar 3990578
	PRs 19084 and 19348 (fix from mainline)
	* recog.c (peephole2_optimize): Do global life update if some peephole
	decides it doesn't need at least one of its inputs and that change
	influences liveness at the start of the basic block.
	* basic-block.h (EXECUTE_IF_AND_COMPL_IN_REG_SET): Needs 2 REGSET
	arguments instead of 1.
   
2005-02-15  Dale Johannesen  <dalej@apple.com>

	Radar 3876378
	Radar 3838108
	PR 18109 (fix from mainline)
	* config/i386/i386.md (movhi_1):  Remove previous attempt at a fix.
	(movqi_1):  Ditto.  Don't use 4-byte load when unsafe.

2004-02-16  Devang Patel  <dpatel@apple.com>

        Radar 3964387
        * build_gcc: Build darwin-driver-rs6000.c and darwin-driver-i386.c
        * config/darwin-driver-rs6000.c: New file
        * config/darwin-driver-i386.c: New file
        * config/darwin-driver.h: New file
        * config/darwin-driver.c (darwin-driver.h): Include.
        (ppc_specific_args, ppc_specific_args_size, ppc_specific_arg_count,
        x86_specific_args, x86_specific_args_size, x86_specific_arg_count,
        is_ppc_specific_option, is_x86_specific_option): New.
        (remove_arch_options): New parameter.
        (add_arch_options): Insert arch specific options.
        (main): Interpret arch specific options.
        
2005-02-16  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3970655

	* c-common.c (prepend_char_identifier): Modified old
	get_atsign_identifier to handle any character.
	* c-common.h (prepend_char_identifier): New function declaration.
	Removed get_atsign_identifier declaration.
	* c-lex.c (c_lex_with_flags): Add '.' to those tokens which
	can start a CW asm statement.
	* c-parse.in (cw_identifier): New CW identifier syntax.
	
2005-02-15  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3970646
	* c-common.c (cw_asm_identifier): New routine.
	(cw_asm_stmt): call cw_asm_identifier on asm operator.
	* cp/parser.c (cp_parser_cw_asm_relative_branch): New routine.
	(cp_parser_cw_asm_postfix_expression): Call 
	cp_parser_cw_asm_relative_branch to parse relative branch 
	operand.

2005-02-14  Devang Patel  <dpatel@apple.com>

	Radar 4002184
	* config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): Remove
	-ffix-and-continue.

2005-02-14  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3971053
	* cp/parser.c (cp_parser_unary_expression): Defer 'sizeof' in asm
	block to cp_parser_cw_asm_postfix_expression.
	(cp_parser_cw_asm_postfix_expression): Process sizeof here.

	Radar 3971060
	c-common.c (cw_asm_expr_val): New routine.
	(print_cw_asm_operand): Call cw_asm_expr_val to evaluate complex
	numeric expressions used in asm block.

	Radar 3971070
	gcc/c-parse.in (cw_asm_unary_expr): Error on undeclared type used
	in sizeof.
	c-typeck.c (parser_build_binary_op): Check for use of undefined
	in asm block.
	cp/typeck.c (build_x_binary_op): Ditto

2005-02-11  Ziemowit Laski  <zlaski@apple.com>

	Radar 3962013 (Part 2)
	* doc/invoke.texi: Document '-Wstrict-selector-match'.

2005-02-11  Devang Patel  <dpatel@apple.com>

	Radar 3996800
        * gcc.c (cpp_uniq_options): Emit '-mconstant-cfstrings' option, 
        if needed.

2005-02-09  Dale Johannesen  <dalej@apple.com>

	Radar 3985162
	Radar 3990505
	* cselib.c (cselib_process_insn):  Clear out regs where
	HARD_REGNO_CALL_PART_CLOBBERED is true at a call.
	* reload.c (find_equiv_reg): Ditto.

2005-02-06  Dale Johannesen  <dalej@apple.com>

	Radar 3988061
	* langhooks-def.h:  add lhd_vtable_p, LANG_HOOKS_VTABLE_P
	langhooks.c (lhd_vtable_p):  New.
	langhooks.h (struct lang_hooks):  Add vtable_p.
	config/rs6000/rs6000.c (rs6000_binds_local_p):  Treat kext
	vtables as non-local-binding.
	cp/cp-objcp-common.c (cp_vtable_p):  New.
	cp/cp-objcp-common.h:  Use it for LANG_HOOKS_VTABLE_P.
	cp/cp-tree.h:  Declare it.

2005-02-06  Geoffrey Keating  <geoffk@apple.com>

	Radar 3984134 (again)
	* config/darwin-driver.c (do_compile): Update argc_count for
	target-specific options.
	(add_arch_options): Improve debug output.

2005-02-02  Mike Stump  <mrs@apple.com>

	Radar 3981486
	* objcp/lang-specs.h ("@objc++-cpp-output"): Add support for 3.3
	language name for distributed builds.

2005-02-02  Geoffrey Keating  <geoffk@apple.com>

	Radar 3984134
	* config/darwin-driver.c (initialize): Allow for extra NULL in
	new_argv.  Update comment for lipo_argv.
	(do_lipo): Add NULL at end.  Check for NULL at end when printing.
	(do_compile): Add NULL at end of current_argv.
	(main): Add NULL at end of new_argv.

2005-02-01  Devang Patel  <dpatel@apple.com>

	Radar 3983593
	* c-pch.c (pch_matching[]): Add -faltivec.
	* c.opt (faltivec): Use flag_altivec as variable.
	* toplev.c (flag_disable_opts_for_faltivec): New.
	* flags.h (flag_disable_opts_for_faltivec): Same.

2005-01-31  Ziemowit Laski  <zlaski@apple.com>

	Radar 3978168
	* c-typeck.c (lvalue_or_else): Allow certain non-lvalues
	as arguments to '&', and print appropriate warning.

2004-01-31  Devang Patel  <dpatel@apple.com>

	Radar 3978580
	* varasm.c (const_hash_1): Check constant cfstring.
	(compare_constant): Same.
	* config/darwin-protos.h (darwin_constant_cfstring_p): New.
	* config/darwin.c (darwin_constant_cfstring_p): New.

2005-01-31  Roger Sayle  <roger@eyesopen.com>
	    Dale Johannesen  <dalej@apple.com>

	Radar 3974393
	* fold-const.c (fold_binary_op_with_conditional_arg):
	Make types match original operands, before STRIP_NOPS.
	(From mainline.)

2005-01-30  Ziemowit Laski  <zlaski@apple.com>

	Radar 3962013
	* c.opt (Wstrict-selector-match): New option.

2005-01-28 Fariborz Jahanian <fjahanian@apple.com>

	Radar 3979484

	* cp/typeck2.c (digest_init): Convert AltiVec-style
	vector constant to its internal tree representation.

2005-01-28  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3967653
	* config/rs6000/rs6000.c (rs6000_handle_altivec_attribute):
	Diagnose 'long long' and 64bit 'long' vector declarations.

2005-01-26  Dale Johannesen  <dalej@apple.com>

	Back out preceding change, which is wrong.

2005-01-26  Dale Johannesen  <dalej@apple.com>

	Radar 3974393
	PR 19650
	* fold-const.c (fold_binary_op_with_conditional_arg):
	Make constant 0 or 1 be of correct type.

2005-01-27  Mike Stump  <mrs@apple.com>

	Radar 3978098
	* config/darwin.h (SUBTARGET_OS_CPP_BUILTINS): Move setting
	pascal_string for cpp from here...
	* config/darwin.h (SUBSUBTARGET_OVERRIDE_OPTIONS): ..to here.
	* c-cppbuiltin.c: Remove includes for pascal strings.
	* config/rs6000/rs6000.c (parse_in): Add.
	* config/i386/i386.c (parse_in): Add.

2005-01-26  Stuart Hastings  <stuart@apple.com>

	Radar 3967989
	* gcc/gimplify.c (shortcut_cond_expr): Re-compute side-effects.
	* gcc/testsuite/gcc.c-torture/execute/20050125-1.c: New.

2005-01-26  Ziemowit Laski  <zlaski@apple.com>

	Radar 3970884
	* tree.c (reconstruct_complex_type): Reconstruct
	REFERENCE_TYPEs correctly, instead of turning them
	into POINTER_TYPEs.
	* config/rs6000/rs6000.c (rs6000_handle_altivec_attribute):
	Propagate all qualifiers from element type onto vector type.

2005-01-25  Dale Johannesen  <dalej@apple.com>

	Radar 3941199
	* config/rs6000/darwin-tramp.asm (__trampoline_setup):
	Make work for 64 bit.

2005-01-25  Dale Johannesen  <dalej@apple.com>

	Radar 3944688
	PR 19147
	* config/rs6000/rs6000.md (andsi3_internal7, andsi3_internal8):  Delete.

2005-01-25  Dale Johannesen  <dalej@apple.com>

	Radar 3970057
	* config/rs6000/rs6000.c (rs6000_return_in_memory):
	Implement Darwin 64-bit convention correctly.
	(rs6000_darwin64_record_arg_flush_pending):
	Compute correct reg for int field following doubles.

2005-01-24  Stuart Hastings  <stuart@apple.com>

	Radar 3939078
	* gcc/cgraphunit.c (cgraph_build_static_cdtor) Don't set DECL_IGNORED_P.

2005-01-24  Ziemowit Laski  <zlaski@apple.com>

	Radar 3961973 (Part 2)
	* c-typeck.c (lvalue_or_else): Acccept NON_LVALUE_EXPRs
	as cast expressions.

2005-01-23  Ziemowit Laski  <zlaski@apple.com>

	Radar 3961973
	* c-common.c (flag_lvalue_cast_assign): Remove.
	* c-common.h (flag_lvalue_cast_assign): Remove.
	* c-opts.c (c_common_handle_option): Remove
	'-flvalue-cast-assign' handling.
	* c-typeck.c (lvalue_or_else): Change first parameter from
	'tree' to 'tree *'; handle conditional lvalues in addition
	to lvalue casts; when rewriting expressions, create a new
	tree instead of clobbering an existing one.
	(build_unary_op, build_modify_expr, build_asm_expr):
	Adjust calls to lvalue_or_else().
	* c.opt: Rename -flvalue-cast-assign to -fnon-lvalue-assign
	and add Var(...) and Init(...) annotation to create a flag.
	* doc/invoke.texi: Likewise; add description of lvalue
	conditional expressions and how they are transformed.

2005-01-21  Ziemowit Laski  <zlaski@apple.com>

	Radar 3951887
	* gimplify.c (gimplify_expr): Adjust the type of
	INDIRECT_REFs after their argument is gimplified.

2005-01-19 Robert Bowdidge <bowdidge@apple.com>

	* config/darwin.h (SUBSUBTARGET_OVERRIDE_OPTIONS) Turn off
	  -fweak whenever we're building kexts.
	* Makefile.in: Add -fno-non-call-exceptions to flags passed when
	  building files for libcc_kext.a
	* mklibgcc: Move -fexception and -fnon-call-exceptions to start of
	  command line so multilib machinery can override

2005-01-20  Dale Johannesen  <dalej@apple.com>
	
	Radar 3966230
	* config/rs6000/darwin.md (movsf_low_di):  Make work.

2005-01-19  Dale Johannesen  <dalej@apple.com>

	Radar 3961638
	* config/rs6000/darwin.md (movdf_low_di):  Make work.

2005-01-19  Mike Stump  <mrs@apple.com>

	Radar 3962625
	* c-incpath.c (hmap_construct_pathname): Warn when headermaps find
	files with mismatched case.

2005-01-13  Dale Johannesen  <dalej@apple.com>

	Radars 3942172 3897795 3944716 3941494
	* config/rs6000/rs6000.h (CUMULATIVE_ARGS): New fields
	intoffset, use_stack, named.
	* config/rs6000/rs6000.c (rs6000_darwin64_function_arg):  Remove.
	rs6000_darwin64_record_arg_advance_flush_pending_int_fields:  New.
	rs6000_darwin64_record_arg_advance_recurs: New.
	rs6000_darwin64_record_arg_flush_pending_int_fields:  New.
	rs6000_darwin64_record_arg_recurs:  New.
	rs6000_darwin64_record_arg:  New.
	rs6000_return_in_memory:  Remove AGGREGATE_TYPE_P check.
	function_arg_boundary:  Handle 128-bit aligned structs.
	function_arg_advance:  Rewrite darwin-64 struct handling.
	function_arg:  Call rs6000_darwin64_record_arg.
	function_arg_partial_nregs:  Handle darwin-64 structs.
	rs6000_darwin64_function_value:  Remove.
	rs6000_function_value:  Call rs6000_darwin64_record_arg.

2005-01-04  Anders Bertelrud  <anders@apple.com>

	Radar 3871393
	* gcc/c-incpath.c:  Merged in headermap code from GCC 3.3 source
	base, modifying it somewhat to work in GCC 4.0.
	(hmap_hash_string):  Copied from GCC 3.3.
	(hmap_compare_strings):  Copied from GCC 3.3.
	(hmap_load_header_map):  Copied from GCC 3.3.
	(hmap_construct_pathname):  Copied from GCC 3.3 and modified
	to have calling convensions for cpp_dir's 'construct' field.
	(remove_duplicates):  If a search path refers to a file rather than
	a directory, we check if it's a headermap file immediately before
	we would have reported an error.  If it is, call hmap_load_header_map
	and set up the 'construct' field of the cpp_dir.  Otherwise, report
	the error as usual.

2005-01-17  Ziemowit Laski  <zlaski@apple.com>

	Radar 3951689
	* c-common.h (objc_finish_try_stmt, objc_build_synchronized):
	Return 'tree' instead of 'void'.
	* stub-objc.c (objc_build_throw_stmt, objc_begin_try_stmt,
	objc_finish_try_stmt, objc_begin_catch_clause,
	objc_finish_catch_clause, objc_build_finally_clause,
	objc_build_synchronized: New stubs.

2005-01-15  Geoffrey Keating  <geoffk@apple.com>

	* gcc.c (macosx_version_min_required): Make static.

2005-01-14  Dale Johannesen  <dalej@apple.com>

	Radar 3953308
	* tree-ssa-dce.c:  Remove all vestiges of LNO branch.
	* tree-flow.h (tree_ssa_dce_no_cfg_changes):  Remove declaration.

2005-01-13  Stuart Hastings  <stuart@apple.com>

	Radar 3236762
	* gcc/config/i386/darwin.h (SUBTARGET_EXTRA_SPECS): Revert Mach-O arch back to i386,
	regardless of -force_cpusubtype_ALL.

2005-01-11  Stuart Hastings  <stuart@apple.com>

	Radar 3943021
	* gcc/config/rs6000/rs6000.md (maxsf3, minsf3, split, maxdf3, mindf3, split):
	disable when -flag-trapping-math.
	* gcc/config/rs6000/rs6000.c (rs6000_emit_minmax): Don't abort
	when #pragma fenv (-ftrapping-math) causes failure.

2005-01-11  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3903960
	* fold-const.c (fold_widened_comparison) Replace it with the
	one from FSF mainline.
	(fold_sign_changed_comparison): Ditto.
	(fold): Remove APPLE LOCAL lno marker.

2005-01-10  Ziemowit Laski  <zlaski@apple.com>

	Radar 3943452
	* config/rs6000/rs6000.c (altivec_convert_args): Clear any oveflows
	caused by integer literal conversions.

2005-01-09  Mike Stump  <mrs@apple.com>

	Radar 3926955
	* c-opts.c (c_common_handle_option): Remove wrong -faltivec code.
	* c.opt (faltivec): Remove wrong set 0.
	config/rs6000/rs6000.c (rs6000_altivec_switch): Move -maltivec back
	into TARGET_SWITCHES.
	(rs6000_override_options): Likewise.
	* config/rs6000/rs6000.h (TARGET_SWITCHES): Likewise.
	(TARGET_OPTIONS): Likewise.
	(rs6000_altivec_switch): Likewise.

2005-01-10  Stuart Hastings  <stuart@apple.com>

	Radar 3236762
	* gcc/config/i386/darwin.h (SUBTARGET_EXTRA_SPECS): Revert Mach-O arch back to i386.

2005-01-09  Dale Johannesen  <dalej@apple.com>

	Radar 3941146
	Following patches from mainline:
	2004-10-27  Daniel Berlin <dberlin@dberlin.org>

	Fix PR tree-optimization/17133

	* tree-cfg.c (rewrite_to_new_ssa_names_bb): Also rewrite must
	def kill operand.

	* tree-flow-inline.h: V_MUST_DEF_OP became V_MUST_DEF_RESULT.
	(get_v_must_def_result_ptr): Modify for new structure of
	v_must_defs array.
	(get_v_must_def_kill_ptr): New.
	(op_iter_next_use): Add support for the kill that occurs in V_MUST_DEFs.
	(op_iter_next_tree): Ditto. Also V_MAY_DEF_OP became V_MAY_DEF_RESULT.
	(op_iter_next_def): V_MAY_DEF_OP became V_MAY_DEF_RESULT.
	(op_iter_init): Initialize new mustu members.
	(op_iter_next_mustdef): New function.
	(op_iter_init_mustdef): Ditto.

	* tree-flow.h (rewrite_def_def_chains): New function.

	* tree-into-ssa.c (mark_def_sites): Handle mustdefkill operands.
	(ssa_mark_def_sites): Ditto.
	(rewrite_stmt): Ditto.
	(ssa_rewrite_stmt): Ditto.
	(rewrite_blocks): Factor out from rewrite_into_ssa.
	(mark_def_block_sites): Ditto.
	(rewrite_def_def_chains): New function, just rewrites def-def
	chains without phi node insertion.

	* tree-pass.h (TODO_fix_def_def_chains): New todo flag.

	* tree-optimize.c (execute_todo): Handle TODO_fix_def_def_chains.

	* tree-pretty-print.c (dump_vops): Print out MUST_DEF's so that
	they include the rhs now.

	* tree-ssa-ccp.c (visit_assignment): V_MUST_DEF_OP became
	V_MUST_DEF_RESULT.

	* tree-ssa-dce.c (mark_operand_necessary): Add phionly argument.
	Update callers.
	(mark_really_necessary_kill_operand_phis): New function.
	(perform_tree_ssa_dce): Call it.
	(pass_dce): Add TODO_fix_def_def_chains.
	(pass_cd_dce): Ditto.

	* tree-ssa-loop-im.c (determine_max_movement): Look at kills as
	well.
	(rewrite_mem_refs): Ditto.

	* tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Look at kills
	as well.

	* tree-ssa-operands.c (allocate_v_may_def_optype):
	v_may_def_operand_type_t became v_def_use_operand_type_t.
	(allocate_v_must_def_optype) Ditto.
	(finalize_ssa_v_must_defs): Update for new operand type, as well
	as setting the use portion as well.
	(copy_virtual_operands): Copy the kill operand as well.
	(create_ssa_artficial_load_stmt): V_MUST_DEF_OP became
	V_MUST_DEF_RESULT.

	* tree-ssa-operands.h (v_may_def_operand_type): Renamed to
	v_def_use_operand_type.
	(v_must_def_optype_d): Use v_def_use_operand_type.
	(V_MUST_DEF_OP_*): Renamed to V_MUST_DEF_RESULT_*
	(V_MUST_DEF_KILL_*): New macros.
	(struct ssa_operand_iterator_d): Add num_v_mustu and v_mustu_i
	members.
	Rename existing must_i and num_v_must members to mustd_i and
	num_v_mustd.
	(SSA_OP_VMUSTDEFKILL): New flag.
	(SSA_OP_VIRTUAL_KILLS): New flag.
	(SSA_OP_ALL_OPERANDS): Add in SSA_OP_ALL_KILLS.
	(SSA_OP_ALL_KILLS): New flag.
	(FOR_EACH_SSA_MUSTDEF_OPERAND): New macro.

	* tree-ssa.c (verify_ssa): Verify virtual kills as well.

	* tree-vectorizer.c (vect_create_data_ref_ptr): V_MUST_DEF_OP
	became V_MUST_DEF_RESULT.
	(rename_variables_in_bb): Rename kill pointer as well.

	* tree-dfa.c (compute_immediate_uses_for_stmt): Add kills into the
	immediate uses.

	2004-10-28  Daniel Berlin  <dberlin@dberlin.org>

	* tree-into-ssa.c (rewrite_virtual_phi_arguments): New function.
	(rewrite_blocks): Modify argument, and use it to decide which
	function to call.
	(rewrite_def_def_chains): Call rewrite_blocks with true here.
	(rewrite_into_ssa): and call it with false here.

	2004-11-16  Daniel Berlin  <dberlin@dberlin.org>

	Fix PR tree-optimization/18519

	* tree-optimize (execute_todo): Add case for TODO_cleanup_cfg.
	* tree-pass.h: Add TODO_cleanup_cfg.
	* tree-ssa-ccp.c (pass_ccp): Use TODO_cleanup_cfg.
	(ccp_finalize): Remove call to cleanup_cfg.
	* tree-ssa-dce.c (pass_dce): Use TODO_cleanup_cfg and TODO_dump_func.
	(pass_cd_dce): Ditto.
	(perform_tree_ssa_dce): Remove call to cleanup_cfg,
	dump_function_to_file.
	* tree-ssa-loop-ch.c (copy_loop_headers): Remove call
	to cleanup_cfg.
	(pass_ch): Add TODO_cleanup_cfg.
	* tree-ssa-loop.c (tree_ssa_loop_done): Remove call to
	cleanup_cfg.
	(pass_loop_done): Add TODO_cleanup_cfg.
	* tree-ssa-phiopt.c (pass_phiopt): Ditto.
	(tree_ssa_phiopt): Remove call to cleanup_cfg.

2005-01-08  Ziemowit Laski  <zlaski@apple.com>

	Radar 3913725
	* c-common.c (flag_lvalue_cast_assign): New global variable.
	* c-common.h (flag_lvalue_cast_assign): Forward declare.
	* c-opts.c (c_common_handle_option): Handle
	'-f[no-]lvalue-cast-assign'.
	* c-typeck.c (lvalue_or_else): If expression is not an lvalue,
	check if it is a cast of an lvalue; if so, and if the cast
	involves POD types with identical size and aligment,
	rewrite '(type)expr' into '*(type *)&expr' and allow the
	result as an lvalue.
	* c.opt (flvalue-cast-assign): New flag.
	* invoke.texi: Document '-f[no-]lvalue-cast assign' flag.

2005-01-07  Devang Patel  <dpatel@apple.com>

	Radar 3943502
	* stub-objc.c (objc_get_class_ivars): New.

2005-01-06  Ziemowit Laski  <zlaski@apple.com>

	Radar 3926755
	* c-decl.c (builtin_function): Do not require AltiVec
	builtins to be explicitly declared.
	* config/rs6000/rs6000.c (altivec_cov_rt_1h): New function.
	(pim_flags): Add pim_rt_1h enumeration constant; renumber
	all pim_rt_... constants.
	(rs6000_fold_builtin): Select overload candidate before
	determining return type; call altivec_cov_rt_1h() during
	latter.
	(altivec_init_builtins): Create builtins corresponding
	to "specific operations" listed in AltiVec PIM; fix
	entry for "vec_re" to return a 'vector float'; fix
	entries for "vec_pack" to compute return vector type
	as having twice as many elements as the first argument.
	* config/rs6000/rs6000.h (rs6000_builtins): Add enumeration
	constants corresponding to AltiVec PIM "specific operations".

2005-01-06  Stan Shebs  <shebs@apple.com>

       * config/rs6000/rs6000.c (rs6000_emit_prologue): Don't skip
       saving r31 if we must do a full stack frame.
       (rs6000_emit_epilogue): Similarly for restoring r31.

2005-01-06  Andrew Pinski  <pinskia@physics.uc.edu>
	    Stuart Hastings  <stuart@apple.com>

	Radar 3830232
	* gcc/testsuite/gcc.apple/notailcall-1.c: New testcase.

2005-01-06  Stuart Hastings  <stuart@apple.com>

	Radar 3941684
	* gcc/c-common.c (print_cw_asm_operand): Casts for long long format.
	* gcc/gcc.c (process_command): Malloc overflowing static char array.
	* gcc/config/i386/dariwn.h (ASM_SPEC): Revert to i386.
	* gcc/config/i386/i386.h (STACK_BOUNDARY): Must be of indeterminate signedness.

2005-01-06  Mike Stump  <mrs@apple.com>

	Radar 3929334
	* c-pch.c (c_common_pch_pragma): Add indirection for pch files for distcc.

2005-01-04  Devang Patel  <dpatel@apple.com>

	Radar 3886137 Part 2.
	* cppdefault.c (INCLUDE_DEFAULTS): Enable isysroot override by default
	for all include paths.

2005-01-03  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3936917
	* config/rs6000/altivec.md (altivec_vandc): Correct RTL
	pattern and use its canonical form.
	
2005-01-03  Stuart Hastings <stuart@apple.com>

	Radar 3830232, Bugzilla 17526
	* tree-gimple.c (is_gimple_mem_rhs): Force a temp for every
	register-candidate to prevent bad tailcalls.

2004-12-23  Dale Johannesen  <dalej@apple.com>

	* config/darwin-c.c:  Include options.h.
	(darwin_pragma_fenv):  New.
	* config/darwin-protos.h:  Declare it.
	* config/darwin.h (DARWIN_REGISTER_TARGET_PRAGMAS):  Register it.
	* config/t-darwin: Add new dependency.
	* config/rs6000/rs6000.c (optimization_options):
	Default trapping-math off.
	* config/i386/i386.c (optimization_options):  Ditto.
	* fixincludes/inclhack.def:  Add #pragma GCC fenv to <fenv.h>.
	* fixincludes/fixincl.x:  Regenerate.
	* testsuite/gcc.apple/apple-altivec-9.c:  Add -ftrapping-math.
	* testsuite/gcc.apple/darwin-fsel-3.c:  New.

2004-12-23  Dale Johannesen  <dalej@apple.com>

	Radar 3926600
	Following patches brought in from mainline
	* tree.c (iterative_hash_expr):  Canonicalize builtins.
	PR tree-opt/16951
	* tree-inline.c (setup_one_parameter): Don't directly map a
	parameter to the address of another variable of the same
	function.

2004-12-22  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3765572
	* expr.c (emit_push_insn): Remove unnecessary apple
	local stuff which previously handled partial
	arguments in mixed mode.

2004-12-20  Dale Johannesen  <dalej@apple.com>

	Radar 3926484
	* objc/objc-act.c (objc_get_callee_fndecl):  New.
	* objc/objc-act.h:  Declare it.
	* objc/objc-lang.c:  Use it.
	* objcp/objcp-lang.c:  Ditto.

2004-12-20  Matt Austern  <austern@apple.com>

	Radar 3845716
	PR c++/19044
	* c-common.c (set_builtin_user_assembler_name): New.
	* c-common.h (set_builtin_user_assembler_name): Declare.
	* c-decl.c (finish_decl): Use set_builtin_user_assembler_name
	
2004-12-20  Dale Johannesen  <dalej@apple.com>

	Radar 3926488
	* tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p):  Don't
	reference operand 1 of ADDR_EXPRs.

2004-12-20  Devang Patel  <dpatel@apple.com>

	Backport vectorizatin patches from Mainline.
	Radar 3907012 3917979 3917991 3917994 3917999

	PR tree-optimization/18009
	2004-11-03  Dorit Naishlos  <dorit@il.ibm.com>
	
	* tree-vectorizer.h (enum dr_alignment_support): New type.
	(MAX_NUMBER_OF_UNALIGNED_DATA_REFS): Removed.
	(LOOP_UNALIGNED_DR): replaced with LOOP_VINFO_UNALIGNED_DR and holds a
	single data_reference (instead of a varray of references).
	* tree-vectorizer.c (new_loop_vec_info): Likewise.
	(vect_gen_niters_for_prolog_loop): Likewise.
	(vect_update_inits_of_drs): Likewise.
	
	(vect_update_inits_of_drs): Setting of DR_MISALIGNMENT moved to
	vect_enhance_data_refs_alignment.
	(vect_do_peeling_for_alignment): Likewise.
	(vect_enhance_data_refs_alignment): Decide if and by how much to peel;
	this functionality used to be in vect_analyze_data_refs_alignment.
	Also update DR_MISALIGNMENT due to peeling; this functionality used to
	be in vect_update_inits_of_drs and vect_do_peeling_for_alignment).
	(vect_analyze_data_refs_alignment): Decision on whether and by how much
	to peel moved to vect_enhance_data_refs_alignment. Call
	vect_supportable_dr_alignment.
	
	(vect_compute_data_ref_alignment): Set STMT_VINFO_VECTYPE.
	(vect_compute_data_refs_alignment): Return bool. Consider return value
	of vect_compute_data_ref_alignment and return true/false accordingly.
	(vect_enhance_data_refs_alignment): Consider return value of
	vect_compute_data_refs_alignment and return true/false accordingly.
	
	(vect_supportable_dr_alignment): New function.
	(vectorizable_store): Call vect_supportable_dr_alignment.
	(vectorizable_load): Call vect_supportable_dr_alignment. Alignment
	support checks moved from here to vect_supportable_dr_alignment.
	
	(vect_transform_loop): Avoid 80 columns overflow.

	2004-11-11  Dorit Naishlos  <dorit@il.ibm.com>
	
	* tree-vectorizer.c (update_phi_nodes_for_guard): Call reverse_phis.
	(vect_update_ivs_after_vectorizer): Update function documentation.
	Avoid quadratic behavior and direct write to PHI_ARG_DEF.

	2004-11-14  Dorit Naishlos  <dorit@il.ibm.com>
	Andrew Pinski  <pinskia@physics.uc.edu>
	
	PR tree-opt/18425
	* tree-vectorize.c (vect_build_loop_niters): Do not insert
	NULL into the instruction stream. Initialize new_bb to NULL.
	(vect_update_ivs_after_vectorizer): Likewise.
	(vect_gen_niters_for_prolog_loop): Likewise.

	PR tree-opt/18400
	* tree-vectorizer.c (make_loop_iterate_ntimes): Set loop->nb_iterations.
	(vect_transform_loop_bound): Set loop->nb_iterations.

	2004-11-14  Dorit Naishlos  <dorit@il.ibm.com>
	
	PR tree-opt/18400
	* gcc.dg/vect/pr18400.c: New test.
	
	2004-11-14  Dorit Naishlos  <dorit@il.ibm.com>
	Andrew Pinski  <pinskia@physics.uc.edu>
	
	PR tree-opt/18425
	* gcc.dg/vect/pr18425.c: New test.

	2004-11-14  Dorit Naishlos  <dorit@il.ibm.com>
	
	* gcc.dg/vect/vect-78.c: Now vectorized on powerpc*.

	2004-11-19  Dorit Naishlos  <dorit@il.ibm.com>

	* tree-vectorizer.c (slpeel_tree_peel_loop_to_edge): New name for
	function previously called tree_duplicate_loop_to_edge.
	(slpeel_tree_duplicate_loop_to_edge_cfg): New name for function
	previously called tree_duplicate_loop_to_edge_cfg.
	(slpeel_update_phis_for_duplicate_loop): Prefix 'slpeel' added to
	function name.
	(slpeel_update_phi_nodes_for_guard): Likewise.
	(slpeel_make_loop_iterate_ntimes): Likewise.
	(slpeel_add_loop_guard): Likewise.
	(allocate_new_names, free_new_names): Function declaration moved to top
	of file.
	(rename_use_op, rename_def_op): Likewise.
	(rename_variables_in_bb, rename_variables_in_loop): Likewise.
	(vect_generate_tmps_on_preheader): Function declaration moved.
	(vect_transform_for_unknown_loop_bound): Added missing function
	declaration.

	2004-11-19  Dorit Naishlos  <dorit@il.ibm.com>	

	* tree-vectorizer.c (slpeel_can_duplicate_loop_p): New name for function
	previously called verify_loop_for_duplication. All conditions compacted
	into one compound condition. Removed debug dumps.
	(vect_analyze_loop_with_symbolic_num_of_iters): Removed. Some of the
	functionality moved to vect_can_advance_ivs_p, and some to
	vect_analyze_loop_form.
	(vect_can_advance_ivs_p): New function. Contains functionality that was
	taken out of vect_analyze_loop_with_symbolic_num_of_iters.
	(slpeel_tree_peel_loop_to_edge): Call slpeel_can_duplicate_loop_p.
	(vect_analyze_operations): Call vect_can_advance_ivs_p and
	slpeel_can_duplicate_loop_p.
	(vect_get_loop_niters): Added documentation.
	(vect_analyze_loop_form): Check the loop entry always - not only in case
	of unknown loop bound. Create preheader and exit bb if necessary. Apply
	a check that used to take place in
	vect_analyze_loop_with_symbolic_num_of_iters.
	(vectorize_loops): Call verify_loop_closed_ssa under ENABLE_CHECKING.
	Remove redundant call to rewrite_into_loop_closed_ssa.
	(vect_compute_data_refs_alignment): Removed obsolete comment.


	2004-11-19  Dorit Naishlos  <dorit@il.ibm.com>
	
	* tree-vectorizer.c (slpeel_make_loop_iterate_ntimes): Last two
	arguments removed.
	(slpeel_tree_peel_loop_to_edge): Call slpeel_make_loop_iterate_ntimes
	without last two arguments. Update single_exit of loops.
	(vect_update_niters_after_peeling): Removed. Its functionality was
	moved to vect_do_peeling_for_alignment.
	(vect_do_peeling_for_loop_bound): New name for function previously
	called vect_transform_for_unknown_loop_bound.
	(vect_transform_loop_bound): Call slpeel_make_loop_iterate_ntimes
	instead of code that duplicates the same functionality.
	(vect_do_peeling_for_alignment): Functionality of
	vect_update_niters_after_peeling moved here.
	(vect_transform_loop): Unify call to vect_do_peeling_for_loop_bound -
	previously named vect_transform_for_unknown_loop_bound - for both known
	and unknown loop bound cases.

	2004-11-19  Andreas Tobler  <a.tobler@schweiz.ch>
	
	* tree-vectorizer.c (slpeel_verify_cfg_after_peeling): Define only
	if checking is enabled.

	2004-11-22  Dorit Naishlos  <dorit@il.ibm.com>
	
	PR tree-opt/18544
	* tree-vectorizer.c (vect_analyze_data_refs): Fail if memtag not found.

	2004-11-22  Dorit Naishlos  <dorit@il.ibm.com>

	PR tree-opt/18536
	* tree-vectorizer.c (make_loop_iterate_ntimes): Use type of niters when
	creating iv instead of integer_type.
	(vect_build_loop_niters): Remove redundant code.
	(vect_transform_loop_bound): Removed (duplicates functionality of
	make_loop_iterate_ntimes.
	(vect_gen_niters_for_prolog_loop): Add documentation. Call
	lang_hooks.types.type_for_size to create a type of the required size.
	Use that type instead of integer_type. Remove redundant code.
	(vect_update_niters_after_peeling): Use type of niters instead of
	integer_type.
	(vect_transform_loop): Unify handling of known and unknown loop bound
	cases. Call make_loop_iterate_ntimes instead of
	vect_transform_loop_bound.

	2004-11-23  Dorit Naishlos  <dorit@il.ibm.com>
	
	PR tree-opt/18403
	PR tree-opt/18505
	* tree-vectorizer.c (vect_create_data_ref_ptr): Use
	lang_hooks.types.type_for_size instead of integer_type_node for the
	type of ptr_update.

	2004-11-23  Dorit Naishlos  <dorit@il.ibm.com>
	* tree-vectorizer.c (vect_analyze_operations): Don't vectorize if
	the vectorization factor is greater than the iteration count.
	(vect_gen_niters_for_prolog_loop): No need to calculate min if the
	iteration count is known.

	(vect_build_symbol_bound): Removed. Its functionality moved to
	vect_generate_tmps_on_preheader.
	(vect_generate_tmps_on_preheader): Moved content of
	vect_build_symbol_bound here instead of calling it.  Changed some
	variables names.

	(vect_build_loop_niters): We don't expect a new_bb to be generated -
	use gcc_assert.
	(vect_gen_niters_for_prolog_loop): Likewise.
	(vect_gen_niters_for_prolog_loo): Likewise.
	
	(slpeel_make_loop_iterate_ntimes): Use buildN instead of build.
	(slpeel_add_loop_guard): Likewise.
	(slpeel_tree_peel_loop_to_edge): Likewise.
	(vect_do_peeling_for_alignment): Likewise.
	
	(vect_get_first_index): Missing space.

	2004-11-30  Dorit Naishlos  <dorit@il.ibm.com>
	PR tree-opt/18173

	* tree-vectorizer.c (vect_can_force_dr_alignment_p): Return false for
	decls that are assembled before vectorization takes place.
	(vect_compute_data_ref_alignment): Set DECL_USER_ALIGN to 1.

	2004-11-30  Dorit Naishlos  <dorit@il.ibm.com>
	* tree-vectorizer.c (vect_gen_niters_for_prolog_loop): Use
	tree_low_cst instead of TREE_INT_CST_LOW.

	2004-11-30  Ira Rosen  <irar@il.ibm.com>
	
	PR tree-opt/18607
	* tree-vectorizer.c (vect_analyze_data_refs): Use temporary
	variable for data_reference when looking for memtag.

	2004-12-02  Dorit Naishlos  <dorit@il.ibm.com>

	PR tree-opt/18716
	* tree-vectorizer.c (slpeel_make_loop_iterate_ntimes): Properly set
	then and else labels.

2004-12-17  Mike Stump  <mrs@apple.com>

	Radar 3549855
	* c-lex.c (c_lex_with_flags): Always do BOL processing for CW
	asms.

2004-12-17  Dale Johannesen  <dalej@apple.com>

	Radar 3851659
	* c-decl.c (disagnose_mismatched_decls):  Fix from mainline.

2004-12-17  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3914905
	* c-typeck.c (digest_init): Handle case of vector literal
	initializer initializing a const variable.
	* convert.c (build_compound_literal_vector): New routine to generate a
	COMPOUND_LITERAL_EXPR expression for a vector constant.
	(convert_to_vector); call build_compound_literal_vector.

2004-12-16  Stuart Hastings <stuart@apple.com>

	Radar 3910248, 3915171
	* gcc/config/rs6000/rs6000.c (output_call): correctly skip
	non-line-number notes.

2004-12-16  Ziemowit Laski  <zlaski@apple.com>

	Radar 3921172
	* dbxout.c (dbxout_finish): Switch to .text section before
	emitting final SO STABS record.

2004-12-15  Dale Johannesen  <dalej@apple.com>

	Radar 3619824
	* config/rs6000/rs6000.c (optimization_options): Clear
	flag_errno_math.
	* doc/invoke.texi:  Document that -fno-math-errno is the default.

2004-12-15  Ziemowit Laski  <zlaski@apple.com>

	Radar 3918376
	* config/rs6000/rs6000.c (altivec_ovl_resolve): When matching
	4-element vectors, allow V4SF in addition to V4SI modes.
	(rs6000_fold_builtin): If invalid arguments are provided, use
	the return type for the first overload candidate, if available.

2004-12-15  Ziemowit Laski  <zlaski@apple.com>

	Radar 3913672
	* config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): For
	'-faltivec', pass in '-pim-altivec' instead of '-maltivec
	-maltivec-pim'.
	* config/rs6000/rs6000.c (rs6000_altivec_switch): New.
	(rs6000_override_options): Handle '-m(no)altivec' explicitly
	(rather than via TARGET_SWITCHES); for '-maltivec' and
	'-mcpu=xxx' (where xxx supports AltiVec), clear the
	flag_disable_opts_for_faltivec flag, move handling of
	'-m(no-)pim-altivec' (formerly '-m(no-)altivec-pim')
	before handling of -maltivec and -mcpu, and have it
	set MASK_ALTIVEC and flag_disable_opts_for_faltivec.
	* config/rs6000/rs6000.h (TARGET_SWITCHES): Move
	'-m(no-)altivec' to TARGET_OPTIONS.
	(TARGET_OPTIONS): Rename '-m(no-)altivec-pim' to
	'-m(no-)pim-altivec'; add in '-m(no-)altivec'.
	(rs6000_altivec_switch): New forward declaration.
	* doc/invoke.texi: Rename '-m(no-)altivec-pim' to
	'-m(no-)pim-altivec'; move description of disabled
	optimizations from '-faltivec' to '-mpim-altivec'.

2004-12-14  Stuart Hastings <stuart@apple.com>

	Radar 3910248
	* gcc/config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): ignore
	-mlongcall when -m64 in use.

2004-12-14  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3889727
	brought in fix for PR target/18641 from FSF
	below.

2004-12-11  David Edelsohn  <edelsohn@gnu.org>
	    Ulrich Weigand  <uweigand@de.ibm.com>

	PR target/18641
	* config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Reload all
	constants into all register classes intersecting with FLOAT_REGS
	via memory.
	* config/rs6000/rs6000.h (PREFERRED_RELOAD_CLASS): Same.
	* config/rs6000/rs6000.md (movdi_internal32): Ignore FPRs when
	choosing register preferences.
	(movdi_internal64): Same.

2004-12-13  Mike Stump  <mrs@apple.com>

	Radar 3865314
	* c-common.c (convert_and_check): Add support for -Wshorten-64-to-32.
	* c.opt (Wshorten-64-to-32): Likewise.
	* doc/invoke.texi (Warning Options): Likewise.
	* Makefile.in (c-common.o): Added dependancy for options.h.

2004-12-10 Devang Patel  <dpatel@apple.com>
	
	Radar 3572046 (related)
	* tree-ssa-forwprop.c (cast_conversion_assignment_p): New.
	(replace_use_in_cond_expr): New.
	(all_uses_are_replacable): New.
	(eliminate_unnecessary_casts): New.
	(tree_ssa_forward_propagate_single_use_var): Eliminate unnecessary
	casts.

2004-12-10 Devang Patel  <dpatel@apple.com>

	Radar 3572046 (last patch)
	* config/rs6000/rs6000.c (rs6000_emit_vector_select): Adjust
	vector select insn parameters.


2004-12-10  Devang Patel  <dpatel@apple.com>

	Radar 3893659
	* gcc.c (main): Do not break out of loop when error is reported while
	processing one source file.

2004-12-10  Ziemowit Laski  <zlaski@apple.com>

	Radar 3640156, 3877958
	* config/rs6000/altivec.h: Skip contents of file
	#ifdef __APPLE_ALTIVEC__, and issue a warning.
	* config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE): Do not
	'include altivec.h' upon seeing '-faltivec'; instead, specify
	'-maltivec-pim'.
	* config/rs6000/rs6000-c.c: Include options.h.
	(rs6000_cpu_cpp_builtins): Define __APPLE_ALTIVEC__ and 'vec_step'
	macro only if '-maltivec-pim' has been specified.
	* config/rs6000/rs6000-protos.h (rs6000_fold_builtin): New prototype.
	* config/rs6000/rs6000.c (altivec_cov_rt_12, altivec_cov_rt_2p,
	altivec_cov_rt_1d, altivec_ovl_resolve, altivec_convert_args,
	rs6000_fold_builtin): New functions.
	(rs6000_altivec_inline_etc, rs6000_altivec_pim,
	rs6000_altivec_pim_switch): New variables.
	(rs6000_override_options): Handle '-m(no-)altivec-pim'.
	(vector_builtin_fns): Decorate with GTY(()) voodoo; do not reserve
	extra space for AltiVec PIM built-ins (since they won't be stored
	there.)
	(TARGET_FOLD_BUILTIN): Point at rs6000_fold_builtin().
	(enum pim_flags, struct altivec_pim_info): New data types.
	(altivec_pim_table): New global variable.
	(def_pim_builtin): New macro.
	(altivec_init_builtins): If '-maltivec-pim' was specified, define
	AltiVec PIM operations and predicates as built-ins.
	(rs6000_handle_altivec_attribute): Add handling for 'element__'
	argument, which returns the element type of the vector type passed in.
	* config/rs6000/rs6000.h (enum rs6000_builtins): Append a new range,
	ALTIVEC_PIM__FIRST... ALTIVEC_PIM__LAST, representing built-in codes
	for AltiVec PIM operations and predicates.
	(TARGET_OPTIONS): Add '-m(no-)altivec-pim' option.
	(rs6000_altivec_inline_etc, rs6000_altivec_pim,
	rs6000_altivec_pim_switch): Forward-declare.
	* config/rs6000/t-rs6000 (rs6000-c.o): Depend on options.h.
	* doc/invoke.texi: Update '-faltivec' description; add description
	for '-maltivec-pim'.

2004-12-08  Mike Stump  <mrs@apple.com>

	Radar 3679243
	* varasm.c (assemble_variable): Don't use .zerofill for weak
	symbols as it isn't supported in the assembler.  Also, key off
	!DECL_COMMON directly instead of flag_no_common so that C++ works.
	
2004-12-08  Devang Patel  <dpatel@apple.com>
	
	Radar 3903799
	* config/darwin.h (ASM_SPEC): Supply -force_cpusubtype_ALL.

2004-12-07  Dale Johannesen  <dalej@apple.com>

	Radar 3888787
	* doc/invoke.texi (-msoft-float):  Rewrite to reflect reality.

2004-12-07  Mike Stump  <mrs@apple.com>

	Radar 3603833, 3896176, 3518821.
	* c-common.c (cw_asm_operands_arg): New.
	(print_cw_asm_operand): Add support for figuring out if the
	argument must be a register or a memory reference.
	(cw_asm_get_register_var): Likewise.
	(cw_op_constraint): Likewise.
	(cw_op_comp): Likewise.
	(cw_constraint_for): Likewise.
	(cw_process_arg): Likewise.
	(cw_asm_stmt): Likewise.
	(print_cw_asm_operand): Likewise.
	(cw_asm_get_register_var): Likewise.
	(cw_memory_clobber): Add support for figuring out if the
	instruction needs a memory clobber.
	(cw_asm_stmt): Likewise.
	(print_cw_asm_operand): Add support for static duration variables.

	(cw_get_identifier): New.
	(cw_ha16, cw_hi16, cw_lo16): New.
	(get_cw_asm_label): Add support for ha16(x), hi16(x) and lo16(x).
	* c-common.h (cw_get_identifier): New.
	* c-parse.in (cw_identifier): Add support for '+', '-' and '.' in
	C CW opcodes to allow for a less tightly coupled lexer.
	(single_cw_asm_stmt): Likewise.
	(cw_asm_operand): Add support for ha16(x)(r).

	* doc/extend.texi (Asm Blocks and Functions): Document memory
	clobbers and instructions that take a memory operand.

2004-12-06  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3893215
	Following FSF mainline patch fixes it.

2004-11-11  Zdenek Dvorak  <dvorakz@suse.cz>

	PR tree-optimization/17742
	* tree-scalar-evolution.c (follow_ssa_edge_in_rhs): Handle
	MINUS_EXPR correctly.

2004-12-03  Dale Johannesen  <dalej@apple.com>

	Radar 3905019
	* opts.c (common_handle_option):  Fix from mainline.

2004-12-03  Stuart Hastings <stuart@apple.com>

	Radar 3855246
	* gcc/config/rs6000/rs6000.c (init_cumulative_args): Remove APPLE LOCAL.
	* gcc/config/rs6000/rs6000.h (target_flags): Remove APPLE LOCAL.
	(TARGET_OPTIONS): Add -mlong-branch as a synonym for -mlongcall.

2004-12-03  Caroline Tice  <ctice@apple.com>
	    Andrew Pinski  <pinskia@physics.uc.edu>

	Radar 3469752 (Adding loops-to-memset optimization)
	* Makefile.in (OBJS-common): Add tree-ssa-loo-memset.o to list
	(tree-ssa-loop-memset.o): Add rule for making this.
	* bitmap.h (bitmap_empty_p):  New macro.
	* common.opt (ftree-loop-memset):  Add new flag for optimization.
	* tree-flow.h (tree_ssa_memset):  Add function declaration.
	* tree-optimize.c (init_tree_optimization_passes):  Add loops-to-memset
	pass.
	* tree-pass.h (pass_memset):  Add extern declaration for loops-to-memset
	pass.
	* tree-ssa-loop.c  (tree_ssa_loop_memset, gate_tree_ssa_loop_memset): New
	functions.
	(pass_memset):  Define new pass.
	* tree-ssa-loop-memset.c: New file.
	* tree-vectorizer.c (vect_is_simple_iv_evolution): Remove static
	forward declaration; make the function globally visible.
	(vect_get_loop_niters): Likewise.
	(vect_analyze_pointer_ref_access): Likewise.
	* tree-vectorizer.h (vect_is_simple_iv_evolution):  Add external function
	declaration.
	(vect_get_loop_niters): Likewise.
	(vect_analyze_pointer_ref_access): Likewise.

2004-12-02  Devang Patel  <dpatel@apple.com>

	Radar 3855723 and 3886718

	Backport from Mainline
	2004-12-02  Devang Patel  <dpatel@apple.com>
	* config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add -gfull and -gused.
	* config/rs6000/darwin.h (CC1_SPEC): Do not handle -gfull and -gused.
	* config/i386/darwin.h (CC1_SPEC): Same.

2004-12-02  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3893215 - part 1
	* tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi):
	Added missing check for unknown evolution_of_loop.
	(from FSF mainline).

2004-11-30  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3893125
	* loop.c (loop_giv_reduce_benefit): Remove APPLE LOCAL
	patch which caused regression in galaxy(VMX) of skidmarks.

2004-11-24  Devang Patel  <dpatel@apple.com>

	* gcc.h: APPLE LOCAL marker cleanup.

2004-11-24  Devang Patel  <dpatel@apple.com>

	Radar 3876218
	* gcc.c (process_command): Supply -v to linker.

2004-11-23  Stan Shebs  <shebs@apple.com>

	* config.gcc (powerpc-*-darwin*): Remove bringup conditional.
	* mklibgcc.in: Don't try to make dylibs from static/kext
	libgcc.
	* config/t-slibgcc-darwin: Don't use SHLIB_MULTILIB.

2004-11-23  Devang Patel  <dpatel@apple.com>

	Radar 3886137
	* gcc.h (DEFAULT_WORD_SWITCH_TAKES_ARG): Add isysroot.
	* config/darwin-c.c (darwin_register_frameworks): Use sysroot.

2004-11-22  Devang Patel  <dpatel@apple.com>

	Radar 3846092
	* doc/invoke.text: Remove outdated docs for -fscalar-evolutions and
	-fall-data-deps. Document not disabling of -fstrict-aliasing, when
	auto vectorization is used, in Apple GCC compiler.
	* opts.c (decode_options): Disable -fstrict-aliasing only if -ftree-vectorize
	is not used.

2004-11-22  Dale Johannesen  <dalej@apple.com>

	* config/darwin.h (JUMP_TABLES_IN_TEXT_SECTION):  Conditionalize
	properly and comment.

2004-11-21  Dale Johannesen  <dalej@apple.com>

	* config/darwin.h (JUMP_TABLES_IN_TEXT_SECTION):  Define.
	(TARGET_TERMINATE_DW2_EH_FRAME_INFO):  Remove dup definition.

2004-11-18  Dale Johannese  <dalej@apple.com>

	* lambda-code.c:  cosmetic changes to match mainline.

2004-11-17  Stuart Hastings <stuart@apple.com>

	Radar 3837835
	* cgraph.c: add "#include <function.h>".
	(dump_cgraph_node) Add uses_vector bit to dump.
	* cgraphunit.c:(altivec_infection, fndecl_uses_vector_p) New.
	(record_call_1) Set uses_vector.
	(cgraph_create_edges) Set uses_vector.
	(cgraph_decide_inlining_of_small_functions, cgraph_decide_inlining,
	cgraph_decide_inlining_incrementally) Check for altivec_infection.
	* gcc/testsuite/lib/scantree.exp (diff-tree-dumps):
	Expand globbing of 't??' dumpfile names to include 'ipa'.

2004-11-16  Devang Patel  <dpatel@apple.com>

	Merge stuff from autovect-branch.

	2004-11-12  Devang Patel  <dpatel@apple.com>

	* optabs.c (vector_compare_rtx): Use COMPARISON_CLASS_P.

	2004-11-12  Devang Patel  <dpatel@apple.com>

	Backport from Mainline.

	2004-11-12  Sebastian Pop  <pop@cri.ensmp.fr>

	* tree-data-ref.c (analyze_subscript_affine_affine): Correctly
	compute the first overlapping iterations.

	2004-11-12  Devang Patel  <dpatel@apple.com>

	* tree-data-ref.c (compute_subscript_distance): Make externally visible.
	(build_class_dist_vector): Same.
	* tree-data-ref.h (compute_subscript_distance): New external decl.
	(build_class_dist_vector): Same.
	* tree-vectorizer.c (loops_num): New variable.
	(vect_build_dist_vector): New function.
	(vect_analyze_data_ref_dependence): Use distance vector to determine
	dependence.
	(vect_analyze_data_ref_dependences): Remove local variable loop.
	(vect_analyze_loop): Analyze operations before data dependences
	(vectorize_loops): Remove local variable loops_num.

	2004-11-12  Devang Patel  <dpatel@apple.com>

	* tree-vectorizer.c (vectorizable_select): New function.
	(vect_is_simple_cond): New function.
	(vect_analyze_operations): Handle conditional expr.
	* tree-vectorizer.h (stmt_vec_info_type): New member, select_vec_info_type.

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* tree-ssa.c (flush_pending_stmts):  New.

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/rs6000.c (rs6000_override_options):
	Put -ftree-loop-linear into -fast.

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* lambda-code.c:  Make identical to mainline as of
	Nov 11, plus Dan Berlin's patch for swim.
	* tree-loop-linear.c:  Make identical to mainline.
	* tree-data-ref.c:  Make identical to mainline as
	of Nov 11.
	* tree-optimize.c (init_tree_optimization_passes):
	Make order of passes same as mainline.
	* tree-ssa-loop-ivopts.c (try_add_cand_for):  Roll in
	Zdenek's patch for important candidates.

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* fold-const.c (try_move_mult_to_index):  New.
	(fold):  Use it (2 places).

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* tree.c (build_low_bits_mask):  New.
	tree.h:  Declare it.
	tree-ssa-loop-niter.c (number_of_iterations_cond):  Use it.

2004-11-16  Devang Patel  <dpatel@apple.com>

	Related to Radar 3837835.
	* tree-cfg.c (ivu_gate, fndecl_uses_vector_p, identify_vector_use,
	pass_identify_vector_use): Remove.
	* tree-optimzie.c (init_tree_optimization_passes): Remove pass_identify_vector_use.
	* tree-pass.h (pass_identify_vector_use): Remove extern decl.

2004-11-16  Caroline Tice  <ctice@apple.com>

	* varasm.c (assemble_start_function):  Don't print out section label
	when aligning cold section.

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* dbxout.c (dbxout_source_file):  Restore local patch
	for hot/cold partitioning.

2004-11-16  Dale Johannesen  <dalej@apple.com>

	* calls.c (expand_call):  Fix ICE building crafty.

2004-11-15  Dale Johannesen  <dalej@apple.com>

	* profile.c (compute_branch_probabilities):  Roll in fix from mainline.

2004-11-15  Dale Johannesen  <dalej@apple.com>

	* tree-flow.h (stmt_bsi):  Remove.
	(basic_block bsi_insert_on_edge_immediate):  Remove duplicate decl.
	(tree_block_label):  Remove name in prototype.
	(add_referenced_tmp_var):  Ditto.
	(TDFA_USE_OPS):  Parenthesize.
	(TDFA_USE_VOPS):  Parenthesize.
	(flush_pending_stmts):  New.
	(tree_duplicate_loop_to_exit):  Remove.
	(update_lv_condition):  Ditto.
	(estimate_loop_size):  Ditto.
	(insert_edge_copies):  Remove name in prototype.
	(expr_invariant_in_loop_p):  Ditto.

2004-11-15  Dale Johannesen  <dalej@apple.com>

	* c-decl.c (find_tree_with_code_1):  Remove.
	(find_tree_with_code):  Ditto.
	(find_pointer):  Ditto.
	(struct should_transpose_for_loops_t):  Ditto.
	(should_transpose_for_loops_1):  Ditto.
	(should_transpose_for_loops):  Ditto.
	(tree_contains_1):  Ditto.
	(tree_contains):  Ditto.
	(perform_loop_transpose):  Ditto.
	(loop_transpose):  Ditto.
	(finish_function):  Don't call it.
	* common.opt (-floop-transpose):  Remove.
	* flags.h (flag_loop_transpose):  Remove.
	* opts.c (OPT_floop_transpose):  Remove.
	* toplev.c (flag_loop_transpose):  Remove.
	* config/rs6000/rs6000.c (rs6000_override_options):  Don't set it.
	* doc/invoke.texi (-fast):  Remove reference.
	* testsuite/gcc.apple/loop-transpose-1.c:  Remove.

2004-11-15  Matt Austern  <austern@apple.com>

	Radar 3878983
	* ginclude/tgmath.h (fdim) Use __TGMATH_REAL_2 macro.
	(hypot) Likewise.
	(remainder) Likewise.
	(nexttoward) Use proper number of arguments for TGMATH_REAL_1_2.

2004-11-11  Dale Johannesen  <dalej@apple.com>

	Radar 3875337
	* tree-cfg.c (cleanup_control_expr_graph):  Remove redundant
	local patch from LNO.
	(thread_jumps_from_bb):  Remove wrong local patch from LNO;
	make identical to mainline.
	(thread_jumps):  Make identical to mainline.

2004-11-11  Stuart Hastings <stuart@apple.com>

	* i386.md (*movqi_1): Short-term fix for 3838108.

2004-11-11  Stuart Hastings <stuart@apple.com>

	* tree.c (build_vector): Proper initialization for 'list'

2004-11-10  Fariborz Jahanian <fjahanian@apple.com>

	* c-common.c (vector_constructor_from_expr): Remove replication
	of missing initializer.
	* tree.c (build_vector): Replicate missing initializer.
	* cp/typeck.c (build_c_cast): Move building of vector constant
	past checking for processing of template declaration.

2004-11-08  Geoffrey Keating  <geoffk@apple.com>

	* gcc.c: Improve local markers.
	(process_command): Set __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__
	rather than MAC_OS_X_VERSION_MIN_REQUIRED.

2004-11-08  Devang Patel  <dpatel@apple.com>

	Radar 3846514
	* tree-if-conv.c (clean_predicate_lists): Use loop header and latch
	directly.

2004-11-08  Ziemowit Laski  <zlaski@apple.com>

	Radar 3853429
	* varasm.c (output_addressed_constants): For CONST_DECLs,
	output the initializer if present.
	* config/darwin.c (machopic_select_section): Ensure that
	constant Objective-C strings and constant CFStrings get emitted
	into correct sections.

2004-11-05  Devang Patel  <dpatel@apple.com>

	Radar 3853509.
	* cp/parser.c (cp_parser_objc_method_prototype_list): Handle #pragma.
	(cp_parser_objc_class_interface): Get protocol qualified type.

2004-11-05  Stuart Hastings <stuart@apple.com>

	Radar 3848818
	* gcc/cfgcleanup.c(merge_memattrs): copied from FSF mainline.

2004-11-04  Dale Johannesen  <dalej@apple.com>

	* config/darwin.h (EXTRA_SECTION_FUNCTIONS):
	Fix text_unlikely_section.

2004-11-04  Dale Johannesen  <dalej@apple.com>

	Radar 3759876
	* config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall):  Enable
	indirect sibcalls.
	* config/rs6000/rs6000.md (*sibcall_symbolic):  Make them work.
	(*sibcall_value_symbolic):  Ditto.

2004-11-04  Dale Johannesen  <dalej@apple.com>

	* opts.c (decode_options):  Use mainline-style loop opts.

2004-11-04  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/rs6000.md (*save_fpregs_with_label_si):
	Use any_parallel_operand to remove a warning.
	* config/rs6000/darwin.md (*save_fpregs_with_label_di):  Ditto.
	(*save_vregs_di):  Ditto.
	(*restore_vregs_di):  Ditto.
	(*save_vregs_with_label_di):  Ditto.

2004-11-04  Devang Patel  <dpatel@apple.com>

	Partial 3837835 fix.
	* function.h (struct function): New member, uses_vector.
	* tree-cfg.c (ivu_gate, fndecl_uses_vector_p, identify_vector_use,
	pass_identify_vector_use): New.
	* tree-optimzie.c (init_tree_optimization_passes): Add pass_identify_vector_use.
	* tree-pass.h (pass_identify_vector_use): New extern decl.

2004-11-04  Devang Patel  <dpatel@apple.com>

	Back out 3837840 fix.
	* c-opts.c (c_common_handle_option): Update APPLE LOCAL marker.
	* flags.h (flag_inline_trees): Remove extern decl.
	* toplev.c (process_optiosn): Do not disable inlining with -faltivec.

2004-11-03  Ziemowit Laski  <zlaski@apple.com>

	Radar 3863563 (fix from mainline)
	* c-lang.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Remove.
	(c_types_compatible_p): Move function definition...
	* c-objc-common.c (c_types_compatible_p): ...here.
	* c-objc-common.h (LANG_HOOKS_TYPES_COMPATIBLE_P): Moved here from
	c-lang.c.

2004-11-02  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3857727
	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Remove
	setting of targetm.cast_expr_as_vector_init.
	* config/rs6000/rs6000.c (rs6000_override_options): Set
	targetm.cast_expr_as_vector_init.

2004-11-02  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3846637
	* config/rs6000/rs6000.md: Remove condition for
	HONOR_SIGNED_ZEROS from fnmsub generation.

2004-11-01  Ziemowit Laski  <zlaski@apple.com>

	Radar 2810013 (fix from mainline)
	* c-common.h (objc_lookup_ivar): Add second parameter to
	prototype.
	* c-typeck.c (build_external_ref): After looking up symbol,
	pass it to objc_lookup_ivar() to decide whether it or the
	ivar should be used, rather than deciding the issue locally.
	* stub-objc.c (objc_lookup_ivar): Add an OTHER parameter,
	which is simply returned in the non-ObjC case.

2004-10-29 Fariborz Jahanian <fjahanian@apple.com>

	Radar 3848842
	* cp/call.c (build_over_call): Don't change type of
	the function pointer built by call to build_vfn_ref_using_vtable.
	* testsuite/g++.dg/kext6.C: New test

2004-10-27  Geoffrey Keating  <geoffk@apple.com>

	* c-common.c (handle_weak_import_attribute): Delete.
	(c_common_attribute_table): Remove 'weak_import'.
	* c-decl.c (start_function): Remove local change for weak_import.
	* dbxout.c (dbxout_source_file): Remove local change for
	hot/cold partitioning, sync with FSF GCC.
	* dmp-tree.c (print_decl): Remove local change for weak_import.
	* idebug.c: Remove local change for weak_import.
	* rtl.h (struct rtx_def): Remove local change for weak_import.
	(SYMBOL_REF_WEAK_IMPORT): Delete.
	* tree.h (DECL_WEAK_IMPORT): Delete.
	(IDENTIFIER_WEAK_IMPORT): Delete.
	(struct tree_decl): Delete weak_import_flag.
	(enum attribute_flags): Delete ATTR_FLAG_FUNCTION_DEF.
	* varasm.c (merge_weak): Remove local change for weak_import.
	* config/darwin.c (machopic_output_indirection): Remove local change
	for weak_import.
	(darwin_set_section_for_var_p): Do nothing if symbol is weak.
	* config/rs6000/rs6000.c (find_weak_imports): Delete.
	(rs6000_assemble_integer): Remove local change for weak_import.
	(local_label_unique_number): Delete.
	(macho_branch_islands): Remove local change for weak_import.

2004-10-26  Geoffrey Keating  <geoffk@apple.com>

	Radar 3840704
	* c-opts.c (c_common_handle_option): Rename flag_altivec to
	flag_disable_opts_for_faltivec.
	* c.opt (faltivec): Likewise.
	* toplev.c (process_options): Likewise, and update comment.
	* config/rs6000/rs6000.c (expand_block_clear): Handle
	flag_disable_opts_for_faltivec.
	(expand_block_move): Likewise.

2004-10-26  Devang Patel  <dpatel@apple.com>

	Radar 3233789
	* dbxout.c (dbxout_init): Remove APPLE LOCAL patch that suppresses
	SO stab address.

2004-10-26  Devang Patel  <dpatel@apple.com>

	Radar 3760592

	Backport from mainline.
	2004-10-21  Dndrew Pinksi  <pinskia@physics.uc.edu>
	* c-opts.c (push_command_line_include): Use the current file
	name instead of the main one.

2004-10-26  Matt Austern  <austern@apple.com>

	* ginclude/tgmath.h (fabs): Fix typo (complex abs is cabs, not cfabs)

2004-10-22  Fariborz Jahanian <fjahanian@apple.com>

	* config/rs6000/darwin.md: Remove vecstore/vecload patterns
	specific to 64-bit Darwin.

2004-10-21  Andrew Pinski  <pinskia@physics.uc.edu>
	    Ziemowit Laski  <zlaski@apple.com>

	Radar 3845826 (includes PR objc/17923)
	* tree.c (staticp): A CONST_DECL has static storage if either
	TREE_STATIC or DECL_EXTERNAL is set.
	* config/darwin.c (darwin_build_constant_cfstring): Build a global
	CONST_DECL to hold each constructed CFString.
	* c-decl.c (pushdecl_top_level): Accept CONST_DECLs which can
	have null names.

2004-10-21 Fariborz Jahanian <fjahanian@apple.com>

	* c-common.c (vector_constructor_from_expr): In building vector expressions,
	fold no_expr of nanf into a cst_real expression tree.

2004-10-21 Fariborz Jahanian <fjahanian@apple.com>

	* function.c (assign_parms): Iterate over all non-vector args first,
	then over vector args.

2004-10-21  Ziemowit Laski  <zlaski@apple.com>

	Radar 3540965
	* c-common.c (flag_objc_call_cxx_cdtors): New variable.
	* c-common.h (flag_objc_call_cxx_cdtors): New forward declaration.
	* c-opts.c (c_common_handle_option): Process '-fobjc-call-cxx-cdtors'
	option.
	* c.opt (fobjc-call-cxx-cdtors): New option.
	* doc/invoke.texi (fobjc-call-cxx-cdtors): Document.

2004-10-19  Devang Patel  <dpatel@apple.com>

	Radar 3837840
	* c-opts.c (c_common_handle_option): Update APPLE LOCAL marker.
	* c.opt (faltivec): Same.
	* toplev.c (process_options): Same.
	* config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE):
	Same.


2004-10-19  Devang Patel  <dpatel@apple.com>

	Radar 3837840
	* c-opts.c (c_common_handle_option): Handle OPT_faltivec.
	* c.opt (faltivec): New option.
	* toplev.c (process_options): Disable inlining when -faltivec
	is used.
	* config/rs6000/darwin.h (SUBTARGET_OPTION_TRANSLATE_TABLE):
	Supply -faltivec to cc1* also.

2004-10-19  Fariborz Jahanian <fjahanian@apple.com>

	* c-common.c (cw_asm_stmt): Set correct constraint for
	vector arguments.

2004-10-18  Ziemowit Laski  <zlaski@apple.com>

	Radar 3832999 (fix from mainline)
	* c-parse.in (reservedwords): Add OBJC_TYPE_QUAL as alternative.

2004-10-18  Devang Patel  <dpatel@apple.com>

	Radar 3753408
	* Makefile.in (GTFILES): Remove APPLE LOCAL comments.
	* target-def.h (TARGET_VECTOR_COMPARE_P, TARGET_VECTOR_COMPARE_FOR_P,
	TARGET_VECTOR_COMPARE_STMT, TARGET_VECTOR_SELECT_P,
	TARGET_VECTOR_SELECT_FOR_P, TARGET_VECTOR_SELECT_STMT): Remove #defines.
	(TARGET_VECT): Remove vector select and compare members.
	* target.h (struct gcc_target): Remove vector select and
	compare members.
	* tree-dfa.c (dump_immediate_uses_for): Do not print block number.
	* tree-gimple.c (is_gimple_stmt): Handle COND_EXPR properly.
	* tree-ssa-operands.c (add_vdef): Remove.
	(build_ssa_operands): Remove local patch to handle COND_EXPR inside
	MODIFY_EXPR case.
	(get_expr_operands): Same.
	* tree.c (get_array_base): Remove.
	* config/rs6000/rs6000.c (rs6000_vector_compare_p,
	rs6000_vector_compare_for_p, rs6000_vector_compare_stmt,
	rs6000_vector_select_p, rs6000_vector_select_for_p,
	rs6000_vector_select_stmt, get_vector_compare_for,
	get_vector_select_for): Remove.
	(TARGET_VECTOR_COMPARE_P, TARGET_VECTOR_COMPARE_FOR_P,
	TARGET_VECTOR_COMPARE_STMT, TARGET_VECTOR_SELECT_FOR_P,
	TARGET_VECTOR_SELECT_STMT): Remove #defines.

2004-10-16  Dale Johannesen  <dalej@apple.com>

	* c-common.c (c_common_get_alias_set):  Use GGC for type_hash_table.

2004-10-15  Dale Johannesen  <dalej@apple.com>

	* objcp/objcp-lang.c (tree_code_type):  Fix merge omission.

2004-10-15  Mike Stump  FIXME

	merge

2004-10-15  Stuart Hastings <stuart@apple.com>

	* gcc/simplify-rtx.c(simplify_relational_operation): copied from FSF mainline.

2004-10-15  Stuart Hastings <stuart@apple.com>

	* gcc/c-common.c(print_cw_asm_operand): proper casting.
	* gcc/expr.c(expand_expr_addr_expr): delete problematic assertions.

2004-10-14  Robert Bowdidge <bowdidge@apple.com>

	* config/darwin-driver.c: Remove off-by-one error in QA_OVERIDE...
	  machinery.

2004-10-15  Fariborz Jahanian <fjahanian@apple.com>

	Radar 3719208
	* stor-layout.c (update_alignment_for_field): Don't use
	first-field alignment adjustment for union.

2004-10-13  Ziemowit Laski  <zlaski@apple.com>

	Radar 3677258
	* c-decl.c (struct lang_identifier): Move definition to c-tree.h.
	* c-tree.h (struct lang_identifier): Moved here from c-decl.c;
	add 'interface_value' field.
	(C_SIZEOF_STRUCT_LANG_IDENTIFIER): Update to reflect increased size.

2004-10-11  Caroline Tice  <ctice@apple.com>

	* passes.c (rest_of_compilation):  Move hot/cold partitioning to
	occur after scheduling (and SMS), but still before register
	allocation.

2004-10-10  Dale Johannesen  <dalej@apple.com>

	* alias.c (write_dependence_p):  Refs to same FE object interfere.

2004-09-29  Stan Shebs  <shebs@apple.com>

	* config/darwin.h (REAL_LIBGCC_SPEC): Add non-shared libgcc case for
	use during 64-bit bringup.

2004-09-27  Robert Bowdidge  <bowdidge@apple.com>

	* opts.c: Remove QA_OVERRIDE_GCC3_OPTIONS machinery.
	* config/darwin-driver.c: Reimplement QA_OVERRIDE_GCC3_OPTIONS in
	driver-driver.

2004-09-27  Dale Johannesen  <dalej@apple.com>

	* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
	Roll in fix from mainline.

2004-09-26  Caroline Tice  <ctice@apple.com>
	    Dale Johannesen  <dalej@apple.com>

	* value-prof.c (insn_prefetch_values_to_profile):
	Don't instrument clobbers.

2004-09-26  Dale Johannesen  <dalej@apple.com>

	* gcc.c (default_compilers): Handle -fast, -fastcp same as -fast.
	(process_command): Make -fastf, -fastcp imply -combine.
	* tree-ssa-loop-ivopts.c (find_interesting_uses_stmt):  Roll in
	fix from mainline.
	* print-rtl.c (print_rtx):  Print REG_NOTES right (from mainline).

2004-09-24  Dale Johannesen  <dalej@apple.com>

	Radar 3811274
	PR 17625
	* loop-doloop.c (doloop-modify): roll in fix from FSF.

2004-09-23  Stan Shebs  <shebs@apple.com>

	* Makefile.in: Use --print-multi-lib to collect
	compiled-in multilibs.
	* config.gcc: Add in a Darwin 8.x makefile fragment.
	* fixinc.in: Bandaid for a missing __ppc64__ in limits.h
	* config/rs6000/t-darwin8: New file, adds -m64 multilib.

2004-09-23  Devang Patel  <dpatel@apple.com>

	Radar 3765210.
	* gcc.c (main): Handle -E when combine_flag is set.

2004-09-22  Stan Shebs  <shebs@apple.com>

	* config/darwin.h (STARTFILE_SPEC): Don't link in crt2.o if -m64.

2003-09-21  Matt Austern  <austern@apple.com>

	Radar 3807942, backported from FSF mainline
	* config/darwin.c (darwin_make_decl_one_only)
	Allow coalesced symbol to appear in static archive's table of contents

2004-09-17  Devang Patel  <dpatel@apple.com>

	* gcc.c: Use .gch extension instead of .pch.

2004-09-13  Dale Johannesen  <dalej@apple.com>

	Radar 3793575
	* c-decl.c (start_decl):  Fix from mainline (PR 17408).

2004-09-13  Andrew Pinski  <apinski@apple.com>

	Part of radar 3753405 and all of 3767339
	* Makefile.in (c-parse.y): Remove ifcwasm as it is no longer used.
	* objc/Makefile.in (objc/objc-parse.y): Likewise.
	* c-parse.in: Remove all of @@ifcwasm.  Remove all of the MERGE FIXME
	comments as they are fixed.
	(cw_asm_expr_no_commas, cw_asm_unary_expr, cw_asm_primary,
	cw_asm_operand): Change type to be exprtype.
	(cw_asm_compstmt_nostart): Remove type.
	(single_cw_asm_stmt): For cw_asm_operand use .value for the third
	argument of cw_asm_entry.
	(cw_asm_compstmt_start): Remove increment of compstmt_count.
	Call c_begin_compound_stmt always and pass true.
	(cw_asm_compstmt_nostart): Just set cw_asm_block to zero.
	(cw_asm_compstmt): Call c_end_compound_stmt.
	(cw_nonnull_asm_operands): use .value for the exprtype.
	(cw_asm_operand): Set .value to cw_asm_build_register_offset
	and .original_code to ERROR_MARK.
	(stmt_nocomp): For cw_asm_compstmt and cw_asm_stmt, call
	c_finish_expr_stmt.
	(cw_asm_expr_no_commas): Remove extraneous curly braces.
	Update return exprtype instead of just a tree.
	(cw_asm_unary_expr): Likewise.
	(cw_asm_primary): Likewise.
	* c-typeck.c (cw_asm_c_build_component_ref): Change build2 to build3 and
	add NULL as the last argument for COMPONENT_REF.

2004-09-10  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/power4.md: Increase store latency (mainline).

2004-09-08  Stan Shebs  <shebs@apple.com>

	* config/rs6000/darwin-worldsave.asm: Remove, no longer used.

2004-09-07  Caroline Tice  <ctice@apple.com>

	* cfgrtl.c (rtl_verify_flow_info_1):  Add new edge flag,
	EDGE_CROSSING, to flags test case.

2004-08-31  Devang Patel  <dpatel@apple.com>

	* config/darwin-driver.c (get_arch_name): Replace abort() with
	fatal("message").
	(get_driver_name): Same.

2004-08-30  Fariborz Jahanian <fjahanian@apple.com>

	* c-common.c (vector_constructor_from_expr): Adapt to new representation
	of comma-expression in c.

2004-08-29  Andrew Pinski  <apinski@apple.com>

	* loop-doloop.c (add_test): Take the mainline change.
	* loop-invariant.c (find_exits, find_invariants_bb): Take the
	mainline change, use CALL_P.
	* tree-alias-common.c (HAVE_BANSHEE): Take the mainline change.
	* tree-into-ssa.c (compute_global_livein): Take the mainline
	reformatting.
	* tree-pretty-print.c: Remove include for tree-chrec.h as it is
	there later on.
	* tree-ssa-loop-ivopts.c (zero_p): Make static.
	* tree-ssa-loop-niter.c (zero_p): Add back, take the mainline change.
	(number_of_iterations_exit): Take the mainline change for getting
	a boolean false.
	(MAX_ITERATIONS_TO_TRACK): Take the mainline change as it is now
	configurable.
	(struct nb_iter_bound): Take the mainline comment changes.
	* tree-ssa-loop-prefetch.c (zero_p): Add to minimize changes
	from the mainline.
	* tree-ssa-loop.c (gate_loop): Take the mainline changes as we
	want the gate so we can turn them on and off easier.
	* tree.h (struct tree_phi_node, rewritten): Take the mainline change
	as there are no other integer fields in this struct.
	(build_vector_type): Remove duplicated prototype.
	(zero_p): Remove prototype.

	* timevar.c (ppc_intrinsic_time): Correct definition and
	make static.  Cast __mftbu to unsigned.

2004-08-28  Andrew Pinski  <apinski@apple.com>

	* config.in: Regenerate.

2004-08-23  Richard Henderson  <rth@redhat.com>
	    Andrew Pinski  <apinski@apple.com>

	* gimplify.c (gimplify_array_ref_to_plus): Delete.
	(gimplify_addr_expr): Do not call gimplify_array_ref_to_plus
	for ARRAY_REF.

	* config/rs6000/rs6000.c (altivec_expand_builtin): Go passed
	ARRAY_REF also to get to the STRING_CST.

2004-08-24  Stan Shebs  <shebs@apple.com>

	* Makefile.in (libgcc.mk): Add ppc64 and ppc64_static libraries.
	(libgcc.a): Move libraries so they will be found in testing.
	* config/darwin.h (REAL_LIBGCC_SPEC): Add -m64 cases.
	* config/darwin7.h (LIB_SPEC): Add -m64 -static case.

	* calls.c (emit_call_1): Use Pmode instead of SImode in Apple local
	indirect call code.
	(expand_call): Likewise.

2004-08-23  Stan Shebs  <shebs@apple.com>

	* config/rs6000/rs6000.c (rs6000_emit_prologue): Add 64-bit
	cases to optimizations for FP save and picbase setup.
	(rs6000_emit_epilogue): Adjust the LR save offset to be correct
	for 64-bit frames.

2004-08-22  Stan Shebs  <shebs@apple.com>

	* config/darwin-driver.c (arch_config): Add ppc64.
	(add_arch_options): Similarly.

2004-08-22  Andrew Pinski  <apinski@apple.com>

	PR c/15262
	* c-typeck.c (build_unary_op): Use &a.b if the foldded lowered
	expression is not constant.
	(c_finish_return): Do not go through INDIRECT_REF when looking
	for the inner expression of an ADDR_EXPR for warning about.

	PR tree-opt/17138
	* tree-ssa-loop-ivopts.c (peel_address): Handle REALPART_EXPR
	and IMAGPART_EXPR.

2004-08-20  Stan Shebs  <shebs@apple.com>

	* config/rs6000/darwin.h (DARWIN_ARCH_LD_SPEC): Pass -arch ppc64
	to linker if -m64.
	(DARWIN_ARCH_ASM_SPEC): Similarly.

2004-08-20  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/rs6000.c (rs6000_rtx_costs):  Fix from mainline.

2004-08-19  Dale Johannesen  <dalej@apple.com>

	* c-decl.c (implicitly_declare): Reduce error to warning when
	disable_typechecking_for_spec_flag is on.

2004-08-18  Ziemowit Laski  <zlaski@apple.com>

	Radar 3753413
	* config/darwin.c (darwin_build_constant_cfstring): Strip NOP_EXPRs
	and dereference string literal argument; mark the ADDR_EXPR of
	each constant CFString TREE_CONSTANT to squash initializer warnings.

2004-08-18  Devang Patel  <dpatel@apple.com>

	* config/darwin-driver.c (verbose_flag): New.
	(do_lipo): Interpret -v.
	(main): Set verbose_flag.

2004-08-18  Dale Johannesen  <dalej@apple.com>

	* tree-cfg.c (tree_block_ends_with_call_p):  Fix comments.
	(tree_block_ends_with_condjump_p):  Ditto.

2004-08-18  Matthew Sachs  <msachs@apple.com>

	* Merge from mainline.

2004-08-17  Devang Patel  <dpatel@apple.com>

	* config/darwin-driver.c (main): Do not handle -x separately.

2004-08-16  Robert Bowdidge  <bowdidge@apple.com>

	* Add -mdynamic-no-pic to Darwin-specific options

2004-08-16  Caroline Tice  <ctice@apple.com>

	Add hot/cold partitioning update that was accepted in FSF Mainline.
	* varasm.c (text_section): Remove alignment statement.
	(assemble_start_function): Remove APPLE LOCAL markers from code
	added to FSF mainline;  Add code to properly align cold section at
	start of function.

2004-08-16  Devang Patel  <dpatel@apple.com>

	Merge from mainlne.
	2004-08-16  Devang Patel  <dpatel@apple.com>

	* c-common.c (handle_used_attribute): Set DECL_PRESERVE_P.
	* print-tree.c (print_node): Print DECL_PRESERVE_P.
	* target-def.h (TARGET_ASM_MARK_DECL_PRESERVED): New #define.
	(TARGET_ASM_OUT): New member, TARGET_ASM_MARK_DECL_PRESERVED
	* target.h (struct gcc_target): New member, mark_decl_preserved.
	* hooks.c (hook_void_charptr): Rename to ...
	(hook_void_constcharptr): ... new name.
	* hooks.h (hook_void_charptr): Rename to ..
	(hook_void_constcharptr): ... new name.
	* tree.h (DECL_PRESERVE_P): New #define.
	(struct tree_decl): New member, preserve_flag.
	* varasm.c (assemble_start_function): Mark decl preserved.
	(assemble_variable): Same.
	* darwin.c (darwin_mark_decl_preserved): New function.
	* darwin.h (TARGET_ASM_MARK_DECL_preserved): New #define.
	* darwin-protos.h (darwin_mark_decl_preserved): New decl.
	* doc/tm.texi (TARGET_ASM_MARK_DECL_PRESERVED): Document.

2004-08-13  Matt Austern  <austern@apple.com>

	Radar 2872232
	* ginclude/tgmath.h: New file.
	* Makefile.in: Add tgmath.h to list of installed headers.

2004-08-13  Devang Patel  <dpatel@apple.com>

	Radar 3729261. Reviewed by Dale.
	* dbxout.c (get_lang_number): New.
	(dbxout_init): Include lang number in N_SO  stab.
	* dbxout.h (N_SO_AS, N_SO_C, N_SO_ANSI_C, N_SO_CC, N_SO_FORTRAN,
	N_SO_PASCAL, N_SO_FORTRAN90, N_SO_OBJC, N_SO_OBJCPLUS): New #define.

2004-08-13  Devang Patel  <dpatel@apple.com>

	Merge from mainline. Radar 3739309.
	2004-08-11  Devang Patel  <dpatel@apple.com>

	* dbxout.c (dbxout_begin_prologue): New function.
	(dbx_debug_hooks): Use new begin prologue hook.
	(dbxout_function_end): Emit N_ENSYM.
	* stab.def (N_BNSYM, N_ENSYM): Define and document these two new stabs.

2004-08-13  Devang Patel  <dpatel@apple.com>

	Merge from mainline. Radar 3739302.
	2004-08-10  Devang Patel  <dpatel@apple.com>

	* config/darwin.h (TARGET_OPTION_TRANSLATE_TABLE): Add -dead_strip
	and -no_dead_strip_inits_and_terms.
	(LINK_SPEC): Same.
	* doc/invoke.text (Darwin Options): Document -dead_strip and
	-no_dead_strip_inits_and_terms.

2004-08-12  Stan Shebs  <shebs@apple.com>

	Basic support for 64-bit Darwin.
	* config/darwin.c (macho_indirect_data_reference): Add DImode case.
	(machopic_legitimize_pic_address): Similarly, plus use Pmode
	instead of SImode.
	* config/rs6000/darwin.h (PTRDIFF_TYPE): Be "long int" if 64-bit.
	(TARGET_OS_CPP_BUILTINS): Add 64-bit preprocessor macro.
	(SUBTARGET_SWITCHES): Add -m32 and -m64 flags.
	(SUBTARGET_OVERRIDE_OPTIONS): Require 64-bit processor if -m64.
	(PROCESSOR_DEFAULT64): Define.
	* config/rs6000/darwin.md: New file, patterns specific to 64-bit
	Darwin.
	* config/rs6000/rs6000.md: Include darwin.md.
	(builtin_setjmp_receiver): Add DImode case.
	* config/rs6000/rs6000.c (TARGET_ASM_UNALIGNED_DI_OP): Define for
	Darwin.
	(TARGET_ASM_ALIGNED_DI_OP): Ditto.
	(rs6000_emit_move): Add DImode case to Darwin bits.
	(machopic_output_stub): Use .quad if 64-bit.
	* invoke.texi: Document -m32 and -m64.

2004-08-12  Dale Johannesen  <dalej@apple.com>

	* c-decl.c (diagnose_mismatched_decls): Improve
	-fdisable-typechecking-for-spec.

2004-08-12  Dale Johannesen <dalej@apple.com>

	* gcc.c (default_compilers): Handle -fast same as -combine.
	(process_command): Make -fast imply -combine.
	* tree-scalar-evolution.c (number_of_iterations_in_loop):
	Don't compute iteration count for multiple-exit loops.
	* config/rs6000/rs6000.c (rs6000_rtx_costs): Replace from mainline.

2004-08-10  Devang Patel  <dpatel@apple.com>

	Remove Symbol Separation.
	Radar 3555440. Reviewed by Mike Stump.
	* c-common.c (cb_restore_write_symbols, cb_clear_write_symbols,
	cb_start_symbol_repository, cb_end_symbol_repository,
	cb_is_builtin_identifier). Remove.
	(debug.h): Do not include.
	* c-common.h  (dbg_dir): Remove.
	(dbg_ss_init, c_common_write_context, cb_clear_write_sybols,
	cb_restor_write_symbols, cb_start_symbol_repository, c_valid_cinfo,
	cb_end_symbol_repository, cb_is_builtin_identifier): Remove extern
	decls.
	* c-lex.c (init_c_lex): Do not set up symbol separation call backs.
	(c_common_write_context): Remove.
	* c-objc-common.c (c_objc_common_finish_file): Do not write context.
	* c-opts.c (dbg_dir): Remove.
	(c_common_handle_option): Remove symbol separation option handling.
	(c_common_parse_file): Do not initialize symbol repository.
	* c.opt (Winvalid-sr, fsave-repository=): Remove.
	* dbxout.c (dbxout_restore_write_symbols, dbxout_clear_write_symbols,
	dbxout_start_symbol_repository, dbxout_end_symbol_repository) Remove.
	(dbx_debug_h): Remove symbol separation hoooks.
	(xcoff_debug): Same.
	* debug.c (do_nothing_): Remove symbol separation hooks.
	* debug.h (gcc_debug_hooks): Same.
	* dwarf2out.c (dwarf2_debug): Same.
	* flags.h (orig_write_symbols, flag_grepository): Same.
	* gcc.c (pch): Remove fsave-repository support.
	(cc1_options): Same.
	(asm_options): Same.
	(default_compilers): Same.
	(option_map): Same.
	(dbg_ss): Remove.
	(static_specs): Remove dbg_ss.
	* opts.c (orig_write_symbols, flag_grepository): Remove.
	(set_debug_level): Remove symbol separation support.
	* doc/invoke.texi: Remove symbol separation documentation.

2004-08-09  Geoffrey Keating  <geoffk@apple.com>

	* ginclude/stdarg.h: Remove APPLE LOCAL change.
	* ginclude/varargs.h: Likewise.

2004-08-08  Dale Johannesen  <dalej@apple.com>

	* c-common.c (c_common_get_alias_set): Fixes from mainline.
	* toplev.c: Ditto.
	* tree.h: Ditto.
	* coverage.c (tree_coverage_counter_ref): Ditto.
	* tree-cfg.c (tree_block_ends_will_call_p): Ditto.
	(tree_block_ends_with_condjump_p): Ditto.

2004-08-08  Andrew Pinski  <apinski@apple.com>

	* c-objc-common.c (c_objc_common_init): Remove APPLE LOCAL for setting -gused
	by default as it is handled in CC1_SPECs now.
	* opts.c (set_debug_level): Remove the handling of -gused and -gfull as they
	are already handled in CC1_SPECs.
	* config/rs6000/darwin.h (CC1_SPEC): Change the APPLE LOCAL tag to be what is
	really local now.

2004-08-06  Dale Johannesen  <dalej@apple.com>

	* c-typeck.c (tagged_types_tu_compatible_p): Fix from mainline.

2004-08-06  Andrew Pinski  <apinski@apple.com>

	* config/darwin.h: Fix misplaced #endif which came in via the merge.

2004-08-04  Fariborz Jahanian <fjahanian@apple.com>

	c-common.c (vector_constructor_from_expr): Treat all constant
	vector expression tree as a constant tree.

2004-08-03  Stan Shebs  <shebs@apple.com>

	Support for CodeWarrior-style assembly language blocks and
	functions. Radar 3368707.

	* c.opt (-fasm-blocks): New option.
	* c-common.h (enum cw_asm_states): New enum, state values.
	* c-tree.h: Declare some functions.
	* c-common.c (flag_cw_asm_blocks): New flag.
	(cw_asm_states, cw_asm_in_decl, cw_asm_block, cw_asm_at_bol,
	cw_asm_in_operands, cw_asm_labelno, cw_asm_buffer,
	cw_asm_operands, cw_asm_labels, cw_asm_labels_uniq): New globals.
	(cw_asm_default_function_conversion, cw_asm_stmt,
	cw_asm_field_offset, cw_asm_field_offset, print_cw_asm_operand,
	cw_asm_get_register_var, cw_asm_reg_name, cw_asm_label,
	get_atsign_identifier, clear_cw_asm_labels, get_cw_asm_label,
	cw_asm_build_register_offset, cw_asm_entry): New functions.
	c-decl.c: (grokdeclarator): Recognize asm keyword, set flag
	on function decl if seen.
	(start_function): Change asm state to expect local decls.
	(lookup_struct_or_union_tag): New function.
	c-lex.c (cw_asm_saved_token, c_lex_depth): New globals.
	(c_lex_with_flags): Add state machine to return BOL and EOL
	tokens at appropriate moments, return CPP_ATSIGN as its own
	token if in asm block.
	c-opts.c (c_common_handle_option): Recognize -fasm-blocks.
	c-parse.in: Add rules for parsing CW asm blocks.
	(CW_ASM_KEYWORD, CW_ASM_BOL, CW_ASM_EOL): New tokens.
	(cw_asm_expr_no_commas, cw_asm_unary_expr, cw_asm_primary,
	cw_asm_operands, cw_nonnull_asm_operands, cw_asm_operand, cw_asm_stmt,
	single_cw_asm_stmt, cw_asm_compstmt, cw_asm_compstmt_start,
	cw_asm_compstmt_nostart): New nonterminals.
	(lineno_decl): Flag no longer in decls part.
	(scspec): Add CW_ASM_KEYWORD.
	(stmt): Add cw_asm_compstmt and cw_asm_stmt alternatives.
	(yylexname): Detect asm functions and return CW_ASM_KEYWORD.
	(_yylex): Return '@' as token if CW asm, return BOL/EOL.
	c-typeck.c (build_external_ref): Handle asm register names
	and labels specially.
	(cw_asm_typename_or_reserved, cw_asm_c_build_component_ref):
	New functions.

	* function.h (struct function): New fields cw_asm_function,
	cw_asm_noreturn, cw_asm_frame_size.
	* tree.h (DECL_CW_ASM_FUNCTION, DECL_CW_ASM_NORETURN,
	DECL_CW_ASM_FRAME_SIZE): New macros.
	(struct tree_decl): New fields cw_asm_function_flag,
	cw_asm_noreturn_flag, cw_asm_frame_size.
	* config/darwin.h (CW_ASM_SPECIAL_LABEL): Define.
	* config/darwin-protos.h (darwin_cw_asm_special_label): Declare.
	* config/darwin.c (darwin_cw_asm_special_label): New function.
	* rs6000/rs6000-protos.h (rs6000_cw_asm_register_name): Declare.
	* rs6000/rs6000.c (rs6000_cw_asm_register_name): New function.
	* rs6000/rs6000.h (CW_ASM_REGISTER_NAME): Define.
	* scan-decls.c (flag_cw_asm_blocks, etc): Dummy definitions.

	* doc/extend.texi, doc/invoke.texi: Document.

2004-08-01  Geoffrey Keating  <geoffk@apple.com>

	* config/rs6000/rs6000.c (rs6000_split_multireg_move): Just abort
	if trying to *store* to a non-offsettable address.
	* config/rs6000/rs6000.md (movtf_internal): Don't move GPRs to
	a nonoffsettable address.
	(movdi_internal32): Don't move GPRs to a nonoffsettable address.
	Clean up.
	(movti_string): Don't move GPRs to a nonoffsettable address.
	(movti_ppc64): Don't move GPRs to a nonoffsettable address.  Clean up.

2004-08-01  Devang Patel  <dpatel@apple.com>

	 Re-implement -fwritable-strings support.
	 Radar : 3699482

	* c-common.c (fix_string_type): Check flag_writable_strings.
	(fix_string_type): Likewise.
	* c-opts.c (set_std_c89): Initialize flag_writable_strings.
	(set_std_c99): Likewise.
	* common.opt (fwritable-strings): Add.
	* flags.h: Add the external declaration of
	flag_writable_strings.
	* opts.c (common_handle_option) <OPT_fwritable_strings>:
	Add.
	* toplev.c (flag_writable_strings): Add.
	(f_options): Add an entry for writable-strings.
	* varasm.c (const_hash_1) <STRING_CST>: Check
	flag_writable_strings.
	(compare_constant) <STRING_CST>: Likewise.
	(build_constant_desc): Likewise.
	* config/darwin.c (machopic_select_section): Likewise.
	* doc/invoke.texi (-fwritable-strings): Add.
	(-fno-const-strings): Document -fwritable-strings.
	* doc/trouble.texi: Document -fwritable-strings.

2004-08-01  Geoffrey Keating  <geoffk@apple.com>

	* c-common.c (warn_long_double): Remove.
	(warn_about_long_double): Remove.
	* c-common.h (warn_long_double): Remove.
	(warn_about_long_double): Remove.
	* c-decl.c (grokdeclarator): Don't call warn_long_double.
	* c-opts.c (c_common_handle_option): Remove case for OPT_Wlong_double.
	* doc/invoke.texi: Don't document -Wlong-double.

2004-07-30  Geoffrey Keating  <geoffk@apple.com>
	    Fariborz Jahanian <fjahanian@apple.com>

	* config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Permit
	non-offsettable addresses even for DImode.
	(rs6000_split_multireg_move): Cope with non-offsettable addresses
	being moved into multiple GPRs.

	* config/rs6000/rs6000.c (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Default
	to 64.
	(rs6000_override_options): Use RS6000_DEFAULT_LONG_DOUBLE_SIZE.
	* config/rs6000/darwin.h (RS6000_DEFAULT_LONG_DOUBLE_SIZE): Define
	to 128.
	* config/rs6000/darwin-ldouble.c (isless): New macro.
	(inf): New macro.
	(nonfinite): New macro.
	(FPKINF): Delete.
	(_xlqadd): Completely rewrite.
	(_xlqmul): Correct overflow handling.
	(_xlqdiv): Correct overflow handling.
	* config/rs6000/darwin-ldouble-format: New file.

2004-07-30  Matt Austern  <austern@apple.com>

	* config/darwin-c.c (darwin_pragma_call_on_load): Deprecate.
	(darwin_pragma_call_on_unload): Likewise.

2004-07-15  Devang Patel  <dpatel@apple.com>

	* tree-if-conv.c: Add brief description at the beginning.
	(is_appropriate_for_if_conv): Rename to ..
	(if_convertable_loop_p): ... new name.
	(bb_with_exit_edge): Rename to ..
	(bb_with_exit_edge_p): ... new name.
	(make_cond_modify_expr): Update comment before function body.
	(replace_phi_with_cond_modify_expr): Same.
	(tree_if_convert_stmt): Same. Use new fn name, bb_with_exit_edge_p.
	(if_convertable_loop_p): New function name. Remove some dead code.
	(collapse_blocks): Update comment before function body. Format code.
	Use bb_with_exit_edge_p.
	(tree_if_conversion): Move this function body at the end of file.
	(handle_siblint_pattern): Update comment before function body.
	(fold_sibling_stmts): Same. Update dump info.

2004-07-14  Devang Patel  <dpatel@apple.com>

	* target.h (gcc_target): Additional parameter for
	support_vector_compare_for_p.
	* tree-if-conv.c (handle_sibling_pattern): New.
	(fold_sibling_stmts): New.
	(make_cond_modify_expr): Dump debugging info.
	(tree_if_convert_stmt): Same.
	(is_appropriate_for_if_conv): Remove filters that eliminated
	loops becase of memory tags and difficult dominance relation.
	(collapse_blocks): Handle memory tags.
	(tree_if_conversion): Optimize sibling statements.
	* tree-vectorizer.c (vect_init_vector): Additional parameter.
	(vect_get_vec_def_for_operand): Supply vectype to vect_init_vector().
	(vect_init_vecotr): Use input parameter vectype.
	(vect_transform_compare): Fix type in dump info.
	(vect_transform_select): Handle ARRAY_REF as scalar dest. Handle
	NOP_EXPR as an operand.
	(vect_is_supportable_compare): Use operand's type to decide
	second vector type for support_vector_compare_for_p().
	(vect_is_supportable_select): Fix typo. Allow SSA_NAME as 2nd
	operand.
	(exist_non_indexing_operands_for_use_p): Handle conditional modify
	expr.
	config/rs6000/rs6000.c (rs6000_vector_compare_for_p): New parameter.
	(get_vector_compare_for): New parameter. Use it to find appropriate
	builtin.

2004-06-26  Fariborz Jahanian <fjahanian@apple.com>

	* gcc.c: Don't use -fpredictive-compilation when
	-fpreprocessed appears on command line.

2004-07-01  Devang Patel  <dpatel@apple.com>

	* tree-if-conv.c (mark_vdefs_vuses_for_rename): New function.
	(make_ifcvt_temp_variable): Mark vdefs and vuses for renaming.

2004-07-01  Devang Patel  <dpatel@apple.com>

	Radar 3236762
	* config/darwin-driver.c (do_lipo): Do not supply -arch <arch_name>
	to lipo.

2004-06-29  Andrew Pinski  <apinski@apple.com>

	* c-decl.c (perform_loop_transpose): Save chain of right_before_inner_loop
	and set to NULL.  Restore the chain before rejecting the loop.

2004-06-29  Dorit Naishlos <dorit@il.ibm.com>

	* tree-vectorizer.c (vect_create_data_ref) INDIRECT_REF check moved to
	analysis. Redundant checks removed.
	(vect_analyze_data_refs): Make sure we have a mem_tag.
	(vect_transform_loop): Make sure that we have a preheader bb.
	(vect_init_vector): Insert on preheader edge instead of using bsi.
	(vect_finish_stmt_generation_in_preheader): Now that a preheader bb is
	created before vectorizing stmts, we do not expect a new bb to be
	created (thereofore, abort instead of add_bb_to_loop).
	* config/rs6000/rs6000.c (rs6000_build_vmul_uch): Likewise.
	(rs6000_build_vector_init): Likewise. Also replace mark_call_clobbered
	with direct setting of DECL_NEEDS_TO_LIVE_IN_MEMORY_INTERNAL.

2004-06-28  Devang Patel  <dpatel@apple.com>

	* Makefile.in (tree-ssa-loop-manip.o): Depend on tree-scalar-evolution.h
	* tree-if-conv.c (collapse_blocks): Use release_phi_node instead of
	remove_phie_node.
	* tree-ssaname.c (make_ssa_name): Re-enable free_ssanames.
	(release_ssa_name): Same.
	* tree-scalar-evolution.c (scev_reset): Check current_loops and
	scalar_evolution_info.
	* tree-ssa-loop-manip.c (tree-scalar-evolution.h): Include.
	(tree_duplicate_loop_to_header_edge): Call scev_reset().

2004-06-28  Devang Patel  <dpatel@apple.com>

	* tree-if-conv.c (make_ifcvt_temp_variable): Fix formatting.

2004-06-28  Devang Patel  <dpatel@apple.com>

	* tree-if-conv.c (make_ifcvt_temp_variable): Add new parameter for
	original stmt. Update new statement's vuse approritatly based on
	original stmt.
	(make_cond_modify_expr): Supply current statement as additional
	parameter to make_ifcvt_temp_variable call.
	(tree_if_convert_stmt): Same.
	(replace_phi_with_cond_modify_expr): Update vuse and vdefs.
	(is_appropriate_for_if_conv): Lift, first phi node needs to be constant
	node, restriction.
	* tree-ssa-operands.c (add_vdef): New function.
	* tree-ssa-operands.h (add_vdef): Same.

2004-06-25  Mike Stump  <mrs@apple.com>

	* objcp/Make-lang.in (objcp/objcp-parse.y): Update to use
	move-if-change from top directory.

2004-06-25  Stuart Hastings <stuart@apple.com>

	Radar 3680191
	* gcc/tree-nested.c: Cast STACK_BOUNDARY for portability.
	* gcc/config/i386/i386.c (output_pic_addr_const): Stubify optimized symbols.
	* gcc/target-def.h: (TARGET_BECT_BUILD_VECTOR_INIT) Initialize correctly.

2004-06-25  Dale Johannesen  <dalej@apple.com>

	* objc/Make-lang.in: use $(srcdir)/../move-if-change.

2004-06-25  Dale Johannesen  <dalej@apple.com>

	* Makefile.in: replace $(SHELL) ${srcdir}/mkinstalldirs
	with $(mkinstalldirs) throughout.

2004-06-25  Stuart Hastings <stuart@apple.com

	Radar 3690727
	* gcc/config/rs6000/rs6000.md:  Add missing APPLE LOCAL markers.
	* gcc/config/t-darwin.h: Ditto.
	* gcc/ChangeLog.apple-ppc: Minor formatting cleanup.

2004-06-24  Dale Johannesen  <dalej@apple.com>

	Radar #: 3696823, 3673318, 3672998
	Roll in changes from mainline:
	* config/rs6000/rs6000.c (legitimate_offset_address_p): Make
	global, rename rs6000_legitimate_offset_address_p.
	(rs6000_legitimate_address_p): Adjust calls to it.
	(lmw_operation): Ditto.
	(stmw_operation): Ditto.
	* config/rs6000/rs6000-protos.h: Declare it.
	* config/rs6000/rs6000.md (*movdf_hardfloat32): Use it
	instead of offsettable_memref_p.
	* config/rs6000/rs6000.c (rs6000_legitimate_address): Disallow
	[reg+reg] mode for TFmode memory accesses.
	(rs6000_eliminate_indexed_memrefs): New.
	(rs6000_emit_move): Call preceding for TImode and TFmode.

2004-06-24  Andrew Pinski  <apinski@apple.com>

	Radar #: 3699721
	* config/darwin.c (machopic_indirect_data_reference): Copy
	the SYMBOL_REF_DECL from the original RTX for the new
	non-lazy pointer RTX.

2004-06-24  Ayal Zaks <zaks@il.ibm.com>

	* target-def.h (TARGET_VECT_BUILD_BUILTIN_LVSR): New macro.
	* target.h (build_builtin_lvsr): New function.
	* tree-vectorizer.c (vect_create_index_for_array_ref): Add option
	to only calculate init_val without creating the iv.
	(vect_create_data_ref): Deal with unknown alignment; allow creating
	data refs for initial access only.
	(vect_transform_store): Call vect_create_data_ref accordingly.
	(vect_finish_stmt_generation_in_preheader): New function.
	(vect_finish_stmt_generation): Need to optionally bump bsi again.
	(vect_transform_load): Replace call to lvsl by a call to lvsr(16-a)
	in preheader. Move load of msq out to preheader. Removed TREE_INVARIANT.
	(vect_analyze_data_refs_alignment): Allow unknown aligned loads.
	* rs6000.c (rs6000_build_builtin_lvsr): New function.
	(rs6000_support_misaligned_vloads, rs6000_permute_misaligned_vloads):
	Check if TARGET_ALTIVEC.
	(get_vector_init_fns_for_type): Initialize lve_fn, splt_fn vars.

2004-06-22  Andrew Pinski  <apinski@apple.com>

	Radar #: 3661615, 3623788
	* c-decl.c (perform_loop_transpose): Do not
	change TREE_CHAIN (right_before_inner_loop)
	until after we know we are going to do the
	transformation.

	* c-decl.c (perform_loop_transpose): Fix formatting and cleanup.

2004-06-22  Andrew Pinski  <apinski@apple.com>

	Radar #: 3701874
	* c-decl.c (push_file_scope): Return early if we already
	have a file scope.

2004-06-22  Devang Patel  <dpatel@apple.com>

	PR 16105
	* tree-vectorizer.c (vect_analyze_operations): Type of MODIFY_EXPR is
	not reliable. Use LHS's type.

2004-06-21  Dorit Naishlos  <DORIT@il.ibm.com>

	* tree.def (MULT_UCH_EXPR): New tree code.
	* tree-vectorizer.h (stmt_vec_info): New fields part_of_pattern,
	related_stmt, v.vect_target_hook_for_pattern, and v.vectorized_stmt.
	(STMT_VINFO_IN_PATTERN_P): New macro.
	(STMT_VINFO_VEC_HOOK): New macro.
	(STMT_VINFO_RELATED_STMT): New macro.
	* tree-vectorizer.c (vect_pattern_recog): New function.
	(vect_recog_mul_uch_to_uch): New function.
	(vect_recog_mul_uch_to_uch1): New function.
	(new_stmt_vec_info): Initialize new fields in stmt_vec_info.
	(vect_transform_op): Call target hook recorded in STMT_VINFO_VEC_HOOK.
	(vect_is_supportable_op): Use new field STMT_VINFO_VEC_HOOK to record
	target support for the "mul_uch" pattern.
	(vect_mark_relevant): Don't mark stmts involved in a pattern as
	relevant.
	(vect_mark_stmts_to_be_vectorized): Likewise.
	(vect_create_data_ref): Fix alias-sets bug.
	(vect_get_vec_def_for_operand): Call new hook support_vector_init_p.
	* target.h (support_vmul_uch_p): New entry for target hook.
	(build_vmul_uch): New entry for target hook.
	(support_vector_init_p): New entry for target hook.
	(build_vector_init): New entry for target hook.
	* target-def.h (TARGET_VECT_SUPPORT_VMUL_UCH_P): New target hook.
	(TARGET_VECT_BUILD_VMUL_UCH): New target hook.
	(TARGET_VECT_SUPPORT_VECTOR_INIT_P): New target hook.
	(TARGET_VECT_BUILD_VECTOR_INIT): New target hook.
	* config/rs6000/rs6000.c (rs6000_support_vmul_uch_p): New function.
	(rs6000_build_vmul_uch) New function.
	(rs6000_support_vector_init_p) New function.
	(get_vector_init_fns_for_type) New function.
	(rs6000_build_vector_init) New function.


2004-06-17  Jon Ziegler  <jonz@apple.com>

	Radar 3691917
	* Revert version string in gcc/version.c to as of apple-gcc-1762.

2004-06-16  Jon Ziegler  <jonz@apple.com>
	Radar 3619941
	* Revert to apple-gcc-1762 plus Dorit/Devang's 2004-06-15 patch.
	Radar 3691917
	* Update version string in gcc/version.c

2004-06-16  Dale Johannesen  <dalej@apple.com>
	Radar 3661015/PR 15993
	* tree-ssa-dom.c (thread_across_edge): fix from FSF.

2004-06-15  Dorit Naishlos  <DORIT@il.ibm.com>

	Radar 3619941
 	* tree-data-ref.c (init_data_ref): New function.
	* tree-data-ref.h (init_data_ref): New function.
	* tree-vectorizer.c (vect_get_array_first_index): Return index instead
	of success status, and support pointers.
	(vect_create_index_for_array_ref): Remove ARRAY_REF restriction, and
	change call to vect_get_array_first_index.
	(vect_create_data_ref): Handle INDIRECT_REFs.
	(vect_is_supportable_store): Handle INDIRECT_REFs.
	(vect_is_supportable_load): Handle INDIRECT_REFs.
	(vect_analyze_data_ref_dependence): Handle INDIRECT_REFs.
	(vect_analyze_data_ref_dependences): Remove usage of variable 'ok'.
	(get_array_base): Removed (not used anymore).
	(vect_force_dr_alignment_p): Use DR_BASE_NAME instead of
	get_array_base.
	(vect_align_data_ref): Likewise.
	(vect_transform_store): Remove ARRAY_REF restriction.
	(vect_transform_load): Remove ARRAY_REF restriction.
	(vect_compute_data_ref_alignment): Support pointers.
	(vect_analyze_data_refs): Support pointers.
	(vect_debug_stats): New Function.
	(vect_debug_details): New Function.
	(vect_transform_loop): Use vect_debug_stats and vec_debug_details.
	(vect_analyze_loop): Use vect_debug_details.
	(vect_analyze_scalar_cycles): Use vect_debug_stats.
	(vect_analyze_data_ref_dependence): Likewse.
	(vect_analyze_data_refs_alignment): Likewise.
	(vect_analyze_data_ref_accesses): Likewise.
	(vect_analyze_data_refs): Likewise.
	(vect_analyze_loop_form): Likewise.
	(vect_gen_if_guard): Formatting fixes (avoid 80 column overflow).
	(vect_update_initial_conditions_of_duplicatd_loop): Likewise.
	(vect_transform_loop): Likewise.
	(vect_analyze_loop_form): Likewise.

2004-06-14  Caroline Tice <ctice@apple.com>

      Radar 3690727 (partial)
      * defaults.h (NORMAL_TEXT_SECTION_NAME): Remove.
      * passes.c (rest_of_compilation):  Add missing APPLE LOCAL.
      * config/rs6000/darwin.h (NORMAL_TEXT_SECTION_NAME): Remove definition.
      (SECTION_FORMAT_STRING): Likewise.
      * config/rs6000/sysv4.h (NORMAL_TEXT_SECTION_NAME): Likewise.
      (SECTION_FORMAT_STRING): Likewise.
      * doc/tm.texi (NORMAL_TEXT_SECTION_STRING): Remove documentation.
      (SECTION_FORMAT_STRING): Likewise.

2004-06-14  Dale Johannesen  <dalej@apple.com>

	Radar 3661661
	* tree-ssa.c (tree_ssa_useless_type_conversion_1): fix from FSF.

2004-06-14  Dale Johannesen  <dalej@apple.com>

	Radar 3690727 (partial)
	* gimplify.c (copy_if_shared_r): Add missing APPLE LOCAL.
	* config/rs6000/t-darwin: Ditto.

2004-06-14  Fariborz Jahanian <fjahanian@apple.com>

	* version.c: Remove word tree-ssa from version string.

2004-06-12  Devang Patel  <dpatel@apple.com>

	* Makefile.in (OBJS-common): Add tree-if-conv.o.
	(tree-if-conv.o): New rule.
	* target-def.h (TARGET_VECTOR_COMPARE_P, TARGET_VECTOR_COMPARE_FOR_P,
	TARGET_VECTOR_COMPARE_STMT, TARGET_VECTOR_SELECT_P,
	TARGET_VECTOR_SELECT_FOR_P, TARGET_VECTOR_SELECT_STMT): New.
	(TARGET_INITIALIZER): New members.
	* target.h (tree.h): Include.
	(struct gcc_target.vect): New members - support_vector_compare_p,
	support_vector_compare_for_p, vector_compare_stmt, support_vector_select_p,
	support_vector_select_for_p, vector_select_stmt.
	* tree-dfa.c (dump_immediate_uses_for): Print block index.
	* tree-flow.h (enum  move_pos): Move from ...
	* tree-ssa-loop-im.c (enum move_pos): here.
	* tree-if-conv.c: New file.
	* tree-simple.c (is_gimple_stmt): Make COND_EXPR valid gimple.
	* tree-ssa-dce.c (mark_control_dependent_edges_necessary): Check t.
       * tree-ssa-live.c (debug_var_map): New function.
	* tree-ssa-live.h (debug_var_map): New function declaration.
	* tree-ssa-loop-ivcanon.c (canonicalize_loop_induction_variable): Add
	flow_loop_scan() call.
	* tree-ssa-operands (get_stmt_operands): Handle MODIFY_EXPR when COND_EXPR
	is RHS.
	(get_expr_operands): Same.
	* tree-ssanames.c (make_ssa_name): Do not use free_ssanames.
	(release_ssa_name): Same.
	* tree-vectorizer.c (vect_transform_select): New function.
	(vect_transform_compare): New function
	(vect_is_supportable_operation): New function.
	(vect_is_supportable_compare): New function.
	(vect_is_supportable_select): New function.
	(get_array_base): Move into tree.c.
	(vect_loop_version): New function.
	(second_loop_vers_available): New variable.
	(default_vector_compare_p): New function.
	(default_vector_compare_for_p): New function.
	(default_vector_comapre_stmt): New function.
	(default_vector_select_p): New function.
	(default_vector_select_for_p): New function.
	(default_vector_select_stmt): New function.
	(vect_transform_stmt): Handle select_vec_info_type and
	compare_vec_info_type.
	(vect_is_supportable_op): Use vect_is_supportable_operation.
	(vect_analyze_operations): Check select and compare support.
	(vect_analyze_data_refs_alignment): Print data reference in dump file.
	(vect_analyze_loop_form): Use if-conversion and update loop->num_nodes
	check.
	(vectorize_loops): Use vect_loop_version. Handle second loop version.
	* tree-vectorizer.h (struct _stmt_vec_info): New members -
	select_vec_info_type and compare_vec_info_type.
	(default_vector_compare_p): New function decl.
	(default_vector_compare_for_p): New function decl.
	(default_vector_comapre_stmt): New function decl.
	(default_vector_select_p): New function decl.
	(default_vector_select_for_p): New function decl.
	(default_vector_select_stmt): New function decl.
	* tree.c (get_array_base): Move from tree-vectorizer to here.
	* tree.h (get_array_base): New function decl.
	* config/rs6000 (vector_builtin_fns): New.
	(rs6000_vector_compare_p): New function.
	(rs6000_vector_compare_for_p): New function.
	(rs6000_vector_compare_stmt): New function.
	(rs6000_vector_select_p): New function.
	(rs6000_vector_select_for_p): New function.
	(rs6000_vector_select_stmt): New function.
	(TARGET_VECTOR_COMPARE_P, TARGET_VECTOR_COMPARE_FOR_P,
	TARGET_VECTOR_COMPARE_STMT, TARGET_VECTOR_SELECT_P,
	TARGET_VECTOR_SELECT_FOR_P, TARGET_VECTOR_SELECT_STMT): Define.
	(def_builtin): Record builtin fn node in vector_builtin_fns.
	* rs6000.h (enum rs6000_builtins):  New entry - RS6000_BUILTIN_MAX.

2004-06-12  Devang Patel  <dpatel@apple.com>

	Radar 3681611
	* gcc.c (do_spec_1):  Disable local IMA patch that creats new temp. file for
	each source file.

2004-06-12  Dorit Naishlos  <DORIT@il.ibm.com>
	    Olga Golovanevsky  <OLGA@il.ibm.com>
	    Ayal Zaks  <ZAKS@il.ibm.com>

	* tree-vectorize.c (vect_build_symbl_bound, vect_gen_if_guard): New.
	(vect_create_index_for_array_ref): Use integer_zer_node as init.
	(vect_update_initial_conditions_of_duplicated_loop): Update phis of epilog
	loop header and new loop exit destination.
	(vect_transform_loop): Remove code that now belongs to
	vect_generate_tmps_on_preheader () function. Use
	vect_gen_if_guard function twice.

2004-06-11  Dale Johannesen  <dalej.@apple.com>

	* tree-ssa-loop-niter.c (number-of_iterations_cond): Apply Zdenek's
	patch from 5/28 lno-branch.

2004-06-10  Dale Johannesen  <dalej@apple.com>
	* tree-scalar-evolution.c (scev_finalize): Remove wild load.

2004-06-10  Fariborz Jahanian <fjahanian@apple.com>

	* version.c: Change version date to 20040529 (date of
	last merge).

2004-06-09  Dale Johannesen  <dalej@apple.com>

	* df.c (df_def_record_1): Handle DImode parallel.

2004-06-09  Fariborz Jahanian <fjahanian@apple.com>

	* gengtype.c (get_output_file_with_visibility): Removed dead code.
	* gimplify.c (copy_if_shared_r): brought in patch to PR15884 done
	by RTH to fix perlbmk crash.

2004-06-08  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/t-darwin:  Remove duplicate fpsave.

2004-06-08  Andrew Pinski  <pinskia@physics.uc.edu>

	approved Dale Johannesen <dalej@apple.com>
	Radar 3683113, PR 15881.
	* fold.const.c (fold_convert):  Handle ptr-to-member.
	* tree-scalar-evolution.c (count_ev_in_wider_type):  Use
	fold_convert not convert.
	(compute_overall_effect_of_inner_loop): Ditto.
	(chrec_is_positive): Ditto.
	(add_to_evolution_1):  Ditto.
	(add_to_evolution): Ditto.
	(first_iteration_non_satisfying_1): Ditto.
	(follow_ssa_edge_in_rhs): Ditto.
	(interpret_rhs_modify_expr): Ditto.
	(number_of_iterations_in_loop): Ditto.

2004-06-08 Robert Bowdidge <bowdidge@apple.com>

	* config/darwin.c (machopic_indirect_call_target): Added patch from
	PR/15720 (function marked inline which is called directly isn't
	emitted).

2004-06-08  Fariborz Jahanian <fjahanian@apple.com>

	* varasm.c (assemble_variable): Resotored zerofill size optimization.
	* config/rs6000/rs6000.c (rs6000_override_options): Place
	rs6000_init_hard_regno_mode_ok after setting of -fast flags.

2004-06-08  Caroline Tice  <ctice@apple.com>

	* common.opt (fcreate-profile):  Add new command line option.
	(fuse-profile): Likewise.
	* gcc.c (LINK_COMMAND_SPEC):  Add fcreate-profile to list of flags
	that causes "-lgcov" to be included in link command.
	* opts.c (commmon_handle_option):  Add cases for fcreate-profile and
	fuse-profile; make them fall into the cases for fprofile-generate
	and fprofile-use, respectively.
	* config/darwin.h (LINK_COMMABND_SPEC):  Add fcreate-profile to list
	of flags that causes "-lgcov" to be included in link command.
	* doc/invoke.texi (fcreate-profile, fuse-profile):  Add documentation
	for the new command line options.  Indicates they are obsolete and
	should not be used.

2004-06-07  Fariborz Jahanian <fjahanian@apple.com>

	* gcc.c: Removed setting of -combine option with -fast.

2004-06-07  Fariborz Jahanian <fjahanian@apple.com>

	* decl.c (maybe_commonize_var): Removed APPLE LOCAL coalescing stuff.
	* method.c (use_thunk): ditto.
	* rtti.c (tinfo_base_init): ditto.
	* common.opt: ditto.

2004-06-07  Dale Johannesen  <dalej@apple.com>

	* cse.c (cse_insn):  Make sure there's a ZERO_EXTEND before looking
	under it.  (176.gcc spec regression)

2004-06-07  Ayal Zaks <zaks@il.ibm.com>

	Radar 3619935 - Part 1
	* target-def.h (TARGET_VECT, TARGET_VECT_BUILD_BUILTIN_LVSL,
	TARGET_VECT_SUPPORT_MISALIGNED_LOADS,
	TARGET_VECT_PERMUTE_MISALIGNED_LOADS,
	TARGET_VECT_BUILD_BUILTIN_VPERM): New macros for
	TARGET_INITIALIZER.
	* target.h (struct vect): New substruct of gcc_target.
 	* tree-vectorizer.c (vect_create_index_for_array_ref): Return also the
 	initial value of the iv.
 	(vect_create_data_ref): Return also the created pointer; don't call
	vect_align_data_ref.
	(vect_finish_stmt_generation): New.
	(vect_transform_load): Handle misaligned loads too.
	(vect_analyze_data_refs_alignment): Allow loads to be misaligned.
	* config/rs6000/rs6000.c (TARGET_VECT_BUILD_BUILTIN_LVSL,
	TARGET_VECT_SUPPORT_MISALIGNED_LOADS,
	TARGET_VECT_PERMUTE_MISALIGNED_LOADS,
	TARGET_VECT_BUILD_BUILTIN_VPERM): Redefine.
	(rs6000_support_misaligned_vloads, rs6000_permute_misaligned_vloads,
	rs6000_build_builtin_lvsl, rs6000_build_builtin_vperm): New.

2004-06-07  Olga Golovanevsky  <OLGA@il.ibm.com>

	* tree-vectorizer.c (vect_update_initial_conditions_of_duplicated_loop):
	Handle general form of "init" and "step" of access function.
	* tree-ssa-loop-manip.c (tree_duplicate_loop_to_exit_cfg):
	The exit from loop is taken from bb previous to latch instead
	of latch itself.

2004-06-07  Devang Patel  <dpatel@apple.com>

	Radar 3673334
	* config/darwin-driver.c (add_arch): New.
	(strip_path_and_suffix): Use strcpy.
	(main): Use add_arch().

2004-06-07  Devang Patel  <dpatel@apple.com>

	Radar 3668208 and 3668213
	* config/rs6000/darwin.h (CC1_SPEC): Handle -gused and -gfull.
	* config/i386/darwin.h (CC1_SPEC): Same.

2004-06-07  Caroline Tice  <ctice@apple.com>

	* doc/invoke.texi (-fast): Add documentation for "-fast" option.

2004-05-29  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/rs6000.c (rs6000_override_options):  Enable
	hot/cold partitioning with -fast -profile-use.

2004-05-28  Ziemowit Laski  <zlaski@apple.com>

	Radar 3665286
	* cpplex.c (_cpp_peek_token): Fix bug in computing context size;
	increment/decrement 'keep_tokens' state instead of saving/restoring it.
	* cpplib.h (cpp_callbacks): Change 'expand_macro_p' hook to
	'macro_to_expand', returning a cpp_hashnode pointer.
	* cppmacro.c (cpp_get_token): Call 'macro_to_expand' hook instead of
	'expand_macro_p'.
	(warn_of_redefinition): Do not warn if redefining a conditional macro.
	* config/rs6000/rs6000-c.c (altivec_categorize_keyword): New function.
	(rs6000_expand_macro_p): Renamed to 'rs6000_macro_to_expand'; rewritten
	to call altivec_categorize_keyword() and return one of the three
	canonical macros ('__vector', '__pixel' and '__bool') as needed.
	(rs6000_cpu_cpp_builtins): Mark all AltiVec keyword variants as
	conditional macros, some expanding to themselves (e.g., '#define
	bool bool') by default.
	* config/rs6000/rs6000-protos.h (rs6000_expand_macro_p): Renamed to
	'rs6000_macro_to_expand'.

2004-05-28  Fariborz Jahanian <fjahanian@apple.com>

	* explow.c (copy_to_mode_reg): For PARALLEL patterns, copy
	to reg via a temprary.

2004-05-27  Dale Johannesen  <dalej@apple.com>

	* loop-invariant.c (check_maybe_invariant):  Disallow CALL hoists.
	* varasm.c (assemble_start_function): Construct unlikely_section_label
	unconditionally.

2004-05-26  Caroline Tice <ctice@apple.com>

	* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges):
	Initialize variable 'has_hot_blocks'.
	(fix_up_fall_thru_edges):  Initialize variable'cond_jump'.
	* cfgcleanup.c (try_forward_edges):  Add code/tests to make sure the
	optimization is not attempted across section boundaries.
	* cfglayout.c (fixup_reorder_chain):  Correct comments.
	* cfgrtl.c (try_redirect_by_replacing_jump):  Fix test to make sure
	optimization is not attempted across section boundaries.
	* final.c (final_scan_instruction): Replace calls to text_section with
	calls to function_section.
	* predict.c (probably_never_executed_bb_p): Change criterion to be
	basic block count equals zero.
	* varasm.c (unlikely_text_section_name): New global variable.
	(text_section): Remove call to assemble_align.
	(unlikely_text_section):  Modify to build & use unlikely_text_section_name
	rather than directly using UNLIKELY_EXECUTED_TEXT_SECTION NAME; remove
	call to assemble_align; move code to free/initialize
	unlikely_section_label to assemble_start_function.
	(in_unlikely_text_section):  Modify to use unlikely_text_section_name.
	(named_section): Add code to initialize unlikely_text_section_name if
	appropriate.
	(function_section): Reorder clauses in if statement to make sure
	functions containing only cold blocks end up in the correct section.
	(assemble_start_function):  Add code to correctly initialize/free
	unlikely_text_section_name.  Also make sure the cold label is printed
	out at the start of cold functions.
	(default_section_type_flags_1): Modify to use unlikely_text_section_name.
	* config/rs6000/darwin.h (HAS_LONG_UNCOND_BRANCH):  Add darwin-specific
	definition, based on the TARGET_LONG_BRANCH (-mlongcall) flag.

2004-05-25  Dale Johannesen  <dalej@apple.com>

	* tree-ssa-loop-niter.c: Add.  New in lno branch.  Oops.

2004-05-25  Mike Stump  <mrs@apple.com>

	Radar 3665096
	* config/i386/darwin.h (TARGET_SUBTARGET_DEFAULT): Change default
	for long double type size to be 128.

2004-05-25  Dale Johannesen  <dalej@apple.com>

	Merge from LNO branch as of 05-18.
	--The following files are identical to lno branch:
	df.c:  Merge.
	lambda-code.c:  Merge.
	loop-iv.c:  Merge.
	tree-chrec.c:  Merge.
	tree-chrec.h:  Merge.
	tree-data-ref.c:  Merge.
	tree-data-ref.h:  Merge.
	tree-elim-check.c:  Merge.
	tree-fold-const.h:  Merge.
	tree-scalar-evolution.c:  Merge.
	tree-scalar-evolution.h:  Merge.
	tree-ssa-loop-ivcanon.c:  Merge.
	tree-ssa-loop-ivopts.c:  Merge.
	tree-vectorizer.c:  Merge.
	--These files were merged selectively, see lno branch ChangeLog.lno.
	Makefile.in:  Add tree-ssa-loop-niter.
	cfgloop.c: Merge changes from Devang's 05-13 patch.
	cfgloop.h: Ditto, also Zdenek's 04-30 patch.
	expr.c:  Merge changes from Zdenek's 05-13 patch.
	tree-cfg.c:  Ditto.
	tree-flow.h:  Ditto.  Also from Zdenek's 04-30 patch.
	loop-invariant.c:  Merge.  Add DF_EQUIV_NOTES.
	rtl.h:  Merge change from Zdenek's 05-09 patch.
	stor-layout.c:  Ditto.
	tree.c:  Merge change from Sebastian's 04-27 patch.
	tree.h:  Ditto.  Also Zdenek's 05-13 patch.  Add TYPE_UNSIGNED.
	varasm.c:  Merge change from Zdenek's 04-30 patch.
	config/rs6000/rs6000.c:  Ditto.
	-- Other stuff:
	fold-const.c:  Remove unused variable.
	config/rs6000/rs6000-c.c:  Make #define of bool work.
	config/rs6000/t-rs6000:  Make #define of bool work.  Remove
	-Wno-error requirements.

2004-05-25  Mike Stump  <mrs@apple.com>

	Radar 3667005
	* config/darwin.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Move long
	double size default from here...
	* config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): to here.

2004-05-24  Devang Patel  <dpatel@apple.com>

	Radar 3665390
	* config/darwin-driver.h (main): While reinserting output filename
	do not forget -o.

2004-05-24  Mike Stump  <mrs@apple.com>

	Radar 3589079
	* config/darwin.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Change default
	for long double type size to be 128.
	* c-common.c: Change default for -Wwarn-long-double to off.
	(warn_about_long_double): Change wording to account for new long
	double size.
	* doc/invoke.texi (-Wlong-double): Likewise.

2004-05-22  Devang Patel  <dpatel@apple.com>

	Radar 3644687
	* config/darwin-driver.c (main): Reinsert output filename
	only if user supplied one.

2004-05-22  Dale Johannesen  <dalej@apple.com>

	* simplify-rtx.c (simplify_unary_operation):  Don't create NOT(SYM)
	or (MINUS(CON SYM)).
	* config/rs6000/rs6000.h (machine_function):  Make substitute_pic_base_reg
	unsigned.
	* config/rs6000/rs6000.md:  Compare it to INVALID_REGNUM not -1.
	* config/rs6000/rs6000.c (throughout):  Ditto.

2004-05-21  Ziemowit Laski  <zlaski@apple.com>

	* opts.c (common_handle_option): Do not const-qualify a char buffer
	that has sprintf() and free() called on it.

2004-05-21  Ziemowit Laski  <zlaski@apple.com>

	Radar 3621323
	* c-lex.c: Do not include target.h.
	(C_LEX_BUFCAPACITY, C_LEX_OFFS_BOUND, c_lex_buf_beg, c_lex_buf_end,
	c_lex_buf, c_lex_peek, c_lex_prepend): Remove.
	(get_nonpadding_token): Get rid of int argument; adjust call sites
	accordingly.
	* cpplex.c (_cpp_peek_token): New function.
	(_cpp_temp_token): Account for existence of lookaheads when allocating
	token.
	* cpplib.h (cpp_callbacks): Add new 'expand_macro_p' hook.
	(NODE_CONDITIONAL): New flag for macro nodes.
	(_cpp_peek_token, _cpp_backup_tokens_direct): New prototypes.
	* cppmacro.c (cpp_get_token): For macros marked NODE_CONDITIONAL,
	call the 'expand_macro_p' predicate to see if they should be
	expanded.
	(_cpp_backup_tokens_direct): New function, broken off from
	_cpp_backup_tokens().
	(_cpp_backup_tokens): Call _cpp_backup_tokens_direct().
	* config/rs6000/rs6000-c.c (rs6000_expand_macro_p): Add cpp_reader
	parameter; call _cpp_peek_token() instead of c_lex_peek().
	(rs6000_cpu_cpp_builtins): Attach rs6000_expand_macro_p() to a
	cpplib callback instead of a target hook.
	* config/rs6000/rs6000-protos.h (rs6000_expand_macro_p): Add cpp_reader
	parameter to prototype.
	* hooks.c (hook_bool_constcpp_tokenp_false): Remove.
	* hooks.h (hook_bool_constcpp_tokenp_false): Remove prototype.
	* target-def.h (TARGET_EXPAND_MACRO_P): Remove.
	* target.h (gcc_target): Remove 'expand_macro_p' target hook.

2004-05-20  Devang Patel  <dpatel@apple.com>

	* config/darwin-driver.c (main): Prepand "-Wl," before
	-final_output to make it linker option.

2004-05-20  Fariborz Jahanian <fjahanian.apple.com>

	* c-opts.c (c_common_post_options): Remove old declaration and
	use of stdin_filename. Add new call to set_stdin_option.
	* common.opt: Add fpredictive-compilation=n option.
	* cppfiles.c (STAT_SIZE_RELIABLE macro): Change definition.
	(pch_open_file): No pch stuff with stdin file.
	(find_file_in_dir): When opening the main file, revert
	to opening stdin instead, in predictive compilation mode.
	(read_file_guts): Support for reading from stdin for predictive
	compilation sizes are added. (read_file): Don't close stdin.
	(read_from_stdin): New routine.
	* cpphash.h: New field declaration 'is_main_file' added.
	* cppinit.c (cpp_read_main_file): Set is_main_file to true,
	and then to false in predictive compilation mode.
	* cpplex.c (_cpp_get_fresh_line): Read more from stdin when
	in predictive compilation mode.
	* cpplib.c (set_stdin_option): New definition.
	* cpplib.h: Declaration updates.
	* flags.h: Declaration of predictive_compilation.
	* opts.c (common_handle_option): Processing -fprdictive-compilation=n
	options.
	* toplev.c: Definition of predictive_compilation added.

2004-05-14  Dale Johannesen  <dalej@apple.com>

	* Makefile.in:  Remove local -Wno-error dependencies.

2004-05-13  Caroline Tice  <ctice@apple.com>

	* c-common.c (builtin_function_disabled_p):  Remove "static" from
	function declaration and definition.
	* c-common.h (builtin_function_disabled_p):  Add extern function
	definition.
	* c-decl.c (merge_translation_unit_decls):  Add code to test
	function decls to see if they are builtin and the builtin is
	supposed to be disabled before attempting to merge the decls.

2004-05-12  Devang Patel  <dpatel@apple.com>

	* opts.c (common_handle_option): Handle OPT_arch.

2004-05-12  Devang Patel  <dpatel@apple.com>

	* config/darwin.h (darwin_builtins): Move to ...
	* config/darwin.c (darwin_builtins); here.

2004-05-12  Dale Johannesen  <dalej@apple.com>

	Radar 3509006

	* config/rs6000/rs6000.c (rs6000_override_options):
	Don't enable string insns with -Os.
	* doc/invoke.texi:  Document this behavior.
	* testsuite/gcc.apple/string-insns.c:  New.

2004-05-12  Dale Johannesen  <dalej@apple.com>

	* config/rs6000/rs6000.c (rs6000_stack_info):  Restore an
	optimization lost in merge.

2004-05-11  Ziemowit Laski  <zlaski@apple.com>

	* gcc.c (process_command): Do not define __CONSTANT_CFSTRINGS__,
	since config/darwin.h already does this.
	(do_spec_1): Emit "-mconstant-cfstrings" instead of
	"-fconstant-cfstrings".

2004-05-11  Devang Patel  <dpatel@apple.com>

	* gcc.c (optiom_map): Remove -precomp-trustfile support.
	* c-opts.c (c_common_handle_option): Remove -precomp-trustfile and
	-header-mapfile support.
	* common.opt: Same.
	* c.opt: Remove -header-mapfile support.

2004-05-11  Caroline Tice  <ctice@apple.com>

	* rtl.c (NOTE_INSN_UNLIKELY_EXECUTED_CODE):  Add this note back
	in; it seems to have vanished during a merge.

2004-05-10  Ziemowit Laski  <zlaski@apple.com>

	* config/rs6000/altivec.h: Bring over from mainline.
	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
	__APPLE_ALTIVEC__ to indicate Apple syntax support.

2004-05-10  Dale Johannesen  <dalej@apple.com>
	* config/darwin.c:  ANSIfy syntax (eliminate warnings).
	config/darwin-c.c:  Ditto.
	rs6000.c: Small cosmetic change in local code.

2004-05-06  Caroline Tice <ctice@apple.com>

	* config/rs6000/rs6000.c (rs6000_override_options):  Modify to
	not turn on hot/cold partitioning in the presence of exception
	handling.

2004-05-06  Dale Johannesen  <dalej@apple.com>

	* Merge from lno branch as of 04-24.  Files changed:
	 lambda-code.c
	 lambda.h
	 tree-chrec.c
	 tree-chrec.h
	 tree-data-ref.c
	 tree-elim-check.c
	 tree-flow.h
	 tree-loop-linear.c
	 tree-scalar-evolution.c
	 tree-ssa-loop-im.c
	 tree-ssa-loop-ivopts.c
	 tree-ssa-loop-manip.c
	 tree-ssa-loop.c
	 tree-vectorizer.c
	 tree-vectorizer.h

2004-05-04  Caroline Tice <ctice@apple.com>

	* config/rs6000/darwin.h (FP_SAVE_INLINE):  Modify this to
	always be 1 ("on") if the optimization level is -O3 or
	higher.

2004-04-30  Dale Johannesen  <dalej@apple.com>

	* cse.c (cse_insn):  Don't add REG_EQUAL note for
	(CONST (MINUS (LABEL_REF) (0))).

2004-04-30  Caroline Tice  <ctice@apple.com>

	* varasm.c (unlikely_section_label): New global variable.
	(unlikely_text_section): Change variable name from
	'unlikely_section_name' to 'unlikely_section_label', make it a global
	variable, and move the code to generate its value to
	assemble_start_function.
	(assemble_start_function):  Add code to generate *correct* value for
	'unlikely_section_label'.  Now makes use of value from 'fnname'
	parameter.

2004-04-29  Devang Patel  <dpatel@apple.com>

	gcc/loop-iv.c : Merge from lno-branch as of 2004:04:19 00:00.
	gcc/tree-pass.h : Merge from lno-branch as of 2004:04:19 00:00.
	gcc/tree-ssa-alias.c : Merge from lno-branch as of 2004:04:19 00:00.
	gcc/tree-ssa-phiopt.c : Merge from lno-branch as of 2004:04:19 00:00.

2004-04-29  Devang Patel  <dpatel@apple.com>

	Merge lno-branch as of 2004:04:18 00:00 into
	apple-ppc-branch.


2004-04-28  Fariborz Jahanian <fjahanian@apple.com>

	* function.c (assign_parms): Add 2nd iteration over vector args
	if needed.
	* calls.c (initialize_argument_information): Add new argument,
	add 2nd iteration over vector arguments if needed.
	* target-def.h (default_skip_vec_args, TARGET_SKIP_VEC_ARGS): New.
	* target.h (skip_vec_args): Added to calls structure.
	* targhooks.c (default_skip_vec_args): Default
	definition.
	* targhooks.h (default_skip_vec_args): Declaration.
	* config/rs6000/rs6000.c (skip_vec_args): New definition.

2004-04-28  Stuart Hastings  <stuart@apple.com>

	* config/rs6000/rs6000.c (macho_branch_islands): Fix sprintf arguments.
	* config/rs6000/rs6000.md (output_call): Fix arguments.

2004-04-27  Devang Patel  <dpatel@apple.com>

	* config/darwin.h (LINK_COMMAND_SPEC): Use darwin_arch_ld_spec.
	* config/rs6000/darwin.h (DARWIN_ARCH_ASM_SPEC): New.
	(DARWIN_ARCH_SPEC): Rename as...
	(DARWIN_ARCH_LD_SPEC): New name.
	* config/i386/darwin.h (DARWIN_ARCH_ASM_SPEC): New.
	(DARWIN_ARCH_SPEC): Rename as...
	(DARWIN_ARCH_LD_SPEC): New name.

2004-04-26  Andrew Pinski  <pinskia@physics.uc.edu>

	* configure.ac: Add test for -Wno-long-double.
	* Makefile.in (STRICT2_WARN): Add -Wno-long-double.
	(alloc-pool.o-warn): Delete.
	(ggc-page.o-warn): Delete.
	* configure: Regenerate.

2004-04-23  Dale Johannesen  <dalej@apple.com>

	Radars 3480058, 3178986

	* c-decl.c (merge_decls): Preserve duplicate_decl bit.
	(merge_translation_unit_decls):  Rewritten so -fno-common works.
	* opts.c (decode_options):  Turn on flag_no_common with -fast or -fastcp.
	* tree.h (struct tree_decl): Add duplicate_decl bit and DECL_DUPLICATE_DECL.
	* varasm.c (assemble_variable): Use it.
	* config/rs6000/rs6000.c (rs6000_override_options): Remove
	reorder-blocks-and-partition from -fast*.  Enable align-natural with -fastcp.
	* ../libstdc++-v3/include/std/std_fstream.h (basic_ifstream): Make
	_M_filebuf 8-byte aligned.
	(basic_ofstream): Ditto.

2004-04-22  Devang Patel  <dpatel@apple.com>

	Radar 3401402 and 3511029

	Remove FAT Build support from gcc.c

	* gcc.c (struct arch_config_out): Remove.
	(struct arch_out): Remove.
	(num_arches, curent_arch, final_output): Remove.
	(set_new_arch): Remove.
	(%T support): Remove.
	(%f support): Remove.
	(%F support): Remove.
	('@' support in specs): Remove.
	(ofile_merge_spec): Remove.
	(exec_merge_spec): Remove.
	(build_search_list): Remove fat builds readibility change.
	(SWITCH_IGNORE_RESTORE): Remove.
	(-arch support): Remove.
	* config/darwin.h (LINK_COMMAND_SPEC): Remove -arch*. Add %(darwin_arch_spec).
	* confiig/i386/darwin.h (ASM_SPEC): Add %(darwin_arch_spec).
	(DARWIN_ARCH_SPEC): New.
	* confiig/rs6000/darwin.h (ASM_SPEC): Add %(darwin_arch_spec).
	(DARWIN_ARCH_SPEC): New.
	* config/rs6000/rs6000.h (SUBTARGET_EXTRA_SPECS): Surround it with #ifndef.
	* config/darwin-driver.c: New file.

2004-04-20  Geoffrey Keating  <geoffk@apple.com>

	* c-cppbuiltin.c (define__GNUC__): Better precision and more
	error checking for code defining __APPLE_CC__.
	* testsuite/gcc.apple/applecc.c: New.

2004-04-15  Devang Patel  <dpatel@apple.com>

	* config/i386.h: Add static tree nodes for vector types to
	accomodate tree.h changes due to local Altivec patch.

2004-04-15  Caroline Tice  <ctice@apple.com>

	Fix various problems related to hot/cold partitioning (but not all of
	them yet).
	* bb-reorder.c  (tm_p.h): Add new include statement.
	(HAVE_return): Define HAVE_return appropriately if not already defined.
	(find_rarely_executed_basic_blocks_and_crossing_edges):  Modify to
	only mark crossing edges if architecture supports named sections.
	(fix_crossing_conditional_branches):  Add test for HAVE_return before
	calling gen_return.
	(fix_crossing_unconditional_branches): Change VOIDmode to Pmode in call
	to gen_rtl_LABEL_REF.
	(fix_edges_for_rarely_executed_code): Only "fix" branches and add
	REG_CROSSING_JUMP notes if the architecture supports named sections.
	(reorder_basic_blocks):  Change (* targetm.cannot_modify_jumps_p ())
	into (targetm.cannot_modify_jumps_p ()).  Modify to only add
	NOTE_INSN_UNLIKELY_EXECUTED_CODE notes if the architecture supports
	named sections.
	* cfglayout.c (fixup_reorder_chain):  Modify code that adds
	NOTE_INSN_UNLIKELY_EXECUTED_CODE and REG_CROSSING_JUMP notes, to only
	do so if architecture supports named sections.
	* cfgrtl.c (target.h): Add new include statement.
	(force_nonfallthru_and_redirect):  Modify code that adds
	NOTE_INSN_UNLIKELY_EXECUTED_CODE and REG_CROSSING_JUMP notes, to only
	do so if architecture supports named sections.
	(commit_one_edge_insertion):  Likewise.
	* dbxout.c (dbxout_source_file): Fix bug, when writing out source
	location debug information, to not change to the wrong section.
	* defaults.h (NORMAL_TEXT_SECTION_NAME):  Remove this definition.
	(SECTION_FORMAT_STRING): Remove this definition.
	* final.c (final_scan_insn): Remove unnecessary in_unlikely_text_section
	test from if statement.  Modify code that switches sections to not
	do so if architecture does not support named sections.  Cleaned up
	if statement.
	* ifcvt.c (if_convert): Modified test that disables optimization when
	partitioning, to not disable it if the architecture does not support
	named sections.
	* passes.c (rest_of_compilation):  Removed flag_exceptions test from
	code that calls partitioning, as this is already taken care of
	in decode_options.
	* predict.c (choose_function_section): Modify to NOT choose hot or
	cold sections for the function decl if we are doing partitioning
	optimization (want to leave it up to the hot/cold partitioning
	optimization, which is more fine-grained).
	* varasm.c (text_section): Restore code that outputs assembly for
	the text section to its original code.
	(unlikely_text_section):  Modify to always use named_section for
	writing out section directive, remove unnecessary ifdef, and
	use ASM_OUTPUT_LABEL for labelling the start of the
	cold section.
	(in_unlikely_text_section):  Modify to deal correctly with being in
	a named section.
	(function_section):  Restore code for generating section directives
	to its original order.
	* config/darwin.c (darwin_asm_named_section): Restore code that
	generates section directive to its original state.
	* config/i386/darwin.h (ASM_OUTPUT_ALIGN): Add in_unlikely_text_section ()
	to an if test that tests for in_text_section ().
	* config/rs6000/darwin.h (NORMAL_TEXT_SECTION_NAME):  Remove definition.
	(SECTION_FORMAT_STRING):  Remove definition.

2004-04-10  Paolo Bonzini  <bonzini@gnu.org>
	    Richard Henderson  <rth@redhat.com>

	PR target/14899

	* c-common.c (vector_types_compatible_p): New function.
	* c-typeck.c (comptypes): Recurse on vector types,
	treat a non-opaque type as equivalent to an opaque type.
	(convert_for_assignment): Use vector_types_compatible_p.
	(digest_init): Use vector_types_compatible_p to check
	validness of constant vector initializers; otherwise treat
	them as scalars
	* tree.c (make_or_reuse_type): New.
	(build_common_tree_nodes): Use it.
	* cp/call.c (standard_conversion): Likewise.
	* cp/typeck.c (comptypes): Recurse on vector types, do not
	treat a non-opaque type as equivalent to an opaque type.
	(convert_for_assignment): Use vector_types_compatible_p.

2004-04-13  Fariborz Jahanian <fjahanian@apple.com>

	* combine.c (combine_instructions):
	Try insn with each REG_EQUAL note it links back to.
	(unmentioned_reg_p_1, unmentioned_reg_p): New functions.
	Brought from tree-ssa branch.

2004-04-09  Dale Johannesen <dalej@apple.com>

	Roll in gcc-1552 enhancement for separate stack temps.
	Turn on -fstrict-aliasing with -fast.
	* function.c (assign_stack_local_with_alias): New function.
	* rtl.h (assign_stack_local_with_alias): Declare it.
	* config/rs6000/rs6000.c (rs6000_override_options): Turn on strict
	aliasing with -fast.
	* config/rs6000/rs6000.md (floatsidf2): Use
	assign_stack_local_with_alias.
	(floatunssidf2): Ditto.
	(fix_truncdfsi2): Ditto.

2004-04-07  Fariborz Jahanian <fjahanian@apple.com>

	Roll in Ziem Laski's Altivec front-end fixes to
	support MOTOROLA's Altivec syntax.
	* Makefile.in: Add c-lex.o dependencies.
	* c-common.c (vector_constructor_from_expr): New function.
	* c-common.h (vector_constructor_from_expr): Add declaration.
	* c-lex.c: include target.h, cpphash.h. Add lexer support
	for new syntax.
	(c_lex_prepend): new function. (c_lex_peek): new function.
	* c-pragma.h: add (c_lex_peek, c_lex_prepend) declarations.

2004-04-06  Dale Johannesen <dalej@apple.com>

	Roll in Zdenek Dvorak's rewrite of doloop optimization.
	* Makefile.in: add loop-doloop.*, remove doloop.*
	* loop-doloop.c: New.
	* doloop.c: Remove.
	* cfgloop.h: Add new function declarations.
	* cfgloopanal.c: Add get_loop_level.
	* loop-iv.c: Recognize unexecuted loops.
	* loop.c: Remove call to old doloop optimization.
	* loop.h: Remove LOOP_BCT.
	* passes.c: Ditto. Call new doloop optimization.
	* config/rs6000/rs6000-protos.h: Remove duplicate declarations.
	* config/rs6000/rs6000.c: Cosmetic cleanups.  Add -freorder-blocks
	to -fast.

2004-04-02  Ziemowit Laski  <zlaski@apple.com>

	Remove APPLE LOCAL AltiVec code whenever possible; merge in
	AltiVec/VECTOR_TYPE-handling code from mainline.

2004-04-01  Fariborz Jahanian <fjahanian@apple.com>

	* Makefile.in: add $(PARAMS_H) $(TM_P_H) dependencies
	for sched-rgn.o.
	* params.def: add definitions for
	max-sched-region-blocks and max-sched-region-insns.
	* sched-rgn.c (too_large): change return type to bool.
	Use the parametrized values of max-sched-region-blocks,
	max-sched-region-insns for computing upper limits for
	interblock scheduling.
	* doc/invoke.texi: Document max-sched-region-blocks,
	max-sched-region-insns.

2004-04-01  Caroline Tice  <ctice@apple.com>

	* basic-block.h (struct edge_def):  Add new field, crossing_edge.
	(struct basic_block_def):  Add new field, partition.
	(UNPARTITIONED, HOT_PARTITION, COLD_PARTITION):  New constant macro
	definitions.
	(partition_hot_cold_basic_blocks): Add extern function
	declaration.
	* bb-reorder.c (function.h, obstack.h, expr.h, regs.h):  Add four new
	include	statements.
	(N_ROUNDS): Increase the maximum number of rounds by 1.
	(branch_threshold): Add array value for new round.
	(exec_threshold): Add array value for new round.
	(push_to_next_round_p): New function.
	(add_unlikely_executed_notes): New function.
	(find_rarely_executed_basic_blocks_and_crossing_edges): New function.
	(mark_bb_for_unlikely_executed_section): New function.
	(add_labels_and_missing_jumps): New function.
	(add_reg_crossing_jump_notes): New function.
	(fix_up_fall_thru_edges): New function.
	(find_jump_block): New function.
	(fix_crossing_conditional_branches): New function.
	(fix_crossing_unconditional_branches): New function.
	(fix_edges_for_rarely_executed_code): New function.
	(partition_hot_cold_basic_blocks): New function.
	(find_traces):  Add an extra round for partitioning hot/cold
	basic blocks.
	(find_traces_1_round): Add a parameter.  Modify to push all cold blocks,
	and only cold blocks, into the last (extra) round of collecting traces.
	(better_edge_p): Add a parameter.  Modify to favor non-crossing edges
	over crossing edges.
	(bb_to_key):  Add code to correctly identify cold blocks when
	doing partitioning.
	(connect_traces): Modify to connect all the non-cold traces first, then
	go back and connect up all the cold traces.
	(reorder_basic_blocks):  Add call to add_unlikely_executed_notes.
	* cfg.c (entry_exit_blocks): Add initialization for partition field in
	entry and exit blocks.
	* cfgbuild.c (make_edges): Update current_function_has_computed_jump
	if we are doing hot/cold partitioning.
	* cfgcleanup.c (cfglayout.h): Add new include statement.
	(try_simplify_condjump): Modify to not attempt on blocks with jumps
	that cross section boundaries.
	(try_forward_edges): Likewise.
	(merge_blocks_move_predecessor_nojumps): Likewise.
	(merge_blocks_move_successor_nojumps): Likewise.
	(merge_blocks_move): Likewise.
	(try_crossjump_to_edge): Modify to not attempt after we have done
	the block partitioning.
	(try_crossjump_bb): Modify to not attempt on blocks with jumps that
	cross section boundaries.
	(try_optimize_cfg): Likewise.
	* cfghooks.c (tidy_fallthru_edges): Modify to not remove indirect
	jumps that cross section boundaries.
	* cfglayout.c (flags.h): Add new include statement.
	(update_unlikely_executed_notes):  New function.
	(fixup_reorder_chain):  Add code so when a new jumping basic block is
	added, it's UNLIKELY_EXECUTED_CODE and REG_CROSSING_JUMP notes are
	updated appropriately.
	(duplicate_insn_chain):  Add code to duplicate the new NOTE insn
	introduced by this optimization.
	* cfglayout.h (scan_ahead_for_unlikely_executed_note):  Add new
	extern function declaration.
	* cfgrtl.c (can_delete_note_p):  Add NOTE_INSN_UNLIKELY_EXECUTED_CODE to
	list of notes that can be deleted.
	(create_basic_block_structure):  Add initialization for partition field.
	(rtl_can_merge_blocks):  Modify to test blocks for jumps that cross
	section boundaries.
	(try_redirect_by_replacing_jump):  Modify to not attempt on jumps that
	cross section boundaries.
	(commit_one_edge_insertion): Add code so newly created basic block
	ends up in correct (hot or cold) section.  Modify to disallow
	insertions before NOTE_INSN_UNLIKELY_EXECUTED_CODE notes.
	(rtl_verify_flow_info_1):  Add code to verify that no fall_thru edge
	crosses section boundaries.
	(cfg_layout_can_merge_blocks_p): Modify to test blocks for jumps that
	cross section boundaries.
	(force_nonfallthru_and_redirect): Modify to make sure new basic block
	ends up in correct section, with correct notes attached.
	* common.opt (freorder-blocks-and-partition):  Add new flag for this
	optimization.
	* dbxout.c (dbx_function_end):  Add code to make sure scope labels at
	the end of functions are written into the correct (hot or cold)
	section.
	(dbx_source_file): Add code so writing debug file information
	doesn't incorrectly change sections.
	* defaults.h (NORMAL_TEXT_SECTION_NAME): New constant macro, for use
	in partitioning hot/cold basic blocks into separate sections.
	(SECTION_FORMAT_STRING): New constant macro, for linux/i386 hot/cold
	section partitioning.
	(HAS_LONG_COND_BRANCH): New constant macro, indicating whether or not
	conditional branches can span all of memory.
	(HAS_LONG_UNCOND_BRANCH): New constant macro, indicationg whether or not
	unconditional branches can span all of memory.
	* final.c (scan_ahead_for_unlikely_executed_note):  New function.
	(final_scan_insn):  Add code to check for NOTE instruction indicating
	whether basic block belongs in hot or cold section, and to make sure
	the current basic block is being written to the appropriate section.
	Also added code to ensure that jump table basic blocks end up in the
	correct section.
	* flags.h (flag_reorder_blocks_and_partition):  New flag.
	* ifcvt.c (find_if_case_1):  Modify to not attempt if conversion if
	one of the branches has a jump that crosses between sections.
	(find_if_case_2): Likewise.
	(ifcvt): Modify to not attempt to mark loop exit edges after
	hot/cold partitioning has occurred.
	* opts.c (decode_options): Code to handle new flag,
	flag_reorder_blocks_and_partition; also to turn it off if
	flag_exceptions is on.
	(common_handle_option): Code to handle new flag,
	flag_reorder_blocks_and_partition.
	* output.h (unlikely_text_section): New extern function declaration.
	(in_unlikely_text_section): New extern function declaration.
	* passes.c (rest_of_handle_stack_regs):  Add
	flag_reorder_blocks_and_partition as an 'or' condition for calling
	reorder_basic_blocks.
	(rest_of_handle_reorder_blocks):  Add flag_reorder_blocks_and_partition
	as an 'or' condition for calling reorder_basic_blocks.
	(rest_of_compilation):  Add call to partition_hot_cold_basic_blocks.
	* print-rtl.c (print_rtx): Add code for handling new note,
	NOTE_INSN_UNLIKELY_EXECUTED_CODE
	* rtl.c  (NOTE_INSN_UNLIKELY_EXECUTED_CODE): New note insn (see below).
	(REG_CROSSING_JUMP): New kind of reg_note, to mark jumps that
	cross between section boundaries.
	* rtl.h (NOTE_INSN_UNLIKELY_EXECUTED_CODE):  New note instruction,
	indicating the basic block containing it belongs in the cold section.
	(REG_CROSSING_JUMP): New type of reg_note, to mark jumps that cross
	between hot and cold sections.
	* toplev.c (flag_reorder_blocks_and_partition):  Add code to
	initialize this flag, and to tie it to the command-line option
	freorder-blocks-and-partition.
	* varasm.c (cfglayout.h):  Add new include statement.
	(unlikely_section_label_printed):  New global variable, used for
	determining when to output section name labels for cold sections.
	(in_section):  Add in_unlikely_executed_text to enum data structure.
	(text_section):  Modify code to use SECTION_FORMAT_STRING and
	NORMAL_TEXT_SECTION_NAME macros.
	(unlikely_text_section):  New function.
	(in_unlikely_text_section):  New function.
	(function_section):  Add code to make sure beginning of function is
	written into correct section (hot or cold).
	(assemble_start_function):  Add code to make sure stuff is written to
	the correct section.
	(assemble_zeros):  Add in_unlikely_text_section as an 'or' condition
	to an if statement that was checking 'in_text_section'.
	(assemble_variable):  Add 'in_unlikely_text_section' as an 'or'
	condition to an if statement that was checking 'in_text_section'.
	(default_section_type_flags_1):  Add check: if in cold section
	flags = SECTION_CODE.
	* config/darwin.c (darwin_asm_named_section):  Modify to use
	SECTION_FORMAT_STRING if we are partitioning hot/cold blocks.
	* config/i386/i386.h (HAS_LONG_COND_BRANCH): Defined this macro
	specifically for the i386.
	(HAS_LONG_UNCOND_BRANCH):  Defined this macro specifically for the i386.
	* config/rs6000/darwin.h (UNLIKELY_EXECUTED_TEXT_SECTION_NAME): Change
	text string to something more informative.
	(NORMAL_TEXT_SECTION_NAME): Add new definition.
	(SECTION_FORMAT_STRING):  Add new definition.
	* config/rs6000/rs6000.c (rs6000_assemble_integer):  Add
	'!in_unlikely_text_section' as an 'and' condition to an if statement
	that was already checking '!in_text_section'.
	(rs6000_override_options):  Turn on flag_reorder_blocks_and_partition
	with "-fast".
	* config/rs6000/sysv4.h (HOT_TEXT_SECTION_NAME,NORMAL_TEXT_SECTION_NAME,
	UNLIKELY_EXECUTED_TEXT_SECTION_NAME,SECTION_FORMAT_STRING): Make
	sure these are properly defined for linux on ppc.
	* doc/invoke.texi  (freorder-blocks-and-partition): Add documentation
	for this new flag.
	* doc/rtl.texi (REG_CROSSING_JUMP):  Add documentation for new
	reg_note.
	* doc/tm.texi (NORMAL_TEXT_SECTION_NAME, SECTION_FORMAT_STRING,
	HAS_LONG_COND_BRANCH, HAS_LONG_UNCOND_BRANCH): Add documentation for
	these new macros.