1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220
|
Thu Dec 31 15:26:13 1998 Stan Shebs <shebs@andros.cygnus.com>
* corelow.c (core_ops): Don't initialize statically.
(init_core_ops): New function, fills in core_ops.
(_initialize_corelow): Use it.
Thu Dec 31 16:54:30 1998 David Taylor <taylor@texas.cygnus.com>
The following changes were made by
Elena Zannoni <ezannoni@kwikemart.cygnus.com>
Edith Epstein <eepstein@sophia.cygnus.com>
David Taylor <taylor@texas.cygnus.com>
* config/pa/tm-hppa.h (INSTRUCTION_NULLIFIED): Change to read
nullify instruction bit from IPSW only when we are not in a system
call.
(STRCAT_REGISTER, pa_do_strcat_registers_info): Additional
parameter -- precision.
* Makefile.in (BUILD_TUI): To build the tui, only when configured
with --enable-tui.
(YLWRAP): Use ylwrap to avoid problems on systems w/o bison.
(gdb$(EXEEXT)): Make it dependent on BUILD_TUI.
(all-tui): Remove dependency from phony target.
(c-exp.tab.c): Use ylwrap instead of bison.
(jv-exp.tab.c): Ditto.
(f-exp.tab.c): Ditto.
(m2-exp.tab.c): Ditto.
* configure.in (ENABLE_CFLAGS): Define and export BUILD_TUI.
* configure: Regenerated.
* c-typeprint.c (c_type_print_base): Get to the method name by
skipping over all the namespaces, classes and '::'.
* infcmd.c (run_command): Only call SOLIB_RESTART if it's
defined.
(detach_command): Ditto.
* infptrace.c (call_ptrace): Add some debugging code.
* infrun.c (follow_inferior_fork): Only define on HP.
(wait_for_inferior): Only call SOLIB_IN_DYNAMIC_LINKER if we have
shared libraries; restore test of IN_SOLIB_DYNSYM_RESOLVE_CODE
removed by HP.
* Makefile.in (ALLDEPFILES): Add somread.c, hp-psymtab-read.c,
hp-symtab-read.c.
(SFILES): Remove the above files
(COMMON_OBS): Remove somread.o
(SFILES): Add the tui files to this, so they get
included in etags tables.
(all-tui): New rule, which does a recursive make in the tui
subdir.
(gdb$(EXEEXT)): Add tui-all to the list of
dependencies, and add tui/libtui.a to the link list.
(tui/libtui.a): When recursing, pass down
${FLAGS_TO_PASS}. And don't echo the make command. This is
closer to what the other recursions do.
(HFILES_NO_SRCDIR) add hpread.h.
(COMMON_OBS): Add hp-psymtab-read.o, hp-symtab-read.o
Allow the TUI code to be conditionally enabled.
(TUI_TARGET, TUI_LIBRARY): New variables, whose values are set by
the configuration script. They're set to the empty string when
the TUI isn't enabled.
(gdb$(GDBEXT)): Use those, instead of referring to tui-all and
tui/libtui.a directly.
* Makefile.in: Avoid spurious relinking.
(gdb$(EXEEXT)): Depend on the actual tui library, not on a
fictitious target. Since the fictitious target never existed, make
would always relink.
(tui/libtui.a): Renamed from all-tui. Always recurse to make sure
the library is up to date.
(TUI_TARGET): Variable removed; there's no need for it any more.
* Makefile.in: Look for tui include files in the tui source dir.
* Use automake's `aclocal' program to generate aclocal.m4, to allow
us to use automake macros in configure.in with impunity.
* acconfig.h: Add an entry for the `TUI' symbol.
* acinclude.m4: New file, containing the code from the old
aclocal.m4. Incorporate (by reference) ../bfd/acinclude.m4, not
../bfd/aclocal.m4, since we only want bfd's local macros.
* aclocal.m4: Now automagically generated. Just run aclocal!
* annotate.c (annotate_catchpoint): New function.
* annotate.h: Taking the new includes (symtab.h and gdbtypes.h).
not taking the ansic C build fix.
(annotate_catchpoint): Declare.
* blockframe.c (blockvector_for_pc_sect): Check that the end of
the block is >= to the pc, not just >.
* breakpoint.c (create_temp_exception_breakpoint): #If it out --
nothing calls it.
(bpstat_stop_status): Don't call SOLIB_HAVE_LOAD_EVENT if it's not
defined; don't call SOLIB_HAVE_UNLOAD_EVENT if it's not defined.
(bpstat_get_triggered_catchpoints): If we don't have shared
library support, then don't call SOLIB_LOADED_LIBRARY_PATHNAME nor
SOLIB_UNLOADED_LIBRARY_PATHNAME.
(watch_command_1): Don't require a run before a watch command
unless we're on HP [it's an HP OS bug, not a generic limitation]
(catch_load_command_1): Don't define if no shared libraries.
(catch_command_1): Don't claim to support fork catchpoints unless
CHILD_INSERT_FORK_CATCHPOINT is defined, don't claim to support
vfork catchpoints unless CHILD_INSERT_VFORK_CATCHPOINT is defined,
don't clain to support shared library load catchpoints if shared
libraries aren't supported, and don't claim to support exec
catchpoints unless CHILD_INSERT_EXEC_CATCHPOINT is defined
(bpstat_do_actions): If we just set cmd to NULL, don't then try to
set it to cmd->next as we'll SEGV.
(bpstat_do_actions): Simplify significantly. It's
now almost as simple as before the merge and it no longer has the
HP bug that breakpoint commands are executed repeatedly.
(break_at_finish_command_1): Rewrite and make sure
selected_frame points to a frame before using it. Fix string
termination error.
(break_at_finish_at_depth_command_1): Ditto.
(can_use_hw_watchpoints): New static variable.
(read_memory_nobpt): Test for breakpoint type bp_none.
(insert_breakpoints): Test for breakpoint type bp_catch_exec;
insure have a current frame before getting the frame address.
(remove_breakpoints): Check for breakpoints of types bp_none,
bp_catch_fork, bp_catch_vfork, and bp_catch_exec.
(bpstat_stop_status): Fix updates of b->hit_count.
(bpstat_have_active_hw_watchpoints): New function.
(create_exec_event_watchpoint): New function.
(watch_command_1): Use can_use_hw_watchpoints.
(catch_fork_command_1): Change name of function to call from
target_create_catch_(v)fork_hook to create_(v)fork_even_catchpoint.
(delete_breakpoint): Test for already deleted breakpoints; add
support for bp_catch_fork, bp_catch_vfork, and bp_catch_exec
breakpoints.
(_initialize_breakpoint): Add can-use-hw-watchpoints to list of
user settable debugger variables.
(clear_command): When there is no argument
to the clear command, delete all breakpoints that are hit at
default line. This will include a breakpoint whose line number
does not correspond to the default line, but has been set at
the default address.
(delete_breakpoint): Don't call bpstat_clear_actions, instead
clear things explicitly; if clearing breakpoint_at, then also
clear any associated actions so that bpstat_do_actions won't try
to execute them.
(_initialize_breakpoint): Fix function name for bx command.
(tbreak_command): Remove static from declaration.
(maintenance_info_breakpoints): Ditto.
(reattach_breakpoints): New funct definition, used with with
hardware watchpoints
(breakpoint_1): Change format and add entries to bptypes[]
(maintenance_info_breakpoints): Function is no longer static
(_initialize_breakpoint): Removed a comment.
(exception_catchpoints_are_fragile,
exception_support_initialized): Define.
(breakpoint_here_p): Fixed syntax error in conditional
(disable_watchpoints_before_interactive_call_start): Fixed call to
check_duplicates. Need a section parameter.
(enable_watchpoints_after_interactive_call_stop): Fixed call to
check_duplicates. Need a section parameter.
(breakpoint_re_set_one): Fixed call to check_duplicates. Need a
section parameter.
(delete_command): Fixed syntax error in conditional
(breakpoint_re_set): Fixed some typos.
(args_for_catchpoint_enable): New type for handling exceptions.
(current_exception_event): New variable for handling exceptions.
(insert_breakpoints): Check for additional breakpoint types --
bp_catch_throw, bp_catch_catch, call_disabled. Also, do some
additional work to handle an exception catchpoint.
(remove_breakpoint): There are additional breakpoint types to
check for: Bp_catch_throw, bp_catch_catch, call_disabled. Also do
some additional work to remove the exception catchpoints
(breakpoint_init_inferior): New input parameter. If there are
exception catchpoints delete them.
(breakpoint_here_p): There are additional breakpoint enable
settings to check for: Shlib_disabled, call_disabled
(breakpoint_thread_match): There are additional breakpoint enable
settings to check for: Call_disabled
(ep_is_catchpoint): There are additional breakpoint types to check
for: Bp_catch_throw, bp_catch_catch
(ep_is_exception_catchpoint): New function
(bpstat_find_step_resume_breakpoint): New function
(bpstat_do_actions): Introduce a local copy of the bpstat
structure.
(print_it_normal): There are additional breakpoint types to check
for: Bp_catch_throw, bp_catch_catch Changeing the control
structure a bit (adding else ifs) Add code to print out info about
exceptions.
(bpstat_stop_status): There are additional breakpoint enable
settings to check for: Call_disabled. there are additional
breakpoint types to chack for: Bp_catch_catch and bp_catch_throw.
Check to see if stopped due to an exception. Minor fixes to the
catch_errors calls. Make sure to count all encountered
breakpoints. There was something funky going on previously with
the counting.
(bpstat_what): Add cases for new breakpoint types:
bp_catch_catch, bp_catch_throw.
(bpstat_get_triggered_catchpoints): Check for new breakpoint types
: Bp_catch_catch, bp _catch_throw.
(breakpoint_1): Account for new breakpoint types.
(describe_other_breakpoints): Account for new breakpoint enable
setting (call_disabled)
(check_duplicates): Account for new breakpoint enable setting
(call_disabled)
(disable_breakpoints_in_shlibs): New function
(disable_watchpoints_before_interactive_call_start): New function
(mention): Account for new breakpoint types.
(break_command_1): Some additional checking for a valid PC.
(watch_command_1): Some dditional checking to prevent a watch
before a run command.
(ep_parse_optional_filename): Simplified for loop.
(create_exception_catchpoint): New function
(cover_target_enable_exception_callback): New function
(handle_gnu_4_16_catch_command): This used to be thcatch_command_1
function.e
(create_temp_exception_breakpoint): New function
(catch_command_1): Differs from gdb 4.16 and gdb 4.17. Is now
calling catch_exception_command_1 using the EX_EVENT_CATCH and
EX_EVENT_THROW values as parameters.
(clear_command): Additional comments
(delete_breakpoint): Handle exceptions. Check for additional
breakpoint enable settings: Shlib_disabled, call_disabled.
(delete_command): Hp folks are claiming that we should not delete
shlib_event breakpoints
(breakpoint_re_set_one): Moved call to check_duplicates. Add new
breakpoint types to switch statement.
(breakpoint_re_set_thread): New function
(enable_command): Account for new breakpoint types.
(insertion_state_t): New enumerated type.
(remove_breakpoint): New param in funct prototype.
(insert_breakpoints): Check for bp_catch_fork and bp_catch_vfork.
(remove_breakpoints): Changed call to remove_breakpoint.
(detach_breakpoints): New function.
(remove_breakpoint): New parameter, is. Also changed the
way b->inserted is set.
(ep_is_catchpoint): New function.
(ep_is_shlib_catchpoint): New function.
(print_it_normal): Check for bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec. Also new code
to print out catchpoints properly.
(bpstat_stop_status): Check for bp_catch_fork, bp_catch_vfork,
and bp_catch_exec. Also, some code to check for catching a
shared library load/unload.
(bpstat_what): Added catch_shlib_event to class enumeration.
Defined new macro, shlr. Expanded the bpstat_what_main_action
table. Add cases for bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, and bp_catch_exec.
(bpstat_get_triggered_catchpoints): New function.
(breakpoint_1): Changes to bptypes definition. Also check for
bp_catch_load, bp_catch_unload, bp_catch_fork, bp_catch_vfork,
bp_catch_exec. Similar changes to the switch statement.
(set_raw_breakpoint): Initialize new breakpoint structure fields.
dll_pathname, triggered_dll_pathname, forked_inferior_pid,
exec_pathname.
(create_solib_load_unload_event_breakpoint): New function.
(create_solib_load_event_breakpoint): New function.
(create_solib_unload_event_breakpoint): New function.
(create_fork_vfork_event_catchpoint): New function.
(create_fork_event_catchpoint): New function.
(create_vfork_event_catchpoint): New function.
(mention): New cases for bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(ep_skip_leading_whitespace): New function.
(ep_find_event_name_end): New function.
(ep_parse_optional_if_clause): New function.
(ep_parse_optional_filename): New function.
(catch_fork_kind): New enumerated type.
(catch_fork_command_1): New function.
(catch_exec_command_1): New function.
(catch_load_command_1): New function.
(catch_unload_command_1): New function.
(catch_throw_command_1): New function.
(catch_command_1): Now calls catch_throw_command_1.
(tcatch_command): New function.
(delete_breakpoint): Changed call to remove_breakpoint.
Also free the new fields in the breakpoint structure.
(breakpoint_re_set_one): Handle bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(disable_command): Handle bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(enable_command): Handle bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork, bp_catch_exec.
(_initialize_breakpoint): Alter add_com call for catchpoints,
add add_com call for watchpoints.
* breakpoint.h (enum bptype): New entries bp_catch_catch,
bp_catch_throw, and bp_none, bp_catch_load, bp_catch_unload,
bp_catch_fork, bp_catch_vfork,bp_catch_exec. Add declarations for
new functions bpstat_have_active_hw_watchpoints and
create_exec_event_catchpoint.
(tbreak_command): Add prototype.
(update_breakpoints_after_exec): Add prototype; update comments.
(reattach_breakpoints): New funct prototype declaration.
(enable): New enumerated value call_disabled.
(bpstat_find_step_resume_breakpoint): New funct decl.
(inf_context): New enumerated type.
(breakpoint_re_set_thread): New funct decl.
(breakpoint_init_inferior): New parameter.
(disable_watchpoints_before_interactive_call_start): New funct decl.
(enable_watchpoints_after_interactive_call_stop): New funct decl.
(disable_breakpoints_in_shlibs): New funct decl.
(struct breakpoint): New fields, dll_pathname,triggered_dll_pathname,
forked_inferior_pid,exec_pathname BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK.
(bpstat_get_triggered_catchpoints): New function.
(detach_breakpoints): New function.
(create_solib_load_event_breakpoint): New function.
(create_solib_unload_event_breakpoint) New function.
(create_fork_event_catchpoint): New function.
(create_vfork_event_catchpoint): New function.
(ep_is_catchpoint): New function.
(ep_is_shlib_catchpoint) New function.
(enum bpstat_what_main_action): New entry.
* buildsym.c (finish_block): Get rid of processing_hp_compilation;
handle LOC_INDIRECT case. Set the BLOCK_GCC_COMPILED to the right
compiler.
(push_context): Add symbols for parameters to the context_stack.
(merge_symbol_lists): New function. Merges two symbol lists.
(struct context_stack): Add new field param.
(processing_hp_compilation): New external var.
* c-exp.y: Use external flag hp_som_som_object_present to decide
whether code was compiled by HP's compilers. Add two new C++
tokens for true and false.
(yylex): Check for template name is done differently for the
HP/aCC compiler case; change some of the template processing code
for handling HP aCC templates.
* c-lang.c (c_create_fundamental_type): Added case to handle
template args. Handle FT_BOOLEAN type. Set no sign flag for
FT_CHAR.
(cplus_builtin_types): New structure for c++ builtin types.
(cplus_language_defn): Use cplus_builtin_types instead of
c_builtin_types.
* c-typeprint.c (c_type_print_base): Don't print 'privete' label
for a class if all members are private, similarly don't print
'public' for a struct. Add support for sized enums (HP/aCC). get
rid of the 'static' keyword printed by the demangler for member
function, when printing the type of a class. 'static' will be
added by this function. If the demangled name is null, and the
method is not stubbed, get the signature by looking at the
information stored in the symbol structure. Remove printing of
'const' and 'volatile' keywords for methods. This is now taken
care as part of the demangled member names.
(cp_type_print_method_args): New function. To print a C++ method
arguments and name to the output stream.
(c_type_print_cv_qualifier): New function. Print out "const" and
"volatile" attributes.
(c_type_print_varspec_prefix): Print const or volatile qualifiers.
(c_type_print_args): Print 'void' for c++.
(c_type_print_varspec_suffix): Print 'void' for a no argument
function.
(c_type_print_base): Print const or volatile qualifiers. Do not
print 'unnamed union' if HP aCC compiler used. Distinguish
between struct and class based on the DECLARED_TYPE. Handle
HP/aCC compiler case for not printing vtable. Add Template
support.
(cp_type_print_derivation_info): Print out 'protected' when
appropriate. This applies only to HP's compilers, not gcc.
(c_val_print): Added parameter embedded_offset. Add
embedded_offset to valaddr in function calls; fix calls to
val_print and cp_print_value_fields. process TYPE_CODE_METHOD as
well. moved call to check_typedef out of conditional. added
embedded offset param to val_print call.
(c_value_print): Add new parameter to call to val_print.
handle pointer to class case. Attempt to
determine the real type of the object to be printed.
ensure that const char *, const unsigned char *
come out without the type but the volatile variants
and the signed variants don't.
* coff-solib.c (coff_solib_add): Add parameters to call
to symbol_file_add.
* coff-solib.h: (Solib_REMOVE_INFERIOR_HOOK): New macro. defined
to 0. functionality not implemented for coff.
(SOLIB_CREATE_CATCH_LOAD_HOOK): New macro, generate error message
for coff.
(SOLIB_CREATE_CATCH_UNLOAD_HOOK): Ditto.
(SOLIB_HAVE_LOAD_EVENT): Ditto.
(SOLIB_LOADED_LIBRARY_PATHNAME): Ditto.
(SOLIB_HAVE_UNLOAD_EVENT): Ditto.
(SOLIB_UNLOADED_LIBRARY_PATHNAME): Ditto.
(SOLIB_IN_DYNAMIC_LINKER): Ditto.
(SOLIB_RESTART): Ditto.
* command.c (find_cmd): New function. (lookup_cmd_1): Call it,
change parsing if tui_version or xdb_commands is set.
(_initialize_command): Install new alias if xdb_commands is set.
* complaints.h: Add ifdef...endif pair at beginning and end of file.
* config.in, configure: Regenerated.
* config/pa/hppabsd.mh (NATDEPFILES): Added new files
hp-psymtab-read.o and hp-symtab-read.o.
* config/pa/hppahpux.mh (NATDEPFILES): Ditto.
* config/pa/hppahpux.mh (TERMCAP): Use -lHcurses.
* config/pa/hppaosf.mh (NATDEPFILES): Ditto.
* config/pa/hpux1020.mh (TERMCAP): Use -lHcurses.
(MH_CFLAGS): New flag, -D__HP_CURSES, this define
is used by HP's linker to find the correct curses library.
* config/pa/hpux1020.mh: New file.
* config/pa/hpux1020.mt: New file.
* config/pa/hpux1100.mh (TERMCAP): Link against -lcurses, not
-lHcurses. The latter does not contain mvwaddstr, wscrl, or
wstbwlmkfzz.
* config/pa/hpux1100.mh (TERMCAP): Use -lHcurses.
(MH_CFLAGS): New flag, -D__HP_CURSES, this define
is used by HP's linker to find the correct curses library.
* config/pa/hpux1100.mh (TERMCAP): When hosting on hpux 11.00, use
-lHcurses rather than -lcurses.
* config/pa/hpux1100.mh: New file.
* config/pa/hpux1100.mt: New file.
* config/pa/nm-hppah.h (CHILD_HAS_SYSCALL_EVENT): New macro
(CHILD_THREAD_ALIVE): New macro
(STOPPED_BY_WATCHPOINT): Add a condition to the macro,
! stepped_after_stopped_by_watchpoint
(TARGET_ENABLE_HW_WATCHPOINTS): New macro
(hppa_enable_hw_watchpoints): New funct decl
(TARGET_DISABLE_HW_WATCHPOINTS): New macro
( hppa_disable_hw_watchpoints): New funct decl
these are for HP's implementation of fast
watchpoints (via page protection).
(target_pid_to_str): New macro, calls hppa_pid_to_str
(target_tid_to_str): New macro, calls hppa_tid_to_str
* config/pa/nm-hppah.h (CHILD_POST_WAIT): Delete;
(CHILD_CREATE_CATCH_FORK_HOOK): Replace with
CHILD_INSERT_FORK_CATCHPOINT and CHILD_REMOVE_FORK_CATCHPOINT.
(CHILD_CREATE_CATCH_VFORK_HOOK): Replace with
CHILD_INSERT_VFORK_CATCHPOINT and CHILD_REMOVE_VFORK_CATCHPOINT.
(CHILD_CAN_FOLLOW_VFORK_PRIOR_TO_EXEC,
CHILD_INSERT_EXEC_CATCHPOINT, CHILD_REMOVE_EXEC_CATCHPOINT,
CHILD_HAS_EXECD, CHILD_REPORTED_EXEC_EVENTS_PER_EXEC_CALL,
CHILD_POST_ATTACH, TARGET_HAS_HARDWARE_WATCHPOINTS,
TARGET_CAN_USE_HARDWARE_WATCHPOINT,
TARGET_REGION_SIZE_OK_FOR_HW_WATCHPOINT,
TARGET_RANGE_PROFITABLE_FOR_HW_WATCHPOINT, STOPPED_BY_WATCHPOINT,
HAVE_NONSTEPPABLE_WATCHPOINT, target_insert_watchpoint,
target_remote_watchpoint): New macros.
* config/pa/nm-hppah.h (CHILD_XFER_MEMORY): Reinsert accidentally
deleted define.
* config/pa/nm-hppah.h:
(PREPARE_TO_PROCEED): Defined macro to use
hppa_prepare_to_proceed.
(hppa_pid_to_str): Extern decl.
(hppa_tid_to_str): Extern decl.
(target_pid_or_tid_to_str): New macro definition.
(hppa_pid_or_tid_to_str): Extern decl.
(ENSURE_VFORKING_PARENT_REMAINS_STOPPED): New macro - for
handling events caused by a call to vfork.
(hppa_ensure_vforking_parent_remains_stopped): Extern decl.
(RESUME_EXECD_VFORKING_CHILD_TO_GET_PARENT_VFORK): New macro -
for handling events caused by a call to vfork.
(hppa_resume_execd_vforking_child_to_get_parent_vfork): Extern decl.
* config/pa/nm-hppah.h: Fix PREPARE_TO_PROCEED macro.
* config/pa/nm-hppah.h: Fix for gcc compile on HPUX, change
PT_RDUAREA to PT_RUAREA.
* config/pa/nm-hppah.h: Introduced an HPUXHPPA define.
A bit of a hack so that I can ifdef some code that
only works for the HP wildebeest debugger.
* config/pa/nm-hppah.h: Lots of new CHILD_ defines;
process_event_kind enum.
* config/pa/tm-hppa.h (BREAKPOINT32): New define.
(CALL_DUMMY_HAS_COMPLETED): New define.
* config/pa/tm-hppa.h (STACK_ALIGN): New macro.
(NO_EXTRA_ALIGNMENT_NEEDED): New macro.
(PC_REQUIRES_RUN_BEFORE_USE): New macro.
(REGISTER_NAMES): Formatting in file changed.
(CR27_REGNUM): Base register for thread local storage.
(USE_STRUCT_CONVENTION): New macro used to decide whether
a function returning a value of type type will
put it on the stack or into registers (based on the
PA risc calling conventions).
(EXTRACT_RETURN_VALUE): Fixed calculation for extracting return value.
(VALUE_RETURNED_FROM_STACK): New macro.
(TARGET_READ_PC): Declared the function used in the definition.
(SKIP_TRAMPOLINE_CODE): Declared the function used in the definition.
(TARGET_WRITE_PC): Declared the function used in the definition.
(TARGET_READ_FP): Declared the function used in the definition.
* config/pa/tm-hppa.h (STRCAT_REGISTER): Define macro for
future use.
(pa_do_strcat_registers_info): Moved function decl from
defs.h to this HPUX specific .h file.
* config/pa/tm-hppa.h (USE_STRUCT_CONVENTION): Type_LENGTH returns
bytes, not bits; fix off by 8 error.
* config/pa/tm-hppa.h:
New comment for obj_unwind_info definition
New typedef, obj_private_struct
* config/pa/tm-hppa.h: Delete most target_ macros -- use default
versions instead; remove extraneous comma from proc_wait macro.
* config/pa/tm-hppa.h: Get rid of macro HP_COMPILED_TARGET.
* config/pa/tm-hppa.h: Removed redefinitions of
USE_STRUCT_CONVENTION and STACK_ALIGN macros.
* config/pa/tm-hppa.h: Some new definitions
New macros: Arg0_REGNUM, ARG1_REGNUM, ARG2_REGNUM, ARG3_REGNUM.
target_pid_to_exec_file, target_acknowledge_forked_child,
target_create_catch_fork_hook, target_create_catch_vfork_hook,
target_has_forked, target_has_vforked, require_attach,
require_detach, proc_wait
New funct decls: Hppa_pid_to_exec_file,
hppa_acknowledge_forked_child, hppa_create_catch_fork_hook,
hppa_create_catch_vfork_hook, hppa_target_has_forked,
hppa_target_has_vforked, hppa_require_attach,
hppa_require_detach, process_wait
(unwind_table_entry): Added comments to describe struct fields.
* config/pa/tm-hppah.h (somsolib.h): Include it.
* config/pa/tm-hppah.h:
(CHILD_ENABLE_EXCEPTION_CALLBACK): New define
(CHILD_GET_CURRENT_EXCEPTION_EVENT): New define
* configure.host (hppa-*-hpux10.20, hppa-*-hpux11.0*): New configs.
* configure.in (AC_CHECK_HEADERS): Add check for term.h.
* configure.in: Add an --enable-tui argument.
* configure.in: Construct tui/Makefile from tui/Makefile.in.
* configure.in: Use AM_PROG_CC_STDC. If we have the GUI, then we
need this to process libgui.h.
* convex-tdep.c (decout): Change FILE to GDB_FILE.
* corefile.c: Include objfiles.h, symfile.h.
(core_file_command): Attempt to determine the name of the symbol
file from the core file.
(read_memory_string): New function.
* corefile.c (core_file_command): Temporary hack to make non-hpux
work. For, non-hpux, t->to_core_file_to_sym_file does not have a
reasonable value. No target_ops vector on the stack gives it a
non-zero value. fix later.
* corelow.c (core_file_to_sym_file): Added new local variable,
failing command, and do some explicit type castings.
(core_ops): Add three new fields: to_has_syscall_event,
to_enable_exception_callback, to_get_current_exception_event.
Necessary since we still have oldstyle initialization in
this file
* corelow.c: Include unistd.h
(core_file_to_sym_file): New function
(core_file_thread_alive): New function
(core_ops): Added new target ops vector fields. see below. And
yes we definitiely need to initialize them here, as long as
we're using static initialization.
* cxux-nat.c (add_shared_symbol_files): Additonal params for calls
to symbol_file_add.
* defs.h (gdb_file_isatty): New function decl.
* defs.h (GDB_FILE): If TUI is defined, define a structure rather
than making this an alias for FILE.
(gdb_stdout, gdb_stderr): If TUI is defined, then define these
as pointers to variables of type GDB_FILE rather than making them
be aliases for stdout and stderr.
* defs.h (TUIDO): Add definition conditionalized on definition
(or lack thereof) of TUI.
* defs.h (command_class): Add two additional values.
(precision_type): New enum.
* defs.h (gdb_fclose): Add declaration.
* defs.h (store_address): Change prototype to match function.
* defs.h (tui_version, xdb_commands, dbx_commands): Add decl's.
* defs.h (gdb_file_deallocate): New function declaration
* defs.h:
(streamtype): New enumerated type to distinguish between
output to a FILE and output to a buffer.
(tui_stream): New struct type, named GDB_FILE. Contains,
streamtype, FILE, buffer, and bufferlength fields.
(gdb_stdout): Of type GDB_FILE, will pass this around gdb
rather than stdout.
(gdb_stderr): Of type GDB_FILE, will pass this around gdb
rather than stderr.
(fputs_unfiltered_hook): Change stream parameter from FILE to
GDB_FILE
(flush_hook): Change stream parameter from FILE to GDB_FILE
(gdb_fclose): Fix declaration for gdb_fclose; parameter is now of
type GDB_FILE **
(gdb_file_adjust_strbuf): New function declaration. function lives in
utils.c.
(gdb_file_init_astring): New function declaration. function lives
in utils.c
(gdb_file_get_strbuf): New function declaration. function lives
in utils.c
* defs.h: Additional include files included when TUI is defined.
* defs.h: Funct decl source_full_path_of.
* demangle.c: Add HP_DEMANGLING_STYLE_STRING.
* demangle.c: Added new demangling style, EDG_DEMANGLING_STYLE_STRING,
to the demanglers structure. This is for support of
Kuck & Assoc.'s changes for demangling.
* eval.c (evaluate_subexp_standard): C++ member function changes.
* eval.c (evaluate_subexp_standard): Verify TYPE_TARGET_TYPE is
non NULL before dereferencing it.
* eval.c (evaluate_subexp_standard): With HP/aCC compiler it is not possible
to perform inferior calls via function pointers.
Resolve calls to overloaded functions using find_overload_match.
We cannot handle HP/aCC pointers to member functions.
Deal with HP/aCC pointers to members in various kind of expressions.
* f-lang.c (f_printchar): Change FILE to GDB_FILE.
(f_printstr): Ditto.
(emit_char): Ditto.
* f-lang.c (f_printstr): Change stdout to gdb_stdout.
* f-typeprint.c (f_print_type): Change FILE to GDB_FILE.
(f_type_print_varspec_prefix): Ditto.
(f_type_print_args): Ditto.
(f_type_print_varspec_suffix): Ditto.
(print_equivalent_f77_float_type): Ditto.
(f_type_print_base): Ditto.
* findvar.c (): Hp snapshot 3 changes. (extract_address): Coerce
return value from extract_unsigned_integer to CORE_ADDR.
(store_address): Change val from CORE_ADDR to LONGEST; changes to
support machines where CORE_ADDR and LONGEST are different sizes.
(get_saved_register): Coerce arg to store_address to LONGEST.
(read_relative_register_raw_bytes): Cast last arg to
store_address to LONGEST. (read_register): Cast return from
extract_address to a CORE_ADDR. (write_register_pid): Change val
from LONGEST to CORE_ADDR. (read_pc_pid): Save and restore
inferior_pid if necessary. (write_pc_pid): Ditto.
(read_var_value): Cast arg to store_address.
* findvar.c (read_relative_register_raw_bytes_for_frame): New
function.
(read_relative_register_raw_bytes): Call it.
* findvar.c (symbol_read_needs_frame): Handle LOC_THREAD_LOCAL_STATIC and
LOC_INDIRECT.
* fork-child.c (fork_inferior): Chenge fifth parameter to be a
function returning void.
* fork-child.c (fork_inferior): Delete unused variable f.
* fork-child.c:
(Startup_WITH_SHELL): New macro -- interim fix for a bug
(breakup_args): New function -- breaks up an argument string into
an argument suitable for passing into execvp().
(fork_inferior): Handling problems with starting up gdb with a shell.
-- again, this appears to be an interim fix.
* fork-child.c:
(fork_inferior): Added a comment
(clone_and_follow_inferior): New function.
(startup_inferior): Minor formatting changes.
* fork-child.c:
(fork_inferior): Hp change is problematic. The -f option has
different meanings for different shells. It is particularly
inappropriate for bourne shells.
* fork-child.c:
(fork_inferior): Added new parameter, pre_trace_fun.
pre_trace_fun is a function pointer. For some targets,
like HPUX, this function gets called to prepare for forking
a child.
* fork-child.c:
(fork_inferior): Fixed call to init_trace_fun
* fork-child.c:
Moved definition of STARTUP_WITH_SHELL to inferior.h
Added a DEBUGGING macro. Currently set to 0. May remove
later.
breakup_args: Add DEBUGGING ifdefs. more sophisticated
parsing to break up args.
(fork_inferior): Rename kshell variable to shell. new local
variable, tryname. Make use of STARTUP_WITH_SHELL macro.
More error processing if starting up with a shell.
(startup_inferior): Distinguish between starting up with a shell
and not doing so.
* gdbthread.h:
Declarations for load_infrun_state and save_infrun_state take
an additional parameter.
* gdbthread.h: Note that sometime between gdb 4.16 and 4.17,
thread.h was renamed gdbthread.h
(load_infrun_state): Additional parameters
(store_infrun_state): Additional parameters
* gdbthread.h: Include breakpoint.h
* hp-psymtab-read.c (QUICK_LOOK_UP): Redefine to be 0.
(hpread_build_psymtabs): Deal with enums.
(hpread_start_psymtab): Include section offset.
(hpread_end_psymtab): Take care of offset.
* hp-psymtab-read.c (TRUE): Define.
(FALSE): Define.
(file_exists): New function. Checks for existance of file.
(hpread_pxdb_needed): Rewrite.
(hpread_quick_traverse): Use correct demangling style.
Handle F77 case.
(hpread_get_header): Rewrite.
(hpread_get_textlow): Add support for DOC_FUNCTION.
(hpread_build_psymtabs): Make sure we do the right thing
for pxdb and F77.
* hp-psymtab-read.c (hpread_pxdb_check): Change parenthesis positions.
* hp-psymtab-read.c (hpread_quick_traverse): Compare CORE_ADDR
variable end_addr to 0 instaed of NULL to get rif of gcc warning.
* hp-psymtab-read.c:
(Hpread_get_textlow): Added param to function
Defined convennience macros and some datatypes and variables for
processing the quick lookup-tables. Looks like the code existed
before, but has been munged.
(hpread_pxdb_needed): Major rearrangements of code. Additional local
variables. Also, more extensive checking for various scenarios:
debug info for optimized code vs. unoptimized code, pxdb has been
run vs. pxdb has not been run.
(VALID_FILE): New macro
(VALID_MODULE): New macro
(VALID_PROC): New macro
(VALID_CLASS): New macro
(FILE_START): New macro
(MODULE_START): New macro
(PROC_START): New macro
(FILE_END): New macro
(MODULE_END): New macro
(PROC_END): New macro
(FILE_ISYM): New macro
(MODULE_ISYM): New macro
(PROC_ISYM): New macro
(VALID_CURR_FILE): New macro
(VALID_CURR_MODULE): New macro
(VALID_CURR_PROC): New macro
(VALID_CURR_CLASS): New macro
(CURR_FILE_START): New macro
(CURR_MODULE_START): New macro
(CURR_PROC_END): New macro
(CURR_FILE_ISYM): New macro
(CURR_MODULE_ISYM): New macro
(CURR_PROC_ISYM): New macro
(TELL_OBJFILE): New macro
(pst_syms_struct): New typedef to keep track of the start/end symbol
table (LNTT) indices of psymtabs created so far.
(pst_syms_count): New variable
(pst_syms_size): New variable
(told_objfile): New variable
(init_pst_syms): New function. sets up psymtab symbol index stuff.
(clear_pst_syms): New function. clean up psymtab symbol index stuff.
(record_pst_syms): New function. add info about newest psymtab to symbol
index table.
(find_next_pst_start): New function. Find a suitable symbol table index.
(find_next_file_isym): New function
(find_next_proc_isym): New function
(find_next_module_isym): New function
(scan_procs): New function. Scan and record partial symbols for all
functions starting from specified index and in a specified code range.
(hpread_quick_traverse: Major rearrangement of code. The function
now uses all the nifty macros. There are some new local variables.
Check for EDG_DEMANGLING style. ifdef out some code for handling F77.
Previously, the function looped over all the modules in the table.
Now, the function loops over all the files, modules, and procedures.
With HP aCC and CTTI, it is possible for a compiled object to have a
file and no module.
(hpread_build_psymtabs): Added a section of code ifdefed by
QUICK_LOOK_UP. It check to see whether or not there are any globals
in the executable. Fix number of params to hpread_start_psymtab call.
Some changes to the way DNTT_TYPE_MODULE is handled.
(hpread_get_textlow): Change in signature, minor code changes. The
function finds the low address associated with a specified symbol.
In looking for the address for the symbol avoid going of the end of
the LNTT file.
* hp-psymtab-read.c: Change TRUE to 1 and FALSE to 0. Do some
reformatting.
* hp-psymtab-read.c: Include demangle.h
(trans_lang): New function to let gdb know the correct language.
(hpread_quick_traverse): Use ARM style demangling.
Demangle procedures names.
Use gdb language names instead of hp language names.
Add symbol to list using its demangled name.
* hp-psymtab-read.c: New file.
(hpread_call_pxdb): New function. Call PXDB to process our file.
(hpread_pxdb_check): New function. Return TRUE if the file needs
pre-processing by PXDB and we have thus called PXDB to do this
processing and the file needs to be re-loaded.
(hpread_quick_traverse): New function. Traverse the quick look-up
tables, building a set of psymtabs.
(hpread_get_header): New function. Get appropriate header from obj
file, based on pxdb type
(hpread_symfile_init): No change from hpread.c
(hpread_build_psymtabs): If there are quick lookup tables, read those,
then scan the global section LNTT. Otherwise, just scan the whole LNTT.
Changed: Add a global function entry to the global partial symbol list.
Handle end of symbols, for QLT case.
In case of TAGDEF, if it is a class or a template, add the name to the
var_namespace, so that it is known as a type by gdb.
In case of CONSTANT, and it is global, add it to the globals.
(hpread_symfile_finish): No change from hpread.c
(hpread_get_lntt): Make it not static
(hpread_get_gntt): No change from hpread.c
(hpread_get_slt): Make it not static
(hpread_get_textlow): No change from hpread.c
(hpread_start_psymtab): No change from hpread.c
(hpread_end_psymtab): No change from hpread.c
* hp-symtab-read.c (hpread_get_scope_start): Renamed. It was
hpread_get_depth.
(hpread_type_translate): Distinguish between signed and unsigned char
types.
(hpread_psymtab_to_symtab): Set flag for hp compilation.
(hpread_read_function_type): Append symbols for parameters to local
list as well as to the global list. Get the parameters types from the
local list instead of the global list.
(hpread_read_struct_type): Add new field num_fn_fields to next_fn_field
structure. Rewrite handling of templates
(hpread_type_lookup): Change handling of dntt_type_modifier.
(hpread_process_one_debug_symbol): Call hpread_get_scope_start instea
of hpread_get_depth. Handle enum as well.
(hpread_get_scope_depth): New function. Get nesting depth for a
DNTT entry.
* hp-symtab-read.c (hpread_psymtab_to_symtab): Set
processing_gcc_compilation to 0.
* hp-symtab-read.c (hpread_psymtab_to_symtab_1): Change stdout to
gdb_stdout; change fflush to gdb_flush.
(hpread_psymtab_to_symtab): Change fflush to gdb_flush.
* hp-symtab-read.c (hpread_read_enum_type): Declare variable.
(hpread_read_struct_type): Eliminate references
to 'args' member of fn_field.
* hp-symtab-read.c (hpread_read_struct_type): A static member
is now indicated by the bitsize field, not the bitpos.
Initialize physname to empty.
(fix_static_member_physnames): Use new macros to deal with
physnames.
* hp-symtab-read.c (hpread_read_struct_type): Change references
to bitpos member of struct field to use the FIELD_BITPOS macro.
* hp-symtab-read.c (hpread_read_struct_type): Comment out reference to
obsolete field fn_field.args.
Add struct complaint definitions for complaints.
(hpread_read_struct_type): Change call to complain.
(hpread_read_array_type): Change call to complain.
(hpread_type_lookup): Change call to complain.
(hpread_process_one_debug_symbol): Change calls to complain.
(hpread_type_translate): Change calls to complain.
* hp-symtab-read.c (hpread_read_struct_type): Make sure bitvector
has been allocated before calling has_vtable.
* hp-symtab-read.c (hpread_read_struct_type): Revert change,
just check for vtable without checking for bitvectors too.
* hp-symtab-read.c:
(Hpread_expand_symtab): Change name of local variable from
at_end_of_module to at_module_boundary.
Also, if demangling style is already EDG, do not reset it
to the HP demangling style.
Change at_end_of_module param to hpread_process_one_debug_symbol
call to at_module_boundary.
No longer break out of loop when reach end of module. With CTTI,
the compiler can generate function symbols which are not in
any module. Typically they show up after the end of one
module and before the start of the next module.
(hpread_read_struct_type): Check that the debug info for
a TEMPLATE_ARG is correct.
(hpread_process_one_debug_symbol): Change name of at_end_of_module_p
param to at_module_boundary_p.
Also set *at_module_boundary_p = -1 if missing a module end and set
it to 1 when finished expanding the debug info.
Handle TLS variable.
* hp-symtab-read.c: Include defs.h, symtab.h, gdbtypes.h, complaints.h.
(fixup_class): New static variable.
(fixup_method): New static variable.
(hpread_get_location): Rewrite.
(hpread_has_name): Add cases for DNTT_TYPE_DOC_FUNCTION and
DNTT_TYPE_DOC_MEMFUNC
(hpread_expand_symtab): Use HP demangling style.
Set hp_som_som_object_present to 1.
(hpread_type_translate): Error out if not immediate. Issue warning
if there is an unhandled type code.
(error_in_hpread_type_translate_complaint): Remove this structure.
(hpread_read_enum_type): Don't assume size of enum is always 4 bytes.
(hpread_read_function_type): Add new parameter to indicate a new block.
Do not add the parameters to the symbol list.
If the type was read in earlier, do not modify the type structure.
If we are creating a new block, set the local symbol list to be the
param list.
Need to mark this type as preprocessed.
(hpread_read_doc_function_type): New function. Read and internalize
a native DOC function debug symbol.
(hpread_read_struct_type): A method can be of type doc_function and
doc_memfunc too.
Handle case in which a method is read before its class. Deal with
incomplete method types.
Handle cases in which HP/aCC compiler creates operator names w/o
the 'operator' keyword. Rewrite the loop over the fileds.
(fix_static_member_physnames): New function. Adjust the physnames for
each static member.
(fixup_class_method_type): New function. Fix-up the type structure for a
class.
(hpread_read_array_type): Change complaint to warning.
(hpread_type_lookup): Add case for DNTT_TYPE_DOC_FUNCTION.
For structures/classes set static member to point to strings with full
names.
Change calls to hpread_read_function_type to pass extra parameter.
(hpread_record_lines): Handle case for SLT_NORMAL_OFFSET.
(class_of): New function. Given a function "f" which is a member of a class,
find the classname that it is a member of.
(hpread_process_one_debug_symbol): Deal with possible alias field from the
som record for the Function or Entry type.
Do the demangling ourselves if the gdb demangler failed.
Add support for DOC functions.
For function types, add parameters to local list.
(hpread_get_scope_depth): Make this function a no-op.
(hpread_adjust_bitoffsets): New function. Adjust the bitoffsets for all
fields of an anonymous union.
(hpread_get_next_skip_over_anon_unions): New function. Skip over anonymous
unions.
* hp-symtab-read.c: Include demangle.h
(hpread_expand_symtab): Ensure we are using ARM-style demangling.
(hpread_process_one_debug_symbol): Set the mangled and demangled
names for functions.
Record the class name to generate the demangled names of member
functions.
* hp-symtab-read.c: New file.
(hpread_get_depth): No change from hpread.c
(hpread_get_line): No change from hpread.c
(hpread_get_location): No change from hpread.c
(hpread_has_name): Make it not static. Return 1 for DNTT_TYPE_BLOCKDATA
and DNTT_TYPE_MEMFUNC. Return 0 for CLASS_SCOPE, REFERENCE,PTRMEM,
PTRMEMFUNC, CLASS, GENFIELD, VFUNC, MEMACCESS, INHERITANCE,
FRIEND_CLASS, FRIEND_FUNC, MODIFIER, OBJECT_ID, TEMPLATE, TEMPLATE_ARG,
FUNC_TEMPLATE, LINK.
(hpread_psymtab_to_symtab_1): No changes from hpread.c
(hpread_psymtab_to_symtab): Make it a static function
(hpread_expand_symtab): Modified
(hpread_type_translate): If not typep.dntti.immediate do not abort,
but complain and return. Same for default action. Handle more HP_TYPEs.
(hpread_lookup_type): Initially allocate a correct-size type-vector.
(hpread_alloc_type): Reset type_addr only if a type was allocated.
(hpread_read_enum_type): If this has already a type associated, return.
(hpread_read_function_type): Do different things depending on whether
function is a MEMFUNC, a TEMPLATE, a FUNCTION som record.
Do not use the LOC_REGPARM_ADDR symbol class.
(hpread_read_struct_type): Handle classes and templates too. Major
rewrite.
(hpread_get_nth_template_arg): New function.
(hpread_read_templ_arg_type): New function.
(hpread_read_set_type): No change from hpread.c
(hpread_read_array_type): Modified
(hpread_read_subrange_type): Add handling of more DNTT entries.
added support for templates, classes, references, virtual functions.
(hpread_type_lookup): Handle DNNT_TYPE_MODULE.
(hpread_record_lines): No changes from hpread.c
(hpread_process_one_debug_symbol): Handle WITH, COMMON,
CLASS_SCOPE. Expand TAGDEF case to handle classes and templates.
* hppa-tdep.c (pa_do_strcat_registers_info): Has a new parameter,
precision, which is passed into the call to pa_strcat_fp_reg to
indicate whether to display the floating point registers using
single or double preceision.
(pa_strcat_registers): Introduce local variable, precision, and
pass it into call to pa_strcat_fp_reg.
(pa_strcat_fp_reg): Modified function. New parameter, precision,
used by function to decide whether to use single or double
precision. Also added the code to put a double precision value
into a buffer.
* hppa-tdep.c: Add'l includes <machine/save_state.h>,
<unistd.h>, declare pa_register_look_aside, define is_pa_2.
(rp_saved): Check for where to read the return pointer from.
(pa_do_registers_info): Handle is_pa_2. (pa_register_look_aside):
new function. (pa_print_registers): Handle is_pa_2.
(in_solib_call_trampoline): Handle a compiler/linker error.
(skip_trampoline_code): Changes to some masks used in examining
instructions. (inst_saves_fr): Test for FSTWS instruction.
(skip_prologue): Renamed to skip_prologue_hard_way.
(after_prologue): New function. (skip_prologue): New function.
* hppa-tdep.c (after_prologue): If f is NULL, don't dereference
it.
* hppa-tdep.c (after_prologue): If no debug info, return zero
telling caller that we need to find the end of the prologue via
the hard way (instruction examination).
* hppa-tdep.c (find_unwind_entry): Avoid dereferencing a null
pointer.
* hppa-tdep.c (hppa_pid_to_exec_file): Deleted -- no longer used.
* hppa-tdep.c (hppa_prepare_to_proceeed): Add prototype.
(read_unwind_info): Purecov comments, bug fixes.
(find_unwind_entry): Purecov comments, bug fixes.
(find_stub_with_shl_get): Purecov comments.
(frame_chain): Additional parens.
(hppa_push_arguments): Changes to commented out version of routine.
(hppa_fix_call_dummy): Purecov comments, fix location of end.o.
(in_solib_call_trampoline): Purecov comments.
(in_solib_return_trampoline): Purecov comments.
(setup_d_pid_in_inferior): Fix location of end.o.
(initialize_hp_cxx_exception_support): Fix location of end.o.
(child_enable_exception_callback): Purecov comments.
* hppa-tdep.c:
(Pa_do_strcat_registers_info): New routine. called by
tui/tuiRegs.c:_tuiRegisterFormat to place a register name
and value into a string buffer. Interface may change in
future. Checking this in so that we have something
functional for HP.
(pa_strcat_registers): New routine, called by
pa_do_strcat_registers_info. Does same thing as
pa_print_registers except it takes a stream parameter.
This routine should disappear in future. Checking in
so that we have something functional to give HP
(pa_strcat_fp_reg): New routine, called by
pa_do_strcat_registers_info and pa_strvat_registers
to place a floating point register name and value into
a buffer. This interface may change in future.
Checking in so that we have something functional to give HP.
* hppa-tdep.c: (Pa_print_fp_reg): Change prototype to match def'n.
(pa_register_look_aside): Fix comment immediately before function.
* hppa-tdep.c: Changes to better support stack unwinding,
reading and writing registers for HPUX. The HP folks had
an advantage ... access to a runtime architecture spec ;-}.
New includes: Ptrace.h
(internalize_unwinds): Initialize new fields in table.
(read_unwind_info): Entries in the table are now more complex
structures. References of the form ...->table[index].stub_type
are now ...->table[index].stub_unwind.stub_type.
(find_proc_framesize): Added a check for pc == 0.
(rp_saved): Entries in the table are now more complex
structures. References of the form ...->table[index].stub_type
are now ...->table[index].stub_unwind.stub_type.
(frameless_function_invocation): Stub_type becomes
stub_unwind.stub_type
(saved_pc_after_call): Stub_type becomes stub_unwind.stub_type
(hppa_frame_saved_pc): Stub_type becomes stub_unwind.stub_type
(frame_chain_valid): Stub_type becomes stub_unwind.stub_type
(hppa_call_dummy): Stub_type becomes stub_unwind.stub_type
(pa_print_fp_reg): Additional params to call val_print
(in_solib_call_trampoline): Stub_type becomes stub_unwind.stub_type
(in_solib_return_trampoline): Stub_type becomes stub_unwind.stub_typ
(skip_trampoline_code): Additional code to handle external
dyncalls. Also stub_type becomes stub_unwind.stub_type
(hppa_pid_to_exec_file): New funct. FOr HPUX 10.0 and beyond there
is an explicit ptrace request for getting the pathname associated
with a process id (pid).
* hppa-tdep.c: Fix for gcc compile on HPUX
(hppa_pid_to_exec_file): Remove unwanted param from
call to call_ptrace. Note, hppa_pid_to_exec_file goes
away in subsequent hp snapshots.
* hppa-tdep.c: Include bfd.h.
include dl.h
(args_for_find_stub): New structure.
(find_unwind_entry): Deal with null input pc value.
(rp_saved): Ditto.
For the import stub, return -24 always.
(hppa_frame_saved_pc): Save old pc value, to detect we are in a loop.
(init_extra_frame_info): Use TARGET_READ_FP.
(frame_chain): Include thread support.
If the caller's pc is zero, we loose and return, just like stack bottom.
Disable warning about being unable to find unwind info.
(hppa_push_arguments): Rewrite.
(hppa_value_returned_from_stack): New function. Handles returning a value
larger that 64 bits, stored on the stack.
(find_stub_with_shl_get): New function. To look up symbols in shlibs.
(cover_find_stub_with_shl_get): New function. Cover routine for
find_stub_with_shl_get to pass to catch_errors.
(hppa_fix_call_dummy): Comment out old stub mechanism. Rewrite using dyncall.
(target_read_fp): New function.
(pa_do_registers_info): Floating point registers start at FP4.
(pa_print_registers): Use FP4_REGNUM instead of 72.
(skip_trampoline_code): Do machine instruction matching for PA2.0.
(setup_d_pid_in_inferior): New function. Exception handling support.
(initialize_hp_cxx_exception_support): Ditto.
(child_enable_exception_callback): Ditto.
(child_get_current_exception_event): Ditto.
* hppah-nat.c (child_post_wait, child_post_follow_vfork,
child_post_follow_inferior_by_clone): New functions.
* hppah-nat.c (child_xfer_memory): Make sure the call to ptrace really
fails before we give up.
(hppa_pid_to_str): New function. Format a process id.
(hppa_tid_to_str): New function. Format a thread id.
* hppah-nat.c (child_xfer_memory): Use xmalloc, not alloca.
(child_post_wait): Delete.
(child_post_follow_vfork): Delete decl of child_ops; delete
large chunks of function -- let it be handled by the normal
mechanism that notices and handles exec events, in resume().
* hppah-nat.c (require_notification_of_exec_events): New function;
just notify of exec events, not all events, and just the specified
pid, don't include it's children (10.20 version).
(child_acknowledge_created_inferior): Call new function
require_notification_of_exec_events instead of
require_notification_of_events.
* hppah-nat.c [!GDB_NATIVE_HPUX_11]: Move HPUX 10.x-specific
support code here from infptrace.c.
* hppah-nat.c: Removed #define ptrace call_ptrace
replaced all calls to ptrace with calls to call_ptrace
(parent_attach_all): Removed call to ptrace
* hpread.c (hpread_psymtab_to_symtab_1): Change fflush to
gdb_flush; change stdout to gdb_stdout.
(hpread_psymtab_to_symtab): Change fflush to gdb_flush.
* hpread.h: New file. Includes all includes, struct defs, defines
from hpread.c.
* infcmd.c
(attach_command): New local variable, exec_file, added code to
determine exec_file from pid if exec_file is not already known,
call new target operation, target_post_attach -- a no-op unless
on HPUXHPPA
(detach_command): After detaching, do a SOLIB_RESTART
* infcmd.c (objfiles.h): Fix typo on include line.
* infcmd.c (run_command): Only call SOLIB_RESTART if it's
defined.
(detach_command): Ditto.
* infcmd.c:
(run_stack_dummy): Add calls to
disable_watchpoints_before_interactive_call_start and
enable_watchpoints_after_interactive_call_stops
(finish_command): Alter code handling the evaluation and printing
of the target function's return value.
(attach_command): When given a pid, but no exec file, try to determine
the exec file from the process. If the process does not record a
full path name, try to qualify the filename against the source path.
(_initialize_infcmd): Add some verbiage about how to use the attach command
* infcmd.c:
Include objfiles.h
(run_command): If program has already been started, and decide
to restart it, then kill the target, flush the caches,
call init_wait_for_inferior. Also purge old solib objfiles.
* infcmd.c: Changed calls to val_print, using a new macro,
SOLIB_RESTART
(run_command): Calls SOLIB_RESTART
(do_registers_info): Changed calls to val_print
* infcmd.c: Made the symfile.h include preceed the
objfiles.h include. The other ordering caused a
compile problem (incompletely defined types).
* inferior.h (REQUIRE_DETACH): Fix default definition.
* inftarg.c (child_post_attach): Fix declaration, make static.
(proc_wait): Make globally visible.
(child_insert_fork_catchpoint, etc): Fix return type.
* inferior.h (STARTUP_WITH_SHELL): New define.
(START_INFERIOR_TRAPS_EXPECTED): New define
* inferior.h (fork_inferior): Change fifth parameter to be a function
returning void.
* inferior.h (proc_wait): Declare.
* inferior.h:
(Require_ATTACH): New macro
(REQUIRE_DETACH): New macro
(detach): Definition is now an extern
(clone_and_follow_inferior): New definition, it's also an extern
* inferior.h:
(Require_attach): Default definition for require_attach funct
(require_detach): Default definition for require_detach funct
(pre_fork_inferior): New funct decl for function defined in
infptrace.c
(fork_inferior): New parameter in funct decl.
* inferior.h:
New variable decls: Inferior_ignoring_startup_exec_events,
inferior_ignoring_leading_exec_events -- these variables
are used when processing an exec call.
(CALL_DUMMY_HAS_COMPLETED): New default macro -- for targets
where PC in call dummy implies that call dummy has
completed. Note, that on HPUX this inference does not hold.
* infptrace.c
(require_notification_of_events): New function
(child_acknowledge_created_inferior): Previously named
hppa_acknowledge_forked_child. Also calling
require_notification_of_events and clearing some semaphore
variables
(child_post_startup_inferior): New function
(child_create_catch_fork_hook): Previously named
hppa_create_catch_fork_hook
(child_create_catch_vfork_hook): Previously named
hppa_create_catch_vfork_hook
(child_has_forked): Previously named hppa_target_has_forked
(child_has_vforked): Previously named hppa_target_has_vforked
(process_wait): Changed to call target_post_wait
(attach): Add call to require_notification_of_events
(child_pid_to_exec_file): New function
(hppa_require_attach): New local variable, pt_status
(hppa_get_process_events): New function
* infptrace.c (call_ptrace): Simplify control flow.
(proc_wait): Move here from inftarg.c, add target_post_wait call.
* infptrace.c (call_ptrace): Add some debugging code.
* infptrace.c (child_pid_to_exec_file): Declare variable.
* infptrace.c (kill_inferior): Clean up call to proc_wait.
* infptrace.c:
(Call_ptrace): When the ptrace request is PT_SETTRC,
call ptrace and then call parent_attach_all.
* infptrace.c:
(Child_has_syscall_event): New function. only applicable
(for now) on HPUX 10.30 and beyond via the ttrace call.
In infptrace.c there is a default operation.
With ttrace, it is possible to tell the kernel to
notify the debugger that the target program is about to make
or return from a syscall.
(child_thread_alive): New function. a default function.
ptrace doesn't support kernel threads.
(hppa_enable_page_protection_events): Defualt function
(hppa_disable_page_protection_events): Default function
* infptrace.c (child_pid_to_exec_file): Fix number of params to
cal_ptrace call.
* infptrace.c (hppa_pid_or_tid_to_str): New function.
(hppa_switched_threads): New function.
(hppa_ensure_vforking_parent_remains_stopped): New function.
(hppa_resume_execd_vforking_child_to_get_parent_vfork): New function.
* infptrace.c: Most of the changes found in infptrace.c should
be moved to hppah-nat.c
(PT_VERSION): A new define
(startup_semaphore_t): A new struct type. it is used to
coordinate the parent and child processes after a fork and
before an exec on HPUX.
(call_ptrace): Changes to determine whether the ptrace
request is for starting the tracing of the target process.
(parent_attach_all): New funct. used on HPUX for coordinating
the parent and child processes after a fork and before and exec.
(hppa_acknowledge_forked_child): New funct. prabably belongs
in hppah-nat.c
(hppa_enable_catch_fork): New funct. probably belongs in
hppah-nat.c
(hppa_disable_catch_fork): New funct. probably belongs in
hppah-nat.c
(hppa_create_catch_fork_hook): New funct. probably belongs in
hppah-nat.c
(hppa_enable_catch_vfork): New funct. probably belongs in
hppah-nat.c
(hppa_disable_catch_vfork): New funct. probably belongs in
hppah-nat.c
(hppa_create_catch_vfork_hook): New funct. probably belongs to
hppah-nat.c
(hppa_target_has_forked): New funct. probably belongs in
hppah-nat.c
(hppa_target_has_vforked): New funct. probably belongs in
hppah-nat.c
(process_wait): New funct. also ifdefed for proc_wait.
(kill_inferior): Call proc_wait rather than wait. this is
pretty hacky.
(pre_fork_inferior): New function. used only by HPUX.
probably should be defined elsewhere.
* infrun.c (follow_inferior_fork): Only define on HP.
(wait_for_inferior): Only call SOLIB_IN_DYNAMIC_LINKER if we have
shared libraries; restore test of IN_SOLIB_DYNSYM_RESOLVE_CODE
removed by HP.
* infrun.c (normal_stop): Add a call to the TUIDO
macro just before the annotate_stopped label. This
updates the windows after each program stop.
* infrun.c (normal_stop): Verify stop_command is non-zero before
dereferencing it (it won't be set if dbx_commands is set).
* infrun.c (resume): Add #ifdef HPPAHPUX around HPUX-specific
code.
* infrun.c (resume): Add missing semicolon.
* infrun.c (wait_for_inferior): Fix syntax error.
* infrun.c (follow_fork_mode_kind_names): Removed "both" option.
(follow_fork): Added parameters. additional code for handling
following of parent, following of child
(resume): Added code for deciding how to resume in presence of
fork. Additional params to follow_fork call.
* infrun.c (follow_exec): Ifdef for HPUXHPPA for the moment, the
code in here assumes the existance of the child_ops target
vector. This is incorrect for Solaris.
* infrun.c (resume): Fixed ifdefs, HPPAHPUX -> HPUXHPPA.
* infrun.c (wait_for_inferior): Fixed a matching parens problem --
matching curly brace inside ifdefed code which is not being
compiled. Change local validFlag to be an 'int' rather than a
'bool' and fixed the corresponding assignment statements.
* infrun.c:
Two new global variables: Inferior_ignoring_startup_exec_events and
inferior_ignoring_leading_exec_events.
New static variables: Parent_of_vfork_trap_expected_and_ignorable,
step_resume_breakpoint, through_sigtramp_breakpoint, pending_follow,
follow_vfork_when_exec
(follow_inferior_fork): Does what follow_fork did!
(follow_fork): Is now a wrapper function for follow_inferior_fork
(follow_vfork): Is now a wrapper function for follow_inferior_fork
(follow_exec): New function, handles an exec event.
(resume): Remove 3 local variables: Child_pid, has_forked, has_vforked.
move and expand code that tries to follow a fork (i.e. also check
for vfork and exec
(init_wait_for_inferior): Initialize the new structure, pending_follow
(delete_breakpoint_current_contents): When deleting all the breakpoints also
set the breakpoint struct pointer to NULL.
(wait_for_inferior): A number of changes.
The step_resume_breakpoint and through_sigtramp_breakpoint local
variables are now visible in entire module.
Changed name of variable from child_inferior_pid to saved_inferior_pid.
Added several cases to the event processing switch statement:
Target_WAITKIND_FORKED, TARGET_WAITKIND_VFORKED, TARGET_WAITKIND_EXECD.
Also, for TARGET_WAITKIND_STOPPED, check to see if expecting a trap
from the parent of a vfork (ignorable) otherwise break as usual.
When determining the value of 'random_signal' (0 or 1), no longer check for
catchpoints.
When determining how to handle unexpected signals, must now take into
account fork, vfork, and exec.
Change call to PC_IN_CALL_DUMMY to a call to CALL_DUMMY_HAS_COMPLETED
At stop_stepping label, check to see if stopped for fork or
vfork event.
* infrun.c: New code is related to threads and fork/vfork/exec.
New static variable: Thread_step_needed
Deleted static variable: Parent_of_vfork_trap_expected_and_ignorable
Altered the pending_follow and fork_event structs
(follow_inferior_fork): Before detaching from child and removing
all breakpoints form it -- but only if forking or following
vforks as soon as they happen. Also reset the solib inferior hook.
The same kind of logic applies to hitting step_resume_breakpoints
(calling breakpoint_re_set_thread) and to resetting and inserting
breakpoints.
(follow_exec): Forward decl
(follow_vfork): Check to see if gdb followed the child. If
the child exec'd before gdb saw the parent's vfork event
then call follow_exec.
(follow_exec): If the exec occured after a vfork, then follow
the vfork as well. Do it before following the exec.
Make sure to update breakpoints after and exec
(resume): New local variable, should_resume.
Change parameters in calls to follow_fork, follow_vfork, and
follow_exec. Some changes to the way various pending_follow.kind
situations are handled (there's TARGET_WAITKIND_FORKED,
TARGET_WAITKIND_VFORKED, ARGET_WAITKIND_EXECD. Some additional
conditions to check before deciding to resume the target (i.e.
should_resume=1, stepping?, thread_step_needed?i, regular
resume?)
(proceed): When proceeded at location that does not have a breakpoint
set thread_step_needed=0 to indicate that it is not necessary to
single step thread over breakpoint. SOme additional checks to see
if it is necessary to step thread over breakpoint.
(start_remote): Remove call to clear_proceed_status.
(init_wait_for_inferior): Initialize new fields in fork_event
structure and add a call to clear_proceed_status.
(wait_for_inferior): New local variable: New_thread_event.
Initialize thread_step_needed = 0.
Minor massaging of conditions for adding a new thread to the thread list.
No longer resuming execution after adding a new thread. Let user play with thread first.
Some changes in the way TARGET_WAITKIND_FORKED, ARGET_WAITKIND_VFORKED,
TARGET_WAITKIND_EXECD are handled -- this is all HPUX related.
Simplified TARGET_WAITKIND_STOPPED -- HP previously had some
more complicated code in here.
Moved the code to resume threads to after the large case statement that processes the events.
Additional processing for stop_signal=TARGET_SIGNAL_TRAP.
Cleanup code at process_event_stop_test label.
Set thread_step_needed when processing a BPSTAT_WHAT_SINGLE.
Minor massaging of fork/vfork/exec part of stop_stepping code.
(normal_stop): Minor changes. calling show_and_print_stack_frame.
(xdb_handle_command): New function
(_initialize_infrun): Handle xdb_commands. also handle dbx commands
* infrun.c: Changes to support following forks, and handling
catchpoints.
(follow_fork_mode_kind_names): New array
(follow_fork): New function. implements the follow parent,
or child functionality.
(resume): Additions to check whether the target process
just forked and decide which process to follow.
(wait_for_inferior): Additional variables (child_inferior_pid,
stepping_through_solib_after_catch,
- stepping_through_solib_catchpoints.
- Altered CURRENTLY_STEPPING macro to check for stepping through
a shared library after hitting a catchpoint.
- Add parameters to save_infrun_state call
- Check for fork and vfork when deciding if event is a random
signal
- When considering stops due to breakpoints, check for
BPSTAT_WHAT_CHECK_SHLIBS_RESUME_FROM_HOOK
- Check for stop due to an explicit catchpoint
- When checking for single stepping event, also check for
stepping to get out of dynamic linker's hook after catching
a shlib event
(is_internal_shlib_eventpoint): New funct. check to see if
event type is bp_shlib_event.
(stopped_for_internal_shlib_event): New funct. check for shlib
events
(stopped_for_shlib_catchpoint): New funct. check for catchpoints.
(normal_stop): Additions to check for shlib event
(set_follow_fork_mode_command): New funct. handles the new follow
fork command.
(_initialize_infrun): Additions for follow-fork-mode command.
* infrun.c: Ifdefing references to
switched_from_inferior_pid for HPUXHPPA. They don't seem
useful for Solaris (i.e. non-HPUX)
* infrun.c: Included tuiData.h and tuiDataWin.h, ifdefed for TUI.
Included top.h. New static variables: Switched_from_inferior_pid,
number_of_threads_in_syscalls.
(follow_inferior_fork): If there is a step_resume breakpoint
explicitly reset the thread number.
(resume): For TARGET_WAITKIND_VFORKED, removed a check for getting
the vfork event to soon.
(init_wait_for_inferior): Added parameter to call to
breakpoint_init_inferior. Initialize number_of_threads_in_syscalls.
(wait_for_inferior): New local variables: Prev_sal,
enable_hw_watchpoints_after_wait, stepping_through_sigtramp,
stepped_after_stopped_by_watchpoint. Enable watchpoints after a wait.
Added cases for TARGET_WAITKIND_SYSCALL_ENTRY and
TARGET_WAITKIND_SYSCALL_RETURN.
Do additional processing if stop due to breakpoint, but breakpoint is
only valid for a thread other than the one currently running. Additional
parameters to save_infrun_state and load_infrun_state. Some additional
processing for BPSTAT_WHAT_STEP_RESUME. Some additional processing to
handle stepping over a function.
(normal_stop): Added notification of switching threads. ifdefing some
TUI changes and leaving out non-essential TUI changes.
(restore_selected_frame): Ifdefing some TUI changes
(restore_inferior_status): Ifdefing some TUI changes
* infrun.c: Removed the TUI ifdefs and TUI code. Also removed
include for top.h. HP introduced this. I'm taking it out.
* inftarg.c (child_detach_from_process): Declare.
(child_attach_to_process): Declare.
(child_stop): Make static to match declaration.
* inftarg.c (ptrace_him): Change prototype back to return int.
* inftarg.c (ptrace_me): Remove debug output, pass NULL to
fork_inferior if not HPUX.
* inftarg.c:
(child_require_attach): New funct prototype and definition
(child_require_detach): New funct prototype and definition
(proc_wait): Funct prototype and definition are enclosed by
proc_wait ifndef
(child_attach_to_process): New function, does most of the
work that child_attach used to do and some additional
work to determine whether gdb is already attached to the
target how to react.
(child_attach): Altered. It's now a wrapper for
child_attach_to_process.
(child_require_attach): New function, called if should attach
even when gdb is already attached to target.
(child_detach_from_process): New function, does most of the
work that child_detach used to do and some additional work
to determine whether gdb is currently attached to the target.
(child_detach): Altered. It's now a wrapper for
child_detach_from_process.
(child_require_detach): New function, called if should try to
detach even when gdb is not attached to target.
(ptrace_him): Calls a new function, target_acknowledge_forked_child.
Currently, target_acknowledge_forked_child, is only defined to
do something for HPUX.
(child_create_inferior): Changed call to fork_inferior.
(child_ops): Added to_require_attach and to_require_detach fields
to the child_ops target ops vector.
* inftarg.c:
Some hacks for ttrace work
(child_wait): Additional local variables, additional code in
while loop to check for: Process exited, process forked,
process vforked, process execd
(child_thread_alive): John B. seems to think that the kill
call is inapproapriate for HPUX.
(child_attach_to_process): Using strtol rather than atoi.
no longer check for case where there is no known exec file.
(child_post_attach): New function, a default, a no-op
(child_insert_fork_catchpoint): New function, a default, a no-op
(child_remove_fork_catchpoint): New function, a default, a no-op
(child_create_catch_fork_hook): Deleted
(child_create_catch_vfork_hook): Deleted
(child_insert_vfork_catchpoint): New function, a default, a no-op
(child_remove_vfork_catchpoint): New function, a default, a no-op
(child_can_follow_vfork_prior_to_exec ):new function, a default,
a no-op
(child_insert_exec_catchpoint): New function, a default, a no-op
(child_remove_exec_catchpoint): New function, a default, a no-op
(child_has_execd): New function, a default, returns 0
(child_reported_exec_events_per_exec_call): New function, a
default, returns 1
(child_has_exited): New function, a default.
(child_core_file_to_sym_file): New function, a default, returns NULL.
(child_ops): Initialize new target_ops vector fields to the
child* functions.
* infptrace.c:
(Call_ptrace): For HPUX, handle additional requests: Pt_CONTIN1,
PT_STEP1.
(require_notification_of_events): Add several signals to the
set of events requiring notification: Ptrace_SIGNAL,
PTRACE_EXEC, PTRACE_FORK, PTRACE_VFORK
(child_acknowledge_created_inferior): This function is only
defined if CHILD_ACKNOWLEDGE_CREATED_INFERIOR is defined.
(child_post_startup_inferior): Function is only defined if
CHILD_POST_STARTUP_INFERIOR is defiend. Also, now call
require_notification_of_events.
(child_create_catch_fork_hook): Deleted
(child_create_catch_vfork_hook): Deleted
(child_insert_fork_catchpoint): New function
(child_remove_fork_catchpoint): New function
(child_insert_vfork_catchpoint): New function
(child_remove_vfork_catchpoint): New function
(child_has_forked): Now enclosed by a CHILD_HAS_FORKED ifdef
(child_has_vforked): Now enclosed by CHILD_HAS_VFORKED ifdef
(child_can_follow_vfork_prior_to_exec): New function
(child_insert_exec_catchpoint): New function
(attach): Removed call to require_notification_of_events
(child_post_attach): New function, call to
require_notification_of_events moved here.
(child_pid_to_exec_file): New enclosed by CHILD_PID_TO_EXEC_FILE ifdef
introduced the concept of a saved_inferior_pid
(hppa_require_attach): Add some code to decide if gdb is already
attached to process. Can not figure this out via a ptrace call.
(hppa_insert_hw_watchpoint): New function
(hppa_remove_hw_watchpoint): New function
* inftarg.c:
(child_attach_to_process): Change position in file
(child_detach_from_process): Change position in file
* inftarg.c:
(child_attach_to_process): Changed parameter to child_wait call
* inftarg.c:
(child_post_wait): New function declaration and definition
(ptrace_him):
- change return value to a void.
- change target_acknowledge_forked_child call to
target_acknowledge_created_inferior
- call target_post_startup_inferior rather than returning pid.
(child_attach_to_process): Change param name, fail_if_already_attached
-> after_fork.
Invert a couple of if-then-else statments.
Use REQUIRE_ATTACH macro
(child_attach): Change params in child_attach_to_process call
(child_require_attach): Change params in child_attach_to_process call
(child_detach_to_process): Change param name,
fail_if_already_attached -> after_fork.
Invert a couple of if-then-else statments.
Use REQUIRE_DETACH macro
(child_detach): Change params in child_detach_from_process call
(child_require_detach): Change params in child_detach_from_process
call
(child_post_startup_inferior): New function
(child_acknowledge_created_inferior): New function
(child_clone_and_follow_inferior): New function
(child_post_follow_inferior_by_clone): New function
(child_create_catch_fork_hook): New function
(child_create_catch_vfork_hook): New function
(child_has_forked): New function
(child_has_vforked): New function
(child_post_follow_vfork): New function
(child_stop): No longer a static function
(child_pid_to_exec_file): New function
* inftarg.c:
(child_wait): Child_pid becomes related pid. return pid
rather than inferior_pid. Changes are in code handling fork
and vfork
* inftarg.c:
Include gdb_stat.h and sys/unistd.h
(child_wait): New local variables. Check for live threads.
Check for syscall events
(child_thread_alive): No longer a static funct.
(ptrace_him): Remove some code inserted in snap3
(child_create_inferior): Added a bunch of code to handle a
bad interaction between start-up-with-shell and the HP
catch-fork/catch-exec logic. I am ifdefing this for
HPUXHPPA for now.
(child_has_syscall_event): New default target_ops function
(child_enable_exception_callback): New default target_ops function
(child_get_current_exception_event): New default target_ops function
(child_ops): 3 new fields
* inftarg.c: Remove HPUX_SNAP1 and HPUX_SNAP2 ifdefs
* inftarg.c: Reverted previous change.
* infttrace.c (hppa_remove_hw_watchpoint): Fix check for write
access hardware watchpoint.
* infttrace.c (proc_wait): Rename from proc_wait.
* infttrace.c (require_notification_of_exec_events): New function;
just notify of exec events, not all events, and just the specified
pid, don't include it's children.
(child_acknowledge_created_inferior): Call new function
require_notification_of_exec_events instead of
require_notification_of_events.
(child_post_startup_inferior): Call require_notification_of_events
* infttrace.c: Changed all references to boolean to int.
Changed all references to TRUE and FALSE to 1 and 0.
* irix5-nat.c (symbol_add_stub): Add params to call to
symbol_file_add.
* jv-lang.c (get_dynamics_objfile): Add 2 more parameters to call
to allocate_objfile.
* main.c (fputs_unfiltered): Changes to prevent cursor form
jumping around in the TUI. Altered where tuiTermUnsetup and
tuiTermSetup are called
* main.c (fputs_unfiltered): Changed function so that it
checks to see if output is to a string buffer or to a
FILE stream and does the correct action (i.e. strcat or
fputs). Fixed params for fputs call.
* main.c (fputs_unfiltered): Don't try to call the TUI's
CommandCharCount functions when the TUI isn't enabled.
* main.c (fputs_unfiltered): Change FILE to GDB_FILE.
* main.c (main): If the user gives the --version or --help flags,
disable the TUI.
* main.c (tui_version, xdb_commands, dbx_commands): New variables.
(main): New command line arguments --tui, --xdb, --dbx; add call
to tyiCleanUp via tuiDo to main loop.
(fputs_unfiltered): Tui related changes.
* main.c: Define 2 new global variables, gdb_stdout and gdb_stderr
of type GDB_FILE.
(main): Allocate space for and initialize gdb_stdout and gdb_stdin.
* objfiles.c (find_pc_sect_section): Make end condition be less
than s->endaddr, not less than or equal to s->endaddr.
* objfiles.c:
(allocate_objfile): 2 new parameters: User_loaded and is_solib.
When appropriate, record in the object file that it is user loaded.
The run command can use this information to purge object file
entries associated with the old inferior and keep user loaded
object files loaded via the add-symbol-file command.
(objfile_purge_solibs): New function. deletes all objectfile entries
that are not explicitly loaded by the user.
* objfiles.c:
(objfile_relocate): Check for LOC_INDIRECT
(find_pc_sect_section): Change condition from
pc < s->endaddr to pc <= s->endaddr
* objfiles.h:
New variables: User_loaded and is_solib
(OBJF_SHARED): New macro. used to distinguish objfile for
shared library from "vanilla" objfile.
(allocate_objfile): Add new parameters to function decl.
(objfile_purge_solibs): New function decl.
* objfiles.h: Add some typedefs: Importentry, ExportEntry.
Add some new variables: Import_list, import_list_size,
export_list, export_list_size
* osfsolib.c:
(symbol_add_stub): Added params to call to symbol_file_add
* pa/hpux1020.mh (NATDEPFILES): Add corelow.o, symbol table and
solib files.
* pa/hpux1100.mh (NAT_FILE): Use nm-hppah11.h.
(NATDEPFILES): Add symbol table and solib files.
* pa/nm-hppah11.h: New file, HPUX11-only definitions.
* pa/tm-hppa.h (proc_wait): Remove decl and macro.
* parse.c (write_dollar_variable): Handle cases in which variables
besides the debugger ones start with $ and $$.
(parse_nested_classes_for_hpacc): New function. Parse a string that
is possibly a namespace / nested class specification.
(find_template_name_end): New function.
* procfs.c:
(procfs_init_inferior): Return value is now a void.
* procfs.c (procfs_ops): Initializing new target ops vector fields. see list below.
* procfs.c:
(procfs_ops): Adding new target_ops vector fields and
removing a few. see list below
* procfs.c: Added new fields to procfs_ops.
Necessary since we still have oldstyle initialization in
this file
* pyr-tdep.c (pyr_do_registers_info): Change stdout to gdb_stdout.
(frame_locals_address): Change stderr to gdb_stderr.
(frame_args_addr): Ditto.
* pyr-xdep.c (fetch_inferior_registers): Change stderr to
gdb_stderr.
* serial.c (serial_close): Call gdb_fclose, not fclose on a
GDB_FILE.
* serial.c (serial_logchar): Change chtype to ch_type. sigh.
* solib.c (look_for_base): The parameter to file must be
of type FILE *. So cast exec_bfd -> iostream in the call
to fileno as a FILE *, not a GDB_FILE *. This will work because
exec_bfd -> iostream is declared and given a value in bdf and
bfd will continue to use FILE rather than GDB_FILE.
* solib.c:
(solib_add): Remove references to exec_ops.
* solib.c:
(solib_add): Update exec_ops.to_sections
* solib.c:
(symbol_add_stub): Added params to call to symbol_file_add
* solib.h:
(SOLIB_REMOVE_INFERIOR_HOOK): New macro. defined to 0.
functionality not implemented for this target.
* solib.h: Added macro definitions. These macros generate
error messages for solaris??
(SOLIB_CREATE_CATCH_LOAD_HOOK)
(SOLIB_CREATE_CATCH_UNLOAD_HOOK)
(SOLIB_HAVE_LOAD_EVENT)
(SOLIB_LOADED_LIBRARY_PATHNAME)
(SOLIB_HAVE_UNLOAD_EVENT)
(SOLIB_UNLOADED_LIBRARY_PATHNAME)
(SOLIB_IN_DYNAMIC_LINKER)
(SOLIB_RESTART)
* somread.c (is_in_import_list): Ditto.
* somread.c (som_symfile_read): Added some comments
* somread.c (som_symfile_read): Read in import and export lists.
(som_symtab_read): Change test for dynamic executable.
(is_in_import_list): New function. Check if a given symbol name
is in the import list.
(init_import_symbols): New function. Read in and initialize the
som import list.
(init_export_symbols): New function. Read in and initialize the
som export list.
* somread.c:
(som_symfile_read): Fix missing comment delimiters
* somsolib.c (DLD_FLAGS_MAPPRIVATE): New macro.
Define bit of __dld_flags in HP-UX a.out files.
(DLD_FLAGS_HOOKVALID): Ditto.
(DLD_FLAGS_LISTVALID): Ditto.
(DLD_FLAGS_BOR_ENABLE): Ditto.
(som_solib_total_st_size): Cumulative size in bytes of the
symbol tables of all shared objects on the so_list_head list.
(som_solib_st_size_threshhold_exceeded): Threshold for adding symbols
for shlibs.
(som_solib_sizeof_symbol_table): New function. Computes size of
symbol table for a shlib.
(som_solib_load_symbols): New function. Load symbols from shlib.
(som_solib_add): Detect if __dld_list is not valid.
Record main program's symbol table size.
Load symbols if called from command line.
Keep threshold into account when loading shlib symbols.
(som_solib_create_inferior_hook): Use dld_flags macros.
(som_sharedlibrary_info_command): Let user know if symbols were
not loaded.
(som_solib_restart): Discard all the shlibs descriptors.
(_initialize_som_solib): Chenge help message for auto-solib-add
command.
Set threshold for symbol table to 50 megabytes.
* somsolib.c (_initialize_som_solib): Added call to som_solib_restart.
(som_solib_restart): New function
(som_solib_in_dynamic_linker): New function
(som_solib_desire_dynamic_linker_symbols): New function
(som_solib_unloaded_library_pathname): New function
(som_solib_loaded_library_pathname): New function
(som_solib_library_pathname): New function
(som_solib_have_unload_event): New function
(som_solib_have_load_event): New function
(som_solib_create_catch_unload_hook): New function
(som_solib_create_catch_load_hook): New function
(som_solib_create_inferior_hook): Rewritten
dld_cache: New struct
addr_and_unwind_t: New struct
(find_unwind_entry) added prototype
* somsolib.c (som_solib_create_inferior_hook): Introduce new local
msymbol2 and change some msymbol's to msymbol2's -- was clobbering
msymbol, passing a NULL to lookup_minimal_symbol_solib_trampoline,
and ultimately core dumping with a SEGV.
* somsolib.c:
Include assert.h
(som_solib_mapped_entry): Additional comments for text_addr,
text_link_addr, text_end, and tsd_start_addr fields. Commenting
out 2 tsd fields, __data_start and __data_end.
(som_solib_add_solib_objfile): Add params to calls to symbol_file_add.
Add some code for distinguishing between a shared library and other
objfiles. This appears to be a prelude to thread local storage.
(som_solib_load_symbols): Changes to printf statement
enclosed by SOLIB_DEBUG ifdef.
(som_solib_add): Change comment to correctly specify path
to end.o -- /opt/langtools/lib/end.o. changes to printf statement
enclosed by SOLIB_DEBUG ifdef.
Removed several SOLIB_DEBUG ifdefs and the associated printfs.
Add code to find the start address for the object file's thread
local storage
(som_solib_create_inferior_hook): Fix warning messages use correct
path to end.o -- /opt/langtools/lib/end.o. Change control flow.
No longer user early returns from function is cases of error.
(reset_inferior_pid): New function
(som_solib_remove_inferior_hook): New function
(so_lib_thread_start_addr): New function. used for tsd.
* somsolib.c: Removed references to ASSERT macro.
* somsolib.c: Add debugging macro.
(struct som_solib_mapped_entry): Add new field tsd_start_addr.
(struct so_list): Added new field solib_addr.
(som_solib_add_solib_objfile): New function.
(som_solib_load_symbols): Rewritten.
(som_solib_add): Make sure we don't load the symbols in if the
threshold was exceeded.
(som_solib_get_solib_by_pc): New function. Return the address of
handle of the shared library.
(som_solib_restart): Disable breakpoints at restart.
(_initialize_som_solib): Set threshold to 100 megabytes.
* somsolib.c: Add include of fcntl.h so that O_RDONLY is defined.
* somsolib.h (DISABLE_UNSETTABLE_BREAK): New macro.
(PC_SOLIB): New macro.
* somsolib.h:
(SOLIB_CREATE_CATCH_LOAD_HOOK): Define
(SOLIB_CREATE_CATCH_UNLOAD_HOOK): Define
(SOLIB_HAVE_LOAD_EVENT): Define
(SOLIB_LOADED_LIBRARY_PATHNAME): Define
(SOLIB_HAVE_UNLOAD_EVENT): Define
(SOLIB_UNLOADED_LIBRARY_PATHNAME): Define
(SOLIB_IN_DYNAMIC_LINKER): Define
(SOLIB_RESTART): Define
* somsolib.h:
(SOLIB_REMOVE_INFERIOR_HOOK): New macro. defined to use
som_solib_remove_inferior_hook.
* somsolib.h:
(som_solib_create_catch_load_hook)
(som_solib_create_catch_unload_hook)
(som_solib_have_load_event)
(som_solib_loaded_library_pathname)
(som_solib_have_unload_event)
(som_solib_unloaded_library_pathname)
(som_solib_in_dynamic_linker)
Fix prototypes to use type names, not parameter names.
* source.c (find_source_lines): Make non static.
(open_source_file): Ditto.
(source_full_path_of): New function.
(print_source_lines): Rename to print_source_lines_base and make
static; formatting.
(print_source_lines): New function.
(forward_search_command): Tui changes.
(reverse_search_command): Tui changes.
(_initialize_source): Add xdb and dbx compatibility commands.
* source.c (list_command): Handle case of odd number of source
lines to display.
* source.c:
(source_full_path_of): New function. file was overlooked
in merge ;-/.
* stack.c (func_command): Make high bound be <, not <=.
* stack.c (_initialize_stack): For the backtrace command, delete
the help line about usage, since this has to be a valid help
message for the 'where' command too.
* stack.c (current_frame_command): Add a check for the
existance of a stack. If there is no stack produce an
error message and exit.
* stack.c (down_silently_base, up_silently_base,
args_plus_locals_info, print_frame_info_base,
print_stack_frame_base, print_stack_frame_base_stub): Declare.
(print_frame_local_vars): Add'l parameter.
(print_stack_frame_stub): New version created, old version renamed
to show_and_print_stack_frame_base_stub.
(print_stack_frame_base_stub, print_only_stack_frame_stub,
show_and_print_stack_frame, print_only_stack_frame,
stack_publish_stopped_with_no_frame, print_frame_info,
show_stack_frame, backtrace_full_command, args_plus_locals_info,
select_and_print_frame, select_and_maybe_print_frame,
current_frame_command, func_command): New functions.
(backtrace_command): New function, old renamed to
backtrace_command_1.
(print_block_frame_locals, print_frame_local_vars): Additional
parameter, number of tabs.
(up_silently_command): New function, old renamed to
up_silently_command_base.
(down_silently_command): New function, old renamed to
down_silently_base.
(_initialize_stack): Register new commands based on values of
xdb_commands and dbx_commands variables.
* stack.c (func_command): Make high bound be <, not <=.
* stack.c (parse_frame_specification): Fix prototype to match
function definition.
(show_and_print_stack_frame_stub): Fix name.
(select_and_print_frame): Change uncaught tuiDO call.
* stack.c (up_silent_base): Rename from up_silently_command_base.
* symfile.c (symbol_file_command): Only call SOLIB_RESTART if it's
defined.
* symfile.c (add_psymbol_with_dem_name_to_list): New function.
Adds a symbol with a long value to a psymtab. Differs from
add_psymbol_to_list in taking both a mangled and a demangled name.
* symfile.c (compare_psymbols): Call strcmp directly, instead of
using macro.
* symfile.c (symbol_file_add): Reindent portions.
(symbol_file_command): Add call to tuiDo.
* symfile.c (symbol_file_command): Only call SOLIB_RESTART if it's
defined.
* symfile.c (symfile_bfd_open): Add code to call PXDB on hpux, if
the file has not already been processed by pxdb.
Added define USE_PXDB.
* symfile.c (symfile_bfd_open): Change parenthesis positioning
around call to hpread_pxdb_check.
* symfile.c (symfile_bfd_open): Make not static.
(RESET_HP_UX_GLOBALS): New macro. Resets globals when new symbol
file loaded.
(USE_PXDB): Not needed. Removed.
(symbol_file_add): Add HP specific code to deal with pxdb.
(symbol_file_command): Reset HP specific globals if new symbol file
loaded.
(symfile_bfd_open): Comment out checking for pxdb.
(reread_symbols): Reset HP specific globals.
* symfile.c (symfile_bfd_open): Uncomment hpus specific code.
* symfile.c:
(symbol_file_add): Add user_loaded and is_solib parameters.
fixed number of parameters in call to allocate_objfile
(symbol_file_command): Added call to SOLIB_RESTART macro.
fixed number of parameters in calls to symbol_file_add.
(add_symbol_file_command): Fixed number of parameters in calls to
symbol_file_add.
* symfile.c: Added prototype for hpread_pxdb_check.
* symfile.c: Changed HPUX_SNAP1 ifdef to HPUXHPPA. enclosed calls to
RESET_HP_UX_GLOBALS with an HPUXHPPA ifdef
* symfile.h (symfile_bfd_open): Add protptype.
* symfile.h: Add prototype for add_psymbol_with_dem_name_to_list.
* symfile.h: Clarify purpose of auto_solib_add.
* symmisc.c (maintenance_print_symbols): Call gdb_fclose, not
fclose on a GDB_FILE* during cleanup.
(maintenance_print_psymbols): Call gdb_fclose, not fclose on a
GDB_FILE* during cleanup.
(maintenance_print_msymbols): Call gdb_fclose, not fclose on a
GDB_FILE* during cleanup.
* symmisc.c (maintenance_print_symbols): Gdb_fclose now takes a
GDB_FILE ** parameter. Fix the local GDB_FILE variables and the
call to make_cleanup.
(maintenance_print_psymbols): Ditto
(maintenance_print_msymbols): Ditto
* symmisc.c (print_objfile_statistics): Close quotes in
output strings.
* symmisc.c:
(Print_symbol): Add LOC_INDIRECT to switch statement
(print_partial_symbols): Add LOC_INDIRECT to switch statement
* symtab.c (find_pc_sect_psymtab): High bounds should be <, not <=.
(find_pc_sect_symtab): Ditto.
* symtab.c (hp_som_som_object_present): New flag to indicate HP
compiled code.
(find_pc_sect_psymtab): Change tests to make sure we are checking
the texthigh adress as well.
(lookup_transparent_type): New function. Look up a type name
in the struct_namespace. The type returned must not be opaque.
(find_pc_sect_symtab): Make sure we check the address 'pc' itself,
too.
(find_addr_symbol): Prepare to handle LOC_INDIRECT address class, but
leave it commented out.
(find_pc_sect_line): Return correct information if pc is in import
or export stub (trampoline).
(decode_line_1): Skip two chars, if they are '$$'. Like for HP's
$$dyncall. Handle cases in which varaible and function names can start
with $.
(overload_list_add_symbol): If cannot demangle name, use it as is.
Free string after use.
(make_symbol_overload_list): Initialize oload_name to NULL and
oload_name_len to 0. If demangle not successful, use name as it is.
Free string after use.
* symtab.c (lookup_symbol): Changed call to find_pc_sect_symtab,
to the original find_pc_symtab, in HP added fragment.
* symtab.c (lookup_symbol): Change HPUX_SNAP1 ifdef to a HPUXHPPA ifdef
* symtab.c (lookup_symbol): Ifdef the searching of symbol in the
minimal symbol tables, for hpux we move this check at the end
of the function.
Before we error out if symbol is not found in the symtab, look
in the statics.
Before erroring out if static symbol not found look in the globals.
* symtab.c (lookup_symbol): Return symbol as soon as found.
(decode_line_1): Check whether we have a conditional break. Temporarily
remove it from the line, to not confure perenthesis checking.
Handle namespaces.
(overload_list_add_symbol): New function. Overload
resolution support.
(make_symbol_overload_list): Ditto.
* symtab.c:
(find_template_name_end): New prototype decl.
(lookup_symbol): When a global or static symbol shows up in the
psymtab table, but not the symtab table, tell the user that
the symbol may be an inlined function or a template function and
provide some guidance to the user about how to more fully
specify the symbol.
(lookup_transparent_type): When a global or static symbol shows up
in the psymtab table, but not the symtab table, tell the user that
the symbol may be an inlined function or a template function and
provide some guidance to the user about how to more fully
specify the symbol.
(decode_line_1): Handle template function specification when decoding a
line. May need to be ifdefed for HP's aCC?
(_initialize_symtab): Handle dbx commands.
* symtab.h (address_class): Add new address calss for
LOC_THREAD_LOCAL_STATIC and LOC_INDIRECT.
(lookup_transparent_type): Add prototype.
(exception_event_kind): New enum for exception catchpoints.
(exception_event_record): New structure for exception catchpoints.
(CURRENT_EXCEPTION_KIND): New macro.
(CURRENT_EXCEPTION_CATCH_SAL): New macro.
(CURRENT_EXCEPTION_CATCH_LINE): New macro.
(CURRENT_EXCEPTION_CATCH_FILE): New macro.
(CURRENT_EXCEPTION_CATCH_PC): New macro.
(CURRENT_EXCEPTION_THROW_SAL): New macro.
(CURRENT_EXCEPTION_THROW_LINE): New macro.
(CURRENT_EXCEPTION_THROW_FILE) new macro.:
(Current_EXCEPTION_THROW_PC): New macro.
* symtab.h(make_symbol_overload_list): Add prototype.
* symtab.h:
(symbol_file_add): Add new params to function decl.
* target.c (cleanup_target): Changed casting of default functions for
to_has_forked, to_has_vforked, to_pid_to_exec_file to get rid of
warnings.
* target.c (cleanup_target): Changed the default functions for
to_pid_to_exec_file and to_core_file_to_sym_file
* target.c (cleanup_target): Fixed PARAMS for to_has_syscall_event
* target.c (cleanup_target): Syntax error, mismatched paranthesis.
* target.c:
(Default_clone_and_follow_inferior): New funct prototype declaration
and function definition
(dummy_target): More target_ops vector changes for HPUX
new fields. ifdefed for HPUX_SNAP2. New fields are
to_post_wait, to_post_startup_inferior
to_acknowledge_created_inferior, to_clone_and_follow_inferior,
to_post_follow_inferior_by_clone, to_create_catch_fork_hook,
to_create_catch_vfork_hook, to_has_forked, to_has_vforked,
to_post_follow_vfork, to_pid_to_exec_file
(de_fault): Add new HPUX specific target_ops operations to
the de_fault macro
(INHERIT): Add new HPUX specific target_ops operations to the
INHERIT macro
(find_default_clone_and_follow_inferior): New funct definition
(debug_to_post_wait): New funct
(debug_to_post_startup_inferior): New funct
(debug_to_acknowledge_created_inferior): New funct
(debug_to_clone_and_follow_inferior): New funct
(debug_to_post_follow_inferior_by_clone): New funct
(debug_to_create_catch_fork_hook): New funct
(debug_to_create_catch_vfork_hook): New funct
(debug_to_has_forked): New funct
(debug_to_has_vforked): New funct
(debug_to_post_follow_vfork): New funct
(setup_target_debug): Initialize new target_ops vector fields.
* target.c:
(Cleanup_target): Fixed the return type on a few of the
default function values.
* target.c:
(Dummy_target): Add 3 new fields
(nosupport_runtime): New function, used in cleanup_target
(cleanup_target): Changes in the de_fault macro, both to
accomodate the new target_ops vector fields and to use
more accurate default functions.
(update_current_target): Add new target_ops vector fields to the
INHERIT macro
(generic_mourn_inferior): The call to breakpoint_init_inferior now takes a
parameter
(normal_pid_to_str): Adding a \0 to the end of buf.
(debug_to_has_syscall_event): New func
(debug_to_enable_exception_callback): New func
(debug_to_get_current_exception_event): New func
(setup_target_debug): Initialize the 3 new target_ops vector fields
* target.c:
(Struct signals): Fix message associated with SIGRETRACT.
* target.c:
(Dummy_target): Fix syntax error
(cleanup_target): Changed the default values for the new
target_ops vector fields. HP folks inappropriately set
most of them to noprocess(). They should be a mixture
of ignore() and return_zero().
* target.c:
(Dummy_target): Add new target_ops vector fields and their initializations
(cleanup_target): Added new new target_ops vector fields to the de_fault
macro definition.
(update_current_target): Added new new target_ops vector fields to the INHERIT
macro definition
(return_one): New function, used by the de_fault macro
(debug_to_post_attach): New function
(debug_to_wait): Added new cases: Target_WAITKIND_FORKED, TARGET_WAITKIND_VFORKED,
TARGET_WAITKIND_EXECD
(debug_to_insert_fork_catchpoint): New function
(debug_to_remove_fork_catchpoint): New function
(debug_to_insert_vfork_catchpoint): New function
(debug_to_remove_vfork_catchpoint): New function
(debug_to_can_follow_vfork_prior_to_exec): New function
(debug_to_insert_exec_catchpoint): New function
(debug_to_remove_exec_catchpoint): New function
(debug_to_core_file_to_sym_file): New function
(setup_target_debug): Give new fields in current_target target_ops vector values.
* target.c: Hp merge, 4/15/98 snapshot
There are new target_ops fields that pertain only
to HPUX. All the changes relate to this. First,
new fields are added to the dummy_target target_ops
vector: To_require_attach, to_require_detach.
* target.c: Remove HPUX_SNAP1 and HPUX_SNAP2 ifdefs
* thread.c (info_threads_command): Call print_only_stack_frame
instead of print_stack_frame.
(_initialize_thread): Make t an alias for thread only if
xdb_commands is not set.
* thread.c (thread_command): If no arguments, don't generate an
error, instead tell the user which thread is current.
(info_threads_commands): Don't lose the users position within the
current thread -- remember it and then restore it.
* thread.c:
(struct thread_info): Add stepping_through_sigtramp field
(add_thread): Initialize stepping_through_sigtramp field
(load_infrun_state): Add stepping_through_sigtramp param and
make sure it gets assigned a value.
(save_infrun_state): Add stepping_through_sigtramp param and
make sure that the value gets saved.
(info_threads_command): Ifdefing some local variables and
code for HPUXHPPA. HP folks want print the tid rather than pid?
Also, looks like the HP folks solved the same thread switching
problem that 4.17 solves. Taking 4.17.
(restore_current_thread): Print out the current frame after
switching threads.
(thread_apply_all_command): Ifdefing a print statement for
HPUXHPPA. The HP folks want to print out a tid rather than pid?
(thread_apply_command): Ifdefing a print statement for
HPUXHPPA. The HP folks want to print out a tid rather than pid?
(thread_command): Decided not to take HP change.
* thread.c: Fixing gdb core dump problem causing many testsuite
failures.
(add_thread): Remove call to bpstat_clear, initialize
tp->stepping_through_solib_catchpoints = NULL;
* thread.c: Changes for catchpoints, shared libaries,
(thread_info): Additional fields in the thread_info struct
for stepping_through_solib_after_catch and
stepping_through_solib_catchpoints.
(add_thread): Initialize the new thread_info fields.
(load_infrun_state): Additional parameters for handling
catchpoints and shared libraries.
(save_infrun_state): Additional parameters for handling
catchpoints and shared libraries.
* top.c (command_loop): Initialize space_at_cmd_start to 0.
(set_prompt): New function.
(togglelist, stoplist): New command lists.
(command_loop): Tui changes -- paranoia to make sure
insert mode is off when not editing.
(quit_force): Clean up tui on exit.
(init_main): Make definition of info status command dependent upon
dbx mode not being set.
(fputs_unfiltered_hook): Changed stream parameter from FILE
to GDB_FILE
(flush_hook): Changed stream parameter from FILE to GDB_FILE
* top.h (set_prompt): Declare.
* typeprint.c (whatis_exp): Decide real runtime type. For the vtable
case.
* utils.c (query): Changes to prevent cursor from jumping around in the
TUI. Call tuiBufferGetc explicitly, rather than passing it
into tuiDo. The tuiDo function does some additional work
that is inappropriate when handling queries.
(GDB_FILE_ISATTY): New macro that takes a GDB_FILE param and
determines whether or not it's using a tty.
(gdb_file_isatty); called by the GDB_FILE_ISATTY macro. Does
the actual work
(init_page_info): Call GDB_FILE_ISATTY rather than ISATTY
(print_spaces): Fix parameter to fputc. fix call to
gdb_file_adjust_strbuf.
(gdb_file_init_astring): Fix parameter to xmalloc
(gdb_file_deallocate): New function to deallocate
a GDB_FILE object and possibly a string buffer
(gdb_file_init_astring): Initialize buffer as the empty
string. Indent GNU style.
(gdb_fopen): Gdb_fopen is called if the GDB_FILE object is
actually afile rather than astring. The routine now allocates space
for a GDB_FILE object and initializes its fields in addition to
performing an fopen.
(gdb_flush): Fix the parameter passed into fflush. It's now
stream->ts_filestream.
(gdb_fclose): Pass in an object of type GDB_FILE **. Fix parameter
to fclose. It's now tmpstream->ts_filestream. Make sure to free
the GDB_FILE object and set the GDB_FILE * object to NULL.
(gdb_adjust_strbuf): New function. Determine if the current
ts_strbuf field contains sufficient space to concatenate a string
of length n on the end. If not, then reallocate the ts_strbuf.
(print_spaces): Check to see if the GDB_FILE is afile or
astring. If it is astring, then adjust the size of the ts_strbuf
field and concatenate the correct number of spaces onto the end of
the buffer. Otherwise continue to use fputc.
(gdb_file_get_strbuf): New function. return a ptr to the ts_strbuf
field in a GDB_FILE object.
(gdb_file_init_astring): New function to allocate space for and
initialize a GDB_FILE object when it is an astring.
(set_width): Declare it.
(pagination_enabled): Define it.
(query): Tui changes.
(init_page_info, set_width): New functions.
(set_width_command): Call set_width.
(_initialize_utils): Replace termcap stuff with call to
init_page_info; if xdb_commands set, define am and sm commands;
define pagination as a set/show command.
(vfprintf_maybe_filtered): Change FILE to GDB_FILE.
(fputs_maybe_filtered): Ditto.
(print_spaces): Ditto.
(gdb_printchar): Ditto.
(gdb_flush): Ditto.
(fputs_filtered): Ditto.
(vfprintf_filtered): Ditto.
(vfprintf_unfiltered): Ditto.
(fprintf_filtered): Ditto.
(fprintf_unfiltered): Ditto.
(fprintfi_filtered): Ditto.
(print_spaces_filtered): Ditto.
(fprintf_symbol_filtered): Ditto.
(gdb_fclose): New function.
* valops.c (call_function_by_hand): Assign to param_type only
if function has parameters.
* valops.c (call_function_by_hand): Ifdef the
HP_COMPILED_TARGET stuff.
(value_arg_coerce): Ditto.
* valops.c (call_function_by_hand): Make sure param_type is
initialized to NULL.
* valops.c (find_rt_vbase_offset): Add parameter to value_at.
(value_rtti_type): Ditto.
(value_full_object): Ditto.
* valops.c (search_struct_field_aux): Fixed mismatching parenths
* valops.c (search_struct_field_aux): Make sure TYPE_TAG_NAME
is not null before copying it.
* valops.c (search_struct_field_aux): Set found_class_name to null
if class has no name (anon unions case). Adjust base_addr
computation.
* valops.c (value_arg_coerce): Change final arg to int.
* valops.c (value_arg_coerce): Remove the conditional on HP
compiled target, for doing coercion of float to double. Removed
third parameter, using_gcc.
(call_function_by_hand): Do not use HP_COMPILED_TARGET, just
use the gcc_compiled variable.
* valops.c (value_cast): Take case of the enclosing_type and
pointer_to_offset fields.
(value_at): Use VALUE_CONTENTS_ALL_RAW
(value_fetch_lazy): Ditto
(value_assign): Handle enclosing_type, embedded_offset and
pointed_to_offset fields.
(value_repeat): Use VALUE_CONTENTS_ALL_RAW and VALUE_ENCLOSING_TYPE.
(value_ind): Set enclosing_type and embedded_offset correctly,
for a pointer value being dereferenced. Target memory bytes
corresponding to the size of the enclosing type are retreived.
(value_addr): Handle enclosing_type and pointed_to_offset.
(value_push): Use VALUE_CONTENTS_ALL and VALUE_ENCLOSING_TYPE.
(value_arg_coerce): Coerce floats to doubles only if gcc was not
used to compile the target.
(call_function_by_hand): Handle pointers to functions as paramters.
(value_array): Use VALUE_CONTENTS_ALL and VALUE_ENCLOSING_TYPE.
(search_struct_method): Produce more informative error message.
(find_rt_vbase_offset): Deal with negative offsets.
(value_find_oload_method_list): New function. Return the list of
overloaded methods of a specified name.
(find_method_list): New function. Search through the methods of an
object (and its bases) to find a specified method.
(value_full_object): New function. Given a value, check its real
run-time type.
(value_rtti_target_type): New function. Given a pointer value V, find
the real (RTTI) type of the object it points to.
(value_rtti_type): New function. Find the real run-time type of a
value using RTTI.
* valops.c: Include gdbcmd.h
Set global overload_resolution to 0.
(find_function_in_inferior): Modify error message.
(value_allocate_space_in_inferior): Modify error message.
(value_cast): Deal with HP/aCC peculiarities.
(value_of_variable): Use SYMBOL_SOURCE_NAME instead of SYMBOL_NAME.
(value_addr): Modify address value by adding the embedded offset.
(value_ind): Modify the address of the object by the pointed_to_offset.
(call_function_by_hand): Do not do any extra alignment if not needed.
Fetch the return value from the stack rather then from the register,
for the hppa architecture.
(search_struct_field): Rewritten. Now this function uses
search_struct_field_aux to do all the work.
(search_struct_field_aux): New function. This is the old
search_struct_field rewritten.
(find_rt_vbase_offset): Give error if virtual table pointer is not good.
(find_overload_match): New function. Find the best function that
matches on the argument types according to the overload resolution
rules.
(_initialize_valops): Add new set/show command for overload-resolution.
* value.h (VALUE_POINTED_TO_OFFSET): New macro.
Add field pointed_to_offset to value structure.
Add prototypes for new functions in valops.c.
* value.h (write_register_pid): Change prototype to match
function.
* value.h: Hp merge, 4/15/98 snapshot
Added parameter to val_print func decl.
Added new macro, VALUE_EMBEDDED_OFFSET, and
new func decl, find_rt_vbase_offset, for C++
support.
* values.c (allocate_value): Allocate also for value_embedded_offset
and value_enclosing_type.
(value_copy): Copy value_embedded_offset and value_enclosing_type too.
Use all_raw in copying the value itself.
(value_primitive_field): Add handling of base subobjects.
* values.c (value_copy): Copy the pointed_to_offset as well.
(allocate_value): Allocate the pointed_to_offset as well.
(value_virtual_fn_field): Rewrite.
* values.c (value_primitive_field): Adjust embedded offset and
offset calculation.
* values.c (value_static_field): Take into consideration that static
data members can be minimal symbols too.
* values.c (value_virtual_fn_field): Fix call to value_at.
* win32-nat.c (handle_load_dll): Added params to call to symbol_file_add.
Other changes have to do with XDB compatability. Leave oout
for now.
defs.h (vfprintf_filtered): Change FILE to GDB_FILE in decl.
(fprintf_filtered): Ditto.
(fprintfi_filtered): Ditto.
(vfprintf_unfiltered): Ditto.
(fprintf_unfiltered): Ditto.
infcmd.c (_initialize_infcmd): If xdb_commands is set, make S an
alias for next and define R, lr, g. Define go.
pyr-tdep.c (pyr_print_insn): Change FILE to GDB_FILE.
* breakpoint.c (create_temp_exception_breakpoint): #If it out --
nothing calls it.
(bpstat_stop_status): Don't call SOLIB_HAVE_LOAD_EVENT if it's not
defined; don't call SOLIB_HAVE_UNLOAD_EVENT if it's not defined.
(bpstat_get_triggered_catchpoints): If we don't have shared
library support, then don't call SOLIB_LOADED_LIBRARY_PATHNAME nor
SOLIB_UNLOADED_LIBRARY_PATHNAME.
(watch_command_1): Don't require a run before a watch command
unless we're on HP [it's an HP OS bug, not a generic limitation]
(catch_load_command_1): Don't define if no shared libraries.
(catch_command_1): Don't claim to support fork catchpoints unless
CHILD_INSERT_FORK_CATCHPOINT is defined, don't claim to support
vfork catchpoints unless CHILD_INSERT_VFORK_CATCHPOINT is defined,
don't clain to support shared library load catchpoints if shared
libraries aren't supported, and don't claim to support exec
catchpoints unless CHILD_INSERT_EXEC_CATCHPOINT is defined
There are new target_ops vector fields that pertain
only to HPUX. Added the to_require_attach and
to_require_detach fields to exec_ops. These new
fields are ifdef'ed for HPUX_SNAP1.
* breakpoint.h:
Fix compile error in enum bptype.
* coff-solib.h:
Fixed a number of macro definitions. SOLIB_LOADED_LIBRARY_PATHNAME,
SOLIB_HAVE_LOAD_EVENT, SOLIB_HAVE_UNLOAD_EVENT,
SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_IN_DYNAMIC_LINKER. These
macros are only meaningful (for now) for SOM. So, all
the macros were defined as error(...), but were used in
conditions. This caused the compile to crap out. I redefined
these (for now) to be 0.
* procfs.c:
(procfs_create_inferior): Fix call to fork_inferior -- need another
parameter.
* solib.h:
Fixed a number of macro definitions. SOLIB_LOADED_LIBRARY_PATHNAME,
SOLIB_HAVE_LOAD_EVENT, SOLIB_HAVE_UNLOAD_EVENT,
SOLIB_UNLOADED_LIBRARY_PATHNAME, SOLIB_IN_DYNAMIC_LINKER. These
macros are only meaningful (for now) for SOM. So, all
the macros were defined as error(...), but were used in
conditions. This caused the compile to crap out. I redefined
these (for now) to be 0.
* valops.c:
(search_struct_field): Undeclared local variable, "assigned".
(find_rt_vbase_offset): Fixed call to value_at
* value.h: Fix signature for find_rt_vbase_offset funct decl
(missing a param)
Wed Dec 30 17:48:12 1998 Stan Shebs <shebs@andros.cygnus.com>
From J.T. Conklin <jtc@redbacknetworks.com>:
* i386-stub.c: Fix error string in last change.
1998-12-30 Jason Molenda (jsm@bugshack.cygnus.com)
* utils.c: <Readline/readline.h> instead of "readline/readline.h".
* configure.in (TERM_LIB): Search for the appropriate term library
on the host system.
* configure: Regenerated.
* Makefile.in (TERMCAP): Set based on autoconf check.
* config/*/*.mh: Don't override TERMCAP setting.
Wed Dec 30 17:23:14 1998 Mark Alexander <marka@cygnus.com>
* value.c (value_virtual_fn_field): Handle the situation where
vtbl is a pointer to a structure instead of a pointer to an array.
Mon Dec 28 17:43:36 1998 David Taylor <taylor@texas.cygnus.com>
The following changes were made by Jim Blandy <jimb@cygnus.com>,
Edith Epstein <eepstein@cygnus.com>, Elena Zannoni
<ezannoni@cygnus.com> Stan Shebs <shebs@cygnus.com>, and David
Taylor <taylor@cygnus.com>, as part of the project to merge in
changes originally made by HP; HP did not create ChangeLog
entries.
* c-lang.h (cp_print_value_fields): Update prototype; fixed
prototype decl for c_val_print function -- it needed an
embedded_offset param; fixed prototype of cp_print_value_fields.
Include value.h.
(C_LANG_H): Define.
* c-valprint.c (c_val_print): Add new parameter embedded_offset.
Add embedded_offset to valaddr in function calls. fix calls to
val_print, and cp_print_value_fields. Attempt to determine the
real type of the object to be printed. fixed call to
cp_print_value_fields. process TYPE_CODE_METHOD as well. moved
call to check_typedef out of conditional. add embedded offset
param to val_print call.
(c_value_print): Add new parameter to call to val_print. Handle
pointer to class case. Ensure that const char *, const unsigned
char * come out without the type but the volatile variants and the
signed variants don't.
* ch-lang.h (chill_val_print): Add parameter to decl.
* ch-valprint.c: The various print routines have an additional
parameter. Currently, the new parameter is only used when printing
C++ expressions. So, in ch-valprint.c, the new parameter is always
0. Changes in calls to val_print, chill_val_print, c_val_print
Affected functions are chill_val_print_array_elements,
chill_val_print, chill_print_value_fields, chill_value_print.
* cp-valprint.c add vtable pointers names for aCC (HP) compiler.
(cp_print_class_method): Print message for HP/aCC case.
(cp_print_class_member): Add comments.
(cp_print_value): Adjust address computations for virtual base
classes. add new parameter 'offset'. Find correct offset for
base class in HP/aCC case. Change call to cp_print_value_fields
to have extra par.
(cp_print_value_fields): Do not print also if the only field is
the vtable pointer. Print out vtable ptr, for HP/aCC compiled
case. do not print leading '=' in case of anonymous union, or
struct. add new parameter 'offset'. Do not print the vtable
pointer as a member, in the HP aCC case. Changed calls to
val_print to have extra parameter.
(cp_print_hpacc_virtual_table_entries): New function. Print vtable
entries, in HP/aCC compiled case.
(cp_print_static_field): Change call to cp_print_value_fields, and
val_print.
* d30v-tdep.c (d30v_print_register): Add embedded_offset param
to val_print call.
* defs.h: Additional include files included when TUI is defined.
(gdb_file_isatty): New function decl.
(GDB_FILE): If TUI is defined, define a structure rather
than making this an alias for FILE.
(gdb_stdout, gdb_stderr): If TUI is defined, then define these
as pointers to variables of type GDB_FILE rather than making them
be aliases for stdout and stderr.
(TUIDO): Add definition conditionalized on definition
(or lack thereof) of TUI.
(command_class): Add two additional values.
(precision_type): New enum.
(gdb_fclose): Add decl.
(store_address): Change prototype to match function.
(tui_version, xdb_commands, dbx_commands): Add decls.
(gdb_file_deallocate): New function decl
(pa_do_strcat_registers_info): New function decl.
(streamtype): New enumerated type to distinguish between output to
a FILE and output to a buffer.
(tui_stream): New struct type, named GDB_FILE.
(gdb_stdout): Of type GDB_FILE, will pass this around gdb rather
than stdout.
(gdb_stderr): Of type GDB_FILE, will pass this around gdb rather
than stderr.
(fputs_unfiltered_hook): Change stream parameter from FILE to
GDB_FILE.
(flush_hook): Change stream parameter from FILE to GDB_FILE.
(gdb_fclose): Fix decl for gdb_fclose; parameter is now of
type GDB_FILE **.
(gdb_file_adjust_strbuf): New function decl. function lives
in utils.c.
(gdb_file_init_astring): New function decl. function lives
in utils.c.
(gdb_file_get_strbuf): New function decl. function lives in
utils.c.
(source_full_path_of): Declare.
* exec.c (_initialize_exec): Make definition of file command be
dependent upon dbx_commands not being set.
(exec_file_attach): New function.
(exec_file_command): Call it.
(exec_ops): Add new target vector fields.
* f-lang.h (f_print_type): Change FILE to GDB_FILE in decl.
(f_val_print): Ditto.
(f_val_print): Add parameter to the function decl.
* f-valprint.c (_initialize_f_valprint): If xdb_commands is set,
define lc command.
(f77_create_arrayprint_offset_tbl): Change FILE to GDB_FILE.
(f77_print_array): Ditto.
(f77_print_array_1): Ditto.
(f_val_print): Ditto.
(f_val_print): Add a parameter; this new parameter is currently
only non-zero when handling C++ expressions. In this file its
value is always 0. changed fflush to gdb_flush.
* gnu-nat.c: (init_gnu_ops): Add new target vector fields.
(gnu_create_inferior): Add param to fork_inferior call.
* hppa-tdep.c (after_prologue): If f is NULL, don't dereference
it. if no debug info, return zero telling caller that we need to
find the end of the prologue via the hard way (instruction
examination).
(find_unwind_entry): Avoid dereferencing a null
pointer.
(hppa_pid_to_exec_file): Deleted -- no longer used.
(hppa_prepare_to_proceeed): Add prototype.
(read_unwind_info): Purecov comments, bug fixes.
(find_unwind_entry): Purecov comments, bug fixes.
(find_stub_with_shl_get): Purecov comments.
(frame_chain): Additional parens.
(hppa_push_arguments): Changes to commented out version of routine.
(hppa_fix_call_dummy): Purecov comments, fix location of end.o.
(in_solib_call_trampoline): Purecov comments.
(in_solib_return_trampoline): Purecov comments.
(setup_d_pid_in_inferior): Fix location of end.o.
(initialize_hp_cxx_exception_support): Fix location of end.o.
(child_enable_exception_callback): Purecov comments.
(pa_do_strcat_registers_info): Has a new parameter, precision,
which is passed into the call to pa_strcat_fp_reg to indicate
whether to display the floating point registers using
single or double preceision.
(pa_strcat_registers): Introduce local variable, precision, and
pass it into call to pa_strcat_fp_reg.
(pa_strcat_fp_reg): Modified function. New parameter, precision,
used by function to decide whether to use single or double
precision. Also add the code to put a double precision value
into a buffer.
(pa_do_strcat_registers_info): New routine. called by
tui/tuiRegs.c:_tuiRegisterFormat to place a register name
and value into a string buffer. Interface may change in
future. Checking this in so that we have something
functional for HP.
(pa_strcat_registers): New routine, called by
pa_do_strcat_registers_info. Does same thing as
pa_print_registers except it takes a stream parameter.
This routine should disappear in future. Checking in
so that we have something functional to give HP
(pa_strcat_fp_reg): New routine, called by
pa_do_strcat_registers_info and pa_strvat_registers
to place a floating point register name and value into
a buffer. This interface may change in future.
Checking in so that we have something functional to give HP.
(pa_print_fp_reg): Change prototype to match def'n.
(pa_register_look_aside): Fix comment immediately before function.
Changes to better support stack unwinding, reading and writing
registers for HPUX. New includes ptrace.h, bfd.h, dl.h.
(internalize_unwinds): Initialize new fields in table.
(read_unwind_info): Entries in the table are now more complex
structures. References of the form ...->table[index].stub_type are
now ...->table[index].stub_unwind.stub_type.
(find_proc_framesize): Add a check for pc == 0.
(rp_saved): Entries in the table are now more complex
structures. References of the form ...->table[index].stub_type are
now ...->table[index].stub_unwind.stub_type.
(frameless_function_invocation): Stub_type becomes
stub_unwind.stub_type
(saved_pc_after_call): Stub_type becomes stub_unwind.stub_type
(hppa_frame_saved_pc): Stub_type becomes stub_unwind.stub_type
(frame_chain_valid): Stub_type becomes stub_unwind.stub_type
(hppa_call_dummy): Stub_type becomes stub_unwind.stub_type
(pa_print_fp_reg): Additional params to call val_print
(in_solib_call_trampoline): Stub_type becomes
stub_unwind.stub_type
(in_solib_return_trampoline): Stub_type becomes
stub_unwind.stub_typ
(skip_trampoline_code): Additional code to handle external
dyncalls. Also stub_type becomes stub_unwind.stub_type
(hppa_pid_to_exec_file): New funct. FOr HPUX 10.0 and beyond there
is an explicit ptrace request for getting the pathname associated
with a process id (pid).
(hppa_pid_to_exec_file): Remove unwanted param from call to
call_ptrace.
(args_for_find_stub): New structure.
(find_unwind_entry): Deal with null input pc value.
(rp_saved): Ditto.
For the import stub, return -24 always.
(hppa_frame_saved_pc): Save old pc value, to detect we are in a loop.
(init_extra_frame_info): Use TARGET_READ_FP.
(frame_chain): Include thread support.
If the caller's pc is zero, we lose and return, just like stack
bottom.
Disable warning about being unable to find unwind info.
(hppa_push_arguments): Rewrite.
(hppa_value_returned_from_stack): New function. Handles returning
a value larger than 64 bits, stored on the stack.
(find_stub_with_shl_get): New function. To look up symbols in shlibs.
(cover_find_stub_with_shl_get): New function. Cover routine for
find_stub_with_shl_get to pass to catch_errors.
(hppa_fix_call_dummy): Comment out old stub mechanism.
Rewrite using dyncall.
(target_read_fp): New function.
(pa_do_registers_info): Floating point registers start at FP4.
(pa_print_registers): Use FP4_REGNUM instead of 72.
(skip_trampoline_code): Do machine instruction matching for PA2.0.
(setup_d_pid_in_inferior): New function. Exception handling support.
(initialize_hp_cxx_exception_support): Ditto.
(child_enable_exception_callback): Ditto.
(child_get_current_exception_event): Ditto.
* hpux-thread.c (hpux_thread_ops): Add new target vector fields.
* infcmd.c: Include objfiles.h.
(attach_command): New local variable, exec_file, add code to
determine exec_file from pid if exec_file is not already known,
call new target operation, target_post_attach -- a no-op unless
on HPUXHPPA.
(detach_command): After detaching, do a SOLIB_RESTART.
(objfiles.h): Fix typo on include line.
(run_command): Only call SOLIB_RESTART if it's defined.
(detach_command): Ditto.
(run_command): If program has already been started, and decide
to restart it, the kill the target, flush the caches,
call init_wait_for_inferior. Also purge old solib objfiles.
(run_stack_dummy): Add calls to
disable_watchpoints_before_interactive_call_start and
enable_watchpoints_after_interactive_call_stops.
(finish_command): Alter code handling the evaluation and printing
of the target function's return value.
(attach_command): When given a pid, but no exec file, try to
determine the exec file from the process. If the process does not
record a full path name, try to qualify the filename against the
source path.
(_initialize_infcmd): Add some verbiage about how to use the
attach command.
(do_registers_info): Changed calls to val_print
made the symfile.h include preceed the
objfiles.h include. The other ordering caused a
compile problem (incompletely defined types).
* inftarg.c (child_post_attach): Fix decl, make static.
(proc_wait): Make globally visible.
(child_insert_fork_catchpoint, etc): Fix return type.
(child_detach_from_process): Declare.
(child_attach_to_process): Declare.
(child_stop): Make static to match decl.
(ptrace_him): Change prototype back to return int.
(ptrace_me): Remove debug output, pass NULL to fork_inferior if
not HPUX.
(proc_wait): function prototype and definition are enclosed by
proc_wait ifndef
(child_attach_to_process): New function, does most of the work
that child_attach used to do and some additional work to determine
whether gdb is already attached to the target how to react.
(child_attach): Altered. It's now a wrapper for
child_attach_to_process.
(child_require_attach): New function, called if should attach even
when gdb is already attached to target.
(child_detach_from_process): New function, does most of the work
that child_detach used to do and some additional work to determine
whether gdb is currently attached to the target.
(child_detach): Altered. It's now a wrapper for
child_detach_from_process.
(child_require_detach): New function, called if should try to
detach even when gdb is not attached to target.
(ptrace_him): Calls a new function,
target_acknowledge_forked_child. Currently,
target_acknowledge_forked_child, is only defined to do something
for HPUX.
(child_create_inferior): Changed call to fork_inferior.
(child_ops): Add to_require_attach and to_require_detach fields
to the child_ops target ops vector.
Some hacks for ttrace work:
(child_wait): Additional local variables, additional code in
while loop to check for process exited, process forked,
process vforked, process execd.
(child_thread_alive): John B. seems to think that the kill
call is inapproapriate for HPUX.
(child_attach_to_process): Using strtol rather than atoi.
no longer check for case where there is no known exec file.
(child_post_attach): New function, a default, a no-op.
(child_insert_fork_catchpoint): New function, a default, a no-op.
(child_remove_fork_catchpoint): New function, a default, a no-op.
(child_insert_vfork_catchpoint): New function, a default, a no-op.
(child_remove_vfork_catchpoint): New function, a default, a no-op.
(child_can_follow_vfork_prior_to_exec ):new function, a default,
a no-op.
(child_insert_exec_catchpoint): New function, a default, a no-op.
(child_remove_exec_catchpoint): New function, a default, a no-op.
(child_has_execd): New function, a default, returns 0.
(child_reported_exec_events_per_exec_call): New function, a
default, returns 1.
(child_has_exited): New function, a default.
(child_core_file_to_sym_file): New function, a default, returns NULL.
(child_ops): Initialize new target vector fields.
* jv-lang.h: (Java_val_print): Add embedded_offset param to func
decl.
* jv-valprint.c: Changing calls to val_print to accomodate new param.
(java_value_print): Add embedded_offset param to val_print call
(java_print_value_fields): Add embedded_offset param to val_print
call.
(java_val_print): Add embedded_offset param. alter call to
c_val_print to accomodate embedded_offset param.
* language.c (lang_bool_type): Return builtin_type_bool in c++
case.
(unk_lang_val_print): Add embedded_offset param to
prototype decl and definition.
* language.h (LA_VAL_PRINT macro, la_val_print function decl):
altered to accomodate the new parameter to the various print
functions.
* m2-lang.h (m2_val_print): Add a parameter to the function decl.
* m2-valprint.c (m2_val_print): Add a parameter.
This parameter is currently only used when evaluating C++
expressions. So, it is always 0 in this file.
* m3-nat.c (m3_create_inferior): Add param to fork_inferior call
(m3_pid_to_exec_file): New function
(m3_ops): Add new target vector fields.
* mac-nat.c (init_child_ops): Add new target vector fields.
* mips-tdep.c: Chnages to accomodate additional parameter
to val_print.
(mips_print_register): Alter calls to val_print
* monitor.c (monitor_write): Change stderr to gdb_stderr.
(monitor_remove_breakpoint): Ditto.
(init_base_monitor_ops): Add new target vector fields.
* ppc-bdm.c (init_bdm_ppc_ops): Add new target vector fields.
* printcmd.c (do_examine): When saving a value_ptr, remove it from
the list of value_ptr's to be freed automatically; when discarding
a previously saved value_ptr, free it.
(print_formatted): Update comments; add new comments.
(printf_command, print_insn): Purecov comments.
(_initialize_printcmd): Add assign as a command if dbx_commands is
set; create va as an alias for disassemble if xdb_commands is set.
(address_info): New cases LOC_INDIRECT and
LOC_THREAD_LOCAL_STATIC.
(display_command): If tui_version and exp starts with a '$', then
don't display it unless tui_vSetLayoutTo fails.
(disassemble_command): Add tuiDo calls.
(print_scalar_formatted): For integers that are long long, check
the print format and print out in binary octal, decimal, or
hex. Call the new print_*_chars functions in valprint.c
(print_frame_args): Altered calls to val_print, to reflect
additional parameter to val_print (case LOC_BASEREG_ARG).
* procfs.c: (Procfs_init_inferior): Return value is now a void.
(procfs_ops): Add new target vector fields.
(procfs_create_inferior): Fix call to fork_inferior -- need another
parameter.
* remote-adapt.c (adapt_open): Change stderr to gdb_stderr.
(adpat_insert_breakpoint): Ditto.
(init_adapt_ops): Add new target vector fields.
* remote-array.c (array_wait): Change fflush to gdb_flush and
stdout to gdb_stdout.
(init_array_ops): Add new target vector fields.
* remote-bug.c (bug_load): Change fflush to gdb_flush; stdout to
gdb_stdout.
(bug_wait): Change stderr to gdb_stderr.
(bug_insert_breakpoint): Ditto.
(init_bug_ops): Add new target vector fields.
* remote-e7000.c
(init_e7000_ops): Add new target vector fields.
* remote-eb.c (init_eb_ops): Ditto.
* remote-es.c (init_es1800_ops): Ditto.
(init_es1800_child_ops): Ditto.
* remote-es.c (init_es1800_ops): Ditto.
(init_es1800_child_ops): Ditto.
* remote-hms.c (init_hms_ops): Ditto.
* remote-hms.c (init_hms_ops): Ditto.
* remote-nindy.c (init_nindy_ops): Ditto.
* remote-nrom.c (init_nrom_ops): Ditto.
* remote-os9k.c (init_rombug_ops): Ditto.
* remote-rdp.c (init_remote_rdp_ops): Ditto.
* remote-sds.c (init_sds_ops): Ditto.
* remote-sim.c (init_gdbsim_ops): Ditto.
* remote-st.c (init_st2000_ops): Ditto.
* remote-udi.c (init_udi_ops): Ditto.
* remote-vx.c (init_vx_ops): Ditto.
(init_vx_run_ops): Ditto.
* remote-vx.c: (Init_vx_ops): Ditto.
(init_vx_run_ops): Ditto.
* remote-mips.c (mips_getstring): Change stderr to gdb_stderr.
(pmon_insert_breakpoint): Ditto.
(pmon_remove_breakpoint): Ditto.
(check_lsi_error): Ditto.
(common_breakpoint): Ditto.
(pmon_makeb64): Ditto.
* remote-mips.c (mips_xfer_memory): Change fflush to gdb_flush;
change stdout to gdb_stdout.
* remote-mm.c (mm_open): Change stderr to gdb_stderr.
(init_mm_ops): Add new target vector fields.
(mm_load): Fixed params in commented out call to symbol_file_add.
* remote-nindy.c (instream): Change decl to FILE.
* remote-udi.c (udi_load): Fixed params in call to symbol_file_add.
* remote-vx.c (vx_add_symbols): Fixed params in call to
symbol_file_add.
* remote.c (init_remote_ops): Cosmetic change to match expected
test output.
* rs6000-nat.c (add_vmap): Add params to call to allocate_objfile.
* scm-lang.h: Add parameter to scm_val_print function decl.
* scm-valprint.c (scm_scmval_print): Cast svalue to (int); new
parameter. This parameter is currently only used when evaluating
C++ expressions. So, it is always 0 in this file.
(c_val_print): Fixed prototype decl; it needed an embedded_offset
param.
* sol-thread.c (sol_core_ops): Add new target vector fields.
(sol_thread_ops): Ditto.
* somsolib.c (DLD_FLAGS_MAPPRIVATE): New macro.
Define bit of __dld_flags in HP-UX a.out files.
(DLD_FLAGS_HOOKVALID): Ditto.
(DLD_FLAGS_LISTVALID): Ditto.
(DLD_FLAGS_BOR_ENABLE): Ditto.
(som_solib_total_st_size): Cumulative size in bytes of the
symbol tables of all shared objects on the so_list_head list.
(som_solib_st_size_threshhold_exceeded): Threshold for adding symbols
for shlibs.
(som_solib_sizeof_symbol_table): New function. Computes size of
symbol table for a shlib.
(som_solib_load_symbols): New function. Load symbols from shlib.
(som_solib_add): Detect if __dld_list is not valid.
Record main program's symbol table size.
Load symbols if called from command line.
Keep threshold into account when loading shlib symbols.
(som_solib_create_inferior_hook): Use dld_flags macros.
(som_sharedlibrary_info_command): Let user know if symbols were
not loaded.
(som_solib_restart): Discard all the shlibs descriptors.
(_initialize_som_solib): Chenge help message for auto-solib-add
command.
Set threshold for symbol table to 50 megabytes.
(_initialize_som_solib): Add call to som_solib_restart.
(som_solib_restart): New function
(som_solib_in_dynamic_linker): New function
(som_solib_desire_dynamic_linker_symbols): New function
(som_solib_unloaded_library_pathname): New function
(som_solib_loaded_library_pathname): New function
(som_solib_library_pathname): New function
(som_solib_have_unload_event): New function
(som_solib_have_load_event): New function
(som_solib_create_catch_unload_hook): New function
(som_solib_create_catch_load_hook): New function
(som_solib_create_inferior_hook): Rewritten
dld_cache: New struct
addr_and_unwind_t: New struct
(find_unwind_entry) add prototype
Include assert.h, remove references to ASSERT macro,
add include of fcntl.h so that O_RDONLY is defined.
(som_solib_create_inferior_hook): Introduce new local
msymbol2 and change some msymbol's to msymbol2's -- was clobbering
msymbol, passing a NULL to lookup_minimal_symbol_solib_trampoline,
and ultimately core dumping with a SEGV.
(som_solib_mapped_entry): Additional comments for text_addr,
text_link_addr, text_end, and tsd_start_addr fields. Commenting
out 2 tsd fields, __data_start and __data_end.
(som_solib_add_solib_objfile): Add params to calls to symbol_file_add.
Add some code for distinguishing between a shared library and other
objfiles. This appears to be a prelude to thread local storage.
(som_solib_load_symbols): Changes to printf statement
enclosed by SOLIB_DEBUG ifdef.
(som_solib_add): Change comment to correctly specify path
to end.o -- /opt/langtools/lib/end.o. changes to printf statement
enclosed by SOLIB_DEBUG ifdef.
Removed several SOLIB_DEBUG ifdefs and the associated printfs.
Add code to find the start address for the object file's thread
local storage
(som_solib_create_inferior_hook): Fix warning messages use correct
path to end.o -- /opt/langtools/lib/end.o. Change control flow.
No longer user early returns from function is cases of error.
(reset_inferior_pid): New function
(som_solib_remove_inferior_hook): New function
(so_lib_thread_start_addr): New function. used for tsd.
(struct som_solib_mapped_entry): Add new field tsd_start_addr.
(struct so_list): Add new field solib_addr.
(som_solib_add_solib_objfile): New function.
(som_solib_load_symbols): Rewritten.
(som_solib_add): Make sure we don't load the symbols in if the
threshold was exceeded.
(som_solib_get_solib_by_pc): New function. Return the address of
handle of the shared library.
(som_solib_restart): Disable breakpoints at restart.
* sparcl-tdep.c (init_sparclite_ops): Add new target vector fields.
* target.c (cleanup_target): Changed casting of default functions
for to_has_forked, to_has_vforked, to_pid_to_exec_file to get rid
of warnings. Fixed PARAMS for to_has_syscall_event. Fixed the
return type on a few of the default function values.
(cleanup_target): Changes in the de_fault macro, both to
accomodate the new target_ops vector fields and to use
more accurate default functions.
(debug_to_open): Change stderr to gdb_stderr.
(debug_to_close): Ditto.
(debug_to_attach): Ditto.
(debug_to_post_attach): Ditto.
(debug_to_require_attach): Ditto.
(debug_to_detach): Ditto.
(debug_to_require_detach): Ditto.
(debug_to_resume): Ditto.
(debug_to_wait): Ditto.
(debug_to_post_wait): Ditto.
(debug_to_fetch_registers): Ditto.
(debug_to_store_registers): Ditto.
(debug_to_prepare_to_store): Ditto.
(debug_to_xfer_memory): Ditto.
(debug_to_files_info): Ditto.
(debug_to_insert_breakpoint): Ditto.
(debug_to_remove_breakpoint): Ditto.
(debug_to_terminal_init): Ditto.
(debug_to_terminal_inferior): Ditto.
(debug_to_terminal_ours_for_output): Ditto.
(debug_to_terminal_ours): Ditto.
(debug_to_terminal_info): Ditto.
(debug_to_kill): Ditto.
(debug_to_load): Ditto.
(debug_to_lookup_symbol): Ditto.
(debug_to_create_inferior): Ditto.
(debug_to_post_startup_inferior): Ditto.
(debug_to_acknowledge_created_inferior): Ditto.
(debug_to_clone_and_follow_inferior): Ditto.
(debug_to_post_follow_inferior_by_clone): Ditto.
(debug_to_insert_fork_catchpoint): Ditto.
(debug_to_remove_fork_catchpoint): Ditto.
(debug_to_insert_vfork_catchpoint): Ditto.
(debug_to_remove_vfork_catchpoint): Ditto.
(debug_to_has_forked): Ditto.
(debug_to_has_vforked): Ditto.
(debug_to_can_follow_vfork_prior_to_exec): Ditto.
(debug_to_post_follow_vfork): Ditto.
(debug_to_insert_exec_catchpoint): Ditto.
(debug_to_remove_exec_catchpoint): Ditto.
(debug_to_has_execd): Ditto.
(debug_to_reported_exec_events_per_exec_call): Ditto.
(debug_to_has_syscall_event): Ditto.
(debug_to_has_exited): Ditto.
(debug_to_mourn_inferior): Ditto.
(debug_to_can_run): Ditto.
(debug_to_notice_signals): Ditto.
(debug_to_thread_alive): Ditto.
(debug_to_stop): Ditto.
(debug_to_enable_exception_callback): Ditto.
(debug_to_get_current_exception_event): Ditto.
(debug_to_pid_to_exec_file): Ditto.
(debug_to_core_file_to_sym_file): Ditto.
(default_clone_and_follow_inferior): New function prototype
decl and function definition.
(dummy_target): Add new target_ops vector fields and their
initializations. More target_ops vector changes for HPUX new
fields.
(de_fault): Add new HPUX specific target_ops operations to the
de_fault macro
(INHERIT): Add new HPUX specific target_ops operations.
(debug_to_post_wait): New function.
(debug_to_post_startup_inferior): Ditto.
(debug_to_acknowledge_created_inferior): Ditto.
(debug_to_clone_and_follow_inferior): Ditto.
(debug_to_post_follow_inferior_by_clone): Ditto.
(debug_to_create_catch_fork_hook): Ditto.
(debug_to_create_catch_vfork_hook): Ditto.
(debug_to_has_forked): Ditto.
(debug_to_has_vforked): Ditto.
(debug_to_post_follow_vfork): Ditto.
(setup_target_debug): Initialize new target_ops vector fields.
(nosupport_runtime): New function, used in cleanup_target
(update_current_target): Add new new target_ops vector fields to
the INHERIT macro definition.
(generic_mourn_inferior): The call to breakpoint_init_inferior now
takes a parameter.
(normal_pid_to_str): Add a \0 to the end of buf.
(debug_to_has_syscall_event): New function.
(debug_to_enable_exception_callback): New function.
(debug_to_get_current_exception_event): New function.
(setup_target_debug): Initialize the 3 new target_ops vector fields
(struct signals): Fix message associated with SIGRETRACT.
(return_one): New function, used by the de_fault macro
(debug_to_post_attach): New function.
(debug_to_wait): Add new cases TARGET_WAITKIND_FORKED,
TARGET_WAITKIND_VFORKED, TARGET_WAITKIND_EXECD.
(debug_to_insert_fork_catchpoint): New function.
(debug_to_remove_fork_catchpoint): Ditto.
(debug_to_insert_vfork_catchpoint): Ditto.
(debug_to_remove_vfork_catchpoint): Ditto.
(debug_to_can_follow_vfork_prior_to_exec): Ditto.
(debug_to_insert_exec_catchpoint): Ditto.
(debug_to_remove_exec_catchpoint): Ditto.
(debug_to_core_file_to_sym_file): Ditto.
(setup_target_debug): Give new fields in current_target target_ops
vector values.
* target.h: Include symtab.h.
(target_waitkind): New enumerated values
TARGET_WAITKIND_SYSCALL_ENTRY, TARGET_WAITKIND_SYSCALL_RETURN,
TARGET_WAITKIND_FORKED, TARGET_WAITKIND_VFORKED,
TARGET_WAITKIND_EXECD.
(target_waitstatus): Add a syscall_id field to structure.
(child_has_syscall_event): New decl.
(child_thread_alive): New decl.
(target_ops): Add 3 new fields: To_has_syscall_event,
to_enable_exception_callback, to_get_current_exception_event
(target_enable_exception_callback): New macro.
(target_has_syscall_event): New macro.
(target_get_current_exception_event): New macro.
(TARGET_DISABLE_HW_WATCHPOINTS): New macro.
(TARGET_ENABLE_HW_WATCHPOINTS): New macro.
(PC_REQUIRES_RUN_BEFORE_USE): New macro.
(target_tid_to_str): New macro.
(target_waitstatus): Additional fields in struct to keep track
of child pid and pathname to execd file.
(target_ops): Add in the new target_ops function pointer fields.
New macros to go along with new target_ops fields.
In target_waitstatus.value, change name of child_pid field to
related_pid.
(target_pid_or_tid_to_str): Define default macro.
Add missing #endif after PC_REQUIRES_RUN_BEFORE_USE definition
(ENSURE_VFORKING_PARENT_REMAINS_STOPPED): Define default macro.
(RESUME_EXECD_VFORKING_CHILD_TO_GET_PARENT_VFORK): Define default
macro.
There are new function decls for to_require_attach
and to_require_detach. There are also new macros,
target_require_attach and target_require_detach. There are
also new function decls for find_default_require_detach
and find_default_require_attach.
(target_ops): New fields to_post_wait, to_post_startup_inferior
to_acknowledge_created_inferior, to_clone_and_follow_inferior,
to_post_follow_inferior_by_clone, to_create_catch_fork_hook,
to_create_catch_vfork_hook, to_has_forked, to_has_vforked,
to_post_follow_vfork, to_pid_to_exec_file.
New function definitions child_pid_to_exec_file, child_post_wait,
child_post_startup_inferior, child_acknowledge_created_inferior,
child_clone_and_follow_inferior,
child_post_follow_inferior_by_clone, child_create_catch_fork_hook,
child_create_catch_vfork_hook, child_has_forked,
child_has_vforked, child_acknowledge_created_inferior,
child_post_follow_vfork.
New macros target_post_startup_inferior,
target_acknowledge_created_inferior,
target_clone_and_follow_inferior,
target_post_follow_inferior_by_clone,
target_create_catch_fork_hook, target_create_catch_vfork_hook,
target_pid_to_exec_file.
(find_default_clone_and_follow_inferior): New function prototype.
* v850ice.c (init_850ice_ops): Init new target vector fields.
* valprint.c (print_binary_chars): Print out long long as
a binary number.
(print_octal_chars): Print out long long as an octal number
(print_decimal_chars): Print out long long as a decimal number
(strcat_longest): Define it.
* valprint.c: Hp merge, 4/15/98 snapshot
Add parameter to val_print. This is used for
evaluating C++ expressions.
* value.h (VALUE_POINTED_TO_OFFSET): New macro.
Add field pointed_to_offset to value structure.
Add prototypes for new functions in valops.c.
(write_register_pid): Change prototype to match
function.
(val_print function decl): Additional parameter.
(VALUE_EMBEDDED_OFFSET): New macro.
(find_rt_vbase_offset): New function decl -- for C++ support.
Wed Dec 23 15:03:42 1998 Per Bothner <bothner@cygnus.com>
* Makefile.in (READLINE_CFLAGS): Search $(READLINE_SRC)/.. rather
than $(READLINE_SRC) so #include <readline/readline.h> will work.
* top.c: #include <readline/history.h> instead of "history.h".
* tracepoint.c: Likewise.
* mac-xdep.c: Likewise.
Wed Dec 23 12:32:00 1998 Andrew Cagney <cagney@chook.cygnus.com>
* defs.h (TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT): Define using
TARGET_BYTE_ORDER and not target_byte_order.
Tue Dec 22 10:51:33 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* config/i386/cygwin.mh (TERMCAP): define.
(from Chris Faylor, cgf@cygnus.com)
* top.c: specify directory name for including readline.h
* tracepoint.c: ditto.
* utils.c: ditto.
Mon Dec 21 13:30:34 1998 Mark Alexander <marka@cygnus.com>
* value.c (value_virtual_fn_field): Handle the situation where
vtbl is a pointer to a structure instead of a pointer to an array.
Mon Dec 21 10:38:11 1998 Andrew Cagney <cagney@chook>
* mips-tdep.c: (MIPS_DEFAULT_FPU_TYPE): Default to
MIPS_FPU_DOUBLE.
1998-12-17 J.T. Conklin <jtc@redbacknetworks.com>
* blockframe.c (get_frame_saved_regs): If the saved_regs_addr ptr
is null, ensure that saved registers are copied from the local
variable that was used to obtain them.
Sat Dec 19 09:55:09 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* mips-tdep.c (mips32_heuristic_proc_desc): Clear temp_saved_regs
on restart. Fixes problem with backtracing through functions that
use virtual frame pointers.
Fri Dec 18 14:23:34 1998 Andrew Cagney <cagney@chook>
* mips-tdep.c (mips_push_arguments): Don't left-shift small
structs being passed in a register when an O64 target.
* config/mips/tm-mips.h (enum mips_fpu_type, mips_fpu): Move to
mips-tdep.c.
* mips-tdep.c (mips_fpu_string): Delete variable.
(mips_fpu_type_auto): New variable.
(mips_fpu_type): Rename mips_fpu.
(_initialize_mips_tdep): Delete initialization of mips_fpu et.al.
Rewrite ``set mipsfpu'' command set.
(set_mipsfpu_command, show_mipsfpu_command,
set_mipsfpu_single_command, set_mipsfpu_double_command,
set_mipsfpu_none_command, set_mipsfpu_auto_command): New
functions, handle commands.
(mips_push_arguments, mips_push_dummy_frame, mips_pop_frame,
mips_extract_return_value): Update.
(_initialize_mips_tdep): Set mips_fpu_type according to current
processor.
(_initialize_mips_tdep): Only define ``set processor'' command
when not multi-sim.
Fri Dec 18 12:56:56 1998 Andrew Cagney <cagney@chook>
* gdbarch.h (gdbarch_init_ftype): Pass struct gdbarch_info
by-value.
(struct gdbarch_info): Add struct gdbarch_tdep_info *tdep_info.
* gdbarch.c (gdbarch_update): Update.
* mips-tdep.c: (mips_gdbarch_init): Update
* gdbarch.c (gdbarch_update): Add more tracing.
Thu Dec 17 02:15:40 1998 Andrew Cagney <cagney@chook.cygnus.com>
* configure.tgt (gdb_target): Identify mips64*vr4100*-*-elf* as
vr4100.
* config/mips/vr4100.mt, config/mips/tm-vr4100.h: Replace
vr4xxx.mt and tm-vr4xxx.h.
Thu Dec 17 02:06:17 1998 Andrew Cagney <cagney@chook.cygnus.com>
* mips-tdep.c (mips_gdbarch_init): New function. Initialize a MIPS
architecture vector.
(_initialize_mips_tdep): Register MIPS with GDBARCH.
(struct gdbarch_tdep): Define.
(MIPS_EABI, MIPS_LAST_FP_ARG_REGNUM, MIPS_LAST_ARG_REGNUM): When
multi-arch, get value from gdbarch->tdep.
Thu Dec 17 02:01:58 1998 Andrew Cagney <cagney@chook>
* gdbtypes.c (_initialize_gdbtypes): Register all builtin types
with gdbarch so that they are updated whenever the architecture is
changed.
Thu Dec 17 01:58:16 1998 Andrew Cagney <cagney@chook>
* gdbarch.h (GDB_MULTI_ARCH): New macro, default to zero.
(current_gdbarch): Current architecture pointer.
* gdbarch.c (struct gdbarch): Define.
* gdbarch.h (TARGET_ARCHITECTURE, TARGET_BYTE_ORDER,
TARGET_LONG_BIT, TARGET_LONG_LONG_BIT, TARGET_PTR_BIT): When
multi-arch force definition.
* gdbarch.h, gdbarch.c (gdbarch_tdep, gdbarch_bfd_arch_info,
gdbarch_byte_order, {set,}gdbarch_long_bit,
{set,}gdbarch_long_long_bit, {set,}gdbarch_ptr_bit): Corresponding
functions.
* gdbarch.h (struct gdbarch_list, struct gdbarch_info,
gdbarch_init_ftype), gdbarch.c (register_gdbarch_init): Mechanism
for registering an architecture with GDB.
(gdbarch_list_lookup_by_info, gdbarch_alloc, gdbarch_update,
verify_gdbarch): Support functions.
* gdbarch.h (gdbarch_data_ftype), gdbarch.c
(register_gdbarch_data, gdbarch_data): Mechanism for maintaining
per-architecture pointers.
(init_gdbarch_data): Support functions.
* gdbarch.h (gdbarch_swap_ftype), gdbarch.c
(register_gdbarch_swap): Ditto for swapped memory regions.
(init_gdbarch_swap, swapout_gdbarch_swap, swapin_gdbarch_swap):
Support functions.
* gdbarch.c (set_endian_big, set_endian_little, set_architecture,
info_architecture, set_gdbarch_from_file): Hook in multi-arch
code by calling gdbarch_update.
(default_gdbarch): Default multi-arch vector. Use host's type
system for values.
Thu Dec 17 01:34:36 1998 Andrew Cagney <cagney@chook>
* gdbtypes.c (build_gdbtypes): New function.
(_initialize_gdbtypes): Call.
Wed Dec 16 11:47:00 1998 Andrew Cagney <cagney@chook>
* gdbarch.c (show_architecture): Use TARGET_ARCHITECTURE.
* gdbarch.h, gdbarch.c: Fix typo's. Use struct's in preference to
types.
* gdbarch.h, gdbarch.c (gdbarch_debug): Add ``set archdebug'' to
command set.
Tue Dec 15 23:46:40 1998 Andrew Cagney <cagney@chook>
* config/mips/tm-*.h: (TARGET_BYTE_ORDER_DEFAULT,
TARGET_BYTE_ORDER_SELECTABLE_P): Replace TARGET_BYTE_ORDER and
TARGET_BYTE_ORDER_SELECTABLE.
1998-12-14 Anthony Thompson (athompso@cambridge.arm.com)
* remote-rdp.c (rdp_init): Don't discard first character on reset.
(translate_open_mode): Define table.
(exec_swi): Handle SWI_Clock. SWI_Open now handles stdin/stdout.
SWI_Write returns number of bytes not written. SWI_Read does the
same. SWI_Seek should return success/failure flag. Fix SWI_Flen.
1998-12-14 J.T. Conklin <jtc@redbacknetworks.com>
* config/i386/nbsd.mh, config/m68k/nbsd.mh, config/ns32k/nbsd.mh
(XDEPFILES): Add ser-tcp.o.
Mon Dec 14 14:46:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
* monitor.c (monitor_expect, monitor_printf_noecho,
monitor_printf): Always compile EXTRA_RDEBUG code.
(RDEBUG): Ditto.
From Michael Meissner <meissner@cygnus.com>:
* ppcbug-rom.c (init_ppc_cmds): Cleanup formatting.
1998-12-08 Michael Meissner <meissner@cygnus.com>
* monitor.c (monitor_printable_string): New function to convert a
string into a printable representation.
(monitor_error): Call error after converting string into printable
format.
(monitor_printf{,_noecho}): If EXTRA_RDEBUG is defined, convert
string into printable form before printing.
(monitor_expect): Ditto.
(monitor_read_memory{,_single}): Call monitor_error, not error.
(monitor_read_memory): Return immediately if length is 0.
* ppcbug-rom.c (init_ppc_cmds): Fill in dump_registers field,
which is now required.
Mon Dec 14 11:01:39 1998 Andrew Cagney <cagney@b1.cygnus.com>
* gdbarch.h, gdbarch.c: Consolidate the semi-dynamic target system
dependant GDB parameters.
(set_gdbarch_from_file): Combine set_architecture_from_file and
set_byte_order_from_file.
* top.c, defs.h, printcmd.c: Delete them from here.
* Makefile.in: Add gdbarch.[ch].
* exec.c (exec_file_command): Call set_gdbarch_from_file.
Sun Dec 13 09:52:51 1998 Andrew Cagney <cagney@b1.cygnus.com>
* defs.h (TARGET_PRINT_INSN_INFO, TARGET_PRINT_INSN): Define.
(TARGET_ARCHITECTURE, TARGET_ARCHITECTURE_AUTO): Define.
(TARGET_BYTE_ORDER_AUTO): Define.
(TARGET_BYTE_ORDER_SELECTABLE_P): Provide default. Replaces
TARGET_BYTE_ORDER_SELECTABLE. Handle compat issues.
(BITS_BIG_ENDIAN): Simplify.
(TARGET_FLOAT_FORMAT): Ditto.
(TARGET_DOUBLE_FORMAT):
* remote-e7000.c, sh-tdep.c, printcmd.c, remote-sim.c,
remote-rdi.c, sparc-tdep.c: Update.
* config/powerpc/tm-ppcle-eabi.h, config/rs6000/tm-rs6000.h,
config/powerpc/tm-ppc-eabi.h, config/mn10300/tm-mn10300.h:
Convert.
Sat Dec 12 09:28:13 1998 Andrew Cagney <cagney@b1.cygnus.com>
* frame.h (struct frame_info): Add CORE_ADDR *saved_regs and
struct frame_extra_info *extra_info.
(frame_obstack_alloc, frame_saved_regs_zalloc): Prototype.
(SIZEOF_FRAME_SAVED_REGS): Provide default.
(FRAME_INIT_SAVED_REGS): Provide default.
(struct frame_saved_regs): Deprecate.
(EXTRA_FRAME_INFO): Deprecate.
* blockframe.c (frame_obstack_alloc, frame_saved_regs_zalloc): New
function.
(generic_get_saved_register): Use FRAME_INIT_SAVED_REGS and
frame->saved_regs.
(frame_cache_obstack): Make static.
(get_frame_saved_regs): Deprecate. Copy the saved regs into the
frame buffer.
* stack.c (frame_info): Rewrite using frame->saved_regs and
FRAME_INIT_SAVED_REGS.
* findvar.c (find_saved_register): Ditto.
* config/mn10300/tm-mn10300.h (EXTRA_FRAME_INFO): Delete.
(FRAME_FIND_SAVED_REGS): Replace with FRAME_INIT_SAVED_REGS. No-op.
* mn10300-tdep.c: Update.
(analyze_dummy_frame): New function.
(struct frame_extra_info): Define.
(mn10300_init_extra_frame_info): Update.
* config/rs6000/tm-rs6000.h: (EXTRA_FRAME_INFO): Delete.
(FRAME_FIND_SAVED_REGS): Replace with FRAME_INIT_SAVED_REGS.
(FRAME_ARGS_ADDRESS): Replace with function.
* rs6000-tdep.c (frame_get_saved_regs): Rename from
frame_get_cache_fsr.
(rs6000_init_extra_frame_info): New function.
(rs6000_frame_init_saved_regs): Call frame_get_saved_regs.
(FUNCTION_START_OFFSET): Delete references, was ZERO.
(rs6000_frame_args_address): New function.
(frame_initial_stack_address): Update
* config/mips/tm-mips.h (EXTRA_FRAME_INFO): Remove saved_regs.
(FRAME_INIT_SAVED_REGS): Rename FRAME_FIND_SAVED_REGS, update.
* mips-tdep.c (mips_find_saved_regs, read_next_frame_reg,
init_extra_frame_info, mips_pop_frame): Update.
* config/alpha/tm-alpha.h (FRAME_INIT_SAVED_REGS,
EXTRA_FRAME_INFO), alpha-tdep.c (alpha_find_saved_regs,
alpha_pop_frame, init_extra_frame_info): Ditto.
* i960-tdep.c, m88k-tdep.c, h8300-tdep.c: Update.
* config/sparc/tm-sparc.h, config/a29k/tm-a29k.h: Define
FRAME_INIT_SAVED_REGS as no-op.
* z8k-tdep.c (z8k_init_frame_saved_regs): Rename
get_frame_saved_regs.
(examine_frame, z8k_skip_prologue): Update.
* config/z8k/tm-z8k.h (FRAME_INIT_SAVED_REGS): Define.
1998-12-11 Fernando Nasser <fnasser@totem.to.cygnus.com>
From J.T. Conklin <jtc@redbacknetworks.com>:
* i386-stub.c (handle_exception): Add support for 'P' command.
(NUMREGS): New macro.
Fri Dec 11 09:07:05 1998 Andrew Cagney <cagney@b1.cygnus.com>
* i386b-nat.c: Include "expression.h".
* symtab.h: Don't include "gnu-regex.h".
* solib.c (solib_add_common_symbols): Cast parameters passed to
make_cleanup to use the new make_cleanup_func typedef.
* inftarg.c: Include "wait.h" after, rather than before, <wait.h>.
"wait.h" was defining all WIF* macro's instead of filling in those
that <wait.h> missed.
Fri Dec 11 09:52:04 1998 Andrew Cagney <cagney@chook>
* mipsm3-nat.c, hppah-nat.c, infptrace.c, i386gnu-nat.c,
hppab-nat.c, core-aout.c, arm-xdep.c, alpha-nat.c, altos-xdep.c,
pyr-xdep.c, remote-st.c, remote-os9k.c, tahoe-tdep.c, pyr-tdep.c,
vax-tdep.c: Replace reg_name with REGISTER_NAME.
Thu Dec 10 15:19:40 1998 David Taylor <taylor@texas.cygnus.com>
The following changes were made by Jim Blandy <jimb@cygnus.com>,
Edith Epstein <eepstein@cygnus.com>, Elena Zannoni
<ezannoni@cygnus.com> Stan Shebs <shebs@cygnus.com>, and David
Taylor <taylor@cygnus.com>, as part of the project to merge in
changes originally made by HP; HP did not create ChangeLog
entries.
* annotate.c (annotate_catchpoint): New function.
* annotate.h (annotate_catchpoint): declare it; add new includes
(symtab.h and gdbtypes.h).
* buildsym.h: add external var processing_hp_compilation.
* coff-solib.h:
(SOLIB_REMOVE_INFERIOR_HOOK): new macro. defined to 0.
functionality not implemented for coff.
(SOLIB_CREATE_CATCH_LOAD_HOOK): New macro; generate error msg for coff.
(SOLIB_CREATE_CATCH_UNLOAD_HOOK): ditto.
(SOLIB_HAVE_LOAD_EVENT): ditto.
(SOLIB_LOADED_LIBRARY_PATHNAME): ditto.
(SOLIB_HAVE_UNLOAD_EVENT): ditto.
(SOLIB_UNLOADED_LIBRARY_PATHNAME): ditto.
(SOLIB_IN_DYNAMIC_LINKER): ditto.
(SOLIB_RESTART): ditto.
* complaints.h: add ifdef...endif pair at beginning and end of file.
* dstread.c (dst_symfile_read): the parameter to fileno
must be of type FILE *. So cast abfd->iostream in the
call to fileno must be cast as a FILE *, not a GDB_FILE *.
This will work because abfd->iostream is declared and
given a value in bdf and bfd will continue to use FILE
rather than GDB_FILE.
* dwarf2read.c (dwarf_bool_name): change parameter from bool
to mybool. sigh.
* expression.h: include symtab.h
* frame.h (print_only_stack_frame, show_stack_frame,
show_frame_info): add prototypes.
* gdbcmd.h (togglelist, stoplist): declare.
* gdbcore.h (read_memory_string): declare it.
(exec_file_attach): add prototype.
* inflow.c (terminal_is_ours): make non static.
* minsyms.c: minor spacing change.
* parser-defs.h (parse_nested_classes_for_hpacc): add prototype.
(find_template_name_end): add prototype.
* scm-lang.c (scm_unpack): cast svalue to (int).
* top.h: declare it.
* valprint.h (print_binary_chars): new prototype definition.
(print_octal_chars): new prototype definition.
(print_decimal_chars): new prototype definition.
Thu Dec 10 07:14:56 1998 Andrew Cagney <cagney@chook>
* config/arm/tm-arm.h, arm-tdep.c: Replace REGISTER_NAMES with
REGISTER_NAME.
* mn10300-tdep.c, config/mn10300/tm-mn10300.h: Ditto.
* sh-tdep.c, config/sh/tm-sh.h: Ditto.
* defs.h (REGISTER_NAME): Provide default for old targets.
* defs.h, infcmd.c: Rename reg_names to gdb_register_names.
* tracepoint.c, target.c, parse.c, infcmd.c, remote-udi.c,
expprint.c, infcmd.c, printcmd.c, eval.c, stack.c, findvar.c,
remote-udi.c, config/alpha/tm-alpha.h, remote-sim.c, d30v-tdep.c,
config/mips/tm-mips.h, hppa-tdep.c: Use REGISTER_NAME.
1998-12-08 James E Wilson <wilson@wilson-pc.cygnus.com>
* config/i960/mon960.mt (SIM_OBJS, SIM): Define.
Tue Dec 8 16:49:24 1998 Stan Shebs <shebs@andros.cygnus.com>
* NEWS: Add mentions of newly-added configurations.
1998-12-08 Philippe De Muyter <phdm@macqel.be>
* config/xm-aix4.h (SIGWINCH_HANDLER): Function `aix_resize_window'
must accept a signal number as parameter.
* config/rs6000/xm-rs6000.h (SIGWINCH_HANDLER): Ditto.
* utils.c (initialize_utils): Give a parameter to `SIGWINCH_HANDLER'.
* inferior.h (register_valid): Variable's type is `SIGNED char', not
`char'.
* findvar.c (register_valid): Ditto.
* defs.h (make_cleanup_func): Protect parameter list by `PARAMS'.
* gdbthread.h (unbind_target_thread_vector): Likewise.
Tue Dec 8 15:09:44 1998 Edith Epstein <eepstein@sophia.cygnus.com>
Merged in m68k-linux patch from Andreas Schwab
1998-12-01 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* Makefile.in, configure.host, configure.tgt: Add support for
m68k-linux.
* config/m68k/linux.mh: New file.
* config/m68k/linux.mt: New file.
* config/m68k/nm-linux.h: New file.
* config/m68k/tm-linux.h: New file.
* config/m68k/xm-linux.h: New file.
* gdb/m68klinux-nat.c: New file.
* gdbserver/low-linux.c: Add support for m68k-linux.
* gdb/config/m68k/tm-m68k.h (NUM_FREGS): New macro.
1998-12-07 Jason Molenda (jsm@bugshack.cygnus.com)
* config/i386/xm-cygwin.h: Remove REQUEST_QUIT definition.
* config/powerpc/xm-cygwin.h: Ditto.
1998-12-07 Jim Blandy <jimb@zwingli.cygnus.com>
* rs6000-tdep.c (pop_frame): Correctly find the registers saved in
the stack frame. Their offset from the previous stack frame is in
fdata.gpr_offset and fdata.fpr_offset, not fdata.offset.
(gdb.base/return.exp)
* config/rs6000/tm-rs6000.h: Doc fixes.
1998-12-03 Jason Molenda (jsm@bugshack.cygnus.com)
* monitor.c (monitor_read_memory): Zero out pattern buffers
before calling re_search.
(parse_register_dump): Ditto.
Thu Dec 3 10:37:22 EST 1998 Zdenek Radouch (radouch@cygnus.com)
FR30 updates - still very preliminary.
* configure.tgt
* fr30-tdep.c
* config/fr30/tm-fr30.h
Thu Dec 3 16:30:35 1998 Andrew Cagney <cagney@b1.cygnus.com>
* ax-gdb.c: Include target.h.
Tue Dec 3 10:59:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
* ax-gdb.c (_initialize_ax_gdb), i960-tdep.c (pop_frame),
monitor.c (flush_monitor_dcache, longlongendswap), remote-array.c
(hexword2ascii), w89k-rom.c (init_w89k_cmds), z8k-tdep.c
(init_frame_pc, extract_return_value): Make return type void.
* monitor.c (monitor_write_even_block): Make return type explicit.
(monotor_read_memory_block): Delete function.
* monitor.h: Update.
* remote.c (remote_get_threadlist, remote_update_threads),
remote-array.c (array_get_packet), remote-rdi.c (Fail): Always
return a value.
* m32r-tdep.c (m32r_fix_call_dummy): From Michael Snyder, void
function.
* jv-valprint.c (java_val_print): From Stu Grossman. Return 0 by
default.
Wed Dec 2 15:11:38 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c: Move default definition of
TARGET_VIRTUAL_FRAME_POINTER from here to target.h.
* target.h: Add default definition of TARGET_VIRTUAL_FRAME_POINTER.
* ax-gdb.c (gen_frame_args_address, gen_frame_locals_address):
use TARGET_VIRTUAL_FRAME_POINTER to determine frame pointer.
(gen_trace_for_expr): new argument, address of tracepoint,
gets passed to new_agent_expr and added to struct agent_expr.
(is_nontrivial_conversion): call to new_agent_expr now requires
a dummy argument. (agent_command): use get_current_frame() to
get current PC scope; pass it to gen_trace_for_expr.
* ax-general.c (new_agent_expr): new argument, address of
tracepoint; store it in new field of struct agent_expr.
* ax.h (struct agent_expr): add new field for tracepoint address.
* ax-gdb.h: change prototypes to match above changes.
* m32r-tdep.c (decode_prologue): If no branch or push fp is found,
but there's a stack adjust, then use that as the end of prologue.
(m32r_skip_prologue): don't skip past the first line if there is
line info. (m32r_virtual_frame_pointer): new function.
(m32r_fix_call_dummy): no return value needed.
Tue Dec 1 10:59:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
* ocd.c (remote_timeout), (BDM_BREAKPOINT), monitor.c (readchar),
remote.c: Cleanup closing of open comments.
Mon Nov 30 16:04:03 1998 Doug Evans <devans@canuck.cygnus.com>
* config/fr30/tm-fr30.h (INNER_THAN): Add parameters.
Mon Nov 30 11:18:48 1998 Andrew Cagney <cagney@chook>
* frame.h (FRAME_CHAIN_VALID): Default to
default_frame_chain_valid.
* blockframe.c (default_frame_chain_valid): New function.
* frame.h (FRAME_CHAIN_VALID_ALTERNATIVE): Delete references
* blockframe.c (alternate_frame_chain_valid): New function.
* config/mips/tm-mipsv4.h, config/m88k/tm-delta88v4.h,
config/m68k/tm-monitor.h, config/m68k/tm-m68kv4.h,
config/i386/tm-i386v4.h, config/i386/tm-i386nw.h,
config/h8300/tm-h8300.h: Update.
* blockframe.c (nonnull_frame_chain_valid): New function.
* config/m68k/tm-os68k.h, config/m68k/tm-vx68.h,
config/m68k/tm-apollo68b.h, config/i960/tm-vx960.h,
config/arc/tm-arc.h: Update FRAME_CHAIN_VALID.
* hppa-tdep.c (frame_chain_valid, hppa_frame_chain_valid),
remote-vx29k.c (get_fp_contents, vx29k_frame_chain_valid),
arm-tdep.c (frame_chain_valid, arm_frame_chain_valid): Rename
functions so that they are name space clean.
* config/pa/tm-hppa.h, config/a29k/tm-vx29k.h,
config/arm/tm-arm.h: Update FRAME_CHAIN_VALID.
* gould-tdep.c (gould_frame_chain_valid), d30v-tdep.c
(d30v_frame_chain_valid), d10v-tdep.c (d10v_frame_chain_valid):
New functions.
* config/gould/tm-np1.h, config/gould/tm-pn.h,
config/d30v/tm-d30v.h, config/d10v/tm-d10v.h: Update
FRAME_CHAIN_VALID.
Sun Nov 29 11:18:37 1998 Andrew Cagney <cagney@b1.cygnus.com>
* z8k-tdep.c (z8k_addr_bits_remove), w65-tdep.c
(w65_addr_bits_remove), h8500-tdep.c (h8500_addr_bits_remove),
m88k-tdep.c (m88k_addr_bits_remove): Function to clean up an
address.
* config/z8k/tm-z8k.h, config/w65/tm-w65.h, config/m88k/tm-m88k.h,
config/h8500/tm-h8500.h: Define ADDR_BITS_REMOVE to call targets
corresponding function.
* z8k-tdep.c (saved_pc_after_call): Update.
Sat Nov 28 12:24:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/z8k/tm-z8k.h, config/w65/tm-w65.h, config/vax/tm-vax.h,
config/v850/tm-v850.h, config/tahoe/tm-tahoe.h,
config/sparc/tm-sparc.h, config/sh/tm-sh.h,
config/rs6000/tm-rs6000.h, config/pyr/tm-pyr.h,
config/pa/tm-hppa.h, config/ns32k/tm-umax.h,
config/ns32k/tm-merlin.h, config/none/tm-none.h,
config/mn10300/tm-mn10300.h, config/mn10200/tm-mn10200.h,
config/mips/tm-mips.h, config/m88k/tm-m88k.h,
config/m68k/tm-m68k.h, config/m32r/tm-m32r.h,
config/i960/tm-i960.h, config/i386/tm-i386.h,
config/h8500/tm-h8500.h, config/h8300/tm-h8300.h,
config/gould/tm-pn.h, config/gould/tm-np1.h, config/arm/tm-arm.h,
config/convex/tm-convex.h, config/d10v/tm-d10v.h,
config/alpha/tm-alpha.h, config/a29k/tm-a29k.h: Add parameters to
macro INNER_THAN.
* valops.c (push_word, value_push, call_function_by_hand),
breakpoint.c (bpstat_stop_status), blockframe.c
(generic_push_dummy_frame, generic_frame_chain_valid), inferior.h
(PC_IN_CALL_DUMMY), infrun.c (wait_for_inferior): Update use of
INNER_THAN.
Fri Nov 27 11:00:25 1998 Andrew Cagney <cagney@chook>
* target.h (one_stepped): Move global from here.
* infrun.c (singlestep_breakpoints_inserted_p): To here. Rename.
Make static.
(wait_for_inferior): Update.
(resume): Update. Set variable after call to SOFTWARE_SINGLE_STEP.
* target.h (NO_SINGLE_STEP): Replace with SOFTWARE_SINGLE_STEP_P
and SOFTWARE_SINGLE_STEP.
* config/sparc/tm-sparc.h, config/rs6000/tm-rs6000.h,
config/arc/tm-arc.h: Update.
* rs6000-tdep.c (rs6000_software_single_step), sparc-tdep.c
(sparc_software_single_step), arc-tdep.c (arc_single_step): New
functions. Replace function single_step.
* config/mips/tm-mips.h (STEP_SKIPS_DELAY_P): Define.
* infrun.c (proceed): Cleanup.
Thu Nov 26 11:19:15 1998 Andrew Cagney <cagney@amy.cygnus.com>
* config/alpha/tm-alpha.h (ABOUT_TO_RETURN): Replace macro.
* alpha-tdep.c (alpha_about_to_return): With new function.
(heuristic_proc_start): Update.
* config/mips/tm-mips.h (ABOUT_TO_RETURN), mips-tdep.c
(heuristic_proc_start, mips_about_to_return): Ditto.
* config/ns32k/tm-merlin.h (ABOUT_TO_RETURN),
config/ns32k/tm-umax.h (ABOUT_TO_RETURN), ns32k-tdep.c
(ns32k_about_to_return, ns32k_get_enter_addr): Ditto.
* config/z8k/tm-z8k.h, config/w65/tm-w65.h, config/vax/tm-vax.h,
config/tahoe/tm-tahoe.h, config/sparc/tm-sparc.h,
config/sh/tm-sh.h, config/rs6000/tm-rs6000.h, config/pyr/tm-pyr.h,
config/pa/tm-hppa.h, config/m88k/tm-m88k.h, config/m68k/tm-m68k.h,
config/i960/tm-i960.h, config/i386/tm-i386.h,
config/h8500/tm-h8500.h, config/h8300/tm-h8300.h,
config/gould/tm-pn.h, config/gould/tm-np1.h,
config/convex/tm-convex.h, config/arm/tm-arm.h,
config/arc/tm-arc.h, config/a29k/tm-a29k.h: Delete macro
ABOUT_TO_RETURN.
* config/w65/tm-w65.h (RTL, RTS): Delete macros.
* h8500-tdep.c (about_to_return): Delete function.
Thu Nov 26 11:19:15 1998 Andrew Cagney <cagney@chook.cygnus.com>
* rs6000-tdep.c (rs6000_breakpoint_from_pc): Change big_breakpoint
and little_breakpoint to char[] from char*.
* remote-array.c (array_insert_breakpoint): Change bp_addr to
CORE_ADDR type.
Wed Nov 25 00:13:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
* vx-share/xdr_ld.c (xdr_ldtabl): Cast second arg to char**
instead of char*.
* configure.tgt (v850): Only build v850ice when cygwin and gui.
* configure.in: Add parameter to --enable-build-warnings.
* configure: Re-build.
* c-exp.y (parse_number): Rewrite shift to pacify GCC.
* config/i960/tm-i960.h (BREAKPOINT): Delete definition - simply
wrong.
* monitor.c (compile_pattern): Make val const char*.
(monitor_wait_cleanup): Make old_timeout void*, pointing at
old_timeout.
(monitor_wait): Update.
* remote-udi.c, remote-sim.c, remote-e7000.c, hppa-tdep.c,
remote-mips.c, sparcl-tdep.c, xcoffread.c: Cast parameters passed
to make_cleanup to use the new make_cleanup_func typedef.
* alpha-tdep.c (MASK): Use LONGEST to avoid arithmetic overflow.
* config/a29k/tm-a29k.h (TRANSPARENT): Rename macro to
TRANSPARENT_FRAME. Avoid name-space clash.
* a29k-tdep.c (init_frame_info): Update.
Wed Nov 25 20:37:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
* rs6000-tdep.c (rs6000_breakpoint_from_pc): Change big_breakpoint
and little_breakpoint to char[] from char*.
* mem-break.c (memory_insert_breakpoint,
memory_remove_breakpoint): Pass address of bplen.
* remote-array.c (array_insert_breakpoint): Change bp_addr to
CORE_ADDR type.
Tue Nov 24 15:46:33 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* config/mn10300/tm-mn10300.h (TARGET_VIRTUAL_FRAME_POINTER):
new target macro.
* mn10300-tdep.c (mn10300_virtual_frame_pointer): new function.
* tracepoint.c (encode_actions): Use the new target macro to
determine the virtual frame pointer, for collecting locals/args.
(add_local_symbols, collect_symbol): add a register/offset pair of
arguments so that the virtual frame pointer can be passed in.
1998-11-24 Felix Lee <flee@cygnus.com>
* procfs.c (procfs_wait): handle syscall events first.
* procfs.c (GDB_GREGSET_TYPE, GDB_FPREGSET_TYPE): new macros.
* config/sparc/xm-sun4sol2.h: use them.
* core-sol2.c: don't #undef gregset_t and fpregset_t.
* sol-thread.c: ditto.
* sparc-tdep.c: ditto.
Tue Nov 24 14:13:10 1998 Andrew Cagney <cagney@chook>
* breakpoint.c (memory_breakpoint_size): Delete global.
(read_memory_nobpt): Determine real breakpoint address and size
using BREAKPOINT_FROM_PC.
* defs.h (breakpoint_from_pc_fn): BREAKPOINT_FROM_PC function
template.
* target.h, mem-break.c (memory_breakpoint_from_pc):
Rewrite. Always define. Return NULL when memory breakpoints are
not supported.
(memory_insert_breakpoint, memory_remove_breakpoint): Call
BREAKPOINT_FROM_PC.
* target.h (BREAKPOINT_FROM_PC): Provide default.
* gdbint.texinfo (BREAKPOINT_FROM_PC): Document.
* config/rs6000/tm-rs6000.h (BREAKPOINT): Delete macro.
(BREAKPOINT_FROM_PC): Define.
({BIG,LITTLE}_BREAKPOINT): Move macros from here.
* rs6000-tdep.c: To here.
(rs6000_breakpoint_from_pc): New function.
* config/mn10300/tm-mn10300.h (BREAKPOINT): Delete macro.
(BREAKPOINT_FROM_PC): Define, call.
* mn10300-tdep.c (mn10300_breakpoint_from_pc): New function.
* config/mips/tm-mips.h ({BIG,LITTLE}_BREAKPOINT,
IDT_{BIG,LITTLE}_BREAKPOINT, PMON_{BIG,LITTLE}_BREAKPOINT,
MIPS16_{BIG,LITTLE}_BREAKPOINT): Move macros from here.
* mips-tdep.c: To here.
* config/arm/tm-arm.h ({BIG,LITTLE}_BREAKPOINT): Delete macros.
({ARM,THUMB}_{BE,LE}_BREAKPOINT): Move macros from here.
* arm-tdep.c: To here.
* remote-array.c (memory_breakpoint_size): Delete variable.
(array_insert_breakpoint): Obtain breakpoint size using
BREAKPOINT_FROM_PC.
* remote-st.c (memory_breakpoint_size, st2000_insert_breakpoint):
Ditto.
* remote-os9k.c (memory_breakpoint_size,
rombug_insert_breakpoint): Ditto.
* remote-e7000.c (memory_breakpoint_size): Ditto.
Mon Nov 23 11:38:40 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* symfile.c (deduce_language_from_filename): rewrite so as to
work from a table of filename extensions, modifiable by the user.
(filename_language_table): new data structure.
(set_ext_lang_command): new function for new command, "set
extension-language". (info_extension_language_command): new
function for new command "info extension-languages".
(add_filename_language, init_filename_language_table): new
support functions for the above.
* language.c (language_enum): new function. Support for above.
Mon Nov 23 10:47:54 1998 Andrew Cagney <cagney@chook.cygnus.com>
* config/sh/tm-sh.h, config/mn10200/tm-mn10200.h,
config/m32r/tm-m32r.h, config/arm/tm-arm.h, config/i960/tm-i960.h,
config/gould/tm-np1.h, config/d10v/tm-d10v.h,
config/v850/tm-v850.h, config/pa/tm-hppa.h, config/a29k/tm-a29k.h,
config/mn10300/tm-mn10300.h, config/mips/tm-mips.h
(USE_STRUCT_CONVENTION): Cleanup, define macro as function.
* sh-tdep.c (sh_use_struct_convention), mn10200-tdep.c
(mn10200_use_struct_convention), i960-tdep.c
(i960_use_struct_convention), gould-tdep.c
(gould_use_struct_convention), d10v-tdep.c
(d10v_use_struct_convention), v850-tdep.c
(v850_use_struct_convention), hppa-tdep.c
(hpha_use_struct_convention), m32r-tdep.c
(m32r_use_struct_convention), arm-tdep.c
(arm_use_struct_convention), mn10300-tdep.c
(mn10300_use_struct_convention), a29k-tdep.c
(a29k_use_struct_convention), mips-tdep.c
(mips_use_struct_convention): New functions
* value.h, values.c (generic_use_struct_convention): New function,
replace macro.
* values.c (USE_STRUCT_CONVENTION): Macro defaults to function
generic_use_struct_convention.
Sat Nov 21 17:15:40 1998 Philippe De Muyter <phdm@macqel.be>
* breakpoint.c (bpstat_stop_status): Do not increment hit_count
of breakpoint if condition is not true.
* coffread.c (coff_symtab_read): Discard C_LABEL's that are not
function entry points, to avoid getting them in the stack dump
instead of the actual function.
* config/m68k/delta68.mh (NAT_FILE): Undo 1998-08-18 change;
without NAT_FILE definition, configure will assume that GDB cannot
run native.
* config/m68k/nm-delta68.h (KERNEL_U_SIZE): New macro.
* delta68-nat.c (kernel_u_size): New function.
Fri Nov 20 10:13:03 1998 Andrew Cagney <cagney@b1.cygnus.com>
* buildsym.c (end_symtab): Cleanup PROCESS_LINENUMBER_HOOK.
Thu Nov 19 15:21:04 1998 Geoffrey Noer <noer@cygnus.com>
* rdi-share/host.h: if compiling under Cygwin, make sure new
preprocessor define is defined. Define it if not.
* rdi-share/hostchan.h: ditto
* rdi-share/aclocal.m4: regenerate
* rdi-share/configure: regenerate
Thu Nov 19 14:43:44 1998 Geoffrey Noer <noer@cygnus.com>
* configure.in: switch back to checking __CYGWIN32__
* configure: regenerate
Thu Nov 19 09:53:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
* exec.c (exec_file_command): Cleanup. Replace #if
NEED_TEXT_START_END with if().
* config/pa/nm-hppah.h (NEED_TEXT_START_END): Redefine to be 1.
* config/convex/tm-convex.h (NEED_TEXT_START_END): Ditto.
* config/gould/tm-np1.h (NEED_TEXT_START_END): Ditto.
* config/a29k/tm-a29k.h (NEED_TEXT_START_END): Ditto.
Thu Nov 19 13:06:22 1998 Geoffrey Noer <noer@cygnus.com>
* main.c: Wait until more time has passed before calling
new cygwin_ funcs, revert back to the cygwin32_ ones for now.
* win32-nat.c: Ditto.
Wed Nov 18 15:03:17 1998 Andrew Cagney <cagney@chook.cygnus.com>
* 29k-share/udi/udip2soc.c (UDIConnect): Replace sys_errlist with
strerror.
Mon Nov 16 14:17:05 1998 Geoffrey Noer <noer@cygnus.com>
* defs.h: if compiling under Cygwin, define __CYGWIN__ if
__CYGWIN32__ is defined and __CYGWIN__ isn't for backwards
compatibility.
Fri Nov 13 00:15:08 1998 Geoffrey Noer <noer@cygnus.com>
Changes to account for name change from cygwin32 to cygwin and
clean up Win32-related ifdefs.
* configure.tgt: check for cygwin* instead of cygwin32.
New cygwin gdb_target variable loses the "32".
* configure.host: check for cygwin* instead of cygwin32.
New cygwin gdb_host variable loses the "32".
* configure.in: test __CYGWIN__ instead of __CYGWIN32__,
rename gdb_cv_os_cygwin32 variable to drop the "32". Call
AM_EXEEXT instead of AC_EXEEXT since that isn't in a released
autoconf yet.
* configure: regenerate.
* main.c: drop "32" from cygwin_ funcs, include sys/cygwin.h where
cygwin path conv protos live, instead of adding a proto here for
them here.
* {main.c, ser-tcp.c, ser-unix.c, top.c}: check __CYGWIN__
instead of __CYGWIN32__.
* source.c: thoughout, check _WIN32 instead of WIN32.
* config/i386/cygwin32.mh: delete.
* config/i386/cygwin.mh: new file, was cygwin32.mh.
* config/i386/cygwin32.mt: delete.
* config/i386/cygwin.mt: new file, was cygwin32.mt.
* config/i386/tm-cygwin32.h: delete.
* config/i386/tm-cygwin.h: new file, was tm-cygwin32.h.
* config/i386/xm-cygwin32.h: delete.
* config/i386/xm-cygwin.h: new file, was xm-cygwin32.h.
* config/i386/xm-windows.h: #include xm-cygwin.h now.
* config/powerpc/cygwin32.mh: delete.
* config/powerpc/cygwin.mh: new file, was cygwin32.mh.
* config/powerpc/cygwin32.mt: delete.
* config/powerpc/cygwin.mt: new file, was cygwin32.mt.
* config/powerpc/tm-cygwin32.h: delete.
* config/powerpc/tm-cygwin.h: new file, was tm-cygwin32.h.
* config/powerpc/xm-cygwin32.h: delete.
* config/powerpc/xm-cygwin.h: new file, was xm-cygwin32.h.
* rdi-share/aclocal.m4: regenerate with aclocal.
* rdi-share/configure: regenerate with autoconf.
* rdi-share/{host.h, hostchan.c, hostchan.h, serdrv.c, serpardr.c,
unixcomm.c}: check __CYGWIN__ instead of __CYGWIN32__.
Thu Nov 12 17:19:43 1998 John Metzler <jmetzler@cygnus.com>
* remote.c (remote_get_threadinfo): Support for remote
multithread debugging.
(remote_get_threadlist): get a partial list of threads
(remote_threadlist_iterator): Step through all the threads
(init_remote_threadtests): Optional builtin unit test commands.
* thread.c (bind_target_thread_vector): Implementa a more dynamic
way of accessing target specific thread info functions than
FIND_NEW_THREADS.
(target_thread_info): Function to get extended thread information.
* gdbthread.h: Export internal data structures corresponding to
external detailed thread info response. This is more like a 'ps'
command than what might be expected of host based threads. This
is for embedded systems.
Wed Nov 11 15:47:00 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* procfs.c (proc_set_exec_trap): don't set PR_ASYNC or PR_FORK
in the child process for UnixWare (causes processes forked by
the debuggee to hang).
Mon Nov 9 12:00:36 1998 Dave Brolley <brolley@cygnus.com>
* config/fr30/fr30.mt: New file.
* config/fr30/tm-fr30.h: New file.
1998-11-05 Jim Wilson <wilson@cygnus.com>
* remote-vx.c (net_read_registers, net_write_registers,
vx_xver_memory, vx_resume, vx_attach, vx_detach, vx_kill):
Change errno to errno_num.
* vx-share/xdr_ptrace.c (xdr_ptrace_return): Likewise.
* vx-share/xdr_ptrace.h (struct ptrace_return): Likewise.
Thu Nov 5 08:41:33 1998 Christopher Faylor <cgf@cygnus.com>
* top.c (gdb_readline): Allow CRLF line termination on systems
which define CRLF_SOURCE_FILES.
* win32-nat.c: 1) Add thread support, 2) fix ability to attach to
a running process, and 3) implement limited support for cygwin
signals.
(thread_rec): New function.
(child_add_thread): Ditto.
(child_init_thread_list): Ditto.
(child_delete_thread): Ditto.
(do_child_fetch_inferior_registers): Ditto.
(do_child_store_inferior_registers): Ditto.
(handle_output_debug_string): Ditto.
(child_fetch_inferior_registers): Use do_* function to perform
operation.
(child_store_inferior_registers): Ditto.
(child_continue): Ditto.
(child_thread_alive): Ditto.
(cygwin_pid_to_str): Ditto.
(handle_load_dll): Reorganize, add first attempt at reading
dll names from attached processes. Change info messages to provide
more information when dll is already loaded.
(handle_exception): Changes mandated by new thread-aware structures.
(child_wait): Track thread creation/destruction. Handle cygwin
signals.
(child_create_inferior): Ditto.
(child_resume): Ditto.
(child_kill_inferior): Ditto. Close child process handle to avoid a
handle leak.
(child_ops): Fill out child_ops fields that deal with threads.
* config/i386/tm-cygwin32.h: Declare function and macro needed
for converting a cygwin "pid" to a string.
* config/i386/xm-cygwin32.h: define HAVE_SIGSETMASK as 0 since
sigsetmask is not defined in cygwin.
Thu Nov 5 08:38:18 1998 Christopher Faylor <cgf@cygnus.com>
* win32-nat.c: Remove obsolete PPC conditionals.
Wed Nov 4 18:44:31 1998 Dave Brolley <brolley@cygnus.com>
* configure.tgt: Add fr30-*-elf*.
1998-11-03 Jim Wilson <wilson@cygnus.com>
* c-exp.y (parse_number): Check TARGET_LONG_LONG_BIT when setting
high_bit to avoid undefined negative shift.
Mon Nov 2 15:26:33 1998 Geoffrey Noer <noer@cygnus.com>
* configure.in: Check cygwin* instead of cygwin32*.
* configure: regenerate
Thu Oct 29 10:04:20 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
[Support for trace debugging: registers that were not collected.]
* remote.c (remote_fetch_registers): accept 'xxxx' in the register
packet, with the meaning "register value is not available".
Set register_valid to -1, which will connote "no value available".
* findvar.c (read_relative_register_raw_bytes): return failure if
register_valid == -1. (value_of_register): return failure if
register_valid == -1. (read_var_value): return error if
value_of_register fails for a register variable.
(value_from_register): return failure if register_valid == -1.
* eval.c (evaluate_subexp_standard): return error if
value_of_register fails for a register used in an expression.
* infcmd.c (do_registers_info): display "value not available"
for registers for which register_valid == -1.
* tracepoint.c (set_raw_tracepoint): just save the filename as is
from the symbol table, rather than trying to prepend the dir name.
Also save the bfd section. (tracepoints_info): use the section
when looking up the function name.
* tracepoint.h: add section field to tracepoint struct.
Wed Oct 28 08:01:38 1998 Mark Alexander <marka@cygnus.com>
* sparcl-tdep.c (send_resp, sparclite_serial_start,
sparclite_serial_write): Use remote_timeout instead of hardcoded
two second timeout.
(download): Fix adjustment of a.out load addresses.
Wed Oct 28 12:32:58 1998 Andrew Cagney <cagney@b1.cygnus.com>
* configure.in (--enable-build-warnings): Finish rename from
--enable-warnings.
(enable-build-warnings): Add -Wpointer-arth, allow =* for
sim/common compatibility.
* configure: Re-generate.
Wed Oct 21 08:44:30 1998 Andrew Cagney <cagney@b1.cygnus.com>
* 29k-share/udi/udip2soc.c: Replace sys_errlist with strerror().
Thu Oct 22 09:56:55 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/rs6000/aix4.mh (NATDEPFILES): Move xcoffread.o from here.
* config/rs6000/aix4.mt (TDEPFILES): To here.
Wed Oct 21 10:02:31 1998 Andrew Cagney <cagney@b1.cygnus.com>
* rdi-share/unixcomm.c: Provide definitions of SERPORT and PARPORT
on BSD hosts.
1998-10-19 Jason Molenda (jsm@bugshack.cygnus.com)
* configure.in (AM_EXEEXT): Use AC_EXEEXT instead.
* configure: Regenerated.
Sat Oct 17 17:39:23 1998 Felix Lee <flee@cygnus.com>
* core-sol2.c: #include <sys/types.h>, for sol2.7 weirdness.
Fri Oct 16 15:31:38 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* m32r-tdep.c (decode_prologue): Return failure if we reach
the end of the function without finding the end of the prologue.
1998-10-16 Jason Molenda (jsm@bugshack.cygnus.com)
* command.c copying.c copying.awk core-aout.c core-regset.c
corelow.c dcache.c i386-tdep.c i386v4-nat.c i387-tdep.c
infcmd.c infptrace.c infrun.c remote.c solib.c symfile.c
symmisc.c valarith.c: Add prototypes.
* defs.h: Add prototype for utils.c::do_run_cleanups.
* gdbtypes.c: Add prototypes.
(make_pointer_type): Add braces to remove nested if-else ambiguity.
(make_reference_type): Ditto.
* printcmd.c (printf_command): Initialize 'f' and 'string' at
function startup to suppress possibly-used-before-initialized warning.
* remote-utils.c: Add prototypes.
(sr_pollchar): Add braces to remove nested if-else ambiguity.
* ser-tcp.c: Add prototypes.
(wait_for): Add braces to remove nested if-else ambiguity.
(tcp_readchar): Ditto.
* ser-unix.c: Add prototypes.
(get_tty_state): Don't define errno here.
(hardwire_readchar): Only define 't' if we are compiling in a Cygwin
environment.
* symtab.c: Add prototypes.
(find_methods): Add braces to remove nested if-else ambiguity.
(search_symbols): Set 'i' to an initial value to suppress a
possibly-used-before-initialized warning.
* valops.c: Add prototypes.
(value_cast): Set 'eltype2' to an initial value to suppress a
possibly-used-before-initialized warning.
(value_of_variable): Add braces to remove nested if-else ambiguity.
(value_of_this): Ditto.
* valprint.c: Add prototypes.
(print_floating): Add braces to remove nested if-else ambiguity.
Thu Oct 15 19:50:48 1998 Stan Shebs <shebs@andros.cygnus.com>
* tm-sp64.h (SETUP_ARBITRARY_FRAME, FRAME_SPECIFICATION_DYADIC):
Remove, nevermore used.
Thu Oct 15 16:55:00 1998 Andrew Cagney <cagney@b1.cygnus.com>
* command.c: Include "wait.h" after, rather than before, <wait.h>.
"wait.h" was defining all WIF* macro's instead of filling in those
that <wait.h> missed.
1998-10-14 Jason Molenda (jsm@bugshack.cygnus.com)
* defs.h: Move _initialize_printcmd, _initialize_stack,
_initialize_blockframe out of here and in to their respective .c
files.
* blockframe.c: Move _initialize_blockframe prototype to here.
* printcmd.c: Move _initialize_printcmd prototype to here.
* stack.c: Move _initialize_stack prototype to here.
* source.c, symtab.h: Move _initialize_source prototype to the .c
file.
* values.c, value.h: Move _initialize_values prototype to the .c file.
* gdbthread.h, thread.c: Move _initialize_thread prototype to the .c
file.
* breakpoint.c, breakpoint.h: Move _initialize_breakpoint prototype
to the .c file.
* abug-rom.c alpha-nat.c alpha-tdep.c annotate.c ax-gdb.c bcache.c:
Standardize comments for the prototype section of these files.
* configure.in: Look in libc for wctype before looking for it in libc.
Tue Oct 13 18:56:51 1998 Felix Lee <flee@cygnus.com>
* sol-thread.c (ps_pstop, etc): simple test for proc_service.h
version didn't work for sol2.6; pushed it to autoconf.
* configure.in (gdb_cv_proc_service_is_old): new test.
* acconfig.h (PROC_SERVICE_IS_OLD): new define.
* configure, config.in: regenerate.
1998-10-13 Jason Molenda (jsm@bugshack.cygnus.com)
* blockframe.c (find_pc_sect_partial_function): Add braces to avoid
possible nested-if confusion.
* breakpoint.c (breakpoint_here_p): Ditto.
(breakpoint_inserted_here_p): Ditto.
(breakpoint_thread_match): Ditto.
* gnu-regex.c: Define _REGEX_RE_COMP only if it isn't already defined.
* gnu-regex.h: Define _REGEX_RE_COMP to pick up old compatability
prototypes.
* symtab.h: Add prototype for _initialize_source.
* value.h: Add prototype for _initialize_value.
* defs.h: Include sys/types.h or stddef.h to get size_t.
(make_cleanup): Add make_cleanup_func typedef and switch to using
a prototype for this function.
(mfree): Add prototypes for mmalloc, mrealloc, mfree if we aren't
using mmalloc.
* ax-gdb.c breakpoint.c coffread.c corelow.c dbxread.c
dwarf2read.c dwarfread.c elfread.c eval.c exec.c infcmd.c infrun.c
mipsread.c nlmread.c os9kread.c parse.c printcmd.c symfile.c
symmisc.c symtab.c thread.c top.c tracepoint.c typeprint.c
valops.c: Cast parameters passed to make_cleanup to use the new
make_cleanup_func typedef.
Tue Oct 13 00:51:48 1998 Felix Lee <flee@cygnus.com>
* sol-thread.c (ps_pstop, etc): different solaris versions have
slightly different prototypes in proc_service.h; compensate.
1998-10-12 Jason Molenda (jsm@bugshack.cygnus.com)
* Makefile.in (AWK): Unused; remove.
* configure.in: Remove unused autoconf checks for MINIX, memcpy,
poll, select, strings.h.
* config.in: Regenerated.
* configure: Regenerated.
1998-10-12 Jason Molenda (jsm@bugshack.cygnus.com)
* configure.in: Check for sys/debugreg.h, asm/debugreg.h.
* i386v-nat.c: Include asm/debugreg.h, sys/debugreg.h if it is not
present.
Sun Oct 11 12:08:07 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* dwarf2read.c (dwarf2_build_psymtabs_hard): Do not adjust the
address range of a compilation unit without children.
* mdebugread.c (parse_partial_symbols): Fix handling of stabs
continuations, use xmalloc and xrealloc.
Fri Oct 9 18:14:43 1998 Mark Alexander <marka@cygnus.com>
* rs6000-tdep.c: Don't include tm.h twice.
1998-10-08 Keith Seitz <keiths@cygnus.com>
* main.c (main): Remove calls to {pre,post}_add_symbol_hooks.
There should be sufficient information/hooks now to eliminate
this hack.
* exec.c (file_command): Add a new hook here to inform ui's
when the exec file has changed. Adding it here allows the
ui to be informed after symbol reading.
* gdbcore.h: Add declaration of file_changed_hook.
Thu Oct 8 08:40:42 1998 Mark Alexander <marka@cygnus.com>
* rs6000-tdep.c (get_saved_register): Define only if
USE_GENERIC_DUMMY_FRAMES is defined.
Tue Oct 6 21:35:10 1998 Andrew Cagney <cagney@b1.cygnus.com>
* Makefile.in (DEPFILES): Add TARGET_OBS.
(TARGET_OBS): Defined by configure.
1998-10-06 Jason Molenda (jsm@bugshack.cygnus.com)
Eliminate a few warnings from the compiler.
* breakpoint.h: Add prototype.
* breakpoint.c (do_enable_breakpoint): cast mem_cnt, i to (void).
* configure.in: Check if strdup declaration is necessary.
* configure: Regenerated.
* defs.h: Add prototypes.
* gdb_string.h: Only define strdup if necessary.
* gdbthread.h: Add prototypes.
* printcmd.c: Add prototyptes.
(disassemble_command): Remove unused variable 'section'.
* symtab.c: Add prototypes.
* symtab.h: Include gnu-regex.h, add prototype.
* thread.c: Add prototype.
Mon Oct 5 19:44:39 1998 Stan Shebs <shebs@andros.cygnus.com>
From David Purves <purves@apogee.com>:
* stabsread.c (rs6000_builtin_type): Create a complex float instead
of an error.
(read_sun_floating_type): Similarly.
(read_range_type): Create a complex float if self_subrange is
true.
Fri Oct 2 19:42:31 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* c-lang.c (emit_char c_printchar c_printstr), c-lang.h (c_printstr)
ch-lang.c (chill_printstr chill_printchar) c-valprint.c (c_val_print)
ch-valprint.c (chill_val_print) expprint.c (print_subexp) f-lang.c
(f_printstr f_printchar emit_char) f-valprint.c (f_val_print)
jv-lang.c (java_printchar java_emit_char) jv-valprint.c
(java_value_print java_val_print) language.c (unk_lang_printchar
unk_lang_printstr unk_lang_emit_char) language.h (struct
language_defn LA_PRINT_STRING LA_EMIT_CHAR) m2-lang.c (m2_printstr
m2_printchar emit_char) printcmd.c (print_formatted) scm-lang.c
(scm_printstr) valprint.c (val_print_string) value.h
(val_print_string): Add emit_char routines to language_desc struct
to allow finer control over language specific character output issues.
Add character width arg to printstr routines to allow handling of
wchar_t/Unicode strings. Fix c_printstr to handle wide characters.
Supply width argument to LA_PRINT_STRING and val_print_string.
* jv-lang.c (java_object_type dynamics_objfile java_link_class_type
get_dynamics_objfile get_java_object_type) jv-lang.h
(get_java_object_type): Make lots of things static.
* expprint.c (dump_prefix_expression dump_subexp): Move opcode name
printing to common routine (op_name).
* (dump_subexp): Add support for OP_SCOPE.
Fri Oct 2 16:25:54 1998 Stan Shebs <shebs@andros.cygnus.com>
* configure.host (i[3456]86-*-windows): Remove, no longer used.
* mswin: Remove directory, no longer used.
Fri Oct 2 18:52:20 1998 Fernando Nasser <fnasser@cygnus.com>
* sol-thread.c: Fixed prototypes and calls to supply_fpregset and
fill_fpregset
1998-10-02 Keith Seitz <keiths@cygnus.com>
* remote.c (remote_interrupt): Rewrite to use remote_stop.
(remote_interrupt_twice): Remove. remote_stop now handles it.
(remote_stop): New function which handles interrupting the
remote target so that CLUI and GUI use the same core functions
to achieve the same goal.
(remote_wait): Change to handle remote_stop properly.
[interrupted_already]: New static global to help remote_stop.
[remote_ops, extended_remote_ops]: Add remote_stop for to_stop member.
* target.c: Rename static function "ignore" to "target_ignore" and
export it so that gdb can determin if some target vector member is
actually not defined. Replace all occurances of ignore.
* target.h: Export target_ignore.
Fri Oct 2 03:51:48 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* target.c (target_xfer_memory): Handle requests with zero
transfer length right away.
* values.c (unpack_double): Set up code, length and signedness of
type _after_ checking for typedef.
Thu Oct 1 15:39:27 EDT 1998 Frank Ch. Eigler <fche@cygnus.com>
* breakpoint.c (bpstat_stop_status): Do not consider an
untripped watchpoint as a "hit".
Thu Oct 1 20:52:39 1998 Andrew Cagney <cagney@b1.cygnus.com>
* exec.c (exec_file_command), convex-tdep.c (exec_file_command),
arm-xdep.c (exec_file_command), remote-rdp.c
(remote_rdp_create_inferior), remote-os9k.c
(rombug_create_inferior), remote-mm.c (mm_create_inferior),
remote-eb.c (eb_create_inferior), remote-es.c
(es1800_create_inferior), remote-rdi.c (arm_rdi_create_inferior),
remote-sim.c (gdbsim_create_inferior), remote-utils.c
(gr_create_inferior), remote-st.c (st2000_create_inferior),
remote-nindy.c (nindy_create_inferior), remote-hms.c
(hms_create_inferior), remote-e7000.c (e7000_create_inferior),
remote-array.c (array_create_inferior), remote-adapt.c
(adapt_create_inferior): Replace "exec" with "executable" in
messages.
1998-09-25 Keith Seitz <keiths@cygnus.com>
* rdi-share/unixcomm.c: If using cygwin32, also use the SERPORT and
PARPORT defines for win32.
(Unix_MatchValidSerialDevice): For cygwin32, valid serial port names
start with "com", not "/dev/tty".
(Unix_OpenSerial): Do not use O_NONBLOCK on cygwin32.
* rdi-share/devsw.c (DevSW_Close): Free the device's state
(SwitcherState) so that the device may be reopened.
* remote-rdi.c (mywritec): Send all output through gdb's *_unfiltered
functions, ignoring non-ASCII chars, so that non-tty UI's can snarf
the output from fputs_hook.
(mywrite): Ditto.
(arm_rdi_open): Set inferior_pid.
(arm_rdi_detach): Pop the target off the target stack so that
users can attach and detach multiple times.
(arm_rdi_close): Close the opened device and reset inferior_pid, too.
1998-09-24 Jason Molenda (jsm@bugshack.cygnus.com)
* configure.in: Change --enable-warnings to --enable-build-warnings.
* configure: Updated.
1998-09-24 Jason Molenda (jsm@bugshack.cygnus.com)
* configure.in (WARN_CFLAGS): Add -Wmissing-prototypes.
* configure: Regenerated.
1998-09-24 Jason Molenda (jsm@bugshack.cygnus.com)
* configure.in: Add --enable-warnings.
Adjust whitespace of other --with and --enable options so that
configure --help lines up correctly.
* aclocal.m4: Ditto.
* Makefile.in (WARN_CFLAGS): Add. Set by configure.
* configure: Regenerated.
Thu Sep 24 15:44:34 1998 Stan Shebs <shebs@andros.cygnus.com>
* remote-rdi.c: Fix formatting, remove some commented-out code.
(init_rdi_ops): Omit needless initializations.
Wed Sep 23 18:21:03 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote.c (remote_address_masked): New function - mask address
according to REMOTE_ADDRESS_SIZE.
(remote_address_size): New global.
(hexnumstr): New function - convert arbitrary unsigned to hex.
(remote_write_bytes, remote_read_bytes): Use hexnumstr to
construct packet address. Mask address when necessary.
(_initialize_remote): Add "set remoteaddresssize" command, set
REMOTE_ADDRESS_SIZE variable.
* NEWS: Update.
Wed Sep 23 18:08:52 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote.c (_initialize_remote, packet_command, print_packet):
Pretty print code.
Wed Sep 23 12:32:54 1998 <cagney@amy.cygnus.com>
* remote.c (packet_command): Test REMOTE_DESC to determine if
remote connection is open.
Tue Sep 22 22:27:24 1998 Mark Alexander <marka@cygnus.com>
Patch from Dawn Perchik <dawn@cygnus.com>:
* rs6000-tdep.c (pop_frame): Handle generic dummy frames.
(push_arguments): Likewise.
(frame_saved_pc): Likewise.
(rs6000_frame_chain): Likewise.
(ppc_push_return_address): New function.
(get_saved_register): New function.
* config/powerpc/tm-ppc-eabi.h: Add generic dummy frame macros.
Mon Sep 21 19:29:32 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* defs.h utils.c (fputc_filtered): New function. Does the obvious...
* jv-lang.c (java_printchar): Fix output of chars > 0xff. Fold
java_emit_char into java_printchar.
* language.h (PRINT_LITERAL_FORM): Reformat for readability.
Mon Sep 21 14:38:03 1998 Catherine Moore <clm@cygnus.com>
* config/arm/tm-arm.h (*_BREAKPOINT): Define both little endian
and big endian breakpoint patterns.
* arm-tdep.c (arm_break_point_from_pc): Insert either big endian
or little endian breakpoints depending upon target byte order.
Fri Sep 18 07:53:08 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* sol-thread.c (sol_thread_notice_signals): Use PIDGET when
passing pid down to procfs_notice_signals.
Wed Sep 16 14:57:14 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* stabsread.c (resolve_symbol_reference): Return 1 on success, 0 on
failure.
* (define_symbol): Check return value from resolve_symbol_reference,
and drop symbol if it fails.
Tue Sep 15 15:24:16 1998 Stu Grossman <grossman@fencer.cygnus.com>
* stabsread.c: Make all complaints static.
* Fix formatting of live range splitting code.
* (resolve_symbol_reference define_symbol resolve_live_range): Change
errors to complaints so that bad live range symbols won't abort the
entire symbol table. Handle errors by aborting just the current
symbol.
* (ref_init): Goes away. Folded into ref_add().
* (REF_MAP_SIZE): Put parens around parameter so that args like
`1 + 2' get handled correctly (yes, this was a real bug).
* (ref_add): Remove check for allocation failures. Not necessary
when using xrealloc(). Fix pointer arithmetic problem when clearing
memory. This and the previous patch prevent random SEGV's when there
are lots of live range symbols.
Tue Sep 15 14:02:01 1998 Nick Clifton <nickc@cygnus.com>
* remote-rdi.c: Prevent multiple attempts to close the remote
connection.
Tue Sep 15 10:24:17 1998 Andrew Cagney <cagney@b1.cygnus.com>
* printcmd.c (examine_i_type): New static - type for instructions.
(do_examine): For "i" format, specify examine_i_type.
(do_examine): Call value_at_lazy instead of value_at so that
examine data is only fetched if it is used.
(x_command): If examine data was not fetched, set convenience
variable "__" to void.
(_initialize_printcmd): Initialize examine_i_type.
Sun Sep 13 01:34:59 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* blockframe.c (find_pc_sect_partial_function): use bfd section
of msymbol for end of section comparison.
Fri Sep 11 14:02:49 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c: clean up several unused variables and such.
Fri Sep 11 12:38:34 EDT 1998 Zdenek Radouch (radouch@cygnus.com)
* arm-tdep.c (arm_push_arguments): fixed frame construction
Thu Sep 10 20:51:23 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* mn10300-tdep.c (mn10300_analyze_prologue): guard against NULL.
Wed Sep 9 19:37:36 1998 Stan Shebs <shebs@andros.cygnus.com>
* dbxread.c (IGNORE_SYMBOL): Remove definition, is never used.
* os9kread.c: Remove comment mentioning IGNORE_SYMBOL.
Wed Sep 9 11:39:05 1998 Ron Unrau <runrau@cygnus.com>
* blockframe.c(find_pc_sect_partial_function): look for min syms in
the same section when trying to guess the end of a function.
* symfile.c(list_overlays_command): use print_address_numeric
* remote-sim.c: export simulator_command
1998-09-08 Jason Molenda (jsm@bugshack.cygnus.com)
* breakpoint.c (bpstat_stop_status): Declare a bp match if the
current fp matches the bp->fp OR if the current fp is less than
the bp->fp if we're looking at a bp_step_resume breakpoint.
Tue Sep 8 19:42:58 1998 Stan Shebs <shebs@andros.cygnus.com>
* symtab.h (struct symtab): Remove EXTRA_SYMTAB_INFO hook,
not currently used.
* symfile.c (allocate_symtab): Deprecate use of
INIT_EXTRA_SYMTAB_INFO here.
Fri Sep 4 15:33:25 1998 Stan Shebs <shebs@andros.cygnus.com>
* README: Update remote debugging and testsuite info.
Thu Sep 3 13:50:20 1998 Mark Alexander <marka@cygnus.com>
* config/mn10300/tm-mn10300.h (FP_REGNUM): Redefine to be a
pseudo-register, not the same as a3.
(D2_REGNUM, D3_REGNUM, A2_REGNUM, A3_REGNUM): Define.
* mn10300-tdep.c (fix_frame_pointer): New function.
(set_movm_offsets): Use register number macros instead of
hard-coded constants.
(mn10300_analyze_prologue): Fix to handle redefinition of FP_REGNUM.
(mn10300_frame_chain): Fix to handle redefinition of FP_REGNUM;
use register number macros instead of hard-coded constants;
add missing parameter to call of mn10300_analyze_prologue.
(mn10300_frame_saved_pc): Use register number macros instead of
hard-coded constants.
Tue Sep 1 12:04:57 EDT 1998 Zdenek Radouch (radouch@cygnus.com)
Changes to support/fix ARM/ELF port. Use MAKE_MSYMBOL_SPECIAL for
both ELF and COFF;
* elfread.c (elf_symtab_read): use ELF specific macro
* coffread.c (coff_symtab_read): use COFF_MAKE_MSYMBOL_SPECIAL()
* arm-tdep.c: separate COFF and ELF thumb processing
disable --mapcs-float processing
* dwarf2read.c: Disabled building of minimal symbols
* config/arm/tm-arm.h: new macros for distinguishing arm/thumb
* config/mips/tm-mips.h: use ELF specific macro
Mon Aug 31 15:42:10 1998 Tom Tromey <tromey@cygnus.com>
* top.c (context_hook): Define.
Tue Aug 25 13:21:58 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* ax-gdb.c (gen_var_ref): Allow for typedef types.
(gen_cast, gen_bitfield_ref, gen_expr, gen_deref): ditto.
Mon Aug 24 18:29:03 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (collect_symbol): Handle register doubles that
are stored in two registers.
Mon Aug 24 14:39:08 1998 Mark Alexander <marka@cygnus.com>
* sh-stub.c (undoSStep): Improve comment.
* sparc-tdep.c (sparc_extract_struct_value_address): Simplify to use
same method on both 32-bit and 64-bit machines.
* sparcl-tdep.c (sparclite_check_watch_resources): Simulator doesn't
support hardware breakpoints.
* config/sparc/tm-sparc.h (CALL_DUMMY): Improve comments.
1998-08-20 Jason Molenda (jsm@bugshack.cygnus.com)
* rdi-share/Makefile.am (INCLUDES): Fix typeo.
* rdi-share/Makefile.in: Regenerated.
1998-08-19 Jason Molenda (jsm@bugshack.cygnus.com)
* rdi-share/Makefile.am: Use just `INCLUDES' not `libname_INCLUDES'.
* rdi-share/Makefile.in: Regenerated.
1998-08-19 Keith Seitz <keiths@cygnus.com>
* v850ice.c (v850ice_stop): New function to stop the ICE.
(v850ice_load) Pass filename to ICE DLL.
(ice_stepi, ice_nexti, ice_cont): Do not directly call the gdb
commands -- let the GUI do it so that it can retain control
of the display.
Wed Aug 19 15:53:52 1998 Anthony Green <green@hoser.cygnus.com>
* i386v4-nat.c: Include sys/reg.h if present.
Wed Aug 19 03:07:53 1998 Richard Henderson <rth@cygnus.com>
* config/alpha/alpha-linux (XDEPFILES): Build ser-tcp.
1998-08-18 Fernando Nasser <fnasser@totem.to.cygnus.com>
* symtab.c (decode_line_1): For minimal symbol, SKIP_PROLOG to
make sure we stop after the frame pointer is locaded and backtrace
prints an accurate stack. Complements changes made on Mon Jul 27
10:45:56 1998
(decode_line_2): Replaced the whitespace after ">" in a prompt
which has been taken away by changes made on Sun Jul 19 02:11:45
1998
1998-08-18 Keith Seitz <keiths@cygnus.com>
* stack.c: Define new hook, selected_frame_level_changed_hook, which
will be called whenever the selected stack level changes.
(select_frame): Call the selected_frame_level_changed_hook.
Tue Aug 18 18:03:42 1998 Stan Shebs <shebs@andros.cygnus.com>
* remote-rdi.c (arm_rdi_open): Pass serial device name to
Adp_OpenDevice, and include it in error reports.
1998-08-18 Jason Molenda (jsm@bugshack.cygnus.com)
* configure.in: Add more header files to AC_CHECK_HEADERS.
* configure: Regenerated.
* command.c: Include wait.h or sys/wait.h if present.
* inftarg.c: Ditto.
* core-aout.c: Include ptrace.h or sys/ptrace.h if present, based
on autoconf test.
* infptrace.c: Ditto.
* expprint.c: Include ctype.h for isprint prototype.
* i386aix-nat.c: Include sys/reg.h if autoconf says it is present.
* i386v-nat.c: Include ptrace.h, sys/ptrace.h, and sys/reg.h if
present, based on autoconf test.
* utils.c: Include curses.h and term.h if present.
(puts_debug): Change 'carriage_return' local variable to return_p
to avoid name clash.
* config/m68k/nm-apollo68b.h: Don't define PTRACE_IN_WRONG_PLACE,
determine it with autoconf.
* config/i386/nm-linux.h: Don't define NO_SYS_REG_H, determine it
with autoconf.
* config/i386/nm-i386sco.h: Don't define NO_PTRACE_H, determine it
with autoconf.
* config/i386/nm-i386v.h: Ditto.
* config/i386/nm-symmetry.h: Ditto.
* config/m88k/xm-cxux.h: Ditto.
* config/m88k/xm-dgux.h: Ditto.
* config/m68k/delta68.mh (NAT_FILE): nm-delta68.h no longer necessary.
* config/m68k/nm-delta68.h: Removed.
Fri Aug 14 11:14:03 1998 Jeffrey A Law (law@cygnus.com)
* mn10300-tdep.c (set_movm_offsets): Change second argument to
be the actual args to movm itself. All callers changed. Only set
fi->fsr.regs[x] if reg X is saved by the movm instruction.
Fri Aug 14 04:18:23 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* sol-thread.c (lwp_to_thread): Fix error message for failing
td_ta_map_lwp2thr call.
(ps_lgetLDT): Mask off upper bits in GS register when comparing
with selector.
Wed Aug 12 16:30:01 1998 Frank Ch. Eigler <fche@cygnus.com>
* remote-sim.c (simulator_command): Reset register cache after
simulator command.
Wed Aug 12 09:00:26 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* expprint.c (dump_prefix/postfix_expression): Don't try to print
type expressions.
Tue Aug 11 11:33:25 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* c-typeprint.c (c_print_type): Don't crash if varstring is null.
* expprint.c expression.h (dump_expression): Rename to
dump_prefix_expression.
* Print out the expression in normal form. Call print_longest
instead of trying to do it ourselves.
* (dump_postfix_expression): New function, prints out the expression
with indentation and better formatting and interpretation.
* parse.c (parse_exp_1): Put calls to dump expressions under ifdef
MAINTENANCE_CMDS and expressiondebug variable.
Thu Aug 6 13:20:02 1998 Ron Unrau <runrau@cygnus.com>
* infrun.c (wait_for_inferior): use stop_func_name instead of
stop_func_start to decide that no debug info exists.
Thu Jul 30 13:53:50 1998 Mark Alexander <marka@cygnus.com>
* mips-tdep.c (mask_address_p): New variable.
(mips_addr_bits_remove): Test mask_address_p to decide whether
to mask off the upper 32 bits of addresses.
(_initialize_mips_tdep): Add command to set mask_address_p.
(mips_call_dummy_address): New function.
* config/mips/tm-mips.h (CALL_DUMMY_ADDRESS): Redefine to
call mips_call_dummy_address.
1998-07-29 Fernando Nasser <fnasser@totem.to.cygnus.com>
* symfile.c (add_symbol_file_command): Test for the from_tty
parameter and avoid query when not interactive.
Wed Jul 29 10:39:29 1998 Jeffrey A Law (law@cygnus.com)
* mn10300-tdep.c (set_movm_offsets): Do nothing for the am33
registers if we are not in am33 mode.
(mn10300_frame_chain, mn10300_frame_saved_pc): Similarly.
(set_machine_hook): Keep track of whether or not we're in am33 mode.
Mon Jul 27 16:11:42 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (remote_set_transparent_ranges): new function.
Send the start and end addresses of all loadable read-only
sections down to the trace target, so that it can treat them
as "transparent" (ie. don't care if they were collected or not).
Mon Jul 27 15:38:07 1998 Mark Alexander <marka@cygnus.com>
* mn10300-tdep.c (mn10300_analyze_prologue): Undo previous fix
for setting frame address in optimized code; made unnecessary
by compiler fixes.
Mon Jul 27 10:45:56 1998 Martin M. Hunt <hunt@cygnus.com>
* symtab.c (decode_line_1): For minimal symbol, call
find_pc_sect_line() to make sure the line number gets set
properly.
(print_symbol_info): Redeclare function void.
1998-07-27 Jason Molenda (jsm@bugshack.cygnus.com)
* config/d10v/tm-d10v.h (REGISTER_NAMES): sp -> r15. The
stack pointer et al are synthesized from the SP_REGNUM (etc)
defines and should not be mentioned in REGISTER_NAMES.
Mon Jul 27 08:54:41 1998 Jeffrey A Law (law@cygnus.com)
* mn10300-tdep.c (mn10300_frame_chain): Account for space saved
by am33 register saves.
(mn10300_frame_saved_pc): Similarly.
Fri Jul 24 14:41:19 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (encode_actions): Treat register names and simple
variable names as special cases and don't convert them to byte-
codes: these things can be collected far more efficiently
without invoking the bytecode interpreter.
Fri Jul 24 13:32:46 1998 Mark Alexander <marka@cygnus.com>
* config/i386/tm-i386.h (STORE_STRUCT_RETURN): Make it
work on hosts of any endianness.
* config/i386/tm-i386v.h: Ditto.
Fri Jul 24 07:41:12 1998 Mark Alexander <marka@cygnus.com>
* mn10300-tdep.c (set_movm_offsets): New helper function
for mn10300_analyze_prologue.
(mn10300_analyze_prologue): Simplify by factoring out common code.
Fix bugs in setting frame address for optimized code.
Use read_memory_nobpt instead of target_read_memory.
Thu Jul 23 17:01:17 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (collect_symbol): handle LOC_ARG case.
Thu Jul 23 15:07:40 1998 Dawn Perchik <dawn@cygnus.com>
* sparc-tdep.c (sparc_init_extra_frame_info): Recognize when we're
in a function prologue before the SAVE instruction.
(sparc_frame_saved_pc): Ditto.
* config/sparc/tm-sparc.h (EXTRA_FRAME_INFO): Add in_prologue flag.
Thu Jul 23 14:58:09 1998 Dawn Perchik <dawn@cygnus.com>
* i386-tdep.c (i386_get_frame_setup): Recognize function
prologues in code compiled with -fcheck-stack.
Thu Jul 23 14:49:27 1998 Dawn Perchik <dawn@cygnus.com>
* remote-mips.c (remote_mips_insert_hw_breakpoint,
remote_mips_remove_hw_breakpoint): New functions for hardware
breakpoints on LSI targets.
* config/mips/tm-embed.h (target_remove_hw_breakpoint,
target_insert_hw_breakpoint): Define to call
remote_mips_insert_hw_breakpoint and remote_mips_remove_hw_breakpoint,
respectively.
1998-07-21 Fernando Nasser <fnasser@totem.to.cygnus.com>
* source.c (print_source_lines): Print "No such file or directory"
just once.
(directory_command): same as above; resets if user issues dir.
Sun Jul 19 02:11:45 1998 Martin M. Hunt <hunt@cygnus.com>
* symtab.c (decode_line_2): Instead of printing a prompt
and calling command_line_input() without a prompt, just
call it with the proper args. This makes the GUI work too.
Fri Jul 17 9:26:50 1998 Ron Unrau <runrau@cygnus.com>
* blockframe.c (find_pc_sect_partial_function): allow for the possi-
bility of multiple symbols at the same address when finding high.
* breakpoint.c (resolve_sal_pc): if the function based section lookup
fails, try getting the section from the minimal symbol table.
* parse.c (write_exp_msymbol): use symbol_overlayed_address to get
the LMA of a minimal symbol if unmapped.
* symtab.c (find_line_symtab): change interface to return symtab
containing the best linetable found.
(decode_line_1): use find_line_symtab to set val.symtab. This should
improve support for source files with multiple symtabs.
Wed Jul 15 11:51:33 1998 Keith Seitz <keiths@cygnus.com>
* main.c (main): Fix violations of GNU coding standard.
* breakpoint.c: Export delete_command.
* infcmd.c: Export continue_command, stepi_command, and nexti_command.
* Makefile.in: Add target for v850ice.o.
* configure.tgt: Add cygwin32 dependencies for v850 ice.
Wed Jul 15 10:58:29 1998 Nick Clifton <nickc@cygnus.com>
* tracepoint.c (set_raw_tracepoint): Cope with symbols that do not
have an associated directory.
Mon Jul 13 15:21:04 1998 Mark Alexander <marka@cygnus.com>
* utils.c (puts_debug): Display non-printable characters in hex
instead of octal.
Thu Jul 9 16:16:47 1998 Jeffrey A Law (law@cygnus.com)
* mn10300-tdep.c (mn10300_generic_register_names): New variable.
(set_machine_hook): New function. Copy the appropriate register
names into reg_names.
(_initialize_mn10300_tdep): Set up to call set_machine_hook.
* tm-mn10300 (NUM_REGS): Bump to 32.
(REGISTER_NAMES): Updated accordingly.
* mn10300-tdep.c (am33_register_names): New variable.
(mn10300_analyze_prologue): Handle regs saved by am33 prologues.
* tm-mn10300.h (E0_REGNUM): Define.
Tue Jul 7 7:40:13 1998 Ron Unrau <runrau@cygnus.com>
* symtab.c (find_pc_sect_psymbol): allow case where textlow is 0
Thu Jul 2 15:57:58 1998 Frank Ch. Eigler <fche@cygnus.com>
* breakpoint.c (resolve_sal_pc): Accept absence of innermost
Lexical block for breakpoint resolution.
Thu Jul 2 10:22:00 1998 Dawn Perchik <dawn@cygnus.com>
* mdebugread.c (parse_partial_symbols): Go ahead and read the .mdebug
section, but just don't add a 2nd minimal symbol if this is an .mdebug
section in an ELF file.
1998-07-01 Jim Blandy <jimb@zwingli.cygnus.com>
* Makefile.in (ax-general.o): Depend on $(defs_h) too.
(ax_h): Bother to define this.
Mon Jun 29 19:01:18 1998 Jim Wilson <wilson@cygnus.com>
* gnu-regex.c (re_comp): Add cast to char * before gettext calls.
Sun Jun 28 11:35:48 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
Improve support for SunPro F77.
* dbxread.c (end_psymtab, process_one_symbol): Handle minimal
symbols with trailing underscore names.
* minsyms.c (find_stab_function_addr): Ditto.
* dbxread.c (process_one_symbol): Ignore N_ALIAS for now.
* partial-stab.h (case N_ALIAS): Ditto.
* stabsread.c (read_sun_builtin_type): Handle boolean types.
Fri Jun 26 14:03:01 1998 Keith Seitz <keiths@cygnus.com>
* symtab.h (enum namespace): Add new namespaces FUNCTIONS_NAMESPACE,
TYPES_NAMESPACE, METHODS_NAMESPACE, and VARIABLES_NAMESPACE used by
new search_symbols.
Add prototype for search_symbols and free_search_symbols.
* symtab.c (list_symbols): Rewrite to use new search_symbols.
(file_matches): New helper function for search_symbols.
(free_search_symbols): New function which frees data returned from
search_symbols.
(print_symbol_info): New helper function which prints info about a
matched symbol to stdout. Extracted from old list_symbols.
(print_msymbol_info): New helper function which prints info about
a matched msymbol to stdout. Extracted from old list_symbols.
(symtab_symbol_info): Extracted from old list_symbols.
(variables_info): Use symtab_symbol_info.
(functions_info): Use symtab_symbol_info.
(types_info): Use symtab_symbol_info.
(rbreak_command): Rewrite to use new search_symbols.
Thu Jun 25 22:38:32 1998 Frank Ch. Eigler <fche@cygnus.com>
* mips-tdep.c (mips_push_arguments): Use 128-bit stack frame
alignment for inferior calls.
Wed Jun 24 23:17:12 1998 Mark Alexander <marka@cygnus.com>
* mn10200-tdep.c (mn10200_analyze_prologue): Fix calculation
of jsr target address.
Tue Jun 23 19:37:46 1998 Mark Alexander <marka@cygnus.com>
* config/mn10200/tm-mn10200.h (SAVED_PC_AFTER_CALL): Don't
zero upper byte of address.
Tue Jun 23 17:32:26 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* rs6000-tdep.c (pop_dummy_frame): use memcpy.
(push_arguments): use memset.
(various other places): fix up indentation and long lines.
Tue Jun 23 11:58:35 1998 Jason Molenda (crash@bugshack.cygnus.com)
* configure.in: s/lXext/-lXext/ for Jillian's change.
Tue Jun 23 11:14:04 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* source.c (find_source_lines): fix indentation.
* config/mips/tm-irix5.h: Modify to work better on irix 6, by
making FP registers 8 bytes instead of 4.
REGISTER_BYTES: redefine. REGISTER_BYTE(): redefine.
REGISTER_VIRTUAL_TYPE: redefine. MIPS_LAST_ARG_REGNUM: redefine.
* irix5-nat.c (fetch_core_registers): read 8 bytes per FP register.
* mips-tdep.c (FP_REGISTER_DOUBLE): new macro to distinguish
targets with 8-byte FP registers (don't use TARGET_MIPS64).
(STACK_ARGSIZE): new macro, how much space is taken up on the
stack for each function argument (don't use TARGET_MIPS64).
(mips_push_arguments): modify logic to work better on Irix 6
(n32 ABI).
Tue Jun 23 12:29:53 1998 Jillian Ye <jillian@cygnus.com>
* configure.in: Add -lXext to mips_extra_libs
* configure: Regenerated.
Sun Jun 21 09:31:12 1998 Ron Unrau (runrau@cygnus.com)
* symtab.c (find_line_pc): assumed that a PC of 0 is illegal.
Changed to pass PC as arg and return 1 if valid (0 otherwise).
* symtab.h: Change prototype to match.
* symtab.c (find_line_pc_range): Use new interface.
* breakpoint.c (resolve_sal_pc): Ditto.
Wed Jun 17 15:50:00 1998 Ron Unrau (runrau@cygnus.com)
* parse.c (target_map_name_to_register): Check target specific
aliases *first* so that it can over-ride architectural names
Wed Jun 17 17:13:38 1998 Said Ziouani (saidz@park-street.cygnus.com)
* remote-sds.c (sds_start_remote): Fix printf call.
Tue Jun 16 16:32:08 1998 Mark Alexander <marka@cygnus.com>
* mn10200-tdep.c (mn10200_analyze_prologue): Fix null pointer
crash when in "start".
Tue Jun 16 14:38:40 1998 Ron Unrau (runrau@cygnus.com)
* dbxread.c: reset function_start_offset after a finishing N_FUN
is seen.
* remote-sim.c: allow TARGET_REDEFINE_DEFAULT_OPS to override
target vectors as needed.
Sun Jun 14 08:46:25 1998 Ron Unrau (runrau@cygnus.com)
* partial-stab.h: 'F' and 'f' type N_FUN psymbols should pass
CUR_SYMBOL_VALUE as CORE_ADDR instead of long
* buildsym.[ch]: export pending_blocks list
Sat Jun 13 13:02:32 1998 Dawn Perchik (dawn@cygnus.com)
* remote.c: Fix remote help string to match that of help.exp.
Fri Jun 12 14:22:55 1998 Jason Molenda (crash@bugshack.cygnus.com)
* configure.in (LIBS): Add -lw to the list of libraries if needed.
Thu Jun 11 15:05:10 1998 Jason Molenda (crash@bugshack.cygnus.com)
* btowc.c: Removed.
* configure.in: Don't see if we need to replace btowc().
* Makefile.in: Don't include LIBOBJS.
* configure: Regenerated.
* gnu-regex.c (regex_compile): Only support i18n [:foo:] if
we have btowc().
Wed Jun 10 15:39:14 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* c-exp.y: Fix problems with parsing "'foo.bar'::func".
Some languages allow symbols with dots.
* gdbtypes.c (check_stub_method): Cosmetic. Use more descriptive
names for parameters.
* jv-exp.y: Parser now accepts primitive types.
* (parse_number): Use correct ifdef for scanf long double support.
* jv-lang.c (java_array_type): Initial cut at array support.
* language.c language.h (set_language): Now returns previous language.
* symtab.c (find_methods): Make static. Cosmetic changes, including
indentation, and adding descriptive comments. Move local variable
defs into the block they are used in.
* Don't call check_stub_method any more. Use gdb_mangle_name to
generate the full method name. find_method doesn't need all the other
goobldegook that check_stub_method does.
* (gdb_mangle_name): Use more descriptive names for parameters. Fix
comment.
* (lookup_partial_symbol lookup_block_symbol): Check for java to
ensure we can find mangled names.
* (decode_line_1): Move local variable defs into the block they are
used in. (Improves code readability.)
Wed Jun 10 18:04:35 1998 Frank Ch. Eigler <fche@cygnus.com>
* gdbtypes.c (get_discrete_bounds): Assign unsigned type flag for
all-positive enum.
(create_set_type): Ditto for all-positive set values.
* values.c (unpack_field_as_long): Check for typedef in struct
field unpacking.
Wed Jun 10 14:06:05 1998 Jason Molenda (crash@bugshack.cygnus.com)
* configure.in: Add some tests for gnu-regex.c's benefit.
See if btowc() function is provided in C library.
* configure, config.in: Regenerated.
* Makefile.in (CLIBS, CDEPS): Add @LIBOBJS@ to build btowc.c
if necessary.
* btowc.c: New file.
* gnu-regex.c: Reorder wchar.h and wctype.h includes for Solaris'
benefit.
Drop namespace preserving defines for now.
Wed Jun 10 11:53:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gnu-regex.c: Include "gnu-regex.h", not "regex.h".
Wed Jun 10 11:34:07 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gnu-regex.c, gnu-regex.h: Change LGPL license to GPL license
to stay consistent with the rest of GDB.
Wed Jun 10 11:27:39 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gnu-regex.c, gnu-regex.h: Update to current FSF (glibc) versions.
Wed Jun 10 10:58:18 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* printcmd.c (disassemble_command): move overlay mapping code
"up" into find_pc_partial_function.
* blockframe.c (find_pc_partial_function): adjust start address
and end address for overlays (mapped vs. unmapped addresses),
so that all callers of this function may benefit.
* m32r-tdep.c (m32r_skip_prologue): adjust indentation.
Mon Jun 8 16:08:10 1998 Ron Unrau <runrau@cygnus.com>
* objfiles.c (add_to_objfile_sections): All targets to define
TARGET_KEEP_SECTION to permit them to retain bfd sections that
GDB would otherwise have discarded.
Fri Jun 5 13:56:19 1998 Doug Evans <devans@canuck.cygnus.com>
* dbxread.c (read_dbx_symtab): Don't lower texthigh for last psymtab.
Thu Jun 4 18:35:04 1998 Stan Shebs <shebs@andros.cygnus.com>
* remote.c (init_extended_remote_ops): Make extended_remote_ops
by copying from remote_ops, move it and init_remote_ops to
usual place at end of file, remove "void" from arg lists.
Thu Jun 4 17:51:06 1998 Mark Alexander <marka@cygnus.com>
* sparc-tdep.c (sparc_fix_call_dummy): Byte-swap the call dummy
on bi-endian machines.
(sparc_extract_return_value): Handle values smaller than int on
machines with little-endian data.
(sparc_target_architecture_hook): Set bi_endian flag.
Thu Jun 4 12:14:48 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* printcmd.c (disassemble_command): Fix off-by-one error for
disassembling functions in unmapped overlay sections.
Thu Jun 4 10:15:03 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* remote.c: merged.
- Jim Blandy <jimb@zwingli.cygnus.com>
(print_packet, remote_packet_command): New functions.
(_initialize_remote): Register the remote-packet command.
- David Taylor <taylor@texas.cygnus.com>
(_initialize_remote): remote-compare is now
compare-sections.
- Elena Zannoni <ezannoni@kwikemart.cygnus.com>
(remote_compare_command): added warning, issued in case
of mismatch only.
Thu Jun 4 08:25:38 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* remote.c (remote_compare_command): New function, new command.
Compare object file binary image with corresponding memory on
remote target. Report differences.
Tue Jun 2 19:05:04 1998 Mark Alexander <marka@cygnus.com>
* sparc-tdep.c (sparc_target_architecture_hook): Set target
byte order only when it's selectable.
Tue Jun 2 02:01:56 1998 Mark Alexander <marka@cygnus.com>
* sparc-tdep.c (sparc_target_architecture_hook): New function to
set endianness based on machine type.
(_initialize_sparc_tdep): Initialize target_architecture_hook.
(sparc_print_register_hook): Print PSR and FPSR in fancy format
on 32-bit machines.
* config/sparc/tm-sparc.h (PRINT_REGISTER_HOOK): Redefine to
call sparc_print_register_hook instead of using inline code.
* config/sparc/tm-sp64.h (PRINT_REGISTER_HOOK): Remove.
Thu May 28 17:19:14 1998 Keith Seitz <keiths@cygnus.com>
* main.c (main): Check for NULL from getenv on CYGWIN32.
Thu May 28 09:41:44 1998 Nick Clifton <nickc@cygnus.com>
* monitor.c (monitor_vsprintf): Handle %%. Patch courtesy of
Felix Lee (flee@cygnus.com)
Thu May 28 00:27:35 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* mips-tdep.c (mips_push_dummy_frame): Fix calculation of
PROC_REG_OFFSET and PROC_FREG_OFFSET.
Mon Apr 27 14:37:49 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/v850/tm-v850.h (REGISTER_BYTE): FP_REGNUM and
FP_RAW_REGNUM use the same register location.
* v850-tdep.c (v850_scan_prologue): Use FP_RAW_REGNUM instead of
FP_REGNUM.
(v850_frame_chain): Ditto.
* config/v850/tm-v850.h (REGISTER_NAMES): Add "fp".
(NUM_REGS): Update.
(FP_REGNUM): Update.
(FP_RAW_REGNUM): Define.
Wed May 27 14:22:31 1998 Keith Seitz <keiths@cygnus.com>
* main.c (main): Convert the path returned from getenv to a posix
path on cygwin32 hosts.
Mon May 25 13:31:27 1998 Keith Seitz <keiths@cygnus.com>
* remote.c (remote_open_1): If an error occurs starting the remote,
pop the target AND return.
Sat May 23 02:23:09 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* dwarf2read.c (read_subroutine_type): Set TYPE_FLAG_PROTOTYPED
on C++ functions.
* valops.c (value_arg_coerce): Add new argument to indicate whether
the function has a prototype, handle integer and float promotions
accordingly.
(call_function_by_hand): Always call value_arg_coerce, pass down
prototype information.
Fri May 22 10:56:36 1998 John Metzler <jmetzler@cygnus.com>
* remote.c (_initialize_remote): Typo extended__remote
Thu May 21 13:14:25 1998 John Metzler <jmetzler@cygnus.com>
* gnu-nat.c (init_gnu_ops): Initialization of target ops by assignment.
(_initialize_gnu_nat): Call new init
* mac-nat.c (init_child_ops): Ditto.
(_initialize_mac_nat): Ditto.
* monitor.c (init_base_monitor_ops): Ditto.
(_initialize_remote_monitors): Ditto.
* ppc-bdm.c (init_bdm_ppc_ops): Ditto.
(_initialize_bdm_ppc): Ditto.
* remote-adapt.c (init_adapt_ops): Ditto.
(_initialize_remote_adapt): Ditto.
* remote-array.c (init_array_ops): Ditto.
(_initialize_array): Ditto.
* remote-bug (init_bug_ops): Ditto.
(_initialize_remote_bug): Ditto.
* remote-e7000.c (init_e7000_ops): Ditto.
(_initialize_remote_e7000): Ditto.
* remote-eb.c (init_eb_ops): Ditto.
(_initialize_remote_eb): Ditto.
* remote-es.c (init_es1800_ops): Ditto.
(init_es1800_child_ops): Ditto.
(_initialize_es1800): Ditto.
* remote-hms.c (init_hms_ops): Ditto.
(_initialize_remote_hms): Ditto.
* remote-mm.c (init_mm_ops): Ditto.
(_initialize_remote_mm): Ditto.
* remote-nindy.c (init_nindy_ops): Ditto.
(_initialize_nindy): Ditto.
* remote_nrom.c (init_nrom_ops): Ditto.
(_initialize_remote_nrom): Ditto.
* remote-os9k (init_rombug_ops): Ditto.
(_initialize_remote_os9k): Ditto.
* remote-rdi.c (init_rdi_ops): Ditto.
(_initialize_remote_rdi): Ditto.
* remote-rdp.c (init_remote_rdp_ops): Ditto.
(_initialize_remote_rdp): Ditto.
* remote-sds.c (init_sds_ops): Ditto.
(_initialize_remote_sds): Ditto.
* remote-sim.c (init_gdbsim_ops): Ditto.
(_initialize_remote_sim): Ditto.
* remote-st.c (init_st2000_ops): Ditto.
(_initialize_remote_st2000): Ditto.
* remote-udi.c (init_udi_ops): Ditto.
(_initialize_remote_udi): Ditto.
* remote-vx.c (init_vx_ops): Ditto.
(init_vx_run_ops): Ditto.
(_initialize_vx): Ditto.
* remote.c (init_remote_ops): Ditto.
(init_extended_remote_ops): Ditto.
(_initialize_remote): Ditto.
* sparcl-tdep.c (init_sparclite_ops): Ditto.
(_initialize_sparcl_tdep): Ditto.
* v850ice.c (init_850ice_ops): Ditto.
(_initialize_v850ice): Ditto.
* win32-nat.c (init_child_ops): Ditto.
(_initialize_inftarg): Ditto.
1998-05-21 Jim Blandy <jimb@zwingli.cygnus.com>
* ax-gdb.c (const_var_ref): Don't handle function names. I don't
want to implement all the "usual unary conversion" rules for
constants.
(gen_usual_unary): Turn "function" values into "pointer to
function" values, in accordance with ANSI.
(gen_deref): Don't do the usual unary conversions here. Let the
caller do it. Note that dereferencing a function pointer yields
a function designator, which we call an rvalue, not an lvalue.
(gen_address_of): Handle functions specially.
(gen_struct_ref): Perform the usual unary conversions before
calling gen_deref.
(gen_expr): In case for the prefix '*' operator, call
gen_usual_unary manually.
Wed May 20 15:29:41 1998 Gavin Koch <gavin@cygnus.com>
* mips/tm-tx39.h (MIPS_DEFAULT_FPU_TYPE): Defined as MIPS_FPU_NONE.
* mips/tm-tx39l.h: Same.
Wed May 20 10:12:11 1998 John Metzler <jmetzler@cygnus.com>
* m32r-tdep.c (decode_prologue): Handle frames compiled with -Os.
Split out as separate function called by skip prologue and scan
prologue. new formula handles optimization in which the prologue
is interleaved with the body of the function. Also recognizes new
variations of prologue encoding. Use of frame pointer is
essential to debugging, -fno-omit-frame-pointer
(m32r_skip_prologue): Call decode prologue, ignore line info
(m32r_scan_prologue): Call decode prologue, ignore line info.
Tue May 19 17:23:54 1998 John Metzler <jmetzler@cygnus.com>
* w89k-rom.c (_initialize_w89k): Call new init function
(init_w89k_cmds): Convert to dynamic initialization of monitor_ops
data structure for forward compatability with additions to the
data structure.
* dbug-rom.c (_initialize_dbug_rom): ditto
(init_dbug_cmds): ditto
* m32r-rom.c (_initialize_m32r_rom): ditto
(init_m32r_cmds): ditto
Tue May 19 14:54:11 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (memrange_cmp): use const void * args to avoid
ANSI compiler warnings.
1998-05-19 Jim Blandy <jimb@zwingli.cygnus.com>
* ax-gdb.c (gen_fetch, gen_var_ref, gen_deref, find_field,
gen_bitfield_ref, gen_expr): Call error, not abort.
* ax-general.c (read_const, generic_ext, ax_trace_quick,
ax_label, ax_const_d, ax_reg, ax_print): Same.
* tracepoint.c: Remove the $(...) syntax for memranges.
(validate_actionline, encode_actions, trace_dump_command): Remove
clauses for the $(...) syntax.
(parse_and_eval_memrange): Function deleted.
(_initialize_tracepoint): Update function description.
* ax-gdb.c (_initialize_ax_gdb): Make the "agent" command a
subcommand of "maintenance", as it should have been from the
beginning. #include "gdbcmd.h", to get the declaration for
maintenancelist.
* Makefile.in: Document that dependency.
Tue May 19 12:00:58 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tracepoint.c (get_tracepoint_by_number): new function, to access
traceframe_number for use of the GUI.
* tracepoint.h: added prototype for get_traceframe_number.
Mon May 18 13:34:27 1998 Keith Seitz <keiths@cygnus.com>
* dbxread.c (process_one_symbol): If block addresses are relative to
function start addresses, reset function_start_address whenever a new
source file is seen.
Mon May 18 13:04:27 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (get_tracepoint_by_number): make sure to advance
arg pointer even if we fail to parse a useful number. Otherwise,
since this function is called in a loop, it may loop forever!
Also change strtol call to allow arbitrary radix.
(map_args_over_tracepoints (and other places)): add QUIT; call
to loop, to allow breakout using control-C. Not all loops were
analyzed to make sure they could terminate cleanly, but even
terminating with a messed-up tracepoint list would be better
than not terminating at all!
(tdump_command): check to see if we're connected to a trace-
capable target (currently only "remote") before doing anything
else.
Sat May 16 22:21:48 1998 Frank Ch. Eigler <fche@cygnus.com>
* config/d30v/tm-d30v.h (INIT_FRAME_PC_FIRST): Fill in PC into
frame struct before extracting saved register offsets.
Fri May 15 22:47:45 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (encode_actions): fix typo in printf format string.
1998-05-15 Jim Blandy <jimb@zwingli.cygnus.com>
Implement a few more tracing operators: ^ | & ~ !
* ax-gdb.c (gen_integral_promotions, gen_logical_not,
gen_complement): New functions.
(gen_binop): New argument MAY_CARRY, indicating whether we need to
correct the upper bits of the value after performing the
operation. Callers changed.
(gen_expr): Handle BINOP_BITWISE_AND, BINOP_BITWISE_IOR, and
BINOP_BITWISE_XOR here as well, by calling gen_binop. Handle
UNOP_LOGICAL_NOT, UNOP_COMPLEMENT.
* ax-gdb.c (gen_conversion): Reworked to avoid some unnecessary
sign extension.
* ax-gdb.c (gen_usual_arithmetic): Renamed from gen_usual_binary,
to match the ANSI C standard better. Callers changed.
* ax-gdb.c (gen_traced_pop): Add prototyped declaration.
Fri May 15 18:18:38 1998 David Taylor <taylor@texas.cygnus.com>
* tracepoint.c (stringify_collections_list): return a collection
of strings rather than a single string.
(free_actions_list): new function.
(encode_actions): process collection of strings returned by
stringify_collections_list.
1998-05-15 Jim Blandy <jimb@zwingli.cygnus.com>
* ax-gdb.c (gen_traced_pop): New function.
(gen_expr): Call it for comma operator.
(gen_trace_for_expr): Call it, instead of writing it out.
Add facilities for sending arbitrary packets to the remote agent.
There are a bunch of improvements to make (make it generic; handle
'O' replies properly), but I just want to get this onto the branch.
* remote.c (print_packet, remote_packet_command): New functions.
(_initialize_remote): Register the remote-packet command.
Thu May 14 17:52:31 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tracepoint.c: move actionline_type definition to tracepoint.h.
(validate_actionline): make non static.
* tracepoint.h: move actioline_type definition from tracepoint.c.
(validate_actionline) moved prototype from tracepoint.c.
Thu May 14 11:49:18 1998 David Taylor <taylor@texas.cygnus.com>
* tracepoint.c (validate_actionline): add additional error
checking, remove some dead code.
(encode_actions): additional cleanups.
(trace_find_command): remove some dead code.
(trace_find_pc_command): ditto.
(trace_find_tracepoint_command): ditto.
(trace_find_line_command): ditto.
(trace_find_range_command): ditto.
(trace_find_outside_command): ditto.
Thu May 14 5:51:00 1998 Ron Unrau <runrau@cygnus.com>
* symtab.c (decode_line_1): set section for "break *<addr>"
Wed May 13 20:58:02 1998 Mark Alexander <marka@cygnus.com>
* corefile.c (reopen_exec_file): Reopen the exec file if
it has changed.
Wed May 13 15:22:02 1998 Mark Alexander <marka@cygnus.com>
* sparc-tdep.c (fetch_instruction): New function.
(single_step, sparc_init_extra_frame_info, examine_prologue):
Use fetch_instruction instead of read_memory_integer
to ensure that instructions are always read as big-endian.
Wed May 13 14:42:21 1998 Ian Lance Taylor <ian@cygnus.com>
* configure.in: Add AC_FUNC_ALLOCA.
* defs.h: Check HAVE_ALLOCA_H rather than sparc. Add _AIX pragma
alloca.
* configure: Rebuild.
* Makefile.in (jv-lang.o, jv-typeprint.o, jv-valprint.o): New
targets.
Wed May 13 11:19:08 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (trace_command): Remove old diagnostic code that was
preventing tracepoints from being defined with a full-path filename.
Tue May 12 13:17:35 1998 Frank Ch. Eigler <fche@cygnus.com>
* stabsread.c (read_one_struct_field): Check for typedef in type
tree before clearing bitfield information.
1998-05-11 Jim Blandy <jimb@zwingli.cygnus.com>
* ax-gdb.c (gen_binop): New function, based on gen_mul, to replace
gen_mul and gen_div, and handle `%' op as well. Correctly tests
type of arguments.
(gen_expr): Factor out common code in binary arithmetic operators.
Add support for `%'.
(gen_mul, gen_div): Removed.
Thu May 7 14:49:38 1998 Bob Manson <manson@charmed.cygnus.com>
* config/sparc/tm-sp64.h (CALL_DUMMY): Store and retrieve
%o0-%o5 as 64-bit values; compensate for stack bias.
(USE_STRUCT_CONVENTION): We only pass pointers to structs
if they're larger than 32 bytes.
(REG_STRUCT_HAS_ADDR): Ditto.
* sparc-tdep.c (sparc_init_extra_frame_info): Use read_sp()
instead of read_register. If the target is a sparc64 and the frame
pointer is odd, compensate for the stack bias.
(get_saved_register): Use read_sp().
(DUMMY_STACK_REG_BUF_SIZE): Use FP_REGISTER_BYTES.
(sparc_push_dummy_frame): Use read_sp()/write_sp(). On sparc64,
save the PC, NPC, CCR, FSR, FPRS, Y and ASI registers.
(sparc_frame_find_saved_regs): Use read_sp(). Read the PC, NPC,
CCR, FSR, FPRS, Y and ASI registers from the frame, if it's a
dummy frame.
(sparc_pop_frame): Use write_sp(). If the target is a sparc64 and
the FP is odd, compensate for stack bias.
(sparc_store_return_value): Right-justify the return value before
writing it to %o0.
(sparc_fix_call_dummy): Don't NOP out part of the call dummy on
sparc64.
(sparc64_read_sp, sparc64_read_fp, sparc64_write_sp,
sparc64_write_fp, sp64_push_arguments,
sparc64_extract_return_value): New functions to support the
sparc64 ABI.
* dwarfread.c (handle_producer): Set processing_gcc_compilation to
the right version number.
* dwarf2read.c (read_file_scope): Assume we're processing
GCC2 output.
Wed May 6 16:34:03 1998 Jeffrey A Law (law@cygnus.com)
* somsolib.c: Include gdb_stat.h.
Mon May 4 18:34:01 1998 David Taylor <taylor@texas.cygnus.com>
* ax-gdb.c (gen_mul): new function; (gen_div): new function;
(gen_expr): add support for * and / operators, call gen_mul and
gen_div as appropriate.
Mon May 4 16:24:22 1998 Mark Alexander <marka@cygnus.com>
* defs.h (make_run_cleanup): Declare.
* solib.c (find_solib): Pass correct number of arguments to
make_run_cleanup.
Mon May 4 07:08:25 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (trace_actions_command): actions command must set
step_count to zero (in case previous actions have set it but the
new set does not).
Sat May 2 09:35:07 1998 Stu Grossman <grossman@babylon-5.cygnus.com>
* ocd.h: Add new flags, function codes, and processor types to
support new Wiggler capabilities.
* (ocd_write_bytes_size): New function to allow atomic writes of
memory in sizes larger than a byte.
* ser-unix.c (baudtab): Add 57600, 115200, 230400, and 460800 baud.
Fri May 1 19:51:32 1998 Frank Ch. Eigler <fche@cygnus.com>
* stabsread.c (read_one_struct_field): Do not override supplied
bitfield size for a range type value.
* gdbtypes.c (create_range_type): For a range with positive
lower limit, declare range type as unsigned.
Fri May 1 10:58:34 1998 John Metzler <jmetzler@cygnus.com>
* monitor.c: Turn off debug
Fri May 1 09:29:56 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* breakpoint.c (delete_command): Skip internal breakpoints when
all breakpoints are requested.
* stabsread.c (define_symbol): Record parameter types from Sunpro
function stabs in the TYPE_FIELDS of the function type.
Thu Apr 30 15:59:54 1998 Jason Molenda (crash@bugshack.cygnus.com)
* Makefile.in (config-check-targets, config-check-hosts): Removed.
1998-04-30 Paul Eggert <eggert@twinsun.com>
* Makefile.in (maintainer-clean):
Don't get ahead of yourself and delete Makefile
before running `make'.
(local-maintainer-clean, do-maintainer-clean): New rules.
Wed Apr 29 14:02:59 1998 David Taylor <taylor@texas.cygnus.com>
* ax-gdb.c (gen_add): when adding a pointer and an int, use
the size of the pointer, not the int (typo) to decide how
to extend the result.
Wed Apr 29 10:20:40 1998 John Metzler <jmetzler@cygnus.com>
* nec4102rom.c: New file implements ROM monitor adapter for
nec-vr4102 board. This board hosts the vr4111 chip. This file
required extensions to the monitor_ops structure, hooks for wait
filter, new flags. This version does not support more than one
breakpoint and resuming after a breakpoint in 16 bit mode is
completely disfunctional.
* monitor.h: Defined additional hooks for dmpregs, configure_hooks
and wait_filter. These additions require that all ROM monitor
interfaces be recoded to initialize monitor ops using assignments
rather than static structure initialization. Added new bits to
flags MO_EXACT_DUMPADDR, MO_HAS_BLOCKWRITES.
* monitor.c (RDEBUG): Conditional tracing throughout the file.
(fromhex): Now recognized upper cse hex digits
(monitor_printf_noecho):
(monitor_readchar): Tracing interferes with input timing.
(monitor_open): Register different memory write functions with
dcache_init if MO_HAS_BLOCKWRITES.
(flush_monior_dcache): Added as an additional utilty.
(monitor-resume): Call continue hook if one has been supplied.
(monitor_wait_filter): New function Factored out of monitor wait
and used if alternate wait-filter has not been provided.
(monitor_wait): call alternate wait filter if provided. Call
monitor_dump_regs, a new function factored out from inline code.
(monitor_dump_block): A new function used as a utility when
monitors must dump several blocks of registers using different
commands.
(monitor_dump_regs): Call alternate function if provided. Uses new
hook in monitor.h.
(monitor_write_memory): Engage previouly added hook
MO_FILL_USES_ADDR.
(monitor_write_even_block): new function supports writing long
blocks of 4byte words.
(longlongendswap): new internal function
(monitor_write_memory_longlongs): new function writes large blocks
using command to enter a long long.
(monitor_write-memory_block): new Function figures out which block
mod to use.
(monitor_read_memory): Can now handle dump formats in which the bytes
preceeding the requested data is not printed.
Tue Apr 28 19:41:33 1998 Tom Tromey <tromey@cygnus.com>
* tracepoint.c (memrange_cmp): Another typo fix; `memrbnge' ->
`memrange'.
* tracepoint.c (memrange_cmp): Fixed typo in function intro.
Tue Apr 28 17:41:20 1998 Philippe De Muyter <phdm@macqel.be>
* symfile.c (overlay_auto_command): Add forgotten parameter
definitions.
(overlay_manual_command, overlay_off_command): Likewise.
(overlay_load_command): Likewise.
* tracepoint.c (memrange_cmp): Parameters have type void *, not
struct memrange *.
Tue Apr 28 11:08:25 1998 John Metzler <jmetzler@cygnus.com>
* rom68k-rom.c (_initialize_rom68k): Fix unresolved init_rom_68kcmds.
Mon Apr 27 14:32:21 1998 Mark Alexander <marka@cygnus.com>
* config/sparc/tm-sparc.h (CALL_DUMMY): Shorten it drastically,
make it work on the simulator.
(FIX_CALL_DUMMY): Convert to function call instead of inline code.
(sparc_fix_call_dummy): Declare.
* sparc-tdep.c (sparc_fix_call_dummy): New function, taken from
old FIX_CALL_DUMMY macro, with additional fixes for simulator.
(sparc_push_dummy_frame): Set registers differently on simulator
to prevent corrupted register window save areas.
Mon Apr 27 13:46:40 1998 John Metzler <jmetzler@cygnus.com>
* rom68k-rom.c (_initialize_rom68k, init_rom68k_cmds):
Convert all static initializations of monitor ops structures to
executable initializations in order that additions to the data
structure definition can me made without repeating this editing
exercise.
* abug-rom.c (_initialize_abug_rom, init_abug-cmds): Ditto.
* cpu32bug-rom.c (_initialize_cpu32bug_rom, init_cpu32bug_cmds): Ditto.
* mon960-rom.c (initialize_mon960, init_mon960_cmds): Ditto.
* op50-rom.c (initialize_op50n, init_op50n_cmds): Ditto.
* ppcbug-rom.c (_initialize_ppcbug_rom, init_ppc_cmds): Ditto.
* sh3-rom.c (_initialize_sh3_rom, init_sh3_cmds): Ditto.
* sparclet-rom.c (_initialize_sparclet, init_sparclet_cmds): Ditto.
* remote-est.c (_initialize_est, init_est_cmds): Ditto.
* remote-hms.c ( _initialize_remote_hms, init_hms_cmds): Ditto.
Mon Apr 27 10:43:04 1998 Jason Molenda (crash@bugshack.cygnus.com)
* gdb_string.h (strdup): Don't specify arguments in prototype.
Sun Apr 26 07:57:21 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* rs6000-nat.c (vmap_ldinfo): Issue warning instead of error if
fstat on ldinfo_fd fails. Use objfile->obfd instead of vp->bfd
to check for reference to the same file.
* target.c (target_read_string): Handle string transfers at the
end of a memory section gracefully.
Fri Apr 24 17:18:56 1998 Geoffrey Noer <noer@cygnus.com>
* Makefile.in: enable EXEEXT setting
Fri Apr 24 11:53:49 1998 David Taylor <taylor@texas.cygnus.com>
* tracepoint.c (add_local_symbols): change type of type from
char to int so that type shows up as 'A' or 'L' not 0.
Thu Apr 23 16:37:20 1998 Jason Molenda (crash@bugshack.cygnus.com)
* README: Minor changes for 4.17 release.
Thu Apr 23 15:44:39 1998 Per Bothner <bothner@cygnus.com>
* symfile.c (deduce_language_from_filename): .class implies java.
Thu Apr 23 12:52:21 1998 Philippe De Muyter <phdm@macqel.be>
* configure.in (strerror): Check if function must be declared.
* acconfig.h (NEED_DECLARATION_STRERROR): New define slot.
* gdb_string.h (strerror): Function declaration issued if
NEED_DECLARATION_STRERROR.
* configure, config.in: Files regenerated.
Thu Apr 23 12:27:43 1998 Philippe De Muyter <phdm@macqel.be>
* symfile.c (simple_overlay_update_1): Do not prefix array address
by `&'.
* bcache.h (BCACHE_DATA_ALIGNMENT): Ditto.
* tracepoint.c (encode_actions): Ditto.
* language.c, complaints.c, utils.c (varargs.h): Do not include that
file here, it is already included indirectly by defs.h.
* dbxread.c (dbx_symfile_init, process_one_symbol): Cast xmalloc return
value to the appropriate pointer type.
* utils.c (floatformat_from_doublest): Ditto.
* tracepoint.c (read_actions, _initialize_tracepoint): Ditto.
(add_memrange): Likewise with xrealloc return value.
* stabsread.c (ref_add): Ditto.
* coffread.c (coff_symfile_init): Likewise for xmmalloc return value.
* elfread.c (elf_symfile_read): Ditto.
* os9kread.c (os9k_symfile_init): Ditto.
Thu Apr 23 00:32:08 1998 Tom Tromey <tromey@cygnus.com>
* config.in: Rebuilt.
* acconfig.h (ENABLE_NLS, HAVE_CATGETS, HAVE_STPCPY, HAVE_GETTEXT,
HAVE_LC_MESSAGES): Define.
Wed Apr 22 15:38:56 1998 Tom Tromey <tromey@cygnus.com>
* configure: Rebuilt.
* configure.in: Call CY_GNU_GETTEXT.
* Makefile.in (top_builddir): New macro.
(INTL): Define to @INTLLIBS@.
(INTL_DEPS): New macro.
(CDEPS): Reference INTL_DEPS, not INTL.
Wed Apr 22 12:58:23 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
Handle missing shared libraries during the examination of a core
dump gracefully.
* solib.c (find_solib): Use catch_errors around call to
solib_map_sections. Use warning instead of error if reading of
the shared library name fails.
(solib_map_sections): Change return and argument types to make
it callable from catch_errors.
(symbol_add_stub): Avoid GDB core dump if solib->abfd is NULL.
* irix5-nat.c, osfsolib.c (xfer_link_map_member, solib_map_sections,
symbol_add_stub): Ditto.
Wed Apr 22 14:34:49 1998 Michael Meissner <meissner@cygnus.com>
* Makefile.in (INTL*): Add support to link in the intl library,
and to add -I options to its source and object directories.
(INTERNAL_CFLAGS): Ditto.
(C{LIBS,DEPS}): Ditto.
Tue Apr 21 11:20:54 1998 Frank Ch. Eigler <fche@cygnus.com>
* mips-tdep.c (gdb_print_insn_mips): Disassemble MIPS instructions
with subtarget-specific `mach', rather than fixed default.
* config/mips/tm-mips.h (TM_PRINT_INSN_MACH): New macro, default
disassembly `mach'.
Mon Apr 20 15:35:03 1998 Philippe De Muyter <phdm@macqel.be>
* coffread.c (decode_base_type): Treat a long field with size greater
than TARGET_LONG_BIT as long long.
* values.c (value_from_longest): Print code value in error message.
Mon Apr 20 15:32:21 1998 Mark Kettenis <kettenis@phys.uva.nl>
* gdb/gdb_string.h (strdup): Declare only if not defined as a
macro.
Mon Apr 20 14:18:45 1998 J. Kean Johnston <jkj@sco.com>
* procfs.c: Added replacement macros for LWP stuff. Fixed support
for UnixWare / SVR4.2MP targets and any targets which use
multi-file /proc entries. Fixed support for hardware watchpoints.
* solib.c: SCO needs some of the same code as SunOS. Change
preprocessor conditionals.
* config/i386/i386sco5.mt: New file.
* config/i386/tm-i386sco5.h: New file.
* config/i386/i386sco5.mh (NATDEPFILES): add i386v-nat.o.
* config/i386/nm-i386v42mp.h
(TARGET_HAS_HARDWARE_WATCHPOINTS): define.
Add other macros for hardware assisted watchpoints.
* config/i386/nm-i386sco5.h: Correct attributions.
(TARGET_HAS_HARDWARE_WATCHPOINTS): define.
* config/i386/nm-linux.h (target_remote_watchpoint): Pass
'type' through to i386_insert_watchpoint.
Mon Apr 20 14:12:30 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* infrun.c (wait_for_inferior): Don't add signalled processes
as new threads.
* procfs.c (wait_fd): Note if LWP has exited.
(procfs_wait): use GETPID to get process ID.
Sat Apr 18 15:21:04 1998 Stan Cox <scox@cygnus.com>
* configure.tgt: Added sparc86x support.
Thu Apr 16 13:13:24 1998 Jason Molenda (crash@bugshack.cygnus.com)
* rdi-share/etherdrv.c (EthernetWrite): Use strerror to get
error string if in an ANSI C-ish environment.
Wed Apr 15 18:59:48 1998 Mark Alexander <marka@cygnus.com>
* sparc-tdep.c (SPARC_HAS_FPU): Define.
(sparc_extract_return_value): New function, required to handle
machines without floating point.
(sparc_store_return_value): Ditto.
* config/sparc/tm-sparc.h (EXTRACT_RETURN_VALUE): Call
sparc_extract_return_value instead of using inline code.
(sparc_extract_return_value): Declare.
(STORE_RETURN_VALUE): Call sparc_store_return_value instead
of using inline code.
(sparc_store_return_value): Declare.
Wed Apr 15 12:19:42 1998 Martin M. Hunt <hunt@cygnus.com>
* solib.c (enable_break): Only call warning once
instead of three times.
Tue Apr 14 16:52:59 1998 Mark Alexander <marka@cygnus.com>
* sparc-tdep.c (sparc_extract_struct_value_address): Make it
work correctly on little-endian hosts.
(sparc_push_arguments): New function.
(gdb_print_insn_sparc): New function.
(_initialize_sparc_tdep): Make gdb_print_insn_sparc the default
disassembler, so that SPARClite-specific instructions will
be recognized.
* sparcl-tdep.c (readchar): Print debugging information.
(debug_serial_write): New function, a replacement for SERIAL_WRITE
that prints debugging information.
* config/sparc/tm-sparc.h (PUSH_ARGUMENTS): Define.
(sparc_push_arguments): Declare.
Tue Apr 14 15:43:49 1998 John Metzler <jmetzler@cygnus.com>
* gdbcfgxref (xref_menu): Call new regex and wild card searches
Now you can type in a specific triple like mips64-vr4300-elf or
somthing like mips*.h
(triple_search, wildcardsearch): The new functions
Mon Apr 13 16:28:07 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* utils.c (warning): added call to warning_hook
* source.c (find_source_lines): modified to call warning in case
of source vs. executable time stamp mismatch. Simplified object
file check. Initialized mtime to 0.
* defs.h: added warning_hook prototype
* top.c: added warning_hook prototype.
Mon Apr 13 09:54:08 1998 Keith Seitz <keiths@andros.cygnus.com>
* config/sparc/tm-sun4os4.h (IS_STATIC_TRANSFORM_NAME): Add missing
definition.
Fri Apr 10 22:36:28 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
Update support for x86 Solaris 2.
* config/i386/tm-i386sol2.h, nm-i386sol2.h: New configuration
files for x86 Solaris 2.
* config/i386/i386sol2.mt, i386sol2.mh: Use them.
* config/sparc/tm-sun4sol2.h (PROCFS_GET_CARRY): New macro, extract
carry flag from a given regset.
(IS_STATIC_TRANSFORM_NAME): New macro, check if a symbol name
is a SunPro transformed name.
* i386-tdep.c (sunpro_static_transform_name): New function to
extract the source name from a SunPro transformed name.
* inferior.h (procfs_first_available, procfs_get_pid_fd):
Add prototypes.
* infrun.c (wait_for_inferior): Handle breakpoint hit in
signal handler without intervening stop in sigtramp.
* procfs.c (procfs_lwp_creation_handler): Use PROCFS_GET_CARRY
instead of direct access to the status register.
(procfs_get_pid_fd): New function, returns procfs fd for a given pid.
* sol-thread.c (ps_lgetLDT): New function, returns LDT for a given
lwpid.
(sol_find_new_threads): Handle failed libthread_db initialization
gracefully.
* stabsread.c (define_symbol): Use IS_STATIC_TRANSFORM_NAME
to check for a SunPro transformed symbol name.
Fri Apr 10 10:35:35 1998 John Metzler <jmetzler@cygnus.com>
* utils.c (fmthex): A formatting function for hexdumps
* mips-tdep.c (unpack_mips16): Fixed instruction decoding, lots of
bit pattern interpretations. mips_fetch_instruction does not work
for 16 bit instructions. Some confusion remains about sign
extension in backward branches.
(mips32_relative_offset): Sign extension
(mips32_next_pc): Major debugging, bit pattern interpretation
(print_unpack): debugging printf
(fetch_mips_16): new funtion, key on PC low bit, not symbol table
(mips16_next_16): Initial major debugging of this function. Lots
of bit pattern mistakes.
(mips_next_pc): key on low bit of PC, not symbol table.
* symfile.c (generic_load): Added a download verification which
reads back the loaded code. Download chunk size is now a defined
macro. Fixed a bug in which downloading slips into loading one
byte at a time. Lower level functions in monitor.c can load long
sequences of bytes and make use of these fixups. Referencing
bfd-start_address directly was incorrectly getting zero for start.
Thu Apr 9 19:20:32 1998 Ian Lance Taylor <ian@cygnus.com>
* mips-tdep.c (do_fp_register_row): Use alloca rather than arrays
with dynamic size.
Wed Apr 8 19:21:42 1998 Jason Molenda (crash@bugshack.cygnus.com)
* top.c (print_gdb_version): Print 1998 now.
Wed Apr 8 16:57:22 1998 Philippe De Muyter <phdm@macqel.be>
* source.c: Remove obsolete decl of strstr().
Wed Apr 8 16:47:33 1998 Jason Molenda (crash@bugshack.cygnus.com)
* solib.c (solib_create_inferior_hook): Remove Ulrich Drepper's
patch of March 23 1998.
* breakpoint.c (breakpoint_re_set_one): Remove Ulrich Drepper's
patch of March 23 1998.
Sat Apr 4 10:05:00 1998 Dawn Perchik <dawn@cygnus.com>
* mdebugread.c (parse_partial_symbols): If this is an .mdebug
section in an ELF file, override a symbol's ECOFF section with its
ELF section. Also, fix stabs continuation where a stabs string
continues for more than one continuation.
Mon Apr 6 09:17:48 1998 Andrew Cagney <cagney@b1.cygnus.com>
* mips-tdep.c (mips_push_arguments): Specify dimention of valbuf
using MAX_REGISTER_RAW_SIZE.
Sat Apr 4 10:05:00 1998 Dawn Perchik <dawn@cygnus.com>
* infrun.c: Fix prototype of signals_info to match static funtion.
Thu Apr 2 12:47:41 1998 Frank Ch. Eigler <fche@cygnus.com>
* sol-thread.c (sol_thread_store_registers): Save & restore new
value of single updated register to prevent accidental clobbering.
Wed Apr 1 22:01:09 1998 Mark Alexander <marka@cygnus.com>
* config/sparc/tm-sparclite.h (TARGET_BYTE_ORDER_SELECTABLE): Define.
* config/sparc/sparclite.mt: Link in the erc32 simulator.
Wed Apr 1 16:30:49 1998 Ian Dall <Ian.Dall@dsto.defence.gov.au>
* ns32k-tdep.c (flip_bytes, ns32k_localcount,
ns32k_get_enter_addr, sign_extend): Restore functions mysteriously
deleted.
* ns32knbsd-nat.c: New (?) file to support fetching and storing
registers on NetBSD hosts.
* nbsd.mh (NATDEPFILES): put ns32knbsd-nat.o instead of
ns32k-nat.o
* ns32km3-nat.c (reg_offset): Get order of floating point
registers correct. Add extra 32382 register offsets.
(REG_ADDRESS): define to point at correct part of thread
state. Use calls to "warning" instead of "message".
* tm-nbsd.h, tm-ns32km3.h (REGISTER_NAMES, NUM_REGS,
REGISTER_BYTES, REGISTER_BYTE): redefine allowing for 32382
fpu registers.
Wed Apr 1 13:43:07 1998 Philippe De Muyter <phdm@macqel.be>
* NEWS: m68k-motorola-sysv host support added.
* coffread.c (coff_start_symtab): Accept the filename as an argument,
set it here. Callers updated.
Wed Apr 1 23:13:23 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/mips/tm-mips.h (REGISTER_VIRTUAL_TYPE): Handle 32 bit SR,
FSR and FIR registers.
(REGISTER_VIRTUAL_SIZE): Compute using REGISTER_VIRTUAL_TYPE.
(REGISTER_RAW_SIZE): Define using REGISTER_VIRTUAL_SIZE.
* config/mips/tm-mips64.h: Ditto.
Tue Mar 31 21:30:39 1998 Nick Clifton <nickc@cygnus.com>
* arm-tdep.c (gdb_print_insn_arm): Attach a fake Thumb symbol
vector to the info structure when disassembling thumb
instructions.
* coffread.c (coff_symtab_read, read_one_sym,
process_coff_symbol): Support Thumb symbol types.
* dbxread.c (process_one_symbol): Call SMASH_TEXT_ADDRESS (if it
is defined) for function symbols.
Tue Mar 31 16:39:28 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* tracepoint.c (get_tracepoint_by_number): change warning to note.
(delete_trace_command): suppress y/n query if no tracepoints, or
if not from_tty. (trace_pass_command): reject junk at end of args.
(read_actions): an action list consisting only of "end" is discarded.
(validate_actionline (for collect command)): an argument beginning
with a dollar_sign but not recognized as a special argument is
parsed like any other expression -- if it isn't a register name,
it's rejected. Also reject an empty argument to while-stepping.
(trace_find_command): reject a negative frame number argument.
(_initialize_tracepoint): set $traceframe initially to -1.
Mon Mar 30 16:42:12 1998 Jason Molenda (crash@bugshack.cygnus.com)
* rdi-share/Makefile.am, rdi-share/aclocal.m4,
rdi-share/configure: New files.
* rdi-share/configure.in: Rewritten to be an autoconf input file.
* rdi-share/Makefile.in, rdi-share/configure: Generated by
automake/autoconf.
* rdi-share/dbg_hif.h, etherdrv.c, hostchan.c: Use autoconf tests
to check environment.
Sun Mar 29 15:17:16 1998 Keith Seitz <keiths@onions.cygnus.com>
* tracepoint.c (trace_start_command): Set trace_running_p.
(trace_stop_command): Clear trace_running_p.
Sat Mar 28 15:19:48 1998 Stan Shebs <shebs@andros.cygnus.com>
* NEWS: Update for 4.17 release.
Fri Mar 27 10:15:50 1998 David Taylor <taylor@tito.cygnus.com>
* tracepoint.c (parse_and_eval_memrange): Fix memory leaks.
(encode_actions): Use the new gen_trace_for_expr function
instead of expr_to_address_and_size; collect registers when
using expressions. (clear_collection_list): Fix memory leak.
1998-03-26 Jim Blandy <jimb@zwingli.cygnus.com>
* ax-gdb.h (gen_trace_for_expr): Add prototype.
Thu Mar 26 17:24:23 1998 David Taylor <taylor@texas.cygnus.com>
* tracepoint.c (validate_actionline): Fix memory leak.
(encode_actions): Fix memory leak.
Thu Mar 26 16:16:55 1998 David Taylor <taylor@tito.cygnus.com>
* tracepoint.c (trace_mention): New function.
(trace_command): Call it.
1998-03-26 Jim Blandy <jimb@zwingli.cygnus.com>
* ax-general.c (ax_reqs): New function.
* ax.h (enum agent_flaws, struct agent_reqs): New types.
(agent_reqs): New extern prototype. Well, actually, this was
there before, due to a premature checkin.
(struct aop_map): Add new `data_size' member.
* ax-general.c (aop_map): Supply its value.
* ax-gdb.c (agent_command): Call ax_reqs, for testing.
* ax-general.c (ax_print): If we encounter an invalid or
incomplete opcode, don't abort; just print an error message.
* ax-gdb.c: Generate trace bytecodes, as appropriate.
(trace_kludge): New variable.
(gen_fetch, gen_bitfield_ref): Emit trace bytecodes, if asked
nicely.
(expr_to_agent): Ask for no trace bytecodes.
(gen_trace_for_expr): New function.
(agent_command): Call it, and display the result appropriately ---
no struct axs_value, so no type or kind information.
* ax-gdb.c: Use TARGET_CHAR_BIT throughout, not HOST_CHAR_BIT.
Thu Mar 26 22:29:28 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* tracepoint.c (trace_status_command): Recognize a boolean return
value from the stub to indicate whether trace experiment is
running. Export this value as a global state variable.
(trace_running_p) for use by the GUI. (from Michael Snyder)
(trace_pass_command) added call to modify_tracepoint_hook.
* tracepoint.h export trace_running_p.
Thu Mar 26 13:08:01 1998 David Taylor <taylor@texas.cygnus.com>
* tracepoint.c (validate_actionline): do not error out if
exp->elts[0].opcode is not on short line -- let
expr_to_address_and_size handle it.
1998-03-26 Jim Blandy <jimb@zwingli.cygnus.com>
* tracepoint.c: Include "ax.h", not "agentexpr.h".
* tracepoint.c (encode_actions): Call expr_to_address_and_size,
not simply expr_to_agent.
* ax-general.c: Comment out code in progress, so everyone else can
at least compile.
* gdbtypes.c: Doc fix.
* ax.h, ax-gdb.h, ax-general.c, ax-gdb.c: New files.
* Makefile.in (REMOTE_OBJS): Add ax-general.o and ax-gdb.o.
(SFILES): Add ax-general.c, ax-gdb.c.
(ax_h): New variable.
(ax-general.o, ax-gdb.o): New rules.
Tue Mar 24 16:22:40 1998 Stu Grossman <grossman@bhuna.cygnus.co.uk>
* Makefile.in: Derive SHELL from configure.
* config/d10v/d10v.mt config/m32r/m32r.mt
config/mn10200/mn10200.mt config/mn10300/mn10300.mt
config/d30v/d30v.mt: Remove -lm from SIM. This prevents
dependency checking of -lm (under NT native builds). (It is
automatically added by configure if it exists.)
* doc/configure mswin/configure nlm/configure
testsuite/gdb.base/configure testsuite/gdb.c++/configure
testsuite/gdb.chill/configure testsuite/gdb.disasm/configure
testsuite/gdb.stabs/configure testsuite/gdb.threads/configure:
Regenerate with autoconf 2.12.1 to fix shell issues for NT native
builds.
Mon Mar 23 18:10:57 1998 Ulrich Drepper (drepper@cygnus.com)
* solib.c (solib_create_inferior_hook): Rewrite previous
change to check the type of file via BFD.
Mon Mar 23 13:52:28 1998 Ulrich Drepper (drepper@cygnus.com)
* breakpoint.c (breakpoint_re_set_one): Treat bp_shlib_events
like bp_breakpoints.
* solib.c (solib_create_inferior_hook): Relocate section addresses
if the alleged start address doesn't agree with the PC.
Sat Mar 21 19:34:49 1998 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
merged changes from Foundry (list follows by file/author):
- Tom Tromey <tromey@cygnus.com>
* Makefile.in (gdbres.o): New target.
(WINDRES): New define.
* configure: Rebuilt.
* configure.in (WINDRES): Define.
(CONFIG_OBS): Include gdbres.o on Windows.
* gdbtool.ico: New file.
* gdb.rc: New file.
* ser-unix.c
- Keith Seitz <keiths@onions.cygnus.com>
(wait_for): Don't reset the timeout_remaining for CYGWIN32,
since we now effectively poll the serial port.
Don't reset the current_timeout, either, since this member is used
by hardwire_readchar to track the timeout and call the ui_loop_hook.
(hardwire_readchar): Poll the serial port for Cygwin32. We timeout
every second, update the UI, and loop around doing this until we
have hit the real timeout or we get data or an error. This will
allow the UI to stay active while gdb is "blocked" talking to the
target.
- Martin M. Hunt <hunt@cygnus.com>
(wait_for): Do reset current_timeout because it is only used to
keep track of what the current timeout for the scb is.
* top.c
- Martin M. Hunt <hunt@cygnus.com>
(quit_confirm): Change exit message again
for GUI.
(pc_changed_hook): Add prototype.
- Tom Tromey <tromey@cygnus.com>
(quit_confirm): Added missing `else'.
(quit_confirm): Special-case message if init_ui_hook is
set.
* symtab.c
- Martin M. Hunt <hunt@cygnus.com>
(find_pc_sect_line): If no symbol information
is found, return correct pc anyway.
(find_methods): Comment out an apparently
bogus error message because it messes up Foundry.
* serial.c
- Martin M. Hunt <hunt@cygnus.com>
(_initialize_serial): Add a description of
"set remotelogbase".
* findvar.c
- Martin M. Hunt <hunt@cygnus.com>
(write_register_gen): Add call to
pc_changed_hook if the PC is being changed.
* defs.h
- Martin M. Hunt <hunt@cygnus.com>
(pc_changed_hook): Define.
* command.c
- Martin M. Hunt <hunt@cygnus.com>
(do_setshow_command): If no arguments are supplied,
don't dump core, instead print out an error message.
* breakpoint.c
- Martin M. Hunt <hunt@cygnus.com>
Make set_raw_breakpoint, set_breakpoint_count,
and breakpoint_count non-static so they are accessible from
elsewhere.
(enable_breakpoint): Enable breakpoint
with same disposition instead of changing all breakpoints
to donttouch.
* annotate.h
- Keith Seitz <keiths@onions.cygnus.com>
Add declarations for annotation hooks.
* annotate.c
- Keith Seitz <keiths@onions.cygnus.com>
Add hooks: annotate_starting_hook, annotate_stopped_hook,
annotate_signalled_hook, annotate_exited_hook.
(annotate_starting): If hook exists, call it instead.
(annotate_stopped): If hook exists, call it instead.
(annotate_exited): If hook exists, call it instead.
(annotate_signalled): If hook exists, call it instead.
Fri Mar 20 14:45:36 1998 Michael Snyder <msnyder@cleaver.cygnus.com>
* gdbserver/Makefile.in: add dependency on XM_CLIBS.
* gdbserver/low-sim.c (registers) force into alignment.
(create_inferior): Fix typo on new_argv; add abfd arg to
sim_open, sim_create_inferior. Add reg_size arg to
sim_fetch_register, sim_store_register. Make simulator
take a single-step to get into a known running state.
* gdbserver/gdbreplay.c: include fcntl.h for def'n of F_SETFL.
* gdbserver/server.c: Add remote_debug variable to control
debug output.
* gdbserver/server.h: Add prototypes for enable/disable_async_io.
* gdbserver/remote-utils.c: add verbose debugging output controlled
by "remote_debug" variable. Add call to "disable_async_io()"
to avoid being killed by async SIGIO signals.
* config/m32r/m32r.mt: define GDBSERVER_(LIBS and DEPFILES),
so that gdbserver can be built with the m32r simulator.
Fri Mar 20 09:04:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
* gdbtypes.h (builtin_type_{,u}int{8,16,32,64}): New gdb builtin
types.
* gdbtypes.c (_initialize_gdbtypes): Initialize new types.
* mips-tdep.c (do_gp_register_row): Pad register value when GP
register is smaller than MIPS_REGSIZE.
* findvar.c (value_of_register): When raw and virtual register
values identical, check that sizes are consistent.
Thu Mar 19 11:32:15 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* minsyms.c (compare_minimal_symbols): If addresses are identical,
then compare on names. Sorted list should have symbols with
identical addresses AND names adjacent, so dups can be discarded.
Wed Mar 18 12:50:17 1998 Jeff Law (law@cygnus.com)
* stabsread.c (define_symbol): Don't look for ',' as a LRS
indicator.
Wed Mar 18 10:34:51 1998 Nick Clifton <nickc@cygnus.com>
* rdi-share/etherdrv.c: Set sys_errlist[] as char * not const char *.
Fri Mar 13 15:43:53 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* config/mips/xm-mips.h (CC_HAS_LONG_LONG): Undefine for Ultrix
when compiling with native cc, the compiler has broken long long
support.
Fri Mar 13 15:37:02 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* config/m68k/xm-sun3os4.h: Remove malloc declarations, they
are handled via autoconf now.
* remote.c (remote_ops, extended_remote_ops): Replace static
forward declaration by moving the static definition to the top of
the file, for old K&R compilers.
* tracepoint.c (collect_symbol, trace_start_command):
Replace ANSI string concatenation with K&R compatible simple string.
1998-03-11 Fred Fish <fnf@ninemoons.com>
* source.c (select_source_symtab): Don't reach error if we have
a current_source_symtab from reading in partial symbol table.
Fri Mar 6 13:10:27 1998 Fred Fish <fnf@cygnus.com>
* utils.c (quit): Call SERIAL_DRAIN_OUTPUT rather than
SERIAL_FLUSH_OUTPUT.
* serial.h (struct serial_ops): Add drain_output, pointer to
function that waits for output to drain.
(SERIAL_DRAIN_OUTPUT): Macro to wait for output to drain.
* ser-unix.c (hardwire_drain_output): New function and prototype.
* ser-unix.c (hardwire_ops): Add entry for drain_output function.
* ser-tcp.c (tcp_ops): Ditto.
* ser-ocd.c (ocd_ops): Ditto.
* ser-mac.c (mac_ops): Ditto.
* ser-go32.c (dos_ops): Ditto.
* ser-e7kpc.c (e7000pc_ops): Ditto.
Thu Mar 5 16:07:41 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* sparcl-tdep.c: fix #endif comments
Thu Mar 5 15:10:35 1998 Jason Molenda (crash@bugshack.cygnus.com)
* Makefile.in (BISON): Configure substitutes in @YACC@, not @BISON@.
Thu Mar 5 14:42:41 1998 Keith Seitz <keiths@onions.cygnus.com>
* ocd.c (ocd_open): If we fail ocd_start_remote, make sure we
error () so that we abort out of bdm_ppc_open.
Wed Mar 4 16:53:52 1998 Martin M. Hunt <hunt@cygnus.com>
* serial.c (_initialize_serial): Add a description of
"set remotelogbase".
* command.c (do_setshow_command): If no arguments are supplied,
don't dump core, instead print out an error message.
Wed Mar 4 01:39:08 1998 Ron Unrau <runrau@cygnus.com>
* elfread.c (elf_symtab_read): merge SYMBOL_IS_SPECIAL into
MAKE_MSYMBOL_SPECIAL
* config/mips/tm-mips.h: ditto
Tue Mar 3 17:19:08 1998 John Metzler <jmetzler@cygnus.com>
* config/mips/tm-vr4xxx.h: implements vr4111 as separate from 4300
* config/mips/vr4xxx.tm: implements vr4111 as separate from 4300
* configure.tgt: Recognise mips64vr4111-*-elf as vr4xxx
* dwarfread.c (read_tag_pointer_type): Pointer sizes now come from
TARGET_PTR_BIT rather from sizeof(char *) on host.
Tue Mar 3 14:37:02 1998 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* alpha-nat.c (fetch_osf_core_registers): Renamed from
fetch_aout_core_registers.
(alpha_osf_core_fns): Renamed from alpha_aout_core_fns, change
flavour to bfd_target_unknown_flavour for OSF core files.
Mon Mar 2 17:44:13 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* breakpoint.c (_initialize_breakpoint): Make "en" an alias
for "enable" (so that it doesn't conflict with "end").
Mon Mar 2 17:04:25 1998 Jason Molenda (crash@bugshack.cygnus.com)
* Makefile (VERSION): Bump to 4.17.1.
Mon Mar 2 16:59:15 1998 Jason Molenda (crash@bugshack.cygnus.com)
* rdi-share/etherdrv.c (sys_errlist): Add correct decl for Linux.
Mon Mar 2 16:51:44 1998 Jason Molenda (crash@bugshack.cygnus.com)
* Makefile.in (YYFILES): Remove in maintainer-clean, not distclean.
Mon Mar 2 16:47:11 1998 Philippe De Muyter <phdm@macqel.be>
* Makefile.in (distclean): Add `rm $(YYFILES)'.
Mon Mar 2 16:45:48 1998 Philippe De Muyter <phdm@macqel.be>
* coffread.c (coff_read_enum_type): Set TYPE_FLAG_UNSIGNED if enum
is unsigned.
Sun Mar 2 15:16:13 1998 Richard Henderson <rth@cygnus.com>
* configure.host, configure.tgt: Add sparc-linux.
* sparc-nat.c: Include <asm/reg.h> not <machine/reg.h> for Linux.
* config/sparc/*linux*: New files.
Mon Mar 2 12:12:41 1998 Anthony Thompson (athompso@cambridge.arm.com)
* arm-tdep.c (gdb_print_insn_arm): Call print_insn_big_arm
if we're big endian; else call print_insn_little_arm.
Mon Feb 24 11:24:57 1998 Richard Henderson <rth@cygnus.com>
* Makefile.in (BISON): Don't even pretend to use yacc.
(c-exp.tab.o): Use bison -o to use a unique intermediate file.
(f-exp.tab.o, m2-exp.tab.o): Likewise.
(jv-exp.tab.o): Likewise.
Tue Feb 24 03:32:59 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote-sim.c (gdbsim_fetch_register): Don't abort when the
register size is wrong.
Thu Feb 19 16:49:48 1998 John Metzler <jmetzler@cygnus.com>
* target.c (debug_to_fetch_registers,debug_to_store_registers,
debug-to_insert_breakpoint,debug_to_remove_breakpoint): tracing
64 bit targets crashed long long printfs.
Tue Feb 17 16:36:22 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* symfile.c (read_target_int_array): rename read_target_long_array
and force the sizeof an ovly_table element to sizeof(long),
instead of sizeof(int).
Tue Feb 17 18:05:05 1998 Frank Ch. Eigler <fche@cygnus.com>
* remote-mips.c (mips_request): Use unsigned long during parsing
returned value from monitor, to prevent accidental sign extension.
Tue Feb 17 14:28:33 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* acconfig.h: FORCE_MMCHECK changed to MMCHECK_FORCE.
* configure.in: Ditto.
* configure: Regenerated.
Tue Feb 17 14:07:34 1998 Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* gdbtypes.c (check_typedef): Do not try to resolve the length of
a type which has TYPE_FLAG_TARGET_STUB set, if the target type has
set TYPE_FLAG_TARGET_STUB as well.
Tue Feb 17 14:32:18 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote-sim.c (gdbsim_fetch_register, gdbsim_store_register):
Pass register size to sim_{fetch,store}_register. Check nr of
register bytes transfered is correct.
Mon Feb 16 14:05:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote-d10v.c (remote_d10v_open): Call push_remote_target
instead of open_remote_target.
* remote.c (remote_xfer_memory): Use REMOTE_TRANSLATE_XFER_ADDRESS
to translate addr/size when defined.
(open_remote_target): Delete.
* target.h (open_remote_target): Delete.
* config/d10v/tm-d10v.h (REMOTE_TRANSLATE_XFER_ADDRESS): Define.
Mon Feb 16 14:05:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
* d10v-tdep.c (d10v_extract_return_value): Wierd. GCC wants to
return odd sized register quantities with only half of the first
register used!
* config/d10v/tm-d10v.h (USE_STRUCT_CONVENTION): Use stack when
size > 8.
Mon Feb 16 14:05:54 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/d10v/tm-d10v.h (USE_STRUCT_CONVENTION): Define. True when
sizeof type > 1.
Sun Feb 15 16:10:50 1998 Ron Unrau <runrau@cygnus.com>
* parse.c (write_dollar_variable): call new function
target_map_name_to_register to allow targets to define their own
register name aliases.
* infcmd.c (registers_info): use target_map_name_to_register so that
"print $reg" and "info reg $reg" use the same register name aliases.
Fri Feb 13 16:40:30 1998 Stan Shebs <shebs@andros.cygnus.com>
* config/i386/i386mk.mt (OBJFORMATS): Delete, no longer used.
* config/i386/xm-i386mk.h: Fix an include.
* config/pyr/tm-pyr.h (PC_INNER_THAN): Remove, never used.
Thu Feb 12 16:12:07 1998 Frank Ch. Eigler <fche@cygnus.com>
* remote-mips.c (mips_enter_debug): Sleep before sending CR to
monitor.
(mips_exit_debug): Accept any whitespace / verbiage before monitor
prompt reappears.
Thu Feb 12 18:25:42 1998 Andrew Cagney <cagney@b1.cygnus.com>
* d10v-tdep.c (show_regs): Avoid use of %llx when printing 8 byte
accumulators.
Thu Feb 12 17:10:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
* valops.c (value_at): For d10v, make read pointers with
read_target_unsigned_integer, keep addresses unsigned.
(value_fetch_lazy): Ditto.
Thu Feb 12 12:14:02 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote-d10v.c: New file. Layer the d10v GDB->remote memory map
on top of the remote serial memory transfer functions.
* config/d10v/d10v.mt (TDEPFILES): Add remote-d10v.o
* Makefile.in (remote-d10v.o): Add dependencies.
* remote.c (remote_open_1): Add arg extended_p, engage extended
protocol when extended_p.
(remote_open, extended_remote_open): Pass !extended_p /
extended_p to remote_open_1.
* remote.c (open_remote_target), target.h: New function.
Wed Feb 11 08:41:15 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/i386/fbsd.mh (XDEPFILES): Add ser-tcp.o.
Tue Feb 10 17:50:37 1998 Keith Seitz <keiths@onions.cygnus.com>
* tracepoint.c (tracepoint_operation): Call the modify_tracepoint_hook
if it exists.
Remove static declaration of free_actions.
* tracepoint.h: Add declaration of free_actions.
Tue Feb 10 12:17:13 1998 Fred Fish <fnf@cygnus.com>
* symtab.c (decode_line_1): Revert change that mistakenly
removed assignment of sals[0].pc field.
Mon Feb 10 12:37:47 1998 Philippe De Muyter <phdm@macqel.be>
* m68k/tm-delta68.h (EXTRACT_RETURN_VALUE): Type argument for
`REGISTER_CONVERT_TO_VIRTUAL is `TYPE', not
`REGISTER_VIRTUAL_TYPE (FP0_REGNUM)';
(STORE_RETURN_VALUE): Ditto, and offset for `write_register_bytes'
is `REGISTER_BYTE (FP0_REGNUM)', not `FP0_REGNUM'.
(FRAME_NUM_ARGS): New macro.
* m68k/tm-news.h (EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE): Ditto.
* delta68-nat.c (clear_insn_cache): New function, forgotten in previous
patch.
Mon Feb 9 11:10:06 1998 Andrew Cagney <cagney@b1.cygnus.com>
* d10v-tdep.c: Replace references to IMEM_ADDR and DMEM_ADDR with
D10V_MAKE_[DI]ADDR and D10V_CONVERT_[ID]ADDR_TO_RAW macros.
* config/d10v/tm-d10v.h (IMEM_START): Move to 0x01......
(DMEM_START): Move to 0x00......
(STACK_START): Move to 0x00..7ffe.
(D10V_MAKE_IADDR, D10V_MAKE_DADDR): Translate unconditionally.
* d10v-tdep.c (d10v_xlate_addr): Delete function.
Mon Feb 9 15:10:21 1998 Fred Fish <fnf@cygnus.com>
* symtab.c (fixup_psymbol_section): Move forward declaration to
top of file with other such decls. Make it a static function.
* symtab.h: Minor formatting tweaks.
Mon Feb 9 13:14:12 1998 Stan Shebs <shebs@andros.cygnus.com>
* config/a29k-udi.mt, config/i960/vxworks960.mt (REMOTE_OBS):
Remove redefinition.
* config/i960/tm-i960.h (BREAKPOINT): Define.
Mon Feb 9 15:35:38 1998 Ian Lance Taylor <ian@cygnus.com>
* Makefile.in (init.c): Ignore errors when making init.c. Seems
necessary to work around bug in Solaris make.
Sun Feb 6 02:44:28 1998 Philippe De Muyter <phdm@macqel.be>
* m68k/tm-delta68.h (CPLUS_MARKER): Macro deleted.
(EXTRACT_STRUCT_VALUE_ADDRESS): Macro defined.
(EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE): Macros modified
because floating-point values return via %fp0.
(CLEAR_INSN_CACHE): New macro.
* m68k/tm-m68k.h (REGISTER_CONVERT_TO_VIRTUAL): Macro fixed
to use DOUBLEST.
(REGISTER_CONVERT_TO_RAW): Ditto.
* infptrace.c (child_xfer_memory): If CLEAR_INSN_CACHE is defined,
call it after having written in child process's memory.
* inflow.c (PROCESS_GROUP_TYPE): Macro defined if HAVE_TERMIO.
(gdb_has_a_terminal, terminal_ours_1): Functions fixed for HAVE_TERMIO.
Fri Feb 6 16:17:30 1998 Jeffrey A Law (law@cygnus.com)
* config/mips/tm-mips64.h (TARGET_LONG_BIT): Allow final target to
override.
(TARGET_LONG_LONG_BIT): Likewise.
(TARGET_PTR_BIT): Likewise.
Fri Feb 6 17:42:22 1998 Andrew Cagney <cagney@b1.cygnus.com>
* config/d10v/tm-d10v.h (D10V_CONVERT_IADDR_TO_RAW,
D10V_CONVERT_DADDR_TO_RAW): Define.
* d10v-tdep.c (d10v_push_arguments): Re-write. Pass arguments in
registers, regardless of their size, when they fit.
Thu Feb 5 13:16:36 1998 Andrew Cagney <cagney@b1.cygnus.com>
* d10v-tdep.c (d10v_extract_return_value): For function pointers
translate address to IMAP area.
* config/d10v/tm-d10v.h (EXTRA_FRAME_INFO): Delete dummy from
struct.
(POP_FRAME): Point at generic_pop_current_frame.
* d10v-tdep.c (d10v_pop_frame): Delete code handling dummy frames,
handled earlier.
(d10v_push_return_address): New function.
(d10v_pop_dummy_frame): Delete.
(d10v_fix_call_dummy): Delete.
(d10v_call_dummy_address): Delete.
* d10v-tdep.c (d10v_init_extra_frame_info): Clear dummy and
frameless.
* d10v-tdep.c (d10v_push_arguments): Keep stack word aligned.
* config/d10v/tm-d10v.h (EXTRACT_STRUCT_VALUE_ADDRESS): Extract
address of structure from first ARG1_REGNUM.
* d10v-tdep.c (d10v_push_arguments): Force 4 byte args into
even-odd register pair. Store 1 and 2 byte args in registers.
* valops.c (value_fetch_lazy): Ensure that a D10V function pointer
is fetched in the correct byte order.
(value_at): Ditto. Also ensure data pointers are mapped to data
segment.
* config/d10v/tm-d10v.h (D10V_DADDR_P, D10V_IADDR_P):
* d10v-tdep.c: Replace 2 with REGISTER_RAW_SIZE.
(d10v_pop_frame): Replace R13 with LR_REGNUM.
(d10v_push_arguments): Replace R2 with ARG1_REGNUM.
(d10v_push_arguments): Replace 6 with ARGN_REGNUM.
(d10v_extract_return_value): Access return value with RET1_REGNUM.
* config/d10v/tm-d10v.h (ARG1_REGNUM, ARGN_REGNUM, RET1_REGNUM):
Define.
(STORE_RETURN_VALUE): Specify return register using RET1_REGNUM.
(STORE_STRUCT_RETURN): Specify ARG1_REGNUM as the struct ptr
location.
Thu Feb 5 13:16:36 1998 Andrew Cagney <cagney@b1.cygnus.com>
* blockframe.c (generic_pop_dummy_frame): Flush the frame, no
longer valid.
* blockframe.c (generic_pop_current_frame), frames.h: New
function.
Thu Feb 5 17:18:16 1998 Andrew Cagney <cagney@b1.cygnus.com>
* remote-sim.c (gdbsim_create_inferior): clear_proceed_status
before /re/starting the simulator.
Thu Feb 5 15:55:31 1998 C. M. Heard (heard@vvnet.com)
* top.c (do_nothing): Remove signal handler after signal is caught.
Thu Feb 5 11:57:06 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* tracepoint.c (tracepoint_operation): call free_actions instead
of free. (free_actions): eliminate some memory leaks for actions.
(validate_actionline): pass string arg by reference, so we can
change the pointer. Change all memrange collection arguments to
canonical form (literal address and size), to enforce early
evaluation. Accept UNOP_MEMVAL (assembly variables) for
trace collection. (parse_and_eval_memrange): accept expressions
for the address and size fields of a memrange (and evaluate
them immediately). (several places): use -1 instead of zero
to distinguish an absolute memrange from a register-relative one.
(encode_actions): add handling for UNOP_MEMVAL (assembly variable).
Wed Feb 4 17:40:21 1998 Jason Molenda (crash@bugshack.cygnus.com)
* Makefile.in (SFILES): add tracepoint.c.
(LINTFILES): add @CONFIG_SRCS@.
(SOURCES): Ditto.
* configure.in (CONFIG_SRCS): Mirror use of CONFIG_OBS.
* configure: Regenerated.
Tue Feb 3 16:12:32 1998 Gordon W. Ross (gwr@mc.com)
* infptrace.c (child_resume): Don't try to step if
NO_SINGLE_STEP is defined.
Mon Feb 2 19:06:13 1998 Jason Molenda (crash@bugshack.cygnus.com)
* Makefile.in (VERSION): Bump to 4.16.2.
Mon Feb 2 17:18:25 1998 Richard Henderson <rth@cygnus.com>
* alpha-nat.c (fetch_aout_core_registers): Rename from
fetch_core_registers.
(fetch_elf_core_registers): New function.
(supply_gregset): Use ALPHA_REGSET_BASE.
(supply_fpregset): Likewise.
(fill_fpregset): Likewise.
(alpha_aout_core_fns): Rename from alpha_core_fns.
(alpha_elf_core_fns): New.
* config/alpha/alpha-linux.mh (NATDEPFILES): solib.o not osfsolib.o.
Disable MMALLOC.
* config/alpha/nm-linux.h (SVR4_SHARED_LIBS): Define if ELF.
(TARGET_ELF64): Likewise.
(ALPHA_REGSET_BASE): New.
* config/alpha/nm-osf.h (ALPHA_REGSET_BASE): New.
* config/alpha/tm-alphalinux.h: Include tm-sysv4.h.
* solib.c (elf_locate_base): Add TARGET_ELF64 support.
(info_sharedlibary_command): Likewise.
* configure.host: Match alpha*.
* configure.tgt: Likewise.
Fri Jan 30 15:11:38 1998 David Taylor <taylor@texas.cygnus.com>
Changes by <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>
* infrun.c (IN_SOLIB_DYNSYM_RESOLVE_CODE): new macro for detecting
whether we are in the dynamic symbol resolution code
(wait_for_inferior): invoke it.
* solib.c (in_svr4_dynsym_resolve_code): new function
(enable_break): record start and end of the dynamic linker
text and plt sections for use in in_svr4_dynsym_resolve_code.
* solib.h (IN_SOLIB_DYNSYM_RESOLVE_CODE): add svr4 definition;
(in_svr4_dynsym_resolve_code): declare it.
* config/nm-gnu.h (solib.h): move inclusion to after definition
of SVR4_SHARED_LIBS.
* config/nm-sysv4.h (solib.h): ditto.
* config/i386/nm-i386sco5.h (solib.h): ditto.
* config/i386/nm-linux.h (solib.h): ditto.
* config/mips/nm-irix5.h (IN_SOLIB_DYNSYM_RESOLVE_CODE): undefine.
Thu Jan 29 19:39:31 1998 Stan Shebs <shebs@andros.cygnus.com>
* coffread.c (coff_symtab_read) [SEM]: Remove code, macro can
never be defined.
* dbxread.c (process_one_symbol) [BLOCK_ADDRESS_ABSOLUTE]:
Remove, no longer needed.
* hppa-tdep.c (N_SET_MAGIC): Remove, no longer used.
* config/pa/xm-hppab.h (SEEK_SET, SEEK_CUR, SEEK_END): Ditto.
* config/mips/tm-mipsm3.h (NUMERIC_REG_NAMES): Ditto.
* config/mips/mipsm3.mt (TDEPFILES): Remove mipsread.o.
Wed Jan 28 14:46:52 1998 Stan Shebs <shebs@andros.cygnus.com>
Suggested by Chris Walter <walter@budoe.bu.edu>:
* dwarfread.c (set_cu_language): Recognize Fortran.
* dwarf2read.c (set_cu_language): Ditto.
(read_array_type): Fix language test.
Wed Jan 28 12:51:08 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* blockframe.c (generic_frame_chain_valid): A frame pointer may
be valid if it is equal to the frame pointer of its caller (ie.
not necessarily strictly INNER_THAN). Allows frameless functions.
Wed Jan 28 11:23:25 1998 Mark Alexander <marka@cygnus.com>
* monitor.c (monitor_vsprintf): New function to handle
printing of large addresses using %A format specifier.
(monitor_printf_noecho, monitor_printf): Use monitor_vsprintf
instead of vsprintf.
* dve3900-rom.c (_initialize_r3900_rom): Use %A instead of %Lx
to print addresses.
Tue Jan 27 16:14:23 1998 Jason Molenda (crash@bugshack.cygnus.com)
* configure.in (CONFIG_LDFLAGS): Only add -export-dynamic
when using GNU ld.
Mon Jan 26 19:07:46 1998 Jason Molenda (crash@bugshack.cygnus.com)
* config/alpha/tm-alphalinux.h (alpha_linux_sigtramp_offset):
Add closing parenthesis. From HJ Lu.
Mon Jan 26 17:54:45 1998 Mark Alexander <marka@cygnus.com>
* dve3900-rom.c: Improve performance by using memory commands
that print less fluff. Minor cosmetic changes.
Eliminate compiler warnings.
Sat Jan 24 23:44:43 1998 Martin M. Hunt <hunt@cygnus.com>
* breakpoint.c (enable_breakpoint): Preserve breakpoint
disposition when enabling a breakpoint.
* symtab.c (find_pc_sect_line): If no symbol information
is found, return correct pc anyway.
Fri Jan 23 17:26:22 1998 Stan Shebs <shebs@andros.cygnus.com>
* configure.host (i[3456]86-*-osf1mk*, mips-*-mach3*,
ns32k-*-mach3*): Fix file names.
(i[3456]86-*-os9k, m88*-*-mach3*, w65-*-*): Remove config
recognition, no source files for these.
* configure.tgt (powerpc-*-aix4*): Remove config, now identical
to powerpc-*-aix*.
* config/powerpc/{aix4.mh,aix4.mt,tm-ppc-aix4.h}: Remove files,
no longer needed.
Fri Jan 23 16:49:41 1998 Mark Alexander <marka@cygnus.com>
* monitor.c (monitor_write, monitor_readchar): New functions.
* monitor.h (monitor_write, monitor_readchar): Declare.
* dve3900-rom.c: Add support for fast loading on ethernet connections.
Fri Jan 23 07:47:06 1998 Fred Fish <fnf@cygnus.com>
* config/d10v/tm-d10v.h (CALL_DUMMY): Define as "{ 0 }".
(TARGET_READ_FP): Define to d10v_read_fp rather than d10v_read_sp.
(TARGET_WRITE_FP): Define to d10v_write_fp rather than d10v_write_sp.
(d10v_write_fp, d10v_read_fp): Add prototypes.
* symtab.c (decode_line_1): Remove assignment of sals[0].pc field.
* symfile.c (simple_overlay_update, simple_overlay_update_1):
Ignore the size of overlay sections. This check is redundant anyway.
* printcmd.c (print_frame_args): Ditto.
* valops.c (value_fetch_lazy): Ditto.
* values.c (unpack_long): Ditto.
* d10v-tdep.c (d10v_frame_chain, d10v_frame_find_saved_regs,
d10v_init_extra_frame_info): Fix some minor bugs so the finish command
works properly.
(show_regs): Change num1 and num2 types from "long long" to "LONGEST".
(d10v_read_fp, d10v_write_fp): New functions.
(d10v_push_arguments): Remove unneeded assigns to "val" and "contents".
(d10v_push_arguments): Fix for pointers and structs.
(d10v_extract_return_value): Fix for pointers and chars.
Tue Jan 20 18:53:18 1998 Stan Shebs <shebs@andros.cygnus.com>
* configure.tgt (i386-*-mach*, m88*-*-mach3*): Remove config
recognition, no source files for these (note that the i386 Mach
config is for pre-Mach 3).
(mips*-*-mach3*, ns32k-*-mach3*): Fix file names.
* config/mips/mipsel64.mt: Remove, never referenced.
Mon Jan 19 14:01:28 1998 Stan Shebs <shebs@andros.cygnus.com>
* top.c (print_gdb_version): Restore to original message.
Mon Jan 19 13:34:40 1998 Ian Lance Taylor <ian@cygnus.com>
From cgf@bbc.com (Chris Faylor):
* win32-nat.c (child_mourn_inferior): Call ContinueDebugEvent to
let the child exit.
(child_kill_inferior): Respond to all debug events as the child is
terminating.
* Makefile.in (all): Change gdb dependency to gdb$(EXEEXT).
(uninstall): Add $(EXEEXT) to file name to remove.
(gdb$(EXEEXT)): Rename target from plain gdb.
(gdb1$(EXEEXT)): Rename target from plain gdb1.
(clean, mostlyclean): Add $(EXEEXT) to binary names to remove.
1998-01-16 Felix Lee <flee@cygnus.com>
* top.c (print_gdb_version): delete stutter.
Thu Jan 15 12:29:13 1998 Nick Clifton <nickc@cygnus.com>
* remote-rdi.c (arm_rdi_open): Patch from Tony.Thompson@arm.com
to prevent spurous error messages on non-ICE targets.
Wed Jan 14 19:27:02 1998 Stan Shebs <shebs@andros.cygnus.com>
* config/mips/{r3900.mt,r3900l.mt,tm-r3900.h,tm-r3900l.h}:
Remove, no longer used.
Wed Jan 14 18:11:26 1998 Michael Meissner <meissner@cygnus.com>
Patch from Jim Wilson.
* d30v-tdep.c (d30v_frame_find_saved_regs_offsets): Properly
declare void function before use.
* config/d30v/tm-d30v.h (CALL_DUMMY): Initialize as { 0 }, not {}.
Tue Jan 13 16:38:48 1998 Fred Fish <fnf@cygnus.com>
* configure.in (--with-mmalloc): Add new configure arg to use the
mmalloc package. Default is to not use it.
(START_INFERIOR_TRAPS_EXPECTED): Define to the integer 2, not
the string "2".
* acconfig.h (USE_MMALLOC, FORCE_MMCHECK): Add #undef.
* configure: Regenerated.
* config.in: Regenerated.
* Makefile.in (MMALLOC_DIR, MMALLOC_SRC): Remove.
(MMALLOC): Set using configure.
(MMALLOC_CFLAGS): Set using configure.
* config/i386/tm-linux.h (sys_quotactl): Define to 1 rather
than just defining it.
* mpw-make.sed: Undefine USE_MMALLOC rather than defining NO_MMALLOC.
* utils.c (NO_MMALLOC): Use USE_MMALLOC instead.
* objfiles.c: ditto.
* defs.h: ditto.
* config/sparc/sun4os4.mh (MMALLOC_CFLAGS): Remove.
* config/m68k/sun3os4.mh (MMALLOC_CFLAGS): Remove.
* config/i386/cygwin32.mh (MMALLOC_CFLAGS): Remove.
* config/alpha/alpha-osf3.mh (MMALLOC_CFLAGS): Remove.
* config/alpha/alpha-osf2.mh (MMALLOC_CFLAGS): Remove.
* gdbserver/Makefile.in (MMALLOC_*): Remove.
* config/rs6000/rs6000.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/rs6000/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/powerpc/aix4.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/powerpc/aix.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/ns32k/ns32km3.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/mips/mipsm3.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/mips/decstation.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/m88k/cxux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/i386/xm-windows.h (NO_MMALLOC, NO_MMCHECK): Remove.
* config/i386/i386mk.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/i386/i386m3.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/i386/i386gnu.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/alpha/alpha-osf1.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
* config/alpha/alpha-linux.mh (MMALLOC, MMALLOC_CFLAGS): Remove.
Mon Jan 12 11:46:51 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* config/m68k/tm-m68k.h (REGISTER_VIRTUAL_TYPE): make A0 thru A7
default to void pointer type (so that their default radix is hex).
* symtab.c: move rbreak_command from no_class to class_breakpoint
so it will be listed under "help breakpoints".
Sat Jan 10 14:58:04 1998 Stan Shebs <shebs@andros.cygnus.com>
* rdi-share/hostchan.c: Remove gettimeofday declaration.
Thu Jan 8 11:03:59 1998 Nick Clifton <nickc@cygnus.com>
* remote-rdp.c: Applied patches submitted by Tony.Thompson@arm.com
to implement the Angel remote debugging interface.
* Makefile.in: Add build rules for remote-rdi.c and
rdi-share/libangsd.a.
* configure.tgt: Updated from source on branch.
* config/arm/tm-arm.h: Updated from source on branch.
* arm-tdep.c: Updated from source on branch.
* rdi-share: New directory, RDI library contributed by ARM.
Mon Jan 5 20:21:59 1998 Mark Alexander <marka@cygnus.com>
* monitor.h (MO_PRINT_PROGRAM_OUTPUT): Define.
* monitor.c (monitor_wait): Echo program output.
* dve3900-rom.c (_initialize_r3900_rom): Remove MO_HANDLE_NL flag,
add MO_PRINT_PROGRAM_OUTPUT flag.
Mon Jan 5 18:21:11 1998 David Taylor <taylor@texas.cygnus.com>
* top.h (HAVE_SIGSETJMP): define SIGJMP_BUF, SIGSETJMP, and
SIGLONGJMP appropriately based on whether HAVE_SIGSETJMP is
defined.
* top.c (return_to_top_level, catch_errors): use the new macros
* main.c (SET_TOP_LEVEL): ditto.
* config/xm-sysv4.h (HAVE_SIGSETJMP): Define.
Fri Jan 2 18:48:58 1998 Mark Alexander <marka@cygnus.com>
* configure.in: Double up brackets in shell case pattern.
Fri Jan 2 17:06:05 1998 Michael Snyder (msnyder@cleaver.cygnus.com)
* tracepoint.c (finish_tfind_command): improved algorithm for
deciding when we've "stepped" into a new stack frame.
(map_args_over_tracepoints): loop over tracepoint list "safely",
since list elements may be deleted during loop.
(read_actions): add actions to history list.
For older changes see ChangeLog-1997
Local Variables:
mode: change-log
left-margin: 8
fill-column: 74
version-control: never
End:
|