# Copyright 2014 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

[
[ALWAYS, {
  # These are designed to crash:
  "Abort": [SKIP],
  "AbortJS": [SKIP],
  "SystemBreak": [SKIP],
  "_DebugBreakInOptimizedCode": [SKIP],

  # varargs.
  "Call": [SKIP],
  "_CallFunction": [SKIP],

  # Implemented in the parser, not callable.
  "IS_VAR": [SKIP],

  # Compile-time ASSERTs.
  "_DateField": [SKIP],
  "_GetFromCache": [SKIP],

  # Riddled with ASSERTs.
  "CompileForOnStackReplacement": [SKIP],

  # Too slow for fuzzing.
  "SetAllocationTimeout": [SKIP],

  # TODO(jkummerow): Fix these and un-blacklist them!
  "CreateDateTimeFormat": [SKIP],
  "CreateNumberFormat": [SKIP],

  # TODO(danno): Fix these internal function that are only callable form stubs
  # and un-blacklist them!
  "CompileLazy": [SKIP],
  "NotifyDeoptimized": [SKIP],
  "NotifyStubFailure": [SKIP],
  "NewSloppyArguments": [SKIP],
  "NewStrictArguments": [SKIP],
  "ArrayConstructor": [SKIP],
  "InternalArrayConstructor": [SKIP],
  "FinalizeInstanceSize": [SKIP],
  "PromoteScheduledException": [SKIP],
  "NewFunctionContext": [SKIP],
  "PushWithContext": [SKIP],
  "PushCatchContext": [SKIP],
  "PushModuleContext": [SKIP],
  "LoadLookupSlot": [SKIP],
  "LoadLookupSlotNoReferenceError": [SKIP],
  "ResolvePossiblyDirectEval": [SKIP],
  "ForInInit": [SKIP],
  "ForInNext": [SKIP],

  # TODO(jkummerow): Figure out what to do about inlined functions.
  "_GeneratorNext": [SKIP],
  "_GeneratorThrow": [SKIP],
  "_GetCachedArrayIndex": [SKIP],
  "_HasCachedArrayIndex": [SKIP],
  "_IsStringWrapperSafeForDefaultValueOf": [SKIP],
  "_OneByteSeqStringSetChar": [SKIP],
  "_RegExpConstructResult": [SKIP],
  "_TwoByteSeqStringSetChar": [SKIP],

  # These are slow.
  "DebugEvaluate": [PASS, SLOW],
  "DebugReferencedBy": [PASS, SLOW],
  "SetAccessorProperty": [PASS, SLOW],
  "SetScopeVariableValue": [PASS, SLOW],
}]  # ALWAYS
]
