OpenClGrammar.cs
1 // AUTOGENERATED: DO NOT EDIT 2 // Last update date: 2021-01-06 23:02:27.020534 3 #region Grammar License 4 // Copyright (c) 2014-2016 The Khronos Group Inc. 5 // 6 // Permission is hereby granted, free of charge, to any person obtaining a copy 7 // of this software and/or associated documentation files (the "Materials"), 8 // to deal in the Materials without restriction, including without limitation 9 // the rights to use, copy, modify, merge, publish, distribute, sublicense, 10 // and/or sell copies of the Materials, and to permit persons to whom the 11 // Materials are furnished to do so, subject to the following conditions: 12 // 13 // The above copyright notice and this permission notice shall be included in 14 // all copies or substantial portions of the Materials. 15 // 16 // MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS 17 // STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND 18 // HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ 19 // 20 // THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 21 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 23 // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 25 // FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS 26 // IN THE MATERIALS. 27 #endregion 28 29 using static Spv.Specification; 30 31 namespace Spv.Generator 32 { 33 public partial class Module 34 { 35 public Instruction OpenClAcos(Instruction resultType, Instruction x) 36 { 37 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 0, x); 38 } 39 40 public Instruction OpenClAcosh(Instruction resultType, Instruction x) 41 { 42 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 1, x); 43 } 44 45 public Instruction OpenClAcospi(Instruction resultType, Instruction x) 46 { 47 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 2, x); 48 } 49 50 public Instruction OpenClAsin(Instruction resultType, Instruction x) 51 { 52 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 3, x); 53 } 54 55 public Instruction OpenClAsinh(Instruction resultType, Instruction x) 56 { 57 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 4, x); 58 } 59 60 public Instruction OpenClAsinpi(Instruction resultType, Instruction x) 61 { 62 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 5, x); 63 } 64 65 public Instruction OpenClAtan(Instruction resultType, Instruction x) 66 { 67 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 6, x); 68 } 69 70 public Instruction OpenClAtan2(Instruction resultType, Instruction y, Instruction x) 71 { 72 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 7, y, x); 73 } 74 75 public Instruction OpenClAtanh(Instruction resultType, Instruction x) 76 { 77 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 8, x); 78 } 79 80 public Instruction OpenClAtanpi(Instruction resultType, Instruction x) 81 { 82 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 9, x); 83 } 84 85 public Instruction OpenClAtan2pi(Instruction resultType, Instruction y, Instruction x) 86 { 87 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 10, y, x); 88 } 89 90 public Instruction OpenClCbrt(Instruction resultType, Instruction x) 91 { 92 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 11, x); 93 } 94 95 public Instruction OpenClCeil(Instruction resultType, Instruction x) 96 { 97 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 12, x); 98 } 99 100 public Instruction OpenClCopysign(Instruction resultType, Instruction x, Instruction y) 101 { 102 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 13, x, y); 103 } 104 105 public Instruction OpenClCos(Instruction resultType, Instruction x) 106 { 107 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 14, x); 108 } 109 110 public Instruction OpenClCosh(Instruction resultType, Instruction x) 111 { 112 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 15, x); 113 } 114 115 public Instruction OpenClCospi(Instruction resultType, Instruction x) 116 { 117 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 16, x); 118 } 119 120 public Instruction OpenClErfc(Instruction resultType, Instruction x) 121 { 122 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 17, x); 123 } 124 125 public Instruction OpenClErf(Instruction resultType, Instruction x) 126 { 127 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 18, x); 128 } 129 130 public Instruction OpenClExp(Instruction resultType, Instruction x) 131 { 132 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 19, x); 133 } 134 135 public Instruction OpenClExp2(Instruction resultType, Instruction x) 136 { 137 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 20, x); 138 } 139 140 public Instruction OpenClExp10(Instruction resultType, Instruction x) 141 { 142 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 21, x); 143 } 144 145 public Instruction OpenClExpm1(Instruction resultType, Instruction x) 146 { 147 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 22, x); 148 } 149 150 public Instruction OpenClFabs(Instruction resultType, Instruction x) 151 { 152 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 23, x); 153 } 154 155 public Instruction OpenClFdim(Instruction resultType, Instruction x, Instruction y) 156 { 157 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 24, x, y); 158 } 159 160 public Instruction OpenClFloor(Instruction resultType, Instruction x) 161 { 162 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 25, x); 163 } 164 165 public Instruction OpenClFma(Instruction resultType, Instruction a, Instruction b, Instruction c) 166 { 167 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 26, a, b, c); 168 } 169 170 public Instruction OpenClFmax(Instruction resultType, Instruction x, Instruction y) 171 { 172 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 27, x, y); 173 } 174 175 public Instruction OpenClFmin(Instruction resultType, Instruction x, Instruction y) 176 { 177 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 28, x, y); 178 } 179 180 public Instruction OpenClFmod(Instruction resultType, Instruction x, Instruction y) 181 { 182 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 29, x, y); 183 } 184 185 public Instruction OpenClFract(Instruction resultType, Instruction x, Instruction ptr) 186 { 187 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 30, x, ptr); 188 } 189 190 public Instruction OpenClFrexp(Instruction resultType, Instruction x, Instruction exp) 191 { 192 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 31, x, exp); 193 } 194 195 public Instruction OpenClHypot(Instruction resultType, Instruction x, Instruction y) 196 { 197 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 32, x, y); 198 } 199 200 public Instruction OpenClIlogb(Instruction resultType, Instruction x) 201 { 202 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 33, x); 203 } 204 205 public Instruction OpenClLdexp(Instruction resultType, Instruction x, Instruction k) 206 { 207 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 34, x, k); 208 } 209 210 public Instruction OpenClLgamma(Instruction resultType, Instruction x) 211 { 212 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 35, x); 213 } 214 215 public Instruction OpenClLgamma_r(Instruction resultType, Instruction x, Instruction signp) 216 { 217 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 36, x, signp); 218 } 219 220 public Instruction OpenClLog(Instruction resultType, Instruction x) 221 { 222 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 37, x); 223 } 224 225 public Instruction OpenClLog2(Instruction resultType, Instruction x) 226 { 227 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 38, x); 228 } 229 230 public Instruction OpenClLog10(Instruction resultType, Instruction x) 231 { 232 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 39, x); 233 } 234 235 public Instruction OpenClLog1p(Instruction resultType, Instruction x) 236 { 237 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 40, x); 238 } 239 240 public Instruction OpenClLogb(Instruction resultType, Instruction x) 241 { 242 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 41, x); 243 } 244 245 public Instruction OpenClMad(Instruction resultType, Instruction a, Instruction b, Instruction c) 246 { 247 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 42, a, b, c); 248 } 249 250 public Instruction OpenClMaxmag(Instruction resultType, Instruction x, Instruction y) 251 { 252 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 43, x, y); 253 } 254 255 public Instruction OpenClMinmag(Instruction resultType, Instruction x, Instruction y) 256 { 257 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 44, x, y); 258 } 259 260 public Instruction OpenClModf(Instruction resultType, Instruction x, Instruction iptr) 261 { 262 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 45, x, iptr); 263 } 264 265 public Instruction OpenClNan(Instruction resultType, Instruction nancode) 266 { 267 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 46, nancode); 268 } 269 270 public Instruction OpenClNextafter(Instruction resultType, Instruction x, Instruction y) 271 { 272 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 47, x, y); 273 } 274 275 public Instruction OpenClPow(Instruction resultType, Instruction x, Instruction y) 276 { 277 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 48, x, y); 278 } 279 280 public Instruction OpenClPown(Instruction resultType, Instruction x, Instruction y) 281 { 282 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 49, x, y); 283 } 284 285 public Instruction OpenClPowr(Instruction resultType, Instruction x, Instruction y) 286 { 287 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 50, x, y); 288 } 289 290 public Instruction OpenClRemainder(Instruction resultType, Instruction x, Instruction y) 291 { 292 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 51, x, y); 293 } 294 295 public Instruction OpenClRemquo(Instruction resultType, Instruction x, Instruction y, Instruction quo) 296 { 297 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 52, x, y, quo); 298 } 299 300 public Instruction OpenClRint(Instruction resultType, Instruction x) 301 { 302 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 53, x); 303 } 304 305 public Instruction OpenClRootn(Instruction resultType, Instruction x, Instruction y) 306 { 307 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 54, x, y); 308 } 309 310 public Instruction OpenClRound(Instruction resultType, Instruction x) 311 { 312 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 55, x); 313 } 314 315 public Instruction OpenClRsqrt(Instruction resultType, Instruction x) 316 { 317 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 56, x); 318 } 319 320 public Instruction OpenClSin(Instruction resultType, Instruction x) 321 { 322 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 57, x); 323 } 324 325 public Instruction OpenClSincos(Instruction resultType, Instruction x, Instruction cosval) 326 { 327 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 58, x, cosval); 328 } 329 330 public Instruction OpenClSinh(Instruction resultType, Instruction x) 331 { 332 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 59, x); 333 } 334 335 public Instruction OpenClSinpi(Instruction resultType, Instruction x) 336 { 337 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 60, x); 338 } 339 340 public Instruction OpenClSqrt(Instruction resultType, Instruction x) 341 { 342 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 61, x); 343 } 344 345 public Instruction OpenClTan(Instruction resultType, Instruction x) 346 { 347 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 62, x); 348 } 349 350 public Instruction OpenClTanh(Instruction resultType, Instruction x) 351 { 352 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 63, x); 353 } 354 355 public Instruction OpenClTanpi(Instruction resultType, Instruction x) 356 { 357 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 64, x); 358 } 359 360 public Instruction OpenClTgamma(Instruction resultType, Instruction x) 361 { 362 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 65, x); 363 } 364 365 public Instruction OpenClTrunc(Instruction resultType, Instruction x) 366 { 367 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 66, x); 368 } 369 370 public Instruction OpenClHalf_cos(Instruction resultType, Instruction x) 371 { 372 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 67, x); 373 } 374 375 public Instruction OpenClHalf_divide(Instruction resultType, Instruction x, Instruction y) 376 { 377 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 68, x, y); 378 } 379 380 public Instruction OpenClHalf_exp(Instruction resultType, Instruction x) 381 { 382 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 69, x); 383 } 384 385 public Instruction OpenClHalf_exp2(Instruction resultType, Instruction x) 386 { 387 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 70, x); 388 } 389 390 public Instruction OpenClHalf_exp10(Instruction resultType, Instruction x) 391 { 392 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 71, x); 393 } 394 395 public Instruction OpenClHalf_log(Instruction resultType, Instruction x) 396 { 397 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 72, x); 398 } 399 400 public Instruction OpenClHalf_log2(Instruction resultType, Instruction x) 401 { 402 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 73, x); 403 } 404 405 public Instruction OpenClHalf_log10(Instruction resultType, Instruction x) 406 { 407 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 74, x); 408 } 409 410 public Instruction OpenClHalf_powr(Instruction resultType, Instruction x, Instruction y) 411 { 412 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 75, x, y); 413 } 414 415 public Instruction OpenClHalf_recip(Instruction resultType, Instruction x) 416 { 417 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 76, x); 418 } 419 420 public Instruction OpenClHalf_rsqrt(Instruction resultType, Instruction x) 421 { 422 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 77, x); 423 } 424 425 public Instruction OpenClHalf_sin(Instruction resultType, Instruction x) 426 { 427 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 78, x); 428 } 429 430 public Instruction OpenClHalf_sqrt(Instruction resultType, Instruction x) 431 { 432 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 79, x); 433 } 434 435 public Instruction OpenClHalf_tan(Instruction resultType, Instruction x) 436 { 437 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 80, x); 438 } 439 440 public Instruction OpenClNative_cos(Instruction resultType, Instruction x) 441 { 442 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 81, x); 443 } 444 445 public Instruction OpenClNative_divide(Instruction resultType, Instruction x, Instruction y) 446 { 447 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 82, x, y); 448 } 449 450 public Instruction OpenClNative_exp(Instruction resultType, Instruction x) 451 { 452 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 83, x); 453 } 454 455 public Instruction OpenClNative_exp2(Instruction resultType, Instruction x) 456 { 457 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 84, x); 458 } 459 460 public Instruction OpenClNative_exp10(Instruction resultType, Instruction x) 461 { 462 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 85, x); 463 } 464 465 public Instruction OpenClNative_log(Instruction resultType, Instruction x) 466 { 467 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 86, x); 468 } 469 470 public Instruction OpenClNative_log2(Instruction resultType, Instruction x) 471 { 472 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 87, x); 473 } 474 475 public Instruction OpenClNative_log10(Instruction resultType, Instruction x) 476 { 477 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 88, x); 478 } 479 480 public Instruction OpenClNative_powr(Instruction resultType, Instruction x, Instruction y) 481 { 482 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 89, x, y); 483 } 484 485 public Instruction OpenClNative_recip(Instruction resultType, Instruction x) 486 { 487 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 90, x); 488 } 489 490 public Instruction OpenClNative_rsqrt(Instruction resultType, Instruction x) 491 { 492 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 91, x); 493 } 494 495 public Instruction OpenClNative_sin(Instruction resultType, Instruction x) 496 { 497 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 92, x); 498 } 499 500 public Instruction OpenClNative_sqrt(Instruction resultType, Instruction x) 501 { 502 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 93, x); 503 } 504 505 public Instruction OpenClNative_tan(Instruction resultType, Instruction x) 506 { 507 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 94, x); 508 } 509 510 public Instruction OpenClS_abs(Instruction resultType, Instruction x) 511 { 512 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 141, x); 513 } 514 515 public Instruction OpenClS_abs_diff(Instruction resultType, Instruction x, Instruction y) 516 { 517 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 142, x, y); 518 } 519 520 public Instruction OpenClS_add_sat(Instruction resultType, Instruction x, Instruction y) 521 { 522 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 143, x, y); 523 } 524 525 public Instruction OpenClU_add_sat(Instruction resultType, Instruction x, Instruction y) 526 { 527 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 144, x, y); 528 } 529 530 public Instruction OpenClS_hadd(Instruction resultType, Instruction x, Instruction y) 531 { 532 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 145, x, y); 533 } 534 535 public Instruction OpenClU_hadd(Instruction resultType, Instruction x, Instruction y) 536 { 537 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 146, x, y); 538 } 539 540 public Instruction OpenClS_rhadd(Instruction resultType, Instruction x, Instruction y) 541 { 542 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 147, x, y); 543 } 544 545 public Instruction OpenClU_rhadd(Instruction resultType, Instruction x, Instruction y) 546 { 547 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 148, x, y); 548 } 549 550 public Instruction OpenClS_clamp(Instruction resultType, Instruction x, Instruction minval, Instruction maxval) 551 { 552 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 149, x, minval, maxval); 553 } 554 555 public Instruction OpenClU_clamp(Instruction resultType, Instruction x, Instruction minval, Instruction maxval) 556 { 557 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 150, x, minval, maxval); 558 } 559 560 public Instruction OpenClClz(Instruction resultType, Instruction x) 561 { 562 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 151, x); 563 } 564 565 public Instruction OpenClCtz(Instruction resultType, Instruction x) 566 { 567 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 152, x); 568 } 569 570 public Instruction OpenClS_mad_hi(Instruction resultType, Instruction a, Instruction b, Instruction c) 571 { 572 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 153, a, b, c); 573 } 574 575 public Instruction OpenClU_mad_sat(Instruction resultType, Instruction x, Instruction y, Instruction z) 576 { 577 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 154, x, y, z); 578 } 579 580 public Instruction OpenClS_mad_sat(Instruction resultType, Instruction x, Instruction y, Instruction z) 581 { 582 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 155, x, y, z); 583 } 584 585 public Instruction OpenClS_max(Instruction resultType, Instruction x, Instruction y) 586 { 587 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 156, x, y); 588 } 589 590 public Instruction OpenClU_max(Instruction resultType, Instruction x, Instruction y) 591 { 592 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 157, x, y); 593 } 594 595 public Instruction OpenClS_min(Instruction resultType, Instruction x, Instruction y) 596 { 597 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 158, x, y); 598 } 599 600 public Instruction OpenClU_min(Instruction resultType, Instruction x, Instruction y) 601 { 602 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 159, x, y); 603 } 604 605 public Instruction OpenClS_mul_hi(Instruction resultType, Instruction x, Instruction y) 606 { 607 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 160, x, y); 608 } 609 610 public Instruction OpenClRotate(Instruction resultType, Instruction v, Instruction i) 611 { 612 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 161, v, i); 613 } 614 615 public Instruction OpenClS_sub_sat(Instruction resultType, Instruction x, Instruction y) 616 { 617 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 162, x, y); 618 } 619 620 public Instruction OpenClU_sub_sat(Instruction resultType, Instruction x, Instruction y) 621 { 622 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 163, x, y); 623 } 624 625 public Instruction OpenClU_upsample(Instruction resultType, Instruction hi, Instruction lo) 626 { 627 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 164, hi, lo); 628 } 629 630 public Instruction OpenClS_upsample(Instruction resultType, Instruction hi, Instruction lo) 631 { 632 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 165, hi, lo); 633 } 634 635 public Instruction OpenClPopcount(Instruction resultType, Instruction x) 636 { 637 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 166, x); 638 } 639 640 public Instruction OpenClS_mad24(Instruction resultType, Instruction x, Instruction y, Instruction z) 641 { 642 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 167, x, y, z); 643 } 644 645 public Instruction OpenClU_mad24(Instruction resultType, Instruction x, Instruction y, Instruction z) 646 { 647 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 168, x, y, z); 648 } 649 650 public Instruction OpenClS_mul24(Instruction resultType, Instruction x, Instruction y) 651 { 652 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 169, x, y); 653 } 654 655 public Instruction OpenClU_mul24(Instruction resultType, Instruction x, Instruction y) 656 { 657 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 170, x, y); 658 } 659 660 public Instruction OpenClU_abs(Instruction resultType, Instruction x) 661 { 662 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 201, x); 663 } 664 665 public Instruction OpenClU_abs_diff(Instruction resultType, Instruction x, Instruction y) 666 { 667 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 202, x, y); 668 } 669 670 public Instruction OpenClU_mul_hi(Instruction resultType, Instruction x, Instruction y) 671 { 672 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 203, x, y); 673 } 674 675 public Instruction OpenClU_mad_hi(Instruction resultType, Instruction a, Instruction b, Instruction c) 676 { 677 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 204, a, b, c); 678 } 679 680 public Instruction OpenClFclamp(Instruction resultType, Instruction x, Instruction minval, Instruction maxval) 681 { 682 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 95, x, minval, maxval); 683 } 684 685 public Instruction OpenClDegrees(Instruction resultType, Instruction radians) 686 { 687 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 96, radians); 688 } 689 690 public Instruction OpenClFmax_common(Instruction resultType, Instruction x, Instruction y) 691 { 692 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 97, x, y); 693 } 694 695 public Instruction OpenClFmin_common(Instruction resultType, Instruction x, Instruction y) 696 { 697 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 98, x, y); 698 } 699 700 public Instruction OpenClMix(Instruction resultType, Instruction x, Instruction y, Instruction a) 701 { 702 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 99, x, y, a); 703 } 704 705 public Instruction OpenClRadians(Instruction resultType, Instruction degrees) 706 { 707 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 100, degrees); 708 } 709 710 public Instruction OpenClStep(Instruction resultType, Instruction edge, Instruction x) 711 { 712 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 101, edge, x); 713 } 714 715 public Instruction OpenClSmoothstep(Instruction resultType, Instruction edge0, Instruction edge1, Instruction x) 716 { 717 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 102, edge0, edge1, x); 718 } 719 720 public Instruction OpenClSign(Instruction resultType, Instruction x) 721 { 722 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 103, x); 723 } 724 725 public Instruction OpenClCross(Instruction resultType, Instruction p0, Instruction p1) 726 { 727 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 104, p0, p1); 728 } 729 730 public Instruction OpenClDistance(Instruction resultType, Instruction p0, Instruction p1) 731 { 732 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 105, p0, p1); 733 } 734 735 public Instruction OpenClLength(Instruction resultType, Instruction p) 736 { 737 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 106, p); 738 } 739 740 public Instruction OpenClNormalize(Instruction resultType, Instruction p) 741 { 742 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 107, p); 743 } 744 745 public Instruction OpenClFast_distance(Instruction resultType, Instruction p0, Instruction p1) 746 { 747 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 108, p0, p1); 748 } 749 750 public Instruction OpenClFast_length(Instruction resultType, Instruction p) 751 { 752 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 109, p); 753 } 754 755 public Instruction OpenClFast_normalize(Instruction resultType, Instruction p) 756 { 757 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 110, p); 758 } 759 760 public Instruction OpenClBitselect(Instruction resultType, Instruction a, Instruction b, Instruction c) 761 { 762 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 186, a, b, c); 763 } 764 765 public Instruction OpenClSelect(Instruction resultType, Instruction a, Instruction b, Instruction c) 766 { 767 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 187, a, b, c); 768 } 769 770 public Instruction OpenClVloadn(Instruction resultType, Instruction offset, Instruction p, LiteralInteger n) 771 { 772 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 171, offset, p, n); 773 } 774 775 public Instruction OpenClVstoren(Instruction resultType, Instruction data, Instruction offset, Instruction p) 776 { 777 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 172, data, offset, p); 778 } 779 780 public Instruction OpenClVload_half(Instruction resultType, Instruction offset, Instruction p) 781 { 782 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 173, offset, p); 783 } 784 785 public Instruction OpenClVload_halfn(Instruction resultType, Instruction offset, Instruction p, LiteralInteger n) 786 { 787 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 174, offset, p, n); 788 } 789 790 public Instruction OpenClVstore_half(Instruction resultType, Instruction data, Instruction offset, Instruction p) 791 { 792 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 175, data, offset, p); 793 } 794 795 public Instruction OpenClVstore_half_r(Instruction resultType, Instruction data, Instruction offset, Instruction p, FPRoundingMode mode) 796 { 797 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 176, data, offset, p, LiteralInteger.CreateForEnum(mode)); 798 } 799 800 public Instruction OpenClVstore_halfn(Instruction resultType, Instruction data, Instruction offset, Instruction p) 801 { 802 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 177, data, offset, p); 803 } 804 805 public Instruction OpenClVstore_halfn_r(Instruction resultType, Instruction data, Instruction offset, Instruction p, FPRoundingMode mode) 806 { 807 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 178, data, offset, p, LiteralInteger.CreateForEnum(mode)); 808 } 809 810 public Instruction OpenClVloada_halfn(Instruction resultType, Instruction offset, Instruction p, LiteralInteger n) 811 { 812 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 179, offset, p, n); 813 } 814 815 public Instruction OpenClVstorea_halfn(Instruction resultType, Instruction data, Instruction offset, Instruction p) 816 { 817 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 180, data, offset, p); 818 } 819 820 public Instruction OpenClVstorea_halfn_r(Instruction resultType, Instruction data, Instruction offset, Instruction p, FPRoundingMode mode) 821 { 822 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 181, data, offset, p, LiteralInteger.CreateForEnum(mode)); 823 } 824 825 public Instruction OpenClShuffle(Instruction resultType, Instruction x, Instruction shufflemask) 826 { 827 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 182, x, shufflemask); 828 } 829 830 public Instruction OpenClShuffle2(Instruction resultType, Instruction x, Instruction y, Instruction shufflemask) 831 { 832 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 183, x, y, shufflemask); 833 } 834 835 public Instruction OpenClPrefetch(Instruction resultType, Instruction ptr, Instruction numelements) 836 { 837 return ExtInst(resultType, AddExtInstImport("OpenCL.std"), 185, ptr, numelements); 838 } 839 840 } 841 }