1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE language SYSTEM "language.dtd"> 3<language name="LLVM TableGen" section="Sources" version="1.00" kateversion="3.4.4" extensions="*.td" mimetype="" author="LLVM Team" license="LLVM Release License"> 4 <highlighting> 5 <list name="keywords"> 6 <item> foreach </item> 7 <item> field </item> 8 </list> 9 <list name="operator-keywords"> 10 <item> in </item> 11 </list> 12 <list name="bang-operators"> 13 <item> !eq </item> 14 <item> !if </item> 15 <item> !head </item> 16 <item> !tail </item> 17 <item> !con </item> 18 <item> !add </item> 19 <item> !shl </item> 20 <item> !sra </item> 21 <item> !srl </item> 22 <item> !and </item> 23 <item> !or </item> 24 <item> !empty </item> 25 <item> !subst </item> 26 <item> !foreach </item> 27 <item> !strconcat </item> 28 <item> !cast </item> 29 <item> !listconcat </item> 30 <item> !size </item> 31 <item> !foldl </item> 32 <item> !isa </item> 33 <item> !dag </item> 34 <item> !le </item> 35 <item> !lt </item> 36 <item> !ge </item> 37 <item> !gt </item> 38 <item> !ne </item> 39 </list> 40 <list name="objects"> 41 <item> class </item> 42 <item> def </item> 43 <item> defm </item> 44 <item> defset </item> 45 <item> let </item> 46 <item> multiclass </item> 47 </list> 48 <list name="class-like"> 49 <item> class </item> 50 <item> def </item> 51 <item> defm </item> 52 <item> defset </item> 53 <item> multiclass </item> 54 </list> 55 <list name="variable-like"> 56 <item> let </item> 57 </list> 58 <list name="types"> 59 <item> string </item> 60 <item> code </item> 61 <item> bit </item> 62 <item> int </item> 63 <item> dag </item> 64 <item> bits </item> 65 <item> list </item> 66 </list> 67 <contexts> 68 <context name="llvm tablegen" attribute="Normal Text" lineEndContext="#stay"> 69 <DetectSpaces/> 70 <Detect2Chars attribute="Comment" context="Single-line comment" char="/" char1="/"/> 71 <Detect2Chars attribute="Comment" context="Multi-line comment" char="/" char1="*" beginRegion="Comment"/> 72 <keyword attribute="Keyword" context="Definition" String="class-like"/> 73 <keyword attribute="Keyword" context="Let expression" String="variable-like"/> 74 <keyword attribute="Keyword" String="objects"/> 75 <keyword attribute="Keyword" String="keywords"/> 76 <keyword attribute="Keyword" String="operator-keywords"/> 77 <keyword attribute="Keyword" String="bang-operators"/> 78 <keyword attribute="Data Type" String="types"/> 79 <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1"/> 80 <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1"/> 81 <Int attribute="Int" context="#stay"/> 82 <RegExpr attribute="Normal Text" String="[a-zA-Z_][a-zA-Z_0-9]{2,}" context="#stay"/> 83 </context> 84 <context attribute="Comment" lineEndContext="#pop" name="Single-line comment"> 85 <IncludeRules context="##Alerts"/> 86 <LineContinue attribute="Comment" context="#stay"/> 87 </context> 88 <context attribute="Comment" lineEndContext="#stay" name="Multi-line comment"> 89 <Detect2Chars attribute="Comment" context="Multi-line comment" char="/" char1="*" beginRegion="Comment"/> 90 <IncludeRules context="##Alerts"/> 91 <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> 92 </context> 93 <context attribute="Normal Text" lineEndContext="#stay" name="Definition"> 94 <DetectSpaces/> 95 <RegExpr attribute="Type" context="#stay" String="[a-zA-Z0-9_]+"/> 96 <DetectSpaces/> 97 <DetectChar char=":" /> 98 <DetectSpaces/> 99 <RegExpr attribute="Type" context="#stay" String="[a-zA-Z0-9_]+"/> 100 <AnyChar context="#pop" lookAhead="true" String=" :;{<" /> 101 </context> 102 <context attribute="Normal Text" lineEndContext="#stay" name="Let expression"> 103 <DetectSpaces/> 104 <RegExpr attribute="Variable" context="#pop" String="[a-zA-Z0-9_]+"/> 105 </context> 106 </contexts> 107 <itemDatas> 108 <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> 109 <itemData name="Operator" defStyleNum="dsOperator" spellChecking="false"/> 110 <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/> 111 <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/> 112 <itemData name="Type" defStyleNum="dsDataType" spellChecking="false"/> 113 <itemData name="Variable" defStyleNum="dsVariable" spellChecking="false"/> 114 <itemData name="Int" defStyleNum="dsDecVal"/> 115 <itemData name="Hex" defStyleNum="dsBaseN"/> 116 <itemData name="Float" defStyleNum="dsFloat"/> 117 <itemData name="String" defStyleNum="dsString"/> 118 <itemData name="Comment" defStyleNum="dsComment"/> 119 <itemData name="Function" defStyleNum="dsFunction"/> 120 <itemData name="Symbol" defStyleNum="dsNormal" spellChecking="false"/> 121 <itemData name="SPECIAL" defStyleNum="dsAlert" strikeout="true" bold="true" underline="true" italic="true"/> 122 </itemDatas> 123 </highlighting> 124 <general> 125 <comments> 126 <comment name="singleLine" start="//"/> 127 <comment name="multiLine" start="/*" end="*/"/> 128 </comments> 129 <keywords casesensitive="1" weakDeliminator=".!"/> 130 </general> 131</language> 132<!-- 133// kate: space-indent on; indent-width 2; replace-tabs on; 134--> 135