15#ifndef LLVM_IR_NVVMINTRINSICUTILS_H
16#define LLVM_IR_NVVMINTRINSICUTILS_H
25#include "llvm/IR/IntrinsicsNVPTX.h"
92 case VDTy::PER_16BYTES_80000000:
93 return "per_16bytes::80000000";
94 case VDTy::PER_16BYTES_8000:
95 return "per_16bytes::8000";
96 case VDTy::PER_16BYTES_80:
97 return "per_16bytes::80";
98 case VDTy::PER_16BYTES_8:
99 return "per_16bytes::8";
100 case VDTy::PER_ELEMENT_FF:
101 return "per_element::ff";
115 return "L2::evict_normal";
117 return "L2::evict_last";
217 switch (IntrinsicID) {
218 case Intrinsic::nvvm_f2i_rm_ftz:
219 case Intrinsic::nvvm_f2i_rn_ftz:
220 case Intrinsic::nvvm_f2i_rp_ftz:
221 case Intrinsic::nvvm_f2i_rz_ftz:
223 case Intrinsic::nvvm_f2ui_rm_ftz:
224 case Intrinsic::nvvm_f2ui_rn_ftz:
225 case Intrinsic::nvvm_f2ui_rp_ftz:
226 case Intrinsic::nvvm_f2ui_rz_ftz:
228 case Intrinsic::nvvm_f2ll_rm_ftz:
229 case Intrinsic::nvvm_f2ll_rn_ftz:
230 case Intrinsic::nvvm_f2ll_rp_ftz:
231 case Intrinsic::nvvm_f2ll_rz_ftz:
233 case Intrinsic::nvvm_f2ull_rm_ftz:
234 case Intrinsic::nvvm_f2ull_rn_ftz:
235 case Intrinsic::nvvm_f2ull_rp_ftz:
236 case Intrinsic::nvvm_f2ull_rz_ftz:
239 case Intrinsic::nvvm_f2i_rm:
240 case Intrinsic::nvvm_f2i_rn:
241 case Intrinsic::nvvm_f2i_rp:
242 case Intrinsic::nvvm_f2i_rz:
244 case Intrinsic::nvvm_f2ui_rm:
245 case Intrinsic::nvvm_f2ui_rn:
246 case Intrinsic::nvvm_f2ui_rp:
247 case Intrinsic::nvvm_f2ui_rz:
249 case Intrinsic::nvvm_d2i_rm:
250 case Intrinsic::nvvm_d2i_rn:
251 case Intrinsic::nvvm_d2i_rp:
252 case Intrinsic::nvvm_d2i_rz:
254 case Intrinsic::nvvm_d2ui_rm:
255 case Intrinsic::nvvm_d2ui_rn:
256 case Intrinsic::nvvm_d2ui_rp:
257 case Intrinsic::nvvm_d2ui_rz:
259 case Intrinsic::nvvm_f2ll_rm:
260 case Intrinsic::nvvm_f2ll_rn:
261 case Intrinsic::nvvm_f2ll_rp:
262 case Intrinsic::nvvm_f2ll_rz:
264 case Intrinsic::nvvm_f2ull_rm:
265 case Intrinsic::nvvm_f2ull_rn:
266 case Intrinsic::nvvm_f2ull_rp:
267 case Intrinsic::nvvm_f2ull_rz:
269 case Intrinsic::nvvm_d2ll_rm:
270 case Intrinsic::nvvm_d2ll_rn:
271 case Intrinsic::nvvm_d2ll_rp:
272 case Intrinsic::nvvm_d2ll_rz:
274 case Intrinsic::nvvm_d2ull_rm:
275 case Intrinsic::nvvm_d2ull_rn:
276 case Intrinsic::nvvm_d2ull_rp:
277 case Intrinsic::nvvm_d2ull_rz:
284 switch (IntrinsicID) {
286 case Intrinsic::nvvm_f2i_rm:
287 case Intrinsic::nvvm_f2i_rm_ftz:
288 case Intrinsic::nvvm_f2i_rn:
289 case Intrinsic::nvvm_f2i_rn_ftz:
290 case Intrinsic::nvvm_f2i_rp:
291 case Intrinsic::nvvm_f2i_rp_ftz:
292 case Intrinsic::nvvm_f2i_rz:
293 case Intrinsic::nvvm_f2i_rz_ftz:
295 case Intrinsic::nvvm_d2i_rm:
296 case Intrinsic::nvvm_d2i_rn:
297 case Intrinsic::nvvm_d2i_rp:
298 case Intrinsic::nvvm_d2i_rz:
300 case Intrinsic::nvvm_f2ll_rm:
301 case Intrinsic::nvvm_f2ll_rm_ftz:
302 case Intrinsic::nvvm_f2ll_rn:
303 case Intrinsic::nvvm_f2ll_rn_ftz:
304 case Intrinsic::nvvm_f2ll_rp:
305 case Intrinsic::nvvm_f2ll_rp_ftz:
306 case Intrinsic::nvvm_f2ll_rz:
307 case Intrinsic::nvvm_f2ll_rz_ftz:
309 case Intrinsic::nvvm_d2ll_rm:
310 case Intrinsic::nvvm_d2ll_rn:
311 case Intrinsic::nvvm_d2ll_rp:
312 case Intrinsic::nvvm_d2ll_rz:
316 case Intrinsic::nvvm_f2ui_rm:
317 case Intrinsic::nvvm_f2ui_rm_ftz:
318 case Intrinsic::nvvm_f2ui_rn:
319 case Intrinsic::nvvm_f2ui_rn_ftz:
320 case Intrinsic::nvvm_f2ui_rp:
321 case Intrinsic::nvvm_f2ui_rp_ftz:
322 case Intrinsic::nvvm_f2ui_rz:
323 case Intrinsic::nvvm_f2ui_rz_ftz:
325 case Intrinsic::nvvm_d2ui_rm:
326 case Intrinsic::nvvm_d2ui_rn:
327 case Intrinsic::nvvm_d2ui_rp:
328 case Intrinsic::nvvm_d2ui_rz:
330 case Intrinsic::nvvm_f2ull_rm:
331 case Intrinsic::nvvm_f2ull_rm_ftz:
332 case Intrinsic::nvvm_f2ull_rn:
333 case Intrinsic::nvvm_f2ull_rn_ftz:
334 case Intrinsic::nvvm_f2ull_rp:
335 case Intrinsic::nvvm_f2ull_rp_ftz:
336 case Intrinsic::nvvm_f2ull_rz:
337 case Intrinsic::nvvm_f2ull_rz_ftz:
339 case Intrinsic::nvvm_d2ull_rm:
340 case Intrinsic::nvvm_d2ull_rn:
341 case Intrinsic::nvvm_d2ull_rp:
342 case Intrinsic::nvvm_d2ull_rz:
346 "Checking invalid f2i/d2i intrinsic for signed int conversion");
350 switch (IntrinsicID) {
352 case Intrinsic::nvvm_f2i_rm:
353 case Intrinsic::nvvm_f2i_rn:
354 case Intrinsic::nvvm_f2i_rp:
355 case Intrinsic::nvvm_f2i_rz:
356 case Intrinsic::nvvm_f2i_rm_ftz:
357 case Intrinsic::nvvm_f2i_rn_ftz:
358 case Intrinsic::nvvm_f2i_rp_ftz:
359 case Intrinsic::nvvm_f2i_rz_ftz:
361 case Intrinsic::nvvm_f2ui_rm:
362 case Intrinsic::nvvm_f2ui_rn:
363 case Intrinsic::nvvm_f2ui_rp:
364 case Intrinsic::nvvm_f2ui_rz:
365 case Intrinsic::nvvm_f2ui_rm_ftz:
366 case Intrinsic::nvvm_f2ui_rn_ftz:
367 case Intrinsic::nvvm_f2ui_rp_ftz:
368 case Intrinsic::nvvm_f2ui_rz_ftz:
371 case Intrinsic::nvvm_d2i_rm:
372 case Intrinsic::nvvm_d2i_rn:
373 case Intrinsic::nvvm_d2i_rp:
374 case Intrinsic::nvvm_d2i_rz:
376 case Intrinsic::nvvm_d2ui_rm:
377 case Intrinsic::nvvm_d2ui_rn:
378 case Intrinsic::nvvm_d2ui_rp:
379 case Intrinsic::nvvm_d2ui_rz:
381 case Intrinsic::nvvm_f2ll_rm:
382 case Intrinsic::nvvm_f2ll_rn:
383 case Intrinsic::nvvm_f2ll_rp:
384 case Intrinsic::nvvm_f2ll_rz:
385 case Intrinsic::nvvm_f2ll_rm_ftz:
386 case Intrinsic::nvvm_f2ll_rn_ftz:
387 case Intrinsic::nvvm_f2ll_rp_ftz:
388 case Intrinsic::nvvm_f2ll_rz_ftz:
390 case Intrinsic::nvvm_f2ull_rm:
391 case Intrinsic::nvvm_f2ull_rn:
392 case Intrinsic::nvvm_f2ull_rp:
393 case Intrinsic::nvvm_f2ull_rz:
394 case Intrinsic::nvvm_f2ull_rm_ftz:
395 case Intrinsic::nvvm_f2ull_rn_ftz:
396 case Intrinsic::nvvm_f2ull_rp_ftz:
397 case Intrinsic::nvvm_f2ull_rz_ftz:
399 case Intrinsic::nvvm_d2ll_rm:
400 case Intrinsic::nvvm_d2ll_rn:
401 case Intrinsic::nvvm_d2ll_rp:
402 case Intrinsic::nvvm_d2ll_rz:
404 case Intrinsic::nvvm_d2ull_rm:
405 case Intrinsic::nvvm_d2ull_rn:
406 case Intrinsic::nvvm_d2ull_rp:
407 case Intrinsic::nvvm_d2ull_rz:
415 switch (IntrinsicID) {
417 case Intrinsic::nvvm_f2i_rm:
418 case Intrinsic::nvvm_f2ui_rm:
419 case Intrinsic::nvvm_f2i_rm_ftz:
420 case Intrinsic::nvvm_f2ui_rm_ftz:
421 case Intrinsic::nvvm_d2i_rm:
422 case Intrinsic::nvvm_d2ui_rm:
424 case Intrinsic::nvvm_f2ll_rm:
425 case Intrinsic::nvvm_f2ull_rm:
426 case Intrinsic::nvvm_f2ll_rm_ftz:
427 case Intrinsic::nvvm_f2ull_rm_ftz:
428 case Intrinsic::nvvm_d2ll_rm:
429 case Intrinsic::nvvm_d2ull_rm:
433 case Intrinsic::nvvm_f2i_rn:
434 case Intrinsic::nvvm_f2ui_rn:
435 case Intrinsic::nvvm_f2i_rn_ftz:
436 case Intrinsic::nvvm_f2ui_rn_ftz:
437 case Intrinsic::nvvm_d2i_rn:
438 case Intrinsic::nvvm_d2ui_rn:
440 case Intrinsic::nvvm_f2ll_rn:
441 case Intrinsic::nvvm_f2ull_rn:
442 case Intrinsic::nvvm_f2ll_rn_ftz:
443 case Intrinsic::nvvm_f2ull_rn_ftz:
444 case Intrinsic::nvvm_d2ll_rn:
445 case Intrinsic::nvvm_d2ull_rn:
449 case Intrinsic::nvvm_f2i_rp:
450 case Intrinsic::nvvm_f2ui_rp:
451 case Intrinsic::nvvm_f2i_rp_ftz:
452 case Intrinsic::nvvm_f2ui_rp_ftz:
453 case Intrinsic::nvvm_d2i_rp:
454 case Intrinsic::nvvm_d2ui_rp:
456 case Intrinsic::nvvm_f2ll_rp:
457 case Intrinsic::nvvm_f2ull_rp:
458 case Intrinsic::nvvm_f2ll_rp_ftz:
459 case Intrinsic::nvvm_f2ull_rp_ftz:
460 case Intrinsic::nvvm_d2ll_rp:
461 case Intrinsic::nvvm_d2ull_rp:
465 case Intrinsic::nvvm_f2i_rz:
466 case Intrinsic::nvvm_f2ui_rz:
467 case Intrinsic::nvvm_f2i_rz_ftz:
468 case Intrinsic::nvvm_f2ui_rz_ftz:
469 case Intrinsic::nvvm_d2i_rz:
470 case Intrinsic::nvvm_d2ui_rz:
472 case Intrinsic::nvvm_f2ll_rz:
473 case Intrinsic::nvvm_f2ull_rz:
474 case Intrinsic::nvvm_f2ll_rz_ftz:
475 case Intrinsic::nvvm_f2ull_rz_ftz:
476 case Intrinsic::nvvm_d2ll_rz:
477 case Intrinsic::nvvm_d2ull_rz:
484 switch (IntrinsicID) {
485 case Intrinsic::nvvm_fmax_ftz_f:
486 case Intrinsic::nvvm_fmax_ftz_nan_f:
487 case Intrinsic::nvvm_fmax_ftz_nan_xorsign_abs_f:
488 case Intrinsic::nvvm_fmax_ftz_xorsign_abs_f:
490 case Intrinsic::nvvm_fmin_ftz_f:
491 case Intrinsic::nvvm_fmin_ftz_nan_f:
492 case Intrinsic::nvvm_fmin_ftz_nan_xorsign_abs_f:
493 case Intrinsic::nvvm_fmin_ftz_xorsign_abs_f:
496 case Intrinsic::nvvm_fmax_d:
497 case Intrinsic::nvvm_fmax_f:
498 case Intrinsic::nvvm_fmax_nan_f:
499 case Intrinsic::nvvm_fmax_nan_xorsign_abs_f:
500 case Intrinsic::nvvm_fmax_xorsign_abs_f:
502 case Intrinsic::nvvm_fmin_d:
503 case Intrinsic::nvvm_fmin_f:
504 case Intrinsic::nvvm_fmin_nan_f:
505 case Intrinsic::nvvm_fmin_nan_xorsign_abs_f:
506 case Intrinsic::nvvm_fmin_xorsign_abs_f:
513 switch (IntrinsicID) {
514 case Intrinsic::nvvm_fmax_ftz_nan_f:
515 case Intrinsic::nvvm_fmax_nan_f:
516 case Intrinsic::nvvm_fmax_ftz_nan_xorsign_abs_f:
517 case Intrinsic::nvvm_fmax_nan_xorsign_abs_f:
519 case Intrinsic::nvvm_fmin_ftz_nan_f:
520 case Intrinsic::nvvm_fmin_nan_f:
521 case Intrinsic::nvvm_fmin_ftz_nan_xorsign_abs_f:
522 case Intrinsic::nvvm_fmin_nan_xorsign_abs_f:
525 case Intrinsic::nvvm_fmax_d:
526 case Intrinsic::nvvm_fmax_f:
527 case Intrinsic::nvvm_fmax_ftz_f:
528 case Intrinsic::nvvm_fmax_ftz_xorsign_abs_f:
529 case Intrinsic::nvvm_fmax_xorsign_abs_f:
531 case Intrinsic::nvvm_fmin_d:
532 case Intrinsic::nvvm_fmin_f:
533 case Intrinsic::nvvm_fmin_ftz_f:
534 case Intrinsic::nvvm_fmin_ftz_xorsign_abs_f:
535 case Intrinsic::nvvm_fmin_xorsign_abs_f:
542 switch (IntrinsicID) {
543 case Intrinsic::nvvm_fmax_ftz_nan_xorsign_abs_f:
544 case Intrinsic::nvvm_fmax_ftz_xorsign_abs_f:
545 case Intrinsic::nvvm_fmax_nan_xorsign_abs_f:
546 case Intrinsic::nvvm_fmax_xorsign_abs_f:
548 case Intrinsic::nvvm_fmin_ftz_nan_xorsign_abs_f:
549 case Intrinsic::nvvm_fmin_ftz_xorsign_abs_f:
550 case Intrinsic::nvvm_fmin_nan_xorsign_abs_f:
551 case Intrinsic::nvvm_fmin_xorsign_abs_f:
554 case Intrinsic::nvvm_fmax_d:
555 case Intrinsic::nvvm_fmax_f:
556 case Intrinsic::nvvm_fmax_ftz_f:
557 case Intrinsic::nvvm_fmax_ftz_nan_f:
558 case Intrinsic::nvvm_fmax_nan_f:
560 case Intrinsic::nvvm_fmin_d:
561 case Intrinsic::nvvm_fmin_f:
562 case Intrinsic::nvvm_fmin_ftz_f:
563 case Intrinsic::nvvm_fmin_ftz_nan_f:
564 case Intrinsic::nvvm_fmin_nan_f:
567 llvm_unreachable(
"Checking XorSignAbs flag for invalid fmin/fmax intrinsic");
571 switch (IntrinsicID) {
572 case Intrinsic::nvvm_ceil_ftz_f:
573 case Intrinsic::nvvm_fabs_ftz:
574 case Intrinsic::nvvm_floor_ftz_f:
575 case Intrinsic::nvvm_round_ftz_f:
576 case Intrinsic::nvvm_saturate_ftz_f:
577 case Intrinsic::nvvm_sqrt_rn_ftz_f:
579 case Intrinsic::nvvm_ceil_f:
580 case Intrinsic::nvvm_ceil_d:
581 case Intrinsic::nvvm_fabs:
582 case Intrinsic::nvvm_floor_f:
583 case Intrinsic::nvvm_floor_d:
584 case Intrinsic::nvvm_round_f:
585 case Intrinsic::nvvm_round_d:
586 case Intrinsic::nvvm_saturate_d:
587 case Intrinsic::nvvm_saturate_f:
588 case Intrinsic::nvvm_sqrt_f:
589 case Intrinsic::nvvm_sqrt_rn_d:
590 case Intrinsic::nvvm_sqrt_rn_f:
597 switch (IntrinsicID) {
598 case Intrinsic::nvvm_rcp_rm_ftz_f:
599 case Intrinsic::nvvm_rcp_rn_ftz_f:
600 case Intrinsic::nvvm_rcp_rp_ftz_f:
601 case Intrinsic::nvvm_rcp_rz_ftz_f:
603 case Intrinsic::nvvm_rcp_rm_d:
604 case Intrinsic::nvvm_rcp_rm_f:
605 case Intrinsic::nvvm_rcp_rn_d:
606 case Intrinsic::nvvm_rcp_rn_f:
607 case Intrinsic::nvvm_rcp_rp_d:
608 case Intrinsic::nvvm_rcp_rp_f:
609 case Intrinsic::nvvm_rcp_rz_d:
610 case Intrinsic::nvvm_rcp_rz_f:
617 switch (IntrinsicID) {
618 case Intrinsic::nvvm_rcp_rm_f:
619 case Intrinsic::nvvm_rcp_rm_d:
620 case Intrinsic::nvvm_rcp_rm_ftz_f:
623 case Intrinsic::nvvm_rcp_rn_f:
624 case Intrinsic::nvvm_rcp_rn_d:
625 case Intrinsic::nvvm_rcp_rn_ftz_f:
628 case Intrinsic::nvvm_rcp_rp_f:
629 case Intrinsic::nvvm_rcp_rp_d:
630 case Intrinsic::nvvm_rcp_rp_ftz_f:
633 case Intrinsic::nvvm_rcp_rz_f:
634 case Intrinsic::nvvm_rcp_rz_d:
635 case Intrinsic::nvvm_rcp_rz_ftz_f:
668 switch (IntrinsicID) {
669 case Intrinsic::nvvm_mul_rm_ftz_f:
670 case Intrinsic::nvvm_mul_rn_ftz_f:
671 case Intrinsic::nvvm_mul_rp_ftz_f:
672 case Intrinsic::nvvm_mul_rz_ftz_f:
675 case Intrinsic::nvvm_mul_rm_f:
676 case Intrinsic::nvvm_mul_rn_f:
677 case Intrinsic::nvvm_mul_rp_f:
678 case Intrinsic::nvvm_mul_rz_f:
679 case Intrinsic::nvvm_mul_rm_d:
680 case Intrinsic::nvvm_mul_rn_d:
681 case Intrinsic::nvvm_mul_rp_d:
682 case Intrinsic::nvvm_mul_rz_d:
689 switch (IntrinsicID) {
690 case Intrinsic::nvvm_mul_rm_f:
691 case Intrinsic::nvvm_mul_rm_d:
692 case Intrinsic::nvvm_mul_rm_ftz_f:
694 case Intrinsic::nvvm_mul_rn_f:
695 case Intrinsic::nvvm_mul_rn_d:
696 case Intrinsic::nvvm_mul_rn_ftz_f:
698 case Intrinsic::nvvm_mul_rp_f:
699 case Intrinsic::nvvm_mul_rp_d:
700 case Intrinsic::nvvm_mul_rp_ftz_f:
702 case Intrinsic::nvvm_mul_rz_f:
703 case Intrinsic::nvvm_mul_rz_d:
704 case Intrinsic::nvvm_mul_rz_ftz_f:
711 switch (IntrinsicID) {
712 case Intrinsic::nvvm_div_rm_ftz_f:
713 case Intrinsic::nvvm_div_rn_ftz_f:
714 case Intrinsic::nvvm_div_rp_ftz_f:
715 case Intrinsic::nvvm_div_rz_ftz_f:
718 case Intrinsic::nvvm_div_rm_f:
719 case Intrinsic::nvvm_div_rn_f:
720 case Intrinsic::nvvm_div_rp_f:
721 case Intrinsic::nvvm_div_rz_f:
722 case Intrinsic::nvvm_div_rm_d:
723 case Intrinsic::nvvm_div_rn_d:
724 case Intrinsic::nvvm_div_rp_d:
725 case Intrinsic::nvvm_div_rz_d:
732 switch (IntrinsicID) {
733 case Intrinsic::nvvm_div_rm_f:
734 case Intrinsic::nvvm_div_rm_d:
735 case Intrinsic::nvvm_div_rm_ftz_f:
737 case Intrinsic::nvvm_div_rn_f:
738 case Intrinsic::nvvm_div_rn_d:
739 case Intrinsic::nvvm_div_rn_ftz_f:
741 case Intrinsic::nvvm_div_rp_f:
742 case Intrinsic::nvvm_div_rp_d:
743 case Intrinsic::nvvm_div_rp_ftz_f:
745 case Intrinsic::nvvm_div_rz_f:
746 case Intrinsic::nvvm_div_rz_d:
747 case Intrinsic::nvvm_div_rz_ftz_f:
754 switch (IntrinsicID) {
755 case Intrinsic::nvvm_fma_rm_ftz_f:
756 case Intrinsic::nvvm_fma_rn_ftz_f:
757 case Intrinsic::nvvm_fma_rp_ftz_f:
758 case Intrinsic::nvvm_fma_rz_ftz_f:
761 case Intrinsic::nvvm_fma_rm_f:
762 case Intrinsic::nvvm_fma_rn_f:
763 case Intrinsic::nvvm_fma_rp_f:
764 case Intrinsic::nvvm_fma_rz_f:
765 case Intrinsic::nvvm_fma_rm_d:
766 case Intrinsic::nvvm_fma_rn_d:
767 case Intrinsic::nvvm_fma_rp_d:
768 case Intrinsic::nvvm_fma_rz_d:
775 switch (IntrinsicID) {
776 case Intrinsic::nvvm_fma_rm_f:
777 case Intrinsic::nvvm_fma_rm_d:
778 case Intrinsic::nvvm_fma_rm_ftz_f:
780 case Intrinsic::nvvm_fma_rn_f:
781 case Intrinsic::nvvm_fma_rn_d:
782 case Intrinsic::nvvm_fma_rn_ftz_f:
784 case Intrinsic::nvvm_fma_rp_f:
785 case Intrinsic::nvvm_fma_rp_d:
786 case Intrinsic::nvvm_fma_rp_ftz_f:
788 case Intrinsic::nvvm_fma_rz_f:
789 case Intrinsic::nvvm_fma_rz_d:
790 case Intrinsic::nvvm_fma_rz_ftz_f:
This file declares a class to represent arbitrary precision floating point values and provide a varie...
This file implements a class to represent arbitrary precision integral constant values and operations...
This file contains the declarations for the subclasses of Constant, which represent the different fla...
static constexpr roundingMode rmTowardZero
llvm::RoundingMode roundingMode
IEEE-754R 4.3: Rounding-direction attributes.
static constexpr roundingMode rmTowardNegative
static constexpr roundingMode rmNearestTiesToEven
static constexpr roundingMode rmTowardPositive
This is an important base class in LLVM.
Represent a constant reference to a string, i.e.
LLVM Value Representation.
This class implements an extremely fast bulk output stream that can only output to a stream.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
APFloat::roundingMode GetRoundingModeFromImmArg(const Value *ImmArgVal)
APFloat::roundingMode GetFMARoundingMode(Intrinsic::ID IntrinsicID)
LLVM_ABI void printTcgen05MMACollectorBBuffer(raw_ostream &OS, const Constant *ImmArgVal)
StringRef GetRoundingModeName(APFloat::roundingMode RM)
LLVM_ABI void printTensormapSwizzleMode(raw_ostream &OS, const Constant *ImmArgVal)
DenormalMode GetNVVMDenormMode(bool ShouldFTZ)
StringRef getEvictPolicyName(EvictPolicyType Policy)
LLVM_ABI void printFPRoundingMode(raw_ostream &OS, const Constant *ImmArgVal)
LLVM_ABI void printTMAReductionOp(raw_ostream &OS, const Constant *ImmArgVal)
LLVM_ABI void printTMAValidateDataPattern(raw_ostream &OS, const Constant *ImmArgVal)
bool FPToIntegerIntrinsicNaNZero(Intrinsic::ID IntrinsicID)
LLVM_ABI void printTensormapInterleaveLayout(raw_ostream &OS, const Constant *ImmArgVal)
APFloat::roundingMode GetFDivRoundingMode(Intrinsic::ID IntrinsicID)
Tcgen05MMACollectorBBuffer
LLVM_ABI void printTensormapSwizzleAtomicity(raw_ostream &OS, const Constant *ImmArgVal)
TensormapSwizzleAtomicity
@ SWIZZLE_ATOMICITY_32B_FLIP_8B
bool FPToIntegerIntrinsicResultIsSigned(Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFPToIntegerRoundingMode(Intrinsic::ID IntrinsicID)
bool RCPShouldFTZ(Intrinsic::ID IntrinsicID)
StringRef getTMATensorReductionOpName(TMAReductionOp Op)
bool FPToIntegerIntrinsicShouldFTZ(Intrinsic::ID IntrinsicID)
TensormapInterleaveLayout
StringRef getTMAValidateDataPatternName(TMAValidateDataPattern Pattern)
bool FDivShouldFTZ(Intrinsic::ID IntrinsicID)
bool FMinFMaxIsXorSignAbs(Intrinsic::ID IntrinsicID)
APFloat::roundingMode GetFMulRoundingMode(Intrinsic::ID IntrinsicID)
LLVM_ABI void printTcgen05MMAKind(raw_ostream &OS, const Constant *ImmArgVal)
LLVM_ABI void printTcgen05CollectorUsageOp(raw_ostream &OS, const Constant *ImmArgVal)
bool UnaryMathIntrinsicShouldFTZ(Intrinsic::ID IntrinsicID)
bool FMinFMaxShouldFTZ(Intrinsic::ID IntrinsicID)
LLVM_ABI void printEvictPolicyType(raw_ostream &OS, const Constant *ImmArgVal)
bool FMAShouldFTZ(Intrinsic::ID IntrinsicID)
bool FMulShouldFTZ(Intrinsic::ID IntrinsicID)
LLVM_ABI void printTensormapFillMode(raw_ostream &OS, const Constant *ImmArgVal)
APFloat::roundingMode GetRCPRoundingMode(Intrinsic::ID IntrinsicID)
bool FMinFMaxPropagatesNaNs(Intrinsic::ID IntrinsicID)
LLVM_ABI void printTensormapElemType(raw_ostream &OS, const Constant *ImmArgVal)
This is an optimization pass for GlobalISel generic memory operations.
DWARFExpression::Operation Op
decltype(auto) cast(const From &Val)
cast<X> - Return the argument parameter cast to the specified type.
Represent subnormal handling kind for floating point instruction inputs and outputs.
static constexpr DenormalMode getPreserveSign()
static constexpr DenormalMode getIEEE()