blob: 09c0f374794ecdb6784ddb484ee0bf704febf482 [file] [log] [blame]
FICL_TOKEN(ficlInstructionInvalid, "** invalid **")
FICL_TOKEN(ficlInstruction1, "1")
FICL_TOKEN(ficlInstruction2, "2")
FICL_TOKEN(ficlInstruction3, "3")
FICL_TOKEN(ficlInstruction4, "4")
FICL_TOKEN(ficlInstruction5, "5")
FICL_TOKEN(ficlInstruction6, "6")
FICL_TOKEN(ficlInstruction7, "7")
FICL_TOKEN(ficlInstruction8, "8")
FICL_TOKEN(ficlInstruction9, "9")
FICL_TOKEN(ficlInstruction10, "10")
FICL_TOKEN(ficlInstruction11, "11")
FICL_TOKEN(ficlInstruction12, "12")
FICL_TOKEN(ficlInstruction13, "13")
FICL_TOKEN(ficlInstruction14, "14")
FICL_TOKEN(ficlInstruction15, "15")
FICL_TOKEN(ficlInstruction16, "16")
FICL_TOKEN(ficlInstruction0, "0")
FICL_TOKEN(ficlInstructionNeg1, "-1")
FICL_TOKEN(ficlInstructionNeg2, "-2")
FICL_TOKEN(ficlInstructionNeg3, "-3")
FICL_TOKEN(ficlInstructionNeg4, "-4")
FICL_TOKEN(ficlInstructionNeg5, "-5")
FICL_TOKEN(ficlInstructionNeg6, "-6")
FICL_TOKEN(ficlInstructionNeg7, "-7")
FICL_TOKEN(ficlInstructionNeg8, "-8")
FICL_TOKEN(ficlInstructionNeg9, "-9")
FICL_TOKEN(ficlInstructionNeg10, "-10")
FICL_TOKEN(ficlInstructionNeg11, "-11")
FICL_TOKEN(ficlInstructionNeg12, "-12")
FICL_TOKEN(ficlInstructionNeg13, "-13")
FICL_TOKEN(ficlInstructionNeg14, "-14")
FICL_TOKEN(ficlInstructionNeg15, "-15")
FICL_TOKEN(ficlInstructionNeg16, "-16")
#if FICL_WANT_FLOAT
FICL_TOKEN(ficlInstructionF0, "0.0e")
FICL_TOKEN(ficlInstructionF1, "1.0e")
FICL_TOKEN(ficlInstructionFNeg1, "-1.0e")
#endif /* FICL_WANT_FLOAT */
FICL_INSTRUCTION_TOKEN(ficlInstructionPlus, "+", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionMinus, "-", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction1Plus, "1+", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction1Minus, "1-", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Plus, "2+", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Minus, "2-", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionSemiParen, "(;)", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionExitParen, "(exit)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionDup, "dup", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionSwap, "swap", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionGreaterThan, ">", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionUGreaterThan, "u>", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionBranchParenWithCheck, "(branch)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionBranchParen, "(branch-final)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionBranch0ParenWithCheck, "(branch0)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionBranch0Paren, "(branch0-final)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionLiteralParen, "(literal)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionLoopParen, "(loop)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionOfParen, "(of)", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionPlusLoopParen, "(+loop)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionFetch, "@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionStore, "!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionComma, ",", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionCComma, "c,", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionCells, "cells", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionCellPlus, "cell+", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionNegate, "negate", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionStar, "*", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionSlash, "/", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionStarSlash, "*/", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionSlashMod, "/mod", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionStarSlashMod, "*/mod", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Star, "2*", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Slash, "2/", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionColonParen, "** (colon) **",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionVariableParen, "(variable)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionConstantParen, "(constant)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstruction2ConstantParen, "(2constant)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstruction2LiteralParen, "(2literal)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionDoDoes, "** do-does **",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionDoParen, "(do)", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionDoesParen, "(does)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionQDoParen, "(?do)", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionCreateParen, "(create)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionStringLiteralParen, "(.\")",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionCStringLiteralParen, "(c\")",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionPlusStore, "+!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction0Less, "0<", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction0Greater, "0>", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction0Equals, "0=", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Store, "2!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Fetch, "2@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionOver, "over", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionRot, "rot", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Drop, "2drop", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Dup, "2dup", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Over, "2over", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstruction2Swap, "2swap", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFromRStack, "r>", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionFetchRStack, "r@", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstruction2ToR, "2>r", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstruction2RFrom, "2r>", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstruction2RFetch, "2r@", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionLess, "<", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionEquals, "=", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionToRStack, ">r", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionQuestionDup, "?dup", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionAnd, "and", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionCStore, "c!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionCFetch, "c@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionDrop, "drop", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionPick, "pick", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionRoll, "roll", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionMinusRoll, "-roll", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionMinusRot, "-rot", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFill, "fill", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionSToD, "s>d", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionULess, "u<", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionQuadFetch, "q@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionQuadStore, "q!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionWFetch, "w@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionWStore, "w!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionInvert, "invert", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionLShift, "lshift", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionMax, "max", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionMin, "min", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionMove, "move", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionOr, "or", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionRShift, "rshift", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionXor, "xor", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionI, "i", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionJ, "j", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionK, "k", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionCompare, "compare", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionCompareInsensitive, "compare-insensitive",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionRandom, "random", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionSeedRandom, "seed-random",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionLeave, "leave", FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionUnloop, "unloop", FICL_WORD_COMPILE_ONLY)
#if FICL_WANT_USER
FICL_INSTRUCTION_TOKEN(ficlInstructionUserParen, "(user)", FICL_WORD_DEFAULT)
#endif /* FICL_WANT_USER */
#if FICL_WANT_LOCALS
FICL_INSTRUCTION_TOKEN(ficlInstructionLinkParen, "(link)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionUnlinkParen, "(unlink)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionGetLocalParen, "(@local)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionGet2LocalParen, "(@2Local)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionToLocalParen, "(toLocal)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionTo2LocalParen, "(to2Local)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionGetLocal0, "(@local0)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionGet2Local0, "(@2Local0)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionToLocal0, "(toLocal0)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionTo2Local0, "(To2Local0)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionGetLocal1, "(@local1)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionToLocal1, "(toLocal1)",
FICL_WORD_COMPILE_ONLY)
#if FICL_WANT_FLOAT
FICL_INSTRUCTION_TOKEN(ficlInstructionGetFLocalParen, "(@fLocal)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionGetF2LocalParen, "(@f2Local)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionToFLocalParen, "(toFLocal)",
FICL_WORD_COMPILE_ONLY)
FICL_INSTRUCTION_TOKEN(ficlInstructionToF2LocalParen, "(toF2Local)",
FICL_WORD_COMPILE_ONLY)
#endif /* FICL_WANT_FLOAT */
#endif /* FICL_WANT_LOCALS */
#if FICL_WANT_FLOAT
FICL_INSTRUCTION_TOKEN(ficlInstructionFLiteralParen, "(fliteral)",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFConstantParen, "(fconstant)",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2ConstantParen, "(f2constant)",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFPlus, "f+", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFMinus, "f-", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFStar, "f*", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFSlash, "f/", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFNegate, "fnegate", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFPlusI, "f+i", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFMinusI, "f-i", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFStarI, "f*i", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFSlashI, "f/i", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionIMinusF, "i-f", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionISlashF, "i/f", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFFrom, "float>", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionToF, ">float", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionIntToFloat, "int>float",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFloatToInt, "float>int",
FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFFetch, "f@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFStore, "f!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2Fetch, "f2@", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2Store, "f2!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFPlusStore, "f+!", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFDrop, "fdrop", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2Drop, "f2drop", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFDup, "fdup", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2Dup, "f2dup", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFMinusRoll, "f-roll", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFMinusRot, "f-rot", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFQuestionDup, "f?dup", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFOver, "fover", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2Over, "f2over", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFPick, "fpick", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFRoll, "froll", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFRot, "frot", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFSwap, "fswap", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF2Swap, "f2swap", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF0Less, "f0<", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFLess, "f<", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF0Equals, "f0=", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFEquals, "f=", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionF0Greater, "f0>", FICL_WORD_DEFAULT)
FICL_INSTRUCTION_TOKEN(ficlInstructionFGreater, "f>", FICL_WORD_DEFAULT)
#endif /* FICL_WANT_FLOAT */
FICL_TOKEN(ficlInstructionExitInnerLoop, "** exit inner loop **")