// primitives.h -- primitive characteristics
//
// WARNING: this file was generated automatically -- DO NOT EDIT!
//
// Author: Squeak3.0 (on behalf of Ian.Piumarta@INRIA.Fr)
//
// Last edited: NEVER (and woebetide anybody who dares to!)

static const unsigned ArgumentCountBit=	0x01; // prim reads argumentCount
static const unsigned StackPointerBit=	0x02; // prim reads stackPointer
static const unsigned SuccessFlagBit=	0x04; // prim writes successFlag
static const unsigned ActiveFrameBit=	0x08; // prim may cause GC
static const unsigned IntrinsicPrimBit=	0x10; // prim not exported to j3
static const unsigned PrimitiveFailBit=	0x20; // prim has no primitive response
static const unsigned FastPrimBit=		0x40; // prim nees no interrupt check

typedef int (*primitive_t)(void);

extern primitive_t primitiveTable[];

extern unsigned char primitiveFlags[];

// primitives imported from the Interpreter

extern "C" {
  int primitiveDeferDisplayUpdates(void);
  int primitiveFlushCacheByMethod(void);
  int primitiveDiv(void);
  int primitiveLowSpaceSemaphore(void);
  int primitiveArrayBecome(void);
  int primitiveMillisecondClock(void);
  int primitiveFlushCacheSelective(void);
  int primitiveBitAnd(void);
  int primitiveBitXor(void);
  int primitiveFormPrint(void);
  int primitiveInputWord(void);
  int primitiveMousePoint(void);
  int primitivePushTrue(void);
  int primitiveBitShift(void);
  int primitiveFloatGreaterThan(void);
  int primitiveFloatSubtract(void);
  int primitiveClass(void);
  int primitiveKbdNext(void);
  int primitiveCalloutToFFI(void);
  int primitiveStringReplace(void);
  int primitiveGetAttribute(void);
  int primitiveListExternalModule(void);
  int primitiveDivide(void);
  int primitiveFlushCache(void);
  int startProfiling(void);
  int primitiveShortAt(void);
  int primitiveIncrementalGC(void);
  int primitiveSnapshotEmbedded(void);
  int primitiveFloatEqual(void);
  int primitiveLogN(void);
  int primitiveListBuiltinModule(void);
  int primitiveTestDisplayDepth(void);
  int primitiveLessThan(void);
  int primitiveShortAtPut(void);
  int clearProfile(void);
  int primitiveSomeObject(void);
  int primitiveFloatLessThan(void);
  int primitiveSecondsClock(void);
  int primitiveRelinquishProcessor(void);
  int primitiveArrayBecomeOneWay(void);
  int primitiveVMPath(void);
  int primitiveStoreImageSegment(void);
  int primitiveMakePoint(void);
  int primitiveSomeInstance(void);
  int primitiveGreaterThan(void);
  int primitivePushNil(void);
  int primitiveNextPut(void);
  int primitiveAtEnd(void);
  int primitiveFloatLessOrEqual(void);
  int primitiveNewWithArg(void);
  int primitiveFlushExternalPrimitives(void);
  int primitiveScanCharacters(void);
  int primitiveBeDisplay(void);
  int primitiveSquareRoot(void);
  int primitiveFractionalPart(void);
  int primitiveMultiply(void);
  int primitivePushSelf(void);
  int primitiveSetDisplayMode(void);
  int primitiveMod(void);
  int primitiveAdd(void);
  int primitiveInterruptSemaphore(void);
  int primitiveQuit(void);
  int stopProfiling(void);
  int primitiveArctan(void);
  int primitiveFloatMultiply(void);
  int primitiveConstantFill(void);
  int primitiveExitToDebugger(void);
  int primitiveSignalAtMilliseconds(void);
  int primitiveMouseButtons(void);
  int primitiveInputSemaphore(void);
  int primitiveEquivalent(void);
  int primitivePushFalse(void);
  int primitiveQuo(void);
  int primitivePushZero(void);
  int primitiveLessOrEqual(void);
  int primitiveExp(void);
  int primitiveObjectAt(void);
  int primitiveScreenSize(void);
  int primitiveGetNextEvent(void);
  int primitiveBytesLeft(void);
  int primitiveTruncated(void);
  int primitiveNextInstance(void);
  int primitiveEqual(void);
  int primitiveBeCursor(void);
  int primitiveAsOop(void);
  int primitiveNotEqual(void);
  int primitivePushOne(void);
  int primitiveObjectPointsTo(void);
  int primitiveNoop(void);
  int primitiveSetInterruptKey(void);
  int primitiveNewMethod(void);
  int primitiveSetFullScreen(void);
  int primitiveVMParameter(void);
  int primitiveFloatNotEqual(void);
  int primitiveShowDisplayRect(void);
  int primitiveFloatDivide(void);
  int primitiveBeep(void);
  int primitiveNextObject(void);
  int primitivePushMinusOne(void);
  int primitiveNext(void);
  int primitiveClipboardText(void);
  int primitiveFullGC(void);
  int primitiveFloatAdd(void);
  int primitiveForceDisplayUpdate(void);
  int dumpProfile(void);
  int primitiveAsFloat(void);
  int primitivePushTwo(void);
  int primitiveSine(void);
  int primitiveTimesTwoPower(void);
  int primitiveSignalAtBytesLeft(void);
  int primitiveLoadImageSegment(void);
  int primitiveImageName(void);
  int primitiveFail(void);
  int primitiveKbdPeek(void);
  int primitiveSpecialObjectsOop(void);
  int primitiveBitOr(void);
  int primitiveUnloadModule(void);
  int primitiveFloatGreaterOrEqual(void);
  int primitiveObjectAtPut(void);
  int primitiveNew(void);
  int primitiveGreaterOrEqual(void);
  int primitiveSubtract(void);
  int primitiveExponent(void);
};

