aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
blob: ed2814779f0c91dfb85d6776748533e29c54de16 (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
2002-05-10  Alan Modra  <amodra@bigpond.net.au>

	* elf32-i386.c (elf_i386_relocate_section): Remove overflow checks
	addend in 2002-05-09 commit.

	* elf32-hppa.c (elf32_hppa_size_stubs): Revert part of 2002-05-04,
	don't look for stubs on all undefined syms.

2002-05-09  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (RA_REGISTER_MASK, RA_REGISTER_SHIFT): Delete.
	(ppc64_elf_howto_raw <R_PPC64_RELATIVE>): Not pc_relative or
	pcrel_offset.

	* elf32-i386.c (elf_howto_table): Comments.
	(elf_i386_relocate_section): Handle more relocs for relocatable
	linking and against SEC_MERGE sections.

2002-05-08  Alan Modra  <amodra@bigpond.net.au>

	* elf32-ppc.c (ppc_elf_create_got): New function.
	(ppc_elf_create_dynamic_sections): Call ppc_elf_create_got before
	_bfd_elf_create_dynamic_sections.  Correct .plt flags. 
	(ppc_elf_check_relocs): Use ppc_elf_create_got in place of
	_bfd_elf_create_got_section.

2002-05-07  Alan Modra  <amodra@bigpond.net.au>

	* elf-bfd.h (struct elf_backend_data): Add rela_normal.
	* elfxx-target.h (elf_backend_rela_normal): Define.
	(elfNN_bed): Init rela_normal.
	* elflink.h (elf_link_input_bfd <emit_relocs>): Handle adjustment
	for section symbols here if rela_normal.  Simplify abs section test.
	* elf-m10200.c (mn10200_elf_relocate_section): If relocatable,
	return immediately.  Remove code handling relocatable linking.
	* elf-m10300.c (mn10300_elf_relocate_section): Likewise.
	* elf32-fr30.c (fr30_elf_relocate_section): Likewise.
	* elf32-i370.c (i370_elf_relocate_section): Likewise.
	* elf32-i860.c (elf32_i860_relocate_section): Likewise.
	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
	* elf32-mcore.c (mcore_elf_relocate_section): Likewise.
	* elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
	* elf64-s390.c (elf_s390_relocate_section): Likewise.
	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
	* elfxx-ia64.c (elfNN_ia64_relocate_section): Likewise.
	* elf32-arm.h (elf32_arm_relocate_section): Likewise #ifndef USE_REL.
	* elf32-m32r.c (m32r_elf_relocate_section): Likewise.
	* elf-m10200.c (elf_backend_rela_normal): Define.
	* elf-m10300.c (elf_backend_rela_normal): Define.
	* elf32-fr30.c (elf_backend_rela_normal): Define.
	* elf32-i370.c (elf_backend_rela_normal): Define.
	* elf32-i860.c (elf_backend_rela_normal): Define.
	* elf32-m68k.c (elf_backend_rela_normal): Define.
	* elf32-mcore.c (elf_backend_rela_normal): Define.
	* elf32-openrisc.c (elf_backend_rela_normal): Define.
	* elf32-ppc.c (elf_backend_rela_normal): Define.
	* elf32-s390.c (elf_backend_rela_normal): Define.
	* elf32-xstormy16.c (elf_backend_rela_normal): Define.
	* elf64-ppc.c (elf_backend_rela_normal): Define.
	* elf64-s390.c (elf_backend_rela_normal): Define.
	* elf64-x86-64.c (elf_backend_rela_normal): Define.
	* elfxx-ia64.c (elf_backend_rela_normal): Define.
	* elf32-arm.h (elf_backend_rela_normal): Define #ifndef USE_REL.
	* elf32-m32r.c (elf_backend_rela_normal): Likewise.

2002-05-06  Nick Clifton  <nickc@cambridge.redhat.com>

	* elf32-arm.h (elf32_arm_final_link_relocate): Convert
	'reloc_signed_max' and 'reloc_signed_min' into half-word offsets.

2002-05-06  Alan Modra  <amodra@bigpond.net.au>

	* elflink.h (elf_link_input_bfd <emit_relocs>): Adjust r_offset
	when not relocatable.  Fix reloc_emitter call for K&R.

2002-05-04  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_relocate_section): Reinstate code
	reloading local sym addend mistakenly removed in 2002-05-01 change.

	* dwarf2.c (struct line_head): Make prologue_length a bfd_vma.
	(read_abbrevs): Change "offset" param to bfd_vma.
	(parse_comp_unit): Change "version" and addr_size to unsigned ints.
	Change "abbrev_offset" to bfd_vma.
	(read_indirect_string): Use correct conversion chars in error
	message format string, cast bfd_vma's to unsigned long.
	(read_abbrevs): Likewise.
	(read_attribute_value): Likewise.
	(decode_line_info): Likewise.
	(scan_unit_for_functions): Likewise.
	(parse_comp_unit): Likewise.

2002-05-04  Tom Rix  <trix@redhat.com>

	* coffswap.h (coff_swap_reloc_in): Remove XCOFF support.
	(coff_swap_reloc_out): Same.
	* coff-rs6000.c: (xcoff_swap_reloc_in): Moved from coffswap.h.
	(xcoff_swap_reloc_out): Same.
	(xcoff_rtype2howto): Renamed from _bfd_xcoff_rtype2howto. Special
	case some 16 bit relocs. Add reloc value to output.
	(xcoff_howto_table): Remove 64 bit R_POS, add 16 bit
	R_RBR. Improve names. 
	(_bfd_xcoff_reloc_type_lookup): Adjust for removal of 64 bit R_POS.
	(bfd_xcoff_backend_data): Update with new reloc swap names.
	(bfd_pmac_xcoff_backend_data) : Same.
	* coff64-rs6000.c: (xcoff64_swap_reloc_in): Moved from coffswap.h.
	(xcoff64_swap_reloc_out): Same.
	(xcoff64_rtype2howto): Special case some 16 bit relocs and 32 bit 
	R_POS. Add reloc value to output.
	(xcoff64_howto_table): Move 64 bit R_POS to first entry.  Add 16 
	bit R_RBR. Improve names, masks. 
	(xcoff64_reloc_type_lookup): Adjust for move of 64 bit R_POS.
	(bfd_xcoff_backend_data): Update with new reloc swap names.
	(bfd_xcoff_aix5_backend_data) : Same.

2002-05-04  Alan Modra  <amodra@bigpond.net.au>

	* elf32-hppa.c (struct elf32_hppa_link_hash_table): Add
	bfd_count top_index, input_list, all_local_syms.
	(elf32_hppa_setup_section_lists): New function, split from
	elf32_hppa_size_stubs.
	(elf32_hppa_next_input_section): Likewise.
	(group_sections): Likewise.
	(get_local_syms): Likewise.
	(elf32_hppa_size_stubs): Adjust for split out functions.  Look for
	stubs on undefined syms too.
	(elf32_hppa_set_gp): Use bfd_link_hash* instead of elf_link_hash*.
	Only access htab elf fields when we have an elf hash table.
	* elf32-hppa.h (elf32_hppa_setup_section_lists): Declare.
	(elf32_hppa_next_input_section): Declare.

2002-05-04  Bob Byrnes  <byrnes@curl.com>

	* opncls.c (_bfd_new_bfd_contained_in): Check return value of
	_bfd_new_bfd.

2002-05-03  H.J. Lu  (hjl@gnu.org)

	* elfxx-mips.c (mips_elf_link_hash_entry): Add forced_local.
	(mips_elf_link_hash_newfunc): Initialize forced_local to false.
	(mips_elf_record_global_got_symbol): Call _bfd_mips_elf_hide_symbol
	to hide a global symbol.
	(_bfd_mips_elf_hide_symbol): Return if forced_local is true. Set
	forced_local to true. 

2002-05-02  Richard Henderson  <rth@redhat.com>

	* elf64-alpha.c (elf64_alpha_relocate_section): Force relative relocs
	vs SHN_UNDEF to zero.

2002-05-02  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_howto_raw <R_PPC64_SECTOFF>): Change to a
	16 bit reloc.
	<R_PPC64_SECTOFF_DS>: Likewise.
	(ppc64_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
	SECTOFF reloc.
	* elf32-ppc.c (ppc_elf_howto_raw <R_PPC_SECTOFF>): Correct.
	(ppc_elf_reloc_type_lookup): Map from BFD_RELOC_16_BASEREL to
	SECTOFF reloc.

	* elf64-ppc.c (ppc64_elf_addr16_ha_reloc): Delete.
	(ppc64_elf_ha_reloc): New function.
	(ppc64_elf_brtaken_reloc): New function.
	(ppc64_elf_sectoff_reloc): New function.
	(ppc64_elf_sectoff_ha_reloc): New function.
	(ppc64_elf_toc_reloc): New function.
	(ppc64_elf_toc_ha_reloc): New function.
	(ppc64_elf_toc64_reloc): New function.
	(ppc64_elf_unhandled_reloc): New function.
	(ppc64_elf_howto_raw): Use the above.
	<R_PPC64_RELATIVE>: Mark pc_relative, pcrel_offset.
	<R_PPC64_SECTOFF>: Not pc_relative or pcrel_offset.  Fix dst_mask.
	<R_PPC64_SECTOFF_DS>: Likewise.
	(IS_ABSOLUTE_RELOC): Update.
	(struct ppc_link_hash_table): Add have_undefweak.
	(ppc64_elf_link_hash_table_create): Init.
	(func_desc_adjust): Set have_undefweak.
	(ppc64_elf_func_desc_adjust): Call func_desc_adjust earlier.  Only
	add the .sfpr blr when have_undefweak.
	(ppc64_elf_setup_section_lists): Check hash table flavour.
	(ppc64_elf_next_input_section): Move output_section->owner test to
	ppc64elf.em.
	(ppc64_elf_set_toc): Rename to ppc64_elf_toc, remove info param
	and relocatable test.  Return TOCstart and don't set elf_gp.
	(ppc64_elf_relocate_section): Correct BRTAKEN/BRNTAKEN branch
	offset calculation.  Add assert on weak sym branch tweaks.
	* elf64-ppc.h (ppc64_elf_set_toc): Delete.
	(ppc64_elf_toc): Declare.
	(ppc64_elf_next_input_section): Update.
	
2002-05-01  Alan Modra  <amodra@bigpond.net.au>

	* syms.c (_bfd_stab_section_find_nearest_line): Don't bomb on NULL
	file_name.

2002-05-01  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (CROR_151515, CROR_313131): Define.
	(ppc64_elf_relocate_section): Use them.  Don't look for plt calls
	on R_PPC64_ADDR24 relocs.  Require a nop or no link reg on plt
	call branches.  Correct undefined weak destination.
	(ppc64_elf_func_desc_adjust): Always create at least one blr in
	.sfpr, and correct case where either only savef* or restf* is
	needed.

	Long branch stubs, multiple stub sections.
	* elf64-ppc.h (ppc64_elf_setup_section_lists): Declare.
	(ppc64_elf_next_input_section): Declare.
	* elf64-ppc.c: Move linker-only prototypes.
	(STUB_SUFFIX): Define.
	(enum ppc_stub_type): New.
	(struct ppc_stub_hash_entry): New.
	(struct ppc_branch_hash_entry): New.
	(struct ppc_link_hash_entry): Add stub_cache, oh.
	(struct ppc_link_hash_table): Add stub_hash_table etc.  Remove
	sstub.  Add sbrlt, srelbrlt, has_14bit_branch, stub_iteration.
	Rename plt_overflow to stub_error.
	(ppc_stub_hash_lookup): Define.
	(ppc_branch_hash_lookup): Define.
	(stub_hash_newfunc): New function.
	(branch_hash_newfunc): New function.
	(link_hash_newfunc): Init new fields.
	(ppc64_elf_link_hash_table_create): Likewise.
	(ppc64_elf_link_hash_table_free): New function.
	(ppc_stub_name): New function.
	(ppc_get_stub_entry): New function.
	(ppc_add_stub): New function.
	(create_linkage_sections): Use bfd_make_section_anyway.  Create
	.branch_lt and .rela.branch_lt sections.  Don't create .stub.
	(ppc64_elf_check_relocs): Set has_14bit_branch on R_PPC64_REL14*,
	and set up for plt call stubs.  Link func and func desc syms.
	(ppc64_elf_gc_sweep_hook): Handle REL14* as per REL24.
	(func_desc_adjust): Avoid hash lookup when func desc sym available
	via shortcut, and set links when processing.
	(ppc64_elf_hide_symbol): Likewise.
	(allocate_dynrelocs): Don't allocate stub section here.
	(ppc64_elf_size_dynamic_sections): Handle sbrlt and srelbrlt.
	Remove sstub code.
	(ppc_type_of_stub): New function.
	(build_one_stub): Delete.
	(ppc_build_one_stub): New function.
	(ppc_size_one_stub): New function.
	(ppc64_elf_setup_section_lists): New function.
	(ppc64_elf_next_input_section): New function.
	(group_sections): New function.
	(get_local_syms): New function.
	(ppc64_elf_size_stubs): Rewrite.
	(ppc64_elf_build_stubs): Rewrite.
	(ppc64_elf_relocate_section): Look up stub entry for REL24
	relocs.  Don't propagate REL14* to dynamic objects.  Look for long
	branch stubs if REL14* or REL24 relocs won't reach.
	(bfd_elf64_bfd_link_hash_table_free): Define.

2002-04-30  Mark Mitchell  <mark@codesourcery.com>

	* bfd/config.bfd: Add support for powerpc-*-windiss.

2002-04-30  Tom Rix  <trix@redhat.com>

	* xcofflink.c (xcoff_link_add_symbols): Always copy undef C_EXT
	symbol names into the hash table.

2002-04-28  Tom Rix  <trix@redhat.com>

	* coff-rs6000.c (xcoff_calculate_relocation) : Function table for
	calulating relocations. 
	(xcoff_complain_overflow) : Function table for relocation errors.
	(xcoff_ppc_relocate_section): Use relocation and complain function 
	tables. 
	(xcoff_complain_overflow_unsigned_func): New complain function. 
	(xcoff_complain_overflow_signed_func): Same.
	(xcoff_complain_overflow_bitfield_func): Same.
	(xcoff_complain_overflow_dont_func): Same.
	(xcoff_reloc_type_crel): New recot function.
	(xcoff_reloc_type_br): Same.
	(xcoff_reloc_type_ba): Same.
	(xcoff_reloc_type_toc): Same.
	(xcoff_reloc_type_rel): Same.
	(xcoff_reloc_type_neg): Same.
	(xcoff_reloc_type_pos): Same.
	(xcoff_reloc_type_fail): Same.
	(xcoff_reloc_type_noop): Same.
	* libxcoff.h : Declare common parts for xcoff64.
	* coff64-rs6000.c (xcoff64_ppc_relocate_section): Use relocation
	and complain function tables. 

2002-04-28  Alan Modra  <amodra@bigpond.net.au>

	* elf64-x86-64.c (struct elf64_x86_64_dyn_relocs): Comment typo.
	* elf32-hppa.c (elf32_hppa_final_link): Formatting.

2002-04-26  Alan Modra  <amodra@bigpond.net.au>

	* opncls.c (bfd_make_readable): Call bfd_section_list_clear.
	* xcofflink.c (xcoff_link_add_dynamic_symbols): Likewise.

	* elflink.h (elf_bfd_final_link): Ensure input bfd class is the
	same as the output before calling elf_link_input_bfd.

	* coffcode.h (coff_compute_section_file_positions): Set
	section_tail after shuffling section list.

2002-04-24  Christian Groessler <chris@groessler.org>

	* coff-z8k.c (extra_case): Fix R_IMM32 relocations: The
	addresses are 23bit with a special layout, not plain 32bit
	values.  Prevent relocation of immediate values.

2002-04-24  Chris G. Demetriou  <cgd@broadcom.com>

	* elfxx-mips.c (_bfd_mips_elf_print_private_bfd_data): If MDMX or
	MIPS-16 ASE flags are set, print something to indicate that.

2002-04-23  Alan Modra  <amodra@bigpond.net.au>

	* elf32-hppa.c (hppa_type_of_stub): Correct and simplify condition
	under which a plt call stub is used.
	(final_link_relocate): Similarly.
	(allocate_plt_static): Clear h-plabel except when plt entry is
	exclusively used for a plabel.
	(allocate_dynrelocs): Use the above to simplify plt sizing.
	(struct elf32_hppa_link_hash_table): Add has_22bit_branch.
	(elf32_hppa_link_hash_table_create): Init.
	(BL22_RP): Define.
	(hppa_build_one_stub): Use BL22_RP if has_22bit_branch.
	(elf32_hppa_check_relocs): Set has_22bit_branch.

	* elf32-hppa.c (elf32_hppa_check_relocs): Remove debug message.
	(final_link_relocate): Likewise.

2002-04-22  Jakub Jelinek  <jakub@redhat.com>

	* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Don't build
	search table if some FDE is DW_EH_PE_aligned encoded either.
	(_bfd_elf_write_section_eh_frame): Handle terminating FDE specially.

2002-04-22  Richard Smith  <richard@ex-parrot.com>
	    Jakub Jelinek  <jakub@redhat.com>

	* elf-eh-frame.c (struct eh_cie_fde): Add per_encoding_relative.
	(_bfd_elf_discard_section_eh_frame): Set it for CIEs with pcrel
	encoded personality.
	(_bfd_elf_write_section_eh_frame): Adjust pcrel encoded personality
	for CIE/FDE removal.

2002-04-20  Tom Rix  <trix@redhat.com>

	* coff64-rs6000.c (_bfd_xcoff64_swap_aux_in): Fix C_FILE auxent.

2002-04-20  Alan Modra  <amodra@bigpond.net.au>

	* archures.c (bfd_lookup_arch): Move the list order comment..
	(struct bfd_arch_info): ..to where it belongs.
	* bfd-in2.h: Regenerate.

	* archures.c (bfd_lookup_arch): Add comment on list order.
	(bfd_default_set_arch_mach): Use bfd_lookup_arch.
	* cpu-powerpc.c (bfd_powerpc_archs): Re-order so that the default
	is always at head of list.

2002-04-18  Nick Clifton  <nickc@cambridge.redhat.com>

	* coff-arm.c (coff_thumb_pcrel_12, coff_thumb_pcrel_9,
	insert_thumb_branch, record_thumb_to_arm_glue): Suppress
	definition of these functions for ARM_WINCE builds as they are
	not used.
        (SWAP_IN_RELOC_OFFSET, SWAP_OUT_RELOC_OFFSET): Do not define
	for ARM_WINCE builds.

2002-04-18  Nick Clifton  <nickc@cambridge.redhat.com>

	* coff-arm.c (bfd_arm_process_before_allocation): 

2002-04-17  J"orn Rennecke <joern.rennecke@superh.com>

	* cpu-sh.c (scan_mach): Delete.
	(arch_info_struct): Replace scan_mach with bfd_default_scan.
	(bfd_sh_arch): Likewise.

2002-04-16  Nick Clifton  <nickc@cambridge.redhat.com>

	* ihex.c (ihex_write_object_contents): Fix check for records
	crossing 64K boundaries.

2002-04-16  Alan Modra  <amodra@bigpond.net.au>

	* elf32-m32r.c (m32r_elf_add_symbol_hook): Check the hash table
	type rather than just assuming entries are ELF.
	* elf32-sh64.c (sh64_elf_add_symbol_hook): Likewise.
	* elf64-sh64.c (sh64_elf64_add_symbol_hook): Likewise.
	* elf64-sparc.c (sparc64_elf_add_symbol_hook): Likewise.
	* elf64-mmix.c (mmix_elf_add_symbol_hook): Use bfd_link_hash_entry
	rather than elf_link_hash_entry.

2002-04-15  Richard Henderson  <rth@redhat.com>

	* elf32-mips.c (mips_elf32_object_p): Revert 0404 fragment: allow
	n32 binaries.

2002-04-15  Michael Snyder  <msnyder@redhat.com>

	* opncls.c (bfd_close): Write contents if writeable.
	Minor formatting tidy-ups.

2002-04-15  Alan Modra  <amodra@bigpond.net.au>

	* elf32-ppc.c (ppc_elf_add_symbol_hook): Check the hash table type.

2002-04-12  Michael Snyder  <msnyder@redhat.com>

	* bfd-in.h (bfd_get_section_lma): New access macro.
	Minor white-space fix-up.

2002-04-12  Alan Modra  <amodra@bigpond.net.au>

	* elf.c (prep_headers): Don't zero EI_OSABI, EI_ABIVERSION or
	header pad.

2002-04-09  DJ Delorie  <dj@redhat.com>

	* elfarm-nabi.c (elf32_arm_howto_table): Fix ABS16 masks.

2002-04-09  Casper S. Hornstrup <chorns@users.sourceforge.net>

	* coffcode.h (coff_read_word): New.
	(coff_compute_checksum): New.
	(coff_apply_checksum): New.
	(coff_write_object_contents): Call coff_apply_checksum () to
	apply checksum to PE image.

2002-04-08  Randolph Chung  <tausq@debian.org>

	* elf32-hppa.c (hppa_unwind_entry_compare): Move to elf-hppa.h.
	(elf32_hppa_final_link): Split out sorting logic to..
	* elf-hppa.h (elf_hppa_sort_unwind): ..here.
	(elf_hppa_final_link): Call elf_hppa_sort_unwind.

2002-04-07  Andrew Cagney  <ac131313@redhat.com>

	* configure.in: Add missing ``|'' to powerpc-*-aix4.[4-9]*
	pattern.
	* configure: Re-generate.

2002-04-07  Andrew Cagney  <ac131313@redhat.com>

	* configure.in: Only define AIX_CORE_DUMPX_CORE when AIX version
	is greater or equal to 4.3.3.
	* configure: Regenerate.
	Fix PR gdb/344.

2002-04-05  Hans-Peter Nilsson  <hp@axis.com>

	* elf32-cris.c (cris_elf_howto_table) <R_CRIS_16_PCREL,
	R_CRIS_32_PCREL>: Fix typo in name.
	(cris_elf_check_relocs): Always create .rela.got here when
	R_CRIS_16_GOTPLT or R_CRIS_32_GOTPLT is seen.
	(elf_cris_adjust_gotplt_to_got): Don't create .rela.got here;
	assume it's created.

2002-04-04  Daniel Jacobowitz  <drow@mvista.com>

	* aout-adobe.c (aout_32_bfd_link_hash_table_free): Define.
	* aout-target.h (MY_bfd_link_hash_table_free): Conditionally
	define.
	* aout-tic30.c (MY_bfd_link_hash_table_free): Likewise.
	* bfd.c (bfd_link_hash_table_free): Define.
	* binary.c (binary_bfd_link_hash_table_free): Define.
	* bout.c (b_out_bfd_link_hash_table_free): Define.
	* coff-rs6000.c (rs6000coff_vec): Include
	_bfd_generic_link_hash_table_free.
	(pmac_xcoff_vec): Likewise.
	* coff64-rs6000.c (rs6000coff64_vec): Likewise.
	(aix5coff64_vec): Likewise.
	* coffcode.h (coff_bfd_link_hash_table_free): Conditionally define.
	* elf-m10300.c (elf32_mn10300_link_hash_table_free): New function.
	(bfd_elf32_bfd_link_hash_table_free): Define.
	* elf32-hppa.c (elf32_hppa_link_hash_table_free): New function.
	(bfd_elf32_bfd_link_hash_table_free): Define.
	* elfxx-target.h (bfd_elfNN_bfd_link_hash_table_free): Conditionally
	define.
	* i386msdos.c (msdos_bfd_link_hash_table_free): Define.
	* i386os9k.c (os9k_bfd_link_hash_table_free): Define.
	* ieee.c (ieee_bfd_link_hash_table_free): Define.
	* ihex.c (ihex_bfd_link_hash_table_free): Define.
	* libbfd-in.h (_bfd_nolink_bfd_link_hash_table_free): Define.
	(_bfd_generic_link_hash_table_free): Add prototype.
	* libcoff-in.h (_bfd_xcoff_bfd_link_hash_table_free): Add prototype.
	* libecoff.h (_bfd_ecoff_bfd_link_hash_table_free): Define.
	* linker.c (_bfd_generic_link_hash_table_free): New function.
	* mmo.c (mmo_bfd_link_hash_table_free): Define.
	* nlm-target.h (nlm_bfd_link_hash_table_free): Define.
	* oasys.c (oasys_bfd_link_hash_table_free): Define.
	* ppcboot.c (ppcboot_bfd_link_hash_table_free): Define.
	* som.c (som_bfd_link_hash_table_free): Define.
	* srec.c (srec_bfd_link_hash_table_free): Define.
	* tekhex.c (tekhex_bfd_link_hash_table_free): Define.
	* versados.c (versados_bfd_link_hash_table_free): Define.
	* vms.c (vms_bfd_link_hash_table_free): New function.
	* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_free): New function.

	* coff-arm.c (coff_arm_link_hash_table_create): Use bfd_malloc
	instead of bfd_alloc.
	* coff-h8300.c (h8300_coff_link_hash_table_create): Likewise.
	* coff-mcore.c (coff_mcore_link_hash_table_create): Likewise.
	* coff-ppc.c (ppc_coff_link_hash_table_create): Likewise.
	* cofflink.c (_bfd_coff_link_hash_table_create): Likewise.
	* ecoff.c (_bfd_ecoff_bfd_link_hash_table_create): Likewise.
	* elf-m10300.c (elf32_mn10300_link_hash_table_create): Likewise.
	* elf.c (_bfd_elf_link_hash_table_create): Likewise.
	* elf32-arm.h (elf32_arm_link_hash_table_create): Likewise.
	* elf32-cris.c (elf_cris_link_hash_table_create): Likewise.
	* elf32-hppa.c (elf32_hppa_link_hash_table_create): Likewise.
	* elf32-i386.c (elf_i386_link_hash_table_create): Likewise.
	* elf32-m68k.c (elf_m68k_link_hash_table_create): Likewise.
	* elf32-s390.c (elf_s390_link_hash_table_create): Likewise.
	* elf32-sh.c (sh_elf_link_hash_table_create): Likewise.
	* elf64-alpha.c (elf64_alpha_bfd_link_hash_table_create): Likewise.
	* elf64-ppc.c (ppc64_elf_link_hash_table_create): Likewise.
	* elf64-s390.c (elf_s390_link_hash_table_create): Likewise.
	* elf64-sh64.c (sh64_elf64_link_hash_table_create): Likewise.
	* elf64-sparc.c (sparc64_elf_bfd_link_hash_table_create): Likewise.
	* elf64-x86-64.c (elf64_x86_64_link_hash_table_create): Likewise.
	* elfxx-mips.c (_bfd_mips_elf_link_hash_table_create): Likewise.
	* linker.c (_bfd_generic_link_hash_table_create): Likewise.
	* m68klinux.c (linux_link_hash_table_create): Likewise.
	* sparclinux.c (linux_link_hash_table_create): Likewise.
	* sunos.c (sunos_link_hash_table_create): Likewise.
	* xcofflink.c (_bfd_xcoff_bfd_link_hash_table_create): Likewise.

	* targets.c: Add _bfd_link_hash_table_free to xvec.

	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
	* libcoff.h: Regenerate.

2002-04-04  Alan Modra  <amodra@bigpond.net.au>

	* dep-in.sed: Cope with absolute paths.
	* Makefile.am (dep.sed): Subst TOPDIR, and not INCDIR.
	Run "make dep-am".
	* Makefile.in: Regenerate.
	* coff-arm.c: Fix copyright date.
	* cpu-h8300.c: Likewise.
	* cpu-i370.c: Likewise.
	* cpu-s390.c: Likewise.
	* cpu-mips.c: Likewise.
	* po/SRC-POTFILES.in: Regenerate.

2002-04-04  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>

	* Makefile.am: Add elfxx-mips.c to the known backends.
	(elf32-mips.lo): remove dependency to coff/external.h.
	* Makefile.in: Regenerate.
	* configure.in: Add elfxx-mips.lo to all vectors using elf32-mips.lo
	Remove elf32-mips.lo from 64 bit vectors. Update dependencies
	accordingly.
	* configure: Regenerate.
	* elf-bfd.h: Move all MIPS ELF specific prototypes to elfxx-mips.h.
	(irix_compat_t): IRIX compatibility level, moved from elf32-mips.c.
	(elf_backend_mips_irix_compat, elf_backend_mips_rtype_to_howto): New
	MIPS specific backend functions.
	* elf32-mips.c: Moved most code to elfxx-mips.c.
	(mips_elf_hi16_reloc): Rename from _bfd_mips_elf_hi16_reloc and make
	static.
	(mips_elf_lo16_reloc): Likewise, was _bfd_mips_elf_lo16_reloc.
	(mips_elf_got16_reloc): Likewise, was _bfd_mips_elf_got16_reloc.
	(mips_elf_gprel32_reloc): Likewise, was _bfd_mips_elf_gprel32_reloc.
	(mips_elf32_rtype_to_howto): Rename from mips_rtype_to_howto. Changed
	interface to allow selection of the right REL or RELA howto table.
	(mips_elf32_object_p): Rename from _bfd_mips_elf_object_p and made
	static. Let it refuse n32 objects.
	(elf32_mips_grok_prstatus): Rename from _bfd_elf32_mips_grok_prstatus.
	(elf32_mips_grok_psinfo): Rename from _bfd_elf32_mips_grok_psinfo.
	(elf32_mips_discard_info): Rename from _bfd_elf32_mips_discard_info.
	(elf32_mips_ignore_discarded_relocs): Rename from
	_bfd_elf32_mips_ignore_discarded_relocs.
	(elf32_mips_write_section): Rename from _bfd_elf32_mips_write_section.
	(elf32_mips_irix_compat): New function, replaces IRIX_COMPAT.
	(elf_mips_howto_table_rela): Remove.
	* elf64-mips.c: Moved most code to elfxx-mips.c.
	(bfd_elf64_bfd_reloc_type_lookup): Make static.
	(mips_elf64_rtype_to_howto): New function.
	(mips_elf64_object_p): Likewise.
	(elf64_mips_irix_compat): Likewise.
	* elfxx-mips.c: New file containing common code merged together from
	elf32-mips.c and elf64-mips.c.
	* elfxx-mips.h: New file containing MIPS specific prototypes from
	elf-bfd.h.
	* elfxx-target.h: Add handling for elf_backend_mips_irix_compat and
	elf_backend_mips_rtype_to_howto.

2002-04-04  Alan Modra  <amodra@bigpond.net.au>

	* srec.c (MAXCHUNK, Chunk): Revise comments.
	(srec_write_record): Correct buffer size.
	(srec_write_header): Do without intermediate buffer.
	(srec_write_section): Validate Chunk.
	(srec_write_terminator): Pass NULL instead of dummy buffer.
	(srec_write_symbols): Pass file and symbol names directly to
	bfd_bwrite so sprintf won't overflow buffer.

2002-04-03  Jakub Jelinek  <jakub@redhat.com>

	* elf32-sparc.c (elf32_sparc_relocate_section): Don't emit dynamic
	PC relative relocs against hidden symbols.
	* elf64-sparc.c (sparc64_elf_relocate_section): Likewise.

2002-04-03  Alan Modra  <amodra@bigpond.net.au>

	* elf.c (_bfd_elf_make_section_from_shdr): When setting section
	LMAs, loop over segments until p_vaddr and p_memsz specify an
	extent enclosing the section.

2002-04-02  Nick Clifton  <nickc@cambridge.redhat.com>

	* ihex.c (ihex_write_object_contents): Do not allow records to
	cross a 64K boundary - wrap if necessary.

2002-04-01  Nathan Williams  <nathanw@wasabisystems.com>

	* elf.c (elfcore_netbsd_get_lwpid): Fix off-by-one error
	which caused the returned LWP ID to always be 0.

2002-04-01  Richard Henderson  <rth@redhat.com>

	* elf32-sparc.c (WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
	(elf32_sparc_relocate_section): Use it to figure out when to
	initialize .got entries.
	* elf64-sparc.c: Similarly.

2002-03-28  Alan Modra  <amodra@bigpond.net.au>

	* linker.c (link_action): Ignore duplicate warning syms.
	(_bfd_generic_link_write_global_symbol): Follow warning symbol link.
	* elflink.h (elf_adjust_dynstr_offsets): Likewise.
	(elf_adjust_dynamic_symbol): Likewise.
	(elf_export_symbol): Likewise.
	(elf_link_find_version_dependencies): Likewise.
	(elf_link_assign_sym_version): Likewise.
	(elf_link_sec_merge_syms): Likewise.
	(elf_link_output_extsym): Likewise.
	(elf_gc_sweep_symbol): Likewise.
	(elf_gc_propagate_vtable_entries_used): Likewise.
	(elf_gc_smash_unused_vtentry_relocs): Likewise.
	(elf_gc_allocate_got_offsets): Likewise.
	(elf_collect_hash_codes): Likewise.
	* elflink.c (elf_link_renumber_hash_table_dynsyms): Likewise.
	* elf-hppa.h (elf_hppa_unmark_useless_dynamic_symbols): Likewise.
	(elf_hppa_remark_useless_dynamic_symbols): Likewise.
	* elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Likewise.
	* elf32-arm.h (elf32_arm_discard_copies): Likewise.
	* elf32-cris.c (elf_cris_adjust_gotplt_to_got): Likewise.
	(elf_cris_discard_excess_dso_dynamics): Likewise.
	* elf32-hppa.c (clobber_millicode_symbols): Likewise.
	(mark_PIC_calls): Likewise.
	(allocate_plt_static): Likewise.
	(allocate_dynrelocs): Likewise.
	(readonly_dynrelocs): Likewise.
	* elf32-i386.c (allocate_dynrelocs): Likewise.
	(readonly_dynrelocs): Likewise.
	* elf32-i370.c (i370_elf_adjust_dynindx): Likewise.
	* elf32-m68k.c (elf_m68k_discard_copies): Likewise.
	* elf32-mips.c (mips_elf_output_extsym): Likewise.
	(mips_elf_sort_hash_table_f): Likewise.
	(mips_elf_check_mips16_stubs): Likewise.
	* elf32-s390.c (allocate_dynrelocs): Likewise.
	(readonly_dynrelocs): Likewise.
	* elf32-sh.c (sh_elf_discard_copies): Likewise.
	* elf32-xstormy16.c (xstormy16_relax_plt_check): Likewise.
	(xstormy16_relax_plt_realloc): Likewise.
	* elf64-alpha.c (elf64_alpha_calc_got_offsets_for_symbol): Likewise.
	(elf64_alpha_output_extsym): Likewise.
	* elf64-hppa.c (elf64_hppa_mark_exported_functions): Likewise.
	* elf64-mips.c (mips_elf64_sort_hash_table_f): Likewise.
	(mips_elf64_check_mips16_stubs): Likewise.
	(mips_elf64_output_extsym): Likewise.
	* elf64-ppc.c (func_desc_adjust): Likewise.
	(allocate_dynrelocs): Likewise.
	(readonly_dynrelocs): Likewise.
	* elf64-s390.c (allocate_dynrelocs): Likewise.
	(readonly_dynrelocs): Likewise.
	* elf64-sh64.c (sh64_elf64_discard_copies): Likewise.
	* elf64-x86-64.c (allocate_dynrelocs): Likewise.
	(readonly_dynrelocs): Likewise.
	* elfxx-ia64.c (elfNN_ia64_global_dyn_sym_thunk): Likewise.
	* aoutx.h (aout_link_write_other_symbol): Likewise.
	* cofflink.c (_bfd_coff_write_task_globals): Likewise.
	(_bfd_coff_write_global_sym): Likewise.
	* i386linux.c (linux_tally_symbols): Likewise.
	* m68klinux.c (linux_tally_symbols): Likewise.
	* sparclinux.c (linux_tally_symbols): Likewise.
	* pdp11.c (aout_link_write_other_symbol): Likewise.
	* sunos.c (sunos_scan_dynamic_symbol): Likewise.
	* xcofflink.c (xcoff_build_ldsyms): Likewise.
	(xcoff_write_global_symbol): Likewise.

	* cofflink.c (_bfd_coff_final_link): Formatting.
	* cpu-mips.c (mips_compatible): Make static, prototype.
	* elf32-i386.c (elf_i386_check_relocs): Formatting.
	* elf32-sh.c (sh_elf_size_dynamic_sections): Likewise.
	* elf64-alpha.c (elf64_alpha_output_extsym): Likewise.
	* elf64-mips.c (mips_elf64_sort_hash_table): Likewise.
	(mips_elf64_final_link): Likewise.
	* elflink.h (elf_link_find_version_dependencies): Remove duplicate
	prototype.

2002-03-27  Nick Clifton  <nickc@cambridge.redhat.com>

	* coff-arm.c (SWAP_IN_RELOC_OFFSET): Define.
	(SWAP_OUT_RELOC_OFFSET): Define.

2002-03-27  Gregory Steuck <greg@nest.cx>

	* elf.c (_bfd_elf_get_symtab_upper_bound): Leave space for
	terminating NULL if empty symbol table.
	(_bfd_elf_get_dynamic_symtab_upper_bound): Likewise.

2002-03-26  H.J. Lu  (hjl@gnu.org)

	* elflink.h (elf_link_input_bfd): Revert the last change since
	the gcc exception handling isn't fixed yet.

2002-03-26  H.J. Lu  (hjl@gnu.org)

	* elflink.h (elf_link_input_bfd): Complain about relocations
	against local symbols in discarded sections.

2002-03-26  Alan Modra  <amodra@bigpond.net.au>

	* elflink.h (elf_gc_mark): Don't recurse into non-ELF sections.

2002-03-23  Alan Modra  <amodra@bigpond.net.au>

	* elf.c (_bfd_elf_make_section_from_shdr): Don't set lma based on
	section file offset for !SEC_LOAD sections.

2002-03-21  Richard Earnshaw  <rearnsha@arm.com>

	* elf32-arm.h (elf32_arm_final_link_relocate <case R_ARM_GOTOFF>,
	<case R_ARM_GOT>): Handle relocations to Thumb functions.

2002-03-21  Alan Modra  <amodra@bigpond.net.au>

	* coff64-rs6000.c (_bfd_xcoff64_put_symbol_name): Prototype.
	Whitespace changes.
	* archive.c: Update copyright date.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.
	* Makefile.am: Run "make dep-am"
	* Makefile.in: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.

2002-03-20  Daniel Jacobowitz  <drow@mvista.com>

	* dwarf2.c (struct funcinfo): Move up.
	(lookup_address_in_function_table): New argument function_ptr.
	Set it.
	(lookup_address_in_line_table): New argument function.  If function
	is non-NULL, use it to handle ``addr'' before the first line note of
	the function.
	(comp_unit_find_nearest_line): Update and swap calls to
	lookup_address_in_function_table and lookup_address_in_line_table.
	* syms.c (_bfd_stab_section_find_nearest_line): Use the first
	N_SLINE encountered if we see an N_FUN before any N_SLINE.

2002-03-20  Tom Rix  <trix@redhat.com>

	* coff-rs6000.c (_bfd_xcoff_stat_arch_elt): Renamed from 
	_bfd_xcoff_generic_stat_arch_elt.  Fix format check.
	* coff64-rs6000.c :  Use _bfd_xcoff_stat_arch_elt. 

2002-03-19  Tom Rix  <trix@redhat.com>

	* xcofflink.c (_bfd_xcoff_bfd_link_add_symbols): Look through all 
	dynamic objects in archives.

2002-03-19  Hans-Peter Nilsson  <hp@bitrange.com>

	* elflink.h (NAME(bfd_elf,record_link_assignment)): Don't set
	STT_NOTYPE symbols to STT_OBJECT.

2002-03-18  Jan Hubicka  <jh@suse.cz>

	* cpu-i386.c (bfd_x86_64_arch): Rename to "i386:x86-64"

2002-03-18  Tom Rix  <trix@redhat.com>

	* aix5ppc.core.c : New file for AIX 5 64 bit core support.
	* bfd-in.h : Add bfd_xcoff_ar_archive_set_magic declaration.
	* coff-rs6000 (do_pad) : New function for archive padding.
	(do_copy) : New function for object file copying in archives.
	(do_shared_object_padding) : New function for padding shared
	objects to their text section alignment in archives.
	(bfd_xcoff_ar_achive_set_magic) : Stub.
	(xcoff_write_armap_big) : Use do_copy and do_pad.
	(xcoff_write_archive_contents_big) : Use do_shared_object_padding,
	do_copy and do_pad.
	* coff64-rs6000.c (xcoff64_write_ojbect_contents) : Use
	bfd_xcoff_magic_number. 
	(xcoff64_bad_format_hook) : New function for _bfd_bad_format_hook
	fop.
	(xcoff_backend_data_r) : Use xcoff64_bad_format_hook.
	(bfd_xcoff_aix5_backend_data) : New Aix 5 backend data.
	(aix5coff64_vec) : New Aix 5 target aix5coff64-rs6000.
	* rs6000-core.c : Update copyright date.
	* xcofflink.c (bfd_xcoff_size_dynamic_sections): Check for NULL 
	csectpp.
	* coffcode.h (coff_new_section_hook) : Use new accessor macros.
	(coff_set_arch_mach_hook) : Add Aix 5 U64_TOCMAGIC magic #.
	(coff_set_flags) : Use bfd_xcoff_magic_number.
	* libxcoff.h (bfd_xcoff_is_xcoff64): Add U64_TOCMAGIC.
	* configure.in : Add powerpc-*-aix5 and rs6000-*-aix5 support.
	* Makefile.am : Same.
	* config.bfd : Same.
	* targets.c : Same.
	* configure : Regnerate.
	* Makefile.in : Same.
	* bfd-in2.h : Same.

2002-03-18  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/fr.po: Updated version.

2002-03-18  Alan Modra  <amodra@bigpond.net.au>

	* libbfd.c (bfd_write_bigendian_4byte_int): Return true iff success.
	* libbfd.h: Regenerate.
	* archive.c (coff_write_armap): Pass on failures from
	bfd_write_bigendian_4byte_int.

2002-03-14  H.J. Lu <hjl@gnu.org>

	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Set the BFD
	error to bfd_error_nonrepresentable_section for reinit_array
	section in DSO.

2002-03-14  Nick Clifton  <nickc@cambridge.redhat.com>

	* coffcode.h (coff_slurp_symbol_table): When adding BSF_WEAK flag,
	OR it in rather than replacing previously selected flags.

	* elfxx-target.h (TARGET_BIG_SYM): Set ar_max_namelen to 15.
	(TARGET_LITTLE_SYM): Set ar_max_namelen to 15.

2002-03-14  Alan Modra  <amodra@bigpond.net.au>

	* cpu-mips.c (mips_compatible): New.  Don't check bits_per_word.
	(N): Use the above.
	* elflink.h (elf_bfd_final_link): Revert last change.  Instead,
	ensure reloc size matches before calling elf_link_input_bfd.
	Add an assert to check reloc size when counting output relocs.

2002-03-14  Nick Clifton  <nickc@cambridge.redhat.com>

	* mmo.c (mmo_get_loc): Return NULL rather than false.

2002-03-13  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/fr.po: Updated version.

2002-03-13  Alan Modra  <amodra@bigpond.net.au>

	* archures.c (bfd_default_compatible): Test bits_per_word.
	* cpu-i386.c (i386_compatible): Remove.  Replace occurrences with
	bfd_default_compatible.
	* cpu-i370.c (i370_compatible): Likewise.
	* cpu-sparc.c (sparc_compatible): Likewise.
	* cpu-h8300.c (compatible): Test in->arch == out->arch.

	* elflink.h: Formatting fixes.
	(elf_link_output_extsym): Merge undefined and undef weak cases.

	* elflink.h (elf_bfd_final_link): Only call elf_link_input_bfd
	when word size of input matches output word size.

2002-03-12  Andreas Jaeger  <aj@suse.de>

	* cpu-i386.c (i386_compatible): New.  Use it instead of
	bfd_default_compatible.

2002-03-07  H.J. Lu  (hjl@gnu.org)

	* coff-sh.c (shcoff_reloc_map): Use bfd_reloc_code_real_type
	as the type for bfd_reloc_val.

2002-03-05  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* elf-hppa.h (elf_hppa_is_dynamic_loader_symbol): New function.
	(elf_hppa_relocate_section): Ignore undefined dynamic loader symbols.
	(elf_hppa_final_link_relocate): Correct relocations for indirect
	references to local data through the DLT.  Fix .opd creation for
	local symbols using R_PARISC_LTOFF_FPTR32 and R_PARISC_FPTR64
	relocations.  Use e_lsel selector for R_PARISC_DLTIND21L,
	R_PARISC_LTOFF_FPTR21L and R_PARISC_LTOFF_TP21L as per
	"Processor-Specific ELF for PA_RISC, Version 1.43" document.
	Similarly, use e_rsel for DLT and LTOFF 'R' relocations.
	* elf32-hppa.c (final_link_relocate): Revise relocation selectors
	as per "Processor-Specific ELF for PA_RISC, Version 1.43" document.

2002-03-05  Jakub Jelinek  <jakub@redhat.com>

	* merge.c (_bfd_merge_sections): Don't segfault if there
	is nothing to merge due to GC.

2002-03-05  Alan Modra  <amodra@bigpond.net.au>

	* elf32-hppa.c (clobber_millicode_symbols): Remove hack to keep
	symbols that have been forced local.

	* elflink.h (elf_bfd_final_link): Call elf_link_output_extsym
	to output forced local syms for non-shared link.
	(elf_link_output_extsym): Tweak condition for calling backend
	adjust_dynamic_symbol so that previous behaviour is kept.
	Whitespace changes throughout file.

2002-03-04  H.J. Lu <hjl@gnu.org>

	* elf.c (bfd_section_from_shdr): Handle special sections,
	.init_array, .fini_array and .preinit_array.
	(elf_fake_sections): Likewise.

	* elflink.h (NAME(bfd_elf,size_dynamic_sections)): Create the
	DT entry only if the section is in output for .init_array,
	.fini_array and .preinit_array. Complain about .preinit_array
	section in DSO.
	(elf_bfd_final_link): Warn zero size for .init_array,
	.fini_array and .preinit_array sections.

	* elfxx-ia64.c (elfNN_ia64_section_from_shdr): Remove
	SHT_INIT_ARRAY, SHT_FINI_ARRAY and SHT_PREINIT_ARRAY.
	(elfNN_ia64_fake_sections): Remove .init_array, .fini_array and
	.preinit_array.

2002-03-04  Alan Modra  <amodra@bigpond.net.au>

	* configure.in (WIN32LIBADD): Don't eval PICFLAG assignment.
	* configure: Regenerate.

2002-03-02  Tom Rix  <trix@redhat.com>

	* coff64-rs6000.c (xcoff64_howto_table): Replace howto types with
	symbolic equiv.
	* coff-rs6000.c (xcoff_howto_table): Same.

2002-03-01  David Mosberger  <davidm@hpl.hp.com>

	* elflink.h (size_dynamic_sections): If section named
	".preinit_array" exists, create DT_PREINIT_ARRAY and
	DT_PREINIT_ARRAYSZ entries in dynamic table.  Analogously for
	".init_array" and ".fini_array".
	(elf_bfd_final_link): Handle DT_PREINIT_ARRAYSZ, DT_INIT_ARRAYSZ,
	DT_FINI_ARRAYSZ, DT_PREINIT_ARRAY, DT_INIT_ARRAY, and
	DT_FINI_ARRAY.

2002-02-26  Andrew Macleod  <amacleod@cygnus.com>

	* elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
	dynsyms.

2002-02-25  Alan Modra  <amodra@bigpond.net.au>

	* elf64-hppa.h: Update copyright date.

	* elf64-ppc.c (ppc64_elf_check_relocs): Warning fix.
	(ppc64_elf_relocate_section): Don't generate power4 style branch
	hints for *_BRTAKEN and *_BRNTAKEN relocs.

2002-02-22  Jakub Jelinek  <jakub@redhat.com>

	* elf64-sh64.c (sh_elf64_relocate_section): Fix a typo from my
	last patch.
	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.

2002-02-21  Andreas Jaeger  <aj@suse.de>

	* elf64-x86-64.c: Major rework that introduces all recent changes
	to the x86-64 backend.  Get a closer match to elf32-i386.
	(struct elf64_x86_64_dyn_relocs): Rename from
	elf64_x86_64_pcrel_relocs_copied, add additional fields.  Change
	all users.
	(struct elf64_x86_64_link_hash_table): Add short cuts to some
	sections.
	(link_hash_newfunc): Rename from elf64_x86_64_link_hash_newfunc,
	remove casts, initialize new hash members.
	(create_got_section): New.
	(elf64_x86_64_create_dynamic_sections): New.
	(elf64_x86_64_copy_indirect_symbol): New.
	(elf64_x86_64_check_relocs): Don't allocate space for dynamic
	relocs, .got or .relgot here but do it in allocate_dynrelocs.
	Reference count possible .plt and .got entries.  Don't test input
	section SEC_READONLY here to try to avoid copy relocs, and keep
	dyn_relocs regardless of ELF_LINK_NON_GOT_REF.  Don't set
	DF_TEXTREL here.  Delay setting of variables until needed.  Cache
	pointer to "sreloc" section in elf_section_data. Tweak condition
	under which .got created.  Report files with bad relocation
	section names.
	(elf64_x86_64_gc_sweep_hook): Sweep dyn_relocs and local_dynrel.
	Reference count possible .plt entries.  Don't deallocate .got and
	.relgot space here.
	(elf64_x86_64_adjust_dynamic_symbol): Handle nocopyreloc.  Don't
	do copy reloc processing for weakdefs.  Remove redundant casts and
	aborts.  Delay setting of vars until needed.  Move creation of
	dynamic symbols and allocation of .plt and .rela.plt to
	allocate_dynrelocs.  Replace BFD_ASSERT with abort.
	(WILL_CALL_FINISH_DYNAMIC_SYMBOL): New.
	(allocate_dynrelocs): New.
	(readonly_dynrelocs): New.
	(elf64_x86_64_size_dynamic_sections): Call readonly_dynrelocs.
	Allocate space for dyn relocs.  Replace BFD_ASSERT with abort.
	Zero out the dynamic allocated content space.
	(elf64_x86_64_discard_copies): Removed.
	(elf64_x86_64_relocate_section): Make use of dynamic section
	short-cuts.  Localise vars, and delay setting.  Better error
	reporting, replace BFD_ASSERT with abort.  Check
	ELF_LINK_HASH_DEF_DYNAMIC to see if a symbol is not defined in the
	regular object file and tread the weak definition as the normal
	one.  Don't discard relocs for undefweak or undefined symbols and
	check !DEF_REGULAR as well as DEF_DYNAMIC in test for avoided copy
	relocs.
	(elf64_x86_64_finish_dynamic_symbol): Don't copy relocs for
	symbols that have been forced local.  Use same test to decide if
	we can use a relative reloc for got as relocate_section.  Expand
	SHN_UNDEF comment.  Move expressions out of function calls.
	Replace BFD_ASSERT with abort.
	(bfd_elf64_bfd_final_link): Removed.
	(elf_backend_copy_indirect_symbol): Define.

2002-02-20  Tom Rix  <trix@redhat.com>

	* coff-rs6000.c (xcoff_howto_table): Add 16 bit R_BA.
	(_bfd_xcoff_reloc_type_lookup): Use it.
	* coff64-rs6000.c (xcoff64_howto_table): Same.
	(xcoff64_reloc_type_lookup): Same.

2002-02-20  Peter Schauer  <pes@regent.e-technik.tu-muenchen.de>

	* osf-core.c (osf_core_vec):  OSF/1 (Digital Unix) core files are
	little endian.

2002-02-19  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* archures.c (bfd_mach_s390_esa): Rename to bfd_mach_s390_31.
	(bfd_mach_s390_esame): Rename to bfd_mach_s390_64.
	* bfd-in2.h: Regenerate.
	* cpu-s390.c (arch_info_struct): Use renamed architecture defines.
	Replace architecture name "s390" with "s390:31-bit" and "s390:esame"
	with "s390:64-bit".
	* elf32-s390.c (elf_howto_table): Add 32 bit pc relative relocations.
	(elf_s390_reloc_type_lookup): Likewise.
	(elf_s390_check_relocs): Likewise.
	(elf_s390_gc_sweep_hook): Likewise.
	(elf_s390_relocate_section): Likewise.
	(elf_s390_object_p): Use renamed architecture define.
	* elf64-s390.c (elf_s390_object_p): Use renamed architecture define.

2002-02-19  Frank Ch. Eigler  <fche@redhat.com>

	* syms.c (stt[]): Sorted.  Added .init/.fini -> "t" mapping.

2002-02-19  Jakub Jelinek  <jakub@redhat.com>

	* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Enable
	absptr -> pcrel optimization for shared libs.
	Only create minimal .eh_frame_hdr if absptr FDE encoding in shared
	library cannot be converted to pcrel.
	(_bfd_elf_eh_frame_section_offset): Return -2 if making absptr
	relative.
	* elf32-i386.c (elf_i386_relocate_section): If
	_bfd_elf_section_offset returned -2, skip, but make sure the
	relocation is installed.
	* elf32-arm.h (elf32_arm_final_link_relocate): Likewise.
	* elf32-cris.c (cris_elf_relocate_section): Likewise.
	* elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
	* elf32-i370.c (i370_elf_relocate_section): Likewise.
	* elf32-m68k.c (elf_m68k_relocate_section): Likewise.
	* elf32-ppc.c (ppc_elf_relocate_section): Likewise.
	* elf32-s390.c (elf_s390_relocate_section): Likewise.
	* elf32-sh.c (sh_elf_relocate_section): Likewise.
	* elf32-sparc.c (elf32_sparc_relocate_section): Likewise.
	* elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
	* elf64-s390.c (elf_s390_relocate_section): Likewise.
	* elf64-sh64.c (sh_elf64_relocate_section): Likewise.
	* elf64-sparc.c	(sparc64_elf_relocate_section): Likewise.
	* elf64-x86-64.c (elf64_x86_64_relocate_section): Likewise.
	* elf64-alpha.c (elf64_alpha_relocate_section): Handle
	_bfd_elf_section_offset returning -2 the same way as -1.
	* elfxx-ia64.c (elfNN_ia64_install_dyn_reloc): Likewise.
	* elf32-mips.c (mips_elf_create_dynamic_relocation): Add FIXME
	and BFD_ASSERT.
	* elf64-mips.c (mips_elf64_create_dynamic_relocation): Likewise.

2002-02-18  Tom Rix  <trix@redhat.com>

	* xcofflink.c (bfd_xcoff_link_gernate_rtinit): Add -brtl support.
	(bfd_xcoff_size_dynamic_sections): Same.
	* bfd-in.h (bfd_xcoff_link_generate_rtinit): Same.
	(bfd_xcoff_size_dynamic_sections): Same.
	* coff-rs6000.c (xcoff_generate_rtinit): Same.
	* coff-rs646000.c (xcoff64_generate_rtinit): Same.
	* libxcoff.h (struct xcoff_backend_data_rec): Same.
	* xcofflink.c (xcoff_build_ldsyms, xcoff_link_add_symbols): Clean.
	* bfd-in2.h: Regenerate.

2002-02-18  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (STFD_FR0_0R1, LFD_FR0_0R1, BLR): Define.
	(struct ppc_link_hash_table): Add sfpr.
	(ppc64_elf_link_hash_table_create): Init it.
	(ppc64_elf_create_dynamic_sections): Split creation of .stub and
	.glink out to..
	(create_linkage_sections): ..here.  Make .sfpr too.
	(ppc64_elf_check_relocs): Call create_linkage_sections, and set
	dynobj early.
	(MIN_SAVE_FPR, MAX_SAVE_FPR): Define.
	(ppc64_elf_func_desc_adjust): Look for missing ._savef* and
	._restf* functions, and create as needed.
	(func_desc_adjust): Only force_local for shared libs.

2002-02-18  David O'Brien  <obrien@FreeBSD.org>

	* configure.in: Bump version number post 2.12 branching.
	* configure: Regenerate.

2002-02-17  Hans-Peter Nilsson  <hp@bitrange.com>

	* mmo.c: Correct and improve comments.
	(mmo_write_chunk): Store trailing byte in bfd buffer; don't
	zero-pad.  Use input to fill up non-empty bfd buffer.
	(mmo_flush_chunk): New function.
	(mmo_write_loc_chunk): Add parameter last_vmap, all callers
	changed.  Don't emit location specifier if VMA is same as
	*LAST_VMAP after omitting leading zero contents.  Call
	mmo_flush_chunk before emitting location specifier.
	(mmo_write_loc_chunk_list): Call mmo_flush_chunk when finished
	with mmo_write_loc_chunk calls.
	(mmo_internal_write_section): Call mmo_flush_chunk after
	mmo_write_chunk.
	(mmo_write_symbols_and_terminator): Move :Main to first position
	in symbol array.  Add faked one if it does not exist if there are
	other symbols.  Don't add it if there are no symbols at all.  Move
	out test for value of :Main from symbol loop.  Rename table
	fakemain to maintable and variable mainsym to fakemain.

2002-02-15  Richard Henderson  <rth@redhat.com>

	* elf64-alpha.c (elf64_alpha_relocate_section) [BRSGP]: A target
	section with no got matches any got.  Simplify error generaion.

2002-02-15  Alan Modra  <amodra@bigpond.net.au>

	Support arbitrary length fill patterns.
	* linker.c (bfd_new_link_order): Zero all fields with bfd_zalloc.
	(_bfd_default_link_order): Remove bfd_fill_link_order code.
	Call default_data_link_order.
	(default_fill_link_order): Delete.
	(default_data_link_order): New function.
	* elf32-mips.c (_bfd_mips_elf_final_link): Replace occurrences
	of bfd_fill_link_order with bfd_data_link_order.
	* elf64-alpha.c (elf64_alpha_final_link): Likewise.
	* elf64-mips.c (mips_elf64_final_link): Likewise.

	* bfd.c (bfd_scan_vma): Clamp overflows to max bfd_vma value.
	Correct value returned in "end" for "0x<non-hex>".

2002-02-14  Nick Clifton  <nickc@cambridge.redhat.com>

	* cpu-arm.c (processors): Replace 'arch' field with 'mach'.
	(scan): Test against 'mach' field in info structure.

2002-02-14  Alan Modra  <amodra@bigpond.net.au>

	* elf.c (elf_fake_sections): Use SHT_NOBITS when SEC_NEVER_LOAD.

2002-02-14  Matt Fredette  <fredette@netbsd.org>

	* elf32-m68k.c (elf32_m68k_print_private_bfd_data): Recognize
	EF_M68000.

2002-02-13  Nick Clifton  <nickc@cambridge.redhat.com>

	* elf.c (_bfd_elf_make_section_from_shdr): Do not insist on
	non-zero physical addresses when adjusting the LMAs of new
	sections.

2002-02-12  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* elf-hppa.h (elf_hppa_reloc_final_type): New function stripped
	from _bfd_elf_hppa_gen_reloc_type.
	(_bfd_elf_hppa_gen_reloc_type): Remove duplicate prototype.
	* elf32-hppa.h (elf32_hppa_reloc_final_type): Add protptype.
	* elf32-hppa.c: Include elf32-hppa.h before elf-hppa.h.
	* elf64-hppa.h (elf64_hppa_reloc_final_type): Add protptype.

2002-02-12  Alexandre Oliva  <aoliva@redhat.com>

	* elf-m10300.c (mn10300_elf_relax_section): Skip section before
	loading its contents if there's nothing to do in it.

2002-02-12  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_size_stubs): Correct test for crossing
	64k boundary.

	* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Add dynamic
	DT_PPC64_OPD and DT_PPC64_OPDSZ tags.
	(ppc64_elf_finish_dynamic_sections): Set values for them.

2002-02-11  Michael Snyder  <msnyder@redhat.com>

	* elf-bfd.h (elfcore_write_lwpstatus): Add prototype.
	* elf.c (elfcore_grok_pstatus): Add prototype.
	(elfcore_grok_lwpstatus): Add prototype.
	(elfcore_write_lwpstatus): New function.
	(elfcore_write_pstatus): Fix typo, eliminate unnecessary memcpy.

2002-02-11  Alexandre Oliva  <aoliva@redhat.com>

	* elf32-sh.c: Added missing prototypes.
	* elf32-sh64.c: Likewise.
	(sh_elf_align_loads): Mark unused args as such.
	* elf64-sh64.c: Added missing prototypes.
	(struct elf_sh64_link_hash_entry): Fix typo.
	(sh_elf64_relocate_section): Fix info argument passed to
	_bfd_elf_section_offset.

2002-02-11  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: "make dep-am".
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.

2002-02-10  Daniel Jacobowitz  <drow@mvista.com>

	* coff-rs6000.c (xcoff_generate_rtinit): Silence uninitialized
	variable warnings.
	* elf32-sh.c (sh_elf_relax_section): Silence signed/unsigned
	comparison warning.
	* trad-core.c (trad_unix_core_file_p): Silence pointer/integer
	cast warnings for the common case.

2002-02-10  Hans-Peter Nilsson  <hp@bitrange.com>

	* config.bfd (sh-*-linux*, sh-*-elf* | sh-*-rtemself*): Add sh64
	vectors.
	(sh-*-netbsdelf*): New, to trump sh*-*-netbsdelf* and add sh64
	vectors.

2002-02-09  Richard Henderson  <rth@redhat.com>

	* elf64-alpha.c (elf64_alpha_howto): Add R_ALPHA_BRSGP.
	(elf64_alpha_reloc_map, elf64_alpha_check_relocs): Likewise.
	(elf64_alpha_relocate_section): Likewise.
	* reloc.c (BFD_RELOC_ALPHA_BRSGP): New.
	* bfd-in2.h, libbfd.h: Rebuild.

2002-02-09  Hans-Peter Nilsson  <hp@bitrange.com>

	* elf64-mmix.c (_bfd_mmix_finalize_linker_allocated_gregs): Check
	that base-plus-offset reloc accounting is consistent.
	(mmix_elf_relax_section): Keep base-plus-offset reloc accounting
	up to date for undefined symbols.

2002-02-08  Eric Christopher  <echristo@redhat.com>

	From Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* elf32-mips.c (_bfd_mips_elf_fake_sections): Don't create .rela
	sections for the O32 ABI.

2002-02-08  Chris Demetriou  <cgd@broadcom.com>

	* elf32-arm.h: Fix formatting of _("...").
	* elf32-d10v.c: Likewise.
	* elf32-m68k.c: Likewise.
	* elf32-mips.c: Likewise.

2002-02-08  Ivan Guzvinec <ivang@opencores.org>

	* coff-or32.c: Fix compile time warning messages.

2002-02-08  Alexandre Oliva  <aoliva@redhat.com>

	Contribute sh64-elf.
	2002-01-23  Alexandre Oliva  <aoliva@redhat.com>
	* reloc.c (R_SH_GOTPLT32, R_SH_GOT_LOW16, R_SH_GOT_MEDLOW16,
	R_SH_GOT_MEDHI16, R_SH_GOT_HI16, R_SH_GOTPLT_LOW16,
	R_SH_GOTPLT_MEDLOW16, R_SH_GOTPLT_MEDHI16, R_SH_GOTPLT_HI16,
	R_SH_PLT_LOW16, R_SH_PLT_MEDLOW16, R_SH_PLT_MEDHI16,
	R_SH_PLT_HI16, R_SH_GOTOFF_LOW16, R_SH_GOTOFF_MEDLOW16,
	R_SH_GOTOFF_MEDHI16, R_SH_GOTOFF_HI16, R_SH_GOTPC_LOW16,
	R_SH_GOTPC_MEDLOW16, R_SH_GOTPC_MEDHI16, R_SH_GOTPC_HI16,
	R_SH_GOT10BY4, R_SH_GOTPLT10BY4, R_SH_GOT10BY8, R_SH_GOTPLT10BY8,
	R_SH_COPY64, R_SH_GLOB_DAT64, R_SH_JMP_SLOT64, R_SH_RELATIVE64):
	New relocs.
	* libbfd.h, bfd-in2.h: Rebuilt.
	* elf32-sh.c (sh_elf_howto_table): Define new relocs.
	(sh_reloc_map): Map them.
	(PLT_ENTRY_SIZE, elf_sh_plt0_entry_be, elf_sh_plt0_entry_le,
	elf_sh_plt_entry_be, elf_sh_plt_entry_le, elf_sh_pic_plt_entry_be,
	elf_sh_pic_plt_entry_le, elf_sh_plt0_entry, elf_sh_plt_entry,
	elf_sh_pic_plt_entry, elf_sh_sizeof_plt, elf_sh_plt_plt0_offset,
	elf_sh_plt0_gotplt_offset, elf_sh_plt_temp_offset,
	elf_sh_plt_symbol_offset, elf_sh_plt_reloc_offset,
	movi_shori_putval) [INCLUDE_SHMEDIA]: New.
	(elf_sh_link_hash_entry) [INCLUDE_SHMEDIA]: Add
	datalabel_got_offset.
	(sh_elf_link_hash_newfunc): Initialize it.
	(sh_elf_relocate_section): Augment the scope of
	seen_stt_datalabel.  Introduce GOTPLT support.	Extend GOTPC, PLT,
	GOT and GOTOFF handling to new SHmedia relocation types.  Support
	GOT_BIAS.
	(sh_elf_check_relocs): Likewise.
	(sh_elf_finish_dynamic_symbol) [TARGET_SHMEDIA]: Set up values in
	PLT entries using movi_shori_putval.  Support GOT_BIAS.
	(sh_elf_finish_dynamic_sections): Likewise.
	* elf32-sh64.c (shmedia_prepare_reloc): Do not add addend to
	relocation, it's now done by the caller.
	(GOT_BIAS): New.
	* elf64-sh64.c (GOT_BIAS, PLT_ENTRY_SIZE, elf_sh64_sizeof_plt,
	elf_sh64_plt_plt0_offset, elf_sh64_plt0_gotplt_offset,
	elf_sh64_plt_temp_offset, elf_sh64_plt_symbol_offset,
	elf_sh64_plt_reloc_offset, ELF_DYNAMIC_INTERPRETER,
	elf_sh64_pcrel_relocs_copied, elf_sh64_link_hash_entry,
	elf_sh64_link_hash_table, sh64_elf64_link_hash_traverse,
	sh64_elf64_hash_table): New.
	(sh_elf64_howto_table): Introduce new relocs.
	(sh_elf64_info_to_howto): Accept new PIC relocs.
	(sh_elf64_relocate_section): Augment the scope of
	seen_stt_datalabel.  Support new PIC relocs.
	(sh_elf64_check_relocs): Support new PIC relocs.
	(elf_sh64_plt0_entry_be, elf_sh64_plt0_entry_le,
	elf_sh64_plt_entry_be, elf_sh64_plt_entry_le,
	elf_sh64_pic_plt_entry_be, elf_sh64_pic_plt_entry_le,
	elf_sh64_plt0_entry, elf_sh64_plt_entry, elf_sh64_pic_plt_entry,
	sh64_elf64_link_hash_newfunc, sh64_elf64_link_hash_table_create,
	movi_shori_putval, movi_3shori_putval,
	sh64_elf64_create_dynamic_sections,
	sh64_elf64_adjust_dynamic_symbol, sh64_elf64_discard_copies,
	sh64_elf64_size_dynamic_sections,
	sh64_elf64_finish_dynamic_symbol,
	sh64_elf64_finish_dynamic_sections): New.
	(elf_backend_create_dynamic-sections,
	bfd_elf64_bfd_link_hash_table_create,
	elf_backend_adjust_dynamic_symbol,
	elf_backend_size_dynamic_sections,
	elf_backend_finish_dynamic_symbol,
	elf_backend_finish_dynamic_sections, elf_backend_want_got_plt,
	elf_backend_plt_readonly, elf_backend_want_plt_sym,
	elf_backend_got_header_size, elf_backend_plt_header_size):
	Define.
	2001-05-16  Alexandre Oliva  <aoliva@redhat.com>
	* elf32-sh.c: Renumbered and renamed some SH5 relocations to
	match official numbers and names; moved unmaching ones to the
	range 0xf2-0xff.
	* elf32-sh64.c, elf64-sh64.c: Likewise.
	2001-03-12  DJ Delorie	<dj@redhat.com>
	* elf32-sh.c (sh_elf_relax_section): Don't relax SHmedia
	sections.
	2001-03-12  DJ Delorie	<dj@redhat.com>
	* elf32-sh64.c (shmedia_prepare_reloc): Validate relocs that must
	be aligned.
	* elf64-sh64.c (sh_elf64_relocate_section): Ditto.
	2001-01-14  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf32-sh64.c (bfd_elf32_bfd_copy_private_section_data): Define.
	(sh64_elf_fake_sections): Set type to SHT_SH5_CR_SORTED for a
	.cranges section with SEC_SORT_ENTRIES set.
	(sh64_backend_section_from_shdr): Set SEC_SORT_ENTRIES on an
	incoming sorted .cranges section.
	(sh64_bfd_elf_copy_private_section_data): New.
	(sh64_elf_final_write_processing): Only sort .cranges and modify
	start address if called by linker.
	2001-01-08  Ben Elliston  <bje@redhat.com>
	* elf32-sh64.c (sh64_elf_final_write_processing): Activate
	Hans-Peter Nilsson's set bit 0 patch from	2001-01-06.
	* elf64-sh64.c (sh64_elf64_final_write_processing): Ditto.
	2001-01-06  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf64-sh64.c (sh_elf64_howto_table): No open brace at start of
	line.  Add comments before all entries.
	<R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct and clarify describing
	comment.
	(sh_elf64_reloc): Correct head comment.
	(sh_elf64_relocate_section): Correct spacing.
	<relocating for a local symbol>: Do not honour STO_SH5_ISA32;
	instead call reloc_dangerous callback.
	<case R_SH_SHMEDIA_CODE>: New case.
	(sh_elf64_gc_mark_hook): Correct spacing.
	(sh_elf64_check_relocs): Ditto.
	* elf32-sh64.c (shmedia_prepare_reloc) <case R_SH_SHMEDIA_CODE>:
	New case.
	* elf32-sh.c: Correct #endif comments for #ifndef-wrapped
	functions.
	(sh_elf_howto_table) <R_SH_PT_16, R_SH_SHMEDIA_CODE>: Correct,
	clarify describing comment.  Add comments before all entries.
	(sh_elf_relocate_section) <relocating for a local symbol>: Do not
	honour STO_SH5_ISA32; instead call reloc_dangerous callback.
	2001-01-06  Hans-Peter Nilsson	<hpn@cygnus.com>
	Sort .cranges section in final link.  Prepare to set bit 0 on
	entry address.
	* elf32-sh64.c (struct sh64_find_section_vma_data): New.
	(sh64_elf_link_output_symbol_hook): Fix typo in prototype.
	(sh64_elf_set_mach_from_flags): Set SEC_DEBUGGING on incoming
	.cranges section.
	(sh64_backend_section_from_shdr): New, to recognize
	SHT_SH5_CR_SORTED on incoming .cranges section.
	(elf_backend_section_from_shdr): Define.
	(sh64_elf_final_write_processing): Sort outgoing .cranges
	section.  (New, temporarily disabled:) Set bit 0 on entry address
	according to ISA type.
	(sh64_find_section_for_address): New.
	(crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
	crange_bsearch_cmpl): Move here from opcodes/sh64-dis.c.
	(sh64_address_in_cranges): Move here from opcodes/sh64-dis.c.  Use
	bfd_malloc, not xmalloc.
	(sh64_get_contents_type): Move here from opcodes/sh64-dis.c.  Make
	global.
	* elf32-sh64.c (sh64_elf64_final_write_processing): New, (but
	temporarily disabled) setting bit 0 on entry address.
	(elf_backend_final_write_processing): Define.
	2001-01-05  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf32-sh.c (sh_elf_howto_table) <R_SH_PT_16>: Adjust fields to
	be a proper relocation for PTA and PTB rather than a marker.
	<R_SH_IMMU5, R_SH_IMMS6, R_SH_IMMU6, R_SH_IMMS10, R_SH_IMMS10BY2,
	R_SH_IMMS10BY4, R_SH_IMMS10BY8, R_SH_IMMS16, R_SH_IMMU16,
	R_SH_IMM_LOW16, R_SH_IMM_LOW16_PCREL, R_SH_IMM_MEDLOW16,
	R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16, R_SH_IMM_MEDHI16_PCREL,
	R_SH_IMM_HI16, R_SH_IMM_HI16_PCREL, R_SH_64, R_SH_64_PCREL>:
	Zero src_mask.
	* elf64-sh64.c: Ditto.
	(sh_elf64_relocate_section) <case R_SH_PT_16>: New case.
	* elf32-sh64.c: Include opcodes/sh64-opc.h
	(shmedia_prepare_reloc): Take a bfd_link_info pointer as first
	argument.  Drop const qualifiers from "bfd *" and "bfd_byte *"
	parameters.  No unused parameters.  Caller changed.
	<case R_SH_PT_16>: New case.
	* Makefile.am (elf32-sh64.lo): Add dependency on sh64-opc.h.
	* Makefile.in: Regenerate.
	2000-12-30  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf64-sh64.c (sh64_elf64_fake_sections): Set SHF_SH5_ISA32 for
	all code sections.
	(sh_elf64_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
	(sh64_elf_merge_private_data): Ditto.
	* elf32-sh64.c (sh64_elf_fake_sections): Use sh64_elf_section_data
	to access stored section flags.
	(sh64_elf_final_write_processing): Return immediately unless
	called by linker.  Use sh64_elf_section_data (cranges) to get size
	of linker-generated cranges entries.
	(sh64_elf_copy_private_data): Add missing "return true".
	(sh64_elf_set_mach_from_flags): Change from EF_SH64 to EF_SH5.
	(sh_elf64_merge_private_data): Ditto.
	2000-12-19  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf64-sh64.c (sh64_elf64_fake_sections): New, copy of
	elf64-sh64.c:sh64_elf_fake_sections.
	(elf_backend_fake_sections): Define as sh64_elf64_fake_sections.
	2000-12-18  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf32-sh64.c (sh64_elf_copy_private_data_internal): Delete.
	(sh64_elf_final_write_processing): New.
	(elf_backend_final_write_processing): Define.
	(sh64_elf_fake_sections): Get header flags from tdata field.
	(sh64_elf_copy_private_data): Do not call
	sh64_elf_copy_private_data_internal, just copy e_flags field.
	(sh64_elf_merge_private_data): Do not call
	sh64_elf_copy_private_data_internal.
	2000-12-12  Hans-Peter Nilsson	<hpn@cygnus.com>
	Remove EF_SH64_ABI64, let ELF size make difference.
	Remove SH64-specific BFD section flag.
	* elf32-sh64.c (sh64_elf_fake_sections): Recognize section as
	containing SHmedia through elf_section_data (asect)->tdata
	non-zero, not using a BFD section flag.
	(sh64_elf_set_mach_from_flags): Don't recognize EF_SH64_ABI64.
	(sh64_elf_merge_private_data): Similar.
	(elf_backend_section_flags): Don't define.
	(sh64_elf_backend_section_flags): Delete.
	* elf64-sh64.c (sh_elf64_set_mach_from_flags): Recognize EF_SH64,
	not EF_SH64_ABI64.
	(sh_elf64_merge_private_data): Similar.
	* section.c (Section flags definitions): Don't define
	SEC_SH_ISA_SHMEDIA.
	(bfd-in2.h): Regenerate.
	2000-12-09  Hans-Peter Nilsson	<hpn@cygnus.com>
	Make DataLabel references work with partial linking.
	* elf32-sh64.c: Fix formatting.
	(sh64_elf_link_output_symbol_hook): New.
	(elf_backend_link_output_symbol_hook): Define to
	sh64_elf_link_output_symbol_hook.
	(sh64_elf_add_symbol_hook): Make DataLabel symbol just global
	undefined if partial linking.  Adjust sanity check.
	* elf64-sh64.c (sh64_elf64_link_output_symbol_hook): New.
	(elf_backend_link_output_symbol_hook): Define to
	sh64_elf64_link_output_symbol_hook.
	(sh64_elf64_add_symbol_hook): Make DataLabel symbol just global
	undefined if partial linking.  Adjust sanity check.
	2000-12-07  Hans-Peter Nilsson	<hpn@cygnus.com>
	Implement semantics for inter-file DataLabel references.
	* elf64-sh64.c (DATALABEL_SUFFIX): Define.
	(sh64_elf64_add_symbol_hook): New.
	(sh_elf64_relocate_section): If passing an indirect symbol with
	st_type STT_DATALABEL on the way to a symbol with st_other
	STO_SH5_ISA32, do not bitor 1 to the relocation.
	(elf_backend_add_symbol_hook): Define to
	sh64_elf64_add_symbol_hook.
	* elf64-sh32.c: Tweak comments.
	(DATALABEL_SUFFIX): Define.
	(sh64_elf_add_symbol_hook): New.
	(elf_backend_add_symbol_hook): Define to sh64_elf_add_symbol_hook.
	* elf32-sh.c (sh_elf_relocate_section): If passing an indirect
	symbol with st_type STT_DATALABEL on the way to a symbol with
	st_other STO_SH5_ISA32, do not bitor 1 to the relocation.
	2000-12-05  Hans-Peter Nilsson	<hpn@cygnus.com>
	Pass through STT_DATALABEL.
	* elf32-sh64.c (sh64_elf_get_symbol_type): New.
	(elf_backend_get_symbol_type): Define.
	* elf64-sh64.c (sh64_elf64_get_symbol_type): New.
	(elf_backend_get_symbol_type): Define.
	2000-11-30  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf32-sh64.c: Tweak comments.
	(sh64_elf_copy_private_data_internal): Add prototype.
	(bfd_elf32_bfd_set_private_flags): Define.
	(sh64_elf_copy_private_data_internal): Compare machine name, not
	textual BFD target name, to check whether to copy section flag
	SHF_SH5_ISA32.
	(sh64_elf_merge_private_data): Validize bfd_get_arch_size.
	Tweak section-contents-type-mismatch message.
	(shmedia_prepare_reloc): Add ATTRIBUTE_UNUSED markers.
	Validize reloc-types.
	* elf64-sh64.c: New file.
	* targets.c (bfd_elf64_sh64_vec, bfd_elf64_sh64l_vec): Declare.
	* Makefile.am (BFD64_BACKENDS): Add elf64-sh64.lo.
	(BFD64_BACKENDS_CFILES): Add elf64-sh64.c.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* config.bfd (sh64-*-elf*): Add bfd_elf64_sh64_vec and
	bfd_elf64_sh64l_vec.
	* configure.in: Handle bfd_elf64_sh64_vec and
	bfd_elf64_sh64l_vec.
	* configure: Regenerate.
	* po/POTFILES.in: Regenerate.
	* po/bfd.pot: Regenerate.
	2000-11-29  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf32-sh64.c (sh64_elf_set_mach_from_flags): Do not recognize
	anything else but EF_SH64 and EF_SH64_ABI64.
	(sh64_elf_merge_private_data): Emit error for anything else but
	EF_SH64 and EF_SH64_ABI64.
	* config.bfd: Remove bfd_elf32_shblin_vec and bfd_elf32_shlin_vec
	from targ_selvecs.
	* configure.in: Add cofflink.lo to bfd_elf32_sh64_vec and
	bfd_elf32_sh64l_vec as a temporary measure.
	* configure: Regenerate.
	2000-11-27  Hans-Peter Nilsson	<hpn@cygnus.com>
	* cpu-sh.c (arch_info_struct): Include sh5 item
	unconditionalized.
	* config.bfd (sh64-*-elf*): Do not set targ_cflags.
	Add targ_selvecs bfd_elf32_sh_vec, bfd_elf32_shl_vec,
	bfd_elf32_shblin_vec and bfd_elf32_shlin_vec.
	* elf32-sh64.c: Tweak comments.
	(sh64_elf_set_mach_from_flags): Recognize all machine flags that
	are proper subsets of SH64 as bfd_mach_sh5.  Add EF_SH64_ABI64.
	(sh64_elf_copy_private_data_internal): Wrap long line.
	(sh64_elf_merge_private_data): Rewrite to allow objects from
	SH64 subsets to be linked together.
	(INCLUDE_SHMEDIA): Define.
	* elf32-sh.c (sh_elf_relocate_section) <local symbol>:
	Parenthesize plus-expression inside or-expression.
	<global symbol>: Ditto.
	(sh_elf_set_mach_from_flags): Remove code refusing
	deleted EF_SH64_32BIT_ABI flag.
	2000-11-26  Hans-Peter Nilsson	<hpn@cygnus.com>
	* elf32-sh.c (sh_elf_howto_table) <R_SH_IMM_LOW16_PCREL,
	R_SH_IMM_MEDLOW16_PCREL, R_SH_IMM_MEDHI16_PCREL,
	R_SH_IMM_HI16_PCREL, R_SH_64_PCREL>: Set pcrel_offset to true.
	(sh_elf_relocate_section) <local symbol>: Or 1 in
	calculation of relocation if sym->st_other & STO_SH5_ISA32.
	<global symbol>: Ditto if h->other & STO_SH5_ISA32.
	* elf32-sh64.c (shmedia_prepare_reloc): Add rel->r_addend to
	relocation.
	2000-11-24  Hans-Peter Nilsson	<hpn@cygnus.com>
	* Makefile.am (BFD32_BACKENDS): Add elf32-sh64.lo.
	(BFD32_BACKENDS_CFILES): Add elf32-sh64.c.
	Regenerate dependencies.
	* Makefile.in: Regenerate.
	* archures.c: Add bfd_mach_sh5.
	* config.bfd: Map targ_cpu sh* to bfd_sh_arch.
	Handle sh64-*-elf*.  Set targ_cflags to -DINCLUDE_SHMEDIA.
	* configure.in: Handle bfd_elf32_sh64_vec and bfd_elf32_sh64l_vec.
	* configure: Regenerate.
	* reloc.c (BFD_RELOC_SH_SHMEDIA_CODE, BFD_RELOC_SH_IMMU5,
	BFD_RELOC_SH_IMMS6, BFD_RELOC_SH_IMMS6BY32, BFD_RELOC_SH_IMMU6,
	BFD_RELOC_SH_IMMS10, BFD_RELOC_SH_IMMS10BY2,
	BFD_RELOC_SH_IMMS10BY4, BFD_RELOC_SH_IMMS10BY8,
	BFD_RELOC_SH_IMMS16, BFD_RELOC_SH_IMMU16, BFD_RELOC_SH_IMM_LOW16,
	BFD_RELOC_SH_IMM_LOW16_PCREL, BFD_RELOC_SH_IMM_MEDLOW16,
	BFD_RELOC_SH_IMM_MEDLOW16_PCREL, BFD_RELOC_SH_IMM_MEDHI16,
	BFD_RELOC_SH_IMM_MEDHI16_PCREL, BFD_RELOC_SH_IMM_HI16,
	BFD_RELOC_SH_IMM_HI16_PCREL, BFD_RELOC_SH_PT_16): New relocations.
	* cpu-sh.c [INCLUDE_SHMEDIA] (arch_info_struct): Define and link
	in item for SH5.
	* elf32-sh.c [INCLUDE_SHMEDIA] (sh_elf_howto_table): Add howto items
	for SHmedia relocs.
	[INCLUDE_SHMEDIA] (sh_rel): Add mappings for SHmedia relocs.
	[INCLUDE_SHMEDIA] (sh_elf_relocate_section) [default]: Call
	shmedia_prepare_reloc, goto final_link_relocate if it returns
	non-zero, else fail as before.
	(sh_elf_set_mach_from_flags): Provide function only if not defined
	as macro.  Do not recognize objects with EF_SH64_32BIT_ABI set.
	(sh_elf_set_private_flags): Provide function only if not defined
	as a macro.
	(sh_elf_copy_private_data): Similar.
	(sh_elf_merge_private_data): Similar.
	* section.c (SEC_SH_ISA_SHMEDIA): New.
	* targets.c (bfd_elf32_sh64_vec, bfd_elf32_sh64l_vec): Declare.
	* elf32-sh64.c: New file.
	* libbfd.h: Regenerate.
	* bfd-in2.h: Regenerate.
	* po/POTFILES.in: Regenerate.
	* po/bfd.pot: Regenerate.
	* bfd-in2.h: Regenerate.
	* libbfd.h: Regenerate.

2002-02-07  Daniel Jacobowitz  <drow@mvista.com>

	* bfd-in.h: Update <stdbool.h> check to only see if <stdbool.h> has
	been included, not drag it in.
	* bfd-in2.h: Regenerate.

2002-02-06  H.J. Lu  (hjl@gnu.org)

	* elf32-mips.c (_bfd_mips_elf_merge_private_bfd_data): Update
	the mach and ISA fields if necessary.

2002-02-06  Nick Clifton  <nickc@cambridge.redhat.com>

	* coffcode.h (coff_set_arch_mach_hook): Select the highest known
	ARM architecture when an F_ARM_5 flag is detected, since we cannot
	be sure exactly which architecture this represents.

2002-02-05  Nick Clifton  <nickc@redhat.com>

	* po/tr.po: Updated translation.

2002-02-05  Alan Modra  <amodra@bigpond.net.au>

	From Jimi X <jimix@watson.ibm.com>
	* archures (bfd_mach_ppc64): Define.
	(bfd_powerpc_arch): Rename to bfd_powerpc_archs.
	(bfd_powerpc_arch): Define.
	* bfd-in2.h: Regenerate.
	* cpu-powerpc.c (arch_info_struct): Rename to bfd_powerpc_archs.
	(bfd_powerpc_arch): Move to tail of bfd_powerpc_archs.
	(bfd_powerpc_archs): Add default powerpc64 arch.

2002-02-05  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Check for relocs
	against section syms in readonly sections.  Don't do the global
	sym check if we find one.
	* elf64-s390.c (elf_s390_size_dynamic_sections): Likewise.
	* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Likewise.
	* elf32-i386.c (elf_i386_size_dynamic_sections): Likewise.
	* elf32-s390.c (elf_s390_size_dynamic_sections): Likewise.
	(elf_s390_grok_prstatus): Add missing prototype.

2002-02-04  Hans-Peter Nilsson  <hp@bitrange.com>

	* elf64-mmix.c (mmix_dump_bpo_gregs): New function.
	(mmix_elf_check_common_relocs) <case R_MMIX_BASE_PLUS_OFFSET>:
	Call bfd_get_section_by_name only once.  Initialize
	bpodata->n_bpo_relocs_this_section.
	(_bfd_mmix_prepare_linker_allocated_gregs): Remove comment
	referring to DSOs.
	(bpo_reloc_request_sort_fn): Don't use difference of values as
	return-value.

2002-02-02  David O'Brien  <obrien@FreeBSD>

	* configure.in: Tweak the FreeBSD 4.x recognition more.  Only treat
	version 4.5 and later the same as 5-CURRENT.
	* configure: Re-generate.

2002-02-02  Jason Thorpe  <thorpej@wasabisystems.com>

	* config.bfd (hppa*-*-netbsd*): New target.

2002-01-31  Philipp Thomas  <pthomas@suse.de>

	* coff-arm.c (coff_arm_merge_private_bfd_data): Move ERROR
	to front of message. Unify messages with elf32-arm.h. Use
	commas where neccessary.
	* elf32-arm.h (elf32_arm_merge_private_bfd_data): Use all upcase
	ERROR in messages. Unify messages with coff-arm.c. Correct
	VFP/FPA error message.
	(elf32_arm_print_private_bfd_data): Don't mark APCS-26 and
	APCS-32 for translation.

2002-02-01  Hans-Peter Nilsson  <hp@bitrange.com>

	Perform on-demand global register allocation from
	R_MMIX_BASE_PLUS_OFFSET relocs.
	* elf64-mmix.c (struct bpo_reloc_section_info, struct
	bpo_reloc_request, struct bpo_greg_section_info): New.
	(mmix_elf_check_common_relocs, mmix_elf_gc_sweep_hook,
	bpo_reloc_request_sort_fn, mmix_elf_relax_section,
	_bfd_mmix_check_all_relocs,
	_bfd_mmix_prepare_linker_allocated_gregs,
	_bfd_mmix_finalize_linker_allocated_gregs): New functions.
	(elf_mmix_howto_table): Correct src_mask for most relocs.
	(mmix_elf_perform_relocation) <case R_MMIX_BASE_PLUS_OFFSET>: New
	case.
	(mmix_final_link_relocate) <case R_MMIX_BASE_PLUS_OFFSET>: New
	case.  Fix typo in comment.  New label do_mmix_reloc.
	(mmix_elf_check_relocs): Abuse bfd_link_info member base_file to
	store first object file with a base-plus-offset reloc.  Call
	mmix_elf_check_common_relocs for the part common with mmo.
	(mmix_elf_final_link): Write out linker-allocated register
	contents section.
	(elf_backend_gc_sweep_hook): Define.
	(bfd_elf64_bfd_relax_section): Define.

	* mmo.c: Don't include <ctype.h>
	(mmo_init): Correct init-once logic.

2002-02-01  Tom Rix  <trix@redhat.com>

	* config.bfd: Conditionally support <aiaff> for pre AIX 4.3.

2002-02-01  Alan Modra  <amodra@bigpond.net.au>

	* Makefile.am: Run "make dep-am"
	* Makefile.in: Regenerate.

2002-01-31  David O'Brien  <obrien@FreeBSD>

	* configure.in: Recognize the differences in core files from FreeBSD
	4.{0,1} and later versions of 4.x.  This treats 4.2+ the same as
	5-CURRENT.
	* configure: Regenerate.

2002-01-31  Ivan Guzvinec  <ivang@opencores.org>

	* coff-or32.c: New file.
	* cpu-or32.c: New file.
	* elf32-or32.c: New file.
	* archures.c: Add support for or32.
	* targets.c: Add support for or32.
	* bfd-in2.h: Regenerate.
	* coffcode.h (coff_set_arch_mach_hook, coff_set_flags,
	coff_write_object_contents): Add support for or32.
	* config.bfd: Add target.
	* configure.in: Add support for or32.
	* configure: Regenerate.
	* Makefile.am: Add support for or32.
	* Makefile.in: Regenerate.
	* po/SRC-POTFILES.in: Add or32 files.
	* po/bfd.pot: Regenerate.

2002-01-31  Nick Clifton  <nickc@cambridge.redhat.com>
	    Don Lindsay  <lindsayd@cisco.com>

	* elf32-mips.c (mips_elf_calculate_relocation): Replace 'return
	false' with a return of a bfd_reloc_ error code.

2002-01-31  Hans-Peter Nilsson  <hp@axis.com>

	* elf32-cris.c (elf_cris_discard_excess_program_dynamics): Don't
	unexport unreferenced symbols when --export-dynamic.  Call
	_bfd_elf_strtab_delref when unexporting.

2002-01-30  Daniel Jacobowitz  <drow@mvista.com>

	* bfd-in.h: Include <stdbool.h> if it is available.
	* bfd-in2.h: Regenerated.

2002-01-31  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (func_desc_adjust): STV_PROTECTED functions should
	not go via the plt.

2002-01-30  Nick Clifton  <nickc@cambridge.redhat.com>

	* archures.c: Tidy up formatting of embedded comments.
	* bfd.c: Tidy up formatting of embedded comments.
	* bfd-in.h: Fix formatting of comments.
	* reloc.c: Tidy up formatting of ordinary & embedded comments.
	* section.c: Tidy up formatting of embedded comments.
	* syms.c: Tidy up formatting of embedded comments.
	* targets.c: Tidy up formatting of embedded comments.

	* bfd-in2.h: Regenerate.

2002-01-30  Nick Clifton  <nickc@cambridge.redhat.com>

	* vms-tir.c (cmd_name): New function.
	(tir_cmd_name): New function.
	(etir_sta, etir_sto, etir_opr, etir_stc): Use cmd_name().
	(tir_opr, tir_ctl, tir_cmd): use tir_cmd_name().
	Fix formatting.

	* peXXigen.c (pe_print_idata): Rearrange message to aid in
	translation.
	(pe_print_pdata):  Rearrange message to aid in translation.

	* libbfd.c (warn_deprecated): Rearrange error message to aid in
	translation.

	* ihex.c (ihex_write_object_contents): Fix spelling typo.

	* ieee.c (ieee_slurp_external_symbols): Remove spurious space.

	* elf64-sparc.c (sparc64_elf_add_symbol_hook): Rearrange error
	message to aid in translation.

	* elf64-mmix.c (mmix_final_link_relocate): Rearrange error message
	to aid in translation.

	* elf32-arm.h (elf32_arm_merge_private_bfd_data): Fix typo.

2002-01-30  Philipp Thomas  <pthomas@suse.de>

	* coff-arm.c, elf32-elf.h: Unify messages.

2002-01-30  Nick Clifton <nickc@redhat.com>

	* po/sv.po: Updated translation.

2002-01-30  Philipp Thomas  <pthomas@suse.de>

	* dwarf2.c (read_abbrev): Use full section name in error message.
	(decode_line_info): Likewise.

	* elf.c (_bfd_elf_symbol_from_bfd_symbol): Don't translate debugging
	message.

2002-01-30  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (func_desc_adjust): Only provide missing function
	descriptor symbols for undefined function code syms.  Clear
	ELF_LINK_NON_ELF so that they can stay weak.

2002-01-29  Chris Demetriou  <cgd@broadcom.com>
	    Mitch Lichtenberg  <mpl@broadcom.com>

	* bfd-in.h (bfd_mips_elf32_create_embedded_relocs): New prototype.
	* elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): New function
	to handle 32-bit ELF embedded reloc (ld --embedded-relocs)
	generation.
	* bfd-in2.h: Regenerate.

2002-01-29  Chris Demetriou  <cgd@broadcom.com>

	* elf32-mips.c: Add additional comments about HI16 relocation
	processing.
	(_bfd_mips_elf_hi16_reloc): Don't subtract address here for
	pc-relative relocations.  (Reverts change made on 2001-10-31.)
	(_bfd_mips_elf_lo16_reloc): Subtract address of LO16 part here
	for pc-relative relocations.
	(mips_elf_calculate_relocation): Add a comment about a kludge
	in the R_MIPS_GNU_REL_HI16 handling.
	(_bfd_mips_elf_relocate_section): Implement that kludge;
	adjust pc-relative HI16 relocation for difference in HI16 and
	LO16 addresses, since it can't easily be done in
	mips_elf_calculate_relocation.

2002-01-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>

	* elf32-i386 (elf_i386_adjust_dynamic_symbol): Do not replace PLT32
	relocations with PC32 relocations for undefined or weak symbols.
	* elf32-s390 (elf_i386_adjust_dynamic_symbol): Likewise.
	* elf64-s390x (elf_i386_adjust_dynamic_symbol): Likewise.

2002-01-28  Jason Thorpe  <thorpej@wasabisystems.com>

	* elfcore.h (elf_core_file_p): Improve comment for last change.

2002-01-27  Daniel Jacobowitz  <drow@mvista.com>

	* configure: Regenerated.

2002-01-27  Jason Thorpe  <thorpej@wasabisystems.com>

	* elfcore.h (elf_core_file_p): Set the machine architecture
	before processing the program headers.

2002-01-26  Hans-Peter Nilsson  <hp@bitrange.com>

	* configure.in <64-bit configuration>: If using gcc, check and
	emit error for egcs-1.1.2.
	* configure: Regenerate.

2002-01-26  Egor Duda  <deo@logos-m.ru>

	* elf.c (elfcore_grok_win32pstatus): Copy only as much information
	as possible to avoid stack corruption.

2002-01-26  Richard Henderson  <rth@redhat.com>

	* elf64-alpha.c (elf64_alpha_check_relocs): Don't set reltext
	for non-allocated sections.

2002-01-25  Mark Kettenis  <kettenis@gnu.org>

	* elf.c (elfcore_write_prstatus): Make sure we pass the address of
	prstat.pr_reg even if it is a struct.

2002-01-25  Steve Ellcey <sje@cup.hp.com>

	* bfd/elfxx-ia64.c: Reset AIX vector function overrides for HP-UX.

2002-01-25  Philipp Thomas  <pthomas@suse.de>

	* coffgen.c (coff_print_symbol): Don't mark info message
	for translation.

2002-01-25  Nick Clifton <nickc@redhat.com>

	* po/fr.po: Updated translation.
	* po/es.po: Updated translation.

2002-01-25  Philipp Thomas  <pthomas@suse.de>

	* coff-alpha.c (alpha_relocate_section): Unify warning message
	for GP relative relocations without GP defined.
	* coff-mips.c (mips_relocate_section): Likewise.

2002-01-25  Alan Modra  <amodra@bigpond.net.au>

	* elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Avoid
	unsigned overflow when new_offset < old_offset.

2002-01-24  Philipp Thomas  <pthomas@suse.de>

	* bfd.c (_bfd_abort): Fix typo.

2002-01-23  Richard Henderson  <rth@redhat.com>

	* elf64-alpha.c (elf64_alpha_adjust_dynamic_symbol): Don't suppress
	plt entries for undefweak symbols.

2002-01-23  Steve Ellcey <sje@cup.hp.com>

	* bfd/targets.c (bfd_elf32_ia64_hpux_big_vec): Add to
	DEFAULT_VECTOR.
	(bfd_elf64_ia64_hpux_big_vec): Ditto.
	(bfd_elf32_h8300_vec): Ditto.

2002-01-23  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c: Remove stale part of ABI comment.
	(NO_OPD_RELOCS): Define.
	(ppc64_elf_check_relocs): Use it.
	(ppc64_elf_relocate_section): Here too.
	(build_one_stub): Don't point function syms at the stub.  Instead,
	hijack plt.offset.
	(ppc64_elf_relocate_section): Check whether REL24 relocs should
	really go to the stub.  Make all dynamic relocs in opd against
	locals.
	(ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
	plt.offset.

2002-01-22  Richard Henderson  <rth@redhat.com>

	* elf64-alpha.c (INSN_UNOP): Encode with RB as $sp.

2002-01-22  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Correct sign of
	TOC_BASE_OFF adjustment.

	* Makefile.am: Run "make dep-am".
	* Makefile.in: Regenerate.
	* po/SRC-POTFILES.in: Regenerate.

2002-01-22  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* configure.host (hppa*64*-*-hpux*, hppa*64*-*-linux*): Add new
	host defines.

2002-01-21  Hans-Peter Nilsson  <hp@axis.com>

	* elf32-cris.c (cris_elf_relocate_section) <case R_CRIS_32_GOTREL>:
	Check for and emit error if sgot is NULL at this point.

2002-01-21  Jason Thorpe  <thorpej@wasabisystems.com>

	* config.bfd (ia64*-*-netbsd*): New target.

2002-01-21  Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>

	* som.c (som_write_space_strings): Comment typo fix.

2002-01-21  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (struct ppc_link_hash_entry): Add is_func and
	is_func_descriptor fields.
	(link_hash_newfunc): Init them.
	(ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
	dot are candidates for plt entries.  When processing .opd relocs,
	set function descriptor strings to point inside function code
	string, and set new ppc_link_hash_entry fields.
	(ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
	(ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
	function descriptors.  It's now done in..
	(func_desc_adjust): New.
	(ppc64_elf_func_desc_adjust): New.
	(define elf_backend_always_size_sections): Define.
	(ppc64_elf_hide_symbol): New.
	(define elf_backend_hide_symbol): Define.
	(allocate_dynrelocs): Remove code looking up function descriptors
	as that has been done earlier.
	(ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
	table.
	(ppc64_elf_finish_dynamic_symbol): Likewise.  Remove code looking
	up function descriptor.
	(build_one_stub): Look up the function code sym.  Check for
	invalid plt offsets.
	(ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
	Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.

	* elf-bfd.h (elf_backend_data <elf_backend_hide_symbol>): Add
	boolean param.
	(_bfd_elf_link_hash_hide_symbol): Likewise.
	* elflink.h (elf_link_add_object_symbols): Adjust call to
	elf_backend_hide_symbol.
	(elf_fix_symbol_flags): Likewise.
	(elf_link_assign_sym_version): Likewise. Use bfd_malloc rather
	than bfd_alloc.
	* elf.c (_bfd_elf_link_hash_hide_symbol): Add "force_local" param.
	Set ELF_LINK_FORCED_LOCAL and call _bfd_elf_strtab_delref.
	* elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
	(clobber_millicode_symbols): Adjust to suit new hide_symbol.
	* elf32-cris.c (elf_cris_hide_symbol): Add "force_local" param
	and adjust to suit.
	* elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise, and call
	_bfd_elf_link_hash_hide_symbol rather than duplicating code.
	* elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.

2002-01-18  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Test for a
	dynamic function descriptor symbol, not the associated function
	symbol.

2002-01-17  Eric Christopher  <echristo@redhat.com>

	* elf32-mips.c (mips_elf_calculate_relocation): Fix typo.

2002-01-17  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/bfd.pot: Regenerate.
	* po/fr.po: Regenerate.

2002-01-17  Alan Modra  <amodra@bigpond.net.au>

	* elf-bfd.h (elf_backend_data <elf_backend_section_from_bfd_section>):
	Remove "Elf_Internal_Shdr *" param.
	(_bfd_mips_elf_section_from_bfd_section): Ditto.
	* elf32-mips.c (_bfd_mips_elf_section_from_bfd_section): Ditto.
	* elf32-m32r.c (_bfd_m32r_elf_section_from_bfd_section): Ditto.
	* elf32-v850.c (v850_elf_section_from_bfd_section): Ditto.
	* elf64-mmix.c (mmix_elf_section_from_bfd_section): Ditto.
	* elfxx-ia64.c (elfNN_hpux_backend_section_from_bfd_section): Ditto.
	* elf.c (_bfd_elf_section_from_bfd_section): Allow backend
	function to override special sections.  Remove hdr arg from
	backend call, and don't loop.

2002-01-16  Eric Christopher  <echristo@redhat.com>

	* elf32-mips.c (mips_elf_calculate_relocation): Set require_jalxp
	on R_MIPS_26 and target is 16bit. Add R_MIPS16_GPREL to list of
	relocations requiring gp0 and gp.

2002-01-16  Richard Earnshaw  <rearnsha@arm.com>

	* elf32-arm.h (elf32_arm_merge_private_bfd_data): Handle
	EF_ARM_VFP_FLOAT.
	(elf32_arm_print_private_bfd_data): Likewise.

2002-01-16  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/tr.po: Import new version.

2002-01-16  Alan Modra  <amodra@bigpond.net.au>

	* elf64-ppc.c (ppc64_elf_howto_raw): Remove stale FIXMEs.
	(ppc64_elf_reloc_type_lookup): Use proper CTOR reloc.
	(ORI_R0_R0_0): Correct.

2002-01-16  Alan Modra  <amodra@bigpond.net.au>

	* elflink.c (_bfd_elf_create_dynamic_sections): Don't set SEC_CODE
	when plt_not_loaded.
	* elf64-ppc.c (ppc64_elf_create_dynamic_sections): No need to
	clear .plt SEC_CODE here.  Create .stub and correct .glink flags.
	(PLT_INITIAL_ENTRY_SIZE): Set to 24.
	(ppc64_elf_glink_code): Delete.
	(PPC64_ELF_GLINK_SIZE): Delete.
	(ADDIS_R12_R2, STD_R2_40R1, LD_R11_0R12, LD_R2_0R12, MTCTR_R11,
	BCTR, ADDIS_R12_R12_1, LD_R2_40R1, NOP, LI_R0_0, B_DOT, LIS_R0_0,
	ORI_R0_R0_0): Define.
	(PLT_CALL_STUB_SIZE, GLINK_CALL_STUB_SIZE): Define.
	(struct ppc_link_hash_table): Add sstub and plt_overflow.
	(ppc64_elf_link_hash_table_create): Init them.
	(ppc64_elf_check_relocs <R_PPC64_REL24>): Refcount .plt entry.
	Don't copy to shared lib.
	(ppc64_elf_check_relocs): Call bfd_set_error on errors.
	(ppc64_elf_gc_sweep_hook <R_PPC64_REL24>): Sweep plt refcount.
	(allocate_dynrelocs <plt>): Don't change function sym here.  Make
	room for .stub and .glink code.
	(ppc64_elf_size_dynamic_sections): Handle .stub.  Make entry for
	DT_PPC64_GLINK.
	(ppc64_elf_final_link): Rename to ppc64_elf_set_toc.  Don't call
	bfd_elf64_bfd_final_link.
	(bfd_elf64_bfd_final_link): Don't define.
	(ppc64_elf_size_stubs): New.
	(build_plt_stub): New.
	(build_one_stub): New.
	(ppc64_elf_build_stubs): New.
	(ppc64_elf_relocate_section <toc relocs>): Remove assert.
	(ppc64_elf_relocate_section): Don't copy R_PPC64_REL24 relocs.
	(ppc64_elf_finish_dynamic_symbol): Don't build stubs here.  Set
	DT_PPC64_GLINK entry.  Tweak DT_PLTGOT, DT_JMPREL, DT_PLTRELSZ in
	case output sections not separate.  Adjust DT_RELASZ to not
	include plt relocs.  Set reserved got entry.  Set got and plt
	entry size.
	(elf_backend_got_header_size): Set to 8.
	* elf64-ppc.h: New file.

2002-01-16  Alan Modra  <amodra@bigpond.net.au>

	* elf32-arm.h (elf32_arm_size_dynamic_sections): When removing
	sections, use bfd_section_list_remove.
	* elf32-i370.c (i370_elf_size_dynamic_sections): Likewise.
	* elflink.h (elf_link_add_object_symbols): When removing all
	sections, use bfd_section_list_clear.

2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/sv.po: New file: Swedish translation.
	* configure.in (ALL_LINGUAS): Add sv.
	* configure: Regenerate.

2002-01-15  Jakub Jelinek  <jakub@redhat.com>

	* elflink.h (elf_link_input_bfd): Back out 2002-01-07 change.
	* elf.c (merge_sections_remove_hook): New function.
	(_bfd_elf_merge_sections): Pass it as 3rd argument to
	_bfd_merge_sections.
	* libbfd-in.h (_bfd_merge_sections): Add 3rd argument.
	* libbfd.h: Rebuilt.
	* merge.c (_bfd_merge_sections): Add remove_hook argument.
	Call remove_hook if a SEC_EXCLUDE section is encountered.

2002-01-15  Nick Clifton  <nickc@cambridge.redhat.com>

	* elf32-xstormy16.c (xstormy16_reloc_map): Add new field 'table'.
	(xstormy16_reloc_map): Initialise new field with correct howto
	table.
	(xstormy16_reloc_type_lookup): Use 'table' field to locate correct
	howto entry.

2002-01-10  Michael Snyder  <msnyder@redhat.com>

	* elf.c (elfcore_write_prstatus): Use long instead of pid_t;
	(elfcore_write_pstatus): Use long instead of pid_t;
	* elf-bfd.h: Change prototypes to use long instead of pid_t;

2002-01-09  Jason Thorpe  <thorpej@wasabisystems.com>

	* elf.c: Update copyright years.
	(elfcore_grok_netbsd_note): Use NT_NETBSDCORE_PROCINFO
	and NT_NETBSDCORE_FIRSTMACH.  Improve a comment.

2002-01-08  Michael Snyder  <msnyder@redhat.com>

	Add capability to write corefile note sections, for gdb.
	* elf.c (elfcore_write_note): New function.
	(elfcore_write_prpsinfo): New function.
	(elfcore_write_prstatus): New function.
	(elfcore_write_pstatus): New function.
	(elfcore_write_prfpreg): New function.
	(elfcore_write_prxfpreg): New function.
	* elf-bfd.h: Add prototypes for above functions.

2002-01-08  Alexandre Oliva  <aoliva@redhat.com>

	* elf.c (elf_fake_sections): Propagate errors from
	elf_backend_fake_section.

2002-01-07  Jason Thorpe  <thorpej@wasabisystems.com>

	* Makefile.am (BFD32_BACKENDS): Add elf32-sh-nbsd.lo.
	(BFD32_BACKENDS_CFILES): Add elf32-sh-nbsd.c.
	(elf32-sh-nbsd.lo): New rule.
	* Makefile.in: Regenerate.
	* config.bfd (sh*le-*-netbsdelf*): New target.
	(sh*-*-netbsdelf*): New target.
	* configure.in: Include netbsd-core.lo for native sh*-*-netbsd*.
	(bfd_elf32_shnbsd_vec): New vector.
	(bfd_elf32_shlnbsd_vec): New vector.
	* configure: Regenerate.
	* elf32-sh-nbsd.c: New file.
	* targets.c: Update copyright years.
	(_bfd_target_vector): Add bfd_elf32_shlnbsd_vec and
	bfd_elf32_shnbsd_vec.

2002-01-07  Aldy Hernandez  <aldyh@redhat.com>

	* coff-rs6000.c (READ20): Use bfd_scan_vma.

2002-01-07  Geoffrey Keating  <geoffk@redhat.com>

	* elflink.h (elf_link_input_bfd): Don't ask for the merged offset
	of a symbol in a section that will be deleted.

2002-01-07  Nick Clifton  <nickc@cambridge.redhat.com>

	* po/es.po: New file: Spanish translation.
	* configure.in (ALL_LINGUAS): Add es.
	* configure: Regenerate.

2002-01-06  Steve Ellcey  <sje@cup.hp.com>

	* elfxx-ia64.c (is_unwind_section_name): Add target vector as
	argument so we can handle HP-UX specially.
	(elfNN_ia64_hpux_vec): New for use in is_unwind_section_name.
	(elfNN_hpux_backend_section_from_bfd_section): New for support
	of SHN_IA_64_ANSI_COMMON.
	(elfNN_ia64_relax_section): Add support for SHN_IA_64_ANSI_COMMON.
	(is_unwind_section_name): Add special HP-UX support.
	(elfNN_ia64_section_from_shdr): Add support for more sections.
	(elfNN_ia64_fake_sections): Modify is_unwind_section_name call and
	add support for more sections.
	(elfNN_ia64_additional_program_headers): Modify
	is_unwind_section_name call.
	(elfNN_ia64_modify_segment_map): Remove assumption that there is
	only one unwind section in segment.

2002-01-06  Alan Modra  <amodra@bigpond.net.au>

	* syms.c (_bfd_generic_make_empty_symbol): New function.
	* libbfd-in.h (_bfd_nosymbols_make_empty_symbol): Define as
	_bfd_generic_make_empty_symbol.
	* libbfd.h: Regenerate.
	* bfd-in2.h: Regenerate.
	* hppabsd-core.c (hppabsd_core_make_empty_symbol): Delete function.
	(hppabsd_core_get_symtab_upper_bound): Don't define.
	(hppabsd_core_get_symtab): Likewise.
	(hppabsd_core_print_symbol): Likewise.
	(hppabsd_core_get_symbol_info): Likewise.
	(hppabsd_core_bfd_is_local_label_name): Likewise.
	(hppabsd_core_get_lineno): Likewise.
	(hppabsd_core_find_nearest_line): Likewise.
	(hppabsd_core_bfd_make_debug_symbol): Likewise.
	(hppabsd_core_read_minisymbols): Likewise.
	(hppabsd_core_minisymbol_to_symbol): Likewise.
	(hppabsd_core_vec): Use BFD_JUMP_TABLE_SYMBOLS (_bfd_nosymbols).
	Formatting fixes.
	* hpux-core.c: Similarly.
	* irix-core.c: Similarly.
	* osf-core.c: Similarly.
	* sco5-core.c: Similarly.
	* binary.c (binary_make_empty_symbol): Remove function, define as
	_bfd_generic_make_empty_symbol.
	* ihex.c (ihex_make_empty_symbol): Likewise.
	* mmo.c (mmo_make_empty_symbol): Likewise.
	* ppcboot.c (ppcboot_make_empty_symbol): Likewise.
	* srec.c (srec_make_empty_symbol): Likewise.
	* versados.c (versados_make_empty_symbol): Likewise.
	* vms.c (_bfd_vms_make_empty_symbol): Remove.
	(vms_make_empty_symbol): Define as _bfd_generic_make_empty_symbol.
	* vms-gsd.c (_bfd_vms_slurp_gsd): Call bfd_make_empty_symbol
	rather than _bfd_vms_make_empty_symbol.
	* vms-misc.c (new_symbol): Likewise.

2002-01-05  Alan Modra  <amodra@bigpond.net.au>

	* section.c (bfd_section_init): Remove unnecessary initialisations.
	(bfd_section_list_clear): New function.
	(bfd_section_list_remove, bfd_section_list_insert): New macros.
	(_bfd_strip_section_from_output): Use them.
	* coffcode.h (coff_set_alignment_hook): Likewise.
	* elf32-mips.c (_bfd_mips_elf_final_link): Likewise.
	* elf64-mips.c (mips_elf64_final_link): Likewise.
	* elf64-mmix.c (mmix_elf_final_link): Likewise.
	* sunos.c (sunos_add_dynamic_symbols): Likewise.
	* xcofflink.c (_bfd_xcoff_bfd_final_link): Likewise.
	* bfd-in2.h: Regenerate.

	* netbsd-core.c (netbsd_core_file_p): Use bfd_make_section_anyway
	rather than doing our own section handling.  Clean up after errors
	with bfd_release and bfd_section_list_clear.  Handle unexpected
	flags.
	* aoutf1.h (sunos4_core_file_p): Likewise.
	* aix386-core.c (aix386_core_file_p): Likewise.
	* cisco-core.c (cisco_core_file_validate): Likewise.
	* ptrace-core.c (ptrace_unix_core_file_p): Likewise.
	* trad-core.c (trad_unix_core_file_p): Likewise.

	* hppabsd-core.c (hppabsd_core_core_file_p):  Clean up after errors
	with bfd_release and bfd_section_list_clear.
	* hpux-core.c (hpux_core_core_file_p): Likewise.
	* irix-core.c (irix_core_core_file_p): Likewise.
	* lynx-core.c (lynx_core_file_p): Likewise.
	* osf-core.c (osf_core_core_file_p): Likewise.
	* rs6000-core.c (rs6000coff_core_p): Likewise.
	* sco5-core.c (sco5_core_file_p): Likewise.

	* elf32-mips.c (_bfd_mips_elf_lo16_reloc): Simplify, and perform
	sign extension adjustments without conditionals.

2002-01-04  Jakub Jelinek  <jakub@redhat.com>

	* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Don't crash if
	CIE at .eh_frame start is removed due to no FDEs referencing it.

2002-01-04  Jason Thorpe  <thorpej@wasabisystems.com>

	* config.bfd (x86_64-*-netbsd*): New target.
	* configure.in (x86_64-*-netbsd*): Set COREFILE
	to netbsd-core.lo.
	* configure: Regenerated.

2002-01-03  Tom Rix  <trix@redhat.com>

	* xcofflink.c (_bfd_xcoff_bfd_final_link): Update .pad section ordering
	for recent bfd_make_section_anyway change.

2002-01-03  Nick Clifton  <nickc@cambridge.redhat.com>

	* elf32-arm.h (elf32_arm_final_link_relocate): Handle
	R_ARM_THM_PC11 reloc.

2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>

	* configure.in (LINGUAS): Add ja.
	* configure: Regenerate.
	* po/ja.po: Import from translation project's web site.

2002-01-02  Nick Clifton  <nickc@cambridge.redhat.com>

	* elf32-arm.h (elf32_arm_merge_private_bfd_data): Reformat error
	messages to ease translation into other languages.

For older changes see ChangeLog-0001

Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End: