1 //===-- IntrinsicsMBlaze.td - Defines MBlaze intrinsics ----*- tablegen -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 // 10 // This file defines all of the MicroBlaze-specific intrinsics. 11 // 12 //===----------------------------------------------------------------------===// 13 14 //===----------------------------------------------------------------------===// 15 // Definitions for all MBlaze intrinsics. 16 // 17 18 // MBlaze intrinsic classes. 19 let TargetPrefix = "mblaze", isTarget = 1 in { 20 class MBFSL_Get_Intrinsic : Intrinsic<[llvm_i32_ty], [llvm_i32_ty], []>; 21 22 class MBFSL_Put_Intrinsic : Intrinsic<[], [llvm_i32_ty, llvm_i32_ty], []>; 23 24 class MBFSL_PutT_Intrinsic : Intrinsic<[], [llvm_i32_ty], []>; 25 } 26 27 //===----------------------------------------------------------------------===// 28 // MicroBlaze FSL Get Intrinsic Definitions. 29 // 30 31 def int_mblaze_fsl_get : GCCBuiltin<"__builtin_mblaze_fsl_get">, 32 MBFSL_Get_Intrinsic; 33 def int_mblaze_fsl_aget : GCCBuiltin<"__builtin_mblaze_fsl_aget">, 34 MBFSL_Get_Intrinsic; 35 def int_mblaze_fsl_cget : GCCBuiltin<"__builtin_mblaze_fsl_cget">, 36 MBFSL_Get_Intrinsic; 37 def int_mblaze_fsl_caget : GCCBuiltin<"__builtin_mblaze_fsl_caget">, 38 MBFSL_Get_Intrinsic; 39 def int_mblaze_fsl_eget : GCCBuiltin<"__builtin_mblaze_fsl_eget">, 40 MBFSL_Get_Intrinsic; 41 def int_mblaze_fsl_eaget : GCCBuiltin<"__builtin_mblaze_fsl_eaget">, 42 MBFSL_Get_Intrinsic; 43 def int_mblaze_fsl_ecget : GCCBuiltin<"__builtin_mblaze_fsl_ecget">, 44 MBFSL_Get_Intrinsic; 45 def int_mblaze_fsl_ecaget : GCCBuiltin<"__builtin_mblaze_fsl_ecaget">, 46 MBFSL_Get_Intrinsic; 47 def int_mblaze_fsl_nget : GCCBuiltin<"__builtin_mblaze_fsl_nget">, 48 MBFSL_Get_Intrinsic; 49 def int_mblaze_fsl_naget : GCCBuiltin<"__builtin_mblaze_fsl_naget">, 50 MBFSL_Get_Intrinsic; 51 def int_mblaze_fsl_ncget : GCCBuiltin<"__builtin_mblaze_fsl_ncget">, 52 MBFSL_Get_Intrinsic; 53 def int_mblaze_fsl_ncaget : GCCBuiltin<"__builtin_mblaze_fsl_ncaget">, 54 MBFSL_Get_Intrinsic; 55 def int_mblaze_fsl_neget : GCCBuiltin<"__builtin_mblaze_fsl_neget">, 56 MBFSL_Get_Intrinsic; 57 def int_mblaze_fsl_neaget : GCCBuiltin<"__builtin_mblaze_fsl_neaget">, 58 MBFSL_Get_Intrinsic; 59 def int_mblaze_fsl_necget : GCCBuiltin<"__builtin_mblaze_fsl_necget">, 60 MBFSL_Get_Intrinsic; 61 def int_mblaze_fsl_necaget : GCCBuiltin<"__builtin_mblaze_fsl_necaget">, 62 MBFSL_Get_Intrinsic; 63 def int_mblaze_fsl_tget : GCCBuiltin<"__builtin_mblaze_fsl_tget">, 64 MBFSL_Get_Intrinsic; 65 def int_mblaze_fsl_taget : GCCBuiltin<"__builtin_mblaze_fsl_taget">, 66 MBFSL_Get_Intrinsic; 67 def int_mblaze_fsl_tcget : GCCBuiltin<"__builtin_mblaze_fsl_tcget">, 68 MBFSL_Get_Intrinsic; 69 def int_mblaze_fsl_tcaget : GCCBuiltin<"__builtin_mblaze_fsl_tcaget">, 70 MBFSL_Get_Intrinsic; 71 def int_mblaze_fsl_teget : GCCBuiltin<"__builtin_mblaze_fsl_teget">, 72 MBFSL_Get_Intrinsic; 73 def int_mblaze_fsl_teaget : GCCBuiltin<"__builtin_mblaze_fsl_teaget">, 74 MBFSL_Get_Intrinsic; 75 def int_mblaze_fsl_tecget : GCCBuiltin<"__builtin_mblaze_fsl_tecget">, 76 MBFSL_Get_Intrinsic; 77 def int_mblaze_fsl_tecaget : GCCBuiltin<"__builtin_mblaze_fsl_tecaget">, 78 MBFSL_Get_Intrinsic; 79 def int_mblaze_fsl_tnget : GCCBuiltin<"__builtin_mblaze_fsl_tnget">, 80 MBFSL_Get_Intrinsic; 81 def int_mblaze_fsl_tnaget : GCCBuiltin<"__builtin_mblaze_fsl_tnaget">, 82 MBFSL_Get_Intrinsic; 83 def int_mblaze_fsl_tncget : GCCBuiltin<"__builtin_mblaze_fsl_tncget">, 84 MBFSL_Get_Intrinsic; 85 def int_mblaze_fsl_tncaget : GCCBuiltin<"__builtin_mblaze_fsl_tncaget">, 86 MBFSL_Get_Intrinsic; 87 def int_mblaze_fsl_tneget : GCCBuiltin<"__builtin_mblaze_fsl_tneget">, 88 MBFSL_Get_Intrinsic; 89 def int_mblaze_fsl_tneaget : GCCBuiltin<"__builtin_mblaze_fsl_tneaget">, 90 MBFSL_Get_Intrinsic; 91 def int_mblaze_fsl_tnecget : GCCBuiltin<"__builtin_mblaze_fsl_tnecget">, 92 MBFSL_Get_Intrinsic; 93 def int_mblaze_fsl_tnecaget : GCCBuiltin<"__builtin_mblaze_fsl_tnecaget">, 94 MBFSL_Get_Intrinsic; 95 96 //===----------------------------------------------------------------------===// 97 // MicroBlaze FSL Put Intrinsic Definitions. 98 // 99 100 def int_mblaze_fsl_put : GCCBuiltin<"__builtin_mblaze_fsl_put">, 101 MBFSL_Put_Intrinsic; 102 def int_mblaze_fsl_aput : GCCBuiltin<"__builtin_mblaze_fsl_aput">, 103 MBFSL_Put_Intrinsic; 104 def int_mblaze_fsl_cput : GCCBuiltin<"__builtin_mblaze_fsl_cput">, 105 MBFSL_Put_Intrinsic; 106 def int_mblaze_fsl_caput : GCCBuiltin<"__builtin_mblaze_fsl_caput">, 107 MBFSL_Put_Intrinsic; 108 def int_mblaze_fsl_nput : GCCBuiltin<"__builtin_mblaze_fsl_nput">, 109 MBFSL_Put_Intrinsic; 110 def int_mblaze_fsl_naput : GCCBuiltin<"__builtin_mblaze_fsl_naput">, 111 MBFSL_Put_Intrinsic; 112 def int_mblaze_fsl_ncput : GCCBuiltin<"__builtin_mblaze_fsl_ncput">, 113 MBFSL_Put_Intrinsic; 114 def int_mblaze_fsl_ncaput : GCCBuiltin<"__builtin_mblaze_fsl_ncaput">, 115 MBFSL_Put_Intrinsic; 116 def int_mblaze_fsl_tput : GCCBuiltin<"__builtin_mblaze_fsl_tput">, 117 MBFSL_PutT_Intrinsic; 118 def int_mblaze_fsl_taput : GCCBuiltin<"__builtin_mblaze_fsl_taput">, 119 MBFSL_PutT_Intrinsic; 120 def int_mblaze_fsl_tcput : GCCBuiltin<"__builtin_mblaze_fsl_tcput">, 121 MBFSL_PutT_Intrinsic; 122 def int_mblaze_fsl_tcaput : GCCBuiltin<"__builtin_mblaze_fsl_tcaput">, 123 MBFSL_PutT_Intrinsic; 124 def int_mblaze_fsl_tnput : GCCBuiltin<"__builtin_mblaze_fsl_tnput">, 125 MBFSL_PutT_Intrinsic; 126 def int_mblaze_fsl_tnaput : GCCBuiltin<"__builtin_mblaze_fsl_tnaput">, 127 MBFSL_PutT_Intrinsic; 128 def int_mblaze_fsl_tncput : GCCBuiltin<"__builtin_mblaze_fsl_tncput">, 129 MBFSL_PutT_Intrinsic; 130 def int_mblaze_fsl_tncaput : GCCBuiltin<"__builtin_mblaze_fsl_tncaput">, 131 MBFSL_PutT_Intrinsic; 132