llvm.xml 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE language SYSTEM "language.dtd">
  3. <language name="LLVM" section="Sources"
  4. version="1.00" kateversion="3.4.4"
  5. extensions="*.ll"
  6. mimetype=""
  7. author="LLVM Team"
  8. license="LLVM Release License">
  9. <highlighting>
  10. <list name="keywords">
  11. <item> begin </item>
  12. <item> end </item>
  13. <item> true </item>
  14. <item> false </item>
  15. <item> declare </item>
  16. <item> define </item>
  17. <item> global </item>
  18. <item> constant </item>
  19. <item> gc </item>
  20. <item> module </item>
  21. <item> asm </item>
  22. <item> target </item>
  23. <item> datalayout </item>
  24. <item> null </item>
  25. <item> undef </item>
  26. <item> blockaddress </item>
  27. <item> sideeffect </item>
  28. <item> alignstack </item>
  29. <item> to </item>
  30. <item> unwind </item>
  31. <item> nuw </item>
  32. <item> nsw </item>
  33. <item> inbounds </item>
  34. <item> tail </item>
  35. <item> triple </item>
  36. <item> type </item>
  37. <item> align </item>
  38. <item> alias </item>
  39. </list>
  40. <list name="linkage-types">
  41. <item> private </item>
  42. <item> internal </item>
  43. <item> available_externally </item>
  44. <item> linkonce </item>
  45. <item> weak </item>
  46. <item> common </item>
  47. <item> appending </item>
  48. <item> extern_weak </item>
  49. <item> linkonce_odr </item>
  50. <item> weak_odr </item>
  51. <item> dllimport </item>
  52. <item> dllexport </item>
  53. </list>
  54. <list name="calling-conventions">
  55. <item> ccc </item>
  56. <item> fastcc </item>
  57. <item> coldcc </item>
  58. <item> cc </item>
  59. </list>
  60. <list name="visibility-styles">
  61. <item> default </item>
  62. <item> hidden </item>
  63. <item> protected </item>
  64. </list>
  65. <list name="parameter-attributes">
  66. <item> zeroext </item>
  67. <item> signext </item>
  68. <item> inreg </item>
  69. <item> byval </item>
  70. <item> sret </item>
  71. <item> noalias </item>
  72. <item> nocapture </item>
  73. <item> nest </item>
  74. </list>
  75. <list name="function-attributes">
  76. <item> alignstack </item>
  77. <item> alwaysinline </item>
  78. <item> inlinehint </item>
  79. <item> naked </item>
  80. <item> noimplicitfloat </item>
  81. <item> noinline </item>
  82. <item> noredzone </item>
  83. <item> noreturn </item>
  84. <item> nounwind </item>
  85. <item> optnone </item>
  86. <item> optsize </item>
  87. <item> readnone </item>
  88. <item> readonly </item>
  89. <item> ssp </item>
  90. <item> sspreq </item>
  91. <item> sspstrong </item>
  92. </list>
  93. <list name="types">
  94. <item> float </item>
  95. <item> double </item>
  96. <item> fp128 </item>
  97. <item> x86_fp80 </item>
  98. <item> ppc_fp128 </item>
  99. <item> x86mmx </item>
  100. <item> void </item>
  101. <item> label </item>
  102. <item> metadata </item>
  103. <item> opaque </item>
  104. </list>
  105. <list name="intrinsic-global-variables">
  106. <item> llvm.used </item>
  107. <item> llvm.compiler.used </item>
  108. <item> llvm.global_ctors </item>
  109. <item> llvm.global_dtors </item>
  110. </list>
  111. <list name="instructions">
  112. <item> ret </item>
  113. <item> br </item>
  114. <item> switch </item>
  115. <item> indirectbr </item>
  116. <item> invoke </item>
  117. <item> unwind </item>
  118. <item> unreachable </item>
  119. <item> add </item>
  120. <item> fadd </item>
  121. <item> sub </item>
  122. <item> fsub </item>
  123. <item> mul </item>
  124. <item> fmul </item>
  125. <item> udiv </item>
  126. <item> sdiv </item>
  127. <item> fdiv </item>
  128. <item> urem </item>
  129. <item> srem </item>
  130. <item> frem </item>
  131. <item> shl </item>
  132. <item> lshr </item>
  133. <item> ashr </item>
  134. <item> and </item>
  135. <item> or </item>
  136. <item> xor </item>
  137. <item> extractelement </item>
  138. <item> insertelement </item>
  139. <item> shufflevector </item>
  140. <item> extractvalue </item>
  141. <item> insertvalue </item>
  142. <item> alloca </item>
  143. <item> load </item>
  144. <item> store </item>
  145. <item> getelementptr </item>
  146. <item> trunc </item>
  147. <item> zext </item>
  148. <item> sext </item>
  149. <item> fptrunc </item>
  150. <item> fpext </item>
  151. <item> fptoui </item>
  152. <item> fptosi </item>
  153. <item> uitofp </item>
  154. <item> sitofp </item>
  155. <item> ptrtoint </item>
  156. <item> inttoptr </item>
  157. <item> bitcast </item>
  158. <item> addrspacecast </item>
  159. <item> icmp </item>
  160. <item> fcmp </item>
  161. <item> phi </item>
  162. <item> select </item>
  163. <item> call </item>
  164. <item> va_arg </item>
  165. </list>
  166. <list name="conditions">
  167. <item> eq </item>
  168. <item> ne </item>
  169. <item> ugt </item>
  170. <item> uge </item>
  171. <item> ult </item>
  172. <item> ule </item>
  173. <item> sgt </item>
  174. <item> sge </item>
  175. <item> slt </item>
  176. <item> sle </item>
  177. <item> oeq </item>
  178. <item> ogt </item>
  179. <item> oge </item>
  180. <item> olt </item>
  181. <item> ole </item>
  182. <item> one </item>
  183. <item> ord </item>
  184. <item> ueq </item>
  185. <item> une </item>
  186. <item> uno </item>
  187. </list>
  188. <contexts>
  189. <context name="llvm" attribute="Normal Text" lineEndContext="#stay">
  190. <DetectSpaces />
  191. <AnyChar String="@%" attribute="Symbol" context="symbol" />
  192. <DetectChar char="{" beginRegion="Brace1" />
  193. <DetectChar char="}" endRegion="Brace1" />
  194. <DetectChar char=";" attribute="Comment" context="comment" />
  195. <DetectChar attribute="String" context="string" char="&quot;" />
  196. <RegExpr String="i[0-9]+" attribute="Data Type" context="#stay" />
  197. <RegExpr attribute="Symbol" String="[-a-zA-Z$._][-a-zA-Z$._0-9]*:" context="#stay" />
  198. <Int attribute="Int" context="#stay" />
  199. <keyword attribute="Keyword" String="keywords" />
  200. <keyword attribute="Keyword" String="linkage-types" />
  201. <keyword attribute="Keyword" String="calling-conventions" />
  202. <keyword attribute="Keyword" String="visibility-styles" />
  203. <keyword attribute="Keyword" String="parameter-attributes" />
  204. <keyword attribute="Keyword" String="function-attributes" />
  205. <keyword attribute="Data Type" String="types" />
  206. <keyword attribute="Keyword" String="intrinsic-global-variables" />
  207. <keyword attribute="Keyword" String="instructions" />
  208. <keyword attribute="Keyword" String="conditions" />
  209. </context>
  210. <context name="symbol" attribute="Symbol" lineEndContext="#pop">
  211. <DetectChar attribute="Symbol" context="symbol-string" char="&quot;" />
  212. <RegExpr attribute="Symbol" String="([-a-zA-Z$._][-a-zA-Z$._0-9]*|[0-9]+)" context="#pop" />
  213. </context>
  214. <context name="symbol-string" attribute="Symbol" lineEndContext="#stay">
  215. <DetectChar attribute="Symbol" context="#pop#pop" char="&quot;" />
  216. </context>
  217. <context name="string" attribute="String" lineEndContext="#stay">
  218. <DetectChar attribute="String" context="#pop" char="&quot;" />
  219. </context>
  220. <context name="comment" attribute="Comment" lineEndContext="#pop">
  221. <DetectSpaces />
  222. <!-- TODO: Add FileCheck syntax highlighting -->
  223. <IncludeRules context="##Alerts" />
  224. <DetectIdentifier />
  225. </context>
  226. </contexts>
  227. <itemDatas>
  228. <itemData name="Normal Text" defStyleNum="dsNormal" />
  229. <itemData name="Keyword" defStyleNum="dsKeyword" />
  230. <itemData name="Data Type" defStyleNum="dsDataType" />
  231. <itemData name="Int" defStyleNum="dsDecVal" />
  232. <itemData name="Hex" defStyleNum="dsBaseN" />
  233. <itemData name="Float" defStyleNum="dsFloat" />
  234. <itemData name="String" defStyleNum="dsString" />
  235. <itemData name="Comment" defStyleNum="dsComment" />
  236. <itemData name="Function" defStyleNum="dsFunction" />
  237. <itemData name="Symbol" defStyleNum="dsFunction" />
  238. </itemDatas>
  239. </highlighting>
  240. <general>
  241. <comments>
  242. <comment name="singleLine" start=";" />
  243. </comments>
  244. <keywords casesensitive="1" weakDeliminator="." />
  245. </general>
  246. </language>
  247. <!--
  248. // kate: space-indent on; indent-width 2; replace-tabs on;
  249. -->