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