Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Namespaces | Macros | Functions | Variables
method_recognizer.cc File Reference
#include "vm/compiler/method_recognizer.h"
#include "vm/log.h"
#include "vm/object.h"
#include "vm/reusable_handles.h"
#include "vm/symbols.h"

Go to the source code of this file.

Namespaces

namespace  dart
 

Macros

#define TYPED_DATA_GET_SET_INDEXED_CASES(clazz)
 
#define RECOGNIZE_METHOD(class_name, function_name, enum_name, fp)    {"" #class_name, "" #function_name, #enum_name, fp},
 
#define RECOGNIZE_METHOD(class_name, function_name, enum_name, fp)
 
#define SET_FUNCTION_BIT(class_name, function_name, dest, fp, setter, value)
 
#define SET_IS_POLYMORPHIC_TARGET(class_name, function_name, dest, fp)
 
#define RECOGNIZE_FACTORY(symbol, class_name, constructor_name, cid, fp)    {Symbols::k##symbol##Id, cid, fp, #symbol ", " #cid},
 

Functions

static Token::Kind dart::RecognizeTokenKindHelper (const String &name)
 

Variables

struct { 
 
   const char *const   dart::class_name 
 
   const char *const   dart::function_name 
 
   const char *const   dart::enum_name 
 
   const uint32_t   dart::fp 
 
dart::recognized_methods [MethodRecognizer::kNumRecognizedMethods
 
struct { 
 
   const intptr_t   dart::symbol_id 
 
   const intptr_t   dart::cid 
 
   const uint32_t   dart::finger_print 
 
   const char *const   dart::name 
 
dart::factory_recognizer_list [] 
 

Macro Definition Documentation

◆ RECOGNIZE_FACTORY

#define RECOGNIZE_FACTORY (   symbol,
  class_name,
  constructor_name,
  cid,
  fp 
)     {Symbols::k##symbol##Id, cid, fp, #symbol ", " #cid},

Definition at line 317 of file method_recognizer.cc.

◆ RECOGNIZE_METHOD [1/2]

#define RECOGNIZE_METHOD (   class_name,
  function_name,
  enum_name,
  fp 
)     {"" #class_name, "" #function_name, #enum_name, fp},

◆ RECOGNIZE_METHOD [2/2]

#define RECOGNIZE_METHOD (   class_name,
  function_name,
  enum_name,
  fp 
)
Value:
case MethodRecognizer::k##enum_name: \
func.reset_unboxed_parameters_and_return(); \
break;

◆ SET_FUNCTION_BIT

#define SET_FUNCTION_BIT (   class_name,
  function_name,
  dest,
  fp,
  setter,
  value 
)
Value:
func = Library::GetFunction(libs, #class_name, #function_name); \
if (!func.IsNull()) { \
fingerprints_match = \
func.CheckSourceFingerprint(fp) && fingerprints_match; \
func.setter(value); \
} else if (!FLAG_precompiled_mode) { \
OS::PrintErr("Missing %s::%s\n", #class_name, #function_name); \
fingerprints_match = false; \
}

◆ SET_IS_POLYMORPHIC_TARGET

#define SET_IS_POLYMORPHIC_TARGET (   class_name,
  function_name,
  dest,
  fp 
)
Value:
SET_FUNCTION_BIT(class_name, function_name, dest, fp, \
set_is_polymorphic_target, true)
#define SET_FUNCTION_BIT(class_name, function_name, dest, fp, setter, value)

◆ TYPED_DATA_GET_SET_INDEXED_CASES

#define TYPED_DATA_GET_SET_INDEXED_CASES (   clazz)
Value:
case k##clazz##ArrayGetIndexed: \
case k##clazz##ArraySetIndexed: \
return kTypedData##clazz##ArrayCid; \
case kExternal##clazz##ArrayGetIndexed: \
return kExternalTypedData##clazz##ArrayCid; \
case k##clazz##ArrayViewGetIndexed: \
return kTypedData##clazz##ArrayViewCid;