libffi-sys 4.1.0

Raw Rust bindings for libffi
Documentation
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
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
14531
14532
14533
14534
14535
14536
14537
14538
14539
14540
14541
14542
14543
14544
14545
14546
14547
14548
14549
14550
14551
14552
14553
14554
14555
14556
14557
14558
14559
14560
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
14576
14577
14578
14579
14580
14581
14582
14583
14584
14585
14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
14621
14622
14623
14624
14625
14626
14627
14628
14629
14630
14631
14632
14633
14634
14635
14636
14637
14638
14639
14640
14641
14642
14643
14644
14645
14646
14647
14648
14649
14650
14651
14652
14653
14654
14655
14656
14657
14658
14659
14660
14661
14662
14663
14664
14665
14666
14667
14668
14669
14670
14671
14672
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
14688
14689
14690
14691
14692
14693
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
14745
14746
14747
14748
14749
14750
14751
14752
14753
14754
14755
14756
14757
14758
14759
14760
14761
14762
14763
14764
14765
14766
14767
14768
14769
14770
14771
14772
14773
14774
14775
14776
14777
14778
14779
14780
14781
14782
14783
14784
14785
14786
14787
14788
14789
14790
14791
14792
14793
14794
14795
14796
14797
14798
14799
14800
14801
14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
14818
14819
14820
14821
14822
14823
14824
14825
14826
14827
14828
14829
14830
14831
14832
14833
14834
14835
14836
14837
14838
14839
14840
14841
14842
14843
14844
14845
14846
14847
14848
14849
14850
14851
14852
14853
14854
14855
14856
14857
14858
14859
14860
14861
14862
14863
14864
14865
14866
14867
14868
14869
14870
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
15236
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
15286
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
15343
15344
15345
15346
15347
15348
15349
15350
15351
15352
15353
15354
15355
15356
15357
15358
15359
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
15604
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
16320
16321
16322
16323
16324
16325
16326
16327
16328
16329
16330
16331
16332
16333
16334
16335
16336
commit e2eda0cf72a0598b44278cc91860ea402273fa29
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Aug 2 08:56:01 2025 +0200

    feat: Update libffi version to 3.5.2 with wasm64 and DragonFly BSD support

commit b53b0042c2637162ba8ea55f382264a0841359a7
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Aug 2 08:52:25 2025 +0200

    Fix for systems without O_CLOEXEC

commit 20eacb22e9e9cdd6402cb75278dede2b36051e53
Author: Kohei Tokunaga <43872416+ktock@users.noreply.github.com>
Date:   Sat Aug 2 15:28:46 2025 +0900

    Emscripten: Add wasm64 target (#927)
    
    * src/wasm32: Allow building with Emscripten with 64bit support
    
    MEMORY64 enables 64bit pointers so this commit updates the accessors for the
    libffi data structures accordingly.
    
    Each JS functions in ffi.c receives pointers as BigInt (i64) values and with
    casts them to Numer (i53) using bigintToI53Checked. While memory64 supports
    64bit addressing, the maximum memory size is currently limited to 16GiB
    [1]. Therefore, we can assume that the passed pointers are within the
    Number's range.
    
    [1] https://webassembly.github.io/memory64/js-api/#limits
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * Add wasm64 target to the build scripts
    
    This commit adds support for the wasm64 target via the configure
    script. Emscripten supports two modes of the -sMEMORY64 flag[1] so the
    script allows users specifying the value through a configuration variable.
    
    Additionally, "src/wasm32" directory has been renamed to the more generic
    "src/wasm" because it's now shared between both 32bit and 64bit builds.
    
    [1] https://emscripten.org/docs/tools_reference/settings_reference.html#memory64
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * GitHub Actions: Add wasm64 tests
    
    This commit adds a test matrix for wasm32, wasm64 and wasm64 with the
    -sMEMORY64=2 flag, using the latest version of Emscripten. -Wno-main is
    added to suppress the following warning in unwindtest.cc and
    unwindtest_ffi_call.cc.
    
    > FAIL: libffi.closures/unwindtest_ffi_call.cc -W -Wall -O2 (test for excess errors)
    > Excess errors:
    > ./libffi.closures/unwindtest_ffi_call.cc:20:5: warning: 'main' should not be 'extern "C"' [-Wmain]
    >    20 | int main (void)
    >       |     ^
    > 1 warning generated.
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * testsuite: Fix types of main function
    
    test_libffi.py calls each test's main function without arguments, but some
    tests define the main function with parameters. This signature mismatch
    causes a runtime error with the recent version of Emscripten.
    
    This commit resolves this issue by updating the function signatures to match
    the way they are called.
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    * README: Add document about WASM64
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>
    
    ---------
    
    Signed-off-by: Kohei Tokunaga <ktokunaga.mail@gmail.com>

commit b7885ace59999564aec38c812156093cf0bfac02
Author: Weitian LI <liweitianux@live.com>
Date:   Sat Aug 2 14:27:51 2025 +0800

    fix: enable FFI_MMAP_EXEC_WRIT for DragonFly BSD (#930)
    
    Similar to PR #265 [1], we need to enable FFI_MMAP_EXEC_WRIT to use
    explicit write+exec mapping on DragonFly BSD.
    
    Without this fix, we were having segfaults with Meld [2]; it would crash
    with SIGSEGV after 5 diff operations.  The crash was caused by it
    attempting to execute code from non-execute memory region.  Moreover, if
    we set the `machdep.pmap_nx_enable=2` tunable (i.e., strict NX mode),
    Meld would crash upon the first diff operation.
    
    Fix the `configure.ac` script to enable `FFI_MMAP_EXEC_WRIT` for
    DragonFly BSD.  In addition, add it to the supported platforms table.
    
    [1] https://github.com/libffi/libffi/pull/265
    [2] https://meldmerge.org/

commit 60671187688ae3b295ab0e1dd77a8d6dd7a805a2
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 11 03:17:18 2025 -0400

    fix(tramp): ensure file descriptor is closed on exec.  Thanks to Florian Weimer.
    
    c# Please enter the commit message for your changes. Lines starting

commit d0f831bca60ea74b55a3155b929f195a971a3cac
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 21 16:05:31 2025 -0400

    feat: add QUESTION to .gail-labels

commit e28a0d5b0708ade04979e2a1d5c2a2d3acc749ec
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 10 16:17:58 2025 -0400

    ci: add fail-if-no-assets option in tarball workflow

commit 90220e51bcb2040d24b1f06581f0805a3091acda
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 10 16:03:47 2025 -0400

    Update version.

commit 330467d55c5f983d16cb2b03703a149db21d07ce
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 10 16:01:56 2025 -0400

    Move new symbols to new symbol versioning.

commit 517310ddbf7046a743af035ce61f2b304802bd00
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 19:03:49 2025 -0400

    ci: update compiler versions in github workflow

commit d994395ce74026f67b50957e6ce899e8ddbe5028
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 18:43:40 2025 -0400

    ci: update gcc version to 15 in build process

commit 26d7be77cc151acb458ef84f66859ef5300ce432
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 18:23:15 2025 -0400

    ci: update build.sh for Linux build process

commit a18d4e95d39d4b2b155abdea4ff1ac0006c12a6f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:35:29 2025 -0400

    feat(.github/workflows): add step to wipe old snapshot assets in tarball.yml

commit b9b837855666636645bd3e00ce60d082ad8cc713
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:29:03 2025 -0400

    fix(github-actions): correct regex in version extraction

commit 7ac6f14591d174a314bf45a8b02d136525cd86f9
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:08:02 2025 -0400

    ci: change packages installed during workflow

commit ceab352dfa55745ab058a289e59faee925508d10
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 13:01:50 2025 -0400

    ci: add installation of necessary tools to tarball workflow

commit 1f73aa507ed8e8bc49864c99ff21d82dd454cb55
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:56:19 2025 -0400

    refactor(.github/workflows/tarball): remove repeated job blocks

commit 7f5375d7c75805d02f95516875107e9eb345ae8c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:55:09 2025 -0400

    chore(workflows): update snapshot release description in tarball.yml

commit 2a5195bb2a633f7c9cc3b787d16ddb940c2a719d
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:54:55 2025 -0400

    chore(.github/workflows): update tarball.yml indentation

commit 2f535b8f747eea5c3336ecf20a3ecc9c0d523f62
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:52:43 2025 -0400

    chore(ci): update tarball workflow in GitHub Actions

commit 172bfb41f4f27cac939537e907106ef37abae701
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 12:22:35 2025 -0400

    chore(.github/workflows): update tarball workflow to use softprops/action-gh-release

commit 0947743f691bbd9d034a8ebe178ca8cb81e7fcd7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 11:53:15 2025 -0400

    Make tarballs (#924)
    
    * Create tarballs in CI

commit a46977da5056cc7f23eee6db544d88cd5a88b9f4
Author: Kleis Auke Wolthuizen <github@kleisauke.nl>
Date:   Mon Jun 9 15:55:02 2025 +0200

    Downgrade Autoconf requirement to version 2.68 (#922)
    
    * Downgrade Autoconf requirement to version 2.68
    
    * CI: remove redundant Autoconf install scripts

commit 40a76827051bde95e20cc4edeba31a353c074321
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 9 09:49:00 2025 -0400

    Improve CI test coverage (#923)
    
    Add CI testing on Windows with both gcc and clang.

commit 64a42f618dcd555920756e84b0c8bfcec358c32e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 16:59:58 2025 -0400

    More CI testing (#921)
    
    * ci: add new build configuration in GitHub Actions
    
    * ci: add Windows clang build workflow
    
    * ci: add additional packages to GitHub workflows build
    
    * ci: optimize build workflow and improve commenting
    
    * ci: remove unused MSVC dev command from build workflow
    
    * ci: modify build workflow to support multiple compilers
    
    * build(github-actions): use matrix.compiler for CC and CXX variables

commit d2c78d2ebbd9e65401095c6a2f281fe5132f028b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 08:16:42 2025 -0400

    feat(testsuite): exclude wasm from pthreads testing in libffi

commit 668e2162e8185c007c3876c0de6723fb56aee0a1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 08:00:36 2025 -0400

    refactor(threads): don't run tests on windows

commit 5be311bed5e93305ed3f31bd29bcdcfe4baaa00c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:56:37 2025 -0400

    refactor: add POSIX barriers to libffi.threads testsuite

commit 70b34efece027faa843520709b300242e0526154
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:53:00 2025 -0400

    feat(testsuite): add -lpthread flag for wasm32 targets

commit f530522ce48922178b25af9b5467cacc41c21de6
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:52:25 2025 -0400

    chore: disable color diagnostics in libffi tests

commit 5fd812149e4740346341c1c9a8c355cc05f411c3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:47:04 2025 -0400

    chore: update documentation date and add test files to Makefile

commit a5d465029ce1ffce4860c75c2aa3fa0d1a8e18be
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:40:39 2025 -0400

    feat(testsuite): add new threading tests to libffi test suite

commit 074c423f86b30fa895f391230bdbedf076053fa3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 07:30:54 2025 -0400

    feat: Add ffi_get_default_abi and ffi_get_closure_size functions

commit b14d43793a83aabe79cae4ac6a39b6183f25c8aa
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 06:53:12 2025 -0400

    Update version

commit c8225fb03db49dfa04403a28091ab99b0998fffe
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 06:51:58 2025 -0400

    chore: update libffi version to 3.5.0

commit cb424c6d41401bb93c59a553849d32c34bfff765
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 8 06:50:47 2025 -0400

    docs: Update README with release details for version 3.5.0

commit 8b0eab28cb45c6862b30f5cadfc1a7fe996b072c
Author: JupiterRider <60042618+JupiterRider@users.noreply.github.com>
Date:   Sun Jun 8 12:16:38 2025 +0200

    Update License date and improve rcedit DLL metadata (#919)
    
    * rcedit add architecture and original filename
    
    * Update LICENSE to 2025

commit 8b30fe51d46ad29608d928c9920ca69f93394092
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:51:52 2025 -0400

    ci: add user configuration for DejaGNU tests in ppc64le container

commit 58f9179009b61ff563279fcd6ea489eda94b5260
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:48:41 2025 -0400

    ci: add diffutils and gawk to ppc64le container dependencies

commit d796b1ba066358f57e02a2337e3c1451ba900016
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:47:04 2025 -0400

    feat(.ci): add libtool to ppc64le container setup

commit 024cbc252c534419573ea775706c8b272e7159ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 7 08:35:15 2025 -0400

    feat(.ci): add Containerfile for ppc64le architecture

commit e3cbebffcc397ce2121a32887ffbc06070a3c024
Author: JupiterRider <60042618+JupiterRider@users.noreply.github.com>
Date:   Fri Jun 6 22:40:40 2025 +0200

    use rcedit to add metainfo to DLL (#918)
    
    * use rcedit to add metainfo to DLL
    
    * remove trailing backslash in build.yml
    
    * build.yml: add rcedit execute permission
    
    * build.yml: cd to the right directory

commit 9bb21f1d291235c7aa2627b1175b4a085858396c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 6 13:48:25 2025 -0400

    fix: correct path in LDFLAGS line of build.yml workflow

commit c2ae66fc45dbfc18afe1244663bb5d97937c7976
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 6 13:41:56 2025 -0400

    fix(build): change version.o to version.obj in build.yml

commit d326a4c025a379ea590a9926a55bd39dcc8d9ae3
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 09:35:47 2025 -0400

    refactor: simplify versioning in .github/workflows/build.yml

commit d241e510196393c4ec8a7a8f1e456d2695802ff6
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 09:22:10 2025 -0400

    chore(build): update build script to use object file for versioning

commit c07b0c4ddc99d6be9d3d4fbe2c39ca86e9af4dc4
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 08:52:41 2025 -0400

    fix(github workflows): correct LDFLAGS path in build.yml

commit ec22d0fe7bd9db7629a7540a7ba12a2ec6a28889
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 08:44:36 2025 -0400

    build(.github/workflows): include build number in version info

commit e133ee847de50b710072aae1a478208c0a56c8f9
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 07:42:52 2025 -0400

    chore(build): add command to log version information in build script

commit c8d929fc45bae3192666c06b1c83e53afe7e639d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 07:33:57 2025 -0400

    ci: add version logging in build workflow

commit d6029210d795258c99e0606753556060d233109e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 07:11:43 2025 -0400

    ci: refactor version retrieval in build workflow

commit 49c70cab94981600b471a480048f497fccf03239
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:57:20 2025 -0400

    fix(build): correct variables for FILEVERSION and PRODUCTVERSION

commit 27f93a7038925797eaca6dea34375fd1b9909307
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:50:12 2025 -0400

    feat(build): add version information resource to build script and update documentation version

commit 1b6b176a289d923e7cf4c19f17eeadac67c5bd02
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:17:56 2025 -0400

    Update README.md to mention SH targets

commit bac99f2f3f3c7b368cd304d14188e473975e129f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 5 06:12:10 2025 -0400

    Release candidate 1 for 3.5.0.  Windows build fixes. (#916)
    
    * refactor(ci): improve wget retry logic in .ci/install.sh
    
    * build(github-actions): use static runtime library in build
    
    * refactor(ffi.h.in): export version API
    
    * chore: update libffi version to 3.5.0-rc1

commit 3c54639eb81b68115f6ff3dcc562857d67d4136d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 19:20:37 2025 -0400

    refactor(ci): improve wget retry logic in .ci/install.sh (#915)

commit d6b1f3423278f52cf01f4ddc24b432a0875fbb00
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 11:24:11 2025 -0400

    refactor: move and modify unix-noexec.exp and site.exp files

commit d38abaf9db7cb4f9ddd8a18083f0d1f86a8c3312
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 07:57:21 2025 -0400

    feat(testsuite): add Emscripten support to libffi.closures tests

commit 2d8868ace7419b377587adf6b63fb276411931dd
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 4 07:04:53 2025 -0400

    Update generate-darwin-source-and-headers.py (#914)

commit 5ad529fb0dabeec863bec8d6c5f6b3502b45d6c1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 3 19:12:49 2025 -0400

    Many CI testing fixes and improvements. (#913)

commit 2529b40dbd9b5d1c5bff8123dfc7568635f5c900
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:42:47 2025 -0400

    chore: update version to 3.5.0-rc0 in documentation and configuration files

commit 3ee0dc41b681814e3789867d7d4ff31b6fd9ab99
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:41:27 2025 -0400

    chore: update version to 3.5.0-pre0 in version.texi

commit 55d84b0cb9e2561bfbbb4c8a7d3e731a45543c76
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:40:44 2025 -0400

    docs: update README with new libffi release information

commit 854ce7be85da6ab571b2f73390be20f57c5afc9b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 2 20:18:46 2025 -0400

    Make 3.5.0-pre0 release. Build and publish Windows binaries. Clean up testing. (#912)
    
    This commit removes many platforms from the testing workflow.
    They will be added back in future commits.

commit 022929b1fc06082389862816f08308f222de9389
Author: JupiterRider <60042618+JupiterRider@users.noreply.github.com>
Date:   Sun Jun 1 13:30:51 2025 +0200

    doc now shows the correct calculation for version number (#911)

commit dcc9e93b8ab1990ae0b598d083e19b6c47eb89cc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed May 28 14:32:02 2025 -0400

    Add Issue labeler Action

commit 9ee7341dbaec04d8c79685fb55703fc9453d0e55
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:19:32 2025 -0400

    feat(README): add details for next version release in history section

commit 4094362f545cdfe07f65b00c8c0db82b9b96b34b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:19:15 2025 -0400

    refactor: enhance assembler pseudo-ops and compiler flag checking

commit be4e59e3990142905bb55ffe94950f0f2201cde5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:19:00 2025 -0400

    chore: update version to 3.5.0 and libtool version to 10:0:2

commit dc9b1332f7b74513a24c87051fa8334e7b461074
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:18:40 2025 -0400

    chore: update Makefile.am configurations

commit c9a3a06f9be8f32da3eac132ff6754ec74feb42a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 26 08:18:13 2025 -0400

    feat(libffi): upgrade to version 3.5.0 and add version API

commit 64d5e122f747c9b761b311f85cfc5d99c02fe959
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 25 16:09:59 2025 -0400

    docs: update required installations in README.md

commit 5b253476d10e12291e96671ff5bf275737928ffd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 25 13:33:51 2025 -0400

    chore(testsuite): remove mingw64-align.c from Makefile and delete file

commit f9c60855da770a8465ad0fe7149ad86d1a6f900b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 24 08:11:37 2025 -0400

    Add custom github issue labels for gail

commit c6f1610509d3d146017d6cc30020ce334bde8425
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 27 08:59:12 2025 -0400

    feat(testsuite): add mingw64-align.c to test alignment in structs

commit 571177adcb2b604739a0432b7392f1b83294decf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 27 08:30:35 2025 -0400

    feat(testsuite): add longjmp test to Makefile and implement longjmp test code

commit 562cb53b5ddc97020291927d47823f210c5f3486
Author: David Tenty <daltenty@ibm.com>
Date:   Fri Apr 25 05:07:57 2025 -0400

    Add initializer (#904)

commit aea22de28ec92a69cab9198de479263fe8b1a637
Author: Peter Bergner <bergner@linux.ibm.com>
Date:   Fri Apr 18 10:09:45 2025 -0500

    powerpc: Fix closures on powerpc64-linux when statically linking (#900) (#902)
    
    Closures on powerpc64-linux using static trampolines do not work when
    statically linking libffi.  The problem is the usage of tramp_globals.text
    in libffi assumes it contains the entry point address of the first trampoline.
    Powerpc's ffi_tramp_arch code returns &trampoline_code_table which for ABIs
    that use function descriptors, ends up returning trampoline_code_table's
    function descriptor address instead of its entry point address.  Update
    the code to always return the entry point address for all ABIs.

commit a431b47822f06e3f16b2e16f3163fd209ac56b5f
Author: Sam James <sam@gentoo.org>
Date:   Tue Apr 15 10:30:27 2025 +0100

    pa: add .note.GNU-stack marker to linux.S (#899)
    
    Similarly to f515eac04cf8e5f594d5d9dee5fb7dfc3a186a4c, add a .note.GNU-stack
    marker to pa/linux.S as it doesn't need an executable stack. Absence of the
    note means that GNU Binutils will consider it as needing an executable stack
    and mark it as such automatically.
    
    When building libffi on HPPA with `-Wl,--warn-warn-execstack`, we get:
    ```
    ld: warning: src/pa/.libs/linux.o: missing .note.GNU-stack section implies executable stack
    ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
    ```
    
    That becomes more problematic with glibc-2.41 which forbids dlopen()
    of a library with an executable stack, and libffi is commonly dlopen()'d,
    especially by Python.
    
    I suspect the reason it didn't show up on Debian is that since February,
    Debian has been building Binutils with --disable-default-execstack.
    
    Bug: https://bugs.gentoo.org/953805
    Bug: https://github.com/libffi/libffi/issues/898

commit 6a99edb8082f75e523e0d6ebaba42218b80e10c8
Author: Sam James <sam@gentoo.org>
Date:   Thu Apr 10 03:44:45 2025 +0100

    testsuite: add two tests to Makefile.am (#893)
    
    * Add libffi.call/overread.c and libffi.call/x32.c to Makefile.am
      so they're included in dist tarballs
    
    * Fix indentation and rewrap

commit bfb5b005a08239c751db667f68a67aeb72a9b9ff
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 9 10:32:42 2025 -0400

    feat: Update version of libffi to 3.4.8 with various fixes and enhancements

commit 3429ed6b9414dfbe9d9da7609ab043291a01a148
Author: Peter Bergner <bergner@linux.ibm.com>
Date:   Tue Apr 8 05:52:37 2025 -0500

    powerpc: Add static trampoline support (#894) (#895)
    
    Add static trampoline support to all three powerpc Linux ABIs, specifically
    powerpc-linux (32-bit SYSV BE), powerpc64-linux (64-bit ELFv1 BE) and
    powerpc64le-linux (64-bit ELFv2 LE).  This follows the s390x implementation
    and does not introduce a ffi_closure_*_alt function, but rather jumps
    directly to the ffi_closure_* function itself.  If compiling with
    --with-gcc-arch=power10 and pc-relative is enabled, we use a simpler and
    smaller trampoline that utilizes Power10's new pc-relative load instructions.

commit bb1a84ed9772ee65e00762dab1c4ae50100d5a27
Author: mikulas-patocka <94898783+mikulas-patocka@users.noreply.github.com>
Date:   Sun Mar 30 12:07:59 2025 +0200

    Add the "ABI_ATTR" attribute to called functions (#891) (#892)
    
    I accidentally omitted the "ABI_ATTR" attribute, so that the testsuite
    fails when testing the Microsoft ABI.
    
    Fixes: fe203ffbb2bd ("Fix bugs in the x86-64 and x32 target (#887) (#889)")
    
    Signed-off-by: Mikulas Patocka <mikulas@twibright.com>

commit fe203ffbb2bd7f93a86013d341aa767a406150bc
Author: mikulas-patocka <94898783+mikulas-patocka@users.noreply.github.com>
Date:   Thu Mar 27 01:31:49 2025 +0100

    Fix bugs in the x86-64 and x32 target (#887) (#889)
    
    This commit fixes two bugs in ffi in the x86-64 target. The bugs were
    introduced by the commit d21881f55ed4a44d464c9091871e69b0bb47611a ("Fix
    x86/ffi64 calls with 6 gp and some sse registers").
    
    The first bug is that when we pass an argument with less than 8 bytes,
    ffi will read memory beyond argument end, causing a crash if the argument
    is located just before the end of the mapped region.
    
    The second bug is in the x32 ABI - pointers in x32 are 4-byte, but GCC
    assumes that the pointer values in the registers are zero-extended. ffi
    doesn't respect this assumption, causing crashes in the called library.
    
    For example, when we compile this function for x32:
    int fn(int *a)
    {
            if (a)
                    return *a;
            return -1;
    }
    we get this code:
    fn:
            testq   %rdi, %rdi
            je      .L3
            movl    (%edi), %eax
            ret
    .L3:
            movl    $-1, %eax
            ret
    When we call this function using ffi with the argument NULL, the function
    crashes because top 4 bytes of the RDI register are not cleared.
    
    
    Fixes: d21881f55ed4 ("Fix x86/ffi64 calls with 6 gp and some sse registers (#848)")
    
    Signed-off-by: Mikulas Patocka <mikulas@twibright.com>

commit cf69efabcaefcb6803f6cefd970741d10c17cec1
Author: Nikita Samusev <127026067+Nikitf777@users.noreply.github.com>
Date:   Sat Mar 8 14:41:02 2025 +0300

    Update the Simple Example to fix a compile error (#886)
    
    Fixes the following error:
    candidate function not viable: no known conversion from 'int (const char *)' to 'void (*)()' for 2nd argument

commit 89c99d738fd564da61b7ec70ab08fede475ba351
Author: fossdd <fossdd@pwned.life>
Date:   Fri Feb 28 22:10:10 2025 +0100

    MIPS: Dont import asm/sgidefs.h on linux (#885)
    
    Removed from Linux since Linux 3.7
    
    Ref: https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=61730c538f8281efa7ac12596da9f3f9a31b9272

commit 5ceddf4071e8bce3bdb20f8795d57d5ef0bc5503
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Thu Feb 20 04:25:21 2025 -0600

    aarch64: add PAC to GNU Notes (#882)
    
    While PAC was enabled, the bit to indicate support in the GNU Notes
    section of the ELF was missing.
    
    Before:
    readelf -n ./aarch64-unknown-linux-gnu/.libs/libffi.so
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI
    
    This was caused by this file not having PAC indicated in GNU Notes and
    the linker discarding it:
    File: ./aarch64-unknown-linux-gnu/src/aarch64/sysv.o
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI
    
    Now it has it:
    File: ./aarch64-unknown-linux-gnu/src/aarch64/sysv.o
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI, PAC
    
    As well as the output shared object:
    readelf -n ./aarch64-unknown-linux-gnu/.libs/libffi.so
    
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI, PAC
    
    Fixes: #881
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit 1716f81e9a115d340429504563bc8e7fb2eeef2b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 8 11:32:05 2025 -0500

    feat: remove nios2 support
    
    Acked-by: Anthony Green <green@moxielogic.com>

commit 252c0f463641e6100169c3f0a4a590d7df438278
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 8 09:37:31 2025 -0500

    chore: Bump version to 3.4.7 and update change log

commit adfe4489c17b542216a502efaaf6b0156e2197ab
Author: Kleis Auke Wolthuizen <github@kleisauke.nl>
Date:   Fri Jan 31 21:41:56 2025 +0100

    Emscripten: remove support for `-sWASM_BIGINT=0` (#874)
    
    * Emscripten: cleanup
    
    * Emscripten: remove support for `-sWASM_BIGINT=0`
    
    * Emscripten: remove redundant CircleCI config
    
    * Emscripten: modernize CI
    
    * Ensure test helper methods are static
    
    Similar to #644.
    
    * Fix test failures in `cls_multi_{s,u}shortchar`

commit 2f34cf639cab60123a7725fc9488657766ba665d
Author: Matthew Flatt <mflatt@cs.utah.edu>
Date:   Fri Jan 31 13:40:40 2025 -0700

    x86 Darwin returns structs of size 1, 2, 4, and 8 in registers (#876)

commit a0d8074a672312dbc757320d8bc42e39aa5b3d9a
Author: zye2-sc <140619768+zye2-sc@users.noreply.github.com>
Date:   Fri Jan 31 21:40:00 2025 +0100

    Disable go closures on Android (#877)
    
    * x18 register shouldn't be used on Android due to the shadow call stack feature in llvm
    * https://source.android.com/docs/security/test/shadow-call-stack

commit d77b9fefa25f7f11dcc4e6380c661c4cf2960a85
Author: 杨萧玉 <yulingtianxia@users.noreply.github.com>
Date:   Fri Dec 13 18:38:01 2024 +0800

    Fix config.sub on Apple platforms (#860)
    
    * update config.sub
    
    * update config.sub

commit 593cb01a46e63d5361f2df803947cb657bb4e822
Author: Satadru Pramanik, DO, MPH, MEng <satadru@gmail.com>
Date:   Fri Dec 13 05:37:15 2024 -0500

    Add mold linker to linker checks. (#866)
    
    Signed-off-by: Satadru Pramanik <satadru@gmail.com>

commit f515eac04cf8e5f594d5d9dee5fb7dfc3a186a4c
Author: Icenowy Zheng <uwu@icenowy.me>
Date:   Fri Dec 13 18:36:02 2024 +0800

    MIPS: add .note.GNU-stack section to assembly sources (#872)
    
    To build ELF shared libraries that do not require executable stack on
    MIPS, every object file linked should have a .note.GNU-stack section,
    otherwise the linker defaults to executable stack.
    
    As libffi shouldn't require executable stack, add the .note.GNU-stack
    section to the assembly source files under src/mips, like other
    architectures.
    
    Signed-off-by: Icenowy Zheng <uwu@icenowy.me>

commit 458b2ae2829f1916ea3a3e07c944b4668732290f
Author: Eddy S. <fneddy@users.noreply.github.com>
Date:   Sat Nov 16 13:03:24 2024 +0100

    Add static trampoline support for s390 (#862)
    
    * added static trampoline support for s390
    
    * enable static tramp only for  s390x 64bit

commit 0859f8431242d5adff21420b9cab538d2af527b5
Author: Joseph Myers <jsm@polyomino.org.uk>
Date:   Thu Oct 24 18:26:58 2024 +0000

    Fix testsuite for C23 `va_start` (#861)
    
    In the C23 revision of the C standard, `va_start` ignores its second
    argument, which is no longer required (previously the last named
    function parameter - which the compiler knows anyway, so it's
    redundant information).
    
    This has the consequence for the libffi testsuite, when making GCC
    default to `-std=gnu23`, of making two tests fail with warnings about
    an unused function argument (only passed to `va_start` and not
    otherwise used).  Fix those test failures by explicitly casting the
    argument to `void`.

commit 8308bed5b2423878aa20d7884a99cf2e30b8daf7
Author: Ivan Tadeu Ferreira Antunes Filho <antunesi@google.com>
Date:   Fri Sep 20 06:01:23 2024 -0400

    Move cfi_startproc after CNAME(label) (#857)
    
    This is a fix for https://github.com/libffi/libffi/issues/852: error: invalid CFI advance_loc expression on apple targets.
    
    The CFI for darwin arm64 was broken because the CNAME macro was being used after the
    cfi_startproc macro.

commit 01db744b4af8665f9b7494d00cc2a1cc45ee9636
Author: KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
Date:   Fri Sep 20 20:00:49 2024 +1000

    Disable ASAN in ffi_call_int functions (#858)
    
    The pattern for several of the architectures is for ffi_call_int to
    stack-allocate some arguments + the registers, and then
    ffi_call_$ARCH will pop the top of that structure into registers, and
    then adjust the stack pointer such that the alloca'd buffer _becomes_
    the stack-passed arguments for the function being called.
    
    If libffi is compiled with ASAN, then there will be a redzone inserted
    after the alloca'd buffer which is marked as poisoned. This redzone
    appears beyond the end of $sp upon entry to the called function.
    
    If the called function does anything to use this stack memory, ASAN will
    notice that it's poisoned and report an error.
    
    This commit fixes the situation (on the architectures that I have access
    to) disabling instrumentation for ffi_call_int; that means there will be
    no alloca redzone left on the shadow-stack.

commit f7e4992789fa563b4cc74521c37ff703555da21c
Author: Sam James <sam@cmpct.info>
Date:   Fri Sep 20 10:58:06 2024 +0100

    testsuite: fix dejagnu directive typo (#859)

commit 084f36903f56b280283f3f4473a80b8e77727a29
Merge: 92d384d 348e70e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 12:32:58 2024 -0400

    Merge remote-tracking branch 'refs/remotes/origin/master'

commit 92d384df196a099fde384f9178864dbfe8c6b0fc
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 12:32:29 2024 -0400

    Fix floating point compare

commit 348e70ef1c785b85e194e47d47b7c4c2b1cec861
Author: Richard Barnes <rbarnes@umn.edu>
Date:   Sun Sep 15 07:39:51 2024 -0400

    Suppress unused variable warning in dlmalloc.c (#843)
    
    Allows `-Wunused-but-set-variable` to pass

commit 30e887f84e70c16df5c421983f074d07a93b4e58
Author: Yuriy Kolerov <ykolerov@synopsys.com>
Date:   Sun Sep 15 14:39:01 2024 +0300

    A series of fixes for ARC port (#844)
    
    * arc: Fix warnings
    
    These warnings are fixed:
    
    1. A series of "unused variables".
    2. Implicit conversion from a pointer to uint32_t.
    
    Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>
    
    * arc: Do not use mov_s and movl_s instructions
    
    mov_s and movl_s instructions use a restricted set of registers.
    However, a list of available registers for such instructions for
    one ARC target may not match a list for another ARC targets. For
    example, it is applicable to ARC700 and ARC HS3x/4x - build
    fails because mov_s formats may be incompatible in some cases.
    
    The easiest and the most straightforward way to fix this issue
    is to use mov and movl instead of mov_s and movl_s.
    
    Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>
    
    ---------
    
    Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>

commit 377a13696928aabc6f0df378ecd25437a1ff1d17
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Sun Sep 15 07:38:22 2024 -0400

    Bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows (#856)
    
    Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 3 to 4.1.7.
    - [Release notes](https://github.com/actions/download-artifact/releases)
    - [Commits](https://github.com/actions/download-artifact/compare/v3...v4.1.7)
    
    ---
    updated-dependencies:
    - dependency-name: actions/download-artifact
      dependency-type: direct:production
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit c7437f671e20f8864fd98b06f167af6e8ab6514b
Author: Yury V. Zaytsev <yury@shurup.com>
Date:   Sun Sep 15 13:37:28 2024 +0200

    configure: fix shared build on Solaris 10 (#846)
    
    GNU tools are often installed with g-prefix on Solaris. Unfortunately, a check
    in configure was using grep directly instead of through a variable, which lead
    to wrong results due to missing option `-q`. Additionally, the check will fail
    silently if `readelf` is not on `PATH` instead of trying `greadelf`.

commit 63b925fe98058a433c7bda6a6c2c6330b8ac77cd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 07:32:50 2024 -0400

    feat(testsuite): add struct_int_float.c to Makefile.am

commit efb98a72d8b9bdb71b4f972efced073bee3b30fc
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 15 07:31:33 2024 -0400

    Robustify floating point comparison in test

commit d21881f55ed4a44d464c9091871e69b0bb47611a
Author: kellda <59569234+kellda@users.noreply.github.com>
Date:   Sun Sep 15 13:29:42 2024 +0200

    Fix x86/ffi64 calls with 6 gp and some sse registers (#848)
    
    * Fix x86/ffi64 calls with 6 gp and some sse registers
    
    * Add test demonstating issue when mixing gp and sse registers

commit 8a0d029244d9b0393db19898e603f24febfb53ee
Author: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Date:   Sun Sep 15 13:22:36 2024 +0200

    OpenRISC/or1k build fixes (#854)
    
    * src/or1k/ffi.c: fix prototype of ffi_call_SYSV()
    
    The current code base of libffi on OpenRISC (or1k) fails to build with
    GCC 14.x with the following error:
    
    ../src/or1k/ffi.c: In function 'ffi_call':
    ../src/or1k/ffi.c:167:34: error: passing argument 3 of 'ffi_call_SYSV' from incompatible pointer type [-Wincompatible-pointer-types]
      167 |       ffi_call_SYSV(size, &ecif, ffi_prep_args, rvalue, fn, cif->flags);
          |                                  ^~~~~~~~~~~~~
          |                                  |
          |                                  void * (*)(char *, extended_cif *)
    ../src/or1k/ffi.c:113:27: note: expected 'void * (*)(int *, extended_cif *)' but argument is of type 'void * (*)(char *, extended_cif *)'
      113 |                           void *(*)(int *, extended_cif *),
          |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    This is due to the fact that ffi_prep_args() is in fact defined as:
    
      void* ffi_prep_args(char *stack, extended_cif *ecif)
    
    so, let's fix the prototype of the function pointer, which anyway gets
    passed to assembly code, so the typing gets lost.
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    
    * src/or1k/ffi.c: fix incompatible pointer type
    
    The current code base of libffi on OpenRISC (or1k) fails to build with
    GCC 14.x with the following error:
    
    ../src/or1k/ffi.c: In function 'ffi_closure_SYSV':
    ../src/or1k/ffi.c:183:22: error: initialization of 'char *' from incompatible pointer type 'int *' [-Wincompatible-pointer-types]
      183 |   char *stack_args = sp;
          |                      ^~
    
    Indeed:
    
      register int *sp __asm__ ("r17");
      [..]
      char *stack_args = sp;
    
    Adopt the same logic used for:
    
      char *ptr = (char *) register_args;
    
    which consists in casting to the desired pointer type. Indeed, later
    in the code stack_args is assigned to ptr (so they need to be the same
    pointer type), and some arithmetic is done on ptr, so changing its
    pointer type would change the behavior.
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
    
    ---------
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

commit 8e3ef965c2d0015ed129a06d0f11f30c2120a413
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 28 04:07:09 2024 -0400

    Fix struct args (Rainer Orth)

commit 9c9e8368e49804c4f7c35ac9f0d7c1d0d533308b
Author: Martin Storsjö <martin@martin.st>
Date:   Tue Jun 4 14:13:08 2024 +0300

    aarch64: Add a missing no-op define of SIGN_LR_LINUX_ONLY (#838)
    
    This is needed at least if building for Linux, with a toolchain
    that doesn't default to having PAC enabled, fixing build errors
    since 45d284f2d066cc3a080c5be88e51b4d934349797.

commit 6993bc14dad1cd24294d64bf91e4503a4d7835d6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 1 13:42:29 2024 -0400

    Import from upstream

commit 00bf6e679160886cfa12de617ae1640721455ca5
Author: Florian <florian.atteneder@gmail.com>
Date:   Sat Jun 1 19:39:24 2024 +0200

    A fix to the struct type example (#837)
    
    Section 2.3.2 Structures of the docs declare `ffi_type`'s  `elements` field to be of type `ffi_type **`.

commit 45d284f2d066cc3a080c5be88e51b4d934349797
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Sat Jun 1 12:34:53 2024 -0500

    aarch64: support pointer authentication (#834)
    
    * aarch64: fix callstack in ffi_call_SYSV
    
    The debug stack gets corrupted between the frame and stack pivots, update
    the CFI directives so the call stack stays correct in the debugger.
    
    str     x9, [x1, #32] // stack is ffi_call_SYSV() -> ffi_call_int() -> ffi_call_int() -> main() (good)
    mov     x29, x1       // stack is ffi_call_SYSV() -> ffi_call_int() -> ffi_call_int() -> ffi_call() -> main() (bad)
    mov     sp, x0        // stack is ffi_call_SYSV() -> ffi_call_int() -> ffi_call_int() -> main() (good)
    
    The CFA data needs to be updated around the pivots, after this patch the
    callstack stays correct.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * aarch64: remove uneeded CFI directive
    
    This directive doesn't actually set the CFA to anything valid, and
    during unwinding this isn't even used. Note that the PAC/Darwin usage
    is quite suspect as well, as the CFA is either x1 or x29 after the frame
    pivot, and the CFA address is what's used as the modifier when verifying
    the PAC. At least this is the behavior on Linux with PAC, I need to
    verify ARME ABI unwinding. So for now leave Darwin as is.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * ptrauth: rename define for clarity
    
    Rename the HAVE_PTRAUTH define for clarity that its associated with the
    ARM64E ABI and not the ARM64 ABI that can be supported on Linux and
    enabled with -mbranch-protection=standard.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * aarch64: add PAC support to ffi_call_SYSV
    
    Support AARCH64 Pointer Authentication Codes (PAC) within ffi_call_SYSV
    and support exception unwinding.
    
    The Linux ABI for PAC is to use paciasp/autiasp instructions which also
    have hint space equivelent instructions. They sign the LR (x30) with the
    A key and the current stack pointer as the salt. Note that this can also be
    configured to use the B key and will use pacibsp/autibsp hint instructions.
    
    The Linux ABI for exception frame data when PAC is enabled assumes that the
    Connonical Frame Address, or CFA is equal to the stack pointer. I.E sp is
    equal to x29 (fp). When the unwinder is invoked the cfa will point to
    the frame which will include the *signed* return address from the LR.
    This will then be passed to __builtin_aarch64_autia1716 where the CFA
    will be used as the salt and stored to register x16 and register x17
    will contain the signed address to demangle. This can be noted in:
      - https://github.com/gcc-mirror/gcc/blob/d6d7afcdbc04adb0ec42a44b2d7e05600945af42/libgcc/config/aarch64/aarch64-unwind.h#L56
    
    The other required portion of this is to indicate to the unwinder that
    this is a signed address that needs to go the special demangle route in
    the unwinder. This is accomplished by using CFI directive "cfi_window_save"
    which marks that frame as being signed.
    
    Putting all of this together is a bit tricky, as the internals of
    ffi_call_SYSV the callee allocates its stack and frame and passes it in
    arg1 (x0) and arg2 (x1) to the called function, where that function
    pivots its stack, so care must be taken to get the sp == fp before
    paciasp is called and also restore that state before autiasp is called.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    ---------
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit 38732240c125b6af9db66d940c0725a69292cc49
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Sat Jun 1 12:33:28 2024 -0500

    ffi: fix spelling mistake (#833)
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit f64141ee3f9e455a060bd09e9ab72b6c94653d7c
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Tue Mar 19 11:44:55 2024 -0500

    Fix bti support (#830)
    
    * bti: add identifier to ffi_closure_SYSV_V_alt
    
    This was missing BTI_C identifier.
    
    Old Code:
    ffi_closure_SYSV_V_alt:
    0000fffff7f70500:   ldr     x17, [sp, #8]
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * testsuite: fix whitespace in Makefile.am
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    * aarch64: correct comment describing BTI
    
    The comment is incorrect, BTI is enabled per mapping via mprotect with
    PROT_BTI flag set, not per-process. When the loader loads the library,
    if the GNU Notes section is missing this, PROT_BTI will not be enabled
    for that mapping, but is independent of other mappings.
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>
    
    ---------
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit 3d0ce1e6fcf19f853894862abcbac0ae78a7be60
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 09:22:51 2024 -0500

    chore: update version to 3.4.6 and fix long double regression on mips64 and alpha

commit 94eaedb40e67e26d2fa35d1c22d8818f4d9f4c2d
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 08:41:04 2024 -0500

    Update sparc64 host

commit e1dcf03b4642e75a1058799a3023e0ebd0024258
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 08:02:45 2024 -0500

    Update cfarm hostnames

commit cd78b539125ae615d76df5a57039fe70ebd56c27
Author: Anthony Green <green@moxielogic.org>
Date:   Sun Feb 18 07:48:51 2024 -0500

    Always define long double types.

commit 012fcaf96c87ab617ba34babce9b6b259188fcf0
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:35:02 2024 -0500

    Update

commit d1597239af492240770692b8e453f0dca70fc551
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:32:42 2024 -0500

    update copyright year in libffi.texi

commit 91739a1a912476adbf1e0e4dcb091b9a2c5007d9
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:30:09 2024 -0500

    Update version, copyright and testsuite info.

commit 9752a622d12e696eaf9a4c46d4f09b58bca6bb83
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:03:21 2024 -0500

    Fix test filename reference

commit 404355317b3314da14a9ead0c0a50c040212e1fc
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Feb 15 08:01:43 2024 -0500

    docs(README): update release details for libffi-3.4.5

commit 04f6fa310ddec494cfcf32fd3685cefe35a8d2a2
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Thu Feb 15 20:52:13 2024 +0800

    mips: Fix N32 ABI return value handling (#813)
    
    In N32 ABI, 8-bit or 16-bit integers should be extended following the
    signedness of the integer, but 32-bit integers should always be
    sign-extended to 64-bit (note that N32 ABI only works on 64-bit CPUs).
    
    So handling this in everything using libffi would be nasty.  And the
    libffi code for architectures with a similar rule (LoongArch & RISC-V)
    also properly handle this.  Let's do this work in libffi for MIPS N32
    too.
    
    This fixes two failures in Python 3.12.1 ctypes test.

commit 00c0c87773910a320d82f026bb481eea31b50206
Author: 杨屿杰 <30362409+scylaac@users.noreply.github.com>
Date:   Thu Feb 15 20:51:40 2024 +0800

    Fix loongarch64 soft-float build (#816) (#817)

commit b3091029ed85339c856224c243826022ae93c041
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 15 04:51:12 2024 -0800

    Emscripten: Don't unbox single element structs if they are larger than 16 bytes (#818)
    
    This arguably is a compensation for a Python ctypes bug / strange behavior
    described here:
    https://github.com/python/cpython/blob/a16a9f978f42b8a09297c1efbf33877f6388c403/Modules/_ctypes/stgdict.c#L718-L779
    
    If a struct is larger than 16 bytes, Python does not bother to accurately report
    its contents figuring that we don't need to know.

commit 98881ecb8eec6d5f2beaaced96d9f625b0dee499
Author: Bill Roberts <152999275+billatarm@users.noreply.github.com>
Date:   Thu Feb 15 06:50:40 2024 -0600

    aarch64: add BTI flag to ELF notes (#822)
    
    When a program is loaded and linked, the first ELF file that doesn't
    declare that BTI is supported in the GNU NOTES section disables BTI
    support.
    
    Example:
    readelf -n ./aarch64-unknown-linux-gnu/.libs/libffi.so
    Displaying notes found in: .note.gnu.property
      Owner                Data size        Description
      GNU                  0x00000010       NT_GNU_PROPERTY_TYPE_0
          Properties: AArch64 feature: BTI
    
    Fixes: #823
    
    Signed-off-by: Bill Roberts <bill.roberts@arm.com>

commit f9da12e944c947e797e5f3a98f3860c2a0ed055e
Author: Dan Horák <dan@danny.cz>
Date:   Thu Feb 15 13:50:13 2024 +0100

    don't skip ffi_type_longdouble symbols (#814) (#824)
    
    Seems there are configurations (ppc64 or ppc64le) that define
    HAVE_LONG_DOUBLE_VARIANT in fficonfig.h, but do not define
    HAVE_LONG_DOUBLE, and still want ffi_type_{,complex_}longdouble
    symbols. Update the condition in libffi.map.in accordingly.

commit f8ed78f1b2e65f2741455612d38477424e321850
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Thu Feb 15 20:49:27 2024 +0800

    LoongArch: Fix a build error with GCC 14 (#825)
    
    Fix the build error with GCC 14:
    
        ../src/loongarch64/ffi.c: In function 'ffi_prep_closure_loc':
        ../src/loongarch64/ffi.c:525:7: error: implicit declaration of
        function 'ffi_tramp_set_parms' [-Wimplicit-function-declaration]

commit 0b1dd62bef4192b61153182f7687edf7e885611c
Author: bartoli <perso.olivier.barthelemy@gmail.com>
Date:   Thu Feb 1 04:54:57 2024 +0100

    Update README.md (#820)
    
    For cygwin/MSVC build, CXXCPP is also needed to pass configure checks

commit c07c40ee9444e029bc595860a669de32b7af282a
Author: Anthony Green <green@moxielogic.org>
Date:   Wed Jan 31 22:43:38 2024 -0500

    `feat(github-actions): add new build workflow for warp`

commit 622caabcd25f4e11f752241417d06c9062acdf1f
Author: Chongyun Lee <45286352+licy183@users.noreply.github.com>
Date:   Sun Dec 24 23:38:32 2023 +0800

    Put more optional symbols behind ifdefs (#812)

commit a1c391bd8e604c611c7e9c8f6705dc723d403eb5
Author: Виктор Чернякин <56512186+LocalSpook@users.noreply.github.com>
Date:   Fri Dec 22 03:30:50 2023 -0700

    Fix a variety of warnings (#811)

commit 3a62a08af7bd0b5d540a087590dc54cdc312416b
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Dec 21 15:19:44 2023 -0500

    Remove warnings

commit d96fa2117cc6ca2923de9a2f34311ef0219b7590
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Dec 21 14:04:19 2023 -0500

    Eliminate warning

commit 5b1944b4ce4b03e28a5843d36812756168d66b08
Author: Martin Storsjö <martin@martin.st>
Date:   Wed Nov 29 00:38:13 2023 +0200

    aarch64: Write the BTI instructions as "hint" instructions (#810)
    
    GNU binutils refuses to assemble the direct BTI instructions unless
    the target architecture explicitly supports BTI, ending up with errors
    such as
    
        ../src/aarch64/sysv.S: Assembler messages:
        ../src/aarch64/sysv.S:87: Error: selected processor does not support `bti c'
        ../src/aarch64/sysv.S:156: Error: selected processor does not support `bti j'
    
    Building with -march=armv8.5-a fixes building this.
    
    However, the BTI instructions assemble into hint instructions, that
    are ignored by processors that don't implement them. Therefore it is
    possible to assemble them for the baseline armv8.0-a target as well,
    by replacing "bti j" with "hint #36", "bti c" with "hint #34" and
    "bti jc" with "hint #38"; this assembles into the same instruction
    bits.

commit 11af2196d5f4e8c756758cf86e4ab79dda89f405
Author: Anthony Green <green@moxielogic.org>
Date:   Thu Nov 23 09:22:20 2023 -0500

    Reference recent changes

commit d7f5e98b437a242ac712cda8df3e47b205339711
Author: David Tenty <daltenty.dev@gmail.com>
Date:   Thu Nov 23 09:16:56 2023 -0500

    Fix visibility check for AIX (#804)

commit 7f960d9a062fab0624302e9f63ef8b025f51dd10
Author: David Tenty <daltenty.dev@gmail.com>
Date:   Thu Nov 23 09:16:35 2023 -0500

    [powerpc][AIX] fix layout issues for nested struct types (#805)
    
    * [powerpc][AIX] fix layout issues for nested struct types
    
    On AIX under the default power alignment rules, the layout
    of struct types which are nested inside other structs may
    be different than the layout of those types on their own.
    
    Specifically the first member double rules which would
    apply an eight byte alignment if that type appears in the
    first position of a struct:
    
     1) apply recursively if the struct appear in the first member
        of another struct
     2) do not apply if that struct is itself a member of another struct
        and not the first member.
    
    The current implementation of the rules in libffi doesn't handle these
    cases, causing a mismatch with the compiler and causing some crashes
    we see when OpenJ9 is used with libffi on AIX.
    
    This PR corrects this and adds some representative test cases.
    
    * Fix code style
    
    * Add a size check
    
    * Add additional test
    
    * Fix padding in internal structs
    
    * Flip condition back to original form
    
    * Add a comment

commit d93c0be8a0f11f207e8232770c5f0590406efad1
Author: Tobias Heider <tobias.heider@stusta.de>
Date:   Thu Nov 23 15:15:29 2023 +0100

    Add bti intructions to aarch64 assembly to work with strict (#808)
    
    BTI enforcement on OpenBSD.

commit adbcf2b247696dde2667ab552cb93e0c79455c84
Author: Daily Price Depot Droid <anthony@atgreen.org>
Date:   Sat Oct 21 09:58:28 2023 -0400

    Disable firefox testing

commit 357755eef44735676de1cec458192c7784fb3aa8
Author: Daily Price Depot Droid <anthony@atgreen.org>
Date:   Sat Oct 21 09:05:48 2023 -0400

    Try logging

commit c23e9a1c81a84ea4804d001865845b25ff8d4c8a
Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date:   Sat Oct 21 20:44:24 2023 +0900

    Check if FFI_GO_CLOSURES is defined (#796)
    
    This macro is always defined to 1 if defined, or undefined.
    With `-Wundef` option, checking the value without checking if it is defined causes warnings:
    
    ```
    /opt/local/include/ffi.h:477:5: warning: 'FFI_GO_CLOSURES' is not defined, evaluates to 0 [-Wundef]
    #if FFI_GO_CLOSURES
        ^
    ```

commit a4be0b7210b5a7fd67770d2f4d63105900bc459a
Author: Yn0ga <ynoga@protonmail.com>
Date:   Sat Oct 21 13:43:43 2023 +0200

    Add support for Haikuos on PowerPC (#799)

commit dd90749505559d38abb339f1a1cd03791a9dc484
Author: Petr Sumbera <sumbera@volny.cz>
Date:   Sat Oct 21 13:42:11 2023 +0200

    Fix passing floating point arguments on 64bits SPARC (libffi#778) (#802)

commit 44f6fa3e526c920c61c8ac10661f447ccfe30872
Author: Alfred Wingate <parona@protonmail.com>
Date:   Fri Oct 20 15:02:37 2023 +0300

    Put optional symbols behind ifdefs (#800)
    
    Signed-off-by: Alfred Wingate <parona@protonmail.com>

commit 5c6e53db873767cd2266745cebc62551958f5bee
Author: Michael Osipov <1983-01-06@gmx.net>
Date:   Mon Sep 4 13:27:01 2023 +0200

    Fix build failures on HP-UX (#792)
    
    This fixes #328
    
    Co-authored-by: Chris Hunt <chrahunt@gmail.com>

commit 1b3e7569fe114fc7d7779e35704b8519fe65fd4d
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Mon Sep 4 19:26:11 2023 +0800

    Replace use of triple with target, and explicitly specify build host to force cross-compilation (#794)

commit 22b50e896a80171648439497041afe3b6dba1c08
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 31 16:31:42 2023 -0400

    Fix python and pyodide version

commit 4467a3bc350bca106aee2c55cbb19ffffb144d1b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 31 08:48:50 2023 -0400

    Upgrade pyodide version to match newer selenium API

commit 1d0a28ab5a2ee2e12b0650d69184d561cd1fd83c
Author: Ivan Tadeu Ferreira Antunes Filho <itadeufa@gmail.com>
Date:   Sat Aug 12 09:02:39 2023 -0400

    Make label private on apple (#788)
    
    Private labels on apple must start with L prefix, while on ELF they start with .L prefix.
    This makes the label start with L on apple instead of .L.

commit 9e8f1bd8de39ee90a73c6927e2df18a418f6da55
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Tue Jun 20 21:17:04 2023 -0700

    Emscripten build: Remove -sSTRICT_JS (#781)
    
    This rasies errors on newer versions of the emscripten compiler.

commit ac598b7f5272d536b75f4b3833a4610cf4cd9404
Merge: 2d63cee 8bdd471
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 3 08:20:32 2023 -0400

    Merge branch 'master' of github.com:/libffi/libffi

commit 2d63cee0e2154bb9027cff71f780cfaa2f543567
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 3 08:18:23 2023 -0400

    Add tests with homogeneous aggregate types

commit 8bdd4716e5974ee0b28b3c09db1eaa9e8833481e
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Sun Apr 2 19:54:22 2023 -0700

    More accurate explanation of wasm32 state in readme (#776)
    
    There are three main wasm32 target triples:
    * wasm32-unknown-unknown
    * wasm32-unknown-emscripten
    * wasm32-unknown-wasi
    
    The wasm32 port is only for the wasm32-unknown-emscripten target triple.
    (The other triples have no dynamic linking support so libffi would be both
    hard to port and of limited utility.)

commit f08493d249d2067c8b3207ba46693dd858f95db3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 17 20:35:44 2023 -0500

    Mention ARCv3 work

commit c4df19c99f8d8841942e3edaadbf331d30e298c8
Author: Claudiu Zissulescu <claziss@gmail.com>
Date:   Sat Feb 18 03:33:47 2023 +0200

    Update ARC's libffi port (#771)
    
    * Add support for ARC and ARC64
    
    Add support for ARC/ARC32/ARC64
    
    * Implementation of GO Closure for ARC/ARC32/ARC64 Architectures
    
    ---------
    
    Co-authored-by: Nuno Cardoso <cardoso@synopsys.com>
    Co-authored-by: Luis Silva <luiss@synopsys.com>

commit 237520649730cb21daf4ebff1cf9a0a64f8507f8
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 9 12:23:35 2023 -0500

    Normalize libffi labels

commit ca26801567e9ce19c83f132c6a116d3d25d3b8a1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 9 10:31:22 2023 -0500

    Use rlgl

commit 7d23c2d28e884ad5978e0974ad2443570940d393
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 9 06:01:37 2023 -0800

    Add emscripten gha workflow (#768)
    
    Resolves issue #767

commit 883f5ae665bf96008a7a56bf4d6c64cb05c68272
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 5 09:51:37 2023 -0500

    Rename label

commit 678dad5abe6c95ffa087b799922c2114b18c8541
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 2 14:48:07 2023 -0800

    Use libffi-dg-prune to handle Emscripten INFO messages rather than patching emcc.py (#766)

commit 7d03d3a3150c5c1ff70753edaa880bb5d57ae566
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 16:09:14 2023 -0500

    Mention wasm32

commit c267c72fa803316e95462f16bf1e3d6d5d55612c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 16:04:34 2023 -0500

    Modernize

commit 2687cfc5329d08d6bd4d397c1ca8eb0d171e22fd
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Thu Feb 2 09:10:00 2023 -0800

    Add wasm32 emscripten support (#763)
    
    * added build script
    
    * Apply libffi-emscripten patch
    
    * Some changes to wasm32/ffi.c
    
    * Remove exit(0); from test suites
    
    * Fix LONGDOUBLE argument type
    
    * Use more macros in ffi.c
    
    * Use switch statements instead of if chains
    
    * Implemented struct args
    
    * Finish struct implementation
    
    * Partially working closures
    
    * Got closures working (most of closures test suite passes)
    
    * Revert changes to test suite
    
    * Update .gitignore
    
    * Apply code formatter
    
    * Use stackSave and stackRestore rather than directly adjusting stack pointer
    
    * Add missing break
    
    * Fix visibility of ffi_closure_alloc and ffi_closure_free
    
    * Fix FFI_TYPE_STRUCT and FFI_TYPE_LONGDOUBLE when WASM_BIGINT is not used
    sig needs to be vi here for FFI_TYPE_STRUCT and FFI_TYPE_LONGDOUBLE, noticed this while running the test suite without WASM_BIGINT support.
    
    * Always use dynCall rather than direct wasmTable lookup (function pointer cast emulation changes dynCall)
    
    * Prevent closures.c from duplicating symbols
    
    * Try to set up CI
    
    * Add test with bigint
    
    * Make test methods static
    
    * Remove BigInt shorthand because it messes up terser
    
    * Add selenium tests
    
    * Update tests a bit to try to make CI work
    
    * WASM_BIGINT is a linker flag not a compile flag
    
    * Finish getting CI working (#1)
    
    * update gitignore
    
    * Avoid adding "use strict;" to generated JS
    
    This should be controlled by -s STRICT_JS in Emscripten.
    
    * Make JavaScript ES5 compliant
    
    * Remove redundant EXPORTED_RUNTIME_METHODS settings
    
    * Fix definition of DEREF_I16
    
    * Avoid marshalling FFI_TYPE_LONGDOUBLE when WASM_BIGINT is not used
    
    * Add missing FFI_TYPE_STRUCT signature
    
    * Improve test scripts
    
    * Remove redundant EXPORTED_RUNTIME_METHODS settings
    
    * Add missing EOL
    
    * Add struct unpacking tests
    
    * Update ci config to try to actually use WASM_BIGINT
    
    * Revert "Avoid marshalling FFI_TYPE_LONGDOUBLE when WASM_BIGINT is not used"
    
    This reverts commit 61bd5a3e20891623715604581b6e872ab3dfab80.
    
    * Fix single_entry_structs tests
    
    * Fix return from closure call
    
    * Fix 64 bit return from closures
    
    * only allocate as much space on stack for return pointer as needed
    
    * Revert "only allocate as much space on stack for return pointer as needed"
    
    This reverts commit e54a30faea3803e7ac33eed191bde9e573850fc1.
    
    * xfail two tests
    
    * Fix err_bad_abi test
    
    * Remove test logging junk
    
    * Try to set up long double marshalling for closures
    
    * xfail err_bad_abi
    
    * Fix reference errors in previous commit
    
    * Add missing argument pointer assignment
    
    * Fix signature of function pointer in cls_dbls_struct
    
    * Fix longdouble argument
    
    * Try some changes to bigint handling
    
    * Fix BigInt handling
    
    * Fix cls_longdouble test
    
    * Fix long double closure arg with no WASM_BIGINT
    
    * Use EM_JS to factor out js helpers
    
    * Support for varargs closure calls
    
    * Fix varargs calls
    
    * Fix err_bad_abi test
    
    * Fix typo in previous commit
    
    * Add more assertions to closures test suite
    
    * Fix some asserts
    
    * Add assertions to a few more tests
    
    * Fix some tests
    
    * Fix more floating point assertions
    
    * Update more tests
    
    * Var args for ffi_call
    
    * Don't do node tests
    
    * Macro for allocating on stack
    
    * Add some comments, simplify struct handling
    
    * Try again to fix varargs calls, add comments
    
    * Consolidate WASM_BIGINT conditionals into LOAD_U64 and STORE_U64 macros
    
    * A bit of cleanup
    
    * Fix another typo
    
    * Some fixes to the testsuite
    
    * Another testsuite fix
    
    * Fix varags with closures?
    
    * Another attempt at getting closure varargs to work
    
    * sig is initialized later
    
    * Allow libffi.closures tests to be run
    
    * Improve build script
    
    * Remove redundant semicolons
    
    * Fix a few libffi.closures test failures
    
    * Cleanup
    
    * Legacy dynCall API is no longer used
    
    * Fix FFI_TYPE_LONGDOUBLE offset
    
    * xfail 2 tests for WASM
    
    - closure_loc_fn0; not applicable -- codeloc doesn't point to closure.
    - huge_struct; function signature too long.
    
    * Revert some redundant dg-output/printf statements
    
    Helps Node.
    
    * Revert "Don't do node tests"
    
    This reverts commit a341ef4b.
    
    * Fix assertions in cls_24byte
    
    * More tiny formating fixes to test suite
    
    * Revert "Revert "Don't do node tests""
    
    This reverts commit 7722e685ea04e2420e042886816d8c4dd31f5dcb.
    
    * Fix 64 bit returns when WASM_BIGINT is absent
    
    * Fix print statement in cls_24byte
    
    * Add CALL_FUNC_PTR macro to allow pyodide to define custom calling behavior to handle fpcast
    
    * Update single_entry_structs tests
    
    * More explanations
    
    * Fix compile error in last commit
    
    * Add more support for pyodide fpcast emulation, update CI to try to test it
    
    * Clone via https
    
    * Fix path to pyodide emsdk_env
    
    * Add asserts to the rest of the test suite
    
    * Fix test compile errors
    
    * Fix some tests
    
    * Fix cls_ulonglong
    
    * Fix alignment of <4 byte args
    
    * fix cls_ulonglong again
    
    * Use snprintf instead of sprintf
    
    * Should assert than strncmp returned 0
    
    * Fix va_struct1 and va_struct3
    
    * Change double and long double tests
    
    These tests are failing because of a strange bug with prinft and doubles, but I am not convinced
    it necessarily has anything to do with libffi. This version casts the double to int before printing it and avoids the issue
    
    * Enable node tests
    
    * Revert "Change double and long double tests"
    
    This reverts commit 8f3ff89c6577dc99564181cd9974f2f1ba21f1e9.
    
    * Fix PYODIDE_FPCAST flag
    
    * add conftest.py back in
    
    * Fix emcc error: setting `EXPORTED_FUNCTIONS` expects `<class 'list'>` but got `<class 'str'>`
    
    See discussion on https://github.com/pyodide/pyodide/pull/1596
    
    * Remove test.html
    
    * Remove duplicate test file
    
    * More changes from upstream
    
    * Fix some whitespace
    
    * Add some basic debug logging statements
    
    * Reapply libffi.exp changes
    
    * Don't build docs (#7)
    
    Works around build issue makeinfo: command not found.
    
    * Update long double alignment
    
    Emscripten 2.0.26 reduces the aligmnet of long double to 8. Quoting
    from `ChangeLog.md`:
    
    > The alignment of `long double`, which is a 128-bit floating-point
    > value implemented in software, is reduced from 16 to 8. The lower
    > alignment allows `max_align_t` to properly match the alignment we
    > use for malloc, which is 8 (raising malloc's alignment to achieve
    > correctness the other way would come with a performance regression).
    > (#10072)
    
    * Update long double alignment
    
    Emscripten 2.0.26 reduces the aligmnet of long double to 8. Quoting
    from `ChangeLog.md`:
    
    > The alignment of `long double`, which is a 128-bit floating-point
    > value implemented in software, is reduced from 16 to 8. The lower
    > alignment allows `max_align_t` to properly match the alignment we
    > use for malloc, which is 8 (raising malloc's alignment to achieve
    > correctness the other way would come with a performance regression).
    > (#10072)
    
    * Improve error handling a bit (#8)
    
    * Fix handling of signed arguments to ffi_call (#11)
    
    * Fix struct argument handling in ffi_call (#10)
    
    * Remove fpcast emulation tests
    
    * Align the stack to MAX_ALIGN before making call (#12)
    
    * Increase MAX_ARGS
    
    * Cleanup (#14)
    
    * Fix Closure compiler error with -sASSERTIONS=1 (#15)
    
    * Remove function pointer cast emulation (#13)
    
    This reverts commit 593b402 and cbc54da, as it's no longer needed
    after PR pyodide/pyodide#2019.
    
    * Prefer the `__EMSCRIPTEN__` definition over `EMSCRIPTEN` (#18)
    
    "The preprocessor define EMSCRIPTEN is deprecated. Don't pass it to code
    in strict mode. Code should use the define __EMSCRIPTEN__ instead."
    https://github.com/emscripten-core/emscripten/blob/84a634167a1cd9e8c47d37a559688153a4ceace6/emcc.py#L887-L890
    
    * Install autoconf 2.71
    
    * Try again with installing autoconf 2.71
    
    * Fix compatibility with Emscripten 3.1.28
    
    * CI: remove use of `EM_CONFIG` env
    
    See commit:
    https://github.com/emscripten-core/emsdk/commit/3d87d5ea8143b3636f872fb05b896eb4a19a070b
    
    * Fix cls_multi_schar: cast rest_call to signed char
    
    * Remove test xfails (#17)
    
    * Fix long double when used as a varargs argument
    
    * Enable unwindtest and fix it
    
    * Add EM_JS_DEPS
    
    * Also require convertJsFunctionToWasm
    
    * Run tests very very verbose
    
    * Echo the .emscripten file
    
    * Remove --experimental-wasm-bigint insertion
    
    * Build with assertions
    
    * Move verbosity flags back out of LDFLAGS
    
    * Remove debug print statement
    
    * Use up to date pyodide docker image
    
    * Explicitly cast res_call to fix test failure
    
    * Put back name of main function in cls_longdouble_va.c
    
    * Fix alignment
    
    The stack pointer apparently needs to be aligned to 16. There were
    some terrible subtle bugs caused by not respecting this. stackAlloc
    knows that the stack should be 16 aligned, so we can use stackAlloc(0)
    to enforce this. This way if alignment requirements change, as long
    as Emscripten updates stackAlloc to continue to enforce them we should
    be okay.
    
    * Fix handling of systems with no Js bigint integration
    
    When we run the node tests we use node v14 tests (since node v14 is
    vendored with Emscripten). Node v14 has no Js bigint integration
    unless the --experimental-wasm-bigint flag is passed. So only the
    node tests really notice if we get this right. Turns out, it didn't
    work. We can't call a JavaScript function with 64 bit integer arguments
    without bigint integration.
    
    In ffi_call, we are trying to call a wasm function that takes 64 bit
    integer arguments. dynCall is designed to do this. We need to go back
    to tracking the signature when we don't have WASM_BIGINT, and then use
    dynCall. This works better now that emscripten can dynamically fill in
    extra dynCall wrappers:
    https://github.com/emscripten-core/emscripten/pull/17328
    
    On the other hand, for the closures we are not getting a function pointer
    as a first argument. We need to make our own wasm legalizer adaptor that
    splits 64 bit integer arguments and then calls the JavaScript trampoline,
    then the JavaScript trampoline reassembles them, calls the closure, then
    splits the result (if it's a 64 bit integer) and the adaptor puts it back
    together.
    
    * Improvements to emscripten test shell scripts (#21)
    
    This fixes the C++ unwinding tests and makes other minor improvements
    to the Emscripten test shell scripts.
    
    * Rename the test folder and move test files into emscripten test folder
    
    * Use docker image that has autoconf-2.71
    
    * Cleanup
    
    * Pin emscripten 3.1.30
    
    * Fix build.sh path
    
    * Rearrange ci pipeline
    
    * Fix bpo_38748 test
    
    * Cleanup
    
    * Improvements to comments, add static asserts, and update copyright
    
    * Use `*_js` instead of `*_helper` for EM_JS functions (#22)
    
    * Minor code simplification
    
    * Xfail first dejagnu test to work around emscripten cache messages
    
    See https://github.com/emscripten-core/emscripten/issues/18607
    
    * Remove unneeded xfails
    
    * Shorten conftest.py by using pytest-pyodide
    
    * Apply formatters and linters to emscripten directory
    
    * Fix Emscripten xfail hack
    
    * Fix build-tests script
    
    * Patch emscripten to quiet info messages
    
    * Clean up compiler flags in scripts and remove some settings from circleci config
    
    * Rename emscripten quiet script
    
    * Add missing export
    
    * Don't remove go.exp
    
    * Add reference to emscripten logging issue
    
    ---------
    
    Co-authored-by: Kleis Auke Wolthuizen <info@kleisauke.nl>
    Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>
    Co-authored-by: Christian Heimes <christian@python.org>

commit ce077e5565366171aa1b4438749b0922fce887a4
Author: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
Date:   Thu Feb 2 14:46:29 2023 +0000

    Forward declare open_temp_exec_file (#764)
    
    It's defined in closures.c and used in tramp.c.
    Also declare it as an hidden symbol, as it should be.
    
    Co-authored-by: serge-sans-paille <sguelton@mozilla.com>

commit abf211d1603da9d687455169646e0e9667be17c1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 07:06:02 2023 -0500

    Mention HPPA fixes

commit 222abd0c65babe2174b21753217145f5031a8b91
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 07:04:55 2023 -0500

    From Dave Anglin:
    
    This patch is derived from the work done in implementing libffi for 64-bit hppa64-hpux target. Currently, the 32-bit hppa targets do a linear search for the return type of an ffi_call. This is slow and inefficient. A jump table can used to jump directly to the code used to process the return value. In most common cases, the return value can be processed in the jump table itself.
    
    The patch also fixes return handling for FFI_TYPE_UINT8, FFI_TYPE_SINT8, FFI_TYPE_UINT16 and FFI_TYPE_SINT16.

commit e58e22b22386ed0e0a95e97eb8eed016e3f01b02
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 07:02:53 2023 -0500

    From Dave Anglin:
    
    A couple of years ago the 32-bit hppa targets were converted from using a trampoline executed on the stack to the function descriptor technique used by ia64. This is more efficient and avoids having to have an executable stack. However, function pointers on 32-bit need the PLABEL bit set in the pointer. It distinguishes between pointers that point directly to the executable code and pointer that point to a function descriptor. We need the later for libffi. But as a result, it is not possible to convert using casts data pointers to function pointers.
    
    The solution at the time was to set the PLABEL bit in hppa closure pointers using FFI_CLOSURE_PTR. However, I realized recently that this was a bad choice. Packages like python-cffi allocate their own closure pointers, so this isn't going to work well there.
    
    A better solution is to leave closure pointers unchanged and only set the PLABEL bit in pointers used to point to executable code.
    
    The attached patch drops the FFI_CLOSURE_PTR and FFI_RESTORE_PTR defines. This allows some cleanup in the hppa closure routines. The FFI_FN define is now used to set the PLABEL bit on hppa. ffi_closure_alloc is modified to set the PLABEL bit in the value set in *code.
    
    I also added a FFI_CL define to convert a function pointer to a closure pointer. It is only used in one test case.

commit baa6bbbc176b3c572eaf05b3fae0311df7e5f7b7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 2 06:59:46 2023 -0500

    Add HPPA64 support

commit e70dd1aa240159bd2050cb1eafffb49cdc1d8b22
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Thu Feb 2 11:44:13 2023 +0000

    libffi: Fix X86 32b Darwin build and EH frames. (#757)
    
    This addresses a number of issues in the X86 Darwin 32b port for libffi.
    
    1. The pic symbol stubs are weak definitions; the correct section placement
       for these depends on the linker version in use.  We do not have access
       to that information, but we can use the target OS version (assumes that
       the user has installed the latest version of xcode available).
       When a coalesced section is in use (OS versions earlier than Darwin12 /
       OSX 10.8), its name must differ from  __TEXT,__text since otherwise that
       would correspond to altering the attributes of the .text section (which
       produces a diagnostic from the assembler).
       Here we use __TEXT, __textcoal_nt for this which is what GCC emits for
       these stubs.
       For later versions than Darwin 12 (OS X 10.8) we can place the stubs in
       the .text section (if we do not we get a diagnostic from clang -cc1as
       saying that the use of coalesced sections for this is deprecated).
    
    2. The EH frame is specified manually, since there is no support for .cfi_
       directives in 'cctools' assemblers.  The implementation needs to provide
       offsets for CFA advance, code size and to the CIE as signed values
       rather than relocations. However the cctools assembler will produce a
       relocation for expressions like ' .long Lxx-Lyy' which then leads to a
       link-time error.  We correct this by forming the offset values using
       ' .set' directives and then assigning the results of them.
    
    3. The register numbering used by m32 X86 Darwin EH frames is not the same
       as the DWARF debug numbering (the Frame and Stack pointer numbers are
       swapped).
    
    4. The FDE address encoding used by the system tools is '0x10' (PCrel + abs)
       where the value provided was PCrel + sdata4.
    
    5. GCC does not use compact unwind at present, and it was not implemented
       until Darwin10 / OSX 10.6.  There were some issues with function location
       in 10.6 so that the solution here suppresses emitting the compact unwind
       section until Darwin11 / OSX 10.7.

commit 7effe99955b228ae828d06fa8d07dc546ef67b1a
Author: Iain Sandoe <iain@sandoe.co.uk>
Date:   Thu Feb 2 11:42:46 2023 +0000

    Darwin: Search for both shared and convenience libraries in each path. (#761)
    
    For several Darwin linker versions, the default behaviour is to first traverse
    the set of library paths, looking for shared libraries, and then a second time
    looking for archives.
    
    This means that if the library is configured --disable-shared the installed
    system version /usr/lib/libffi.dylib will be found before the archive under
    test.
    
    Using the linker option '-search-paths-first' alters the strategy to search each
    path for dylib and then archive before moving on to the next.

commit ebbc5e14cdbfcc24bf3c9bb7b41ee10cd979c535
Author: serge-sans-paille <serge.guelton@telecom-bretagne.eu>
Date:   Thu Feb 2 11:40:17 2023 +0000

    Fix signed vs unsigned comparison (#765)
    
    As reported by -Wsign-compare. In the case of getting the result of
    comparing the result of sysconf (_SC_PAGESIZE) to other value, this also
    correctly handles edge cases where the above fails and returns -1.
    
    Co-authored-by: serge-sans-paille <sguelton@mozilla.com>

commit 7611bb4cfe90884b55ad225e0166136a1d2cf22b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 8 09:01:00 2023 -0500

    Use checkout@v3, with nodejs 16

commit 3a8bb6bb7f51844b890ce6ae44fc6d7c4547fbd0
Author: YongKang Zhou <zhouyongkang4321@gmail.com>
Date:   Sun Jan 8 21:56:34 2023 +0800

    fix typo (#758)
    
    `mingW` -> `MinGW`

commit 00116b6d0171ba69ffe23d6b5c21c0fdb5907a48
Author: Alexander Kanavin <alex.kanavin@gmail.com>
Date:   Mon Dec 5 03:20:09 2022 +0100

    arm/sysv: reverted clang VFP mitigation (#747)
    
    Since commit e3d2812ce43940aacae5bab2d0e965278cb1e7ea,
    seperate instructions were used when compiling under clang,
    as clang didn't allow the directives at the time. This mitigation
    now causes compilation to fail under clang 10, as described by
    https://github.com/libffi/libffi/issues/607. Now that
    clang supports the LDC and SDC instructions, this mitigation
    has been reverted.
    
    Co-authored-by: Brett Warren <brett.warren@arm.com>

commit c50c16d0bcb58952840184aa83e62c6d912bf779
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 20 12:20:40 2022 -0500

    Fix large struct passing on PA-RISC

commit c6dc125afba294b9b9613392c492ae18df3ede84
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 25 10:28:19 2022 -0400

    Add missing test cases

commit 2b2f61f6e6a79d46fa277965745a8cd8bb5f04bc
Author: Xavier Claessens <xclaesse@gmail.com>
Date:   Mon Oct 24 20:39:04 2022 +0200

    Small build cleanup (#743)
    
    * configure.ac: Remove some unused checks
    
    * Fix FFI_API definition
    
    When doing a static build dllimport/dllexport should be disabled. It was
    also using 2 different macros FFI_BUILDING_DLL and FFI_BUILDING for no
    reason.

commit f24180be1367f942824365b131ae894b9c769c7d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 23 20:17:29 2022 -0400

    Update to version 3.4.4

commit 848052fabb207d6f56485c8c2c3509eddecbe828
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 23 11:25:10 2022 -0400

    More aarch64 fixes

commit af0f14cd6d932bd1c2f7c39c01e2df3b0ad19ea9
Author: Icecream95 <the.real.icecream95@gmail.com>
Date:   Mon Oct 24 04:08:10 2022 +1300

    Fix types of temporary variables in aarch64 extend_integer_type (#745)
    
    Fixes truncated values in weston-info output.

commit f7233db2a781b43e419a30edbec7639f74fa2a00
Author: musvaage <112724366+musvaage@users.noreply.github.com>
Date:   Mon Oct 17 17:26:17 2022 -0500

    typos (#742)

commit 45e492952e9f984a105ab281fb9433a4bbc12146
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 16 12:41:56 2022 -0400

    Add 32-bit cygwin test

commit 93cfb655200f34ab1b2b7d8955291c457b91ee9f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 10 14:32:35 2022 -0400

    Correction for older compilers

commit 77a0fb82b53087647a12334c6ddd590ea6215199
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Oct 10 17:59:04 2022 +0200

    Flush output before aborting (#740)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 3874fd9865eef72a5cf5a761781b51f8db9fa267
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Oct 10 17:58:48 2022 +0200

    Fix strict aliasing problem in aarch64 ffi_call (#739)
    
    The assignment a = &dest in ffi_call_int may be moved after the call to
    extend_integer_type because that function accesses the assigned value with
    a different type.
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 4b0c358e28fae22164bf0d423f183dfed8a1ba10
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Mon Oct 10 17:57:47 2022 +0200

    riscv: make copies of structs passed by reference (#738)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit c163d93ac032a101cda1818855d681430f7af89a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 8 18:35:38 2022 -0400

    Add gcc-12 testing for aarch64 linux

commit 62fd1f218be35976858a9f3a0b36fe0d38146bc9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 2 13:03:37 2022 -0400

    Tweak quotes

commit e1d1b094d31dbf97bd53c09736be97e1e9812d6a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 28 10:16:45 2022 -0400

    Add .

commit b45f68949d7d1b705eb5e26f58a09972ad70a9c4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 28 10:16:01 2022 -0400

    Update README for 3.4.4.

commit 817a43fbc1d6d1c702c492e926f158b17ae988e4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 28 09:05:45 2022 -0400

    Revert to previous cfi check. (#735)

commit 963c4a969326192a2a0ad536d3943f21dbbb0eaa
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 22:05:42 2022 -0400

    Remove nested comments

commit e9e44157526c00bfd1142175ed6a7eb936ea0ede
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 21:25:30 2022 -0400

    Don't tweak path

commit 4594dcc98770b4fa60fce313abf557f090f8a0fd
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 21:05:26 2022 -0400

    Fix find

commit fe68a7b998329f471c3c0c5726073b9cb1a5a126
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 20:29:17 2022 -0400

    Locate tools

commit cfb3f4c255cda534d1dc5de6a31cff70f02f9d69
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 20:13:42 2022 -0400

    Use cross tools for Windows

commit ae544e0043079d778fdf0e16408db3b7a6d723bd
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 18:23:06 2022 -0400

    Fix shell

commit b8d849bd85294253787bbe1838de354ad2f54201
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 17:58:31 2022 -0400

    Find ms tools

commit 9785eee066782d7575023f94b64402963b55aa8c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 17:39:44 2022 -0400

    32- and 64-bit Windows

commit 1421717effc7b5052e3c26e2b715a83a8a61355c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 08:13:17 2022 -0400

    Add "lto" to triple to identify lto builds

commit 425acd4c2f217b00868ec1577c20b73de032c114
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 27 07:57:37 2022 -0400

    Try aarch64 linux with -flto

commit c4261a0588fa997837e44f8417fc8577b37cd461
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 26 16:45:00 2022 -0400

    Show compiler version

commit a1467200c36ce80dacb8d9d0d50049765809b6f4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 26 11:41:48 2022 -0400

    Never link pthread for android

commit 5ce26a0e03eacb483709189e8cbb05509fa68612
Author: Frederik Seiffert <frederik@seiffert.org>
Date:   Mon Sep 26 13:43:40 2022 +0200

    CI: add Android builds (#732)

commit 55bcc47717bb0f9c5276a45710d757cda7a61f8e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 22:03:52 2022 -0400

    Test idea borrowed from cpython

commit a2473cde0a02c096dc3e0b57f0cb73f598765570
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 21:41:02 2022 -0400

    or1k: All struct args are passed in memory

commit f93224d38662a8cdc33ca56fe6f2d5650a86d690
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 21:38:57 2022 -0400

    moxie: All struct args are passed in memory

commit e79f19489bb294ce60bef5cdba5e56c3e7d84382
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 24 17:11:30 2022 -0400

    Add test case transcribed from cpython

commit ab96038772ec4f4ccfaf49d621cd20f58742c401
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 19:42:35 2022 -0400

    Set host triplet for native builds

commit a6fc81653d6ce649a6bc29675baa112c68a21df0
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 19:25:09 2022 -0400

    Update job names

commit 6b7fb6ce9eb4751ed3179de256566971c9d46cb7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 18:23:42 2022 -0400

    Give better names to CI workflows

commit f0675ab7e85ca31095b51db5a5c955f1005240cb
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 17:30:51 2022 -0400

    Update version to 3.4.4-experimental

commit e3eaa609882fbcffb6c1b21270b6ff46fb57699f
Author: Hans <h-c-mueller@users.noreply.github.com>
Date:   Mon Sep 19 23:26:59 2022 +0200

    Suppress error console output duing configure in case not an ELF file (#729)
    
    On Cygwin, MSYS and MinGW readelf is available, but files generated are no
    ELF files. This results in an Error output on console:
    'checking whether .eh_frame section should be read-only... readelf: Error: Not an ELF file - it has the wrong magic bytes at the start
    yes'
    With this patch the error output is suppressed resulting in only
    'checking whether .eh_frame section should be read-only... yes'
    Setting of related variables is not changed.
    
    Co-authored-by: Hannes Müller <>

commit 84817695eab13c282436fca278bde2384ca955e5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 13:31:46 2022 -0400

    Fix typo

commit 53338d2bbf547682b2461a6e4199276e24ec5c85
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 13:07:50 2022 -0400

    Update version

commit 0bd41b75df49f002f3fee9f4d5df225d742d3f1b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 12:26:05 2022 -0400

    Update libtool version

commit 9b1dd8f2d5af8c76d120ffd566bf3c821580c96c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 12:22:04 2022 -0400

    Update version to 3.4.3

commit 0a769ccc0f7a4a7e3e76a79b61c28341fc47e3be
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 08:17:15 2022 -0400

    Update release dates

commit f26b56e1c547d2b4d8c9303275ecea47b5936184
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 08:15:22 2022 -0400

    Add new files for distribution

commit b801b54b667340867441e922c14230a93832c8e2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:49:32 2022 -0400

    Mention AIX with GCC

commit ff34df233c863371912881516eae039f850fcad6
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:45:19 2022 -0400

    Update comment about platform support

commit 598ea692b81ac8116bd9907d2b498c16fc92bde7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:43:41 2022 -0400

    Clean ups, preparing for new release

commit fc6b939066f211b99eed3c8111e446ec95d51ca6
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 19 06:42:29 2022 -0400

    Standardize temp exec file creation

commit 4c2984c43fbb3db8e65b2b5702b27944eb0ed343
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 15:06:57 2022 -0400

    Handle win32 ABIs for struct return

commit b05dc51bbe9aef6fcac66a8e68b59472bfaff126
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 13:03:10 2022 -0400

    Debug x86

commit cafdb8377a8be2eadac05c318fae9ef6786c36c2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 12:05:12 2022 -0400

    Revert

commit acf0ce9e9b0bcd73d39f599a53e9924ba74c13c1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 11:04:54 2022 -0400

    Add test case

commit b49308eaac7288e01a36894598fb62bfaf61b238
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 08:26:23 2022 -0400

    Add missing ABI_ATTR

commit 735e7be4fb2a0401a9ca66cc64004b8b3418feb3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 18 08:21:34 2022 -0400

    X86 is never defined.

commit ee22ecbd11f52f8de1adbb2a6561aee2125a576a
Author: Hans <h-c-mueller@users.noreply.github.com>
Date:   Sun Sep 18 01:56:25 2022 +0200

    Add MSYS configuration files (#728)
    
    * Add MSYS configuration files
    
    MSYS behaves very similiar to Cygwin, e.g. also __CYGWIN__ is defined.
    Now 'make check' passes on MSYS without extra patches.
    
    * Fix warning extra tokens at end of #endif in closures.c
    
    Extra tokens converted into a comment. Also nearby indentations corrected.
    
    * Fix missing prototype warning mkostemp() on Cygwin
    
    Cygwin requires also _GNU_SOURCE to be defined to enable mkostemp() prototype.
    
    * Fix warning label ‘out’ defined but not used in ffi functions
    
    Define same preprocessor conditions for goto and label visibility.
    
    * Fix warning label ‘out’ defined but not used and related indentations.
    
    Define same preprocessor conditions for goto and label visibility. Correct also
    related indentations.
    
    Co-authored-by: Hannes Müller <>

commit 5e010474cf2e30fa053f0a1a460a752f06438cf7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 16:57:59 2022 -0400

    Fix test case for 64-bit mingw

commit 305cde7904ab676b7974ae68acb40b788b4c484e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 15:50:35 2022 -0400

    Passes on 64bit mingw

commit 05785cafcf584d80c6b48651e1d33c4a3feca75c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 15:18:09 2022 -0400

    Fix arg alignment for STDCALL

commit 98d4ad65e9933ed4878ef4aacfaa8299e467a903
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 09:42:53 2022 -0400

    Fix test headers

commit 2abf00a6c61f4cf6232dc50f28204be020bef05d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 08:25:39 2022 -0400

    Tweak msys2 tools again

commit d1b31536af74590b74236a00254e77617a8d50b0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 08:16:26 2022 -0400

    Fix msys2 tool selection

commit d352ed366722d5dfce0c1581c3820124c0bbafed
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 08:10:53 2022 -0400

    Build 32- and 64-bit msys2

commit 4d0a0384ce11446e02fb7f233aae5c19c8082fb1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 07:58:26 2022 -0400

    msvc requires the printf change, not mingw

commit a509abf6b0ef9045b8df05b0c3663969b21290c4
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:45:00 2022 -0400

    Install unzip

commit 950ed4a75384c4e7b0a512cb49f71f4d99c50a5d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:33:14 2022 -0400

    Don't make msys2 default shell

commit 5d02c0cca3750c7aac61971b9e4cb94940793303
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:28:23 2022 -0400

    Try msys2

commit 64a78fa760c581f9c70199abb34aef1e0d086bd2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 06:08:30 2022 -0400

    Try new path

commit 77fdeae859f3ab96bc936f0a967d34a5609af40d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 01:37:31 2022 -0400

    Find mingw32

commit bb4e7278b7f362afd03d128e7cb68a5e0e2efaf7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 15 01:28:58 2022 -0400

    DEbug

commit 7443b421d39087cad2e607d00b845c670b18920f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:17:21 2022 -0400

    Try new shell

commit 2ebc36f4be835437fa5d6c4c2b796fc22f769323
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:11:52 2022 -0400

    Fix indentation

commit 3740b243277c6dc210d45bd0b4f8abe8c2e1cb29
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:10:43 2022 -0400

    set mingw32 path

commit 7bf23f899cef435d023ecc8afde34d9e83829c2f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:04:42 2022 -0400

    Rename job

commit ce5b2208121667236874181360ca91aaa285b528
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 23:02:32 2022 -0400

    Fix mingw32 github actions

commit 317c9b6a13d3414c510b27bdc7ce57be56399df5
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 22:54:10 2022 -0400

    Add mingw32 testing

commit 19e8354ff9b608b5410451caef6a9773375de005
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 07:36:06 2022 -0400

    Fix test case

commit 4932f351579fb722e1e0b58a173b1571a6dfae79
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 07:08:06 2022 -0400

    Improve test case

commit 819b01ced894028d41a34ec0178de9e7637b23de
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 14 07:07:15 2022 -0400

    Add test case

commit b577a5b801b1d1aef1aec5920d34fd1fd6597122
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 12 10:23:59 2022 -0400

    Mention Cygwin static trampoline support.

commit 4b54a6471a8f98eb8bc1ea1694a8f3a3a433e538
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 12 09:02:08 2022 -0400

    Fix limits.h inclusion for cygwin

commit a1130f37712c03957c9b0adf316cd006fa92a60b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 12 08:53:06 2022 -0400

    Add static trampoline support for Cygwin

commit 26cc9a6c73c80e8459c25da3718c91cf5a36cbd8
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 10 20:36:45 2022 -0400

    Remove stray }}

commit 078184887d65bf4a3ecd2f78f6cdbf4c91ccc357
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 10 11:45:28 2022 -0400

    Update rlgl usage (switch from player ID to labels)

commit 6e7caacb9c94efba6775825df2479be389da51f1
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 10 10:31:37 2022 -0400

    Label rlgl reports

commit d9a19e21c2b86e03b6acb8a2d73d992c8e4974e8
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:58:03 2022 -0400

    The right kind of quotes

commit 2b2644969cbeeaee50938fbea591ea7f85df809e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:57:26 2022 -0400

    More quotes

commit eb9eb1f6f041548fe670c76f7a90d1c53c75d620
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:49:51 2022 -0400

    Fix random build dir

commit ea124a99da9efb3bde86a1706e15f62be7e68a66
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:21:21 2022 -0400

    Remove bogus sparc compiler flag

commit cca77833fd53ffec93a4962d1e9cd7ea5a38f13f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:20:59 2022 -0400

    Fix typo

commit 8ee64076f1b7cc654ff24adaffff25ddb3d57484
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:14:13 2022 -0400

    Fix typo

commit 086935029d23dad133c97dfaf68749b7726460a1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 7 07:12:10 2022 -0400

    Set CC and CXX for GCC compile farm builds

commit da905276850342df0f9dfe2c775f6c649d4eed6b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 21:15:58 2022 -0400

    dlmmap fix and always check for PaX MPROTECT on linux
    
    Also make EMUTRAMP experimental
    From Stefan Bühler
    https://github.com/libffi/libffi/pull/282

commit b86c3dc0950ad5d8991e3970d56daeb409650d60
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 14:25:09 2022 -0400

    Fix typos

commit c9be1378c709586f264dd643f92f71b9f1a842b2
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 14:12:21 2022 -0400

    Retry autoconf downloads

commit 62471fd078db7ef66ca8b3118187a2911f2bb3e7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 13:00:02 2022 -0400

    Fix typo

commit b2344575569bc3bd129ad0ff92b49dc220fb287b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 12:43:08 2022 -0400

    Fix unwindtest on macos

commit fc4e7c4a10dff3c99d7ea9be33d47e6d5f0efda7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 22:13:58 2022 -0400

    Install automake on macos

commit 5a6c94f7d49bcd64c85bde04c2d1f10b59d5797c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 22:04:52 2022 -0400

    Test with gcc and clang on macos 11 and 12.

commit 351318e3bde9ac90c6d5eddbaa7f26ee3e7bcc6c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 15:45:53 2022 -0400

    Switch to 7 char SHA IDs.  Fix windows crlf at git clone time.

commit 2a024088801403ca0c579d20c3decb8dc1453df1
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 12:56:19 2022 -0400

    Use GitHub SHA for rlgl ID

commit e4c5d46b0abaa8a12e97f0e0673e3efdda59fab8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 12:19:57 2022 -0400

    Pass large structs by value

commit 4b79267be359b42e7a4cbf95068abe805aae0061
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:11:45 2022 -0400

    outputs vs output

commit 3020ad832144e35d2a42fb8782ddbd3ed69fdbaf
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:07:57 2022 -0400

    Use single quotes

commit f969a50aadfdf288797d5492dfb768d9916b9477
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:06:53 2022 -0400

    Try {{}}

commit 8df671a35e517f27da78b1b933f19294cfc7224f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 08:05:39 2022 -0400

    Fix compares

commit 6a9bbc85a95a8a6d314452c8c5ef4add61e7b280
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:54:47 2022 -0400

    Show host availability

commit 49a361c35b3d826c02e6dc3f15c86555e62ed933
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:51:34 2022 -0400

    Fix conditionals?

commit d9189beb6e61b20ff4b84fd994d895a29351c422
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:47:46 2022 -0400

    Use boolean values

commit 2bcdcda8eda82cce594d2c821fc6a87069041bcc
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:44:01 2022 -0400

    Try conditional steps

commit d86d55e51fc2d35ff3a829d41c8ec1c83570cd40
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:15:38 2022 -0400

    Tweak test for host availability

commit 5b4d5f2b3a3f3f9fb71ce40e3be00ae6191ffc37
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 07:11:12 2022 -0400

    Fix triples

commit 02e6a894cbb1d851ec1a31b3277f2414c4a1370f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:55:08 2022 -0400

    Add missing paren

commit fcaa8ebbccf2e2e4e0317164b624b683ac95c474
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:47:40 2022 -0400

    Unnest quotes

commit f4009ed4f0351c6c8e8f410dac7c558fe9996e7e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:40:00 2022 -0400

    Fix syntax error

commit f92e32cfacdbf82172b06ce13d63eab65f205598
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Sep 5 06:17:38 2022 -0400

    Try dribbling output during make check

commit ef57e08aa34dc9f55abb493a554a957ca358d931
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 22:35:32 2022 -0400

    Split up build into multiple steps

commit 2480cc48def54eb155429710187452e0d495b773
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 21:09:06 2022 -0400

    Try to fix ssh issues

commit 1105db1ce6cf1f7ab5a254cd04453b0c5e9dad30
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:52:28 2022 -0400

    Try forcing exit upon completion

commit 92a7775150978b3e98b0d47280dd6dd6580dbd07
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:17:01 2022 -0400

    Source .profile on remote host if it exists

commit 8e3ea879a9e538c9237c34ae113babe078565da9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:07:13 2022 -0400

    Only ignore errors when testing for ssh connectivity.

commit a643db6c1f1bd7594e42a03865b7a9063cfbf1c1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:28:50 2022 -0400

    Don't fail on error

commit 33f1f19a7da022a7d8dba59bb97c28cb4fd6aadf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:24:06 2022 -0400

    Add POWER hosts

commit 7a300f3d657ee7b94bda5296b3b366b5915a5c79
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:08:47 2022 -0400

    Fix the setting of the host

commit b104dd621f9d2b298ede781f0bd289ce8a0c20ee
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:07:12 2022 -0400

    If a remote host is unavailable, don't fail the build.

commit 7194e11832ad9609bd38c2a1fd4995d749443ee0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 08:01:47 2022 -0400

    Debug build

commit 6fccf95b4f97335eda1d8bfe2e12fc38bea571d2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 07:57:53 2022 -0400

    Add connection timeouts and retries

commit b4cf3d64b1807667eba7863701b6fcae68c65e68
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 07:32:18 2022 -0400

    Prune warnings from sparc64 linux ld

commit 807283704a4a77187103f9d4d73c9feb75f3c757
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 07:21:02 2022 -0400

    For host triples to distinguish m1 arm64 from others.

commit 4cba6c1858e842ef674ed41b5d79bc981fdfc411
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 11:42:11 2022 -0400

    Don't exit if runtest fails

commit 439dfa1f7f96aec5689d5b28511e0162bc0ae3f9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:42:46 2022 -0400

    Fix spaces

commit b7d9e3a1a0c3138df513cd5df49a0e14584c7556
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:41:45 2022 -0400

    Run rlgl

commit e85b55c2d30783db52d148f2691c8a3afd3d4ec3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:16:01 2022 -0400

    Fix recursive copy flag

commit 98168532a22615bd2aab0f3bf08e8a5f8abcd375
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:14:56 2022 -0400

    Fix typo

commit 943219e3281d4f9f3ae416ca3bf9fd3482cf8c63
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:13:04 2022 -0400

    Use scp, as rsync isn't available on all hosts

commit 0e912017c96afe6bf6500e90075df6b7366c337a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 10:04:54 2022 -0400

    Use ssh port numbers and copy dejagnu results back

commit c8fe3d3d440d46b7b465e8d11ea8461a5ae86462
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:58:43 2022 -0400

    Use username

commit 3e75f9554f06bab33e022276d320a301f1b04e44
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:56:13 2022 -0400

    Tighten permissions on key

commit d893eda74196ecc39f1d839b340d0b158fc536eb
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:55:01 2022 -0400

    Disable host key checking

commit da35cf0fb693b6f93a745119c777b3c4aa6d779b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:52:26 2022 -0400

    Add quotes

commit 128d57ab940a3a76658a8c8b4b98cd80fb602d65
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:51:00 2022 -0400

    Remove bad command

commit 5b34bed4ff0a5c1c0257f4d586b868ded173dc67
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:49:45 2022 -0400

    Debug

commit 77b32cb1533e5166bebf2a7cd1465e3a1eef55ad
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:43:41 2022 -0400

    Fix typo

commit 22c1ceb27597d21779c7565c94c444dadc606478
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:42:01 2022 -0400

    Simplify remote tests

commit dde8e81deba0c2ef3edca804f34347bfae0e88bd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:22:19 2022 -0400

    Revert to old file copy

commit 3cd913c8dafa71c1bb14ca5e1f4208343cc3a194
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:19:08 2022 -0400

    Remove SHA256

commit 3127a25df827f2afa3f6bdfdfceff169fe241fcf
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:13:16 2022 -0400

    Try new fingerprint

commit f095b747423806b44c2ef883ec65a7ce5230fbf7
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 09:11:47 2022 -0400

    Use correct fingerprint

commit 1f44118157a005661b55f1747cfd15773214e458
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:55:20 2022 -0400

    Ignore fingerprints

commit 8fd73fe61f496a24a4093ba1d195a884f86d547e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:51:33 2022 -0400

    Use rsa fingerprints

commit 09c3908a4279f4c9e2c4a8282efb29c412964119
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:43:23 2022 -0400

    Use host fingerprints

commit caa793a3401b92b0ef2006ab90c4dd30b7ab7d5c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:35:56 2022 -0400

    Try new scp

commit 0cbffe5ef542641170b8cbe588fb703e7410cb13
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:23:35 2022 -0400

    Fix GITHUB_RUN_NUMBER usage

commit 628cc2f675c6df35213d74388aac69c5c165b1f4
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:16:47 2022 -0400

    Fix loongarch64 server port. Try GITHUB_RUN_NUMBER.

commit 9382d7955f80aaa6fc0ca036956fe4e14a0d45b6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 08:06:11 2022 -0400

    Reference matrix variables properly

commit e081b2cec74253b48a0d09d8a0d309f60e8f82e5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:58:27 2022 -0400

    List cfarm servers explicitly

commit 074e9c79e36e63a9cc8c8fca6c76dd927778dc54
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:46:02 2022 -0400

    Try multiple hosts

commit 6002b2ad639f9125da56834e4b0a1b12fa232c57
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:10:58 2022 -0400

    Use correct version of scp-action

commit a990426c5f4114c85f6cfc190276786ef5c49521
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:09:33 2022 -0400

    Use scp instead of rsync

commit 0fabd777d91e13bb4795d0b9db0b2201f9298904
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 07:02:34 2022 -0400

    Remove extra debug

commit 1922870fe3baf41991670db81b35c1ab0b482895
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 06:53:52 2022 -0400

    Debug rsync

commit aee50966ca85d777271cd7e14714b916264cb190
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 3 06:47:49 2022 -0400

    Change remote path

commit 73552c2e732df17c7f9008fecfc448c1d6397cfe
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 20:03:02 2022 -0400

    Tweak

commit 904424fe82bd6d4a498fee84b3f26d55426ff75f
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:58:19 2022 -0400

    Work in actions dir

commit 31c31db079b054270a19cc710f06fbb84e805511
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:48:33 2022 -0400

    Run autogen before copying files to remote server

commit d84f2ea0ea760b8e63f50eb6c3583aeb38d89d0e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:44:34 2022 -0400

    Install autoconf

commit 78beb4aee5386cd4ea14cfa753a778eafcc3ec2d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:34:50 2022 -0400

    Try more remote testing

commit 16f17cd8418ce2239f8b9b31e5f3b5414298292f
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:16:12 2022 -0400

    Fix ssh

commit badccc01c84ee38f5f443c910ba06b3792029d8b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:11:53 2022 -0400

    Add platform

commit 0eae6af297d9a34bd6adcbf43fbbd27e5feebc53
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:09:43 2022 -0400

    Missing colon

commit ce8cec023499d8da04936e2dc40111f8d6a1783e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Sep 2 19:04:39 2022 -0400

    Try cfarm access

commit 9b58d4bad688820fa9bb077c0ec5f5949ac18bd2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 1 08:57:13 2022 -0400

    GCC_AS_CFI_PSEUDO_OP passes on msvc, although it's not sufficient.

commit e6d05bea0b4c350edaaf215a81f49298f34b10e4
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Thu Sep 1 14:51:15 2022 +0200

    Fix struct padding warning reported by MSVC (#613)
    
    When building on 32-bit x86.

commit 80912f2f09f4c06b2f720ff243d7b9b6795093f9
Author: Clément Chigot <pro@helflym.eu>
Date:   Thu Sep 1 14:47:16 2022 +0200

    Makefile: enable target overridings. (#661)
    
    This patch allows target to provide extra files enabling the
    override of Makefile rules.
    This patch is not needed for libffi itself but only for GCC on AIX. The
    t-aix file which is here empty will be replaced in GCC repository. We cannot
    include GCC version directly here because it has no sense for a standalone
    libffi.
    
    Co-authored-by: Clement <clement.chigot@atos.net>

commit 1fa7d96cdf7bba354f61337854210f060ea56b9f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 1 08:28:59 2022 -0400

    Don't use cached configure test result

commit bcb42e432b5372b1876e8c8db68837d92d1f94ae
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 1 08:05:01 2022 -0400

    Fix .cfi pseudo-ops test.
    
    The existing tests were failing because the GCC was wrapping the test
    asm in cfi directives, which gas doesn't like.  So now we test if the
    compiler emits them first, and assume that the assembler will accept
    them.  If that doesn't work, then we test if the assembler will accept
    them assuming the compiler doesn't emit them.

commit 0eb91425f355be19939507d4d4d056bdad12c9dd
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 20:46:24 2022 -0400

    Change comment style

commit ca76ab3b8551d9e7cee6f533ecd1e89fee70e16a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 10:30:26 2022 -0400

    Fix exports for tests

commit 7b1dd8ce10e6bef043088896136105b8aabbb882
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 09:49:21 2022 -0400

    Don't -malign-double for x86-32

commit 41d0851fc545ff1ffd8377236d193268c8a10740
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 31 07:36:43 2022 -0400

    Update copyright year

commit 5a4774cd4d90f9ea7e7f9e34b15de29463aba4c4
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Fri Jul 22 05:56:30 2022 +0800

    static trampoline for LoongArch (#723)
    
    For the benefit and technical details of static trampoline, see
    https://github.com/libffi/libffi/pull/624.  As a new architecture, let's
    be "safer" from the start.
    
    The change survived libffi testsuite on loongarch64-linux-gnu.

commit 5264a7c5cd3460465326ebd347559828196dceb1
Author: matoro <matoro@users.noreply.github.com>
Date:   Thu Jul 21 17:54:19 2022 -0400

    Move FFI_TYPE definitions above <ffitarget.h> include (#722)
    
    For powerpc at least, these definitions are referenced in the
    target-specific ffitarget.h.  Discovered in the jffi project.  Should
    close https://github.com/libffi/libffi/issues/637.  Downstream jffi bug
    https://github.com/jnr/jffi/issues/107.  Downstream distro bug
    https://bugs.gentoo.org/827215.
    
    Testing - both libffi and jffi test suites pass with this patch applied,
    at least on ppc64le linux.  I did not see any warnings about
    redefinitions.
    
    Tested versions - libffi 3.4.2, jffi 1.3.6 and 1.3.9.

commit ddc6764386b29449d941b2b18d000f2987a9d848
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 22:04:53 2022 -0400

    Add missing file

commit 2b4728a21f9a36c6567df8dd27fc8a665264019c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:58:51 2022 -0400

    Fix path

commit 37cc25bb25344ee33c5b7ff06c6804d31374a544
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:56:40 2022 -0400

    Install and use autoconf from special dir

commit 2f2eab957d3acbf571c570ab2ccf894e3c85b033
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:53:00 2022 -0400

    Fix autoconf version number

commit 4b1465495c9d6e5ef95bacc38b86483fd910f887
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:51:25 2022 -0400

    Fix wget

commit 398b7534d97b2b642492fbb024e15be3df564da8
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:49:09 2022 -0400

    Fix wget

commit 2c047eb7b108fba1203ba6122e830a7ae17721ca
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:46:54 2022 -0400

    Fix untar

commit 446c092f409bd37c21b5b986c2be8f87a1cb1dec
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:45:32 2022 -0400

    Install autoconf-2.71

commit 5c76ac1ff55c4ed6faa145b395e9a14cdb834708
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:22:01 2022 -0400

    Update autoconf?

commit 4a46f35ba5a4bbb3ea396e1fa836535d338f8930
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 21:14:30 2022 -0400

    Update configury

commit fc8c8c1e2c31321b38dc079e549bc7748da4159d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 11:06:00 2022 -0400

    Fix ILP32 for aarch64

commit b5abc4f6478147ce72fa6b2eb95296883d5ef3ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 25 10:43:00 2022 -0400

    Remove duplicate macro definition.

commit 280fe78d37f58927b280e2e316a2ae19201f2b83
Author: Xi Ruoyao <xry111@xry111.site>
Date:   Sat Jun 25 18:58:53 2022 +0800

    configure.ac: use grep -E instead of egrep if possible (#720)
    
    Upstream will start to emit a warning if egrep is invoked in the next
    grep release.  Stop invoking it explicitly.  Use AC_PROG_EGREP to try
    "grep -E" first, and fallback to egrep if "grep -E" does not work.  We
    need this fallback for some non-GNU grep implementations (like Solaris).
    
    Url: https://git.savannah.gnu.org/cgit/grep.git/commit/?id=a951562

commit 1f14b3fa92d4442a60233e9596ddec428a985e3c
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Fri Jun 3 02:46:35 2022 +0800

    Ensure that VM_PROT_EXECUTE is set on the trampoline page. (#718)

commit 000ecd01cb534fd8bb593422013a79c8497263ff
Author: Sergei Trofimovich <slyich@gmail.com>
Date:   Thu Jun 2 18:43:53 2022 +0000

    powerpc64: fix build on gcc-12 (assembly requires AltiVec) (#719)
    
    Without the change build fails on powerpc64-gcc-12 as:
    
        src/powerpc/linux64_closure.S: Assembler messages:
        src/powerpc/linux64_closure.S:363: Error: unrecognized opcode: `lvx'
    
    It's a 90205f67 "rs6000: Fix bootstrap (libffi)" patch by
    Segher Boessenkool from gcc upstream repository. It's enough to get
    libffi build on powerpc64.

commit c528d5b45e248f47b5af6f16bfcafc779b196ed1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 11:22:38 2022 -0400

    Fix windows arg passing

commit aa2c4141722ec8b8b014b97e049ffa2d140d0c0d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 10:28:10 2022 -0400

    64-bit cygwin: fix struct args. Document change.

commit 36b265ae438a364722c98136ba79cb450a48fca3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 10:12:30 2022 -0400

    m32r: pass copies of large structs

commit c248764d3391a460cdd31a1cae82281fd6dfbecd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 29 07:27:32 2022 -0400

    Update testsuite Makefile

commit fd1fe195e1d98b65ac3b0735cc0d0df95fc1b27b
Author: Martin Storsjö <martin@martin.st>
Date:   Sun May 29 14:16:49 2022 +0300

    Fix building on aarch64 after e409225b41b60c490a094bb068e639a2364202fd (#716)
    
    The ALIGN_DOWN macro was renamed in 2018 in
    e6eac7863e2bf1a009ea863041b354bdb4af6b67.

commit c1e237b22ee6042e2d4229008acea8f38c3d0109
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 20:46:14 2022 -0400

    Pass large structs by value on the stack

commit 769b7366d2312c7efdfa605cf1fc1156b94ba2e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 19:59:35 2022 -0400

    Fix for MS x64 ABI

commit faafcb9df9aebdde1415a73d17fe9e943d97d455
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 17:24:43 2022 -0400

    Fix moxie struct passing

commit f55d7ff1a24e9c678dac3397175772a9914c02b0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 14:30:13 2022 -0400

    moxie: structs > 8 go on stack

commit 55f80b026c2ac854086a2770d324fa55188f0f81
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 14:17:53 2022 -0400

    New test cases

commit 72c3192773fe483f6517e343ecc3ea468ce73a4f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 13:53:26 2022 -0400

    Pass copies of large structs on the stack

commit e409225b41b60c490a094bb068e639a2364202fd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 28 09:42:13 2022 -0400

    Pass large structs by value for Linux x86_64 and Aarch64.
    
    Aarch patch by Andreas Schwab. https://github.com/libffi/libffi/commit/482b37f00467325e3389bab322525099860dd9aa

commit 01d54435c9f9e22345cb2f7d482fcfb42fd11416
Author: Anthony Green <green@moxielogic.com>
Date:   Tue May 24 21:38:51 2022 -0400

    Mention loongson64

commit f259a6f6deff9bdc7dd998b8b6bdbb4c166b33c3
Author: zhangwenlong <zhangwenlong@loongson.cn>
Date:   Wed May 25 09:31:08 2022 +0800

    Support loongarch64 (#678)
    
    * update config.{guess,sub}
    
    * Support loongarch64
    
    Co-Authored-By: Cheng Lulu <chenglulu@loongson.cn>
    Co-Authored-By: Xi Ruoyao <xry111@mengyan1223.wang>
    Co-Authored-By: Xu Hao
    Co-Authored-By: Zhang Wenlong <zhangwenlong@loongson.cn>
    Co-Authored-By: Pan Xuefeng <panxuefeng@loongson.cn>
    
    Co-authored-by: panxuefeng <panxuefeng@loongson.cn>
    Co-authored-by: Cheng Lulu <chenglulu@loongson.cn>
    Co-authored-by: Xi Ruoyao <xry111@mengyan1223.wang>

commit d02d46607b5ba62510ddab5fa89303dfa09a7853
Author: Anthony Green <green@moxielogic.com>
Date:   Tue May 24 12:28:08 2022 -0400

    Debug cygwin builds

commit 7e93ded9302d7e6e3cc77b39e8eec4b323e63585
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 21:42:52 2022 -0400

    Revert "Don't dereference beyond the last array entry. (#667)" (#715)
    
    This reverts commit 92d77d0e87a5f2a8c9c9b2431ffd264cb664e17a.

commit 432384b6d47087d144d3e947b62c48ddc6e4740b
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Tue May 24 09:06:19 2022 +0800

    Add support for ARM64 as an Apple simulator platform. (#712)

commit 9af445fd70e4d7f2b3bdfc511cc3cc76a6b84c9a
Author: Kevin Bowling <kevin.bowling@kev009.com>
Date:   Mon May 23 18:05:01 2022 -0700

    Upstream FreeBSD riscv patch (#708)
    
    Like 8276f812a99b10d1f2c387dbd6ef2ca4f597c733 commit message:
        > devel/libffi: Fix abort() on ARM related to __clear_cache()
        >
        > The current FreeBSD __clear_cache() implementation does nothing #if
        > __i386__ || __x86_64__ #else abort();
        >
        > cognet@ advises this is an issue for anything !Apple that is using the
        > libcompiler_rt provided by Clang on ARM, and requires upstreaming.
    
    Co-authored-by: Kristof Provost <kp@FreeBSD.org>

commit de95947ae5db07e4589bb16bab30b6c8ba2b3106
Author: Roland Schatz <roland.schatz@oracle.com>
Date:   Tue May 24 03:04:43 2022 +0200

    Fix check for invalid varargs arguments. (#707)

commit 92d77d0e87a5f2a8c9c9b2431ffd264cb664e17a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 21:03:00 2022 -0400

    Don't dereference beyond the last array entry. (#667)

commit e504f90fe9123d256f6bc556badb25d1d0aa7046
Author: A. Wilcox <AWilcox@Wilcox-Tech.com>
Date:   Mon May 23 18:42:32 2022 -0500

    testsuite/libffi.closures: Fix PowerPC 64 (#709)
    
    -mlong-double-128 is only supported on glibc.
    
    This test still passes on glibc targets, and now passes on musl targets
    as well (which uses 64-bit ldbl).

commit f3e61d497a5ddc3bbe506e0554a0be421f6f0f35
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 09:11:42 2022 -0400

    Remove debug code

commit a36880e710f2ec37c0cc50d436facd7c2d282e7b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 08:35:21 2022 -0400

    Remove stray export command

commit 5f98afe802e189584e5649f53a7dd07280516efd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 08:11:26 2022 -0400

    Debug cygwin builds

commit abaacbf8cdf80ddd9303fda5d9be4312d52b531c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 23 07:57:26 2022 -0400

    Debug cygwin tests

commit e770fb76a781c642f185c23e686bf2af0429ce4c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 22 20:43:41 2022 -0400

    Clean up types

commit 2e825e219fa06d308b9a9863d70320606d67490d
Author: YunQiang Su <syq@debian.org>
Date:   Mon May 16 09:47:11 2022 +0800

    MIPS: fix some N32 test failure (#701)
    
    Some go closure and pointer testcase fails.
    These failures is not introduced by the complex support code.

commit 1f1c33753b65a75216770928018e8932168e8908
Author: YunQiang Su <syq@debian.org>
Date:   Mon May 16 09:45:27 2022 +0800

    MIPS: fix O32 softfloat support (#702)

commit 3ac265d5c0e038e324bae29131dbc4bacb4935ea
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Sun May 15 18:43:56 2022 -0700

    x86-64: Always double jump table slot size for CET (#710) (#711)
    
    When CET is enabled, double jump table slot size to add 4 bytes of ENDBR64
    for CET.  Since CET enabled clang doesn't have the LLVM assembler bug:
    
    https://bugs.llvm.org/show_bug.cgi?id=21501
    
    fixed by
    
    commit 04d39260d64e08b8bfb3844109ad43d4055b2e8d
    Author: Rafael Espindola <rafael.espindola@gmail.com>
    Date:   Wed Nov 4 23:50:29 2015 +0000
    
        Simplify .org processing and make it a bit more powerful.
    
    we can use .org to allocate jump table slot size to 16 bytes.

commit e67697c370e8875f28b2bf62fac25edad7558eca
Author: YunQiang Su <syq@debian.org>
Date:   Thu Mar 31 20:44:49 2022 +0800

    MIPS: add Complex support (#698)

commit e3cf8b806c3ca919f95b9d33d6037869a059c035
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Thu Mar 31 14:42:03 2022 +0200

    Allow system to have overlapping mallopt defines (#700)
    
    Which is the case on some OSes, such as QNX.

commit c086cacb8b9665fab0c046fc92959fc8af5239b8
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Thu Mar 31 14:40:59 2022 +0200

    Clean up the QNX ARM bits (#699)
    
    - Add missing include.
    - Use constants instead of magic values.

commit ab1677106605aba1c27665964ff90bea59612ce3
Author: Max Filippov <jcmvbkbc@gmail.com>
Date:   Sun Feb 20 16:01:38 2022 -0800

    Xtensa cleanups and XEA3 support (#677)
    
    * xtensa: clean up stack usage in ffi_trampoline call
    
    Space for outgoing call arguments reserved in the stack frame of the
    function ffi_trampoline overlaps register spill overflow area at the
    top of the frame. In xtensa XEA2 exception architecture the layout of
    overlapping areas is identical so that even if the ffi_trampoline
    registers frame gets spilled the memory contents doesn't change.
    This is not so with the xtensa XEA3 exception architecture, where
    registers a0 - a7 of a different function are spilled in that location.
    
    Reserve spill area for 8 registers to avoid overlapping of the spill
    area with the outgoing call arguments area in the ffi_trampoline.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
    
    * xtensa: support xtensa XEA3 exception architecture
    
    XEA3 requires that 32 bytes of register spill area is reserved in all
    functions. Fix ffi_cacheflush entry instruction to satisfy this
    requirement.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
    
    * xtensa: maintain stack alignment
    
    xtensa ABI requires stack alignment on 16 byte boundary and passing
    up to 6 arguments in registers. To simplify stack alignment maintenance
    fixed amount of stack space is reserved for arguments passed in
    registers and variable but correctly aligned amount is reserved for the
    remaining arguments. After copying arguments to the stack and loading
    registers the fixed part of the stack reservation is freed.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
    
    * xtensa: fix err_bad_abi tests
    
    Check ffi_cif::abi value in the ffi_prep_closure_loc and return
    FFI_BAD_ABI error if it's not one of the supported values.
    
    Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>

commit aa3fce08ba620c50db17215a9f14dd0f1facf741
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Sun Feb 13 21:04:33 2022 +0100

    riscv: extend return types smaller than ffi_arg (#680)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 464b4b66e3cf3b5489e730c1466ee1bf825560e0
Author: Dan Horák <dan@danny.cz>
Date:   Mon Jan 31 14:08:09 2022 +0100

    powerpc64: fix handling of homogeneous float128 structs (#689)
    
    If there is a homogeneous struct with float128 members, they should be
    copied to vector register save area. The current code incorrectly copies
    only the value of the first member, not increasing the pointer with each
    iteration. Fix this.

commit b60d4fc7bb4419021bf566e09de55ed1d9b041db
Author: rorth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Thu Dec 23 14:32:46 2021 +0100

    src/x86/win64.S: Use #define instead of .macro (#665) (#669)
    
    The Solaris/x86 assembler doesn't support .macro/.endm, so use #define since
    win64.S is passed through cpp anyway.

commit 4fa6239f42ddc7df12e40da9ae25ba715312239c
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Thu Dec 23 14:27:32 2021 +0100

    testsuite/libffi.call: fix mismatching return types (#679)
    
    Co-authored-by: Andreas Schwab <schwab@suse.de>

commit 0f2dd369cd5edcefad29b3fca4e1d08cb34f8f19
Author: Jules Maselbas <54854023+jmaselbas@users.noreply.github.com>
Date:   Wed Sep 22 21:39:56 2021 +0200

    Makefile: Add missing kvx/asm.h to dist headers (#660)
    
    The header kvx/asm.h is required to build libffi and is missing from
    the dist tarball.
    
    Signed-off-by: Jules Maselbas <jmaselbas@kalray.eu>

commit ee1263f7d43bd29b15fc72c4d9520a824e8004df
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 17:46:17 2021 -0400

    Fix 'type'-o

commit 86d5ecc5e84fbbc79fcff6a307310630d9d68549
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 16:58:32 2021 -0400

    Fix struct arg passing

commit 03596285ed36b94bb3e1d8bdebfe58590e2766df
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 10:16:42 2021 -0400

    No more xfail for alpha

commit 4ac18f26ed16588377b1482208212aaa39624e21
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 10:01:40 2021 -0400

    Add alpha CPU

commit 7643c6ee68e376810b4185e5f38e156c97bcc090
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 08:51:35 2021 -0400

    Try to fix ARM QEMU tests

commit a04f57bce057604f38bb7c1bf32b7f671d2b56d5
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 08:47:53 2021 -0400

    Fix m32r testing

commit 339acf3d8f049d296dafac3f482c1b7db29c0bae
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 08:38:18 2021 -0400

    Debug cross-in-containers builds

commit 43e4ad4d7b4bcc87ee447736a1172b2801a47908
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 07:55:59 2021 -0400

    Test passing structs by value

commit 68485e33a413c3d91fbfd7ec270803ae6bd3d3db
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jul 29 07:13:35 2021 -0400

    Mention x32 static tramponline fix

commit 07f826fdd4d8a23a190f107f7ec6ad830a4864a0
Author: Harald van Dijk <harald@gigawatt.nl>
Date:   Sun Jul 25 02:39:37 2021 +0100

    Fix trampoline_code_table for x32. (#657)
    
    x32's struct tramp_parm has 32-bit pointers. This change adjusts the
    loads and offsets accordingly.

commit be0b3b6e75d4890fe18ba4164b91387beaebee06
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 21:51:03 2021 -0400

    Fix CHECK

commit 7db17442a6c9f1399065748b7d5b9fbcac203344
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:30:01 2021 -0400

    Don't check the whole buffer, just what we printed.

commit 8bcf594749882e9e4966fec2e3d6009d08a554ab
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:26:02 2021 -0400

    Fix test case

commit c96b057757446fe4277f30e8423f09851ae5d0fa
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:16:39 2021 -0400

    Fix test check

commit 4ed23be8e2a59e438c201ca1ba5affc0b0477b15
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 11:08:01 2021 -0400

    Fix test check

commit eb2447249540ca568b0b464f6107501dcc0f65ab
Author: Hood Chatham <hood@mit.edu>
Date:   Fri Jul 16 14:33:04 2021 +0000

    Use CHECK to assert more things in test suite (#654)
    
    * Use CHECK to assert more things in test suite
    
    * Use snprintf instead of sprintf
    
    * Fix va_struct1 and va_struct3

commit a541fc600f4418441f91073a0834ea47b0989de9
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 08:56:30 2021 -0400

    Update README for next release.

commit b4cf80ab54b6d9d31ef2135036e471388cf026df
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 08:55:02 2021 -0400

    Trigger actions on master branch

commit d1eef904766dbd647de6c240a57dbc98d46e33dd
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 16 08:29:08 2021 -0400

    Migrate from travis-ci to github actions.

commit f9ea41683444ebe11cfa45b05223899764df28fb
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 21:10:49 2021 -0400

    Update version to 3.4.2

commit 2bdc8e52efb78d939f23efb4f9c515355610bff5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 19:50:29 2021 -0400

    Version 3.4.1

commit c1d09bf08c2859abb40c476c57ae521d208f92a8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 18:50:31 2021 -0400

    Update version to 3.4.0

commit 1ed0aa73806872f0c31dccf2c689c762239d3353
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 18:45:11 2021 -0400

    Fix warnings

commit 0a2cc2ec2893821f62b36b269da1dbc0442a5617
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 14:59:07 2021 -0400

    Add missing test cases to distribution

commit ee3ef737857e13cc01a15dbef298478d90188805
Author: Hood Chatham <hood@mit.edu>
Date:   Mon Jun 28 11:51:35 2021 -0700

    Add tests for single entry structs (#653)

commit f08c5ace5750f1e1f234f52f4d3d772bb8d276a0
Author: Hood Chatham <hood@mit.edu>
Date:   Mon Jun 28 07:24:19 2021 -0700

    Fix the assertions in cls-24byte (#652)
    
    * Fix the assertions in cls-24byte
    
    * Update print statement too

commit 4557f232926353f5cdec0f2f459e4d59ce8f19e4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jun 28 09:53:01 2021 -0400

    3.4.0 release candidate 2

commit cd4428911d5c4d25ce2c24e6728124792124bba2
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Mon Jun 28 04:56:30 2021 -0700

    Add missing FFI_HIDDEN to ffi_tramp_is_present declaration (#651)
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 9fa94c607852081adce33547bde292fe4313cff7
Author: Hood Chatham <hood@mit.edu>
Date:   Sun Jun 27 11:02:33 2021 -0700

    Print more information when an assertion fails in test suite (#649)

commit 91eaadfb2e4b79d12a45d24002b06563e5905e5d
Author: Hood Chatham <hood@mit.edu>
Date:   Sun Jun 27 09:49:31 2021 -0700

    Fix signature of function pointer in cls_dbls_struct (#648)

commit 132699b95d3ee4d889ea2a80540acf3300987dad
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Jun 27 16:50:20 2021 +0100

    configure.ac: add --disable-exec-static-tramp flag (#647)
    
    Some projects like GHC (Glasgow Haskell Compiler) and
    gobject-introspection use `ffi_closure_alloc()` as a way
    to allocate executable memory. exec static tramp
    interferes with it (unclear how exactly yet).
    
    GHC symptom: ffi closure freeing cimplains about unexpected
    trampoline (GHC manually fills one):
    
    ```
    $ ghci
    GHCi, version 8.10.5: https://www.haskell.org/ghc/  :? for help
    ghc: freeHaskellFunctionPtr: not for me, guv! 0x7f0417a1efe8
    ghc: freeHaskellFunctionPtr: not for me, guv! 0x7f0417a1efc8
    ```
    
    gobject-introspection symptom:
    
    ```
    $ meld
    Segmentation fault (core dumped)
    
    $ gdb --args /usr/bin/python3.9 /usr/bin/meld
    (gdb) run
    ...
    Thread 1 "python3.9" received signal SIGSEGV, Segmentation fault.
    0x00007fffe9ac1ae8 in g_callable_info_free_closure (
      callable_info=0x555555d45990, closure=0x7fffe9e70c20)
        at ../gobject-introspection-1.68.0/girepository/girffi.c:428
    428       g_free (wrapper->ffi_closure.cif->arg_types);
    (gdb) bt
      callable_info=0x555555d45990, closure=0x7fffe9e70c20)
        at ../gobject-introspection-1.68.0/girepository/girffi.c:428
      data=0x555555d252d0)
        at ../pygobject-3.40.1/gi/pygi-closure.c:635
    ...
    ```
    
    To ease downstreams narrowing down the actual problem let's
    provide a knob to disable exec static trampolines.
    
    The change for not affect current default.
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 4e07374c2773711902ec12905d5c64d95d22d050
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 27 11:25:06 2021 -0400

    Remove caveat about varargs support

commit 11f9713887e1d8e9bdf861c1555de55aba9fc46c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 27 07:46:12 2021 -0400

    Update contact info

commit f792adb61a27aa2a7d24573b956ce29ebdb82e03
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Jun 26 22:26:52 2021 +0100

    configure.ac: allow user to specify READELF (#646)
    
    Before the change with x86_64-pc-linux-gnu cross-compiler
    installed the configure was not able to find cross-readelf:
    
    ```
    $ ./configure --host=x86_64-pc-linux-gnu
    ...
    checking whether .eh_frame section should be read-only... .././configure: line 19540: readelf: command not found
    yes
    ...
    ```
    
    The change uses AC_CHECK_TOOL to automatically seatch for ${host}-readelf,
    readelf. And as a bonus it also allows user to override readelf with
    something like READELF=llvm-readelf.
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 9cf15b3a284d8e79f3673b8743d4157739df5d36
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 26 12:12:06 2021 -0400

    Make 3.4 release candidate 1

commit 1e5dc8de825d03f5493884a45e1edeacda2106c5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 26 12:08:35 2021 -0400

    Add missing file from make dist.  Add missing license info.

commit c0b210c7fd1e5b4a17e9fc839a4cf1d75483d591
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jun 26 10:55:57 2021 -0400

    Remove test case

commit 87429ce726ead7bb789d194c6d979c5b0c4086e9
Author: Matthew Green <85970515+squidhacks@users.noreply.github.com>
Date:   Sat Jun 26 08:49:45 2021 -0400

    This test includes a closure and must live in the closures test directory. (#645)
    
    Co-authored-by: Matthew Green <squidhacks@users.noreply.github.com>

commit 8d83c7c1fa331b93e58967979c59c38600df1ee9
Author: Hood Chatham <roberthoodchatham@gmail.com>
Date:   Fri Jun 25 19:50:33 2021 -0700

    Make test methods static (#644)

commit becae7397873d6bb85a271b16961f055e71f42a6
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 22 13:01:06 2021 -0400

    Switch from travis-ci.org to travis-ci.com.

commit fa1ef887d4dc5d18696517e32e2ae98310f0040d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 22 08:48:24 2021 -0400

    Avoid undefined behaviour

commit 84bb56914756845371be62e2753041521fd5d261
Author: Tres Finocchiaro <tres.finocchiaro@gmail.com>
Date:   Tue Jun 22 07:33:46 2021 -0400

    Remove libtool-ldflags file from .gitignore (#600)
    
    This is correct.  Thank you!

commit 5651bea284ad0822eafe768e3443c2f4d7da2c8f
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Tue Jun 15 15:19:26 2021 -0400

    2021-06-15  Jakub Jelinek  <jakub@redhat.com>
    
            * src/x86/ffi64.c (classify_argument): For FFI_TYPE_STRUCT set words
            to number of words needed for type->size + byte_offset bytes rather
            than just type->size bytes.  Compute pos before the loop and check
            total size of the structure.
            * testsuite/libffi.call/nested_struct12.c: New test.

commit f56eb85227bbcc7bd81232a338655146385a77ca
Author: DJ Delorie <dj@delorie.com>
Date:   Tue Jun 15 08:50:20 2021 -0400

    Don't stop test on copy failure (#636)
    
    * Don't stop test on copy failure
    
    Static-library tests were failing only because there were
    no DLLs to copy.  This change makes a copy failure not stop
    the build; if a failed copy would otherwise be relevent, the
    later tests would fail anyway.
    
    While there are more clever ways to solve this, a brute force
    fix is sufficient.
    
    * [TEST] Try cygwin64; install more packages explicitly
    
    * use correct cygwin64 directory name
    
    appveyor has cygwin64 pre-installed in /cygwin64, and 32-bit cygwin
    in /cygwin
    
    * More testing - revert VS change, bump travis timeout
    
    * Add -g to update the rest of perl
    
    * Skip execution tests on non-native platforms
    
    Special site.exp that skips the unix_load() command for arm platforms.
    
    Unset TERM to avoid cruft in stdout
    
    Try harder to find the libffi libraries

commit ff059dd96af6ba4daf7bc9ddf22d1d2dbf6a177b
Author: vhankala <81743325+vhankala@users.noreply.github.com>
Date:   Thu Jun 10 18:41:02 2021 +0000

    Fix build on OpenBSD/mips64 (#638)
    
    The build fails on OpenBSD/mips64 because clang 11's integrated
    assembler expects read-only .eh_frame:
    
    ../src/mips/n32.S:585:9: error: changed section flags for .eh_frame, expected: 0x2
            .section .eh_frame,"aw",@progbits
            ^
    
    Use EH_FRAME_FLAGS to get matching flags for the section.

commit e6eb59cde6580607544160f8e7dedc326b4799fd
Author: Cheng Jin <jincheng@ca.ibm.com>
Date:   Wed Jun 9 16:00:10 2021 -0400

    Add struct test to verify a nested float struct (#640)
    
    The test aims to check a nested float struct
    [float, [float,float]] to see whether it works good
    with libffi.
    
    Signed-off-by: Cheng Jin <jincheng@ca.ibm.com>

commit 6eb38863bc0b21854959ebf845f8672c44a99684
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 9 15:45:31 2021 -0400

    Remove reference to old test case

commit ca2235ecfe717ecaed6abbef3a2ca2918a91c60b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 4 18:20:24 2021 -0400

    Revert appveyor changes

commit 243004cc4c8be552503a5d10710ebb252b406064
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 23:00:29 2021 -0400

    Update vs version

commit 04c157f49a1b83798c102f3259bc397b9b7f7266
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 22:57:47 2021 -0400

    Upgrade to vs2019

commit 03a78e88402fff424426a1968e014be93666b86f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 22:53:44 2021 -0400

    Try updating automake

commit 1f1829bd4ce19b58d0354db3bef21cb8402cdf82
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 1 22:34:37 2021 -0400

    Bring in the latest version of perl

commit dd5bd03075149d7cf8441875c1a344e8beb57dde
Author: Martin Storsjö <martin@martin.st>
Date:   Wed Apr 7 05:42:10 2021 +0300

    Fix building for arm windows with mingw toolchains (#631)
    
    * arm: Check _WIN32 instead of _M_ARM or _MSC_VER for detecting windows
    
    This matches what was done for ARM64 in
    c06468fa6674d3783a0edb1d0fae9afc8bc28513.
    
    * arm: Only use armasm source when building with MSVC
    
    When building for windows/arm with clang, the normal gas style .S
    source works fine (if fixed up to support thumb and other windows
    specifics).
    
    This matches what was done for ARM64 in
    c06468fa6674d3783a0edb1d0fae9afc8bc28513.
    
    * arm: Fix sysv.S to work in thumb mode
    
    Align cases in jump tables (adding nop padding to make sure each
    case starts where expected).
    
    Rewrite instructions that add directly to the pc register.
    
    For ffi_closure_ret, factor out a call_epilogue subroutine that
    restores both sp and pc from the stack; the thumb version of ldm
    can't load into the sp register. To avoid excessive ifdeffing, keep
    using call_epilogue in arm mode, but keep the shorter "ldm sp, {sp, pc}"
    epilogue in that case.
    
    * arm: Add win32 version of trampoline to sysv.S
    
    This matches the version of it in sysv_msvc_arm32.S. The calling
    C code expects a specific form of the trampoline on windows; make
    sure these work the same on windows regardless of the form of
    assembly used.
    
    * arm: Avoid optimizing out clearing the thumb bit of ffi_arm_trampoline
    
    We clear the thumb bit of ffi_arm_trampoline with a bitmask before
    memcpying its instructions into closure->tramp.
    
    If the bit isn't cleared, the memcpy of the trampoline function
    copies the wrong instructions.
    
    If the ffi_arm_trampoline symbol is declared as an array of int,
    the compiler can assume that it is aligned to a 4 byte boundary
    and the bitmask operation is a no-op, and optimize it out.
    
    See https://godbolt.org/z/dE3jE1WTz; both Clang and GCC optimize
    out the bitmask as it is, while MSVC doesn't. By declaring the
    trampoline as an array of unsigned char, the bitmask works as
    intended.

commit 95ef857d5c6ed15c6c6ba5f8a5b26c0a38b417ab
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 25 10:43:05 2021 -0400

    Verbose brew update.

commit 78c97c9ff4491e14e78992ffabdd043674c05e15
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 25 09:15:37 2021 -0400

    Move container images to quay.io.

commit 58dfdf6a84b98296ceb2b8b4237d37aa75bb2cd4
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Wed Mar 24 23:19:54 2021 +0000

    testsuite: fix compiler vendor detection on dash as /bin/sh (#594)
    
    In https://bugs.gentoo.org/753299 Paolo Pedroni reported
    a single test failure out of all libffi. Here is the minimal
    reproducer:
    
    ```
    $ ./autogen
    $ CONFIG_SHELL=/bin/dash ./configure --host=x86_64-pc-linux-gnu
    $ make check RUNTESTFLAGS='complex.exp'
    ...
    FAIL: libffi.complex/cls_align_complex_float.c (test for excess errors)
    ```
    
    This happens because under 'dash' shell autoconf generates slightly
    different style of string quotation in `config.log`:
    
    - on bash: `ax_cv_c_compiler_vendor=gnu`
    - on dash: `ax_cv_c_compiler_vendor='gnu'`
    
    To avoid shell quotation parsing the change just embeds
    `compiler_vendor` into `local.exp` at configure time.
    
    Reported-by: Paolo Pedroni
    Bug: https://bugs.gentoo.org/753299
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit eafab2356e8dcf5f01d2bcfa311cafba3b395a7e
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Wed Mar 24 11:38:36 2021 -0700

    arm64e: Pull in pointer authentication code from Apple's arm64e libffi port (#565)
    
    NOTES: This changes the ptrauth support from #548 to match what Apple is
           shipping in its libffi-27 tag.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 01b56f4b3e89a349228c4ccf55061d847153c8d6
Author: ericLemanissier <ericLemanissier@users.noreply.github.com>
Date:   Wed Mar 24 12:20:27 2021 +0100

    fix windows tests (#595)
    
    * Update .appveyor.yml
    
    * add (debug+release)*(shared+static) CI
    
    * fix libversion

commit 1aeb26714ec30649f5d9de5b4884a4ac46f5f474
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 24 12:16:12 2021 +0100

    x86: Fix thiscall and fastcall stack cleanup behavior (#611)
    
    These are meant to use callee clean-up.

commit e92c81a549924c80d70666ecbe5ed0c2fcd7963a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 24 07:07:53 2021 -0400

    Mention MSVC runtime stack checking improvement

commit f88add14e40de398706c732e578620e8106062c7
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 24 12:04:51 2021 +0100

    x86: Fix MSVC runtime checks interop (#612)
    
    MSVC can add runtime code that checks if a stack frame is mismanaged,
    however our custom assembly deliberately accesses and modifies the parent
    stack frame.  Fortunately we can disable that specific check for the
    function call so do that.
    
    Co-authored-by: Matthew Waters <matthew@centricular.com>

commit aa4dafb159a2e0f74aa39353a1bf23a943f36656
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 19:06:08 2021 -0400

    Mention LIBFFI_TMPDIR

commit 70ea259c603e0f84eda766be29d4259f1e8fe5b7
Author: DJ Delorie <dj@delorie.com>
Date:   Tue Mar 23 19:03:45 2021 -0400

    Search $LIBFFI_TMPDIR also (#605)
    
    Most temp file directories need to be hardened against execution, but
    libffi needs execute privileges.  Add a libffi-specific temp directory
    that can be set up by sysadmins as needed with suitable permissions.
    This both ensures that libffi will have a valid temp directory to use
    as well as preventing attempts to access other directories.

commit f58e5ee63263657a7e8f2892d27c012a16facc1a
Author: AndreRH <andre.hentschel@ok.de>
Date:   Tue Mar 23 23:54:00 2021 +0100

    aarch64: Fix closures for win64 (#606)

commit 5865450decd13275b2bde064bd4a0f79bca6dba2
Author: Francisco Boni <boboniboni@gmail.com>
Date:   Tue Mar 23 19:50:09 2021 -0300

    Update ax_cc_maxopt m4 macro (#617)
    
    Keeps libffi's specific changes
    (https://github.com/libffi/libffi/commit/cec3a3a201f17a7f018f25e1a0917bd5206e5a5a#diff-2396a1256ac4b1c6849c931ddb8018bdd984bb2383be21bb819a33b95d8d603f)
    and updates to the latest ax_cc_maxopt.m4
    (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=commit;h=73ee1b396c21062ee8eeb8721ba5323322110fb5):
    
    ax_cc_maxopt.m4: retain setting of CFLAGS by configure
    
    AX_CC_MAXOPT checks whether CFLAGS was set by the user; if so, the user’s
    setting is respected. This behavior is retained, of course.
    
    However, AX_CC_MAXOPT was then setting CFLAGS="". This overrode the default
    setting by configure, which usually includes -g. Hence, if CFLAGS was not
    set by the user, retain the default setting, to preserve the ability to
    debug.
    
    A typical default setting from configure is "-g -O2". This means that
    AX_CC_MAXOPT might typically set CFLAGS to "-g -O2 -O3". This is fine,
    because the later -O3 will override the earlier -O2. (The only assumption is
    that all compilers that AX_CC_MAXOPT knows behave in this sane way.)

commit 8f44384df17b536615caef951a615655a967103f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 14:24:54 2021 -0400

    Fix formatting

commit 9d491b5e21ffd7fcf2370d998a4832b755d1c9e9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 12:26:37 2021 -0400

    Mention KVX

commit 205cf01b57972fdc8c090fc79192b464dc43fc0d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 23 11:31:08 2021 -0400

    Bug #680.  Don't accept floats or small ints as var args. (#628)
    
    * Bug #680.  Don't accept floats or small ints as var args.
    
    * Bug #680.  Don't accept floats or small ints as var args.
    
    * Bug #680.  Don't accept floats or small ints as var args.

commit d271dbe0a8b230e566fa3385babdc9cc0ca214ea
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Sat Mar 20 06:06:28 2021 -0700

    Add some missing #if conditionals from Apple's code drop (#620)
    
    * arm/aarch64: Add FFI_CLOSURES conditionals where appropriate
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch64: Don't emit the do_closure label when building without FFI_GO_CLOSURES
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit bae695da367b6abd83152f8f1e9b1a8b79794c8d
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Sat Mar 6 00:09:17 2021 +0800

    Add configuration generator for tvOS and watchOS. (#625)

commit 9ba559217bea0803263a9a9a0bafcf9203606f5b
Author: Madhavan T. Venkataraman <75220914+madvenka786@users.noreply.github.com>
Date:   Fri Mar 5 10:07:30 2021 -0600

    Static tramp v5 (#624)
    
    * Static Trampolines
    
    Closure Trampoline Security Issue
    =================================
    
    Currently, the trampoline code used in libffi is not statically defined in
    a source file (except for MACH). The trampoline is either pre-defined
    machine code in a data buffer. Or, it is generated at runtime. In order to
    execute a trampoline, it needs to be placed in a page with executable
    permissions.
    
    Executable data pages are attack surfaces for attackers who may try to
    inject their own code into the page and contrive to have it executed. The
    security settings in a system may prevent various tricks used in user land
    to write code into a page and to have it executed somehow. On such systems,
    libffi trampolines would not be able to run.
    
    Static Trampoline
    =================
    
    To solve this problem, the trampoline code needs to be defined statically
    in a source file, compiled and placed in the text segment so it can be
    mapped and executed naturally without any tricks. However, the trampoline
    needs to be able to access the closure pointer at runtime.
    
    PC-relative data referencing
    ============================
    
    The solution implemented in this patch set uses PC-relative data references.
    The trampoline is mapped in a code page. Adjacent to the code page, a data
    page is mapped that contains the parameters of the trampoline:
    
            - the closure pointer
            - pointer to the ABI handler to jump to
    
    The trampoline code uses an offset relative to its current PC to access its
    data.
    
    Some architectures support PC-relative data references in the ISA itself.
    E.g., X64 supports RIP-relative references. For others, the PC has to
    somehow be loaded into a general purpose register to do PC-relative data
    referencing. To do this, we need to define a get_pc() kind of function and
    call it to load the PC in a desired register.
    
    There are two cases:
    
    1. The call instruction pushes the return address on the stack.
    
       In this case, get_pc() will extract the return address from the stack
       and load it in the desired register and return.
    
    2. The call instruction stores the return address in a designated register.
    
       In this case, get_pc() will copy the return address to the desired
       register and return.
    
    Either way, the PC next to the call instruction is obtained.
    
    Scratch register
    ================
    
    In order to do its job, the trampoline code would need to use a scratch
    register. Depending on the ABI, there may not be a register available for
    scratch. This problem needs to be solved so that all ABIs will work.
    
    The trampoline will save two values on the stack:
    
            - the closure pointer
            - the original value of the scratch register
    
    This is what the stack will look like:
    
            sp before trampoline ------>    --------------------
                                            | closure pointer  |
                                            --------------------
                                            | scratch register |
            sp after trampoline ------->    --------------------
    
    The ABI handler can do the following as needed by the ABI:
    
            - the closure pointer can be loaded in a desired register
    
            - the scratch register can be restored to its original value
    
            - the stack pointer can be restored to its original value
              (the value when the trampoline was invoked)
    
    To do this, I have defined prolog code for each ABI handler. The legacy
    trampoline jumps to the ABI handler directly. But the static trampoline
    defined in this patch jumps tp the prolog code which performs the above
    actions before jumping to the ABI handler.
    
    Trampoline Table
    ================
    
    In order to reduce the trampoline memory footprint, the trampoline code
    would be defined as a code array in the text segment. This array would be
    mapped into the address space of the caller. The mapping would, therefore,
    contain a trampoline table.
    
    Adjacent to the trampoline table mapping, there will be a data mapping that
    contains a parameter table, one parameter block for each trampoline. The
    parameter block will contain:
    
            - a pointer to the closure
            - a pointer to the ABI handler
    
    The static trampoline code would finally look like this:
    
            - Make space on the stack for the closure and the scratch register
              by moving the stack pointer down
            - Store the original value of the scratch register on the stack
            - Using PC-relative reference, get the closure pointer
            - Store the closure pointer on the stack
            - Using PC-relative reference, get the ABI handler pointer
            - Jump to the ABI handler
    
    Mapping size
    ============
    
    The size of the code mapping that contains the trampoline table needs to be
    determined on a per architecture basis. If a particular architecture
    supports multiple base page sizes, then the largest supported base page size
    needs to be chosen. E.g., we choose 16K for ARM64.
    
    Trampoline allocation and free
    ==============================
    
    Static trampolines are allocated in ffi_closure_alloc() and freed in
    ffi_closure_free().
    
    Normally, applications use these functions. But there are some cases out
    there where the user of libffi allocates and manages its own closure
    memory. In such cases, static trampolines cannot be used. These will
    fall back to using legacy trampolines. The user has to make sure that
    the memory is executable.
    
    ffi_closure structure
    =====================
    
    I did not want to make any changes to the size of the closure structure for
    this feature to guarantee compatibility. But the opaque static trampoline
    handle needs to be stored in the closure. I have defined it as follows:
    
    -  char tramp[FFI_TRAMPOLINE_SIZE];
    +  union {
    +    char tramp[FFI_TRAMPOLINE_SIZE];
    +    void *ftramp;
    +  };
    
    If static trampolines are used, then tramp[] is not needed to store a
    dynamic trampoline. That space can be reused to store the handle. Hence,
    the union.
    
    Architecture Support
    ====================
    
    Support has been added for x64, i386, aarch64 and arm. Support for other
    architectures can be added very easily in the future.
    
    OS Support
    ==========
    
    Support has been added for Linux. Support for other OSes can be added very
    easily.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * x86: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code mapping and data mapping sizes.
    
            - Define the trampoline code table statically. Define two tables,
              actually, one with CET and one without.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_unix64
                    - ffi_closure_unix64_sse
                    - ffi_closure_win64
    
              The prolog functions are called:
    
                    - ffi_closure_unix64_alt
                    - ffi_closure_unix64_sse_alt
                    - ffi_closure_win64_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * i386: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code table statically. Define two tables,
              actually, one with CET and one without.
    
            - Define the trampoline code table statically.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_i386
                    - ffi_closure_STDCALL
                    - ffi_closure_REGISTER
    
              The prolog functions are called:
    
                    - ffi_closure_i386_alt
                    - ffi_closure_STDCALL_alt
                    - ffi_closure_REGISTER_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * arm64: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code mapping and data mapping sizes.
    
            - Define the trampoline code table statically.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_SYSV
                    - ffi_closure_SYSV_V
    
              The prolog functions are called:
    
                    - ffi_closure_SYSV_alt
                    - ffi_closure_SYSV_V_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>
    
    * arm: Support for Static Trampolines
    
            - Define the arch-specific initialization function ffi_tramp_arch ()
              that returns trampoline size information to common code.
    
            - Define the trampoline code mapping and data mapping sizes.
    
            - Define the trampoline code table statically.
    
            - Introduce a tiny prolog for each ABI handling function. The ABI
              handlers addressed are:
    
                    - ffi_closure_SYSV
                    - ffi_closure_VFP
    
              The prolog functions are called:
    
                    - ffi_closure_SYSV_alt
                    - ffi_closure_VFP_alt
    
              The legacy trampoline jumps to the ABI handler. The static
              trampoline jumps to the prolog function. The prolog function uses
              the information provided by the static trampoline, sets things up
              for the ABI handler and then jumps to the ABI handler.
    
            - Call ffi_tramp_set_parms () in ffi_prep_closure_loc () to
              initialize static trampoline parameters.
    
    Signed-off-by: Madhavan T. Venkataraman <madvenka@linux.microsoft.com>

commit 5c63b463b87d3c06102a4a7f05f395929d9ea79b
Author: DJ Delorie <dj@delorie.com>
Date:   Wed Dec 2 16:14:27 2020 -0500

    Use memfd_create() (#604)
    
    memfd_create creates a file in a memory-only filesystem that may
    bypass strict security protocols in filesystem-based temporary
    files.

commit cb8474368cdef3207638d047bd6c707ad8fcb339
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Wed Dec 2 12:52:12 2020 -0800

    libffi/x86: Always check __x86_64__ for x32 hosts (#601) (#602)
    
    Since for x86_64-*x32 and x86_64-x32-* hosts, -m32 generates ia32 codes.
    We should always check __x86_64__ for x32 hosts.

commit e70bf987daa7b7b5df2de7579d5c51a888e8bf7d
Author: Tres Finocchiaro <tres.finocchiaro@gmail.com>
Date:   Tue Nov 24 19:13:57 2020 -0500

    Properly quote and resolve msvcc.sh params (#596)

commit 8cc8f446f5aac13e107161dffbc15d1ee1a58878
Author: Mike Hommey <mh@glandium.org>
Date:   Tue Nov 10 20:41:33 2020 +0900

    Allow to build with mingw-clang (#579)
    
    For some reason, compiling sysv.S with mingw-clang fails with:
    ```
    error: invalid variant 'ffi_closure_inner@8'
    ```
    
    This can be fixed (worked around?) by quoting the symbol. This works
    fine with mingw-gcc too.

commit d817d0daa312c58548d7a081aa876027ca103766
Author: Mike Hommey <mh@glandium.org>
Date:   Tue Nov 10 20:39:25 2020 +0900

    Don't use FFI_TYPE_LONGDOUBLE in the jump table in win64*.S (#580)
    
    It may have the same value as FFI_TYPE_DOUBLE per ffi.h, which
    possibly can make things go wrong with .org/ORG.
    
    For instance, GCC complains about "Error: attempt to move .org
    backwards"

commit 56f7df711f70414d4f3663b34e54b122b38bab88
Author: AndreRH <andre.hentschel@ok.de>
Date:   Tue Nov 10 12:27:59 2020 +0100

    aarch64: Allow FFI_WIN64 for winelib (#593)

commit 8111cd06921e80d5d7192ce8d1f64733072fdbcd
Author: Brandon Bergren <git@bdragon.rtk0.net>
Date:   Tue Oct 27 09:07:38 2020 -0500

    Add support for powerpc64le-*-freebsd*. (#581)
    
    Tests pass with no additional changes needed, tested on hardware.

commit 484c1a0d7536be60002473f7bb82223efe139883
Author: Ken <21211439+kencu@users.noreply.github.com>
Date:   Tue Oct 27 07:07:07 2020 -0700

    darwin powerpc: use go closures only if enabled (#583)
    
    SHA: 0ff9419f2e75652426469e256cb7d0748064ad58 added go closures for darwin powerpc AIX, but
    these have not yet been implemented for non-AIX systems
    
    use the go closures only if enabled

commit 032b3cd6f7850f3ebc1269eeab7d1db3ea518d29
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Tue Oct 27 07:06:21 2020 -0700

    Support building x86 and arm64 without FFI_GO_CLOSURES (#586)
    
    * x86: Support building without FFI_GO_CLOSURES
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * arm: Support building without FFI_GO_CLOSURES
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 93cf288ddd59c7cb203c1aba25de5e5b8f308da6
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Tue Oct 27 07:05:28 2020 -0700

    testsuite: Add a missing include of <inttypes.h> to fix build failure in test suite (#587)
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit c78fcf88ab13a5cc414826a018dd46c3f886adee
Author: petersn <schmidtnielsenpeter@gmail.com>
Date:   Tue Oct 27 07:02:36 2020 -0700

    Removing unnecessary instruction from ffi_call_unix64 (#588)
    
    unix64.S's `ffi_call_unix64` looks like it used to take six parameters,
    where the sixth said the number of SSE register arguments. However,
    currently the function only takes five parameters, and the number of SSE
    register arguments is encoded in the `struct register_args *` passed as
    the first parameter to `ffi_call_unix64`. This change removes an
    instruction that tries to use this missing sixth parameter as the number
    of SSE arguments.
    
    This fix should not change any behavior, nor fix any bugs, because a few
    instructions later the value moved from %r9d into %eax is overwritten by
    the correct value anyway. This change merely makes the code a tad less
    confusing, because currently the assembly moves from a register (r9)
    whose value is never set.

commit 2d86809db6d1d626a9df40c283ec564ac98ff85d
Author: jacobly0 <jacobly0@users.noreply.github.com>
Date:   Tue Oct 27 10:00:03 2020 -0400

    Fix read-only .eh_frame section test when CFLAGS contains -flto. (#590)

commit f4435980fa2da335fe388db431d4a7946a99a2b9
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Oct 27 23:36:21 2020 +1030

    Power10 libffi fixes (#585)
    
    Power10 pc-relative code doesn't use or preserve r2 as a TOC pointer.
    That means calling between pc-relative and TOC using code can't be
    done without intervening linker stubs, and a call from TOC code to
    pc-relative code must have a nop after the bl in order to restore r2.
    
    Now the PowerPC libffi assembly code doesn't use r2 except for the
    implicit use when making calls back to C, ffi_closure_helper_LINUX64
    and ffi_prep_args64.  So changing the assembly to interoperate with
    pc-relative code without stubs is easily done.
    
            * src/powerpc/linux64.S (ffi_call_LINUX64): Don't emit global
            entry when __PCREL__.  Call using @notoc.  Add nops.
            * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
            (ffi_go_closure_linux64): Likewise.

commit 407394c0aac2db4a1978a7691035889db9924a01
Author: Tim Gates <tim.gates@iress.com>
Date:   Sun Oct 11 15:07:40 2020 +1100

    docs: fix simple typo, paramters -> parameters (#589)
    
    There is a small typo in src/x86/ffi.c.
    
    Should read `parameters` rather than `paramters`.

commit ead65ca8711aa07efc0453f67136aff82f33c01f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 19 08:34:09 2020 -0400

    Re-enable s390x testing

commit 8276f812a99b10d1f2c387dbd6ef2ca4f597c733
Author: Niclas Zeising <zeising+github@daemonic.se>
Date:   Fri Aug 7 21:05:23 2020 +0200

    Upstream local FreeBSD patches (#567)
    
    * Add support for FreeBSD mips
    
    Add support for FreeBSD mips, this has been a local patch in the FreeBSD
    ports tree for quite some time.
    
    Originally submitted by sson, and committed by sbruno AT FreeBSD DOT org
    See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191909 for
    background details.
    
    Signed-off-by: Niclas Zeising <zeising@daemonic.se>
    
    * Add support for FreeBSD powerpcspe
    
    Add support for powerpcspe on FreeBSD
    This has been in the FreeBSD ports tree for some time.
    Originally submitted by jhibbits AT FreeBSD DOT org.
    
    Signed-off-by: Niclas Zeising <zeising@daemonic.se>
    
    * Fix abort() on FreeBSD arm related to __clear_cache()
    
    This patch has been in the FreeBSD ports tree for a number of years.
    Original commit by koobs AT FreeBSD DOT org
    
    Original commit message:
    > devel/libffi: Fix abort() on ARM related to __clear_cache()
    >
    > The current FreeBSD/ARM __clear_cache() implementation does nothing #if
    > __i386__ || __x86_64__ #else abort();
    >
    > cognet@ advises this is an issue for anything !Apple that is using the
    > libcompiler_rt provided by Clang on ARM, and requires upstreaming.
    
    See https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=149167 for some
    background details.
    
    Signed-off-by: Niclas Zeising <zeising@daemonic.se>

commit 392afbaf60663e530bd740da0b5a39ee9f4ba052
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 5 21:38:51 2020 -0400

    Don't test s390.  Travis-ci is broken.

commit e08eb1ced18598a26cd7f14fea05693e89638ed2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 5 17:59:59 2020 -0400

    Add support for eabisim back.  This was removed upstream.

commit 4661ba7928b49588aec9e6976673208c8cbf0295
Merge: 45875da 1a4b786
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Aug 4 11:08:19 2020 -0600

    Merge pull request #576 from froydnj/config-updates
    
    update config.{guess,sub}

commit 1a4b786df34b61af7b6738a2ce7b8d34f5377a71
Author: Nathan Froyd <froydnj@gmail.com>
Date:   Tue Aug 4 12:17:04 2020 -0400

    update config.{guess,sub}
    
    This change is primarily for aarch64 macOS support, since that configuration
    is now properly supported upstream.

commit 45875da4bc71578f6f45471141c14e1743239b7e
Merge: fbd1de8 8e58f88
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jul 1 09:32:37 2020 -0600

    Merge pull request #570 from jwilk-forks/spelling
    
    aarch64: Fix typo

commit 8e58f88d33eb878b0fbca1433f83bbf872d5d0f3
Author: Jakub Wilk <jwilk@jwilk.net>
Date:   Tue Jun 30 22:59:28 2020 +0200

    aarch64: Fix typo

commit fbd1de85f6532f8a8f61abbd7892f8cb58b233d0
Author: Ma Jun <majun258@linux.alibaba.com>
Date:   Mon Jun 29 08:02:20 2020 -0400

    Add support for csky

commit 0027b072627aa9d3ada71c4374561966064ecd5a
Author: M. Herdiansyah <herdiansyah@netc.eu>
Date:   Thu Jun 11 19:40:24 2020 +0700

    Makefile: increase compatibility with bmake (#551)

commit b7af8f47d5fff2957521dc269637c00b8a4b6c75
Author: Andre Miras <AndreMiras@users.noreply.github.com>
Date:   Thu Jun 11 14:38:59 2020 +0200

    Fixes macOS build on Python 3 (#563)
    
    The error was:
    ```
    Traceback (most recent call last):
      File "_generate-darwin-source-and-headers.py", line 209, in <module>
        generate_source_and_headers(generate_osx=not args.only_ios, generate_ios=not args.only_osx)
      File "_generate-darwin-source-and-headers.py", line 197, in generate_source_and_headers
        for header_name, tag_tuples in platform_headers.iteritems():
    AttributeError: 'collections.defaultdict' object has no attribute 'iteritems'
    ```

commit 5c45c40c04f89cf67ade3fdfa99915ca5409e51a
Author: Kentaro Hayashi <kenhys@gmail.com>
Date:   Thu Jun 11 21:37:41 2020 +0900

    Fix Free software foundation address (#564)
    
    ref. https://www.fsf.org/about/contact/

commit 2e90bb5577ea1fe3bc1716954e790999bc3549f7
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jun 7 14:31:06 2020 -0400

    Add gcc bug tests back

commit 5e6ca054148dfb4d78e6f79457d48b745f919def
Author: Yann Sionneau <yann@sionneau.net>
Date:   Fri May 1 13:59:11 2020 +0200

    Add support for Kalray KVX architecture (#559)

commit 4f9e20ac51ce13d46fed3c869e1deb6d9bb89444
Author: Andrew Geissler <geissonator@users.noreply.github.com>
Date:   Fri May 1 06:58:30 2020 -0500

    ffi_powerpc.h: fix build failure with powerpc7 (#561)
    
    This is a patch pulled down from the following:
    https://github.com/buildroot/buildroot/blob/78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch
    
    This issue is being hit on OpenBMC code when pulling the latest
    libffi tag and building on a P8 ppc64le machine. I verified this
    patch fixes the issue we are seeing.
    
    Below is the original commit message:
    
    Sicne commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7
    fails on:
    
    In file included from ../src/powerpc/ffi.c:33:0:
    ../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target
     typedef _Float128 float128;
             ^~~~~~~~~
    
    Fix this build failure by checking for __HAVE_FLOAT128 before using
    _Float128, as _Float128 is enabled only on specific conditions, see
    output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h:
    
     /* Defined to 1 if the current compiler invocation provides a
        floating-point type with the IEEE 754 binary128 format, and this glibc
        includes corresponding *f128 interfaces for it.  */
     #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \
         && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH
     # define __HAVE_FLOAT128 1
     #else
     # define __HAVE_FLOAT128 0
     #endif
    
    Fixes:
     - http://autobuild.buildroot.org/results/5c9dd8fb3b6a128882b6250f197c80232d8a3b53
    
    Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
    Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
    
    Co-authored-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

commit 053b04c525a00abdc25ec646096a44208a1b9423
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 05:02:14 2020 +0300

    arm: Fix the clang specific version of the assembly (#556)
    
    Also fix the same error in the comment for the non-clang case.
    That typo there seems to have existed since the code was written
    in that form, in e7f15f60e86 - and when the clang specific codepath
    was added in e3d2812ce43, the typo in the comment made it into the
    actual code.

commit c543849c3767cc0f0a84e3ed7b664a63724ed516
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 05:01:03 2020 +0300

    win64_armasm: Fix the spelling of ALIGN (#553)

commit 15d3ea31a53bd0e5b828c90a9f7c4285c58f73e1
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 04:59:35 2020 +0300

    Use __builtin_ffs instead of ffs (#554)
    
    USE_BUILTIN_FFS is defined to 1 within __GNUC__, and the __builtin_ffs
    function is available since GCC 3.x at least, while the ffs function
    only exists on some OSes.
    
    This fixes compilation for non-x86 mingw platforms. For x86,
    USE_BUILTIN_FFS is explicitly disabled for windows targets - but
    if USE_BUILTIN_FFS is enabled based on __GNUC__, it should also use
    the builtin which actually is available correspondingly, not dependent
    on the target OS.

commit c06468fa6674d3783a0edb1d0fae9afc8bc28513
Author: Martin Storsjö <martin@martin.st>
Date:   Sun Apr 26 04:58:33 2020 +0300

    Fix building for aarch64 windows with mingw toolchains (#555)
    
    * aarch64: Check _WIN32 instead of _M_ARM64 for detecting windows
    
    This fixes building for aarch64 with mingw toolchains. _M_ARM64 is
    predefined by MSVC, while mingw compilers predefine __aarch64__.
    
    In aarch64 specific code, change checks for _M_ARM64 into checks for
    _WIN32.
    
    In arch independent code, check for
    (defined(_M_ARM64) || defined(__aarch64__)) && defined(_WIN32)
    instead of just _M_ARM64.
    
    In src/closures.c, coalesce checks like
    defined(X86_WIN32) || defined(X86_WIN64) || defined(_M_ARM64)
    into plain defined(_WIN32). Technically, this enables code for
    ARM32 windows where it wasn't, but as far as I can see it, those
    codepaths should be fine for that architecture variant as well.
    
    * aarch64: Only use armasm source when building with MSVC
    
    When building for windows/arm64 with clang, the normal gas style .S
    source works fine. sysv.S and win64_armasm.S seem to be functionally
    equivalent, with only differences being due to assembler syntax.

commit 8c50837f0b58ba5b2bcb1b424a2a4bfa01559fb2
Author: Fangrui Song <i@maskray.me>
Date:   Tue Mar 10 04:36:09 2020 -0700

    Improve read-write .eh_frame check (#546)
    
    llvm-objdump -h does not print BFD SEC_* constants like "READONLY",
    so the check will consider .eh_frame writable.
    clang 11 (since https://reviews.llvm.org/D73999) will error for mismatching section flags.
    
    Use readelf -S and check "WA" instead.

commit 4a6414f2785a60f455c91fdd04f7745fe7fc11e0
Author: Moxie Bot <bot@moxielogic.com>
Date:   Mon Mar 9 21:10:53 2020 -0400

    Mention ARM Pointer Authentication

commit 909b37ffffe2a0bb08947b07508a3a4eed5f36a8
Author: Moxie Bot <bot@moxielogic.com>
Date:   Mon Mar 9 21:10:33 2020 -0400

    Test on aarch64 Linux with clang

commit 4c7bde32ea3af479babdf527d94f241282951cb9
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Tue Mar 10 02:05:42 2020 +0100

    Port to iOS/arm64e (#548)

commit 211e929df4388a6724b0dba4df4e3a1283dc49e9
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 9 12:39:22 2020 -0400

    Try to fix RLGL_KEY nonsense (#547)
    
    * Try to fix RLGL_KEY nonsense
    
    * Hard code policy bound API key
    
    Co-authored-by: Anthony Green <green@moxielogic.com>

commit 8eb2d2b05626b1cbbed100725bc440709499e8a6
Author: Moxie Bot <bot@moxielogic.com>
Date:   Mon Feb 24 10:29:20 2020 -0500

    Revamp PA_LINUX and PA_HPUX target closures to use function descriptors.
    
            2020-02-23  John David Anglin  <danglin@gcc.gnu.org>
    
            * include/ffi.h.in (FFI_CLOSURE_PTR, FFI_RESTORE_PTR): Define.
            * src/closures.c (ffi_closure_alloc): Convert closure pointer
            return by malloc to function pointer.
            (ffi_closure_free): Convert function pointer back to malloc pointer.
            * src/pa/ffi.c (ffi_closure_inner_pa32): Use union to double word
            align return address on stack.  Adjust statements referencing return
            address.  Convert closure argument from function pointer to standard
            closure pointer.
            (ffi_prep_closure_loc): Likewise convert closure argument back to
            closure pointer.  Remove assembler trampolines.  Setup simulated
            function descriptor as on ia64.
            src/pa/ffitarget.h (FFI_TRAMPOLINE_SIZE): Reduce to 12.
            src/pa/hpux32.S (ffi_closure_pa32): Retrieve closure pointer and real
            gp from fake gp value in register %r19.
            src/pa/linux.S (ffi_closure_pa32): Likewise.

commit be815544c1588c6ca70120361c168b196376aa56
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Sun Feb 23 07:45:42 2020 -0800

    Update the ABI version to LIBFFI_BASE_8.0 (#544)
    
    Since x86 and x86-64 FFI_TRAMPOLINE_SIZE have been increased, we must
    bump the ABI version.  This fixes:
    
    https://github.com/libffi/libffi/issues/543

commit d9abffeabe4f38bac12b864146cf974ede814411
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Sat Feb 22 06:32:22 2020 -0800

    x86: Fix ffi_prep_closure_loc (#542)
    
    Since FFI_TRAMPOLINE_SIZE is increased by 4 bytes to add ENDBR32, adjust
    jump displacement by 4 bytes.

commit 624c7a35f7e1d12f917453d6c657cd5947ac57f7
Merge: 4c775d7 7855656
Author: Moxie Bot <bot@moxielogic.com>
Date:   Fri Feb 21 22:13:14 2020 -0500

    Merge branch 'master' of github.com:/libffi/libffi

commit 4c775d7cd6e914c6a2f66465497106cff360aeb5
Author: Moxie Bot <bot@moxielogic.com>
Date:   Fri Feb 21 22:12:34 2020 -0500

    Update for pending 3.4 release.

commit 7855656148b96c7070ec362d2a73af840025a2b7
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Fri Feb 21 19:08:06 2020 -0800

    x86: Add indirect branch tracking support (#540)
    
    Intel Control-flow Enforcement Technology (CET):
    
    https://software.intel.com/en-us/articles/intel-sdm
    
    contains shadow stack (SHSTK) and indirect branch tracking (IBT).  When
    CET is enabled, ELF object files must be marked with .note.gnu.property
    section.  When Intel CET is enabled, include <cet.h> in assembly codes
    to mark Intel CET support.
    
    Also when IBT is enabled, all indirect branch targets must start with
    ENDBR instruction and notrack prefix can be used to disable IBT on
    indirect branch.  <cet.h> defines _CET_ENDBR which can be used in
    assembly codes for ENDBR instruction.  If <cet.h> isn't included,
    define _CET_ENDBR as empty so that _CET_ENDBR can be used in assembly
    codes.
    
    Trampoline must be enlarged to add ENDBR instruction unconditionally,
    which is NOP on non-CET processors.  This is required regardless if
    libffi is enabled with CET since libffi.so will be marked in legacy
    bitmap, but trampoline won't.  Update library version for larger
    FFI_TRAMPOLINE_SIZE.
    
    This fixed:
    
    https://github.com/libffi/libffi/issues/474
    
    Tested with
    
    $ CC="gcc -Wl,-z,cet-report=error -fcf-protection" CXX="g++ -Wl,-z,cet-report=error -fcf-protection" .../configure
    
    on Linux CET machines in i686, x32 and x86-64 modes.

commit 4d6d2866ae43e55325e8ee96561221804602cd7a
Author: Samuel Holland <samuel@sholland.org>
Date:   Fri Feb 21 21:06:15 2020 -0600

    Update powerpc sysv assembly for ffi_powerpc.h changes (#541)
    
    Some of the flag bits were moved when adding powerpc64 vector support.
    
    Fixes #536

commit b844a9c7f1ca792a1dfb0c09d5dae576178e6729
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 10 10:22:10 2020 -0500

    Update copyright year.

commit 81b5491a4ef46103f2e1be79d368e76dba021ffa
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 5 21:37:05 2020 -0500

    Fix script

commit 1e08a45535d929915e14e48af38e45f8c8e4f8de
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 5 21:18:23 2020 -0500

    Use rlgl API key on login

commit e50b9ef8b910fa642ef158f6642e60d54d7ad740
Author: Khem Raj <raj.khem@gmail.com>
Date:   Sat Dec 7 02:34:14 2019 -0800

    powerpc64: Use memcpy to help platforms with no __int128. (#534)
    
    Signed-off-by: Khem Raj <raj.khem@gmail.com>

commit f9da75e157ab089363d079a781644c3e6f7db2c3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 07:37:19 2019 -0500

    Remove 32-bit x86 file references to fix macosx builds

commit 76c0cfea70f78586231d7994492396eebfb12d5f
Author: Carl Hurd <carl.m.hurd@gmail.com>
Date:   Fri Nov 29 14:46:11 2019 -0500

    Fixed missed #ifndef for __mips_soft_float (#442)
    
    Thank you!

commit 98da256096c63406ef77f92369ada622c50ce388
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 29 14:29:51 2019 -0500

    Clean up macosx builds

commit 6663047f56c2932a6b10a790f4ac6666dd181326
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 29 07:00:35 2019 -0500

    Address platforms with no __int128.

commit 0069526c5adea9e6268b8a0087a6120c9c5c89fa
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 28 18:58:40 2019 -0500

    Make build errors easier to debug

commit 43887a9108f10124d05c8e0e67f3942cd980cb86
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 28 17:44:51 2019 -0500

    Add powerpc-eabi

commit 29297445da5c2c9437de0e20f3189799a27f0301
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 28 17:31:44 2019 -0500

    Test on powerpc-eabisim

commit 01a75ed76ea7e57f1b7a5c183e2b1e890e6aa0fd
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Thu Nov 28 12:42:41 2019 +0000

    powerpc: fix build failure on power7 and older (#532)
    
    Build failure looks as:
    ```
    libtool: compile:  powerpc-unknown-linux-gnu-gcc \
        -O2 -mcpu=powerpc -mtune=powerpc -pipe ... -c src/powerpc/ffi.c ...
    In file included from src/powerpc/ffi.c:33:
    src/powerpc/ffi_powerpc.h:65:9: error: '__int128' is not supported on this target
       65 | typedef __int128 float128;
          |         ^~~~~~~~
    ```
    
    The fix avoids using __int128 in favour of aligned char[16].
    
    Closes: https://github.com/libffi/libffi/issues/531
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 1ec01ea81cf18e12748082f48f7c279a3fdd505d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 22:47:48 2019 -0500

    Run aarch64-linux-gnu tests on travi-ci directly

commit 66022e52ec0409f9170eb0884c6d0bdd048bc04e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:52:14 2019 -0500

    Fixes for ppc64le and s390x travis testing

commit 932e5bb68a603885e4bd9cf1bd5146542f736ccf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:26:14 2019 -0500

    Force the use of docker

commit 803db14c5a0aeb52ee521fe4fe4a7919926373de
Merge: 86be66c fb914c3
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:10:22 2019 -0500

    Merge branch 'master' of github.com:libffi/libffi

commit 86be66c8f608a84caea2ef724698093d2da2e5e2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 16:09:44 2019 -0500

    Try travis-ci's new ppc64le and s390x support

commit fb914c366fabb29ac373050ca0bfa4d9c1fef149
Author: Panayotis <panayotis@panayotis.com>
Date:   Sun Nov 24 18:25:13 2019 +0200

    disable obsolete 32-bit targets in macOS (#511)

commit fd99c95f90f85963f5ec88630c0428a8132012db
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 24 11:11:25 2019 -0500

    Minor clean-up

commit 5dcb741f1544c5e18c9dbf96aeb8b61cc556a616
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 10:24:58 2019 -0500

    Move nested_struct3 test to closures directory

commit 1aca33301a791f503d943f5e3abe2c720296eb8f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 09:42:04 2019 -0500

    Add missing closing brace

commit d996cb283cf373936498defa902be040ec20455e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 09:00:14 2019 -0500

    Version 3.3

commit c72b82f465148b89f118ee73f8956dafdbac9b65
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 08:48:53 2019 -0500

    Remove junk file from dist

commit 642d40ee6ae9a779b3c5ad930785d4b33cf94029
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 07:49:58 2019 -0500

    Account for moved test files

commit 049da08a22b0ca6d63d2be6c209da5ac1335365c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 23 07:44:26 2019 -0500

    Add dejagnu directives accidentally removed

commit 36730f5d87c2a432e1b3bf1a0129fedbf4b0a488
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 19:49:38 2019 -0500

    Move closure test to closure directory

commit c88c0e92a9fbb4e69513394682c61aa848a035cc
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 19:27:34 2019 -0500

    More more closure tests to the closure test directory

commit a37cc1755cc276b2b9e601b9b112919f8c882a2e
Merge: 332a539 247a5e7
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 18:55:36 2019 -0500

    Merge branch 'master' of github.com:libffi/libffi

commit 332a539e88d26a0524c10a39283a3099d071ca10
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 18:54:30 2019 -0500

    Move closure tests so we can easily XFAIL them for some targets

commit 1761a10645dadc0840bf1ff3a4998f9a342e8cad
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 18:53:09 2019 -0500

    Remove gccbug detection.  GCC is good now.

commit 247a5e7878379b7af33338d51898d7fb9e82e686
Author: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
Date:   Fri Nov 22 20:17:58 2019 +0100

    Capture x86-windows host like x86_64-windows (#529)

commit 8e3935fa761d3e6f19ccf5e6733fd40dee637d94
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 22 12:42:26 2019 -0500

    Manual clean-ups, and include the PDF in the source distribution.

commit d01088a5194ff1a2250e7dbee04a9a167b582db7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 05:36:06 2019 -0500

    Mention more major port contributors

commit 970b7fce4f804df57ec582a0220c22eaeccc239a
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 05:04:54 2019 -0500

    Update autoconf-archive m4 macros

commit 34a3a661b80c0fa7817c0654ae9fd0686d3b8cd2
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 04:59:39 2019 -0500

    Fix formatting of README.

commit 91a7fbe94e3884536cf2eb8e644bc79d6b19c80e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 20 07:16:41 2019 -0500

    Fix or1k lack-of-g++ checking in testsuite

commit 31543c799a224ef446cef19a2372b054ecad3822
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 20 06:15:55 2019 -0500

    Add work-around for users who manage their own closure memory
    
    As suggested by DJ

commit bd3a4687c0743076f420dee2a02075fd64fa547e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 17:14:23 2019 -0500

    No C++ for or1k-unknown-elf

commit d6e4f96b482690e6cdaf67a70bb33d1bfe0acd15
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 13:36:49 2019 -0500

    No C++ for or1k

commit 497018686d4df0012ea7bf1a4ab41b918b5e65bc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 10:07:16 2019 -0500

    Disable type warnings for or1k.

commit 262cf74fd4003a928ca73e96ef8698546e535c46
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 19 10:06:57 2019 -0500

    No c++ for or1k-elf

commit 54fc80dfd8d608ec718cade762c358b8fd819f38
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 15:20:00 2019 -0500

    Fake TRAVIS_BUILD_DIR

commit 6f734f8a5ff13d106f81741c11c7cb2551706c7f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 15:13:16 2019 -0500

    Adapt for new old ChangeLog file

commit 27d31130cabfe82683fc0e3e82247fd522f45607
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 15:06:51 2019 -0500

    Fix DEJAGNU variable

commit da1358816e7b02e6f8431e4df336d0934bcabd4c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:54:14 2019 -0500

    Set vars

commit 9a394c24951f3fc5cfbd0ff268278a7b45afc77e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:45:29 2019 -0500

    Remove verbosity

commit 14bfbec0fd312001f7922ee6100cbc3155ae585b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:40:30 2019 -0500

    Pull before running

commit dfa60e5eb44482d45b8c79b815e6b6789e62ce18
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 14:02:33 2019 -0500

    Fix cross builds for or1k

commit a8223271a3d7ff1e8a1553c2a5ed9b4e1a24a774
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:59:10 2019 -0500

    More cross build debugging

commit 8c9cf44cb2a2d46ddcb148508fb5350438b4a62b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:47:42 2019 -0500

    Set path to simulator. Add debugging output.

commit 581048f91e9e25e3b17a2906edd8840f35999918
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:17:27 2019 -0500

    Be specific when building CI container images

commit bbea6394f9f27de68aac037abb264151d6de9f64
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:06:26 2019 -0500

    Capture more or1k hosts

commit 97e3b1fe1a0fbdb43bf28fe6198cb26eaa719c93
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 13:02:44 2019 -0500

    Add test support for or1k. Fix yaml typo.

commit c88f4d2677d4dc6659a1aa6418e636f8fcf9bd9b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 12:25:51 2019 -0500

    Fix typo for m32r and bfin builds

commit 93c203b347ea7d110355e12f832725f755e10eff
Merge: d087b59 73dd43a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:35:19 2019 -0500

    Merge branch 'master' of github.com:libffi/libffi

commit d087b595637ebb795c0cec1ff0c4409befb486b7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:34:42 2019 -0500

    Build/test for m32r-elf and bfin-elf

commit b6804d16453890b78844b1b3c1acf16af98cadb8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 17 09:19:14 2019 -0500

    Mention binary128 long double support for Power

commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0
Author: Samuel Holland <samuel@sholland.org>
Date:   Sun Nov 17 07:22:25 2019 -0600

    IEEE754 binary128 long double support for PowerPC64 (#526)
    
    * powerpc: Adjust flags to make room for vector types
    
    * powerpc64 ELFv2 IEEE128 long double support

commit b58bd77236e7d41fc04b4be7edd1c6728626c99b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 11:18:59 2019 -0500

    Re-enable mingw32 tests.

commit 6f221e8269aa16f6b5eec41cfd1d7d90a9fbea0c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 11:06:17 2019 -0500

    Disable wine builds.

commit 09dc0a71a44c95ee0d2f47de94b6b59534c2ce24
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 10:19:00 2019 -0500

    Stretch out timeout for test

commit 28a7cc464c21b4955fba28cc55a6f095ddf5838b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 15 06:07:51 2019 -0500

    Consolidate all of the old ChangeLog files into ChangeLog.old.

commit 86d3d3767a40fe1cae10c419a913dd97e7e6cd23
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 10:07:00 2019 -0500

    Don't build aarch64-linux-gnu

commit db198a19375858879dbcc51a443c193efa0b6c0a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 10:05:36 2019 -0500

    Extend timeout for builds.

commit 54af0256a00a40b2218950f93e5415c60f675714
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 09:15:05 2019 -0500

    Platform test tweaks

commit 3a7580da73b7f16f275277316d00e3497cbb5a8c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 07:59:18 2019 -0500

    Mark java raw APIs as deprecated.

commit cda60c1a8aec070a7a822c047d89d0f18cf7c5fc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:51:44 2019 -0500

    Disable mips64 tests.  Fix log grabbing.

commit a34254bdc1dee2857b759a22e657f92aadfa85dc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:37:26 2019 -0500

    Re-add wine based testing

commit 9bd3a9742c04d2fac489f236163d7e7fbb1b7568
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:35:40 2019 -0500

    Add wine-sim.exp for wine-based testing

commit de6df6dce6420d4643598c228b72da4e455a0da7
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:32:46 2019 -0500

    Fix log file URL extraction.  Grab rlgl cli for OSX

commit c8986e871f82b497493d28c36be1a755c2ea6b8d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 06:01:43 2019 -0500

    Fix log name extraction

commit 6630764d244aeb3bc0797d0c3c7ccc79084061a8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 22:56:37 2019 -0500

    Account for shorter ==LOGFILE== string

commit aa975ec3e4ac07bd7dacec18f1c8282baeb7c398
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 22:35:47 2019 -0500

    Fix grep matcher

commit 6dd88bc5b3f3d3d975409b7336f4127ae18da4b3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 18:44:27 2019 -0500

    Debug

commit 7e318cf50d8c481957b3be76e508054c70cbdf9b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 17:55:35 2019 -0500

    Pull test logs from cfarm

commit 5123e9cf0193031bdc580cb221427cbd29ba3677
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 09:21:57 2019 -0500

    Use rlgl for cfarm test results

commit 486f88f985affa215a9daaadcdc703c8baea9020
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 09:20:21 2019 -0500

    Use rlgl for cross builds.

commit 042c6671b0456d17af24d61b79cbd3f9261c3f2b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 09:14:20 2019 -0500

    Always exit build container successfully. Don't test mingw.

commit 82f7f80aa9ac3cd753bcb6d2b88cc930aee72bcc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 08:58:52 2019 -0500

    Run rlgl outside of the build container.

commit 5b297e036e61ad1ecac9c8a3e57895737c55feb7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 12 05:51:09 2019 -0500

    Don't bother dumping logs.  Use rlgl instead.

commit 2a8d88d92d56747101078c5592ab2473e6c5cb29
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 11 21:24:58 2019 -0500

    Fix rlgl usage

commit 3c2b810e99a10f97d1eb6ba485eb09bfdb158084
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 11 21:11:59 2019 -0500

    Test rlgl

commit 2cc11720be0c4d3bbe906be5a4aad3b2dc167072
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 11 16:19:45 2019 -0500

    Debug in-container builds

commit 0de0c6a28006902c203e8dc6629cd9ef35d61e09
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 10 08:20:46 2019 -0500

    Build both iOS and Macosx

commit 4e3e0586efbbc7828c15fb48e49401840beefcdd
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:35:27 2019 -0500

    Fix tpyo

commit f764f278160831f7e4d8ee8a48d18f5a7937f742
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:17:29 2019 -0500

    Change s390x options

commit 188de63c597f23b0ccdb953b076c8cb0711fbcf0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:03:19 2019 -0500

    Mark xfail for m68k and alpha.

commit 0da221f8094ec504d91b5f88c74e98b8b9aa9eda
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 12:03:01 2019 -0500

    Clean up.  Debug s390x cpu support.

commit 7e0fbf41934020c9ff76816fde5000482c7e6a6c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:50:08 2019 -0500

    Try coldfire for m68k builds

commit 6a9fa770a436bbb71dbe8311e75123353e6836cc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:37:25 2019 -0500

    Add GCC_OPTIONS flag

commit eebcbb1113742df7d41fc3d39eca970a026ad1d1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:26:53 2019 -0500

    Compile m68k target for m5208

commit 08cb33ff5824b2ea24b2b62841cca1934a27f36f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:15:13 2019 -0500

    Dump supported CPUs

commit 16c935000d459b1aba9e1f7b48e2c1d7dadc8cf1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 11:00:09 2019 -0500

    Fix shell script

commit 588e87461fe48441806be4bb5654f058e1c37649
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 10:56:40 2019 -0500

    Print debug output. Use podman when available.

commit 04d14a66ff807a0ac2578ce886ef338aa2066b4d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 09:23:10 2019 -0500

    Set QEMU_CPU within the build containers

commit 28d9c019dbbf6dea1ed127e1a7de829cece86639
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 7 07:36:11 2019 -0500

    Set QEMU_CPU for m68k

commit 75464caf658f176848db6f48325c5067cdf94a9b
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 22:02:11 2019 -0500

    Add alpha and m68k testing

commit 259c497a2f326cc89344766e106cf73e62485a2a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 11:31:17 2019 -0500

    Sett CC and CXX for cross builds

commit d23d3959fdb764984cfb888c5d6aed910926dd5f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 11:21:46 2019 -0500

    autogen before cross building

commit a6dc8ef270c1f022720aedadb6b0d2678d1bc39e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 11:10:59 2019 -0500

    Fix typo. Don't double test.

commit 136a235d3f36408628c0459d8740546acad0ca5a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 10:51:33 2019 -0500

    Use the right cross build container image

commit 92f5309def05c66e6c5034c10d620d6fbc7a1018
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 10:49:04 2019 -0500

    Try s390x and sh4 cross builds/tests

commit d4a28fee720c8f389b138b3f7726157fbcb7eaaf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:47:05 2019 -0500

    Revert to older test cross compilers

commit 0fb9ee21e68ca3e70cf236a63ba00b5ca32031ff
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:44:19 2019 -0500

    Use older test compiler.  Enable s390x testing.

commit 36d281ab70daf7dcf890df9c3f5bdd76f665bb68
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:30:52 2019 -0500

    Test cross-builds for hppa-linux-gnu

commit c95cc4b354f24dbbf5776eb297fa036bcbfed252
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 6 06:30:20 2019 -0500

    Reference FFI_BUILDING_DLL

commit 88a76477debe83ed6a75f96394853c891fb1dac4
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 3 06:28:51 2019 -0500

    rc2. hack as per: https://github.com/travis-ci/travis-ci/issues/6934

commit 45ba4aefed15be24fdbaaffec805fb02b1343e0f
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 19:07:04 2019 -0400

    Add sparc64-linux-gnu testing back

commit a26323b7e0824f0becaeaffc8d3b700dc09f741c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 15:32:48 2019 -0400

    Don't build sparc.  Build mips.

commit f325324818a6aaa9e8a75782d75c412872e6b21c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 14:35:43 2019 -0400

    Test mips64el-linux-gnu

commit 39bad2f396de7885c9569144b5bb6e8a639ac011
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 12:33:22 2019 -0400

    Don't run autogen.sh all the time.

commit 82719cbba06c2fc527df156d728341867d86f82c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 12:23:11 2019 -0400

    Test sparc64-linux-gnu on travis

commit 0348d0e4fa585d9a3d9762132a3eee94f918fe3b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 31 10:53:37 2019 -0400

    Try new cfarm build for power

commit 290bc3164bb0e0b3fb912c457b49e61f9a728eef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 10:13:20 2019 -0400

    Add make_sunver.pl to distribution.

commit a8efc2f7897b439fdf2144329d35fea820498dc7
Author: Andreas Schwab <schwab@linux-m68k.org>
Date:   Sat Oct 26 14:57:05 2019 +0200

    Fix FFI_STDCALL ABI (#514)
    
    Even for a stdcall function, the stack alignment is still the
    responsibility of the caller.  Remember the original, not stack-aligned
    argument size, but align when setting up a stack frame.  In
    ffi_closure_inner, return the true argument size, so that
    ffi_[go_]closure_STDCALL doesn't adjust too much.

commit ca112537df7b9cdbccad7541aa3cb43b2a2dac9a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 07:26:30 2019 -0400

    Add missing build script, make_sunver.pl.

commit 52b066f04fdd81c1037e1cb714a07a2a352bcf9b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 07:03:43 2019 -0400

    Update versions to 3.3-rc1

commit 9b10df3be2d8f81876b7cc90ee5d8833ccdf6b34
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 06:41:11 2019 -0400

    Remove some debugging output

commit ec042885cfa5a9450bfcc87152a41529d26545de
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 06:39:00 2019 -0400

    Don't test ppc64le with buggy qemu.

commit 90fb897839bb7006a2f751d283e3d23b3bfec1ea
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 06:24:14 2019 -0400

    Strip build status from README.md at 'make dist' time.

commit 1d6059446fb986d2de933f7ccf6fe38bcdf0c76c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 24 05:25:11 2019 -0400

    Add missing dist files.

commit 825b2a359468af8bf3570a5a0695e8b805c5446f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 16 16:05:46 2019 -0400

    Test on arm32v7-linux-gnu, ppc64le-linux-gnu and aarch64-linux-gnu.
    
    Use docker images and qemu to test libffi for non-x86 architectures on
    travis-ci.
    Use the LIBFFI_TEST_OPTIMIZATION environment variable to
    force specific optimization levels at test time.

commit d2a4095af68f4530571bc3fa613dd7f5e5b815a3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 14 06:46:52 2019 -0400

    Fix comments.

commit 058aa4130445b4ef3c2f77f796c33506873031ca
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 14 05:47:07 2019 -0400

    Update copyright year

commit c4f61240ab19401bd86c0dfb271e243e8159abb4
Author: zhanhb <6323014+zhanhb@users.noreply.github.com>
Date:   Wed Oct 9 18:59:32 2019 +0800

    Add long double test (#492)
    
    Required to fix build error on macos with gcc-9

commit 09f9d856112f2f105337e95e32ba9e2da63f65ae
Author: pichikaudaykiran <51439150+pichikaudaykiran@users.noreply.github.com>
Date:   Wed Oct 9 16:26:06 2019 +0530

    Making the change to correct the comment when SUN (#521)
    
    and GCC are used together

commit 55c22092dc54e706a64af3a49ae9d5471a9e8317
Author: pnallan <46887249+pnallan@users.noreply.github.com>
Date:   Tue Oct 8 18:46:47 2019 +0530

    handle compilation warnings with ftruncate API (#508)
    
    * fix me: avoid warning while handle ftruncate API
    
    Signed-off-by: Prasad Nallani <prasad.nallani@intel.com>
    
    * Update closures.c

commit e5f0eb1552f222eb2630e40ee348b090d56412a3
Author: John Ericson <git@JohnEricson.me>
Date:   Tue Oct 8 06:58:52 2019 -0400

    Clean up line endings (#509)
    
    The CLRF visual studio files can be kept that way, but recognized as
    text. The assembly file can be converted to LF.

commit ea9b6639c69cbffeacd1ce0c1953c1997cf29d2e
Author: Samuel Holland <samuel@sholland.org>
Date:   Tue Oct 8 05:57:28 2019 -0500

    PowerPC bugfixes (#520)
    
    * powerpc: Silence warnings about unused labels
    
    * powerpc: Fix a couple of comments
    
    * powerpc: Fix alignment after float structs
    
    * powerpc: Don't pad rvalues copied from FP regs
    
    * powerpc: Add missing check in struct alignment
    
    * powerpc: Support homogeneous long double structs

commit 25cf9cc4a5ce4a272252de3f681d60dafd838ceb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:24:55 2019 -0400

    Use https for moxie toolchain repo

commit c2a6859012d928b67a83619bd5087674a96b9254
Author: Paul Monson <paulmon@users.noreply.github.com>
Date:   Wed Aug 7 11:57:45 2019 -0700

    fix mingw build and crashing bugs for Python Windows ARM64 (#496)
    
    * fix mingw build and crashing bugs for Python Windows ARM64
    
    * Fix issues found in PR review

commit e0b4f84fb71c6760068c9d1306e77c9382e76d8d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 26 06:18:48 2019 -0400

    Clear the apt cache

commit 68668fe4f22dea7b829fb84b724f5a74091f22f2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jun 26 06:01:15 2019 -0400

    More debugging output

commit 1d7635d18ae4aebe4ec1cd129b0b4f71b685131e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jun 25 23:39:52 2019 -0400

    Debug moxie builds in travis

commit d856743e6b02fcb5911491204131e277a7a4e10b
Author: ossdev07 <39188636+ossdev07@users.noreply.github.com>
Date:   Wed Jun 26 07:31:22 2019 +0530

     libffi: added ARM64 support for Windows (#486)
    
    *  libffi: added ARM64 support for Windows
    
        1. ported sysv.S to win64_armasm.S for armasm64 assembler
        2. added msvc_build folder for visual studio solution
        3. updated README.md for the same
        4. MSVC solution created with the changes, and below test suites are tested
           with test script written in python.
    
           libffi.bhaible
           libffi.call
        5. Basic functionality of above test suites are getting passed
    
    Signed-off-by: ossdev07 <ossdev@puresoftware.com>
    
    * Update README.md

commit 80d07104c33045ea34a4d5185600495dc7461a12
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 28 07:36:24 2019 -0400

    uuencode compressed log files for travis

commit fadf1eb530713fde0be9774d926bc8202c97e379
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Apr 27 20:53:29 2019 +0100

    hppa: avoid TEXTREL in .eh_frame section (#447)
    
    Before the change hand-crafted .eh_frame section contained
    ABS relocation and caused TEXTREL tag to be emitted:
    
    ```
    $ ./configure --host=hppa2.0-unknown-linux-gnu LDFLAGS=-Wl,-z,text
    $ make
    ...
    /usr/libexec/gcc/hppa2.0-unknown-linux-gnu/ld:
        read-only segment has dynamic relocations.
    ```
    
    Link failure is caused by absolute address of FDEs
    encoded into .eh_frame entries.
    
    Fixed TEXTREL by using pcrel (instead of ABS) encoding
    for absolute addresses (__PIC__ code) by adding augmentation
    information ("zR" CIE type).
    
    All tests still pass on hppa2.0. The specific tests that still pass
    and exercise this code path:
        testsuite/libffi.call/unwindtest.cc
        testsuite/libffi.call/unwindtest_ffi_call.cc
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 06bf1a9deaa781b711c4d3718561e7faf303a842
Author: driver1998 <driver1998.ms@outlook.com>
Date:   Sun Apr 28 03:21:44 2019 +0800

    fix x86/x64 MSVC build (#487)

commit db5706ff285c476aa3c0f811ff2b188319ac3ebe
Author: Paul Monson <paulmon@users.noreply.github.com>
Date:   Fri Apr 26 04:58:58 2019 -0700

    add support for 32-bit ARM on Windows (#477)
    
    * add support for 32-bit ARM on Windows
    
    * fix mismatched brace in appveyor.yml
    
    * remove arm platform from appveyor.yml for now
    
    * fix arm build
    
    * fix typo
    
    * fix assembler names
    
    * try Visual Studio 2017
    
    * add windows arm32 to .appveyor.yml
    
    * update README.md

commit d1e9b4b96cc8d237c3532cf83da0d4b99d19abb5
Merge: 05a1796 a7d6396
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Apr 9 14:00:10 2019 -0600

    Merge pull request #482 from sharkcz/aarch64
    
    fix check for Linux/aarch64

commit a7d6396f06d5e1a726f24b746b509514f466380f
Author: Dan Horák <dan@danny.cz>
Date:   Fri Mar 29 14:19:20 2019 +0100

    fix check for Linux/aarch64
    
    fixes #473

commit 05a1796419f68267250c0b8ae7138da36ab60b01
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Tue Feb 19 04:11:28 2019 -0800

    Cleanup symbol exports on darwin and add architecture preprocessor checks to assist in building fat binaries (eg: i386+x86_64 on macOS or arm+aarch64 on iOS) (#450)
    
    * x86: Ensure _efi64 suffixed symbols are not exported
    
    * x86: Ensure we do not export ffi_prep_cif_machdep
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * x86: Ensure we don't export ffi_call_win64, ffi_closure_win64, or ffi_go_closure_win64
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * closures: Silence a semantic warning
    
    libffi/src/closures.c:175:23: This function declaration is not a prototype
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch64: Ensure we don't export ffi_prep_cif_machdep
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * arm: Ensure we don't export ffi_prep_cif_machdep
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch64, arm, x86: Add architecture preprocessor checks to support easier fat builds (eg: iOS)
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * x86: Silence some static analysis warnings
    
    libffi/src/x86/ffi64.c:286:21: The left operand of '!=' is a garbage value due to array index out of bounds
    libffi/src/x86/ffi64.c:297:22: The left operand of '!=' is a garbage value due to array index out of bounds
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * aarch: Use FFI_HIDDEN rather than .hidden
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
    
    * ffi.h: Don't advertise ffi_java_rvalue_to_raw, ffi_prep_java_raw_closure, and ffi_prep_java_raw_closure_loc when FFI_NATIVE_RAW_API is 0
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit 3ec522bc1c1c5a7fb66b85d4fb6a0fe80581d597
Author: dabrain34 <scerveau@gmail.com>
Date:   Tue Feb 19 13:09:09 2019 +0100

    Fix cfi checks for old compiler (#453)
    
    cfi_sections can be unsupported when cfi_startproc
    and cfi_endproc are.

commit e1118af50599314a2cbac3eb51a81896e8e21d0c
Author: Paul Monson <paulmon@users.noreply.github.com>
Date:   Tue Feb 19 03:58:25 2019 -0800

    changes for win32 on windows (#468)

commit 44a6c28545186d78642487927952844156fc7ab5
Author: Florian Weimer <fw@deneb.enyo.de>
Date:   Tue Feb 19 12:55:11 2019 +0100

    aarch64: Flush code mapping in addition to data mapping (#471)
    
    This needs a new function, ffi_data_to_code_pointer, to translate
    from data pointers to code pointers.
    
    Fixes issue #470.

commit 042ef8c314a946ef1cd58c6e10cd74e403ef5bf9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 12 08:50:30 2019 -0500

    Remove -Os testing. No ABI impact, and helps trim log lengths.

commit 8fa88373a1d433c675b11200ccd58418e91f81e4
Merge: 737d4fa 2c5b164
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Dec 19 14:18:40 2018 -0700

    Merge pull request #461 from NativeScript/bektchiev/fix-visibility-hidden-check-in-configure
    
    fix(configure): Correctly detect visibility("hidden") support on Darwin

commit 2c5b164288712cc048048d73a3cd841d845a132c
Author: Martin Bektchiev <martin.bektchiev@progress.com>
Date:   Wed Dec 19 18:33:08 2018 +0200

    fix(configure): Correctly detect visibility("hidden") support on Darwin

commit 737d4faa00d681b4c758057f67e1a02d813d01c2
Merge: a5ea752 4a84df4
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Nov 30 08:16:00 2018 -0700

    Merge pull request #457 from NativeScript/bektchiev/fix-arm64-q3-q4-args
    
    Fix Q registers parameter passing on ARM64

commit 4a84df4ae9d33bb766fb34ce8a871d84d6e0ed9c
Author: Martin Bektchiev <martin.bektchiev@progress.com>
Date:   Wed Oct 31 15:53:54 2018 +0200

    Fix Q registers parameter passing on ARM64
    
    The second two quads are located at offset 32 not 16

commit a5ea7527cda8d9b7d011eb4004dfcbad54583bd2
Merge: b11b08c ba73a67
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Sep 19 07:29:36 2018 -0600

    Merge pull request #443 from jeremyhu/master
    
    Update FFI_HIDDEN() to use .private_extern on Apple platforms and use the macro where appropriate

commit b11b08ca8daacb08943ae5ea8c124771a8b82dde
Merge: 980908b e6eac78
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Sep 18 08:26:31 2018 -0600

    Merge pull request #449 from gpakosz/align-macros
    
    Prefix ALIGN_DOWN macro with FFI_

commit e6eac7863e2bf1a009ea863041b354bdb4af6b67
Author: Gregory Pakosz <gregory.pakosz@gmail.com>
Date:   Tue Sep 18 15:19:53 2018 +0200

    Prefix ALIGN_DOWN macro with FFI_

commit 980908b47bbde09fab88ee4b2b61d8bc5d4378a7
Merge: 65da63a 4cb776b
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Aug 11 09:53:15 2018 -0600

    Merge pull request #445 from andreas-schwab/master
    
    RISC-V go closures

commit 4cb776bc8075332d2f3e59f51785d621fcda48f6
Author: Andreas Schwab <schwab@suse.de>
Date:   Thu Aug 9 12:12:29 2018 +0200

    RISC-V go closures
    
    This implements go closures for RISC-V.  It has been tested on
    riscv64-suse-linux and against the libgo testsuite.

commit ba73a671cb49f8e2c4417723a9dc233e328926ae
Author: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
Date:   Fri Jul 20 09:37:43 2018 -0700

    Update FFI_HIDDEN() to use .private_extern on Apple platforms and use the macro where appropriate
    
    Fix issue #439
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>

commit 65da63abc843fe448aaa86015d094cf016f325ba
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Mon Jun 25 04:38:58 2018 -0700

    Add compact unwind for darwin/i386 (#440)
    
    * x86: Add implementation of compact unwind for ffi_call_i386, et al.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * x86: Use __text as the section name to avoid deprecated section name warnings.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * darwin: Add missing regular,debug attributes for compact unwind sections
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>

commit 2309b58448b0c8349156d687d7fa8709dfb68992
Author: Shoaib Meenai <shoaib.meenai@gmail.com>
Date:   Sun Jun 17 17:04:24 2018 -0700

    Mark sysv.S as SafeSEH compatible (#438)
    
    It contains no exception handler, so we can just emit the special
    @feat.00 symbol to indicate that it's trivially SafeSEH compatible.
    SafeSEH only applies to x86 and not x86-64, hence its inclusion in the
    x86-specific block. See [1] for details.
    
    [1] https://msdn.microsoft.com/en-us/library/windows/desktop/ms680547(v=vs.85).aspx#the_.sxdata_section_

commit 1d704051b2da207d715351b8613e74437d8e2eb7
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Sun Jun 17 17:01:50 2018 -0700

    i386: Fix missing break; in case statement leading to incorrectly returned FFI_BAD_ABI (#437)
    
    * i386: Add missing break triggering dead store static analyzer checks.
    
    Register calling sequence is being reported as bad ABI instead of working as intended.
    
    Found-by: Clang Static Analysis
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * Mark ffi arm sysv entry points as private_extern.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * x86_64: Add implementation of compact unwind for ffi_call_unix64.
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>

commit b55baf0b500ccc7636a8a55e0506d9da787ad2dd
Author: Anthony Green <green@moxielogic.com>
Date:   Wed May 9 13:21:02 2018 -0400

    Handle FFI_GNUW64 on non-Windows systems (EFI)

commit 8206253fdf01226173c36f087226d8ea53584566
Author: Anthony Green <green@moxielogic.com>
Date:   Wed May 9 10:50:46 2018 -0400

    Mark some cases as xfail due to GCC bug

commit b5ee395710e2db830749c3c95558c91b66ac111f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 5 07:41:53 2018 -0400

    Revert "Remove some symbol exports and cleanup newline warnings (#433)"
    
    This reverts commit a5a0f3cf36dfb4d64316414a872288c3170e6c1d.

commit a5a0f3cf36dfb4d64316414a872288c3170e6c1d
Author: Jeremy Huddleston Sequoia <jeremyhu@users.noreply.github.com>
Date:   Sat May 5 03:44:33 2018 -0700

    Remove some symbol exports and cleanup newline warnings (#433)
    
    * build: Ensure darwin generated sources end with a new line
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
    
    * build: Use .private_extern where missing to prevent exporting symbols that are not API
    
    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>

commit d3c54cf3a2b2bb2e889173b6a0a959517b42c47f
Author: hjl-tools <hjl.tools@gmail.com>
Date:   Wed May 2 06:19:58 2018 -0700

    Re-enable msabi testing (#436)
    
    * Revert "disable msabi testing for now"
    
    This reverts commit 7b7638eb0eac2adfa72f7ec9f254ba287c9947e2.
    
    * x86: Correct testing for 64-bit x86-64
    
    Since passing -m32 to x86-64 compiler will generate i386 code, we
    need to check both __ILP32__ and __i386__ for 64-bit x86-64.
    
    * x86: Check __i386__ instead of i?86-*-* targets
    
    Since passing -m32 to x86-64 compiler will generate i386 code, we need
    to check __i386__ instead of i?86-*-* targets for i386 targets.
    
    * i386: Properly passing integer parameters in registers
    
    For thiscall and fastcall, if the paramter passed as 64-bit integer or
    struct, all following integer paramters will be passed on stack.
    
    * test: Add ABI_ATTR to callback_code
    
    Add ABI_ATTR to callback_code to properly test different ABIs.

commit ebf241663cc0fd0d76e4db8101e842e1630a2c78
Author: Alan Modra <amodra@gmail.com>
Date:   Wed May 2 13:55:29 2018 +0930

    PowerPC64 ELFv1 fp arg fixes
    
    The ELFv1 ABI says: "Single precision floating point values are mapped
    to the second word in a single doubleword" and also "Floating point
    registers f1 through f13 are used consecutively to pass up to 13
    floating point values, one member aggregates passed by value
    containing a floating point value, and to pass complex floating point
    values".
    
    libffi wasn't expecting float args in the second word, and wasn't
    passing one member aggregates in fp registers.  This patch fixes those
    problems, making use of the existing ELFv2 homogeneous aggregate
    support since a one element fp struct is a special case of an
    homogeneous aggregate.
    
    I've also set a flag when returning pointers that might be used one
    day.  This is just a tidy since the ppc64 assembly support code
    currently doesn't test FLAG_RETURNS_64BITS for integer types..
    
            * src/powerpc/ffi_linux64.c (discover_homogeneous_aggregate):
            Compile for ELFv1 too, handling single element aggregates.
            (ffi_prep_cif_linux64_core): Call discover_homogeneous_aggregate
            for ELFv1.  Set FLAG_RETURNS_64BITS for FFI_TYPE_POINTER return.
            (ffi_prep_args64): Call discover_homogeneous_aggregate for ELFv1,
            and handle single element structs containing float or double
            as if the element wasn't wrapped in a struct.  Store floats in
            second word of doubleword slot when big-endian.
            (ffi_closure_helper_LINUX64): Similarly.

commit a2c6c7af9ffb9500a944abc666ced0922d0de762
Author: Anthony Green <green@moxielogic.com>
Date:   Tue May 1 06:46:30 2018 -0400

    Add license for build-time tools

commit 4c2206ace07f2fb4bef43cd4bfe952ccb584dcec
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Apr 28 04:46:10 2018 -0600

    Fix two "return" issues in x86/ffi64.c (#431)
    
    Issue #70 pointed out that at least one compiler didn't like:
    
        return ffi_call_efi64(cif, fn, rvalue, avalue);
    
    ... where the return type is "void".  This patch splits the statement
    into two.
    
    I also noticed that ffi_call_go here seems to do a double call.  I
    suspect a "return" is missing here, so this patch adds it as well.

commit ed3ed4d801a4d417ea304715d4d8ae581a6c6903
Merge: 8e250c3 b69f95d
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Apr 27 10:48:51 2018 -0600

    Merge pull request #429 from yousong/m4subst
    
    build: fix subst toolexecdir, toolexeclibdir

commit b69f95d6562b6a57c9be36da0cdf2a500adb94e9
Author: Yousong Zhou <yszhou4tech@gmail.com>
Date:   Thu Apr 26 19:27:54 2018 +0800

    build: fix subst toolexecdir, toolexeclibdir
    
    On CentOS 7.4, configure script generated by autogen.sh will output the
    following values when compiling GCC source code
    
        toolexecdir='NONE/$(target_alias)'
        toolexeclibdir='NONE/$(target_alias)/lib'
    
    and cause build error
    
        ... -o libffi.la -rpath NONE/riscv64-bs-linux-gnu/lib ...
        checking for shl_load in -ldld... libtool: link: only absolute run-paths are allowed

commit 8e250c390a45f722387c1881ae5f99849a2d1e22
Author: Stephen <stephengroat@users.noreply.github.com>
Date:   Wed Apr 25 13:17:32 2018 -0700

    update to https for cygwin download (#428)

commit 7d3cab7926d08aad9a8e54420d6878cb17efd185
Author: Lucas Pluvinage <lucas.pluvinage@gmail.com>
Date:   Sat Apr 21 00:24:50 2018 +0200

    xtensa-linux: use cache flush instruction only if it is available (#426)

commit 159b94e5fd4aa2d88e1b5b389092cefd9472a741
Author: James Cowgill <jcowgill@users.noreply.github.com>
Date:   Thu Apr 19 01:28:23 2018 +0100

    Various MIPS Fixes (#425)
    
    * mips: simplify closure #defines
    
    This commit should have no visible effect.
    
    * mips: add special handling of variadic functions
    
    MIPS requires special handling of variadic functions which pass floating
    point arguments:
    * In the o32 ABI, all float arguments are passed in integer registers.
    * In the n32/n64 ABIs, float arguments after the ellipsis are passed in
      integer registers.
    
    Implement this in libffi. To support this in n32/n64 closures, we need to add
    a new mips_nfixedargs field to ffi_cif which will break the libffi ABI.
    
    This fixes the libffi.call/cls_longdouble_va.c test which was failing on
    64-bit MIPS.
    
    * mips: align argn for all 64-bit types in o32 closure handler
    
    Ensure that argn is pre-aligned for all 64-bit argument types (including
    doubles) and not just integer types.
    
    This fixes closures of the form "f(float, double, <some integer args>)".
    Previously the first integer argument would be read from a2 which is garbage
    at this point (the float arguments have already "consumed" a0-a3). After
    this commit, argn is correctly padded between the "float" and "double"
    arguments so that the first integer argument is read from the stack.
    
    Fixes "double f(float,double,int)" test in #371
    
    * mips: do not read from floating point register if returning a struct
    
    In the o32 ABI, the pointer passed in a0 used to return structures
    indirectly is treated as the first argument for argument allocation purposes.
    This means that it should inhibit floating point registers the same way that
    other integer arguments do.
    
    Fixes "Double f(float,Double,double)" test in #371
    
    * mips: fix pointer cast warnings
    
    Fix two pointer cast warnings when compiled on 64-bit mips by casting
    through uintptr_t.
    
    Fixes mips64el part of #404

commit f2afda08e85b02888350449dcf39a6c37cfb7bc4
Merge: e27f70b 801c1bd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 8 18:25:43 2018 -0400

    Merge branch 'master' of github.com:/libffi/libffi

commit e27f70b8cf2a537bef84b2cb29ad8ea6209a11b8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Apr 8 18:25:34 2018 -0400

    Fix case where callback arg value is split across regs and stack

commit 801c1bd712ff8c76675b7aa69c29948907f1eeff
Author: Andreas Krebbel <38103320+Andreas-Krebbel@users.noreply.github.com>
Date:   Thu Apr 5 14:27:32 2018 +0200

    Fix issue #421 (#422)
    
    Fantastic - thanks for digging into this.

commit 8660e6935971c5abd7b528eaf54deeccd4bbaccd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 2 08:30:17 2018 -0400

    3.3 release candidate 0

commit 7b7638eb0eac2adfa72f7ec9f254ba287c9947e2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 2 08:24:44 2018 -0400

    disable msabi testing for now

commit af6773d6ab4db0577bc6b932ab5a2f98a0a8dca2
Author: fwg <fwg@users.noreply.github.com>
Date:   Mon Apr 2 13:55:31 2018 +0200

    Fix appveyor windows build (#420)
    
    * Fix msvcc dll build by adding dllexport decorations to all API declarations
    
    * Fix appveyor build for VS 2013
    
    Use the new -DFFI_BUILDING_DLL for producing a working DLL. Update the
    msvcc.sh wrapper script to successfully compile the testsuite files.
    
    * MSVC build: suppress warnings in testsuite
    
    * fix testsuite on appveyor

commit 48bdb02867edb7e9f3785ccb4bdff1087fb44246
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:22:57 2018 -0400

    Trim some optimization tests

commit f98e0f0d777bf962057e18d036989b2b89fdf416
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:22:38 2018 -0400

    Simplify matrix

commit fa72b054e10acaea33ec8cc395e0ea5b31c9ac9e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:10:23 2018 -0400

    Remove warning message from clang

commit 746c3ce220cb155a8f3b613550a7ecad76f9fedc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 07:01:14 2018 -0400

    Expand ABI tests on x86.  Testsuite bug fixes.

commit 2eee934d0cb2beef7c0aa29767eca1ce03452ae9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:45:40 2018 -0400

    deal with msvc warnings

commit 206b2974f70f65b4c4c4d9e62b03ee7e0753ee2d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:37:50 2018 -0400

    fix quoting issue

commit 499e41c1ec6b760eff2b320ffc87e22de82a9e1d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:35:10 2018 -0400

    Don't ignore a file

commit 5b41e9f6d2c099add0e02db8c8054281f96b6d0e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:34:31 2018 -0400

    Try different msvc hack

commit e8cf133813e7fa2c606d93abab5b68989e5f6cbc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 14:12:02 2018 -0400

    msvc c99 hack

commit a3e20940898ed2ca96b9df87f34117d06d900e5f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:58:42 2018 -0400

    More msvc hacks

commit a82b456e98b0f3fbafe76725d1a1503d458a2178
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:49:46 2018 -0400

    msvc fixes

commit a2326aaf561798c3bfd5e464b16693a094bf6c45
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:36:04 2018 -0400

    Remove debug output

commit 85b6b209d7984667ce7d00351fe7e79ef6c4930c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:35:23 2018 -0400

    Force literals to float (msvc warning)

commit 2872c460ba8e96416b4f4ee4a0ed183461d8d6c9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:28:40 2018 -0400

    Fix msvc linking

commit b40a386c22a2bd164819b4f398b722357222b7c1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:20:21 2018 -0400

    Fix library path handling

commit d78c5f64f834c24a769bee78cfb7db4d468b6b21
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 11:14:56 2018 -0400

    Deal with libpath

commit f318bb63c5dc623d5a69ffc4a59a330050cac567
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 08:25:26 2018 -0400

    Fix library path handling

commit 4f0c9cb39b7599312729278380ce63247bca226b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 08:10:03 2018 -0400

    Use mixed cygpath paths

commit d3693b4665de7ef69b61fb4e483d5686302f9c69
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 08:05:42 2018 -0400

    Copy - don't symlink - to support msvc builds

commit 51ce3696cd0da4716d86b73a30bd89e139ec4b74
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 07:35:33 2018 -0400

    Use cygpath to convert windows paths

commit 70b93e4d863c1ff2a6498455339e17df3d7fe784
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 07:14:59 2018 -0400

    try to fix windows builds

commit 377134d7a946df13b60ff9c9dacc895e82c36178
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 07:06:01 2018 -0400

    Reduce verbosity

commit d01ef5b875dedcb9f7b3039b2334cbd594fdfcd4
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 06:23:29 2018 -0400

    iOS builds

commit d13583f55fb31a302684cbc62c300ae81eb577e9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 06:22:57 2018 -0400

    Fix -L support

commit d49911544bf9d2b4fab782b0c5e76a68074223df
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:59:26 2018 -0400

    Fix quoting

commit 8f47ec404fcf5a082fc4537ede8cdf897f4c5226
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:35:35 2018 -0400

    Don't set AM_MAKEFLAGS

commit df314193dc6cd00978b6e1517866448b604199af
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:13:38 2018 -0400

    Run tests with lots of debug output

commit b394947518fb15887802fe3bc7f0a337c495d65d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:11:52 2018 -0400

    Add -L and -l support

commit 33da6c075299317885385f19680b58a1e9feab5e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 05:07:08 2018 -0400

    Mention C99 and build requirements

commit e6bdbd7888b5c8a90f3c91f4d6caf3c8d574f3b5
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:46:04 2018 -0400

    Remove reference to wiki

commit 24eb1f88d788399dde5fbb4804767e6b6cbf1bc8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:09:56 2018 -0400

    Refactor travis build instructions.  Add iOS build

commit ffc3ff162a15ed0ed0e946815c950c69ee0c8343
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:02:06 2018 -0400

    Add issue template

commit 5c2ca479e726dc2feec43e25475c63361387bf20
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 27 04:01:37 2018 -0400

    Remove uninitialized warning. Fix #163.

commit 0081378017c33a4b9b6fbf20efabdd9959d6a48d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 24 09:05:14 2018 -0400

    revert

commit 59d44242e15d2979291fe6793ddfb2681b7480ef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 24 08:45:59 2018 -0400

    Try bhaible tests in appveyor

commit 6f7c29c5a6d2850ce53b99efcc71fcc4e8f8c8cc
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 24 08:40:04 2018 -0400

    Formatting fixes

commit f3c2729ee4026c9f70a6656603bac8ba2ec40a5d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 23 11:47:29 2018 -0400

    Add libffi.map.in to extra dist files

commit 6d2233f96a08c5ac01a64e7b84e2bd678eed0a4b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 23 09:06:08 2018 -0400

    Add sparc solaris build notes

commit 99a80d2fc4ede48348af2edfb7126d60609c4b71
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 21:22:55 2018 -0400

    Fix formatting

commit a3e87ac8e7b7e609ab84541a69c7e51873efa437
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 20:36:52 2018 -0400

    Fix formatting

commit cec3a3a201f17a7f018f25e1a0917bd5206e5a5a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 16:00:04 2018 -0400

    Don't align-double for 32-bit x86

commit f34f8039c10c4d8d728bc335dcf2b2a38f6e8b50
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 15:30:00 2018 -0400

    Remove debug output

commit f31b915314b12904b858b54cfdf670ceaeda7b2d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 15:13:21 2018 -0400

    Add m4/ax_require_defined.m4

commit a2dc5848b53e9e45ff68e5ef70683b5ffb82592e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 13:41:15 2018 -0400

    travis debug

commit 81d345b2cff039c4389fad283a108ad978b609e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 13:32:03 2018 -0400

    Update autoconf archive macros

commit 369ef49f71186fc9d6ab15614488ad466fac3fc1
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:53:42 2018 -0400

    Add missing FFI_GNUW64 enum

commit 56655e58c7f966685c0d5635ee7215733121ae41
Merge: 43980dd 9bc40d8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:34:18 2018 -0400

    Merge branch 'master' of github.com:/libffi/libffi

commit 43980dd10e0d5705e52f24d63988b722e31bf330
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:32:10 2018 -0400

    Add FFI_GNUW64 ABI for GNU 80-bit long double support

commit 9bc40d87ea5950969b234ed56cd2c6acd883fa0e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 12:32:10 2018 -0400

    Add FFI_GWIN64 ABI for GNU 80-bit long double support

commit d46406088d28b038a0a0f7396d9621f431482f6a
Author: Ryan C. Underwood <nemesis@icequake.net>
Date:   Sun Mar 18 07:00:42 2018 -0700

    Fully allocate file backing writable maps (#389)
    
    When ftruncate() is used on a filesystem supporting sparse files,
    space in the file is not actually allocated.  Then, when the file
    is mmap'd and libffi writes to the mapping, SIGBUS is thrown to
    the calling application.  Instead, always fully allocate the file
    that will back writable maps.

commit 247e44b3ef653f210de614a749b71449b8c70764
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 18 07:01:54 2018 -0400

    Fix return values

commit 1f99701fad1761ffe4e9adf88cfe26f74f427e7c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 17 22:49:58 2018 -0400

    Make tests compile/run standalone

commit d974207cd6373ff282a64038564d99b853dc3fab
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 17 09:03:42 2018 -0400

    Formatting fixes.  Add 'bug fixes' note.

commit a33bfa9b12993aae2edf669f62e141a84286d4de
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 17 07:17:24 2018 -0400

    xfail unwind tests for moxie

commit 8bf05481436ba085df3adfff2b47a879df738d67
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 23:54:28 2018 -0400

    Install moxie libstdc++

commit 84b383eda67ba75a6456e4b3587f17b749e6e1a1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 23:36:51 2018 -0400

    Install moxie-elf-g++

commit 6a801d042ac1212fe8c0e11abb865061e515aa43
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 17:53:33 2018 -0400

    Fix closure case where 8-byte value is partially passed in register.  Fixes cls_many_mixed_float_double test case.

commit 0f0ba9e0ec52e0297c91cb63a889980a6f847219
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 16 07:28:33 2018 -0400

    Run dejagnu's runtest with -a option to prevent travis timeouts after 10min

commit 725454196afab82f7da7bd719e8bddf7cd7837dd
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 15 08:17:18 2018 -0400

    fix .travis.yml

commit d71051c46a795a0669b2d83804030746f790edf4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 21:21:06 2018 -0400

    fix .travis.yml

commit e86aa54ce3418081dca403217c9216c773b82560
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 21:00:55 2018 -0400

    fix .travis.yml

commit 5b538ed61fb13efc8f01bad014c5485231714c96
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 20:32:00 2018 -0400

    fix .travis.yml

commit 6ed64a7953178cf07d2793650fcd64caa6b51d53
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 20:22:33 2018 -0400

    fix .travis.yml

commit 90809e928f8b5a0cdf0787d799111bc33689a9d1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 14:09:39 2018 -0400

    fix .travis.yml

commit 85e4c62351bd1e45dd6d77916778e18c435f1723
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 13:47:27 2018 -0400

    fix .travis.yml

commit aa8a5ec4a4ec4a4460ec3cd4e396e09ceaa3a2fa
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 13:25:04 2018 -0400

    fix .travis.yml

commit 7c3e5da401ab7efef83a5bd4e7f64b0df053da0c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 13:07:04 2018 -0400

    fix .travis.yml

commit 19aec1989382fab8bd86c556aa24751a75b8246e
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 12:40:58 2018 -0400

    Fix travis.yml

commit bf337b070977fb7e8934fc91e4d0e60209f53448
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 12:15:04 2018 -0400

    yaml syntax error fix

commit 076d5a987e016669993154b91525b02978c56727
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 11:13:32 2018 -0400

    markdown fixes

commit d2f7e788aecf37971c9be1cd650f78a3e4061e18
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 09:06:38 2018 -0400

    Fix test cases with short results

commit 18fe190068563bb2bf52a0993017887f438c85a4
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 08:02:10 2018 -0400

    Debug travis output

commit 718a4177f23e9d6c5476d0118d49a3a093d72c6c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 14 07:40:53 2018 -0400

    test

commit 486c34b65deb43d6d9025b2a40284606f97f4e0b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:31:18 2018 -0400

    debug

commit 00464aa52022674bdc1f5aa9b2ceb575c9a04b87
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:30:52 2018 -0400

    debug

commit eb0544d0d42e5aef56ee1df0861bcd0c95102f88
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:20:15 2018 -0400

    Debug env

commit 9d5bd29d8dfb5f89d0927a175443240a19e93890
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 23:07:10 2018 -0400

    Refactor

commit 52a364d7699230be5e883f32b9ac0caaea0300b1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:49:48 2018 -0400

    fix moxie build

commit 1a32b3f146f7ade701cea74e3983b16145f93393
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:44:13 2018 -0400

    fix moxie build

commit e8958c3a64b5e59f0477bcaafaf9c03337d9f445
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:36:41 2018 -0400

    revert test

commit 58315ae125482c44821cfbdce41e350380024d0e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:35:50 2018 -0400

    test

commit 6239c28741a8abc1bd06cb47329d8c5cdb359c90
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 22:13:44 2018 -0400

    Add experimental moxie travis build

commit 01db31d94e97e71836fe862826bc8a2a399dd619
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 20:41:55 2018 -0400

    Update moxie sub opcode

commit e8f5a43033d53ad631ba477b78a3def61783a1dc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:27:00 2018 -0400

    Fix appveyor badge

commit d1689dd3bf78f4975aa6a6a16cbffcb794283acb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:24:37 2018 -0400

    Fix travis badge.  Add REAME.md to dist files

commit 785351fbc2a49f05535c412067ac51f906612779
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:21:49 2018 -0400

    Preformat release notes

commit 8c7fbd1616b075e3077346c7bf56befd723a9355
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:20:44 2018 -0400

    Preformat release notes

commit 54f31b00562e75e6aae2b736c70e6713618640cb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:17:57 2018 -0400

    Try to fix table

commit 3a29a27a86624512f405e4c9962276485517caf1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:14:40 2018 -0400

    Clean up markdown table

commit fbfc3b048fcf3f699f4495ca70b7e58461a0df4f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:12:21 2018 -0400

    Move to markdown

commit a31d3d3ba6644d308b6fb8cea2a60976e0531f4a
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 09:11:24 2018 -0400

    Add travis and appveyor build badges

commit 16313cb2746ceed6bc1d25b52604642c14758e01
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 08:52:30 2018 -0400

    Support compiler specific warning suppression flags

commit cca6d1fb549e422514df4aad68f2ca9a8313327d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 08:51:34 2018 -0400

    Support compiler specific warning suppression flags

commit 9291f941c2df5ddf967f701b258ac2b3cc9d0820
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 08:37:21 2018 -0400

    Add bhaible's missing Makefile

commit bede01d82ec2f1cfe2bb42233fcd408a6e3a6323
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 07:53:33 2018 -0400

    Remove stray directory

commit 9aefbb1031c9be7c5121ab24742e025ccff236c4
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 07:51:02 2018 -0400

    Update version number to next pre-release

commit ddf7a8f7511a038342f56c08dac718148e2f0151
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 13 07:47:57 2018 -0400

    Update test list for dist

commit 6186261cb36a33abbf31430569f83ccd7685474e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 12 21:53:18 2018 -0400

    Add Bruno Haible and Bill Triggs' libffi testsuite

commit 4e8f79d5587ddb8e027f4df213e90f943e286594
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 18:21:46 2018 -0400

    Next release will be 3.3

commit 3840d49aaa831d649b1597518a2903dfed0d57f3
Author: Stef O'Rear <sorear2@gmail.com>
Date:   Sun Mar 11 05:55:15 2018 -0700

    New RISC-V port (#281)
    
    * Add RISC-V support
    
    This patch adds support for the RISC-V architecture (https://riscv.org).
    
    This patch has been tested using QEMU user-mode emulation and GCC 7.2.0
    in the following configurations:
    
    * -march=rv32imac -mabi=ilp32
    * -march=rv32g -mabi=ilp32d
    * -march=rv64imac -mabi=lp64
    * -march=rv64g -mabi=lp64d
    
    The ABI currently can be found at
    https://github.com/riscv/riscv-elf-psabi-doc/blob/master/riscv-elf.md .
    
    * Add RISC-V to README
    
    * RISC-V: fix configure.host

commit dca52b55bc2ac0213c20849d7e9e19fbc9202023
Merge: 83d9aba 11de69d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 08:50:01 2018 -0400

    Merge pull request #406 from trofi/master
    
    ia64: fix variadic function closures with FP arguments

commit 83d9aba3a44dff8426052312a9445a7ef52f1db1
Merge: ab15405 b58caef
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 08:48:42 2018 -0400

    Merge pull request #407 from trofi/ia64-small-struct
    
    ia64: fix small struct return

commit ab154056937782c1c7f7005c8b46c5179bc719cb
Merge: 9429968 e66fd67
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 11 08:46:58 2018 -0400

    Merge pull request #409 from andreas-schwab/master
    
    Revert "Fix passing struct by value on aarch64"

commit e66fd678200db456a2e9860e80451773efa96fe0
Author: Andreas Schwab <schwab@suse.de>
Date:   Tue Feb 20 10:47:09 2018 +0100

    Revert "Fix passing struct by value on aarch64"
    
    This reverts commit 482b37f00467325e3389bab322525099860dd9aa.
    
    That was actually a bug in python, see <https://bugs.python.org/issue30353>.

commit b58caef7fd620408be9239ac24ea89d5bc84f30b
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Feb 17 19:00:40 2018 +0000

    ia64: fix small struct return
    
    This change fixes libffi.call/struct10.c failure on ia64:
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O0 execution test
    
    .Lst_small_struct handles returns for structs less than 32 bytes
    (following ia64 return value ABI [1]). Subroutine does roughly the
    following:
    
    ```
        mov [sp+0]  = r8
        mov [sp+8]  = r9
        mov [sp+16] = r10
        mov [sp+24] = r11
        memcpy(destination, source=sp, 12);
    ```
    
    The problem: ia64 ABI guarantees that top 16 bytes of stack are
    scratch space for callee function. Thus it can clobber it. [1]
    says (7.1 Procedure Frames):
    """
    * Scratch area. This 16-byte region is provided as scratch storage
      for procedures that are called by the current procedure. Leaf
      procedures do not need to allocate this region. A procedure may
      use the 16 bytes at the top of its own frame as scratch memory,
      but the contents of this area are not preserved by a procedure call.
    """
    
    In our case 16 top bytes are clobbered by a PLT resolver when memcpy()
    is called for the first time. As a result memcpy implementation reads
    already clobbered data frop top of stack.
    
    The fix is simple: allocate 16 bytes of scrats space prior to memcpy()
    call.
    
    [1]: https://www.intel.com/content/dam/www/public/us/en/documents/guides/itanium-software-runtime-architecture-guide.pdf
    
    Bug: https://bugs.gentoo.org/634190
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 45da2fcbcd0ecaba673275d22b04fac3e4376e22
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sat Feb 17 18:53:02 2018 +0000

    new test: return small struct
    
    The bug originally was discovered in https://bugs.gentoo.org/634190
    where complicated callback was returning invalid data on ia64.
    
    This change adds minimal reproducer that fails only on ia64 as:
    
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O0 execution test
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O2 execution test
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -O3 execution test
    FAIL: libffi.call/struct10.c -W -Wall -Wno-psabi -Os execution test
    
    Test passes on amd64. The fix is in the following commit.
    
    Bug: https://bugs.gentoo.org/634190
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 11de69ddb788e4d87ef653898878384116ac16c6
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Feb 11 11:29:39 2018 +0000

    ia64: fix variadic function closures with FP arguments
    
    libffi test framework already flagged failures as:
    
    ```
        FAIL: libffi.call/cls_double_va.c -W -Wall -Wno-psabi -O0 output pattern test, is 7.0
        res: 4
        0.0
        res: 4
        ? should match 7.0
        ?es: 4
        ?.0
        res: 4
    ```
    
    Failure happens here at
    
    ```c
        // testsuite/libffi.call/cls_double_va.c
        ...
        char*  format    = "%.1f\n";
        double doubleArg = 7;
        ...
        CHECK(ffi_prep_closure_loc(pcl, &cif, cls_double_va_fn, NULL,
                                   code) == FFI_OK);
        res = ((int(*)(char*, ...))(code))(format, doubleArg);
    ```
    
    libffi expects 'doubleArg' to be located in 'f9' (second FP argument) but
    gcc placed it to 'r33' (second GR).
    
    ia64 software [1] manual described argument passing ABI in
    "8.5.2 Register Parameters" as:
    
    """
        If an actual parameter is known to correspond to a floating-point
        formal parameter, the following rules apply:
        a) The actual parameter is passed in the next available floating-point
           parameter register, if one is available. Floating-point parameter
           registers are allocated as needed from the range f8-f15, starting
           with f8.
        b) If all available floating-point parameter registers have been used,
           the actual parameter is passed in the appropriate general register(s).
           (This case can occur only as a result of homogeneous floating-point
           aggregates, described below.)
    
        If a floating-point actual parameter is known to correspond to
        a variable-argument specification in  the formal parameter list,
        the following rule applies:
        c) The actual parameter is passed in the appropriate general
           register(s).
    
        If the compiler cannot determine, at the point of call,
        whether the corresponding formal parameter is a varargs parameter,
        it must generate code that satisfies both of the above conditions.
        (The compiler’s determination may be based on prototype declarations,
        language standard assumptions,  analysis, or other user options or
        information.)
    """
    
    We have [c] case here and gcc uses only GR for parameter passing.
    
    The change binds known variadic arguments ro GRs instead of FPs as those
    are always expected to be initialized for all variadic call types.
    
    This fixes all 10 failures on ia64-unknown-linux-gnu:
    
    ```
                     === libffi Summary ===
        -# of expected passes            1945
        -# of unexpected failures        10
        +
        +# of expected passes            1955
    ```
    
    [1]: https://www.intel.com/content/dam/www/public/us/en/documents/guides/itanium-software-runtime-architecture-guide.pdf
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 9429968b828de8775cfd7f139374888943f2186a
Merge: f08b2be 28d3b61
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 10 23:23:33 2018 -0500

    Merge pull request #403 from frida/fix/x86-sysv-pic-closure-regression
    
    Fix x86 SysV closure in PIC mode

commit f08b2be6273f471863f1ea1afb0078a96fe73d74
Merge: c194448 482b37f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 10 23:21:49 2018 -0500

    Merge pull request #405 from andreas-schwab/master
    
    Fix passing struct by value on aarch64

commit 482b37f00467325e3389bab322525099860dd9aa
Author: Andreas Schwab <schwab@suse.de>
Date:   Mon Sep 18 12:44:08 2017 +0200

    Fix passing struct by value on aarch64
    
    This fixes the ctypes test in the python testsuite.

commit 28d3b61bdd8b9fe786cb431165f2fb95f4e275d3
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Sat Jan 20 23:56:17 2018 +0100

    Fix x86 SysV closure in PIC mode
    
    The assembly single-line comments swallowed up the remaining assembly
    code of the macros due to lack of line-endings.
    
    This is a regression introduced in b7f6d7a.

commit c194448ef08b4c0183c68dda95a4b8b9cfc47985
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 10 09:38:15 2018 -0500

    adjust env usage in travis

commit 5314b1067145d30acdc5bba3bebb788e8acfdaae
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 10 07:22:51 2018 -0500

    test static lib

commit bec6135dff061a35065efc106f920940a82c28ee
Merge: f6ecf10 d15581c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 10 07:20:04 2018 -0500

    Merge pull request #393 from thejunkjon/master
    
    Linker error "recompile with -fPIC" for x86_64

commit f6ecf10ca021e94d496c75cc43c417161edf28b3
Merge: c50ba18 746dbe3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 5 16:51:44 2018 -0500

    Merge pull request #401 from wzssyqa/jr-r6
    
    mips/ffi.c: fix encoding for jr on r6

commit 746dbe3a6a79a41931c03b51df2972be4d5e5028
Author: YunQiang Su <wzssyqa@gmail.com>
Date:   Wed Jan 3 10:07:41 2018 +0800

    mips/ffi.c: fix encoding for jr on r6
    
    mips/ffi.c: instruction jr has a different encoding for r6

commit c50ba182f43537e29dd92cfd9b2fa7a30549a06e
Merge: 54cb3e2 af6949b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 1 15:18:46 2018 -0500

    Merge pull request #398 from emaste/master
    
    Enable symbol versioning when ld is LLVM's lld

commit 54cb3e2345ee8e2483d4705a9fb2967b6e5a9bd1
Merge: 716bfd8 94c102a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Dec 31 07:46:05 2017 -0500

    Merge pull request #396 from wzssyqa/master
    
    mips/n32.S: disable .set mips4 on mips r6

commit af6949b7af98404729e04227165d0e32ce550ce8
Author: Ed Maste <emaste@freebsd.org>
Date:   Sun Dec 17 23:08:12 2017 -0500

    Enable symbol versioning when ld is LLVM's lld
    
    Fixes #397

commit 94c102aa69b04337f63498e0e6551fcdce549ae5
Author: YunQiang Su <wzssyqa@gmail.com>
Date:   Sun Dec 10 14:25:01 2017 +0800

    Not set mips on mips r6
    
    MIPS release changed encodes of some instructions, include ll/sc etc.
    
    if .set mips4 on mips r6, as will generate some wrong encode of some instructions.

commit d15581c6969657c79afcff4865bdc8f5ff23a2f7
Author: jon <thejunkjon@gmail.com>
Date:   Fri Dec 1 00:34:30 2017 -0800

    Updating calls to ffi_closure_unix64_inner and ffi_closure_win64_inner to use PLT.  Without this fix, statically linking libffi causes the linker error i.e. 'requires dynamic R_X86_64_PC32 reloc against ffi_closure_unix64_inner which may overflow at runtime; recompile with -fPIC)'

commit 716bfd83177689e2244c4707bd513003cff92c68
Merge: 4fdbb05 cd5e9f8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 5 09:02:37 2017 -0500

    Merge pull request #387 from trofi/master
    
    Makefile.am: add 'src/s390/internal.h' to source tarball

commit cd5e9f8b87cc387d3ffef4db81ee6af200a84183
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Nov 5 13:56:42 2017 +0000

    Makefile.am: add 'src/s390/internal.h' to source tarball
    
    commit 2f530de168e0253ac06e044c832132c496e8788b
    ("s390: Reorganize assembly") introduced new header
    (similar to other arches) but did not add it to source
    tarball.
    
    As a result build from 'make dist' tarballs failed as:
    
    ```
    ../src/s390/ffi.c:34:10: fatal error: internal.h: No such file or directory
     #include "internal.h"
              ^~~~~~~~~~~~
    ```
    
    To fix it the change adds file to 'Makefile.am'.
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 4fdbb0578e921a9da146c2b040061a3a39fe4fda
Merge: b302bc3 2bfcd29
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 3 07:05:31 2017 -0400

    Merge pull request #320 from 0-wiz-0/master
    
    Support NetBSD with mprotect.

commit b302bc3dfe47e3ea57de11610fced3170c06df28
Merge: 14eac93 1fb788a
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 3 07:03:55 2017 -0400

    Merge pull request #322 from compnerd/aarch64-base
    
    aarch64: fix index base register for AArch64

commit 14eac93869eb109bea1daeb4f00609169d5488ff
Merge: ad15ae7 9fc9dc5
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 3 06:49:03 2017 -0400

    Merge pull request #384 from yan12125/fix-sgidefs-checking
    
    Fix linux detection (closes #303)

commit 9fc9dc535ee7af28f49f86a8ecacb7f575c46ba4
Author: Yen Chi Hsuan <yan12125@gmail.com>
Date:   Fri Oct 27 16:12:56 2017 +0800

    Fix linux detection (closes #303)

commit 1fb788ac898290d8e3044ca4c0a4fb3c3c254ce5
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 10 11:37:00 2017 -0700

    aarch64: fix index base register for AArch64
    
    The base is passed in `x3`, not in `x2`.  This fixes the indexing base
    so that the right value is used.

commit ad15ae762c8b3999e626ebccb9cf454455119555
Merge: dc2ff5b 5e4fcdc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:16:49 2017 -0400

    Merge pull request #298 from frida/fix/ios-trampoline-table-complexity
    
    Simplify iOS trampoline table allocation

commit dc2ff5baabf89d473d61ae4b468638f8ea98bb04
Merge: 927da71 79d1509
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:11:40 2017 -0400

    Merge pull request #323 from compnerd/x86-alloca-alignment
    
    x86: align alloca to 16-byte boundary

commit 927da71662f349f656fc1c5d0aaa533005e24f47
Merge: a0455c0 181fc4c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:05:53 2017 -0400

    Merge pull request #379 from jlj/master
    
    Xcode build improvements

commit a0455c031824c6ab3f1a7a6ef9912edad6ebd742
Merge: 0faf614 9d9d92b
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:04:23 2017 -0400

    Merge pull request #383 from hjl-tools/hjl/master
    
    Hjl/master

commit 0faf614529ae7ac8bc929415a6e1b076ba1b8cc5
Merge: 8d26e8c 3c372c3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 25 13:03:55 2017 -0400

    Merge pull request #381 from compnerd/ffi-nullptr-deref
    
    arm: fix a level of indirection issue

commit 9d9d92b47f3f73644f808ae38e97d1ea8f4d22df
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Oct 25 04:59:31 2017 -0700

    Skip WIN64/EFI64 support for x32
    
    Since x32 doesn't support WIN64/EFI64, skip it if __ILP32__ is defined.

commit b2a343ffc68f1af5368281e063c0ca5571c611cc
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Oct 25 04:36:49 2017 -0700

    Don't include WIN64/EFI64 for x32
    
    Since x32 doesn't support WIN64/EFI64, don't include it for x32.  Also
    x32 has sizeof size_t == 4.  But TARGET should be X86_64.

commit 3c372c384a94db23fdaf9fe64a4beb86159cf6d3
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 24 13:53:56 2017 -0700

    arm: fix a level of indirection issue
    
    Rather than relying on the stack being 0'ed out always, do it manually.
    The stack generally happened to be zero, and because the compiler
    realizes that the tests are dealing with chars truncates the read value.
    However, the top 3 nibbles of the value are undefined and may be
    non-zero.  The indirection level caused a null-pointer dereference.
    
    Explicitly scribbling on the stack during the allocation causes test
    failures without the original zexting behaviour.

commit 181fc4cc9ca211f3bc8209cecf3b2348b0674e21
Merge: 8d26e8c 54529ba
Author: Jean-Luc Jumpertz <jean-luc@celedev.eu>
Date:   Mon Oct 23 15:02:29 2017 +0200

    Merge branch 'master' based on ksjogo/libffi
    
      Added a tvOS target in Xcode project. Misc Xcode project cleanup.
      Fix macOS build target in Xcode project.
    
    # Conflicts:
    #       src/aarch64/ffi.c
    #       src/x86/ffi64.c

commit 54529ba1db9974b5efcbd2e893c44b6b01b0b2c8
Author: Jean-Luc Jumpertz <jean-luc@celedev.eu>
Date:   Mon Oct 23 09:49:35 2017 +0200

    Added a tvOS target in Xcode project. Misc Xcode project cleanup.

commit 79d1509cb06ba9067f56e2c62394d7bc60fa6bf2
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 10 11:39:45 2017 -0700

    x86: align alloca to 16-byte boundary
    
    Align the stack allocation to a 16-byte boundary.  This ensures that the
    stack parameters are 16-byte aligned which is needed for some
    instructions.

commit 8d26e8c6da23b10331181a4bbf837f479ce5d7d2
Merge: 1c9171e ed7488c
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Oct 17 10:46:49 2017 -0600

    Merge pull request #326 from trofi/master
    
    src/ia64/unix.S: unbreak small struct handling

commit ed7488c003765c7ee71b7da3e8c21f431b043809
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Tue Oct 17 13:00:51 2017 +0100

    src/ia64/unix.S: unbreak small struct handling
    
    commit 6e8a4460833594d5af1b4539178025da0077df19
    added FFI_TYPE_COMPLEX value type (comes after FFI_TYPE_POINTER)
    
    ia64 ffi_closure_unix reiles on the ordering of
    FFI_ enums as ia64 has ia64-specific FFI types:
    small struct and FPU extesions.
    
    As a result all tests handling small structs broke.
    
    The change fixes dispatch table by adding (no-op)
    FFI_TYPE_COMPLEX entry
    This has positive effect of unbreaking most tests
    on ia64:
    
                     === libffi Summary ===
    
    -# of expected passes            1595
    -# of unexpected failures        295
    +# of expected passes            1930
    +# of unexpected failures        10
     # of unsupported tests          30
    
    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

commit 1c9171ec89943d9b4b10a54091c8b5c104eb258d
Merge: 9f1f874 7ad0ae7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 10 23:19:57 2017 -0400

    Merge pull request #324 from compnerd/arm-zext
    
    arm: zext return value parameters

commit 7ad0ae7f42f3e208431ab66a9032dc9549f978d0
Author: Saleem Abdulrasool <compnerd@compnerd.org>
Date:   Tue Oct 10 11:44:05 2017 -0700

    arm: zext return value parameters
    
    The closure function (invoked as closure->fun in ffi_closure_XXX_inner)
    will only populate the actual number of bytes for the true return type,
    which may be a character.  This leaves garbage on the stack when the
    assembly closure function (i.e. ffi_closure_XXX) reads the return value
    off of the stack into r0 as a 4-byte value.  ffi_closure_XXX always
    leaves room for at least 4 bytes here, so we can safely set them to 0.
    Otherwise, if there is garbage in any of these bytes, these end up in r0
    and in the returned value as well.

commit 2bfcd29955c02b67fa10a68cc4200f6838181e0f
Author: Joerg Sonnenberger <joerg@NetBSD.org>
Date:   Mon Oct 2 15:34:03 2017 +0200

    Support NetBSD with mprotect.
    
    Signed-off-by: Thomas Klausner <wiz@NetBSD.org>

commit 9f1f8741b2ec0c8898ecff7b93005627b915dd02
Merge: dca078f 6cf0dea
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 1 20:25:50 2017 -0600

    Merge pull request #319 from angerman/patch-5
    
    Adds `local.exp` to DISTCLEANFILES

commit 6cf0dea78a5a4584eda871e264043974d0453e53
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Mon Oct 2 10:20:16 2017 +0800

    Change CLEANFILES to DISTCLEANFILES

commit dca078f468ff696134195e85fed3f48260115651
Merge: 540258d bccba9a
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 1 20:19:53 2017 -0600

    Merge pull request #316 from angerman/patch-2
    
    Add `configure.host` and `libtool-version` to the `EXTRA_DIST` files

commit 540258d13e1d427254cbeddacdd2bb1ab2c307d1
Merge: 93d8e7d 4c6aa78
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Oct 1 20:17:02 2017 -0600

    Merge pull request #317 from angerman/patch-3
    
    Add src/x86/asmnames.h to noinst_HEADERS

commit bccba9a34e8ba0fe671c4b94671fea2efe181b01
Merge: a1e6ccb 59d65d7
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 12:48:17 2017 +0800

    Merged

commit 6b6df1a7bb377651a07663879bd4162f0059dc5c
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 12:37:53 2017 +0800

    Adds `local.exp` to CLEANFILES
    
    With #315, #316, #317, #318 and this patch, running
    ```
    AM_DISTCHECK_CONFIGURE_FLAGS=--disable-docs make distcheck
    ```
    should complete successfully.

commit 59d65d74ae72bd24fbf78f045592c5168f0b0784
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 12:23:31 2017 +0800

    Include `libtool-version` in the EXTRA_DIST files.

commit 4c6aa78d75f0c426a23c27af74155aa2535021d6
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 11:32:41 2017 +0800

    Add src/x86/asmnames.h to noinst_HEADERS
    
    In eaa59755fcbb692a8cb763c7f9f24a350aadbd30, macros from `unix64.S` were extracted into `asmnames.h` to be used with `win64.S` as well. As such these are required by `unix64.S`, which fails to build without them.

commit a1e6ccb67e7d7f2b235016aa6c6733c5743945a1
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun Oct 1 11:28:40 2017 +0800

    Add `configure.host` to the `EXTRA_DIST` files
    
    When running `make dist`, `configure.host` would not result in the distribution tarball, however `configure` would try to read it, and as such the tarball would not be buildable.

commit 93d8e7dd17b08ff195af3580584ccd5c2228202f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 21:51:34 2017 -0400

    Fix #265

commit 02a5145abbae2e311d5aeeee606c5b5745a99b55
Merge: 10099d6 7d504f7
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 21:43:03 2017 -0400

    Merge pull request #263 from ksjogo/master
    
    fix ios builds

commit 10099d6cad8418a10c1508235d1f458993ac51fe
Merge: c8f1aa3 ed84883
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:54:09 2017 -0400

    Merge pull request #271 from frida/fix/qnx-cache-flushing
    
    arm: Fix cache flushing on QNX

commit c8f1aa3d0459c6f1be6884b324b4d2d785ecfd78
Merge: db4dad9 50e408c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:53:50 2017 -0400

    Merge pull request #307 from zw3rk/master
    
    Support -ios triple

commit db4dad97e2589ca700d1b5b54eeb332137a152ad
Merge: 8a16f2f 9c12209
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:47:08 2017 -0400

    Merge pull request #312 from fjricci/fix_ub
    
    Fix misaligned memory access in ffi_call_int

commit 8a16f2f47fdb6a985d201baa02a1d226562af4d8
Merge: b230910 0ff9419
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Sep 27 20:45:15 2017 -0400

    Merge pull request #308 from trex58/master
    
    This patch enables FFI Go Closure on AIX.

commit a78da73956e4b0af4556f1c0a444bd0f065c3965
Author: Jean-Luc Jumpertz <jean-luc@celedev.eu>
Date:   Mon Sep 4 15:55:34 2017 +0200

    Fix macOS build target in Xcode project.
    
    - Add missing files for desktop platforms in generate-darwin-source-and-headers.py, and in the Xcode project.
    - Add a static library target for macOS.
    - Fix "implicit conversion loses integer precision" warnings for iOS mad macOS targets.

commit 9c12209d2eac40238eefb4255994277918e7eff1
Author: Francis Ricci <francisjricci@gmail.com>
Date:   Thu Aug 3 10:46:28 2017 -0700

    Fix misaligned memory access in ffi_call_int

commit b23091069adce469dc38fbcc9fd8ac9085d3c9d7
Merge: c0cc9f1 9c6cb58
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Jul 12 12:43:06 2017 -0600

    Merge pull request #309 from rurban/oldgcc
    
    __attribute__ deprecated (msg) only since gcc 4.5

commit 9c6cb58812aa92a4c56a94b2b51bd85b2aebc2a1
Author: Reini Urban <rurban@cpan.org>
Date:   Sun Jun 18 18:26:05 2017 +0200

    __attribute__ deprecated (msg) only since gcc 4.5
    
    make it work with older compilers

commit 50e408ce5d9eb6f14bf82bb3894d0e74e5f19c2c
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun May 21 20:44:10 2017 +0800

    add i?86-*-ios -- the iOS simulator (32bit)

commit a08cabe6746343564418383b879d40d3b998c399
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Sun May 21 20:25:16 2017 +0800

    add x86_64-*-ios -- the iOS simulator

commit 0ff9419f2e75652426469e256cb7d0748064ad58
Author: Tony Reix <tony.reix@bull.net>
Date:   Wed May 17 14:57:53 2017 +0200

    This patch enables FFI Go Closure on AIX.

commit 19ab448d84223d2992048bce4e926eac2c44f606
Author: Moritz Angermann <moritz.angermann@gmail.com>
Date:   Tue May 16 08:32:06 2017 +0800

    Support -ios triple
    
    Autoconf hasn’t had an update since 2014, and it doesn’t look like it will soon[1]
    This updates config.{guess,sub}
    
    It adds support for e.g. `-ios`, which allows to have targets like `aarch64-apple-ios`.
    
    It basically does exactly what the config.guess script says:
    > It is advised that you download the most up to date version of the config scripts from
    
    The configure.ac script has been updated to relax `*-apple-darwin*` to `*-apple-*`.
    Similarly the `.gitignore` and `autogen.sh` needed to be updated to respect the
    newer `config.{sub,guess}`
    
    —
    [1]: http://lists.gnu.org/archive/html/autoconf/2016-07/msg00017.html

commit c0cc9f1df9fd4c5e758470f05d0e48123f0638ae
Merge: b841ae7 bd72848
Author: Tom Tromey <tom@tromey.com>
Date:   Mon May 8 15:20:39 2017 -0600

    Merge pull request #302 from gpakosz/align-macros
    
    Prefix ALIGN macros with FFI_

commit bd72848c7af9302df50a7a11652c77166d17caa8
Author: Gregory Pakosz <gregory.pakosz@gmail.com>
Date:   Thu Apr 27 13:20:36 2017 +0200

    Prefix ALIGN macros with FFI_

commit 7d504f7a8e33f6da27941f5dc5d889fe60b8b9c8
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Thu Mar 30 13:32:58 2017 +0200

    update for xcode 8.3

commit 57d8ff044cd6320d8ebacacf06455569b4aac27d
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 15 01:43:11 2017 +0100

    Simplify iOS trampoline table allocation
    
    By using VM_FLAGS_OVERWRITE there is no need for speculatively
    allocating on a page we just deallocated. This approach eliminates the
    race-condition and gets rid of the retry logic.

commit 7f558a9ba4e74edf54a3e95e983e8a59ddb0cc7c
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Mon Jul 25 01:18:30 2016 +0200

    set ios deployment target to 7.0

commit e76fa94b6ef9a699ee9edeb85d1731d3bb7abd46
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Thu Jul 14 11:28:18 2016 +0200

    fix ltmain.sh in xcode builds

commit 22b2fd6f18eed7b32ea959f7f3e56ea09b9ac9bf
Author: ksjogo <jogo@kronberger-spiele.de>
Date:   Wed Jul 13 14:40:07 2016 +0200

    add valid architectures

commit 0040694505411785ec98e660fe81faad9630f515
Author: Johannes Goslar <johannes.goslar@kronberger-spiele.de>
Date:   Tue Jul 12 16:08:42 2016 +0200

    Update Xcodeproj
    
    Include all currently relevent files.
    Call autogen is build script.
    Fix compiler settings.
    Fix mach include.

commit b841ae70a05a5e11de1fca1b4551189db0895cf2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:42:09 2017 -0400

    remove stray quote

commit a94c999ba0d51ed8ec88685233f5b1ae38e894ea
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:36:07 2017 -0400

    Handle fastcall declaration differently for some Microsoft compilers

commit 69963d39ab7d7f201b4597ed7a24cf438e0a34bf
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:33:39 2017 -0400

    We don't support 32-bit builds with the Microsoft toolchain

commit 073bc9d50c1ce753735944e4228d9a401e964306
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 19 07:25:24 2017 -0400

    Enable appveyor ci support

commit a0b14eea2baf9f18c0d29bc5ce4495422381f917
Merge: fa5a0fe 1e0d107
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 17 09:20:40 2017 -0400

    Merge pull request #291 from ramon-garcia/visual-studio-build
    
    Build with Visual C++ (64 bits)

commit fa5a0fe2c6da906cc7c114c8002e5c7092c4dbee
Merge: 5b91bbd bfab429
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 07:50:07 2017 -0400

    Merge pull request #238 from KubaKaszycki/master
    
    Update README with a new port

commit 5b91bbd388213ec19044a392c291505e2c0674b9
Merge: d754c51 982b89c
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 00:40:58 2017 -0400

    Merge pull request #288 from yan12125/std-includedir
    
    Install public headers in the standard path

commit d754c510f1dd03dc8c2cd7b50bb2a1668715c5cd
Merge: ebe7f44 41185b5
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 00:39:07 2017 -0400

    Merge pull request #299 from matijaskala/patch-1
    
    detect other x32 hosts

commit ebe7f447abcfbf1a16dbfca26538fff03faf7c6b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 16 00:36:10 2017 -0400

    Remove osx testing.  gcc was symlinked to clang. dejagnu c++ tests fail with clang.

commit c9c2aa24611ec996f45a495f24d690688f3ffed6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 09:58:39 2017 -0400

    Revert previous two changes.  clang/MacOS problem can only be solved within dejagnu.

commit 5a8fca94059fbf14ac7352ce487c9250cdd67c63
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 09:52:39 2017 -0400

    Fix typo

commit 5b10a0198188d43fc07c271bc29ff1033e2ac9d3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 09:34:01 2017 -0400

    Work around dejagnu/clang problems

commit b6751258072fadadd487a6adf4962bf22b44746d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 15 08:54:52 2017 -0400

    Require sudo for installing packages

commit 41185b565fe17a8f107642f480849ef369ad0baa
Author: Matija Skala <mskala@gmx.com>
Date:   Wed Mar 15 12:50:41 2017 +0100

    detect other x32 hosts
    
    primarily x86_64-pc-linux-muslx32
    while at it, add x86_64-x32-pc-linux-{gnu,musl} as well

commit 6e2e041b6df6a3c3a5ca8a750dedbbd465e5ca97
Merge: dabbd14 d42ce7b
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Mar 14 19:37:45 2017 -0700

    Merge pull request #297 from frida/fix/error-path
    
    Fix error path so mutex is unlocked before returning

commit 5e4fcdccb3a841f2daaa5834f726eaeb42950511
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 15 01:43:11 2017 +0100

    Simplify iOS trampoline table allocation
    
    By using VM_FLAGS_OVERWRITE there is no need for speculatively
    allocating on a page we just deallocated. This approach eliminates the
    race-condition and gets rid of the retry logic.

commit d42ce7b95c6d5cba7d976cc0c8c85f7645fa6b8f
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Mar 15 01:23:40 2017 +0100

    Fix error path so mutex is unlocked before returning
    
    In the unusual case where ffi_trampoline_table_alloc() fails.

commit dabbd145665ffca6fa676eba551f12107cd81131
Merge: 60e4250 6caabd1
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 27 21:10:00 2017 -0700

    Merge pull request #295 from terrillmoore/patch-1
    
    Correct typos in libffi.texi

commit 6caabd198ec24d090d85d7eca01150b44003c76b
Author: Terry Moore <tmm@mcci.com>
Date:   Sun Feb 26 15:06:53 2017 -0500

    Correct typos in libffi.texi
    
    One "it's" should be "its", and one "is" should be "in".

commit 1e0d107b4b237edd11ca3209a9cf59786f752fe5
Author: Ramón García Fernández <ramon.garcia.f@gmail.com>
Date:   Sun Jan 8 20:12:59 2017 +0100

    Modify configure.host to detect compilation with Microsoft Visual C++ and use assembly with Intel syntax in that case

commit 982b89c01aca99c7bc229914fc1521f96930919b
Author: Yen Chi Hsuan <yan12125@gmail.com>
Date:   Sun Nov 13 19:17:19 2016 +0800

    Install public headers in the standard path

commit 60e4250a77eb3fde500bfd68ec40519fe34b21bd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:34:18 2016 -0400

    make executable

commit c3caf38895252b82febb76c6bb323c67a4e01929
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:21:18 2016 -0400

    Update travis to test linux 32/64 and osx with a mix of gcc and clang

commit c5b408ee78d097a495ea12467cf082f8008c8e17
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 4 09:17:46 2016 -0400

    xfail the unwindtest for osx as per issue #279

commit 256ce51c408766d23b2707cc79b97f673750b3b9
Merge: 2ded2a4 52a11f6
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Sep 1 13:54:51 2016 -0700

    Merge pull request #273 from wbx-github/master
    
    m68k: support ISA-A Coldfire CPUs

commit 2ded2a4f494165c93293afc14ab0be1243cf8c49
Merge: 408c9c7 e247b56
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Sep 1 13:30:45 2016 -0700

    Merge pull request #272 from yousong/mips64-soft-float
    
    Mips64 soft float

commit 408c9c7d5a4cb323c77499b1643858f4bfaf4ca7
Merge: 06d7c51 b545ff8
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Aug 23 11:32:17 2016 -0600

    Merge pull request #274 from dr-hannibal/ykolerov-unused
    
    ARC: Remove unused variable

commit b545ff81f58233284cd6fca97a470aa3218c23e6
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Tue Aug 23 20:23:37 2016 +0300

    ARC: Remove unused variable
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit 52a11f6d9152a56aa1fb6d04eb40fd76f4cce5ff
Author: Waldemar Brodkorb <wbx@uclibc-ng.org>
Date:   Sat Aug 20 00:52:19 2016 +0200

    m68k: support ISA-A Coldfire CPUs
    
    Fix compilation for m68k/coldfire CPUs like mcf5208.
    
    Signed-off-by: Thorsten Glaser <tg@mirbsd.de>
    Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>

commit e247b562ac85565dfac33e676e2915489af04183
Author: Yousong Zhou <yszhou4tech@gmail.com>
Date:   Mon Aug 15 17:34:37 2016 +0800

    doc: fix typo
    
    Name of last argument to ffi_get_struct_offsets is `offsets`, not `sizes`
    
    Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

commit 7a0d2c83bf2b0422e2d0ed297f847fc1eeb88bb3
Author: Yousong Zhou <yszhou4tech@gmail.com>
Date:   Mon Aug 15 15:00:13 2016 +0800

    mips: fix MIPS softfloat build issue
    
    The patch for o32.S is taken from OpenWrt packages repo 3a7a4bf "libffi:
    fix MIPS softfloat build issue with current binutils"
    
    Signed-off-by: Felix Fietkau <nbd@openwrt.org>
    Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>

commit 06d7c5190e910356d4212d2a79056df8b70fd27e
Merge: aa7ed78 301166b
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 10 15:06:16 2016 -0600

    Merge pull request #269 from frida/fix/aarch64-variadic-closures-on-ios
    
    aarch64: Fix handling of variadic closures on iOS

commit aa7ed78c0e0d3fc4daa6a86c35ecbb7c43b5d067
Merge: 1daa787 4da814b
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 10 15:03:37 2016 -0600

    Merge pull request #268 from frida/fix/aarch64-large-aggregates
    
    aarch64: Fix handling of aggregates larger than 16 bytes

commit 4da814b18a1bf1d2013d988e37485e568d6117d1
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 22:48:09 2016 +0200

    aarch64: Fix handling of aggregates larger than 16 bytes
    
    Instead of allocating stack space for a pointer we would allocate stack
    space for the actual aggregate size.

commit 1daa78799942c83c905f8d7c5439952e9ffec3bc
Merge: f03ba20 5e9ac7e
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Aug 10 14:31:09 2016 -0600

    Merge pull request #270 from frida/fix/aarch64-warnings
    
    Fix aarch64 warnings

commit ed8488345eaae41c161ab741b0c44299ee99dc6c
Author: s1341 <github@shmarya.net>
Date:   Wed Aug 10 14:57:22 2016 +0200

    arm: Fix cache flushing on QNX
    
    Use `msync()` directly as `__clear_cache()` is broken in the
    qnx650_gcc4.8.3 toolchain.

commit 5e9ac7e252dbb0b7025027c1b6e1a4f3ec48943f
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 15:22:19 2016 +0200

    aarch64: Fix warning about unused function on iOS

commit 4d1f11f6a9effce05ba51578b142827834d1f699
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 15:21:42 2016 +0200

    aarch64: Fix operand size warning reported by Clang

commit 301166b11e913f85d09f67af94264268811f23a9
Author: Ole André Vadla Ravnås <oleavr@gmail.com>
Date:   Wed Aug 10 15:59:56 2016 +0200

    aarch64: Fix handling of variadic closures on iOS

commit f03ba2032850545dc6869bb495170a8c6cbf849d
Merge: 40e4063 ef8be84
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Aug 2 10:23:25 2016 -0600

    Merge pull request #266 from dr-hannibal/arc-pthread
    
    Make testing easier outside of build directory and especially for ARC

commit ef8be84de5f9e611add396efe908b772eb1cae1d
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Fri Jul 29 21:01:38 2016 +0300

    Do not use fabsl() in float2.c test
    
    Some targets may support long double variables but in the same
    time may lack support of long double functions like fabsl().
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit f3201733d54bf26ac40c432f4305499dd3f20215
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Fri Jul 29 19:18:41 2016 +0300

    Fix output expectations in cls_dbls_struct.c test
    
    This test with invalid output expectations may fail on some targets
    (e.g. ARC processors).
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit f74ea2dc7994b4867f7ab45169e1b2422072cc92
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Thu Jul 28 20:57:09 2016 +0300

    Allow setting an arbitary value for blddirffi in testsuite
    
    It is useful when tests are executed not from build directory. So
    the path of the build directory may be passed through site.exp or
    runtest.
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit 31362d785ed1db52516dfe02ebe8b163c53d29d0
Author: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
Date:   Thu Jul 28 18:48:23 2016 +0300

    ARC: Link tests with pthread library
    
    Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>

commit 40e4063ab4449c644bc106298805fa8c6cfadbd4
Merge: c0829e6 cf4b2a5
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Jul 7 23:11:38 2016 -0700

    Merge pull request #261 from tromey/fix-260
    
    Don't dereference "ecif" before NULL check

commit cf4b2a50413ecb8931eb1a94437497694f189c47
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Jun 17 10:09:44 2016 +0100

    Don't dereference "ecif" before NULL check
    
    Fixes #260

commit c0829e62841100c308cc37ddd6537ca69e856de7
Merge: 96d9bf4 794a54d
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Jun 5 15:05:21 2016 -0700

    Merge pull request #259 from rth7680/master
    
    Mark win64.S with GNU-stack note

commit 794a54d4a603639adf1a79d5b5bc15da437457e2
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Jun 5 14:57:00 2016 -0700

    Mark win64.S with GNU-stack note

commit 96d9bf4b5517bc49c0129e8cfdee43098d3771a2
Merge: 02089a1 52fbd12
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Jun 3 23:04:56 2016 -0700

    Merge pull request #253 from iains/darwin-build
    
    Some Darwin build fixes

commit 52fbd12dca1bddf0b135a24e7136f10af79a06bd
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Thu May 26 09:00:00 2016 +0100

    [Darwin-ppc, build] Fixes for clang build.
    
    clang is experimental on powerpc-darwin, but the changes are appropriate to cctools as as well.
    
    Use the 'official' simplified cmpwi insn, rather than the implied one accepted by cctools.
    Do not re-use a set value.

commit 92810b4bc101fccead2234b7385d4fa5e7a3e56a
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Thu May 26 08:56:51 2016 +0100

    [Darwin-x86, build] Fix up label prefixes, remove .purgem
    
    Darwin uses a label prefix of _.
    cctools assembler will not accept .purgem as a directive.

commit 30b3440cfd378dc67111b1380f2654334d048659
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Thu May 26 08:55:04 2016 +0100

    [Darwin, configure] Allow configure to work for <arch>-*-darwin.
    
    The exec configury is appropriate for all current targets (including using older tools on them).

commit 02089a1b5cf3aa1535172c62add454a2e9375066
Merge: 5d0365c c884551
Author: Tom Tromey <tom@tromey.com>
Date:   Mon May 23 09:58:51 2016 -0600

    Merge pull request #237 from tschwinge/libffi_feature_test
    
    Simplify/fix libffi_feature_test

commit 5d0365c605c472f40d1195cf7ba04ae08e360cb7
Merge: 584a140 74b3f52
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu May 19 09:35:38 2016 -0700

    Merge pull request #251 from berkerpeksag/delete-test-define
    
    Remove unused FFI_CLOSURE_TEST

commit 74b3f5201432c37e40e24386fa193c838596cec8
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Thu May 19 18:05:36 2016 +0300

    Remove unused FFI_CLOSURE_TEST
    
    It was here since the first commit c6dddbd (warning: huge diff) and
    it wasn't defined by the configure script. It was probably used
    manually during development.

commit 584a140e7558dff6e4ed4009f39d11dd5e3db0ae
Merge: c617754 b3496de
Author: Tom Tromey <tom@tromey.com>
Date:   Thu May 19 06:36:38 2016 -0600

    Merge pull request #248 from berkerpeksag/patch-1
    
    Delete empty env in .travis.yml

commit b3496dedbbad6c1f4e5bf4cc100e76b86f3c801e
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Thu May 19 10:53:07 2016 +0300

    Delete empty env in .travis.yml

commit c61775497e7bdfc892d865c2eb15415d2da7493b
Merge: 9edaa69 33d9a31
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 18 11:10:33 2016 -0700

    Merge pull request #247 from rth7680/symver
    
    Add parent to symbol version LIBFFI_BASE_7.1

commit 33d9a31d34cfba63e1294978114be1bddd2de3fd
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 18 11:01:55 2016 -0700

    Add parent to symbol version LIBFFI_BASE_7.1

commit 9edaa695c54daaf58d62e84032d30d33b7484fa8
Merge: 0969a1c 8a0a4e2
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 18 10:56:19 2016 -0700

    Merge pull request #230 from rth7680/symver
    
    Use ELF symbol versioning

commit 0969a1c1b339f845202fa7507b70d193220ceb01
Merge: 571b1ca 4a677a4
Author: Tom Tromey <tom@tromey.com>
Date:   Wed May 18 10:09:28 2016 -0600

    Merge pull request #232 from berkerpeksag/signcompare
    
    Fix -Wsign-compare warnings in x86/ffi64.c

commit 571b1ca6277dbafc1f340a59ea1c5ee4ddb11c94
Merge: 069d2e4 1e82e1c
Author: Tom Tromey <tom@tromey.com>
Date:   Wed May 18 10:08:59 2016 -0600

    Merge pull request #233 from berkerpeksag/mremap
    
    Define _GNU_SOURCE on Linux for mremap()

commit 069d2e4e16c5570adec9249d642f2a2ae0ffaa1c
Merge: a44a5b8 1b4f5ee
Author: Tom Tromey <tom@tromey.com>
Date:   Wed May 18 10:07:31 2016 -0600

    Merge pull request #246 from berkerpeksag/update-github-links
    
    Update project URLs to use libffi/libffi

commit 1b4f5ee6a4989d7eda7766c5864908c389586c6f
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Wed May 18 11:12:58 2016 +0300

    Update project URLs to use libffi/libffi

commit 1e82e1cda43dacd8b6ab2d9ac4db33523d86f5dc
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Mon Mar 7 18:38:10 2016 +0200

    Define _GNU_SOURCE on Linux for mremap()
    
    This was committed to CPython's libffi copy in
    https://bugs.python.org/issue10309
    
    mremap() documentation says _GNU_SOURCE needs to
    be defined in order to use mremap(): see the
    synopsis section at http://linux.die.net/man/2/mremap
    
    Original commit: https://hg.python.org/cpython/rev/9986fff720a2
    
    Original patch was written by Hallvard B Furuseth.

commit 4a677a425c18eda4bc5357b2485da57f133f908d
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Sat Mar 5 09:58:38 2016 +0200

    Fix -Wsign-compare warnings in x86/ffi64.c
    
    This was originally reported on the Python tracker:
    
      httpa://bugs.python.org/issue23958
    
    The original patch was written by Steve R. Hastings.
    
    I've updated it to current master of libffi.

commit a44a5b863aaae98041e11aa3256907bf912ee4d6
Merge: 9443eae 2627fc9
Author: Tom Tromey <tom@tromey.com>
Date:   Tue May 17 17:07:27 2016 -0600

    Merge pull request #234 from berkerpeksag/disable-docs
    
    Add a note about the --disable-docs switch

commit 9443eaeda867cfdeae92b10bee3cc0506892a4c5
Merge: 14be9a1 e169ba2
Author: Tom Tromey <tom@tromey.com>
Date:   Tue May 17 17:04:50 2016 -0600

    Merge pull request #242 from somasis/master
    
    Fix usage on musl libc

commit 8a0a4e25ef99f4ec98761f2fc075c2e8409f171b
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 4 07:33:41 2016 -1000

    Update symbol versioning for ffi_get_struct_offsets
    
    Given that the original symbol versioning patch has shipped
    with gcc-6, it would be kind to keep that as a valid base ABI
    and make subsequent changes to version 7.1.

commit c02c3414440e816aa13a2fe8446484173d3edb0e
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Mar 3 13:51:44 2016 -0800

    Use ELF symbol versioning
    
    At the same time, we must bump the (major) ABI version.  This needed to be
    done anyway due to ABI breakage in the AArch64 port (see 12cf89ee and the
    corresponding GCC PR70024).

commit 14be9a1d0713deb97edb91fe9800afe971a001d5
Merge: 1cea273 b50eabf
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed May 4 06:45:05 2016 -1000

    Merge pull request #245 from rth7680/tromey-ffi-prep-cif-core-is-private
    
    A rebase of #219

commit b50eabf48927ccaf0184c6224992bbb0a125e969
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 22 16:00:51 2016 -0700

    minor comment cleanup
    
    This patch minor cleans up ffi.h.in comments in a minor way.  It fixes
    some typos and capitalizations, adds some periods, and reformats some
    comments to a more GNU-ish style.  It also fixes up some stale
    documentation.

commit 6c07077a61fd0dc5ac11759ea1b4345acf486f3c
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Feb 21 20:08:21 2016 -0700

    Change ffi.h.in so that braces match
    
    This is a tiny refactoring to make it so brace-matching works in
    Emacs.

commit 2fbc0369b89a7e6b089e6384b98dba904ec1cf8b
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Nov 19 16:38:35 2015 -0700

    move ffi_prep_cif_core to ffi_common.h

commit 1cea273758ad862bdc2862af864e4ef5b42f31ae
Merge: 48bfae1 6aafb56
Author: Tom Tromey <tom@tromey.com>
Date:   Tue May 3 08:23:51 2016 -0600

    Merge pull request #231 from berkerpeksag/simplfy-oserror
    
    Simplify error handling in mkdir_p()

commit 48bfae1f37551b7fc894e6a0ea3b98968d2b5c9f
Merge: 6d87110 d76975d
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon May 2 20:58:57 2016 -1000

    Merge pull request #236 from andreas-schwab/master
    
    Define FFI_SIZEOF_JAVA_RAW for aarch64 ILP32

commit 6d8711057bc3a3befa37eed6765231ea5d244078
Merge: 9de24a3 e5843a3
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun May 1 11:02:40 2016 -1000

    Merge pull request #241 from rth7680/fix-win64
    
    Fix win64 abi calling from unix64

commit e169ba2b83c780058fe626856cfdb5903a85cb97
Author: Kylie McClain <somasis@exherbo.org>
Date:   Fri Apr 29 21:04:07 2016 -0400

    Fix usage on musl libc
    
    A gcc compiled on musl does not define __gnu_linux__, it defines __linux__.
    Only on glibc does __gnu_linux__ get defined, but both define __linux__, so
    we should check for that instead.
    
    With this patch, libffi works perfectly, and passes its testsuite entirely
    on musl libc systems.

commit e5843a3a09976f9d8fa77671e9d6c188c890199d
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Apr 15 16:10:08 2016 -0700

    x86: Fix calling convention for ffi_closure_win64_inner
    
    Also enable testing for the cross-abi calls.

commit d06751979bf0e4c9caabf0bca531d74de8cb9152
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Mar 7 12:14:22 2016 -0500

    x86: Copy fix for clang .org from unix64.S
    
    Clang doesn't understand .org with symbolic operands.

commit bfab429ee479723cc65831a7e4327e2866036420
Author: Jakub Kaszycki <kaszycki@mail.com>
Date:   Fri Apr 1 21:42:41 2016 +0200

    Update README with a new port
    
    This is in fact not a NEW port. Apple Mac devices are generally x86-64 now, x86 rarely. If GCC exists for this CPU, it means that libffi has been built too.

commit c88455178151bea14b8561ab6830724c31af255e
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Thu Feb 25 20:10:18 2016 +0100

    Simplify/fix libffi_feature_test
    
    As detailed in
    <http://news.gmane.org/find-root.php?message_id=%3C87wppswqqt.fsf%40kepler.schwinge.homeip.net%3E>,
    the original code (originally added in commit
    f1301a54bb80e6ae23f7687c68f36875dae69134 as part of pull request #145) does not
    work (at least not for me, in the GCC environment).

commit d76975dbd2854beca7acbca946c4cbccf9bf7cee
Author: Andreas Schwab <schwab@suse.de>
Date:   Wed Mar 16 12:23:07 2016 +0100

    Define FFI_SIZEOF_JAVA_RAW for aarch64 ILP32
    
    Like x32, aarch64 ILP32 needs to define FFI_SIZEOF_JAVA_RAW.  This fixes
    the java interpreter.

commit 9de24a3ff31c7446de29c1adcd9276fd7ba93897
Merge: ee71806 38a4d72
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 14 13:54:53 2016 -0400

    Merge pull request #212 from tromey/struct-layout
    
    add ffi_get_struct_offsets

commit 2627fc98e86e906fd7c9bc16bf345b91ee26d2ba
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Mon Mar 7 18:43:03 2016 +0200

    Add a note about the --disable-docs switch
    
    Closes #204

commit 6aafb5654d6741927276efff1af72a5b3614da39
Author: Berker Peksag <berker.peksag@gmail.com>
Date:   Sat Mar 5 08:30:31 2016 +0200

    Simplify error handling in mkdir_p()

commit ee718066f763b65d1888f9cc7155d3a1880f80e9
Merge: f2f234a e59fb55
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 22 20:15:40 2016 -0500

    Merge pull request #227 from tromey/fix-documentation-build
    
    Fix documentation build

commit 38a4d72c95936d27cba1ac6e84e3094ffdfaa77c
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Nov 17 21:18:20 2015 -0700

    add ffi_get_struct_offsets

commit e59fb55e09fb8aa846c820a802a03fed408d05a6
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 22 15:51:27 2016 -0700

    remove and ignore texinfo.tex
    
    This file is provided by Automake

commit 6dd5fd5a643c50aff3303ba2add3b6cc7588df78
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Feb 22 15:34:39 2016 -0700

    fix documentation building
    
    An earlier patch added --disable-docs, but went too far, making it
    impossible to build the docs.
    
    It turns out that Automake seemingly has a bug preventing the
    conditional build of an info file.  So, this patch works around the
    bug by putting the info_TEXINFOS rule into a new doc/Makefile.am.
    
    Tested by building with and without --disable-docs and looking for the
    existence of doc/libffi.info.

commit f2f234aef203a5e836b83cb772f9473f7ea0d5ce
Merge: 49b95ed fa7a257
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:50:29 2016 -0500

    Merge pull request #190 from havardgraff/master
    
    Add configure-option to disable building docs

commit 49b95edafd712ce27e08b1bb4be2987f14c54ca3
Merge: 415723b 43fc5bc
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:49:40 2016 -0500

    Merge pull request #194 from amodra/master
    
    Correct powerpc sysv stack argument accounting

commit 415723b40ba76f4a9df9b709db1cde0c65162072
Merge: 7c27fcb 1f6b5a9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:49:19 2016 -0500

    Merge pull request #104 from joshtriplett/efi64
    
    Support the Windows/EFI calling convention on all x86-64 targets

commit 7c27fcbe09534d261b4098467a3ce258daec2807
Merge: 69143d0 e061243
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:45:00 2016 -0500

    Merge pull request #199 from Pan7/master
    
    Fix configuring msvc compiler

commit 69143d06c6276d09790a4e34f2eb6d37528c08c6
Merge: 755f1e6 505346e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:44:28 2016 -0500

    Merge pull request #197 from foxsen/mips_go_closure
    
    Mips go closure support

commit 755f1e642d97892cb54358d65e06b60d1d6b72a4
Merge: 183ee6a 4cdedc2
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:43:48 2016 -0500

    Merge pull request #193 from rth7680/fix-70
    
    Test case from issue #70

commit 183ee6a6729db8f3ee0b1532d7bd54a6ef305443
Merge: 0bb71b5 877ea9b
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:43:28 2016 -0500

    Merge pull request #206 from edolnx/master
    
    Add configure flag to disable multi-os-directory support

commit 0bb71b52f5a60643ad55f801f1c652855b0e5cc5
Merge: 296a283 8bec5ca
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:41:10 2016 -0500

    Merge pull request #211 from tromey/move-prep-types-out-of-ffi.h
    
    ffi_prep_types is internal-only

commit 296a283a46057a6a643f1f64534324af34b7ed19
Merge: e7c713a 4805bf9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:40:21 2016 -0500

    Merge pull request #213 from tromey/remove-FFI_TYPE
    
    remove FFI_TYPE typedef

commit e7c713a0b64c425b51f3d9437a8db7ca497e6c31
Merge: 79666ab f45e9e3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:40:03 2016 -0500

    Merge pull request #214 from tromey/document-enum-support
    
    document (lack of) enum handling in libffi

commit 79666abca87ac67d2d05b477a3ba71ec18b8af0c
Merge: 20c7c31 89b7605
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:38:40 2016 -0500

    Merge pull request #205 from filbranden/tool_opts
    
    Fix dejagnu test support for --tool_opts

commit 20c7c31ca04350670012b28756d4ebc9e7b67a68
Merge: 6ba2a49 9c14cbf
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 20 06:38:01 2016 -0500

    Merge pull request #225 from ehsan/safeseh
    
    Don't clobber safeseh for msvcc.sh -clang-cl in 32-bit mode

commit 89b760503ed017233c98531908dfe8d8affab65e
Author: Filipe Brandenburger <filbranden@google.com>
Date:   Mon Oct 19 15:33:23 2015 -0700

    Fix dejagnu test support for --tool_opts
    
    Right now it concatenates it with the existing options and then appends
    it to that list, fix it to simply append it as is, same as it is done
    with the other variables.
    
    Tested by running the following command which includes gcc options:
      $ make check RUNTESTFLAGS="--tool_opts '-Werror'"
    
    Without this patch, all the tests fail. With it, the test succeed.
    Inspecting the logs shows that -Werror was indeed used when compiling
    the test sources.

commit 9c14cbfc7ff49c2ceb9b65c548ddaced607f0785
Author: Ehsan Akhgari <ehsan@mozilla.com>
Date:   Thu Jan 28 16:57:18 2016 -0500

    Don't clobber safeseh for msvcc.sh -clang-cl in 32-bit mode
    
    The commit fb25cd0 went a bit too far and removed safeseh
    when -clang-cl was passed, but that's only needed in x86-64
    which is already handled by the -m64 flag.
    
    I discovered this when building Firefox x86 with clang-cl.

commit 6ba2a49e226b859ddde9a37c34973cf85380c525
Merge: 8005600 6a3a6ac
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 2 20:03:41 2016 -0500

    Merge pull request #222 from freakboy3742/t181
    
    Fixed #181 -- Corrected problems with ARMv7 build under iOS.

commit 8005600a920f43d89ace7ef3598057392da726e1
Merge: 70594f7 5e2b18a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 2 16:44:29 2016 -0500

    Merge pull request #224 from plicease/travis
    
    update apt-get in travis

commit 5e2b18a65d3f366b2fb02ee27321095c4b5f17ac
Author: Graham Ollis <plicease@cpan.org>
Date:   Sat Jan 2 07:56:05 2016 -0500

    update apt-get in travis

commit 6a3a6acd9fdbdac6f9f9294732b9627895b77715
Merge: bc4fc07 70594f7
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Mon Dec 21 00:37:37 2015 +0800

    Merge branch 'master' into t181

commit bc4fc07aa58df6d7fa90b57d305d58eef96a0416
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Mon Dec 21 00:37:06 2015 +0800

    Fixed #181 -- Corrected problems with ARMv7 build under iOS.
    
    Based on a patch from @fealebenpae, with input from @SolaWing and @rth7680,
    and testing from @superdump.

commit 70594f7f8d7410be47ba9a80a566175d937ab626
Merge: 88deacd 6affad7
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Dec 18 10:24:38 2015 -0500

    Merge pull request #221 from tromey/document-closure-ffi_arg
    
    Document closure ffi arg

commit 6affad79111c45982fd29637a46bc756abb128a3
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Dec 17 16:58:10 2015 -0700

    correctly document closure return promotion

commit 8a7cdeb0412f9ef8bbe0a7833d662dbec40b472f
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Dec 17 16:51:32 2015 -0700

    fix formatting of ffi_prep_closure_loc arguments

commit f45e9e35700d7c547ba33b02c4186e746dea204a
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Nov 19 15:21:14 2015 -0700

    document (lack of) enum handling in libffi

commit 4805bf9ccdc176687526e9e7fca0db763cef42fb
Author: Tom Tromey <tom@tromey.com>
Date:   Thu Nov 19 14:17:42 2015 -0700

    remove FFI_TYPE typedef

commit 8bec5ca26a9977e6c05d6bfa1bbbc7f6f99af4e7
Author: Tom Tromey <tom@tromey.com>
Date:   Wed Nov 11 21:34:43 2015 -0700

    ffi_prep_types is internal-only

commit 88deacdd4220b66805b6ad10abd61fa3640afb67
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 15 08:39:17 2015 -0500

    speling fix

commit 5973dca595f8595a40709f645e74b06990975db3
Merge: 2a988c4 473bcbc
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 15 08:36:48 2015 -0500

    Merge pull request #209 from tromey/documentation-updates
    
    documentation fixes

commit 2a988c4455d3926c59997b68f7510be63e10c841
Merge: e9de7e3 ff33ddd
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 15 08:33:46 2015 -0500

    Merge pull request #207 from tromey/deprecate-ffi-prep-closure
    
    mark ffi_prep_closure as deprecated

commit 473bcbcad32e9e320a7a5c111cefd0d8ad570245
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Nov 7 12:01:06 2015 -0700

    documentation fixes
    
    Fixes #78.  Documentation for #33 and #35, but no fix.

commit ff33ddd1abe72b6d02d2769c0379b06eb7dbb931
Author: Tom Tromey <tom@tromey.com>
Date:   Sat Nov 7 11:45:04 2015 -0700

    mark ffi_prep_closure as deprecated

commit 877ea9bf9ac2c98cb858c12f5a6aeeec13cf978f
Author: Carl Perry <caperry@edolnx.net>
Date:   Thu Oct 29 22:50:42 2015 -0500

    Add configure flag to disable multi-os-directory support
    
    In some environments, installing the library to GCC's
    multi-os-directory is not perferable. This patch adds a switch
    to configure "--disable-multi-os-directory" which will disable
    that check, typically falling back to ${libdir} unless
    cross-compiling.
    
    Original patch was written by Stewart Brodie, and was found at
    https://sourceware.org/ml/libffi-discuss/2013/msg00144.html
    
    I've just updated it to work with the current version.

commit 4cdedc279f96aefda24277184594c0ddd56d3402
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Jul 25 14:29:15 2015 -0700

    Tidy call.exp test collection
    
    Commit c952a92e20aa6013d8202d0b3fa1d87838c83054 moved all of
    the complex tests to libffi.complex, but failed to remove the
    anti-globbing from libffi.call.

commit 609db2fbe41a56c1a8cd5653d248f08b88ea803f
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Jul 25 12:42:04 2015 -0700

    Test case from Issue #70

commit e9de7e35f2339598b16cbb375f9992643ed81209
Merge: d19b6cc 0ebde2d
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 11 10:54:50 2015 -0400

    Merge pull request #202 from tromey/note-prep-cif-var-usage
    
    document that there must be ntotalargs types

commit d19b6cc78e956e7ffd48b39fd7c441c22e633ce2
Merge: 17ffc36 36f3fb9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 11 10:54:22 2015 -0400

    Merge pull request #201 from tromey/fix-texinfo-buglet
    
    Add missing "@" to @var{}

commit 0ebde2d24a3deb7b0cdf5cb1e625b55af2834fde
Author: Tom Tromey <tom@tromey.com>
Date:   Tue Oct 6 11:42:43 2015 -0600

    document that there must be ntotalargs types

commit 36f3fb91412a6f10bd2c6dde01f4d7afa1f2f2c0
Author: Tom Tromey <tom@tromey.com>
Date:   Mon Oct 5 10:20:05 2015 -0600

    Add missing "@" to @var{}

commit e061243958d63080956887e121d275533570f7cc
Author: Pan7 <panter@gmx.net>
Date:   Mon Sep 14 08:25:09 2015 +0200

    Fix configuring msvc compiler

commit 505346e18fe20eee7eb69a23a48f6951858c5267
Author: Zhang Fuxin <zhangfx@lemote.com>
Date:   Wed Aug 26 09:57:10 2015 +0800

    fix type error in unwind code

commit 5953c66bd7510b048b332b4e7450f3fb8d687f8b
Author: foxsen <2503799872@qq.com>
Date:   Thu Aug 20 20:28:13 2015 +0800

    add unwind infor for *go_closure;
    reorder the labels to make thing more clear

commit f0ecd5d40397d4616ba0bf3e2521da2663b5bd97
Author: Zhang Fuxin <zhangfx@lemote.com>
Date:   Tue Aug 11 12:47:36 2015 +0800

    fix O32 stack unwind code
    add missing 1: label

commit 6f0201c803a9a1f0f9b6fd226a42fb8daa223928
Author: foxsen <2503799872@qq.com>
Date:   Tue Aug 4 18:25:34 2015 +0800

    various fixes for go closure support. Now all n64 tests passed.

commit 697dd4e8a03625a9b1448aa696978d8dcc57d438
Author: foxsen <2503799872@qq.com>
Date:   Tue Aug 4 12:53:33 2015 +0800

    add support for go closure support on mips

commit 43fc5bca48715a522b34c1124589575063362a90
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Aug 3 23:34:05 2015 +0930

    Correct powerpc sysv stack argument accounting
    
    ppc32 starts using the stack for integer arg passing when we run out
    of integer arg passing registers.  Similarly, we start using the stack
    for floating point args when we run out of floating point registers.
    The decision on where an integer arg goes does not depend on number of
    floating point args, nor does the decision on where a floating point
    arg goes depend on number of integer args.  Alignment of stack args
    also simply depends on number of stack args.
    
    This patch untangles the horrible mess we had, with intarg_count being
    wrongly used to count both integer args and stack words.
    
            * src/powerpc/ffi_sysv.c (ffi_prep_cif_sysv_core): Count fprs,
            gprs, and stack words separately.
            (ffi_prep_args_SYSV): Similarly.

commit 1f6b5a91f417ac77d2fe9b0b3eb66293db132e2e
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 16:27:34 2015 -0700

    Support the WIN64/EFI64 calling convention on all X86_64 platforms
    
    Add a new calling convention FFI_EFI64, alias FFI_WIN64, on all X86_64
    platforms.  This allows libffi compiled on a 64-bit x86 platform to call
    EFI functions.
    
    Compile in ffiw64.c and win64.S on all X86_64 platforms.  When compiled
    for a platform other than X86_WIN64, ffiw64.c suffixes its functions
    with _efi64, to avoid conflict with the platform's actual
    implementations of those functions.

commit 6de51f3e04e496901ea1bd8f9b44f75c9f01b599
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 16:23:55 2015 -0700

    src/x86/ffiw64.c: Don't assign a "char *" to an "unsigned char *"
    
    Declare a local variable to match the type of the struct field assigned
    to it, rather than adding unsigned to the type.  Fixes a -Wpointer-sign
    warning.

commit eaa59755fcbb692a8cb763c7f9f24a350aadbd30
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 17:17:16 2015 -0700

    src/x86/win64.S: Handle name mangling and PIC
    
    Move the macros from unix64.S into a shared header asmnames.h and use
    them in win64.S too.

commit c8e82d9fbffd3eeaef0266a1aac64d7bd13ee9c3
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Jul 26 16:18:57 2015 -0700

    src/x86/win64.S: Support compiling on non-WIN64 platforms
    
    Non-WIN64 versions of the GNU assembler don't support the .seh_*
    directives for structured exception handling, so wrap them in a macro
    that compiles to nothing.
    
    Handle the registers used for the non-Windows x86-64 calling convention
    when on a non-Windows platform.  Distinguish between cases that should
    refer to the native argument registers (defined as arg0, arg1, arg2, and
    arg3) and cases that should always refer to the Windows argument
    registers.

commit fa7a257113e2cfc963a0be9dca5d7b4c73999dcc
Author: Havard Graff <havard.graff@gmail.com>
Date:   Tue May 12 10:45:13 2015 +0200

    Add configure-option to disable building docs

commit e3d2812ce43940aacae5bab2d0e965278cb1e7ea
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Sat Apr 25 19:03:03 2015 +0800

    Modified arm/sysv.S to remove directives not allowed by clang.

commit 17ffc3655a531c116e9eb9cc933e50bb1e5c47f8
Merge: 173757c a5b3eaa
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 29 21:38:26 2015 -0400

    Merge pull request #185 from freakboy3742/t184
    
    Fixed #184 -- Corrected source file references in Darwin source generator tool.

commit 173757ce973a2f12ad36ac6cda593581b225f9e3
Merge: f5ec627 dd9e4c8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 29 21:38:12 2015 -0400

    Merge pull request #186 from freakboy3742/gitignore
    
    Added generated source file to .gitignore.

commit dd9e4c8d46b65104a24a9858accd0936ca44b98f
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Fri Mar 13 08:03:13 2015 +0800

    Added generated source file to .gitignore.

commit a5b3eaa279a2e54721d44eeefdfd1962cf63caaf
Author: Russell Keith-Magee <russell@keith-magee.com>
Date:   Fri Mar 13 07:59:11 2015 +0800

    Fixed #184 -- Corrected file references in Darwin source generator tool.

commit f5ec6279a4698a8752093247a500cf76096ff157
Merge: 06747d3 95df379
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 4 13:58:04 2015 -0500

    Merge pull request #178 from rth7680/aa64-ilp32
    
    aarch64: Handle ILP32 ABI

commit 95df3791935d934d92b0c852af1e655285157b70
Author: Andrew Pinski <apinski@cavium.com>
Date:   Wed Feb 11 08:31:48 2015 -0800

    aarch64: Handle ILP32 ABI

commit 06747d318761884e70dfa433a9548219fd779d7d
Merge: db1b34b 6c53577
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 29 07:22:23 2015 -0500

    Merge pull request #176 from 0-wiz-0/master
    
    Handle NetBSD/powerpc the same as FreeBSD and OpenBSD.

commit 6c5357757f188577fffcd2890ef7a0f53e77de20
Author: Thomas Klausner <wiz@NetBSD.org>
Date:   Thu Jan 29 12:32:28 2015 +0100

    Handle NetBSD/powerpc the same as FreeBSD and OpenBSD.
    
    Signed-off-by: Thomas Klausner <wiz@NetBSD.org>

commit db1b34b7e1f5e473d17557e454a29933dfecd1af
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 28 18:08:06 2015 -0500

    Remove incomplete sentence

commit 56036a6b58acb9e854719e315a0738f16e354c35
Merge: 035715b 2104b2a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 28 18:03:57 2015 -0500

    Merge pull request #175 from rth7680/sparc
    
    sparc: Re-introduce hand-written unwind info

commit 035715b3330421806df36ec4ac7ccecc86458540
Merge: 31a6185 b0e9796
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 28 18:03:06 2015 -0500

    Merge pull request #174 from rth7680/fbsd
    
    configure: Run HAVE_AS_X86_PCREL for all X86 targets

commit 2104b2a4fc923b8d82647c3fbbd8a8ca20bb24c8
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Jan 26 12:43:57 2015 -0800

    sparc: Re-introduce hand-written unwind info
    
    Fixes the build with the Solaris assembler.

commit b0e9796344562ea8e1ef28e9b04db6be26ca29fb
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Jan 27 22:10:12 2015 -0800

    configure: Run HAVE_AS_X86_PCREL for all X86 targets

commit 31a618530737cc8f1666845f8e65a3c097f6d408
Merge: d6675c1 5363663
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 21 05:55:47 2015 -0500

    Merge pull request #170 from fealebenpae/aarch64-trampoline-table
    
    Support closures on ARM64 iOS

commit d6675c16cc2b5a0e32c4538e5a4f555c91e6bb56
Merge: a25a46a 3ac1610
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 21 05:53:21 2015 -0500

    Merge pull request #172 from rth7680/fixes
    
    x86: Fix cygwin32 build

commit 3ac1610aa33c887ea9b14935208943925714a33e
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Jan 19 20:48:40 2015 +0100

    x86: Fix cygwin32 build
    
    The section syntax is just that little bit different.

commit a25a46a7fe4f7ae27fbd6e08a2540678899914e9
Merge: 5cd411a 1ad0b17
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 16 17:32:07 2015 -0500

    Merge pull request #171 from rth7680/fixes
    
    Fixes from mainline gcc

commit 1ad0b17177526be86736e245fbcc21eadaf7cb36
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Jan 16 13:30:05 2015 -0800

    sparc: Also mark the return address in unwind info

commit d68c8aed19d459a9fef0847f316dd9473ef263ad
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Jan 16 11:40:33 2015 -0800

    sparc: Solaris fixes, part 2
    
    /bin/as seems to only understand single-digit labels
    /bin/as knows nothing about .rept/.endr

commit b740ab7cc955fc2888325e6387207f34400a6c45
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Fri Jan 16 11:32:23 2015 -0800

    sparc: Solaris fixes
    
    * /bin/as requires .type fn,#function instead of @function.
    * /bin/as doesn't support .macro/.endm.  I'm using preprocessor macros
      instead to implement E in src/sparc/v[89].S.

commit f1560b7bbeb57042a32dfde487c3d21bd9ef6a51
Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Date:   Fri Jan 16 11:31:37 2015 -0800

    x86: Solaris fixes
    
    * Solaris/x86 /bin/as doesn't support .org, so I've just disabled the
      uses in src/x86/{sysv, unix64}.S, as on Darwin.
    * Solaris/x86 needs to use EH_FRAME_FLAGS so manually and compiler
      generated .eh_frame sections match, otherwise libffi.so fails to link:
    * Solaris/x86 /bin/as has different COMDAT syntax; I've disabled it for
      the moment.

commit 536366349ced9d57c873d64e219ba30992a83c06
Author: Yavor Georgiev <fealebenpae@gmail.com>
Date:   Fri Jan 16 15:19:38 2015 +0200

    aarch64: implement the trampoline table workaround for ffi closures on Apple systems
    
    This is a direct copy/paste port of the ARM code, with changes because of Aarch64 pc-relative addressing restrictions.

commit 05e65b4e2064f24669e8cc1c1cece1cbb0577548
Author: Yavor Georgiev <fealebenpae@gmail.com>
Date:   Fri Jan 16 15:18:04 2015 +0200

    aarch64: rewrite range syntax into list to appease Clang
    
    Clang's assembler in Xcode 6 appears to choke when the operand of st4 is a range, but is happy with a list.

commit 5cd411ad5d62b1dadfd02f75f99121801c8be4c9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 13 15:44:03 2015 -0500

    New test case for old aarch64 bug

commit e46842b4149e19106a9eb6066ef022d8b6a7ad5d
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Jan 13 07:23:48 2015 -0800

    Remove extra brackets in configure.host
    
    This table is no longer in configure.ac, needing
    protection from m4.

commit f27c4e46734fa1342236b16161e6006a9d2557e9
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Jan 13 07:22:07 2015 -0800

    x86: Fix thinko in ffi_raw_call
    
    Missed structure initialization for raw path.
    Apparently there are no tests for this outside gcc.

commit c82cc159426d8d4402375fa1ae3f045b9cf82e16
Merge: 1c61e73 e1a5ddb
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:25:26 2015 -0500

    Merge pull request #166 from chevah/master
    
    Fix expr error in Solaris 10 when using gcc.

commit 1c61e73ad8e920d6bff337fac02de71f3a66bc38
Merge: dd0b59a 3fa5d70
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:23:30 2015 -0500

    Merge pull request #165 from rth7680/pcc
    
    Support PCC as producer and consumer

commit dd0b59a5cf63e0f9602c76fc89a4cb62593ff6f1
Merge: 9131039 b7f6d7a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:22:55 2015 -0500

    Merge pull request #164 from rth7680/darwin
    
    Fix build on darwin

commit 9131039c93b6ecd1c3946905a3b6dafb5dc4ee40
Merge: 4ca2262 7282d32
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:22:42 2015 -0500

    Merge pull request #160 from nobu/msvc-no-complex
    
    x86: MSVC does not support Complex type

commit 4ca2262ad61189276b2d95aab652a23c8db2a5b9
Merge: 58bf7d6 5f8881a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jan 10 09:21:37 2015 -0500

    Merge pull request #159 from nobu/fix-void-arith
    
    x86: Fix void pointer arithmetic

commit e1a5ddb3067f83563cb8a6b8ac4d0f58d4699262
Author: Mișu Moldovan <dumol@chevah.com>
Date:   Wed Jan 7 17:51:07 2015 +0200

    Fix expr error in Solaris 10 when using gcc.

commit 3fa5d70cbb18b39a5e44f1c7984dedf73446bf6c
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Jan 5 13:03:06 2015 -0800

    x86: Avoid fastcall when building with pcc
    
    Apparently, PCC doesn't support the fastcall calling convention.
    Nor does it issue a warning or error for the attribute that it
    does not understand.

commit a03d2310ed53bb8b3a4610af04015ef9df6ea36c
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 24 16:03:34 2014 -0800

    x86: Load structure return address into eax

commit b7f6d7aa9b0d7b19eec28a945251e09a4b65b275
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 10 13:37:36 2014 -0800

    x86: Reinstate hand-written unwind info for sysv.S

commit 6cedf81ca7cbad01b3fcc2c4475d860095bfb062
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 10 09:43:58 2014 -0800

    x86: Expand FFI_GO_CLOSURE
    
    If we're going to have to hand-write unwind info for darwin,
    these macros make the job harder.

commit ae842a515b6e2a486d73ce8f9dbe5fee6c3fd1ff
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Tue Nov 25 11:43:40 2014 +0100

    x86: More Darwin unwind fixups
    
    EHFrame{N} IIRC is a special cue to ld64 that it should treat the unwind
    in the object as "special/legacy" .. [these days everything is .cfi_xxxx
    (except, cctools-as, as you noted)] .. without that much confusion arises
    with ld64's atom-isation of the eh_frame section.
    
    xxxx.eh labels are not needed for darwin ld64 >= 85.2.1 (i.e. darwin9,
    xcode 3.1.4) to all intents and purposes, that's all that matters now,
    since I think that anyone trying to build on 10.4/darwin8/xcode2.5 would
    have to use a later ld64 (from odcctools) for other reasons.

commit 8fa3c9f24b5ef6da2f24a9f071984d033dd9e00c
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Nov 25 09:27:54 2014 +0100

    x86: Reinstate hand-written unwind info for unix64.S
    
    One more try to get default Darwin to work.

commit 5f35e0ffcc05a72ce0aacf228dc06d1262754660
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 16:26:50 2014 +0100

    x86: Avoid using gas local labels
    
    Which are unsupported by Darwin cctools as.
    Thankfully this doesn't uglify the source too much.

commit ed1ca2777c35fe2f2751de255df3e16f17bdbd8d
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 13:02:03 2014 +0100

    x86: Remove use of .cfi_escape
    
    The unwind info isn't 100% correct at all points during the epilogue,
    and not annotating is just as incorrect as the annotation.  This works
    better on systems that do not support DW_OP_call_frame_cfa.

commit 1b12593d7e595c03e5c06377feaeb8ad1b813681
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 12:55:43 2014 +0100

    x86: Honor alignment of arguments
    
    Darwin aligns long-double to 16, and thus all of the long double
    tests were failing due to not honoring that.  We ought to be able
    to devise a test case for GCC using __attribute__((aligned)) that
    would have failed too.

commit 042b8dafeeee82667e00660fb1edeab72fd9de47
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 11:24:02 2014 +0100

    x86: Use .balign not .align
    
    The Apple assembler defaults to power of two alignment, rather than
    byte alignment like everyone else.  Force byte alignment by using
    the proper directive.

commit 0172bc029cd943dce99f82b9d857c51e746574e5
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Nov 24 10:42:02 2014 +0100

    x86: Disable .org for Darwin

commit 9f112619c187e135132b765adeedef89ee354eb2
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Nov 22 20:02:43 2014 +0100

    x86: Best guess at update for Darwin

commit 7282d3289c6f6e2cc21e2c2b554c33af00ac3474
Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date:   Mon Dec 22 17:14:40 2014 +0900

    x86: MSVC does not support Complex type

commit 5f8881a5913a9554cbc2b5fed7057627b9bb9ece
Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
Date:   Mon Dec 22 17:08:08 2014 +0900

    x86: Fix void pointer arithmetic

commit 58bf7d65d8896f198624c591cc31e6e01a09cc31
Merge: 75b2199 7ba30b1
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Dec 20 10:20:40 2014 -0500

    Merge pull request #158 from rth7680/s390
    
    S390

commit 7ba30b19060dfefefeb91970a862e5b215606602
Author: Richard Henderson <rth@redhat.com>
Date:   Fri Dec 19 11:38:17 2014 -0500

    s390: Inline and tidy ffi_prep_args
    
    As per discussion with Ulrich Weigand, document the restrictions
    on the code within ffi_call_int as we simultaneously prepare
    stack frames for ffi_call_SYSV and the target function.

commit f69ec6f35db93163b7f33e43129d274995c8122d
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Dec 18 16:21:07 2014 -0500

    s390: Use pc-relative insns in 31-bit mode
    
    It's silly to stick to esa/390 features when the compiler won't.
    Detect when brasl and larl are used by the compiler and then use
    them in the assembly.

commit 2f530de168e0253ac06e044c832132c496e8788b
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Dec 18 16:01:59 2014 -0500

    s390: Reorganize assembly
    
    Avoid using ffi_prep_args as a callback; do all the work setting
    up the frame within ffi_call_int directly.  Save fewer registers
    in ffi_closure_SYSV.

commit 97512ded052678993ffcfa3aec0035cce1585138
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Dec 18 16:01:15 2014 -0500

    s390: Avoid aliasing warnings

commit c860ca9ac0fc7ee44124c5637dda751f55e4fa3f
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Dec 17 13:24:03 2014 -0500

    s390: Kill trailing whitespace

commit 02b7c89967307cea91714fb6e4e53048e1b5396e
Author: Dominik Vogt <vogt@linux.vnet.ibm.com>
Date:   Wed Dec 17 13:20:51 2014 -0500

    s390: Go closure support

commit 75b2199f264f42de814528ccf4bfd2ef427665b5
Merge: 8a3a272 2f65246
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Dec 12 10:13:56 2014 -0500

    Merge pull request #157 from rth7680/x86
    
    Two fixes for x86

commit 8a3a2723aaa615cb95ee1c798469d7a3b2d95d31
Merge: 9ae3bc8 542e004
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Dec 12 10:13:27 2014 -0500

    Merge pull request #156 from rth7680/sparc
    
    sparc: Define FFI_TARGET_SPECIFIC_VARIADIC for v9

commit 2f652469684d6d2b3e54705294c7e81cffe1341f
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Dec 11 14:16:00 2014 -0800

    x86: Handle void arguments as if an empty structure
    
    Since libffi currently doesn't allow empty structures, libgo
    currently maps them to ffi_type_void.  Given that we'll abort
    on this case, handle it gracefully.

commit 097ccfd6a6b94a3c3b5bfc269a7afd1dc4f7a051
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Dec 10 13:25:14 2014 -0800

    x86: Fix some unwind errors

commit 9ae3bc870ee07820b60d368f137ea3b5daca850e
Author: James Greenhalgh <james.greenhalgh@arm.com>
Date:   Sat Dec 6 23:58:41 2014 -0500

    Fix for https://github.com/atgreen/libffi/issues/141

commit a5a40960bb6ccb029d2d9d4e18d37f6e0dacb913
Merge: 9ca4370 590663b
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 19 21:13:50 2014 -0500

    Merge pull request #151 from amodra/master
    
    powerpc: go closures for linux

commit 590663b30b1f35b6136cf55d8870a2394ed78c21
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Nov 18 12:56:58 2014 +1030

    powerpc: Fix ffi_go_closure_linux64
    
    Unlike ffi_closure_LINUX64, this entry point is called normally,
    so we already have the TOC in R2 and the closure in R11.
    
            * powerpc/linux64_closure.S (ffi_closure_LINUX64): Remove a
            register dependency chain.
            (ffi_go_closure_linux64): Don't load r11 or r2.

commit fa1040c111b3e423bc9c7e78d9af89470c0fa2fb
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 10 09:42:31 2014 +1030

    GO closures for powerpc linux
    
    Plus .cfi async unwind info, rearrangement of ffi_call_linux64 and
    ffi_call_SYSV function params to avoid register copies, tweaks to
    trampolines.
    
            * src/powerpc/ffitarget.h (FFI_GO_CLOSURES): Define.
            * src/powerpc/ffi.c (ffi_call_int): New function with extra
            closure param, and args rearranged on ffi_call_linux64 and
            ffi_call_SYSV calls, extracted from ..
            (ffi_call): ..here.
            (ffi_call_go, ffi_prep_go_closure): New functions.
            * src/powerpc/ffi_linux64.c (ffi_prep_closure_loc_linux64): Make
            hidden.  Only flush insn part of ELFv2 trampoline.  Don't shuffle
            ELFv1 trampoline.
            (ffi_closure_helper_LINUX64): Replace closure param with cif, fun,
            user_data params.
            * src/powerpc/ffi_powerpc.h (ffi_go_closure_sysv): Declare.
            (ffi_go_closure_linux64): Declare.
            (ffi_call_SYSV, fi_call_LINUX64): Update.
            (ffi_prep_closure_loc_sysv, ffi_prep_closure_loc_linux64): Declare.
            (ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Update.
            * src/powerpc/ffi_sysv.c (ASM_NEEDS_REGISTERS): Increase to 6.
            (ffi_prep_closure_loc_sysv): Use bcl in trampoline, put data words
            last, flush just the insn part.
            (ffi_closure_helper_SYSV): Replace closure param with cif, fun and
            user_data params.
            * src/powerpc/linux64.S (ffi_call_LINUX64): Replace hand-written
            .eh_frame with .cfi directives.  Adjust for changed param order.
            Pass extra "closure" param to user function in static chain.  Add
            .cfi directives to describe epilogue.  Don't provide traceback
            table for ELFv2 or _CALL_LINUX.
            * src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Replace
            hand-written .eh_frame with .cfi directives.  Adjust for changed
            ffi_closure_helper_LINUX64 params.  Add .cfi directives to
            describe epilogue.  Don't provide traceback table for ELFv2 or
            _CALL_LINUX.
            (ffi_go_closure_linux64): New function.
            * src/powerpc/sysv.S: Remove redundant .globl ffi_prep_args_SYSV.
            (ffi_call_SYSV): Make hidden.  Replace hand-written .eh_frame with
            .cfi directives.  Adjust for changed params.  Pass extra "closure"
            param to user function in static chain.  Add .cfi directives to
            describe epilogue.
            * src/powerpc/ppc_closure.S (ffi_closure_SYSV): Make hidden.
            Replace hand-written .eh_frame with .cfi directives.  Adjust for
            changed ffi_closure_helper_SYSV params.  Add .cfi directives to
            describe epilogue.  Don't just use nops in the dead __NO_FPRS__
            epilogues.
            (ffi_go_closure_sysv): New function.

commit d3d06f4c94847402a08f0e4e2af2e4d726ed3180
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 10 13:50:05 2014 +1030

    Fix powerpc breakage from 6e8a4460
    
            * src/powerpc/ffitarget.h: #error on unexpected FFI_TYPE_LAST.
            (FFI_PPC_TYPE_LAST): Define.
            (FFI_TYPE_UINT128): Define in terms of FFI_PPC_TYPE_LAST.
            (FFI_SYSV_TYPE_SMALL_STRUCT, FFI_V2_TYPE_FLOAT_HOMOG): Likewise.
            (FFI_V2_TYPE_DOUBLE_HOMOG, FFI_V2_TYPE_SMALL_STRUCT): Likewise.

commit 9ca43706f9e59ee3a0b288884c90fd51d8926a9b
Merge: 5211c72 a9ed0c3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 19 11:32:08 2014 -0500

    Merge pull request #148 from gpakosz/dlmalloc-preprocessor-fix
    
    dlmalloc: change defined(i386) to defined(__i386__)

commit 542e004710e3f1d7c137bba305a16538cd6257d6
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Nov 18 05:07:00 2014 -0800

    sparc: Define FFI_TARGET_SPECIFIC_VARIADIC for v9
    
    This is a port of
    
      http://gcc.gnu.org/viewcvs?rev=207763&root=gcc&view=rev
    
    aka GCC PR libffi/60073, to the rewritten Sparc codebase.
    Supposedly, we should have seen failures with the existing
    libffi.call/cls_double_va.c testcase, but I hadn't.
    Perhaps a gcc newer than 4.6.3 is required to see that...

commit a9ed0c3a0428f5fd4ed2166fa95a608595e11a4d
Author: Gregory Pakosz <gpakosz@myscript.com>
Date:   Tue Nov 18 09:37:07 2014 +0100

    dlmalloc: change defined(i386) to defined(__i386__)
    
    When compiling with --std==c99, GCC and clang don't define i386 but __i386__

commit 5211c7207ec81dfdfa9acdcd86b49b9ff66b9d91
Merge: 3316b66 ccdd7bb
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 17 09:07:07 2014 -0500

    Merge pull request #147 from rth7680/go/alpha
    
    testsuite: Fix alpha static chain register name

commit ccdd7bb8566b2fd1da5c4b5c8eaa2db43a69e720
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Nov 16 12:12:23 2014 +0100

    testsuite: Fix alpha static chain register name

commit 3316b666e3074fe0eebff4fe0458979961b26651
Merge: b698638 dea49e2
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 15 07:31:41 2014 -0500

    Merge pull request #145 from rth7680/master
    
    Configure and testsuite cleanups, v2

commit b698638d7601de994410c5c1b2f5c2c648015b7b
Merge: a353d5b 771fabc
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 15 07:29:58 2014 -0500

    Merge pull request #144 from atrosinenko/testsuite-fp-comparison-fix
    
    Floating point number comparison fix for testsuite

commit a353d5b16cfbb60f1a42bdec74b0f272701f3ecb
Merge: 4aa702a e029c70
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 15 07:27:21 2014 -0500

    Merge pull request #143 from adamkaplan/patch-1
    
    Update i386 & armv7 minimum iOS version to 7.0

commit dea49e2020b2fc97ba9293200f316f7a7b3ca73b
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 13:05:14 2014 +0100

    x86: Fix typo in ffi_prep_go_closure
    
    Used the wrong register for THISCALL and FASTCALL.

commit c9f5b6648b0f052bbca8b50615284dd975e9ed29
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 13:04:33 2014 +0100

    testsuite: Add trivial tests for Go closures

commit c952a92e20aa6013d8202d0b3fa1d87838c83054
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 11:00:14 2014 +0100

    testsuite: Move complex tests to their own subdirectory
    
    It seems a bit silly to isolate them by globbing vs "*complex*"
    when we can just as easily put them in their own subdirectory.

commit f1301a54bb80e6ae23f7687c68f36875dae69134
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 14 10:50:29 2014 +0100

    testsuite: Use feature test rather than enumeration for complex

commit b5ade2fb5d9ba06519484677a5474e5dad48c2e3
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 09:06:10 2014 -0800

    testsuite: Detect clang
    
    Clang doesn't like the -Wno-psabi argument that we want to pass to GCC.
    Since clang is detected as GCC via __GNUC__, use ax_cv_c_compiler_vendor.

commit 5d69d57a053c5049df29242def492159e1fadbae
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 13:50:39 2014 +0100

    configure: Move target source selection into configure.host
    
    This eliminates the AM_CONDITIONAL ugliness, which eliminates
    just a bit of extra boilerplate for a new target.
    
    At the same time, properly categorize the EXTRA_DIST files
    into SOURCES and HEADERS, for the generation of ctags.

commit 771fabc6d5379e64e5ab9e5f1ca6eb5960617432
Author: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
Date:   Fri Nov 14 14:21:35 2014 +0300

    Take a float absolute value using fabs() instead of abs().
    
    Replace integer abs() by floating point fabs() in the approximate
    equality check for float values.

commit 9622ede2e24067a09380c63da8d5007ec1f03dc4
Author: Anatoly Trosinenko <anatoly.trosinenko@gmail.com>
Date:   Fri Nov 14 13:18:04 2014 +0300

    Fix floating point number comparisons in testsuite/libffi.call/float[123].c.
    
    Rewrite the checks for approximate equality of floating point return
    values to be in the form "fabs(a - b) < EPS" instead of just
    "a - b < EPS".

commit e029c70fa7da7a489157b2a2a88349aaffb051de
Author: Adam <adkapx@gmail.com>
Date:   Thu Nov 13 15:08:16 2014 -0500

    Update i386 & armv7 minimum iOS version to 7.0
    
    iOS 5 (and any below 7.1) is deprecated. Apple doesn't distribute the supporting libraries for this platform anymore as of Xcode 6, so it causes a linker error.

commit 57f52484573613e2def21171184f50bd72209cac
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 12:42:54 2014 +0100

    configure: Split out configure.host
    
    Split out the host case statement to a separate file, so that
    we don't have to regenerate configure.in for changes therein.

commit f8632815a6515a6709802ad23909585664ba1b9d
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 13 12:32:35 2014 +0100

    powerpc: Delete patch output
    
    Clearly added by mistake.

commit 4aa702a0e0ffc9b8a672af380103f607d339a822
Merge: 20562ac 8d5debc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 12 08:08:57 2014 -0500

    Merge branch 'rth7680-go-closure'

commit 8d5debc7904aa5c4f1fbf5d5b26450ec5a5b43c6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 12 08:04:51 2014 -0500

    Update in preparation for next release

commit 56735e05fed77a3920a8cac262666c9eb0e75b66
Merge: 20562ac 0e303c0
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 12 07:11:53 2014 -0500

    Merge branch 'go-closure' of https://github.com/rth7680/libffi into rth7680-go-closure
    
    Conflicts:
            src/aarch64/ffi.c

commit 20562ac0427c3578250d04c6e34fb0127d4551cf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 12 07:00:59 2014 -0500

    Fix for AArch64. Release as 3.2.1.

commit 0e303c065779afb42cfdb2ea20c0e1a557dc16f0
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 12 03:58:58 2014 -0800

    x86: Work around clang bugs
    
    http://llvm.org/bugs/show_bug.cgi?21500
    http://llvm.org/bugs/show_bug.cgi?21501
    http://llvm.org/bugs/show_bug.cgi?21515

commit 6eec410f1512d0584276db5f4b83711330e830d7
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Oct 26 15:29:04 2014 -0700

    sparc: Re-add abi compliant structure support
    
    The original code, removed in the "rewrite" patch, was incorrect for
    large structures, and required dynamic allocation of a trampoline on
    every ffi_call.
    
    Instead, allocate a 4k entry table of all possible structure returns.
    The table is 80k, but is read-only and dynamically paged, which ought
    to be better than allocating the trampoline.
    
    This is difficult to test with gcc.  One can only use -O0 at present.
    See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63668.

commit 92022496ef7a9439f48a2ef11e460c300ac863d7
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Oct 26 14:48:28 2014 -0700

    sparc: Add support for Go closures

commit ad89c2d9e93d5a713ae4113567b4ca6c4fbbf17c
Author: Richard Henderson <rth@twiddle.net>
Date:   Sun Oct 26 13:16:03 2014 -0700

    sparc: Add support for complex types

commit 20da5b41324de524ea3ee1f84f402828b7c332dc
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Oct 25 16:24:41 2014 -0700

    sparc: Handle more cases of structure return directly

commit 0686c2e71c8e094cf003f199e3f578bcdede43ba
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Oct 25 14:52:45 2014 -0700

    sparc: Preprocess float point struct return
    
    We can eliminate recursion and speed structure return
    by flattening a nested structure tree into a bitmask.

commit 2b27890ba77db6a23d37fc70897109e4b2803c2d
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 24 16:10:48 2014 -0700

    sparc: Rewrite everything
    
    It's impossible to call between v8 and v9 ABIs, because of the stack bias
    in the v9 ABI.  So let's not pretend it's just not implemented yet.  Split
    the v9 code out to a separate file.
    
    The register windows prevent ffi_call from setting up the entire stack
    frame the assembly, but we needn't make an indirect call back to prep_args.

commit 5d7b54450582f31d0d5d3ecca7f330b70446f195
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 24 11:45:53 2014 -0700

    sparc: Tidy up symbols
    
    Assembly to use local labels, .type annotation, hidden annotation.
    I do retain the _prefix for the symbols, but given that it wasn't
    done consistently across all symbols, I doubt it's actually needed.

commit fd4f7cc0cabae66a91e40f8645791740b9416bc1
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 24 11:11:53 2014 -0700

    sparc: Eliminate long double ifdefs

commit ab83cbb90b280195e636976098d3674f5ffc1d0a
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Oct 29 14:38:42 2014 -0400

    arm: Add support for Go closures

commit 6fa617dabc3d99e19d47ac9bc4127c56e3163008
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 21 11:27:11 2014 -0400

    arm: Add argument space for the hidden struct return pointer
    
    This should have been failing all along, but it's only
    exposed by the complex_int test case.

commit a529bec27b64ab846ab2643ecbeb22e01f35c7dc
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 21 11:26:59 2014 -0400

    arm: Add support for complex types

commit 5e88ebe62717b8e1e2f8d96c10f78a7134caa765
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Oct 20 15:10:43 2014 -0400

    arm: Remove internal FFI_TYPE constants
    
    These have been replaced by the contents of internal.h.

commit a4b785ea695e929b91d64e1e8b514411ae8bafe8
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 02:07:32 2014 -0400

    arm: Rewrite ffi_closure
    
    Move the push of the argument registers into ffi_closure_SYSV,
    reducing the size of the trampoline.

commit e7f15f60e86ad8931b2c4a516945d0b76b4bda20
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 01:27:16 2014 -0400

    arm: Rewrite ffi_call
    
    Use the trick to allocate the stack frame for ffi_call_SYSV
    within ffi_call itself.

commit a74a3aaddbcc730d9aa0a4787f136c9cc19b82b3
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 01:21:22 2014 -0400

    arm: Rewrite vfp_type_p
    
    Do not modify the ffi_type.  Rearrange the tests so that we
    quickly eliminate structures that cannot match.  Return an
    encoded value of element count and base type.

commit 0d39b4bb692b1a8e4f3354badcd9e123f8276bd4
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 01:02:52 2014 -0400

    arm: Deref ffi_put_arg arguments

commit 57b24fb3f5471262ce57e1a912774d6e7de5ada7
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 00:53:21 2014 -0400

    arm: Deref ffi_align argument

commit c129bea82a25c9b0f3af3bf48c35c55257092f87
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Oct 15 17:28:53 2014 -0400

    arm: Reindent arm/ffi.c

commit 9761b7bb70b4c47dc11dc74830964a0b3b3176d3
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 21:26:52 2014 -0700

    alpha: Add support for Go closures

commit f41bec3b576aa5ff8915b1188446c2dc086dfe64
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 20:46:48 2014 -0700

    alpha: Add support for complex types

commit 5f917371afcb4d3363fd33b547844c47264f6d4e
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 13:47:26 2014 -0700

    alpha: Clean up conversion of float values
    
    Don't use "real" conversion to double, lest we raise
    exceptions when passing signalling nans.

commit 32a26b75ba92665fa093b539318e83d916e3effb
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 12:33:53 2014 -0700

    alpha: Reorganize cif flags
    
    Unties the backend from changes to FFI_TYPE_* constants, and allows
    compilation to succeed after the addition of FFI_TYPE_COMPLEX.
    
    Delete the hand-written unwind info.

commit c6352b664c31835b9527d747f8a29b4754cabb0e
Author: Richard Henderson <rth@redhat.com>
Date:   Thu Oct 23 00:26:14 2014 -0400

    aarch64: Add support for Go closures

commit 0e41c73b092064e986d484270a13046479d6bda3
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 23:48:12 2014 -0400

    aarch64: Move x8 out of call_context
    
    Reduces stack size.  It was only used by the closure, and there
    are available argument registers.

commit a992f8789b5202ca180e67b16b47ee834160665c
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 22:58:09 2014 -0400

    aarch64: Add support for complex types

commit 658b2b56001e293848ea22b70068bd7f8daa7205
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 22:36:07 2014 -0400

    aarch64: Remove aarch64_flags
    
    This field was useless from the start, since the normal flags
    field is available for backend use.

commit 4a3cbcaa4f1d3834e0b74c9a841c3f51c5e0454c
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 22:32:13 2014 -0400

    aarch64: Unify scalar fp and hfa handling
    
    Since an HFA of a single element is exactly the same as scalar,
    this tidies things up a bit.

commit 12cf89ee04dc01650f71bc38ce414c953c83199a
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 21:53:30 2014 -0400

    aarch64: Move return value handling into ffi_closure_SYSV
    
    As with the change to ffi_call_SYSV, this avoids copying data
    into a temporary buffer.

commit 4fe1aea1211aaf228c2db867b8ac6f1620de72d4
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 17:06:19 2014 -0400

    aarch64: Move return value handling into ffi_call_SYSV
    
    This lets us pass return data directly to the caller of ffi_call
    in most cases, rather than storing it into temporary storage first.

commit 325471ea6a7bf954943485458a1bd391635dfaa8
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 13:58:59 2014 -0400

    aarch64: Merge prep_args with ffi_call
    
    Use the trick to allocate the stack frame for ffi_call_SYSV
    within ffi_call itself.

commit 8c8161cb623585d5d0c783b9d494b9b74ada6ced
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 12:52:07 2014 -0400

    aarch64: Tidy up abi manipulation
    
    Avoid false abstraction, like get_x_addr.  Avoid recomputing data
    about the type being manipulated.  Use NEON insns for HFA manipulation.
    
    Note that some of the inline assembly will go away in a subsequent patch.

commit b55e03665ddf2423df9baee0d3172892ba781c26
Author: Richard Henderson <rth@redhat.com>
Date:   Wed Oct 22 12:33:59 2014 -0400

    aarch64: Treat void return as not passed in registers
    
    This lets us do less post-processing when there's no return value.

commit 2e32f9bf6ffa6782b70fafe96bdf21c5aa44f534
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 22:49:05 2014 -0400

    aarch64: Use correct return registers
    
    There are fewer return registers than argument registers.

commit 95a04af134431ccc8230aca1641541a5e8fcbdc9
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 22:41:07 2014 -0400

    aarch64: Reduce the size of register_context
    
    We don't need to store 32 general and vector registers.
    Only 8 of each are used for parameter passing.

commit 77c4cddca6aeb6e545e21f235e29323e05f5a3a3
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:30:40 2014 -0400

    aarch64: Simplify AARCH64_STACK_ALIGN
    
    The iOS abi doesn't require padding between arguments, but
    that's not what AARCH64_STACK_ALIGN meant.  The hardware will
    in fact trap if the SP register is not 16 byte aligned.

commit b5f147d84761dc673ffe01d6af82bcde4ea47928
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:27:57 2014 -0400

    aarch64: Always distinguish LONGDOUBLE
    
    Avoid if-deffery by forcing FFI_TYPE_LONGDOUBLE different
    from FFI_TYPE_DOUBLE.  This will simply be unused on hosts
    that define them identically.

commit 38b54b9c180af13a3371e70a151a1a97e105b03f
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:17:39 2014 -0400

    aarch64: Improve is_hfa
    
    The set of functions get_homogeneous_type, element_count, and is_hfa
    are all intertwined and recompute data.  Return a compound quantity
    from is_hfa that contains all the data and avoids the recomputation.

commit 18b74ce54afab45fcf2a7d4eb86bb2ce9db8cec8
Author: Richard Henderson <rth@redhat.com>
Date:   Tue Oct 21 13:00:34 2014 -0400

    aarch64: Fix non-apple compilation

commit 2650f47fe8388f3281ec00e2d1e3bc777c1d3544
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Nov 6 10:57:04 2014 -0800

    x86: Use win32 name mangling for fastcall functions

commit f8c64e2486c956109bf5255a0c0a85f24cc86c72
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 17:04:29 2014 +0100

    x86: Add support for Go closures

commit 198f469e91076f84ab6ac38055ad12a5490101cd
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 16:34:41 2014 +0100

    x86: Add support for Complex

commit b21ec1ce783f09335c0e6c6f96ccc7e89da5a1b4
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 10:15:25 2014 +0100

    x86: Rewrite closures
    
    Move everything into sysv.S, removing win32.S and freebsd.S.
    Handle all abis with a single ffi_closure_inner function.
    Move complexity of the raw THISCALL trampoline into assembly
    instead of the trampoline itself.
    Only push the context for the REGISTER abi; let the rest
    receive it in a register.

commit b9ac94f3af9b1ca1853850911b7d3bc058296c71
Author: Richard Henderson <rth@twiddle.net>
Date:   Sat Nov 1 15:10:34 2014 -0700

    x86: Rewrite ffi_call
    
    Decouple the assembly from FFI_TYPE_*.  Merge prep_args with ffi_call,
    passing the frame and the stack to the assembly.
    
    Note that this patch isn't really standalone, as this breaks closures.

commit 159d3788eb52b89ed6bc5dd6ebb85c02cd150232
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 31 12:07:02 2014 -0700

    x86: Convert to gas generated unwind info

commit e7b0056d60f29675072454a575eed98053fc63d6
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 30 13:57:39 2014 -0700

    x86: Force FFI_TYPE_LONGDOUBLE different from FFI_TYPE_DOUBLE
    
    There are few abis that set double = long double.  Eliminate the
    conditional compilation and let this code simply be unused there.

commit 4b2fad8fd583f1d9c36db0044c4d46316207aa49
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 30 12:41:31 2014 -0700

    x86: Remove some conditional compilation
    
    Removal of ifdefs made possible to due to ffi_abi unification.

commit ef76205647bca77796882d31f6ab5e889f461f07
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 30 12:13:31 2014 -0700

    x86: Tidy ffi_abi
    
    The x86_64 unix port only handles one ABI; don't define all of the
    other symbols.  The UNIX64 symbol retains the same value.
    
    The i386 ports ought to have the same symbols, even if we can't yet
    unify the values without incrementing the libffi soname.

commit 7cf841324f3d15c46833e0f2ddf8a98c4b24711e
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Nov 7 06:56:55 2014 -0800

    testsuite: Add two dg-do run markers
    
    Caught by clang warning about unused -L parameter.

commit fc501750f41e2ee7f4268f490f590ce97a25a818
Author: Richard Henderson <rth@twiddle.net>
Date:   Wed Nov 5 16:33:44 2014 +0100

    testsuite: Fix return_complex2 vs excessive precision
    
    Use the previously computed rc2 to validate, rather than
    recomputing a floating point result with excess precision.

commit 610c90bf7131de70318dc981a529a63ae36981b8
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 28 11:21:50 2014 -0700

    x86_64: Add support for complex types

commit 32c56831636a489a1c5084e42ffbd935902b1033
Author: Richard Henderson <rth@twiddle.net>
Date:   Tue Oct 28 11:17:35 2014 -0700

    x86_64: Decouple return types from FFI_TYPE constants
    
    We can better support structure returns, and as prep for
    complex types.

commit 2e9dc1655600eb8928ebab13fa246187b6205109
Author: Richard Henderson <rth@twiddle.net>
Date:   Mon Oct 27 13:41:39 2014 -0700

    x86_64: Fixups for x32

commit ebd82769de5fc909ec9678aafca674ece394d173
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 23 23:57:06 2014 -0700

    win64: Remove support from ffi.c

commit 99db4d42acc7ee6d2ad206848be38083d7b5e094
Author: Richard Henderson <rth@twiddle.net>
Date:   Thu Oct 23 14:12:18 2014 -0700

    win64: Rewrite
    
    It's way too different from the 32-bit ABIs with which it is
    currently associated. As seen from all of the existing XFAILs.

commit 6b62fb4a26d7363548a92f1a156562cfa648726e
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 11:11:58 2014 -0700

    x86-64: Support go closures
    
    Dumps all of the hand-coded unwind info for gas generated.  Move jump
    table data into .rodata.  Adjust ffi_call_unix64 to load the static
    chain.  Split out sse portions of ffi_closure_unix64 to
    ffi_closure_unix64_sse rather than test cif->flags at runtime.

commit 89bbde8b4e802625bdbf830ea14e938beea79835
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 10:55:11 2014 -0700

    Add ffi_cfi.h
    
    Have one copy of the HAVE_AS_CFI_PSEUDO_OP code
    to share between all backends.

commit e951d64c085267a30036907d02f94a70dee4c9d9
Author: Richard Henderson <rth@twiddle.net>
Date:   Fri Oct 17 10:12:25 2014 -0700

    Add entry points for interacting with Go
    
    A "ffi_go_closure" is intended to be compatible with the
    function descriptors used by Go, and ffi_call_go sets up
    the static chain parameter for calling a Go function.
    
    The entry points are disabled when a backend has not been
    updated, much like we do for "normal" closures.

commit a0bdc5250cd36f1d2578358e33299fd2408091ac
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 11 09:43:01 2014 -0500

    Fix typo

commit 67c0c0705318d2e567fd48e680d63dca3619a235
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 11 07:30:49 2014 -0500

    Final 3.2 changes

commit ee826b933bbdeb68ee81876ffb508c3908eed371
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 11 07:29:26 2014 -0500

    Final 3.2 changes

commit c81a705d53be97899d314953987936213244b1ba
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 4 13:29:58 2014 -0500

    Mention OpenRISC

commit 6a17ad540d7ddb7a812687f4380bd0ef2d2865bb
Merge: 990eb9d 0f316ab
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 28 00:54:00 2014 -0400

    Merge pull request #134 from s-macke/openrisc
    
    Add OpenRISC support

commit 990eb9d4c244324771a7d878a168bb8eba1850c0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Sep 28 00:50:29 2014 -0400

    Only run the complex type tests on supported platforms.

commit 0f316ab7c11b8315a838a6ae4645d36ff2c46f4c
Author: Sebastian Macke <sebastian@macke.de>
Date:   Sat Sep 27 00:19:15 2014 +0000

    Add OpenRISC support
    
    This patch adds support for the OpenRISC architecture.
    (http://opencores.org/or1k/Main_Page)
    
    This patch has been tested under Linux with QEMU-user emulation support.
    - 32 Bit
    - big endian
    - delayed instructions
    This is the only available configuration under Linux.
    
    The description of the ABI can be found on the official website.
    
    Is passes the testsuite except of the unwindtest_ffi_call.cc
    testcase, which seems to be a problem of gcc and not libffi.
    Some testcases of the gcc testsuite still fail.
    
    Signed-off-by: Sebastian Macke <sebastian@macke.de>

commit 6695983d2f0857caab220862de12f3f94a55bcf6
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:44:37 2014 -0400

    Add complex type support. Mostly broken right now

commit fbbf48fbdf9b1491af0aefc00523a1b5d8bb9349
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:43:51 2014 -0400

    Compile tests with -Wno-psabi when using GCC

commit ae8d2554c5f192be54dadc9f99a1449b4df1b222
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:08:37 2014 -0400

    Update version to 3.2

commit b2ca59d39d2192021316561ea9dda3d35d8d35d9
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 07:08:05 2014 -0400

    More README updates for 3.2

commit f920a01ad8eafc79daaf331499ef9a97696c46a7
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Sep 20 06:54:06 2014 -0400

    Update release notes.

commit bfcbf329c5e4bebdb32134d4e53260e17e4e66cc
Author: Bernd Edlinger <bernd.edlinger@hotmail.de>
Date:   Sat Sep 20 06:51:45 2014 -0400

    2014-05-11  Bernd Edlinger  <bernd.edlinger@hotmail.de>
    
            Fix current cygwin-64 build problems.
            * src/java_raw_api.c: Remove if !defined(FFI_NO_RAW_API).
            * src/x86/ffi.c: Add if defined(__CYGWIN__).
            * src/x86/win64.S (ffi_closure_win64, ffi_call_win64): Added
            handling for FFI_TYPE_UINT64, FFI_TYPE_POINTER and FFI_TYPE_INT.
            Added SEH information.  Fixed formatting.

commit 32cb2ce81db9457c6bd43a2587d7fa23a2edb9b1
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Sat Sep 20 06:39:55 2014 -0400

    2014-09-10  Jakub Jelinek  <jakub@redhat.com>
    
            * src/powerpc/linux64.S: Emit .note.GNU-stack even when
            POWERPC64 is not defined.
            * src/powerpc/linux64_closure.S: Likewise.  Also test _CALL_ELF == 2.

commit aaf3101ba81af8f488502881648e3f687721671e
Author: Matthias Klose <doko@ubuntu.com>
Date:   Sat Sep 20 06:37:04 2014 -0400

    Fix -Werror=declaration-after-statement problem

commit 6e8a4460833594d5af1b4539178025da0077df19
Author: Dominik Vogt <vogt@linux.vnet.ibm.com>
Date:   Sat Sep 20 06:21:19 2014 -0400

    2014-07-22  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    
            * src/types.c (FFI_TYPEDEF, FFI_NONCONST_TYPEDEF): Merge the macros by
            adding another argument that controls whether the result is const or not
            (FFI_LDBL_CONST): Temporary macro to reduce ifdef confusion
            * src/prep_cif.c (ffi_prep_cif_core): Replace list of systems with new
            macro FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION
            * src/pa/ffitarget.h (FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION):
            Define.
            * src/s390/ffitarget.h (FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION):
            Define.
            * src/x86/ffitarget.h (FFI_TARGET_SPECIFIC_STACK_SPACE_ALLOCATION):
            Define.
    
    2014-07-22  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    
            * doc/libffi.texi (Primitive Types): Document ffi_type_complex_float,
            ffi_type_complex_double and ffi_type_complex_longdouble
            (Complex Types): New subsection.
            (Complex Type Example): Ditto.
            * testsuite/libffi.call/cls_align_complex_double.c: New
            FFI_TYPE_COMPLEX test.
            * testsuite/libffi.call/cls_align_complex_float.c: Ditto.
            * testsuite/libffi.call/cls_align_complex_longdouble.c: Ditto.
            * testsuite/libffi.call/cls_complex_double.c: Ditto.
            * testsuite/libffi.call/cls_complex_float.c: Ditto.
            * testsuite/libffi.call/cls_complex_longdouble.c: Ditto.
            * testsuite/libffi.call/cls_complex_struct_double.c: Ditto.
            * testsuite/libffi.call/cls_complex_struct_float.c: Ditto.
            * testsuite/libffi.call/cls_complex_struct_longdouble.c: Ditto.
            * testsuite/libffi.call/cls_complex_va_double.c: Ditto.
            * testsuite/libffi.call/cls_complex_va_float.c: Ditto.
            * testsuite/libffi.call/cls_complex_va_longdouble.c: Ditto.
            * testsuite/libffi.call/complex_double.c: Ditto.
            * testsuite/libffi.call/complex_defs_double.c: Ditto.
            * testsuite/libffi.call/complex_float.c: Ditto.
            * testsuite/libffi.call/complex_defs_float.c: Ditto.
            * testsuite/libffi.call/complex_longdouble.c: Ditto.
            * testsuite/libffi.call/complex_defs_longdouble.c: Ditto.
            * testsuite/libffi.call/complex_int.c: Ditto.
            * testsuite/libffi.call/many_complex_double.c: Ditto.
            * testsuite/libffi.call/many_complex_float.c: Ditto.
            * testsuite/libffi.call/many_complex_longdouble.c: Ditto.
            * testsuite/libffi.call/return_complex1_double.c: Ditto.
            * testsuite/libffi.call/return_complex1_float.c: Ditto.
            * testsuite/libffi.call/return_complex1_longdouble.c: Ditto.
            * testsuite/libffi.call/return_complex2_double.c: Ditto.
            * testsuite/libffi.call/return_complex2_float.c: Ditto.
            * testsuite/libffi.call/return_complex2_longdouble.c: Ditto.
            * testsuite/libffi.call/return_complex_double.c: Ditto.
            * testsuite/libffi.call/return_complex_float.c: Ditto.
            * testsuite/libffi.call/return_complex_longdouble.c: Ditto.
            * src/raw_api.c (ffi_raw_to_ptrarray): Handle FFI_TYPE_COMPLEX
            (ffi_ptrarray_to_raw): Ditto.
            * src/prep_cif.c (ffi_prep_cif_core): Abort if FFI_TYPE_COMPLEX is not
            implemented in libffi for the target.
            * src/java_raw_api.c (ffi_java_raw_size): FFI_TYPE_COMPLEX not supported
            yet (abort).
            (ffi_java_raw_to_ptrarray): Ditto.
            (ffi_java_rvalue_to_raw): Ditto.
            (ffi_java_raw_to_rvalue):  Ditto.
            * src/debug.c (ffi_type_test): Add debug tests for complex types.
            * include/ffi.h.in (FFI_TYPE_COMPLEX): Add new FFI_TYPE_COMPLEX.
            (FFI_TYPE_LAST): Bump.
            (ffi_type_complex_float): Add new ffi_type_....
            (ffi_type_complex_double): Ditto.
            (ffi_type_complex_longdouble): Ditto.
    
    2014-07-22  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    
            * src/s390/ffitarget.h (FFI_TARGET_HAS_COMPLEX_TYPE): Define to provide
            FFI_TYPE_COMPLEX support.
            * src/s390/ffi.c (ffi_check_struct_type): Implement FFI_TYPE_COMPLEX
            (ffi_prep_args): Ditto.
            (ffi_prep_cif_machdep): Ditto.
            (ffi_closure_helper_SYSV): Ditto.

commit 4c5c4088aa3e4d8103ff9ca441937da64fdd849a
Merge: 862f53d 5d6340e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 19:10:54 2014 -0400

    Merge pull request #132 from nielsAD/master
    
    Pascal and Register calling convention support on x86

commit 862f53de04ff898a128be7eec592bae60930d6df
Merge: 5df3840 aebf2c3
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 19:06:08 2014 -0400

    Merge pull request #130 from frida/fix/darwin-aarch64-float-alignment
    
    Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI

commit 5df384077f3633ec8cf2e08f9199e5a44994dbad
Merge: 7b7a528 0f4e09d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 19:05:35 2014 -0400

    Merge pull request #129 from frida/fix/darwin-aarch64-cif-prep
    
    Fix non-variadic CIF initialization for Apple/ARM64

commit 7b7a5284de7a99edfcee5ac362dbf76251698e1e
Merge: 4cd5e84 6172a99
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 18:28:05 2014 -0400

    Merge pull request #124 from knuesel/master
    
    Fix issue with builddir when calling configure with absolute path

commit 4cd5e840122e22636b5838943372c4ed74618e35
Merge: 1cee07b 08853e3
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Sep 18 18:27:15 2014 -0400

    Merge pull request #123 from ehsan/clang-cl
    
    Add support for building with clang-cl

commit 5d6340ef2cf81432da79ac8b0b1b1218ab391438
Author: nielsAD <niels.a.d@gmail.com>
Date:   Mon Aug 25 17:29:44 2014 +0200

    Determine whether register arguments (THISCALL/FASTCALL/REGISTER) are really passed via register to closures. Use stack if not.

commit 6e346487b879b4b056a847268e381ae6efec4c21
Author: nielsAD <niels.a.d@gmail.com>
Date:   Mon Aug 25 12:23:29 2014 +0200

    Fixed THISCALL/FASTCALL closures and added basic support for PASCAL/REGISTER closures.

commit 098dca6b31e42dd0256ed7d966729e31961f1461
Author: nielsAD <niels.a.d@gmail.com>
Date:   Sat Aug 23 00:18:47 2014 +0200

    Support for calling functions with PASCAL and REGISTER calling conventions on x86 Windows/Linux.
    Also changed indentation to be more consistent throughout the (adjusted) files.

commit 08853e32fb6b750cda664ee6d3290d340429dd4d
Author: Ehsan Akhgari <ehsan@mozilla.com>
Date:   Thu Jul 31 20:33:33 2014 -0400

    Enable forcing the usage of the static CRT in libffi's msvc wrapper
    
    This is required for AddressSanitizer builds with clang-cl.

commit aebf2c3023b5ff056a708dc34169f7b549b2ec4f
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Fri Jul 25 21:40:50 2014 +0200

    Fix alignment of FFI_TYPE_FLOAT for Apple's ARM64 ABI

commit 0f4e09d27dc175ce3e95d070b794351663c7220e
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sat Jul 26 00:11:06 2014 +0200

    Fix non-variadic CIF initialization for Apple/ARM64
    
    Turns out `aarch64_nfixedargs` wasn't initialized in the non-variadic
    case, resulting in undefined behavior when allocating arguments.

commit 6172a995e14bdbc6150aa02a361f710626a5c293
Author: Jeremie Knuesel <jeremie.knusel@sensefly.com>
Date:   Wed Jun 25 12:28:17 2014 +0200

    Fix issue with builddir when calling configure with absolute path

commit fb25cd08ed5a87640b02f0feeb10a09b37cfddbe
Author: Ehsan Akhgari <ehsan@mozilla.com>
Date:   Wed Jun 11 12:07:24 2014 -0400

    Add support for building with clang-cl

commit 1cee07be4712411baa5eb8af22698bc8443a6d6e
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jun 12 06:30:59 2014 -0400

    Remove compiler warning

commit ad0d1d239afc7ad09203847793dcc020856d1035
Author: Samuli Suominen <ssuominen@gentoo.org>
Date:   Thu Jun 12 06:30:21 2014 -0400

    Fix paths in libffi.pc.in

commit df31a85103b0cc232bbc340d7e782a3853c7fad5
Merge: 69289c1 360aa8c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jun 6 08:24:35 2014 -0400

    Merge pull request #122 from rvandermeulen/1014976
    
    Don't make --enable-debug imply using the debug CRT in libffi

commit 360aa8ca1ead2fdaefa7b1c6f01ad001d8abae7e
Author: Mike Hommey <mh+mozilla@glandium.org>
Date:   Mon Jun 2 09:21:10 2014 -0400

    Bug 1014976 - Don't make --enable-debug imply using the debug CRT in libffi.

commit 69289c10b0acb4b52c8b5df4cf738193c618db40
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 31 08:54:08 2014 -0400

    Prepare for libffi 3.1.1

commit 978c9540154d320525488db1b7049277122f736d
Author: Samuli Suominen <ssuominen@gentoo.org>
Date:   Sat May 31 08:53:10 2014 -0400

    Add missing GNU stack markings in win32.S

commit cbc5a3c0200aa6c2cf8d6798d69a21501557c83f
Author: Ryan Hill <rhill@gentoo.org>
Date:   Sat May 31 08:26:34 2014 -0400

    Fix typo

commit 9d8e3018ac3d0d338373bff7eefa9f006746f4ec
Author: Anthony Green <green@moxielogic.com>
Date:   Sat May 24 23:28:42 2014 -0400

    Update current version.

commit 18d56cca5a4ee95ad48b129100adf26231518ed0
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 18:05:33 2014 -0400

    Increment libtool version number

commit 629f1029c47e522e4331988f02f32c203a070e28
Merge: 0403f33 c1166d4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 18:04:28 2014 -0400

    Merge pull request #120 from l0kod/tmpfile
    
    Create temporary file with O_TMPFILE and O_CLOEXEC when available

commit c1166d4f653bf6d17ad8c265cf5e8da84e2e76dc
Author: Mickaël Salaün <mic@digikod.net>
Date:   Mon May 12 19:44:08 2014 +0200

    closures: Check for mkostemp(3)

commit 8daeed9570af72eb135c8ded460d2888f05b2e68
Author: Mickaël Salaün <mic@digikod.net>
Date:   Sun May 11 22:54:58 2014 +0200

    closures: Create temporary file with O_TMPFILE and O_CLOEXEC when available
    
    The open_temp_exec_file_dir function can create a temporary file without
    file system accessible link. If the O_TMPFILE flag is not defined (old
    Linux kernel or libc) the behavior is unchanged.
    
    The open_temp_exec_file_name function now need a new argument "flags"
    (like O_CLOEXEC) used for temporary file creation.
    
    The O_TMPFILE flag allow temporary file creation without race condition.
    This feature/fix prevent another process to access the (future)
    executable file from the file system.
    
    The O_CLOEXEC flag automatically close the temporary file for any
    execve. This avoid transmitting (executable) file descriptor to a child
    process.

commit 0403f332b1f478696c30d3d8a0e2f6eef24aaf88
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 09:41:32 2014 -0400

    Update date. Annoucing 3.1 today.

commit 94ac0c168ee7b115409121d88b25a4979446c8da
Author: Anthony Green <green@moxielogic.com>
Date:   Mon May 19 09:37:21 2014 -0400

    Increment libtool library revision number

commit 57465744b6e1295d7202de5a7734df589518f1c8
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 11 10:30:22 2014 -0400

    Update to version 3.1

commit 0c2251a42df5108b6d9ebe5fe1cf83d0bcdf660e
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 11 10:22:30 2014 -0400

    Support versions of git older than 1.8.5

commit 70c303cb88e23aaee91c87c56b108c50ab4f3c2f
Author: Anthony Green <green@moxielogic.com>
Date:   Sun May 11 09:56:40 2014 -0400

    Fix testsuite for GCC 4.9.0

commit 52b3457093ed19b2a7c5fcf243c4014c90ce6225
Author: Magnus Granberg <zorry@gentoo.org>
Date:   Sun May 11 09:55:28 2014 -0400

    Check /proc/self/status for PaX status.

commit 7ba4c5d72aa440a4b21fb57e999e67c5957761da
Author: Dominik Vogt <dominik.vogt@gmx.de>
Date:   Sun May 11 09:52:47 2014 -0400

    Use to get correct dir

commit 31e0d4ecff6dc2a6c75a066ee099b52a43f6ba27
Merge: 1c0e9a7 99909eb
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 23 19:24:47 2014 -0400

    Merge pull request #119 from joshtriplett/fastcall-fastball
    
    src/x86/win32.S: Define ffi_closure_FASTCALL in the MASM section, too

commit 99909eb6184b62408d88b6b4e7ab38e84e6d0bf3
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Tue Apr 22 21:17:52 2014 -0700

    src/x86/win32.S: Define ffi_closure_FASTCALL in the MASM section, too

commit 1c0e9a7297ced15413c2d2d5d35f6c650c4b46c9
Merge: 93a24f2 d369522
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Apr 21 12:41:56 2014 -0400

    Merge pull request #101 from joshtriplett/fastcall-closures
    
    Support closures for fastcall

commit d36952273d4fafbda91ecc205fc0824f7cc65e70
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Apr 20 12:03:25 2014 -0700

    Support fastcall closures
    
    libffi on 32-bit x86 now supports closures for all supported ABIs.
    Thus, rewrite the last remaining duplicated-by-ABI test (closure_stdcall
    and closure_thiscall) to use the generic ABI_NUM/ABI_ATTR mechanism.

commit 93a24f216bcdd1018b976d697179c6d49004015a
Merge: dd11a04 2349fec
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:38:07 2014 -0400

    Merge pull request #80 from ueno/devel
    
    Fix typo in doc

commit dd11a04061cb49ce1d702545693c24eb1267d648
Merge: 8fa2812 03ca880
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:37:21 2014 -0400

    Merge pull request #86 from joshtriplett/testsuite-CC-CXX
    
    testsuite ignores CC parameter supplied to configure or make

commit 8fa2812355e685a42abf9a62fbc674d616b2edee
Merge: 8a58e6b 419503f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:32:08 2014 -0400

    Merge pull request #116 from frida/fix/darwin-aarch64-variadic
    
    Fix handling of variadic calls on Darwin/AArch64

commit 8a58e6b7805b736def197b8baf8e465a2a3f6913
Merge: 30b77c5 a539f7f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:30:18 2014 -0400

    Merge pull request #115 from frida/fix/darwin-aarch64-alignment
    
    Fix alignment of AArch64 assembler functions

commit 30b77c56f95c63ecd83399aafdbad7b07330f2fd
Merge: dc33cb3 3e2b84d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 12 19:29:13 2014 -0400

    Merge pull request #117 from frida/fix/windows-regression
    
    Fix Windows regression

commit 3e2b84d295531720917bf46afc532fc6d877e3ec
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sat Apr 12 01:04:04 2014 +0200

    Fix Windows regression
    
    Introduced by b5fed601948237037513a9b7f967c8fc6c9ff1f6.

commit 419503f409c321fe31ff59d963ef34bb913420d0
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sun Apr 6 20:54:13 2014 +0200

    Fix handling of variadic calls on Darwin/AArch64

commit a539f7ffd6783aa11353d13265520e453c565fb4
Author: Ole André Vadla Ravnås <ole.andre.ravnas@tillitech.com>
Date:   Sun Apr 6 20:53:02 2014 +0200

    Fix alignment of AArch64 assembler functions

commit dc33cb3c998da521a960385c1269c3aef552f69f
Merge: c860a99 b5fed60
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Apr 5 23:41:22 2014 -0400

    Merge pull request #114 from joshtriplett/bounce-on-a-tiny-trampoline
    
    Fix ABI on 32-bit non-Windows x86: go back to trampoline size 10

commit b5fed601948237037513a9b7f967c8fc6c9ff1f6
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Apr 5 17:33:42 2014 -0700

    Fix ABI on 32-bit non-Windows x86: go back to trampoline size 10
    
    The trampoline size is part of the ABI, so it cannot change.  Move the
    logic from the stdcall and thiscall trampolines to the functions they
    call, to reduce them both to 10 bytes.
    
    This drops the previously added support for raw THISCALL closures on
    non-Windows.  (Non-raw THISCALL closures still work.)

commit 03ca880081b22efab09ba72268270f83017d3d7b
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Thu Mar 27 08:44:34 2014 -0700

    README: Note the testsuite changes to respect $CC and $CXX

commit d74df8c5d8c6722ecb908da98c86cc8e2c755b84
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Thu Mar 27 00:44:12 2014 -0700

    README: Update Windows example to set both CC and CXX

commit 7d698125b1f05173f3656a89755a2eb58813b002
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 23:17:56 2014 -0700

    Use the proper C++ compiler to run C++ tests
    
    Running the C compiler with -shared-libgcc -lstdc++ does not work on
    non-GCC compilers.

commit fa5e88f170cb37c7b2b9bb015c8c5b854ffd8a3e
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 23:53:57 2014 -0700

    .travis.yml: Make the build command more readable by splitting at &&
    
    "script" can contain multiple commands to run in sequence.

commit 0c3824702d3d59d37f8c177d646303f546187683
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 14:51:32 2014 -0700

    Always set CC_FOR_TARGET for dejagnu, to make the testsuite respect $CC
    
    This fixes cross-compilation and compilation with CC="gcc -m32".

commit 9946a92af31b30cb7760150d1f8ca6c11b01aeea
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 20:18:58 2014 -0700

    Stop looking for expect and runtest above top_builddir
    
    Users wishing to test hand-compiled versions of expect and runtest can
    easily enough put them in their path or set EXPECT and RUNTEST
    themselves.

commit acb202325215058639234efb7af1f04c1c8a1f44
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Wed Mar 26 20:18:41 2014 -0700

    Stop setting an empty AM_RUNTESTFLAGS

commit c860a992fef5d7cd7bb0975b1632d17a9fafe007
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 17:02:51 2014 -0400

    Upgrade version to 3.1-rc1

commit 9837073e6203048a162a226798c5d252600219ed
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:24:14 2014 -0400

    Update copyright date and clean up README notes.

commit 18d3baa9f597b026675baa1b4e5a5eeef7577a08
Merge: afee537 f0c8a31
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:12:53 2014 -0400

    Merge pull request #108 from joshtriplett/freebsd
    
    [3.1 blocker] Fix FreeBSD support

commit afee53738a995e23bd2f89fd0f7b30b380566106
Merge: 7d24785 b2d610e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:12:35 2014 -0400

    Merge pull request #106 from joshtriplett/darwin-award
    
    [3.1 blocker] Update OS X build system to include win32.S on 32-bit

commit 7d2478568ed9f03cbf57627f449a2d2cf4d1571c
Merge: beab5f3 56be47f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:12:17 2014 -0400

    Merge pull request #110 from joshtriplett/w64
    
    Fix 64-bit Windows support

commit beab5f334d9ec5b8b91d1cc727d1029b40358e7e
Merge: 28fb197 ef5890e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 25 16:07:47 2014 -0400

    Merge pull request #105 from joshtriplett/win32-relocations
    
    [3.1 blocker] win32.S needs to handle relocations/GOT

commit f0c8a31577172104049283f0a80c723084a5bd77
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 22:14:26 2014 -0700

    Compile win32.S on FreeBSD

commit b2d610e028b5ce48d1ad7e5d0debc9c321d891b2
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 11:10:13 2014 -0700

    Compile win32.S on 32-bit Darwin as well

commit be50b87a490e794362cb4a27ada2fbaab202adb8
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 21:44:13 2014 -0700

    Always use configure to detect whether global symbols need underscores
    
    64-bit Windows already used this check; make it universal, and use it in
    place of an ifdef on X86_WIN32, to handle non-Windows platforms that use
    the underscore, such as Darwin.

commit 56be47f87629e31afbcb0774aa65735f539ee972
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 21:24:53 2014 -0700

    Fix a warning on 64-bit Windows
    
    When sizeof(size_t) != sizeof(unsigned), adding a size_t to cif->bytes
    produces a "possible loss of data" warning.  However, the size_t in
    question refers to the size of a single parameter.  Use a cast to avoid
    the warning.

commit 48a8eda74aad8a21b6f26df5df08fe64c043d208
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Mar 24 21:21:12 2014 -0700

    Avoid referencing undefined ABIs on 64-bit Windows builds
    
    64-bit Windows does not have FFI_STDCALL, FFI_THISCALL, or FFI_FASTCALL.

commit f0f4138f90345d7d67dfa6783a7e1c7cc30d3c6f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 22 10:00:53 2014 -0700

    win32.S: Add handling for position-independent code on Darwin
    
    Newer versions of Darwin generate the necessary stub functions
    automatically and just need a call instruction, but accomodating older
    versions as well requires adding the stub.

commit ef5890ebafb7cd2fbf9acf161edb55fe1382871c
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 11:01:39 2014 -0700

    win32.S: Use shifting for multiplication rather than repeated addition
    
    The jump table code added a register to itself twice to multiply by 4;
    shift the register left by 2 instead.

commit 4fca48901e7e4f53bf490ed22607b2d2d8f4bfcc
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 11:00:41 2014 -0700

    win32.S: Make the jump tables position-independent
    
    Now that non-Windows platforms include win32.S, it needs to support
    building as position-independent code.  This fixes build failures on
    target platforms that do not allow text relocations.

commit 2087dcf736274286f76c69d3988fb6d7cc4fd0f5
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Fri Mar 21 10:57:06 2014 -0700

    win32.S: Make calls to ffi_closure_SYSV_inner position-independent
    
    Now that non-Windows platforms include win32.S, it needs to support
    building as position-independent code.  This fixes one source of build
    failures on target platforms that do not allow text relocations.

commit 28fb197079cf1d11da4eef7c8c243ab05590c528
Merge: c697472 c3dd0a1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Mar 18 12:19:36 2014 -0400

    Merge pull request #107 from rvandermeulen/msvcc
    
    Various compatibility fixes and improvements to msvcc.sh.

commit c3dd0a1a0245fc174361a70876e88ae24285f861
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Tue Mar 18 12:09:45 2014 -0400

    Various compatibility fixes and improvements to msvcc.sh.
    
    * Don't try to mix incompatible optimization flags in debug builds.
    * Workaround ax_cc_maxopt.m4 not supporting MSVC and change -O3 to -O2.
    * Fix MSVC warning by properly passing linker flags to compiler.
    * Make msvcc.sh return 1 if invalid command line options are used rather than silently eating them.
    * Add more comments.

commit c697472fccfbb5b87b007c053cda9ef014b346b9
Merge: 83fd2bc e48918e
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 17 00:32:42 2014 -0400

    Merge pull request #102 from joshtriplett/test-generic
    
    Add ABIs to the test matrix; unify many bits of the testsuite

commit e48918ecf876bc85d040fc50a232059c566553a8
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 20:29:27 2014 -0700

    testsuite: Add ABIs to the test matrix; unify tests across ABIs
    
    This eliminates all the *_win32.c tests in favor of the tests they were
    branched from, and expands test coverage to run many more tests on
    stdcall, thiscall, and fastcall.
    
    This same mechanism also supports testing any other target that has
    multiple ABIs.

commit 4d4d368e5a55d9443c4c53b1b70d58ab6d8c941c
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 17:02:05 2014 -0700

    testsuite: Replace ffitestcxx.h with ffitest.h
    
    ffitest.h contains a superset of the functionality of ffitestcxx.h;
    make the C++ tests include ffitest.h instead, and remove ffitestcxx.h.

commit 3f97cf3413c46caf2a79f32ac9cda4620972c2d7
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:53:42 2014 -0700

    testsuite: Unify the C and C++ testsuites
    
    These two testsuites differ only in the source file glob and a couple of
    additional compiler options; unify the remaining bits.

commit 0d9cce8edb937bbe771a6cdd25f671edf06d2128
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:22:58 2014 -0700

    testsuite: ffitest.h: Parenthesize the CHECK macro

commit 5695ec1444c5323e48fe4314f8c8f027625e67df
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:04:58 2014 -0700

    testsuite: Factor out a function to run a matrix of tests
    
    This commons up code from libffi.call/call.exp and
    libffi.special/special.exp, unifies the optimization option matrix
    between the two, and makes it easier to add more axes to the matrix
    in the future.

commit dfdb02cc869855d3b68571e5f7aa77ae8c9d254a
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 15:26:26 2014 -0700

    testsuite: Introduce a __THISCALL__ compiler-specific macro

commit 83fd2bce0456224483435d4b764063f4513fd464
Merge: 3658a07 06ff924
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 22:03:29 2014 -0400

    Merge pull request #99 from joshtriplett/gitignore
    
    .gitignore: Ignore more generated files

commit 3658a0700a50d37a2fdba04fd9d79ad2f706d9f5
Merge: d948d0a 46c5d3c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 21:37:42 2014 -0400

    Merge pull request #100 from rvandermeulen/bug-756740
    
    Change double quotes in Makefile.am to single quotes.

commit 46c5d3c30fdc2b43c076ad955078d7c5f1e75b37
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Sun Mar 16 21:16:08 2014 -0400

    Change double quotes in Makefile.am to single quotes.
    
    This was originally done in PR #84, except the change was made to Makefile.in instead of Makefile.am and was therefore reverted the next time the files were regenerated.

commit 06ff924215a2f9739efa2c059dc595bc4ec1c851
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 16:19:46 2014 -0700

    .gitignore: Ignore more generated files
    
    The build process generates doc/libffi.info and fficonfig.h.in, so add
    them to .gitignore.

commit bad8948346e9b8813023a0cc78a3b6eb8d9c14c6
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 15:16:18 2014 -0700

    testsuite: Introduce a __STDCALL__ compiler-specific macro
    
    Several tests want to use stdcall, which differs in syntax by compiler,
    so introduce a macro for it in ffitest.h.

commit 98a793fa36a4ab3ba24d059cb80a2891cdb940e1
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 15:20:36 2014 -0700

    testsuite: Common up the ifdef blocks for compiler-specific macros

commit d948d0a729c934b0224749338a3ba0a2c8f51c45
Merge: b61b472 a86bd31
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 10:53:48 2014 -0400

    Merge pull request #98 from joshtriplett/unconfigure.host
    
    Merge configure.host into configure.ac

commit a86bd318e2424d879d784ee7b29d6536d7a17c18
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:58:59 2014 -0700

    Merge configure.host into configure.ac
    
    configure.host only has a single entry, and shows no signs of needing
    more added.

commit b61b472bd0647006d6685238721002017f1d119c
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:45:55 2014 -0400

    Update version to 3.1-rc0.  Clean up README.

commit 7a64e7dbba54e6e9f69954adfb943be1856ff928
Merge: 11a5c5c eef2e02
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:39:08 2014 -0400

    Merge pull request #97 from joshtriplett/remove-more-generated-files
    
    Remove more generated files

commit 11a5c5c39f5861011f6c5ddf795da3a32b5f0082
Merge: 9a62a21 1c68c07
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:38:47 2014 -0400

    Merge pull request #96 from joshtriplett/sawing-changelogs
    
    Generate ChangeLog from git in make dist; remove it from version control

commit eef2e02a13d7d1c8145d47a64467f654406a3548
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:26:03 2014 -0700

    doc: Remove autogenerated info file and stamp

commit 9fb403d3c5d9643e0f561cab6d4a07b1e54907ff
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:25:52 2014 -0700

    fficonfig.h.in: Remove, configure generates it

commit 1c68c07217fda78a779778c1480fedef7a58d5b4
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 06:11:58 2014 -0700

    Generate ChangeLog from git in make dist
    
    Archive the existing ChangeLog to ChangeLog.libffi-3.1

commit c65ed55e655711e008282edbdd82ce95d008b4f6
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 05:52:00 2014 -0700

    ChangeLog.v1: Fix typo in explanatory header.

commit 9a62a21f5c3a8e1da463229f3170c8ab3031d920
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 09:03:57 2014 -0400

    Add missing ChangeLog entry.  Clean up some entries.

commit 9bc704c58cb7a049d867837e3a11e2e31886ec66
Merge: 694447a e892e58
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 08:41:00 2014 -0400

    Merge pull request #95 from joshtriplett/news
    
    README: Update news for 3.0.14

commit e892e581d1838a06c18c7ecd50ebd79915cff92b
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 05:38:24 2014 -0700

    README: Update news for 3.0.14

commit 694447aa29deadd571efb4e9a26ee3f68ede1493
Merge: fdc87f3 45a6c21
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 08:32:05 2014 -0400

    Merge pull request #93 from joshtriplett/travis-dist
    
    Make Travis check "make dist"

commit 45a6c21efa944b520842e631dc54919b04884744
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 05:29:08 2014 -0700

    .travis.yml: Test "make dist" too.

commit fdc87f3b2ea37b58a4a9ae6c35083f544909fe3c
Merge: 7412b83 e1911f7
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 08:05:51 2014 -0400

    Merge pull request #85 from joshtriplett/stdcall
    
    stdcall support on Linux

commit e1911f78df113ca58738b66089a070d4cf747de7
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 03:25:53 2014 -0700

    Add support for stdcall, thiscall, and fastcall on non-Windows x86-32
    
    Linux supports the stdcall calling convention, either via functions
    explicitly declared with the stdcall attribute, or via code compiled
    with -mrtd which effectively makes stdcall the default.
    
    This introduces FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL on
    non-Windows x86-32 platforms, as non-default calling conventions.

commit 7412b838d543aae4fa925862bd5702d3dacbc29a
Merge: c0cc5fd 9531d05
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:58:16 2014 -0400

    Merge pull request #90 from joshtriplett/win32-unifdef
    
    prep_cif.c: Remove unnecessary ifdef for X86_WIN32

commit c0cc5fdaa237b67e86f22d2f6e13f3b42d9aae33
Merge: 98b5296 b3a5da0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:57:59 2014 -0400

    Merge pull request #89 from joshtriplett/travis32
    
    .travis.yml: Test on both 32-bit and 64-bit

commit 9531d05f64c2a674e0197158ffad68d69f177bd0
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 01:50:02 2014 -0700

    prep_cif.c: Remove unnecessary ifdef for X86_WIN32
    
    ffi_prep_cif_core had a special case for X86_WIN32, checking for
    FFI_THISCALL in addition to the FFI_FIRST_ABI-to-FFI_LAST_ABI range
    before returning FFI_BAD_ABI.  However, on X86_WIN32, FFI_THISCALL
    already falls in that range, making the special case unnecessary.
    Remove it.

commit b3a5da068abd2f2983d9e67adbf41b0e0f34e37f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 23:27:56 2014 -0700

    .travis.yml: Test on both 32-bit and 64-bit

commit 98b52960485a261399f081915f36063de3854a5f
Merge: 134ce4c f6dd184
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:51:33 2014 -0400

    Merge pull request #94 from joshtriplett/esp-extra-stackery-perception
    
    ChangeLog: Document testsuite changes to remove fragile stack pointer checks

commit f6dd1845434dd53e22129becdfa092c082df307c
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 04:49:36 2014 -0700

    ChangeLog: Document testsuite changes to remove fragile stack pointer checks

commit 134ce4c0266bf994f07518fc534de53f1d3c8de8
Merge: 2680e9e 9c27932
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:47:17 2014 -0400

    Merge pull request #91 from joshtriplett/esp-extra-stackery-perception
    
    testsuite: Remove fragile stack pointer checks

commit 9c279328ee12fc869adff63ca81f1230977bd42b
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 02:31:19 2014 -0700

    testsuite: Remove fragile stack pointer checks
    
    testsuite/libffi.call/closure_stdcall.c and
    testsuite/libffi.call/closure_thiscall.c include inline assembly to save
    the stack pointer before and after the call, and compare the values.
    However, compilers can and do leave the stack in different states for
    these two pieces of inline assembly, such as by saving a temporary value
    on the stack across the call; observed with gcc -Os, and verified as
    spurious through careful inspection of disassembly.

commit 2680e9ea9b4c87ea8042a61e551bd667493d4bd3
Merge: 071eab3 82f8cb2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:44:08 2014 -0400

    Merge pull request #88 from joshtriplett/such-precision-many-fail-wow
    
    testsuite/libffi.call/many.c: Avoid spurious failure due to excess precision

commit 82f8cb24a1d976db35ae31a4b86cec8926da327d
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 04:27:32 2014 -0700

    ChangeLog: Document many.c and many_win32.c changes to avoid spurious failures

commit 88d562a8b5912e99306063fe3bc289bab6ca6ebe
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 22:08:19 2014 -0700

    testsuite/libffi.call/many_win32.c: Avoid spurious failure due to excess precision
    
    The test case testsuite/libffi.call/many_win32.c can spuriously fail due
    to excess floating-point precision.  Instrumenting it with some printf
    calls shows differences well above FLT_EPSILON.  (Note when
    instrumenting it that multiple computations of the difference, such as
    one in a print and another in the conditional, may produce different
    results.)
    
    Rather than complicating the test suite with architecture-specific flags
    to avoid excess precision, just simplify the floating-point computation
    to avoid a dependency on potential excess precision.

commit c00a49ecd165b2d06c1c9b249d212dc843fa116f
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 22:08:19 2014 -0700

    testsuite/libffi.call/many.c: Avoid spurious failure due to excess precision
    
    The test case testsuite/libffi.call/many.c can spuriously fail due to
    excess floating-point precision.  Instrumenting it with some printf
    calls shows differences well above FLT_EPSILON.  (Note when
    instrumenting it that multiple computations of the difference, such as
    one in a print and another in the conditional, may produce different
    results.)
    
    Rather than complicating the test suite with architecture-specific flags
    to avoid excess precision, just simplify the floating-point computation
    to avoid a dependency on potential excess precision.

commit 071eab32a7f9fbbef46c0d8f37d9985bc9cceb37
Merge: 2228c7a 2f44952
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:36:52 2014 -0400

    Merge pull request #92 from joshtriplett/autogen
    
    Re-add libtool-ldflags

commit 2f44952c95765c1486fad66f57235f8d459a9748
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sun Mar 16 04:35:12 2014 -0700

    Re-add libtool-ldflags

commit 2228c7ab190f3c529b9018495467b841fa21cba2
Merge: 76d19d0 35634db
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 16 07:25:18 2014 -0400

    Merge pull request #87 from joshtriplett/autogen
    
    Remove autogenerated files from the repository

commit 35634dbceaac0a1544f7385addc01d21ef1ef6a8
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Sat Mar 15 18:11:16 2014 -0700

    Remove autogenerated files from the repository
    
    Add an autogen.sh to regenerate them.

commit 76d19d004e36e99d261ee78261e2f52cea5e4ab1
Merge: c86d9b6 a1a6f71
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 14 16:54:31 2014 -0400

    Ensure the linker supports @unwind sections in libffi.

commit c86d9b6cc6e16ee262844a33b40441374400758c
Merge: 4efb7db f8cdf11
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 14 16:51:20 2014 -0400

    Fix merge

commit 4efb7dbfd9427c478a948cd0d464210123db8de8
Merge: 634a475 18eb81d
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 14 16:47:57 2014 -0400

    Merge pull request #81 from rvandermeulen/bug-756740
    
    Allow building for mipsel with Android NDK r8.

commit a1a6f71bfe4199293043b2e4cfb4c8d3cb1112f9
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 15:12:47 2014 -0400

    Remove stray hunk that shouldn't have been included in this patch.

commit f8cdf11467181f2a9a6b7e748167569aa58e3a81
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 15:04:58 2014 -0400

    Replace double quotes with single quotes in Makefile.in to improve compatibility between some versions of MSYS and gmake. From Mozilla bug 943728.
    https://bugzilla.mozilla.org/show_bug.cgi?id=943728

commit dfa3738732e1bc3a7f4130395ae4bab55fcebb99
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 14:53:48 2014 -0400

    Ensure the linker supports @unwind sections in libffi. From Mozilla bug 756740.
    https://bugzilla.mozilla.org/show_bug.cgi?id=778414
    
    Also tracked as issue #42.
    https://github.com/atgreen/libffi/issues/42

commit 18eb81d032f29d645d0498ba92bddfd651f009ae
Author: Ryan VanderMeulen <ryanvm@gmail.com>
Date:   Mon Mar 10 14:43:37 2014 -0400

    Allow building for mipsel with Android NDK r8. From Mozilla bug 756740.
    https://bugzilla.mozilla.org/show_bug.cgi?id=756740

commit 2349fec9a818fb52fd2f294bcbc7b3156cd113de
Author: Daiki Ueno <ueno@gnu.org>
Date:   Wed Mar 5 17:53:02 2014 +0900

    Fix typo in doc

commit 634a475eaf1bee31c09f7d519e31c13b64cd24df
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 1 18:37:29 2014 -0500

    Update Makefile for new darwin scripts

commit c7b67e874bb89859f9a07d1cf9606052b6c0dcc1
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 1 18:34:18 2014 -0500

    Add README note

commit a04e30ba3dc303133d459c1ac273ceefe4d49b32
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 17:20:59 2014 -0500

    Add missing -DFFI_DEBUG flag

commit 934dc1b5c8d6a9e727bedc72342831eb7d62c35f
Merge: 11d7aa9 67fbef3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:10:17 2014 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 11d7aa9d7a4bbe642944edc0f07cf96db9b270b6
Merge: b40aeda 3b44d41
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:06:48 2014 -0500

    Merge pull request #46 from makotokato/android-clang
    
    Fix build failure when using clang for Android

commit 67fbef3b56ff0ef88f9b1a7fe48cb77222fa6cec
Merge: b40aeda 3b44d41
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:06:48 2014 -0500

    Merge pull request #46 from makotokato/android-clang
    
    Fix build failure when using clang for Android

commit b40aeda31a74d95a37c723b6243aabac466e67c4
Merge: 20698ab 53ceaf1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:01:29 2014 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 53ceaf14c5eeb16ba09745f0ca87cca367d41a90
Merge: 860fe66 cc9b518
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 01:01:02 2014 -0500

    Merge pull request #40 from wojdyr/master
    
    Correct the -L flag in libffi.pc.in

commit 20698abc6a00092fd7fd3e434a3a29dc0f048f1e
Merge: 64bd069 1a0b01e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:56:27 2014 -0500

    Merge pull request #66 from ppizarro/master
    
    BlackFin fixes - Fatal error when calling a function defined in a shared library from within the function called by FFI

commit 860fe6646f5ae603e99a8d1d722ddddba8b75769
Merge: 64bd069 1a0b01e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:56:27 2014 -0500

    Merge pull request #66 from ppizarro/master
    
    BlackFin fixes - Fatal error when calling a function defined in a shared library from within the function called by FFI

commit 64bd06990a7accf72271516a2110b86cdccd8df4
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:52:56 2014 -0500

    Add ChangeLog entry for Josh's change

commit edf29c5169b06fcfc241445e152e325bc3c50e0e
Merge: 33c9954 3998d26
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:50:25 2014 -0500

    Merge pull request #75 from joshtriplett/longdouble
    
    Fix build error on x86 without distinct long double

commit 33c9954f2eec539011a0f93270aaf013318837ae
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:38:41 2014 -0500

    Rebuilt with new libtool

commit 926b6989fbd08488b9105943293353d45ac527e0
Merge: 5a88c85 cc82051
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:26:57 2014 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog

commit 5a88c85fde304052bed1581ed0b6452ac2c68838
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:23:04 2014 -0500

    Fix spelling errors

commit cc82051c7e80cea772c4b72da026eb7e68d598fc
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:23:04 2014 -0500

    Fix spelling errors

commit 001aaf4b1b56349596bb6f6b5c1613dcbbd84ea8
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:20:17 2014 -0500

    When no VFP arguments are present the IP register is used
    uninitialized. Initialize it to the value of FP.
    
    This fixes a number of testsuite failures when configured for
    armv7l-unknown-linux-gnueabihf

commit 49f7729c3ce697c12408c42ccb29cdf4eb66bb85
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 28 00:17:16 2014 -0500

    aarch64 fix

commit 447483d51c6aa9df7116f346a73fc1cf795f4c2b
Merge: 51377bd b4df9cf
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 27 15:42:41 2014 -0500

    Fix ChangeLog merge

commit 3998d2604b5c0d45a098ff3119a9fd9710ef429d
Author: Josh Triplett <josh@joshtriplett.org>
Date:   Mon Feb 17 11:20:33 2014 -0800

    Fix build error on x86 without distinct long double
    
    src/x86/ffi64.c: In function 'classify_argument':
    src/x86/ffi64.c:205:5: error: duplicate case value
         case FFI_TYPE_LONGDOUBLE:
         ^
    src/x86/ffi64.c:202:5: error: previously used here
         case FFI_TYPE_DOUBLE:
         ^

commit 51377bda9aed0b2c1309c818460cab9d9ab3d46e
Merge: f08da54 40927bd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 15 08:06:29 2014 -0500

    Merge pull request #72 from heiher/devel
    
    MIPS N32: Fix call floating point va function

commit f08da5465463e60a28f5e921f23ebf2ba984c148
Merge: 3dc3f32 fa5f25c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 15 08:06:11 2014 -0500

    Merge pull request #68 from zeldin/master
    
    Linux/ppc64: Remove assumption on contents of r11 in closure

commit 40927bd3e1e7c6007025ba10854fd8a0664e47df
Author: Heiher <r@hev.cc>
Date:   Tue Jan 21 23:18:27 2014 +0800

    Fix call floating point va function
    
    I'm not sure floating-point arguments in GPR or FPR before calling
    variable number arguments function. so, load all arguments to GPR and
    FPR.

commit b4df9cf9cc4a9a9401a53fd6bea1f3c2c283b97b
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Wed Feb 5 14:22:52 2014 -0500

    AArch64: Fix void fall-through case when assertions are enabled

commit f466aad0d91a117e42571d1d6fb434fa0433c930
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Tue Jan 21 16:38:31 2014 -0500

    AArch64: Fix missing semicolons when assertions are enabled

commit 7ea677733bd98917241852b8901a6b7580728895
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 20:58:31 2013 -0500

    Remove build-ios from Makefile
    
    Conflicts:
            ChangeLog

commit 6ae046cc59c12b2cd40158d6bcb96f4a59886159
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 21:06:51 2013 -0500

    Mention Aarch64 on iOS

commit bfc06b3fdb32abe90ce0749aedfec649df85a7ef
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 17:36:39 2013 -0500

    Update ChangeLog

commit 0a0f12ce1f7be81006b08a3c81a636926d283a9b
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:50:17 2014 -0500

    AArch64: Remove duplicitous element_count call.
    
    This inhibits an analyzer warning by Clang.

commit 4330fdcd92e67c816288d64ab230237065768206
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:53:30 2014 -0500

    Darwin/aarch64: Respect iOS ABI re: stack argument alignment

commit 0a333d6c3973935d4fe02aae76b10e39d3c88e07
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 14:03:29 2014 -0500

    Darwin/aarch64: Fix size_t assumptions

commit 2c18e3c76aad1b426617db05a4384e7c3a920176
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 16:14:02 2013 -0500

    Darwin/aarch64: Fix "shadows declaration" warnings

commit 1b8a8e20e344f3c55495ab6eb46bd14e843d4b3e
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:55:21 2014 -0500

    Darwin/aarch64: Use Clang cache invalidation builtin

commit 6030cdcae776f8fb5876a53168f7d1e75d28a242
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:45:51 2013 -0500

    Darwin/aarch64: Account for long double being equal to double

commit 5658b0892683d2e24e4d5842978c184a7ad33858
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 16:33:47 2013 -0500

    Darwin/aarch64: Use CNAME, restrict .size like ARM

commit 07175780802acec5dc49fdedd6d20a62409a6707
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 17:48:22 2013 -0500

    Darwin/aarch64: Fix invalid reference in assembly

commit 9da28b44277fea3aeb827c35dd63d609d2524a8b
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 16:23:21 2013 -0500

    Darwin/x86_64: Fix 64-bit type shortening warnings

commit 821d398f08bd1d540a5b235507812ffeee49b580
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:15:06 2014 -0500

    Darwin: Merge build scripts, redo project, incl. arm64

commit 6eff9ff9e72463b9783be2514f944b6f05692054
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 17:48:10 2013 -0500

    Darwin/iOS: Improve unified syntax use for LLVM

commit ba0ea99c82aadd5957386a031e3122011bd36d52
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:27:44 2013 -0500

    Fix dlmalloc warnings due to set_segment_flags, sizeof(size_t)

commit 994be3a5c1d0d17b19103396103e128517fd62f9
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:27:14 2013 -0500

    Darwin/iOS: Fix mis-typing of vfp_reg_free

commit a8e0a835ab1f62d03ad6391760e3e8b7732d24f8
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Mon Dec 30 15:26:20 2013 -0500

    Darwin/ARM: Assert on NULL dereference
    
    This inhibits an analyzer warning by Clang on all platforms.

commit 13675341581c489ed9df8ba390c8e08a732decb2
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:42:08 2014 -0500

    Darwin/i386: Inhibit Clang previous prototype warnings

commit 66469c381e2e2cc96e7d409266dea0ffe177eeca
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:41:45 2014 -0500

    Darwin/ARM: Inhibit Clang previous prototype warnings

commit 5bfe62a00d2d659eec9f19b39802b6e69844fc27
Author: Zachary Waldowski <zach@waldowski.me>
Date:   Thu Jan 9 13:41:27 2014 -0500

    Darwin/AArch64: Inhibit Clang previous prototype warnings

commit fa5f25c20f76a6ef5e950a7ccbce826672c8a620
Author: Marcus Comstedt <marcus@mc.pp.se>
Date:   Sat Jan 4 19:00:08 2014 +0100

    Linux/ppc64: Remove assumption on contents of r11 in closure

commit 1a0b01e171e9c750437cef2f18917f5a6e32c498
Author: Paulo Pizarro <paulo.pizarro@gmail.com>
Date:   Thu Jan 2 16:17:59 2014 -0200

    When the function called by the ffi called a function defined in a shared library generate a fatal error
    The correction was to take into consideration the GOT.

commit 3dc3f32c35db5ab995a835225f6815369735ceb7
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Dec 5 16:23:25 2013 -0500

    Undo iOS ARM64 changes.

commit 356b2cbc304bfe5bdc28b8d1c68d1ff084e9ec37
Merge: 484a758 07345a3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 22:38:13 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 484a7584260e2fbb399ce90083046834271bf9ff
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 21:06:51 2013 -0500

    Mention Aarch64 on iOS

commit 07345a30ec0a2fa45a7c363d301f57723690cfa0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 21:06:51 2013 -0500

    Mention Aarch64 on iOS

commit d4b931c1b872378c35f12ddbb9a6d55e7f17c65e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 20:58:31 2013 -0500

    Remove build-ios from Makefile

commit dfbf236d70fc1ec68e6ff193584a154353508e2f
Merge: 852ac3b bb9740e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 20:54:54 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    Add ChangeLog entry.

commit bb9740e545205f93a525c77aa6d1cbf4ca9371f3
Merge: ac75368 4d701e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 30 17:54:39 2013 -0800

    Merge pull request #60 from zwaldowski/ios-redo
    
    Mac/iOS support, including aarch64 port

commit 4d701e03faa475a5eb3b54b90046114a1e27b813
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 13:25:27 2013 -0500

    Darwin: Properly export headers from Xcode project

commit 022f12eb9ad2264e838fa5fb453733f5177888f4
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 12:21:38 2013 -0500

    Darwin: Freshen gen scripts, remove old build-ios.sh

commit e820fe2025d7ad3df7584407946dfaad2af69599
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 12:03:51 2013 -0500

    Darwin/iOS: Include x86_64+aarch64 pieces in library

commit 0278284e470ec91db7cdc15ac3dcd64683305848
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:03:37 2013 -0500

    Darwin/aarch64: size_t assumptions

commit 9775446b6441c91cd9059215c106aa3bcf949767
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:39:34 2013 -0500

    Darwin/aarch64: Fix “shadows declaration” warnings

commit 4260badc37705d3618e774dfe61184ac709881c1
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:08:14 2013 -0500

    Darwin/aarch64: Use Clang cache invalidation builtin

commit 9fa7998d5f9250908cbf12a671479852ebadf9d1
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:07:48 2013 -0500

    Darwin/aarch64: Inhibit Xcode warning

commit 0e832048a93830575b0976406444e134e649a4f7
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:07:34 2013 -0500

    Darwin/aarch64: double == long double

commit 602dc22d76931092610234cf063f9f1b8dbc1a51
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:06:00 2013 -0500

    Darwin/iOS prep script: try and compile for arm64

commit b513dfe79de4725e8a717325a9e3b5b9f69f63dc
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:05:22 2013 -0500

    Darwin/aarch64: Restrict .size to ELF like arm32.

commit bc978099bf2812de755c076b67ef9c2547607572
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:04:57 2013 -0500

    Darwin/aarch64: Potentially(?) fix compile error

commit d6bb9314467c6e0683156559d23ca341c43fa3c8
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:04:22 2013 -0500

    Darwin/aarch64: Use CNAME refs

commit 33c46ce5680eea28d3437c8771ec1d137e226b45
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 04:13:42 2013 -0500

    Darwin/Mac: Fix 64/32 shortening warnings

commit 0612081e6c161d9d820742f995975d35da2adbc2
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:03:00 2013 -0500

    Darwin: Misc size_t warnings

commit 6a6247d179ec3859311c2d8775841b884f309f66
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 02:55:48 2013 -0500

    Darwin: Fix dlmalloc warnings due to sizeof(size_t)

commit 4d60d9e1e32de6166ffd63bbe9ce54cf961c78fc
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 04:09:30 2013 -0500

    Darwin: Rebuild Xcode project

commit cb719a5c1c2eb391d6a5f5e02484ba4aa990a51b
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 04:09:18 2013 -0500

    Darwin/iOS: Fix LLVM 3.3 warning re: memcpy.

commit 21bde92c9abb378f9c456a9d95e6f9b99ef8c920
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:43:42 2013 -0500

    Darwin: Clean up, modernize generator scripts

commit fd54eab74cef7891e4acaaafb71e783142ecb69e
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Sat Nov 30 03:38:02 2013 -0500

    Darwin/Mac: Also exclude OS X generated source

commit 953b6f14c655141f9e7d82550a312c3eeb961091
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Tue Apr 24 11:16:20 2012 -0400

    Darwin/iOS: More unified syntax support w/ Clang.
    
    Signed-off-by: Zachary Waldowski <zwaldowski@gmail.com>

commit c713a55379481c339877f2e0003d97cb8d9ed80e
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Tue Apr 24 10:25:29 2012 -0400

    Darwin/iOS: Simplify RETLDM arguments for LLVM 3.1
    
    Signed-off-by: Zachary Waldowski <zwaldowski@gmail.com>

commit 16ba1b80028db5cb71cf86e5f79f5e48317f83c8
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Wed Apr 11 23:26:04 2012 -0400

    Darwin: Silence Clang warnings.

commit 852ac3bd302d6ed97b1ef65f4cbed69c258a48df
Merge: ab79d6e ac75368
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 21 21:25:44 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog

commit ab79d6e21992dd86139ba07530ff888833b78a04
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Nov 21 06:12:35 2013 -0500

    This separates the 32-bit sysv/linux/bsd code from the 64-bit linux
    code, and makes it possible to link code compiled with different
    options to those used to compile libffi.  For example, a
    -mlong-double-128 libffi can be used with -mlong-double-64 code.
    
    Using the return value area as a place to pass parameters wasn't such
    a good idea, causing a failure of cls_ulonglong.c.  I didn't see this
    when running the mainline gcc libffi testsuite because that version of
    the test is inferior to the upstreamm libffi test.
    
    Using NUM_FPR_ARG_REGISTERS rather than NUM_FPR_ARG_REGISTERS64 meant
    that a parameter save area could be allocated before it was strictly
    necessary.  Wrong but harmless.  Found when splitting apart ffi.c
    into 32-bit and 64-bit support.

commit ac7536889334d4be50709006d7e23536364d7891
Author: Alan Modra <amodra@gmail.com>
Date:   Thu Nov 21 06:12:35 2013 -0500

    This separates the 32-bit sysv/linux/bsd code from the 64-bit linux
    code, and makes it possible to link code compiled with different
    options to those used to compile libffi.  For example, a
    -mlong-double-128 libffi can be used with -mlong-double-64 code.
    
    Using the return value area as a place to pass parameters wasn't such
    a good idea, causing a failure of cls_ulonglong.c.  I didn't see this
    when running the mainline gcc libffi testsuite because that version of
    the test is inferior to the upstreamm libffi test.
    
    Using NUM_FPR_ARG_REGISTERS rather than NUM_FPR_ARG_REGISTERS64 meant
    that a parameter save area could be allocated before it was strictly
    necessary.  Wrong but harmless.  Found when splitting apart ffi.c
    into 32-bit and 64-bit support.

commit 69df91cfb4fa6bcb644350a80bff970f27478a6a
Merge: 2f45082 aa1f62c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:34:04 2013 -0800

    Merge pull request #59 from iains/powerpc-darwin-unwind-fix
    
    Fix PowerPC Darwin FDE encodings to use pcrel correctly.  Modernise the picbase labels.

commit aa1f62c0a093c30325dff1d4d2b6b4b22eb96929
Author: Iain Sandoe <iain@codesourcery.com>
Date:   Mon Nov 18 13:11:56 2013 +0000

    Fix PowerPC Darwin FDE encodings to use pcrel correctly.  Modernise the picbase labels.

commit 2f450822a8698ba88441c56d152c7dc8924b127f
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 18 06:52:29 2013 -0500

    Clean up code to appease modern GCC compiler.

commit 16d56c51aded374730920a4acde76ff3d2860ae1
Author: Alan Modra <amodra@gmail.com>
Date:   Mon Nov 18 06:36:03 2013 -0500

    An #endif in the wrong place would cause compile failure on powerpcle.
    Using bl instead of b doesn't cause runtime failures as you might think,
    but does mess the processor branch prediction.

commit 34f878a5ef28663f6b1d7fd26fb099429ea1579e
Merge: 83f65b6 1fd0457
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 16 06:57:54 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog
            src/powerpc/ffi.c

commit 83f65b63d9764a9cc7688fc5cda5ee2bd23faf54
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:53:50 2013 -0500

    Finally, this adds _CALL_ELF == 2 support.  ELFv1 objects can't be
    linked with ELFv2 objects, so this is one case where preprocessor
    tests in ffi.c are fine.  Also, there is no need to define a new
    FFI_ELFv2 or somesuch value in enum ffi_abi.  FFI_LINUX64 will happily
    serve both ABIs.

commit 1fd045784cac874b5d76b7fa931f67209a8280d3
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:53:50 2013 -0500

    Finally, this adds _CALL_ELF == 2 support.  ELFv1 objects can't be
    linked with ELFv2 objects, so this is one case where preprocessor
    tests in ffi.c are fine.  Also, there is no need to define a new
    FFI_ELFv2 or somesuch value in enum ffi_abi.  FFI_LINUX64 will happily
    serve both ABIs.

commit 362851379a49ce07d3e36e82c4e5c7b6cc16a352
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:52:43 2013 -0500

    Andreas' 2013-02-08 change reverted some breakage for struct return
    values from 2011-11-12, but in so doing reintroduced string
    instructions to sysv.S that are not supported on all powerpc variants.
    This patch properly copies the bounce buffer to destination in C code
    rather than in asm.
    
    I have tested this on powerpc64-linux, powerpc-linux and
    powerpc-freebsd.  Well, the last on powerpc-linux by lying to
    configure with
    
    CC="gcc -m32 -msvr4-struct-return -mlong-double-64" \
    CXX="g++ -m32 -msvr4-struct-return -mlong-double-64" \
    /src/libffi-current/configure --build=powerpc-freebsd
    
    and then
    
    make && make CC="gcc -m32" CXX="g++ -m32" \
    RUNTESTFLAGS=--target_board=unix/-m32/-msvr4-struct-return/-mlong-double-64\
     check

commit 1c06515d927d9de1582438d4eb5953890e79c5c7
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:41:36 2013 -0500

    The powerpc64 ABIs align structs passed by value, a fact ignored by
    gcc for quite some time.  Since gcc now does the correct alignment,
    libffi needs to follow suit.  This ought to be made selectable via
    a new abi value, and the #ifdefs removed from ffi.c along with many
    other #ifdefs present there and in assembly.  I'll do that with a
    followup patch sometime.
    
    This is a revised version of
    https://sourceware.org/ml/libffi-discuss/2013/msg00162.html

commit a97cf1fae575d8bfd5259c5c422025ad43911326
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:40:13 2013 -0500

    This patch prepares for ELFv2, where sizes of these areas change.  It
    also makes some minor changes to improve code efficiency.

commit 164283f4ac5972ce2ab5e015cc2ab1014c23276c
Author: Alan Modra <amodra@gmail.com>
Date:   Sat Nov 16 06:38:55 2013 -0500

    The powerpc64 support opted to pass floating point values both in the
    fpr area and the parameter save area, necessary when the backend
    doesn't know if a function argument corresponds to the ellipsis
    arguments of a variadic function.  This patch adds powerpc support for
    variadic functions, and changes the code to only pass fp in the ABI
    mandated area.  ELFv2 needs this change since the parameter save area
    may not exist there.
    
    This also fixes two faulty tests that used a non-variadic function
    cast to call a variadic function, and spuriously reasoned that this is
    somehow necessary for static functions..

commit 31257b3189f81a199bc2902c22bc5f2d7c54ccde
Author: Andrew Haley <aph@redhat.com>
Date:   Sat Nov 16 06:35:51 2013 -0500

    Fix sample closure code

commit db0ace3a38496af73eae3df02ef353736d16909f
Author: Andrew Haley <aph@redhat.com>
Date:   Sat Nov 16 06:29:25 2013 -0500

    Fix broken test cases

commit de10f5039ed7a53382ddcc95c368d03e535edb98
Merge: 58c2577 f3657da
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Nov 14 10:56:29 2013 -0500

    Merge branch 'master' of https://github.com/bivab/libffi
    
    Conflicts:
            ChangeLog

commit f3657da278dd63afcdd8762894a9bdaea8ef028a
Author: David Schneider <david.schneider@bivab.de>
Date:   Thu Nov 14 13:02:16 2013 +0100

    update Changelog

commit 58c2577a3ff80e7416ef0434769e2af23365719c
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Nov 13 16:55:36 2013 -0500

    This enshrines the current testsuite practice of using ffi_arg for
    returned values.  It would be reasonable and logical to use the actual
    return argument type as passed to ffi_prep_cif, but this would mean
    changing a large number of tests that use ffi_arg and all backends
    that write results to an ffi_arg.

commit 8af42f9944f7ed72c81ae360aac6a84dc11f89dc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 13 16:40:28 2013 -0500

    Respect HAVE_ALLOCA_H

commit cdf405d574f479b782454516366bd4f4b9b3415e
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Nov 13 15:50:21 2013 +0100

    add a testcase for the double/float issue on ARMHF

commit 77f823e31ffb557a466b24f7fba845fbf7831798
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Nov 13 14:26:57 2013 +0100

    stop trying to assing vfp regs once we are done with the registers

commit 37067ec5036f2a6ed7a4799f83f8f53160460344
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Nov 12 19:49:01 2013 +0100

    mark all vfp registers as used when done.
    
    To avoid assigning registers the would fit, once arguments have been on
    the stack, we mark all registers as used once we do not find a free
    register for the first time.

commit 2f5b7ce545473a7f6e41193edc29407cbebe82d5
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 9 06:16:32 2013 -0500

    UltraSPARC IIi fix.  Update README and build configury.

commit becd754434173032f426d22ffcbfe24f55b3c137
Author: Mark Kettenis <kettenis@gnu.org>
Date:   Wed Nov 6 06:43:49 2013 -0500

    Align the stack pointer to 16-bytes.

commit 05c31093409f7b3e6d795fac21d2c954313d8162
Author: Konstantin Belousov <kib@freebsd.org>
Date:   Wed Nov 6 06:40:58 2013 -0500

    Mark executable as not requiring executable stack.

commit cf6bf9818e8394cfcdb07a40c6a5e2ee6b01d333
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 17:23:59 2013 -0400

    Fix up docs

commit 02177176854d16fc0f1a5958aa34da2f306630ee
Merge: c242217 c265b4c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 17:11:22 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit c2422174b3edc0de0b148dfd6b67087bb881c4a6
Merge: f4b843f d918d47
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 14:08:23 2013 -0700

    Merge pull request #45 from foss-for-synopsys-dwc-arc-processors/arc_support
    
    arc: Fix build error

commit c265b4cacb9130f042699a85de9c7242b3f49cc3
Merge: f4b843f d918d47
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 14:08:23 2013 -0700

    Merge pull request #45 from foss-for-synopsys-dwc-arc-processors/arc_support
    
    arc: Fix build error

commit f4b843f83710ac378c48abd87fe66bb519d30d2e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 17:01:15 2013 -0400

    Don't align stack for win32

commit f3cd39345713db8e414cf642b6cb65a4cfe6018c
Merge: 666f3e7 6aa1590
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 2 13:17:57 2013 -0700

    Merge pull request #51 from vbudovski/for_upstream
    
    Don't use 16 byte aligned stack for WIN32

commit 666f3e71b56d92c49fcd2d7f349b8f8ebca0f8a3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 09:12:42 2013 -0400

    Add more credits to README.  Tidy up.

commit 73ada14e756bad97fad0e6915a821a3c7e079f81
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Oct 26 09:09:45 2013 -0400

    Update README

commit d3372c54ce7117e80d389ba875dc5b6b2213c71e
Author: Mark H Weaver <mhw@netris.org>
Date:   Sat Oct 26 08:30:06 2013 -0400

    Fix N32 ABI issue for MIPS.

commit d6716aba8118eb0513885cfe557bedebb7016e8b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 15 15:42:49 2013 -0400

    Update travis-ci build dependencies to include texinfo

commit 16b93a211bcfbe4bd0efdcf94de225a71aa0ee02
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Tue Oct 15 15:33:59 2013 -0400

    Add nios2 port.

commit 2f5626ce02fce8267ab48ceb6d7d0ed7d672a75e
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Tue Oct 15 15:32:16 2013 -0400

    Fix testsuite bug

commit f64e4a865557e440774436b4c2b2fd7374290e97
Author: Marcus Shawcroft <marcus.shawcroft@arm.com>
Date:   Tue Oct 15 15:20:14 2013 -0400

    Fix many.c testcase for Aarch64

commit 128cd1d2f358f26d9fa75a27cf2b30356f5dd903
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:45:51 2013 -0400

    Fix spelling errors

commit ff06269d707cafbfef2a88afb07a79c9d1480c5f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:32:18 2013 -0400

    Update README for M88K and VAX

commit d2fcbcdfbea750d1f6a9f493e2e6c4d5ffa71b34
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 8 06:27:46 2013 -0400

    Add m88k and VAX support. Update some configury bits.

commit 6aa15900accc0a648cdebf11ec11d11697ebfffd
Author: Vitaly Budovski <vbudovski@gmail.com>
Date:   Thu Sep 5 12:05:06 2013 +1000

    Don't use 16 byte aligned stack for WIN32
    
    This fixes a crash when accessing __stdcall functions in Python ctypes.

commit 3b44d41156149af8da2a58825fefdfa23274ae7a
Author: Makoto Kato <m_kato@ga2.so-net.ne.jp>
Date:   Wed Jul 10 15:34:53 2013 +0900

    Fix build failure when using clang for Android
    
    clang for Android generates __gnu_linux__ define, but gcc for Android doesn't.  So we should add check it for Android

commit d918d47809c174d62283306b282749f8db93661f
Author: Mischa Jonker <mjonker@synopsys.com>
Date:   Mon Jul 8 15:51:36 2013 +0200

    arc: Fix build error
    
    One part of the patch for ARC support was missing in the upstreamed
    version.
    
    Signed-off-by: Mischa Jonker <mjonker@synopsys.com>

commit d3d099b40c122550279789200263346f120f6909
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 16:11:38 2013 -0400

    little-endian ppc64 support

commit 0f8690a84c874ec09a090c8c6adfb93c594acac6
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 15:54:40 2013 -0400

    Rebuild for ARC additions

commit f88118b345f27c46f5445d6e4832c498ff9a6d85
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 15:51:27 2013 -0400

    Revert "Merge pull request #36 from abergmeier/emscripten_fix"
    
    This reverts commit 6a4d901dde7b3f87984c563505717cde3113d16e, reversing
    changes made to b50a13b9c07ec09af4b9697e482acdad571e6961.

commit 6a4d901dde7b3f87984c563505717cde3113d16e
Merge: b50a13b 587002c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 12:12:34 2013 -0700

    Merge pull request #36 from abergmeier/emscripten_fix
    
    Fixes for building with Emscripten

commit b50a13b9c07ec09af4b9697e482acdad571e6961
Merge: 767f1f9 b082e15
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 12:10:26 2013 -0700

    Merge pull request #44 from foss-for-synopsys-dwc-arc-processors/arc_support
    
    Add ARC support

commit 767f1f96e5282da44d7340e6815e9820a3f78e39
Merge: c3c40e0 b8a91d8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jul 2 12:08:04 2013 -0700

    Merge pull request #43 from JensTimmerman/__m128
    
    added include for xmmintrin.h

commit b8a91d81be77d479327fdb6bdd9fdae6d18e6e63
Author: Jens Timmerman <jens.timmerman@ugent.be>
Date:   Tue Jul 2 10:57:37 2013 +0200

    added include for xmmintrin.h

commit b082e15091961373c03d10ed0251f619ebb6ed76
Author: Mischa Jonker <mjonker@synopsys.com>
Date:   Mon Jun 10 16:19:33 2013 +0200

    Add ARC support
    
    This adds support for the ARC architecture to libffi. DesignWare ARC
    is a family of processors from Synopsys, Inc.
    
    This patch has been tested on a little-endian system and passes
    the testsuite.
    
    Signed-off-by: Mischa Jonker <mjonker@synopsys.com>

commit cc9b518687e46b0d1acafdd4bc3f3b281c25a3d9
Author: Marcin Wojdyr <wojdyr@gmail.com>
Date:   Tue May 14 15:01:23 2013 +0200

    Update libffi.pc.in
    
    use -L${toolexeclibdir} instead of -L${libdir}
    to be consistent with Makefile.am

commit 587002c092cffe6e7a8d7028f246c241d03b738c
Author: Andreas Bergmeier <andreas.bergmeier@gmx.net>
Date:   Fri Apr 19 17:12:24 2013 +0200

    Enable disabling of libtool on platforms where it does not work (e.g. LLVM).
    Build libraries normally then.

commit c3c40e0290377d7cf948b072eedd8317c4bf215e
Merge: ede96e4 4750e3c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 30 05:24:14 2013 -0700

    Merge pull request #34 from davidsch/armhf
    
    Fix ARM hard-float support for large numbers of VFP arguments

commit 4750e3c662fd9569cb3e2d28f539685fd1ca8caf
Author: David Schneider <david.schneider@bivab.de>
Date:   Thu Mar 28 16:56:36 2013 +0100

    update changelog

commit 9708e7cf09f1bf815f4d6485eb1f180fabb35804
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Mar 27 19:31:04 2013 +0100

    folow the ARM hard-float ABI in ffi_prep_incoming_args_VFP

commit b41120981e5e49ca2da10b94b154775f50da5f36
Author: David Schneider <david.schneider@bivab.de>
Date:   Wed Mar 27 16:38:35 2013 +0100

    create separated versions of ffi_prep_incoming_args_* for SYSV and VFP ABIs.
    
    The different versions will be called depending on the value of cif->abi

commit dd26f1f39c54861c5b91931f0f37a72942c2a072
Author: David Schneider <david.schneider@bivab.de>
Date:   Thu Mar 28 15:39:01 2013 +0100

    add a failing test for closures on ARM hardfloat

commit 3c1608613ab3c2184222b98c5482cddedd6b559b
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 19:24:47 2013 +0100

    extend ffi_prepare_args for FFI_VFP (hard-float ABI), fixing an issue with passing VFP arguments in VFP registers and the stack, while at the same time not using all core registers.

commit 0f2ff2d4c92719be8936179f9ab674f4d1a3fd14
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 19:22:02 2013 +0100

    separate ARM ffi_prepare_args in a version implementing the simple SYSV calling convention and one for the hard-float calling convention

commit 3a352b8a8252400a83de22c7c424bf1887b4a2ef
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 14:24:04 2013 +0100

    move the hardfloat specific argument copying code to the helper function

commit 5df6b7944a4225b6eb329f3886be64e04e966f29
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 14:02:21 2013 +0100

    extract setting of arguments to be passed to a helper function

commit 7d1048c471bb4b1f9d67a9e9f8e95f9a1d2e6d45
Author: David Schneider <david.schneider@bivab.de>
Date:   Tue Mar 26 11:33:33 2013 +0100

    extract code to align the argument storage pointer to a helper function

commit b9f013788f0f384c423ad963475aaacb55598135
Author: David Schneider <david.schneider@bivab.de>
Date:   Mon Mar 25 13:27:36 2013 +0100

    add a testcase, that on ARM hardfloat needs more than the 8  VFP argument registers to pass arguments to a call

commit 2fbdb0f231cafdb77b025d3cd8afe90cda99b3ba
Author: David Schneider <david.schneider@bivab.de>
Date:   Mon Mar 25 13:26:02 2013 +0100

    use the absolute value to check the test result against an epsilon

commit ede96e4eb660bbf3e0fe048135efa8106f48af5d
Merge: f22ab3c 9e34992
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:38:21 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit f22ab3c6877cbdd07f058b68816b0086b1cb0e1e
Merge: 12b1886 d08124b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:34:54 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit 9e34992a5ea2fda1dba5875bf96dc91a7230f51f
Merge: 12b1886 d08124b
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:34:54 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit 12b1886d7b1f8aa264b1d348bfa47a0e14712df4
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:32:12 2013 -0400

    cygwin fix & updates for 3.0.13

commit d08124bedf2c6d61874fe215404783aeb9f6f1ac
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 18:32:12 2013 -0400

    cygwin fix & updates for 3.0.13

commit cb32c812d04d1dfa72002cc04924e7e4fef89e02
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Mar 17 09:27:55 2013 -0400

    Fix lib install dir

commit efd7866a361a6f636bae8400d26c6811e56ca207
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:35:57 2013 -0400

    2.0.13rc1

commit ff647ad4dff2f07dd153f295a1f70b1d906cd6ca
Merge: 4acf005 d9dd417
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:20:40 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi
    
    Conflicts:
            ChangeLog

commit 4acf0056f55c757490dae6c29a65b0321327ea8a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:18:45 2013 -0400

    Build fix for soft-float power targets

commit 675c9839224e4268187f1ec6f512127f9db555d0
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:12:38 2013 -0400

    Documentation fix

commit 8a286f570ccd41db81f74ea7f248da62241d898a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:01:19 2013 -0400

    Fix for m68000 systems

commit d9dd417b09566af55b7b3000bb53ccaf2e1d6c92
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 08:01:19 2013 -0400

    Fix for m68000 systems

commit 215763d012a944d95406b394d6013b80d220e870
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 07:57:35 2013 -0400

    Update configury.

commit 9180d8f39c9b6afe17b78277c2711a5d9948e824
Merge: 2fb527a 7e1b326
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 07:46:55 2013 -0400

    Merge branch 'master' of github.com:/atgreen/libffi

commit 2fb527a017a4943e176a489ff103231b86464b59
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 07:46:38 2013 -0400

    Add Meta processor support

commit 211a9ebf4d1a9801e15e103566aed2b8c42790be
Merge: f308faf ee18766
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 04:24:40 2013 -0700

    Merge pull request #32 from alex/patch-1
    
    Fix for a crasher due to misaligned stack on x86-32.

commit 7e1b32649efd24814e86172e196f390566f9e970
Merge: f308faf ee18766
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 16 04:24:40 2013 -0700

    Merge pull request #32 from alex/patch-1
    
    Fix for a crasher due to misaligned stack on x86-32.

commit ee18766b169811426c14b011fbb46d81e344f926
Author: Alex Gaynor <alex.gaynor@gmail.com>
Date:   Thu Mar 14 15:00:33 2013 -0700

    Fix for a crasher due to misaligned stack on x86-32.
    
    Full information on reproduction (using Python's ctypes available here: http://bugs.python.org/issue17423)

commit f308faf1eabaf8dc24966ab17fbf94368f46b9c7
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 11 14:25:13 2013 -0500

    Add moxie support.  Release 3.0.12.

commit 4ea22e54e3b143fe05c413f6dddd236af6bcbfb2
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 10 08:48:38 2013 -0500

    Update README

commit 10e77227b6ae85f46f28590bfb09ca3608554358
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 10 08:47:26 2013 -0500

    mend

commit a9521411a53d58f2bf88199242200ceb0d4dae3a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 9 06:54:40 2013 -0500

    sparc v8 and testsuite fixes

commit 70b11b47eea93bf43627588d494d0b3b0d062481
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 16:12:19 2013 -0500

    Fix small struct passing on ppc

commit 63ba1fa79f7c4ce42de848debe233aab31aecb51
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 15:18:19 2013 -0500

    Remove xfail for arm*-*-*.

commit 24fbca4c1d57d4ea628c0a8ba643684daf54a37e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 14:19:56 2013 -0500

    Fix typo

commit b0fa11cb0a94ce6baca058eab9b10e40475e71d6
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 14:17:13 2013 -0500

    More man page cleanup

commit 8bd15d139a58a6e46dc90a1cb2d89f59f32f06c7
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 13:56:37 2013 -0500

    Fix many.c testcase for ppc

commit 7aab825cf198be85490d3cd80e778d415d85ad9b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 13:26:21 2013 -0500

    Add missing files to dist

commit cb03ea8f4eb08024e44abe4392edc77b89fbfbad
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 12:25:18 2013 -0500

    sparc v9 fixes for sun tools

commit 35ee8d44f31dd3d3b88083c837dc351593e13cc2
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 8 07:12:41 2013 -0500

    Fix microblaze big-endian struct issue

commit 9db7e1a958fc484ba149efe027008b9a170395fb
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 21:06:08 2013 -0500

    Fix botched sparc patch. Update version.

commit ce0138e61455f268af326e26908b9680ec2c4bea
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 18:04:01 2013 -0500

    Update bug report address. rc2.

commit fd07c9e40451e0ec1d0475cd54a83d45ccaea2c0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 18:00:36 2013 -0500

    Add cache flushing routine for sun compiler on sparc solaris 2.8

commit ed6ae9501b2bab45daf93b4935eb0c977635b763
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 16:43:36 2013 -0500

    Add libtool-ldflags. Define toolexeclibdir for non-GCC builds.

commit ffef2e046aaec853be356f0b8770a335185ea9cf
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 15:47:01 2013 -0500

    x32 and libtool fixes

commit 95eecebb2858dc6f1495a61072ff36d0a8127144
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 15:32:46 2013 -0500

    Remove a.out cruft from dist

commit 176aa9d2e23d9cd57d6f250692d910b408f9a651
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 15:29:22 2013 -0500

    Fix GCC usage test and update README

commit f3a4f3fdde89b04d66983a42a25d09161c5d4d54
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 7 09:57:20 2013 -0500

    Fixes for AIX xlc compiler.

commit 522f8fef49848927482bc63c94afaea5b84e5ec1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 20:31:31 2013 -0500

    Fix man page. Clean out junk.

commit c4dfa259eb4e8e6f4c397868d7fee80aa0bb6a12
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:43:24 2013 -0500

    Bump soversion

commit f62bd63fe6123cadedb8b2b2c72eb549c40fbce9
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:38:32 2013 -0500

    Release candidate 1

commit f7cd61e9e68a4a51147df04d75bfe5b91b9d9286
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:38:04 2013 -0500

    Fix pkgconfig install bits

commit 6a790129427121f7db2d876e7218a3104e6d2741
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 6 17:37:15 2013 -0500

    Work around LLVM ABI problem on x86-64

commit 370112938e705128fd5dd4017fc1a1210bd0271a
Merge: bada2e3 bcc0c28
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Jan 27 05:09:04 2013 -0800

    Merge pull request #28 from jralls/master
    
    Reorder x86_64 checks

commit bcc0c28001b6d427d5cd8037d2e3c892babc6b4c
Author: John Ralls <jralls@ceridwen.us>
Date:   Sat Jan 26 15:21:14 2013 -0800

    Reorder x86_64 tests
    
    So that darwin and cygwin/mingw are tested before the generic check --
    which allows them to actually be set.

commit bada2e326d9a9acf3ae40cfa4f5d7a9ba97b2ea8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 08:02:07 2013 -0500

    Update README

commit 655bb8f3690feba8e840a5f1854b1d78ed08f692
Merge: 1035ffb 840f975
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 08:01:24 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit 1035ffb2f468e1a1c401d58cff7e7abb69838e68
Merge: aeb8719 4086024
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:55:53 2013 -0500

    Update README

commit 840f975866052fdd91b2c224d56e01ae5900b60d
Merge: aeb8719 4086024
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:55:53 2013 -0500

    Merge branch 'master' of github.com:/atgreen/libffi

commit aeb8719a34756969970603fca4568530d56708af
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:37:30 2013 -0500

    New microblaze support

commit 40860245a4fd91a1b88adc9171ec993c549e45d5
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:37:30 2013 -0500

    New microblaze support

commit 20cae32b152b43679ae65a85db9a1c6bb8a143dd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:07:38 2013 -0500

    Xtensa support

commit 9742f91782faef4a15941508a22c408fb7d1d227
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 21 07:03:41 2013 -0500

    Mention IBM XL compiler support on AIX.

commit f03eab08248f122ce3b623a18df9e19fae1b6e98
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 17:14:11 2013 -0500

    Remove obsolete inline test functions

commit 05fbe1faedc7b2580d5f14010d00e9e3cee73951
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 16:54:40 2013 -0500

    xlc compiler support

commit 0b4986a7889ed1864674192228f1162c1b5770a8
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 11:19:52 2013 -0500

    [travis] install dejagnu with sudo

commit 3c337eef51ab9a4993fc875bfa26289dd6a08881
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 11:18:14 2013 -0500

    [travis] install dejagnu

commit 90720962ce1baf9fc35d1bde1738102bcd5bd5ed
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 10:57:30 2013 -0500

    Add first travis config file

commit bff052d9cd5be41ba9e47c76114054af487d3c30
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 11 10:24:32 2013 -0500

    32-bit x86 fix and more

commit cd41aeab6176f839167955c016ecc19f65f75df3
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 17:25:45 2013 -0500

    Add compiler column to table

commit 8bf987d4df7c4d21435b9211f6cc86abf5904b42
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 17:24:51 2013 -0500

    Fix for sunpro compiler on Solaris

commit 3ee74fd6dc8ccd32b608bbff73526838fc34f70b
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 17:15:03 2013 -0500

    Update documentation version.

commit 13e2d7b92557a9511a0414df82bf2df3edc55cba
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 10:52:02 2013 -0500

    Handle both 32 and 64-bit x86 builds regardless of target triple

commit 5141543000fc86a3d49a907a2313713ee79e504d
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 07:35:53 2013 -0500

    Don't run EH tests with non-GNU compiler

commit 56ba8d86f47937a0afb81a2b9e77c9d235d9db45
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 07:25:10 2013 -0500

    Don't use warning checking macro with sun compiler

commit 6a028caec1b2c7904feb4c4f9cb7e1125e1d1b60
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Jan 10 01:19:43 2013 -0500

    Don't use GCCisms to define types when
    +       building with the SUNPRO compiler.

commit 2d9b3939751b3ef9739049509d353ade10b32a8f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 9 21:14:54 2013 -0500

    Fix for closures with sunpro compiler

commit 8308984e479e3274a36e98e8272b5adbb6b774c2
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 15:14:21 2013 -0500

    Make sure we're running dejagnu tests with the right compiler.

commit f26c7ca67147450db2fe25ea932944e6cf145d5c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 14:47:05 2013 -0500

    Make compiler options in dejagnu runs compiler specific

commit 74c776e21907fc2e59257c021f23077f8b7966cb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 12:25:54 2013 -0500

    Switch x86 Solaris to X86 from X86_64

commit 8962c8c8d06803e310bac0ffc8e84ea15daeff3f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 12:22:24 2013 -0500

    Fix read-only eh_frame test

commit 35ddb69c2b49746d940e919ca226ecc1be94f14a
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 07:53:37 2013 -0500

    Only emit DWARF unwind info when building with GCC

commit f7879bc3f3a8d0bbfcc38771732c160a58ba9cd8
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Jan 8 07:30:28 2013 -0500

    Testsuite fix for Solaris vendor compiler

commit 67cea90fc0897021466fd102671019d30db474cd
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 7 06:30:24 2013 -0500

    mend

commit 0de3277b18cf54be3b81d509b9be9b47d9bc1e82
Author: Thorsten Glaser <tg@mirbsd.de>
Date:   Mon Dec 3 00:02:31 2012 +0000

    Testsuite fixes (was Re: [PATCH] Fix libffi on m68k-linux-gnu, completely)
    
    Dixi quod…
    
    >although I believe some 3.0.11 checks to be broken:
    
    And indeed, with a few minor changes on top of git master,
    I still get a full run of PASS plus one XPASS on amd64-linux!
    
    With the other patches (from this message’s parent) and
    these applied, I get a full PASS on m68k-linux as well.
    
    So, please git am these three diffs ☺
    
    bye,
    //mirabilos
    --
    FWIW, I'm quite impressed with mksh interactively. I thought it was much
    *much* more bare bones. But it turns out it beats the living hell out of
    ksh93 in that respect. I'd even consider it for my daily use if I hadn't
    wasted half my life on my zsh setup. :-) -- Frank Terbeck in #!/bin/mksh
    From 5cb15a3bad1f0fb360520dd48bfc938c821cdcca Mon Sep 17 00:00:00 2001
    From: Thorsten Glaser <tg@mirbsd.org>
    Date: Sun, 2 Dec 2012 23:20:56 +0000
    Subject: [PATCH 1/2] Fix tests writing to a closure retval via pointer casts
    
    As explained in <Pine.BSM.4.64L.1212022014490.23442@herc.mirbsd.org>
    all other tests that do the same cast to an ffi_arg pointer instead.
    
    PASS on amd64-linux (Xen domU) and m68k-linux (ARAnyM)
    
    Signed-off-by: Thorsten Glaser <tg@mirbsd.org>

commit 8f4772f383abd71cfa141c8a70ba11c1aa4ebe2c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 7 06:14:53 2013 -0500

    m68k fixes for signed 8 and 16-bit calls.

commit ea7f8440d58afbebb181e295ff564fdf3d6590a0
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jan 4 09:09:32 2013 -0500

    remove gcc-ism

commit f06c0f10377ac04eeba5e632dbe5c62c629df4e6
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:39:17 2013 -0500

    Add missing ChangeLog entry and generated files.

commit 1f8675d4c101d19d67ca0a55ff2ba973349558ad
Merge: 335f419 f6b58d2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 06:34:38 2013 -0800

    Merge pull request #26 from rofl0r/master
    
    fix build error on ppc when long double == double

commit 335f419a86090cda9f215d149572f9481c3ad034
Merge: 53236d5 6d6f711
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 06:30:03 2013 -0800

    Merge pull request #23 from rurban/master
    
    cygwin/mingw shared libs need libtool LDFLAGS = -no-undefined

commit 53236d5061034cc0a7f4647fc1bd05ba1aeb3d2a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:24:55 2013 -0500

    Regenerate files

commit 72222ca3fbe560e13c8dc89ca441b28b7cc74daf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:06:38 2013 -0500

    Update texinfo.tex

commit 1e326c95431fc9896422fa36659f3e833852579c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 09:05:02 2013 -0500

    Update config.guess and config.sub

commit cb6671f5b8a9596ff968c6b6c304f70adf71b368
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:56:07 2013 -0500

    Missing .gitignore changes for xcode support

commit ebbe77966855395a2a47ed2c09a38f93eb0481cf
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:54:05 2013 -0500

    missed x32 libtool patch.

commit 4394096da0aca0dd422b479a043c18b4f05c5770
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:51:35 2013 -0500

    missed trampoline_table patch. Move to GCC.

commit ed7a59c3ff7c84bd95c374a5aff21599f705e6dc
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:48:01 2013 -0500

    Windows symbol export fix.  Move to GCC.

commit ccee09a4ff843b11c7d8b6819776f57d187305c7
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:41:55 2013 -0500

    +2012-03-21  Peter Rosin  <peda@lysator.liu.se>
    +
    +       * testsuite/lib/target-libpath.exp [*-*-cygwin*, *-*-mingw*]
    +       (set_ld_library_path_env_vars): Add the library search dir to PATH
    +       (and save PATH for later).
    +       (restore_ld_library_path_env_vars): Restore PATH.

commit 089dbce7cc0889eb26444d89ae062c73c69f26f0
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:37:35 2013 -0500

    med

commit 980a334c42b4b0eff32e55929ec6727d1326b05d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 07:36:42 2013 -0500

    Test GCC update

commit 8bad679ade5000e57cdc9cacde22e8b99840930f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 08:28:35 2013 -0500

    New stand-alone patch

commit 981c32ee115e9f0d6546a74592875e138222a9d1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Jan 2 07:34:03 2013 -0500

    Merge with GCC.  Eliminate quilt bits.

commit 61a054929517fb80c437ba71c91f3e20cfff581a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Nov 28 06:07:41 2012 -0500

    Refresh config.guess and config.sub

commit f6b58d2bdc0a24ce94dedce59802f091979df265
Author: rofl0r <retnyg@gmx.net>
Date:   Thu Nov 22 16:26:21 2012 +0100

    fix build on ppc when long double == double

commit 69da33a0761aeac73f9e9646269da61c906d6020
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 12 15:25:47 2012 -0500

    Pull in config.sub for aarch64 support and more

commit f680b598b7bdde325ac9349e8c35151c228bf2df
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Nov 6 16:00:40 2012 -0500

    Add missing aarch64 configury bits

commit dfadfb19853c57c8623c436d0ef2bdafab24b433
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Oct 31 06:46:41 2012 -0400

    Rebase for ppc64 fix

commit e944b8c7eb1e2eeb9c0f3b9742b4d7f476860ce1
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 14:06:09 2012 -0400

    Add PaX work-around

commit 9ccd51be1fdeb99f8b4f42f905166c2abbba8ac0
Merge: f342996 fa5d747
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 13:37:37 2012 -0400

    Fix commit conflicts

commit f342996cb50eb23b868afcff5ac0cdbb6b505d63
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 07:42:27 2012 -0400

    Darwin12 fix

commit 58e8b66f70cef2e3c9b0e5a707b45d634cbbf5d9
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 07:07:19 2012 -0400

    AArch64 port

commit fa5d747905472571fd472c07d4726017624f66b3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 07:07:19 2012 -0400

    AArch64 port

commit 6993a6686f43f2313b18142c1e96189a27db2aa3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Oct 30 06:59:32 2012 -0400

    Fix autoconf macros

commit 70084e70ddb13b29dd05c751b1904de206bbe790
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Oct 12 23:55:06 2012 -0400

    Update Tile* port info

commit 9c00a3f6742d61404b31268cc773e7130ff43331
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Oct 12 16:46:06 2012 -0400

    TILE-Gx/TILEPro support

commit 048d2f41c3a6664b4b64bf21e804686662da4160
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Oct 11 10:55:25 2012 -0400

    Rebase

commit 6d6f71108064f5069edd7bf771059d3b82640135
Author: Reini Urban <rurban@cpanel.net>
Date:   Sat Jul 7 12:42:00 2012 -0500

    cygwin/mingw shared libs need libtool LDFLAGS = -no-undefined
    
    otherwise only static libs are created.

commit d330f19292da8f39a78a9e2b0ba08df8094e3bc5
Author: Nicolas Lelong <rotoglup>
Date:   Sat May 5 09:37:02 2012 -0400

    iOS build fixes.

commit 09b23cfc1d6d15361eee18818851fd3cacb26559
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 27 08:29:48 2012 -0400

    Update README with Blackfin/uClinux support

commit 213ed15c70e72d666154c08e2b41dae3f61f20d3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 27 01:34:15 2012 -0400

    Add blackfin supprt from Alexandre Keunecke.

commit ff3d76fd427382ce7d2b2ed54acdd0bce470ca4f
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 11 23:16:48 2012 -0400

    3.0.11

commit 7e0a412c4fd9cbe77b467a9bf86f56aea62632c3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Apr 11 22:47:44 2012 -0400

    Update files to ship

commit 39e6a5860416f7bad992149817e1da1ba7c460d4
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Wed Apr 11 22:39:46 2012 -0400

    More mac/ios build improvements

commit 853cc722a16f8d1254573ef3bb73c7b8f3d8a110
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 10 06:33:33 2012 -0400

    Fix typo for darwin targets

commit 3f5023068cda07a3dd6dacbaa875a5b5fc96d4bb
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 20:34:51 2012 -0400

    mend

commit ebb8e8945681ce0af7a5c47a980287e8ece84b84
Author: Mike Lewis <mikelikespie@gmail.com>
Date:   Fri Apr 6 20:02:08 2012 -0400

    Build iOS library with xcode

commit a098b44f4c592c2192fcdef4fad6108eb3f4301c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 17:04:35 2012 -0400

    Reapply missing testsuite changes for arm

commit 10d1e51393f08c14045db85843208f44f9f1e9ba
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 11:57:14 2012 -0400

    Update to rc4.  Upgrade autoconf version.

commit 9bcc884276dc0a807b2605e510b11b1740dd9aa2
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 11:53:07 2012 -0400

    Fix Linux/x32 reference in README

commit a044a56b1cd2a0924f5ec0d6b5a5089d14fcd1a1
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 10:39:10 2012 -0400

    Linux/x32 libtool fix

commit 59bb61a36661b972e8443531d3b7bc736e131a4b
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Apr 6 08:26:14 2012 -0400

    Update libtool version, README, tests dists

commit f2981454cbe25cf9411b710f46c5f5552003a123
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Apr 5 15:45:19 2012 -0400

    Revert debug code changes

commit 39dccddb606f6fdb8dcb177d416e884041da6e30
Author: Zachary Waldowski <zwaldowski@gmail.com>
Date:   Thu Apr 5 12:32:41 2012 -0400

    Fix building with Clang for Darwin (OS X 10.6+ and iOS
     4.0+)

commit 3afaa9a34a81a305227ae8cf4f12b9d0484d055e
Author: Peter Rosin <peda@lysator.liu.se>
Date:   Tue Apr 3 07:40:31 2012 -0400

    Fix return_uc.c test case on windows.

commit 65f40c35a2873d8328359ec4512bd0736dbe32c7
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Apr 3 07:35:59 2012 -0400

    Repair ppc build regression.

commit 0a1ab12a8d15caa894116a82249551f23ef65612
Author: Peter Rosin <peda@lysator.liu.se>
Date:   Fri Mar 30 08:14:08 2012 -0400

    Various MSVC-related changes.

commit e1539266e6c6dde3c99832323586f33f977d1dc0
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Mar 30 00:40:18 2012 -0400

    ARM VFP fix for old toolchains

commit 7c5e60b5f47d725036a72162f136272bc407e3a1
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Mar 29 08:48:22 2012 -0400

    Rebase on fixed GCC sources

commit e72ed5eeaa9cfb0fdc86f6b3422734177b659f96
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 21 09:52:28 2012 -0400

    Fix vararg float test

commit bd78c9c3311244dd5f877c915b0dff91621dd253
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 21 08:09:30 2012 -0400

    More cygwin fixes

commit 84d3253f86dad6b4f261231935675d35fd964b05
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Mar 19 23:07:35 2012 -0400

    Rebase post GCC merge

commit 964c5b93f80dcaacf73056b7d15a4d2b4b7a217c
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 3 14:46:20 2012 -0500

    abi check fixes and Linux/x32 support

commit 6c194233a5f6f1d274669afc5924a9e1f69d4876
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Mar 3 14:17:54 2012 -0500

    Add -no-undefined for both 32- and 64-bit x86
    windows-like hosts.

commit 8360bf1cd0aba8db5582266da70467de7e89a57a
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 23 07:01:13 2012 -0500

    Ensure that users don't include ffitarget.h directly

commit d578b89619cf3d2baff027b203619dc307fc12e3
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 15 00:18:18 2012 -0500

    Fix ABI check regression

commit dee20f8e45c486f5018f31e09bb362992aa498c3
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 10 13:06:46 2012 -0500

    Rebased from gcc

commit 4130e1972d001143e5e9f3c6b65f2a6f9524169e
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 3 13:18:27 2012 -0600

    Refresh autoconf-archive m4 scripts

commit 1ff9c604bb214b5a305064af1049577ef783730a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 1 16:34:30 2012 -0600

    Rebase from GCC

commit 211060eb8f714af0e935430efa6bb45e8e3ffc5d
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:24:01 2012 -0500

    Alpha fix

commit 78d9c638ba0de6edfbc603fd65d19c6562663248
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:17:24 2012 -0500

    mend

commit afaf3381604bd81803d8a5f3bf4d462299f1aac3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:17:13 2012 -0500

    mend

commit 9e9c4aeb77de5608d602109f22100c1c0c79faad
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 14:11:23 2012 -0500

    Add Amiga support

commit 8efc0b1f4027d5a3cbf205e55d422d94e60f3226
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 13:47:38 2012 -0500

    Unlikely fixes

commit 1df51398ae183dc208ba4599ee867278b04d13d3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 13:43:59 2012 -0500

    mend

commit cd2277cc796b96b149cd284ae85326529fe7fb9c
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 13:43:38 2012 -0500

    mend

commit 164e6fe04b189746c8bd5810c6e3e919770bb9d4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 12:41:06 2012 -0500

    m68k fixes

commit c365ee7577bef00cb3c2c0b5224147aea04138d8
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jan 23 11:13:18 2012 -0500

    Refresh

commit f22c38bbd93bcc0c04bf26c3e414556b3177c385
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 18 15:13:41 2011 -0500

    Update variadic patch

commit 03e9ee321a3c208f88d2432587ce40b2bb2430ba
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Nov 18 15:13:00 2011 -0500

    Fix cls_double_va.c and update docs

commit 95f31151ec792809cfb80d385350f9f56d95aa25
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 23:46:05 2011 -0500

    Rerun automake

commit 198ed1ef85cf18342627f8d44bc3f12c9975a49d
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 23:45:20 2011 -0500

    Update version number

commit 4f17e1f142e805b13959ba2594ee735eae439f4e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 17:22:24 2011 -0500

    Fix last patch

commit ff9454da44859716a5bd4eaa344499288c79694f
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 17:18:51 2011 -0500

    Add David Gilbert's variadic function call support

commit ea14ae85e8f54ff046b7fb8a9cfe349475272044
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:36:59 2011 -0500

    clean up

commit 52891f8a93f9b8de801cca4cf05639422dc9773e
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:35:55 2011 -0500

    Add powerpc soft float support

commit c8f1bde8e2566c5a87474b4d08aa934d6d28ee75
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:21:02 2011 -0500

    Remove junk file

commit 6a6e7f862f3cc677e19131587caa619e7f9c7ffd
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:20:42 2011 -0500

    Fix kfreebsd

commit d52fbed05ccbdee9ed8b9c911cbb4f85b0ff0f2a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:13:41 2011 -0500

    Add missing ChangeLog entry

commit 322052ce65c4fdac85bedc24726fd0e0094ba521
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 16:11:49 2011 -0500

    Fix arm wince alignment issue

commit af18df2bc2f52df81e7b5c619bd86db8489dc873
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 15:52:08 2011 -0500

    Remove use of ppc string instructions

commit 236c9391321f83ad40daf03f40c35c9ebc1da6b3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 07:37:40 2011 -0500

    Fix darwin11 build problem

commit c411f140f305ebb00d33c92b7cb2742bcd241b6a
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 07:32:36 2011 -0500

    Fix ax_enable_builddir macro on BSD systems

commit 3d56106b07735abef6ae9f032e94f560a0ed2f30
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Nov 12 07:20:24 2011 -0500

    Rebase

commit 8c01954c50bf8ef2e00a3db166060a1b8f83a20d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 14:26:32 2011 -0400

    Build assembly files with debug info

commit fed646a2078969f4ce89c29107f1e72e03f4a977
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 6 09:50:20 2011 -0400

    Regenerate configury with missing m4 macros

commit d76441cf71216f8f1e62e7ec852a7f4e21371ec8
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Aug 24 10:14:23 2011 -0400

    Update list of supported OpenBSD systems

commit ee6696fdf4768ba6dd037fb6dd99435afa13816e
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Aug 23 12:30:29 2011 -0400

    3.0.11-rc1. soname bump.

commit c6265c36a91eab8175d0e72db84d8225418f2379
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Aug 23 10:31:33 2011 -0400

    Version 3.0.10

commit cc5e41bf32d18a14dbdd653d52eacdbdc934c392
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Aug 22 16:34:24 2011 -0400

    Fix use of autoconf macros

commit 049d8386ff52399e69a530b55b9feedc8a2589d2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Aug 22 14:50:10 2011 -0400

    Many new patches

commit 3b7efa4e74f0dcebf70b447391987aedd3473306
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Aug 15 13:25:13 2011 -0400

    Revert remove-debug-code patch temporarily (for ARM Fedora release)

commit d992ac54a2a9e7e064ffebcb91e05e7cb86185c7
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jul 29 17:32:53 2011 -0400

    Refresh from GCC

commit 2d3fb36420e09304220ee6c0652bae5eccdb965d
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Mar 30 16:54:42 2011 -0400

    Fix darwin EH

commit 30ff28e1d8cd9ed5319f1fbe9c7cccacc8161fb3
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 28 15:36:23 2011 -0500

    Fix permissions

commit 09f8f310f4f53a24289682d3d28f4399d7bafc3b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 28 15:36:07 2011 -0500

    More AIX fixes. rc9.

commit 53d7b165642c220aa5166ba350b490802f359b54
Merge: 18dd85d 3000dc2
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 28 15:23:31 2011 -0500

    Merge branch 'master' of https://github.com/landonf/libffi-ios

commit 18dd85d6cb9f3f3eea2a3b70eb4e150045905c55
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 25 16:23:04 2011 -0500

    rc8. fix last patch.

commit 74ee6ea8b42e60d44a3ae8938b1e42a38c1e66b4
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 25 15:52:14 2011 -0500

    rc7.  More AIX fixes.

commit 2541679dbd3db0014890f42192dbf8008ab923fa
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 25 15:09:13 2011 -0500

    Fix ppc32 bug

commit cbb062cc35c518004f1ab45c847f8ec4f66069ad
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Feb 17 20:39:21 2011 -0500

    Another non-GCC configury fix

commit 8cf8878425e9971866fa6b27a3e4914729ad3960
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 15 15:19:49 2011 -0500

    Fix ax_cc_maxopt.m4

commit 24b72070c0937f9000744c77a636f07e04786b6a
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Feb 14 15:30:57 2011 -0500

    Fix warning and msvcc patches

commit d72c49e556a8c516e97f6722d1be2f1209c21207
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 13 11:41:05 2011 -0500

    Add missing msvcc.sh

commit 3000dc237f6017a7445d8404097a4f46b73fdd29
Merge: 55e4a5a 1fbf9dc
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Feb 13 08:55:53 2011 -0500

    Merge remote branch 'upstream/master'

commit 1fbf9dc44feea564e84ad7406d17c5d5906ce0e0
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Feb 13 08:06:39 2011 -0500

    Fix bad_abi test. rc5.

commit 90af15ef5c1614b76370c4d13954586fabf9e8e3
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 12 12:29:36 2011 -0500

    iOS fixes

commit 55e4a5aa1568558a04aa40f16fc022e459af53e3
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 12:13:46 2011 -0500

    Add support for building a full armv6/armv7/i386 universal iOS library

commit a0c80f279b8733d001cb5e5c5a3289ecb7a6e56a
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:43:49 2011 -0500

    Update my e-mail address.

commit 8195e0e11df7a53fa474caa9375f73ca1136ed66
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:27:00 2011 -0500

    Fix symbol prefixes on Darwin.

commit 56b3f8cef0f28cefaa0f40fe0cf7c524adef131d
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:14:54 2011 -0500

    Modify the ffi_closure structures to hold table/table entry pointers instead of a code buffer.
    
    This re-integrates commit da2773e02ab26cc11a7f.

commit 28a00f61ff3f64c4eb2269ce2aea3d493274469e
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 11:01:48 2011 -0500

    Apple assembler support; fixed most gas/ELF-isms.

commit 7f2ea33a80bfced5e48ed7292f3b8f057d54ff8f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:39:18 2011 -0500

    Replace RETLDM macro.
    
    The macro is incompatible with Apple's assembler; switch to
    a simple inline version.

commit 92ff23e77fa586455b427b71f49e1d9502470e6e
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:24:49 2011 -0500

    Switch to the current iOS 4.2 SDK.

commit 58fb8ca2dfb89ad70284bb9678d3d4dbb658c8a7
Merge: cc3fbd9 71c792f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:23:19 2011 -0500

    Merge remote branch 'upstream/master'

commit cc3fbd975ce9366d4c40a6ff6c108f664867bd7c
Merge: e449a43 f6ab3ed
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:21:02 2011 -0500

    Merge branch 'master' of github.com:landonf/libffi-ios

commit e449a43bbe12f8119399928db1ae26adc71dde14
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Feb 12 10:20:42 2011 -0500

    Allow specification of the minimum supported iOS version.

commit 71c792f51bcf3e2f334e5ea1fb1a8b667cb3aedb
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 12 09:33:11 2011 -0500

    rc4

commit 7c7c9f327299331022f6000603a35f2310dfe308
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Feb 12 09:29:29 2011 -0500

    ungccify parts of the build

commit ed62e48b95a0fa60b685f647cb73c9e190eec35c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 12:23:58 2011 -0500

    Fix permissions

commit 17d9e9e68ddb1b915a0b9751713033861b598575
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 12:23:20 2011 -0500

    Use newer autotools.  Only build debug.c when --enable-debug.

commit 6972a4ffda75761eaab7dfbe0fb1516b255e8e0c
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 07:32:51 2011 -0500

    Fix xlc build on AIX

commit 1833aa0fb9831eb0725b63e35886c0f6d35df480
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Feb 11 07:11:04 2011 -0500

    sparc ABI test fix.

commit f1fb139b4e283fffdcf205a903943d5e9d2bb2a2
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 18:30:02 2011 -0500

    Fix tests

commit 5cb470331d181c84d5d621e88868327a324a5898
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:23:06 2011 -0500

    Fix permissions

commit 269deef6dbbb426695919d3398357fada3bb288c
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:22:23 2011 -0500

    rc3

commit 42695e72504f647444b8e8e9b90bd24f1e3220e1
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:12:35 2011 -0500

    Fix IRIX support

commit a6e56b97f62a3feeb3301c24a2e4cae55e546021
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 15:00:42 2011 -0500

    Add powerpc64-*-darwin* support

commit 747d6c32d4abb07c10c3a1f93579c3929aaa2487
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 14:56:23 2011 -0500

    Add Interix support

commit eab6e41cde382aa07de6c011d514a14c0d62eb47
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 10:15:02 2011 -0500

    Remove README.markdown form libffi-ios

commit 69dbe845f4ee3e6ce8999f17a1e4f2179ef7da89
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 07:38:43 2011 -0500

    Fix xfails

commit f498318c07b95137fe259d86bdbe15347588b84a
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 06:26:46 2011 -0500

    Update README for iOS again

commit 630b9c0ac43c7edcbfd892e23c09fb26724f4ac0
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 06:24:23 2011 -0500

    Update to rc2

commit 0cad4386fa4c9ea5f8ca88b16247db4e5c8fea90
Author: Anthony Green <green@moxielogic.com>
Date:   Wed Feb 9 06:11:46 2011 -0500

    Add ChangeLog entry.  Fix copyright headers.

commit 09cb76f2645bd2c151846e9249d8ea707ba01e8c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 20:39:51 2011 -0500

    Add missing change

commit 2e3a48ccdd54340983c46a29a0b41985e3e789ac
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 20:37:26 2011 -0500

    Fix make dist

commit 5e4814d9928e236a2a4afe84d6e1d4fdaa473206
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:46:28 2011 -0500

    fix permissions

commit 5c0cc6f1536aa1738795a97303810a823c7fa2cb
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:45:59 2011 -0500

    3.0.10rc1

commit 857fe3de46d2286afa2fe772920ecf4aefa1688f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:39:20 2011 -0500

    Clean ups

commit e2214f8adb5577c247452e2cc9f4cbe304d7ca9f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:22:56 2011 -0500

    Update README

commit 1106229a5721a659da5c231ec0e8211119615394
Merge: bc9d0be f6ab3ed
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 19:20:09 2011 -0500

    Add iOS support

commit bc9d0be2958ce475757f34dd2c878948aa77a39f
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 17:04:26 2011 -0500

    3.0.10rc0 changes

commit 3b836249feae6d08d3e6887486e4b9961ddafa09
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 14:28:59 2011 -0500

    Rebase from GCC

commit a26e3940619faeba6de54824c9540c90b1aab513
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 13:56:12 2011 -0500

    copyright updates patch

commit b8099539f00e224107594101e9760b6dc081a056
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 13:50:43 2011 -0500

    Fix msvcc.sh botch

commit dc411e8f99113a34656bfd2d3ae51259972488cc
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:49:29 2011 -0500

    Fix HP-UX build

commit 404585d1348e30ac58203bbd876d9131e5aed874
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:44:36 2011 -0500

    Fix sparc v8 aggregate type returns for sun's compiler

commit 19ce713188e193e4522740d24c20170411883d2d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:34:23 2011 -0500

    grammar fix

commit 89284fe55f1a8ad3bddbea796ee00d0e3ba411ce
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:19:19 2011 -0500

    Fix AIX build with IBM XLC

commit ba022c338af97cb18d9f8ed5a607fd483a61c09c
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:12:48 2011 -0500

    fix win64-underscore patch

commit 097e5f3924ee92a3ba6cd72f787da8a3eb14fea3
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:11:00 2011 -0500

    x86 pcrel test part 2

commit ed2c518d960b91d444be74e5a55779a9c4602f3b
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 10:10:07 2011 -0500

    x86 pcrel test

commit 0e5843995f46900ef212531281e08b224464f413
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Feb 8 07:52:40 2011 -0500

    Refresh from GCC

commit 5b9cd52784339a42e417174a55e310e214d435f9
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Nov 22 15:19:57 2010 -0500

    win64-underscore patch

commit 2db72615b50eb5c0f29725c02c740a2f0d7fc7d9
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Nov 21 10:50:56 2010 -0500

    Rebase

commit f6ab3edc23dc8fc7c47a31c896044150c23f04b5
Author: Landon Fuller <landonf@plausible.coop>
Date:   Wed Oct 27 19:34:51 2010 -0400

    Include the license header in the generated output.

commit cef619462887fa0f360e3ee702d1e04f112b5b38
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Wed Oct 27 13:59:30 2010 -0400

    Add missing copyright/license header.

commit 53f387b203413c9aa6e31f49dbb70d37d816330b
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 19:57:17 2010 -0700

    Minor README fix.

commit 4fbcb5b5fbce11f4b168060e00639db33c85b75b
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 19:50:37 2010 -0700

    Minor README fix.

commit 8e7652ef6acab5db7a29f786686a54f05cdbdc7d
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 19:49:39 2010 -0700

    Add a libffi-ios-specific github README.

commit 83038cf24aa1a92b62b91ffee1dcc25d79243484
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:36:45 2010 -0700

    Implement FFI_EXEC_TRAMPOLINE_TABLE allocator for iOS/ARM.
    
    This provides working closure support on iOS/ARM devices where
    PROT_WRITE|PROT_EXEC is not permitted. The code passes basic
    smoke tests, but requires further review.

commit b00ff3e98fdde622cef617030e14d5356dff988f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:22:26 2010 -0700

    Rename the generated symbol

commit da2773e02ab26cc11a7fe87e985599f35cdf0649
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:21:37 2010 -0700

    Modify the ffi_closure structures to hold table/table entry pointers instead of a code buffer.

commit 01d71b7bed41844f80cb9feef20dcc5ece5ba2d0
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:21:14 2010 -0700

    Regenerated the autoconf script

commit 19afda0069c42e51c81dca7b10a5cf884b4cdce0
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 14:20:52 2010 -0700

    Enable AC_SUBST for FFI_EXEC_TRAMPOLINE_TABLE

commit 9e1196444e78aef20028c18891f44ebe39a815fd
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 10:43:06 2010 -0700

    Add a hard-coded FFI_EXEC_TRAMPOLINE_TABLE arm implementation.
    
    This implements support for re-mapping a shared table of executable
    trampolines directly in front of a writable configuration page, working
    around PROT_WRITE restrictions for sandboxed applications on Apple's
    iOS.
    
    This implementation is for testing purposes; a proper allocator is still
    necessary, and ARM-specific code needs to be moved out of
    src/closures.c.

commit f38364b399184e682fc3e785084bd497827bc5af
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 10:42:36 2010 -0700

    Fix symbol prefix for ffi_closure_SYSV_inner on Darwin.

commit 36849e7716b77aa25e4175d1f4be1b93dbf47aac
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:35:04 2010 -0700

    Whitespace/comment fixes.

commit b764162526854686e579a48b6ac5981f4eb886a3
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:04:34 2010 -0700

    Fix the script name (build-iphone.sh -> build-ios.sh)

commit a3d9aa85013341451ea97766485b7a11852d32b2
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:03:52 2010 -0700

    Update the autogenerated autoconf/automake files.

commit c71480eaf839f26bbdfcd8965f65ac4d8defddc0
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 09:02:05 2010 -0700

    Update automake/autoconf to conditionally build src/arm/trampoline.S if FFI_EXEC_TRAMPOLINE_TABLE is enabled.

commit 9af9291b73bc5e27ecd949bec8157f20426d65b8
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 08:52:33 2010 -0700

    Add the trampoline table generated by gentramp.sh

commit 68ce0c383ece84f69945d1c8c3fed03f7f9cb5d6
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sun Sep 19 08:38:19 2010 -0700

    Add a shell script that generates the ARM trampoline page.
    
    This generates a page of 340 trampolines, aligned within one page. The
    trampolines use pc-relative addressing to reference config data
    (context, jump address) from a page placed directly prior to the
    trampoline page. This can be used on systems -- such as iOS -- that do not
    support writable, executable memory by remapping the executable page
    containing the trampolines directly above a newly allocated writable
    config page.

commit 75af086be8830a8eafe9b1ebda199d788bcb0c62
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 18:12:19 2010 -0700

    Update autoconf files

commit 1ac92cca9b02ef8d6a769f0de1adccd5c9630355
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 18:08:14 2010 -0700

    Add autoconf check for W^X platforms that require a trampoline table.
    
    This adds the FFI_EXEC_TRAMPOLINE_TABLE. The flag is enabled for
    arm-apple-darwin, where PROT_EXEC on writable (or formerly writable) pages is
    not permitted for sandboxed binaries.

commit be72fbab29b7190c702d8e1ac3d149855e95879d
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 18:02:25 2010 -0700

    Use the correct host triple for arm/darwin

commit 70150bdf4509269965c72f2032bf74f285767afe
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 16:38:03 2010 -0700

    Add missing UNWIND entry; disables .pad on non-EABI targets.

commit 6b452bafaec498df975ba8ac4c99de174e5f74f7
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 16:21:32 2010 -0700

    Apple assembler support; fixed most gas/ELF-isms.

commit 8ddac835b6f8b54ede764d0ea977dee4c82e2d67
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 15:38:06 2010 -0700

    Fix placement of the __APPLE__ macro.

commit 69043d02936bb0579ac59b4ee1ed8dec38c38db7
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 15:32:08 2010 -0700

    Work-around libffi's FP ABI detection.
    
    On iOS, we must use the AAPCS floating point return value calling
    conventions. libffi's ARM implementation will only use these conventions
    if __SOFTFP__ is defined, which is not the case when GCC's
    -mfloat-abi defaults to 'softfp' instead of 'soft'. To work around this
    we manually define __SOFTFP__ for Apple platforms in the ARM-specific
    sysv.S.
    
    See also:
      http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iPhoneOSABIReference/Introduction/Introduction.html
      http://infocenter.arm.com/help/topic/com.arm.doc.ihi0042d/IHI0042D_aapcs.pdf

commit a82e6c354ea805114642a6e440abd0832cb1d23f
Author: Landon Fuller <landonf@bikemonkey.org>
Date:   Sat Sep 18 14:44:24 2010 -0700

    Add a stub iOS build script to drive autoconf

commit 84e8de6e9fc19388f6f1102c013b7d0d52940ecc
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Aug 6 01:35:12 2010 -0400

    Restore execute permissions

commit 3aeecc9eb1a6feba6549849cdd335c926415a4fc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 15:19:00 2010 -0400

    Fix win64-struct-args patch

commit 00d0b59cd13f89ab8b44bd894eb7f0a131fcb472
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 14:56:53 2010 -0400

    Fix debug build for windows

commit bda487e87064f27965155459a62dc52a744778d0
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 09:02:41 2010 -0400

    Don't use -safeseh with ml64

commit c1d28ba8d5029795af313ffeb81c97efc6d4c847
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 08:48:16 2010 -0400

    stdcall-x86-closure-fix

commit 5feacad4a56c85b3f23a267a30b2cf424cd59548
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 08:30:04 2010 -0400

    define generic symbols carefully

commit 10ea848900bc3018ac213cef52b44cacbe5cbebc
Author: Anthony Green <green@moxielogic.com>
Date:   Thu Aug 5 08:24:27 2010 -0400

    don't copy win64 struct args

commit d14178be4c49c3ada44a9fe9efe11d444372ddab
Author: Anthony Green <green@moxielogic.com>
Date:   Fri Jul 23 09:14:00 2010 -0400

    FFI_LAST_ABI fix

commit 3f5b1375ab1e2b8e3d593e21b27097a4a50f9b83
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Jul 12 14:39:18 2010 -0400

    rebase

commit eaf444eabc4c78703c0f98ac0197b1619c1b1bef
Author: Anthony Green <green@moxielogic.com>
Date:   Sat Jul 10 08:59:09 2010 -0400

    Fix selinux test

commit 630974152247f100ece4d44f10c3721bb4599fbf
Author: Anthony Green <green@gmachine.(none)>
Date:   Wed May 5 20:14:56 2010 -0400

    Micharl Kohler's spelling fixes

commit 9dc9a293f3d4589fcaf02dd4288c8cebaefa508e
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Apr 13 10:33:52 2010 -0400

    Rebase to latest GCC sources

commit f2c2a4fce9b3eca9f39b4f3545118bc256da4a73
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Apr 13 10:19:28 2010 -0400

    Remove warnings and add OS/2 support

commit c0b69e57d529e33d18b658cc5572a21e3663247c
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Mar 30 08:30:22 2010 -0400

    Dan Witte's windows build fixes.

commit 59a259f4d348f593b45f452309f4d020a28051c4
Author: Anthony Green <green@gmachine.(none)>
Date:   Mon Mar 15 05:57:51 2010 -0400

    Remove junk file

commit 3de1eb36d37a66829e606421939874d0d60d816d
Author: Anthony Green <green@gmachine.(none)>
Date:   Mon Mar 15 05:57:24 2010 -0400

    fix-comments patch

commit c3813b6d7f8a777700f4c5862190c0db148d4de8
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Jan 26 16:48:56 2010 -0500

    Rebuild Makefiles with automake 1.11.1 for CVE-2009-4029.

commit 8d27f68baa365bf883b6053c5f6bc819646d5434
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 11:35:37 2010 -0500

    Mention recent changes in README

commit ff3cd68b8cf2d9a28cad7aa9beff46236eacec8c
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 11:27:24 2010 -0500

    Add msvc.sh wrapper

commit cadeba6cb53414a1253582f1719c286665de7b6c
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 10:46:51 2010 -0500

    Microsoft Visual C port

commit 0739e7dc00db766eb64f502ec4137b817638c9a1
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 15 09:48:33 2010 -0500

    Add x86 Sun Studio compiler support

commit edfdfd2e85b8d01d2455934f1d7f4d7eb2f3cf1c
Author: Anthony Green <green@gmachine.(none)>
Date:   Wed Jan 13 02:56:19 2010 -0500

    Add closure example doc

commit 7b7a42f221cf171e8d09df34cac6dc1fd8458cc3
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Jan 12 09:14:14 2010 -0500

    Rebase from GCC

commit 4b18d1f73dc7733137869e4ab5725cb90c1c8fde
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 1 10:24:27 2010 -0500

    Add x86-64 MingW to README

commit c3042afaf3f84abbbe9c91bf9bc9896b0d9eb003
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Jan 1 08:08:02 2010 -0500

    Reset quilt patches post 3.0.9 merge with GCC

commit b0304e9679bdfec6ac45a57b5c96542697249418
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 31 11:32:40 2009 -0500

    Update version

commit 2e7e03d014d9c9bf40e97ce75cba089ad052fa6b
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 31 07:43:22 2009 -0500

    Final updates before 3.0.9

commit aea706c52825c8eee677ffa7fdbdd3aed1725492
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Dec 29 10:09:31 2009 -0500

    really 3.0.9rc12

commit 0cfe60e9d13f132b88995cfee41f2156344f6fa2
Author: Anthony Green <green@gmachine.(none)>
Date:   Tue Dec 29 10:06:04 2009 -0500

    3.0.9rc12

commit 14e2e92e8645804b6940b3e96c98e9f7f384a6b2
Author: Anthony Green <green@gmachine.(none)>
Date:   Sun Dec 27 21:03:33 2009 -0500

    3.0.9rc11

commit 884402787bf8eaf7ec207085037cf8ace2f660ec
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 12:57:23 2009 -0500

    HPUX support and avr32 test fixes.

commit 01c78756aff22efb1f122f8e93e068d7bf2185c7
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 10:05:18 2009 -0500

    3.0.9rc9

commit 70868464651320268d79c6894db5a50fdc11032a
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 09:58:03 2009 -0500

    Remove xfails for mips and arm

commit 838d4ad920ec85cf5ca3b511221d67f6d9a99024
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 09:57:27 2009 -0500

    Remove a bunch of xfails.

commit 7e37eaaf772f48906e69618c773b0a36c3927de9
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:46:50 2009 -0500

    Fix huge_struct for solaris

commit 07cc7a37194bc34064ebed7f2724333a798411c8
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:23:04 2009 -0500

    3.0.9rc8

commit 2b9be16ffabc81326128bc1bbdddff8ddc5d13d3
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:04:45 2009 -0500

    3.0.9rc8

commit 9458d88f676e9a21ab8993a54e16754b11687419
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 07:02:27 2009 -0500

    Rebase from GCC

commit 6a3412417593f068a04dc6163f4269cb295ad5ca
Author: Anthony Green <green@gmachine.(none)>
Date:   Sat Dec 26 06:51:33 2009 -0500

    Add Andreas Schwab's powerpc fix

commit 39c8792ece1043f41f4c395a2ce71f4cf0ff4674
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 21:52:28 2009 -0500

    3.0.9rc7

commit 1d04af52e3e24db69f742064694c22f8df5cc70e
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 09:50:36 2009 -0500

    Updated some mips XFAILs

commit 26e9509c9b7929bc4fcf697071699051a652b1fd
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 02:19:23 2009 -0500

    Clean up ChangeLog.libffi for older patches.

commit 9c157d3215e4393777f83eb6fa801df6528f40d7
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 02:15:40 2009 -0500

    Clean up undefine_AC_ARG_VAR_PRECIOUS patch.

commit d22de05b0bfc480766bc1240615ce2830eee71b8
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 02:04:23 2009 -0500

    Fix patches

commit 1fe3dc7c20dc4dbd8fed0d19c8618027d44ed971
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 01:39:00 2009 -0500

    Add windows support patch.

commit f7c0bc613a88f7dbc2d18b345c10fa438833c170
Author: Anthony Green <green@gmachine.(none)>
Date:   Fri Dec 25 01:22:11 2009 -0500

    3.0.9rc6

commit c7fa2da8260258c11ab1dc7ac06fb611a2c1b50f
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 07:22:44 2009 -0500

    3.0.9rc6

commit da11bece0fde66fc0268db3a01207dda857e25d2
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 05:34:46 2009 -0500

    Release 3.0.9rc5

commit e3399b11edeab546b066bfc18574f3edb905d0dc
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 01:09:32 2009 -0500

    Update README

commit 115ab36fceee69740a01ce49bc27e1908cc237b1
Author: Anthony Green <green@gmachine.(none)>
Date:   Thu Dec 24 00:22:00 2009 -0500

    Update missing changes for 3.0.9r4.

commit f8c7a245bf5a80bd7e730ec03fcad17c8dcfcb07
Author: Anthony Green <green@gmachine.(none)>
Date:   Wed Dec 23 23:46:22 2009 -0500

    Switch to quilt. Rebase to latest GCC.

commit ce806772f02387b9a74f6496a263a368bccd5d59
Merge: cd98813 dcc1f6b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:41:35 2009 -0400

    Merge branch 'master' of git@github.com:atgreen/libffi

commit dcc1f6b4f1ffd2713bf68b791a13f85d455c8b1b
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:29:33 2009 -0400

    More clean up.

commit 2829f5941a223b9d851d8ab6318318e6197d7e01
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:28:03 2009 -0400

    Clean up

commit cd98813de517ea64041637e3e78d27a001d6d3b4
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:25:29 2009 -0400

    From Jens Rehsack.  Fix for 64-bit AIX.

commit e4a91de766acc47f6c50f13cc11719a65e23ecba
Author: Anthony Green <green@moxielogic.com>
Date:   Mon Oct 5 00:16:17 2009 -0400

    From Abdulaziz Ghuloum.  Adds special case for Snow Leopard.

commit 3425a763bcdaadb8b430226f427ec833afdcc96a
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 23:57:29 2009 -0400

    Fix detection of free/openbsd.  From Alexis Ballier.

commit 2340e7a777902de61499d47823ad8d5e0eeb6203
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 23:53:17 2009 -0400

    AVR support

commit 5cbe2058c128e848446ae79fe15ee54260a90559
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 23:53:11 2009 -0400

    Initial stand-alone patch.

commit c6dddbd02bad9654ed58cdb0feb360934d105dec
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 08:11:33 2009 -0400

    Initial commit

commit 5ffc0c37486fb1538bccc0ca7acc807d4f1af932
Author: Anthony Green <green@moxielogic.com>
Date:   Sun Oct 4 07:58:22 2009 -0400

    Update version to 3.0.9rc1.  Add more useful things to .gitignore.

commit bd29f83ee9f6fa6b65adee9d3f57834f364d9887
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 29 12:07:26 2009 -0400

    Add .gitignore

commit 9474f853f83e3f0167c1b306177321bfcc93e56d
Author: Anthony Green <green@moxielogic.com>
Date:   Tue Sep 29 11:13:02 2009 -0400

    Remove old CVSROOT files.

commit 0c25275ec24bfe2c2c25a000465f0950ef9dd51b
Author: twall <twall>
Date:   Wed Aug 19 12:57:34 2009 +0000

    Apply Dave Korn's cygwin/GCC changes

commit 39228c27ed3f677a95b46380a8d31602b5777e1a
Author: aph <aph>
Date:   Tue Jun 16 18:00:47 2009 +0000

    2009-06-16  Wim Lewis  <wiml@hhhh.org>
    
            * src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are
            supposed to be callee-saved.
            * src/powerpc/sysv.S (small_struct_return_value): Fix overrun of
            return buffer for odd-size structs.

commit 5e93cc704d127c2c8ae7f5d2cef621145d43e777
Author: aph <aph>
Date:   Tue Jun 16 17:41:47 2009 +0000

    2009-06-16  Andreas Tobler  <a.tobler@schweiz.org>
    
            PR libffi/40444
            * testsuite/lib/libffi-dg.exp (libffi_target_compile): Add
            allow_stack_execute for Darwin.

commit b509af8959dc371b92392c623522ea6f4946a71d
Author: aph <aph>
Date:   Tue Jun 16 16:17:52 2009 +0000

    2009-06-16  Andrew Haley  <aph@redhat.com>
    
            * configure.ac (TARGETDIR): Add missing blank lines.
            * configure: Regenerate.

commit d57e96dc56ee76fbbb9b59d73aeaa92354db5ecb
Author: aph <aph>
Date:   Tue Jun 16 09:59:02 2009 +0000

    2009-06-16  Andrew Haley  <aph@redhat.com>
    
            * testsuite/libffi.call/cls_align_sint64.c,
            testsuite/libffi.call/cls_align_uint64.c,
            testsuite/libffi.call/cls_longdouble_va.c,
            testsuite/libffi.call/cls_ulonglong.c,
            testsuite/libffi.call/return_ll1.c,
            testsuite/libffi.call/stret_medium2.c: Fix printf format
            specifiers.
            * testsuite/libffi.call/huge_struct.c: Ad x86 XFAILs.
            * testsuite/libffi.call/float2.c: Fix dg-excess-errors.
            * testsuite/libffi.call/ffitest.h,
            testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.

commit b01d6d1982c9e020507029bfd5a58a8c60d111fa
Author: aph <aph>
Date:   Tue Jun 16 09:44:54 2009 +0000

    2009-06-16  Andrew Haley  <aph@redhat.com>
    
            * testsuite/libffi.call/err_bad_typedef.c: xfail everywhere.
            * testsuite/libffi.call/err_bad_abi.c: Likewise.

commit 35b6ded138591900a88055a8a8ac1fadc29a76d6
Author: aph <aph>
Date:   Fri Jun 12 15:29:20 2009 +0000

    2009-06-11  Kaz Kojima  <kkojima@gcc.gnu.org>
    
            * testsuite/libffi.call/cls_longdouble_va.c: Add xfail sh*-*-linux-*.
            * testsuite/libffi.call/err_bad_abi.c: Add xfail sh*-*-*.
            * testsuite/libffi.call/err_bad_typedef.c: Likewise.

commit acc46605f2d95d67d69398e7644610f10a157ce3
Author: aph <aph>
Date:   Fri Jun 12 14:21:28 2009 +0000

    2009-06-12  Andrew Haley  <aph@redhat.com>
    
            * ChangeLog.libffi: testsuite/libffi.call/cls_align_sint64.c,
            testsuite/libffi.call/cls_align_uint64.c,
            testsuite/libffi.call/cls_ulonglong.c,
            testsuite/libffi.call/return_ll1.c,
            testsuite/libffi.call/stret_medium2.c: Fix printf format
            specifiers.
            testsuite/libffi.special/unwindtest.cc: include stdint.h.

commit 16d1996ed0797bd7c11aca2b0fe7e7748751aaf6
Author: twall <twall>
Date:   Thu Jun 11 14:27:42 2009 +0000

    update changelog

commit 92a515c33efe91be3cb0258f01c63aff208489c7
Author: twall <twall>
Date:   Thu Jun 11 14:27:28 2009 +0000

    use ffi_closure_alloc instead of stack-based closure

commit e4363160ba9e50167f9ca0a7399d537a1d2cd0ce
Author: twall <twall>
Date:   Thu Jun 11 14:26:23 2009 +0000

    remove unused extern

commit 1dc2781d2ba38f5f000ff70069d617fb21e1d2af
Author: twall <twall>
Date:   Thu Jun 11 11:36:16 2009 +0000

    remove not-yet-applied changelog entries

commit bb27735fe689dac97ec0dc847ed8d3d519620109
Author: twall <twall>
Date:   Wed Jun 10 10:42:36 2009 +0000

    add win64 support

commit b2a54c100c74854a409820817d54617fdda39eb8
Author: aph <aph>
Date:   Mon Jun 8 16:50:49 2009 +0000

    2009-06-08  Andrew Haley  <aph@redhat.com>
    
            * testsuite/libffi.call/err_bad_abi.c: Add xfails.
            * testsuite/libffi.call/cls_longdouble_va.c: Add xfails.
            * testsuite/libffi.call/cls_dbls_struct.c: Add xfail x86_64-*-linux-*.
            * testsuite/libffi.call/err_bad_typedef.c: Add xfails.
    
            * testsuite/libffi.call/stret_medium2.c: Add __UNUSED__ to args.
            * testsuite/libffi.call/stret_medium.c: Likewise.
            * testsuite/libffi.call/stret_large2.c: Likewise.
            * testsuite/libffi.call/stret_large.c:  Likewise.

commit 25723e7141f73d3736d7244b980c89d97db852b6
Author: aph <aph>
Date:   Fri Jun 5 13:03:40 2009 +0000

    2009-06-05  Andrew Haley  <aph@redhat.com>
    
            * src/x86/win32.S (_ffi_closure_STDCALL): Import from gcc.

commit 70758199c7cd41f411987360ccb302b497a56dc9
Author: aph <aph>
Date:   Thu Jun 4 16:29:58 2009 +0000

     2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/powerpc/ffitarget.h: Fix misapplied merge from gcc.

commit e8bb12563f9aa23ddf36fa6a5b92b16b5c3e1a7f
Author: aph <aph>
Date:   Thu Jun 4 14:59:18 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/mips/o32.S,
            src/mips/n32.S: Fix licence formatting.

commit d66a8e32c3671479e3ce0f6819673e5932ba6b7f
Author: aph <aph>
Date:   Thu Jun 4 14:43:40 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/x86/darwin.S: Fix licence formatting.
            src/x86/win32.S: Likewise.
            src/sh64/sysv.S: Likewise.
            src/sh/sysv.S: Likewise.

commit 7c3b7fd6b5db746b5b09a718f3044f811372f941
Author: aph <aph>
Date:   Thu Jun 4 14:39:20 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/sh64/ffi.c: Remove lint directives.  Was missing from merge
            of Andreas Tobler's patch from 2006-04-22.

commit 1a2f93a8b362db13638afd9fcb3f2650180bfa17
Author: aph <aph>
Date:   Thu Jun 4 10:45:51 2009 +0000

    2009-06-04  Andrew Haley  <aph@redhat.com>
    
            * src/sh/ffi.c: Apply missing hunk from Alexandre Oliva's patch of
            2007-03-07.

commit 944c95cf7aaaaf7c5fa368cda4673dd38f45020e
Author: aph <aph>
Date:   Wed Jun 3 17:42:56 2009 +0000

    2009-05-22  Dave Korn  <dave.korn.cygwin@gmail.com>
    
           * src/x86/win32.S (_ffi_closure_STDCALL):  New function.
           (.eh_frame):  Add FDE for it.
    
    2009-05-22  Dave Korn  <dave.korn.cygwin@gmail.com>
    
           * configure.ac:  Also check if assembler supports pc-relative
           relocs on X86_WIN32 targets.
           * configure:  Regenerate.
           * src/x86/win32.S (ffi_prep_args):  Declare extern, not global.
           (_ffi_call_SYSV):  Add missing function type symbol .def and
           add EH markup labels.
           (_ffi_call_STDCALL):  Likewise.
           (_ffi_closure_SYSV):  Likewise.
           (_ffi_closure_raw_SYSV):  Likewise.
           (.eh_frame):  Add hand-crafted EH data.
    
    2008-11-21  Eric Botcazou  <ebotcazou@adacore.com>
    
           * src/sparc/ffi.c (ffi_prep_cif_machdep): Add support for
           signed/unsigned int8/16 return values.
           * src/sparc/v8.S (ffi_call_v8): Likewise.
           (ffi_closure_v8): Likewise.
    
    2008-03-26  Kaz Kojima  <kkojima@gcc.gnu.org>
    
           * src/sh/sysv.S: Add .note.GNU-stack on Linux.
           * src/sh64/sysv.S: Likewise.
    
    2008-03-26  Daniel Jacobowitz  <dan@debian.org>
    
           * src/arm/sysv.S: Fix ARM comment marker.

commit 00fa972430bb1535a4b34bf029ebcad500027b0c
Author: twall <twall>
Date:   Sat Dec 27 16:59:05 2008 +0000

    properly glob-match

commit f5179e6794ac35af26fe86e468b8508a7a570c55
Author: twall <twall>
Date:   Fri Dec 26 19:06:28 2008 +0000

    Mark XFAIL on longdouble tests for x86_64/mingw

commit 80e2b5a749208c8a18f994ec5bee84594d051cc8
Author: twall <twall>
Date:   Mon Dec 22 15:21:15 2008 +0000

    clean up tests for win64 use

commit 7063d9996f742576095c7b0eb5016c0f9a670aec
Author: green <green>
Date:   Fri Dec 19 16:13:46 2008 +0000

    Version 3.0.8 with x86-solaris support

commit bdfeb13f0df0a63b19d62597517237b54d92228b
Author: green <green>
Date:   Fri Dec 19 15:47:44 2008 +0000

    Bump to 3.0.7

commit 69205de17d6ac4c11d4ba92d6a5b40a0c5f246b2
Author: green <green>
Date:   Thu Jul 24 18:03:48 2008 +0000

    Many test fixes (failures due to excessive compiler warnings).

commit 260d513fea00b3613fe957a44a157fe72c4ca29e
Author: green <green>
Date:   Thu Jul 17 13:13:52 2008 +0000

    Version 3.0.6.  sh/sh64 fixes.

commit 3704031875feabb74e3655ed03cff4c2b3c76ac6
Author: green <green>
Date:   Thu Apr 3 18:57:57 2008 +0000

    Rev 3.0.5.

commit 8406f5f48f7f58a1c982a93a95d521cf82b3241f
Author: green <green>
Date:   Thu Apr 3 18:57:34 2008 +0000

    3.0.5

commit 23a9e73212b62f9684cedb0ce70e92c59cfdaffa
Author: green <green>
Date:   Wed Mar 5 00:07:02 2008 +0000

    2008-03-04  Anthony Green  <green@redhat.com>
                Blake Chaffin
                hos@tamanegi.org
    
            * testsuite/libffi.call/cls_align_longdouble_split2.c
              testsuite/libffi.call/cls_align_longdouble_split.c
              testsuite/libffi.call/cls_dbls_struct.c
              testsuite/libffi.call/cls_double_va.c
              testsuite/libffi.call/cls_longdouble.c
              testsuite/libffi.call/cls_longdouble_va.c
              testsuite/libffi.call/cls_pointer.c
              testsuite/libffi.call/cls_pointer_stack.c
              testsuite/libffi.call/err_bad_abi.c
              testsuite/libffi.call/err_bad_typedef.c
              testsuite/libffi.call/huge_struct.c
              testsuite/libffi.call/stret_large2.c
              testsuite/libffi.call/stret_large.c
              testsuite/libffi.call/stret_medium2.c
              testsuite/libffi.call/stret_medium.c: New tests from Apple.

commit 429e37d3ad653e52e75bf725c883ab79e859f89a
Author: green <green>
Date:   Thu Feb 28 04:50:19 2008 +0000

    clicky

commit 51e79c428348c033314f54bcb30f7e388c59e347
Author: green <green>
Date:   Thu Feb 28 04:47:35 2008 +0000

    getclicky

commit affcab04e280efeace45a72c4dc6152c0e4f1b7f
Author: green <green>
Date:   Tue Feb 26 19:01:53 2008 +0000

    2008-02-26  Jakub Jelinek  <jakub@redhat.com>
                Anthony Green  <green@redhat.com>
    
            * src/alpha/osf.S: Add .note.GNU-stack on Linux.
            * src/s390/sysv.S: Likewise.
            * src/powerpc/linux64.S: Likewise.
            * src/powerpc/linux64_closure.S: Likewise.
            * src/powerpc/ppc_closure.S: Likewise.
            * src/powerpc/sysv.S: Likewise.
            * src/x86/unix64.S: Likewise.
            * src/x86/sysv.S: Likewise.
            * src/sparc/v8.S: Likewise.
            * src/sparc/v9.S: Likewise.
            * src/m68k/sysv.S: Likewise.
            * src/ia64/unix.S: Likewise.
            * src/arm/sysv.S: Likewise.

commit 59689d5522c159a3ac967adb6b891cf5f22c890f
Author: green <green>
Date:   Tue Feb 26 17:40:51 2008 +0000

    2008-02-26  Anthony Green  <green@redhat.com>
                Thomas Heller  <theller@ctypes.org>
    
            * src/x86/ffi.c (ffi_closure_SYSV_inner): Change C++ comment to C
            comment.

commit b13c84cf4668828ff8429ba4a2f94cd1eb574ae0
Author: green <green>
Date:   Tue Feb 26 17:38:15 2008 +0000

    2008-02-26  Anthony Green  <green@redhat.org>
                Thomas Heller <theller@ctypes.org>
    
            * include/ffi.h.in: Change void (*)() to void (*)(void).

commit 265289f679ffd24a88ae1aa2cef0e4aa14703cd8
Author: green <green>
Date:   Tue Feb 26 17:34:36 2008 +0000

    2008-02-26  Anthony Green  <green@spindazzle.org>
    
            * src/alpha/ffi.c: Change void (*)() to void (*)(void).
            src/alpha/osf.S, src/arm/ffi.c, src/frv/ffi.c, src/ia64/ffi.c,
            src/ia64/unix.S, src/java_raw_api.c, src/m32r/ffi.c,
            src/mips/ffi.c, src/pa/ffi.c, src/pa/hpux32.S, src/pa/linux.S,
            src/powerpc/ffi.c, src/powerpc/ffi_darwin.c, src/raw_api.c,
            src/s390/ffi.c, src/sh/ffi.c, src/sh64/ffi.c, src/sparc/ffi.c,
            src/x86/ffi.c, src/x86/unix64.S, src/x86/darwin64.S,>         src/x86/ffi64.c: Ditto.

commit fb5036cd6d0f909918e90f7d2d9fd80d46682d5d
Author: green <green>
Date:   Sun Feb 24 17:25:25 2008 +0000

    fix date

commit 40bec108e7d0181e6c9928aa7a33187bcc0f3d6f
Author: green <green>
Date:   Sun Feb 24 17:25:02 2008 +0000

    New release

commit b922048fa82ea109a4af269ee47bbc2a586bbac2
Author: green <green>
Date:   Sun Feb 24 17:24:00 2008 +0000

    2008-02-24  Anthony Green  <green@spindazzle.org>
    
            * configure.ac: Accept openbsd*, not just openbsd.
            Bump version to 3.0.4.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.

commit affca4b92d06e5554784c7e9b233029ef83f7d8a
Author: green <green>
Date:   Fri Feb 22 21:53:29 2008 +0000

    sync readme with web page.

commit 3e53d8752ea74859b4c64fbbf935e62a937c4d78
Author: green <green>
Date:   Fri Feb 22 21:52:38 2008 +0000

    New release

commit 4d92f6c8e78fe084be65f3e8b58b859901ba796d
Author: green <green>
Date:   Fri Feb 22 21:49:46 2008 +0000

    2008-02-22  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.3.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.  Clean up test docs.

commit 0e185fa11a01f816824ba2687ed3715ab6219bef
Author: green <green>
Date:   Fri Feb 22 21:43:18 2008 +0000

    Update configure script.

commit f73986bd211cfbbaa593d1309504d0dc68626191
Author: green <green>
Date:   Fri Feb 22 21:40:53 2008 +0000

    2008-02-22  Bjoern Koenig  <bkoenig@alpha-tierchen.de>
                Andreas Tobler  <a.tobler@schweiz.org>
    
            * configure.ac: Add amd64-*-freebsd* target.
            * configure: Regenerate.

commit 0208f68fe5de30c33e7f70ebc281635917013f5a
Author: green <green>
Date:   Fri Feb 22 21:15:44 2008 +0000

    2008-02-22  Thomas Heller <theller@ctypes.org>
    
            * configure.ac: Add x86 OpenBSD support.
            * configure: Rebuilt.

commit 01adb0e638a86cf0d5e668ed8e08be9b0cd2505f
Author: green <green>
Date:   Thu Feb 21 16:17:26 2008 +0000

    Fix README.

commit 1edd4563225981a14f7d4fb9919b1ed88e38082f
Author: green <green>
Date:   Thu Feb 21 13:39:01 2008 +0000

    3.0.2

commit c9b542800864e2204db6e83f3843a17813ba6165
Author: green <green>
Date:   Thu Feb 21 13:36:43 2008 +0000

    add missing file

commit d5fa5633d5c8d3c212a2267cfa38fba4091baa2c
Author: green <green>
Date:   Thu Feb 21 13:36:19 2008 +0000

    2008-02-21  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.2.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.
    
    2008-02-21  Björn König <bkoenig@alpha-tierchen.de>
    
            * src/x86/freebsd.S: New file.
            * configure.ac: Add x86 FreeBSD support.
            * Makefile.am: Ditto.

commit ac35bfc6fcadd8880c1efce36724820f9074b318
Author: green <green>
Date:   Sat Feb 16 01:03:56 2008 +0000

    Updated

commit f7942975fee7b0162647dd79e2652615b737e98e
Author: green <green>
Date:   Sat Feb 16 01:02:00 2008 +0000

    2008-02-15  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.1.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * libtool-version: Increment revision.
            * README: Update for new release.
    
    2008-02-15  David Daney  <ddaney@avtrex.com>
    
            * src/mips/ffi.c: Remove extra '>' from include directive.
            (ffi_prep_closure_loc): Use clear_location instead of tramp.

commit 59aa6bb1bfc86a610ac1a8b123443efd75854dd1
Author: green <green>
Date:   Fri Feb 15 20:52:26 2008 +0000

    Add more platforms.

commit 45a45ab99074448be0ae1a8d2ade50d28b60f8de
Author: green <green>
Date:   Fri Feb 15 19:16:36 2008 +0000

    3.0 notes

commit 4db74cbea888c9f1251b85baf00d99b83d3b994d
Author: green <green>
Date:   Fri Feb 15 19:10:26 2008 +0000

    Update

commit c3e1101ffabf44d8a2ee46e03ba9ab582050a825
Author: green <green>
Date:   Fri Feb 15 18:43:40 2008 +0000

    2008-02-15  Anthony Green  <green@redhat.com>
    
            * configure.ac: Bump version to 3.0.0,
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
    
    2008-02-15  David Daney  <ddaney@avtrex.com>
    
            * src/mips/ffi.c (USE__BUILTIN___CLEAR_CACHE):
            Define (conditionally), and use it to include cachectl.h.
            (ffi_prep_closure_loc): Fix cache flushing.
            * src/mips/ffitarget.h (_ABIN32, _ABI64, _ABIO32): Define.

commit 7e0cc12e9233ad285db41ce8dbdda61ed2a7fb06
Author: green <green>
Date:   Fri Feb 15 15:51:03 2008 +0000

    New release

commit 2d7dc885ec40d53866f29984d595511942c8b686
Author: green <green>
Date:   Fri Feb 15 15:30:26 2008 +0000

            * man/ffi_call.3, man/ffi_prep_cif.3, man/ffi.3:
            Update dates and remove all references to ffi_prep_closure.
            * configure.ac: Bump version to 2.99.9.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.

commit a0525f03eeaaed33b1eac80e0c016455cee3615d
Author: green <green>
Date:   Fri Feb 15 15:14:30 2008 +0000

    New release.

commit 2b30dfb3146ee26ad956d00ee05eb835ca1a95b4
Author: green <green>
Date:   Fri Feb 15 15:12:43 2008 +0000

            * man/ffi_prep_closure.3: Delete.
            * man/Makefile.am (EXTRA_DIST): Remove ffi_prep_closure.3.
            (man_MANS): Ditto.
            * man/Makefile.in: Rebuilt.
            * configure.ac: Bump version to 2.99.8.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.

commit bf41e64840ebcb6cc31a6f028253c1fde82705d8
Author: green <green>
Date:   Fri Feb 15 01:56:50 2008 +0000

    Update.

commit 4d39ddee677bbb61d621893b91e11eac5e7c4af7
Author: green <green>
Date:   Fri Feb 15 01:24:06 2008 +0000

    * configure.ac: Bump version to 2.99.7.
            * configure, doc/stamp-vti, doc/version.texi: Rebuilt.
            * include/ffi.h.in LICENSE src/debug.c src/closures.c
              src/ffitest.c src/s390/sysv.S src/s390/ffitarget.h
              src/types.c src/m68k/ffitarget.h src/raw_api.c src/frv/ffi.c
              src/frv/ffitarget.h src/sh/ffi.c src/sh/sysv.S
              src/sh/ffitarget.h src/powerpc/ffitarget.h src/pa/ffi.c
              src/pa/ffitarget.h src/pa/linux.S src/java_raw_api.c
              src/cris/ffitarget.h src/x86/ffi.c src/x86/sysv.S
              src/x86/unix64.S src/x86/win32.S src/x86/ffitarget.h
              src/x86/ffi64.c src/x86/darwin.S src/ia64/ffi.c
              src/ia64/ffitarget.h src/ia64/ia64_flags.h src/ia64/unix.S
              src/sparc/ffi.c src/sparc/v9.S src/sparc/ffitarget.h
              src/sparc/v8.S src/alpha/ffi.c src/alpha/ffitarget.h
              src/alpha/osf.S src/sh64/ffi.c src/sh64/sysv.S
              src/sh64/ffitarget.h src/mips/ffi.c src/mips/ffitarget.h
              src/mips/n32.S src/mips/o32.S src/arm/ffi.c src/arm/sysv.S
              src/arm/ffitarget.h src/prep_cif.c: Update license text.

commit d58b032b41a12bd3d72148da6822ab59dd698ff9
Author: green <green>
Date:   Fri Feb 15 00:59:25 2008 +0000

    New release

commit 91e5478df6d5ac63efbb10f025807b4606afab56
Author: green <green>
Date:   Fri Feb 15 00:50:30 2008 +0000

    Update supported platforms.  Bump version.

commit bd0768f877c8f7fd0d36af2191b203d4d057b1ce
Author: green <green>
Date:   Fri Feb 15 00:45:33 2008 +0000

    * configure.ac: Bump version to 2.99.5.
            * configure: Rebuilt.
            * Makefile.am (EXTRA_DIST): Add darwin64.S
            * Makefile.in: Rebuilt.
            * testsuite/lib/libffi-dg.exp: Remove libstdc++ bits from GCC tree.
            * LICENSE: Update WARRANTY.

commit 49d345f767bd2cfee951bceaab6a1a07986cf293
Author: green <green>
Date:   Thu Feb 14 23:43:27 2008 +0000

    update license reference

commit 12ac48fc79b515db7c9accd9fcaa87b0dcefccdb
Author: green <green>
Date:   Thu Feb 14 23:42:08 2008 +0000

    Update WARRANTY

commit 6b91c41da87e78552f2990dfc504a0a3349f340b
Author: green <green>
Date:   Thu Feb 14 23:38:27 2008 +0000

    fix tarball reference

commit 2b59579e3533334bee4788e076b4e520c2ab518c
Author: green <green>
Date:   Thu Feb 14 23:35:58 2008 +0000

    First update in 5 years!

commit 6cbdf3f3a3777a93382a2d508ddef1c353ff0955
Author: green <green>
Date:   Thu Feb 14 22:44:06 2008 +0000

    Fix .pc file bug and bump version

commit 1d1dc81104b209df3cfef0840735c59efae2f655
Author: green <green>
Date:   Thu Feb 14 22:03:37 2008 +0000

    Add man files and info file. Update README.  Tag as 2.99.3.

commit f045a2367f793fa8b01534cf2e25bcc46afc8fa1
Author: tromey <tromey>
Date:   Thu Feb 14 20:46:57 2008 +0000

    Move entry from ChangeLog to ChangeLog.libffi

commit 6257f07d1a9efd27fa83639cfba281f5d3188731
Author: tromey <tromey>
Date:   Thu Feb 14 20:33:17 2008 +0000

            * aclocal.m4, Makefile.in, configure, fficonfig.h.in: Rebuilt.
            * mdate-sh, texinfo.tex: New files.
            * Makefile.am (info_TEXINFOS): New variable.
            * doc/libffi.texi: New file.
            * doc/version.texi: Likewise.

commit 4232af563c5509c3760a33e3684a2b958be755e1
Author: green <green>
Date:   Thu Feb 14 16:19:21 2008 +0000

            * Makefile.am (AM_CFLAGS): Don't compile with -D.
            (lib_LTLIBRARIES): Define.
            (toolexeclib_LIBRARIES): Undefine.
            * Makefile.in: Rebuilt.
            * configure.ac: Reset version to 2.99.1.
            * configure.in: Rebuilt.

commit 961543615c31f092b578a4b4cda914db64f9d0fa
Author: green <green>
Date:   Thu Feb 14 15:57:40 2008 +0000

    Fix typo.

commit aeb0abab87222f637fbf352d4effd3b76b52ed26
Author: green <green>
Date:   Thu Feb 14 15:54:27 2008 +0000

          * libffi.pc.in: Usse @PACKAGE_NAME@ and @PACKAGE_VERSION@.
            * configure.ac: Reset version to 2.99.1.
            * configure.in: Rebuilt.
            * Makefile.am (EXTRA_DIST): Add ChangeLog.libffi.
            * Makefile.in: Rebuilt.
            * LICENSE: Update copyright notice.

commit 77fe243556433eae119d8bd7469bfccdd5bd8a1a
Author: green <green>
Date:   Thu Feb 14 15:37:00 2008 +0000

    Fix make dist again

commit d4970cf4529459bf0f0e43c602cac396786c6802
Author: green <green>
Date:   Thu Feb 14 15:18:56 2008 +0000

    Fix make dist

commit f0b1462f2d3024922ad71421bd5c4311fcb16da5
Author: green <green>
Date:   Thu Feb 14 15:01:41 2008 +0000

    Use pkgconfig.  Increment libtool CURRENT version.

commit 27e52f33baa069012a5adb2a3807f9ca1f2165ab
Author: green <green>
Date:   Sun Feb 3 13:59:48 2008 +0000

    Fix header installs when using DESTDIR.

commit fadab28eb6e33fb6dcdd7b9323e147142216d548
Author: twall <twall>
Date:   Sun Feb 3 12:32:22 2008 +0000

    update changelog

commit b5e44c8dfa92c87b99762c303cf5574a16db8f27
Author: twall <twall>
Date:   Sun Feb 3 01:12:32 2008 +0000

    offset from code base address, not data base address

commit f359848d1a995c0e44566d815f218729dc996e22
Author: green <green>
Date:   Fri Feb 1 21:29:43 2008 +0000

    Fix header installs.

commit c30df49e157c7bfc8e19e3f8a72b9464fe225e54
Author: green <green>
Date:   Fri Feb 1 21:13:55 2008 +0000

    Revert my broken changes to twall's patch.

commit 675561bb9aa0732c76698df10dd3007b5d0ec759
Author: green <green>
Date:   Thu Jan 31 13:44:25 2008 +0000

    Fix make dist .

commit abc0bbf3813dc43e23d4c23e6fe794dbf287639b
Author: green <green>
Date:   Thu Jan 31 11:58:57 2008 +0000

    Add Tim Wall's x86 windows patch.

commit e332366d15a31198735b593ec8f7fc0558d783b8
Author: green <green>
Date:   Wed Jan 30 13:21:02 2008 +0000

    Add HJ's -fomit-frame-pointer struct return fix

commit d4204240392af5b7750a08671b08e9c22dff5e93
Author: green <green>
Date:   Wed Jan 30 12:42:34 2008 +0000

    Clean up for new automake.

commit f4932dd020df574637c9fb3fc1bb18e5a8f304cc
Author: green <green>
Date:   Wed Jan 30 12:40:25 2008 +0000

    Fixes to run testsuite

commit 085520ddc8db6a916bfc416b871fcb2d00074d40
Author: green <green>
Date:   Tue Jan 29 15:16:43 2008 +0000

    New files from gcc tree.

commit 77175b3f7234e4875a4ef554ed1fe9fdc4133794
Author: green <green>
Date:   Tue Jan 29 15:15:20 2008 +0000

    Latest gcc svn sources

commit 2544e45a0b2b634053df02da3a2ed9680eeed2a1
Author: green <green>
Date:   Tue Jan 29 14:28:13 2008 +0000

    Install ffitarget.h in $prefix/include.

commit 6002211b1cc4daeb587d054b4f83968bda2c981e
Author: green <green>
Date:   Tue Jan 29 12:30:10 2008 +0000

    Add new files.

commit ccabd2b16be883cd03e5f0cd88ccfdd6ca39239d
Author: green <green>
Date:   Tue Jan 29 12:28:15 2008 +0000

    Merge from gcc

commit e680ecfbfca1da8d1823e48bc89b8375e66e128b
Author: tromey <tromey>
Date:   Sun Dec 24 23:12:15 2006 +0000

    Pulled in libffi from gcc trunk.
    Fixed build and install for standalone use.

commit e7ba08965942ce872fdbc69f70f9848cc3d0bad6
Author: root <root>
Date:   Sun Jun 4 23:22:24 2006 +0000

    sourcware.org

commit 0cd4aa24e21aaa964dfbdebc25ec5c8188049375
Author: root <root>
Date:   Sun May 30 01:51:57 2004 +0000

    Add LockDir

commit 5826120fbd940d26cca76ed2522187505581e1ed
Author: green <green>
Date:   Tue Nov 4 06:09:08 2003 +0000

    Add link to Gianni's web site.

commit 220aa4b27db42d7ffaac5056000d5179f00d5ea3
Author: jsm <jsm>
Date:   Tue Jan 21 08:07:42 2003 +0000

    Newer, better, increased from before!  (list of acceptable anon usernames)

commit 1c3adc892cc1403dc4d3d7003a2385899836612e
Author: green <green>
Date:   Fri Dec 6 01:28:03 2002 +0000

    Fixed Cygnus references.

commit 4af66bb62fab9a8e318af3bf01e5486596a0c8d4
Author: green <green>
Date:   Sun Oct 21 19:18:42 2001 +0000

    Testsuite fixes.

commit 5435965f9015ce40584c98d3816c3d05e7de1d21
Author: green <green>
Date:   Mon Apr 23 00:32:03 2001 +0000

            * include/ffi_common.h: Delete, after moving contents to...
            * include/ffi_private.h: Subsume contents of ffi_common.h.
            * include/Makefile.am (noinst_HEADERS): Remove ffi_common.h.
            * include/Makefile.in: Rebuilt.
            * arm/ffi.c, m68k/ffi.c, mips/ffi.c, powerpc/ffi.c, s390/ffi.c,
            ia64/ffi.c: Include ffi_private.h, not ffi_common.h.
            * alpha/ffi.c, sparc/ffi.c, x86/ffi.c: Don't include ffi_common.h.
            * types.c, raw_api.c, java_raw_api.c, prep_cif.c: Don't include
            ffi_common.h.
            * debug.c: Include ffi_private.h instead of ffi_common.h.
    
            * mips/ffi.c (calc_n32_struct_flags): Make static.
            (FIX_ARGP): Remove call to debugging routine ffi_stop_here.
    
            * mips/n32.S: Include ffi_private.h.
            * mips/o32.S: Include ffi_private.h.

commit 6fdb7de0fe3b7385e1fd78812ae69d9b3069d994
Author: green <green>
Date:   Sun Apr 22 19:38:34 2001 +0000

            * README: Update some comments.
    
            * Makefile.am (SUBDIRS): Add include so ffi.h gets installed.
            * Makefile.in: Rebuilt.
    
            * include/ffi.h: Change ALPHA to __alpha__ and SPARC to __sparc__.
            * types.c: Ditto.
            * prep_cif.c (ffi_prep_cif): Ditto.
    
            * alpha/ffi.c, alpha/osf.S, sparc/ffi.c, sparc/v8.S, sparc/v9.S:
            Include ffi_private.h.
    
            * include/ffi_private.h (FFI_TYPE_LAST): Define.

commit bc7144b01b9707ef35f1a2e3e6996e005e82953a
Author: green <green>
Date:   Sun Apr 22 18:28:36 2001 +0000

    Moved files from old home

commit e57279831e20368c1aa1d2b35462b8629be73959
Author: green <green>
Date:   Sun Apr 22 18:23:47 2001 +0000

    These are dead.

commit 7247436b5fe71767b29dc02b4da0fe18b08082e6
Author: green <green>
Date:   Sun Apr 22 18:22:43 2001 +0000

    All these files live somewhere else now.

commit a8b0d40ff908e275028f676870c31d0d70274a98
Author: green <green>
Date:   Sun Apr 22 18:17:14 2001 +0000

    Many changes.  Not quite there yet.

commit f893d2273355710a290a26faebf5f12c3a34d0e3
Author: green <green>
Date:   Sun Apr 22 18:13:22 2001 +0000

    Moved m68k files

commit 688ddfeced89cbb9d37b53005e1f7f2b9c78a8d7
Author: green <green>
Date:   Sun Apr 22 18:12:33 2001 +0000

    New, target indepentent, header

commit f9e40776d488d5ecf43b3ae21444a1a2f6eca528
Author: green <green>
Date:   Sun Apr 22 18:11:57 2001 +0000

    Many changes.

commit 8c1d2eb47f6bc314c431b75c85c107e8e43c4a76
Author: green <green>
Date:   Sun Apr 22 18:10:47 2001 +0000

    Many changes

commit 1359dfc6582680a158b3caa3efb7a368da4aa12d
Author: green <green>
Date:   Sun Apr 22 18:10:20 2001 +0000

    Moved ia64 files

commit 6e2de5eee316a4579869aff50c7c5f6f478582d8
Author: green <green>
Date:   Sun Apr 22 18:08:11 2001 +0000

    Moved arm files

commit 8807355af34cba8ffe87aee51152dfccec2771fa
Author: green <green>
Date:   Mon Apr 9 00:58:38 2001 +0000

    Many many updates.  Merge from gcc and then some.

commit f7e9f91adec4ff1c2e7a13b3de81d2c5a3f55e7e
Author: green <green>
Date:   Mon Apr 17 03:32:37 2000 +0000

    Mnay fixes.

commit c4860de618f4956283f5c8230a2544e403dfe390
Author: green <green>
Date:   Mon Apr 17 03:18:46 2000 +0000

    Merge from libgcj.  Merged patches from net.  See ChangeLog for details.

commit c578b58314990c3853429297c38ba14015fec5fa
Author: jsm <jsm>
Date:   Sat Oct 9 20:18:16 1999 +0000

    1999-10-09  Jason Molenda  (jsm@bugshack.cygnus.com)
    
            * CVSROOT/auto_checkout, CVSROOT/commit_prep, CVSROOT/log_accum:
            Deleted; generic versions now used for all repositories.
    
            * CVSROOT/commitinfo, CVSROOT/loginfo:  Change pathnames to
            generic versions.
    
            * CVSROOT/checkoutlist:  Don't try to check out the removed
            files any longer.

commit acdb20051207fed7652dd9f122f65de5458c474c
Author: jsm <jsm>
Date:   Sat Oct 9 20:18:15 1999 +0000

    1999-10-09  Jason Molenda  (jsm@bugshack.cygnus.com)
    
            * CVSROOT/auto_checkout, CVSROOT/commit_prep, CVSROOT/log_accum:
            Deleted; generic versions now used for all repositories.
    
            * CVSROOT/commitinfo, CVSROOT/loginfo:  Change pathnames to
            generic versions.
    
            * CVSROOT/checkoutlist:  Don't try to check out the removed
            files any longer.

commit e75be655ceedf7ab24c4e99d75eec9efeb979bc7
Author: green <green>
Date:   Sun Aug 8 13:16:41 1999 +0000

    New configury

commit d6669a0dd5b266005325bbf6d5a8ff34574d809e
Author: green <green>
Date:   Sun Aug 8 13:05:12 1999 +0000

            * include/ffi.h.in: Try to work around messy header problem
            with PACKAGE and VERSION.
    
            * configure: Rebuilt.
            * configure.in: Change version to 2.00-beta.
    
            * fficonfig.h.in: Rebuilt.
            * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
    
            * src/x86/ffi.c (ffi_raw_call): Rename.

commit 4819d52b007934a40d6d29a75ee30e857c4a93ae
Author: green <green>
Date:   Wed Aug 4 18:02:34 1999 +0000

    New file for Kresten's closure work

commit 2dbf801eb427cbf5021a9e1e512b5fc523524700
Author: green <green>
Date:   Wed Aug 4 18:00:05 1999 +0000

    Kresten's closure work. Initial checkin.

commit d170961701b0f2bf7e824d7caba2ebe10002ed84
Author: green <green>
Date:   Thu Jul 8 14:36:52 1999 +0000

            * configure.in: Add x86 and powerpc BeOS configurations.
            From Makoto Kato <m_kato@ga2.so-net.ne.jp>.

commit c7747d976924ec6f2229cbcfbbdb98d364e10de9
Author: jsm <jsm>
Date:   Wed May 12 23:32:16 1999 +0000

    1999-05-12  Jason Molenda  (jsm@bugshack.cygnus.com)
            * index.html: Add links to libffi* mail list archives.

commit dd2aa9a8de22e26df3bbc85d068358641f6202f7
Author: green <green>
Date:   Thu May 6 05:34:36 1999 +0000

            * configure.in: Add warning about this being beta code.
            Remove src/Makefile.am from the picture.
            * configure: Rebuilt.
            * Makefile.am: Move logic from src/Makefile.am.  Add changes
            to support libffi as a target library.
            * Makefile.in: Rebuilt.
            * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
            Upgraded to new autoconf, automake, libtool.
            * README: Tweaks.
            * LICENSE: Update copyright date.
            * src/Makefile.am, src/Makefile.in: Removed.

commit 4e9452abed58a3058ccdb446f96a29d50dda1f34
Author: green <green>
Date:   Wed May 5 22:06:13 1999 +0000

    Updated to new automake, libtool, autoconf - nothing works :-)

commit 6d3b2bddaf4967fba8b8656c01bfc77ec0f2800c
Author: jsm <jsm>
Date:   Mon Apr 26 15:55:28 1999 +0000

    1999-04-26  Jason Molenda  (jsm@bugshack.cygnus.com)
            * index.html: Missed a reference to libffi-discuss@cygnus.com.  Fixed.

commit ebc6a9c28af831d3d187af8ff17319f0f309bd98
Author: jsm <jsm>
Date:   Mon Apr 26 15:53:29 1999 +0000

    1999-04-26  Jason Molenda  (jsm@bugshack.cygnus.com)
            * index.html: Change links to ftp directory to point to sourceware
            directory.
            Change mailing list subscription forms to point to sourceware lists.

commit 78ffc52a8b257061348c576ccb6fbbf8b48b0fff
Author: jsm <jsm>
Date:   Sun Apr 18 01:33:21 1999 +0000

    Standard sourceware setup.

commit b4d77e827d7ebef7e57ebcd71e71c15c62f1e0a8
Author: jsm <jsm>
Date:   Mon Nov 30 11:11:25 1998 +0000

    Small typeo.  (I wouldn't bother except that it made the sentence hard
    for me to parse on a casual read.)

commit bfb73f08fdc987e37070c5fb0b196fbd28872888
Author: jsm <jsm>
Date:   Mon Nov 30 10:44:55 1998 +0000

    A few cleanups.  Most notably, point to the correct subscribe cgi-bin
    script.

commit af8b7f037ccee3b7939ee226a1a2bbc2f057b35c
Author: green <green>
Date:   Mon Nov 30 06:20:05 1998 +0000

            * index.html: Reformatted and updated to reflect hosting on
            sourceware.cygnus.com (new mailing lists, etc).

commit 334f0b060942aff8d26badaf7dde7830450dc5da
Author: green <green>
Date:   Sun Nov 29 16:56:12 1998 +0000

    initial snapshot of documentation

commit 3ab5cb4a1dcc7ecd7e773c97582b0099976c4753
Author: green <green>
Date:   Sun Nov 29 16:56:10 1998 +0000

    Initial revision

commit d2a9eb5a8b7cbc8b769809cad59c82b975c178e2
Merge: d3782ec bc75c54
Author: green <green>
Date:   Sun Nov 29 16:48:16 1998 +0000

    This commit was generated by cvs2svn to compensate for changes in r7, which
    included commits to RCS files with non-trunk default branches.

commit bc75c54bd311658005b065f1bf201b204c81cbca
Author: green <green>
Date:   Sun Nov 29 16:48:16 1998 +0000

    Import of v1 code.

commit d3782ec8160c644421dcea17b605fec6e328f14e
Author: jsm <jsm>
Date:   Fri Nov 20 20:18:00 1998 +0000

    Send commit messages to mailing lists.

commit 8d8d3843c484c2bb70d8375b2b799f75eb03f709
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:36 1998 +0000

    initial checkin

commit 49634f3bf221cc1939abafc788f7e4e31293fe73
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:35 1998 +0000

    Add standard setup.

commit c64a84c7693f8cd400fb94bba3c9bcfd9ad1fc36
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:34 1998 +0000

    Add readers and standard modules file.

commit 9813273b07fd082da573b3b6bfb8d23809b59eea
Author: jsm <jsm>
Date:   Thu Oct 1 22:08:33 1998 +0000

    initial checkin