#pragma once
namespace JSC {
enum Intrinsic {
NoIntrinsic,
AbsIntrinsic,
ACosIntrinsic,
ASinIntrinsic,
ATanIntrinsic,
ACoshIntrinsic,
ASinhIntrinsic,
ATanhIntrinsic,
MinIntrinsic,
MaxIntrinsic,
SqrtIntrinsic,
SinIntrinsic,
CbrtIntrinsic,
Clz32Intrinsic,
CosIntrinsic,
TanIntrinsic,
CoshIntrinsic,
SinhIntrinsic,
TanhIntrinsic,
ArrayPushIntrinsic,
ArrayPopIntrinsic,
ArraySliceIntrinsic,
ArrayIndexOfIntrinsic,
CharCodeAtIntrinsic,
CharAtIntrinsic,
FromCharCodeIntrinsic,
PowIntrinsic,
FloorIntrinsic,
CeilIntrinsic,
RoundIntrinsic,
ExpIntrinsic,
Expm1Intrinsic,
LogIntrinsic,
Log10Intrinsic,
Log1pIntrinsic,
Log2Intrinsic,
RegExpExecIntrinsic,
RegExpTestIntrinsic,
RegExpTestFastIntrinsic,
StringPrototypeValueOfIntrinsic,
StringPrototypeReplaceIntrinsic,
StringPrototypeReplaceRegExpIntrinsic,
StringPrototypeToLowerCaseIntrinsic,
NumberPrototypeToStringIntrinsic,
IMulIntrinsic,
RandomIntrinsic,
FRoundIntrinsic,
TruncIntrinsic,
IsTypedArrayViewIntrinsic,
BoundThisNoArgsFunctionCallIntrinsic,
JSMapGetIntrinsic,
JSMapHasIntrinsic,
JSSetHasIntrinsic,
HasOwnPropertyIntrinsic,
AtomicsAddIntrinsic,
AtomicsAndIntrinsic,
AtomicsCompareExchangeIntrinsic,
AtomicsExchangeIntrinsic,
AtomicsIsLockFreeIntrinsic,
AtomicsLoadIntrinsic,
AtomicsOrIntrinsic,
AtomicsStoreIntrinsic,
AtomicsSubIntrinsic,
AtomicsWaitIntrinsic,
AtomicsWakeIntrinsic,
AtomicsXorIntrinsic,
ParseIntIntrinsic,
TypedArrayLengthIntrinsic,
TypedArrayByteLengthIntrinsic,
TypedArrayByteOffsetIntrinsic,
DFGTrueIntrinsic,
OSRExitIntrinsic,
IsFinalTierIntrinsic,
SetInt32HeapPredictionIntrinsic,
CheckInt32Intrinsic,
FiatInt52Intrinsic,
};
const char* intrinsicName(Intrinsic);
}
namespace WTF {
class PrintStream;
void printInternal(PrintStream&, JSC::Intrinsic);
}