| <?xml version="1.0" encoding="UTF-8"?> |
| <!DOCTYPE language SYSTEM "language.dtd"> |
| <language name="LLVM TableGen" section="Sources" version="1.00" kateversion="3.4.4" extensions="*.td" mimetype="" author="LLVM Team" license="LLVM Release License"> |
| <highlighting> |
| <list name="keywords"> |
| <item> foreach </item> |
| <item> field </item> |
| <item> if </item> |
| <item> then </item> |
| <item> else </item> |
| </list> |
| <list name="operator-keywords"> |
| <item> in </item> |
| </list> |
| <list name="bang-operators"> |
| <item> !eq </item> |
| <item> !if </item> |
| <item> !head </item> |
| <item> !tail </item> |
| <item> !con </item> |
| <item> !add </item> |
| <item> !mul </item> |
| <item> !shl </item> |
| <item> !sra </item> |
| <item> !srl </item> |
| <item> !and </item> |
| <item> !or </item> |
| <item> !empty </item> |
| <item> !subst </item> |
| <item> !foreach </item> |
| <item> !strconcat </item> |
| <item> !cast </item> |
| <item> !listconcat </item> |
| <item> !listremove </item> |
| <item> !listsplat </item> |
| <item> !size </item> |
| <item> !foldl </item> |
| <item> !isa </item> |
| <item> !dag </item> |
| <item> !le </item> |
| <item> !lt </item> |
| <item> !ge </item> |
| <item> !gt </item> |
| <item> !ne </item> |
| <item> !tolower </item> |
| <item> !toupper </item> |
| </list> |
| <list name="objects"> |
| <item> class </item> |
| <item> def </item> |
| <item> defm </item> |
| <item> defset </item> |
| <item> let </item> |
| <item> defvar </item> |
| <item> multiclass </item> |
| </list> |
| <list name="class-like"> |
| <item> class </item> |
| <item> def </item> |
| <item> defm </item> |
| <item> defset </item> |
| <item> multiclass </item> |
| </list> |
| <list name="variable-like"> |
| <item> let </item> |
| </list> |
| <list name="types"> |
| <item> string </item> |
| <item> code </item> |
| <item> bit </item> |
| <item> int </item> |
| <item> dag </item> |
| <item> bits </item> |
| <item> list </item> |
| </list> |
| <contexts> |
| <context name="llvm tablegen" attribute="Normal Text" lineEndContext="#stay"> |
| <DetectSpaces/> |
| <Detect2Chars attribute="Comment" context="Single-line comment" char="/" char1="/"/> |
| <Detect2Chars attribute="Comment" context="Multi-line comment" char="/" char1="*" beginRegion="Comment"/> |
| <keyword attribute="Keyword" context="Definition" String="class-like"/> |
| <keyword attribute="Keyword" context="Let expression" String="variable-like"/> |
| <keyword attribute="Keyword" String="objects"/> |
| <keyword attribute="Keyword" String="keywords"/> |
| <keyword attribute="Keyword" String="operator-keywords"/> |
| <keyword attribute="Keyword" String="bang-operators"/> |
| <keyword attribute="Data Type" String="types"/> |
| <DetectChar attribute="Symbol" context="#stay" char="{" beginRegion="Brace1"/> |
| <DetectChar attribute="Symbol" context="#stay" char="}" endRegion="Brace1"/> |
| <Int attribute="Int" context="#stay"/> |
| <RegExpr attribute="Normal Text" String="[a-zA-Z_][a-zA-Z_0-9]{2,}" context="#stay"/> |
| </context> |
| <context attribute="Comment" lineEndContext="#pop" name="Single-line comment"> |
| <IncludeRules context="##Alerts"/> |
| <LineContinue attribute="Comment" context="#stay"/> |
| </context> |
| <context attribute="Comment" lineEndContext="#stay" name="Multi-line comment"> |
| <Detect2Chars attribute="Comment" context="Multi-line comment" char="/" char1="*" beginRegion="Comment"/> |
| <IncludeRules context="##Alerts"/> |
| <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/> |
| </context> |
| <context attribute="Normal Text" lineEndContext="#stay" name="Definition"> |
| <DetectSpaces/> |
| <RegExpr attribute="Type" context="#stay" String="[a-zA-Z0-9_]+"/> |
| <DetectSpaces/> |
| <DetectChar char=":" /> |
| <DetectSpaces/> |
| <RegExpr attribute="Type" context="#stay" String="[a-zA-Z0-9_]+"/> |
| <AnyChar context="#pop" lookAhead="true" String=" :;{<" /> |
| </context> |
| <context attribute="Normal Text" lineEndContext="#stay" name="Let expression"> |
| <DetectSpaces/> |
| <RegExpr attribute="Variable" context="#pop" String="[a-zA-Z0-9_]+"/> |
| </context> |
| </contexts> |
| <itemDatas> |
| <itemData name="Normal Text" defStyleNum="dsNormal" spellChecking="false"/> |
| <itemData name="Operator" defStyleNum="dsOperator" spellChecking="false"/> |
| <itemData name="Keyword" defStyleNum="dsKeyword" spellChecking="false"/> |
| <itemData name="Data Type" defStyleNum="dsDataType" spellChecking="false"/> |
| <itemData name="Type" defStyleNum="dsDataType" spellChecking="false"/> |
| <itemData name="Variable" defStyleNum="dsVariable" spellChecking="false"/> |
| <itemData name="Int" defStyleNum="dsDecVal"/> |
| <itemData name="Hex" defStyleNum="dsBaseN"/> |
| <itemData name="Float" defStyleNum="dsFloat"/> |
| <itemData name="String" defStyleNum="dsString"/> |
| <itemData name="Comment" defStyleNum="dsComment"/> |
| <itemData name="Function" defStyleNum="dsFunction"/> |
| <itemData name="Symbol" defStyleNum="dsNormal" spellChecking="false"/> |
| <itemData name="SPECIAL" defStyleNum="dsAlert" strikeout="true" bold="true" underline="true" italic="true"/> |
| </itemDatas> |
| </highlighting> |
| <general> |
| <comments> |
| <comment name="singleLine" start="//"/> |
| <comment name="multiLine" start="/*" end="*/"/> |
| </comments> |
| <keywords casesensitive="1" weakDeliminator=".!"/> |
| </general> |
| </language> |
| <!-- |
| // kate: space-indent on; indent-width 2; replace-tabs on; |
| --> |