|
| 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 | +--> |
0 commit comments