Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

   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
/* Builtin definitions for IBM S/390 and zSeries
   Copyright (C) 2015-2020 Free Software Foundation, Inc.

   Contributed by Andreas Krebbel (Andreas.Krebbel@de.ibm.com).

   This file is part of GCC.

   GCC is free software; you can redistribute it and/or modify it
   under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3, or (at your option)
   any later version.

   GCC is distributed in the hope that it will be useful, but WITHOUT
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
   License for more details.

   You should have received a copy of the GNU General Public License
   along with GCC; see the file COPYING3.  If not see
   <http://www.gnu.org/licenses/>.  */

#undef O_U1
#undef O_U2
#undef O_U3
#undef O_U4
#undef O_U5
#undef O_U8
#undef O_U12
#undef O_U16
#undef O_U32

#undef O_S2
#undef O_S3
#undef O_S4
#undef O_S5
#undef O_S8
#undef O_S12
#undef O_S16
#undef O_S32
#undef O_ELEM
#undef O_LIT

#undef O1_U1
#undef O2_U1
#undef O3_U1
#undef O4_U1

#undef O1_U2
#undef O2_U2
#undef O3_U2
#undef O4_U2

#undef O1_U3
#undef O2_U3
#undef O3_U3
#undef O4_U3

#undef O1_U4
#undef O2_U4
#undef O3_U4
#undef O4_U4

#undef O1_U5
#undef O2_U5
#undef O3_U5
#undef O4_U5

#undef O1_U8
#undef O2_U8
#undef O3_U8
#undef O4_U8

#undef O1_U12
#undef O2_U12
#undef O3_U12
#undef O4_U12

#undef O1_U16
#undef O2_U16
#undef O3_U16
#undef O4_U16

#undef O1_U32
#undef O2_U32
#undef O3_U32
#undef O4_U32

#undef O1_S2
#undef O2_S2
#undef O3_S2
#undef O4_S2

#undef O1_S3
#undef O2_S3
#undef O3_S3
#undef O4_S3

#undef O1_S4
#undef O2_S4
#undef O3_S4
#undef O4_S4

#undef O1_S5
#undef O2_S5
#undef O3_S5
#undef O4_S5

#undef O1_S8
#undef O2_S8
#undef O3_S8
#undef O4_S8

#undef O1_S12
#undef O2_S12
#undef O3_S12
#undef O4_S12

#undef O1_S16
#undef O2_S16
#undef O3_S16
#undef O4_S16

#undef O1_S32
#undef O2_S32
#undef O3_S32
#undef O4_S32

#undef O1_ELEM
#undef O2_ELEM
#undef O3_ELEM
#undef O4_ELEM

#undef O1_LIT
#undef O2_LIT
#undef O3_LIT
#undef O4_LIT

#undef O_SHIFT
#undef O_IMM_P
#undef O_UIMM_P
#undef O_SIMM_P

#define O_U1   1 /* unsigned  1 bit literal */
#define O_U2   2 /* unsigned  2 bit literal */
#define O_U3   3 /* unsigned  3 bit literal */
#define O_U4   4 /* unsigned  4 bit literal */
#define O_U5   5 /* unsigned  5 bit literal */
#define O_U8   6 /* unsigned  8 bit literal */
#define O_U12  7 /* unsigned 16 bit literal */
#define O_U16  8 /* unsigned 16 bit literal */
#define O_U32  9 /* unsigned 32 bit literal */

#define O_S2  10 /* signed  2 bit literal */
#define O_S3  11 /* signed  3 bit literal */
#define O_S4  12 /* signed  4 bit literal */
#define O_S5  13 /* signed  5 bit literal */
#define O_S8  14 /* signed  8 bit literal */
#define O_S12 15 /* signed 12 bit literal */
#define O_S16 16 /* signed 16 bit literal */
#define O_S32 17 /* signed 32 bit literal */

#define O_ELEM  18 /* Element selector requiring modulo arithmetic. */
#define O_LIT   19 /* Operand must be a literal fitting the target type.  */

#define O_SHIFT 5

#define O_UIMM_P(X) ((X) >= O_U1 && (X) <= O_U32)
#define O_SIMM_P(X) ((X) >= O_S2 && (X) <= O_S32)
#define O_IMM_P(X) ((X) == O_LIT || ((X) >= O_U1 && (X) <= O_S32))

#define O1_U1 O_U1
#define O2_U1 (O_U1 << O_SHIFT)
#define O3_U1 (O_U1 << (2 * O_SHIFT))
#define O4_U1 (O_U1 << (3 * O_SHIFT))

#define O1_U2 O_U2
#define O2_U2 (O_U2 << O_SHIFT)
#define O3_U2 (O_U2 << (2 * O_SHIFT))
#define O4_U2 (O_U2 << (3 * O_SHIFT))

#define O1_U3 O_U3
#define O2_U3 (O_U3 << O_SHIFT)
#define O3_U3 (O_U3 << (2 * O_SHIFT))
#define O4_U3 (O_U3 << (3 * O_SHIFT))

#define O1_U4 O_U4
#define O2_U4 (O_U4 << O_SHIFT)
#define O3_U4 (O_U4 << (2 * O_SHIFT))
#define O4_U4 (O_U4 << (3 * O_SHIFT))

#define O1_U5 O_U5
#define O2_U5 (O_U5 << O_SHIFT)
#define O3_U5 (O_U5 << (2 * O_SHIFT))
#define O4_U5 (O_U5 << (3 * O_SHIFT))

#define O1_U8 O_U8
#define O2_U8 (O_U8 << O_SHIFT)
#define O3_U8 (O_U8 << (2 * O_SHIFT))
#define O4_U8 (O_U8 << (3 * O_SHIFT))

#define O1_U12 O_U12
#define O2_U12 (O_U12 << O_SHIFT)
#define O3_U12 (O_U12 << (2 * O_SHIFT))
#define O4_U12 (O_U12 << (3 * O_SHIFT))

#define O1_U16 O_U16
#define O2_U16 (O_U16 << O_SHIFT)
#define O3_U16 (O_U16 << (2 * O_SHIFT))
#define O4_U16 (O_U16 << (3 * O_SHIFT))

#define O1_U32 O_U32
#define O2_U32 (O_U32 << O_SHIFT)
#define O3_U32 (O_U32 << (2 * O_SHIFT))
#define O4_U32 (O_U32 << (3 * O_SHIFT))


#define O1_S2 O_S2
#define O2_S2 (O_S2 << O_SHIFT)
#define O3_S2 (O_S2 << (2 * O_SHIFT))
#define O4_S2 (O_S2 << (3 * O_SHIFT))

#define O1_S3 O_S3
#define O2_S3 (O_S3 << O_SHIFT)
#define O3_S3 (O_S3 << (2 * O_SHIFT))
#define O4_S3 (O_S3 << (3 * O_SHIFT))

#define O1_S4 O_S4
#define O2_S4 (O_S4 << O_SHIFT)
#define O3_S4 (O_S4 << (2 * O_SHIFT))
#define O4_S4 (O_S4 << (3 * O_SHIFT))

#define O1_S5 O_S5
#define O2_S5 (O_S5 << O_SHIFT)
#define O3_S5 (O_S5 << (2 * O_SHIFT))
#define O4_S5 (O_S5 << (3 * O_SHIFT))

#define O1_S8 O_S8
#define O2_S8 (O_S8 << O_SHIFT)
#define O3_S8 (O_S8 << (2 * O_SHIFT))
#define O4_S8 (O_S8 << (3 * O_SHIFT))

#define O1_S12 O_S12
#define O2_S12 (O_S12 << O_SHIFT)
#define O3_S12 (O_S12 << (2 * O_SHIFT))
#define O4_S12 (O_S12 << (3 * O_SHIFT))

#define O1_S16 O_S16
#define O2_S16 (O_S16 << O_SHIFT)
#define O3_S16 (O_S16 << (2 * O_SHIFT))
#define O4_S16 (O_S16 << (3 * O_SHIFT))

#define O1_S32 O_S32
#define O2_S32 (O_S32 << O_SHIFT)
#define O3_S32 (O_S32 << (2 * O_SHIFT))
#define O4_S32 (O_S32 << (3 * O_SHIFT))

#define O1_ELEM O_ELEM
#define O2_ELEM (O_ELEM << O_SHIFT)
#define O3_ELEM (O_ELEM << (2 * O_SHIFT))
#define O4_ELEM (O_ELEM << (3 * O_SHIFT))

#define O1_LIT O_LIT
#define O2_LIT (O_LIT << O_SHIFT)
#define O3_LIT (O_LIT << (2 * O_SHIFT))
#define O4_LIT (O_LIT << (3 * O_SHIFT))


/* Builtin flags. Flags applying to the whole builtin definition.  */

#undef B_INT
#undef B_HTM
#undef B_VX
#undef B_VXE
#undef B_VXE2
#undef B_DEP

#undef BFLAGS_MASK_INIT
#define BFLAGS_MASK_INIT (B_INT)

#define B_INT   (1 << 0)  /* Internal builtins.  This builtin cannot be used in user programs.  */
#define B_HTM   (1 << 1)  /* Builtins requiring the transactional execution facility.  */
#define B_VX    (1 << 2)  /* Builtins requiring the z13 vector extensions.  */
#define B_VXE   (1 << 3)  /* Builtins requiring the z14 vector extensions.  */
#define B_VXE2  (1 << 4)  /* Builtins requiring the z15 vector extensions.  */
#define B_DEP   (1 << 5)  /* Builtin has been deprecated and a warning should be issued.  */

/* B_DEF defines a standard (not overloaded) builtin
   B_DEF (<builtin name>, <RTL expander name>, <function attributes>, <builtin flags>, <operand flags, see above>, <fntype>)

   OB_DEF defines an overloaded builtin
   OB_DEF (<builtin name>, <start variant>, <end variant>, <builtin flags>, <fntype>)
   The builtin flags apply to all its variants and do not need to be mentioned there again.

   OB_DEF_VAR defines a variant of an overloaded builtin
   OB_DEF_VAR (<variant name>, <standard builtin name>, <flags>, <operand flags>, <fntype>)
   flags: Flags applying to all its variants should be mentioned in the OB_DEF line instead.  */


B_DEF      (tbeginc,                    tbeginc,            0,                  B_HTM,              0,                  BT_FN_VOID)
B_DEF      (tbegin,                     tbegin,             returns_twice_attr, B_HTM,              0,                  BT_FN_INT_VOIDPTR)
B_DEF      (tbegin_nofloat,             tbegin_nofloat,     returns_twice_attr, B_HTM,              0,                  BT_FN_INT_VOIDPTR)
B_DEF      (tbegin_retry,               tbegin_retry,       returns_twice_attr, B_HTM,              0,                  BT_FN_INT_VOIDPTR_INT)
B_DEF      (tbegin_retry_nofloat,       tbegin_retry_nofloat,returns_twice_attr,B_HTM,              0,                  BT_FN_INT_VOIDPTR_INT)
B_DEF      (tend,                       tend,               0,                  B_HTM,              0,                  BT_FN_INT)
B_DEF      (tabort,                     tabort,             noreturn_attr,      B_HTM,              0,                  BT_FN_VOID_INT)
B_DEF      (tx_nesting_depth,           etnd,               0,                  B_HTM,              0,                  BT_FN_INT)
B_DEF      (non_tx_store,               ntstg,              0,                  B_HTM,              0,                  BT_FN_VOID_UINT64PTR_UINT64)
B_DEF      (tx_assist,                  tx_assist,          0,                  B_HTM,              0,                  BT_FN_VOID_INT)
B_DEF      (s390_sfpc,                  sfpc,               0,                  0,                  0,                  BT_FN_VOID_UINT)
B_DEF      (s390_efpc,                  efpc,               0,                  0,                  0,                  BT_FN_UINT)
B_DEF      (s390_lcbb,                  lcbb,               0,                  B_VX,               O2_U4,              BT_FN_UINT_VOIDCONSTPTR_INT)

OB_DEF     (s390_vec_step,              MAX,                MAX,                B_VX,               BT_FN_INT_INT)

OB_DEF     (s390_vec_gather_element,    s390_vec_gather_element_s32,s390_vec_gather_element_dbl,B_VX,BT_FN_OV4SI_OV4SI_OUV4SI_INTCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_s32,s390_vgef,          0,                  O4_U2,              BT_OV_V4SI_V4SI_UV4SI_INTCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_b32,s390_vgef,          0,                  O4_U2,              BT_OV_BV4SI_BV4SI_UV4SI_UINTCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_u32,s390_vgef,          0,                  O4_U2,              BT_OV_UV4SI_UV4SI_UV4SI_UINTCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_flt,s390_vgef,          B_VXE,              O4_U2,              BT_OV_V4SF_V4SF_UV4SI_FLTCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_s64,s390_vgeg,          0,                  O4_U1,              BT_OV_V2DI_V2DI_UV2DI_LONGLONGCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_b64,s390_vgeg,          0,                  O4_U1,              BT_OV_BV2DI_BV2DI_UV2DI_ULONGLONGCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_u64,s390_vgeg,          0,                  O4_U1,              BT_OV_UV2DI_UV2DI_UV2DI_ULONGLONGCONSTPTR_UCHAR)
OB_DEF_VAR (s390_vec_gather_element_dbl,s390_vgeg,          0,                  O4_U1,              BT_OV_V2DF_V2DF_UV2DI_DBLCONSTPTR_UCHAR)

B_DEF      (s390_vgef,                  vec_gather_elementv4si,0,               B_VX,               O4_U2,              BT_FN_UV4SI_UV4SI_UV4SI_UINTCONSTPTR_UCHAR)
B_DEF      (s390_vgeg,                  vec_gather_elementv2di,0,               B_VX,               O4_U1,              BT_FN_UV2DI_UV2DI_UV2DI_ULONGLONGCONSTPTR_UCHAR)
B_DEF      (s390_vgbm,                  vec_genbytemaskv16qi,0,                 B_VX,               O1_U16,             BT_FN_UV16QI_USHORT)
B_DEF      (s390_vgmb,                  vec_genmaskv16qi,   0,                  B_VX,               O1_U8 | O2_U8,      BT_FN_UV16QI_UCHAR_UCHAR)
B_DEF      (s390_vgmh,                  vec_genmaskv8hi,    0,                  B_VX,               O1_U8 | O2_U8,      BT_FN_UV8HI_UCHAR_UCHAR)
B_DEF      (s390_vgmf,                  vec_genmaskv4si,    0,                  B_VX,               O1_U8 | O2_U8,      BT_FN_UV4SI_UCHAR_UCHAR)
B_DEF      (s390_vgmg,                  vec_genmaskv2di,    0,                  B_VX,               O1_U8 | O2_U8,      BT_FN_UV2DI_UCHAR_UCHAR)

OB_DEF     (s390_vec_xl,                s390_vec_xl_s8,     s390_vec_xl_dbl,    B_VX,               BT_FN_V4SI_INT_VOIDCONSTPTR)
OB_DEF_VAR (s390_vec_xl_s8,             MAX,                0,                  O1_LIT,             BT_OV_V16QI_LONG_SCHARCONSTPTR)          /* vl */
OB_DEF_VAR (s390_vec_xl_u8,             MAX,                0,                  O1_LIT,             BT_OV_UV16QI_LONG_UCHARCONSTPTR)         /* vl */
OB_DEF_VAR (s390_vec_xl_s16,            MAX,                0,                  O1_LIT,             BT_OV_V8HI_LONG_SHORTCONSTPTR)           /* vl */
OB_DEF_VAR (s390_vec_xl_u16,            MAX,                0,                  O1_LIT,             BT_OV_UV8HI_LONG_USHORTCONSTPTR)         /* vl */
OB_DEF_VAR (s390_vec_xl_s32,            MAX,                0,                  O1_LIT,             BT_OV_V4SI_LONG_INTCONSTPTR)             /* vl */
OB_DEF_VAR (s390_vec_xl_u32,            MAX,                0,                  O1_LIT,             BT_OV_UV4SI_LONG_UINTCONSTPTR)           /* vl */
OB_DEF_VAR (s390_vec_xl_s64,            MAX,                0,                  O1_LIT,             BT_OV_V2DI_LONG_LONGLONGCONSTPTR)        /* vl */
OB_DEF_VAR (s390_vec_xl_u64,            MAX,                0,                  O1_LIT,             BT_OV_UV2DI_LONG_ULONGLONGCONSTPTR)      /* vl */
OB_DEF_VAR (s390_vec_xl_flt,            MAX,                0,                  O1_LIT,             BT_OV_V4SF_LONG_FLTCONSTPTR)             /* vl */
OB_DEF_VAR (s390_vec_xl_dbl,            MAX,                0,                  O1_LIT,             BT_OV_V2DF_LONG_DBLCONSTPTR)             /* vl */

OB_DEF     (s390_vec_xld2,              s390_vec_xld2_s8,   s390_vec_xld2_dbl,  B_DEP | B_VX,       BT_FN_V4SI_INT_VOIDCONSTPTR)
OB_DEF_VAR (s390_vec_xld2_s8,           MAX,                0,                  O1_LIT,             BT_OV_V16QI_LONG_SCHARCONSTPTR)          /* vl */
OB_DEF_VAR (s390_vec_xld2_u8,           MAX,                0,                  O1_LIT,             BT_OV_UV16QI_LONG_UCHARCONSTPTR)         /* vl */
OB_DEF_VAR (s390_vec_xld2_s16,          MAX,                0,                  O1_LIT,             BT_OV_V8HI_LONG_SHORTCONSTPTR)           /* vl */
OB_DEF_VAR (s390_vec_xld2_u16,          MAX,                0,                  O1_LIT,             BT_OV_UV8HI_LONG_USHORTCONSTPTR)         /* vl */
OB_DEF_VAR (s390_vec_xld2_s32,          MAX,                0,                  O1_LIT,             BT_OV_V4SI_LONG_INTCONSTPTR)             /* vl */
OB_DEF_VAR (s390_vec_xld2_u32,          MAX,                0,                  O1_LIT,             BT_OV_UV4SI_LONG_UINTCONSTPTR)           /* vl */
OB_DEF_VAR (s390_vec_xld2_s64,          MAX,                0,                  O1_LIT,             BT_OV_V2DI_LONG_LONGLONGCONSTPTR)        /* vl */
OB_DEF_VAR (s390_vec_xld2_u64,          MAX,                0,                  O1_LIT,             BT_OV_UV2DI_LONG_ULONGLONGCONSTPTR)      /* vl */
OB_DEF_VAR (s390_vec_xld2_flt,          MAX,                B_VXE,              O1_LIT,             BT_OV_V4SF_LONG_FLTCONSTPTR)             /* vl */
OB_DEF_VAR (s390_vec_xld2_dbl,          MAX,                0,                  O1_LIT,             BT_OV_V2DF_LONG_DBLCONSTPTR)             /* vl */

OB_DEF     (s390_vec_xlw4,              s390_vec_xlw4_s8,   s390_vec_xlw4_flt,  B_DEP | B_VX,       BT_FN_V4SI_INT_VOIDCONSTPTR)
OB_DEF_VAR (s390_vec_xlw4_s8,           MAX,                0,                  O1_LIT,             BT_OV_V16QI_LONG_SCHARCONSTPTR)          /* vl */
OB_DEF_VAR (s390_vec_xlw4_u8,           MAX,                0,                  O1_LIT,             BT_OV_UV16QI_LONG_UCHARCONSTPTR)         /* vl */
OB_DEF_VAR (s390_vec_xlw4_s16,          MAX,                0,                  O1_LIT,             BT_OV_V8HI_LONG_SHORTCONSTPTR)           /* vl */
OB_DEF_VAR (s390_vec_xlw4_u16,          MAX,                0,                  O1_LIT,             BT_OV_UV8HI_LONG_USHORTCONSTPTR)         /* vl */
OB_DEF_VAR (s390_vec_xlw4_s32,          MAX,                0,                  O1_LIT,             BT_OV_V4SI_LONG_INTCONSTPTR)             /* vl */
OB_DEF_VAR (s390_vec_xlw4_u32,          MAX,                0,                  O1_LIT,             BT_OV_UV4SI_LONG_UINTCONSTPTR)           /* vl */
OB_DEF_VAR (s390_vec_xlw4_flt,          MAX,                B_VXE,              O1_LIT,             BT_OV_V4SF_LONG_FLTCONSTPTR)             /* vl */

OB_DEF     (s390_vec_splats,            s390_vec_splats_s8, s390_vec_splats_dbl,B_VX,               BT_FN_OV4SI_INT)
OB_DEF_VAR (s390_vec_splats_s8,         s390_vlrepb,        0,                  0,                  BT_OV_V16QI_SCHAR)
OB_DEF_VAR (s390_vec_splats_u8,         s390_vlrepb,        0,                  0,                  BT_OV_UV16QI_UCHAR)
OB_DEF_VAR (s390_vec_splats_s16,        s390_vlreph,        0,                  0,                  BT_OV_V8HI_SHORT)
OB_DEF_VAR (s390_vec_splats_u16,        s390_vlreph,        0,                  0,                  BT_OV_UV8HI_USHORT)
OB_DEF_VAR (s390_vec_splats_s32,        s390_vlrepf,        0,                  0,                  BT_OV_V4SI_INT)
OB_DEF_VAR (s390_vec_splats_u32,        s390_vlrepf,        0,                  0,                  BT_OV_UV4SI_UINT)
OB_DEF_VAR (s390_vec_splats_s64,        s390_vlrepg,        0,                  0,                  BT_OV_V2DI_LONGLONG)
OB_DEF_VAR (s390_vec_splats_u64,        s390_vlrepg,        0,                  0,                  BT_OV_UV2DI_ULONGLONG)
OB_DEF_VAR (s390_vec_splats_flt,        s390_vlrepf_flt,    B_VXE,              0,                  BT_OV_V4SF_FLT)                          /* vlrepf */
OB_DEF_VAR (s390_vec_splats_dbl,        s390_vlrepg_dbl,    0,                  0,                  BT_OV_V2DF_DBL)                          /* vlrepg */

B_DEF      (s390_vlrepb,                vec_splatsv16qi,    0,                  B_VX,               0,                  BT_FN_UV16QI_UCHAR)
B_DEF      (s390_vlreph,                vec_splatsv8hi,     0,                  B_VX,               0,                  BT_FN_UV8HI_USHORT)
B_DEF      (s390_vlrepf,                vec_splatsv4si,     0,                  B_VX,               0,                  BT_FN_UV4SI_UINT)
B_DEF      (s390_vlrepf_flt,            vec_splatsv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_V4SF_FLT)
B_DEF      (s390_vlrepg,                vec_splatsv2di,     0,                  B_VX,               0,                  BT_FN_UV2DI_ULONGLONG)
B_DEF      (s390_vlrepg_dbl,            vec_splatsv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_V2DF_DBL)
B_DEF      (s390_vrepib,                vec_splatsv16qi,    0,                  B_VX,               O1_U8,              BT_FN_V16QI_UCHAR)
B_DEF      (s390_vrepih,                vec_splatsv8hi,     0,                  B_VX,               O1_S16,             BT_FN_V8HI_SHORT)
B_DEF      (s390_vrepif,                vec_splatsv4si,     0,                  B_VX,               O1_S16,             BT_FN_V4SI_SHORT)
B_DEF      (s390_vrepig,                vec_splatsv2di,     0,                  B_VX,               O1_S16,             BT_FN_V2DI_SHORT)

B_DEF      (s390_vec_splat_u8,          vec_splatsv16qi,    0,                  B_VX,               O1_U8,              BT_FN_UV16QI_UCHAR)
B_DEF      (s390_vec_splat_s8,          vec_splatsv16qi,    0,                  B_VX,               O1_S8,              BT_FN_V16QI_SCHAR)
B_DEF      (s390_vec_splat_u16,         vec_splatsv8hi,     0,                  B_VX,               O1_U16,             BT_FN_UV8HI_USHORT)
B_DEF      (s390_vec_splat_s16,         vec_splatsv8hi,     0,                  B_VX,               O1_S16,             BT_FN_V8HI_SHORT)
B_DEF      (s390_vec_splat_u32,         vec_splatsv4si,     0,                  B_VX,               O1_U16,             BT_FN_UV4SI_USHORT)
B_DEF      (s390_vec_splat_s32,         vec_splatsv4si,     0,                  B_VX,               O1_S16,             BT_FN_V4SI_SHORT)
B_DEF      (s390_vec_splat_u64,         vec_splatsv2di,     0,                  B_VX,               O1_U16,             BT_FN_UV2DI_USHORT)
B_DEF      (s390_vec_splat_s64,         vec_splatsv2di,     0,                  B_VX,               O1_S16,             BT_FN_V2DI_SHORT)

/* First two operands are swapped in s390-c.c */
OB_DEF     (s390_vec_insert,            s390_vec_insert_s8, s390_vec_insert_dbl,B_VX,               BT_FN_OV4SI_INT_OV4SI_INT)
OB_DEF_VAR (s390_vec_insert_s8,         s390_vlvgb,         0,                  O3_ELEM,            BT_OV_V16QI_SCHAR_V16QI_INT)
OB_DEF_VAR (s390_vec_insert_u8,         s390_vlvgb,         0,                  O3_ELEM,            BT_OV_UV16QI_UCHAR_UV16QI_INT)
OB_DEF_VAR (s390_vec_insert_b8,         s390_vlvgb,         0,                  O3_ELEM,            BT_OV_UV16QI_UCHAR_BV16QI_INT)
OB_DEF_VAR (s390_vec_insert_s16,        s390_vlvgh,         0,                  O3_ELEM,            BT_OV_V8HI_SHORT_V8HI_INT)
OB_DEF_VAR (s390_vec_insert_u16,        s390_vlvgh,         0,                  O3_ELEM,            BT_OV_UV8HI_USHORT_UV8HI_INT)
OB_DEF_VAR (s390_vec_insert_b16,        s390_vlvgh,         0,                  O3_ELEM,            BT_OV_UV8HI_USHORT_BV8HI_INT)
OB_DEF_VAR (s390_vec_insert_s32,        s390_vlvgf,         0,                  O3_ELEM,            BT_OV_V4SI_INT_V4SI_INT)
OB_DEF_VAR (s390_vec_insert_u32,        s390_vlvgf,         0,                  O3_ELEM,            BT_OV_UV4SI_UINT_UV4SI_INT)
OB_DEF_VAR (s390_vec_insert_b32,        s390_vlvgf,         0,                  O3_ELEM,            BT_OV_UV4SI_UINT_BV4SI_INT)
OB_DEF_VAR (s390_vec_insert_s64,        s390_vlvgg,         0,                  O3_ELEM,            BT_OV_V2DI_LONGLONG_V2DI_INT)
OB_DEF_VAR (s390_vec_insert_u64,        s390_vlvgg,         0,                  O3_ELEM,            BT_OV_UV2DI_ULONGLONG_UV2DI_INT)
OB_DEF_VAR (s390_vec_insert_b64,        s390_vlvgg,         0,                  O3_ELEM,            BT_OV_UV2DI_ULONGLONG_BV2DI_INT)
OB_DEF_VAR (s390_vec_insert_flt,        s390_vlvgf_flt,     B_VXE,              O3_ELEM,            BT_OV_V4SF_FLT_V4SF_INT)                 /* vlvgf */
OB_DEF_VAR (s390_vec_insert_dbl,        s390_vlvgg_dbl,     0,                  O3_ELEM,            BT_OV_V2DF_DBL_V2DF_INT)                 /* vlvgg */

B_DEF      (s390_vlvgb,                 vec_insertv16qi,    0,                  B_VX,               O3_ELEM,            BT_FN_UV16QI_UV16QI_UCHAR_INT)
B_DEF      (s390_vlvgh,                 vec_insertv8hi,     0,                  B_VX,               O3_ELEM,            BT_FN_UV8HI_UV8HI_USHORT_INT)
B_DEF      (s390_vlvgf,                 vec_insertv4si,     0,                  B_VX,               O3_ELEM,            BT_FN_UV4SI_UV4SI_UINT_INT)
B_DEF      (s390_vlvgg,                 vec_insertv2di,     0,                  B_VX,               O3_ELEM,            BT_FN_UV2DI_UV2DI_ULONGLONG_INT)
B_DEF      (s390_vlvgf_flt,             vec_insertv4sf,     0,                  B_INT | B_VXE,      O3_ELEM,            BT_FN_V4SF_V4SF_FLT_INT)
B_DEF      (s390_vlvgg_dbl,             vec_insertv2df,     0,                  B_INT | B_VX,       O3_ELEM,            BT_FN_V2DF_V2DF_DBL_INT)

OB_DEF     (s390_vec_promote,           s390_vec_promote_s8,s390_vec_promote_dbl,B_VX,              BT_FN_OV4SI_INT_INT)
OB_DEF_VAR (s390_vec_promote_s8,        s390_vlvgb_noin,    0,                  O2_ELEM,            BT_OV_V16QI_SCHAR_INT)                   /* vlvgb */
OB_DEF_VAR (s390_vec_promote_u8,        s390_vlvgb_noin,    0,                  O2_ELEM,            BT_OV_UV16QI_UCHAR_INT)                  /* vlvgb */
OB_DEF_VAR (s390_vec_promote_s16,       s390_vlvgh_noin,    0,                  O2_ELEM,            BT_OV_V8HI_SHORT_INT)                    /* vlvgh */
OB_DEF_VAR (s390_vec_promote_u16,       s390_vlvgh_noin,    0,                  O2_ELEM,            BT_OV_UV8HI_USHORT_INT)                  /* vlvgh */
OB_DEF_VAR (s390_vec_promote_s32,       s390_vlvgf_noin,    0,                  O2_ELEM,            BT_OV_V4SI_INT_INT)                      /* vlvgf */
OB_DEF_VAR (s390_vec_promote_u32,       s390_vlvgf_noin,    0,                  O2_ELEM,            BT_OV_UV4SI_UINT_INT)                    /* vlvgf */
OB_DEF_VAR (s390_vec_promote_s64,       s390_vlvgg_noin,    0,                  O2_ELEM,            BT_OV_V2DI_LONGLONG_INT)                 /* vlvgg */
OB_DEF_VAR (s390_vec_promote_u64,       s390_vlvgg_noin,    0,                  O2_ELEM,            BT_OV_UV2DI_ULONGLONG_INT)               /* vlvgg */
OB_DEF_VAR (s390_vec_promote_flt,       s390_vlvgf_flt_noin,B_VXE,              O2_ELEM,            BT_OV_V4SF_FLT_INT)                      /* vlvgf */
OB_DEF_VAR (s390_vec_promote_dbl,       s390_vlvgg_dbl_noin,0,                  O2_ELEM,            BT_OV_V2DF_DBL_INT)                      /* vlvgg */

B_DEF      (s390_vlvgb_noin,            vec_promotev16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_UV16QI_UCHAR_INT)
B_DEF      (s390_vlvgh_noin,            vec_promotev8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_UV8HI_USHORT_INT)
B_DEF      (s390_vlvgf_noin,            vec_promotev4si,    0,                  B_INT | B_VX,       0,                  BT_FN_UV4SI_UINT_INT)
B_DEF      (s390_vlvgg_noin,            vec_promotev2di,    0,                  B_INT | B_VX,       0,                  BT_FN_UV2DI_ULONGLONG_INT)
B_DEF      (s390_vlvgf_flt_noin,        vec_promotev4sf,    0,                  B_INT | B_VXE,      0,                  BT_FN_V4SF_FLT_INT)
B_DEF      (s390_vlvgg_dbl_noin,        vec_promotev2df,    0,                  B_INT | B_VX,       0,                  BT_FN_V2DF_DBL_INT)

OB_DEF     (s390_vec_extract,           s390_vec_extract_s8,s390_vec_extract_dbl,B_VX,              BT_FN_INT_OV4SI_INT)
OB_DEF_VAR (s390_vec_extract_s8,        s390_vlgvb,         0,                  O2_ELEM,            BT_OV_SCHAR_V16QI_INT)
OB_DEF_VAR (s390_vec_extract_u8,        s390_vlgvb,         0,                  O2_ELEM,            BT_OV_UCHAR_UV16QI_INT)
OB_DEF_VAR (s390_vec_extract_b8,        s390_vlgvb,         0,                  O2_ELEM,            BT_OV_UCHAR_BV16QI_INT)
OB_DEF_VAR (s390_vec_extract_s16,       s390_vlgvh,         0,                  O2_ELEM,            BT_OV_SHORT_V8HI_INT)
OB_DEF_VAR (s390_vec_extract_u16,       s390_vlgvh,         0,                  O2_ELEM,            BT_OV_USHORT_UV8HI_INT)
OB_DEF_VAR (s390_vec_extract_b16,       s390_vlgvh,         0,                  O2_ELEM,            BT_OV_USHORT_BV8HI_INT)
OB_DEF_VAR (s390_vec_extract_s32,       s390_vlgvf,         0,                  O2_ELEM,            BT_OV_INT_V4SI_INT)
OB_DEF_VAR (s390_vec_extract_u32,       s390_vlgvf,         0,                  O2_ELEM,            BT_OV_UINT_UV4SI_INT)
OB_DEF_VAR (s390_vec_extract_b32,       s390_vlgvf,         0,                  O2_ELEM,            BT_OV_UINT_BV4SI_INT)
OB_DEF_VAR (s390_vec_extract_flt,       s390_vlgvf_flt,     B_VXE,              O2_ELEM,            BT_OV_FLT_V4SF_INT)
OB_DEF_VAR (s390_vec_extract_s64,       s390_vlgvg,         0,                  O2_ELEM,            BT_OV_LONGLONG_V2DI_INT)
OB_DEF_VAR (s390_vec_extract_u64,       s390_vlgvg,         0,                  O2_ELEM,            BT_OV_ULONGLONG_UV2DI_INT)
OB_DEF_VAR (s390_vec_extract_b64,       s390_vlgvg,         0,                  O2_ELEM,            BT_OV_ULONGLONG_BV2DI_INT)
OB_DEF_VAR (s390_vec_extract_dbl,       s390_vlgvg_dbl,     0,                  O2_ELEM,            BT_OV_DBL_V2DF_INT)                      /* vlgvg */

B_DEF      (s390_vlgvb,                 vec_extractv16qiqi, 0,                  B_VX,               O2_ELEM,            BT_FN_UCHAR_UV16QI_INT)
B_DEF      (s390_vlgvh,                 vec_extractv8hihi,  0,                  B_VX,               O2_ELEM,            BT_FN_USHORT_UV8HI_INT)
B_DEF      (s390_vlgvf,                 vec_extractv4sisi,  0,                  B_VX,               O2_ELEM,            BT_FN_UINT_UV4SI_INT)
B_DEF      (s390_vlgvf_flt,             vec_extractv4sfsf,  0,                  B_INT | B_VXE,      O2_ELEM,            BT_FN_FLT_V4SF_INT)
B_DEF      (s390_vlgvg,                 vec_extractv2didi,  0,                  B_VX,               O2_ELEM,            BT_FN_ULONGLONG_UV2DI_INT)
B_DEF      (s390_vlgvg_dbl,             vec_extractv2dfdf,  0,                  B_INT | B_VX,       O2_ELEM,            BT_FN_DBL_V2DF_INT)

OB_DEF     (s390_vec_insert_and_zero,   s390_vec_insert_and_zero_s8,s390_vec_insert_and_zero_dbl,B_VX,BT_FN_OV4SI_INTCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_s8,s390_vllezb,        0,                  0,                  BT_OV_V16QI_SCHARCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_u8,s390_vllezb,        0,                  0,                  BT_OV_UV16QI_UCHARCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_s16,s390_vllezh,       0,                  0,                  BT_OV_V8HI_SHORTCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_u16,s390_vllezh,       0,                  0,                  BT_OV_UV8HI_USHORTCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_s32,s390_vllezf,       0,                  0,                  BT_OV_V4SI_INTCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_u32,s390_vllezf,       0,                  0,                  BT_OV_UV4SI_UINTCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_flt,s390_vllezf_flt,   B_VXE,              0,                  BT_OV_V4SF_FLTCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_s64,s390_vllezg,       0,                  0,                  BT_OV_V2DI_LONGLONGCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_u64,s390_vllezg,       0,                  0,                  BT_OV_UV2DI_ULONGLONGCONSTPTR)
OB_DEF_VAR (s390_vec_insert_and_zero_dbl,s390_vllezg_dbl,   0,                  0,                  BT_OV_V2DF_DBLCONSTPTR)

B_DEF      (s390_vllezb,                vec_insert_and_zerov16qi,0,             B_VX,               0,                  BT_FN_UV16QI_UCHARCONSTPTR)
B_DEF      (s390_vllezh,                vec_insert_and_zerov8hi,0,              B_VX,               0,                  BT_FN_UV8HI_USHORTCONSTPTR)
B_DEF      (s390_vllezf,                vec_insert_and_zerov4si,0,              B_VX,               0,                  BT_FN_UV4SI_UINTCONSTPTR)
B_DEF      (s390_vllezf_flt,            vec_insert_and_zerov4sf,0,              B_INT | B_VXE,      0,                  BT_FN_V4SF_FLTCONSTPTR)
B_DEF      (s390_vllezg,                vec_insert_and_zerov2di,0,              B_VX,               0,                  BT_FN_UV2DI_ULONGLONGCONSTPTR)
B_DEF      (s390_vllezg_dbl,            vec_insert_and_zerov2df,0,              B_INT | B_VX,       0,                  BT_FN_V2DF_DBLCONSTPTR)

/* The 2nd operand will by translated in s390-c.c from 64, 128, 256, ... to 0, 1, 2, ... */
OB_DEF     (s390_vec_load_bndry,        s390_vec_load_bndry_s8,s390_vec_load_bndry_dbl,B_VX,        BT_FN_OV4SI_INTCONSTPTR_INT)
OB_DEF_VAR (s390_vec_load_bndry_s8,     s390_vlbb,          0,                  O2_U16,             BT_OV_V16QI_SCHARCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_u8,     s390_vlbb,          0,                  O2_U16,             BT_OV_UV16QI_UCHARCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_s16,    s390_vlbb,          0,                  O2_U16,             BT_OV_V8HI_SHORTCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_u16,    s390_vlbb,          0,                  O2_U16,             BT_OV_UV8HI_USHORTCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_s32,    s390_vlbb,          0,                  O2_U16,             BT_OV_V4SI_INTCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_u32,    s390_vlbb,          0,                  O2_U16,             BT_OV_UV4SI_UINTCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_s64,    s390_vlbb,          0,                  O2_U16,             BT_OV_V2DI_LONGLONGCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_u64,    s390_vlbb,          0,                  O2_U16,             BT_OV_UV2DI_ULONGLONGCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_flt,    s390_vlbb,          B_VXE,              O2_U16,             BT_OV_V4SF_FLTCONSTPTR_USHORT)
OB_DEF_VAR (s390_vec_load_bndry_dbl,    s390_vlbb,          0,                  O2_U16,             BT_OV_V2DF_DBLCONSTPTR_USHORT)

B_DEF      (s390_vlbb,                  vlbb,               0,                  B_VX,               O2_U3,              BT_FN_UV16QI_UCHARCONSTPTR_USHORT)

OB_DEF     (s390_vec_load_pair,         s390_vec_load_pair_s64,s390_vec_load_pair_u64,B_VX,         BT_FN_OV2DI_LONGLONG_LONGLONG)
OB_DEF_VAR (s390_vec_load_pair_s64,     MAX,                0,                  0,                  BT_OV_V2DI_LONGLONG_LONGLONG)            /* vlvgp */
OB_DEF_VAR (s390_vec_load_pair_u64,     MAX,                0,                  0,                  BT_OV_UV2DI_ULONGLONG_ULONGLONG)         /* vlvgp */

/* First two operands are swapped in s390-c.c */
OB_DEF     (s390_vec_load_len,          s390_vec_load_len_s8,s390_vec_load_len_dbl,B_VX,            BT_FN_OV4SI_INTCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_s8,       s390_vll,           0,                  0,                  BT_OV_V16QI_SCHARCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_u8,       s390_vll,           0,                  0,                  BT_OV_UV16QI_UCHARCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_s16,      s390_vll,           0,                  0,                  BT_OV_V8HI_SHORTCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_u16,      s390_vll,           0,                  0,                  BT_OV_UV8HI_USHORTCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_s32,      s390_vll,           0,                  0,                  BT_OV_V4SI_INTCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_u32,      s390_vll,           0,                  0,                  BT_OV_UV4SI_UINTCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_s64,      s390_vll,           0,                  0,                  BT_OV_V2DI_LONGLONGCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_u64,      s390_vll,           0,                  0,                  BT_OV_UV2DI_ULONGLONGCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_flt,      s390_vll,           B_VXE,              0,                  BT_OV_V4SF_FLTCONSTPTR_UINT)
OB_DEF_VAR (s390_vec_load_len_dbl,      s390_vll,           0,                  0,                  BT_OV_V2DF_DBLCONSTPTR_UINT)

B_DEF      (s390_vll,                   vllv16qi,           0,                  B_VX,               0,                  BT_FN_V16QI_UINT_VOIDCONSTPTR)
B_DEF      (s390_vlrlr,                 vlrlrv16qi,         0,                  B_VXE,              0,                  BT_FN_V16QI_UINT_VOIDCONSTPTR)

OB_DEF     (s390_vec_mergeh,            s390_vec_mergeh_s8, s390_vec_mergeh_dbl,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mergeh_s8,         s390_vmrhb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mergeh_u8,         s390_vmrhb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mergeh_b8,         s390_vmrhb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_mergeh_s16,        s390_vmrhh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mergeh_u16,        s390_vmrhh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mergeh_b16,        s390_vmrhh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_mergeh_s32,        s390_vmrhf,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_mergeh_u32,        s390_vmrhf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mergeh_b32,        s390_vmrhf,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_mergeh_s64,        s390_vmrhg,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_mergeh_u64,        s390_vmrhg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_mergeh_b64,        s390_vmrhg,         0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_mergeh_flt,        s390_vmrhf_flt,     B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_mergeh_dbl,        s390_vmrhg_dbl,     0,                  0,                  BT_OV_V2DF_V2DF_V2DF)

B_DEF      (s390_vmrhb,                 vec_mergehv16qi,    0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmrhh,                 vec_mergehv8hi,     0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmrhf,                 vec_mergehv4si,     0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vmrhf_flt,             vec_mergehv4sf,     0,                  B_INT | B_VX,       0,                  BT_FN_V4SF_V4SF_V4SF)
B_DEF      (s390_vmrhg,                 vec_mergehv2di,     0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)
B_DEF      (s390_vmrhg_dbl,             vec_mergehv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_V2DF_V2DF_V2DF)

OB_DEF     (s390_vec_mergel,            s390_vec_mergel_s8, s390_vec_mergel_dbl,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mergel_s8,         s390_vmrlb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mergel_u8,         s390_vmrlb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mergel_b8,         s390_vmrlb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_mergel_s16,        s390_vmrlh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mergel_u16,        s390_vmrlh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mergel_b16,        s390_vmrlh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_mergel_s32,        s390_vmrlf,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_mergel_u32,        s390_vmrlf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mergel_b32,        s390_vmrlf,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_mergel_s64,        s390_vmrlg,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_mergel_u64,        s390_vmrlg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_mergel_b64,        s390_vmrlg,         0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_mergel_flt,        s390_vmrlf_flt,     B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_mergel_dbl,        s390_vmrlg_dbl,     0,                  0,                  BT_OV_V2DF_V2DF_V2DF)

B_DEF      (s390_vmrlb,                 vec_mergelv16qi,    0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmrlh,                 vec_mergelv8hi,     0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmrlf,                 vec_mergelv4si,     0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vmrlf_flt,             vec_mergelv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_V4SF_V4SF_V4SF)
B_DEF      (s390_vmrlg,                 vec_mergelv2di,     0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)
B_DEF      (s390_vmrlg_dbl,             vec_mergelv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_V2DF_V2DF_V2DF)

OB_DEF     (s390_vec_pack,              s390_vec_pack_s16,  s390_vec_pack_b64,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_pack_s16,          s390_vpkh,          0,                  0,                  BT_OV_V16QI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_pack_u16,          s390_vpkh,          0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_pack_b16,          s390_vpkh,          0,                  0,                  BT_OV_BV16QI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_pack_s32,          s390_vpkf,          0,                  0,                  BT_OV_V8HI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_pack_u32,          s390_vpkf,          0,                  0,                  BT_OV_UV8HI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_pack_b32,          s390_vpkf,          0,                  0,                  BT_OV_BV8HI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_pack_s64,          s390_vpkg,          0,                  0,                  BT_OV_V4SI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_pack_u64,          s390_vpkg,          0,                  0,                  BT_OV_UV4SI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_pack_b64,          s390_vpkg,          0,                  0,                  BT_OV_BV4SI_BV2DI_BV2DI)

B_DEF      (s390_vpkh,                  vec_packv8hi,       0,                  B_VX,               0,                  BT_FN_UV16QI_UV8HI_UV8HI)
B_DEF      (s390_vpkf,                  vec_packv4si,       0,                  B_VX,               0,                  BT_FN_UV8HI_UV4SI_UV4SI)
B_DEF      (s390_vpkg,                  vec_packv2di,       0,                  B_VX,               0,                  BT_FN_UV4SI_UV2DI_UV2DI)

OB_DEF     (s390_vec_packs,             s390_vec_packs_s16, s390_vec_packs_u64, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_packs_s16,         s390_vpksh,         0,                  0,                  BT_OV_V16QI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_packs_u16,         s390_vpklsh,        0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_packs_s32,         s390_vpksf,         0,                  0,                  BT_OV_V8HI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_packs_u32,         s390_vpklsf,        0,                  0,                  BT_OV_UV8HI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_packs_s64,         s390_vpksg,         0,                  0,                  BT_OV_V4SI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_packs_u64,         s390_vpklsg,        0,                  0,                  BT_OV_UV4SI_UV2DI_UV2DI)

B_DEF      (s390_vpksh,                 vec_packsv8hi,      0,                  B_VX,               0,                  BT_FN_V16QI_V8HI_V8HI)
B_DEF      (s390_vpklsh,                vec_packsuv8hi,     0,                  B_VX,               0,                  BT_FN_UV16QI_UV8HI_UV8HI)
B_DEF      (s390_vpksf,                 vec_packsv4si,      0,                  B_VX,               0,                  BT_FN_V8HI_V4SI_V4SI)
B_DEF      (s390_vpklsf,                vec_packsuv4si,     0,                  B_VX,               0,                  BT_FN_UV8HI_UV4SI_UV4SI)
B_DEF      (s390_vpksg,                 vec_packsv2di,      0,                  B_VX,               0,                  BT_FN_V4SI_V2DI_V2DI)
B_DEF      (s390_vpklsg,                vec_packsuv2di,     0,                  B_VX,               0,                  BT_FN_UV4SI_UV2DI_UV2DI)

OB_DEF     (s390_vec_packs_cc,          s390_vec_packs_cc_s16,s390_vec_packs_cc_u64,B_VX,           BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vec_packs_cc_s16,      s390_vpkshs,        0,                  0,                  BT_OV_V16QI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vec_packs_cc_u16,      s390_vpklshs,       0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vec_packs_cc_s32,      s390_vpksfs,        0,                  0,                  BT_OV_V8HI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vec_packs_cc_u32,      s390_vpklsfs,       0,                  0,                  BT_OV_UV8HI_UV4SI_UV4SI_INTPTR)
OB_DEF_VAR (s390_vec_packs_cc_s64,      s390_vpksgs,        0,                  0,                  BT_OV_V4SI_V2DI_V2DI_INTPTR)
OB_DEF_VAR (s390_vec_packs_cc_u64,      s390_vpklsgs,       0,                  0,                  BT_OV_UV4SI_UV2DI_UV2DI_INTPTR)

B_DEF      (s390_vpkshs,                vec_packs_ccv8hi,   0,                  B_VX,               0,                  BT_FN_V16QI_V8HI_V8HI_INTPTR)
B_DEF      (s390_vpklshs,               vec_packsu_ccv8hi,  0,                  B_VX,               0,                  BT_FN_UV16QI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vpksfs,                vec_packs_ccv4si,   0,                  B_VX,               0,                  BT_FN_V8HI_V4SI_V4SI_INTPTR)
B_DEF      (s390_vpklsfs,               vec_packsu_ccv4si,  0,                  B_VX,               0,                  BT_FN_UV8HI_UV4SI_UV4SI_INTPTR)
B_DEF      (s390_vpksgs,                vec_packs_ccv2di,   0,                  B_VX,               0,                  BT_FN_V4SI_V2DI_V2DI_INTPTR)
B_DEF      (s390_vpklsgs,               vec_packsu_ccv2di,  0,                  B_VX,               0,                  BT_FN_UV4SI_UV2DI_UV2DI_INTPTR)

OB_DEF     (s390_vec_packsu,            s390_vec_packsu_s16,s390_vec_packsu_u64,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_packsu_s16,        s390_vec_packsu_u16,0,                  0,                  BT_OV_UV16QI_V8HI_V8HI)                  /* vpklsh */
OB_DEF_VAR (s390_vec_packsu_u16,        s390_vpklsh,        0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_packsu_s32,        s390_vec_packsu_u32,0,                  0,                  BT_OV_UV8HI_V4SI_V4SI)                   /* vpklsf */
OB_DEF_VAR (s390_vec_packsu_u32,        s390_vpklsf,        0,                  0,                  BT_OV_UV8HI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_packsu_s64,        s390_vec_packsu_u64,0,                  0,                  BT_OV_UV4SI_V2DI_V2DI)                   /* vpklsg */
OB_DEF_VAR (s390_vec_packsu_u64,        s390_vpklsg,        0,                  0,                  BT_OV_UV4SI_UV2DI_UV2DI)

B_DEF      (s390_vec_packsu_u16,        vec_packsu_uv8hi,   0,                  B_INT | B_VX,       0,                  BT_FN_UV16QI_UV8HI_UV8HI)                /* vpklsh */
B_DEF      (s390_vec_packsu_u32,        vec_packsu_uv4si,   0,                  B_INT | B_VX,       0,                  BT_FN_UV8HI_UV4SI_UV4SI)                 /* vpklsf */
B_DEF      (s390_vec_packsu_u64,        vec_packsu_uv2di,   0,                  B_INT | B_VX,       0,                  BT_FN_UV4SI_UV2DI_UV2DI)                 /* vpklsg */

OB_DEF     (s390_vec_packsu_cc,         s390_vec_packsu_cc_u16,s390_vec_packsu_cc_u64,B_VX,         BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vec_packsu_cc_u16,     s390_vpklshs,       0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vec_packsu_cc_u32,     s390_vpklsfs,       0,                  0,                  BT_OV_UV8HI_UV4SI_UV4SI_INTPTR)
OB_DEF_VAR (s390_vec_packsu_cc_u64,     s390_vpklsgs,       0,                  0,                  BT_OV_UV4SI_UV2DI_UV2DI_INTPTR)

OB_DEF     (s390_vec_perm,              s390_vec_perm_s8,   s390_vec_perm_dbl,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_perm_s8,           s390_vperm,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_perm_b8,           s390_vperm,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_perm_u8,           s390_vperm,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_perm_s16,          s390_vperm,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI_UV16QI)
OB_DEF_VAR (s390_vec_perm_b16,          s390_vperm,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI_UV16QI)
OB_DEF_VAR (s390_vec_perm_u16,          s390_vperm,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV16QI)
OB_DEF_VAR (s390_vec_perm_s32,          s390_vperm,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI_UV16QI)
OB_DEF_VAR (s390_vec_perm_b32,          s390_vperm,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI_UV16QI)
OB_DEF_VAR (s390_vec_perm_u32,          s390_vperm,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV16QI)
OB_DEF_VAR (s390_vec_perm_s64,          s390_vperm,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI_UV16QI)
OB_DEF_VAR (s390_vec_perm_b64,          s390_vperm,         0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI_UV16QI)
OB_DEF_VAR (s390_vec_perm_u64,          s390_vperm,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI_UV16QI)
OB_DEF_VAR (s390_vec_perm_flt,          s390_vperm,         B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF_UV16QI)
OB_DEF_VAR (s390_vec_perm_dbl,          s390_vperm,         0,                  0,                  BT_OV_V2DF_V2DF_V2DF_UV16QI)

B_DEF      (s390_vperm,                 vec_permv16qi,      0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_permi,             s390_vec_permi_s64, s390_vec_permi_dbl, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_INT)
OB_DEF_VAR (s390_vec_permi_s64,         s390_vpdi,          0,                  O3_U2,              BT_OV_V2DI_V2DI_V2DI_INT)
OB_DEF_VAR (s390_vec_permi_b64,         s390_vpdi,          0,                  O3_U2,              BT_OV_BV2DI_BV2DI_BV2DI_INT)
OB_DEF_VAR (s390_vec_permi_u64,         s390_vpdi,          0,                  O3_U2,              BT_OV_UV2DI_UV2DI_UV2DI_INT)
OB_DEF_VAR (s390_vec_permi_dbl,         s390_vpdi,          0,                  O3_U2,              BT_OV_V2DF_V2DF_V2DF_INT)

B_DEF      (s390_vpdi,                  vec_permiv2di,      0,                  B_VX,               O3_U2,              BT_FN_UV2DI_UV2DI_UV2DI_INT)

OB_DEF     (s390_vec_splat,             s390_vec_splat2_s8, s390_vec_splat2_dbl,B_VX,               BT_FN_OV4SI_OV4SI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_s8,         s390_vrepb,         0,                  O2_U4,              BT_OV_V16QI_V16QI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_b8,         s390_vrepb,         0,                  O2_U4,              BT_OV_BV16QI_BV16QI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_u8,         s390_vrepb,         0,                  O2_U4,              BT_OV_UV16QI_UV16QI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_s16,        s390_vreph,         0,                  O2_U3,              BT_OV_V8HI_V8HI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_b16,        s390_vreph,         0,                  O2_U3,              BT_OV_BV8HI_BV8HI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_u16,        s390_vreph,         0,                  O2_U3,              BT_OV_UV8HI_UV8HI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_s32,        s390_vrepf,         0,                  O2_U2,              BT_OV_V4SI_V4SI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_b32,        s390_vrepf,         0,                  O2_U2,              BT_OV_BV4SI_BV4SI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_u32,        s390_vrepf,         0,                  O2_U2,              BT_OV_UV4SI_UV4SI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_s64,        s390_vrepg,         0,                  O2_U1,              BT_OV_V2DI_V2DI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_b64,        s390_vrepg,         0,                  O2_U1,              BT_OV_BV2DI_BV2DI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_u64,        s390_vrepg,         0,                  O2_U1,              BT_OV_UV2DI_UV2DI_UCHAR)
OB_DEF_VAR (s390_vec_splat2_flt,        s390_vrepf_flt,     B_VXE,              O2_U2,              BT_OV_V4SF_V4SF_UCHAR)                   /* vrepf */
OB_DEF_VAR (s390_vec_splat2_dbl,        s390_vrepg_dbl,     0,                  O2_U1,              BT_OV_V2DF_V2DF_UCHAR)                   /* vrepg */

B_DEF      (s390_vrepb,                 vec_splatv16qi,     0,                  B_VX,               O2_U4,              BT_FN_UV16QI_UV16QI_UCHAR)
B_DEF      (s390_vreph,                 vec_splatv8hi,      0,                  B_VX,               O2_U3,              BT_FN_UV8HI_UV8HI_UCHAR)
B_DEF      (s390_vrepf,                 vec_splatv4si,      0,                  B_VX,               O2_U2,              BT_FN_UV4SI_UV4SI_UCHAR)
B_DEF      (s390_vrepf_flt,             vec_splatv4sf,      0,                  B_INT | B_VXE,      O2_U2,              BT_FN_V4SF_V4SF_UCHAR)
B_DEF      (s390_vrepg,                 vec_splatv2di,      0,                  B_VX,               O2_U1,              BT_FN_UV2DI_UV2DI_UCHAR)
B_DEF      (s390_vrepg_dbl,             vec_splatv2df,      0,                  B_INT | B_VX,       O2_U1,              BT_FN_V2DF_V2DF_UCHAR)

OB_DEF     (s390_vec_scatter_element,   s390_vec_scatter_element_s32,s390_vec_scatter_element_dbl,B_VX,BT_FN_VOID_V4SI_V4SI_INTPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_s32,s390_vscef,        0,                  O4_U2,              BT_OV_VOID_V4SI_UV4SI_INTPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_b32,s390_vscef,        0,                  O4_U2,              BT_OV_VOID_BV4SI_UV4SI_UINTPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_u32,s390_vscef,        0,                  O4_U2,              BT_OV_VOID_UV4SI_UV4SI_UINTPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_s64,s390_vsceg,        0,                  O4_U1,              BT_OV_VOID_V2DI_UV2DI_LONGLONGPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_b64,s390_vsceg,        0,                  O4_U1,              BT_OV_VOID_BV2DI_UV2DI_ULONGLONGPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_u64,s390_vsceg,        0,                  O4_U1,              BT_OV_VOID_UV2DI_UV2DI_ULONGLONGPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_flt,s390_vscef,        B_VXE,              O4_U2,              BT_OV_VOID_V4SF_V4SF_FLTPTR_ULONGLONG)
OB_DEF_VAR (s390_vec_scatter_element_dbl,s390_vsceg,        0,                  O4_U1,              BT_OV_VOID_V2DF_UV2DI_DBLPTR_ULONGLONG)

B_DEF      (s390_vscef,                 vec_scatter_elementv4si,0,              B_VX,               O4_U2,              BT_FN_VOID_UV4SI_UV4SI_UINTPTR_ULONGLONG)
B_DEF      (s390_vsceg,                 vec_scatter_elementv2di,0,              B_VX,               O4_U1,              BT_FN_VOID_UV2DI_UV2DI_ULONGLONGPTR_ULONGLONG)

/* First two operands are swapped in s390-c.c */
OB_DEF     (s390_vec_sel,               s390_vec_sel_b8_a,  s390_vec_sel_dbl_b, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sel_b8_a,          s390_vselb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sel_b8_b,          s390_vselb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_sel_s8_a,          s390_vselb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_sel_s8_b,          s390_vselb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_sel_u8_a,          s390_vselb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sel_u8_b,          s390_vselb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_sel_b16_a,         s390_vselh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sel_b16_b,         s390_vselh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_sel_s16_a,         s390_vselh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_sel_s16_b,         s390_vselh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_sel_u16_a,         s390_vselh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sel_u16_b,         s390_vselh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_sel_b32_a,         s390_vself,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sel_b32_b,         s390_vself,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_sel_s32_a,         s390_vself,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_sel_s32_b,         s390_vself,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_sel_u32_a,         s390_vself,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sel_u32_b,         s390_vself,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_sel_b64_a,         s390_vselg,         0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_sel_b64_b,         s390_vselg,         0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_sel_s64_a,         s390_vselg,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI_UV2DI)
OB_DEF_VAR (s390_vec_sel_s64_b,         s390_vselg,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_sel_u64_a,         s390_vselg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_sel_u64_b,         s390_vselg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_sel_flt_a,         s390_vself_flt,     B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF_UV4SI)
OB_DEF_VAR (s390_vec_sel_flt_b,         s390_vself_flt,     B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_sel_dbl_a,         s390_vselg_dbl,     0,                  0,                  BT_OV_V2DF_V2DF_V2DF_UV2DI)
OB_DEF_VAR (s390_vec_sel_dbl_b,         s390_vselg_dbl,     0,                  0,                  BT_OV_V2DF_V2DF_V2DF_BV2DI)

B_DEF      (s390_vselb,                 vselv16qi,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vselh,                 vselv8hi,           0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vself,                 vselv4si,           0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vselg,                 vselv2di,           0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI_UV2DI)
B_DEF      (s390_vself_flt,             vselv4sf,           0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF_V4SF_UV4SI)
B_DEF      (s390_vselg_dbl,             vselv2df,           0,                  B_VX,               0,                  BT_FN_V2DF_V2DF_V2DF_UV2DI)

OB_DEF     (s390_vec_extend_s64,        s390_vec_extend_s64_s8,s390_vec_extend_s64_s32,B_VX,        BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_extend_s64_s8,     s390_vsegb,         0,                  0,                  BT_OV_V2DI_V16QI)
OB_DEF_VAR (s390_vec_extend_s64_s16,    s390_vsegh,         0,                  0,                  BT_OV_V2DI_V8HI)
OB_DEF_VAR (s390_vec_extend_s64_s32,    s390_vsegf,         0,                  0,                  BT_OV_V2DI_V4SI)

B_DEF      (s390_vsegb,                 vec_extendv16qi,    0,                  B_VX,               0,                  BT_FN_V2DI_V16QI)
B_DEF      (s390_vsegh,                 vec_extendv8hi,     0,                  B_VX,               0,                  BT_FN_V2DI_V8HI)
B_DEF      (s390_vsegf,                 vec_extendv4si,     0,                  B_VX,               0,                  BT_FN_V2DI_V4SI)

OB_DEF     (s390_vec_xst,               s390_vec_xst_s8,    s390_vec_xst_dbl,   B_VX,               BT_FN_VOID_OV4SI_INT_VOIDPTR)
OB_DEF_VAR (s390_vec_xst_s8,            MAX,                0,                  O2_LIT,             BT_OV_VOID_V16QI_LONG_SCHARPTR)          /* vst */
OB_DEF_VAR (s390_vec_xst_u8,            MAX,                0,                  O2_LIT,             BT_OV_VOID_UV16QI_LONG_UCHARPTR)         /* vst */
OB_DEF_VAR (s390_vec_xst_s16,           MAX,                0,                  O2_LIT,             BT_OV_VOID_V8HI_LONG_SHORTPTR)           /* vst */
OB_DEF_VAR (s390_vec_xst_u16,           MAX,                0,                  O2_LIT,             BT_OV_VOID_UV8HI_LONG_USHORTPTR)         /* vst */
OB_DEF_VAR (s390_vec_xst_s32,           MAX,                0,                  O2_LIT,             BT_OV_VOID_V4SI_LONG_INTPTR)             /* vst */
OB_DEF_VAR (s390_vec_xst_u32,           MAX,                0,                  O2_LIT,             BT_OV_VOID_UV4SI_LONG_UINTPTR)           /* vst */
OB_DEF_VAR (s390_vec_xst_s64,           MAX,                0,                  O2_LIT,             BT_OV_VOID_V2DI_LONG_LONGLONGPTR)        /* vst */
OB_DEF_VAR (s390_vec_xst_u64,           MAX,                0,                  O2_LIT,             BT_OV_VOID_UV2DI_LONG_ULONGLONGPTR)      /* vst */
OB_DEF_VAR (s390_vec_xst_flt,           MAX,                0,                  O2_LIT,             BT_OV_VOID_V4SF_LONG_FLTPTR)             /* vst */
OB_DEF_VAR (s390_vec_xst_dbl,           MAX,                0,                  O2_LIT,             BT_OV_VOID_V2DF_LONG_DBLPTR)             /* vst */

OB_DEF     (s390_vec_xstd2,             s390_vec_xstd2_s8,  s390_vec_xstd2_dbl, B_DEP | B_VX,       BT_FN_VOID_OV4SI_INT_VOIDPTR)
OB_DEF_VAR (s390_vec_xstd2_s8,          MAX,                0,                  O2_LIT,             BT_OV_VOID_V16QI_LONG_SCHARPTR)          /* vst */
OB_DEF_VAR (s390_vec_xstd2_u8,          MAX,                0,                  O2_LIT,             BT_OV_VOID_UV16QI_LONG_UCHARPTR)         /* vst */
OB_DEF_VAR (s390_vec_xstd2_s16,         MAX,                0,                  O2_LIT,             BT_OV_VOID_V8HI_LONG_SHORTPTR)           /* vst */
OB_DEF_VAR (s390_vec_xstd2_u16,         MAX,                0,                  O2_LIT,             BT_OV_VOID_UV8HI_LONG_USHORTPTR)         /* vst */
OB_DEF_VAR (s390_vec_xstd2_s32,         MAX,                0,                  O2_LIT,             BT_OV_VOID_V4SI_LONG_INTPTR)             /* vst */
OB_DEF_VAR (s390_vec_xstd2_u32,         MAX,                0,                  O2_LIT,             BT_OV_VOID_UV4SI_LONG_UINTPTR)           /* vst */
OB_DEF_VAR (s390_vec_xstd2_s64,         MAX,                0,                  O2_LIT,             BT_OV_VOID_V2DI_LONG_LONGLONGPTR)        /* vst */
OB_DEF_VAR (s390_vec_xstd2_u64,         MAX,                0,                  O2_LIT,             BT_OV_VOID_UV2DI_LONG_ULONGLONGPTR)      /* vst */
OB_DEF_VAR (s390_vec_xstd2_dbl,         MAX,                0,                  O2_LIT,             BT_OV_VOID_V2DF_LONG_DBLPTR)             /* vst */

OB_DEF     (s390_vec_xstw4,             s390_vec_xstw4_s8,  s390_vec_xstw4_flt, B_DEP | B_VX,       BT_FN_VOID_OV4SI_INT_VOIDPTR)
OB_DEF_VAR (s390_vec_xstw4_s8,          MAX,                0,                  O2_LIT,             BT_OV_VOID_V16QI_LONG_SCHARPTR)          /* vst */
OB_DEF_VAR (s390_vec_xstw4_u8,          MAX,                0,                  O2_LIT,             BT_OV_VOID_UV16QI_LONG_UCHARPTR)         /* vst */
OB_DEF_VAR (s390_vec_xstw4_s16,         MAX,                0,                  O2_LIT,             BT_OV_VOID_V8HI_LONG_SHORTPTR)           /* vst */
OB_DEF_VAR (s390_vec_xstw4_u16,         MAX,                0,                  O2_LIT,             BT_OV_VOID_UV8HI_LONG_USHORTPTR)         /* vst */
OB_DEF_VAR (s390_vec_xstw4_s32,         MAX,                0,                  O2_LIT,             BT_OV_VOID_V4SI_LONG_INTPTR)             /* vst */
OB_DEF_VAR (s390_vec_xstw4_u32,         MAX,                0,                  O2_LIT,             BT_OV_VOID_UV4SI_LONG_UINTPTR)           /* vst */
OB_DEF_VAR (s390_vec_xstw4_flt,         MAX,                B_VXE,              O2_LIT,             BT_OV_VOID_V4SF_LONG_FLTPTR)             /* vst */

OB_DEF     (s390_vec_store_len,         s390_vec_store_len_s8,s390_vec_store_len_dbl,B_VX,          BT_FN_VOID_OV4SI_VOIDPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_s8,      s390_vstl,          0,                  0,                  BT_OV_VOID_V16QI_SCHARPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_u8,      s390_vstl,          0,                  0,                  BT_OV_VOID_UV16QI_UCHARPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_s16,     s390_vstl,          0,                  0,                  BT_OV_VOID_V8HI_SHORTPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_u16,     s390_vstl,          0,                  0,                  BT_OV_VOID_UV8HI_USHORTPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_s32,     s390_vstl,          0,                  0,                  BT_OV_VOID_V4SI_INTPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_u32,     s390_vstl,          0,                  0,                  BT_OV_VOID_UV4SI_UINTPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_s64,     s390_vstl,          0,                  0,                  BT_OV_VOID_V2DI_LONGLONGPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_u64,     s390_vstl,          0,                  0,                  BT_OV_VOID_UV2DI_ULONGLONGPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_flt,     s390_vstl,          B_VXE,              0,                  BT_OV_VOID_V4SF_FLTPTR_UINT)
OB_DEF_VAR (s390_vec_store_len_dbl,     s390_vstl,          0,                  0,                  BT_OV_VOID_V2DF_DBLPTR_UINT)

B_DEF      (s390_vstl,                  vstlv16qi,          0,                  B_VX,               0,                  BT_FN_VOID_V16QI_UINT_VOIDPTR)
B_DEF      (s390_vstrlr,                vstrlrv16qi,        0,                  B_VXE,              0,                  BT_FN_VOID_V16QI_UINT_VOIDPTR)

B_DEF      (s390_vec_bperm_u128,        vbpermv16qi,        0,                  B_VXE,              0,                  BT_FN_UV2DI_UV16QI_UV16QI)               /* vbperm */
B_DEF      (s390_vbperm,                vbpermv16qi,        0,                  B_VXE,              0,                  BT_FN_UV2DI_UV16QI_UV16QI)

OB_DEF     (s390_vec_unpackh,           s390_vec_unpackh_s8,s390_vec_unpackh_u32,B_VX,              BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_unpackh_s8,        s390_vuphb,         0,                  0,                  BT_OV_V8HI_V16QI)
OB_DEF_VAR (s390_vec_unpackh_b8,        s390_vuphb,         0,                  0,                  BT_OV_BV8HI_BV16QI)
OB_DEF_VAR (s390_vec_unpackh_u8,        s390_vuplhb,        0,                  0,                  BT_OV_UV8HI_UV16QI)
OB_DEF_VAR (s390_vec_unpackh_s16,       s390_vuphh,         0,                  0,                  BT_OV_V4SI_V8HI)
OB_DEF_VAR (s390_vec_unpackh_b16,       s390_vuphh,         0,                  0,                  BT_OV_BV4SI_BV8HI)
OB_DEF_VAR (s390_vec_unpackh_u16,       s390_vuplhh,        0,                  0,                  BT_OV_UV4SI_UV8HI)
OB_DEF_VAR (s390_vec_unpackh_s32,       s390_vuphf,         0,                  0,                  BT_OV_V2DI_V4SI)
OB_DEF_VAR (s390_vec_unpackh_b32,       s390_vuphf,         0,                  0,                  BT_OV_BV2DI_BV4SI)
OB_DEF_VAR (s390_vec_unpackh_u32,       s390_vuplhf,        0,                  0,                  BT_OV_UV2DI_UV4SI)

B_DEF      (s390_vuphb,                 vec_unpackhv16qi,   0,                  B_VX,               0,                  BT_FN_V8HI_V16QI)
B_DEF      (s390_vuplhb,                vec_unpackh_lv16qi, 0,                  B_VX,               0,                  BT_FN_UV8HI_UV16QI)
B_DEF      (s390_vuphh,                 vec_unpackhv8hi,    0,                  B_VX,               0,                  BT_FN_V4SI_V8HI)
B_DEF      (s390_vuplhh,                vec_unpackh_lv8hi,  0,                  B_VX,               0,                  BT_FN_UV4SI_UV8HI)
B_DEF      (s390_vuphf,                 vec_unpackhv4si,    0,                  B_VX,               0,                  BT_FN_V2DI_V4SI)
B_DEF      (s390_vuplhf,                vec_unpackh_lv4si,  0,                  B_VX,               0,                  BT_FN_UV2DI_UV4SI)

OB_DEF     (s390_vec_unpackl,           s390_vec_unpackl_s8,s390_vec_unpackl_u32,B_VX,              BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_unpackl_s8,        s390_vuplb,         0,                  0,                  BT_OV_V8HI_V16QI)
OB_DEF_VAR (s390_vec_unpackl_b8,        s390_vuplb,         0,                  0,                  BT_OV_BV8HI_BV16QI)
OB_DEF_VAR (s390_vec_unpackl_u8,        s390_vupllb,        0,                  0,                  BT_OV_UV8HI_UV16QI)
OB_DEF_VAR (s390_vec_unpackl_s16,       s390_vuplhw,        0,                  0,                  BT_OV_V4SI_V8HI)
OB_DEF_VAR (s390_vec_unpackl_b16,       s390_vupllh,        0,                  0,                  BT_OV_BV4SI_BV8HI)
OB_DEF_VAR (s390_vec_unpackl_u16,       s390_vupllh,        0,                  0,                  BT_OV_UV4SI_UV8HI)
OB_DEF_VAR (s390_vec_unpackl_s32,       s390_vuplf,         0,                  0,                  BT_OV_V2DI_V4SI)
OB_DEF_VAR (s390_vec_unpackl_b32,       s390_vuplf,         0,                  0,                  BT_OV_BV2DI_BV4SI)
OB_DEF_VAR (s390_vec_unpackl_u32,       s390_vupllf,        0,                  0,                  BT_OV_UV2DI_UV4SI)

B_DEF      (s390_vuplb,                 vec_unpacklv16qi,   0,                  B_VX,               0,                  BT_FN_V8HI_V16QI)
B_DEF      (s390_vupllb,                vec_unpackl_lv16qi, 0,                  B_VX,               0,                  BT_FN_UV8HI_UV16QI)
B_DEF      (s390_vuplhw,                vec_unpacklv8hi,    0,                  B_VX,               0,                  BT_FN_V4SI_V8HI)
B_DEF      (s390_vupllh,                vec_unpackl_lv8hi,  0,                  B_VX,               0,                  BT_FN_UV4SI_UV8HI)
B_DEF      (s390_vuplf,                 vec_unpacklv4si,    0,                  B_VX,               0,                  BT_FN_V2DI_V4SI)
B_DEF      (s390_vupllf,                vec_unpackl_lv4si,  0,                  B_VX,               0,                  BT_FN_UV2DI_UV4SI)

OB_DEF     (s390_vec_addc,              s390_vec_addc_u8,   s390_vec_addc_u64,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_addc_u8,           s390_vaccb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_addc_u16,          s390_vacch,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_addc_u32,          s390_vaccf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_addc_u64,          s390_vaccg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)

B_DEF      (s390_vaccb,                 vaccb_v16qi,        0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vacch,                 vacch_v8hi,         0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vaccf,                 vaccf_v4si,         0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vaccg,                 vaccg_v2di,         0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)

B_DEF      (s390_vec_add_u128,          addti3,             0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vec_addc_u128,         vaccq_ti,           0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vec_adde_u128,         vacq,               0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vec_addec_u128,        vacccq,             0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)

B_DEF      (s390_vaq,                   addti3,             0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128)
B_DEF      (s390_vaccq,                 vaccq_ti,           0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128)
B_DEF      (s390_vacq,                  vacq,               0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128_INT128)
B_DEF      (s390_vacccq,                vacccq,             0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128_INT128)

OB_DEF     (s390_vec_and,               s390_vec_and_b8,    s390_vec_and_dbl_c, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_and_b8,            s390_vn,            0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_and_s8_a,          s390_vn,            B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_and_s8_b,          s390_vn,            0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_and_s8_c,          s390_vn,            B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_and_u8_a,          s390_vn,            B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_and_u8_b,          s390_vn,            0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_and_u8_c,          s390_vn,            B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_and_b16,           s390_vn,            0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_and_s16_a,         s390_vn,            B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_and_s16_b,         s390_vn,            0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_and_s16_c,         s390_vn,            B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_and_u16_a,         s390_vn,            B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_and_u16_b,         s390_vn,            0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_and_u16_c,         s390_vn,            B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_and_b32,           s390_vn,            0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_and_s32_a,         s390_vn,            B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_and_s32_b,         s390_vn,            0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_and_s32_c,         s390_vn,            B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_and_u32_a,         s390_vn,            B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_and_u32_b,         s390_vn,            0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_and_u32_c,         s390_vn,            B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_and_b64,           s390_vn,            0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_and_s64_a,         s390_vn,            B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_and_s64_b,         s390_vn,            0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_and_s64_c,         s390_vn,            B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_and_u64_a,         s390_vn,            B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_and_u64_b,         s390_vn,            0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_and_u64_c,         s390_vn,            B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_and_flt_a,         s390_vn,            B_VXE | B_DEP,      0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_and_flt_b,         s390_vn,            B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_and_flt_c,         s390_vn,            B_VXE | B_DEP,      0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_and_dbl_a,         s390_vn,            B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_and_dbl_b,         s390_vn,            0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_and_dbl_c,         s390_vn,            B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vn,                    andv16qi3,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_andc,              s390_vec_andc_b8,   s390_vec_andc_dbl_c,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_andc_b8,           s390_vnc,           0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_andc_s8_a,         s390_vnc,           B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_andc_s8_b,         s390_vnc,           0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_andc_s8_c,         s390_vnc,           B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_andc_u8_a,         s390_vnc,           B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_andc_u8_b,         s390_vnc,           0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_andc_u8_c,         s390_vnc,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_andc_b16,          s390_vnc,           0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_andc_s16_a,        s390_vnc,           B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_andc_s16_b,        s390_vnc,           0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_andc_s16_c,        s390_vnc,           B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_andc_u16_a,        s390_vnc,           B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_andc_u16_b,        s390_vnc,           0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_andc_u16_c,        s390_vnc,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_andc_b32,          s390_vnc,           0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_andc_s32_a,        s390_vnc,           B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_andc_s32_b,        s390_vnc,           0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_andc_s32_c,        s390_vnc,           B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_andc_u32_a,        s390_vnc,           B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_andc_u32_b,        s390_vnc,           0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_andc_u32_c,        s390_vnc,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_andc_b64,          s390_vnc,           0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_andc_s64_a,        s390_vnc,           B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_andc_s64_b,        s390_vnc,           0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_andc_s64_c,        s390_vnc,           B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_andc_u64_a,        s390_vnc,           B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_andc_u64_b,        s390_vnc,           0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_andc_u64_c,        s390_vnc,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_andc_flt_a,        s390_vnc,           B_VXE | B_DEP,      0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_andc_flt_b,        s390_vnc,           B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_andc_flt_c,        s390_vnc,           B_VXE | B_DEP,      0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_andc_dbl_a,        s390_vnc,           B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_andc_dbl_b,        s390_vnc,           0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_andc_dbl_c,        s390_vnc,           B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vnc,                   vec_andcv16qi3,     0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_avg,               s390_vec_avg_s8,    s390_vec_avg_u64,   B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_avg_s8,            s390_vavgb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_avg_u8,            s390_vavglb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_avg_s16,           s390_vavgh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_avg_u16,           s390_vavglh,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_avg_s32,           s390_vavgf,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_avg_u32,           s390_vavglf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_avg_s64,           s390_vavgg,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_avg_u64,           s390_vavglg,        0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)

B_DEF      (s390_vavgb,                 vec_avgv16qi,       0,                  B_VX,               0,                  BT_FN_V16QI_V16QI_V16QI)
B_DEF      (s390_vavglb,                vec_avguv16qi,      0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vavgh,                 vec_avgv8hi,        0,                  B_VX,               0,                  BT_FN_V8HI_V8HI_V8HI)
B_DEF      (s390_vavglh,                vec_avguv8hi,       0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vavgf,                 vec_avgv4si,        0,                  B_VX,               0,                  BT_FN_V4SI_V4SI_V4SI)
B_DEF      (s390_vavglf,                vec_avguv4si,       0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vavgg,                 vec_avgv2di,        0,                  B_VX,               0,                  BT_FN_V2DI_V2DI_V2DI)
B_DEF      (s390_vavglg,                vec_avguv2di,       0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)

B_DEF      (s390_vcksm,                 vec_checksum,       0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)

B_DEF      (s390_vceqbs,                vec_cmpeqv16qi_cc,  0,                  B_VX,               0,                  BT_FN_V16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vceqhs,                vec_cmpeqv8hi_cc,   0,                  B_VX,               0,                  BT_FN_V8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vceqfs,                vec_cmpeqv4si_cc,   0,                  B_VX,               0,                  BT_FN_V4SI_UV4SI_UV4SI_INTPTR)
B_DEF      (s390_vceqgs,                vec_cmpeqv2di_cc,   0,                  B_VX,               0,                  BT_FN_V2DI_UV2DI_UV2DI_INTPTR)
B_DEF      (s390_vfcesbs,               vec_cmpeqv4sf_cc,   0,                  B_VXE,              0,                  BT_FN_V4SI_V4SF_V4SF_INTPTR)
B_DEF      (s390_vfcedbs,               vec_cmpeqv2df_cc,   0,                  B_VX,               0,                  BT_FN_V2DI_V2DF_V2DF_INTPTR)

B_DEF      (s390_vchbs,                 vec_cmphv16qi_cc,   0,                  B_VX,               0,                  BT_FN_V16QI_V16QI_V16QI_INTPTR)
B_DEF      (s390_vchlbs,                vec_cmphlv16qi_cc,  0,                  B_VX,               0,                  BT_FN_V16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vchhs,                 vec_cmphv8hi_cc,    0,                  B_VX,               0,                  BT_FN_V8HI_V8HI_V8HI_INTPTR)
B_DEF      (s390_vchlhs,                vec_cmphlv8hi_cc,   0,                  B_VX,               0,                  BT_FN_V8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vchfs,                 vec_cmphv4si_cc,    0,                  B_VX,               0,                  BT_FN_V4SI_V4SI_V4SI_INTPTR)
B_DEF      (s390_vchlfs,                vec_cmphlv4si_cc,   0,                  B_VX,               0,                  BT_FN_V4SI_UV4SI_UV4SI_INTPTR)
B_DEF      (s390_vchgs,                 vec_cmphv2di_cc,    0,                  B_VX,               0,                  BT_FN_V2DI_V2DI_V2DI_INTPTR)
B_DEF      (s390_vchlgs,                vec_cmphlv2di_cc,   0,                  B_VX,               0,                  BT_FN_V2DI_UV2DI_UV2DI_INTPTR)
B_DEF      (s390_vfchsbs,               vec_cmphv4sf_cc,    0,                  B_VXE,              0,                  BT_FN_V4SI_V4SF_V4SF_INTPTR)
B_DEF      (s390_vfchdbs,               vec_cmphv2df_cc,    0,                  B_VX,               0,                  BT_FN_V2DI_V2DF_V2DF_INTPTR)

B_DEF      (s390_vfchesbs,              vec_cmphev4sf_cc,   0,                  B_VXE,              0,                  BT_FN_V4SI_V4SF_V4SF_INTPTR)
B_DEF      (s390_vfchedbs,              vec_cmphev2df_cc,   0,                  B_VX,               0,                  BT_FN_V2DI_V2DF_V2DF_INTPTR)

B_DEF      (vec_all_eqv16qi,            vec_all_eqv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_all_eqv8hi,             vec_all_eqv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_all_eqv4si,             vec_all_eqv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_all_eqv2di,             vec_all_eqv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_all_eqv4sf,             vec_all_eqv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_eqv2df,             vec_all_eqv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_all_nev16qi,            vec_all_nev16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_all_nev8hi,             vec_all_nev8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_all_nev4si,             vec_all_nev4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_all_nev2di,             vec_all_nev2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_all_nev4sf,             vec_all_nev4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_nev2df,             vec_all_nev2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_all_gev16qi,            vec_all_gev16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_all_geuv16qi,           vec_all_geuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_all_gev8hi,             vec_all_gev8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_all_geuv8hi,            vec_all_geuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_all_gev4si,             vec_all_gev4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_all_geuv4si,            vec_all_geuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_all_gev2di,             vec_all_gev2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_all_geuv2di,            vec_all_geuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_all_gev4sf,             vec_all_gev4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_gev2df,             vec_all_gev2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_all_gtv16qi,            vec_all_gtv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_all_gtuv16qi,           vec_all_gtuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_all_gtv8hi,             vec_all_gtv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_all_gtuv8hi,            vec_all_gtuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_all_gtv4si,             vec_all_gtv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_all_gtuv4si,            vec_all_gtuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_all_gtv2di,             vec_all_gtv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_all_gtuv2di,            vec_all_gtuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_all_gtv4sf,             vec_all_gtv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_gtv2df,             vec_all_gtv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_all_lev16qi,            vec_all_lev16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_all_leuv16qi,           vec_all_leuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_all_lev8hi,             vec_all_lev8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_all_leuv8hi,            vec_all_leuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_all_lev4si,             vec_all_lev4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_all_leuv4si,            vec_all_leuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_all_lev2di,             vec_all_lev2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_all_leuv2di,            vec_all_leuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_all_lev4sf,             vec_all_lev4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_lev2df,             vec_all_lev2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_all_ltv16qi,            vec_all_ltv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_all_ltuv16qi,           vec_all_ltuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_all_ltv8hi,             vec_all_ltv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_all_ltuv8hi,            vec_all_ltuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_all_ltv4si,             vec_all_ltv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_all_ltuv4si,            vec_all_ltuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_all_ltv2di,             vec_all_ltv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_all_ltuv2di,            vec_all_ltuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_all_ltv4sf,             vec_all_ltv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_ltv2df,             vec_all_ltv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_eq,            s390_vec_all_eq_s8_a,s390_vec_all_eq_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_eq_s8_a,       vec_all_eqv16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_all_eq_s8_b,       vec_all_eqv16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_eq_b8_a,       vec_all_eqv16qi,    0,                  0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_eq_b8_b,       vec_all_eqv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_all_eq_b8_c,       vec_all_eqv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_eq_u8_a,       vec_all_eqv16qi,    0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_eq_u8_b,       vec_all_eqv16qi,    B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_eq_s16_a,      vec_all_eqv8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_all_eq_s16_b,      vec_all_eqv8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_eq_b16_a,      vec_all_eqv8hi,     0,                  0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_eq_b16_b,      vec_all_eqv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_all_eq_b16_c,      vec_all_eqv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_eq_u16_a,      vec_all_eqv8hi,     0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_eq_u16_b,      vec_all_eqv8hi,     B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_eq_s32_a,      vec_all_eqv4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_all_eq_s32_b,      vec_all_eqv4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_eq_b32_a,      vec_all_eqv4si,     0,                  0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_eq_b32_b,      vec_all_eqv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_all_eq_b32_c,      vec_all_eqv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_eq_u32_a,      vec_all_eqv4si,     0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_eq_u32_b,      vec_all_eqv4si,     B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_eq_s64_a,      vec_all_eqv2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_all_eq_s64_b,      vec_all_eqv2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_eq_b64_a,      vec_all_eqv2di,     0,                  0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_eq_b64_b,      vec_all_eqv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_all_eq_b64_c,      vec_all_eqv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_eq_u64_a,      vec_all_eqv2di,     0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_eq_u64_b,      vec_all_eqv2di,     B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_eq_flt,        vec_all_eqv4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_all_eq_dbl,        vec_all_eqv2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_ne,            s390_vec_all_ne_s8_a,s390_vec_all_ne_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_ne_s8_a,       vec_all_nev16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_all_ne_s8_b,       vec_all_nev16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_ne_b8_a,       vec_all_nev16qi,    0,                  0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_ne_b8_b,       vec_all_nev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_all_ne_b8_c,       vec_all_nev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_ne_u8_a,       vec_all_nev16qi,    0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_ne_u8_b,       vec_all_nev16qi,    B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_ne_s16_a,      vec_all_nev8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_all_ne_s16_b,      vec_all_nev8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_ne_b16_a,      vec_all_nev8hi,     0,                  0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_ne_b16_b,      vec_all_nev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_all_ne_b16_c,      vec_all_nev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_ne_u16_a,      vec_all_nev8hi,     0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_ne_u16_b,      vec_all_nev8hi,     B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_ne_s32_a,      vec_all_nev4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_all_ne_s32_b,      vec_all_nev4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_ne_b32_a,      vec_all_nev4si,     0,                  0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_ne_b32_b,      vec_all_nev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_all_ne_b32_c,      vec_all_nev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_ne_u32_a,      vec_all_nev4si,     0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_ne_u32_b,      vec_all_nev4si,     B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_ne_s64_a,      vec_all_nev2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_all_ne_s64_b,      vec_all_nev2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_ne_b64_a,      vec_all_nev2di,     0,                  0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_ne_b64_b,      vec_all_nev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_all_ne_b64_c,      vec_all_nev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_ne_u64_a,      vec_all_nev2di,     0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_ne_u64_b,      vec_all_nev2di,     B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_ne_flt,        vec_all_nev4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_all_ne_dbl,        vec_all_nev2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_ge,            s390_vec_all_ge_s8_a,s390_vec_all_ge_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_ge_s8_a,       vec_all_gev16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_all_ge_s8_b,       vec_all_gev16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_ge_b8_a,       vec_all_geuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_ge_b8_b,       vec_all_gev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_all_ge_b8_c,       vec_all_geuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_ge_u8_a,       vec_all_geuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_ge_u8_b,       vec_all_geuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_ge_s16_a,      vec_all_gev8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_all_ge_s16_b,      vec_all_gev8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_ge_b16_a,      vec_all_geuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_ge_b16_b,      vec_all_gev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_all_ge_b16_c,      vec_all_geuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_ge_u16_a,      vec_all_geuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_ge_u16_b,      vec_all_geuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_ge_s32_a,      vec_all_gev4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_all_ge_s32_b,      vec_all_gev4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_ge_b32_a,      vec_all_geuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_ge_b32_b,      vec_all_gev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_all_ge_b32_c,      vec_all_geuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_ge_u32_a,      vec_all_geuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_ge_u32_b,      vec_all_geuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_ge_s64_a,      vec_all_gev2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_all_ge_s64_b,      vec_all_gev2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_ge_b64_a,      vec_all_geuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_ge_b64_b,      vec_all_gev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_all_ge_b64_c,      vec_all_geuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_ge_u64_a,      vec_all_geuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_ge_u64_b,      vec_all_geuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_ge_flt,        vec_all_gev4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_all_ge_dbl,        vec_all_gev2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_gt,            s390_vec_all_gt_s8_a,s390_vec_all_gt_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_gt_s8_a,       vec_all_gtv16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_all_gt_s8_b,       vec_all_gtv16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_gt_b8_a,       vec_all_gtuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_gt_b8_b,       vec_all_gtv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_all_gt_b8_c,       vec_all_gtuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_gt_u8_a,       vec_all_gtuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_gt_u8_b,       vec_all_gtuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_gt_s16_a,      vec_all_gtv8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_all_gt_s16_b,      vec_all_gtv8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_gt_b16_a,      vec_all_gtuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_gt_b16_b,      vec_all_gtv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_all_gt_b16_c,      vec_all_gtuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_gt_u16_a,      vec_all_gtuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_gt_u16_b,      vec_all_gtuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_gt_s32_a,      vec_all_gtv4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_all_gt_s32_b,      vec_all_gtv4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_gt_b32_a,      vec_all_gtuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_gt_b32_b,      vec_all_gtv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_all_gt_b32_c,      vec_all_gtuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_gt_u32_a,      vec_all_gtuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_gt_u32_b,      vec_all_gtuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_gt_s64_a,      vec_all_gtv2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_all_gt_s64_b,      vec_all_gtv2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_gt_b64_a,      vec_all_gtuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_gt_b64_b,      vec_all_gtv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_all_gt_b64_c,      vec_all_gtuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_gt_u64_a,      vec_all_gtuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_gt_u64_b,      vec_all_gtuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_gt_flt,        vec_all_gtv4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_all_gt_dbl,        vec_all_gtv2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_le,            s390_vec_all_le_s8_a,s390_vec_all_le_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_le_s8_a,       vec_all_lev16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_all_le_s8_b,       vec_all_lev16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_le_b8_a,       vec_all_leuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_le_b8_b,       vec_all_lev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_all_le_b8_c,       vec_all_leuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_le_u8_a,       vec_all_leuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_le_u8_b,       vec_all_leuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_le_s16_a,      vec_all_lev8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_all_le_s16_b,      vec_all_lev8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_le_b16_a,      vec_all_leuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_le_b16_b,      vec_all_lev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_all_le_b16_c,      vec_all_leuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_le_u16_a,      vec_all_leuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_le_u16_b,      vec_all_leuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_le_s32_a,      vec_all_lev4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_all_le_s32_b,      vec_all_lev4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_le_b32_a,      vec_all_leuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_le_b32_b,      vec_all_lev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_all_le_b32_c,      vec_all_leuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_le_u32_a,      vec_all_leuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_le_u32_b,      vec_all_leuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_le_s64_a,      vec_all_lev2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_all_le_s64_b,      vec_all_lev2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_le_b64_a,      vec_all_leuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_le_b64_b,      vec_all_lev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_all_le_b64_c,      vec_all_leuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_le_u64_a,      vec_all_leuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_le_u64_b,      vec_all_leuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_le_flt,        vec_all_lev4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_all_le_dbl,        vec_all_lev2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_lt,            s390_vec_all_lt_s8_a,s390_vec_all_lt_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_lt_s8_a,       vec_all_ltv16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_all_lt_s8_b,       vec_all_ltv16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_lt_b8_a,       vec_all_ltuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_lt_b8_b,       vec_all_ltv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_all_lt_b8_c,       vec_all_ltuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_lt_u8_a,       vec_all_ltuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_all_lt_u8_b,       vec_all_ltuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_all_lt_s16_a,      vec_all_ltv8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_all_lt_s16_b,      vec_all_ltv8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_lt_b16_a,      vec_all_ltuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_lt_b16_b,      vec_all_ltv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_all_lt_b16_c,      vec_all_ltuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_lt_u16_a,      vec_all_ltuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_all_lt_u16_b,      vec_all_ltuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_all_lt_s32_a,      vec_all_ltv4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_all_lt_s32_b,      vec_all_ltv4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_lt_b32_a,      vec_all_ltuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_lt_b32_b,      vec_all_ltv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_all_lt_b32_c,      vec_all_ltuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_lt_u32_a,      vec_all_ltuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_all_lt_u32_b,      vec_all_ltuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_all_lt_s64_a,      vec_all_ltv2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_all_lt_s64_b,      vec_all_ltv2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_lt_b64_a,      vec_all_ltuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_lt_b64_b,      vec_all_ltv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_all_lt_b64_c,      vec_all_ltuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_lt_u64_a,      vec_all_ltuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_all_lt_u64_b,      vec_all_ltuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_all_lt_flt,        vec_all_ltv4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_all_lt_dbl,        vec_all_ltv2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

B_DEF      (vec_any_eqv16qi,            vec_any_eqv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_any_eqv8hi,             vec_any_eqv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_any_eqv4si,             vec_any_eqv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_any_eqv2di,             vec_any_eqv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_any_eqv4sf,             vec_any_eqv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_eqv2df,             vec_any_eqv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_any_nev16qi,            vec_any_nev16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_any_nev8hi,             vec_any_nev8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_any_nev4si,             vec_any_nev4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_any_nev2di,             vec_any_nev2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_any_nev4sf,             vec_any_nev4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_nev2df,             vec_any_nev2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_any_gev16qi,            vec_any_gev16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_any_geuv16qi,           vec_any_geuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_any_gev8hi,             vec_any_gev8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_any_geuv8hi,            vec_any_geuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_any_gev4si,             vec_any_gev4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_any_geuv4si,            vec_any_geuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_any_gev2di,             vec_any_gev2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_any_geuv2di,            vec_any_geuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_any_gev4sf,             vec_any_gev4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_gev2df,             vec_any_gev2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_any_gtv16qi,            vec_any_gtv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_any_gtuv16qi,           vec_any_gtuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_any_gtv8hi,             vec_any_gtv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_any_gtuv8hi,            vec_any_gtuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_any_gtv4si,             vec_any_gtv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_any_gtuv4si,            vec_any_gtuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_any_gtv2di,             vec_any_gtv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_any_gtuv2di,            vec_any_gtuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_any_gtv4sf,             vec_any_gtv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_gtv2df,             vec_any_gtv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_any_lev16qi,            vec_any_lev16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_any_leuv16qi,           vec_any_leuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_any_lev8hi,             vec_any_lev8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_any_leuv8hi,            vec_any_leuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_any_lev4si,             vec_any_lev4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_any_leuv4si,            vec_any_leuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_any_lev2di,             vec_any_lev2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_any_leuv2di,            vec_any_leuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_any_lev4sf,             vec_any_lev4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_lev2df,             vec_any_lev2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_any_ltv16qi,            vec_any_ltv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_V16QI_V16QI)
B_DEF      (vec_any_ltuv16qi,           vec_any_ltuv16qi,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV16QI_UV16QI)
B_DEF      (vec_any_ltv8hi,             vec_any_ltv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V8HI_V8HI)
B_DEF      (vec_any_ltuv8hi,            vec_any_ltuv8hi,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV8HI_UV8HI)
B_DEF      (vec_any_ltv4si,             vec_any_ltv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V4SI_V4SI)
B_DEF      (vec_any_ltuv4si,            vec_any_ltuv4si,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV4SI_UV4SI)
B_DEF      (vec_any_ltv2di,             vec_any_ltv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DI_V2DI)
B_DEF      (vec_any_ltuv2di,            vec_any_ltuv2di,    0,                  B_INT | B_VX,       0,                  BT_FN_INT_UV2DI_UV2DI)
B_DEF      (vec_any_ltv4sf,             vec_any_ltv4sf,     0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_ltv2df,             vec_any_ltv2df,     0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_eq,            s390_vec_any_eq_s8_a,s390_vec_any_eq_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_eq_s8_a,       vec_any_eqv16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_any_eq_s8_b,       vec_any_eqv16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_eq_b8_a,       vec_any_eqv16qi,    0,                  0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_eq_b8_b,       vec_any_eqv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_any_eq_b8_c,       vec_any_eqv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_eq_u8_a,       vec_any_eqv16qi,    0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_eq_u8_b,       vec_any_eqv16qi,    B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_eq_s16_a,      vec_any_eqv8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_any_eq_s16_b,      vec_any_eqv8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_eq_b16_a,      vec_any_eqv8hi,     0,                  0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_eq_b16_b,      vec_any_eqv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_any_eq_b16_c,      vec_any_eqv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_eq_u16_a,      vec_any_eqv8hi,     0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_eq_u16_b,      vec_any_eqv8hi,     B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_eq_s32_a,      vec_any_eqv4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_any_eq_s32_b,      vec_any_eqv4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_eq_b32_a,      vec_any_eqv4si,     0,                  0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_eq_b32_b,      vec_any_eqv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_any_eq_b32_c,      vec_any_eqv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_eq_u32_a,      vec_any_eqv4si,     0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_eq_u32_b,      vec_any_eqv4si,     B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_eq_s64_a,      vec_any_eqv2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_any_eq_s64_b,      vec_any_eqv2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_eq_b64_a,      vec_any_eqv2di,     0,                  0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_eq_b64_b,      vec_any_eqv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_any_eq_b64_c,      vec_any_eqv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_eq_u64_a,      vec_any_eqv2di,     0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_eq_u64_b,      vec_any_eqv2di,     B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_eq_flt,        vec_any_eqv4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_eq_dbl,        vec_any_eqv2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_ne,            s390_vec_any_ne_s8_a,s390_vec_any_ne_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_ne_s8_a,       vec_any_nev16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_any_ne_s8_b,       vec_any_nev16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_ne_b8_a,       vec_any_nev16qi,    0,                  0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_ne_b8_b,       vec_any_nev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_any_ne_b8_c,       vec_any_nev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_ne_u8_a,       vec_any_nev16qi,    0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_ne_u8_b,       vec_any_nev16qi,    B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_ne_s16_a,      vec_any_nev8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_any_ne_s16_b,      vec_any_nev8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_ne_b16_a,      vec_any_nev8hi,     0,                  0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_ne_b16_b,      vec_any_nev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_any_ne_b16_c,      vec_any_nev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_ne_u16_a,      vec_any_nev8hi,     0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_ne_u16_b,      vec_any_nev8hi,     B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_ne_s32_a,      vec_any_nev4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_any_ne_s32_b,      vec_any_nev4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_ne_b32_a,      vec_any_nev4si,     0,                  0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_ne_b32_b,      vec_any_nev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_any_ne_b32_c,      vec_any_nev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_ne_u32_a,      vec_any_nev4si,     0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_ne_u32_b,      vec_any_nev4si,     B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_ne_s64_a,      vec_any_nev2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_any_ne_s64_b,      vec_any_nev2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_ne_b64_a,      vec_any_nev2di,     0,                  0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_ne_b64_b,      vec_any_nev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_any_ne_b64_c,      vec_any_nev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_ne_u64_a,      vec_any_nev2di,     0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_ne_u64_b,      vec_any_nev2di,     B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_ne_flt,        vec_any_nev4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_ne_dbl,        vec_any_nev2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_ge,            s390_vec_any_ge_s8_a,s390_vec_any_ge_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_ge_s8_a,       vec_any_gev16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_any_ge_s8_b,       vec_any_gev16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_ge_b8_a,       vec_any_geuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_ge_b8_b,       vec_any_gev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_any_ge_b8_c,       vec_any_geuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_ge_u8_a,       vec_any_geuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_ge_u8_b,       vec_any_geuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_ge_s16_a,      vec_any_gev8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_any_ge_s16_b,      vec_any_gev8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_ge_b16_a,      vec_any_geuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_ge_b16_b,      vec_any_gev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_any_ge_b16_c,      vec_any_geuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_ge_u16_a,      vec_any_geuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_ge_u16_b,      vec_any_geuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_ge_s32_a,      vec_any_gev4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_any_ge_s32_b,      vec_any_gev4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_ge_b32_a,      vec_any_geuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_ge_b32_b,      vec_any_gev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_any_ge_b32_c,      vec_any_geuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_ge_u32_a,      vec_any_geuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_ge_u32_b,      vec_any_geuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_ge_s64_a,      vec_any_gev2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_any_ge_s64_b,      vec_any_gev2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_ge_b64_a,      vec_any_geuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_ge_b64_b,      vec_any_gev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_any_ge_b64_c,      vec_any_geuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_ge_u64_a,      vec_any_geuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_ge_u64_b,      vec_any_geuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_ge_flt,        vec_any_gev4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_ge_dbl,        vec_any_gev2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_gt,            s390_vec_any_gt_s8_a,s390_vec_any_gt_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_gt_s8_a,       vec_any_gtv16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_any_gt_s8_b,       vec_any_gtv16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_gt_b8_a,       vec_any_gtuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_gt_b8_b,       vec_any_gtv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_any_gt_b8_c,       vec_any_gtuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_gt_u8_a,       vec_any_gtuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_gt_u8_b,       vec_any_gtuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_gt_s16_a,      vec_any_gtv8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_any_gt_s16_b,      vec_any_gtv8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_gt_b16_a,      vec_any_gtuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_gt_b16_b,      vec_any_gtv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_any_gt_b16_c,      vec_any_gtuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_gt_u16_a,      vec_any_gtuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_gt_u16_b,      vec_any_gtuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_gt_s32_a,      vec_any_gtv4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_any_gt_s32_b,      vec_any_gtv4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_gt_b32_a,      vec_any_gtuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_gt_b32_b,      vec_any_gtv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_any_gt_b32_c,      vec_any_gtuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_gt_u32_a,      vec_any_gtuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_gt_u32_b,      vec_any_gtuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_gt_s64_a,      vec_any_gtv2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_any_gt_s64_b,      vec_any_gtv2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_gt_b64_a,      vec_any_gtuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_gt_b64_b,      vec_any_gtv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_any_gt_b64_c,      vec_any_gtuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_gt_u64_a,      vec_any_gtuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_gt_u64_b,      vec_any_gtuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_gt_flt,        vec_any_gtv4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_gt_dbl,        vec_any_gtv2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_le,            s390_vec_any_le_s8_a,s390_vec_any_le_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_le_s8_a,       vec_any_lev16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_any_le_s8_b,       vec_any_lev16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_le_b8_a,       vec_any_leuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_le_b8_b,       vec_any_lev16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_any_le_b8_c,       vec_any_leuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_le_u8_a,       vec_any_leuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_le_u8_b,       vec_any_leuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_le_s16_a,      vec_any_lev8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_any_le_s16_b,      vec_any_lev8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_le_b16_a,      vec_any_leuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_le_b16_b,      vec_any_lev8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_any_le_b16_c,      vec_any_leuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_le_u16_a,      vec_any_leuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_le_u16_b,      vec_any_leuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_le_s32_a,      vec_any_lev4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_any_le_s32_b,      vec_any_lev4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_le_b32_a,      vec_any_leuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_le_b32_b,      vec_any_lev4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_any_le_b32_c,      vec_any_leuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_le_u32_a,      vec_any_leuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_le_u32_b,      vec_any_leuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_le_s64_a,      vec_any_lev2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_any_le_s64_b,      vec_any_lev2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_le_b64_a,      vec_any_leuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_le_b64_b,      vec_any_lev2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_any_le_b64_c,      vec_any_leuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_le_u64_a,      vec_any_leuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_le_u64_b,      vec_any_leuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_le_flt,        vec_any_lev4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_le_dbl,        vec_any_lev2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_lt,            s390_vec_any_lt_s8_a,s390_vec_any_lt_dbl,B_VX,              BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_lt_s8_a,       vec_any_ltv16qi,    0,                  0,                  BT_OV_INT_V16QI_V16QI)
OB_DEF_VAR (s390_vec_any_lt_s8_b,       vec_any_ltv16qi,    B_DEP,              0,                  BT_OV_INT_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_lt_b8_a,       vec_any_ltuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_lt_b8_b,       vec_any_ltv16qi,    B_DEP,              0,                  BT_OV_INT_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_any_lt_b8_c,       vec_any_ltuv16qi,   B_DEP,              0,                  BT_OV_INT_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_lt_u8_a,       vec_any_ltuv16qi,   0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_any_lt_u8_b,       vec_any_ltuv16qi,   B_DEP,              0,                  BT_OV_INT_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_any_lt_s16_a,      vec_any_ltv8hi,     0,                  0,                  BT_OV_INT_V8HI_V8HI)
OB_DEF_VAR (s390_vec_any_lt_s16_b,      vec_any_ltv8hi,     B_DEP,              0,                  BT_OV_INT_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_lt_b16_a,      vec_any_ltuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_lt_b16_b,      vec_any_ltv8hi,     B_DEP,              0,                  BT_OV_INT_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_any_lt_b16_c,      vec_any_ltuv8hi,    B_DEP,              0,                  BT_OV_INT_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_lt_u16_a,      vec_any_ltuv8hi,    0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_any_lt_u16_b,      vec_any_ltuv8hi,    B_DEP,              0,                  BT_OV_INT_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_any_lt_s32_a,      vec_any_ltv4si,     0,                  0,                  BT_OV_INT_V4SI_V4SI)
OB_DEF_VAR (s390_vec_any_lt_s32_b,      vec_any_ltv4si,     B_DEP,              0,                  BT_OV_INT_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_lt_b32_a,      vec_any_ltuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_lt_b32_b,      vec_any_ltv4si,     B_DEP,              0,                  BT_OV_INT_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_any_lt_b32_c,      vec_any_ltuv4si,    B_DEP,              0,                  BT_OV_INT_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_lt_u32_a,      vec_any_ltuv4si,    0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_any_lt_u32_b,      vec_any_ltuv4si,    B_DEP,              0,                  BT_OV_INT_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_any_lt_s64_a,      vec_any_ltv2di,     0,                  0,                  BT_OV_INT_V2DI_V2DI)
OB_DEF_VAR (s390_vec_any_lt_s64_b,      vec_any_ltv2di,     B_DEP,              0,                  BT_OV_INT_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_lt_b64_a,      vec_any_ltuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_lt_b64_b,      vec_any_ltv2di,     B_DEP,              0,                  BT_OV_INT_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_any_lt_b64_c,      vec_any_ltuv2di,    B_DEP,              0,                  BT_OV_INT_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_lt_u64_a,      vec_any_ltuv2di,    0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_any_lt_u64_b,      vec_any_ltuv2di,    B_DEP,              0,                  BT_OV_INT_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_any_lt_flt,        vec_any_ltv4sf,     B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_lt_dbl,        vec_any_ltv2df,     0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_cmpeq,             s390_vec_cmpeq_s8,  s390_vec_cmpeq_dbl, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cmpeq_s8,          s390_vceqb,         0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_cmpeq_u8,          s390_vceqb,         0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cmpeq_b8,          s390_vceqb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_cmpeq_s16,         s390_vceqh,         0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_cmpeq_u16,         s390_vceqh,         0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cmpeq_b16,         s390_vceqh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_cmpeq_s32,         s390_vceqf,         0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_cmpeq_u32,         s390_vceqf,         0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cmpeq_b32,         s390_vceqf,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_cmpeq_s64,         s390_vceqg,         0,                  0,                  BT_OV_BV2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_cmpeq_u64,         s390_vceqg,         0,                  0,                  BT_OV_BV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_cmpeq_b64,         s390_vceqg,         0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_cmpeq_flt,         s390_vfcesb,        B_VXE,              0,                  BT_OV_BV4SI_V4SF_V4SF)
OB_DEF_VAR (s390_vec_cmpeq_dbl,         s390_vfcedb,        0,                  0,                  BT_OV_BV2DI_V2DF_V2DF)

B_DEF      (s390_vceqb,                 vec_cmpeqv16qi,     0,                  B_VX,               0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (s390_vceqh,                 vec_cmpeqv8hi,      0,                  B_VX,               0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (s390_vceqf,                 vec_cmpeqv4si,      0,                  B_VX,               0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (s390_vceqg,                 vec_cmpeqv2di,      0,                  B_VX,               0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (s390_vfcesb,                vec_cmpeqv4sf,      0,                  B_VXE,              0,                  BT_FN_V4SI_V4SF_V4SF)
B_DEF      (s390_vfcedb,                vec_cmpeqv2df,      0,                  B_VX,               0,                  BT_FN_V2DI_V2DF_V2DF)

OB_DEF     (s390_vec_cmpge,             s390_vec_cmpge_s8,  s390_vec_cmpge_dbl, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cmpge_s8,          vec_cmpgev16qi,     0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_cmpge_u8,          vec_cmpgeuv16qi,    0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cmpge_s16,         vec_cmpgev8hi,      0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_cmpge_u16,         vec_cmpgeuv8hi,     0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cmpge_s32,         vec_cmpgev4si,      0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_cmpge_u32,         vec_cmpgeuv4si,     0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cmpge_s64,         vec_cmpgev2di,      0,                  0,                  BT_OV_BV2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_cmpge_u64,         vec_cmpgeuv2di,     0,                  0,                  BT_OV_BV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_cmpge_flt,         s390_vfchesb,       B_VXE,              0,                  BT_OV_BV4SI_V4SF_V4SF)
OB_DEF_VAR (s390_vec_cmpge_dbl,         s390_vfchedb,       0,                  0,                  BT_OV_BV2DI_V2DF_V2DF)

B_DEF      (vec_cmpgev16qi,             vec_cmpgev16qi,     0,                  B_INT | B_VX,       0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (vec_cmpgeuv16qi,            vec_cmpgeuv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (vec_cmpgev8hi,              vec_cmpgev8hi,      0,                  B_INT | B_VX,       0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (vec_cmpgeuv8hi,             vec_cmpgeuv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (vec_cmpgev4si,              vec_cmpgev4si,      0,                  B_INT | B_VX,       0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (vec_cmpgeuv4si,             vec_cmpgeuv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (vec_cmpgev2di,              vec_cmpgev2di,      0,                  B_INT | B_VX,       0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (vec_cmpgeuv2di,             vec_cmpgeuv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (s390_vfchesb,               vec_cmpgev4sf_quiet_nocc,0,             B_VXE,              0,                  BT_FN_V4SI_V4SF_V4SF)
B_DEF      (s390_vfchedb,               vec_cmpgev2df_quiet_nocc,0,             B_VX,               0,                  BT_FN_V2DI_V2DF_V2DF)

OB_DEF     (s390_vec_cmpgt,             s390_vec_cmpgt_s8,  s390_vec_cmpgt_dbl, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cmpgt_s8,          s390_vchb,          0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_cmpgt_u8,          s390_vchlb,         0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cmpgt_s16,         s390_vchh,          0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_cmpgt_u16,         s390_vchlh,         0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cmpgt_s32,         s390_vchf,          0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_cmpgt_u32,         s390_vchlf,         0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cmpgt_s64,         s390_vchg,          0,                  0,                  BT_OV_BV2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_cmpgt_u64,         s390_vchlg,         0,                  0,                  BT_OV_BV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_cmpgt_flt,         s390_vfchsb,        B_VXE,              0,                  BT_OV_BV4SI_V4SF_V4SF)
OB_DEF_VAR (s390_vec_cmpgt_dbl,         s390_vfchdb,        0,                  0,                  BT_OV_BV2DI_V2DF_V2DF)

B_DEF      (s390_vchb,                  vec_cmpgtv16qi,     0,                  B_VX,               0,                  BT_FN_V16QI_V16QI_V16QI)
B_DEF      (s390_vchlb,                 vec_cmpgtuv16qi,    0,                  B_VX,               0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (s390_vchh,                  vec_cmpgtv8hi,      0,                  B_VX,               0,                  BT_FN_V8HI_V8HI_V8HI)
B_DEF      (s390_vchlh,                 vec_cmpgtuv8hi,     0,                  B_VX,               0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (s390_vchf,                  vec_cmpgtv4si,      0,                  B_VX,               0,                  BT_FN_V4SI_V4SI_V4SI)
B_DEF      (s390_vchlf,                 vec_cmpgtuv4si,     0,                  B_VX,               0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (s390_vchg,                  vec_cmpgtv2di,      0,                  B_VX,               0,                  BT_FN_V2DI_V2DI_V2DI)
B_DEF      (s390_vchlg,                 vec_cmpgtuv2di,     0,                  B_VX,               0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (s390_vfchsb,                vec_cmpgtv4sf_quiet_nocc,0,             B_VXE,              0,                  BT_FN_V4SI_V4SF_V4SF)
B_DEF      (s390_vfchdb,                vec_cmpgtv2df_quiet_nocc,0,             B_VX,               0,                  BT_FN_V2DI_V2DF_V2DF)

OB_DEF     (s390_vec_cmple,             s390_vec_cmple_s8,  s390_vec_cmple_dbl, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cmple_s8,          vec_cmplev16qi,     0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_cmple_u8,          vec_cmpleuv16qi,    0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cmple_s16,         vec_cmplev8hi,      0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_cmple_u16,         vec_cmpleuv8hi,     0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cmple_s32,         vec_cmplev4si,      0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_cmple_u32,         vec_cmpleuv4si,     0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cmple_s64,         vec_cmplev2di,      0,                  0,                  BT_OV_BV2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_cmple_u64,         vec_cmpleuv2di,     0,                  0,                  BT_OV_BV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_cmple_flt,         vec_cmplev4sf,      B_VXE,              0,                  BT_OV_BV4SI_V4SF_V4SF)
OB_DEF_VAR (s390_vec_cmple_dbl,         vec_cmplev2df,      0,                  0,                  BT_OV_BV2DI_V2DF_V2DF)

B_DEF      (vec_cmplev16qi,             vec_cmplev16qi,     0,                  B_INT | B_VX,       0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (vec_cmpleuv16qi,            vec_cmpleuv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (vec_cmplev8hi,              vec_cmplev8hi,      0,                  B_INT | B_VX,       0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (vec_cmpleuv8hi,             vec_cmpleuv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (vec_cmplev4si,              vec_cmplev4si,      0,                  B_INT | B_VX,       0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (vec_cmpleuv4si,             vec_cmpleuv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (vec_cmplev2di,              vec_cmplev2di,      0,                  B_INT | B_VX,       0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (vec_cmpleuv2di,             vec_cmpleuv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (vec_cmplev4sf,              vec_cmplev4sf_quiet_nocc,0,             B_INT | B_VXE,      0,                  BT_FN_V4SI_V4SF_V4SF)
B_DEF      (vec_cmplev2df,              vec_cmplev2df_quiet_nocc,0,             B_INT | B_VX,       0,                  BT_FN_V2DI_V2DF_V2DF)

OB_DEF     (s390_vec_cmplt,             s390_vec_cmplt_s8,  s390_vec_cmplt_dbl, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cmplt_s8,          vec_cmpltv16qi,     0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_cmplt_u8,          vec_cmpltuv16qi,    0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cmplt_s16,         vec_cmpltv8hi,      0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_cmplt_u16,         vec_cmpltuv8hi,     0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cmplt_s32,         vec_cmpltv4si,      0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_cmplt_u32,         vec_cmpltuv4si,     0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cmplt_s64,         vec_cmpltv2di,      0,                  0,                  BT_OV_BV2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_cmplt_u64,         vec_cmpltuv2di,     0,                  0,                  BT_OV_BV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_cmplt_flt,         vec_cmpltv4sf,      B_VXE,              0,                  BT_OV_BV4SI_V4SF_V4SF)
OB_DEF_VAR (s390_vec_cmplt_dbl,         vec_cmpltv2df,      0,                  0,                  BT_OV_BV2DI_V2DF_V2DF)

B_DEF      (vec_cmpltv16qi,             vec_cmpltv16qi,     0,                  B_INT | B_VX,       0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (vec_cmpltuv16qi,            vec_cmpltuv16qi,    0,                  B_INT | B_VX,       0,                  BT_FN_V16QI_UV16QI_UV16QI)
B_DEF      (vec_cmpltv8hi,              vec_cmpltv8hi,      0,                  B_INT | B_VX,       0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (vec_cmpltuv8hi,             vec_cmpltuv8hi,     0,                  B_INT | B_VX,       0,                  BT_FN_V8HI_UV8HI_UV8HI)
B_DEF      (vec_cmpltv4si,              vec_cmpltv4si,      0,                  B_INT | B_VX,       0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (vec_cmpltuv4si,             vec_cmpltuv4si,     0,                  B_INT | B_VX,       0,                  BT_FN_V4SI_UV4SI_UV4SI)
B_DEF      (vec_cmpltv2di,              vec_cmpltv2di,      0,                  B_INT | B_VX,       0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (vec_cmpltuv2di,             vec_cmpltuv2di,     0,                  B_INT | B_VX,       0,                  BT_FN_V2DI_UV2DI_UV2DI)
B_DEF      (vec_cmpltv4sf,              vec_cmpltv4sf_quiet_nocc,0,             B_INT | B_VXE,      0,                  BT_FN_V4SI_V4SF_V4SF)
B_DEF      (vec_cmpltv2df,              vec_cmpltv2df_quiet_nocc,0,             B_INT | B_VX,       0,                  BT_FN_V2DI_V2DF_V2DF)

OB_DEF     (s390_vec_cntlz,             s390_vec_cntlz_s8,  s390_vec_cntlz_u64, B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cntlz_s8,          s390_vclzb,         0,                  0,                  BT_OV_UV16QI_V16QI)
OB_DEF_VAR (s390_vec_cntlz_u8,          s390_vclzb,         0,                  0,                  BT_OV_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cntlz_s16,         s390_vclzh,         0,                  0,                  BT_OV_UV8HI_V8HI)
OB_DEF_VAR (s390_vec_cntlz_u16,         s390_vclzh,         0,                  0,                  BT_OV_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cntlz_s32,         s390_vclzf,         0,                  0,                  BT_OV_UV4SI_V4SI)
OB_DEF_VAR (s390_vec_cntlz_u32,         s390_vclzf,         0,                  0,                  BT_OV_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cntlz_s64,         s390_vclzg,         0,                  0,                  BT_OV_UV2DI_V2DI)
OB_DEF_VAR (s390_vec_cntlz_u64,         s390_vclzg,         0,                  0,                  BT_OV_UV2DI_UV2DI)

B_DEF      (s390_vclzb,                 clzv16qi2,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI)
B_DEF      (s390_vclzh,                 clzv8hi2,           0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI)
B_DEF      (s390_vclzf,                 clzv4si2,           0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI)
B_DEF      (s390_vclzg,                 clzv2di2,           0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI)

OB_DEF     (s390_vec_cnttz,             s390_vec_cnttz_s8,  s390_vec_cnttz_u64, B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_cnttz_s8,          s390_vctzb,         0,                  0,                  BT_OV_UV16QI_V16QI)
OB_DEF_VAR (s390_vec_cnttz_u8,          s390_vctzb,         0,                  0,                  BT_OV_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_cnttz_s16,         s390_vctzh,         0,                  0,                  BT_OV_UV8HI_V8HI)
OB_DEF_VAR (s390_vec_cnttz_u16,         s390_vctzh,         0,                  0,                  BT_OV_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_cnttz_s32,         s390_vctzf,         0,                  0,                  BT_OV_UV4SI_V4SI)
OB_DEF_VAR (s390_vec_cnttz_u32,         s390_vctzf,         0,                  0,                  BT_OV_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_cnttz_s64,         s390_vctzg,         0,                  0,                  BT_OV_UV2DI_V2DI)
OB_DEF_VAR (s390_vec_cnttz_u64,         s390_vctzg,         0,                  0,                  BT_OV_UV2DI_UV2DI)

B_DEF      (s390_vctzb,                 ctzv16qi2,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI)
B_DEF      (s390_vctzh,                 ctzv8hi2,           0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI)
B_DEF      (s390_vctzf,                 ctzv4si2,           0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI)
B_DEF      (s390_vctzg,                 ctzv2di2,           0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI)

OB_DEF     (s390_vec_xor,               s390_vec_xor_b8,    s390_vec_xor_dbl_c, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_xor_b8,            s390_vx,            0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_xor_s8_a,          s390_vx,            B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_xor_s8_b,          s390_vx,            0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_xor_s8_c,          s390_vx,            B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_xor_u8_a,          s390_vx,            B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_xor_u8_b,          s390_vx,            0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_xor_u8_c,          s390_vx,            B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_xor_b16,           s390_vx,            0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_xor_s16_a,         s390_vx,            B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_xor_s16_b,         s390_vx,            0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_xor_s16_c,         s390_vx,            B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_xor_u16_a,         s390_vx,            B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_xor_u16_b,         s390_vx,            0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_xor_u16_c,         s390_vx,            B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_xor_b32,           s390_vx,            0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_xor_s32_a,         s390_vx,            B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_xor_s32_b,         s390_vx,            0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_xor_s32_c,         s390_vx,            B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_xor_u32_a,         s390_vx,            B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_xor_u32_b,         s390_vx,            0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_xor_u32_c,         s390_vx,            B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_xor_b64,           s390_vx,            0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_xor_s64_a,         s390_vx,            B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_xor_s64_b,         s390_vx,            0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_xor_s64_c,         s390_vx,            B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_xor_u64_a,         s390_vx,            B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_xor_u64_b,         s390_vx,            0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_xor_u64_c,         s390_vx,            B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_xor_flt_a,         s390_vx,            B_VXE | B_DEP,      0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_xor_flt_b,         s390_vx,            B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_xor_flt_c,         s390_vx,            B_VXE | B_DEP,      0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_xor_dbl_a,         s390_vx,            B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_xor_dbl_b,         s390_vx,            0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_xor_dbl_c,         s390_vx,            B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vx,                    xorv16qi3,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_gfmsum,            s390_vec_gfmsum_u8, s390_vec_gfmsum_u32,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_gfmsum_u8,         s390_vgfmb,         0,                  0,                  BT_OV_UV8HI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_gfmsum_u16,        s390_vgfmh,         0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_gfmsum_u32,        s390_vgfmf,         0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI)

B_DEF      (s390_vgfmb,                 vec_gfmsumv16qi,    0,                  B_VX,               0,                  BT_FN_UV8HI_UV16QI_UV16QI)
B_DEF      (s390_vgfmh,                 vec_gfmsumv8hi,     0,                  B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI)
B_DEF      (s390_vgfmf,                 vec_gfmsumv4si,     0,                  B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI)
B_DEF      (s390_vgfmg,                 vec_gfmsum_128,     0,                  B_VX,               0,                  BT_FN_UV16QI_UV2DI_UV2DI)

OB_DEF     (s390_vec_gfmsum_accum,      s390_vec_gfmsum_accum_u8,s390_vec_gfmsum_accum_u32,B_VX,    BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_gfmsum_accum_u8,   s390_vgfmab,        0,                  0,                  BT_OV_UV8HI_UV16QI_UV16QI_UV8HI)
OB_DEF_VAR (s390_vec_gfmsum_accum_u16,  s390_vgfmah,        0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI_UV4SI)
OB_DEF_VAR (s390_vec_gfmsum_accum_u32,  s390_vgfmaf,        0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI_UV2DI)

B_DEF      (s390_vgfmab,                vec_gfmsum_accumv16qi,0,                B_VX,               0,                  BT_FN_UV8HI_UV16QI_UV16QI_UV8HI)
B_DEF      (s390_vgfmah,                vec_gfmsum_accumv8hi,0,                 B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI_UV4SI)
B_DEF      (s390_vgfmaf,                vec_gfmsum_accumv4si,0,                 B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI_UV2DI)
B_DEF      (s390_vgfmag,                vec_gfmsum_accum_128,0,                 B_VX,               0,                  BT_FN_UV16QI_UV2DI_UV2DI_UV16QI)

OB_DEF     (s390_vec_abs,               s390_vec_abs_s8,    s390_vec_abs_dbl,   B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_abs_s8,            s390_vlpb,          0,                  0,                  BT_OV_V16QI_V16QI)
OB_DEF_VAR (s390_vec_abs_s16,           s390_vlph,          0,                  0,                  BT_OV_V8HI_V8HI)
OB_DEF_VAR (s390_vec_abs_s32,           s390_vlpf,          0,                  0,                  BT_OV_V4SI_V4SI)
OB_DEF_VAR (s390_vec_abs_s64,           s390_vlpg,          0,                  0,                  BT_OV_V2DI_V2DI)
OB_DEF_VAR (s390_vec_abs_flt,           s390_vflpsb,        B_VXE,              0,                  BT_OV_V4SF_V4SF)
OB_DEF_VAR (s390_vec_abs_dbl,           s390_vflpdb,        0,                  0,                  BT_OV_V2DF_V2DF)

B_DEF      (s390_vlpb,                  absv16qi2,          0,                  B_VX,               0,                  BT_FN_V16QI_V16QI)
B_DEF      (s390_vlph,                  absv8hi2,           0,                  B_VX,               0,                  BT_FN_V8HI_V8HI)
B_DEF      (s390_vlpf,                  absv4si2,           0,                  B_VX,               0,                  BT_FN_V4SI_V4SI)
B_DEF      (s390_vlpg,                  absv2di2,           0,                  B_VX,               0,                  BT_FN_V2DI_V2DI)
B_DEF      (s390_vflpsb,                absv4sf2,           0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF)
B_DEF      (s390_vflpdb,                absv2df2,           0,                  B_VX,               0,                  BT_FN_V2DF_V2DF)

OB_DEF     (s390_vec_max,               s390_vec_max_s8_a,  s390_vec_max_dbl,   B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_max_s8_a,          s390_vmxb,          B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_max_s8_b,          s390_vmxb,          0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_max_s8_c,          s390_vmxb,          B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_max_u8_a,          s390_vmxlb,         B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_max_u8_b,          s390_vmxlb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_max_u8_c,          s390_vmxlb,         B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_max_s16_a,         s390_vmxh,          B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_max_s16_b,         s390_vmxh,          0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_max_s16_c,         s390_vmxh,          B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_max_u16_a,         s390_vmxlh,         B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_max_u16_b,         s390_vmxlh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_max_u16_c,         s390_vmxlh,         B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_max_s32_a,         s390_vmxf,          B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_max_s32_b,         s390_vmxf,          0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_max_s32_c,         s390_vmxf,          B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_max_u32_a,         s390_vmxlf,         B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_max_u32_b,         s390_vmxlf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_max_u32_c,         s390_vmxlf,         B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_max_s64_a,         s390_vmxg,          B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_max_s64_b,         s390_vmxg,          0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_max_s64_c,         s390_vmxg,          B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_max_u64_a,         s390_vmxlg,         B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_max_u64_b,         s390_vmxlg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_max_u64_c,         s390_vmxlg,         B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_max_flt,           s390_vfmaxsb_4,     B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_max_dbl,           s390_vfmaxdb_4,     0,                  0,                  BT_OV_V2DF_V2DF_V2DF)

B_DEF      (s390_vmxb,                  smaxv16qi3,         0,                  B_VX,               0,                  BT_FN_V16QI_BV16QI_V16QI)
B_DEF      (s390_vmxlb,                 umaxv16qi3,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmxh,                  smaxv8hi3,          0,                  B_VX,               0,                  BT_FN_V8HI_BV8HI_V8HI)
B_DEF      (s390_vmxlh,                 umaxv8hi3,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmxf,                  smaxv4si3,          0,                  B_VX,               0,                  BT_FN_V4SI_BV4SI_V4SI)
B_DEF      (s390_vmxlf,                 umaxv4si3,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vmxg,                  smaxv2di3,          0,                  B_VX,               0,                  BT_FN_V2DI_BV2DI_V2DI)
B_DEF      (s390_vmxlg,                 umaxv2di3,          0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)
B_DEF      (s390_vfmaxsb,               vfmaxv4sf,          0,                  B_VXE,              O3_U4,              BT_FN_V4SF_V4SF_V4SF_INT)
B_DEF      (s390_vfmaxdb,               vfmaxv2df,          0,                  B_VXE,              O3_U4,              BT_FN_V2DF_V2DF_V2DF_INT)
B_DEF      (s390_vfmaxsb_4,             smaxv4sf3,          0,                  B_INT | B_VXE,      0,                  BT_FN_V4SF_V4SF_V4SF)
B_DEF      (s390_vfmaxdb_4,             smaxv2df3,          0,                  B_INT | B_VX,       0,                  BT_FN_V2DF_V2DF_V2DF)

OB_DEF     (s390_vec_min,               s390_vec_min_s8_a,  s390_vec_min_dbl,   B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_min_s8_a,          s390_vmnb,          B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_min_s8_b,          s390_vmnb,          0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_min_s8_c,          s390_vmnb,          B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_min_u8_a,          s390_vmnlb,         B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_min_u8_b,          s390_vmnlb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_min_u8_c,          s390_vmnlb,         B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_min_s16_a,         s390_vmnh,          B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_min_s16_b,         s390_vmnh,          0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_min_s16_c,         s390_vmnh,          B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_min_u16_a,         s390_vmnlh,         B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_min_u16_b,         s390_vmnlh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_min_u16_c,         s390_vmnlh,         B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_min_s32_a,         s390_vmnf,          B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_min_s32_b,         s390_vmnf,          0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_min_s32_c,         s390_vmnf,          B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_min_u32_a,         s390_vmnlf,         B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_min_u32_b,         s390_vmnlf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_min_u32_c,         s390_vmnlf,         B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_min_s64_a,         s390_vmng,          B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_min_s64_b,         s390_vmng,          0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_min_s64_c,         s390_vmng,          B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_min_u64_a,         s390_vmnlg,         B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_min_u64_b,         s390_vmnlg,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_min_u64_c,         s390_vmnlg,         B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_min_flt,           s390_vfminsb_4,     B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_min_dbl,           s390_vfmindb_4,     0,                  0,                  BT_OV_V2DF_V2DF_V2DF)

B_DEF      (s390_vmnb,                  sminv16qi3,         0,                  B_VX,               0,                  BT_FN_V16QI_BV16QI_V16QI)
B_DEF      (s390_vmnlb,                 uminv16qi3,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmnh,                  sminv8hi3,          0,                  B_VX,               0,                  BT_FN_V8HI_BV8HI_V8HI)
B_DEF      (s390_vmnlh,                 uminv8hi3,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmnf,                  sminv4si3,          0,                  B_VX,               0,                  BT_FN_V4SI_BV4SI_V4SI)
B_DEF      (s390_vmnlf,                 uminv4si3,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vmng,                  sminv2di3,          0,                  B_VX,               0,                  BT_FN_V2DI_BV2DI_V2DI)
B_DEF      (s390_vmnlg,                 uminv2di3,          0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)
B_DEF      (s390_vfminsb,               vfminv4sf,          0,                  B_VXE,              O3_U4,              BT_FN_V4SF_V4SF_V4SF_INT)
B_DEF      (s390_vfmindb,               vfminv2df,          0,                  B_VXE,              O3_U4,              BT_FN_V2DF_V2DF_V2DF_INT)
B_DEF      (s390_vfminsb_4,             sminv4sf3,          0,                  B_INT | B_VXE,      0,                  BT_FN_V4SF_V4SF_V4SF) /* vfminsb */
B_DEF      (s390_vfmindb_4,             sminv2df3,          0,                  B_INT | B_VX,       0,                  BT_FN_V2DF_V2DF_V2DF) /* vfmindb */

OB_DEF     (s390_vec_mladd,             s390_vec_mladd_u8,  s390_vec_mladd_s32_c,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mladd_u8,          s390_vmalb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mladd_s8_a,        s390_vmalb,         0,                  0,                  BT_OV_V16QI_UV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mladd_s8_b,        s390_vmalb,         0,                  0,                  BT_OV_V16QI_V16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mladd_s8_c,        s390_vmalb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mladd_u16,         s390_vmalhw,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mladd_s16_a,       s390_vmalhw,        0,                  0,                  BT_OV_V8HI_UV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mladd_s16_b,       s390_vmalhw,        0,                  0,                  BT_OV_V8HI_V8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mladd_s16_c,       s390_vmalhw,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mladd_u32,         s390_vmalf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mladd_s32_a,       s390_vmalf,         0,                  0,                  BT_OV_V4SI_UV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_mladd_s32_b,       s390_vmalf,         0,                  0,                  BT_OV_V4SI_V4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mladd_s32_c,       s390_vmalf,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI_V4SI)

B_DEF      (s390_vmalb,                 vec_vmalv16qi,      0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmalhw,                vec_vmalv8hi,       0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmalf,                 vec_vmalv4si,       0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_mhadd,             s390_vec_mhadd_u8,  s390_vec_mhadd_s32, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mhadd_u8,          s390_vmalhb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mhadd_s8,          s390_vmahb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mhadd_u16,         s390_vmalhh,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mhadd_s16,         s390_vmahh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mhadd_u32,         s390_vmalhf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mhadd_s32,         s390_vmahf,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI_V4SI)

B_DEF      (s390_vmalhb,                vec_vmalhv16qi,     0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmahb,                 vec_vmahv16qi,      0,                  B_VX,               0,                  BT_FN_V16QI_V16QI_V16QI_V16QI)
B_DEF      (s390_vmalhh,                vec_vmalhv8hi,      0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmahh,                 vec_vmahv8hi,       0,                  B_VX,               0,                  BT_FN_V8HI_V8HI_V8HI_V8HI)
B_DEF      (s390_vmalhf,                vec_vmalhv4si,      0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vmahf,                 vec_vmahv4si,       0,                  B_VX,               0,                  BT_FN_V4SI_V4SI_V4SI_V4SI)

OB_DEF     (s390_vec_meadd,             s390_vec_meadd_u8,  s390_vec_meadd_s32, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_meadd_u8,          s390_vmaleb,        0,                  0,                  BT_OV_UV8HI_UV16QI_UV16QI_UV8HI)
OB_DEF_VAR (s390_vec_meadd_s8,          s390_vmaeb,         0,                  0,                  BT_OV_V8HI_V16QI_V16QI_V8HI)
OB_DEF_VAR (s390_vec_meadd_u16,         s390_vmaleh,        0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI_UV4SI)
OB_DEF_VAR (s390_vec_meadd_s16,         s390_vmaeh,         0,                  0,                  BT_OV_V4SI_V8HI_V8HI_V4SI)
OB_DEF_VAR (s390_vec_meadd_u32,         s390_vmalef,        0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI_UV2DI)
OB_DEF_VAR (s390_vec_meadd_s32,         s390_vmaef,         0,                  0,                  BT_OV_V2DI_V4SI_V4SI_V2DI)

B_DEF      (s390_vmaleb,                vec_vmalev16qi,     0,                  B_VX,               0,                  BT_FN_UV8HI_UV16QI_UV16QI_UV8HI)
B_DEF      (s390_vmaeb,                 vec_vmaev16qi,      0,                  B_VX,               0,                  BT_FN_V8HI_V16QI_V16QI_V8HI)
B_DEF      (s390_vmaleh,                vec_vmalev8hi,      0,                  B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI_UV4SI)
B_DEF      (s390_vmaeh,                 vec_vmaev8hi,       0,                  B_VX,               0,                  BT_FN_V4SI_V8HI_V8HI_V4SI)
B_DEF      (s390_vmalef,                vec_vmalev4si,      0,                  B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI_UV2DI)
B_DEF      (s390_vmaef,                 vec_vmaev4si,       0,                  B_VX,               0,                  BT_FN_V2DI_V4SI_V4SI_V2DI)

OB_DEF     (s390_vec_moadd,             s390_vec_moadd_u8,  s390_vec_moadd_s32, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_moadd_u8,          s390_vmalob,        0,                  0,                  BT_OV_UV8HI_UV16QI_UV16QI_UV8HI)
OB_DEF_VAR (s390_vec_moadd_s8,          s390_vmaob,         0,                  0,                  BT_OV_V8HI_V16QI_V16QI_V8HI)
OB_DEF_VAR (s390_vec_moadd_u16,         s390_vmaloh,        0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI_UV4SI)
OB_DEF_VAR (s390_vec_moadd_s16,         s390_vmaoh,         0,                  0,                  BT_OV_V4SI_V8HI_V8HI_V4SI)
OB_DEF_VAR (s390_vec_moadd_u32,         s390_vmalof,        0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI_UV2DI)
OB_DEF_VAR (s390_vec_moadd_s32,         s390_vmaof,         0,                  0,                  BT_OV_V2DI_V4SI_V4SI_V2DI)

B_DEF      (s390_vmalob,                vec_vmalov16qi,     0,                  B_VX,               0,                  BT_FN_UV8HI_UV16QI_UV16QI_UV8HI)
B_DEF      (s390_vmaob,                 vec_vmaov16qi,      0,                  B_VX,               0,                  BT_FN_V8HI_V16QI_V16QI_V8HI)
B_DEF      (s390_vmaloh,                vec_vmalov8hi,      0,                  B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI_UV4SI)
B_DEF      (s390_vmaoh,                 vec_vmaov8hi,       0,                  B_VX,               0,                  BT_FN_V4SI_V8HI_V8HI_V4SI)
B_DEF      (s390_vmalof,                vec_vmalov4si,      0,                  B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI_UV2DI)
B_DEF      (s390_vmaof,                 vec_vmaov4si,       0,                  B_VX,               0,                  BT_FN_V2DI_V4SI_V4SI_V2DI)

OB_DEF     (s390_vec_mulh,              s390_vec_mulh_u8,   s390_vec_mulh_s32,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mulh_u8,           s390_vmlhb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mulh_s8,           s390_vmhb,          0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mulh_u16,          s390_vmlhh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mulh_s16,          s390_vmhh,          0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mulh_u32,          s390_vmlhf,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mulh_s32,          s390_vmhf,          0,                  0,                  BT_OV_V4SI_V4SI_V4SI)

B_DEF      (s390_vmlhb,                 vec_umulhv16qi,     0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vmhb,                  vec_smulhv16qi,     0,                  B_VX,               0,                  BT_FN_V16QI_V16QI_V16QI)
B_DEF      (s390_vmlhh,                 vec_umulhv8hi,      0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vmhh,                  vec_smulhv8hi,      0,                  B_VX,               0,                  BT_FN_V8HI_V8HI_V8HI)
B_DEF      (s390_vmlhf,                 vec_umulhv4si,      0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vmhf,                  vec_smulhv4si,      0,                  B_VX,               0,                  BT_FN_V4SI_V4SI_V4SI)

OB_DEF     (s390_vec_mule,              s390_vec_mule_u8,   s390_vec_mule_s32,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mule_u8,           s390_vmleb,         0,                  0,                  BT_OV_UV8HI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mule_s8,           s390_vmeb,          0,                  0,                  BT_OV_V8HI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mule_u16,          s390_vmleh,         0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mule_s15,          s390_vmeh,          0,                  0,                  BT_OV_V4SI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mule_u32,          s390_vmlef,         0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mule_s32,          s390_vmef,          0,                  0,                  BT_OV_V2DI_V4SI_V4SI)

B_DEF      (s390_vmleb,                 vec_widen_umult_even_v16qi,0,           B_VX,               0,                  BT_FN_UV8HI_UV16QI_UV16QI)
B_DEF      (s390_vmeb,                  vec_widen_smult_even_v16qi,0,           B_VX,               0,                  BT_FN_V8HI_V16QI_V16QI)
B_DEF      (s390_vmleh,                 vec_widen_umult_even_v8hi,0,            B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI)
B_DEF      (s390_vmeh,                  vec_widen_smult_even_v8hi,0,            B_VX,               0,                  BT_FN_V4SI_V8HI_V8HI)
B_DEF      (s390_vmlef,                 vec_widen_umult_even_v4si,0,            B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI)
B_DEF      (s390_vmef,                  vec_widen_smult_even_v4si,0,            B_VX,               0,                  BT_FN_V2DI_V4SI_V4SI)

OB_DEF     (s390_vec_mulo,              s390_vec_mulo_u8,   s390_vec_mulo_s32,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_mulo_u8,           s390_vmlob,         0,                  0,                  BT_OV_UV8HI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_mulo_s8,           s390_vmob,          0,                  0,                  BT_OV_V8HI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_mulo_u16,          s390_vmloh,         0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_mulo_s16,          s390_vmoh,          0,                  0,                  BT_OV_V4SI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_mulo_u32,          s390_vmlof,         0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_mulo_s32,          s390_vmof,          0,                  0,                  BT_OV_V2DI_V4SI_V4SI)

B_DEF      (s390_vmlob,                 vec_widen_umult_odd_v16qi,0,            B_VX,               0,                  BT_FN_UV8HI_UV16QI_UV16QI)
B_DEF      (s390_vmob,                  vec_widen_smult_odd_v16qi,0,            B_VX,               0,                  BT_FN_V8HI_V16QI_V16QI)
B_DEF      (s390_vmloh,                 vec_widen_umult_odd_v8hi,0,             B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI)
B_DEF      (s390_vmoh,                  vec_widen_smult_odd_v8hi,0,             B_VX,               0,                  BT_FN_V4SI_V8HI_V8HI)
B_DEF      (s390_vmlof,                 vec_widen_umult_odd_v4si,0,             B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI)
B_DEF      (s390_vmof,                  vec_widen_smult_odd_v4si,0,             B_VX,               0,                  BT_FN_V2DI_V4SI_V4SI)

OB_DEF     (s390_vec_nor,               s390_vec_nor_b8,    s390_vec_nor_dbl_c, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_nor_b8,            s390_vno,           0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_nor_s8_a,          s390_vno,           B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_nor_s8_b,          s390_vno,           0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_nor_s8_c,          s390_vno,           B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_nor_u8_a,          s390_vno,           B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_nor_u8_b,          s390_vno,           0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_nor_u8_c,          s390_vno,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_nor_b16,           s390_vno,           0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_nor_s16_a,         s390_vno,           B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_nor_s16_b,         s390_vno,           0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_nor_s16_c,         s390_vno,           B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_nor_u16_a,         s390_vno,           B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_nor_u16_b,         s390_vno,           0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_nor_u16_c,         s390_vno,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_nor_b32,           s390_vno,           0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_nor_s32_a,         s390_vno,           B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_nor_s32_b,         s390_vno,           0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_nor_s32_c,         s390_vno,           B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_nor_u32_a,         s390_vno,           B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_nor_u32_b,         s390_vno,           0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_nor_u32_c,         s390_vno,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_nor_b64,           s390_vno,           0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_nor_s64_a,         s390_vno,           B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_nor_s64_b,         s390_vno,           0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_nor_s64_c,         s390_vno,           B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_nor_u64_a,         s390_vno,           B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_nor_u64_b,         s390_vno,           0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_nor_u64_c,         s390_vno,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_nor_flt_a,         s390_vno,           B_VXE | B_DEP,      0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_nor_flt_b,         s390_vno,           B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_nor_flt_c,         s390_vno,           B_VXE | B_DEP,      0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_nor_dbl_a,         s390_vno,           B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_nor_dbl_b,         s390_vno,           0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_nor_dbl_c,         s390_vno,           B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vno,                   vec_norv16qi3,      0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_or,                s390_vec_or_b8,     s390_vec_or_dbl_c,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_or_b8,             s390_vo,            0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_or_s8_a,           s390_vo,            B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_or_s8_b,           s390_vo,            0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_or_s8_c,           s390_vo,            B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_or_u8_a,           s390_vo,            B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_or_u8_b,           s390_vo,            0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_or_u8_c,           s390_vo,            B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_or_b16,            s390_vo,            0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_or_s16_a,          s390_vo,            B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_or_s16_b,          s390_vo,            0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_or_s16_c,          s390_vo,            B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_or_u16_a,          s390_vo,            B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_or_u16_b,          s390_vo,            0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_or_u16_c,          s390_vo,            B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_or_b32,            s390_vo,            0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_or_s32_a,          s390_vo,            B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_or_s32_b,          s390_vo,            0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_or_s32_c,          s390_vo,            B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_or_u32_a,          s390_vo,            B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_or_u32_b,          s390_vo,            0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_or_u32_c,          s390_vo,            B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_or_b64,            s390_vo,            0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_or_s64_a,          s390_vo,            B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_or_s64_b,          s390_vo,            0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_or_s64_c,          s390_vo,            B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_or_u64_a,          s390_vo,            B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_or_u64_b,          s390_vo,            0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_or_u64_c,          s390_vo,            B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_or_flt_a,          s390_vo,            B_VXE | B_DEP,      0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_or_flt_b,          s390_vo,            B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_or_flt_c,          s390_vo,            B_VXE | B_DEP,      0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_or_dbl_a,          s390_vo,            B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_or_dbl_b,          s390_vo,            0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_or_dbl_c,          s390_vo,            B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vo,                    iorv16qi3,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_popcnt,            s390_vec_popcnt_s8, s390_vec_popcnt_u64,B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_popcnt_s8,         s390_vpopctb,       0,                  0,                  BT_OV_UV16QI_V16QI)
OB_DEF_VAR (s390_vec_popcnt_u8,         s390_vpopctb,       0,                  0,                  BT_OV_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_popcnt_s16,        s390_vpopcth,       0,                  0,                  BT_OV_UV8HI_V8HI)
OB_DEF_VAR (s390_vec_popcnt_u16,        s390_vpopcth,       0,                  0,                  BT_OV_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_popcnt_s32,        s390_vpopctf,       0,                  0,                  BT_OV_UV4SI_V4SI)
OB_DEF_VAR (s390_vec_popcnt_u32,        s390_vpopctf,       0,                  0,                  BT_OV_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_popcnt_s64,        s390_vpopctg,       0,                  0,                  BT_OV_UV2DI_V2DI)
OB_DEF_VAR (s390_vec_popcnt_u64,        s390_vpopctg,       0,                  0,                  BT_OV_UV2DI_UV2DI)

B_DEF      (s390_vpopctb,               popcountv16qi2,     0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI)
B_DEF      (s390_vpopcth,               popcountv8hi2,      0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI)
B_DEF      (s390_vpopctf,               popcountv4si2,      0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI)
B_DEF      (s390_vpopctg,               popcountv2di2,      0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI)

OB_DEF     (s390_vec_rl,                s390_vec_rl_u8,     s390_vec_rl_s64,    B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_rl_u8,             s390_verllvb,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_rl_s8,             s390_verllvb,       0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_rl_u16,            s390_verllvh,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_rl_s16,            s390_verllvh,       0,                  0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_rl_u32,            s390_verllvf,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_rl_s32,            s390_verllvf,       0,                  0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_rl_u64,            s390_verllvg,       0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_rl_s64,            s390_verllvg,       0,                  0,                  BT_OV_V2DI_V2DI_UV2DI)

B_DEF      (s390_verllvb,               vrotlv16qi3,        0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_verllvh,               vrotlv8hi3,         0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_verllvf,               vrotlv4si3,         0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_verllvg,               vrotlv2di3,         0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)

OB_DEF     (s390_vec_rli,               s390_vec_rli_u8,    s390_vec_rli_s64,   B_VX,               BT_FN_OV4SI_OV4SI_ULONG)
OB_DEF_VAR (s390_vec_rli_u8,            s390_verllb,        0,                  0,                  BT_OV_UV16QI_UV16QI_ULONG)
OB_DEF_VAR (s390_vec_rli_s8,            s390_verllb,        0,                  0,                  BT_OV_V16QI_V16QI_ULONG)
OB_DEF_VAR (s390_vec_rli_u16,           s390_verllh,        0,                  0,                  BT_OV_UV8HI_UV8HI_ULONG)
OB_DEF_VAR (s390_vec_rli_s16,           s390_verllh,        0,                  0,                  BT_OV_V8HI_V8HI_ULONG)
OB_DEF_VAR (s390_vec_rli_u32,           s390_verllf,        0,                  0,                  BT_OV_UV4SI_UV4SI_ULONG)
OB_DEF_VAR (s390_vec_rli_s32,           s390_verllf,        0,                  0,                  BT_OV_V4SI_V4SI_ULONG)
OB_DEF_VAR (s390_vec_rli_u64,           s390_verllg,        0,                  0,                  BT_OV_UV2DI_UV2DI_ULONG)
OB_DEF_VAR (s390_vec_rli_s64,           s390_verllg,        0,                  0,                  BT_OV_V2DI_V2DI_ULONG)

B_DEF      (s390_verllb,                rotlv16qi3,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UINT)
B_DEF      (s390_verllh,                rotlv8hi3,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UINT)
B_DEF      (s390_verllf,                rotlv4si3,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UINT)
B_DEF      (s390_verllg,                rotlv2di3,          0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UINT)

OB_DEF     (s390_vec_rl_mask,           s390_vec_rl_mask_s8,s390_vec_rl_mask_u64,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_s8,        s390_verimb,        0,                  O3_U8,              BT_OV_V16QI_V16QI_UV16QI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_u8,        s390_verimb,        0,                  O3_U8,              BT_OV_UV16QI_UV16QI_UV16QI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_s16,       s390_verimh,        0,                  O3_U8,              BT_OV_V8HI_V8HI_UV8HI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_u16,       s390_verimh,        0,                  O3_U8,              BT_OV_UV8HI_UV8HI_UV8HI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_s32,       s390_verimf,        0,                  O3_U8,              BT_OV_V4SI_V4SI_UV4SI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_u32,       s390_verimf,        0,                  O3_U8,              BT_OV_UV4SI_UV4SI_UV4SI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_s64,       s390_verimg,        0,                  O3_U8,              BT_OV_V2DI_V2DI_UV2DI_UCHAR)
OB_DEF_VAR (s390_vec_rl_mask_u64,       s390_verimg,        0,                  O3_U8,              BT_OV_UV2DI_UV2DI_UV2DI_UCHAR)

B_DEF      (s390_verimb,                verimv16qi,         0,                  B_VX,               O4_U8,              BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT)
B_DEF      (s390_verimh,                verimv8hi,          0,                  B_VX,               O4_U8,              BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT)
B_DEF      (s390_verimf,                verimv4si,          0,                  B_VX,               O4_U8,              BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT)
B_DEF      (s390_verimg,                verimv2di,          0,                  B_VX,               O4_U8,              BT_FN_UV2DI_UV2DI_UV2DI_UV2DI_INT)

OB_DEF     (s390_vec_sll,               s390_vec_sll_u8q,   s390_vec_sll_b64s,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sll_u8q,           s390_vsl,           0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sll_u8h,           s390_vsl,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_UV8HI)
OB_DEF_VAR (s390_vec_sll_u8s,           s390_vsl,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_UV4SI)
OB_DEF_VAR (s390_vec_sll_s8q,           s390_vsl,           0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_sll_s8h,           s390_vsl,           B_DEP,              0,                  BT_OV_V16QI_V16QI_UV8HI)
OB_DEF_VAR (s390_vec_sll_s8s,           s390_vsl,           B_DEP,              0,                  BT_OV_V16QI_V16QI_UV4SI)
OB_DEF_VAR (s390_vec_sll_b8q,           s390_vsl,           B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sll_b8h,           s390_vsl,           B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV8HI)
OB_DEF_VAR (s390_vec_sll_b8s,           s390_vsl,           B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV4SI)
OB_DEF_VAR (s390_vec_sll_u16q,          s390_vsl,           0,                  0,                  BT_OV_UV8HI_UV8HI_UV16QI)
OB_DEF_VAR (s390_vec_sll_u16h,          s390_vsl,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sll_u16s,          s390_vsl,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_UV4SI)
OB_DEF_VAR (s390_vec_sll_s16q,          s390_vsl,           0,                  0,                  BT_OV_V8HI_V8HI_UV16QI)
OB_DEF_VAR (s390_vec_sll_s16h,          s390_vsl,           B_DEP,              0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_sll_s16s,          s390_vsl,           B_DEP,              0,                  BT_OV_V8HI_V8HI_UV4SI)
OB_DEF_VAR (s390_vec_sll_b16q,          s390_vsl,           B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV16QI)
OB_DEF_VAR (s390_vec_sll_b16h,          s390_vsl,           B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sll_b16s,          s390_vsl,           B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV4SI)
OB_DEF_VAR (s390_vec_sll_u32q,          s390_vsl,           0,                  0,                  BT_OV_UV4SI_UV4SI_UV16QI)
OB_DEF_VAR (s390_vec_sll_u32h,          s390_vsl,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_UV8HI)
OB_DEF_VAR (s390_vec_sll_u32s,          s390_vsl,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sll_s32q,          s390_vsl,           0,                  0,                  BT_OV_V4SI_V4SI_UV16QI)
OB_DEF_VAR (s390_vec_sll_s32h,          s390_vsl,           B_DEP,              0,                  BT_OV_V4SI_V4SI_UV8HI)
OB_DEF_VAR (s390_vec_sll_s32s,          s390_vsl,           B_DEP,              0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_sll_b32q,          s390_vsl,           B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV16QI)
OB_DEF_VAR (s390_vec_sll_b32h,          s390_vsl,           B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV8HI)
OB_DEF_VAR (s390_vec_sll_b32s,          s390_vsl,           B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sll_u64q,          s390_vsl,           0,                  0,                  BT_OV_UV2DI_UV2DI_UV16QI)
OB_DEF_VAR (s390_vec_sll_u64h,          s390_vsl,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_UV8HI)
OB_DEF_VAR (s390_vec_sll_u64s,          s390_vsl,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_UV4SI)
OB_DEF_VAR (s390_vec_sll_s64q,          s390_vsl,           0,                  0,                  BT_OV_V2DI_V2DI_UV16QI)
OB_DEF_VAR (s390_vec_sll_s64h,          s390_vsl,           B_DEP,              0,                  BT_OV_V2DI_V2DI_UV8HI)
OB_DEF_VAR (s390_vec_sll_s64s,          s390_vsl,           B_DEP,              0,                  BT_OV_V2DI_V2DI_UV4SI)
OB_DEF_VAR (s390_vec_sll_b64q,          s390_vsl,           B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV16QI)
OB_DEF_VAR (s390_vec_sll_b64h,          s390_vsl,           B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV8HI)
OB_DEF_VAR (s390_vec_sll_b64s,          s390_vsl,           B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV4SI)

B_DEF      (s390_vsl,                   vec_sllv16qiv16qi,  0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_slb,               s390_vec_slb_u8_u8, s390_vec_slb_dbl_s64,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_slb_u8_u8,         s390_vslb,          0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_slb_u8_s8,         s390_vslb,          0,                  0,                  BT_OV_UV16QI_UV16QI_V16QI)
OB_DEF_VAR (s390_vec_slb_s8_u8,         s390_vslb,          0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_slb_s8_s8,         s390_vslb,          0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_slb_u16_u16,       s390_vslb,          0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_slb_u16_s16,       s390_vslb,          0,                  0,                  BT_OV_UV8HI_UV8HI_V8HI)
OB_DEF_VAR (s390_vec_slb_s16_u16,       s390_vslb,          0,                  0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_slb_s16_s16,       s390_vslb,          0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_slb_u32_u32,       s390_vslb,          0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_slb_u32_s32,       s390_vslb,          0,                  0,                  BT_OV_UV4SI_UV4SI_V4SI)
OB_DEF_VAR (s390_vec_slb_s32_u32,       s390_vslb,          0,                  0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_slb_s32_s32,       s390_vslb,          0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_slb_u64_u64,       s390_vslb,          0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_slb_u64_s64,       s390_vslb,          0,                  0,                  BT_OV_UV2DI_UV2DI_V2DI)
OB_DEF_VAR (s390_vec_slb_s64_u64,       s390_vslb,          0,                  0,                  BT_OV_V2DI_V2DI_UV2DI)
OB_DEF_VAR (s390_vec_slb_s64_s64,       s390_vslb,          0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_slb_flt_u64,       s390_vslb,          B_VXE,              0,                  BT_OV_V4SF_V4SF_UV4SI)
OB_DEF_VAR (s390_vec_slb_dbl_u64,       s390_vslb,          0,                  0,                  BT_OV_V2DF_V2DF_UV2DI)
OB_DEF_VAR (s390_vec_slb_flt_s64,       s390_vslb,          B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SI)
OB_DEF_VAR (s390_vec_slb_dbl_s64,       s390_vslb,          0,                  0,                  BT_OV_V2DF_V2DF_V2DI)

B_DEF      (s390_vslb,                  vec_slbv16qi,       0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_sld,               s390_vec_sld_b8,    s390_vec_sld_dbl,   B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_b8,            s390_vsldb,         0,                  O3_U4,              BT_OV_BV16QI_BV16QI_BV16QI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_s8,            s390_vsldb,         0,                  O3_U4,              BT_OV_V16QI_V16QI_V16QI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_u8,            s390_vsldb,         0,                  O3_U4,              BT_OV_UV16QI_UV16QI_UV16QI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_b16,           s390_vsldb,         0,                  O3_U4,              BT_OV_BV8HI_BV8HI_BV8HI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_s16,           s390_vsldb,         0,                  O3_U4,              BT_OV_V8HI_V8HI_V8HI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_u16,           s390_vsldb,         0,                  O3_U4,              BT_OV_UV8HI_UV8HI_UV8HI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_b32,           s390_vsldb,         0,                  O3_U4,              BT_OV_BV4SI_BV4SI_BV4SI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_s32,           s390_vsldb,         0,                  O3_U4,              BT_OV_V4SI_V4SI_V4SI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_u32,           s390_vsldb,         0,                  O3_U4,              BT_OV_UV4SI_UV4SI_UV4SI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_b64,           s390_vsldb,         0,                  O3_U4,              BT_OV_BV2DI_BV2DI_BV2DI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_s64,           s390_vsldb,         0,                  O3_U4,              BT_OV_V2DI_V2DI_V2DI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_u64,           s390_vsldb,         0,                  O3_U4,              BT_OV_UV2DI_UV2DI_UV2DI_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_flt,           s390_vsldb,         B_VXE,              O3_U4,              BT_OV_V4SF_V4SF_V4SF_ULONGLONG)
OB_DEF_VAR (s390_vec_sld_dbl,           s390_vsldb,         0,                  O3_U4,              BT_OV_V2DF_V2DF_V2DF_ULONGLONG)

B_DEF      (s390_vsldb,                 vec_sldv16qi,       0,                  B_VX,               O3_U4,              BT_FN_UV16QI_UV16QI_UV16QI_INT)

OB_DEF     (s390_vec_sldw,              s390_vec_sldw_s8,   s390_vec_sldw_dbl,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_INT)
OB_DEF_VAR (s390_vec_sldw_s8,           s390_vsldw,         0,                  O3_U4,              BT_OV_V16QI_V16QI_V16QI_INT)
OB_DEF_VAR (s390_vec_sldw_u8,           s390_vsldw,         0,                  O3_U4,              BT_OV_UV16QI_UV16QI_UV16QI_INT)
OB_DEF_VAR (s390_vec_sldw_s16,          s390_vsldw,         0,                  O3_U4,              BT_OV_V8HI_V8HI_V8HI_INT)
OB_DEF_VAR (s390_vec_sldw_u16,          s390_vsldw,         0,                  O3_U4,              BT_OV_UV8HI_UV8HI_UV8HI_INT)
OB_DEF_VAR (s390_vec_sldw_s32,          s390_vsldw,         0,                  O3_U4,              BT_OV_V4SI_V4SI_V4SI_INT)
OB_DEF_VAR (s390_vec_sldw_u32,          s390_vsldw,         0,                  O3_U4,              BT_OV_UV4SI_UV4SI_UV4SI_INT)
OB_DEF_VAR (s390_vec_sldw_s64,          s390_vsldw,         0,                  O3_U4,              BT_OV_V2DI_V2DI_V2DI_INT)
OB_DEF_VAR (s390_vec_sldw_u64,          s390_vsldw,         0,                  O3_U4,              BT_OV_UV2DI_UV2DI_UV2DI_INT)
OB_DEF_VAR (s390_vec_sldw_dbl,          s390_vsldw,         B_DEP,              O3_U4,              BT_OV_V2DF_V2DF_V2DF_INT)

B_DEF      (s390_vsldw,                 vec_sldwv16qi,      0,                  B_VX,               O3_U4,              BT_FN_UV16QI_UV16QI_UV16QI_INT)

OB_DEF     (s390_vec_sral,              s390_vec_sral_u8q,  s390_vec_sral_b64s, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sral_u8q,          s390_vsra,          0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sral_u8h,          s390_vsra,          B_DEP,              0,                  BT_OV_UV16QI_UV16QI_UV8HI)
OB_DEF_VAR (s390_vec_sral_u8s,          s390_vsra,          B_DEP,              0,                  BT_OV_UV16QI_UV16QI_UV4SI)
OB_DEF_VAR (s390_vec_sral_s8q,          s390_vsra,          0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_sral_s8h,          s390_vsra,          B_DEP,              0,                  BT_OV_V16QI_V16QI_UV8HI)
OB_DEF_VAR (s390_vec_sral_s8s,          s390_vsra,          B_DEP,              0,                  BT_OV_V16QI_V16QI_UV4SI)
OB_DEF_VAR (s390_vec_sral_b8q,          s390_vsra,          B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sral_b8h,          s390_vsra,          B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV8HI)
OB_DEF_VAR (s390_vec_sral_b8s,          s390_vsra,          B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV4SI)
OB_DEF_VAR (s390_vec_sral_u16q,         s390_vsra,          0,                  0,                  BT_OV_UV8HI_UV8HI_UV16QI)
OB_DEF_VAR (s390_vec_sral_u16h,         s390_vsra,          B_DEP,              0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sral_u16s,         s390_vsra,          B_DEP,              0,                  BT_OV_UV8HI_UV8HI_UV4SI)
OB_DEF_VAR (s390_vec_sral_s16q,         s390_vsra,          0,                  0,                  BT_OV_V8HI_V8HI_UV16QI)
OB_DEF_VAR (s390_vec_sral_s16h,         s390_vsra,          B_DEP,              0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_sral_s16s,         s390_vsra,          B_DEP,              0,                  BT_OV_V8HI_V8HI_UV4SI)
OB_DEF_VAR (s390_vec_sral_b16q,         s390_vsra,          B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV16QI)
OB_DEF_VAR (s390_vec_sral_b16h,         s390_vsra,          B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sral_b16s,         s390_vsra,          B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV4SI)
OB_DEF_VAR (s390_vec_sral_u32q,         s390_vsra,          0,                  0,                  BT_OV_UV4SI_UV4SI_UV16QI)
OB_DEF_VAR (s390_vec_sral_u32h,         s390_vsra,          B_DEP,              0,                  BT_OV_UV4SI_UV4SI_UV8HI)
OB_DEF_VAR (s390_vec_sral_u32s,         s390_vsra,          B_DEP,              0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sral_s32q,         s390_vsra,          0,                  0,                  BT_OV_V4SI_V4SI_UV16QI)
OB_DEF_VAR (s390_vec_sral_s32h,         s390_vsra,          B_DEP,              0,                  BT_OV_V4SI_V4SI_UV8HI)
OB_DEF_VAR (s390_vec_sral_s32s,         s390_vsra,          B_DEP,              0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_sral_b32q,         s390_vsra,          B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV16QI)
OB_DEF_VAR (s390_vec_sral_b32h,         s390_vsra,          B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV8HI)
OB_DEF_VAR (s390_vec_sral_b32s,         s390_vsra,          B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sral_u64q,         s390_vsra,          0,                  0,                  BT_OV_UV2DI_UV2DI_UV16QI)
OB_DEF_VAR (s390_vec_sral_u64h,         s390_vsra,          B_DEP,              0,                  BT_OV_UV2DI_UV2DI_UV8HI)
OB_DEF_VAR (s390_vec_sral_u64s,         s390_vsra,          B_DEP,              0,                  BT_OV_UV2DI_UV2DI_UV4SI)
OB_DEF_VAR (s390_vec_sral_s64q,         s390_vsra,          0,                  0,                  BT_OV_V2DI_V2DI_UV16QI)
OB_DEF_VAR (s390_vec_sral_s64h,         s390_vsra,          B_DEP,              0,                  BT_OV_V2DI_V2DI_UV8HI)
OB_DEF_VAR (s390_vec_sral_s64s,         s390_vsra,          B_DEP,              0,                  BT_OV_V2DI_V2DI_UV4SI)
OB_DEF_VAR (s390_vec_sral_b64q,         s390_vsra,          B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV16QI)
OB_DEF_VAR (s390_vec_sral_b64h,         s390_vsra,          B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV8HI)
OB_DEF_VAR (s390_vec_sral_b64s,         s390_vsra,          B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV4SI)

B_DEF      (s390_vsra,                  vec_sralv16qiv16qi, 0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_srab,              s390_vec_srab_u8_u8,s390_vec_srab_dbl_s64,B_VX,             BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_srab_u8_u8,        s390_vsrab,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_srab_u8_s8,        s390_vsrab,         0,                  0,                  BT_OV_UV16QI_UV16QI_V16QI)
OB_DEF_VAR (s390_vec_srab_s8_u8,        s390_vsrab,         0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_srab_s8_s8,        s390_vsrab,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_srab_u16_u16,      s390_vsrab,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_srab_u16_s16,      s390_vsrab,         0,                  0,                  BT_OV_UV8HI_UV8HI_V8HI)
OB_DEF_VAR (s390_vec_srab_s16_u16,      s390_vsrab,         0,                  0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_srab_s16_s16,      s390_vsrab,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_srab_u32_u32,      s390_vsrab,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_srab_u32_s32,      s390_vsrab,         0,                  0,                  BT_OV_UV4SI_UV4SI_V4SI)
OB_DEF_VAR (s390_vec_srab_s32_u32,      s390_vsrab,         0,                  0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_srab_s32_s32,      s390_vsrab,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_srab_u64_u64,      s390_vsrab,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_srab_u64_s64,      s390_vsrab,         0,                  0,                  BT_OV_UV2DI_UV2DI_V2DI)
OB_DEF_VAR (s390_vec_srab_s64_u64,      s390_vsrab,         0,                  0,                  BT_OV_V2DI_V2DI_UV2DI)
OB_DEF_VAR (s390_vec_srab_s64_s64,      s390_vsrab,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_srab_flt_u64,      s390_vsrab,         B_VXE,              0,                  BT_OV_V4SF_V4SF_UV4SI)
OB_DEF_VAR (s390_vec_srab_dbl_u64,      s390_vsrab,         0,                  0,                  BT_OV_V2DF_V2DF_UV2DI)
OB_DEF_VAR (s390_vec_srab_flt_s64,      s390_vsrab,         B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SI)
OB_DEF_VAR (s390_vec_srab_dbl_s64,      s390_vsrab,         0,                  0,                  BT_OV_V2DF_V2DF_V2DI)

B_DEF      (s390_vsrab,                 vec_srabv16qi,      0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_srl,               s390_vec_srl_u8q,   s390_vec_srl_b64s,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_srl_u8q,           s390_vsrl,          0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_srl_u8h,           s390_vsrl,          B_DEP,              0,                  BT_OV_UV16QI_UV16QI_UV8HI)
OB_DEF_VAR (s390_vec_srl_u8s,           s390_vsrl,          B_DEP,              0,                  BT_OV_UV16QI_UV16QI_UV4SI)
OB_DEF_VAR (s390_vec_srl_s8q,           s390_vsrl,          0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_srl_s8h,           s390_vsrl,          B_DEP,              0,                  BT_OV_V16QI_V16QI_UV8HI)
OB_DEF_VAR (s390_vec_srl_s8s,           s390_vsrl,          B_DEP,              0,                  BT_OV_V16QI_V16QI_UV4SI)
OB_DEF_VAR (s390_vec_srl_b8q,           s390_vsrl,          B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_srl_b8h,           s390_vsrl,          B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV8HI)
OB_DEF_VAR (s390_vec_srl_b8s,           s390_vsrl,          B_DEP,              0,                  BT_OV_BV16QI_BV16QI_UV4SI)
OB_DEF_VAR (s390_vec_srl_u16q,          s390_vsrl,          0,                  0,                  BT_OV_UV8HI_UV8HI_UV16QI)
OB_DEF_VAR (s390_vec_srl_u16h,          s390_vsrl,          B_DEP,              0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_srl_u16s,          s390_vsrl,          B_DEP,              0,                  BT_OV_UV8HI_UV8HI_UV4SI)
OB_DEF_VAR (s390_vec_srl_s16q,          s390_vsrl,          0,                  0,                  BT_OV_V8HI_V8HI_UV16QI)
OB_DEF_VAR (s390_vec_srl_s16h,          s390_vsrl,          B_DEP,              0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_srl_s16s,          s390_vsrl,          B_DEP,              0,                  BT_OV_V8HI_V8HI_UV4SI)
OB_DEF_VAR (s390_vec_srl_b16q,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV16QI)
OB_DEF_VAR (s390_vec_srl_b16h,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_srl_b16s,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV8HI_BV8HI_UV4SI)
OB_DEF_VAR (s390_vec_srl_u32q,          s390_vsrl,          0,                  0,                  BT_OV_UV4SI_UV4SI_UV16QI)
OB_DEF_VAR (s390_vec_srl_u32h,          s390_vsrl,          B_DEP,              0,                  BT_OV_UV4SI_UV4SI_UV8HI)
OB_DEF_VAR (s390_vec_srl_u32s,          s390_vsrl,          B_DEP,              0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_srl_s32q,          s390_vsrl,          0,                  0,                  BT_OV_V4SI_V4SI_UV16QI)
OB_DEF_VAR (s390_vec_srl_s32h,          s390_vsrl,          B_DEP,              0,                  BT_OV_V4SI_V4SI_UV8HI)
OB_DEF_VAR (s390_vec_srl_s32s,          s390_vsrl,          B_DEP,              0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_srl_b32q,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV16QI)
OB_DEF_VAR (s390_vec_srl_b32h,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV8HI)
OB_DEF_VAR (s390_vec_srl_b32s,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_srl_u64q,          s390_vsrl,          0,                  0,                  BT_OV_UV2DI_UV2DI_UV16QI)
OB_DEF_VAR (s390_vec_srl_u64h,          s390_vsrl,          B_DEP,              0,                  BT_OV_UV2DI_UV2DI_UV8HI)
OB_DEF_VAR (s390_vec_srl_u64s,          s390_vsrl,          B_DEP,              0,                  BT_OV_UV2DI_UV2DI_UV4SI)
OB_DEF_VAR (s390_vec_srl_s64q,          s390_vsrl,          0,                  0,                  BT_OV_V2DI_V2DI_UV16QI)
OB_DEF_VAR (s390_vec_srl_s64h,          s390_vsrl,          B_DEP,              0,                  BT_OV_V2DI_V2DI_UV8HI)
OB_DEF_VAR (s390_vec_srl_s64s,          s390_vsrl,          B_DEP,              0,                  BT_OV_V2DI_V2DI_UV4SI)
OB_DEF_VAR (s390_vec_srl_b64q,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV16QI)
OB_DEF_VAR (s390_vec_srl_b64h,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV8HI)
OB_DEF_VAR (s390_vec_srl_b64s,          s390_vsrl,          B_DEP,              0,                  BT_OV_BV2DI_BV2DI_UV4SI)

B_DEF      (s390_vsrl,                  vec_srlv16qiv16qi,  0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_srb,               s390_vec_srb_u8_u8, s390_vec_srb_dbl_s64,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_srb_u8_u8,         s390_vsrlb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_srb_u8_s8,         s390_vsrlb,         0,                  0,                  BT_OV_UV16QI_UV16QI_V16QI)
OB_DEF_VAR (s390_vec_srb_s8_u8,         s390_vsrlb,         0,                  0,                  BT_OV_V16QI_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_srb_s8_s8,         s390_vsrlb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_srb_u16_u16,       s390_vsrlb,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_srb_u16_s16,       s390_vsrlb,         0,                  0,                  BT_OV_UV8HI_UV8HI_V8HI)
OB_DEF_VAR (s390_vec_srb_s16_u16,       s390_vsrlb,         0,                  0,                  BT_OV_V8HI_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_srb_s16_s16,       s390_vsrlb,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_srb_u32_u32,       s390_vsrlb,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_srb_u32_s32,       s390_vsrlb,         0,                  0,                  BT_OV_UV4SI_UV4SI_V4SI)
OB_DEF_VAR (s390_vec_srb_s32_u32,       s390_vsrlb,         0,                  0,                  BT_OV_V4SI_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_srb_s32_s32,       s390_vsrlb,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_srb_u64_u64,       s390_vsrlb,         0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_srb_u64_s64,       s390_vsrlb,         0,                  0,                  BT_OV_UV2DI_UV2DI_V2DI)
OB_DEF_VAR (s390_vec_srb_s64_u64,       s390_vsrlb,         0,                  0,                  BT_OV_V2DI_V2DI_UV2DI)
OB_DEF_VAR (s390_vec_srb_s64_s64,       s390_vsrlb,         0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_srb_flt_u64,       s390_vsrlb,         B_VXE,              0,                  BT_OV_V4SF_V4SF_UV4SI)
OB_DEF_VAR (s390_vec_srb_dbl_u64,       s390_vsrlb,         0,                  0,                  BT_OV_V2DF_V2DF_UV2DI)
OB_DEF_VAR (s390_vec_srb_flt_s64,       s390_vsrlb,         B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SI)
OB_DEF_VAR (s390_vec_srb_dbl_s64,       s390_vsrlb,         0,                  0,                  BT_OV_V2DF_V2DF_V2DI)

B_DEF      (s390_vsrlb,                 vec_srbv16qi,       0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_subc,              s390_vec_subc_u8,   s390_vec_subc_u64,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_subc_u8,           s390_vscbib,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_subc_u16,          s390_vscbih,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_subc_u32,          s390_vscbif,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_subc_u64,          s390_vscbig,        0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)

B_DEF      (s390_vscbib,                vscbib_v16qi,       0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vscbih,                vscbih_v8hi,        0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vscbif,                vscbif_v4si,        0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vscbig,                vscbig_v2di,        0,                  B_VX,               0,                  BT_FN_UV2DI_UV2DI_UV2DI)

/* The builtin definitions requires these to use vector unsigned char.
   But we want the GCC low-level builtins and the insn patterns to
   allow int128_t and TImode.  So we rely on s390_expand_builtin to
   switch modes.  */

B_DEF      (s390_vec_sub_u128,          subti3,             0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vec_subc_u128,         vscbiq_ti,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vec_sube_u128,         vsbiq,              0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vec_subec_u128,        vsbcbiq,            0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI)

B_DEF      (s390_vsq,                   subti3,             0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128)
B_DEF      (s390_vscbiq,                vscbiq_ti,          0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128)
B_DEF      (s390_vsbiq,                 vsbiq,              0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128_INT128)
B_DEF      (s390_vsbcbiq,               vsbcbiq,            0,                  B_VX,               0,                  BT_FN_INT128_INT128_INT128_INT128)

OB_DEF     (s390_vec_sum2,              s390_vec_sum2_u16,  s390_vec_sum2_u32,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sum2_u16,          s390_vsumgh,        0,                  0,                  BT_OV_UV2DI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_sum2_u32,          s390_vsumgf,        0,                  0,                  BT_OV_UV2DI_UV4SI_UV4SI)

B_DEF      (s390_vsumgh,                vec_sum2v8hi,       0,                  B_VX,               0,                  BT_FN_UV2DI_UV8HI_UV8HI)
B_DEF      (s390_vsumgf,                vec_sum2v4si,       0,                  B_VX,               0,                  BT_FN_UV2DI_UV4SI_UV4SI)

OB_DEF     (s390_vec_sum_u128,          s390_vec_sum_u128_u32,s390_vec_sum_u128_u64,B_VX,           BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sum_u128_u32,      s390_vsumqf,        0,                  0,                  BT_OV_UV16QI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_sum_u128_u64,      s390_vsumqg,        0,                  0,                  BT_OV_UV16QI_UV2DI_UV2DI)

B_DEF      (s390_vsumqf,                vec_sum_u128v4si,   0,                  B_VX,               0,                  BT_FN_UV16QI_UV4SI_UV4SI)
B_DEF      (s390_vsumqg,                vec_sum_u128v2di,   0,                  B_VX,               0,                  BT_FN_UV16QI_UV2DI_UV2DI)

OB_DEF     (s390_vec_sum4,              s390_vec_sum4_u8,   s390_vec_sum4_u16,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sum4_u8,           s390_vsumb,         0,                  0,                  BT_OV_UV4SI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_sum4_u16,          s390_vsumh,         0,                  0,                  BT_OV_UV4SI_UV8HI_UV8HI)

B_DEF      (s390_vsumb,                 vec_sum4v16qi,      0,                  B_VX,               0,                  BT_FN_UV4SI_UV16QI_UV16QI)
B_DEF      (s390_vsumh,                 vec_sum4v8hi,       0,                  B_VX,               0,                  BT_FN_UV4SI_UV8HI_UV8HI)

OB_DEF     (s390_vec_test_mask,         s390_vec_test_mask_s8,s390_vec_test_mask_dbl,B_VX,          BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_test_mask_s8,      s390_vtm,           0,                  0,                  BT_OV_INT_V16QI_UV16QI)
OB_DEF_VAR (s390_vec_test_mask_u8,      s390_vtm,           0,                  0,                  BT_OV_INT_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_test_mask_s16,     s390_vtm,           0,                  0,                  BT_OV_INT_V8HI_UV8HI)
OB_DEF_VAR (s390_vec_test_mask_u16,     s390_vtm,           0,                  0,                  BT_OV_INT_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_test_mask_s32,     s390_vtm,           0,                  0,                  BT_OV_INT_V4SI_UV4SI)
OB_DEF_VAR (s390_vec_test_mask_u32,     s390_vtm,           0,                  0,                  BT_OV_INT_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_test_mask_s64,     s390_vtm,           0,                  0,                  BT_OV_INT_V2DI_UV2DI)
OB_DEF_VAR (s390_vec_test_mask_u64,     s390_vtm,           0,                  0,                  BT_OV_INT_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_test_mask_flt,     s390_vtm,           B_VXE,              0,                  BT_OV_INT_V4SF_UV4SI)
OB_DEF_VAR (s390_vec_test_mask_dbl,     s390_vtm,           0,                  0,                  BT_OV_INT_V2DF_UV2DI)

B_DEF      (s390_vtm,                   vec_test_mask_intv16qi,0,               B_VX,               0,                  BT_FN_INT_UV16QI_UV16QI)

B_DEF      (s390_vec_msum_u128,         vec_msumv2di,       0,                  B_VXE,              O4_U2,              BT_FN_UV16QI_UV2DI_UV2DI_UV16QI_INT)
B_DEF      (s390_vmslg,                 vmslg,              0,                  B_VXE,              O4_U4,              BT_FN_INT128_UV2DI_UV2DI_INT128_INT)

OB_DEF     (s390_vec_eqv,               s390_vec_eqv_b8,    s390_vec_eqv_dbl_c, B_VXE,              BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_eqv_b8,            s390_vnx,           0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_eqv_s8_a,          s390_vnx,           B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_eqv_s8_b,          s390_vnx,           0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_eqv_s8_c,          s390_vnx,           B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_eqv_u8_a,          s390_vnx,           B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_eqv_u8_b,          s390_vnx,           0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_eqv_u8_c,          s390_vnx,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_eqv_b16,           s390_vnx,           0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_eqv_s16_a,         s390_vnx,           B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_eqv_s16_b,         s390_vnx,           0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_eqv_s16_c,         s390_vnx,           B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_eqv_u16_a,         s390_vnx,           B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_eqv_u16_b,         s390_vnx,           0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_eqv_u16_c,         s390_vnx,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_eqv_b32,           s390_vnx,           0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_eqv_s32_a,         s390_vnx,           B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_eqv_s32_b,         s390_vnx,           0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_eqv_s32_c,         s390_vnx,           B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_eqv_u32_a,         s390_vnx,           B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_eqv_u32_b,         s390_vnx,           0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_eqv_u32_c,         s390_vnx,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_eqv_b64,           s390_vnx,           0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_eqv_s64_a,         s390_vnx,           B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_eqv_s64_b,         s390_vnx,           0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_eqv_s64_c,         s390_vnx,           B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_eqv_u64_a,         s390_vnx,           B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_eqv_u64_b,         s390_vnx,           0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_eqv_u64_c,         s390_vnx,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_eqv_flt_a,         s390_vnx,           B_VXE | B_DEP,      0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_eqv_flt_b,         s390_vnx,           B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_eqv_flt_c,         s390_vnx,           B_VXE | B_DEP,      0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_eqv_dbl_a,         s390_vnx,           B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_eqv_dbl_b,         s390_vnx,           0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_eqv_dbl_c,         s390_vnx,           B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vnx,                   notxorv16qi3,       0,                  B_VXE,              0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_nand,              s390_vec_nand_b8,   s390_vec_nand_dbl_c,B_VXE,              BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_nand_b8,           s390_vnn,           0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_nand_s8_a,         s390_vnn,           B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_nand_s8_b,         s390_vnn,           0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_nand_s8_c,         s390_vnn,           B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_nand_u8_a,         s390_vnn,           B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_nand_u8_b,         s390_vnn,           0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_nand_u8_c,         s390_vnn,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_nand_b16,          s390_vnn,           0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_nand_s16_a,        s390_vnn,           B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_nand_s16_b,        s390_vnn,           0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_nand_s16_c,        s390_vnn,           B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_nand_u16_a,        s390_vnn,           B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_nand_u16_b,        s390_vnn,           0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_nand_u16_c,        s390_vnn,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_nand_b32,          s390_vnn,           0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_nand_s32_a,        s390_vnn,           B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_nand_s32_b,        s390_vnn,           0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_nand_s32_c,        s390_vnn,           B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_nand_u32_a,        s390_vnn,           B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_nand_u32_b,        s390_vnn,           0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_nand_u32_c,        s390_vnn,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_nand_b64,          s390_vnn,           0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_nand_s64_a,        s390_vnn,           B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_nand_s64_b,        s390_vnn,           0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_nand_s64_c,        s390_vnn,           B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_nand_u64_a,        s390_vnn,           B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_nand_u64_b,        s390_vnn,           0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_nand_u64_c,        s390_vnn,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_nand_flt_a,        s390_vnn,           B_DEP,              0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_nand_flt_b,        s390_vnn,           0,                  0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_nand_flt_c,        s390_vnn,           B_DEP,              0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_nand_dbl_a,        s390_vnn,           B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_nand_dbl_b,        s390_vnn,           0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_nand_dbl_c,        s390_vnn,           B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_vnn,                   notandv16qi3,       0,                  B_VXE,              0,                  BT_FN_UV16QI_UV16QI_UV16QI)

OB_DEF     (s390_vec_orc,               s390_vec_orc_b8,    s390_vec_orc_dbl_c, B_VXE,              BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_orc_b8,            s390_voc,           0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_orc_s8_a,          s390_voc,           B_DEP,              0,                  BT_OV_V16QI_BV16QI_V16QI)
OB_DEF_VAR (s390_vec_orc_s8_b,          s390_voc,           0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vec_orc_s8_c,          s390_voc,           B_DEP,              0,                  BT_OV_V16QI_V16QI_BV16QI)
OB_DEF_VAR (s390_vec_orc_u8_a,          s390_voc,           B_DEP,              0,                  BT_OV_UV16QI_BV16QI_UV16QI)
OB_DEF_VAR (s390_vec_orc_u8_b,          s390_voc,           0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_orc_u8_c,          s390_voc,           B_DEP,              0,                  BT_OV_UV16QI_UV16QI_BV16QI)
OB_DEF_VAR (s390_vec_orc_b16,           s390_voc,           0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_orc_s16_a,         s390_voc,           B_DEP,              0,                  BT_OV_V8HI_BV8HI_V8HI)
OB_DEF_VAR (s390_vec_orc_s16_b,         s390_voc,           0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vec_orc_s16_c,         s390_voc,           B_DEP,              0,                  BT_OV_V8HI_V8HI_BV8HI)
OB_DEF_VAR (s390_vec_orc_u16_a,         s390_voc,           B_DEP,              0,                  BT_OV_UV8HI_BV8HI_UV8HI)
OB_DEF_VAR (s390_vec_orc_u16_b,         s390_voc,           0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_orc_u16_c,         s390_voc,           B_DEP,              0,                  BT_OV_UV8HI_UV8HI_BV8HI)
OB_DEF_VAR (s390_vec_orc_b32,           s390_voc,           0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_orc_s32_a,         s390_voc,           B_DEP,              0,                  BT_OV_V4SI_BV4SI_V4SI)
OB_DEF_VAR (s390_vec_orc_s32_b,         s390_voc,           0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vec_orc_s32_c,         s390_voc,           B_DEP,              0,                  BT_OV_V4SI_V4SI_BV4SI)
OB_DEF_VAR (s390_vec_orc_u32_a,         s390_voc,           B_DEP,              0,                  BT_OV_UV4SI_BV4SI_UV4SI)
OB_DEF_VAR (s390_vec_orc_u32_b,         s390_voc,           0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_orc_u32_c,         s390_voc,           B_DEP,              0,                  BT_OV_UV4SI_UV4SI_BV4SI)
OB_DEF_VAR (s390_vec_orc_b64,           s390_voc,           0,                  0,                  BT_OV_BV2DI_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_orc_s64_a,         s390_voc,           B_DEP,              0,                  BT_OV_V2DI_BV2DI_V2DI)
OB_DEF_VAR (s390_vec_orc_s64_b,         s390_voc,           0,                  0,                  BT_OV_V2DI_V2DI_V2DI)
OB_DEF_VAR (s390_vec_orc_s64_c,         s390_voc,           B_DEP,              0,                  BT_OV_V2DI_V2DI_BV2DI)
OB_DEF_VAR (s390_vec_orc_u64_a,         s390_voc,           B_DEP,              0,                  BT_OV_UV2DI_BV2DI_UV2DI)
OB_DEF_VAR (s390_vec_orc_u64_b,         s390_voc,           0,                  0,                  BT_OV_UV2DI_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_orc_u64_c,         s390_voc,           B_DEP,              0,                  BT_OV_UV2DI_UV2DI_BV2DI)
OB_DEF_VAR (s390_vec_orc_flt_a,         s390_voc,           B_DEP,              0,                  BT_OV_V4SF_BV4SI_V4SF)
OB_DEF_VAR (s390_vec_orc_flt_b,         s390_voc,           0,                  0,                  BT_OV_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_orc_flt_c,         s390_voc,           B_DEP,              0,                  BT_OV_V4SF_V4SF_BV4SI)
OB_DEF_VAR (s390_vec_orc_dbl_a,         s390_voc,           B_DEP,              0,                  BT_OV_V2DF_BV2DI_V2DF)
OB_DEF_VAR (s390_vec_orc_dbl_b,         s390_voc,           0,                  0,                  BT_OV_V2DF_V2DF_V2DF)
OB_DEF_VAR (s390_vec_orc_dbl_c,         s390_voc,           B_DEP,              0,                  BT_OV_V2DF_V2DF_BV2DI)

B_DEF      (s390_voc,                   ior_notv16qi3,      0,                  B_VXE,              0,                  BT_FN_UV16QI_UV16QI_UV16QI)

B_DEF      (s390_vfaeb,                 vfaev16qi,          0,                  B_VX,               O3_U4,              BT_FN_UV16QI_UV16QI_UV16QI_INT)
B_DEF      (s390_vfaeh,                 vfaev8hi,           0,                  B_VX,               O3_U4,              BT_FN_UV8HI_UV8HI_UV8HI_INT)
B_DEF      (s390_vfaef,                 vfaev4si,           0,                  B_VX,               O3_U4,              BT_FN_UV4SI_UV4SI_UV4SI_INT)
B_DEF      (s390_vfaezb,                vfaezv16qi,         0,                  B_VX,               O3_U4,              BT_FN_UV16QI_UV16QI_UV16QI_INT)
B_DEF      (s390_vfaezh,                vfaezv8hi,          0,                  B_VX,               O3_U4,              BT_FN_UV8HI_UV8HI_UV8HI_INT)
B_DEF      (s390_vfaezf,                vfaezv4si,          0,                  B_VX,               O3_U4,              BT_FN_UV4SI_UV4SI_UV4SI_INT)
B_DEF      (s390_vfaebs,                vfaesv16qi,         0,                  B_VX,               O3_U4,              BT_FN_UV16QI_UV16QI_UV16QI_INT_INTPTR)
B_DEF      (s390_vfaehs,                vfaesv8hi,          0,                  B_VX,               O3_U4,              BT_FN_UV8HI_UV8HI_UV8HI_INT_INTPTR)
B_DEF      (s390_vfaefs,                vfaesv4si,          0,                  B_VX,               O3_U4,              BT_FN_UV4SI_UV4SI_UV4SI_INT_INTPTR)
B_DEF      (s390_vfaezbs,               vfaezsv16qi,        0,                  B_VX,               O3_U4,              BT_FN_UV16QI_UV16QI_UV16QI_INT_INTPTR)
B_DEF      (s390_vfaezhs,               vfaezsv8hi,         0,                  B_VX,               O3_U4,              BT_FN_UV8HI_UV8HI_UV8HI_INT_INTPTR)
B_DEF      (s390_vfaezfs,               vfaezsv4si,         0,                  B_VX,               O3_U4,              BT_FN_UV4SI_UV4SI_UV4SI_INT_INTPTR)

OB_DEF     (s390_vec_find_any_eq_idx,   s390_vfaeb_idx_s8,  s390_vfaef_idx_u32b,B_VX,               BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfaeb_idx_s8,          s390_vfaeb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfaeb_idx_u8a,         s390_vfaeb,         0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfaeb_idx_u8b,         s390_vfaeb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfaeh_idx_s16,         s390_vfaeh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfaeh_idx_u16a,        s390_vfaeh,         0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfaeh_idx_u16b,        s390_vfaeh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfaef_idx_s32,         s390_vfaef,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfaef_idx_u32a,        s390_vfaef,         0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfaef_idx_u32b,        s390_vfaef,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_find_any_ne_idx,   s390_vfaeb_inv_idx_s8,s390_vfaef_inv_idx_u32b,B_VX,         BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfaeb_inv_idx_s8,      s390_vfaeb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfaeb_inv_idx_u8a,     s390_vfaeb,         0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfaeb_inv_idx_u8b,     s390_vfaeb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfaeh_inv_idx_s16,     s390_vfaeh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfaeh_inv_idx_u16a,    s390_vfaeh,         0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfaeh_inv_idx_u16b,    s390_vfaeh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfaef_inv_idx_s32,     s390_vfaef,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfaef_inv_idx_u32a,    s390_vfaef,         0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfaef_inv_idx_u32b,    s390_vfaef,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_find_any_eq_or_0_idx,s390_vfaezb_idx_s8,s390_vfaezf_idx_u32b,B_VX,             BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfaezb_idx_s8,         s390_vfaezb,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfaezb_idx_u8a,        s390_vfaezb,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfaezb_idx_u8b,        s390_vfaezb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfaezh_idx_s16,        s390_vfaezh,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfaezh_idx_u16a,       s390_vfaezh,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfaezh_idx_u16b,       s390_vfaezh,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfaezf_idx_s32,        s390_vfaezf,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfaezf_idx_u32a,       s390_vfaezf,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfaezf_idx_u32b,       s390_vfaezf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_find_any_ne_or_0_idx,s390_vfaezb_inv_idx_s8,s390_vfaezf_inv_idx_u32b,B_VX,     BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfaezb_inv_idx_s8,     s390_vfaezb,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfaezb_inv_idx_u8a,    s390_vfaezb,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfaezb_inv_idx_u8b,    s390_vfaezb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfaezh_inv_idx_s16,    s390_vfaezh,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfaezh_inv_idx_u16a,   s390_vfaezh,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfaezh_inv_idx_u16b,   s390_vfaezh,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfaezf_inv_idx_s32,    s390_vfaezf,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfaezf_inv_idx_u32a,   s390_vfaezf,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfaezf_inv_idx_u32b,   s390_vfaezf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_find_any_eq,       s390_vfaeb_s8,      s390_vfaef_b32,     B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfaeb_s8,              s390_vfaeb,         0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfaeb_u8,              s390_vfaeb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfaeb_b8,              s390_vfaeb,         0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfaeh_s16,             s390_vfaeh,         0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfaeh_u16,             s390_vfaeh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfaeh_b16,             s390_vfaeh,         0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfaef_s32,             s390_vfaef,         0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfaef_u32,             s390_vfaef,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfaef_b32,             s390_vfaef,         0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_find_any_ne,       s390_vfaeb_inv_s8,  s390_vfaef_inv_b32, B_VX,               BT_FN_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfaeb_inv_s8,          s390_vfaeb,         0,                  0,                  BT_OV_BV16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfaeb_inv_u8,          s390_vfaeb,         0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfaeb_inv_b8,          s390_vfaeb,         0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfaeh_inv_s16,         s390_vfaeh,         0,                  0,                  BT_OV_BV8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfaeh_inv_u16,         s390_vfaeh,         0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfaeh_inv_b16,         s390_vfaeh,         0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfaef_inv_s32,         s390_vfaef,         0,                  0,                  BT_OV_BV4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfaef_inv_u32,         s390_vfaef,         0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfaef_inv_b32,         s390_vfaef,         0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_find_any_eq_idx_cc,s390_vfaebs_idx_s8, s390_vfaefs_idx_u32b,B_VX,              BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfaebs_idx_s8,         s390_vfaebs,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_idx_u8a,        s390_vfaebs,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_idx_u8b,        s390_vfaebs,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfaehs_idx_s16,        s390_vfaehs,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_idx_u16a,       s390_vfaehs,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_idx_u16b,       s390_vfaehs,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfaefs_idx_s32,        s390_vfaefs,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_idx_u32a,       s390_vfaefs,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_idx_u32b,       s390_vfaefs,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_find_any_ne_idx_cc,s390_vfaebs_inv_idx_s8,s390_vfaefs_inv_idx_u32b,B_VX,       BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfaebs_inv_idx_s8,     s390_vfaebs,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_inv_idx_u8a,    s390_vfaebs,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_inv_idx_u8b,    s390_vfaebs,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfaehs_inv_idx_s16,    s390_vfaehs,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_inv_idx_u16a,   s390_vfaehs,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_inv_idx_u16b,   s390_vfaehs,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfaefs_inv_idx_s32,    s390_vfaefs,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_inv_idx_u32a,   s390_vfaefs,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_inv_idx_u32b,   s390_vfaefs,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_find_any_eq_or_0_idx_cc,s390_vfaezbs_idx_s8,s390_vfaezfs_idx_u32b,B_VX,        BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfaezbs_idx_s8,        s390_vfaezbs,       0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfaezbs_idx_u8a,       s390_vfaezbs,       0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfaezbs_idx_u8b,       s390_vfaezbs,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfaezhs_idx_s16,       s390_vfaezhs,       0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfaezhs_idx_u16a,      s390_vfaezhs,       0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfaezhs_idx_u16b,      s390_vfaezhs,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfaezfs_idx_s32,       s390_vfaezfs,       0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfaezfs_idx_u32a,      s390_vfaezfs,       0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfaezfs_idx_u32b,      s390_vfaezfs,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_find_any_ne_or_0_idx_cc,s390_vfaezbs_inv_idx_s8,s390_vfaezfs_inv_idx_u32b,B_VX,BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfaezbs_inv_idx_s8,    s390_vfaezbs,       0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfaezbs_inv_idx_u8a,   s390_vfaezbs,       0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfaezbs_inv_idx_u8b,   s390_vfaezbs,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfaezhs_inv_idx_s16,   s390_vfaezhs,       0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfaezhs_inv_idx_u16a,  s390_vfaezhs,       0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfaezhs_inv_idx_u16b,  s390_vfaezhs,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfaezfs_inv_idx_s32,   s390_vfaezfs,       0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfaezfs_inv_idx_u32a,  s390_vfaezfs,       0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfaezfs_inv_idx_u32b,  s390_vfaezfs,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_find_any_eq_cc,    s390_vfaebs_s8,     s390_vfaefs_b32,    B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfaebs_s8,             s390_vfaebs,        0,                  0,                  BT_OV_BV16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_u8,             s390_vfaebs,        0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_b8,             s390_vfaebs,        0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfaehs_s16,            s390_vfaehs,        0,                  0,                  BT_OV_BV8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_u16,            s390_vfaehs,        0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_b16,            s390_vfaehs,        0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfaefs_s32,            s390_vfaefs,        0,                  0,                  BT_OV_BV4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_u32,            s390_vfaefs,        0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_b32,            s390_vfaefs,        0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_find_any_ne_cc,    s390_vfaebs_inv_s8, s390_vfaefs_inv_b32,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfaebs_inv_s8,         s390_vfaebs,        0,                  0,                  BT_OV_BV16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_inv_u8,         s390_vfaebs,        0,                  0,                  BT_OV_BV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfaebs_inv_b8,         s390_vfaebs,        0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfaehs_inv_s16,        s390_vfaehs,        0,                  0,                  BT_OV_BV8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_inv_u16,        s390_vfaehs,        0,                  0,                  BT_OV_BV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfaehs_inv_b16,        s390_vfaehs,        0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfaefs_inv_s32,        s390_vfaefs,        0,                  0,                  BT_OV_BV4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_inv_u32,        s390_vfaefs,        0,                  0,                  BT_OV_BV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfaefs_inv_b32,        s390_vfaefs,        0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI_INTPTR)

B_DEF      (s390_vfeeb,                 vfeev16qi,          0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vfeeh,                 vfeev8hi,           0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vfeef,                 vfeev4si,           0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vfeezb,                vfeezv16qi,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vfeezh,                vfeezv8hi,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vfeezf,                vfeezv4si,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vfeebs,                vfeesv16qi,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vfeehs,                vfeesv8hi,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vfeefs,                vfeesv4si,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)
B_DEF      (s390_vfeezbs,               vfeezsv16qi,        0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vfeezhs,               vfeezsv8hi,         0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vfeezfs,               vfeezsv4si,         0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpeq_idx,         s390_vfeeb_s8,      s390_vfeef_u32b,    B_VX,               BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfeeb_s8,              s390_vfeeb,         0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfeeb_u8a,             s390_vfeeb,         0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfeeb_u8b,             s390_vfeeb,         0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfeeh_s16,             s390_vfeeh,         0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfeeh_u16a,            s390_vfeeh,         0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfeeh_u16b,            s390_vfeeh,         0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfeef_s32,             s390_vfeef,         0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfeef_u32a,            s390_vfeef,         0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfeef_u32b,            s390_vfeef,         0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpeq_or_0_idx,    s390_vfeezb_s8,     s390_vfeezf_u32b,   B_VX,               BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfeezb_s8,             s390_vfeezb,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfeezb_u8a,            s390_vfeezb,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfeezb_u8b,            s390_vfeezb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfeezh_s16,            s390_vfeezh,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfeezh_u16a,           s390_vfeezh,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfeezh_u16b,           s390_vfeezh,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfeezf_s32,            s390_vfeezf,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfeezf_u32a,           s390_vfeezf,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfeezf_u32b,           s390_vfeezf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpeq_idx_cc,      s390_vfeebs_s8,     s390_vfeefs_u32b,   B_VX,               BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfeebs_s8,             s390_vfeebs,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfeebs_u8a,            s390_vfeebs,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfeebs_u8b,            s390_vfeebs,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfeehs_s16,            s390_vfeehs,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfeehs_u16a,           s390_vfeehs,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfeehs_u16b,           s390_vfeehs,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfeefs_s32,            s390_vfeefs,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfeefs_u32a,           s390_vfeefs,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfeefs_u32b,           s390_vfeefs,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpeq_or_0_idx_cc, s390_vfeezbs_s8,    s390_vfeezfs_u32b,  B_VX,               BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfeezbs_s8,            s390_vfeezbs,       0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfeezbs_u8a,           s390_vfeezbs,       0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfeezbs_u8b,           s390_vfeezbs,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfeezhs_s16,           s390_vfeezhs,       0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfeezhs_u16a,          s390_vfeezhs,       0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfeezhs_u16b,          s390_vfeezhs,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfeezfs_s32,           s390_vfeezfs,       0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfeezfs_u32a,          s390_vfeezfs,       0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfeezfs_u32b,          s390_vfeezfs,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

B_DEF      (s390_vfeneb,                vfenev16qi,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vfeneh,                vfenev8hi,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vfenef,                vfenev4si,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vfenezb,               vfenezv16qi,        0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI)
B_DEF      (s390_vfenezh,               vfenezv8hi,         0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI)
B_DEF      (s390_vfenezf,               vfenezv4si,         0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI)
B_DEF      (s390_vfenebs,               vfenesv16qi,        0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vfenehs,               vfenesv8hi,         0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vfenefs,               vfenesv4si,         0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)
B_DEF      (s390_vfenezbs,              vfenezsv16qi,       0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vfenezhs,              vfenezsv8hi,        0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vfenezfs,              vfenezsv4si,        0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpne_idx,         s390_vfeneb_s8,     s390_vfenef_u32b,   B_VX,               BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfeneb_s8,             s390_vfeneb,        0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfeneb_u8a,            s390_vfeneb,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfeneb_u8b,            s390_vfeneb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfeneh_s16,            s390_vfeneh,        0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfeneh_u16a,           s390_vfeneh,        0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfeneh_u16b,           s390_vfeneh,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfenef_s32,            s390_vfenef,        0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfenef_u32a,           s390_vfenef,        0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfenef_u32b,           s390_vfenef,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpne_or_0_idx,    s390_vfenezb_s8,    s390_vfenezf_u32b,  B_VX,               BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vfenezb_s8,            s390_vfenezb,       0,                  0,                  BT_OV_V16QI_V16QI_V16QI)
OB_DEF_VAR (s390_vfenezb_u8a,           s390_vfenezb,       0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI)
OB_DEF_VAR (s390_vfenezb_u8b,           s390_vfenezb,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vfenezh_s16,           s390_vfenezh,       0,                  0,                  BT_OV_V8HI_V8HI_V8HI)
OB_DEF_VAR (s390_vfenezh_u16a,          s390_vfenezh,       0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI)
OB_DEF_VAR (s390_vfenezh_u16b,          s390_vfenezh,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vfenezf_s32,           s390_vfenezf,       0,                  0,                  BT_OV_V4SI_V4SI_V4SI)
OB_DEF_VAR (s390_vfenezf_u32a,          s390_vfenezf,       0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI)
OB_DEF_VAR (s390_vfenezf_u32b,          s390_vfenezf,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpne_idx_cc,      s390_vfenebs_s8,    s390_vfenefs_u32b,  B_VX,               BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfenebs_s8,            s390_vfenebs,       0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfenebs_u8a,           s390_vfenebs,       0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfenebs_u8b,           s390_vfenebs,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfenehs_s16,           s390_vfenehs,       0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfenehs_u16a,          s390_vfenehs,       0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfenehs_u16b,          s390_vfenehs,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfenefs_s32,           s390_vfenefs,       0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfenefs_u32a,          s390_vfenefs,       0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfenefs_u32b,          s390_vfenefs,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpne_or_0_idx_cc, s390_vfenezbs_s8,   s390_vfenezfs_u32b, B_VX,               BT_FN_INT_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vfenezbs_s8,           s390_vfenezbs,      0,                  0,                  BT_OV_V16QI_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vfenezbs_u8a,          s390_vfenezbs,      0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vfenezbs_u8b,          s390_vfenezbs,      0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vfenezhs_s16,          s390_vfenezhs,      0,                  0,                  BT_OV_V8HI_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vfenezhs_u16a,         s390_vfenezhs,      0,                  0,                  BT_OV_UV8HI_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vfenezhs_u16b,         s390_vfenezhs,      0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vfenezfs_s32,          s390_vfenezfs,      0,                  0,                  BT_OV_V4SI_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vfenezfs_u32a,         s390_vfenezfs,      0,                  0,                  BT_OV_UV4SI_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vfenezfs_u32b,         s390_vfenezfs,      0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_INTPTR)

B_DEF      (s390_vistrb,                vistrv16qi,         0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI)
B_DEF      (s390_vistrh,                vistrv8hi,          0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI)
B_DEF      (s390_vistrf,                vistrv4si,          0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI)
B_DEF      (s390_vistrbs,               vistrsv16qi,        0,                  B_VX,               0,                  BT_FN_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vistrhs,               vistrsv8hi,         0,                  B_VX,               0,                  BT_FN_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vistrfs,               vistrsv4si,         0,                  B_VX,               0,                  BT_FN_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cp_until_zero,     s390_vistrb_s8,     s390_vistrf_u32,    B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vistrb_s8,             s390_vistrb,        0,                  0,                  BT_OV_V16QI_V16QI)
OB_DEF_VAR (s390_vistrb_b8,             s390_vistrb,        0,                  0,                  BT_OV_BV16QI_BV16QI)
OB_DEF_VAR (s390_vistrb_u8,             s390_vistrb,        0,                  0,                  BT_OV_UV16QI_UV16QI)
OB_DEF_VAR (s390_vistrh_s16,            s390_vistrh,        0,                  0,                  BT_OV_V8HI_V8HI)
OB_DEF_VAR (s390_vistrh_b16,            s390_vistrh,        0,                  0,                  BT_OV_BV8HI_BV8HI)
OB_DEF_VAR (s390_vistrh_u16,            s390_vistrh,        0,                  0,                  BT_OV_UV8HI_UV8HI)
OB_DEF_VAR (s390_vistrf_s32,            s390_vistrf,        0,                  0,                  BT_OV_V4SI_V4SI)
OB_DEF_VAR (s390_vistrf_b32,            s390_vistrf,        0,                  0,                  BT_OV_BV4SI_BV4SI)
OB_DEF_VAR (s390_vistrf_u32,            s390_vistrf,        0,                  0,                  BT_OV_UV4SI_UV4SI)

OB_DEF     (s390_vec_cp_until_zero_cc,  s390_vistrbs_s8,    s390_vistrfs_u32,   B_VX,               BT_FN_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vistrbs_s8,            s390_vistrbs,       0,                  0,                  BT_OV_V16QI_V16QI_INTPTR)
OB_DEF_VAR (s390_vistrbs_b8,            s390_vistrbs,       0,                  0,                  BT_OV_BV16QI_BV16QI_INTPTR)
OB_DEF_VAR (s390_vistrbs_u8,            s390_vistrbs,       0,                  0,                  BT_OV_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vistrhs_s16,           s390_vistrhs,       0,                  0,                  BT_OV_V8HI_V8HI_INTPTR)
OB_DEF_VAR (s390_vistrhs_b16,           s390_vistrhs,       0,                  0,                  BT_OV_BV8HI_BV8HI_INTPTR)
OB_DEF_VAR (s390_vistrhs_u16,           s390_vistrhs,       0,                  0,                  BT_OV_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vistrfs_s32,           s390_vistrfs,       0,                  0,                  BT_OV_V4SI_V4SI_INTPTR)
OB_DEF_VAR (s390_vistrfs_b32,           s390_vistrfs,       0,                  0,                  BT_OV_BV4SI_BV4SI_INTPTR)
OB_DEF_VAR (s390_vistrfs_u32,           s390_vistrfs,       0,                  0,                  BT_OV_UV4SI_UV4SI_INTPTR)

B_DEF      (s390_vstrcb,                vstrcv16qi,         0,                  B_VX,               O4_U4,              BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT)
B_DEF      (s390_vstrch,                vstrcv8hi,          0,                  B_VX,               O4_U4,              BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT)
B_DEF      (s390_vstrcf,                vstrcv4si,          0,                  B_VX,               O4_U4,              BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT)
B_DEF      (s390_vstrczb,               vstrczv16qi,        0,                  B_VX,               O4_U4,              BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT)
B_DEF      (s390_vstrczh,               vstrczv8hi,         0,                  B_VX,               O4_U4,              BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT)
B_DEF      (s390_vstrczf,               vstrczv4si,         0,                  B_VX,               O4_U4,              BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT)
B_DEF      (s390_vstrcbs,               vstrcsv16qi,        0,                  B_VX,               O4_U4,              BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT_INTPTR)
B_DEF      (s390_vstrchs,               vstrcsv8hi,         0,                  B_VX,               O4_U4,              BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT_INTPTR)
B_DEF      (s390_vstrcfs,               vstrcsv4si,         0,                  B_VX,               O4_U4,              BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT_INTPTR)
B_DEF      (s390_vstrczbs,              vstrczsv16qi,       0,                  B_VX,               O4_U4,              BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INT_INTPTR)
B_DEF      (s390_vstrczhs,              vstrczsv8hi,        0,                  B_VX,               O4_U4,              BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INT_INTPTR)
B_DEF      (s390_vstrczfs,              vstrczsv4si,        0,                  B_VX,               O4_U4,              BT_FN_UV4SI_UV4SI_UV4SI_UV4SI_INT_INTPTR)

OB_DEF     (s390_vec_cmprg_idx,         s390_vstrcb_idx_u8, s390_vstrcf_idx_u32,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vstrcb_idx_u8,         s390_vstrcb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vstrch_idx_u16,        s390_vstrch,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vstrcf_idx_u32,        s390_vstrcf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpnrg_idx,        s390_vstrcb_inv_idx_u8,s390_vstrcf_inv_idx_u32,B_VX,        BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vstrcb_inv_idx_u8,     s390_vstrcb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vstrch_inv_idx_u16,    s390_vstrch,        0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vstrcf_inv_idx_u32,    s390_vstrcf,        0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmprg_or_0_idx,    s390_vstrczb_idx_u8,s390_vstrczf_idx_u32,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vstrczb_idx_u8,        s390_vstrczb,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vstrczh_idx_u16,       s390_vstrczh,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vstrczf_idx_u32,       s390_vstrczf,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpnrg_or_0_idx,   s390_vstrczb_inv_idx_u8,s390_vstrczf_inv_idx_u32,B_VX,      BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vstrczb_inv_idx_u8,    s390_vstrczb,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vstrczh_inv_idx_u16,   s390_vstrczh,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vstrczf_inv_idx_u32,   s390_vstrczf,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmprg,             s390_vstrcb_u8,     s390_vstrcf_u32,    B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vstrcb_u8,             s390_vstrcb,        0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vstrch_u16,            s390_vstrch,        0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vstrcf_u32,            s390_vstrcf,        0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmpnrg,            s390_vstrcb_inv_u8, s390_vstrcf_inv_u32,B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vstrcb_inv_u8,         s390_vstrcb,        0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI_UV16QI)
OB_DEF_VAR (s390_vstrch_inv_u16,        s390_vstrch,        0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI_UV8HI)
OB_DEF_VAR (s390_vstrcf_inv_u32,        s390_vstrcf,        0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI_UV4SI)

OB_DEF     (s390_vec_cmprg_idx_cc,      s390_vstrcbs_idx_u8,s390_vstrcfs_idx_u32,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrcbs_idx_u8,        s390_vstrcbs,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrchs_idx_u16,       s390_vstrchs,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vstrcfs_idx_u32,       s390_vstrcfs,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpnrg_idx_cc,     s390_vstrcbs_inv_idx_u8,s390_vstrcfs_inv_idx_u32,B_VX,      BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrcbs_inv_idx_u8,    s390_vstrcbs,       0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR) /* vstrcb */
OB_DEF_VAR (s390_vstrchs_inv_idx_u16,   s390_vstrchs,       0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)    /* vstrch */
OB_DEF_VAR (s390_vstrcfs_inv_idx_u32,   s390_vstrcfs,       0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)    /* vstrcf */

OB_DEF     (s390_vec_cmprg_or_0_idx_cc, s390_vstrczbs_idx_u8,s390_vstrczfs_idx_u32,B_VX,            BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrczbs_idx_u8,       s390_vstrczbs,      0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrczhs_idx_u16,      s390_vstrczhs,      0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vstrczfs_idx_u32,      s390_vstrczfs,      0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpnrg_or_0_idx_cc,s390_vstrczbs_inv_idx_u8,s390_vstrczfs_inv_idx_u32,B_VX,    BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrczbs_inv_idx_u8,   s390_vstrczbs,      0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrczhs_inv_idx_u16,  s390_vstrczhs,      0,                  0,                  BT_OV_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vstrczfs_inv_idx_u32,  s390_vstrczfs,      0,                  0,                  BT_OV_UV4SI_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmprg_cc,          s390_vstrcbs_u8,    s390_vstrcfs_u32,   B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrcbs_u8,            s390_vstrcbs,       0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrchs_u16,           s390_vstrchs,       0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vstrcfs_u32,           s390_vstrcfs,       0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI_UV4SI_INTPTR)

OB_DEF     (s390_vec_cmpnrg_cc,         s390_vstrcbs_inv_u8,s390_vstrcfs_inv_u32,B_VX,              BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrcbs_inv_u8,        s390_vstrcbs,       0,                  0,                  BT_OV_BV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrchs_inv_u16,       s390_vstrchs,       0,                  0,                  BT_OV_BV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
OB_DEF_VAR (s390_vstrcfs_inv_u32,       s390_vstrcfs,       0,                  0,                  BT_OV_BV4SI_UV4SI_UV4SI_UV4SI_INTPTR)

B_DEF      (vec_all_unltv4sf,           vec_all_unltv4sf,   0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_unltv2df,           vec_all_unltv2df,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)
B_DEF      (vec_all_unlev4sf,           vec_all_unlev4sf,   0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_all_unlev2df,           vec_all_unlev2df,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

B_DEF      (vec_any_unltv4sf,           vec_any_unltv4sf,   0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_unltv2df,           vec_any_unltv2df,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)
B_DEF      (vec_any_unlev4sf,           vec_any_unlev4sf,   0,                  B_INT | B_VXE,      0,                  BT_FN_INT_V4SF_V4SF)
B_DEF      (vec_any_unlev2df,           vec_any_unlev2df,   0,                  B_INT | B_VX,       0,                  BT_FN_INT_V2DF_V2DF)

OB_DEF     (s390_vec_all_nge,           s390_vec_all_nge_flt,s390_vec_all_nge_dbl,B_VX,             BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_nge_flt,       vec_all_unltv4sf,   B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)                     /* vfchesbs */
OB_DEF_VAR (s390_vec_all_nge_dbl,       vec_all_unltv2df,   0,                  0,                  BT_OV_INT_V2DF_V2DF)                     /* vfchedbs */

OB_DEF     (s390_vec_all_ngt,           s390_vec_all_ngt_flt,s390_vec_all_ngt_dbl,B_VX,             BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_all_ngt_flt,       vec_all_unlev4sf,   B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)                     /* vfchsbs */
OB_DEF_VAR (s390_vec_all_ngt_dbl,       vec_all_unlev2df,   0,                  0,                  BT_OV_INT_V2DF_V2DF)                     /* vfchdbs */

OB_DEF     (s390_vec_any_nge,           s390_vec_any_nge_flt,s390_vec_any_nge_dbl,B_VX,             BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_nge_flt,       vec_any_unltv4sf,   B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_nge_dbl,       vec_any_unltv2df,   0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_any_ngt,           s390_vec_any_ngt_flt,s390_vec_any_ngt_dbl,B_VX,             BT_FN_INT_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_any_ngt_flt,       vec_any_unlev4sf,   B_VXE,              0,                  BT_OV_INT_V4SF_V4SF)
OB_DEF_VAR (s390_vec_any_ngt_dbl,       vec_any_unlev2df,   0,                  0,                  BT_OV_INT_V2DF_V2DF)

OB_DEF     (s390_vec_ctd,               s390_vec_ctd_s64,   s390_vec_ctd_u64,   B_VX,               BT_FN_V2DF_UV4SI_INT)
OB_DEF_VAR (s390_vec_ctd_s64,           s390_vec_ctd_s64,   0,                  O2_U5,              BT_OV_V2DF_V2DI_INT)                     /* vcdgb */
OB_DEF_VAR (s390_vec_ctd_u64,           s390_vec_ctd_u64,   0,                  O2_U5,              BT_OV_V2DF_UV2DI_INT)                    /* vcdlgb */

OB_DEF     (s390_vfi,                   s390_vfi_flt,       s390_vfi_dbl,       B_VX,               BT_FN_V2DF_V2DF_UINT_UINT)
OB_DEF_VAR (s390_vfi_flt,               s390_vfisb,         B_VXE,              O2_U4 | O3_U3,      BT_OV_V4SF_V4SF_UCHAR_UCHAR)             /* vfisb */
OB_DEF_VAR (s390_vfi_dbl,               s390_vfidb,         0,                  O2_U4 | O3_U3,      BT_OV_V2DF_V2DF_UCHAR_UCHAR)             /* vfidb */

B_DEF      (s390_vec_ctd_s64,           vec_ctd_s64,        0,                  B_VX,               O2_U3,              BT_FN_V2DF_V2DI_INT)                     /* vcdgb */
B_DEF      (s390_vec_ctd_u64,           vec_ctd_u64,        0,                  B_VX,               O2_U3,              BT_FN_V2DF_UV2DI_INT)                    /* vcdlgb */
B_DEF      (s390_vec_ctsl,              vec_ctsl,           0,                  B_VX,               O2_U3,              BT_FN_V2DI_V2DF_INT)                     /* vcgdb */
B_DEF      (s390_vec_ctul,              vec_ctul,           0,                  B_VX,               O2_U3,              BT_FN_UV2DI_V2DF_INT)                    /* vclgdb */


OB_DEF     (s390_vec_float,             s390_vec_float_s32, s390_vec_float_u32, B_VXE2,             BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_float_s32,         s390_vcefb,         0,                  0,                  BT_OV_V4SF_V4SI)
OB_DEF_VAR (s390_vec_float_u32,         s390_vcelfb,        0,                  0,                  BT_OV_V4SF_UV4SI)

OB_DEF     (s390_vec_double,            s390_vec_double_s64,s390_vec_double_u64,B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_double_s64,        s390_vcdgb,         0,                  0,                  BT_OV_V2DF_V2DI)
OB_DEF_VAR (s390_vec_double_u64,        s390_vcdlgb,        0,                  0,                  BT_OV_V2DF_UV2DI)

B_DEF      (s390_vcefb,                 floatv4siv4sf2,     0,                  B_VXE2,             O2_U4 | O3_U3,      BT_FN_V4SF_V4SI)
B_DEF      (s390_vcdgb,                 floatv2div2df2,     0,                  B_VX,               O2_U4 | O3_U3,      BT_FN_V2DF_V2DI)
B_DEF      (s390_vcelfb,                floatunsv4siv4sf2,  0,                  B_VXE2,             O2_U4 | O3_U3,      BT_FN_V4SF_UV4SI)
B_DEF      (s390_vcdlgb,                floatunsv2div2df2,  0,                  B_VX,               O2_U4 | O3_U3,      BT_FN_V2DF_UV2DI)

OB_DEF     (s390_vec_signed,            s390_vec_signed_flt,s390_vec_signed_dbl,B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_signed_flt,        s390_vcfeb,         0,                  B_VXE2,             BT_OV_V4SI_V4SF)
OB_DEF_VAR (s390_vec_signed_dbl,        s390_vcgdb,         0,                  0,                  BT_OV_V2DI_V2DF)

OB_DEF     (s390_vec_unsigned,          s390_vec_unsigned_flt,s390_vec_unsigned_dbl,B_VX,           BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_unsigned_flt,      s390_vclfeb,        0,                B_VXE2,             BT_OV_UV4SI_V4SF)
OB_DEF_VAR (s390_vec_unsigned_dbl,      s390_vclgdb,        0,                0,                  BT_OV_UV2DI_V2DF)

B_DEF      (s390_vcfeb,                 fix_truncv4sfv4si2, 0,                  B_VXE2,             O2_U4 | O3_U3,      BT_FN_V4SI_V4SF)
B_DEF      (s390_vcgdb,                 fix_truncv2dfv2di2, 0,                  B_VX,               O2_U4 | O3_U3,      BT_FN_V2DI_V2DF)
B_DEF      (s390_vclfeb,                fixuns_truncv4sfv4si2, 0,               B_VXE2,             O2_U4 | O3_U3,      BT_FN_UV4SI_V4SF)
B_DEF      (s390_vclgdb,                fixuns_truncv2dfv2di2, 0,               B_VX,               O2_U4 | O3_U3,      BT_FN_UV2DI_V2DF)

B_DEF      (s390_vfisb,                 vec_fpintv4sf,      0,                  B_VXE,              O2_U4 | O3_U3,      BT_FN_V4SF_V4SF_UCHAR_UCHAR)
B_DEF      (s390_vfidb,                 vec_fpintv2df,      0,                  B_VX,               O2_U4 | O3_U3,      BT_FN_V2DF_V2DF_UCHAR_UCHAR)
B_DEF      (s390_vec_ld2f,              vec_ld2f,           0,                  B_VX,               0,                  BT_FN_V2DF_FLTCONSTPTR)                  /* vldeb */
B_DEF      (s390_vec_st2f,              vec_st2f,           0,                  B_VX,               0,                  BT_FN_VOID_V2DF_FLTPTR)                  /* vledb */

B_DEF      (s390_vfmasb,                fmav4sf4,           0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF_V4SF_V4SF)
B_DEF      (s390_vfmadb,                fmav2df4,           0,                  B_VX,               0,                  BT_FN_V2DF_V2DF_V2DF_V2DF)
B_DEF      (s390_vfmssb,                fmsv4sf4,           0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF_V4SF_V4SF)
B_DEF      (s390_vfmsdb,                fmsv2df4,           0,                  B_VX,               0,                  BT_FN_V2DF_V2DF_V2DF_V2DF)
B_DEF      (s390_vfnmasb,               neg_fmav4sf4,       0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF_V4SF_V4SF)
B_DEF      (s390_vfnmadb,               neg_fmav2df4,       0,                  B_VXE,              0,                  BT_FN_V2DF_V2DF_V2DF_V2DF)
B_DEF      (s390_vfnmssb,               neg_fmsv4sf4,       0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF_V4SF_V4SF)
B_DEF      (s390_vfnmsdb,               neg_fmsv2df4,       0,                  B_VXE,              0,                  BT_FN_V2DF_V2DF_V2DF_V2DF)

B_DEF      (s390_vfsqsb,                sqrtv4sf2,          0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF)
B_DEF      (s390_vfsqdb,                sqrtv2df2,          0,                  B_VX,               0,                  BT_FN_V2DF_V2DF)

B_DEF      (s390_vflls,                 vflls,              0,                  B_VX,               0,                  BT_FN_V2DF_V4SF)                         /* vldeb */
B_DEF      (s390_vflrd,                 vflrd,              0,                  B_VX,               O2_U4 | O3_U4,      BT_FN_V4SF_V2DF_INT_INT)                 /* vledb */

OB_DEF     (s390_vec_madd,              s390_vec_madd_flt,  s390_vec_madd_dbl,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_madd_flt,          s390_vfmasb,        B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_madd_dbl,          s390_vfmadb,        0,                  0,                  BT_OV_V2DF_V2DF_V2DF_V2DF)

OB_DEF     (s390_vec_msub,              s390_vec_msub_flt,  s390_vec_msub_dbl,  B_VX,               BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_msub_flt,          s390_vfmssb,        B_VXE,              0,                  BT_OV_V4SF_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_msub_dbl,          s390_vfmsdb,        0,                  0,                  BT_OV_V2DF_V2DF_V2DF_V2DF)

OB_DEF     (s390_vec_nmadd,             s390_vec_nmadd_flt, s390_vec_nmadd_dbl, B_VXE,              BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_nmadd_flt,         s390_vfnmasb,       0,                  0,                  BT_OV_V4SF_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_nmadd_dbl,         s390_vfnmadb,       0,                  0,                  BT_OV_V2DF_V2DF_V2DF_V2DF)

OB_DEF     (s390_vec_nmsub,             s390_vec_nmsub_flt, s390_vec_nmsub_dbl, B_VXE,              BT_FN_OV4SI_OV4SI_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_nmsub_flt,         s390_vfnmssb,       0,                  0,                  BT_OV_V4SF_V4SF_V4SF_V4SF)
OB_DEF_VAR (s390_vec_nmsub_dbl,         s390_vfnmsdb,       0,                  0,                  BT_OV_V2DF_V2DF_V2DF_V2DF)

B_DEF      (s390_vflnsb,                negabsv4sf2,        0,                  B_VXE,              0,                  BT_FN_V4SF_V4SF)
B_DEF      (s390_vflndb,                negabsv2df2,        0,                  B_VX,               0,                  BT_FN_V2DF_V2DF)

OB_DEF     (s390_vec_nabs,              s390_vec_nabs_flt,  s390_vec_nabs_dbl,  B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_nabs_flt,          s390_vflnsb,        B_VXE,              0,                  BT_OV_V4SF_V4SF)
OB_DEF_VAR (s390_vec_nabs_dbl,          s390_vflndb,        0,                  0,                  BT_OV_V2DF_V2DF)

OB_DEF     (s390_vec_sqrt,              s390_vec_sqrt_flt,  s390_vec_sqrt_dbl,  B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_sqrt_flt,          s390_vfsqsb,        B_VXE,              0,                  BT_OV_V4SF_V4SF)
OB_DEF_VAR (s390_vec_sqrt_dbl,          s390_vfsqdb,        0,                  0,                  BT_OV_V2DF_V2DF)

/* Test data class with boolean result *AND* cc mode.  */

B_DEF      (s390_vftcisb,               vftciv4sf_intcc,    0,                  B_VXE,              O2_U12,             BT_FN_V4SI_V4SF_INT_INTPTR)
B_DEF      (s390_vftcidb,               vftciv2df_intcc,    0,                  B_VX,               O2_U12,             BT_FN_V2DI_V2DF_INT_INTPTR)

/* Test data class with boolean result *AND* cc mode.  */

B_DEF      (s390_vftcisbcc,             vftciv4sf_intcc,    0,                  B_INT | B_VXE,      O2_U12,             BT_FN_BV4SI_V4SF_USHORT_INTPTR)          /* vftcisb */
B_DEF      (s390_vftcidbcc,             vftciv2df_intcc,    0,                  B_INT | B_VX,       O2_U12,             BT_FN_BV2DI_V2DF_USHORT_INTPTR)          /* vftcidb */

OB_DEF     (s390_vec_fp_test_data_class,s390_vec_fp_test_data_class_flt,s390_vec_fp_test_data_class_dbl,B_VX,BT_FN_OV4SI_OV4SI_INT_INTPTR)
OB_DEF_VAR (s390_vec_fp_test_data_class_flt,s390_vftcisbcc, B_VXE,              O2_U12,             BT_OV_BV4SI_V4SF_USHORT_INTPTR)          /* vftcisb */
OB_DEF_VAR (s390_vec_fp_test_data_class_dbl,s390_vftcidbcc, 0,                  O2_U12,             BT_OV_BV2DI_V2DF_USHORT_INTPTR)          /* vftcidb */

/* arch 13 builtins */

/* Returns a vector where each vector element contains the corresponding byte-reversed vector element of the input vector in OP0.  */
OB_DEF     (s390_vec_revb,              s390_vec_revb_s16,  s390_vec_revb_dbl,  B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_revb_s16,          s390_vlbrh,         0,                  0,                  BT_OV_V8HI_V8HI)
OB_DEF_VAR (s390_vec_revb_u16,          s390_vlbrh,         0,                  0,                  BT_OV_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_revb_s32,          s390_vlbrf,         0,                  0,                  BT_OV_V4SI_V4SI)
OB_DEF_VAR (s390_vec_revb_u32,          s390_vlbrf,         0,                  0,                  BT_OV_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_revb_s64,          s390_vlbrg,         0,                  0,                  BT_OV_V2DI_V2DI)
OB_DEF_VAR (s390_vec_revb_u64,          s390_vlbrg,         0,                  0,                  BT_OV_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_revb_flt,          s390_vlbrf_flt,     0,                  B_VXE,              BT_OV_V4SF_V4SF)
OB_DEF_VAR (s390_vec_revb_dbl,          s390_vlbrg_dbl,     0,                  0,                  BT_OV_V2DF_V2DF)

B_DEF      (s390_vlbrh,                 bswapv8hi,          0,                  B_VX,               0,                   BT_FN_V8HI_V8HI)
B_DEF      (s390_vlbrf,                 bswapv4si,          0,                  B_VX,               0,                   BT_FN_V4SI_V4SI)
B_DEF      (s390_vlbrg,                 bswapv2di,          0,                  B_VX,               0,                   BT_FN_V2DI_V2DI)
B_DEF      (s390_vlbrq,                 bswapv1ti,          0,                  B_VX,               0,                   BT_FN_V1TI_V1TI)
B_DEF      (s390_vlbrf_flt,             bswapv4sf,          0,                  B_VXE,              0,                   BT_FN_V4SF_V4SF)
B_DEF      (s390_vlbrg_dbl,             bswapv2df,          0,                  B_VX,               0,                   BT_FN_V2DF_V2DF)

B_DEF      (s390_vstbrh,                bswapv8hi,          0,                  B_VX,               0,                   BT_FN_V8HI_V8HI)
B_DEF      (s390_vstbrf,                bswapv4si,          0,                  B_VX,               0,                   BT_FN_V4SI_V4SI)
B_DEF      (s390_vstbrg,                bswapv2di,          0,                  B_VX,               0,                   BT_FN_V2DI_V2DI)
B_DEF      (s390_vstbrq,                bswapv1ti,          0,                  B_VX,               0,                   BT_FN_V1TI_V1TI)
B_DEF      (s390_vstbrf_flt,            bswapv4sf,          0,                  B_VXE,              0,                   BT_FN_V4SF_V4SF)
B_DEF      (s390_vstbrg_dbl,            bswapv2df,          0,                  B_VX,               0,                   BT_FN_V2DF_V2DF)

/* Returns a vector with the elements of the input vector OP0 in reversed order.  */
OB_DEF     (s390_vec_reve,              s390_vec_reve_b8,   s390_vec_reve_dbl,  B_VX,               BT_FN_OV4SI_OV4SI)
OB_DEF_VAR (s390_vec_reve_b8,           s390_vlerb,         0,                  0,                  BT_OV_BV16QI_BV16QI)
OB_DEF_VAR (s390_vec_reve_s8,           s390_vlerb,         0,                  0,                  BT_OV_V16QI_V16QI)
OB_DEF_VAR (s390_vec_reve_u8,           s390_vlerb,         0,                  0,                  BT_OV_UV16QI_UV16QI)
OB_DEF_VAR (s390_vec_reve_b16,          s390_vlerh,         0,                  0,                  BT_OV_BV8HI_BV8HI)
OB_DEF_VAR (s390_vec_reve_s16,          s390_vlerh,         0,                  0,                  BT_OV_V8HI_V8HI)
OB_DEF_VAR (s390_vec_reve_u16,          s390_vlerh,         0,                  0,                  BT_OV_UV8HI_UV8HI)
OB_DEF_VAR (s390_vec_reve_b32,          s390_vlerf,         0,                  0,                  BT_OV_BV4SI_BV4SI)
OB_DEF_VAR (s390_vec_reve_s32,          s390_vlerf,         0,                  0,                  BT_OV_V4SI_V4SI)
OB_DEF_VAR (s390_vec_reve_u32,          s390_vlerf,         0,                  0,                  BT_OV_UV4SI_UV4SI)
OB_DEF_VAR (s390_vec_reve_b64,          s390_vlerg,         0,                  0,                  BT_OV_BV2DI_BV2DI)
OB_DEF_VAR (s390_vec_reve_s64,          s390_vlerg,         0,                  0,                  BT_OV_V2DI_V2DI)
OB_DEF_VAR (s390_vec_reve_u64,          s390_vlerg,         0,                  0,                  BT_OV_UV2DI_UV2DI)
OB_DEF_VAR (s390_vec_reve_flt,          s390_vlerf_flt,     0,                  B_VXE,              BT_OV_V4SF_V4SF)
OB_DEF_VAR (s390_vec_reve_dbl,          s390_vlerg_dbl,     0,                  0,                  BT_OV_V2DF_V2DF)

B_DEF      (s390_vlerb,                 eltswapv16qi,       0,                  B_VX,               0,                   BT_FN_V16QI_V16QI)
B_DEF      (s390_vlerh,                 eltswapv8hi,        0,                  B_VX,               0,                   BT_FN_V8HI_V8HI)
B_DEF      (s390_vlerf,                 eltswapv4si,        0,                  B_VX,               0,                   BT_FN_V4SI_V4SI)
B_DEF      (s390_vlerg,                 eltswapv2di,        0,                  B_VX,               0,                   BT_FN_V2DI_V2DI)
B_DEF      (s390_vlerf_flt,             eltswapv4sf,        0,                  B_VXE,              0,                   BT_FN_V4SF_V4SF)
B_DEF      (s390_vlerg_dbl,             eltswapv2df,        0,                  B_VX,               0,                   BT_FN_V2DF_V2DF)

B_DEF      (s390_vsterb,                eltswapv16qi,       0,                  B_VX,               0,                   BT_FN_V16QI_V16QI)
B_DEF      (s390_vsterh,                eltswapv8hi,        0,                  B_VX,               0,                   BT_FN_V8HI_V8HI)
B_DEF      (s390_vsterf,                eltswapv4si,        0,                  B_VX,               0,                   BT_FN_V4SI_V4SI)
B_DEF      (s390_vsterg,                eltswapv2di,        0,                  B_VX,               0,                   BT_FN_V2DI_V2DI)
B_DEF      (s390_vsterf_flt,            eltswapv4sf,        0,                  B_VXE,              0,                   BT_FN_V4SF_V4SF)
B_DEF      (s390_vsterg_dbl,            eltswapv2df,        0,                  B_VX,               0,                   BT_FN_V2DF_V2DF)

OB_DEF     (s390_vec_sldb,              s390_vec_sldb_s8,   s390_vec_sldb_dbl,  B_VXE2,             BT_FN_OV4SI_OV4SI_OV4SI_UINT)
OB_DEF_VAR (s390_vec_sldb_s8,           s390_vsld,          0,                  O3_U3,              BT_OV_V16QI_V16QI_V16QI_UINT)
OB_DEF_VAR (s390_vec_sldb_u8,           s390_vsld,          0,                  O3_U3,              BT_OV_UV16QI_UV16QI_UV16QI_UINT)
OB_DEF_VAR (s390_vec_sldb_s16,          s390_vsld,          0,                  O3_U3,              BT_OV_V8HI_V8HI_V8HI_UINT)
OB_DEF_VAR (s390_vec_sldb_u16,          s390_vsld,          0,                  O3_U3,              BT_OV_UV8HI_UV8HI_UV8HI_UINT)
OB_DEF_VAR (s390_vec_sldb_s32,          s390_vsld,          0,                  O3_U3,              BT_OV_V4SI_V4SI_V4SI_UINT)
OB_DEF_VAR (s390_vec_sldb_u32,          s390_vsld,          0,                  O3_U3,              BT_OV_UV4SI_UV4SI_UV4SI_UINT)
OB_DEF_VAR (s390_vec_sldb_s64,          s390_vsld,          0,                  O3_U3,              BT_OV_V2DI_V2DI_V2DI_UINT)
OB_DEF_VAR (s390_vec_sldb_u64,          s390_vsld,          0,                  O3_U3,              BT_OV_UV2DI_UV2DI_UV2DI_UINT)
OB_DEF_VAR (s390_vec_sldb_flt,          s390_vsld,          0,                  O3_U3,              BT_OV_V4SF_V4SF_V4SF_UINT)
OB_DEF_VAR (s390_vec_sldb_dbl,          s390_vsld,          0,                  O3_U3,              BT_OV_V2DF_V2DF_V2DF_UINT)

B_DEF      (s390_vsld,                  vec_sldbv16qi,      0,                  B_VXE2,             O3_U3,              BT_FN_UV16QI_UV16QI_UV16QI_INT)

OB_DEF     (s390_vec_srdb,              s390_vec_srdb_s8,   s390_vec_srdb_dbl,  B_VXE2,             BT_FN_OV4SI_OV4SI_OV4SI_UINT)
OB_DEF_VAR (s390_vec_srdb_s8,           s390_vsrd,          0,                  O3_U3,              BT_OV_V16QI_V16QI_V16QI_UINT)
OB_DEF_VAR (s390_vec_srdb_u8,           s390_vsrd,          0,                  O3_U3,              BT_OV_UV16QI_UV16QI_UV16QI_UINT)
OB_DEF_VAR (s390_vec_srdb_s16,          s390_vsrd,          0,                  O3_U3,              BT_OV_V8HI_V8HI_V8HI_UINT)
OB_DEF_VAR (s390_vec_srdb_u16,          s390_vsrd,          0,                  O3_U3,              BT_OV_UV8HI_UV8HI_UV8HI_UINT)
OB_DEF_VAR (s390_vec_srdb_s32,          s390_vsrd,          0,                  O3_U3,              BT_OV_V4SI_V4SI_V4SI_UINT)
OB_DEF_VAR (s390_vec_srdb_u32,          s390_vsrd,          0,                  O3_U3,              BT_OV_UV4SI_UV4SI_UV4SI_UINT)
OB_DEF_VAR (s390_vec_srdb_s64,          s390_vsrd,          0,                  O3_U3,              BT_OV_V2DI_V2DI_V2DI_UINT)
OB_DEF_VAR (s390_vec_srdb_u64,          s390_vsrd,          0,                  O3_U3,              BT_OV_UV2DI_UV2DI_UV2DI_UINT)
OB_DEF_VAR (s390_vec_srdb_flt,          s390_vsrd,          0,                  O3_U3,              BT_OV_V4SF_V4SF_V4SF_UINT)
OB_DEF_VAR (s390_vec_srdb_dbl,          s390_vsrd,          0,                  O3_U3,              BT_OV_V2DF_V2DF_V2DF_UINT)

B_DEF      (s390_vsrd,                  vec_srdbv16qi,      0,                  B_VXE2,             O3_U3,              BT_FN_UV16QI_UV16QI_UV16QI_INT)

OB_DEF     (s390_vec_search_string_cc,  s390_vstrs_s8,      s390_vstrs_u32,     B_VXE2,             BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrs_s8,              s390_vstrsb,        0,                  0,                  BT_OV_UV16QI_V16QI_V16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_b8,              s390_vstrsb,        0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_u8,              s390_vstrsb,        0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_s16,             s390_vstrsh,        0,                  0,                  BT_OV_UV16QI_V8HI_V8HI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_b16,             s390_vstrsh,        0,                  0,                  BT_OV_UV16QI_BV8HI_BV8HI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_u16,             s390_vstrsh,        0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_s32,             s390_vstrsf,        0,                  0,                  BT_OV_UV16QI_V4SI_V4SI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_b32,             s390_vstrsf,        0,                  0,                  BT_OV_UV16QI_BV4SI_BV4SI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrs_u32,             s390_vstrsf,        0,                  0,                  BT_OV_UV16QI_UV4SI_UV4SI_UV16QI_INTPTR)

B_DEF      (s390_vstrsb,                vstrsv16qi,         0,                  B_VXE2,             0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vstrsh,                vstrsv8hi,          0,                  B_VXE2,             0,                  BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vstrsf,                vstrsv4si,          0,                  B_VXE2,             0,                  BT_FN_UV4SI_UV4SI_UV4SI_UV8HI_INTPTR)

OB_DEF     (s390_vec_search_string_until_zero_cc,  s390_vstrsz_s8,  s390_vstrsz_u32, B_VXE2,        BT_FN_OV4SI_OV4SI_OV4SI_OV4SI_INTPTR)
OB_DEF_VAR (s390_vstrsz_s8,              s390_vstrszb,      0,                  0,                  BT_OV_UV16QI_V16QI_V16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_b8,              s390_vstrszb,      0,                  0,                  BT_OV_UV16QI_BV16QI_BV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_u8,              s390_vstrszb,      0,                  0,                  BT_OV_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_s16,             s390_vstrszh,      0,                  0,                  BT_OV_UV16QI_V8HI_V8HI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_b16,             s390_vstrszh,      0,                  0,                  BT_OV_UV16QI_BV8HI_BV8HI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_u16,             s390_vstrszh,      0,                  0,                  BT_OV_UV16QI_UV8HI_UV8HI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_s32,             s390_vstrszf,      0,                  0,                  BT_OV_UV16QI_V4SI_V4SI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_b32,             s390_vstrszf,      0,                  0,                  BT_OV_UV16QI_BV4SI_BV4SI_UV16QI_INTPTR)
OB_DEF_VAR (s390_vstrsz_u32,             s390_vstrszf,      0,                  0,                  BT_OV_UV16QI_UV4SI_UV4SI_UV16QI_INTPTR)

B_DEF      (s390_vstrszb,                vstrszv16qi,       0,                  B_VXE2,             0,                  BT_FN_UV16QI_UV16QI_UV16QI_UV16QI_INTPTR)
B_DEF      (s390_vstrszh,                vstrszv8hi,        0,                  B_VXE2,             0,                  BT_FN_UV8HI_UV8HI_UV8HI_UV8HI_INTPTR)
B_DEF      (s390_vstrszf,                vstrszv4si,        0,                  B_VXE2,             0,                  BT_FN_UV4SI_UV4SI_UV4SI_UV8HI_INTPTR)