]> gitweb.factorcode.org Git - factor.git/blobdiff - basis/xmode/modes/occam.xml
xmode.modes: updating with recent xmode files
[factor.git] / basis / xmode / modes / occam.xml
index 4e7265eeed8677814d3ae452f7947d05047491f7..a7088c58b349c9d43e049f1b0ee0f67310c67471 100644 (file)
-<?xml version="1.0"?>\r
-\r
-<!DOCTYPE MODE SYSTEM "xmode.dtd">\r
-\r
-<!-- Occam mode by Rick Beton. -->\r
-<MODE>\r
-       <PROPS>\r
-               <PROPERTY NAME="commentStart" VALUE="--" />\r
-               <PROPERTY NAME="commentEnd" VALUE="" />\r
-               <PROPERTY NAME="blockComment" VALUE="" />\r
-               <PROPERTY NAME="noWordSep" VALUE="." />\r
-       </PROPS>\r
-\r
-       <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">\r
-\r
-               <!-- Normal comments. -->\r
-               <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>\r
-\r
-               <!-- Compiler directives. -->\r
-               <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>\r
-\r
-               <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
-                       <BEGIN>'</BEGIN>\r
-                       <END>'</END>\r
-               </SPAN>\r
-\r
-               <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">\r
-                       <BEGIN>"</BEGIN>\r
-                       <END>"</END>\r
-               </SPAN>\r
-\r
-               <SEQ TYPE="OPERATOR">:=</SEQ>\r
-               <SEQ TYPE="OPERATOR">=</SEQ>\r
-               <SEQ TYPE="OPERATOR">&gt;&gt;</SEQ>\r
-               <SEQ TYPE="OPERATOR">&lt;&lt;</SEQ>\r
-               <SEQ TYPE="OPERATOR">&lt;&gt;</SEQ>\r
-               <SEQ TYPE="OPERATOR">&gt;&lt;</SEQ>\r
-               <SEQ TYPE="OPERATOR">&gt;</SEQ>\r
-               <SEQ TYPE="OPERATOR">&lt;</SEQ>\r
-               <SEQ TYPE="OPERATOR">&gt;=</SEQ>\r
-               <SEQ TYPE="OPERATOR">&lt;=</SEQ>\r
-               <SEQ TYPE="OPERATOR">+</SEQ>\r
-               <SEQ TYPE="OPERATOR">-</SEQ>\r
-               <SEQ TYPE="OPERATOR">/</SEQ>\r
-               <SEQ TYPE="OPERATOR">\</SEQ>\r
-               <SEQ TYPE="OPERATOR">*</SEQ>\r
-               <SEQ TYPE="OPERATOR">?</SEQ>\r
-               <SEQ TYPE="OPERATOR">!</SEQ>\r
-               <SEQ TYPE="OPERATOR">/\</SEQ>\r
-               <SEQ TYPE="OPERATOR">\/</SEQ>\r
-               <SEQ TYPE="OPERATOR">~</SEQ>\r
-\r
-               <KEYWORDS>\r
-                        <!-- Structure keywords -->\r
-                       <KEYWORD1>ALT</KEYWORD1>\r
-                       <KEYWORD1>ASM</KEYWORD1>\r
-                       <KEYWORD1>CASE</KEYWORD1>\r
-                       <KEYWORD1>FUNCTION</KEYWORD1>\r
-                       <KEYWORD1>IF</KEYWORD1>\r
-                       <KEYWORD1>INLINE</KEYWORD1>\r
-                       <KEYWORD1>PAR</KEYWORD1>\r
-                       <KEYWORD1>PLACED</KEYWORD1>\r
-                       <KEYWORD1>PRI</KEYWORD1>\r
-                       <KEYWORD1>PROC</KEYWORD1>\r
-                       <KEYWORD1>RESULT</KEYWORD1>\r
-                       <KEYWORD1>SEQ</KEYWORD1>\r
-                       <KEYWORD1>VALOF</KEYWORD1>\r
-                       <KEYWORD1>WHILE</KEYWORD1>\r
-                        \r
-                       <!-- main keywords -->\r
-                        <KEYWORD2>AT</KEYWORD2>\r
-                       <KEYWORD2>ELSE</KEYWORD2>\r
-                       <KEYWORD2>FOR</KEYWORD2>\r
-                       <KEYWORD2>FROM</KEYWORD2>\r
-                       <KEYWORD2>IS</KEYWORD2>\r
-                       <KEYWORD2>PLACE</KEYWORD2>\r
-                       <KEYWORD2>PORT</KEYWORD2>\r
-                       <KEYWORD2>PROTOCOL</KEYWORD2>\r
-                       <KEYWORD2>SKIP</KEYWORD2>\r
-                       <KEYWORD2>STOP</KEYWORD2>\r
-                       <KEYWORD2>VAL</KEYWORD2>\r
-\r
-                        <!-- type and conversion keywords -->\r
-                       <KEYWORD2>AFTER</KEYWORD2>\r
-                       <KEYWORD2>AND</KEYWORD2>\r
-                       <KEYWORD2>ANY</KEYWORD2>\r
-                       <KEYWORD2>BITAND</KEYWORD2>\r
-                       <KEYWORD2>BITNOT</KEYWORD2>\r
-                       <KEYWORD2>BITOR</KEYWORD2>\r
-                       <KEYWORD2>BOOL</KEYWORD2>\r
-                       <KEYWORD2>BYTE</KEYWORD2>\r
-                       <KEYWORD2>BYTESIN</KEYWORD2>\r
-                       <KEYWORD2>CHAN</KEYWORD2>\r
-                       <KEYWORD2>DATA</KEYWORD2>\r
-                       <KEYWORD2>INT</KEYWORD2>\r
-                       <KEYWORD2>INT32</KEYWORD2>\r
-                       <KEYWORD2>INT16</KEYWORD2>\r
-                       <KEYWORD2>INT64</KEYWORD2>\r
-                       <KEYWORD2>MINUS</KEYWORD2>\r
-                       <KEYWORD2>MOSTNEG</KEYWORD2>\r
-                       <KEYWORD2>MOSTPOS</KEYWORD2>\r
-                       <KEYWORD2>NOT</KEYWORD2>\r
-                       <KEYWORD2>PLUS</KEYWORD2>\r
-                       <KEYWORD2>OF</KEYWORD2>\r
-                       <KEYWORD2>OFFSETOF</KEYWORD2>\r
-                       <KEYWORD2>OR</KEYWORD2>\r
-                       <KEYWORD2>PACKED</KEYWORD2>\r
-                       <KEYWORD2>REAL32</KEYWORD2>\r
-                       <KEYWORD2>REAL64</KEYWORD2>\r
-                       <KEYWORD2>RECORD</KEYWORD2>\r
-                       <KEYWORD2>REM</KEYWORD2>\r
-                       <KEYWORD2>RESHAPES</KEYWORD2>\r
-                       <KEYWORD2>RETYPES</KEYWORD2>\r
-                       <KEYWORD2>ROUND</KEYWORD2>\r
-                       <KEYWORD2>SIZE</KEYWORD2>\r
-                       <KEYWORD2>TIMER</KEYWORD2>\r
-                       <KEYWORD2>TIMES</KEYWORD2>\r
-                       <KEYWORD2>TRUNC</KEYWORD2>\r
-                       <KEYWORD2>TYPE</KEYWORD2>\r
-\r
-                        <!-- Occam3 and extensions to occam2.1 -->\r
-                       <KEYWORD2>BUCKET</KEYWORD2>\r
-                       <KEYWORD2>CLAIM</KEYWORD2>\r
-                       <KEYWORD2>ENROLL</KEYWORD2>\r
-                       <KEYWORD2>EVENT</KEYWORD2>\r
-                       <KEYWORD2>FALL</KEYWORD2>\r
-                       <KEYWORD2>FLUSH</KEYWORD2>\r
-                       <KEYWORD2>GRANT</KEYWORD2>\r
-                       <KEYWORD2>INITIAL</KEYWORD2>\r
-                       <KEYWORD2>RESOURCE</KEYWORD2>\r
-                       <KEYWORD2>SEMAPHORE</KEYWORD2>\r
-                       <KEYWORD2>SHARED</KEYWORD2>\r
-                       <KEYWORD2>SYNC</KEYWORD2>\r
-                        \r
-                        <!-- arithmetic & trigonometric functions -->\r
-                       <KEYWORD3>LONGADD</KEYWORD3>\r
-                       <KEYWORD3>LONGSUB</KEYWORD3>\r
-                       <KEYWORD3>ASHIFTRIGHT</KEYWORD3>\r
-                       <KEYWORD3>ASHIFTLEFT</KEYWORD3>\r
-                       <KEYWORD3>ROTATERIGHT</KEYWORD3>\r
-                       <KEYWORD3>ROTATELEFT</KEYWORD3>\r
-                       <KEYWORD3>LONGSUM</KEYWORD3>\r
-                       <KEYWORD3>LONGDIFF</KEYWORD3>\r
-                       <KEYWORD3>LONGPROD</KEYWORD3>\r
-                       <KEYWORD3>LONGDIV</KEYWORD3>\r
-                       <KEYWORD3>SHIFTLEFT</KEYWORD3>\r
-                       <KEYWORD3>SHIFTRIGHT</KEYWORD3>\r
-                       <KEYWORD3>NORMALISE</KEYWORD3>\r
-                       <KEYWORD3>ABS</KEYWORD3>\r
-                       <KEYWORD3>DABS</KEYWORD3>\r
-                       <KEYWORD3>SCALEB</KEYWORD3>\r
-                       <KEYWORD3>DSCALEB</KEYWORD3>\r
-                       <KEYWORD3>COPYSIGN</KEYWORD3>\r
-                       <KEYWORD3>DCOPYSIGN</KEYWORD3>\r
-                       <KEYWORD3>SQRT</KEYWORD3>\r
-                       <KEYWORD3>DSQRT</KEYWORD3>\r
-                       <KEYWORD3>MINUSX</KEYWORD3>\r
-                       <KEYWORD3>DMINUSX</KEYWORD3>\r
-                       <KEYWORD3>NEXTAFTER</KEYWORD3>\r
-                       <KEYWORD3>DNEXTAFTER</KEYWORD3>\r
-                       <KEYWORD3>MULBY2</KEYWORD3>\r
-                       <KEYWORD3>DMULBY2</KEYWORD3>\r
-                       <KEYWORD3>DIVBY2</KEYWORD3>\r
-                       <KEYWORD3>DDIVBY2</KEYWORD3>\r
-                       <KEYWORD3>LOGB</KEYWORD3>\r
-                       <KEYWORD3>DLOGB</KEYWORD3>\r
-                       <KEYWORD3>ISNAN</KEYWORD3>\r
-                       <KEYWORD3>DISNAN</KEYWORD3>\r
-                       <KEYWORD3>NOTFINITE</KEYWORD3>\r
-                       <KEYWORD3>DNOTFINITE</KEYWORD3>\r
-                       <KEYWORD3>ORDERED</KEYWORD3>\r
-                       <KEYWORD3>DORDERED</KEYWORD3>\r
-                       <KEYWORD3>FLOATING.UNPACK</KEYWORD3>\r
-                       <KEYWORD3>DFLOATING.UNPACK</KEYWORD3>\r
-                       <KEYWORD3>ARGUMENT.REDUCE</KEYWORD3>\r
-                       <KEYWORD3>DARGUMENT.REDUCE</KEYWORD3>\r
-                       <KEYWORD3>FPINT</KEYWORD3>\r
-                       <KEYWORD3>DFPINT</KEYWORD3>\r
-                       <KEYWORD3>REAL32OP</KEYWORD3>\r
-                       <KEYWORD3>REAL64OP</KEYWORD3>\r
-                       <KEYWORD3>IEEE32OP</KEYWORD3>\r
-                       <KEYWORD3>IEEE64OP</KEYWORD3>\r
-                       <KEYWORD3>REAL32REM</KEYWORD3>\r
-                       <KEYWORD3>REAL64REM</KEYWORD3>\r
-                       <KEYWORD3>IEEE32REM</KEYWORD3>\r
-                       <KEYWORD3>IEEE64REM</KEYWORD3>\r
-                       <KEYWORD3>REAL32EQ</KEYWORD3>\r
-                       <KEYWORD3>REAL64EQ</KEYWORD3>\r
-                       <KEYWORD3>REAL32GT</KEYWORD3>\r
-                       <KEYWORD3>REAL64GT</KEYWORD3>\r
-                       <KEYWORD3>IEEECOMPARE</KEYWORD3>\r
-                       <KEYWORD3>DIEEECOMPARE</KEYWORD3>\r
-                       <KEYWORD3>ALOG</KEYWORD3>\r
-                       <KEYWORD3>DALOG</KEYWORD3>\r
-                       <KEYWORD3>ALOG10</KEYWORD3>\r
-                       <KEYWORD3>DALOG10</KEYWORD3>\r
-                       <KEYWORD3>EXP</KEYWORD3>\r
-                       <KEYWORD3>DEXP</KEYWORD3>\r
-                       <KEYWORD3>TAN</KEYWORD3>\r
-                       <KEYWORD3>DTAN</KEYWORD3>\r
-                       <KEYWORD3>SIN</KEYWORD3>\r
-                       <KEYWORD3>DSIN</KEYWORD3>\r
-                       <KEYWORD3>ASIN</KEYWORD3>\r
-                       <KEYWORD3>DASIN</KEYWORD3>\r
-                       <KEYWORD3>COS</KEYWORD3>\r
-                       <KEYWORD3>DCOS</KEYWORD3>\r
-                       <KEYWORD3>SINH</KEYWORD3>\r
-                       <KEYWORD3>DSINH</KEYWORD3>\r
-                       <KEYWORD3>COSH</KEYWORD3>\r
-                       <KEYWORD3>DCOSH</KEYWORD3>\r
-                       <KEYWORD3>TANH</KEYWORD3>\r
-                       <KEYWORD3>DTANH</KEYWORD3>\r
-                       <KEYWORD3>ATAN</KEYWORD3>\r
-                       <KEYWORD3>DATAN</KEYWORD3>\r
-                       <KEYWORD3>ATAN2</KEYWORD3>\r
-                       <KEYWORD3>DATAN2</KEYWORD3>\r
-                       <KEYWORD3>RAN</KEYWORD3>\r
-                       <KEYWORD3>DRAN</KEYWORD3>\r
-                       <KEYWORD3>POWER</KEYWORD3>\r
-                       <KEYWORD3>DPOWER</KEYWORD3>\r
-\r
-                        <!-- basic data conversion functions -->\r
-                       <KEYWORD3>INTTOSTRING</KEYWORD3>\r
-                       <KEYWORD3>INT16TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>INT32TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>INT64TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOINT</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOINT16</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOINT32</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOINT64</KEYWORD3>\r
-                       <KEYWORD3>HEXTOSTRING</KEYWORD3>\r
-                       <KEYWORD3>HEX16TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>HEX32TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>HEX64TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOHEX</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOHEX16</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOHEX32</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOHEX64</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOREAL32</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOREAL64</KEYWORD3>\r
-                       <KEYWORD3>REAL32TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>REAL64TOSTRING</KEYWORD3>\r
-                       <KEYWORD3>STRINGTOBOOL</KEYWORD3>\r
-                       <KEYWORD3>BOOLTOSTRING</KEYWORD3>\r
-                       <KEYWORD3>RESCHEDULE</KEYWORD3>\r
-                       <KEYWORD3>ASSERT</KEYWORD3>\r
-\r
-                        <!-- preprocessor directives\r
-                        #INCLUDE\r
-                        #USE\r
-                        #OPTION\r
-                        #PRAGMA\r
-                        #COMMENT\r
-                        -->\r
-\r
-                       <LITERAL2>FALSE</LITERAL2>\r
-                       <LITERAL2>TRUE</LITERAL2>\r
-               </KEYWORDS>\r
-       </RULES>\r
-</MODE>\r
+<?xml version="1.0"?>
+
+<!DOCTYPE MODE SYSTEM "xmode.dtd">
+
+<!-- Occam mode by Rick Beton. -->
+<MODE>
+       <PROPS>
+               <PROPERTY NAME="commentStart" VALUE="--" />
+               <PROPERTY NAME="commentEnd" VALUE="" />
+               <PROPERTY NAME="blockComment" VALUE="" />
+               <PROPERTY NAME="noWordSep" VALUE="." />
+       </PROPS>
+
+       <RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE">
+
+               <!-- Normal comments. -->
+               <EOL_SPAN TYPE="COMMENT1">--</EOL_SPAN>
+
+               <!-- Compiler directives. -->
+               <EOL_SPAN TYPE="COMMENT2">#</EOL_SPAN>
+
+               <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
+                       <BEGIN>'</BEGIN>
+                       <END>'</END>
+               </SPAN>
+
+               <SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE">
+                       <BEGIN>"</BEGIN>
+                       <END>"</END>
+               </SPAN>
+
+               <SEQ TYPE="OPERATOR">:=</SEQ>
+               <SEQ TYPE="OPERATOR">=</SEQ>
+               <SEQ TYPE="OPERATOR">&gt;&gt;</SEQ>
+               <SEQ TYPE="OPERATOR">&lt;&lt;</SEQ>
+               <SEQ TYPE="OPERATOR">&lt;&gt;</SEQ>
+               <SEQ TYPE="OPERATOR">&gt;&lt;</SEQ>
+               <SEQ TYPE="OPERATOR">&gt;</SEQ>
+               <SEQ TYPE="OPERATOR">&lt;</SEQ>
+               <SEQ TYPE="OPERATOR">&gt;=</SEQ>
+               <SEQ TYPE="OPERATOR">&lt;=</SEQ>
+               <SEQ TYPE="OPERATOR">+</SEQ>
+               <SEQ TYPE="OPERATOR">-</SEQ>
+               <SEQ TYPE="OPERATOR">/</SEQ>
+               <SEQ TYPE="OPERATOR">\</SEQ>
+               <SEQ TYPE="OPERATOR">*</SEQ>
+               <SEQ TYPE="OPERATOR">?</SEQ>
+               <SEQ TYPE="OPERATOR">!</SEQ>
+               <SEQ TYPE="OPERATOR">/\</SEQ>
+               <SEQ TYPE="OPERATOR">\/</SEQ>
+               <SEQ TYPE="OPERATOR">~</SEQ>
+
+               <KEYWORDS>
+                        <!-- Structure keywords -->
+                       <KEYWORD1>ALT</KEYWORD1>
+                       <KEYWORD1>ASM</KEYWORD1>
+                       <KEYWORD1>CASE</KEYWORD1>
+                       <KEYWORD1>FUNCTION</KEYWORD1>
+                       <KEYWORD1>IF</KEYWORD1>
+                       <KEYWORD1>INLINE</KEYWORD1>
+                       <KEYWORD1>PAR</KEYWORD1>
+                       <KEYWORD1>PLACED</KEYWORD1>
+                       <KEYWORD1>PRI</KEYWORD1>
+                       <KEYWORD1>PROC</KEYWORD1>
+                       <KEYWORD1>RESULT</KEYWORD1>
+                       <KEYWORD1>SEQ</KEYWORD1>
+                       <KEYWORD1>VALOF</KEYWORD1>
+                       <KEYWORD1>WHILE</KEYWORD1>
+                        
+                       <!-- main keywords -->
+                        <KEYWORD2>AT</KEYWORD2>
+                       <KEYWORD2>ELSE</KEYWORD2>
+                       <KEYWORD2>FOR</KEYWORD2>
+                       <KEYWORD2>FROM</KEYWORD2>
+                       <KEYWORD2>IS</KEYWORD2>
+                       <KEYWORD2>PLACE</KEYWORD2>
+                       <KEYWORD2>PORT</KEYWORD2>
+                       <KEYWORD2>PROTOCOL</KEYWORD2>
+                       <KEYWORD2>SKIP</KEYWORD2>
+                       <KEYWORD2>STOP</KEYWORD2>
+                       <KEYWORD2>VAL</KEYWORD2>
+
+                        <!-- type and conversion keywords -->
+                       <KEYWORD2>AFTER</KEYWORD2>
+                       <KEYWORD2>AND</KEYWORD2>
+                       <KEYWORD2>ANY</KEYWORD2>
+                       <KEYWORD2>BITAND</KEYWORD2>
+                       <KEYWORD2>BITNOT</KEYWORD2>
+                       <KEYWORD2>BITOR</KEYWORD2>
+                       <KEYWORD2>BOOL</KEYWORD2>
+                       <KEYWORD2>BYTE</KEYWORD2>
+                       <KEYWORD2>BYTESIN</KEYWORD2>
+                       <KEYWORD2>CHAN</KEYWORD2>
+                       <KEYWORD2>DATA</KEYWORD2>
+                       <KEYWORD2>INT</KEYWORD2>
+                       <KEYWORD2>INT32</KEYWORD2>
+                       <KEYWORD2>INT16</KEYWORD2>
+                       <KEYWORD2>INT64</KEYWORD2>
+                       <KEYWORD2>MINUS</KEYWORD2>
+                       <KEYWORD2>MOSTNEG</KEYWORD2>
+                       <KEYWORD2>MOSTPOS</KEYWORD2>
+                       <KEYWORD2>NOT</KEYWORD2>
+                       <KEYWORD2>PLUS</KEYWORD2>
+                       <KEYWORD2>OF</KEYWORD2>
+                       <KEYWORD2>OFFSETOF</KEYWORD2>
+                       <KEYWORD2>OR</KEYWORD2>
+                       <KEYWORD2>PACKED</KEYWORD2>
+                       <KEYWORD2>REAL32</KEYWORD2>
+                       <KEYWORD2>REAL64</KEYWORD2>
+                       <KEYWORD2>RECORD</KEYWORD2>
+                       <KEYWORD2>REM</KEYWORD2>
+                       <KEYWORD2>RESHAPES</KEYWORD2>
+                       <KEYWORD2>RETYPES</KEYWORD2>
+                       <KEYWORD2>ROUND</KEYWORD2>
+                       <KEYWORD2>SIZE</KEYWORD2>
+                       <KEYWORD2>TIMER</KEYWORD2>
+                       <KEYWORD2>TIMES</KEYWORD2>
+                       <KEYWORD2>TRUNC</KEYWORD2>
+                       <KEYWORD2>TYPE</KEYWORD2>
+
+                        <!-- Occam3 and extensions to occam2.1 -->
+                       <KEYWORD2>BUCKET</KEYWORD2>
+                       <KEYWORD2>CLAIM</KEYWORD2>
+                       <KEYWORD2>ENROLL</KEYWORD2>
+                       <KEYWORD2>EVENT</KEYWORD2>
+                       <KEYWORD2>FALL</KEYWORD2>
+                       <KEYWORD2>FLUSH</KEYWORD2>
+                       <KEYWORD2>GRANT</KEYWORD2>
+                       <KEYWORD2>INITIAL</KEYWORD2>
+                       <KEYWORD2>RESOURCE</KEYWORD2>
+                       <KEYWORD2>SEMAPHORE</KEYWORD2>
+                       <KEYWORD2>SHARED</KEYWORD2>
+                       <KEYWORD2>SYNC</KEYWORD2>
+                        
+                        <!-- arithmetic & trigonometric functions -->
+                       <KEYWORD3>LONGADD</KEYWORD3>
+                       <KEYWORD3>LONGSUB</KEYWORD3>
+                       <KEYWORD3>ASHIFTRIGHT</KEYWORD3>
+                       <KEYWORD3>ASHIFTLEFT</KEYWORD3>
+                       <KEYWORD3>ROTATERIGHT</KEYWORD3>
+                       <KEYWORD3>ROTATELEFT</KEYWORD3>
+                       <KEYWORD3>LONGSUM</KEYWORD3>
+                       <KEYWORD3>LONGDIFF</KEYWORD3>
+                       <KEYWORD3>LONGPROD</KEYWORD3>
+                       <KEYWORD3>LONGDIV</KEYWORD3>
+                       <KEYWORD3>SHIFTLEFT</KEYWORD3>
+                       <KEYWORD3>SHIFTRIGHT</KEYWORD3>
+                       <KEYWORD3>NORMALISE</KEYWORD3>
+                       <KEYWORD3>ABS</KEYWORD3>
+                       <KEYWORD3>DABS</KEYWORD3>
+                       <KEYWORD3>SCALEB</KEYWORD3>
+                       <KEYWORD3>DSCALEB</KEYWORD3>
+                       <KEYWORD3>COPYSIGN</KEYWORD3>
+                       <KEYWORD3>DCOPYSIGN</KEYWORD3>
+                       <KEYWORD3>SQRT</KEYWORD3>
+                       <KEYWORD3>DSQRT</KEYWORD3>
+                       <KEYWORD3>MINUSX</KEYWORD3>
+                       <KEYWORD3>DMINUSX</KEYWORD3>
+                       <KEYWORD3>NEXTAFTER</KEYWORD3>
+                       <KEYWORD3>DNEXTAFTER</KEYWORD3>
+                       <KEYWORD3>MULBY2</KEYWORD3>
+                       <KEYWORD3>DMULBY2</KEYWORD3>
+                       <KEYWORD3>DIVBY2</KEYWORD3>
+                       <KEYWORD3>DDIVBY2</KEYWORD3>
+                       <KEYWORD3>LOGB</KEYWORD3>
+                       <KEYWORD3>DLOGB</KEYWORD3>
+                       <KEYWORD3>ISNAN</KEYWORD3>
+                       <KEYWORD3>DISNAN</KEYWORD3>
+                       <KEYWORD3>NOTFINITE</KEYWORD3>
+                       <KEYWORD3>DNOTFINITE</KEYWORD3>
+                       <KEYWORD3>ORDERED</KEYWORD3>
+                       <KEYWORD3>DORDERED</KEYWORD3>
+                       <KEYWORD3>FLOATING.UNPACK</KEYWORD3>
+                       <KEYWORD3>DFLOATING.UNPACK</KEYWORD3>
+                       <KEYWORD3>ARGUMENT.REDUCE</KEYWORD3>
+                       <KEYWORD3>DARGUMENT.REDUCE</KEYWORD3>
+                       <KEYWORD3>FPINT</KEYWORD3>
+                       <KEYWORD3>DFPINT</KEYWORD3>
+                       <KEYWORD3>REAL32OP</KEYWORD3>
+                       <KEYWORD3>REAL64OP</KEYWORD3>
+                       <KEYWORD3>IEEE32OP</KEYWORD3>
+                       <KEYWORD3>IEEE64OP</KEYWORD3>
+                       <KEYWORD3>REAL32REM</KEYWORD3>
+                       <KEYWORD3>REAL64REM</KEYWORD3>
+                       <KEYWORD3>IEEE32REM</KEYWORD3>
+                       <KEYWORD3>IEEE64REM</KEYWORD3>
+                       <KEYWORD3>REAL32EQ</KEYWORD3>
+                       <KEYWORD3>REAL64EQ</KEYWORD3>
+                       <KEYWORD3>REAL32GT</KEYWORD3>
+                       <KEYWORD3>REAL64GT</KEYWORD3>
+                       <KEYWORD3>IEEECOMPARE</KEYWORD3>
+                       <KEYWORD3>DIEEECOMPARE</KEYWORD3>
+                       <KEYWORD3>ALOG</KEYWORD3>
+                       <KEYWORD3>DALOG</KEYWORD3>
+                       <KEYWORD3>ALOG10</KEYWORD3>
+                       <KEYWORD3>DALOG10</KEYWORD3>
+                       <KEYWORD3>EXP</KEYWORD3>
+                       <KEYWORD3>DEXP</KEYWORD3>
+                       <KEYWORD3>TAN</KEYWORD3>
+                       <KEYWORD3>DTAN</KEYWORD3>
+                       <KEYWORD3>SIN</KEYWORD3>
+                       <KEYWORD3>DSIN</KEYWORD3>
+                       <KEYWORD3>ASIN</KEYWORD3>
+                       <KEYWORD3>DASIN</KEYWORD3>
+                       <KEYWORD3>COS</KEYWORD3>
+                       <KEYWORD3>DCOS</KEYWORD3>
+                       <KEYWORD3>SINH</KEYWORD3>
+                       <KEYWORD3>DSINH</KEYWORD3>
+                       <KEYWORD3>COSH</KEYWORD3>
+                       <KEYWORD3>DCOSH</KEYWORD3>
+                       <KEYWORD3>TANH</KEYWORD3>
+                       <KEYWORD3>DTANH</KEYWORD3>
+                       <KEYWORD3>ATAN</KEYWORD3>
+                       <KEYWORD3>DATAN</KEYWORD3>
+                       <KEYWORD3>ATAN2</KEYWORD3>
+                       <KEYWORD3>DATAN2</KEYWORD3>
+                       <KEYWORD3>RAN</KEYWORD3>
+                       <KEYWORD3>DRAN</KEYWORD3>
+                       <KEYWORD3>POWER</KEYWORD3>
+                       <KEYWORD3>DPOWER</KEYWORD3>
+
+                        <!-- basic data conversion functions -->
+                       <KEYWORD3>INTTOSTRING</KEYWORD3>
+                       <KEYWORD3>INT16TOSTRING</KEYWORD3>
+                       <KEYWORD3>INT32TOSTRING</KEYWORD3>
+                       <KEYWORD3>INT64TOSTRING</KEYWORD3>
+                       <KEYWORD3>STRINGTOINT</KEYWORD3>
+                       <KEYWORD3>STRINGTOINT16</KEYWORD3>
+                       <KEYWORD3>STRINGTOINT32</KEYWORD3>
+                       <KEYWORD3>STRINGTOINT64</KEYWORD3>
+                       <KEYWORD3>HEXTOSTRING</KEYWORD3>
+                       <KEYWORD3>HEX16TOSTRING</KEYWORD3>
+                       <KEYWORD3>HEX32TOSTRING</KEYWORD3>
+                       <KEYWORD3>HEX64TOSTRING</KEYWORD3>
+                       <KEYWORD3>STRINGTOHEX</KEYWORD3>
+                       <KEYWORD3>STRINGTOHEX16</KEYWORD3>
+                       <KEYWORD3>STRINGTOHEX32</KEYWORD3>
+                       <KEYWORD3>STRINGTOHEX64</KEYWORD3>
+                       <KEYWORD3>STRINGTOREAL32</KEYWORD3>
+                       <KEYWORD3>STRINGTOREAL64</KEYWORD3>
+                       <KEYWORD3>REAL32TOSTRING</KEYWORD3>
+                       <KEYWORD3>REAL64TOSTRING</KEYWORD3>
+                       <KEYWORD3>STRINGTOBOOL</KEYWORD3>
+                       <KEYWORD3>BOOLTOSTRING</KEYWORD3>
+                       <KEYWORD3>RESCHEDULE</KEYWORD3>
+                       <KEYWORD3>ASSERT</KEYWORD3>
+
+                        <!-- preprocessor directives
+                        #INCLUDE
+                        #USE
+                        #OPTION
+                        #PRAGMA
+                        #COMMENT
+                        -->
+
+                       <LITERAL2>FALSE</LITERAL2>
+                       <LITERAL2>TRUE</LITERAL2>
+               </KEYWORDS>
+       </RULES>
+</MODE>