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. 19let 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 31def int_mblaze_fsl_get : GCCBuiltin<"__builtin_mblaze_fsl_get">, 32 MBFSL_Get_Intrinsic; 33def int_mblaze_fsl_aget : GCCBuiltin<"__builtin_mblaze_fsl_aget">, 34 MBFSL_Get_Intrinsic; 35def int_mblaze_fsl_cget : GCCBuiltin<"__builtin_mblaze_fsl_cget">, 36 MBFSL_Get_Intrinsic; 37def int_mblaze_fsl_caget : GCCBuiltin<"__builtin_mblaze_fsl_caget">, 38 MBFSL_Get_Intrinsic; 39def int_mblaze_fsl_eget : GCCBuiltin<"__builtin_mblaze_fsl_eget">, 40 MBFSL_Get_Intrinsic; 41def int_mblaze_fsl_eaget : GCCBuiltin<"__builtin_mblaze_fsl_eaget">, 42 MBFSL_Get_Intrinsic; 43def int_mblaze_fsl_ecget : GCCBuiltin<"__builtin_mblaze_fsl_ecget">, 44 MBFSL_Get_Intrinsic; 45def int_mblaze_fsl_ecaget : GCCBuiltin<"__builtin_mblaze_fsl_ecaget">, 46 MBFSL_Get_Intrinsic; 47def int_mblaze_fsl_nget : GCCBuiltin<"__builtin_mblaze_fsl_nget">, 48 MBFSL_Get_Intrinsic; 49def int_mblaze_fsl_naget : GCCBuiltin<"__builtin_mblaze_fsl_naget">, 50 MBFSL_Get_Intrinsic; 51def int_mblaze_fsl_ncget : GCCBuiltin<"__builtin_mblaze_fsl_ncget">, 52 MBFSL_Get_Intrinsic; 53def int_mblaze_fsl_ncaget : GCCBuiltin<"__builtin_mblaze_fsl_ncaget">, 54 MBFSL_Get_Intrinsic; 55def int_mblaze_fsl_neget : GCCBuiltin<"__builtin_mblaze_fsl_neget">, 56 MBFSL_Get_Intrinsic; 57def int_mblaze_fsl_neaget : GCCBuiltin<"__builtin_mblaze_fsl_neaget">, 58 MBFSL_Get_Intrinsic; 59def int_mblaze_fsl_necget : GCCBuiltin<"__builtin_mblaze_fsl_necget">, 60 MBFSL_Get_Intrinsic; 61def int_mblaze_fsl_necaget : GCCBuiltin<"__builtin_mblaze_fsl_necaget">, 62 MBFSL_Get_Intrinsic; 63def int_mblaze_fsl_tget : GCCBuiltin<"__builtin_mblaze_fsl_tget">, 64 MBFSL_Get_Intrinsic; 65def int_mblaze_fsl_taget : GCCBuiltin<"__builtin_mblaze_fsl_taget">, 66 MBFSL_Get_Intrinsic; 67def int_mblaze_fsl_tcget : GCCBuiltin<"__builtin_mblaze_fsl_tcget">, 68 MBFSL_Get_Intrinsic; 69def int_mblaze_fsl_tcaget : GCCBuiltin<"__builtin_mblaze_fsl_tcaget">, 70 MBFSL_Get_Intrinsic; 71def int_mblaze_fsl_teget : GCCBuiltin<"__builtin_mblaze_fsl_teget">, 72 MBFSL_Get_Intrinsic; 73def int_mblaze_fsl_teaget : GCCBuiltin<"__builtin_mblaze_fsl_teaget">, 74 MBFSL_Get_Intrinsic; 75def int_mblaze_fsl_tecget : GCCBuiltin<"__builtin_mblaze_fsl_tecget">, 76 MBFSL_Get_Intrinsic; 77def int_mblaze_fsl_tecaget : GCCBuiltin<"__builtin_mblaze_fsl_tecaget">, 78 MBFSL_Get_Intrinsic; 79def int_mblaze_fsl_tnget : GCCBuiltin<"__builtin_mblaze_fsl_tnget">, 80 MBFSL_Get_Intrinsic; 81def int_mblaze_fsl_tnaget : GCCBuiltin<"__builtin_mblaze_fsl_tnaget">, 82 MBFSL_Get_Intrinsic; 83def int_mblaze_fsl_tncget : GCCBuiltin<"__builtin_mblaze_fsl_tncget">, 84 MBFSL_Get_Intrinsic; 85def int_mblaze_fsl_tncaget : GCCBuiltin<"__builtin_mblaze_fsl_tncaget">, 86 MBFSL_Get_Intrinsic; 87def int_mblaze_fsl_tneget : GCCBuiltin<"__builtin_mblaze_fsl_tneget">, 88 MBFSL_Get_Intrinsic; 89def int_mblaze_fsl_tneaget : GCCBuiltin<"__builtin_mblaze_fsl_tneaget">, 90 MBFSL_Get_Intrinsic; 91def int_mblaze_fsl_tnecget : GCCBuiltin<"__builtin_mblaze_fsl_tnecget">, 92 MBFSL_Get_Intrinsic; 93def int_mblaze_fsl_tnecaget : GCCBuiltin<"__builtin_mblaze_fsl_tnecaget">, 94 MBFSL_Get_Intrinsic; 95 96//===----------------------------------------------------------------------===// 97// MicroBlaze FSL Put Intrinsic Definitions. 98// 99 100def int_mblaze_fsl_put : GCCBuiltin<"__builtin_mblaze_fsl_put">, 101 MBFSL_Put_Intrinsic; 102def int_mblaze_fsl_aput : GCCBuiltin<"__builtin_mblaze_fsl_aput">, 103 MBFSL_Put_Intrinsic; 104def int_mblaze_fsl_cput : GCCBuiltin<"__builtin_mblaze_fsl_cput">, 105 MBFSL_Put_Intrinsic; 106def int_mblaze_fsl_caput : GCCBuiltin<"__builtin_mblaze_fsl_caput">, 107 MBFSL_Put_Intrinsic; 108def int_mblaze_fsl_nput : GCCBuiltin<"__builtin_mblaze_fsl_nput">, 109 MBFSL_Put_Intrinsic; 110def int_mblaze_fsl_naput : GCCBuiltin<"__builtin_mblaze_fsl_naput">, 111 MBFSL_Put_Intrinsic; 112def int_mblaze_fsl_ncput : GCCBuiltin<"__builtin_mblaze_fsl_ncput">, 113 MBFSL_Put_Intrinsic; 114def int_mblaze_fsl_ncaput : GCCBuiltin<"__builtin_mblaze_fsl_ncaput">, 115 MBFSL_Put_Intrinsic; 116def int_mblaze_fsl_tput : GCCBuiltin<"__builtin_mblaze_fsl_tput">, 117 MBFSL_PutT_Intrinsic; 118def int_mblaze_fsl_taput : GCCBuiltin<"__builtin_mblaze_fsl_taput">, 119 MBFSL_PutT_Intrinsic; 120def int_mblaze_fsl_tcput : GCCBuiltin<"__builtin_mblaze_fsl_tcput">, 121 MBFSL_PutT_Intrinsic; 122def int_mblaze_fsl_tcaput : GCCBuiltin<"__builtin_mblaze_fsl_tcaput">, 123 MBFSL_PutT_Intrinsic; 124def int_mblaze_fsl_tnput : GCCBuiltin<"__builtin_mblaze_fsl_tnput">, 125 MBFSL_PutT_Intrinsic; 126def int_mblaze_fsl_tnaput : GCCBuiltin<"__builtin_mblaze_fsl_tnaput">, 127 MBFSL_PutT_Intrinsic; 128def int_mblaze_fsl_tncput : GCCBuiltin<"__builtin_mblaze_fsl_tncput">, 129 MBFSL_PutT_Intrinsic; 130def int_mblaze_fsl_tncaput : GCCBuiltin<"__builtin_mblaze_fsl_tncaput">, 131 MBFSL_PutT_Intrinsic; 132